2019/7/23
- Uncomment code block of CAN transmission in ahrs.c if using in RM i.e.
//CAN1_Send_Msg(Can_ID+1, (int16_t)(imu_data.gyro_x*1000), (int16_t)(imu_data.gyro_z*1000) , \
//(int16_t)(EulerAngle.pitch*5729.5), (int16_t)(EulerAngle.yaw*5729.5), 4);
- Add bmi088 sensor in the latest release
- Use bmi088 sensor by default. You can change sensor written in code to match you board's sensor by changing the MACRO in ahrs.c e.g.
#define BMI088
// #define ICM20602
- Add a thermal control feature. There're only a few parameters used to tune.
#define enable_thermal_control
#define update_period 1280
#define stable_temperature 48
- Red LED (PB11) will blink when thermal control part under-temerature or over-temperature. Plz calibrate the sensor offset when LED off (means within +-0.75 centigrade ).
- Adjust the MACRO sampleFreq in ahrs.h to meet your project requirement
#define sampleFreq 500 // sample frequency in Hz
- send acc data eliminated gravity to can bus while canid = canid + 2
//send acc data eliminated gravity
//CAN1_Send_Msg(Can_ID+2, (int16_t)(imu_data.Acc_without_gravity.acc_x * 10000), (int16_t)(imu_data.Acc_without_gravity.acc_x * 10000), (int16_t)(imu_data.Acc_without_gravity.acc_x * 10000) , 0, 3);
- Red LED will blink 5 times in the initial procedure if sensor isn't calibrated. In this case, sensor offset will be clear to zero and you should calibrate it right now.
- if you wanna intialize quaternion by accelerator, enable this Macro in file ahrs.h. Otherwise, it will be initialized by assgining [1 0 0 0].
#define Enable_quaternion_initilized_by_Acc