DataFlash: added logging of actual sensor rates

This commit is contained in:
Andrew Tridgell 2017-05-01 13:00:46 +10:00
parent 49cc0965c0
commit 0a83281a29
2 changed files with 12 additions and 5 deletions

View File

@ -838,7 +838,9 @@ void DataFlash_Class::Log_Write_IMU(const AP_InertialSensor &ins)
accel_error : ins.get_accel_error_count(0),
temperature : ins.get_temperature(0),
gyro_health : (uint8_t)ins.get_gyro_health(0),
accel_health : (uint8_t)ins.get_accel_health(0)
accel_health : (uint8_t)ins.get_accel_health(0),
gyro_rate : ins.get_gyro_rate_hz(0),
accel_rate : ins.get_accel_rate_hz(0),
};
WriteBlock(&pkt, sizeof(pkt));
if (ins.get_gyro_count() < 2 && ins.get_accel_count() < 2) {
@ -860,7 +862,9 @@ void DataFlash_Class::Log_Write_IMU(const AP_InertialSensor &ins)
accel_error : ins.get_accel_error_count(1),
temperature : ins.get_temperature(1),
gyro_health : (uint8_t)ins.get_gyro_health(1),
accel_health : (uint8_t)ins.get_accel_health(1)
accel_health : (uint8_t)ins.get_accel_health(1),
gyro_rate : ins.get_gyro_rate_hz(1),
accel_rate : ins.get_accel_rate_hz(1),
};
WriteBlock(&pkt2, sizeof(pkt2));
if (ins.get_gyro_count() < 3 && ins.get_accel_count() < 3) {
@ -881,7 +885,9 @@ void DataFlash_Class::Log_Write_IMU(const AP_InertialSensor &ins)
accel_error : ins.get_accel_error_count(2),
temperature : ins.get_temperature(2),
gyro_health : (uint8_t)ins.get_gyro_health(2),
accel_health : (uint8_t)ins.get_accel_health(2)
accel_health : (uint8_t)ins.get_accel_health(2),
gyro_rate : ins.get_gyro_rate_hz(2),
accel_rate : ins.get_accel_rate_hz(2),
};
WriteBlock(&pkt3, sizeof(pkt3));
}

View File

@ -83,6 +83,7 @@ struct PACKED log_IMU {
uint32_t gyro_error, accel_error;
float temperature;
uint8_t gyro_health, accel_health;
uint16_t gyro_rate, accel_rate;
};
struct PACKED log_IMUDT {
@ -835,8 +836,8 @@ struct PACKED log_Beacon {
#define IMT_LABELS "TimeUS,DelT,DelvT,DelaT,DelAX,DelAY,DelAZ,DelVX,DelVY,DelVZ"
#define IMT_FMT "Qfffffffff"
#define IMU_LABELS "TimeUS,GyrX,GyrY,GyrZ,AccX,AccY,AccZ,ErrG,ErrA,Temp,GyHlt,AcHlt"
#define IMU_FMT "QffffffIIfBB"
#define IMU_LABELS "TimeUS,GyrX,GyrY,GyrZ,AccX,AccY,AccZ,EG,EA,T,GH,AH,GHz,AHz"
#define IMU_FMT "QffffffIIfBBHH"
#define MAG_LABELS "TimeUS,MagX,MagY,MagZ,OfsX,OfsY,OfsZ,MOfsX,MOfsY,MOfsZ,Health,S"
#define MAG_FMT "QhhhhhhhhhBI"