Andrii Fil
3344dba627
AP_AHRS: support MAV_CMD_EXTERNAL_WIND_ESTIMATE
2024-09-04 10:14:45 +10:00
patrick.wiltshire956@gmail.com
bdab1054d6
AP_AHRS: added set_ekf_type() and DCM logging
2023-12-17 09:47:30 +11:00
Mykhailo Kuznietsov
28e4f78ebb
AP_AHRS: Fix some typos
...
Fixed some typos found in the code.
2023-10-12 18:30:42 +11:00
Peter Barker
486ed2965e
AP_AHRS: add AP_AHRS_DCM_ENABLED
...
preliminary commit to add the bulk of the changes which are not problematic
2023-09-27 08:00:54 +10:00
Peter Barker
c30bceb2a0
AP_AHRS: return location inside backend_results structure
...
with the change to cache results inside AP::ahrs().state we no longer need to worry about the backend's attempts to project the last-known-location forwards according to amount of time elapsed since that last-known-location was calculated.
2023-09-19 11:25:49 +10:00
Peter Barker
904707de15
AP_AHRS: clarify get_vert_pos_rate AHRS method name to include 'D'
2023-06-06 20:09:28 +10:00
Peter Barker
7fa0b75d48
AP_AHRS: avoid using struct Location
...
clang reports this could be a problem when compiling under some EABIs. Remove it from most places as it is just noise, replace with class where we want to avoid including Location.h
2023-02-04 22:51:54 +11:00
Peter Barker
aa7ab28969
AP_AHRS: add a bool wind_estimate(...)
...
NavEKF3 can fail to return a wind estimate, and we lose that value
2023-01-18 11:20:32 +11:00
Peter Barker
c42754b691
AP_AHRS: create an AP_AHRS_SIM backend
2023-01-12 13:11:40 +11:00
Andrew Tridgell
87b4b031bf
AP_AHRS: if DCM has no yaw source then don't fallback when hovering
...
this copes with quadplanes with no compass. With a compass we are
better off using EKF when not in fly-forward as it will give better
height control.
This makes QHOVER for takeoff in quadplanes with no compass a lot more
flyable
2022-12-20 10:34:22 +11:00
jackhong12
4a4f361a17
all: use CLASS_NO_COPY() macro
2022-10-04 11:23:04 +11:00
Andrew Tridgell
f80ba734c8
AP_AHRS: removed use of "blended" accel values
...
calculate a single EF accel based on primary IMU
2022-08-21 18:51:59 +10:00
Andrew Tridgell
924759510d
AP_AHRS: fixed use of filtered gyro with DCM active
...
we need to overwrite _omega with the filtered gyro value, so we get
both the low pass filter and the notch filters. Otherwise we will fly
with very high noise gyro data
this also fixes the accel_ef_blended to use the filtered accel. It is
not blended, and removing "_blended" from the API will be worthwhile
as a followup
2022-08-21 18:51:59 +10:00
Peter Barker
cfb391dc2c
AP_AHRS: stop using GCS_MAVLINK.h in header files
...
... by passing through a reference to a link object instead
2022-08-16 09:45:51 +10:00
Peter Barker
ff63b62b0c
AP_AHRS: rename AP_AHRS::get_position to get_location
2022-01-25 10:47:22 +11:00
Joshua Henderson
8a6942a9df
AP_AHRS: add define AP_AIRSPEED_ENABLED
2022-01-19 18:21:32 +11:00
Peter Barker
2f69dcc085
AP_AHRS: cache some trig results for yaw in DCM backend
2021-10-06 19:10:36 +11:00
Peter Barker
44d56854be
AP_AHRS: make AP_AHRS_DCM an AP_AHRS backend
2021-10-06 19:10:36 +11:00
Peter Barker
29d2eed9e4
Sub: view update does not take skip_ins_update
2021-08-31 14:28:53 +10:00
Peter Barker
9dbd9d1e06
AP_AHRS: call INS update in AP_AHRS::update w/o holding data sem
...
We shouldn't be holding the data semaphore while waiting for the samples
- lots of things might be unnecessarily blocked
DCM's update function doesn't need to take the semaphore as it is
already taken by AP_AHRS
2021-08-31 14:28:53 +10:00
Peter Barker
9114d4fc86
AP_AHRS: make home-relative functions AHRS-frontend only
2021-08-25 18:32:07 +10:00
Peter Barker
e2722c8e12
AP_AHRS: move active_accel_instance into DCM private header section
2021-08-24 10:23:36 +10:00
Peter Barker
645a5302d0
AP_AHRS: move DCM parameters into DCM header
2021-08-24 10:23:36 +10:00
Peter Barker
74709c6292
AP_AHRS: move groundspeed vector up to AP_AHRS_DCM
...
The other estimators all have their own implementation of this
2021-08-24 10:23:36 +10:00
Andrew Tridgell
53e7436525
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-19 14:42:28 +10:00
Peter Barker
8daa0a099c
AP_AHRS: rename yaw_initialised access method to dcm_yaw_initialised
...
This is what it really means.
Also put the relevant state within the DCM object
2021-08-18 18:37:39 +10:00
Peter Barker
608608f32f
AP_AHRS: internalise application of correct_centrifugal
...
This is a DCM-only option but that's not clear with the interface.
Internalise the variable and base it off build type.
2021-08-17 10:36:46 +10:00
Peter Barker
7f4a4a99d6
AP_AHRS: move home and origin methods to frontend
2021-08-05 10:37:47 +10:00
Peter Barker
d131cf01d3
AP_AHRS: use compass reference rather than pointer
2021-07-30 17:37:08 +10:00
Peter Barker
ca58aa9c5f
AP_AHRS: stop using AHRS as conduit for Compass pointer
2021-07-30 12:19:42 +10:00
Peter Barker
a4d98a457b
AP_AHRS: move init of dcm state into variable declarations
2021-07-23 09:55:14 +10:00
Peter Barker
d351b7c7dc
AP_AHRS: fix includes for moved files
2021-07-22 21:21:40 +10:00
Peter Barker
b450a96698
AP_AHRS: shuffle AP_AHRS classes
2021-07-21 21:01:39 +10:00
Peter Barker
ee0a373b60
AP_AHRS: remove HIL support
2021-06-15 09:47:31 +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