Commit Graph

75 Commits

Author SHA1 Message Date
rishabsingh3003 97b9e9da92 AC_Precland: Add option to resume precland after manual override 2023-01-31 19:56:43 +09:00
Peter Barker 4c55bea0f2 AC_PrecLand: include required AP_Vehicle_Type header 2022-11-02 18:35:48 +11:00
Shiv Tyagi bc3ff20871 AC_PrecLand: add _ORIENT param to precland library
The orient parameter will help us construct a direction of approach vector in vehicle body frame. This vector would help
us rotate the target vector from sensor frame to body frame and determine the horizontal position error of vehicle for
more orientations than just PITCH_270
2022-08-30 03:44:26 -04:00
Iampete1 22aa09d125 AC_PrecLand: params always use set method 2022-08-03 13:43:48 +01:00
Peter Barker c452002ae4 AC_PrecLand: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Rishabh 89cd6ab006 AC_PrecLand: Change parameter to bitmask 2022-02-01 17:12:56 +09:00
Rishabh 819539af1a AC_PrecLand: Add features to check if target is moving and figure out its velocity 2022-01-31 14:38:29 +09:00
Jaaaky 0c16ebec6c AC_PrecLand: Fix multi #include's 2021-12-21 10:38:46 +11:00
Rishabh d4edd84573 AC_Precland: Allow landing retry and failsafe handling 2021-08-23 15:00:56 +09:00
Rishabh d9534d9526 AC_Precland: Add new parameter to descend only when close to target 2021-08-17 15:09:55 +09:00
Peter Barker 63015e9e9a AC_PrecLand: fixes 2021-07-21 21:01:39 +10:00
Peter Barker 6aba6c83c6 AC_PrecLand: rename for AHRS restructuring 2021-07-21 21:01:39 +10:00
Rishabh 08b8a43ab5 AC_PrecLand: Use rotate_xy instead of matrix multiplication 2021-06-14 15:59:52 +09:00
Rishabh 53bd545fac AC_PrecLand: Account for vertical camera offset in alt calculations 2021-06-14 15:59:52 +09:00
Rishabh f1e4f6dbc8 AC_PrecLand: Initialize EKF before using its output 2021-06-14 15:59:52 +09:00
Hwurzburg a2f1c6e19e AP_PrecLand: correct metatdata for YAW_ALIGN 2021-05-21 08:27:49 +09:00
Peter Barker 6a3188a8ec AC_PrecLand: use enum-class for Type, make enum private 2021-04-14 18:04:26 +10:00
Peter Barker 252543978e AC_PrecLand: remove unused PrecLandBehaviour enum and accessor
AFAICS this has never been used
2021-04-14 18:04:26 +10:00
Peter Barker 1ad9542df3 AC_PrecLand: use enum-class for EstimatorType
And remove accessor for same
2021-04-14 18:04:26 +10:00
Andrew Tridgell 1fe1e53260 AC_PrecLand: pass in time corrected LANDING_TARGET msg
should make companion based precision landing more accurate
2021-04-13 17:30:19 +10:00
Peter Barker 6d9f1f1bb4 AC_PrecLand: move precision landing logging up into AC_PrecLand 2021-04-13 10:28:39 +10:00
Peter Barker 3569c4d979 AC_PrecLand: correct @User field in ACC_P_NSE documentation 2020-09-22 14:56:04 +10:00
Randy Mackay b31a9fd54a AC_PrecLand: POS param range of 5m and 1cm increment 2020-02-01 08:46:03 +09:00
Pierre Kancir a9814d34c7 AC_PrecLand: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Peter Barker 63e75459e2 AC_PrecLand: add floating point specifier on constant 2019-04-05 23:04:17 -07:00
Pierre Kancir 40e7d22811 AC_Precland: use SITL precland object
AC_Precland: simplify includes
2019-03-01 20:28:22 +11:00
Peter Barker ff06e34aa7 AC_Precland: clean headers 2019-02-19 09:16:26 +11:00
Dr.-Ing. Amilcar do Carmo Lucas 4a71ac5e93 AC_PrecLand: small improvements in comments 2019-02-07 10:54:58 +09:00
Randy Mackay bee90261ef AC_PrecLand: enabled param desc loses 2nd option
this strict option was not actually supported
2019-01-15 10:25:28 +09:00
Randy Mackay d271dda8c5 AC_PrecLand: init accepts update rate 2018-09-21 16:38:35 +09:00
Randy Mackay 7fbdaa3c65 AC_PrecLand: LAG to float and use main loop rate
also includes other changes from peer review:

