#pragma once #include "BaseClient.h" #include "../config/ConfigManager.h" #include "../LanguageManager.h" #include #pragma pack(1) class DoluyoChillerstat { public: explicit DoluyoChillerstat() : m_tempRealtimeValue(new FloatData("tempRealtimeValue",u8"水箱温度")) , m_runInfo(new UShortData("runInfo",u8"水箱温度")) , m_isRun(new BoolData("isRun","水箱温度")) , m_alarmInfo(new UShortData("alarmInfo","水箱温度")) , m_tempSettingValue(new FloatData("tempSettingValue","水箱温度")) , m_isLevelAlarm(new BoolData("isLevelAlarm","水箱温度")){ //tempRealtimeValue = 0; //runInfo = 0; //isRun = false; //alarmInfo = 0; //tempSettingValue = 0; //isLevelAlarm = false; } string GetRunInfo() { string str = ""; switch (m_runInfo->GetValue()) { case 0:str = u8"待机"; break; case 2:str = u8"关机过程"; break; case 4:str = u8"制冷运行"; break; case 5:str = u8"制热运行"; break; case 6:str = u8"化霜运行"; break; } return str; } string GetAlarmInfo() { string str = ""; switch (m_alarmInfo->GetValue()) { case 0:str = u8"无故障"; break; case 1:str = u8"提示故障"; break; case 2:str = u8"停机故障"; break; } return str; } public: BaseStat baseStat; char m_startFlag; //成员变量开始标记 //float tempRealtimeValue; //水箱温度 FloatData* m_tempRealtimeValue; //水箱温度 //unsigned short runInfo; //运行消息 0:待机 2:关机过程 4:制冷运行 5:制热运行 6:化霜运行 UShortData* m_runInfo; //运行消息 0:待机 2:关机过程 4:制冷运行 5:制热运行 6:化霜运行 //bool isRun; //开关机 BoolData* m_isRun; //开关机 //unsigned short alarmInfo; //故障消息 0:无故障 1:提示故障 2:停机故障 UShortData* m_alarmInfo; //故障消息 0:无故障 1:提示故障 2:停机故障 //float tempSettingValue; //设定温度 FloatData* m_tempSettingValue; //设定温度 //bool isLevelAlarm; //液位报警 BoolData* m_isLevelAlarm; //液位报警 char m_endFlag; //成员变量结束标记 }; class HansChillerstat //冷水机 { public: HansChillerstat() : m_WaterOutTemp(new FloatData("WaterOutTemp", u8"出水温度")) , m_Flow(new FloatData("Flow", u8"流量")) , m_SettingTemp(new FloatData("SettingTemp", u8"设置温度")) , m_RunIndicate(new BoolData("RunIndicate", u8"运行指示")) , m_WorkIndicate(new BoolData("WorkIndicate", u8"工作正常指示")) , m_IsAlarm(new BoolData("IsAlarm", u8"报警")) , m_CompressorIndicate(new BoolData("CompressorIndicate", u8"压缩机指示")) , m_WaterPumpIndicate(new BoolData("WaterPumpIndicate", u8"水泵指示")) , m_HeaterIndicate(new BoolData("HeaterIndicate", u8"加热器指示")) , m_FanIndicate(new BoolData("FanIndicate", u8"风机指示")) , m_SolenoidValveIndicate(new BoolData("SolenoidValveIndicate", u8"电磁阀指示")) , m_FlowAlarm(new BoolData("FlowAlarm", u8"流量报警")) , m_TempAlarm(new BoolData("TempAlarm", u8"温度报警")) , m_PressureAlarm(new BoolData("PressureAlarm", u8"压力报警")) , m_WaterLevelAlarm(new BoolData("WaterLevelAlarm", u8"液位报警")) , m_LowTempErrorIndicate(new BoolData("LowTempErrorIndicate", u8"低温错误指示")) , m_TempUndulateIndicate(new BoolData("TempUndulateIndicate", u8"温度波动指示")) , m_TempSensorAlarm(new BoolData("TempSensorAlarm", u8"温度传感器故障报警")) , m_SolenoidValveAlarm(new BoolData("SolenoidValveAlarm", u8"电磁阀故障报警")) , m_HeaterExceptionIndicate(new BoolData("HeaterExceptionIndicate", u8"加热器异常指示")) , m_IOSignalIndicate(new BoolData("IOSignalIndicate", u8"IO信号指示")) , m_PhaseSeqAlarm(new BoolData("PhaseSeqAlarm", u8"相序报警")) , m_CompressorStartFreqAlarm(new BoolData("CompressorStartFreqAlarm", u8"压缩机起动频繁报警")) , m_IO0Alarm(new BoolData("IO0Alarm", u8"IO0错误报警")) , m_IO1Alarm(new BoolData("IO1Alarm", u8"IO1错误报警")) , m_IO2Alarm(new BoolData("IO2Alarm", u8"IO2错误报警")) , m_IO3Alarm(new BoolData("IO3Alarm", u8"IO3错误报警")) , m_IO4Alarm(new BoolData("IO4Alarm", u8"IO4错误报警")) { /* m_WaterOutTemp=0.0f; m_Flow=0.0f; m_SettingTemp=0.0f; m_RunIndicate=false; m_WorkIndicate = false; m_IsAlarm = false; m_CompressorIndicate = false; m_WaterPumpIndicate = false; m_HeaterIndicate = false; m_FanIndicate = false; m_SolenoidValveIndicate = false; m_FlowAlarm = false; m_TempAlarm = false; m_PressureAlarm = false; m_WaterLevelAlarm = false; m_LowTempErrorIndicate = false; m_TempUndulateIndicate = false; m_TempSensorAlarm = false; m_SolenoidValveAlarm = false; m_HeaterExceptionIndicate = false; m_IOSignalIndicate = false; m_PhaseSeqAlarm = false; m_CompressorStartFreqAlarm = false; m_IO0Alarm = false; m_IO1Alarm = false; m_IO2Alarm = false; m_IO3Alarm = false; m_IO4Alarm = false;*/ } ~HansChillerstat(){} public: BaseStat baseStat; char m_startFlag; //成员变量开始标记 FloatData* m_WaterOutTemp; //出水温度 FloatData* m_Flow; //流量 FloatData* m_SettingTemp; //设置温度 BoolData* m_RunIndicate; //运行指示 BoolData* m_WorkIndicate; //工作正常指示 BoolData* m_IsAlarm; //报警 BoolData* m_CompressorIndicate; //压缩机指示 BoolData* m_WaterPumpIndicate; //水泵指示 BoolData* m_HeaterIndicate; //加热器指示 BoolData* m_FanIndicate; //风机指示 BoolData* m_SolenoidValveIndicate; //电磁阀指示 BoolData* m_FlowAlarm; //流量报警 BoolData* m_TempAlarm; //温度报警 BoolData* m_PressureAlarm; //压力报警 BoolData* m_WaterLevelAlarm; //液位报警 BoolData* m_LowTempErrorIndicate; //低温错误指示 BoolData* m_TempUndulateIndicate; //温度波动指示 BoolData* m_TempSensorAlarm; //温度传感器故障报警 BoolData* m_SolenoidValveAlarm; //电磁阀故障报警 BoolData* m_HeaterExceptionIndicate; //加热器异常指示 BoolData* m_IOSignalIndicate; //IO信号指示 BoolData* m_PhaseSeqAlarm; //相序报警 BoolData* m_CompressorStartFreqAlarm; //压缩机起动频繁报警 BoolData* m_IO0Alarm; //IO0错误报警 BoolData* m_IO1Alarm; //IO1错误报警 BoolData* m_IO2Alarm; //IO2错误报警 BoolData* m_IO3Alarm; //IO3错误报警 BoolData* m_IO4Alarm; //IO4错误报警 char m_endFlag; //成员变量结束标记 }; class TongFeiStat { public: TongFeiStat() : m_IsLowVoltageAlarm(new BoolData("IsLowVoltageAlarm", u8"低压报警")) , m_IsHydraulicFailure(new BoolData("IsHydraulicFailure", u8"液路故障")) , m_IsLevelFailure(new BoolData("IsLevelFailure", u8"液位故障")) , m_IsLiquidPumpAlarm(new BoolData("IsLiquidPumpAlarm", u8"液泵热继电器报警")) , m_IsPressAlarm(new BoolData("IsPressAlarm", u8"压机热继电器报警")) , m_IsElectricHeatingFailure(new BoolData("IsElectricHeatingFailure", u8"电加热故障")) , m_IsAntifreezeAlarm(new BoolData("IsAntifreezeAlarm", u8"防冻报警")) , m_IsLiquidTempTooHigh(new BoolData("IsLiquidTempTooHigh", u8"液温太高")) , m_IsLiquidTempProbeFailure(new BoolData("IsLiquidTempProbeFailure", u8"液温温度探头故障")) , m_IsEffluentTempProbeFailure(new BoolData("IsEffluentTempProbeFailure", u8"出液温度探头故障")) , m_IsAmbientTempProbeFailure(new BoolData("IsAmbientTempProbeFailure", u8"环境温度探头故障")) , m_IsCondensationTempProbeFailure(new BoolData("IsCondensationTempProbeFailure", u8"冷凝温度探头故障")) , m_IsEvaporationInletTempProbeFailure(new BoolData("IsEvaporationInletTempProbeFailure", u8"蒸发进口温度探头故障")) , m_IsEvaporationOutletTempProbeFailure(new BoolData("IsEvaporationOutletTempProbeFailure", u8"蒸发出口温度探头故障")) , m_IsCondensationTempTooHigh(new BoolData("IsCondensationTempTooHigh", u8"冷凝温度过高")) , m_IsPhaseOrderError(new BoolData("IsPhaseOrderError", u8"相序错误")) , m_IsPowerFailure(new BoolData("IsPowerFailure", u8"电源故障")) , m_IsCompressorFailure(new BoolData("IsCompressorFailure", u8"压缩机故障")) , m_IsAmbientTempTooHigh(new BoolData("IsAmbientTempTooHigh", u8"环境温度太高")) , m_IsAmbientTempException(new BoolData("IsAmbientTempException", u8"环境温度异常")) , m_AlarmState(new IntData("AlarmState", u8"故障状态")) , m_RoomTempSettingValue(new FloatData("RoomTempSettingValue", u8"室温同调预设温度")) , m_ConstantTempSettingValue(new FloatData("ConstantTempSettingValue", u8"恒温预设温度")) , m_WorkMode(new IntData("WorkMode", u8"工作模式")) , m_RefrigerationMethod(new IntData("RefrigerationMethod", u8"制冷方式")) , m_LiquidAlarmTemp(new FloatData("LiquidAlarmTemp", u8"出液报警温度")) , m_UnitStatus(new IntData("UnitStatus", u8"机组状态")) , m_LiquidTempProbe(new FloatData("LiquidTempProbe", u8"液温温度探头")) , m_EffluentTempProbe(new FloatData("EffluentTempProbe", u8"出液温度探头")) , m_AmbientTempProbe(new FloatData("AmbientTempProbe", u8"环境温度探头")) , m_CondensationTempProbe(new FloatData("CondensationTempProbe", u8"冷凝温度探头")) , m_EvaporationInletTempProbe(new FloatData("EvaporationInletTempProbe", u8"蒸发进口温度探头")) , m_EvaporationOutletTempProbe(new FloatData("EvaporationOutletTempProbe", u8"蒸发出口温度探头")) , m_WorkingFrequency(new FloatData("WorkingFrequency", u8"运行频率")) , m_OverHeatingValue(new FloatData("OverHeatingValue", u8"过热度")) , m_EEV1(new FloatData("EEV1", u8"蒸发出口温度探头")) , m_EEV2(new FloatData("EEV2", u8"蒸发出口温度探头")) , m_CondensingFanRatio(new FloatData("CondensingFanRatio", u8"冷凝风机比例")) , m_ElectricHeatingRatio(new FloatData("ElectricHeatingRatio", u8"电加热比例")) , m_FlowRate(new FloatData("FlowRate", u8"流量")) { } BaseStat m_BaseStat; char m_startFlag; //成员变量开始标记 BoolData* m_IsLowVoltageAlarm; //低压报警 BoolData* m_IsHydraulicFailure; //液路故障 BoolData* m_IsLevelFailure; //液位故障 BoolData* m_IsLiquidPumpAlarm; //液泵热继电器报警 BoolData* m_IsPressAlarm; //压机热继电器报警 BoolData* m_IsElectricHeatingFailure; //电加热故障 BoolData* m_IsAntifreezeAlarm; //防冻报警 BoolData* m_IsLiquidTempTooHigh; //液温太高 BoolData* m_IsLiquidTempProbeFailure; //液温温度探头故障 BoolData* m_IsEffluentTempProbeFailure; //出液温度探头故障 BoolData* m_IsAmbientTempProbeFailure; //环境温度探头故障 BoolData* m_IsCondensationTempProbeFailure; //冷凝温度探头故障 BoolData* m_IsEvaporationInletTempProbeFailure; //蒸发进口温度探头故障 BoolData* m_IsEvaporationOutletTempProbeFailure; //蒸发出口温度探头故障 BoolData* m_IsCondensationTempTooHigh; //冷凝温度过高 BoolData* m_IsPhaseOrderError; //相序错误 BoolData* m_IsPowerFailure; //电源故障 BoolData* m_IsCompressorFailure; //压缩机故障 BoolData* m_IsAmbientTempTooHigh; //环境温度太高 BoolData* m_IsAmbientTempException; //环境温度异常 IntData* m_AlarmState; //故障状态 FloatData* m_RoomTempSettingValue; //室温同调预设温度 FloatData* m_ConstantTempSettingValue; //恒温预设温度 IntData* m_WorkMode; //工作模式 IntData* m_RefrigerationMethod; //制冷方式 FloatData* m_LiquidAlarmTemp; //出液报警温度 IntData* m_UnitStatus; //机组状态 FloatData* m_LiquidTempProbe; //液温温度探头 FloatData* m_EffluentTempProbe; //出液温度探头 FloatData* m_AmbientTempProbe; //环境温度探头 FloatData* m_CondensationTempProbe; //冷凝温度探头 FloatData* m_EvaporationInletTempProbe; //蒸发进口温度探头 FloatData* m_EvaporationOutletTempProbe; //蒸发出口温度探头 FloatData* m_WorkingFrequency; //运行频率 FloatData* m_OverHeatingValue; //过热度 FloatData* m_EEV1; FloatData* m_EEV2; FloatData* m_CondensingFanRatio; //冷凝风机比例 FloatData* m_ElectricHeatingRatio; //电加热比例 FloatData* m_FlowRate; //流量 char m_endFlag; //成员变量开始标记 }; #pragma pack() class ChillerClient:public TcpClient { public: ChillerClient(CommunicationCfg* pconfig, int* tp); ~ChillerClient(); void GetDoluyoStat(DoluyoChillerstat& stat); void GetHansStat(HansChillerstat& stat); void GetTongFeiStat(TongFeiStat& stat); void InitCommand(); float GetWaterTemp(); void DrawUI(); private: void static ProcDoluyoInfo(void* pobject, Command* pcommand); void static ProcDoluyoSettingValue(void* pobject, Command* pcommand); void static ProcDoluyoReadTargeValue(void* pobject, Command* pcommand); void SetDoluyoTargetTempValue(float value); void static ProcHansInfo(void* pobject, Command* pcommand); void SetHansTargetTempValue(float value); void static ProcTongfeiAlarmInputInfo(void* pobject, Command* pcommand); void static ProcTongfeiAlarmStateInfo(void* pobject, Command* pcommand); void static ProcTongfeiUserParamsInfo(void* pobject, Command* pcommand); void static ProcTongfeiAnaShowInfo(void* pobject, Command* pcommand); void static ProcTongfeiAnaShowInfo2(void* pobject, Command* pcommand); void static ProcTongfeianaShowInfo3(void* pobject, Command* pcommand); public: bool m_IsShowUI; private: DoluyoChillerstat m_DoluyoChillerStat; HansChillerstat m_HansChillerstat; TongFeiStat m_TongFeiStat; int* m_Type; };