#ifndef MDCOMM_DEFINE_H #define MDCOMM_DEFINE_H #include "qstring.h" #include "qglobal.h" //-------------------------------------------------------------------- //--------------------- sth about modbus comm ------------------------ #define FUNC_CODE_READ 0x03 #define FUNC_CODE_SINGLE_WRITE 0x06 #define FUNC_CODE_MULTY_WRITE 0x10 #define MONOMER_NUM_MAX 300 //单体总数 //----------------- set -------------------- #define RegAddr_SetCurrent 1001 #define RegAddr_SetGroupNum 1002 #define RegAddr_SetMonEachGrp 1003 #define RegAddr_SetMonomerOrder 1004 #define RegAddr_SetCurlimit 1005 #define RegAddr_SetMonNowAddr 1025 #define RegAddr_SetMonNewAddr 1026 #define RegAddr_SetMonNowFre 1027//要修改频率的目标地址 #define RegAddr_SetMonNewFre 1028 //---------- data: read -------------------------- #define RegAddr_SoftVersion 2001 #define RegAddr_OnlineVol 2002 #define RegAddr_GroupVol 2003 #define RegAddr_InnerCurr 2004 #define RegAddr_InnerCurrDir 2005 #define RegAddr_ExterCurr 2006 #define RegAddr_ExterCurrDir 2007 #define RegAddr_Temp 2008 #define RegAddr_AlarmState 2009 #define RegAddr_RlyOK 2010 #define RegAddr_PWM1Value 2011 #define RegAddr_PWM2Value 2012 #define RegAddr_PWM3Value 2013 #define RegAddr_Monomer 2022 //----------------- opt -------------------- #define RegAddr_SetPWM 3001 #define RegAddr_SetIO_Ctrl 3002 #define RegAddr_SetPWM1_Value 3003 #define RegAddr_SetPWM2_Value 3004 #define RegAddr_SetPWM3_Value 3005 #define RegAddr_SetMonomerFre 3006 #define RegAddr_SetMonomerAddr 3007 #define RegAddr_SetAdjIndex 3008 #define RegAddr_SetMonomerAdj 3009 #define RegAddr_SetDCDC_State 3010 #define RegAddr_SetRUN_State 3011 //---------- adj -------------------------- #define RegAddr_IntCurrZero 4001 #define RegAddr_IntCurrParam 4002 #define RegAddr_ExtCurrZero 4003 #define RegAddr_ExtCurrParam 4004 #define RegAddr_OnlVolParam 4005 #define RegAddr_GrpVolParam 4006 #define RegAddr_OnlVolZero 4010 #define RegAddr_OnlVolSlope 4011 #define RegAddr_GrpVolZero 4012 #define RegAddr_GrpVolSlope 4013 #define RegAddr_DisCurrZero 4014 #define RegAddr_DisCurrSlope 4015 #define RegAddr_ChrCurrZero 4016 #define RegAddr_ChrCurrSlope 4017 #define RegAddr_ECurrZero 4018 #define RegAddr_ECurrSlope 4019 #define R_OK_INIT (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6) typedef struct _comm_data_ { quint16 SoftVersion; //软件版本 quint16 OnlineVol; //在线电压 quint16 GroupVol; //组端电压 quint16 InnerCurrVal; //内部电流值 quint16 InnerCurrDir; //内部电流方向 quint16 ExterCurrVal; //外部电流值 quint16 ExterCurrDir; //外部电流方向 quint16 Temp; //温度 quint16 AlarmState; //告警状态 quint16 RLY_OK; //ROK状态 quint16 PWM1_Value; //PWM1值 quint16 PWM2_Value; //PWM2值 quint16 PWM3_Value; //PWM3值 quint16 ModuleDropIndex; //XX号单体模块异常 quint16 IOModuleHalt; //关机按钮信号 quint16 Reserved[6]; //Reserved quint16 Work_State; //运行状态 用于停电\黑屏区分 quint16 MonomerVol[MONOMER_NUM_MAX]; //单体电压 quint16 DCDCdata[20]; //DCDC模块数据 }COMM_DATA; //----------------- sysinfo -------------------- #define RegAddr_SetInnerCurrRange 5001 //内部霍尔量程 #define RegAddr_SetExterCurrRange 5002 //外部电流钳量程 #define RegAddr_SetMashineCurr 5003 //机器额定电流 #define RegAddr_SetDCDC_Count 5004 //FBI机器DCDC个数 #define RegAddr_SetMashineType 5005 //机器类型(IDCE/FBO/FBI) #define RegAddr_SetMashinePower 5006 //机器额定功率 #define RegAddr_SetMashineTKQ 5008 //脱扣器设置 //----------------- DCDC ------------------------ #define RegAddr_ReadDCDC1Alarm 6001 //模块1告警 #define RegAddr_ReadDCDC1Cur 6002 //模块1电流 #define RegAddr_ReadDCDC1Vol 6003 //模块1电压 #define RegAddr_ReadDCDC2Alarm 6004 //模块2告警 #define RegAddr_ReadDCDC2Cur 6005 //模块2电流 #define RegAddr_ReadDCDC2Vol 6006 //模块2电压 #define RegAddr_ReadDCDC3Alarm 6007 //模块3告警 #define RegAddr_ReadDCDC3Cur 6008 //模块3电流 #define RegAddr_ReadDCDC3Vol 6009 //模块3电压 #define RegAddr_ReadDCDC4Alarm 6010 //模块4告警 #define RegAddr_ReadDCDC4Cur 6011 //模块4电流 #define RegAddr_ReadDCDC4Vol 6012 //模块4电压 #endif // MDCOMM_DEFINE_H