电机故障日志数据结构.md 13 KB

־ṹ

1.Ŀ

  • ֹʱʱ¼Ϸʱ̵Ĺ롢Ϣȣ
  • ͨλ־ڶԹϽз

2.

  • ڵƬFlash1024Bytesڴ洢־
  • ÿ־СΪ64bytes
  • 16־ѭ洢ʼմ洢16־
  • λָʱFlashбĹ־

3.ͨЭ

  • λָȡ־
CAN ID ֡ģʽ ݶ
0x751 0x11 0x2D08 ȡ洢ַָݣʼַ4bytesַ:4bytesȡݴС128Bytes
  • յλȡָʱЭ鷵Flashбݣ
CAN ID ֡ģʽ ݶ
0x715 0x0C 0xAB88 ش洢ָʼͽַݣʼַ4bytesַ:4bytes:128bytes ַ-ʼַ128ʱ0xFF

ʾ£

case 0x2D08://ȡFlash洢ַָ
{
    do
    {
        uint32_t DataLength;
        DataLength = (uint32_t)((Data[4] << 24) + (Data[5] << 16) + (Data[6] << 8) + (Data[7])) - (uint32_t)((Data[0] << 24) + (Data[1] << 16) + (Data[2] << 8) + (Data[3])) + 1;
        memcpy((uint8_t*)(Data + 8), (uint8_t*)((Data[0] << 24) + (Data[1] << 16) + (Data[2] << 8) + (Data[3])), DataLength);
        SendData(ID_MC_TO_CDL, MODE_REPORT, (0xAB08 + DataLength), (uint8_t*)Data);	
    }while(0);
    break;
}

4.ݽṹ

4.1 Сõ־ṹ嶨

//־¼Ϣ 64 bytes1KռԱ16ϼ¼
typedef struct
{
	uint16_t Error_Index;                    //б 2 bytes, ַƫ 0
	uint16_t NotesInfo1;                     //עϢ1ַƫ 2
	uint16_t NotesInfo2;                     //עϢ2ַƫ 4
	uint16_t NotesInfo3;                     //עϢ3ַƫ 6
	uint32_t ErrorCode;                      // 4 bytes, ַƫ 8
	uint32_t RunTime;                        //ʱ 4bytes, ַƫ 12
	MC_RunInfo_Struct_t RunInfo;             //Ϣ 32bytes, ַƫ 16
	MC_AttitudeAngle_Struct_t AttitudeAngle; //̬Ƕ 8bytes, ַƫ 48
	MC_CalParam_Struct_t MC_CalParam;        //Ʋ 8bytes , ַƫ 56
}MC_ErrorLogSaveInfo_Struct_t;

//Ϣռÿռ32bytes
typedef struct
{
    uint16_t BikeSpeed;         				 // 0.1km/hַƫ0
	int16_t MotorSpeed;                          //ת 1rpmַƫ2
	uint16_t Power;                              //繦 1Wַƫ4
	uint16_t BusVoltage;                         //ĸߵѹ 1mVַƫ6
	uint16_t BusCurrent;                         //ĸߵ 1mAַƫ8
	uint8_t Cadence;                             //̤Ƶ 1rpmַƫ10
	uint8_t Torque;                              //̤ 1Nmַƫ11
	MC_CadenceDir_Struct_t CadenceDir;           //̤ 0-,1-,2-ַֹͣƫ12
	uint8_t GearSt;                              //λַƫ13
	MC_LightSwitch_Struct_t LightSwitch;         //ƿ 0xF0-أ0xF1-ַƫ14
	uint8_t SOC;                                 //ʣ 1%ַƫ15
	uint16_t RemainDistance;                     // 1kmַƫ16
	uint16_t ODO_Km;                             // 1kmַƫ18
	uint8_t PowerPerKm;                          //ƽ 0.01Ah/km ַƫ20
	uint8_t T_PCB;                               //PCB¶ +40棬ַƫ21
	uint8_t T_Coil;                              //¶ +40棬ַƫ22
	uint8_t T_MCU;                               //MCU¶ +40棬ַƫ23
	uint16_t Ride_Km;                            // 0.1km, ַƫ24
	uint16_t Ride_Time;                          //ʱ 1sַƫ26
	uint8_t TorqueSensorData1;                   //ش1ԭʼֵ
	uint8_t TorqueSensorData2;                   //ش2ԭʼֵ
	uint8_t TorqueSensorData3;                   //ش3ԭʼֵ
	uint8_t RS   ;                               //Ԥ 1byte
}MC_RunInfo_Struct_t;

//ֵ̬
typedef struct
{
    int16_t Angle_Pitch_Absolute;    //ǾԽǶ
	int16_t Angle_Roll_Absolute;     //ǾԽǶ
	int16_t Angle_Pitch_Relative;    //ԽǶ
	int16_t Angle_Roll_Relative;     //ԽǶ
}MC_AttitudeAngle_Struct_t;

