sanderux
919b3a218a
Factor in reverse pusher delay on mission acceptance radius
2017-09-13 17:25:41 +02:00
Daniel Agar
f26933fc55
delete unused RC_DSM_BIND param
2017-09-13 05:30:14 -07:00
Julian Oes
ee6a79279f
commander: require local position for home
...
This fixes (or at least works around) a race condition where the
`status_flags.condition_local_position_valid` is still `false` but the
`status_flags.condition_global_position_valid` is already `true`.
The way to reproduce it is t:
1. Poll home position to check if home is initialized
2. Send arm and takeoff command as soon as home is initialized
Then arming will succeed but takeoff will fail because there is a check
for `status_flags.condition_local_position_valid` in
`main_state_transition()` to enter TAKEOFF.
2017-09-13 10:06:40 +02:00
Beat Küng
19e7ba63ee
param: use separate param save lock
...
param save is an expensive operation that can take several 100ms. And
previously it was possible that a param_get() caller was blocked on a
save operation. If this happened due to a param change notification,
important modules, such as sensors, could have been blocked for a longer
period (and affecting the flight performance).
With this patch, this situation is not possible anymore, because a param
save now uses the reader lock and a separate file lock.
However it is still possible that a param_set() needs to wait for a save
operation, thus blocking for a longer time. param_set() thus needs to be
avoided in important modules when the system is armed.
In the case of mavlink it works, since it does not affect the flight if
the mavlink receiver is blocked over a longer time. It is only problematic
if a joystick is used as input or in offboard control.
2017-09-12 08:46:10 +02:00
sanderux
07a995a621
Code style
2017-09-11 12:08:39 +02:00
sanderux
1d2a08bd2d
VTOL back transition: check only forward velocity
2017-09-11 12:08:39 +02:00
Dennis Mannhart
a398dc09c7
mc_pos_control: set curr_pos_sp(0:1) to pos(0:1) if non-finite
2017-09-11 02:08:22 -07:00
Dennis Mannhart
22be99da3e
mc_pos_control: change name _pos_first_nofinite to _triplet_lat_lon_finite
2017-09-11 02:08:22 -07:00
Dennis Mannhart
cdb610a453
mc_pos_control: remove _limit_vel_xy
2017-09-11 02:08:22 -07:00
Dennis Mannhart
9ea465b66b
mc_pos_control auto: fix curr pos sp mapping to local frame
2017-09-11 02:08:22 -07:00
Dennis Mannhart
cb9efd7119
mc_pos_control: remove unused defines and add SIGMA
2017-09-11 02:08:22 -07:00
Dennis Mannhart
352f86fff4
mc_pos_control reintegration fixes of duplicates, unused parameter and order
2017-09-11 02:08:22 -07:00
Dennis Mannhart
bf5e81a34f
mc_pos_control param: acceleration parameters adjustment and addition
2017-09-11 02:08:22 -07:00
Dennis Mannhart
10a9c410e3
mc_pos_control: parameter for maximum horizontal velocity
2017-09-11 02:08:22 -07:00
Dennis Mannhart
8eca82022c
mc_pos_control: sub param.acc with block param
2017-09-11 02:08:22 -07:00
Dennis Mannhart
44e4beeeec
mc_pos_control: check if triplets are valid, otherwise ignore
2017-09-11 02:08:22 -07:00
Dennis Mannhart
5b03c5f68e
navigator: reset triplets during onboard/offboard mission update
2017-09-11 02:08:22 -07:00
Dennis Mannhart
c84c7cdcb4
mc_pos_control: set previous triplet point to invalid when switching to manual
2017-09-11 02:08:22 -07:00
Dennis Mannhart
2ceb703613
mc_pos_control: use math::constrain
2017-09-11 02:08:22 -07:00
Dennis Mannhart
947d63fb11
mc_pos_control auto: replace min_cruise_speed with cruise_speed_90; take care of case when cruise_speed_90 is exactly in the middle of max and min
2017-09-11 02:08:22 -07:00
Dennis Mannhart
3538f028b4
mc_pos_control: use 0.5 of acceleration for auto
2017-09-11 02:08:22 -07:00
Dennis Mannhart
807d45c99c
mc_pos_control slowing down close to target take over previous setpoint if low
2017-09-11 02:08:22 -07:00
Dennis Mannhart
ac3321dc6c
mc_pos_control: distinguish between up and down acceleration
2017-09-11 02:08:22 -07:00
Dennis Mannhart
c1199d1202
mission don't apply slewrate for altitude
2017-09-11 02:08:22 -07:00
Dennis Mannhart
9ec0d72f3c
mc_pos_control: make sure that passing waypoint only allowed if altitude is reached
2017-09-11 02:08:22 -07:00
Dennis Mannhart
b769d1cee0
mc_pos_control auto: apply auto logic for z-direction
2017-09-11 02:08:22 -07:00
Dennis Mannhart
2655c72cea
mission: remove altitude foh for rotarywing
2017-09-11 02:08:22 -07:00
Dennis Mannhart
8e99c73f49
mc_pos_control: don't divide by zero
2017-09-11 02:08:22 -07:00
Dennis Mannhart
cb820a168a
mc_pos_control: use original targethreshold when computing target_velocity
2017-09-11 02:08:22 -07:00
Dennis Mannhart
08d15f5402
mc_pos_control: remove target threshold from auto
2017-09-11 02:08:22 -07:00
Dennis Mannhart
dbed42a720
mc_pos_control auto: ensure the order of cruise speeds during mission
2017-09-11 02:08:22 -07:00
Dennis Mannhart
3f73a56f5a
mc_pos_control: accelerate faster in auto and increase speed at 90degrees angle
2017-09-11 02:08:22 -07:00
Dennis Mannhart
540c0bdafb
mc_pos_control: accelerate faster
2017-09-11 02:08:22 -07:00
Dennis Mannhart
7a822c9db2
mc_pos_control: don't use slewrate in mission
2017-09-11 02:08:22 -07:00
Dennis Mannhart
267dbe9b7a
mc_pos_control: when close to current and previous, ajdust target velocity
2017-09-11 02:08:22 -07:00
Dennis Mannhart
0a37d8dc42
mc_pos_control: clarify speed params
2017-09-11 02:08:22 -07:00
Dennis Mannhart
9cfc57e4a6
mc_pos_control: rebase fix
2017-09-11 02:08:22 -07:00
Dennis Mannhart
3e4ab5ed59
mc_pos_control: when close to current and previous, ajdust target velocity
2017-09-11 02:08:22 -07:00
Dennis Mannhart
c4c18caed4
mc_pos_control auto: set speed at 90degrees to 1
2017-09-11 02:08:22 -07:00
Lorenz Meier
38f796f991
mc pos control: More sign checks
2017-09-11 02:08:22 -07:00
Lorenz Meier
a6108cc951
mc_pos_control: Use proper boundary checking when taking the norm of a vector
...
The previous method made too optimistic assumptions about the resolution of 32 bit floating point numbers.
2017-09-11 02:08:22 -07:00
Dennis Mannhart
4c4ee1af14
mc_pos_contol: sub eplsion with sigma, treat current behind independently
2017-09-11 02:08:22 -07:00
Dennis Mannhart
7734279f61
mc_pos_control: smooth transition between waypoint updates
2017-09-11 02:08:22 -07:00
Dennis Mannhart
3053b24761
mc_pos_control: auto remove min dist
2017-09-11 02:08:22 -07:00
Dennis Mannhart
8c5b1d33da
mc_pos_contol: add break when printing warning
2017-09-11 02:08:22 -07:00
Dennis Mannhart
13f8936cf1
mc_pos_control: warning for invalid thrust sp
2017-09-11 02:08:22 -07:00
Lorenz Meier
e58766c394
MC pos controller: log exceptions but rate-limit them
2017-09-11 02:08:22 -07:00
Dennis Mannhart
11a4410500
mc_pos_control: revert protection against nan thrust sp
2017-09-11 02:08:22 -07:00
Dennis Mannhart
dae1093bec
mc_pos_control: auto logic description and sanity check for thrust setpoint
2017-09-11 02:08:22 -07:00
Dennis Mannhart
6e5fe947fe
mc_pos_control: add clarification to auto function and auto angle computation
2017-09-11 02:08:22 -07:00