Commit Graph

26 Commits

Author SHA1 Message Date
Randy Mackay 7a7f8eb7c1 AC_Avoidance: only stop below alt-fence if fence is enabled 2017-03-06 18:02:03 +09:00
Randy Mackay 7b3af58634 AC_Avoidance: fix AVOID_ANGLE_MAX parameter description 2017-02-28 15:33:59 +09:00
Randy Mackay 49f4afc2a1 AC_Avoidance: add 2m margin to upward avoidance 2017-02-27 09:48:29 +09:00
Jacob Walser 5829d4b645 AC_Avoidance: Refactor fence.get_safe_alt() to fence.get_safe_alt_max() 2017-02-21 11:26:14 +11:00
Randy Mackay e799e3a342 AC_Avoidance: stop based on upward facing proximity sensor 2017-01-18 09:35:47 +09:00
Randy Mackay 2133fd94ca AC_Avoidance: adjust_velocity_z uses inav get_hgt_ctrl_limit
inertial navigation's get_hgt_ctrl_limit provides an altitude-above-ekf-origin limit while flying with optical flow
2017-01-18 09:35:47 +09:00
Randy Mackay f73efd5249 AC_Avoidance: add adjust_velocity_z
This allows reducing the climb rate to slow the vehicle's climb so it does not breach the altitude fence
2017-01-18 09:35:47 +09:00
Randy Mackay 12dd6e11fb AC_Avoidance: constify get_position 2017-01-18 09:35:47 +09:00
Randy Mackay e7f2c9870a AC_Avoid: add accessor for proximity enabled 2016-12-20 19:48:07 +09:00
Randy Mackay b114d3928e AC_Avoid: fix distance to lean angle logic
Fixes from PR review including
(a) make some local variables const
(b) rename angle_max to veh_angle_max
(c) fix distance_to_lean_pct logic so distance of zero returns maximum lean angle
2016-12-20 19:48:04 +09:00
Randy Mackay 1b582b2009 AC_Avoid: avoidance for non-GPS flight modes 2016-12-20 19:47:58 +09:00
Randy Mackay b46cc623a0 AC_Avoidance: adjust_velocity_polygon accepts body-frame points 2016-11-27 15:05:42 +09:00
Randy Mackay 55d79d9a32 AC_Avoidance: proximity sensor method re-uses polygon fence boundary code 2016-11-27 15:05:41 +09:00
Randy Mackay cdee68174d AC_Avoidance: rename adjust_velocity_polygon_fence 2016-11-27 15:05:39 +09:00
Randy Mackay 79280036de AC_Avoidance: rename adjust_velocity_circle_fence method 2016-11-27 15:05:38 +09:00
Randy Mackay 40c4e75ae7 AC_Avoidance: remove unnecessary const float arguments 2016-11-27 15:05:36 +09:00
murata c808ee2f49 Global: To nullptr from NULL.
RC_Channel: To nullptr from NULL.

AC_Fence: To nullptr from NULL.

AC_Avoidance: To nullptr from NULL.

AC_PrecLand: To nullptr from NULL.

DataFlash: To nullptr from NULL.

SITL: To nullptr from NULL.

GCS_MAVLink: To nullptr from NULL.

DataFlash: To nullptr from NULL.

AP_Compass: To nullptr from NULL.

Global: To nullptr from NULL.

Global: To nullptr from NULL.
2016-11-02 16:04:47 -02:00
Randy Mackay 4808664fb6 AC_Avoidance: allow use of AP_Proximity 2016-10-13 20:21:07 +09:00
murata 36b5d43efb AC_Avoid: delete variable that is only used once in a simple calculation 2016-10-05 16:25:57 +09:00
Randy Mackay f27cf8d388 AC_Avoidance: add adjust_velocity that accepts Vector3f for convenience
We should actually modify this function to scale back the z axis in order to avoid breaching the vertical fence.  Currently breaching the vertical fence is handled within the position controller which is inconsistent.
2016-07-25 20:24:37 +09:00
Peter Barker 692ff22453 AC_Avoid: move closest_point to AP_Math 2016-07-25 20:24:37 +09:00
Daniel Ricketts 865aad7598 AC_Avoid: add support for stopping at polygon fence 2016-06-25 15:55:55 +09:00
Randy Mackay 26a6234a29 AC_Avoid: do not attempt to stop at circular fence if already breached 2016-06-25 15:55:55 +09:00
Randy Mackay c6f9889a25 AC_Avoid: constify get_max_speed
Also get_stopping_distance and get_margin
2016-06-25 15:55:55 +09:00
Randy Mackay a427768087 AC_Avoidance: reduce maximum acceleration to 1m/s/s
This makes the vehicle slow very gently as it approaches the edge of the fence
2016-06-22 11:38:15 +09:00
Daniel Ricketts ff7bc7c0cb AC_Avoidance: add library to stop at circular fence 2016-06-22 11:38:15 +09:00