Commit Graph

83 Commits

Author SHA1 Message Date
Peter Barker fbd93bd535 AC_Avoidance: remove @Values from param metadata where @Bitmask exists 2021-07-04 08:19:10 +10:00
Rishabh 9a1a748348 AC_Avoid: Change ALT_MIN param to be copter only 2021-06-12 13:31:52 +09:00
Rishabh 730cf0ad9b AC_Avoid: Add deadzone param to avoidance backaway 2021-06-12 13:31:52 +09:00
Rishabh b301bd0ca4 AC_Avoid: Use plane intersection in prox stop mode 2021-06-12 13:31:52 +09:00
Hwurzburg 8903b8619a AC_Avoidance: make centideg metadata incr and range consistent 2021-05-25 10:10:18 +10:00
Rishabh 7e79999b86 AC_Avoid: reenable avoidance logging 2021-05-09 19:07:22 -04:00
Rishabh e31ea2f3ee AC_Avoid: Change parameter defaults 2021-04-05 13:43:28 +09:00
Randy Mackay f67cdf5a81 AC_Avoidance: use of AP_Proximity checks HAL_PROXIMITY_ENABLED 2021-03-26 16:22:46 +09:00
Rishabh 98287a1b2f AC_Avoid: Use previous avoidance vel for limiting accel 2021-02-16 20:08:00 +09:00
Rishabh cbf57af1f3 AC_Avoid: Limit acceleration while simple avoidance is active 2021-02-16 20:08:00 +09:00
Rishabh 865f3cda79 AC_Avoid: Add param to switch off proximity avoidance based on alt 2021-02-16 20:08:00 +09:00
Rishabh 74bda4952d AC_Avoid: Return early if velocity is unchanged in proximity avoidance 2021-02-12 16:48:16 +09:00
Rishabh 37a14a78df AC_Avoid: Refactor changes for 3-D avoidance 2021-02-01 14:34:13 +09:00
Rishabh 5092bc2f6d AC_Avoid: Simplify accessing boundary 2021-02-01 14:34:13 +09:00
Rishabh d359c5ddf2 AC_Avoid: Let user take control if they are backing away at a greater speed than what we have calculated 2021-02-01 14:34:13 +09:00
Rishabh 91132d00d9 AC_Avoid: Add deadzone to backaway code 2021-02-01 14:34:13 +09:00
Rishabh ad6e013171 AC_Avoid: Support 3D Simple Avoidance and Bacakway 2021-02-01 14:34:13 +09:00
Leonard Hall 4e2c7880c5 AC_Avoidance: use AP_Math control functions 2021-01-20 18:19:40 +11:00
Iampete1 f5172cdecf AC_Avoid: hide params with enable flag 2020-09-14 08:54:13 +09:00
Rishabh 0b112981f9 AC_Avoid: Back away if vehicle breaches margin to obstacle/fence 2020-08-05 15:37:04 +09:00
Rishabh 0b8f722dbd AC_Avoid: Remove extra margin used in stop behaviour in circular fences 2020-07-15 15:50:18 +09:00
Rishabh 6e693596d6 AC_Avoid: Do not show unused param in Rover 2020-07-15 15:50:18 +09:00
Rishabh 4ec8602de2 AC_Avoid: Remove unnecessary sanity checks 2020-06-17 16:43:27 +09:00
Peter Barker 002d47447e AC_Avoidance: rename APMrover2 to Rover 2020-04-14 09:50:34 +09:00
Peter Hall 556d90ca0c AC_Avoidance: keep track of velocity liminting status 2020-02-04 10:24:33 +09:00
Peter Barker 0d624785f3 AC_Avoid: adjust for proximity status namespace change 2019-10-31 11:58:15 +08:00
Randy Mackay 9aeac012d2 AC_Avoid: add support for complex fence types
AP_OABendyRuler: support exclusion polygons

AP_OADijkstra: support exclusion polygons

AC_Avoid: adjust_velocity supports exclusion polygons

AC_Avoidance: handle fence::get_boundary_points returning nullptr instead of setting num_points to zero

AC_Avoidance: Dijkstra's works with only exclusion polygons

AC_Avoidance: Dijkstra: check for fence counts instead of polyfence validity

