torque_sensor.h 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. #ifndef __TORQUE_SENSOR_H
  2. #define __TORQUE_SENSOR_H
  3. #include "stm32f1xx_hal.h"
  4. #include "adc.h"
  5. #include "var.h"
  6. //力矩传感器启动值默认值
  7. #define TORQUE_SENSOR_STARTDATA 368
  8. //力矩传感器历史零点值,占用空间24bytes
  9. typedef struct
  10. {
  11. uint16_t Data[9];
  12. uint16_t MaxData;
  13. uint16_t MinData;
  14. uint16_t PresentData;
  15. }TorqueOffSetData_Struct_t;
  16. //传感器属性
  17. typedef struct
  18. {
  19. TorqueOffSetData_Struct_t Torque_OffSetData;//零点历史值
  20. uint8_t Torque_Cal_K;//标定系数
  21. }TorqueSensor_Param_Struct_t;
  22. //传感器故障状态
  23. typedef union
  24. {
  25. struct
  26. {
  27. uint8_t Sensor1 :1; //传感器1故障状态位
  28. uint8_t Sensor2 :1; //传感器2故障状态位
  29. uint8_t Sensor3 :1; //传感器3故障状态位
  30. uint8_t RS :5;
  31. }FaultBit;
  32. uint8_t FaultStatusCode;
  33. }TorsueSensorFaultStatus_Struct_t;
  34. //全局变量声明
  35. extern TorqueSensor_Param_Struct_t TorqueSensor_1_Param;
  36. extern TorqueSensor_Param_Struct_t TorqueSensor_2_Param;
  37. extern TorqueSensor_Param_Struct_t TorqueSensor_3_Param;
  38. extern TorsueSensorFaultStatus_Struct_t TorsueSensorFaultStatus;
  39. extern uint16_t TorqueSensorStartData;
  40. extern TrueOrFalse_Flag_Struct_t IsTorqueOffSetUpdateEnable;
  41. //全局变量定义
  42. extern void TorqueSensor_ParamSetDefaultData_Init(TorqueSensor_Param_Struct_t* p_TorqueSensor_Param, uint16_t AdcData);
  43. extern void TorqueOffSetData_Process(TorqueOffSetData_Struct_t* p_TorqueOffSetData, uint16_t AdcData);
  44. extern void TorqueOffSetData_Present_Update1(uint16_t* PresentData, uint16_t AdcData, uint8_t Cal_K, MC_ErrorCode_Struct_t* p_MC_ErrorCode);
  45. extern void TorqueOffSetData_Present_Update2(uint16_t* PresentData, uint16_t AdcData, uint8_t Cal_K, MC_ErrorCode_Struct_t* p_MC_ErrorCode);
  46. extern void TorqueOffSetData_Present_Update3(uint16_t* PresentData, uint16_t AdcData, uint8_t Cal_K, MC_ErrorCode_Struct_t* p_MC_ErrorCode);
  47. #endif