Andrew Tridgell
d5c55e0dfe
AC_Avoidance: removed create() method for objects
...
See discussion here:
https://github.com/ArduPilot/ardupilot/issues/7331
we were getting some uninitialised variables. While it only showed up in
AP_SbusOut, it means we can't be sure it won't happen on other objects,
so safest to remove the approach
Thanks to assistance from Lucas, Peter and Francisco
2017-12-14 08:12:28 +11:00
Peter Barker
c4734484e7
AC_Avoid: take an AP_AHRS in place of an AP_AHRS_NavEKF
2017-12-08 11:27:37 +09:00
Peter Barker
a1c982be4a
AC_Avoid: work in metres to avoid extra work
2017-12-08 11:27:37 +09:00
Peter Barker
0fe45ef6b6
AC_Avoid: eliminate get_position and get_alt_above_home
2017-12-08 11:27:37 +09:00
Peter Barker
54010451bf
AC_Avoid: check result of AHRS calls
...
Work in metres to avoid computation
2017-12-08 11:27:37 +09:00
khancyr
b44ba29a05
AC_Avoidance: replace AP_InertialNav by AHRS
2017-12-08 11:27:37 +09:00
Lucas De Marchi
e68c5a4668
AC_Avoidance: add static create method
2017-09-26 03:01:21 +01:00
Shingo Matsuura
7b0f6edf31
AC_Avoidance: add adjust velocity by beacon fence
2017-06-14 16:07:32 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
823bee8a31
AC_Avoidance: Use SI units conventions in parameter units
...
Follow the rules from:
http://physics.nist.gov/cuu/Units/units.html
http://physics.nist.gov/cuu/Units/outside.html
and
http://physics.nist.gov/cuu/Units/checklist.html
one further constrain is that only printable (7bit) ASCII characters are allowed
2017-05-17 18:07:25 +10:00
Randy Mackay
35a965ebc5
AC_Avoidance: add configurable margin
...
vehicle will attempt to stop MARGIN meters from objects in GPS modes
2017-04-20 18:11:43 +09:00
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