Andrew Tridgell
4fe092fead
AP_InertialSensor: panic on bad gyro or accel sample rates
10 years ago
Andrew Tridgell
d3b85eb792
AP_InertialSensor: use driver supplied sample rate
...
this will work with a wider range of sensors
10 years ago
Andrew Tridgell
e91bfdfc1c
AP_InertialSensor: fixed VibTest example build
10 years ago
Andrew Tridgell
bc0ae630a1
AP_InertialSensor: always provide delta_velocity and delta_angles
...
this makes the NavEKF code simpler
10 years ago
Andrew Tridgell
f831c16238
AP_InertialSensor: use fixed sensor sample times
...
this uses fixed sample times for PX4 IMUs, rather than reported
timestamps. It avoids timing jitter caused by the over-sampling in
the PX4 drivers
10 years ago
Randy Mackay
9d81856580
InertialSensor: fix name of get_delta_velocity method
10 years ago
Andrew Tridgell
727be87d84
AP_InertialSensor: support HIL functions for delta_velocity and delta_angles
10 years ago
Randy Mackay
8ceccd778d
InertialSensor: disable vibration checks on APM2
...
Also bug fix get_accel_clip_count's instance check
10 years ago
Randy Mackay
0db7acc628
InertialSensor: calc vibration and accel clipping
10 years ago
Andrew Tridgell
214b61bfc0
AP_InertialSensor: fixed example build
10 years ago
Andrew Tridgell
7f7113c1de
AP_InertialSensor: convert example from .pde to .cpp
10 years ago
Andrew Tridgell
6a2c585632
AP_InertialSensor: fixed build warnings
10 years ago
Peter Barker
8be9e99fad
AP_InertialSensor_PX4: 64-bit timestamps for ACCx and GYRx messages
10 years ago
Peter Barker
f489f6b696
AP_InertialSensor: use 64-bit timestamps in dataflash logs
10 years ago
Lucas De Marchi
3aa46e3213
AP_InertialSensor: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
10 years ago
Andrew Tridgell
aaa35bd1ec
AP_InertialSensor: using atan2f() gives more accurate euler corrections
...
thanks to Jon and Paul!
10 years ago
Andrew Tridgell
9e723ef907
AP_InertialSensor: added calibrate_trim() function
...
used for redoing trim calculation
10 years ago
Andrew Tridgell
b564ba0868
AP_InertialSensor: fixed AHRS_TRIM calculation again
10 years ago
Jonathan Challinger
159599879f
AP_InertialSensor: simplify and correct AHRS_TRIM computation
10 years ago
Randy Mackay
3f8b832075
InertialSensor: fix example sketch
10 years ago
Randy Mackay
1f14eec4ea
InertialSensor: accel_calibrated_all_ok replaces calibrated
...
This checks that the current number of accelerometers matches the number
of calibrated accels in order to catch accel failures at boot
10 years ago
Andrew Tridgell
8bf2baef70
AP_InertialSensor: fixed primary accel/gyro in replay
10 years ago
Andrew Tridgell
afc9812d0b
AP_InertialSensor: update VibTest after moving messages info DataFlash
10 years ago
Andrew Tridgell
7d90033a36
AP_InertialSensor: support raw accel and gyro dataflash logging
10 years ago
Andrew Tridgell
f5140e25b0
AP_InertialSensor: updated VibTest for latest PX4 interfaces
10 years ago
Andrew Tridgell
089e63f987
AP_InertialSensor: fixed PSTR handling
...
must use PSTR on code compiled for AVR
10 years ago
Andrew Tridgell
31693e332e
AP_InertialSensor: use non-PSTR printf
...
this is not built on AVR
10 years ago
Andrew Tridgell
e6a8a6da07
AP_InertialSensor: revert AP_Math class change
10 years ago
Tom Pittenger
0e076d6dc8
AP_InertialSensor: compile warnings: format not a string literal, argument types not checked
...
PSTR() goofs things up when using hal.console->printf_P()
10 years ago
Tom Pittenger
9e98c68099
AP_InertialSensor: compile warnings: format not a string literal, argument types not checked
...
PSTR() goofs things up when using hal.console->printf_P()
10 years ago
Tom Pittenger
820199635b
AP_InertialSensors: compiler warnings: apply is_zero(float) or is_equal(float)
10 years ago
Tom Pittenger
3cb2221315
AP_IntertialSensor: double to float warning
10 years ago
Andrew Tridgell
ef527d9daa
AP_InertialSensor: fix for HAL_SITL rename
10 years ago
Randy Mackay
6773c0b232
AP_InertialSensor: default primary accel and gyro
10 years ago
Jonathan Challinger
bb88a4f8fe
AP_InertialSensor: healthy() checks bounds
10 years ago
Jonathan Challinger
af80f20a51
AP_InertialSensor: add get_primary_gyro, fix get_primary_accel
10 years ago
Andrew Tridgell
007b01533d
AP_InertialSensor: switched to 16g accel range for MPU9250
...
this matches the Pixhawk, and makes us less prone to vibration. We
have seen clipping at 8g
10 years ago
Tom Pittenger
a4b8575432
InertialSensor: fix compile warnings re float constants
10 years ago
mirkix
13ee34c58a
AP_InertialSensor: MPU9150 fix compiler warnings
10 years ago
Lucas De Marchi
b292873304
AP_InertialSensor: fix starvation in L3G4200D
...
The main thread would always be blocked on the semaphore to read the
data from accelerometer and gyroscope. Especially if we have a slow
update of these values in _accumulate() due to the I2C transfer function
taking too much time: the timer thread would never give up the CPU,
causing starvation on the main thread.
This fixes the issue by reducing the critical region using a flip-buffer
so _accumulate() can work on its own copy of the data. Now that the
critical region is smaller, also avoid the semaphore and use a spinlock
instead.
10 years ago
Andrew Tridgell
45e016ea5b
AP_InertialSensor: check for zero delta_velocity dt
10 years ago
Jonathan Challinger
b306d7a356
AP_InertialSensor: accel cal sample for 400ms instead of 1s
10 years ago
Jonathan Challinger
1e1d8efa22
AP_InertialSensor: use expected update rate for accel cal sampling
10 years ago
Jonathan Challinger
bd84328440
AP_InertialSensor: hack to "reset" the accel filter before taking a cal sample
10 years ago
Jonathan Challinger
b2b42e081a
AP_InertialSensor: use delta_velocity/dt for calibration if available
10 years ago
Jonathan Challinger
423160eaf8
AP_InertialSensor: publish delta_velocity_dt
10 years ago
Andrew Tridgell
4147825b87
AP_InertialSensor: fixed gyro calibration bug
...
we must not update _gyro_offset[] until we have completed calibration
of that gyro, or we will end up using the new offsets when asking for
the raw gyro vector
10 years ago
Andrew Tridgell
23272e4013
AP_InertialSensor: added get_temperature() interface
...
this will allow logging of individual temperature sensors
10 years ago
ahcorde
103bb2a08d
AP_InertialSensor: Fix orientation MPU6000 PXF
10 years ago
Andrew Tridgell
cf2445dc97
AP_InertialSensor: prevent nested accelerometer calibration
10 years ago