Andrew Tridgell
de02cb9c8b
AP_AHRS: fixed synthetic airspeed to be along +ve X axis
...
this prevents us from thinking we have +ve airspeed when flying
backwards with no pitot tube
2018-09-14 19:28:29 +10:00
Peter Barker
306a40bb77
AP_AHRS: fix writeOptFlowMeas signature
...
const some of the vectors, stop taking references to scalars that aren't
being changed
2018-09-11 09:03:22 +10:00
Andrew Tridgell
9897bf6127
AP_AHRS: support locked access to AHRS data
2018-08-25 15:44:36 +10:00
Andrew Tridgell
9a6113e5d8
AP_AHRS: fixed tailsitters in RealFlight
...
we need to use the rotated accel for the earth-frame accel
2018-07-20 14:21:06 +10: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
Andrew Tridgell
5b0b9ef962
AP_AHRS: don't do yaw correction in DCM while calibrating compass
...
this avoids applying bad compass yaw, and helps the compass
calibration code
2018-07-18 16:07:19 +10:00
Michael du Breuil
65df5c3ff6
AP_AHRS: Remove unused ADC include
2018-07-17 09:29:50 +10:00
Andrew Tridgell
63d385ffb1
AP_AHRS: fixed arming with no compass in plane
...
allow arming if the GPS quality is good, the yaw alignment and
position will fix itself once the vehicle starts moving
2018-07-14 17:49:52 +10:00
Patrick José Pereira
819f08b7f7
AP_AHRS: Use SITL singleton
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-26 00:02:01 +01:00
Andrew Tridgell
520e33261a
AP_AHRS: fixed EKF type 10 for SITL
...
this fixes the use of EKF type 10 in SITL, preventing it from using
the DCM attitude estimate.
This is especially important for RealFlight and XPlane
2018-06-07 11:22:57 +10:00
Peter Barker
4d944da530
AP_AHRS: add a singleton-getter cast into AP_AHRS_NavEKF
...
This will allow libraries which absolutely require the EKF to easily get
a cast copy of the singleton.
2018-06-01 16:12:45 +01:00
Peter Barker
3cbb88ae20
AP_AHRS: split home-set and home-locked state
2018-05-29 14:38:45 +10:00
Peter Barker
9793703a76
AP_AHRS: move Log_Write_Home_And_Origin into AP_AHRS
2018-05-17 10:13:42 +10:00
Andrew Tridgell
5ae410f7ca
AP_AHRS: called boost_end() on AHRS update
2018-05-05 07:45:53 +10:00
Andrew Tridgell
0b03562cf2
AP_AHRS: fix for mavlink update
2018-04-30 15:39:43 +10:00
Jacob Walser
74be9f0bda
AP_AHRS: Add support for custom board orientations
2018-04-24 13:04:37 +01:00
Jacob Walser
b820da5c6f
AP_AHRS: update AHRS_ORIENTATION metadata
2018-04-24 13:04:37 +01:00
Pierre Kancir
fdfa08c586
AP_AHRS: fix include order due to cyclic include
2018-04-17 17:21:35 +09: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
2a274675f6
AP_AHRS: narrow enumeration to uint8_t to avoid narrowing-warnings
2018-04-02 14:12:09 +09:00
Peter Barker
aae4ed2553
AP_AHRS_NavEKF: accept external position estimates into AHRS
2018-03-27 20:28:00 +09:00
Peter Barker
20412dc0db
AP_AHRS: accept external position estimates into AHRS
2018-03-27 20:27:59 +09:00
Peter Barker
3a5807ae56
AP_AHRS: move home_status into AP_AHRS
...
Storing home in the AHRS object but not its state is clearly evil.
Fix that.
2018-03-19 10:32:37 +09:00
Lucas De Marchi
517f71c183
AP_AHRS: use ins singleton
2018-03-16 00:37:35 -07: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
659ab06d3b
AP_AHRS: AP_AHRS gets a virtual get_hagl function, EKF marks it override
2018-03-07 12:34:39 +00:00
Peter Barker
dc30197ca7
AP_AHRS: add AP::ahrs() singleton
2018-03-07 12:34:39 +00:00
Andrew Tridgell
504e231ba2
AP_AHRS: reverted UAVCAN PR 7827
2018-03-05 14:16:54 +11:00
DOMINATOR\Eugene
2f7196d71f
AP_AHRS: UAVCAN publishing of attitude and location
2018-03-03 12:59:14 +12:00
Andrew Tridgell
55358459c7
AP_AHRS: fixed AP_MODULE_SUPPORTED
2018-02-10 10:50:22 +11:00
Andrew Tridgell
0b5e3936fe
AP_AHRS: added earth to body 2D rotations
2018-02-08 17:36:33 +11:00
Andrew Tridgell
e2d91535d0
AP_AHRS: fill in have_pos_abs
2018-02-08 17:36:33 +11:00
Peter Barker
e15442355a
AP_AHRS: use GPS singleton
2017-12-27 00:58:02 +00:00
khancyr
2732226664
AP_AHRS: use direct assignation and correct some style
2017-12-18 22:43:59 +00:00
khancyr
dae636b39e
AP_AHRS: correct some constcorrectness
2017-12-18 22:43:59 +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
Andrew Tridgell
7a6ab4ac44
AP_AHRS: fixed a bug with startup ordering of SITL
...
this fixes a crash that can happen with SITL
2017-12-13 14:09:39 +11:00
Peter Barker
5eeed442c8
AP_AHRS: correct comment
2017-12-13 10:04:50 +09:00
Andrew Tridgell
1f9a3dd1bd
AP_AHRS: improved init attitdue in DCM
...
this tries harder to get a good IMU sample for the initial attitude
estimate. I have seen cases of bad IMU data on startup and this makes it
much less likely
2017-12-12 11:39:38 +11:00
Peter Barker
8a4ab685c7
AP_AHRS: implement get_hgt_ctrl_limit on base class
...
If no limits are required false can be returned, so an trivial
implementation is possible
2017-12-08 11:27:37 +09:00
Peter Barker
89e12163cd
AP_AHRS: correct comment
2017-12-08 11:27:37 +09:00
Randy Mackay
82cd320bd0
AP_AHRS: add get_origin method to parent
2017-12-01 09:28:56 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
0ecb14361d
AP_AHRS: NFC spell in comments
2017-11-27 23:13:34 +09:00
Samuel Tabor
05492be269
AP_AHRS: clarify scope of AHRS_GPS_USE parameter
2017-11-20 13:53:36 +09:00
Lucas De Marchi
bfd13dfe87
global: use static method to construct AP_AHRS_DCM
2017-09-26 03:01:21 +01:00
Lucas De Marchi
cd1ff7b86f
AP_AHRS: DCM: add static create method
2017-09-26 03:01:21 +01:00
Lucas De Marchi
beabae6a98
global: use static method to construct AP_AHRS_NavEKF
2017-09-26 03:01:21 +01:00
Lucas De Marchi
e2a9d9c001
AP_AHRS: add static create method
2017-09-26 03:01:21 +01:00
Lucas De Marchi
c9fbf7b722
global: use static method to construct AP_NavEKF3
2017-09-26 03:01:21 +01:00
Lucas De Marchi
e2fe36357a
global: use static method to construct AP_NavEKF2
2017-09-26 03:01:21 +01:00
Lucas De Marchi
69b6d95cb2
global: use static method to construct AP_Board_Config{,_CAN}
2017-09-26 03:01:21 +01:00
Lucas De Marchi
72fd2d6f05
global: use static method to construct AP_SerialManager
2017-09-26 03:01:21 +01:00
Lucas De Marchi
40fd1b346c
global: remove rangefinder from AP_AHRS_NavEKF
...
AP_AHRS_NavEKF doesn't use the rangefinder, it just delegates the
calls to the right estimator.
For libraries/AP_AHRS/examples/AHRS_Test/AHRS_Test.cpp the initialization
order has also been modified to match the order on vehicles. It's more
correct since it passes a reference when EKF2/EKF3 are already
constructed, while thos constructors use a pointer. Ideally these
should be moved to an init() method though, or use a get_instance().
2017-09-26 03:01:21 +01:00
Lucas De Marchi
9027a55696
global: use static method to construct RangeFinder
2017-09-26 03:01:21 +01:00
Lucas De Marchi
8094482f21
global: use static method to construct AP_GPS
2017-09-26 03:01:21 +01:00
Lucas De Marchi
87b30b4552
global: use static method to construct AP_InertialSensor
2017-09-26 03:01:21 +01:00
Lucas De Marchi
c1a957fbf3
global: use static method to construct Compass
2017-09-26 03:01:21 +01:00
Lucas De Marchi
91feec0e14
global: use static method to construct AP_Baro
2017-09-26 03:01:21 +01:00
Peter Barker
97b6ca218b
AP_AHRS: send ekf status reports even when EKF inactive
2017-09-06 10:50:49 +10:00
chobits
d6845a911a
AP_AHRS: fix get_relative_position_NE_home calcalation
2017-08-19 10:23:24 +09:00
Randy Mackay
1ddf38869a
AP_AHRS: set AP_Notify gps_glitching flag
2017-07-27 14:16:23 +09:00
Peter Barker
3e0ed6deae
AP_AHRS: Use GCS_Dummy GCS singleton
2017-07-07 16:18:37 +01:00
Peter Barker
12b4f2c4b6
AP_AHRS: correct example
2017-06-29 15:43:38 +01:00
priseborough
fa5534502a
AP_AHRS: Update to match AP_GPS interface change
2017-06-21 11:44:45 +01:00
Andrew Tridgell
770f697cfc
AP_AHRS: added set/get for flying state
...
this allows the vehicle code to set the likely flying state, which can
be used by EKF to trigger changes which should only happen when flying
(such as mag alignment)
2017-06-20 09:44:44 +10:00
priseborough
a3483d0d34
AP_AHRS: Update for compatibility with EKF interface change
2017-06-14 12:44:41 +01:00
Randy Mackay
3e130273a9
AP_AHRS: do not fallback to DCM if EKF can provide relative position
2017-06-14 09:12:20 +09:00
Matt
6354ca7096
AP_AHRS: Set the new gps_fusion notify flag
...
Uses EKF filter state to set the new gps_fusion notify flag. This allows
the GCS and notify devices to specifically be notified if the GPS is or
is not usable.
2017-06-06 10:38:42 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
98a43cc4b5
AP_AHRS: 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
b6568b1c7e
AP_AHRS: support set_origin and get_origin for EKF 10
2017-05-08 13:38:10 +10:00
Andrew Tridgell
d9223165c7
AP_AHRS: fixed get_accel_ef_blended() for SITL EKF 10
2017-05-07 09:10:44 +10:00
Andrew Tridgell
28030dd85c
AP_AHRS: use SIM_ODOM_ENABLE to enable visual odom in SITL
2017-05-01 15:06:46 +10:00
Andrew Tridgell
e78f55ef9b
AP_AHRS: change order of EK2/EK3 update
...
if EK3 is our primary estimator when we want to run the EK3 update
first, so it gets time priority for inter-EKF scheduling.
2017-05-01 14:24:55 +10:00
Randy Mackay
0af9433c8e
AP_AHRS: add set_origin
2017-04-22 10:37:31 +09:00
Eugene Shamaev
5c080ce875
AP_AHRS: calculation and reporting of AOA and SSA
2017-04-19 20:48:42 +10:00
priseborough
90cd46f4d7
AP_AHRS: simulate body frame odometry sensor
2017-04-19 11:04:40 +09:00
priseborough
3b82f60b08
AP_AHRS: add interface for use of visual odometry data
2017-04-19 11:04:40 +09:00
Andrew Tridgell
6b6ad6ddf2
AP_AHRS: fixed wrap of yaw in AHRS_View
2017-04-17 12:15:19 +10:00
Andrew Tridgell
5758532326
AP_AHRS: make AHRS2 quaternion available
2017-04-16 14:01:36 +10:00
Pierre Kancir
fede727d38
AP_AHRS: example fix travis warning
...
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Michael du Breuil
33d0fa3e82
AP_AHRS: Fix an index out of bounds
...
Coverity 137817, getPrimaryCoreIMUIndex() can return -1, which is then invalid to pass to get_delta_velocity_dt
2017-04-06 08:44:57 +10: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
Andrew Tridgell
5f02b7eddb
AP_AHRS: added get_error_rp and get_error_yaw to AHRS_View
2017-03-31 11:30:44 +11:00
Randy Mackay
d3aca5544e
AP_AHRS: get_gyro_latest returns latest rates from IMU with drift correction
...
Pulling the gyro values from the IMU allows our rate controllers to run before the EKF
2017-03-03 13:14:28 +11:00
Randy Mackay
a74833a04a
AP_AHRS: fix example sketch
2017-02-27 15:18:13 +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
6ee4045878
AP_AHRS: mark new relative position functions override
2017-02-24 21:13:08 +11:00
Peter Barker
35f876f853
AP_AHRS: examples: correct AHRS_Test
...
This is required so gcs() returns an object
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
Peter Barker
24647fb2b0
AP_AHRS: make get_relative_position_D_home pure virtual
...
Having a void function with a return parameter that isn't
filled in by the base class function seems like a bad idea
2017-02-24 21:13:08 +11:00
Jacob Walser
8c87868b5c
AP_AHRS: Add submarine vehicle class
2017-02-21 11:26:14 +11:00
Peter Barker
1217256898
AP_AHRS: correct infinite recursion in AP_AHRS_View
2017-02-21 09:03:03 +11:00
Andrew Tridgell
7845181f4b
AP_AHRS: fixes for changes in AP_AHRS API from Michael
2017-02-18 17:26:43 +11:00
Andrew Tridgell
c62c64d27b
AP_AHRS: added support for AP_AHRS_View
2017-02-18 17:26:43 +11:00
Andrew Tridgell
1345bf8737
AC_AttitudeControl: added support for AP_AHRS_View
...
this allows for tailsitters with a different attitude view
2017-02-18 17:26:43 +11:00
Michael du Breuil
3274f1dbb1
AP_AHRS: Split all NED methods into a collection of NED relative to home vs origin
2017-02-13 09:23:14 +11:00
priseborough
93aa40a9e0
AP_AHRS: Fix EKF3 gyro bias reporting and improve code clarity
2017-02-08 19:11:08 +00:00
priseborough
e2757c17c8
AP_AHRS_NavEKF: fix ekf variable naming and initialisation
2017-01-27 16:57:42 +09:00