We really only care whether fences can be returned - and they won't be
returned unless they are valid

AC_Avoidance: BendyRuler: just try to get inclusion fence rather than checking validity

AC_Avoidance: BendyRuler supports exclusion circles

AC_Avoid: Dijkstra support for exclusion circles

AC_Avoid: BendyRuler support for inclusion circles

AC_Avoid: stop an inclusion/exclusion circular fences

AC_Avoid: stop at inclusion/exclusion circular fences

AC_Avoid: fixes to Dijkstra's use of inclusion/exclusion circles and polygons

AP_Avoidance: take semaphores when interacting with AHRS and polyfence

AC_Avoid: Dijkstra's fix for some_fences_enabled inclusion circles
2019-09-28 07:58:48 +09:00
Peter Barker 3a7f1b882e AC_Avoidance: cope with polyfence holding boundary points 2019-09-28 07:58:48 +09:00
Randy Mackay 0a86bbdc9a AC_Avoidance: add license to cpp file 2019-06-11 13:13:22 +09:00
Randy Mackay 607f996232 AC_Avoid: restructure logic of adjust_velocity_circle_fence 2019-06-08 09:35:36 +09:00
Randy Mackay e846840a52 AC_Avoid: fix stopping at circular fence 2019-06-08 09:35:36 +09:00
Peter Barker 35d4555be0 AC_Avoid: improve documentation of AVOID_ENABLE options 2019-06-07 17:37:00 +09:00
Peter Barker e9160cd9d5 AC_Avoid: correct iteration through edges 2019-06-04 09:06:07 +09:00
Peter Barker cd6e5b48a1 AC_Avoid: move check for zero-desired-velocity into adjust_velocity_polygon
This is the method which divides by the length of this vector; the
check belongs in here.
2019-06-04 09:06:07 +09:00
Peter Barker de9fa4c730 AC_Avoid: call Polygon_outside directly; avoids losing first point 2019-05-29 15:34:02 +10:00
Peter Barker 4be3a48275 AC_Avoid: adjust for renamed get_polygon_points 2019-05-29 15:34:02 +10:00
Peter Barker 43152a416c AC_Avoid: stop taking references to ahrs, fence, proximity and beacon 2019-05-22 07:48:02 -06:00
Peter Barker 413ef5a3b4 AC_Avoid: add singleton 2018-10-30 12:10:42 +11:00
Randy Mackay 7aae970ae7 AC_Avoid: constify a few local variables 2018-10-26 14:38:04 +09:00
Randy Mackay b7f3140441 AC_Avoid: stop includes margin for intersection calc
the simpler stop feature (as opposed to slide) was not including the margin when looking for intersections with the boundary meaning it could slow too late
2018-10-26 14:38:04 +09:00
JIMWAR 97b5af60f8 AC_Avoid: fix adjust_velocity_polygon
adjust_velocity_polygon function ignoring boundary[0]
2018-10-24 15:37:14 +09:00
murata 3577def8fd AC_Avoid: use elseif because value does not change 2018-04-23 19:45:50 +09:00
murata 29b1a6ed41 AC_Avoid: fix comment 2018-04-23 19:45:37 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas 8ae4047a00 AC_Avoidance: NFC small renames and comment improvements 2018-03-06 09:30:56 +09:00
Randy Mackay be804aa74e AC_Avoid: limit velocity and get-max-speed become public
this allows AP_Follow to use these function
2018-03-05 15:08:08 +09:00
Randy Mackay ebf405e53d AC_Avoid: reduce min and default DIST_MAX values 2018-01-25 11:16:01 +09:00
Randy Mackay a1bf9d66f0 AC_Avoid: default behaviour to stop for Rovers 2018-01-22 17:18:41 +09:00
Randy Mackay ae4ded86a8 AC_Avoid: get_max_speed supports linear acceleration
Also get_stopping_distance supports linear deceleration
2018-01-22 17:18:41 +09:00
Randy Mackay dfaabb543c AC_Avoid: add adjust_speed
this method accepts a heading and speed instead of a velocity vector
2018-01-22 17:18:41 +09:00
Randy Mackay 9d74d82ff6 AC_Avoid: add stopping behaviour 2018-01-22 17:18:41 +09:00