Emile Castelnuovo
dae32984f1
AP_InertialSensor: use PX4 library for VRBRAIN boards.
10 years ago
LukeMike
6a93148b92
AP_InertialSensor: added library for VRBRAIN Inertial Sensor
10 years ago
Andrew Tridgell
6e62e1ca7b
AP_InertialSensor: make calibrated() const
10 years ago
Andrew Tridgell
745b739ab7
AP_InertialSensor: make calibrated() function fast enough to call in flight
...
this will be used in plane to make AHRS SYS_STATUS unhealthy if a user
tries to fly with EKF enabled without a full 3D accel cal.
Note that it doesn't rely on using AP_Param load() to detect that a
value has been set, as some users are first doing a 3D cal then later
doing a 1D cal. In that case load() was returning true and would give
a false positive
10 years ago
Andrew Tridgell
b9adc6e466
AP_InertialSensor: prefer sensors that have zero error counts
...
if a sensor has failed in flight then try not to use it if another
error-free sensor is available
10 years ago
Andrew Tridgell
40e83ceb1f
AP_InertialSensor: simplify next sample time calculations
...
this makes the calculation much clearer
10 years ago
Andrew Tridgell
a047d1f569
AP_InertialSensor: moved default filter and sample_rate to frontend
...
this simplifies the backends and prevents code repitition
10 years ago
Andrew Tridgell
17b2214798
AP_InertialSensor: make it easier to add multiple backends
...
use _add_backend() to add new backends on startup
10 years ago
Andrew Tridgell
3a9a5a9c18
AP_InertialSensor: implement gyro and accel health monitoring
...
sensor is healthy if it gave a sample on the last update()
10 years ago
Andrew Tridgell
dbcd02f2be
AP_InertialSensor: converted MPU9150 driver
...
untested conversion
10 years ago
Andrew Tridgell
ff5f791343
AP_InertialSensor: converted flymaple driver to new API
10 years ago
Andrew Tridgell
2d47a07480
AP_InertialSensor: ported L3G4200D driver to new API
10 years ago
Andrew Tridgell
deafcd6ddc
AP_InertialSensor: improved timing in all drivers
10 years ago
Andrew Tridgell
d48beb0c0f
AP_InertialSensor: converted PX4 driver to new API
10 years ago
Andrew Tridgell
ec11417705
AP_InertialSensor: converted HIL backend, which gets SITL working
10 years ago
Andrew Tridgell
448efc70a3
AP_InertialSensor: first steps in frontend/backend split
...
This converts the MPU6000 driver to a frontend/backend structure, and
disables all other drivers. They will be progressively re-enabled as
each is converted
10 years ago
Randy Mackay
834f2bea07
INS: add gyro_calibrated_ok_all method
...
This returns true if the gyros have been calibrated successfully
10 years ago
Randy Mackay
74553e523d
INS: add get_accel_health_all and get_gyro_health_all
...
Returns true only if all available accels or gyros are healthy
11 years ago
Víctor Mayoral Vilches
0f908a8ccd
HAL_Linux: Add L3GD20 to the AP_InertialSensor header
11 years ago
Randy Mackay
51f40fe3d6
INS: add accessor for mpu6k filter
11 years ago
Randy Mackay
6baedbda1d
AP_InertialSensor: add empty virtual destructor
11 years ago
LukeMike
85fc72c57c
AP_InertialSensor: VRBRAIN added 3th inertial sensor
11 years ago
Andrew Tridgell
abb53eb9a2
AP_InertialSensor: simplify using HAL board subtypes
11 years ago
Andrew Tridgell
297bb52ced
AP_InertialSensor: added MPU9250 header
11 years ago
Andrew Tridgell
ab7e96b9de
AP_InertialSensor: updates for ERLE board type
11 years ago
Victor Mayoral Vilches
44320708a7
AP_InertialSensor_MPU9150: I2C userspace driver sensor added.
...
The MPU9150 is a 9 axis sensor that includes 3 accelerometers,
3 gyroscopes and 3 magnetometers. All accessible through I2C.
The AP_InertialSensor_MPU9150 class allows APM to use this sensor.
11 years ago
Andrew Tridgell
ca12592448
AP_InertialSensor: allow for 3 accels and 3 gyros on Pixhawk
...
this supports FMUv3
11 years ago
LukeMike
8f552d5758
VRBRAIN: Changed the management of VirtualRobotix's boards.
11 years ago
Emile Castelnuovo
06744ea7d2
AP_InertialSensor: new files and definitions for VRBRAIN board
11 years ago
Jonathan Challinger
e81d2e9584
AP_InertialSensor: Correct out-of-bounds array access that was causing SITL to crash
11 years ago
Andrew Tridgell
2c85a7ba56
AP_InertialSensor: expose get_primary_accel() for use in AHRS
11 years ago
Andrew Tridgell
0e18079c47
AP_InertialSensor: allow HIL sensors to support multiple instances
...
this allows log replay to test both sets of sensors on a Pixhawk log
11 years ago
Andrew Tridgell
b1c5f23bbd
AP_InertialSensor: make get_delta_time() const
...
allows use from AP_NavEKF
11 years ago
Randy Mackay
b7565affcd
INS: add support for 400hz for PX4
11 years ago
Andrew Tridgell
58d3729d16
AP_InertialSensor: fixed default health functions
...
this fixes INS on APM1. Thanks to Mike McCauley for noticing this!
11 years ago
Andrew Tridgell
cba0cb963a
AP_InertialSensor: auto-failover to working gyro and accel
11 years ago
Andrew Tridgell
a0688a69d4
AP_InertialSensor: generalise the accel/gyro calibration for N sensors
11 years ago
Andrew Tridgell
2753449e75
AP_InertialSensor: added support for multiple accel/gyro devices
...
this makes it possible to ask for the gyro and accel vectors from
secondary INS devices.
11 years ago
Andrew Tridgell
f10a4b04ae
AP_InertialSensor: make PX4 healthy call _get_sample()
...
this prevents a false positive during times like arming where we are
not reading the sensors
11 years ago
Andrew Tridgell
f5299e2e11
AP_InertialSensor: added healthy check for PX4 and HIL
...
used to detect bad accels
11 years ago
Andrew Tridgell
9ecd889e9d
AP_InertialSensor: detect bad MPU6000 SPI transactions and lower bus speed
...
this uses bad data or bad INT_STATUS values from the MPU6000 to detect
the sensor running too fast and lower bus speed
11 years ago
Andrew Tridgell
1cd070a2e7
AP_InertialSensor: use const reference returns
...
saves some vector copies
11 years ago
Andrew Tridgell
e5e4cdee18
AP_InertialSensor: added wait_for_sample() API call
...
this waits for a new INS sample to arrive, using whatever method is
most efficient on each INS type
12 years ago
Andrew Tridgell
1aabd7155e
AP_InertialSensor: added L3G4200D driver
...
this is for a cheap ebay 10DOF sensor
12 years ago
Andrew Tridgell
cf726c6642
AP_InertialSensor: rename Stub to HIL
...
more consistent with other drivers
12 years ago
Andrew Tridgell
14636e1cdf
AP_InertialSensor: changed num_samples_available() to sample_available()
...
this makes the interface clearer. It also fixes a 3D accel cal bug.
12 years ago
Mike McCauley
4d10a96077
AP_InertialSensor: Add flymaple support
12 years ago
Andrew Tridgell
f8e9d48a76
AP_InertialSensor: removed the flash_leds() callback
...
AP_Notify now handles this
12 years ago
Andrew Tridgell
7b3a674d66
AP_InertialSensor: added set_default_filter() method
12 years ago
Andrew Tridgell
65a490c209
AP_InertialSensor: update for new notify API
12 years ago