Commit Graph

12779 Commits

Author SHA1 Message Date
Julian Oes 65b8bcae12 mc_pos_control: always require takeoff setpoint
Problem: The drone started taking off in LOITER (HOLD) mode even if on
ground and did not do a proper takeoff jump. The effect was mostly a
hovering close above ground or tilting/flipping because of integrator
wind-up.

Solution: Stay at minimum throttle until a takeoff setpoint is issued.
2016-12-15 10:17:03 +01:00
Julian Oes c64b8c7095 mc_pos_control: always use fabsf and not fabs 2016-12-15 10:17:03 +01:00
Julian Oes e01eaf172a Add body/NED frame for offboard velocity control
This adds the possibility to use offboard velocity control in the body
frame and not just the NED (world) frame.

The frame is set in the set_position_target_local_ned message and passed
on to mc_pos_control in the position_setpoint topic.
2016-12-15 10:17:03 +01:00
Julian Oes e3aecc0762 state_machine_helper: remove unused const var 2016-12-15 10:17:03 +01:00
Julian Oes 5b132aef70 mc_pos_control: hold position at offboard vel 0
If velocity offboard control is used, it makes sense to lock/hold
position if the velocity input is 0. If this is not done, we will slowly
drift because nothing is integrating to keep the UAV at its position.
2016-12-15 10:17:03 +01:00
Julian Oes 0b02a6e0f7 state_machine_helper: warn about offboard lost, not RC
When offboard input stops and we're in OFFBOARD mode, we should complain
about offboard being lost and not RC because we probably never even had RC.
2016-12-15 10:17:03 +01:00
Julian Oes 454cd33a5e mc_pos_control: move stuff where it belongs 2016-12-15 10:17:03 +01:00
Julian Oes 0b37272d75 mc_pos_control: further reshuffling
Should not have any functional change
2016-12-15 10:17:03 +01:00
Julian Oes 61fff54cbe mc_pos_control: copy triplet in one place only 2016-12-15 10:17:03 +01:00
Julian Oes 432824d603 mc_pos_control: move attitude setpoint to function
Again, no functional change, just refactor.
2016-12-15 10:17:03 +01:00
Julian Oes c200e581c3 mc_pos_control: move control into functions
This is only a refactor with no functional change
2016-12-15 10:17:03 +01:00
Julian Oes 3ac056924c navigator: increase stack
The stack size was generally ok but seemed to get exhausted in the case
of a waypoint which is too far away and therefore exercises some more
code in the mission feasability checker.

Generally, we should have more margin in the navigator stack size
because there are a bunch of different code paths that can happen.
2016-12-15 09:05:02 +01:00
Julian Oes a096b97455 Revert "navigator: increase stack"
This reverts commit 6a6e9d02a3.
2016-12-15 09:05:02 +01:00
Mark Whitehorn 08d36fe2af move initial pwm trim update to pwm_ioctl load case 2016-12-15 00:13:59 +01:00
Julian Oes 6a6e9d02a3 navigator: increase stack
The stack size was generally ok but seemed to get exhausted in the case
of a waypoint which is too far away and therefore exercises some more
code in the mission feasability checker.

