Browse Source

modify the IMU code for AP_Param

master
Andrew Tridgell 13 years ago
parent
commit
e5f3864f81
  1. 5
      libraries/AP_IMU/AP_IMU_INS.cpp
  2. 8
      libraries/AP_IMU/AP_IMU_INS.h

5
libraries/AP_IMU/AP_IMU_INS.cpp

@ -21,6 +21,11 @@ @@ -21,6 +21,11 @@
#include "AP_IMU_INS.h"
const AP_Param::GroupInfo AP_IMU_INS::var_info[] PROGMEM = {
{ AP_PARAM_VECTOR3F, "", VAROFFSET(AP_IMU_INS, _sensor_cal) },
{ AP_PARAM_NONE, "" }
};
void
AP_IMU_INS::init( Start_style style,
void (*delay_cb)(unsigned long t),

8
libraries/AP_IMU/AP_IMU_INS.h

@ -26,9 +26,8 @@ public: @@ -26,9 +26,8 @@ public:
/// @param adc Pointer to the AP_ADC instance that is connected to the gyro and accelerometer.
/// @param key The AP_Var::key value we will use when loading/saving calibration data.
///
AP_IMU_INS(AP_InertialSensor *ins, AP_Var::Key key) :
_ins(ins),
_sensor_cal(key, PSTR("IMU_SENSOR_CAL"))
AP_IMU_INS(AP_InertialSensor *ins) :
_ins(ins)
{}
/// Do warm or cold start.
@ -65,10 +64,11 @@ public: @@ -65,10 +64,11 @@ public:
virtual void ay(const float v) { _sensor_cal[4] = v; }
virtual void az(const float v) { _sensor_cal[5] = v; }
static const struct AP_Param::GroupInfo var_info[];
private:
AP_InertialSensor *_ins; ///< INS provides an axis and unit correct sensor source.
AP_VarA<float,6> _sensor_cal; ///< Calibrated sensor offsets
AP_Vector6f _sensor_cal; ///< Calibrated sensor offsets
virtual void _init_accel(void (*delay_cb)(unsigned long t),
void (*flash_leds_cb)(bool on) = NULL); ///< no-save implementation

Loading…
Cancel
Save