70 Commits

Author SHA1 Message Date
Daniel Agar
045f6233d4
FlightTasks: switch to uORB::Subscription
- delete SubscriptionArray
 - all FlightTasks are now responsible for updating their own subscriptions (typically in updateInitialize()).
2019-09-30 18:16:36 -04:00
roangel
1e510f5a44 [FlightTasks] Added class enum for FlightTasks errors (#12822) 2019-08-29 14:48:52 +02:00
Daniel Agar
e69398c09f introduce uORB::PublicationQueued and transition most orb_advertise_queue usage 2019-08-04 10:08:09 -04:00
Simone Guscetti
6dbed6636d FlightTasks: Add interface for landing gear 2018-12-10 16:17:23 +01:00
Matthias Grob
81ec6c5b1e ColisionAvoidance: move instantiation to FlightTask 2018-11-20 14:11:33 +01:00
baumanta
db514fe441 Add a collision avoidance library which uses range data 2018-11-20 14:11:33 +01:00
bresch
6a7ce651bc Trajectory - Add position lock-unlock logic and proper initialization from controller feedback 2018-11-06 22:17:00 +01:00
Dennis Mannhart
c3ba2687ac FlightTask: if not in air, reActivate the task which will set the setpoints to current
vehicle state.
2018-10-10 10:30:48 -04:00
Roman
d6b6a1d0b3 addressed comments from review
Signed-off-by: Roman <bapstroman@gmail.com>
2018-09-19 08:27:07 +02:00
Roman
8abcf2defa mc_pos_control: use weathervane library to make vehicle turn into relative wind
Signed-off-by: Roman <bapstroman@gmail.com>
2018-09-19 08:27:07 +02:00
Daniel Agar
223dacee64 multicopter position controller use const references 2018-08-31 14:37:49 -04:00
Martina
ede302290b FlightTasks: add getter method to retrieve empty avoidance waypoint in the
mc_pos_control
2018-08-09 16:38:47 -04:00
Martina
b856c1048d FlightTask: add methods to get the desired trajectory waypoints 2018-08-09 16:38:47 -04:00
ChristophTobler
4bbde0df8c FlightTasks: move FlightTask to own folder/lib
fix header includes
add cmake subdirectories dynamically
2018-08-08 13:44:49 +02:00
ChristophTobler
8090708f76 FlightTasks: generate tasks depending on target
- rename flight tasks to use camelCase
- add core tasks to flight tasks cmake
- add additional tasks in targets (TODO)
- add templates
- generate hpp and cpp which contain all specified tasks
2018-08-08 13:44:49 +02:00
ChristophTobler
b68fd5e0a7 Flight Tasks: CMake/folder restructure (no code change)
put flight tasks in separate folder and create a lib for each
goal is to select tasks for targets (e.g. because of flash issue)
2018-08-08 13:44:49 +02:00
MaEtUgR
8d88fa2fca FlightTasks: fix multiple comments 2018-07-24 15:03:53 +02:00
MaEtUgR
3b7d31de75 FlightTasks: reintroduce vehicle command handling
The handling for vehicle commands inside the FlightTasks library
was already there but commented out because the previously used
MAVLink messages were tied to the specific application we used and
there was no clean common message definition. Because there is now
a well defined message for the orbit task I'm uncommenting and using
the working message handling again here.
2018-07-24 15:03:53 +02:00
Dennis Mannhart
29fb5089bd FlightTasks: construct all tasks in constructor 2018-07-20 09:26:18 +02:00
Dennis Mannhart
b1530d1a81 FlightTasks: create struct that contains FlightTask and FlightTaskIndex 2018-07-20 09:26:18 +02:00
Dennis Mannhart
b2af9c3f58 FlightTasks: error to char string message 2018-07-20 09:26:18 +02:00
Dennis Mannhart
1099dd8c7d FlightTaskOffboard: first commit similar in logic to legacy code
FlightTaskOffboard: ensure supported offboard setpoints
2018-07-20 09:26:18 +02:00
Dennis Mannhart
dca378fbfd FollowMe: legacy implementation. NOTE: FOLLOW-ME is already broken on legacy code. 2018-07-20 09:26:18 +02:00
Dennis Mannhart
51d4c1f305 FlightTasks: add getter method for constraints 2018-07-20 09:26:18 +02:00
Dennis Mannhart
fbe8a558b2 FlightTaskIndex: add AutoLine 2018-07-20 09:26:18 +02:00
Dennis Mannhart
6e62beb560 FlightTaskAuto: abstract class for mapping triplets to quadruple
FlightTaskAuto: add type that corresponds to triplet type

FligthTaskAuto: set all setpoints if invalid in xy

FlightTaskAuto: cast triplet type to WaypointType

FlightTaskAutoLine: class for px4 legacy auto

FlightTaskAutoLine: methods prototype

FlightTaskAuto: change sp to wp (=Waypoint)
add params

FlightTaskAutoLine: follow waypoints along line based on flight state
2018-07-20 09:26:18 +02:00
Beat Küng
0eaa6222a2 flight tasks: refactor BlockParam -> Param and handle param updates 2018-04-11 07:47:06 +02:00
Matthias Grob
309237c4a2 FlightTasks: replace setpoint setters with members
I realized that instead of using the setpoint setters inline
in real world tasks everyone started to have its own setpoint
member variable and only call the setter in the end for all the
privatly generate setpoints. This makes the setter useless and
therefore I switched to member setpoints in the architecture.
They bring more felxibility which is obviously needed but also
less structure which is the price to pay.
2018-04-05 07:30:12 +02:00
Matthias Grob
8b4471d842 FlightTasks: comment out mavlink command processing
because upstream there needs to be a
common mavlink command definition first
and then it can be easily reenabled again
2018-04-05 07:30:12 +02:00
Matthias Grob
e8cc93ec23 FlightTasks: create enumeration type for the task index while still offering integer index with checks 2018-04-05 07:30:12 +02:00
Dennis Mannhart
13eb79ffb8 FlightTasks: fix class name 2018-04-05 07:30:12 +02:00
Dennis Mannhart
ac6ed74063 Add FlightTaskManualPositionSmooth 2018-04-05 07:30:12 +02:00
Dennis Mannhart
39c77546d3 FlightTaskManualAltitudeSmooth: create taks 2018-04-05 07:30:12 +02:00
Dennis Mannhart
3b4870b2c2 FlightTaskManual: define as abstract class 2018-04-05 07:30:12 +02:00
Dennis Mannhart
dcdf4d50a0 FlightTasks: add stabilized and fix switchTask for Altitude and Position 2018-04-05 07:30:12 +02:00
Dennis Mannhart
26a5eae7b1 FlightTasks: add FlighttaskManualPosition 2018-04-05 07:30:12 +02:00
Dennis Mannhart
ea61af3164 FlightTaskManualAltitude: added to lib 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
6070d72308 FlightTasks: Various review refactoring 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
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
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