Generally, we should have more margin in the navigator stack size
because there are a bunch of different code paths that can happen.
2016-12-15 00:12:54 +01:00
Julian Oes 8a6af658f3 navigator: don't omit printf value
There was a mismatch between the printf arguments and what was defined
in the fmt.
2016-12-15 00:12:54 +01:00
Roman 34d253e4d0 bebop2: let PX4_ROOTFSDIR point to the internal mmc card
Signed-off-by: Roman <bapstroman@gmail.com>
2016-12-15 00:11:13 +01:00
Julian Oes 1c2194c600 gps: fix cli parsing
The gps driver did not give feedback if a non-existing verb was used
such as `gps foo`. Also, the goto out was ugly and the usage always
marked as an error when it's really an info. This cleans it up a bit.
2016-12-15 00:10:27 +01:00
Julian Oes 12c5ed39ae gps: fix faking so that ekf2 initializes
This changes the faked GPS values in order to get ekf2 to initialize.
2016-12-15 00:10:27 +01:00
Michael Schaeuble ed2d28d5dc Use time-stamped integrator in Posix MPU6050 driver 2016-12-15 00:09:07 +01:00
Julian Oes f6c573e882 mavlink: don't send uninitialized bytes
Valgrind did not approve uninitialized bytes from either home or
vehicle global position to be sent.
2016-12-14 22:08:26 +01:00
Beat Küng 66925bc065 voted_senors_update: fix style after rebase 2016-12-14 19:57:54 +01:00
Beat Küng d4da626e78 sensors: move sensors with voting into a separate class 2016-12-14 19:57:54 +01:00
Beat Küng f9b3b5a799 sensors: break off parameters initialization into separate source file 2016-12-14 19:57:54 +01:00
Beat Küng c5e485bdd7 sensors: break off RC handling into its own class 2016-12-14 19:57:54 +01:00
Beat Küng 4e2d0500a1 sensors: use orb_publish_auto where possible 2016-12-14 19:57:54 +01:00
Lorenz Meier 4b0647d9c0 Condition the GPS check always on the commander GPS prearm check param (#6055) 2016-12-14 15:30:24 +01:00
Daniel Agar 17990cf5dc geofence fix combined simple and polygon logic
- require being inside both fences, not either
2016-12-14 08:49:13 +01:00
Daniel Agar bce7ecb0f6 Iridium driver and support
Mavlink module implement HIGH_LATENCY (Iridium)
2016-12-14 08:20:01 +01:00
Lorenz Meier b2d48f65bf MC att ctrl: Properly initialize members 2016-12-13 16:14:15 +01:00
Lorenz Meier c9b7b6bbb5 TAP ESC: Secure being the first publisher of all outputs / reports 2016-12-13 16:14:15 +01:00
Lorenz Meier ac3aa3e85c FMU driver: Avoid trashing existing publicacations for RC, motor outputs, etc. 2016-12-13 16:14:15 +01:00
Lorenz Meier c23378e70d Update heli mixer, not reporting saturation yet 2016-12-13 16:14:15 +01:00
Paul Riseborough da6d4398e9 px4fmu: publish mixer saturation data to uORB 2016-12-13 16:14:15 +01:00
Paul Riseborough ca6f67fd3b tap_esc: publish mixer saturation status to uORB 2016-12-13 16:14:15 +01:00
Lorenz Meier 27d5ecaaa9 Fix multirotor code style 2016-12-13 16:14:15 +01:00
Paul Riseborough 8b55c8ec55 systemlib mixer: Add public method for multi_rotor saturation status 2016-12-13 16:14:15 +01:00
Paul Riseborough eb67686b11 mc_att_control: Improve integrator wind-up protection
Use reporting from the motor mixer to only restrict integrator growth when it will result in increased saturation of the control axis concerned.
Enable absolute integrator limits to be set by parameter
2016-12-13 16:14:15 +01:00
Paul Riseborough efb7131186 px4io: improve multi-rotor motor saturation status reporting 2016-12-13 16:14:15 +01:00
Paul Riseborough 57a6faf8a2 px4iofirmware: remove unused defines 2016-12-13 16:14:15 +01:00
Paul Riseborough c4ccfeae0d mixer: improve multirotor motor limits reporting 2016-12-13 16:14:15 +01:00
Lorenz Meier cc92339602 pwm command: Fix off-by-one in param parsing 2016-12-13 09:18:59 +01:00
Lorenz Meier 7d0db35e90 Update PWM params to match standard usage in system 2016-12-13 09:18:59 +01:00
Roman 8e8336a83f gps drivers submodule: updated after removing unnecessary baud rate 2016-12-12 23:48:15 +01:00
Roman 0acdf32ed5 gps driver: removed unnecessary baud rate
Signed-off-by: Roman <bapstroman@gmail.com>
2016-12-12 23:48:15 +01:00
Roman e6cbbac120 gps devices: update submodule 2016-12-12 23:48:15 +01:00
Roman d10c4dd824 gps driver: added more baud rates in order to support bebop2
Signed-off-by: Roman <bapstroman@gmail.com>
2016-12-12 23:48:15 +01:00
Lorenz Meier 1926c7bca7 Revert "Implement the way to run posix simulator directly from IDE without the need to reconfigure command lines, but use runner created via CMake"
This reverts commit fff4934743.
2016-12-12 22:32:34 +01:00
Lorenz Meier 4cb9903561 UAVCAN: Be less verbose on boot 2016-12-12 16:11:21 +01:00
Lorenz Meier 4c714f0e46 Load mon: Be less verbose on boot 2016-12-12 16:11:21 +01:00