Andrew Tridgell
a427abab0d
AP_AHRS: allow for fallback to DCM in quadplanes
...
this adds the necessary functions to allow for flying a quadplane on
DCM as an emergency fallback. It sets the NavGainScalar to 0.5 to
reduce the VTOL controller gains to allow planes to cope with the
higher lag of DCM
2021-08-16 15:03:55 +10:00
Peter Barker
1122642f50
AP_AHRS: remove HIL support
2021-07-04 08:19:10 +10:00
Randy Mackay
62932f884f
AP_AHRS: pre_arm_check may skip position checks
2021-01-26 10:46:49 +11:00
Randy Mackay
1d97416a51
AP_AHRS: replace prearm_healthy with pre_arm_check
...
Also removes prearm_failure_reason
2020-10-07 11:53:07 +11:00
Harshit Kumar Sankhla
b5b3298f0a
AP_AHRS: get airspeed estimate from non-primary instances too
...
with multiple airspeed sensors and airspeed affinity in EKF3,
it is possible to have switched over to a lane not using the
primary airspeed sensor, so AHRS should know which airspeed
sensor to use, i.e, the one being used by the primary lane.
2020-08-27 20:20:51 +10:00
Peter Barker
4e12f16608
AP_AHRS: provide accessor for synthetic airspeed
2020-08-04 23:12:03 +10:00
Randy Mackay
b0b78e974b
AP_AHRS: add get_quaternion
2020-04-09 19:41:08 +09:00
Peter Hall
f6897632f8
AP_AHRS: move to airspeed_estimate with pointer
2020-01-14 22:34:37 -07:00
Andrew Tridgell
74e56ab8cc
AP_AHRS: use new persistent_data interface
2019-05-15 15:33:48 +10:00
Andrew Tridgell
f7026b854e
AP_AHRS: added save/restore of attitude in backup registers
2019-04-22 16:53:35 +10:00
Andrew Tridgell
b8605c9ee6
AP_AHRS: save/restore home to backup registers
...
restore on watchdog reset
# Conflicts:
# libraries/AP_AHRS/AP_AHRS_DCM.cpp
2019-04-22 16:53:35 +10:00
Andrew Tridgell
2ffded4dd7
AP_AHRS: implement get_velocity_NED() for DCM
2019-03-19 14:39:04 +11:00
Michael du Breuil
2ed1757353
AP_AHRS: Remove unused uptime
2019-03-19 11:42:54 +11:00
Randy Mackay
b202270d1a
AP_AHRS: minor format fixes
2019-02-22 13:00:07 +09:00
Peter Barker
2e403bfd52
AP_AHRS: make setting of home boolean in preparation for sanity checks
2019-02-15 08:28:45 +11:00
Andrew Tridgell
1056e64419
AP_AHRS: added get_DCM_rotation_body_to_ned()
...
this specifically asks for the DCM attitude, which will be used for
the comass calibration to help determine compass orientation
2018-07-18 16:07:19 +10:00
Peter Barker
355752ebb8
AP_AHRS: remove pointless initialisations
...
These are either in bss or new'd.
Saves ~130 bytes
2018-04-04 10:14:40 +01:00
Peter Barker
1dabcc473d
AP_AHRS: use ins singleton
2018-03-16 00:37:35 -07:00
Peter Barker
024b29858d
AP_AHRS: use baro singleton
2018-03-08 21:20:05 -08:00
Peter Barker
e15442355a
AP_AHRS: use GPS singleton
2017-12-27 00:58:02 +00:00
khancyr
d89d496c8f
AP_AHRS: make getter const
2017-12-18 22:43:59 +00:00
Andrew Tridgell
0ccaa5bcba
AP_AHRS: 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
Lucas De Marchi
cd1ff7b86f
AP_AHRS: DCM: add static create method
2017-09-26 03:01:21 +01:00
Andrew Tridgell
a11dca5229
AP_AHRS: added optional skip_ins_update to AHRS::update()
...
avoid the ins update if already done in copter fast_loop()
2017-04-03 13:04:11 +09:00
Peter Barker
e744460ff5
AP_AHRS: mark many functions as override
...
Also take the opportunity to remove void parameter
2017-02-24 21:13:08 +11:00
Peter Barker
4ed7fb154f
AP_AHRS: supply missing get_relative_position_D_home
...
Simply returns the baro altitude (like EKF does if it lacks
position)
2017-02-24 21:13:08 +11:00
Mathieu OTHACEHE
152edf7189
Global: remove mode line from headers
...
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Lucas De Marchi
e0153faa85
AP_AHRS: replace header guard with pragma once
2016-03-16 18:40:40 +11:00
Jonathan Challinger
6682b27456
AP_AHRS: rename get_dcm_matrix to get_rotation_body_to_ned
2015-12-18 18:08:37 +11:00
Lucas De Marchi
da86e29c27
AP_AHRS: remove check for AVR CPUs
...
Remove the checks for HAL_CPU_CLASS > HAL_CPU_CLASS_16 and
HAL_CPU_CLASS >= HAL_CPU_CLASS_75. Corresponding dead code will be
removed on separate commits.
2015-11-04 12:14:14 +11:00
Andrew Tridgell
0677c2c80c
AP_AHRS: run astyle for formatting
2015-09-23 17:31:00 +10:00
Andrew Tridgell
7a76f72bf5
AP_AHRS: added uptime_ms() interface
2015-05-20 15:22:14 +10:00
Andrew Tridgell
6bfca648b9
AP_AHRS: raise DCM P gains when disarmed for first 20 seconds
2015-04-28 14:07:39 +10:00
Tom Pittenger
e28c555889
AHRS_DCM: fix compile warnings re float constants
...
Also fix example sketch
2015-04-24 12:26:08 +09:00
Andrew Tridgell
a0969905ce
AP_AHRS: make get_error_rp() and get_error_yaw() const
...
this makes them usable by multiple consumers, and allows use by EKF
2015-04-21 21:42:17 +10:00
Andrew Tridgell
68f64fa11c
AP_AHRS: make the healthy() method const
2015-02-01 14:13:52 +11:00
Randy Mackay
4452aa8448
AP_AHRS_DCM: compile error fix for low speed CPUs
...
Also correct initialisatoin order to remove compiler warning
2014-12-05 19:43:05 +09:00
Jonathan Challinger
4975cefd84
AP_AHRS_DCM: update _accel_ef_blended
2014-12-05 19:40:06 +09:00
Randy Mackay
dffcfb42bc
AHRS: add reset_gyro_drift method
2014-10-28 20:25:33 +09:00
Andrew Tridgell
270bac4472
AP_AHRS: make get_position() const
...
This allows use from within AP_Mission
2014-10-20 08:36:20 +11:00
Randy Mackay
85eee31510
AHRS: rename ekfNotStarted method to initialised
...
Also created default implementation in AP_AHRS class so AP_AHRS_DCM does
not need to implement it.
2014-10-02 14:40:54 +09:00
priseborough
7cea7c6a18
AP_AHRS : add method to report if EKF is waiting to start
2014-10-02 14:38:29 +09:00
Randy Mackay
a6de3283b6
AHRS_DCM: init members to resolve compiler warnings
2014-08-14 11:27:31 +09:00
Andrew Tridgell
28fedba4d8
AP_AHRS: fixed gyro_bias sign, and pre-calculate gyro_estimate for EKF
...
this allows us to return a constant vector for the corrected gyro
estimate. Based on discussions with Jon Challinger
2014-07-13 21:56:39 +10:00
Jonathan Challinger
61987f6655
AP_AHRS: Fixed DCM get_gyro function
...
Previously incorporated the attitude correction terms into the return. Now only returns the drift-corrected gyro.
2014-07-13 21:19:29 +10:00
Andrew Tridgell
1a05c27bbb
AP_AHRS: added healthy() function
...
this will be used to report when the AHRS subsystem becomes unhealthy
2014-05-15 21:14:21 +10:00
Andrew Tridgell
c8c6e05a4a
AP_AHRS: added vehicle class to AHRS
...
used by EKF to control use of get_fly_forward()
2014-04-21 18:13:12 +10:00
Andrew Tridgell
f07e4dee52
AP_AHRS: convert to new GPS API
2014-04-01 06:38:24 +11:00
Andrew Tridgell
b53496d470
AP_AHRS: choose the best accelerometer at each drift correction step
...
this greatly reduces the impact of aliasing on accelerometers by
choosing the accelerometer that produces the smallest error term in
DCM. The difference can be quite dramatic on the Pixhawk.
2014-02-27 09:41:28 +11:00
Andrew Tridgell
0b45d2bc06
AP_AHRS: removed the AHRS_GPS_DELAY parameter
...
the best value has turned out to be 1, and tweaking it has not turned
out to be useful, so this simplifies the code in preparation for
adding the anti-aliasing handling with multiple accelerometers
2014-02-27 08:57:44 +11:00