//Ʋ
typedef struct
{
    MC_AssistRunMode_Struct_t AssistRunMode;  //ģʽ
	int16_t Ref_Torque;                       //ģʽFOCֵ
	int16_t Ref_Speed;                        //ٶģʽFOCֵ
	FlagStatus Foc_Flag;                      //FCO־
}MC_CalParam_Struct_t;

4.2 õ־ṹ嶨

//־¼Ϣ 64 bytes1KռԱ16ϼ¼
typedef struct
{
    UWORD               ErrorIndex;  // кţ2bytesַƫ 0
    UWORD               NotesInfo1;  // עϢ12bytesַƫ 2
    UWORD               NotesInfo2;  // עϢ22bytesַƫ 4
    UWORD               NotesInfo3;  // עϢ32bytesַƫ 6
    ULONG               ErrorCode;   // 룬4 bytes, ַƫ 8
    ULONG               RunTime;     // ʱ䣬4bytes, ַƫ 12
    MC_RunInfo_Struct_t RunInfo;     // Ϣ 32bytes, ַƫ 16
    SWORD               IqCurrentPu; // Iq2bytesַƫ 48
    SWORD               IqVoltagePu; // Iqѹ2bytesַƫ 50
    SWORD               IdCurrentPu; // Id2bytesַƫ 52
    SWORD               IdVoltagePu; // Idѹ2bytesַƫ 54
    UWORD               RS1;         // ԤϢ12bytesַƫ 56
    UWORD               RS2;         // ԤϢ12bytesַƫ 58
    UWORD               RS3;         // ԤϢ12bytesַƫ 60
    UWORD               RS4;         // ԤϢ12bytesַƫ 62
} ERROR_LOG;                         //64ֽ

//Ϣռÿռ32bytes
typedef struct
{
    uint16_t BikeSpeed;         				 // 0.1km/hַƫ0
	int16_t MotorSpeed;                          //ת 1rpmַƫ2
	uint16_t Power;                              //繦 1Wַƫ4
	uint16_t BusVoltage;                         //ĸߵѹ 1mVַƫ6
	uint16_t BusCurrent;                         //ĸߵ 1mAַƫ8
	uint8_t Cadence;                             //̤Ƶ 1rpmַƫ10
	uint8_t Torque;                              //̤ 1Nmַƫ11
	MC_CadenceDir_Struct_t CadenceDir;           //̤ 0-,1-,2-ַֹͣƫ12
	uint8_t GearSt;                              //λַƫ13
	MC_LightSwitch_Struct_t LightSwitch;         //ƿ 0xF0-أ0xF1-ַƫ14
	uint8_t SOC;                                 //ʣ 1%ַƫ15
	uint16_t RemainDistance;                     // 1kmַƫ16
	uint16_t ODO_Km;                             // 1kmַƫ18
	uint8_t PowerPerKm;                          //ƽ 0.01Ah/km ַƫ20
	uint8_t T_PCB;                               //PCB¶ +40棬ַƫ21
	uint8_t T_Coil;                              //¶ +40棬ַƫ22
	uint8_t T_MCU;                               //MCU¶ +40棬ַƫ23
	uint16_t Ride_Km;                            // 0.1km, ַƫ24
	uint16_t Ride_Time;                          //ʱ 1sַƫ26
	uint8_t TorqueSensorData1;                   //ش1ԭʼֵ
	uint8_t TorqueSensorData2;                   //ش2ԭʼֵ
	uint8_t TorqueSensorData3;                   //ش3ԭʼֵ
	uint8_t RS   ;                               //Ԥ 1byte
}MC_RunInfo_Struct_t;

5. Ч

ۺС̵Ĺ־ʾ£

Ϣ

1, ע1:0, ע2:0, ע3:0, ʷϢ:10 , ԭʼ:0x00000001, : , ʱ:10089min, :12.4km/h, ת:1297rpm, :40w, ѹ:38614mV, :6130mA, ̤Ƶ:34rpm, :87N.m, :0, λ:0x02, ƿ:0xF0, :62%, :---km, :2339km, :160mAh/km, PCB¶:22DegreeC, ¶:19DegreeC, MCU¶:18DegreeC, :2.1km, ʱ:353s, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ģʽ:2, ػ:624, ٶȻ:0, FOC_Flag:1,

2, ע1:0, ע2:0, ע3:0, ʷϢ:10 , ԭʼ:0x00000001, : , ʱ:10091min, :9.4km/h, ת:1162rpm, :0w, ѹ:39146mV, :13159mA, ̤Ƶ:46rpm, :53N.m, :0, λ:0x02, ƿ:0xF0, :61%, :---km, :2339km, :160mAh/km, PCB¶:23DegreeC, ¶:23DegreeC, MCU¶:19DegreeC, :2.8km, ʱ:470s, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ģʽ:2, ػ:378, ٶȻ:0, FOC_Flag:1,

3, ע1:1, ע2:1331, ע3:0, ʷϢ: , ԭʼ:0x00400000, : , ʱ:11041min, :16.3km/h, ת:1800rpm, :0w, ѹ:39905mV, :1155mA, ̤Ƶ:73rpm, :16N.m, :0, λ:0x01, ƿ:0xF0, :79%, :---km, :2521km, :110mAh/km, PCB¶:41DegreeC, ¶:50DegreeC, MCU¶:43DegreeC, :7.6km, ʱ:1644s, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ģʽ:2, ػ:298, ٶȻ:0, FOC_Flag:1,