- check_inertia_buffer renamed to init_inertial_buffer and nullptr checks removed to make it more clear this should only be called once
- init_inertial_buffer made private
- add check that inertial_buffer_size is never less than 1
- fixup comments
2018-09-21 16:38:35 +09:00
Randy Mackay 40d4bcb84a AC_PrecLand: rename BUFFER to LAG and add alloc failure check
avoids issue where LAG parameter is set too large which would lead to trying to access unallocated memory
inertial buffer is only allocated at startup to avoid memory leak
2018-09-21 16:38:35 +09:00
fnoop 02da34a246 AC_PrecLand: Add PLND_BUFFER parameter and move to AP_HAL::utility::RingBuffer, #6297
AC_PrecLand: Add PLND_BUFFER parameter and move to AP_HAL::utility::RingBuffer, ##6297

AC_PrecLand: Fixup int type, #8892

AC_PrecLand: Add PLND_BUFFER parameter and move to AP_HAL::utility::RingBuffer, ##6297

Update screwed up submodules from rebase
2018-09-21 16:38:35 +09:00
Peter Barker 0a7399ae7d AC_PrecLand: use AHRS singleton, remove pointless initialisations 2018-08-17 21:14:57 +09:00
fnoop bfceb5dd32 AC_PrecLand: Improve logging
Add unit/multiplier of new fields to log structure
Fix new log structure
2018-08-08 10:23:26 +09:00
Pierre Kancir 6fe0597399 AC_PrecLand: replace AP_InertialNav by AHRS 2018-04-17 17:21:35 +09:00
Peter Barker 7cc808543f AC_Precland: use ins singleton 2018-03-16 00:37:35 -07:00
Dr.-Ing. Amilcar Do Carmo Lucas de56459887 AC_PrecLand: 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
Andrew Tridgell 5d4400f1b7 AC_PrecLand: added BUS parameter for precision landing
allow selection of i2c bus for irlock
2017-04-14 08:47:39 +10:00
Jonathan Challinger 9979e4bbe5 AC_PrecLand: fix usage of distance_to_target 2017-03-29 14:45:56 +09:00
Jonathan Challinger a772e1bd3d AC_PrecLand: add parameters for camera position relative to the CG 2017-03-29 14:45:56 +09:00
Randy Mackay 8f1d122766 AC_PrecLand: add ACC_P_NSE parameter 2017-03-29 14:45:50 +09:00
Randy Mackay 5dd5c22c39 AC_PrecLand: build IRLock on all boards 2017-03-29 14:45:49 +09:00
Randy Mackay 1fb6d468c6 AC_PrecLand: non functional changes including adding comments 2017-03-29 14:45:38 +09:00
Jonathan Challinger 2a29d7fedd AC_PrecLand: rework estimation, add EST_TYPE param 2017-03-29 14:36:22 +09:00
Randy Mackay 974a6f48c6 AC_PrecLand: remove check of type when using distance-to-target 2017-02-03 17:26:40 +09:00
fnoop 438ffd870a AP_PrecLand: consume distance_to_target as alternative to rangefinder_alt
Resolves issue #5636
2017-02-03 17:26:37 +09:00
Jonathan Challinger 86406199a9 AC_PrecLand: reserve parameter indices 2016-12-20 09:21:51 +09:00
Peter Barker fd5f79b238 AC_PrecLand: a pure-ArduPilot simulated SITL precision land backend 2016-11-18 09:41:56 +09:00
Peter Barker 4df4ba1956 AC_PrecLand: make SITL_Gazebo an alternate backend
Preprocessor directives were used to hack in the use
of AP_IRLock_SITL.  Instead, make it a full backend itself.
2016-11-18 09:41:56 +09:00