Commit Graph

1528 Commits

Author SHA1 Message Date
ChristophTobler 56ea4fa6fa FlightTask StraighLine: check values before dividing 2018-08-12 09:37:05 -04:00
ChristophTobler d3d549b8e6 FlightTask Smoothing: check dt before dividing 2018-08-12 09:37:05 -04:00
Dennis Mannhart 9a23295a40 heading update: do not update heading within NAV_ACC_RAD 2018-08-10 15:52:10 +02:00
Martina 2d9bbeb7ed FlightTaskAuto: use the triplets from navigator and not with the internal
ones for obstacle avoidance. Otherwise the vehicle is continuolsy in the
offtrack state. Use already comnputed yaw and yaw speed setpoints instead
of subscription
2018-08-09 16:38:47 -04:00
Martina 8096e84133 FlightTask: add padding to empty_trajectory_waypoint definition 2018-08-09 16:38:47 -04:00
Martina 10988f5bf1 FlightTask: add comment for method getAvoidanceWaypoint 2018-08-09 16:38:47 -04:00
Martina aef41a1378 remove empty lines 2018-08-09 16:38:47 -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
Martina 17a08a9de7 FlightTaskAuto: add update method to get triplets for the trajectory
interface
2018-08-09 16:38:47 -04:00
Beat Küng d480d24a4c fix perf counter: use dprintf instead of printf 2018-08-08 21:09:39 +02:00
Daniel Agar a7f3012c1c delete all dokuwiki helpers 2018-08-08 14:07:59 -04:00
ChristophTobler adfb54243c FlightTasks: fix typo and improve comment 2018-08-08 13:44:49 +02:00
ChristophTobler f6e1ab9034 FlightTasks: cmake - add and remove tasks
add possibility to add additional tasks or to remove upstream tasks
2018-08-08 13:44:49 +02:00
ChristophTobler 89cc53755c FlightTasks: set variable for python args 2018-08-08 13:44:49 +02: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 1b1b3b5484 FlightTasks: Move AutoMapper to own folder and create lib
AutoLine now depends on AutoMapper
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 34203f7e8c FlightTasks: add header lib for sport 2018-08-08 13:44:49 +02:00
ChristophTobler 584838de30 FlightTasks: rename libs to use CamelCase convention 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
Bob-F a40c983137 updated submodule src/lib/DriverFramework 2018-08-06 13:32:36 +02:00
Andreas Antener 4db149f6e7 mixer: set/get_trim needs to return the amount of channels consumed by the mixer even if the mixer doesn't support trims (or is empty) 2018-08-05 23:24:57 +02:00
Andreas Antener f298d4bb4f mixer: use global new line check for parsing the heli mixer 2018-08-05 23:24:57 +02:00
Dennis Mannhart 4a91074aaa FlightTaskAuto: add comment 2018-08-03 08:24:34 +02:00
Dennis Mannhart a24b614dec FlightTaskAutoLine: generate heading along track if yaw setpoint is not valid 2018-08-03 08:24:34 +02:00
Dennis Mannhart 02feb10865 FlightTaskAuto: triplet yaw-setpoint has priority over MPC_YAW_MODE.
Add MPC_YAW_MODE option for heading along trajectory, which will be the same as
option 0 (heading towards target) if trajectory is straight line
2018-08-03 08:24:34 +02:00
Dennis Mannhart 694f49c80a FlightTaskAuto: method for computing heading from 2D vector 2018-08-03 08:24:34 +02:00
Dennis Mannhart 6cd16f345e FlightTaskAuto: set heading based on yaw mode 2018-08-03 08:24:34 +02:00
Dennis Mannhart f0282bcd8f FlightTaskAuto/Line: make params protected and add NAC_ACC_RAD and MPC_YAW_MODE 2018-08-03 08:24:34 +02:00
Dennis Mannhart 7723860f37 remove unused constant 2018-08-02 09:23:17 +02:00
Dennis Mannhart a06ff4a2ce FlightTaskAuto/Mapper/Line: move landing gear to mapper; fix comments 2018-08-02 09:23:17 +02:00
Dennis Mannhart 338ca3104c FlightTaskAutoLine: remove activate method bc uses same impl as FlightTaskAutoMapper 2018-08-02 09:23:17 +02:00
Martina 3fe2646d80 FlightTaskAuto: add comments and fix variable naming convention 2018-08-02 09:23:17 +02:00
Martina e13ca0d990 FlightTaskAuto: fix triplet reset 2018-08-02 09:23:17 +02:00
Martina f379035a3b FlightTaskAuto: move generation of the the internal waypoints to FlightTaskAuto such that they are available to all derived classes.
Change logic to update the internal triplets only when the navigator triplets have changed or when the vehicle state has changed.
2018-08-02 09:23:17 +02:00
Martina ade254394e fix parameters subscription 2018-08-02 09:23:17 +02:00
Martina 3f2f399b91 FlightTaskAutoMapper: clean-up and fix comments 2018-08-02 09:23:17 +02:00
Martina d85481be6d Restructure FlightTaskAutoLine:
-add FlightTaskAutoMapper that handles the different types of waypoint and
generates setpoints for all types except of position and loiter
- FlightTaskAutoLine generates the setpoint types position and loiter if
the flight between waypoint is a straight line
2018-08-02 09:23:17 +02:00
Daniel Agar 6f204c4913 FlightTask initialize _dist_to_bottom
- fixes Coverity CID 306248
2018-08-02 08:06:08 +02:00
Daniel Agar 36fdd3a127 FlightTaskManualPosition initialize all fields
- fixes Coverity CID 306259
2018-08-02 08:06:08 +02:00
Daniel Agar a90c7659ad FlightTasks local position setpoint don't use copyRaw
- fixes Coverity CID 268659
2018-08-02 08:06:08 +02:00
Roman Bapst 8b1381ead9 update ecl l1 and usage for new roll angle setpoint slew rate limit (#10005)
* added ability to slew rate limit the roll angle output of the l1 controller
* FixedWingPositionControl: this avoids the steps in roll angle setpoint which occur when the controller
switches to a new waypoint
* GroundRoverPositionControl: adapted to new l1 API
2018-08-01 14:01:41 -04:00
Beat Küng 2c148f07bd cdev: delete the prev_pollset in unlocked state
Because it uses a semaphore.
2018-07-31 11:49:45 +02:00
Beat Küng 13f2315314 CDev: add DEVICE_POLL_DEBUG macro that removes all poll debug output from the build by default
Reduces 'uorb_tests latency_test' by about 1us
2018-07-30 23:06:32 +02:00
Beat Küng 99fd1f7213 CDev::poll_notify_one: remove checking the semaphore counter
The check is unnecessary. In the worst case the semaphore gets unlocked
twice, but it's not an issue because the waiter is only interested in the
first sem_post(), and the semaphore is then not used anymore.
2018-07-30 23:06:32 +02:00
Beat Küng 72773b75c3 CDev::poll: disable IRQs instead of using an expensive semaphore
poll() is one of the heavily used methods and thus needs to be optimized
as much as possible.

Test on Pixracer: uorb_tests latency_test
Before:
uORB note: ---------------- LATENCY TEST ------------------
INFO  [uorb_tests] mean:     40.4320 us
INFO  [uorb_tests] std dev:   1.3466 us
INFO  [uorb_tests] min:      39 us
INFO  [uorb_tests] max:      57 us
INFO  [uorb_tests] missed topic updates: 0
This Patch:
uORB note: ---------------- LATENCY TEST ------------------
INFO  [uorb_tests] mean:     31.3480 us
INFO  [uorb_tests] std dev:   1.4584 us
INFO  [uorb_tests] min:      30 us
INFO  [uorb_tests] max:      45 us
INFO  [uorb_tests] missed topic updates: 0
2018-07-30 23:06:32 +02:00
Dennis Mannhart 00e09524f7 SearchMin and BezierQuad: replace define with static constexpr (#10050) 2018-07-30 12:28:27 -04:00
Daniel Agar 658237f36a px4fmu move RC input to new rc_input driver 2018-07-30 10:32:56 -04:00
Daniel Agar 56a7c63789 version lib fix BUILD_URI properly 2018-07-30 09:30:23 +02:00