Commit Graph

18758 Commits

Author SHA1 Message Date
Dennis Mannhart e076825d78 FlightTaskManual: remove everything except of stick mapping 2018-04-05 07:30:12 +02:00
Matthias Grob 2b6e356c91 FlightTaskManual: fix for the sideways oscillations in fast foward flight when using the vehicle yaw estimate 2018-04-05 07:30:12 +02:00
Matthias Grob 089ebcbfa4 FlightTaskManual: fix two very stupid mistakes in the yaw hold logic 2018-04-05 07:30:12 +02:00
Matthias Grob 37e0f91c39 FlightTaskSport: scale maximal stick input to maximal allowed velocity instead of being hardcoded for testing 2018-04-05 07:30:12 +02:00
Matthias Grob 6c0acf8e13 FlightTaskManual: enable non-carrot velocity method also for yaw 2018-04-05 07:30:12 +02:00
Matthias Grob 975ac11635 mc_pos_control: enable yawspeed execution for tasks 2018-04-05 07:30:12 +02:00
Matthias Grob a896332746 FlightTaskManual: fixed stick vector index bug and enabled basic yaw setpoint control 2018-04-05 07:30:12 +02:00
Matthias Grob a00c3e4024 FlightTaskSport: created a simple child class of FlightTaskManual that can scale the velocity to a much higher value 2018-04-05 07:30:12 +02:00
Matthias Grob de872ca047 FlightTaskManual: remove the smoothing from the task to add it later in a child class
also separated the velocity scaling to enable sport mode
2018-04-05 07:30:12 +02:00
Matthias Grob 6070d72308 FlightTasks: Various review refactoring 2018-04-05 07:30:12 +02:00
Matthias Grob 4d0dca5dd5 FlightTask: make applyCommandParameters getting called recursively & pass command by reference 2018-04-05 07:30:12 +02:00
Matthias Grob 4bb3692020 FlightTask: remove unused declaration of old position evaluation method 2018-04-05 07:30:12 +02:00
Matthias Grob fd93e55527 FlightTaks: prevent running a new task with default parameters because they got rejected 2018-04-05 07:30:12 +02:00
Matthias Grob d9c7e6321f FlightTasks: Introduce the empty setpoint to reset the setpoint for every loop iteration and return it in case of no task running 2018-04-05 07:30:12 +02:00
Matthias Grob c500221894 FlightTasks: move methods of the class header into the cpp 2018-04-05 07:30:12 +02:00
Matthias Grob efd240904f FlightTasks: added possibility to apply task parameters from the vehicle command 2018-04-05 07:30:12 +02:00
Matthias Grob b1f24da05e FlightTasks: enable mavlink command handling for switching tasks including acknowledgement 2018-04-05 07:30:12 +02:00
Matthias Grob 6ec9ff64d1 FlightTaskManual/Orbit: make sure we are not required stick input data during orbit 2018-04-05 07:30:12 +02:00
Matthias Grob e5d237088c FlightTasks: refactoring for CamelCase naming convention, small comment and declaration order renicements 2018-04-05 07:30:12 +02:00
Matthias Grob 888a63c001 FlightTasks: bool return values for clarity & introduce updateInitialize() to have input data fetching separated from the update() 2018-04-05 07:30:12 +02:00
Matthias Grob e44733a03c FlightTasks: small refactor for review comments 2018-04-05 07:30:12 +02:00
Matthias Grob 1906b5b635 FlightTasks: remove all remaining unnecessary semicolons 2018-04-05 07:30:12 +02:00
Matthias Grob 5efb298ed9 FlightTasks: use forced update just after initialization 2018-04-05 07:30:12 +02:00
Beat Küng 737f7df6b8 Subscription & SubscriptionArray: add forcedUpdate() methods
Can be used to immediately get & use the data, as needed for the flight
tasks.
2018-04-05 07:30:12 +02:00
Matthias Grob 071b09c65d FlightTasks: initialize task state based on subscriptions after the SubscriptionArray was initialized 2018-04-05 07:30:12 +02:00
Beat Küng b0fdbf5136 FlightTask: inherit from Block instead of SuperBlock
I think this is more how it's meant to be
2018-04-05 07:30:12 +02:00
Beat Küng 9b571abb47 FlightTasks: add SubscriptionArray class that contains all subscriptions
This is to avoid dynamic (re-)allocations on task switching, due to
orb_{un,}subscribe calls.
2018-04-05 07:30:12 +02:00
Beat Küng b5ecf9824d flight tasks: use placement new to reduce memory overhead and the need for dynamic allocations
In addition, we will need some shared data structure for the uorb
subscriptions.
2018-04-05 07:30:12 +02:00
Matthias Grob 99eb051c0f FlightTasks: adapt POSIX convention to return negative values on error 2018-04-05 07:30:12 +02:00
Matthias Grob 8a4d51c630 FlightTasks: replaced all hrt_elapsed() calls and unneeded hrt_ calls to safe performance 2018-04-05 07:30:12 +02:00
Matthias Grob 9fdb3ace0c FlightTask: added setter for yawspeed and removed newlines in comments 2018-04-05 07:30:12 +02:00
Matthias Grob dd53d1df5f FlightTask: use copyToRaw matrix method in setpoint setters 2018-04-05 07:30:12 +02:00
Matthias Grob 2dd61f71d1 FlightTask: fix doxygen comment /**< instead of /*< 2018-04-05 07:30:12 +02:00
Matthias Grob c1056d307c FlightTask: move setter back into header and switched argument to reference to have them inlined by the compiler 2018-04-05 07:30:12 +02:00
Matthias Grob e597a9c0a1 FlightTasks: fix review comments 2018-04-05 07:30:12 +02:00
Matthias Grob e193240e98 FlightTask: fix CI: static field requiring definition in cpp file, errors with clang linker (CI) but not with GCC 2018-04-05 07:30:12 +02:00
Matthias Grob 23fe822955 FlightTasks: private variables follow underscore name convention, member description comments doxygen style 2018-04-05 07:30:12 +02:00
Matthias Grob 92acbfde3e FlightTasks: FlightTask definition to cpp, fix include chain, fix cmake 2018-04-05 07:30:12 +02:00
Matthias Grob c211c807ad FlightTasks: move method definitions of existing tasks into cpp files, it's not a header library 2018-04-05 07:30:12 +02:00
Matthias Grob 3450ccb2b2 FlightTaskOrbit: Fix zero vector resulting in NaN output and ignored setpoint 2018-04-05 07:30:12 +02:00
Matthias Grob a570390dfb FlightTasks: enable usage of yaw setpoint through position controller 2018-04-05 07:30:12 +02:00
Matthias Grob e49f80eaa8 FlightTasks: switched output setpoint to reference getter, FlightTask holds it's data 2018-04-05 07:30:12 +02:00
Matthias Grob d48ba8be72 FlightTask: move position and stick data subscription into tasks, Orbit introduce variable center position 2018-04-05 07:30:12 +02:00
Matthias Grob 0aeea44780 FlightTask: fixed time initialization issues 2018-04-05 07:30:12 +02:00
Matthias Grob 582990c0af FlightTasks: revised task switching algorithm to catch errors during activation of a new task and make it more readable 2018-04-05 07:30:12 +02:00
Matthias Grob edd5ed1349 FlightTaskManual: remove unnecessary subscription which is deprecated anyways 2018-04-05 07:30:12 +02:00
Matthias Grob 76a0b9f736 FlightTaskManual: Smooth flight integration: refactored and checked get_acceleration_z 2018-04-05 07:30:12 +02:00
Matthias Grob 6fb4c79234 FlightTaskManual: Smooth flight integration: refactored and checked second half of get_acceleration_xy executing the intention 2018-04-05 07:30:12 +02:00
Matthias Grob 42708ea456 FlightTaskManual: Smooth flight integration: refactored and checked first half of get_acceleration_xy determining the xy user intention 2018-04-05 07:30:12 +02:00
Matthias Grob 56b54d7b85 FlightTaskManual: Smooth flight integration: prepare interface of acceleartion methods for xy and z 2018-04-05 07:30:12 +02:00