4, ע1:1, ע2:399, ע3:0, ʷϢ: , ԭʼ:0x00400000, : , ʱ:12181min, :23.1km/h, ת:1687rpm, :0w, ѹ:38780mV, :1130mA, ̤Ƶ:53rpm, :20N.m, :0, λ:0x03, ƿ:0xF0, :68%, :---km, :2753km, :190mAh/km, PCB¶:40DegreeC, ¶:46DegreeC, MCU¶:42DegreeC, :1km, ʱ:168s, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ģʽ:2, ػ:457, ٶȻ:0, FOC_Flag:1,

5, ע1:1, ע2:489, ע3:0, ʷϢ: , ԭʼ:0x00400000, : , ʱ:12222min, :12.1km/h, ת:1650rpm, :0w, ѹ:38080mV, :1127mA, ̤Ƶ:32rpm, :10N.m, :0, λ:0x02, ƿ:0xF0, :62%, :---km, :2761km, :150mAh/km, PCB¶:43DegreeC, ¶:47DegreeC, MCU¶:46DegreeC, :2.9km, ʱ:767s, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ģʽ:2, ػ:460, ٶȻ:0, FOC_Flag:1,

6, ע1:1, ע2:622, ע3:0, ʷϢ: , ԭʼ:0x00400000, : , ʱ:12279min, :16.4km/h, ת:1755rpm, :0w, ѹ:40803mV, :1256mA, ̤Ƶ:52rpm, :39N.m, :0, λ:0x01, ƿ:0xF0, :95%, :---km, :2769km, :90mAh/km, PCB¶:34DegreeC, ¶:39DegreeC, MCU¶:36DegreeC, :1.3km, ʱ:225s, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ģʽ:2, ػ:239, ٶȻ:0, FOC_Flag:1,

7, ע1:1, ע2:975, ע3:0, ʷϢ: , ԭʼ:0x00400000, : , ʱ:13600min, :12.9km/h, ת:1777rpm, :0w, ѹ:40928mV, :1228mA, ̤Ƶ:40rpm, :29N.m, :0, λ:0x01, ƿ:0xF0, :98%, :---km, :3062km, :100mAh/km, PCB¶:31DegreeC, ¶:37DegreeC, MCU¶:33DegreeC, :0km, ʱ:10s, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ģʽ:2, ػ:224, ٶȻ:0, FOC_Flag:1,

8, ע1:1, ע2:727, ע3:0, ʷϢ: , ԭʼ:0x00400000, : , ʱ:13600min, :15.2km/h, ת:1762rpm, :0w, ѹ:40893mV, :1166mA, ̤Ƶ:48rpm, :27N.m, :0, λ:0x33, ƿ:0xF0, :97%, :---km, :3062km, :180mAh/km, PCB¶:32DegreeC, ¶:38DegreeC, MCU¶:34DegreeC, :0km, ʱ:9s, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ģʽ:2, ػ:409, ٶȻ:0, FOC_Flag:1,

9, ע1:1, ע2:1257, ע3:0, ʷϢ: , ԭʼ:0x00400000, : , ʱ:13861min, :24km/h, ת:1740rpm, :0w, ѹ:40163mV, :1105mA, ̤Ƶ:76rpm, :44N.m, :0, λ:0x01, ƿ:0xF0, :83%, :---km, :3126km, :100mAh/km, PCB¶:41DegreeC, ¶:50DegreeC, MCU¶:41DegreeC, :11.4km, ʱ:1692s, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ģʽ:2, ػ:212, ٶȻ:0, FOC_Flag:1,

10, ע1:1, ע2:797, ע3:0, ʷϢ: , ԭʼ:0x00400000, : , ʱ:13861min, :27.7km/h, ת:1785rpm, :0w, ѹ:40234mV, :1150mA, ̤Ƶ:76rpm, :18N.m, :0, λ:0x02, ƿ:0xF0, :85%, :---km, :3126km, :160mAh/km, PCB¶:41DegreeC, ¶:48DegreeC, MCU¶:43DegreeC, :0.1km, ʱ:27s, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ģʽ:2, ػ:448, ٶȻ:0, FOC_Flag:1,

11, ע1:1, ע2:458, ע3:0, ʷϢ: , ԭʼ:0x00400000, : , ʱ:14082min, :20.5km/h, ת:1612rpm, :0w, ѹ:35824mV, :1006mA, ̤Ƶ:64rpm, :41N.m, :0, λ:0x01, ƿ:0xF0, :34%, :---km, :3177km, :90mAh/km, PCB¶:43DegreeC, ¶:48DegreeC, MCU¶:46DegreeC, :4km, ʱ:600s, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ԽǶ:0Degree, ģʽ:2, ػ:226, ٶȻ:0, FOC_Flag:1,