Andrew Tridgell
6c8a57c2d7
AP_InertialSensor: review fixes
2021-01-21 13:09:21 +11:00
Andrew Tridgell
3ff71c7814
AP_InertialSensor: changes from review feedback
2021-01-21 13:09:21 +11:00
Andrew Tridgell
b12a663f7a
AP_InertialSensor: apply accel scaling
2021-01-21 13:09:21 +11:00
Andrew Tridgell
73ddde3629
AP_InertialSensor: changes for new SITL IMU params
2021-01-21 13:09:21 +11:00
Andrew Tridgell
5e60fac37e
AP_InertialSensor: remove unused variable
2021-01-21 13:09:21 +11:00
Andrew Tridgell
285b53fe07
AP_InertialSensor: use vector polyfit
...
this reduces memory usage
2021-01-21 13:09:21 +11:00
Andrew Tridgell
ffe20f7958
AP_InertialSensor: use a fixed reference temperature of 35C
...
this allows us to timeout the calibration when the temperature stops
rising as the polynomial no longer depends on the maximum temperature
2021-01-21 13:09:21 +11:00
Andrew Tridgell
dc58b0b950
AP_InertialSensor: changes from review feedback
...
thanks Sid!
2021-01-21 13:09:21 +11:00
Andrew Tridgell
c9a83c8127
AP_InertialSensor: added INS_TCAL_OPTIONS
...
make persistent params optional, and allow save of accelcal
2021-01-21 13:09:21 +11:00
Andrew Tridgell
1ddc21c9bb
AP_InertialSensor: support saving tempcal params persistently
2021-01-21 13:09:21 +11:00
Andrew Tridgell
8caea96ab1
AP_InertialSensor: start auto-learning at boot
...
This makes it easier to setup the params. The ENABLE=2 value only
takes effect at boot
2021-01-21 13:09:21 +11:00
Andrew Tridgell
7cb7ad3636
AP_InertialSensor: fixed build error
2021-01-21 13:09:21 +11:00
Andrew Tridgell
2e9f61fe49
AP_InertialSensor: fixed IMU index display in msgs
...
start at 1 for users
2021-01-21 13:09:21 +11:00
Andrew Tridgell
d5b511f4a0
AP_InertialSensor: fixed start timer for temperature in SITL
...
when we are doing an autotest we want the temperature to start
climbing when we first set SIM_IMUT_FIXED=0
2021-01-21 13:09:21 +11:00
Andrew Tridgell
30e55d8dfc
AP_InertialSensor: cope with user changing TMAX while calibrating
2021-01-21 13:09:21 +11:00
Andrew Tridgell
e2e97c67ce
AP_InertialSensor: catch user attempt to change TMAX during cal
2021-01-21 13:09:21 +11:00
Andrew Tridgell
3fb720354d
AP_InertialSensor: added notify events for temperature calibration
2021-01-21 13:09:21 +11:00
Andrew Tridgell
cc3579ea5d
AP_InertialSensor: change TCAL sampling to be even in temperature
2021-01-21 13:09:21 +11:00
Andrew Tridgell
fc0f8b990a
AP_InertialSensor: added online learning of temp cal
...
use INS_TCAL1_ENABLE=2 to start learning
2021-01-21 13:09:21 +11:00
Andrew Tridgell
6f6f89e5aa
AP_InertialSensor: enable temperature sensor on LSM9DS0
...
this allows for temperature calibration of the LSM303D in CubeBlack
and Pixhawk1
2021-01-21 13:09:21 +11:00
Andrew Tridgell
4bdf506d10
AP_InertialSensor: apply 1e-5 scale factor
...
this keeps the params in a reasonable range for parameter editors
2021-01-21 13:09:21 +11:00
Andrew Tridgell
0f6f6bac6b
AP_InertialSensor: expose TCal class for use in SITL
2021-01-21 13:09:21 +11:00
Andrew Tridgell
7921e042f1
AP_InertialSensor: added IMU temperature calibration support
...
this adds parameters that can be setup by an external script for
compensating for temperature variation in gyros and accels using a 3rd
order polynomial
2021-01-21 13:09:21 +11:00
Peter Barker
239b09fb34
AP_InertialSensor: add simulator for ICM40609
2021-01-12 17:43:36 +11:00
Andrew Tridgell
957842f7eb
AP_InertialSensor: added support for v3 Invensense sensors
...
starting with ICM-40609, ICM-42688 and ICM-42605
2021-01-11 14:43:35 +11:00
Andrew Tridgell
b74e5c0e2f
AP_InertialSensor: added ExternalAHRS backend
2021-01-05 21:13:12 +11:00
Andrew Tridgell
4f176c25de
AP_InertialSensor: relax IMU wait time for low loop rates
...
allow for waiting for all IMUs for up to 1/3 of the loop time
2021-01-05 21:13:12 +11:00
murata
219dc2e7da
AP_InertialSensor: Set the gravitational acceleration value to the defined value
2021-01-05 09:11:14 +09:00
Andy Piper
3db6203fb6
AP_InertialSensor: reduce FIFO buffer size to avoid DMA contention
2020-12-23 18:03:12 +11:00
Peter Barker
72acc8bfc8
AP_InertialSensor: use primary gyro (not accel) for get_delta_angle_dt
2020-11-29 13:21:53 +11:00
Peter Barker
2437cf8a24
AP_Logger: use instance number for IMU logging
2020-11-11 19:31:53 +11:00
Andrew Tridgell
f6c45c3bcd
AP_InertialSensor: cope with INS_MAX_INSTANCES < 3
2020-11-10 16:15:45 +11:00
Andrew Tridgell
e8f21d3458
AP_InertialSensor: fixed rpm indexing for vtol motors
...
quadplane vtol motors start at 1
2020-10-28 14:20:44 +11:00
Michael du Breuil
c86dcf91d6
AP_InertialSensor: Run vibration monitoring on all instances
2020-10-24 09:54:04 +11:00
Peter Barker
02c9aa2ae2
AP_InertialSensor: remove unused define
2020-10-20 11:24:34 +11:00
mhefny
02daa4c3ec
AP_InertialSensor: update L3G4200D driver
2020-10-06 09:27:26 -07:00
Andrew Tridgell
cfc59497f6
AP_InertialSensor: trigger internal error on persistent IMU reset
...
this will give users a warning when they are getting the Invensense
IMU FIFO reset issue
2020-09-02 06:42:44 +10:00
Andrew Tridgell
d5c0522651
AP_InertialSensor: instantiate SIM_IMU_COUNT sensors in SITL
2020-08-28 10:17:00 +10:00
bugobliterator
4cdb4b74f3
AP_InertialSensor: add support for checked register in Invensensev2 Drvr
2020-08-06 12:41:35 +10:00
Andy Piper
e53a43461b
AP_InertialSensor: remove ICM gyro pre-filter
2020-08-04 09:24:16 +10:00
bugobliterator
43c16cd417
AP_InertialSensor: ensure that we use environment Python interpreter
2020-08-03 14:02:09 +10:00
Andy Piper
d4ba821297
AP_InertialSensor: make the backend fast gyro rate configurable and independent from the accel rate
...
allow fast sampling of gyros on MPU6000 and MPU6500
2020-07-28 20:47:16 +10:00
Andy Piper
05366e9aa9
AP_InertialSensor: delegate active harmonic calculation to the filter
2020-07-14 09:50:06 +10:00
Andy Piper
faf9bbbf3a
AP_InertialSensor: make the backend fast gyro rate configurable
...
raise gyro rate default on F7 and H7
clean up gyro rate docs and output startup banner
2020-07-10 16:45:29 +10:00
Andy Piper
61bb42cc0c
AP_InertialSensor: allow up to four distinct notch center frequencies to be updated
...
apply the LPF after the notch filters to reduced notch-induced noise
2020-06-21 19:09:35 +10:00
duccan
cdcdd5ce27
AP_HAL_ChibiOS: Added support for Bitcraze Crazyflie 2.1
...
Rework after review:
- Kept old IMU and barometer definition of crazyflie 2.0 in hwdef
- Added comment regarding soft-reset command
- Added defaults.parm for crazyflie
2020-06-07 07:49:37 +10:00
duccan
0d96c7f7a5
AP_HAL_ChibiOS: Added support for Bitcraze Crazyflie 2.1
2020-06-07 07:49:37 +10:00
Andrew Tridgell
cab3630009
AP_InertialSensor: switched to supplying timestamps for SITL
...
this allows the time step to change on each loop as we no longer use
the average sensor rate when calculating deltas
2020-06-03 18:11:06 +10:00
Andy Piper
8ac79da643
AP_InertialSensor: FFT gyro window would overflow on windows >= 256
...
convert FFT buffers to ObjectBuffer<float> for lock-free access
push gyro samples directly into the FFT ring buffer from the gyro thread
2020-05-24 07:43:34 +10:00
Andy Piper
d0a241597a
AP_InertialSensor: add support for double harmonic notches to more effectively target wider noise peaks
2020-04-28 09:32:02 +10:00