#include "HBDE1000.h" #define IMGUI_DEFINE_MATH_OPERATORS #include "../external/imgui/imgui.h" #include "../external/imgui/imgui_custom.h" #include "../PLC/SignalService.h" #include "../global.h" #include "../config/ConfigManager.h" #include "../ChartletManager.h" #include "../Toast.h" #include "../SystemInfo.h" #include "../Logger.h" const int HBDE1000::IO_V0 = 0; HBDE1000::HBDE1000(MachineTypeCfg::MachineTypeId type) :Machine(type) { m_IoRef[IO_V0] = &HBDE1000::CheckIO_V0; } HBDE1000::~HBDE1000() { } void HBDE1000::CheckIO_V0(vector& ins, IOCfgWrapper* iocfgWrapper, string strsql, int mtype) { char buffer[1024]; int statusStartIndex = 192; int ctrlStartIndex = 304; int flag = 0; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "UpServoMotorPower", u8"上层伺服电源", SUPER); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser", u8"激光器"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser1Enable", u8"激光1使能"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser1Start", u8"激光1启动"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser1Red", u8"激光1红光"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser2Enable", u8"激光2使能"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser2Start", u8"激光2启动"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser2Red", u8"激光2红光"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser3Enable", u8"激光3使能"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser3Start", u8"激光3启动"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser3Red", u8"激光3红光"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser4Enable", u8"激光4使能"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser4Start", u8"激光4启动"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser4Red", u8"激光4红光"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintDoorLock", u8"打印舱门电锁"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "LightOn", u8"照明"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "YellowLamp", u8"黄灯", SUPER); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "GreenLamp", u8"绿灯", SUPER); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "RedLamp", u8"红灯", SUPER); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Buzzer", u8"蜂鸣器"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintAssistGas", u8"辅助气"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintAirEvacuation", u8"排气阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "ScannerCool", u8"振镜冷却"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Heating", u8"加热"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "DownServoMotorPower", u8"下层伺服电源", SUPER); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintSlot1PipeValve", u8"打印槽1管道阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "ChillerPower", u8"冷水机电源"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; /*if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "CarbinBackLock", u8"打印舱后锁"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); }*/ flag += 8; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "UpLayerAccessDoorUnlock", u8"上层维护门解锁"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "DownLayerAccessDoorUnlock", u8"下层维护门解锁"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintMainAxisBrake", u8"打印主轴刹车", SUPER); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "CylinderLinerSealChargeValve", u8"缸体密封圈充气阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "CylinderLinerSealReleaseValve", u8"缸体密封圈泄压阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 10; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanBoxFoldUp", u8"清粉箱折叠升高"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanBoxFoldDown", u8"清粉箱折叠降低"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 3; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintAirRenewalInOutValve", u8"打印室换气进出阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 3; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintAirRenewalPresRelValve", u8"打印室换气泄压阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "LaserPowerActive", u8"激光电源激活"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "LaserErrorReset", u8"激光错误复位"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 2; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintStorageCar1DeoxygenValve", u8"打印存粉小车1除氧进气阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintStorageCar1EvacuationValve", u8"打印存粉小车1除氧排气阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 4; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintStorageCar2DeoxygenValve", u8"打印存粉小车2除氧进气阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintStorageCar2EvacuationValve", u8"打印存粉小车2除氧排气阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintSlot2PipeValve", u8"打印槽2管道阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 4; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanSlot1PipeValve", u8"清粉槽1管道阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 4; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanSlot2PipeValve", u8"清粉槽2管道阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "CylinderHandPlateOpenValve", u8"缸体吊装盖板打开阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "CylinderHandPlateCloseValve", u8"缸体吊装盖板关闭阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 4; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "LoadAxisBrake", u8"移载轴刹车"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanLeftVacuumValve", u8"清粉左吸尘阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanRightVacuumValve", u8"清粉右吸尘阀"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 3; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanLightOn", u8"清粉照明"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 3; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser5Enable", u8"激光5使能"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser5Start", u8"激光5启动"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser5Red", u8"激光5红光"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser6Enable", u8"激光6使能"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser6Start", u8"激光6启动"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser6Red", u8"激光6红光"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser7Enable", u8"激光7使能"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser7Start", u8"激光7启动"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser7Red", u8"激光7红光"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser8Enable", u8"激光8使能"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser8Start", u8"激光8启动"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, ctrlStartIndex + flag, true, "Laser8Red", u8"激光8红光"); iocfgWrapper->m_OutputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } statusStartIndex = 0; flag = 0; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "SystemStop", u8"系统急停"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "HighPressureCheck", u8"高压检测"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "ProtectGasCheck", u8"保护气检测"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PowerDown", u8"外部断电"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PhaseLossDetection", u8"缺相检测"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 3; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "BusAirSwitchClose", u8"总空开触点"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "ExtMachineAirSwitchClose", u8"外部设备空开触点"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "HeattingAirSwitchClose", u8"加热空开触点"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "LaserAirSwitchClose", u8"激光空开触点"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "DownServoAirSwitchContact", u8"下层伺服空开触点"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "Laser1Alarm", u8"激光器1报警"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "Laser2Alarm", u8"激光器2报警"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "Laser3Alarm", u8"激光器3报警"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "Laser4Alarm", u8"激光器4报警"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PrintStorageCar1UpLimit", u8"打印存粉小车1上限"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 2; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PrintStorageCar1Connect", u8"打印存粉小车1连接"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 2; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PrintStorageCar1PressureHigh", u8"打印存粉小车1压力高"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "SSRInput", u8"加热输入检测"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "SSROutput", u8"加热输出检测"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PrintMainAxisUpLimit", u8"打印主轴上限位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PrintMainAxisDownLimit", u8"打印主轴下限位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PrintMainHomeIndex", u8"打印主轴原点"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PrintStorageCar2PressureHigh", u8"打印存粉小车2压力高"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 3; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "UPSException", u8"UPS异常"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "Laser5Alarm", u8"激光器5报警"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "Laser6Alarm", u8"激光器6报警"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "Laser7Alarm", u8"激光器7报警"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "Laser8Alarm", u8"激光器8报警"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "ScannerPowerAssistContact", u8"振镜电源辅助触点"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "ScannerBranchAirSwitch", u8"激光器支路空开"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "UpServoAirSwitchContact", u8"上层伺服空开触点"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 6; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "TrackPrintPos", u8"轨道打印位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "RailCloseSensor", u8"栏杆关闭感应"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "RailOpenSensor", u8"栏杆打开感应"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; flag++; flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CleanBoxFoldUpPos", u8"清粉箱折叠升高位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CleanBoxFoldDownPos", u8"清粉箱折叠降低位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 3; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "TrackCleanPos", u8"轨道清粉位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CleannerUpButton", u8"清粉上升按钮"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CleannerDownButton", u8"清粉下降按钮"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 2; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CleannerMotionStop", u8"清粉升降急停"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 9; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PrintStorageCar2UpLimit", u8"打印存粉小车2上限"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 2; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PrintStorageCar2Connect", u8"打印存粉小车2连接"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "SecurityCarpet", u8"安全地毯"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 7; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CoverAcceptPowderPos", u8"铺粉轴接粉位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CoverDropPowderPos", u8"铺粉轴下粉位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CoverAcceptBackPowderPos", u8"铺粉轴接粉位后位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "ArmFrontLimit", u8"铺粉轴前限位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "ArmBackLimit", u8"铺粉轴后限位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "ArmHomeIndex", u8"铺粉轴原点"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "LoadLeftLimit", u8"移载轴左限位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "LoadRgithLimit", u8"移载轴右限位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "LoadHomeIndex", u8"移载轴原点"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 3; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "LoadHandPos", u8"移载吊装位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PowderUpestPos", u8"粉仓料位最高"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PowderDownestPos", u8"粉仓料位最低"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 4; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PowderSupplyHomeIndex", u8"供粉转轴原点"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PrintCarbinDoorLockPos", u8"打印舱门锁关闭位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "UpServiceDoorClosePos", u8"上层维修门关闭位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "DownServiceDoorClosePos", u8"下层维护门关闭位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PrintableSignal", u8"允许打印信号"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "FanRunSignal", u8"风机运行信号"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "PrintAirRenewalPressure", u8"打印室换气源压力"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 2; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "TotalWaterCoolerAlarm", u8"总水冷机报警"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CleanStorageCar1UpLimit", u8"清粉存粉小车1上限"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 2; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CleanStorageCar1Connect", u8"清粉存粉小车1连接"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 2; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CleanStorageCar2UpLimit", u8"清粉存粉小车2上限"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag += 2; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CleanStorageCar2Connect", u8"清粉存粉小车2连接"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CylinderHandPlateOpen", u8"缸体吊装盖板开位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CylinderHandPlateOff", u8"缸体吊装盖板关位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CylinderHandDoorOpen", u8"缸体吊装门开位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } flag++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(mtype, statusStartIndex + flag, 0, false, "CylinderHandDoorClose", u8"缸体吊装门关位"); iocfgWrapper->m_InputCfgs.push_back(pbean); iocfgWrapper->m_IOCfgMap[pbean->m_Code] = pbean; sprintf_s(buffer, sizeof(buffer), strsql.c_str(), pbean->m_StatusAddr, pbean->m_CtrlAddr, pbean->m_IsOutput, pbean->m_Code.c_str(), pbean->m_Content.c_str(), pbean->m_AuthLess); ins.push_back(buffer); } } void HBDE1000::GetDebugRTC(vector& vec) { CardSerialPair pair; pair.cardNo = 1; pair.serialNo = 123456; vec.push_back(pair); CardSerialPair pair2; pair2.cardNo = 2; pair2.serialNo = 234567; vec.push_back(pair2); CardSerialPair pair3; pair3.cardNo = 3; pair3.serialNo = 345678; vec.push_back(pair3); CardSerialPair pair4; pair4.cardNo = 4; pair4.serialNo = 456789; vec.push_back(pair4); CardSerialPair pair5; pair5.cardNo = 5; pair5.serialNo = 567890; vec.push_back(pair5); CardSerialPair pair6; pair6.cardNo = 6; pair6.serialNo = 678901; vec.push_back(pair6); CardSerialPair pair7; pair7.cardNo = 7; pair7.serialNo = 789012; vec.push_back(pair7); CardSerialPair pair8; pair8.cardNo = 8; pair8.serialNo = 890123; vec.push_back(pair8); } AxisCfg* HBDE1000::CreateLoadAxisCfg() { AxisCfg* cfg = new AxisCfg(GTS_AXIS_ID_LOAD); cfg->m_name = "LOAD"; cfg->m_active_direct->SetValue(AxisCfg::RIGHT); cfg->m_active_limit->SetValue(1000000); cfg->m_negactive_limit->SetValue(0); cfg->m_OverLoadLimit->SetValue(30.0f); cfg->m_ShowPosInv->SetValue(false); cfg->m_ShowRefZero->SetValue(0.0); cfg->m_MaxLoadValue->SetValue(2.4f); return cfg; } AxisCfg* HBDE1000::CreateMoldAxisCfg() { AxisCfg* cfg = new AxisCfg(GTS_AXIS_ID_MOLD); cfg->m_name = "MOLD"; cfg->m_active_direct->SetValue(AxisCfg::UP); cfg->m_active_limit->SetValue(50000); cfg->m_negactive_limit->SetValue(-1000000); cfg->m_OverLoadLimit->SetValue(30.0f); cfg->m_ShowPosInv->SetValue(true); cfg->m_ShowRefZero->SetValue(0.0); cfg->m_MaxLoadValue->SetValue(7.0f); return cfg; } AxisCfg* HBDE1000::CreateArmAxisCfg() { AxisCfg* cfg = new AxisCfg(GTS_AXIS_ID_ARM); cfg->m_name = "ARM"; cfg->m_active_direct->SetValue(AxisCfg::FRONT); cfg->m_active_limit->SetValue(700000); cfg->m_negactive_limit->SetValue(0); cfg->m_OverLoadLimit->SetValue(30.0f); cfg->m_ShowPosInv->SetValue(false); cfg->m_ShowRefZero->SetValue(0.0); cfg->m_MaxLoadValue->SetValue(1.3f); return cfg; } AxisCfg* HBDE1000::CreateSupplyAxisCfg() { AxisCfg* cfg = new AxisCfg(GTS_AXIS_ID_SUPPLY); cfg->m_name = "SUPPLY"; cfg->m_active_direct->SetValue(AxisCfg::FRONT); cfg->m_active_limit->SetValue(0); cfg->m_negactive_limit->SetValue(0); cfg->m_OverLoadLimit->SetValue(30.0f); cfg->m_ShowPosInv->SetValue(false); cfg->m_ShowRefZero->SetValue(0.0); cfg->m_MaxLoadValue->SetValue(1.3f); return cfg; } AxisCfg* HBDE1000::CreateCleanAxisCfg() { AxisCfg* cfg = new AxisCfg(GTS_AXIS_ID_CLEAN); cfg->m_name = "CLEAN"; cfg->m_active_direct->SetValue(AxisCfg::UP); cfg->m_active_limit->SetValue(50000); cfg->m_negactive_limit->SetValue(-1000000); cfg->m_OverLoadLimit->SetValue(30.0f); cfg->m_ShowPosInv->SetValue(true); cfg->m_ShowRefZero->SetValue(0.0); cfg->m_IsUse->SetValue(false); cfg->m_MaxLoadValue->SetValue(7.0f); return cfg; } void HBDE1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc) { m_SignalStateWrapper = ssw; m_PLC = cc; int flag = 52 * 8; m_SignalStateWrapper->m_PLCKeepAlive = new SysParamBool(flag++, 1, cc, u8"PLC心跳-》PC", "PLCKeepAlive"); m_SignalStateWrapper->m_PCKeepAlice = new SysParamBool(flag++, 1, cc, u8"PC心跳-》PLC", "PCKeepAlice"); m_SignalStateWrapper->m_DeviceStandby = new SysParamBool(flag++, 1, cc, u8"设备空闲状态", "DeviceStandby"); m_SignalStateWrapper->m_DevicePrinting = new SysParamBool(flag++, 1, cc, u8"设备打印状态", "DevicePrinting"); m_SignalStateWrapper->m_DeviceManualDebug = new SysParamBool(flag++, 1, cc, u8"设备手动调试状态", "DeviceManualDebug"); m_SignalStateWrapper->m_DeviceAutoRuning = new SysParamBool(flag++, 1, cc, u8"设备自动运行状态", "DeviceAutoRuning"); m_SignalStateWrapper->m_TouchPanelCtrling = new SysParamBool(flag++, 1, cc, u8"触摸屏控制状态", "TouchPanelCtrling"); m_SignalStateWrapper->m_MotionDebug = new SysParamBool(flag++, 1, cc, u8"动作流程调试模式", "MotionDebug"); m_SignalStateWrapper->m_CylinderExceptionReset = new SysParamBool(flag++, 1, cc, u8"气缸异常复位", "CylinderExceptionReset"); flag = 55 * 8 + 6; m_SignalStateWrapper->m_PLCConnectAlarm = new SysParamBool(flag++, 1, cc, u8"PC与PLC网络异常", "PLCConnectAlarm"); m_SignalStateWrapper->m_SystemStopAlarm = new SysParamBool(flag++, 1, cc, u8"系统急停异常", "SystemStopAlarm"); m_SignalStateWrapper->m_HighPressureLackAlarm = new SysParamBool(flag++, 1, cc, u8"高压气压力不足异常", "HighPressureLackAlarm"); m_SignalStateWrapper->m_ProtectGasLackAlarm = new SysParamBool(flag++, 1, cc, u8"保护气压力不足异常", "ProtectGasLackAlarm"); m_SignalStateWrapper->m_PowerDownAlarm = new SysParamBool(flag++, 1, cc, u8"外部电源断电异常", "PowerDownAlarm"); m_SignalStateWrapper->m_UpLaserAirSwitchAlarm = new SysParamBool(flag++, 1, cc, u8"上层激光器支路空开异常报警", "UpLaserAirSwitchAlarm"); m_SignalStateWrapper->m_UpServoAirSwitchAlarm = new SysParamBool(flag++, 1, cc,u8"上层伺服空开异常报警","UpServoAirSwitchAlarm"); m_SignalStateWrapper->m_BusAirSwitchAlarm = new SysParamBool(flag++, 1, cc, u8"总空开触点异常", "BusAirSwitchAlarm"); m_SignalStateWrapper->m_ExtDevicePowerAirSwitchAlarm = new SysParamBool(flag++, 1, cc, u8"外部设备电源空开触点异常", "ExtDevicePowerAirSwitchAlarm"); m_SignalStateWrapper->m_HeatingPowerAirSwitchAlarm = new SysParamBool(flag++, 1, cc, u8"加热电源空开触点异常", "HeatingPowerAirSwitchAlarm"); m_SignalStateWrapper->m_LaserPowerAirSwitchAlarm = new SysParamBool(flag++, 1, cc, u8"激光电源空开触点异常", "LaserPowerAirSwitchAlarm"); m_SignalStateWrapper->m_ServoPowerAirSwitchAlarm = new SysParamBool(flag++, 1, cc, u8"伺服电源空开触点", "ServoPowerAirSwitchAlarm"); m_SignalStateWrapper->m_Laser1Alarm = new SysParamBool(flag++, 1, cc, u8"激光器1报警", "Laser1Alarm"); m_SignalStateWrapper->m_Laser2Alarm = new SysParamBool(flag++, 1, cc, u8"激光器2报警", "Laser2Alarm"); m_SignalStateWrapper->m_Laser3Alarm = new SysParamBool(flag++, 1, cc, u8"激光器3报警", "Laser3Alarm"); m_SignalStateWrapper->m_Laser4Alarm = new SysParamBool(flag++, 1, cc, u8"激光器4报警", "Laser4Alarm"); m_SignalStateWrapper->m_HeatingAlarm = new SysParamBool(flag++, 1, cc, u8"加热异常", "HeatingAlarm"); m_SignalStateWrapper->m_ScannerPowerExceptionAlarm = new SysParamBool(flag++, 1, cc,u8"振镜电源异常报警","ScannerPowerExceptionAlarm"); m_SignalStateWrapper->m_PrintStorageCar1JarFullWarn = new SysParamBool(flag++, 1, cc, u8"存粉小车1粉罐已满警示", "PrintStorageCar1JarFullWarn"); m_SignalStateWrapper->m_PrintStorageCar1DisconnectWarn = new SysParamBool(flag++, 1, cc, u8"存粉小车1没有连接警示", "PrintStorageCar1DisconnectWarn"); m_SignalStateWrapper->m_CleanStorageCar1JarFullWarn = new SysParamBool(flag++, 1, cc, u8"清粉存粉小车1粉罐已满警示", "CleanStorageCar1JarFullWarn"); m_SignalStateWrapper->m_CleanStorageCar1DisconnectWarn = new SysParamBool(flag++, 1, cc, u8"清粉存粉小车1没有连接警示", "CleanStorageCar1DisconnectWarn"); m_SignalStateWrapper->m_MoldMainUpLimitActive = new SysParamBool(flag++, 1, cc, u8"打印主轴上限位触发警示", "MoldMainUpLimitActive"); m_SignalStateWrapper->m_MoldMainDownLimitActive = new SysParamBool(flag++, 1, cc, u8"打印主轴下限位触发警示", "MoldMainDownLimitActive"); m_SignalStateWrapper->m_UpsAlarm = new SysParamBool(flag++, 1, cc, u8"UPS报警", "UpsAlarm"); m_SignalStateWrapper->m_Laser5Alarm = new SysParamBool(flag++, 1, cc, u8"激光5报警", "Laser5Alarm"); m_SignalStateWrapper->m_Laser6Alarm = new SysParamBool(flag++, 1, cc, u8"激光6报警", "Laser6Alarm"); m_SignalStateWrapper->m_Laser7Alarm = new SysParamBool(flag++, 1, cc, u8"激光7报警", "Laser7Alarm"); m_SignalStateWrapper->m_Laser8Alarm = new SysParamBool(flag++, 1, cc, u8"激光8报警", "Laser8Alarm"); m_SignalStateWrapper->m_PrintTrackDisableWarn = new SysParamBool(flag++, 1, cc, u8"轨道打印位感应失效警告", "PrintTrackDisableWarn"); flag = 60 * 8 + 3; m_SignalStateWrapper->m_CylinderLinerSealReleaseValveException = new SysParamBool(flag++, 1, cc,u8"CylinderLinerSealReleaseValveException","缸体密封圈泄压异常"); flag = 61 * 8 + 4; m_SignalStateWrapper->m_CleanTrackPosDisableAlarm = new SysParamBool(flag++, 1, cc, u8"轨道清粉位失效异常", "CleanTrackPosDisableAlarm"); m_SignalStateWrapper->m_CleanLiftStopAlarm = new SysParamBool(flag++, 1, cc, u8"清粉升降急停异常", "CleanLiftStopAlarm"); m_SignalStateWrapper->m_LoadHandPosSensorDiable = new SysParamBool(flag++, 1, cc, u8"移载吊装位感应器失效", "LoadHandPosSensorDiable"); m_SignalStateWrapper->m_MainPowerLossCheckAlarm = new SysParamBool(flag++, 1, cc, u8"主电源缺相检测异常", "MainPowerLossCheckAlarm"); m_SignalStateWrapper->m_PrintCabinLockDisableAlarm = new SysParamBool(flag++, 1, cc, u8"打印舱电锁感应异常", "PrintCabinLockDisableAlarm"); m_SignalStateWrapper->m_CleanBoxFoldUpException = new SysParamBool(flag++, 1, cc, u8"清粉箱折叠气缸升高异常", "CleanBoxFoldUpException"); m_SignalStateWrapper->m_CleanBoxFoldDownException = new SysParamBool(flag++, 1, cc, u8"清粉箱折叠气缸降低异常", "CleanBoxFoldDownException"); m_SignalStateWrapper->m_CylinderHandPlatformOpenAlarm = new SysParamBool(flag++, 1, cc, u8"缸体吊装盖板打开异常", "CylinderHandPlatformOpenAlarm"); m_SignalStateWrapper->m_CylinderHandDoorOpenAlarm = new SysParamBool(flag++, 1, cc, u8"缸体吊装门打开异常", "CylinderHandDoorOpenAlarm"); m_SignalStateWrapper->m_SecurityCarpetTriggered = new SysParamBool(flag++, 1, cc, u8"安全地毯被触发", "SecurityCarpetTriggered"); m_SignalStateWrapper->m_RailNotInOpenOrClosePos = new SysParamBool(flag++, 1, cc, u8"栏杆不在打开或者关闭位置", "RailNotInOpenOrClosePos"); m_SignalStateWrapper->m_HandPlatformCloseAlarm = new SysParamBool(flag++, 1, cc, u8"吊装盖板关闭异常", "HandPlatformCloseAlarm"); flag++; flag++; flag++; flag++; flag++; flag++; flag++; flag++; flag++; flag++; flag++; m_SignalStateWrapper->m_ArmFrontLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴前限位触发警示", "ArmFrontLimitSign"); m_SignalStateWrapper->m_ArmBackLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴后限位触发警示", "ArmBackLimitSign"); m_SignalStateWrapper->m_LoadAxisLeftLimit = new SysParamBool(flag++, 1, cc, u8"移载轴左限位触发警示", "LoadAxisLeftLimitSign"); m_SignalStateWrapper->m_LoadAxisRightLimit = new SysParamBool(flag++, 1, cc, u8"移载轴右限位触发警示", "LoadAxisRightLimitSign"); flag++; flag++; flag++; flag++; flag++; flag++; flag++; flag++; m_SignalStateWrapper->m_SupplyHomeIndexDisableAlarm = new SysParamBool(flag++, 1, cc,u8"供粉转轴原点失效异常","SupplyHomeIndexDisableAlarm"); // flag++; flag++; flag++; flag++; m_SignalStateWrapper->m_PrintPressureOverLimitAlarm = new SysParamBool(flag++, 1, cc, u8"打印舱压力过高异常", "PrintPressureOverLimitAlarm"); flag++; m_SignalStateWrapper->m_TotalWaterCoolerAlarm = new SysParamBool(flag++, 1, cc, u8"总冷水机报警", "TotalWaterCoolerAlarm"); m_SignalStateWrapper->m_MoldTorqueAlarm = new SysParamBool(flag++, 1, cc, u8"打印主轴扭力异常", "MoldTorqueAlarm"); flag++; flag++; flag++; m_SignalStateWrapper->m_LoadTorqueAlarm = new SysParamBool(flag++, 1, cc, u8"移载轴扭力异常", "LoadTorqueAlarm"); m_SignalStateWrapper->m_ArmTorqueAlarm = new SysParamBool(flag++, 1, cc, u8"铺粉轴扭力异常", "ArmTorqueAlarm"); m_SignalStateWrapper->m_SupplyTorqueAlarm = new SysParamBool(flag++, 1, cc, u8"供粉轴扭力异常", "SupplyTorqueAlarm"); m_SignalStateWrapper->m_GratingRulerFail = new SysParamBool(flag++, 1, cc, u8"光栅尺补偿失败", "GratingRulerFail"); m_SignalStateWrapper->m_PrintMainOverSoftUpLimit = new SysParamBool(flag++, 1, cc, u8"打印主轴超软上限", "PrintMainOverSoftUpLimit"); m_SignalStateWrapper->m_PrintMainOverSoftDownLimit = new SysParamBool(flag++, 1, cc, u8"打印主轴超软下限", "PrintMainOverSoftDownLimit"); flag++; flag++; m_SignalStateWrapper->m_LoadAxisOverSoftLeftLimit = new SysParamBool(flag++, 1, cc, u8"移载轴超左软限", "LoadAxisOverSoftLeftLimit"); m_SignalStateWrapper->m_LoadAxisOverSoftRightLimit = new SysParamBool(flag++, 1, cc, u8"移载轴超右软限", "LoadAxisOverSoftRightLimit"); m_SignalStateWrapper->m_ArmOverSoftFrontLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴超前软限", "ArmOverSoftFrontLimit"); m_SignalStateWrapper->m_ArmOverSoftBackLimit = new SysParamBool(flag++, 1, cc, u8"铺粉轴超后软限", "ArmOverSoftBackLimit"); m_SignalStateWrapper->m_PrintStorageCar2JarFullWarn = new SysParamBool(flag++, 1, cc, u8"存粉小车2粉罐已满警示", "PrintStorageCar2JarFullWarn"); m_SignalStateWrapper->m_PrintStorageCar2DisconnectWarn = new SysParamBool(flag++, 1, cc, u8"存粉小车2没有连接警示", "PrintStorageCar2DisconnectWarn"); m_SignalStateWrapper->m_CleanStorageCar2JarFullWarn = new SysParamBool(flag++, 1, cc, u8"清粉存粉小车2粉罐已满警示", "CleanStorageCar2JarFullWarn"); m_SignalStateWrapper->m_CleanStorageCar2DisconnectWarn = new SysParamBool(flag++, 1, cc, u8"清粉存粉小车2没有连接警示", "CleanStorageCar2DisconnectWarn"); m_SignalStateWrapper->m_CoverBaffleNotInFrontAcceptPos = new SysParamBool(flag++, 1, cc, u8"铺粉臂挡板不在前接粉位", "CoverBaffleNotInFrontAcceptPos"); m_SignalStateWrapper->m_CoverBaffleNotInDropPos = new SysParamBool(flag++, 1, cc, u8"铺粉臂挡板不在下粉位", "CoverBaffleNotInDropPos"); m_SignalStateWrapper->m_ArmMoveBackAcceptPosException = new SysParamBool(flag++, 1, cc, u8"铺粉臂到接粉后位异常", "ArmMoveBackAcceptPosException"); m_SignalStateWrapper->m_UpServiceDoorOpenWarn = new SysParamBool(flag++, 1, cc, u8"上层维修门打开警告", "UpServiceDoorOpenWarn"); m_SignalStateWrapper->m_DownServiceDoorOpenWarn = new SysParamBool(flag++, 1, cc, u8"下层维修门打开警告", "DownServiceDoorOpenWarn"); flag = 70 * 8 + 1; m_SignalStateWrapper->m_LoadAxisManualAlarmSignal = new SysParamBool(flag++, 1, cc, u8"移栽手动异常", "LoadAxisManualAlarmSignal"); m_SignalStateWrapper->m_PrintMainServoAlarmSignal = new SysParamBool(flag++, 1, cc, u8"打印主轴伺服驱动器异常", "PrintMainServoAlarmSignal"); m_SignalStateWrapper->m_LoadAxisServoAlarmSignal = new SysParamBool(flag++, 1, cc, u8"移载轴伺服驱动器异常", "LoadAxisServoAlarmSignal"); m_SignalStateWrapper->m_ArmServoAlarmSignal = new SysParamBool(flag++, 1, cc, u8"铺粉轴伺服驱动器异常", "ArmServoAlarmSignal"); m_SignalStateWrapper->m_SupplyServoAlarmSignal = new SysParamBool(flag++, 1, cc, u8"供粉转轴伺服驱动器异常", "SupplyServoAlarmSignal"); flag++; flag++; flag++; flag++; m_SignalStateWrapper->m_CoverReachAcceptPowderAlarmSignal = new SysParamBool(flag++, 1, cc, u8"铺粉轴到接粉位异常", "CoverReachAcceptPowderAlarmSignal"); m_SignalStateWrapper->m_CoverReachDropPowderAlarmSignal = new SysParamBool(flag++, 1, cc, u8"铺粉轴到下粉位异常", "CoverReachDropPowderAlarmSignal"); flag++; m_SignalStateWrapper->m_LinearEncoderCheckAlarmSignal = new SysParamBool(flag++, 1, cc, u8"光栅尺检测异常", "LinearEncoderCheckAlarmSignal"); m_SignalStateWrapper->m_PrintMainSoftStopTrigger = new SysParamBool(flag++, 1, cc, u8"打印主轴软急停触发", "PrintMainSoftStopTrigger"); flag++; m_SignalStateWrapper->m_LoadAxisSoftStopTrigger = new SysParamBool(flag++, 1, cc, u8"移载轴软急停触发", "LoadAxisSoftStopTrigger"); m_SignalStateWrapper->m_CoverSoftStopTrigger = new SysParamBool(flag++, 1, cc, u8"铺粉轴软急停触发", "CoverSoftStopTrigger"); m_SignalStateWrapper->m_CoverHomeException = new SysParamBool(flag++, 1, cc, u8"铺粉归原点异常", "CoverHomeException"); m_SignalStateWrapper->m_CylinderSealInflationFailureAlarm = new SysParamBool(flag++, 1, cc, u8"缸体密封圈充气失败报警", "CylinderSealInflationFailureAlarm"); m_SignalStateWrapper->m_CylinderSealInflationHighPressureAlarm = new SysParamBool(flag++, 1, cc, u8"缸体密封圈充气过压报警", "CylinderSealInflationHighPressureAlarm"); m_SignalStateWrapper->m_CylinderSealLeakageWarn = new SysParamBool(flag++, 1, cc, u8"缸体密封圈存在漏气警告", "CylinderSealLeakageWarn"); m_SignalStateWrapper->m_SealPressureExceptionWhenPrint = new SysParamBool(flag++, 1, cc, u8"密封圈压力异常", "SealPressureExceptionWhenPrint"); flag = 78; m_SignalStateWrapper->m_CylinderState = new SysParamInt(flag, 1, cc,u8"缸体状态_R","CylinderState"); flag = 80 * 8; m_SignalStateWrapper->m_CylinderReachPrintTriger = new SysParamBool(flag++, 1, cc, u8"触发缸体到达打印位_自动_RW", "CylinderReachPrintTriger"); m_SignalStateWrapper->m_CylinderReachPrintRun = new SysParamBool(flag++, 1, cc, u8"缸体到打印位运行中_自动_RW", "CylinderReachPrintRun"); m_SignalStateWrapper->m_CylinderReachPrintFinished = new SysParamBool(flag++, 1, cc, u8"缸体到达打印位完毕_自动_RW", "CylinderReachPrintFinished"); m_SignalStateWrapper->m_CylinderPrintLoadTriger = new SysParamBool(flag++, 1, cc, u8"触发缸体打印位装载_自动_RW", "CylinderPrintLoadTriger"); m_SignalStateWrapper->m_CylinderPrintLoadRun = new SysParamBool(flag++, 1, cc, u8"缸体打印位装载运行中_自动_RW", "CylinderPrintLoadRun"); m_SignalStateWrapper->m_CylinderPrintLoadFinished = new SysParamBool(flag++, 1, cc, u8"缸体打印位装载完毕_自动_RW", "CylinderPrintLoadFinished"); m_SignalStateWrapper->m_CylinderPrintUnloadTriger = new SysParamBool(flag++, 1, cc, u8"触发缸体打印位卸载_自动_RW", "CylinderPrintUnloadTriger"); m_SignalStateWrapper->m_CylinderPrintUnloadRun = new SysParamBool(flag++, 1, cc, u8"缸体打印位卸载运行中_自动_RW", "CylinderPrintUnloadRun"); m_SignalStateWrapper->m_CylinderPrintUnloadFinished = new SysParamBool(flag++, 1, cc, u8"缸体打印位卸载完毕_自动_RW", "CylinderPrintUnloadFinished"); flag = 81 * 8 + 7; m_SignalStateWrapper->m_CylinderReachCleanTriger = new SysParamBool(flag++, 1, cc, u8"触发缸体到达清粉位_自动_RW", "CylinderReachCleanTriger"); m_SignalStateWrapper->m_CylinderReachCleanRun = new SysParamBool(flag++, 1, cc, u8"缸体到清粉位运行中_RW", "CylinderReachCleanRun"); m_SignalStateWrapper->m_CylinderReachCleanFinished = new SysParamBool(flag++, 1, cc, u8"缸体到清粉位完毕_自动_RW", "CylinderReachCleanFinished"); m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger = new SysParamBool(flag++, 1, cc, u8"触发缸体与清粉箱连接_自动_RW", "CylinderConnectCleanBoxTriger"); m_SignalStateWrapper->m_CylinderConnectCleanBoxRun = new SysParamBool(flag++, 1, cc, u8"缸体与清粉箱连接中_RW", "CylinderConnectCleanBoxRun"); m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished = new SysParamBool(flag++, 1, cc, u8"缸体与清粉箱连接完毕_自动_RW", "CylinderConnectCleanBoxFinished"); m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger = new SysParamBool(flag++, 1, cc, u8"触发缸体与清粉箱分离_自动_RW", "CylinderDisconnectCleanBoxTriger"); m_SignalStateWrapper->m_CylinderDisconnectCleanBoxRun = new SysParamBool(flag++, 1, cc, u8"缸体与清粉箱分离中_RW", "CylinderDisconnectCleanBoxRun"); m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished = new SysParamBool(flag++, 1, cc, u8"缸体与清粉箱分离完毕_自动_RW", "CylinderDisconnectCleanBoxFinished"); m_SignalStateWrapper->m_CoverTriger = new SysParamBool(flag++, 1, cc, u8"触发铺粉流程_W", "CoverTriger"); m_SignalStateWrapper->m_IsCovering = new SysParamBool(flag++, 1, cc, u8"铺粉流程忙_R", "IsCovering"); m_SignalStateWrapper->m_IsCoverFinishedCanPrint = new SysParamBool(flag++, 1, cc, u8"铺粉完成允许打印_RW", "IsCoverFinishedCanPrint"); m_SignalStateWrapper->m_IsCoverDebug = new SysParamBool(flag++, 1, cc, u8"铺粉调试模式_W", "IsCoverDebug"); m_SignalStateWrapper->m_IsFirstCover = new SysParamBool(flag++, 1, cc, u8"第一次铺粉_W", "IsFirstCover"); m_SignalStateWrapper->m_PrintDeoxygenTriger = new SysParamBool(flag++, 1, cc, u8"触发打印室除氧_W", "PrintDeoxygenTriger"); m_SignalStateWrapper->m_PrintDeoxygenRun = new SysParamBool(flag++, 1, cc, u8"打印室除氧中_RW", "PrintDeoxygenRun"); m_SignalStateWrapper->m_PrintDeoxygenFinished = new SysParamBool(flag++, 1, cc, u8"打印室氧含量值到达_R", "PrintDeoxygenFinished"); flag++; flag++; flag++; m_SignalStateWrapper->m_StorgeCarDeoxygenTriger = new SysParamBool(flag++, 1, cc, u8"触发存粉小车除氧_W", "StorgeCarDeoxygenTriger"); m_SignalStateWrapper->m_StorgeCarDeoxygenRun = new SysParamBool(flag++, 1, cc, u8"存粉小车除氧中_R", "StorgeCarDeoxygenRun"); m_SignalStateWrapper->m_StorgeCarDeoxygenFinished = new SysParamBool(flag++, 1, cc, u8"存粉小车除氧完毕_RW", "StorgeCarDeoxygenFinished"); m_SignalStateWrapper->m_CleanBoxVacuumTriger = new SysParamBool(flag++, 1, cc, u8"清粉箱启动吸尘器_R", "CleanBoxVacuumTriger"); flag++; flag++; flag++; flag++; m_SignalStateWrapper->m_RasterJudgeOK = new SysParamBool(flag++, 1, cc, u8"光栅尺判断OK_R", "RasterJudgeOK"); m_SignalStateWrapper->m_RasterJudgeNG = new SysParamBool(flag++, 1, cc, u8"光栅尺判断NG_R", "RasterJudgeNG"); m_SignalStateWrapper->m_CylinderReachPrintEnable = new SysParamBool(flag++, 1, cc, u8"触发缸体到打印位EN_R", "CylinderReachPrintEnable"); m_SignalStateWrapper->m_CylinderPrintLoadEnable = new SysParamBool(flag++, 1, cc, u8"触发缸体打印位装载EN_R", "CylinderPrintLoadEnable"); m_SignalStateWrapper->m_CylinderPrintUnloadEnable = new SysParamBool(flag++, 1, cc, u8"触发缸体打印位卸载EN_R", "CylinderPrintUnloadEnable"); flag++; flag++; m_SignalStateWrapper->m_CylinderReachCleanEnable = new SysParamBool(flag++, 1, cc, u8"触发缸体到清粉位EN_R", "CylinderReachCleanEnable"); m_SignalStateWrapper->m_CylinderConnectCleanBoxEnable = new SysParamBool(flag++, 1, cc, u8"触发缸体与清粉箱连接EN_R", "CylinderConnectCleanBoxEnable"); m_SignalStateWrapper->m_CylinderDisconnectCleanBoxEnable = new SysParamBool(flag++, 1, cc, u8"触发缸体与清粉箱分离EN_R", "CylinderDisconnectCleanBoxEnable"); m_SignalStateWrapper->m_CoverEnable = new SysParamBool(flag++, 1, cc, u8"触发铺粉EN_R", "CoverEnable"); flag = 96 * 8; flag++; flag++; m_SignalStateWrapper->m_CylinderMoveHandPosEnable = new SysParamBool(flag++, 1, cc, u8"触发缸体到吊装位En", "CylinderMoveHandPosEnable"); m_SignalStateWrapper->m_CylinderMoveHandPos = new SysParamBool(flag++, 1, cc, u8"触发缸体到吊装位", "CylinderMoveHandPos"); m_SignalStateWrapper->m_CylinderMovingHandPos = new SysParamBool(flag++, 1, cc, u8"触发缸体到吊装位运行中", "CylinderMovingHandPos"); m_SignalStateWrapper->m_CylinderMovedHandPos = new SysParamBool(flag++, 1, cc, u8"触发缸体到吊装位完毕", "CylinderMovedHandPos"); m_SignalStateWrapper->m_PrintAirRenewalEnable = new SysParamBool(flag++, 1, cc, u8"打印室换气功能EN", "PrintAirRenewalEnable"); m_SignalStateWrapper->m_PrintAirRenewalTrigger = new SysParamBool(flag++, 1, cc, u8"触发打印室换气", "PrintAirRenewalTrigger"); m_SignalStateWrapper->m_AllowRiseWindSpeed = new SysParamBool(flag++, 1, cc, u8"允许提风速", "AllowRiseWindSpeed"); m_SignalStateWrapper->m_ManualCoverTest = new SysParamBool(flag++, 1, cc, u8"手动铺粉测试", "ManualCoverTest"); m_SignalStateWrapper->m_RollerEdgeSearching = new SysParamBool(flag++, 1, cc, u8"滚粉轴寻边中", "RollerEdgeSearching"); m_SignalStateWrapper->m_RollerEdgeSearchSuccess = new SysParamBool(flag++, 1, cc, u8"滚粉轴寻边成功", "RollerEdgeSearchSuccess"); m_SignalStateWrapper->m_RollerEdgeSearchFaild = new SysParamBool(flag++, 1, cc, u8"滚粉轴寻边失败", "RollerEdgeSearchFaild"); flag = 1; m_SignalStateWrapper->m_UseSupplySearchEdge = new SysParamBool(flag++, 68, cc,u8"使用滚粉轴寻边","UseSupplySearchEdge"); flag++; flag++; flag++; m_SignalStateWrapper->m_SheildLinearEncoder = new SysParamBool(flag++, 68, cc, u8"屏蔽光栅尺", "SheildLinearEncoder"); flag++; flag++; m_SignalStateWrapper->m_SheilServoEmptyOpen = new SysParamBool(flag++, 68, cc, u8"屏蔽伺服空开", "SheilServoEmptyOpen"); flag++; m_SignalStateWrapper->m_SheildHighPressure = new SysParamBool(flag++, 68, cc, u8"屏蔽高压气", "SheildHighPressure"); m_SignalStateWrapper->m_UnuseCoverReachSensor = new SysParamBool(flag++, 68, cc, u8"不使用铺粉轴到位感应器", "UnuseCoverReachSensor"); m_SignalStateWrapper->m_UseCoverBaffleSensor = new SysParamBool(flag++, 68, cc, u8"使用铺粉挡板感应器", "UseCoverBaffleSensor"); m_SignalStateWrapper->m_UseArmCaptureHome = new SysParamBool(flag++, 68, cc, u8"使用铺粉臂归原点", "UseArmCaptureHome"); flag++; flag++; m_SignalStateWrapper->m_LinearEncoderOppDirection = new SysParamBool(flag++, 68, cc, u8"光栅尺反向", "LinearEncoderOppDirection"); m_SignalStateWrapper->m_CoverV2UseCintinueMode = new SysParamBool(flag++, 68, cc, u8"铺粉V2是否使用连续模式", "CoverV2UseCintinueMode"); m_SignalStateWrapper->m_UseCoverShiftSpeed = new SysParamBool(flag++, 68, cc, u8"使用打印区域变速", "UseCoverShiftSpeed"); flag = 249 * 8 + 4; m_SignalStateWrapper->m_IsInPrintCylinderSeparatePos = new SysParamBool(flag++, 4, cc, u8"打印缸体分离位", "IsInPrintCylinderSeparatePos"); flag++; flag++; m_SignalStateWrapper->m_IsInPrintPlatformBottomPos = new SysParamBool(flag++, 4, cc, u8"打印基板底座面", "IsInPrintPlatformBottomPos"); m_SignalStateWrapper->m_IsInPrintPlatformFlatPos = new SysParamBool(flag++, 4, cc, u8"打印基板平面", "IsInPrintPlatformFlatPos"); flag++; flag++; flag++; flag++; m_SignalStateWrapper->m_IsInLoadPrintPos = new SysParamBool(flag++, 4, cc,u8"移载打印位","IsInLoadPrintPos"); m_SignalStateWrapper->m_IsInLoadCleanPos = new SysParamBool(flag++, 4, cc,u8"移载清粉位","IsInLoadCleanPos"); flag = 251 * 8; m_SignalStateWrapper->m_IsInDropPowderPos = new SysParamBool(flag++, 4, cc, u8"铺粉下粉位", "IsInDropPowderPos"); m_SignalStateWrapper->m_IsInAcceptPowderPos = new SysParamBool(flag++, 4, cc, u8"铺粉接粉位", "IsInAcceptPowderPos"); flag = 88 * 8; m_SignalStateWrapper->m_PrintTorqueUpInsideLimit = new SysParamBool(flag++, 1, cc, u8"扭力值在上升扭力范围内", "PrintTorqueUpInsideLimit"); m_SignalStateWrapper->m_ArmNotUponBasePlatform = new SysParamBool(flag++, 1, cc, u8"铺粉轴不在基板范围内", "ArmNotUponBasePlatform"); m_SignalStateWrapper->m_PrintMoldPosInsideUpSoftLimit = new SysParamBool(flag++, 1, cc, u8"轴位置没超过软上限", "PrintMoldPosInsideUpSoftLimit"); m_SignalStateWrapper->m_PrintInsideUpLimit = new SysParamBool(flag++, 1, cc, u8"上限位没触发", "PrintInsideUpLimit"); m_SignalStateWrapper->m_PrintTorqueDownInsideLimit = new SysParamBool(flag++, 1, cc, u8"扭力值在下降扭力范围内", "PrintTorqueDownInsideLimit"); m_SignalStateWrapper->m_PrintAxisPosInsideDownSoftLimit = new SysParamBool(flag++, 1, cc, u8"轴位置没超过软下限", "PrintAxisPosInsideDownSoftLimit"); m_SignalStateWrapper->m_PrintInsideDownLimit = new SysParamBool(flag++, 1, cc, u8"下限位没触发", "PrintInsideDownLimit"); m_SignalStateWrapper->m_PrintMainServoNoAlarm = new SysParamBool(flag++, 1, cc, u8"打印主轴伺服无异常", "PrintMainServoNoAlarm"); m_SignalStateWrapper->m_PrintMoldInPrintPos = new SysParamBool(flag++, 1, cc, u8"缸体在打印位", "PrintMoldInPrintPos"); m_SignalStateWrapper->m_PrintMoldInCleanPos = new SysParamBool(flag++, 1, cc, u8"缸体在清粉位", "PrintMoldInCleanPos"); m_SignalStateWrapper->m_PrintMoldInHandPos = new SysParamBool(flag++, 1, cc, u8"缸体在吊装位", "PrintMoldInHandPos"); m_SignalStateWrapper->m_MoldUpDownServiceDoorCloseStatue = new SysParamBool(flag++, 1, cc, u8"上下维护门在关闭状态", "MoldUpDownServiceDoorCloseStatue"); flag = 92 * 8; m_SignalStateWrapper->m_PrintJackupInSafePos = new SysParamBool(flag++, 1, cc, u8"打印顶升轴在安全位", "PrintJackupInSafePos"); m_SignalStateWrapper->m_LoadTorqueInsideLimit = new SysParamBool(flag++, 1, cc, u8"扭力值在扭力范围内", "LoadTorqueInsideLimit"); m_SignalStateWrapper->m_LoadPosInsideLeftSoftLimit = new SysParamBool(flag++, 1, cc, u8"轴位置没超过软左限", "LoadPosInsideLeftSoftLimit"); m_SignalStateWrapper->m_LoadPosInsideRightSoftLimit = new SysParamBool(flag++, 1, cc, u8"轴位置没超过软右限", "LoadPosInsideRightSoftLimit"); m_SignalStateWrapper->m_CylinderSealNoInflationStatue = new SysParamBool(flag++, 1, cc, u8"密封圈无充气状态", "CylinderSealNoInflationStatue"); m_SignalStateWrapper->m_LoadUpDownServiceDoorCloseStatue = new SysParamBool(flag++, 1, cc, u8"移载上下维护门在关闭状态", "LoadUpDownServiceDoorCloseStatue"); flag++; flag++; flag++; flag++; m_SignalStateWrapper->m_LoadLeftNotInsideLimit = new SysParamBool(flag++, 1, cc, u8"左限位没触发", "LoadLeftNotInsideLimit"); m_SignalStateWrapper->m_LoadRightNotInsideLimit = new SysParamBool(flag++, 1, cc, u8"右限位没触发", "LoadRightNotInsideLimit"); m_SignalStateWrapper->m_LoadServoNoAlarm = new SysParamBool(flag++, 1, cc, u8"移载轴伺服无异常", "LoadServoNoAlarm"); flag = 94 * 8; m_SignalStateWrapper->m_PrintUpDownPosBelowPlatform = new SysParamBool(flag++, 1, cc, u8"打印顶升轴位置低于基板缸平面", "PrintUpDownPosBelowPlatform"); m_SignalStateWrapper->m_ArmTorqueInsideLimit = new SysParamBool(flag++, 1, cc, u8"扭力值在扭力范围内", "ArmTorqueInsideLimit"); m_SignalStateWrapper->m_ArmPosInsideSoftFrontLimit = new SysParamBool(flag++, 1, cc, u8"轴位置没超过软前限", "ArmPosInsideSoftFrontLimit"); m_SignalStateWrapper->m_ArmPosInsideSoftBackLimit = new SysParamBool(flag++, 1, cc, u8"轴位置没超过软后限", "ArmPosInsideSoftBackLimit"); m_SignalStateWrapper->m_ArmPosInsideFrontLimit = new SysParamBool(flag++, 1, cc, u8"前限位没触发", "ArmPosInsideFrontLimit"); m_SignalStateWrapper->m_ArmPosInsideBackLimit = new SysParamBool(flag++, 1, cc, u8"后限位没触发", "ArmPosInsideBackLimit"); m_SignalStateWrapper->m_ArmServoNoAlarm = new SysParamBool(flag++, 1, cc, u8"铺粉轴伺服无异常", "ArmServoNoAlarm"); m_SignalStateWrapper->m_KeepAliveCommand = new KeepAliveCommand(cc); m_SignalStateWrapper->m_KeepAliveCommand->m_PCKeepAlice = m_SignalStateWrapper->m_PCKeepAlice; m_SignalStateWrapper->m_KeepAliveCommand->m_DevicePrinting = m_SignalStateWrapper->m_DevicePrinting; m_SignalStateWrapper->m_KeepAliveCommand->Init(); } //void HBDE1000::InitSysParam(SysParamWrapper* spw, PLCReveiver* cc) //{ // m_SysParamWrapper = spw; // m_PLC = cc; // int flag = 0; // m_SysParamWrapper->m_PrintOxygen1 = new SysParamFloat(flag, 3, cc, u8"打印舱测氧仪1模拟量值_R", "PrintOxygen1"); flag += 4; // m_SysParamWrapper->m_PrintOxygen2 = new SysParamFloat(flag, 3, cc, u8"打印舱测氧仪2模拟量值_R", "PrintOxygen2"); flag += 4; // m_SysParamWrapper->m_OutsideOxygen = new SysParamFloat(flag, 3, cc, u8"室外测氧仪模拟量值_R", "OutsideOxygen"); flag += 4; // m_SysParamWrapper->m_HighPressure = new SysParamFloat(flag, 3, cc, u8"高压气压力模拟量值_R", "HighPressure"); flag += 4; // m_SysParamWrapper->m_ProtectGasPressure = new SysParamFloat(flag, 3, cc, u8"保护气压力模拟量值_R", "ProtectGasPressure"); flag += 4; // m_SysParamWrapper->m_PrintPressure = new SysParamFloat(flag, 3, cc, u8"打印舱压力模拟量值_R", "PrintPressure"); flag += 4; // m_SysParamWrapper->m_PrintOxygen1Max = new SysParamFloat(flag, 3, cc, u8"测氧仪1量程最大值_RW", "PrintOxygen1Max"); flag += 4; // m_SysParamWrapper->m_PrintOxygen1Min = new SysParamFloat(flag, 3, cc, u8"测氧仪1量程最小值_RW", "PrintOxygen1Min"); flag += 4; // m_SysParamWrapper->m_PrintOxygen2Max = new SysParamFloat(flag, 3, cc, u8"测氧仪2量程最大值_RW", "PrintOxygen2Max"); flag += 4; // m_SysParamWrapper->m_PrintOxygen2Min = new SysParamFloat(flag, 3, cc, u8"测氧仪2量程最小值_RW", "PrintOxygen2Min"); flag += 4; // m_SysParamWrapper->m_OutsideOxygenMax = new SysParamFloat(flag, 3, cc, u8"室外测氧仪量程最大值_RW", "OutsideOxygenMax"); flag += 4; // m_SysParamWrapper->m_OutsideOxygenMin = new SysParamFloat(flag, 3, cc, u8"室外测氧仪量程最小值_RW", "OutsideOxygenMin"); flag += 4; // m_SysParamWrapper->m_HighPressureMax = new SysParamFloat(flag, 3, cc, u8"高压气量程最大值_RW", "HighPressureMax"); flag += 4; // m_SysParamWrapper->m_HighPressureMin = new SysParamFloat(flag, 3, cc, u8"高压气量程最小值_RW", "HighPressureMin"); flag += 4; // m_SysParamWrapper->m_ProtectGasPressureMax = new SysParamFloat(flag, 3, cc, u8"保护气量程最大值_RW", "ProtectGasPressureMax"); flag += 4; // m_SysParamWrapper->m_ProtectGasPressureMin = new SysParamFloat(flag, 3, cc, u8"保护气量程最小值_RW", "ProtectGasPressureMin"); flag += 4; // m_SysParamWrapper->m_PrintPressureMax = new SysParamFloat(flag, 3, cc, u8"打印舱压力量程最大值_RW", "PrintPressureMax"); flag += 4; // m_SysParamWrapper->m_PrintPressureMin = new SysParamFloat(flag, 3, cc, u8"打印舱压力量程最小值_RW", "PrintPressureMin"); flag += 4; // m_SysParamWrapper->m_OutsideOxygenAlarmValue = new SysParamFloat(flag, 3, cc, u8"室外氧含量报警值_RW", "OutsideOxygenAlarmValue"); flag += 4; // // m_SysParamWrapper->m_EnvUIAssit.m_PrintOxygen1Max = new SysParamFloatUI(m_SysParamWrapper->m_PrintOxygen1Max); // m_SysParamWrapper->m_EnvUIAssit.m_PrintOxygen1Min = new SysParamFloatUI(m_SysParamWrapper->m_PrintOxygen1Min); // m_SysParamWrapper->m_EnvUIAssit.m_PrintOxygen2Max = new SysParamFloatUI(m_SysParamWrapper->m_PrintOxygen2Max); // m_SysParamWrapper->m_EnvUIAssit.m_PrintOxygen2Min = new SysParamFloatUI(m_SysParamWrapper->m_PrintOxygen2Min); // m_SysParamWrapper->m_EnvUIAssit.m_OutsideOxygenMax = new SysParamFloatUI(m_SysParamWrapper->m_OutsideOxygenMax); // m_SysParamWrapper->m_EnvUIAssit.m_OutsideOxygenMin = new SysParamFloatUI(m_SysParamWrapper->m_OutsideOxygenMin); // m_SysParamWrapper->m_EnvUIAssit.m_HighPressureMax = new SysParamFloatUI(m_SysParamWrapper->m_HighPressureMax); // m_SysParamWrapper->m_EnvUIAssit.m_HighPressureMin = new SysParamFloatUI(m_SysParamWrapper->m_HighPressureMin); // m_SysParamWrapper->m_EnvUIAssit.m_ProtectGasPressureMax = new SysParamFloatUI(m_SysParamWrapper->m_ProtectGasPressureMax); // m_SysParamWrapper->m_EnvUIAssit.m_ProtectGasPressureMin = new SysParamFloatUI(m_SysParamWrapper->m_ProtectGasPressureMin); // m_SysParamWrapper->m_EnvUIAssit.m_PrintPressureMax = new SysParamFloatUI(m_SysParamWrapper->m_PrintPressureMax); // m_SysParamWrapper->m_EnvUIAssit.m_PrintPressureMin = new SysParamFloatUI(m_SysParamWrapper->m_PrintPressureMin); // m_SysParamWrapper->m_EnvUIAssit.m_OutsideOxygenAlarmValue = new SysParamFloatUI(m_SysParamWrapper->m_OutsideOxygenAlarmValue); // // // m_SysParamWrapper->m_SupplyPowderGridPerCycle = new SysParamFloat(flag, 3, cc, u8"供粉转轴的格数一圈_RW", "SupplyPowderGridPerCycle"); flag += 4; // m_SysParamWrapper->m_SupplyAxisAnglePerGrid = new SysParamFloat(flag, 3, cc, u8"供粉转轴每格对用度数_RW", "SupplyAxisAnglePerGrid"); flag += 4; // m_SysParamWrapper->m_MoldMainCurrentPos = new SysParamFloat(flag, 3, cc, u8"打印主轴当前位置_R", "MoldMainCurrentPos"); flag += 4; // m_SysParamWrapper->m_MoldMainCurrentLoad = new SysParamFloat(flag, 3, cc, u8"打印主轴当前扭矩_R", "MoldMainCurrentLoad"); flag += 4; // m_SysParamWrapper->m_MoldSlaveCurrentPos = new SysParamFloat(flag, 3, cc, u8"打印从轴当前位置_R", "MoldSlaveCurrentPos"); flag += 4; // m_SysParamWrapper->m_MoldSlaveCurrentLoad = new SysParamFloat(flag, 3, cc, u8"打印从轴当前扭矩_R", "MoldSlaveCurrentLoad"); flag += 4; // m_SysParamWrapper->m_MoldMainManualSpeed = new SysParamFloat(flag, 3, cc, u8"打印主轴手动速度_RW", "MoldMainManualSpeed"); flag += 4; // m_SysParamWrapper->m_MoldMainManualAcc = new SysParamFloat(flag, 3, cc, u8"打印主轴手动加速_RW", "MoldMainManualAcc"); flag += 4; // m_SysParamWrapper->m_MoldMainManualDec = new SysParamFloat(flag, 3, cc, u8"打印主轴手动减速_RW", "MoldMainManualDec"); flag += 4; // m_SysParamWrapper->m_MoldMainManualRefDistance = new SysParamFloat(flag, 3, cc, u8"打印主轴手动相对位移距离_RW", "MoldMainManualRefDistance"); flag += 4; // m_SysParamWrapper->m_MoldMainManualAbsPos = new SysParamFloat(flag, 3, cc, u8"打印主轴绝对位置_手动_RW", "MoldMainManualAbsPos"); flag += 4; // m_SysParamWrapper->m_MoldSlaveManualSpeed = new SysParamFloat(flag, 3, cc, u8"打印从轴手动速度_RW", "MoldSlaveManualSpeed"); flag += 4; // m_SysParamWrapper->m_MoldSlaveManualAcc = new SysParamFloat(flag, 3, cc, u8"打印从轴手动加速_RW", "MoldSlaveManualAcc"); flag += 4; // m_SysParamWrapper->m_MoldSlaveManualDec = new SysParamFloat(flag, 3, cc, u8"打印从轴手动减速_RW", "MoldSlaveManualDec"); flag += 4; // m_SysParamWrapper->m_MoldSlaveManualRefDistance = new SysParamFloat(flag, 3, cc, u8"打印从轴手动相对位移距离_RW", "MoldSlaveManualRefDistance"); flag += 4; // m_SysParamWrapper->m_MoldSlaveManualAbsPos = new SysParamFloat(flag, 3, cc, u8"打印从轴绝对位置_手动_RW", "MoldSlaveManualAbsPos"); flag += 4; // m_SysParamWrapper->m_CleanMainCurrentPos = new SysParamFloat(flag, 3, cc, u8"清粉主轴当前位置_R", "CleanMainCurrentPos"); flag += 4; // m_SysParamWrapper->m_CleanMainCurrentLoad = new SysParamFloat(flag, 3, cc, u8"清粉主轴当前扭矩_R", "CleanMainCurrentLoad"); flag += 4; // m_SysParamWrapper->m_CleanSlaveCurrentPos = new SysParamFloat(flag, 3, cc, u8"清粉从轴当前位置_R", "CleanSlaveCurrentPos"); flag += 4; // m_SysParamWrapper->m_CleanSlaveCurrentLoad = new SysParamFloat(flag, 3, cc, u8"清粉从轴当前扭矩_R", "CleanSlaveCurrentLoad"); flag += 4; // m_SysParamWrapper->m_CleanMainManualSpeed = new SysParamFloat(flag, 3, cc, u8"清粉主轴手动速度_RW", "CleanMainManualSpeed"); flag += 4; // m_SysParamWrapper->m_CleanMainManualAcc = new SysParamFloat(flag, 3, cc, u8"清粉主轴手动加速_RW", "CleanMainManualAcc"); flag += 4; // m_SysParamWrapper->m_CleanMainManualDec = new SysParamFloat(flag, 3, cc, u8"清粉主轴手动减速_RW", "CleanMainManualDec"); flag += 4; // m_SysParamWrapper->m_CleanMainManualRefDistance = new SysParamFloat(flag, 3, cc, u8"清粉主轴手动相对位移距离_RW", "CleanMainManualRefDistance"); flag += 4; // m_SysParamWrapper->m_CleanMainManualAbsPos = new SysParamFloat(flag, 3, cc, u8"清粉主轴绝对位置_手动_RW", "CleanMainManualAbsPos"); flag += 4; // m_SysParamWrapper->m_CleanSlaveManualSpeed = new SysParamFloat(flag, 3, cc, u8"清粉从轴手动速度_RW", "CleanSlaveManualSpeed"); flag += 4; // m_SysParamWrapper->m_CleanSlaveManualAcc = new SysParamFloat(flag, 3, cc, u8"清粉从轴手动加速_RW", "CleanSlaveManualAcc"); flag += 4; // m_SysParamWrapper->m_CleanSlaveManualDec = new SysParamFloat(flag, 3, cc, u8"清粉从轴手动减速_RW", "CleanSlaveManualDec"); flag += 4; // m_SysParamWrapper->m_CleanSlaveManualRefDistance = new SysParamFloat(flag, 3, cc, u8"清粉从轴手动相对位移距离_RW", "CleanSlaveManualRefDistance"); flag += 4; // m_SysParamWrapper->m_CleanSlaveManualAbsPos = new SysParamFloat(flag, 3, cc, u8"清粉从轴绝对位置_手动_RW", "CleanSlaveManualAbsPos"); flag += 4; // // // m_SysParamWrapper->m_EleCylinderMainCurrentPos = m_SysParamWrapper->m_CleanMainCurrentPos; //电缸主轴当前位置_R // m_SysParamWrapper->m_EleCylinderMainCurrentLoad = m_SysParamWrapper->m_CleanMainCurrentLoad; //电缸主轴当前扭矩_R // m_SysParamWrapper->m_EleCylinderSlaveCurrentPos = m_SysParamWrapper->m_CleanSlaveCurrentPos; //电缸从轴当前位置_R // m_SysParamWrapper->m_EleCylinderSlaveCurrentLoad = m_SysParamWrapper->m_CleanSlaveCurrentLoad; //电缸从轴当前扭矩_R // m_SysParamWrapper->m_EleCylinderMainManualSpeed = m_SysParamWrapper->m_CleanMainManualSpeed; //电缸主轴手动速度_RW // m_SysParamWrapper->m_EleCylinderMainManualAcc = m_SysParamWrapper->m_CleanMainManualAcc; //电缸主轴手动加速_RW // m_SysParamWrapper->m_EleCylinderMainManualDec = m_SysParamWrapper->m_CleanMainManualDec; //电缸主轴手动减速_RW // m_SysParamWrapper->m_EleCylinderMainManualRefDistance = m_SysParamWrapper->m_CleanMainManualRefDistance; //电缸主轴手动相对位移距离_RW // m_SysParamWrapper->m_EleCylinderMainManualAbsPos = m_SysParamWrapper->m_CleanMainManualAbsPos; //电缸主轴绝对位置_手动_RW // m_SysParamWrapper->m_EleCylinderSlaveManualSpeed = m_SysParamWrapper->m_CleanSlaveManualSpeed; //电缸从轴手动速度_RW // m_SysParamWrapper->m_EleCylinderSlaveManualAcc = m_SysParamWrapper->m_CleanSlaveManualAcc; //电缸从轴手动加速_RW // m_SysParamWrapper->m_EleCylinderSlaveManualDec = m_SysParamWrapper->m_CleanSlaveManualDec; //电缸从轴手动减速_RW // m_SysParamWrapper->m_EleCylinderSlaveManualRefDistance = m_SysParamWrapper->m_CleanSlaveManualRefDistance; //电缸从轴手动相对位移距离_RW // m_SysParamWrapper->m_EleCylinderSlaveManualAbsPos = m_SysParamWrapper->m_CleanSlaveManualAbsPos; //电缸从轴绝对位置_手动_RW // m_SysParamWrapper->m_EleCylinderMainCurrentPos->SetInfo(u8"电缸主轴当前位置_R", "EleCylinderMainCurrentPos"); // m_SysParamWrapper->m_EleCylinderMainCurrentLoad->SetInfo(u8"电缸主轴当前扭矩_R", "EleCylinderMainCurrentLoad"); // m_SysParamWrapper->m_EleCylinderSlaveCurrentPos->SetInfo(u8"电缸从轴当前位置_R", "EleCylinderSlaveCurrentPos"); // m_SysParamWrapper->m_EleCylinderSlaveCurrentLoad->SetInfo(u8"电缸从轴当前扭矩_R", "EleCylinderSlaveCurrentLoad"); // m_SysParamWrapper->m_EleCylinderMainManualSpeed->SetInfo(u8"电缸主轴手动速度_RW", "EleCylinderMainManualSpeed"); // m_SysParamWrapper->m_EleCylinderMainManualAcc->SetInfo(u8"电缸主轴手动加速_RW", "EleCylinderMainManualAcc"); // m_SysParamWrapper->m_EleCylinderMainManualDec->SetInfo(u8"电缸主轴手动减速_RW", "EleCylinderMainManualDec"); // m_SysParamWrapper->m_EleCylinderMainManualRefDistance->SetInfo(u8"电缸主轴手动相对位移距离_RW", "EleCylinderMainManualRefDistance"); // m_SysParamWrapper->m_EleCylinderMainManualAbsPos->SetInfo(u8"电缸主轴绝对位置_手动_RW", "EleCylinderMainManualAbsPos"); // m_SysParamWrapper->m_EleCylinderSlaveManualSpeed->SetInfo(u8"电缸从轴手动速度_RW", "EleCylinderSlaveManualSpeed"); // m_SysParamWrapper->m_EleCylinderSlaveManualAcc->SetInfo(u8"电缸从轴手动加速_RW", "EleCylinderSlaveManualAcc"); // m_SysParamWrapper->m_EleCylinderSlaveManualDec->SetInfo(u8"电缸从轴手动减速_RW", "EleCylinderSlaveManualDec"); // m_SysParamWrapper->m_EleCylinderSlaveManualRefDistance->SetInfo(u8"电缸从轴手动相对位移距离_RW", "EleCylinderSlaveManualRefDistance"); // m_SysParamWrapper->m_EleCylinderSlaveManualAbsPos->SetInfo(u8"电缸从轴绝对位置_手动_RW", "EleCylinderSlaveManualAbsPos"); // // m_SysParamWrapper->m_LoadAxisCurrentPos = new SysParamFloat(flag, 3, cc, u8"移载轴当前位置_R", "LoadAxisCurrentPos"); flag += 4; // m_SysParamWrapper->m_LoadAxisCurrentLoad = new SysParamFloat(flag, 3, cc, u8"移载轴当前扭矩_R", "LoadAxisCurrentLoad"); flag += 4; // m_SysParamWrapper->m_LoadAxisManualSpeed = new SysParamFloat(flag, 3, cc, u8"移载轴手动速度_RW", "LoadAxisManualSpeed"); flag += 4; // m_SysParamWrapper->m_LoadAxisManualAcc = new SysParamFloat(flag, 3, cc, u8"移载轴手动加速_RW", "LoadAxisManualAcc"); flag += 4; // m_SysParamWrapper->m_LoadAxisManualDec = new SysParamFloat(flag, 3, cc, u8"移载轴手动减速_RW", "LoadAxisManualDec"); flag += 4; // m_SysParamWrapper->m_LoadAxisManualRefDistance = new SysParamFloat(flag, 3, cc, u8"移载轴手动相对位移距离_RW", "LoadAxisManualRefDistance"); flag += 4; // m_SysParamWrapper->m_LoadAxisManualAbsPos = new SysParamFloat(flag, 3, cc, u8"移载轴绝对位置_手动_RW", "LoadAxisManualAbsPos"); flag += 4; // m_SysParamWrapper->m_ArmCurrentPos = new SysParamFloat(flag, 3, cc, u8"铺粉轴当前位置_R", "ArmCurrentPos"); flag += 4; // m_SysParamWrapper->m_ArmCurrentLoad = new SysParamFloat(flag, 3, cc, u8"铺粉轴当前扭矩_R", "ArmCurrentLoad"); flag += 4; // m_SysParamWrapper->m_ArmManualSpeed = new SysParamFloat(flag, 3, cc, u8"铺粉轴手动速度_RW", "ArmManualSpeed"); flag += 4; // m_SysParamWrapper->m_ArmManualAcc = new SysParamFloat(flag, 3, cc, u8"铺粉轴手动加速_RW", "ArmManualAcc"); flag += 4; // m_SysParamWrapper->m_ArmManualDec = new SysParamFloat(flag, 3, cc, u8"铺粉轴手动减速_RW", "ArmManualDec"); flag += 4; // m_SysParamWrapper->m_ArmManualRefDistance = new SysParamFloat(flag, 3, cc, u8"铺粉轴手动相对位移距离_RW", "ArmManualRefDistance"); flag += 4; // m_SysParamWrapper->m_ArmManualAbsPos = new SysParamFloat(flag, 3, cc, u8"铺粉轴绝对位置_手动_RW", "ArmManualAbsPos"); flag += 4; // m_SysParamWrapper->m_SupplyCurrentPos = new SysParamFloat(flag, 3, cc, u8"供粉转轴当前位置_R", "SupplyCurrentPos"); flag += 4; // m_SysParamWrapper->m_SupplyCurrentLoad = new SysParamFloat(flag, 3, cc, u8"供粉转轴当前扭矩_R", "SupplyCurrentLoad"); flag += 4; // m_SysParamWrapper->m_SupplyManualSpeed = new SysParamFloat(flag, 3, cc, u8"供粉转轴手动速度_RW", "SupplyManualSpeed"); flag += 4; // // // m_SysParamWrapper->m_SupplyManualAcc = new SysParamFloat(flag, 3, cc, u8"供粉转轴手动加速_RW", "SupplyManualAcc"); flag += 4; // m_SysParamWrapper->m_SupplyManualDec = new SysParamFloat(flag, 3, cc, u8"供粉转轴手动减速_RW", "SupplyManualDec"); flag += 4; // m_SysParamWrapper->m_SupplyManualRefDistance = new SysParamFloat(flag, 3, cc, u8"供粉转轴手动相对位移距离_RW", "SupplyManualRefDistance"); flag += 4; // m_SysParamWrapper->m_SupplyManualAbsPos = new SysParamFloat(flag, 3, cc, u8"供粉转轴绝对位置_手动_RW", "SupplyManualAbsPos"); flag += 4; // m_SysParamWrapper->m_MoldCylinderSeparatePos = new SysParamFloat(flag, 3, cc, u8"打印升降与缸体分离位_RW", "MoldCylinderSeparatePos"); flag += 4; // m_SysParamWrapper->m_PrintUpDownSafePos = m_SysParamWrapper->m_MoldCylinderSeparatePos; //打印升降安全位_RW // m_SysParamWrapper->m_PrintUpDownSafePos->SetInfo(u8"打印升降安全位_RW", "PrintUpDownSafePos"); // // m_SysParamWrapper->m_Print3RSeparatePos = new SysParamFloat(flag, 3, cc, u8"打印3R脱离位_RW", "Print3RSeparatePos"); flag += 4; // m_SysParamWrapper->m_Print3RSeparateCheckDistance = new SysParamFloat(flag, 3, cc, u8"打印3R脱离检测距离_RW", "Print3RSeparateCheckDistance"); flag += 4; // m_SysParamWrapper->m_PrintJackupDeoxygenPressureMinPos = new SysParamFloat(flag, 3, cc, u8"打印顶升轴除氧压缩最低点_RW", "PrintJackupDeoxygenPressureMinPos"); flag += 4; // m_SysParamWrapper->m_PrintJackupPlatformBottomPos = new SysParamFloat(flag, 3, cc, u8"打印顶升轴基板底座缸平面位置_RW", "PrintJackupPlatformBottomPos"); flag += 4; // m_SysParamWrapper->m_PrintJackupPlatformPlanePos = new SysParamFloat(flag, 3, cc, u8"打印顶升轴基板缸平面位置_RW", "PrintJackupPlatformPlanePos"); flag += 4; // m_SysParamWrapper->m_PrintPlatformHight = new SysParamFloat(flag, 3, cc, u8"打印基板厚度_RW", "PrintPlatformHight"); flag += 4; // m_SysParamWrapper->m_MoldUpLimitPos = new SysParamFloat(flag, 3, cc, u8"打印升降轴上软限位_RW", "MoldUpLimitPos"); flag += 4; // m_SysParamWrapper->m_MoldDownLimitPos = new SysParamFloat(flag, 3, cc, u8"打印升降轴下软限位_RW", "MoldDownLimitPos"); flag += 4; // m_SysParamWrapper->m_CleanTrackConnectPos = new SysParamFloat(flag, 3, cc, u8"清粉升降轨道对接位_RW", "CleanTrackConnectPos"); flag += 4; // // // m_SysParamWrapper->m_CleanAxisPlatformAlignPos = m_SysParamWrapper->m_CleanTrackConnectPos; //清粉升降基板底座缸平面位_RW // m_SysParamWrapper->m_CleanAxisPlatformAlignPos->SetInfo(u8"清粉升降基板底座缸平面位_RW", "CleanAxisPlatformAlignPos"); // // m_SysParamWrapper->m_CleanBoxCylinderConnectPos = new SysParamFloat(flag, 3, cc, u8"清粉箱与缸体对接位_RW", "CleanBoxCylinderConnectPos"); flag += 4; // m_SysParamWrapper->m_Clean3RSeparatePos = new SysParamFloat(flag, 3, cc, u8"清粉升降3R对接分离位_RW", "Clean3RSeparatePos"); flag += 4; // m_SysParamWrapper->m_Clean3RSeparateCheckDistance = new SysParamFloat(flag, 3, cc, u8"清粉升降3R分离检测距离_RW", "Clean3RSeparateCheckDistance"); flag += 4; // m_SysParamWrapper->m_CleanLowestPos = new SysParamFloat(flag, 3, cc, u8"清粉升降最低点_RW", "CleanLowestPos"); flag += 4; // m_SysParamWrapper->m_CleanUpLimit = new SysParamFloat(flag, 3, cc, u8"清粉升降上软限位_RW", "CleanUpLimit"); flag += 4; // m_SysParamWrapper->m_CleanDownLimit = new SysParamFloat(flag, 3, cc, u8"清粉升降下软限位_RW", "CleanDownLimit"); flag += 4; // // // m_SysParamWrapper->m_EleCylinderPrintJackupPos = m_SysParamWrapper->m_CleanTrackConnectPos; //电缸打印顶升位置_RW // m_SysParamWrapper->m_EleCylinderCleanJackupPos = m_SysParamWrapper->m_CleanBoxCylinderConnectPos; //电缸清粉顶升位置_RW // m_SysParamWrapper->m_EleCylinderBottomFitPos = m_SysParamWrapper->m_Clean3RSeparatePos; //电缸底座贴合位置_RW // m_SysParamWrapper->m_EleCylinderSoftUpLimit = m_SysParamWrapper->m_CleanUpLimit; //电缸升降上软限位_RW // m_SysParamWrapper->m_EleCylinderSoftDownLimit = m_SysParamWrapper->m_CleanDownLimit; //电缸升降下软限位_RW // m_SysParamWrapper->m_EleCylinderPrintJackupPos->SetInfo(u8"电缸打印顶升位置_RW", "EleCylinderPrintJackupPos"); // m_SysParamWrapper->m_EleCylinderCleanJackupPos->SetInfo(u8"电缸清粉顶升位置_RW", "EleCylinderCleanJackupPos"); // m_SysParamWrapper->m_EleCylinderBottomFitPos->SetInfo(u8"电缸底座贴合位置_RW", "EleCylinderBottomFitPos"); // m_SysParamWrapper->m_EleCylinderSoftUpLimit->SetInfo(u8"电缸升降上软限位_RW", "EleCylinderSoftUpLimit"); // m_SysParamWrapper->m_EleCylinderSoftDownLimit->SetInfo(u8"电缸升降下软限位_RW", "EleCylinderSoftDownLimit"); // // // m_SysParamWrapper->m_LoadAxisTrackPrintPos = new SysParamFloat(flag, 3, cc, u8"移载轴轨道打印位_RW", "LoadAxisTrackPrintPos"); flag += 4; // m_SysParamWrapper->m_LoadAxisTrackCleanPos = new SysParamFloat(flag, 3, cc, u8"移载轴轨道清粉位_RW", "LoadAxisTrackCleanPos"); flag += 4; // m_SysParamWrapper->m_LoadAxisTrackWaitPos = new SysParamFloat(flag, 3, cc, u8"移载轴轨道等待位_RW", "LoadAxisTrackWaitPos"); flag += 4; // m_SysParamWrapper->m_LoadAxisLeftLimit = new SysParamFloat(flag, 3, cc, u8"移载轴轨道左软限位_RW", "LoadAxisLeftLimit"); flag += 4; // m_SysParamWrapper->m_LoadAxisRightLimit = new SysParamFloat(flag, 3, cc, u8"移载轴轨道右软限位_RW", "LoadAxisRightLimit"); flag += 4; // m_SysParamWrapper->m_ArmPowderAcceptPos = new SysParamFloat(flag, 3, cc, u8"铺粉轴接粉位_RW", "ArmPowderAcceptPos"); flag += 4; // m_SysParamWrapper->m_ArmPowderDropFrontPos = new SysParamFloat(flag, 3, cc, u8"铺粉轴前下粉位_RW", "ArmPowderDropFrontPos"); flag += 4; // m_SysParamWrapper->m_ArmPrintFrontLimit = new SysParamFloat(flag, 3, cc, u8"铺粉轴打印面前限位_RW", "ArmPrintFrontLimit"); flag += 4; // m_SysParamWrapper->m_ArmPrintBackLimit = new SysParamFloat(flag, 3, cc, u8"铺粉轴打印面后限位_RW", "ArmPrintBackLimit"); flag += 4; // m_SysParamWrapper->m_ArmFrontLimit = new SysParamFloat(flag, 3, cc, u8"铺粉轴前软限位_RW", "ArmFrontLimit"); flag += 4; // m_SysParamWrapper->m_ArmBackLimit = new SysParamFloat(flag, 3, cc, u8"铺粉轴后软限位_RW", "ArmBackLimit"); flag += 4; // m_SysParamWrapper->m_MoldAbsTestPos = new SysParamWord(flag, 3, cc, u8"打印升降轴绝对值试运行位置列表_RW", "MoldAbsTestPos"); flag += 2; // m_SysParamWrapper->m_CleanAbsTestPos = new SysParamWord(flag, 3, cc, u8"清粉升降轴绝对值试运行位置列表_RW", "CleanAbsTestPos"); flag += 2; // // // // m_SysParamWrapper->m_LoadAxisAbsTestPos = new SysParamWord(flag, 3, cc, u8"移载轴绝对值试运行位置列表_RW", "LoadAxisAbsTestPos"); flag += 2; // m_SysParamWrapper->m_ArmAbsTestPos = new SysParamWord(flag, 3, cc, u8"铺粉轴绝对值试运行位置列表_RW", "ArmAbsTestPos"); flag += 2; // m_SysParamWrapper->m_LineEncMoveValue = new SysParamFloat(flag, 3, cc, u8"光栅尺移动值_R", "LineEncMoveValue"); flag += 4; // m_SysParamWrapper->m_LineEncPulseEqu = new SysParamFloat(flag, 3, cc, u8"光栅尺脉冲当量_RW", "LineEncPulseEqu"); flag += 4; // m_SysParamWrapper->m_MoldMainHomeIndexEnc = new SysParamFloat(flag, 3, cc, u8"打印主轴原点编码器值_RW", "MoldMainHomeIndexEnc"); flag += 4; // m_SysParamWrapper->m_MoldMainAlignEnc = new SysParamFloat(flag, 3, cc, u8"打印主轴对齐位编码器值_RW", "MoldMainAlignEnc"); flag += 4; // m_SysParamWrapper->m_MoldMainAlignHomeRel = new SysParamFloat(flag, 3, cc, u8"打印主轴对齐位与原点相对值_RW", "MoldMainAlignHomeRel"); flag += 4; // m_SysParamWrapper->m_MoldSlaveHomeIndexEnc = new SysParamFloat(flag, 3, cc, u8"打印从轴原点编码器值_RW", "MoldSlaveHomeIndexEnc"); flag += 4; // m_SysParamWrapper->m_MoldSlaveAlignEnc = new SysParamFloat(flag, 3, cc, u8"打印从轴对齐位编码器值_RW", "MoldSlaveAlignEnc"); flag += 4; // m_SysParamWrapper->m_MoldSlaveAlignHomeRel = new SysParamFloat(flag, 3, cc, u8"打印从轴对齐位与原点相对值_RW", "MoldSlaveAlignHomeRel"); flag += 4; // m_SysParamWrapper->m_CleanMainHomeIndexEnc = new SysParamFloat(flag, 3, cc, u8"清粉主轴原点编码器值_RW", "CleanMainHomeIndexEnc"); flag += 4; // m_SysParamWrapper->m_CleanMainAlignEnc = new SysParamFloat(flag, 3, cc, u8"清粉主轴对齐位编码器值_RW", "CleanMainAlignEnc"); flag += 4; // m_SysParamWrapper->m_CleanMainAlignHomeRel = new SysParamFloat(flag, 3, cc, u8"清粉主轴对齐位与原点相对值_RW", "CleanMainAlignHomeRel"); flag += 4; // m_SysParamWrapper->m_CleanSlaveHomeIndexEnc = new SysParamFloat(flag, 3, cc, u8"清粉从轴原点编码器值_RW", "CleanSlaveHomeIndexEnc"); flag += 4; // m_SysParamWrapper->m_CleanSlaveAlignEnc = new SysParamFloat(flag, 3, cc, u8"清粉从轴对齐位编码器值_RW", "CleanSlaveAlignEnc"); flag += 4; // m_SysParamWrapper->m_CleanSlaveAlignHomeRel = new SysParamFloat(flag, 3, cc, u8"清粉从轴对齐位与原点相对值_RW", "CleanSlaveAlignHomeRel"); flag += 4; // // // m_SysParamWrapper->m_EleCylinderAbsTestPos = m_SysParamWrapper->m_CleanAbsTestPos; //电缸升降轴绝对值试运行位置列表_RW // m_SysParamWrapper->m_EleCylinderMainHomeIndexEnc = m_SysParamWrapper->m_CleanMainHomeIndexEnc; //电缸主轴原点编码器值_RW // m_SysParamWrapper->m_EleCylinderMainAlignEnc = m_SysParamWrapper->m_CleanMainAlignEnc; //电缸主轴对齐位编码器值_RW // m_SysParamWrapper->m_EleCylinderMainAlignHomeRel = m_SysParamWrapper->m_CleanMainAlignHomeRel; //电缸主轴对齐位与原点相对值_RW // m_SysParamWrapper->m_EleCylinderSlaveHomeIndexEnc = m_SysParamWrapper->m_CleanSlaveHomeIndexEnc; //电缸从轴原点编码器值_RW // m_SysParamWrapper->m_EleCylinderSlaveAlignEnc = m_SysParamWrapper->m_CleanSlaveAlignEnc; //电缸从轴对齐位编码器值_RW // m_SysParamWrapper->m_EleCylinderSlaveAlignHomeRel = m_SysParamWrapper->m_CleanSlaveAlignHomeRel; //电缸从轴对齐位与原点相对值_RW // m_SysParamWrapper->m_EleCylinderAbsTestPos->SetInfo(u8"电缸升降轴绝对值试运行位置列表_RW", "EleCylinderAbsTestPos"); // m_SysParamWrapper->m_EleCylinderMainHomeIndexEnc->SetInfo(u8"电缸主轴原点编码器值_RW", "EleCylinderMainHomeIndexEnc"); // m_SysParamWrapper->m_EleCylinderMainAlignEnc->SetInfo(u8"电缸主轴对齐位编码器值_RW", "EleCylinderMainAlignEnc"); // m_SysParamWrapper->m_EleCylinderMainAlignHomeRel->SetInfo(u8"电缸主轴对齐位与原点相对值_RW", "EleCylinderMainAlignHomeRel"); // m_SysParamWrapper->m_EleCylinderSlaveHomeIndexEnc->SetInfo(u8"电缸从轴原点编码器值_RW", "EleCylinderSlaveHomeIndexEnc"); // m_SysParamWrapper->m_EleCylinderSlaveAlignEnc->SetInfo(u8"电缸从轴对齐位编码器值_RW", "EleCylinderSlaveAlignEnc"); // m_SysParamWrapper->m_EleCylinderSlaveAlignHomeRel->SetInfo(u8"电缸从轴对齐位与原点相对值_RW", "EleCylinderSlaveAlignHomeRel"); // // m_SysParamWrapper->m_MoldAutoSpeed = new SysParamFloat(flag, 3, cc, u8"打印升降轴速度_自动_RW", "MoldAutoSpeed"); flag += 4; // m_SysParamWrapper->m_MoldAutoAcc = new SysParamFloat(flag, 3, cc, u8"打印升降轴加速度_自动_RW", "MoldAutoAcc"); flag += 4; // m_SysParamWrapper->m_MoldAutoDec = new SysParamFloat(flag, 3, cc, u8"打印升降轴减速度_自动_RW", "MoldAutoDec"); flag += 4; // m_SysParamWrapper->m_MoldAutoRelShift = new SysParamFloat(flag, 3, cc, u8"打印升降轴相对位移_自动_RW", "MoldAutoRelShift"); flag += 4; // m_SysParamWrapper->m_MoldAutoAbsPos = new SysParamFloat(flag, 3, cc, u8"打印升降轴绝对位置_自动_RW", "MoldAutoAbsPos"); flag += 4; // m_SysParamWrapper->m_CleanAutoSpeed = new SysParamFloat(flag, 3, cc, u8"清粉升降轴速度_自动_RW", "CleanAutoSpeed"); flag += 4; // m_SysParamWrapper->m_CleanAutoAcc = new SysParamFloat(flag, 3, cc, u8"清粉升降轴加速度_自动_RW", "CleanAutoAcc"); flag += 4; // m_SysParamWrapper->m_CleanAutoDec = new SysParamFloat(flag, 3, cc, u8"清粉升降轴减速度_自动_RW", "CleanAutoDec"); flag += 4; // m_SysParamWrapper->m_CleanAutoRelShift = new SysParamFloat(flag, 3, cc, u8"清粉升降轴相对位移_自动_RW", "CleanAutoRelShift"); flag += 4; // m_SysParamWrapper->m_CleanAutoAbsPos = new SysParamFloat(flag, 3, cc, u8"清粉升降轴绝对位置_自动_RW", "CleanAutoAbsPos"); flag += 4; // // m_SysParamWrapper->m_EleCylinderAutoSpeed = m_SysParamWrapper->m_CleanAutoSpeed; //电缸升降轴速度_自动_RW // m_SysParamWrapper->m_EleCylinderAutoAcc = m_SysParamWrapper->m_CleanAutoAcc; //电缸升降轴加速度_自动_RW // m_SysParamWrapper->m_EleCylinderAutoDec = m_SysParamWrapper->m_CleanAutoDec; //电缸升降轴减速度_自动_RW // m_SysParamWrapper->m_EleCylinderAutoRelShift = m_SysParamWrapper->m_CleanAutoRelShift; //电缸升降轴相对位移_自动_RW // m_SysParamWrapper->m_EleCylinderAutoAbsPos = m_SysParamWrapper->m_CleanAutoAbsPos; //电缸升降轴绝对位置_自动_RW // m_SysParamWrapper->m_EleCylinderAutoSpeed->SetInfo(u8"电缸升降轴速度_自动_RW", "EleCylinderAutoSpeed"); // m_SysParamWrapper->m_EleCylinderAutoAcc->SetInfo(u8"电缸升降轴加速度_自动_RW", "EleCylinderAutoAcc"); // m_SysParamWrapper->m_EleCylinderAutoDec->SetInfo(u8"电缸升降轴减速度_自动_RW", "EleCylinderAutoDec"); // m_SysParamWrapper->m_EleCylinderAutoRelShift->SetInfo(u8"电缸升降轴相对位移_自动_RW", "EleCylinderAutoRelShift"); // m_SysParamWrapper->m_EleCylinderAutoAbsPos->SetInfo(u8"电缸升降轴绝对位置_自动_RW", "EleCylinderAutoAbsPos"); // // // m_SysParamWrapper->m_LoadAxisAutoSpeed = new SysParamFloat(flag, 3, cc, u8"移载轴速度_自动_RW", "LoadAxisAutoSpeed"); flag += 4; // m_SysParamWrapper->m_LoadAxisnAutoAcc = new SysParamFloat(flag, 3, cc, u8"移载轴加速度_自动_RW", "LoadAxisnAutoAcc"); flag += 4; // m_SysParamWrapper->m_LoadAxisAutoDec = new SysParamFloat(flag, 3, cc, u8"移载轴减速度_自动_RW", "LoadAxisAutoDec"); flag += 4; // m_SysParamWrapper->m_LoadAxisAutoRelShift = new SysParamFloat(flag, 3, cc, u8"移载轴相对位移_自动_RW", "LoadAxisAutoRelShift"); flag += 4; // m_SysParamWrapper->m_LoadAxisAutoAbsPos = new SysParamFloat(flag, 3, cc, u8"移载轴绝对位置_自动_RW", "LoadAxisAutoAbsPos"); flag += 4; // m_SysParamWrapper->m_ArmAutoSpeed = new SysParamFloat(flag, 3, cc, u8"铺粉轴速度_自动_RW", "ArmAutoSpeed"); flag += 4; // m_SysParamWrapper->m_ArmAxisnAutoAcc = new SysParamFloat(flag, 3, cc, u8"铺粉轴加速度_自动_RW", "ArmAxisnAutoAcc"); flag += 4; // m_SysParamWrapper->m_ArmAxisAutoDec = new SysParamFloat(flag, 3, cc, u8"铺粉轴减速度_自动_RW", "ArmAxisAutoDec"); flag += 4; // m_SysParamWrapper->m_ArmAxisAutoRelShift = new SysParamFloat(flag, 3, cc, u8"铺粉轴相对位移_自动_RW", "ArmAxisAutoRelShift"); flag += 4; // m_SysParamWrapper->m_ArmAxisAutoAbsPos = new SysParamFloat(flag, 3, cc, u8"铺粉轴绝对位置_自动_RW", "ArmAxisAutoAbsPos"); flag += 4; // m_SysParamWrapper->m_SupplyAutoSpeed = new SysParamFloat(flag, 3, cc, u8"供粉转轴速度_自动_RW", "SupplyAutoSpeed"); flag += 4; // m_SysParamWrapper->m_SupplyAxisnAutoAcc = new SysParamFloat(flag, 3, cc, u8"供粉转轴加速度_自动_RW", "SupplyAxisnAutoAcc"); flag += 4; // m_SysParamWrapper->m_SupplyAxisAutoDec = new SysParamFloat(flag, 3, cc, u8"供粉转轴减速度_自动_RW", "SupplyAxisAutoDec"); flag += 4; // m_SysParamWrapper->m_SupplyAxisAutoRelShift = new SysParamFloat(flag, 3, cc, u8"供粉转轴相对位移_自动_RW", "SupplyAxisAutoRelShift"); flag += 4; // m_SysParamWrapper->m_SupplyAxisAutoAbsPos = new SysParamFloat(flag, 3, cc, u8"供粉转轴绝对位置_自动_RW", "SupplyAxisAutoAbsPos"); flag += 4; // // // m_SysParamWrapper->m_Print3RSeparatTorqueThreshold = new SysParamFloat(flag, 3, cc, u8"打印3R脱离扭力报警值_RW", "Print3RSeparatTorqueThreshold"); flag += 4; // m_SysParamWrapper->m_MoldUpTorqueThrehold = new SysParamFloat(flag, 3, cc, u8"打印升降轴上升扭力报警值_RW", "MoldUpTorqueThrehold"); flag += 4; // m_SysParamWrapper->m_MoldDownTorqueThrehold = new SysParamFloat(flag, 3, cc, u8"打印升降轴下降扭力报警值_RW", "MoldDownTorqueThrehold"); flag += 4; // m_SysParamWrapper->m_Clean3RSeparatTorqueThrehold = new SysParamFloat(flag, 3, cc, u8"清粉3R脱离扭力报警值_RW", "Clean3RSeparatTorqueThrehold"); flag += 4; // m_SysParamWrapper->m_CleanUpTorqueThrehold = new SysParamFloat(flag, 3, cc, u8"清粉升降轴上升扭力报警值_RW", "CleanUpTorqueThrehold"); flag += 4; // m_SysParamWrapper->m_CleanDownTorqueThreshold = new SysParamFloat(flag, 3, cc, u8"清粉升降轴下降扭力报警值_RW", "CleanDownTorqueThreshold"); flag += 4; // // m_SysParamWrapper->m_EleCylinderUpTorqueThrehold = m_SysParamWrapper->m_CleanUpTorqueThrehold; //电缸升降轴上升扭力报警值_RW Real // m_SysParamWrapper->m_EleCylinderDownTorqueThreshold = m_SysParamWrapper->m_CleanDownTorqueThreshold; //电缸升降轴下降扭力报警值_RW Real // m_SysParamWrapper->m_EleCylinderUpTorqueThrehold->SetInfo(u8"电缸升降轴上升扭力报警值_RW", "EleCylinderUpTorqueThrehold"); // m_SysParamWrapper->m_EleCylinderDownTorqueThreshold->SetInfo(u8"电缸升降轴下降扭力报警值_RW", "EleCylinderDownTorqueThreshold"); // // m_SysParamWrapper->m_CoverType = new SysParamWord(flag, 3, cc, u8"铺粉类型__RW", "CoverType"); flag += 2; // m_SysParamWrapper->m_CoverSpeed = new SysParamFloat(flag, 3, cc, u8"打印铺粉速度_RW", "CoverSpeed"); flag += 4; // m_SysParamWrapper->m_CoverReturnSpeed = new SysParamFloat(flag, 3, cc, u8"打印单向铺粉返回变速_RW", "CoverReturnSpeed"); flag += 4; // m_SysParamWrapper->m_CoverDistance = new SysParamFloat(flag, 3, cc, u8"打印单向铺粉距离_RW", "CoverDistance"); flag += 4; // m_SysParamWrapper->m_LayerThick = new SysParamFloat(flag, 3, cc, u8"打印铺粉层厚_RW", "LayerThick"); flag += 4; // m_SysParamWrapper->m_FixGap = new SysParamFloat(flag, 3, cc, u8"打印间隙补偿_RW", "FixGap"); flag += 4; // m_SysParamWrapper->m_SupplyCount = new SysParamWord(flag, 3, cc, u8"打印铺粉格数_RW", "SupplyCount"); flag += 2; // m_SysParamWrapper->m_SupplyTime = new SysParamInt(flag, 3, cc, u8"打印下粉时间_RW", "SupplyTime"); flag += 4; // m_SysParamWrapper->m_DebugLayerThick = new SysParamFloat(flag, 3, cc, u8"铺粉调试层厚_RW", "DebugLayerThick"); flag += 4; // m_SysParamWrapper->m_DebugFixGap = new SysParamFloat(flag, 3, cc, u8"铺粉调试间隙_RW", "DebugFixGap"); flag += 4; // m_SysParamWrapper->m_DebugSupplyTime = new SysParamInt(flag, 3, cc, u8"铺粉调试下粉时间_RW", "DebugSupplyTime"); flag += 4; // m_SysParamWrapper->m_DebugSupplyCount = new SysParamWord(flag, 3, cc, u8"铺粉调试格数_RW", "DebugSupplyCount"); flag += 2; // m_SysParamWrapper->m_DebugCoverDistance = new SysParamFloat(flag, 3, cc, u8"铺粉调试铺粉距离_RW", "DebugCoverDistance"); flag += 4; // m_SysParamWrapper->m_MoldHighSpeed = new SysParamFloat(flag, 3, cc, u8"打印升降轴快速移动速度_RW", "MoldHighSpeed"); flag += 4; // m_SysParamWrapper->m_MoldDeoxygenSpeed = new SysParamFloat(flag, 3, cc, u8"打印升降轴下降除氧位速度_RW", "MoldDeoxygenSpeed"); flag += 4; // m_SysParamWrapper->m_CleanHighSpeed = new SysParamFloat(flag, 3, cc, u8"清粉升降轴快速移动速度_RW", "CleanHighSpeed"); flag += 4; // // // m_SysParamWrapper->m_PrintPressureThrehold = new SysParamFloat(flag, 3, cc, u8"打印室压力泄压值_RW", "PrintPressureThrehold"); flag += 4; // m_SysParamWrapper->m_EnvUIAssit.m_PrintPressureThrehold = new SysParamFloatUI(m_SysParamWrapper->m_PrintPressureThrehold); // // m_SysParamWrapper->m_MoldDeoxygenTime = new SysParamInt(flag, 3, cc, u8"打印升降轴除氧时间_RW", "MoldDeoxygenTime"); flag += 4; // m_SysParamWrapper->m_PowderCarDeoxygenTime = new SysParamInt(flag, 3, cc, u8"存粉小车除氧时间_RW", "PowderCarDeoxygenTime"); flag += 4; // m_SysParamWrapper->m_GratingRulerValue = new SysParamFloat(flag, 3, cc, u8"光栅尺判断值", "GratingRulerValue"); flag += 4; // m_SysParamWrapper->m_ArmTorqueThreshold = new SysParamFloat(flag, 3, cc, u8"铺粉轴扭力报警值", "ArmTorqueThreshold"); flag += 4; // m_SysParamWrapper->m_LoadTorqueThreshold = new SysParamFloat(flag, 3, cc, u8"移载轴扭力报警值", "LoadTorqueThreshold"); flag += 4; // m_SysParamWrapper->m_SupplyTorqueThreshold = new SysParamFloat(flag, 3, cc, u8"供粉轴扭力报警值", "SupplyTorqueThreshold"); flag += 4; // // // m_SysParamWrapper->m_PrintMainLead = new SysParamFloat(flag, 3, cc, u8"打印主轴导程_RW", "PrintMainLead"); flag += 4; // m_SysParamWrapper->m_PrintMainReductionRatio = new SysParamFloat(flag, 3, cc, u8"打印主轴减速比", "PrintMainReductionRatio"); flag += 4; // m_SysParamWrapper->m_PrintMainMaxRotationlSpeed = new SysParamFloat(flag, 3, cc, u8"打印主轴电机最高转速", "PrintMainMaxRotationlSpeed"); flag += 4; // m_SysParamWrapper->m_PrintSlaveLead = new SysParamFloat(flag, 3, cc, u8"打印从轴导程", "PrintSlaveLead"); flag += 4; // m_SysParamWrapper->m_PrintSlaveReductionRatio = new SysParamFloat(flag, 3, cc, u8"打印从轴减速比", "PrintSlaveReductionRatio"); flag += 4; // m_SysParamWrapper->m_PrintSlaveMaxRotationlSpeed = new SysParamFloat(flag, 3, cc, u8"打印从轴电机最高转速", "PrintSlaveMaxRotationlSpeed"); flag += 4; // m_SysParamWrapper->m_CleanMainLead = new SysParamFloat(flag, 3, cc, u8"清粉主轴导程", "CleanMainLead"); flag += 4; // m_SysParamWrapper->m_CleanMainReductionRatio = new SysParamFloat(flag, 3, cc, u8"清粉主轴减速比", "CleanMainReductionRatio"); flag += 4; // m_SysParamWrapper->m_CleanMainMaxRotationlSpeed = new SysParamFloat(flag, 3, cc, u8"清粉主轴电机最高转速", "CleanMainMaxRotationlSpeed"); flag += 4; // m_SysParamWrapper->m_CleanSlaveLead = new SysParamFloat(flag, 3, cc, u8"清粉从轴导程", "CleanSlaveLead"); flag += 4; // m_SysParamWrapper->m_CleanSlaveReductionRatio = new SysParamFloat(flag, 3, cc, u8"清粉从轴减速比", "CleanSlaveReductionRatio"); flag += 4; // m_SysParamWrapper->m_CleanSlaveMaxRotationlSpeed = new SysParamFloat(flag, 3, cc, u8"清粉从轴电机最高转速", "CleanSlaveMaxRotationlSpeed"); flag += 4; // // m_SysParamWrapper->m_EleCylinderMainLead = m_SysParamWrapper->m_CleanMainLead; //电缸主轴导程 // m_SysParamWrapper->m_EleCylinderMainReductionRatio = m_SysParamWrapper->m_CleanMainReductionRatio; //电缸主轴减速比 // m_SysParamWrapper->m_EleCylinderMainMaxRotationlSpeed = m_SysParamWrapper->m_CleanMainMaxRotationlSpeed; //电缸主轴电机最高转速 // m_SysParamWrapper->m_EleCylinderSlaveLead = m_SysParamWrapper->m_CleanSlaveLead; //电缸从轴导程 // m_SysParamWrapper->m_EleCylinderSlaveReductionRatio = m_SysParamWrapper->m_CleanSlaveReductionRatio; //电缸从轴减速比 // m_SysParamWrapper->m_EleCylinderSlaveMaxRotationlSpeed = m_SysParamWrapper->m_CleanSlaveMaxRotationlSpeed; //电缸从轴电机最高转速 // m_SysParamWrapper->m_EleCylinderMainLead->SetInfo(u8"电缸主轴导程", "EleCylinderMainLead"); // m_SysParamWrapper->m_EleCylinderMainReductionRatio->SetInfo(u8"电缸主轴减速比", "EleCylinderMainReductionRatio"); // m_SysParamWrapper->m_EleCylinderMainMaxRotationlSpeed->SetInfo(u8"电缸主轴电机最高转速", "EleCylinderMainMaxRotationlSpeed"); // m_SysParamWrapper->m_EleCylinderSlaveLead->SetInfo(u8"电缸从轴导程", "EleCylinderSlaveLead"); // m_SysParamWrapper->m_EleCylinderSlaveReductionRatio->SetInfo(u8"电缸从轴减速比", "EleCylinderSlaveReductionRatio"); // m_SysParamWrapper->m_EleCylinderSlaveMaxRotationlSpeed->SetInfo(u8"电缸从轴电机最高转速", "EleCylinderSlaveMaxRotationlSpeed"); // // m_SysParamWrapper->m_LoadAxisLead = new SysParamFloat(flag, 3, cc, u8"移载轴导程", "LoadAxisLead"); flag += 4; // m_SysParamWrapper->m_LoadAxisReductionRatio = new SysParamFloat(flag, 3, cc, u8"移载轴减速比", "LoadAxisReductionRatio"); flag += 4; // m_SysParamWrapper->m_LoadAxisMaxRotationlSpeed = new SysParamFloat(flag, 3, cc, u8"移载轴电机最高转速", "LoadAxisMaxRotationlSpeed"); flag += 4; // m_SysParamWrapper->m_ArmLead = new SysParamFloat(flag, 3, cc, u8"铺粉轴导程", "ArmLead"); flag += 4; // m_SysParamWrapper->m_ArmReductionRatio = new SysParamFloat(flag, 3, cc, u8"铺粉轴减速比", "ArmReductionRatio"); flag += 4; // m_SysParamWrapper->m_ArmMaxRotationlSpeed = new SysParamFloat(flag, 3, cc, u8"铺粉轴电机最高转速", "ArmMaxRotationlSpeed"); flag += 4; // m_SysParamWrapper->m_SupplyLead = new SysParamFloat(flag, 3, cc, u8"供粉转轴导程", "SupplyLead"); flag += 4; // m_SysParamWrapper->m_SupplyReductionRatio = new SysParamFloat(flag, 3, cc, u8"供粉转轴减速比", "SupplyReductionRatio"); flag += 4; // m_SysParamWrapper->m_SupplyRotationlSpeed = new SysParamFloat(flag, 3, cc, u8"供粉转轴电机最高转速", "SupplyRotationlSpeed"); flag += 4; // // // // m_SysParamWrapper->m_ArmSlotDistance = new SysParamFloat(flag, 3, cc, u8"铺粉槽距离", "ArmSlotDistance"); flag += 4; // m_SysParamWrapper->m_PowderJarCabinPressureVoltage = new SysParamFloat(flag, 3, cc, u8"下粉罐与粉仓的压差电压值", "PowderJarCabinPressureVoltage"); flag += 4; // m_SysParamWrapper->m_PowderJarCabinPressureValue = new SysParamFloat(flag, 3, cc, u8"下粉罐与粉仓的压差实际值", "PowderJarCabinPressureValue"); flag += 4; // m_SysParamWrapper->m_CleanBoxDeoxygenSetValue = new SysParamFloat(flag, 3, cc, u8"清粉箱除氧设定值_RW", "CleanBoxDeoxygenSetValue"); flag += 4; // m_SysParamWrapper->m_CleanBoxOxygenDownLimit = new SysParamFloat(flag, 3, cc, u8"清粉箱测氧仪下限_RW", "CleanBoxOxygenDownLimit"); flag += 4; // m_SysParamWrapper->m_CleanBoxOxygenUpLimit = new SysParamFloat(flag, 3, cc, u8"清粉箱测氧仪上限_RW", "CleanBoxOxygenUpLimit"); flag += 4; // m_SysParamWrapper->m_CleanBoxPressureReleaseValue = new SysParamFloat(flag, 3, cc, u8"清粉箱泄压值_RW", "CleanBoxPressureReleaseValue"); flag += 4; // m_SysParamWrapper->m_PrintCar1RealWeight = new SysParamFloat(flag, 3, cc, u8"打印小车1实际重量", "PrintCar1RealWeight"); flag += 4; // m_SysParamWrapper->m_PrintCar1AlarmWeight = new SysParamFloat(flag, 3, cc, u8"打印小车1报警重量_RW", "PrintCar1AlarmWeight"); flag += 4; // m_SysParamWrapper->m_PrintCar2RealWeight = new SysParamFloat(flag, 3, cc, u8"打印小车2实际重量", "PrintCar2RealWeight"); flag += 4; // m_SysParamWrapper->m_PrintCar2AlarmWeight = new SysParamFloat(flag, 3, cc, u8"打印小车2报警重量_RW", "PrintCar2AlarmWeight"); flag += 4; // // // m_SysParamWrapper->m_CleanCar1RealWeight = new SysParamFloat(flag, 3, cc, u8"清粉小车1实际重量", "CleanCar1RealWeight"); flag += 4; // m_SysParamWrapper->m_CleanCar1AlarmWeight = new SysParamFloat(flag, 3, cc, u8"清粉小车1报警重量_RW", "CleanCar1AlarmWeight"); flag += 4; // m_SysParamWrapper->m_CleanCar2RealWeight = new SysParamFloat(flag, 3, cc, u8"清粉小车2实际重量", "CleanCar2RealWeight"); flag += 4; // m_SysParamWrapper->m_CleanCar2AlarmWeight = new SysParamFloat(flag, 3, cc, u8"清粉小车2报警重量_RW", "CleanCar2AlarmWeight"); flag += 4; // m_SysParamWrapper->m_LoadHandPos = new SysParamFloat(flag, 3, cc, u8"移载轨道吊装位置", "LoadHandPos"); flag += 4; // m_SysParamWrapper->m_PowderLevelLength = new SysParamFloat(flag, 3, cc, u8"料位棒长度", "PowderLevelLength"); flag += 4; // m_SysParamWrapper->m_PowderLevelValue = new SysParamFloat(flag, 3, cc, u8"料位棒当前值", "PowderLevelValue"); flag += 4; // m_SysParamWrapper->m_PrintAirRenewalPresRelValue = new SysParamFloat(flag, 3, cc, u8"打印室换气泄压值", "PrintAirRenewalPresRelValue"); flag += 4; // m_SysParamWrapper->m_RollerEdgeSearchOffset = new SysParamFloat(flag, 3, cc, u8"供粉转轴寻边偏移度数", "RollerEdgeSearchOffset"); flag += 4; // m_SysParamWrapper->m_LoadHandCrashPos = new SysParamFloat(flag, 3, cc, u8"移载吊装碰撞位_RW", "LoadHandCrashPos"); flag += 4; // // // m_SysParamWrapper->m_ArmCatpureHomeFastSpeed = new SysParamFloat(flag, 3, cc, u8"铺粉轴归原快速_RW", "ArmCatpureHomeFastSpeed"); flag += 4; // m_SysParamWrapper->m_ArmCatpureHomeSlowSpeed = new SysParamFloat(flag, 3, cc, u8"铺粉轴归原慢速_RW", "ArmCatpureHomeSlowSpeed"); flag += 4; // m_SysParamWrapper->m_LinearEncoderErrorJudgeValue = new SysParamFloat(flag, 3, cc, u8"光栅尺错误判断值_RW", "LinearEncoderErrorJudgeValue"); flag += 4; // m_SysParamWrapper->m_LinearEncoderPerLayerRealValue = new SysParamFloat(flag, 3, cc, u8"光栅尺每层实际值_R", "LinearEncoderPerLayerRealValue"); flag += 4; // m_SysParamWrapper->m_GapCompensateDiffValue = new SysParamFloat(flag, 3, cc, u8"间隙补偿差值", "GapCompensateDiffValue"); flag += 4; // m_SysParamWrapper->m_MoldTheoryDistance = new SysParamFloat(flag, 3, cc, u8"升降理论行程", "MoldTheoryDistance"); flag += 4; // m_SysParamWrapper->m_LinearActDistance = new SysParamFloat(flag, 3, cc, u8"光栅实际行程", "LinearActDistance"); flag += 4; // m_SysParamWrapper->m_LinearActPulse = new SysParamFloat(flag, 3, cc, u8"光栅实际脉冲数", "LinearActPulse"); flag += 4; // m_SysParamWrapper->m_PrintHomeSpeed = new SysParamFloat(flag, 3, cc, u8"打印轴归原点速度", "PrintHomeSpeed"); flag += 4; // m_SysParamWrapper->m_EleCylinderHomeSpeed = new SysParamFloat(flag, 3, cc, u8"电动缸归原点速度", "EleCylinderHomeSpeed"); flag += 4; // m_SysParamWrapper->m_CleanHomeSpeed = new SysParamFloat(flag, 3, cc, u8"清粉轴归原点速度", "CleanHomeSpeed"); flag += 4; // m_SysParamWrapper->m_LoadHomeSpeed = new SysParamFloat(flag, 3, cc, u8"移栽轴归原点速度", "LoadHomeSpeed"); flag += 4; // m_SysParamWrapper->m_LoadSearchEdgeTorqueAlarmValue = new SysParamFloat(flag, 3, cc, u8"移栽寻边报警扭力值", "LoadSearchEdgeTorqueAlarmValue"); flag += 4; // // // m_SysParamWrapper->m_ArmBackAcceptPos = m_SysParamWrapper->m_LoadSearchEdgeTorqueAlarmValue; // m_SysParamWrapper->m_ArmBackAcceptPos->SetInfo(u8"铺粉接粉后位", "ArmBackAcceptPos"); // // m_SysParamWrapper->m_HighPressureGasJudgmentValue = new SysParamFloat(flag, 3, cc, u8"高压气判断值", "HighPressureGasJudgmentValue"); flag += 4; // m_SysParamWrapper->m_ProtectiveGasJudgmentValue = new SysParamFloat(flag, 3, cc, u8"保护气判断值", "ProtectiveGasJudgmentValue"); flag += 4; // m_SysParamWrapper->m_UnloadDropDistance = new SysParamFloat(flag, 3, cc, u8"卸载升降轴下降距离", "UnloadDropDistance"); flag += 4; // m_SysParamWrapper->m_DataSizeMinY = new SysParamFloat(flag, 3, cc, u8"数据Y最小值", "DataSizeMinY"); flag += 4; // m_SysParamWrapper->m_DataSizeMaxY = new SysParamFloat(flag, 3, cc, u8"数据Y最大值", "DataSizeMaxY"); flag += 4; // // flag = 914; // m_SysParamWrapper->m_AllowPrintHigh = new SysParamFloat(flag, 3, cc, u8"允许打印高度", "AllowPrintHigh"); // // flag = 1158; // m_SysParamWrapper->m_AutoCaptureCoverHomeIntervalTimes = new SysParamWord(flag, 3, cc, u8"铺粉归原点触发数", "AutoCaptureCoverHomeIntervalTimes"); flag += 2; // m_SysParamWrapper->m_AutoCaptureCoverHomeCalcTimes = new SysParamWord(flag, 3, cc, u8"铺粉归原点累积次数", "AutoCaptureCoverHomeCalcTimes"); flag += 2; // m_SysParamWrapper->m_LinearEncoderCompensateTimes = new SysParamWord(flag, 3, cc, u8"光栅补偿次数", "LinearEncoderCompensateTimes"); flag += 2; // // // m_SysParamWrapper->m_EnvUIAssit.m_CleanBoxDeoxygenSetValue = new SysParamFloatUI(m_SysParamWrapper->m_CleanBoxDeoxygenSetValue); //清粉箱除氧设定值_RW // m_SysParamWrapper->m_EnvUIAssit.m_CleanBoxOxygenDownLimit = new SysParamFloatUI(m_SysParamWrapper->m_CleanBoxOxygenDownLimit); //清粉箱测氧仪下限_RW // m_SysParamWrapper->m_EnvUIAssit.m_CleanBoxOxygenUpLimit = new SysParamFloatUI(m_SysParamWrapper->m_CleanBoxOxygenUpLimit); //清粉箱测氧仪上限_RW // m_SysParamWrapper->m_EnvUIAssit.m_CleanBoxPressureReleaseValue = new SysParamFloatUI(m_SysParamWrapper->m_CleanBoxPressureReleaseValue); //清粉箱泄压值_RW // m_SysParamWrapper->m_EnvUIAssit.m_PrintCar1AlarmWeight = new SysParamFloatUI(m_SysParamWrapper->m_PrintCar1AlarmWeight); //打印小车1报警重量_RW // m_SysParamWrapper->m_EnvUIAssit.m_PrintCar2AlarmWeight = new SysParamFloatUI(m_SysParamWrapper->m_PrintCar2AlarmWeight); //打印小车2报警重量_RW // m_SysParamWrapper->m_EnvUIAssit.m_CleanCar1AlarmWeight = new SysParamFloatUI(m_SysParamWrapper->m_CleanCar1AlarmWeight); //清粉小车1报警重量_RW // m_SysParamWrapper->m_EnvUIAssit.m_CleanCar2AlarmWeight = new SysParamFloatUI(m_SysParamWrapper->m_CleanCar2AlarmWeight); //清粉小车2报警重量_RW // m_SysParamWrapper->m_EnvUIAssit.m_LoadHandPos = new SysParamFloatUI(m_SysParamWrapper->m_LoadHandPos); //移载轨道吊装位置 // m_SysParamWrapper->m_EnvUIAssit.m_PowderLevelLength = new SysParamFloatUI(m_SysParamWrapper->m_PowderLevelLength); //料位棒长度 // m_SysParamWrapper->m_EnvUIAssit.m_PowderLevelValue = new SysParamFloatUI(m_SysParamWrapper->m_PowderLevelValue); //料位棒当前值 // m_SysParamWrapper->m_EnvUIAssit.m_PrintAirRenewalPresRelValue = new SysParamFloatUI(m_SysParamWrapper->m_PrintAirRenewalPresRelValue); //打印室换气泄压值 // m_SysParamWrapper->m_EnvUIAssit.m_RollerEdgeSearchOffset = new SysParamFloatUI(m_SysParamWrapper->m_RollerEdgeSearchOffset); //供粉转轴寻边偏移度数 // m_SysParamWrapper->m_EnvUIAssit.m_LoadHandCrashPos = new SysParamFloatUI(m_SysParamWrapper->m_LoadHandCrashPos); //移载吊装碰撞位_RW // m_SysParamWrapper->m_EnvUIAssit.m_ArmCatpureHomeFastSpeed = new SysParamFloatUI(m_SysParamWrapper->m_ArmCatpureHomeFastSpeed); //铺粉轴归原快速_RW // m_SysParamWrapper->m_EnvUIAssit.m_ArmCatpureHomeSlowSpeed = new SysParamFloatUI(m_SysParamWrapper->m_ArmCatpureHomeSlowSpeed); //铺粉轴归原慢速_RW // m_SysParamWrapper->m_EnvUIAssit.m_LinearEncoderErrorJudgeValue = new SysParamFloatUI(m_SysParamWrapper->m_LinearEncoderErrorJudgeValue); //光栅尺错误判断值_RW // m_SysParamWrapper->m_EnvUIAssit.m_GapCompensateDiffValue = new SysParamFloatUI(m_SysParamWrapper->m_GapCompensateDiffValue); //间隙补偿差值 // // m_SysParamWrapper->m_EnvUIAssit.m_PrintHomeSpeed = new SysParamFloatUI(m_SysParamWrapper->m_PrintHomeSpeed); //打印轴归原点速度 // m_SysParamWrapper->m_EnvUIAssit.m_CleanHomeSpeed = new SysParamFloatUI(m_SysParamWrapper->m_CleanHomeSpeed); //清粉轴归原点速度 // m_SysParamWrapper->m_EnvUIAssit.m_LoadHomeSpeed = new SysParamFloatUI(m_SysParamWrapper->m_LoadHomeSpeed); //移栽轴归原点速度 // //m_EnvUIAssit.m_LinearEncoderPerLayerRealValue = new SysParamFloatUI(m_LinearEncoderPerLayerRealValue); //光栅尺每层实际值_R // m_SysParamWrapper->m_EnvUIAssit.m_AutoCaptureCoverHomeIntervalTimes = new SysParamWordUI(m_SysParamWrapper->m_AutoCaptureCoverHomeIntervalTimes); //铺粉归原点触发数 // m_SysParamWrapper->m_EnvUIAssit.m_HighPressureGasJudgmentValue = new SysParamFloatUI(m_SysParamWrapper->m_HighPressureGasJudgmentValue); // m_SysParamWrapper->m_EnvUIAssit.m_ProtectiveGasJudgmentValue = new SysParamFloatUI(m_SysParamWrapper->m_ProtectiveGasJudgmentValue); // // //m_EnvUIAssit.m_AutoCaptureCoverHomeCalcTimes = new SysParamWordUI(m_AutoCaptureCoverHomeCalcTimes); //铺粉归原点触发数 // flag = 0; // m_SysParamWrapper->m_HeatingCheckTime = new SysParamInt(flag, 65, cc, u8"加热信号检验时间", "HeatingCheckTime"); flag += 4; // m_SysParamWrapper->m_CylinderMotionDelayTime = new SysParamInt(flag, 65, cc, u8"气缸动作检测延时", "CylinderMotionDelayTime"); flag += 4; // m_SysParamWrapper->m_LinearEncoderCompensateTime = new SysParamInt(flag, 65, cc, u8"光栅尺补偿延时", "LinearEncoderCompensateTime"); flag += 4; // m_SysParamWrapper->m_DropPowderOpenDeleyTime = new SysParamInt(flag, 65, cc, u8"下粉阀开延时", "DropPowderOpenDeleyTime"); flag += 4; // m_SysParamWrapper->m_DropPowderCloseDelayTime = new SysParamInt(flag, 65, cc, u8"下粉阀关延时", "DropPowderCloseDelayTime"); flag += 4; // //} void HBDE1000::InitPLCCommand(vector& vecs) { S7Command* pcommand = new S7Command(S7_COMMAND_READ_INFO, READ_INFO_ITEM_COUNT); TS7DataItem* items = pcommand->getDataItems(); int flag = 0; items[flag].Area = S7AreaDB; items[flag].DBNumber = 1; items[flag].WordLen = S7WLByte; items[flag].Start = 0; items[flag].Amount = 98; items[flag].pdata = new unsigned char[98]; flag++; items[flag].Area = S7AreaDB; items[flag].DBNumber = 4; items[flag].WordLen = S7WLByte; items[flag].Start = 249; items[flag].Amount = 3; items[flag].pdata = new unsigned char[3]; flag++; items[flag].Area = S7AreaDB; items[flag].DBNumber = 14; items[flag].WordLen = S7WLByte; items[flag].Start = 0; items[flag].Amount = 43; items[flag].pdata = new unsigned char[43]; flag++; items[flag].Area = S7AreaDB; items[flag].DBNumber = 68; items[flag].WordLen = S7WLByte; items[flag].Start = 0; items[flag].Amount = 3; items[flag].pdata = new unsigned char[3]; flag++; items[flag].Area = S7AreaDB; items[flag].DBNumber = 65; items[flag].WordLen = S7WLByte; items[flag].Start = 0; items[flag].Amount = 20; items[flag].pdata = new unsigned char[20]; flag++; items[flag].Area = S7AreaDB; items[flag].DBNumber = 3; items[flag].WordLen = S7WLByte; items[flag].Start = 1158; items[flag].Amount = 10; items[flag].pdata = new unsigned char[10]; flag++; items[flag].Area = S7AreaDB; items[flag].DBNumber = 3; items[flag].WordLen = S7WLByte; items[flag].Start = 874; items[flag].Amount = 72; items[flag].pdata = new unsigned char[72]; pcommand->m_Ref = this; pcommand->m_Fun = &HBDE1000::ProcReadPLC; pcommand->isNeedDel = false; vecs.push_back(pcommand); S7Command* pdata = new S7Command(S7_COMMAND_READ_INFO, READ_DATA_ITEM_COUNT); TS7DataItem* dataItems = pdata->getDataItems(); dataItems[0].Area = S7AreaDB; dataItems[0].DBNumber = 3; dataItems[0].WordLen = S7WLByte; dataItems[0].Start = 0; dataItems[0].Amount = 874; dataItems[0].pdata = new unsigned char[874]; pdata->m_Ref = this; pdata->m_Fun = &HBDE1000::ProcReadPLCData; pdata->isNeedDel = false; vecs.push_back(pdata); } void HBDE1000::ProcReadPLC(void* pobject, Command* pcommand) { S7Command* s7Command = (S7Command*)pcommand; TS7DataItem* pdataItems = s7Command->getDataItems(); int itemcount = s7Command->getItemCount(); if (pobject == NULL || itemcount != READ_INFO_ITEM_COUNT)return; HBDE1000* machine = (HBDE1000*)pobject; TS7DataItem pIOAndStatus = pdataItems[0]; TS7DataItem pAxisState = pdataItems[1]; TS7DataItem pAxisCtrl = pdataItems[2]; TS7DataItem pPersistState = pdataItems[3]; TS7DataItem pTimeSet = pdataItems[4]; TS7DataItem pCapture = pdataItems[5]; TS7DataItem pDB3Ext = pdataItems[6]; CoreCommunication* cc = (CoreCommunication*)machine->m_PLC; // for (int i = 0; i < itemcount; ++i) { // WriteData* data = new WriteData(); // data->dataType = WRITETYPE(i); // data->strValue = (char*)pdataItems[i].pdata; // data->result = true; // for (auto& client : machine->m_clientUser) { // client->PushMsg(data); // } // // } //} std::unique_lock lock(cc->m_ValueMtx); if (pIOAndStatus.Result == 0) { unsigned char* arr = (unsigned char*)pIOAndStatus.pdata; machine->m_IOCfgWrapper->Update(arr); bitset<8> arr52(arr[52]); machine->m_SignalStateWrapper->m_PLCKeepAlive->SetReatimeValue(arr52[0]); machine->m_SignalStateWrapper->m_PCKeepAlice->SetReatimeValue(arr52[1]); machine->m_SignalStateWrapper->m_DeviceStandby->SetReatimeValue(arr52[2]); machine->m_SignalStateWrapper->m_DevicePrinting->SetReatimeValue(arr52[3]); machine->m_SignalStateWrapper->m_DeviceManualDebug->SetReatimeValue(arr52[4]); machine->m_SignalStateWrapper->m_DeviceAutoRuning->SetReatimeValue(arr52[5]); machine->m_SignalStateWrapper->m_TouchPanelCtrling->SetReatimeValue(arr52[6]); machine->m_SignalStateWrapper->m_MotionDebug->SetReatimeValue(arr52[7]); machine->m_SignalStateWrapper->m_CylinderExceptionReset->SetReatimeValue((arr[53] & 0x1) > 0 ? true : false); bitset<8> arr55(arr[55]); machine->m_SignalStateWrapper->m_PLCConnectAlarm->SetReatimeValue(arr55[6]); machine->m_SignalStateWrapper->m_SystemStopAlarm->SetReatimeValue(arr55[7]); bitset<8> arr56(arr[56]); machine->m_SignalStateWrapper->m_HighPressureLackAlarm->SetReatimeValue(arr56[0]); machine->m_SignalStateWrapper->m_ProtectGasLackAlarm->SetReatimeValue(arr56[1]); machine->m_SignalStateWrapper->m_PowerDownAlarm->SetReatimeValue(arr56[2]); machine->m_SignalStateWrapper->m_UpLaserAirSwitchAlarm->SetReatimeValue(arr56[3]); machine->m_SignalStateWrapper->m_UpServoAirSwitchAlarm->SetReatimeValue(arr56[4]); machine->m_SignalStateWrapper->m_BusAirSwitchAlarm->SetReatimeValue(arr56[5]); machine->m_SignalStateWrapper->m_ExtDevicePowerAirSwitchAlarm->SetReatimeValue(arr56[6]); machine->m_SignalStateWrapper->m_HeatingPowerAirSwitchAlarm->SetReatimeValue(arr56[7]); bitset<8> arr57(arr[57]); machine->m_SignalStateWrapper->m_LaserPowerAirSwitchAlarm->SetReatimeValue(arr57[0]); machine->m_SignalStateWrapper->m_ServoPowerAirSwitchAlarm->SetReatimeValue(arr57[1]); machine->m_SignalStateWrapper->m_Laser1Alarm->SetReatimeValue(arr57[2]); machine->m_SignalStateWrapper->m_Laser2Alarm->SetReatimeValue(arr57[3]); machine->m_SignalStateWrapper->m_Laser3Alarm->SetReatimeValue(arr57[4]); machine->m_SignalStateWrapper->m_Laser4Alarm->SetReatimeValue(arr57[5]); machine->m_SignalStateWrapper->m_HeatingAlarm->SetReatimeValue(arr57[6]); machine->m_SignalStateWrapper->m_ScannerPowerExceptionAlarm->SetReatimeValue(arr57[7]); bitset<8> arr58(arr[58]); machine->m_SignalStateWrapper->m_PrintStorageCar1JarFullWarn->SetReatimeValue(arr58[0]); machine->m_SignalStateWrapper->m_PrintStorageCar1DisconnectWarn->SetReatimeValue(arr58[1]); machine->m_SignalStateWrapper->m_CleanStorageCar1JarFullWarn->SetReatimeValue(arr58[2]); machine->m_SignalStateWrapper->m_CleanStorageCar1DisconnectWarn->SetReatimeValue(arr58[3]); machine->m_SignalStateWrapper->m_MoldMainUpLimitActive->SetReatimeValue(arr58[4]); machine->m_SignalStateWrapper->m_MoldMainDownLimitActive->SetReatimeValue(arr58[5]); machine->m_SignalStateWrapper->m_UpsAlarm->SetReatimeValue(arr58[6]); machine->m_SignalStateWrapper->m_Laser5Alarm->SetReatimeValue(arr58[7]); bitset<8> arr59(arr[59]); machine->m_SignalStateWrapper->m_Laser6Alarm->SetReatimeValue(arr59[0]); machine->m_SignalStateWrapper->m_Laser7Alarm->SetReatimeValue(arr59[1]); machine->m_SignalStateWrapper->m_Laser8Alarm->SetReatimeValue(arr59[2]); machine->m_SignalStateWrapper->m_PrintTrackDisableWarn->SetReatimeValue(arr59[3]); bitset<8> arr60(arr[60]); machine->m_SignalStateWrapper->m_CylinderLinerSealReleaseValveException->SetReatimeValue(arr60[3]); bitset<8> arr61(arr[61]); machine->m_SignalStateWrapper->m_CleanTrackPosDisableAlarm->SetReatimeValue(arr61[4]); machine->m_SignalStateWrapper->m_CleanLiftStopAlarm->SetReatimeValue(arr61[5]); machine->m_SignalStateWrapper->m_LoadHandPosSensorDiable->SetReatimeValue(arr61[6]); machine->m_SignalStateWrapper->m_MainPowerLossCheckAlarm->SetReatimeValue(arr61[7]); bitset<8> arr62(arr[62]); machine->m_SignalStateWrapper->m_PrintCabinLockDisableAlarm->SetReatimeValue(arr62[0]); machine->m_SignalStateWrapper->m_CleanBoxFoldUpException->SetReatimeValue(arr62[1]); machine->m_SignalStateWrapper->m_CleanBoxFoldDownException->SetReatimeValue(arr62[2]); machine->m_SignalStateWrapper->m_CylinderHandPlatformOpenAlarm->SetReatimeValue(arr62[3]); machine->m_SignalStateWrapper->m_CylinderHandDoorOpenAlarm->SetReatimeValue(arr62[4]); machine->m_SignalStateWrapper->m_SecurityCarpetTriggered->SetReatimeValue(arr62[5]); machine->m_SignalStateWrapper->m_RailNotInOpenOrClosePos->SetReatimeValue(arr62[6]); machine->m_SignalStateWrapper->m_HandPlatformCloseAlarm->SetReatimeValue(arr62[7]); bitset<8> arr64(arr[64]); machine->m_SignalStateWrapper->m_ArmFrontLimit->SetReatimeValue(arr64[3]); machine->m_SignalStateWrapper->m_ArmBackLimit->SetReatimeValue(arr64[4]); machine->m_SignalStateWrapper->m_LoadAxisLeftLimit->SetReatimeValue(arr64[5]); machine->m_SignalStateWrapper->m_LoadAxisRightLimit->SetReatimeValue(arr64[6]); bitset<8> arr65(arr[65]); machine->m_SignalStateWrapper->m_SupplyHomeIndexDisableAlarm->SetReatimeValue(arr65[7]); bitset<8> arr66(arr[66]); machine->m_SignalStateWrapper->m_PrintPressureOverLimitAlarm->SetReatimeValue(arr66[4]); machine->m_SignalStateWrapper->m_TotalWaterCoolerAlarm->SetReatimeValue(arr66[6]); machine->m_SignalStateWrapper->m_MoldTorqueAlarm->SetReatimeValue(arr66[7]); bitset<8> arr67(arr[67]); machine->m_SignalStateWrapper->m_LoadTorqueAlarm->SetReatimeValue(arr67[3]); machine->m_SignalStateWrapper->m_ArmTorqueAlarm->SetReatimeValue(arr67[4]); machine->m_SignalStateWrapper->m_SupplyTorqueAlarm->SetReatimeValue(arr67[5]); machine->m_SignalStateWrapper->m_GratingRulerFail->SetReatimeValue(arr67[6]); machine->m_SignalStateWrapper->m_PrintMainOverSoftUpLimit->SetReatimeValue(arr67[7]); bitset<8> arr68(arr[68]); machine->m_SignalStateWrapper->m_PrintMainOverSoftDownLimit->SetReatimeValue(arr68[0]); machine->m_SignalStateWrapper->m_LoadAxisOverSoftLeftLimit->SetReatimeValue(arr68[3]); machine->m_SignalStateWrapper->m_LoadAxisOverSoftRightLimit->SetReatimeValue(arr68[4]); machine->m_SignalStateWrapper->m_ArmOverSoftFrontLimit->SetReatimeValue(arr68[5]); machine->m_SignalStateWrapper->m_ArmOverSoftBackLimit->SetReatimeValue(arr68[6]); machine->m_SignalStateWrapper->m_PrintStorageCar2JarFullWarn->SetReatimeValue(arr68[7]); bitset<8> arr69(arr[69]); machine->m_SignalStateWrapper->m_PrintStorageCar2DisconnectWarn->SetReatimeValue(arr69[0]); machine->m_SignalStateWrapper->m_CleanStorageCar2JarFullWarn->SetReatimeValue(arr69[1]); machine->m_SignalStateWrapper->m_CleanStorageCar2DisconnectWarn->SetReatimeValue(arr69[2]); machine->m_SignalStateWrapper->m_CoverBaffleNotInFrontAcceptPos->SetReatimeValue(arr69[3]); machine->m_SignalStateWrapper->m_CoverBaffleNotInDropPos->SetReatimeValue(arr69[4]); machine->m_SignalStateWrapper->m_ArmMoveBackAcceptPosException->SetReatimeValue(arr69[5]); machine->m_SignalStateWrapper->m_UpServiceDoorOpenWarn->SetReatimeValue(arr69[6]); machine->m_SignalStateWrapper->m_DownServiceDoorOpenWarn->SetReatimeValue(arr69[7]); bitset<8> arr70(arr[70]); machine->m_SignalStateWrapper->m_LoadAxisManualAlarmSignal->SetReatimeValue(arr70[1]); machine->m_SignalStateWrapper->m_PrintMainServoAlarmSignal->SetReatimeValue(arr70[2]); machine->m_SignalStateWrapper->m_LoadAxisServoAlarmSignal->SetReatimeValue(arr70[3]); machine->m_SignalStateWrapper->m_ArmServoAlarmSignal->SetReatimeValue(arr70[4]); machine->m_SignalStateWrapper->m_SupplyServoAlarmSignal->SetReatimeValue(arr70[5]); bitset<8> arr71(arr[71]); machine->m_SignalStateWrapper->m_CoverReachAcceptPowderAlarmSignal->SetReatimeValue(arr71[2]); machine->m_SignalStateWrapper->m_CoverReachDropPowderAlarmSignal->SetReatimeValue(arr71[3]); machine->m_SignalStateWrapper->m_LinearEncoderCheckAlarmSignal->SetReatimeValue(arr71[5]); machine->m_SignalStateWrapper->m_PrintMainSoftStopTrigger->SetReatimeValue(arr71[6]); bitset<8> arr72(arr[72]); machine->m_SignalStateWrapper->m_LoadAxisSoftStopTrigger->SetReatimeValue(arr72[0]); machine->m_SignalStateWrapper->m_CoverSoftStopTrigger->SetReatimeValue(arr72[1]); machine->m_SignalStateWrapper->m_CoverHomeException->SetReatimeValue(arr72[2]); machine->m_SignalStateWrapper->m_CylinderSealInflationFailureAlarm->SetReatimeValue(arr72[3]); machine->m_SignalStateWrapper->m_CylinderSealInflationHighPressureAlarm->SetReatimeValue(arr72[4]); machine->m_SignalStateWrapper->m_CylinderSealLeakageWarn->SetReatimeValue(arr72[5]); machine->m_SignalStateWrapper->m_SealPressureExceptionWhenPrint->SetReatimeValue(arr72[6]); machine->m_SignalStateWrapper->m_CylinderState->SetReatimeValue(S7WORDDATA(arr[79], arr[78]).wValue); bitset<8> arr80(arr[80]); machine->m_SignalStateWrapper->m_CylinderReachPrintTriger->SetReatimeValue(arr80[0]); machine->m_SignalStateWrapper->m_CylinderReachPrintRun->SetReatimeValue(arr80[1]); machine->m_SignalStateWrapper->m_CylinderReachPrintFinished->SetReatimeValue(arr80[2]); machine->m_SignalStateWrapper->m_CylinderPrintLoadTriger->SetReatimeValue(arr80[3]); machine->m_SignalStateWrapper->m_CylinderPrintLoadRun->SetReatimeValue(arr80[4]); machine->m_SignalStateWrapper->m_CylinderPrintLoadFinished->SetReatimeValue(arr80[5]); machine->m_SignalStateWrapper->m_CylinderPrintUnloadTriger->SetReatimeValue(arr80[6]); machine->m_SignalStateWrapper->m_CylinderPrintUnloadRun->SetReatimeValue(arr80[7]); bitset<8> arr81(arr[81]); machine->m_SignalStateWrapper->m_CylinderPrintUnloadFinished->SetReatimeValue(arr81[0]); machine->m_SignalStateWrapper->m_CylinderReachCleanTriger->SetReatimeValue(arr81[7]); bitset<8> arr82(arr[82]); machine->m_SignalStateWrapper->m_CylinderReachCleanRun->SetReatimeValue(arr82[0]); machine->m_SignalStateWrapper->m_CylinderReachCleanFinished->SetReatimeValue(arr82[1]); machine->m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger->SetReatimeValue(arr82[2]); machine->m_SignalStateWrapper->m_CylinderConnectCleanBoxRun->SetReatimeValue(arr82[3]); machine->m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->SetReatimeValue(arr82[4]); machine->m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger->SetReatimeValue(arr82[5]); machine->m_SignalStateWrapper->m_CylinderDisconnectCleanBoxRun->SetReatimeValue(arr82[6]); machine->m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->SetReatimeValue(arr82[7]); bitset<8> arr83(arr[83]); machine->m_SignalStateWrapper->m_CoverTriger->SetReatimeValue(arr83[0]); machine->m_SignalStateWrapper->m_IsCovering->SetReatimeValue(arr83[1]); machine->m_SignalStateWrapper->m_IsCoverFinishedCanPrint->SetReatimeValue(arr83[2]); machine->m_SignalStateWrapper->m_IsCoverDebug->SetReatimeValue(arr83[3]); machine->m_SignalStateWrapper->m_IsFirstCover->SetReatimeValue(arr83[4]); machine->m_SignalStateWrapper->m_PrintDeoxygenTriger->SetReatimeValue(arr83[5]); machine->m_SignalStateWrapper->m_PrintDeoxygenRun->SetReatimeValue(arr83[6]); machine->m_SignalStateWrapper->m_PrintDeoxygenFinished->SetReatimeValue(arr83[7]); bitset<8> arr84(arr[84]); machine->m_SignalStateWrapper->m_StorgeCarDeoxygenTriger->SetReatimeValue(arr84[3]); machine->m_SignalStateWrapper->m_StorgeCarDeoxygenRun->SetReatimeValue(arr84[4]); machine->m_SignalStateWrapper->m_StorgeCarDeoxygenFinished->SetReatimeValue(arr84[5]); machine->m_SignalStateWrapper->m_CleanBoxVacuumTriger->SetReatimeValue(arr84[6]); bitset<8> arr85(arr[85]); machine->m_SignalStateWrapper->m_RasterJudgeOK->SetReatimeValue(arr85[3]); machine->m_SignalStateWrapper->m_RasterJudgeNG->SetReatimeValue(arr85[4]); machine->m_SignalStateWrapper->m_CylinderReachPrintEnable->SetReatimeValue(arr85[5]); machine->m_SignalStateWrapper->m_CylinderPrintLoadEnable->SetReatimeValue(arr85[6]); machine->m_SignalStateWrapper->m_CylinderPrintUnloadEnable->SetReatimeValue(arr85[7]); bitset<8> arr86(arr[86]); machine->m_SignalStateWrapper->m_CylinderReachCleanEnable->SetReatimeValue(arr86[2]); machine->m_SignalStateWrapper->m_CylinderConnectCleanBoxEnable->SetReatimeValue(arr86[3]); machine->m_SignalStateWrapper->m_CylinderDisconnectCleanBoxEnable->SetReatimeValue(arr86[4]); machine->m_SignalStateWrapper->m_CoverEnable->SetReatimeValue(arr86[5]); bitset<8> arr88(arr[88]); machine->m_SignalStateWrapper->m_PrintTorqueUpInsideLimit->SetReatimeValue(arr88[0]); machine->m_SignalStateWrapper->m_ArmNotUponBasePlatform->SetReatimeValue(arr88[1]); machine->m_SignalStateWrapper->m_PrintMoldPosInsideUpSoftLimit->SetReatimeValue(arr88[2]); machine->m_SignalStateWrapper->m_PrintInsideUpLimit->SetReatimeValue(arr88[3]); machine->m_SignalStateWrapper->m_PrintTorqueDownInsideLimit->SetReatimeValue(arr88[4]); machine->m_SignalStateWrapper->m_PrintAxisPosInsideDownSoftLimit->SetReatimeValue(arr88[5]); machine->m_SignalStateWrapper->m_PrintInsideDownLimit->SetReatimeValue(arr88[6]); machine->m_SignalStateWrapper->m_PrintMainServoNoAlarm->SetReatimeValue(arr88[7]); bitset<8> arr89(arr[89]); machine->m_SignalStateWrapper->m_PrintMoldInPrintPos->SetReatimeValue(arr89[0]); machine->m_SignalStateWrapper->m_PrintMoldInCleanPos->SetReatimeValue(arr89[1]); machine->m_SignalStateWrapper->m_PrintMoldInHandPos->SetReatimeValue(arr89[2]); machine->m_SignalStateWrapper->m_MoldUpDownServiceDoorCloseStatue->SetReatimeValue(arr89[3]); bitset<8> arr92(arr[92]); machine->m_SignalStateWrapper->m_PrintJackupInSafePos->SetReatimeValue(arr92[0]); machine->m_SignalStateWrapper->m_LoadTorqueInsideLimit->SetReatimeValue(arr92[1]); machine->m_SignalStateWrapper->m_LoadPosInsideLeftSoftLimit->SetReatimeValue(arr92[2]); machine->m_SignalStateWrapper->m_LoadPosInsideRightSoftLimit->SetReatimeValue(arr92[3]); machine->m_SignalStateWrapper->m_CylinderSealNoInflationStatue->SetReatimeValue(arr92[4]); machine->m_SignalStateWrapper->m_LoadUpDownServiceDoorCloseStatue->SetReatimeValue(arr92[5]); bitset<8> arr93(arr[93]); machine->m_SignalStateWrapper->m_LoadLeftNotInsideLimit->SetReatimeValue(arr93[2]); machine->m_SignalStateWrapper->m_LoadRightNotInsideLimit->SetReatimeValue(arr93[3]); machine->m_SignalStateWrapper->m_LoadServoNoAlarm->SetReatimeValue(arr93[4]); bitset<8> arr94(arr[94]); machine->m_SignalStateWrapper->m_PrintUpDownPosBelowPlatform->SetReatimeValue(arr94[0]); machine->m_SignalStateWrapper->m_ArmTorqueInsideLimit->SetReatimeValue(arr94[1]); machine->m_SignalStateWrapper->m_ArmPosInsideSoftFrontLimit->SetReatimeValue(arr94[2]); machine->m_SignalStateWrapper->m_ArmPosInsideSoftBackLimit->SetReatimeValue(arr94[3]); machine->m_SignalStateWrapper->m_ArmPosInsideFrontLimit->SetReatimeValue(arr94[4]); machine->m_SignalStateWrapper->m_ArmPosInsideBackLimit->SetReatimeValue(arr94[5]); machine->m_SignalStateWrapper->m_ArmServoNoAlarm->SetReatimeValue(arr94[6]); bitset<8> arr96(arr[96]); machine->m_SignalStateWrapper->m_CylinderMoveHandPosEnable->SetReatimeValue(arr96[2]); machine->m_SignalStateWrapper->m_CylinderMoveHandPos->SetReatimeValue(arr96[3]); machine->m_SignalStateWrapper->m_CylinderMovingHandPos->SetReatimeValue(arr96[4]); machine->m_SignalStateWrapper->m_CylinderMovedHandPos->SetReatimeValue(arr96[5]); machine->m_SignalStateWrapper->m_PrintAirRenewalEnable->SetReatimeValue(arr96[6]); machine->m_SignalStateWrapper->m_PrintAirRenewalTrigger->SetReatimeValue(arr96[7]); bitset<8> arr97(arr[97]); machine->m_SignalStateWrapper->m_AllowRiseWindSpeed->SetReatimeValue(arr97[0]); machine->m_SignalStateWrapper->m_ManualCoverTest->SetReatimeValue(arr97[1]); machine->m_SignalStateWrapper->m_RollerEdgeSearching->SetReatimeValue(arr97[2]); machine->m_SignalStateWrapper->m_RollerEdgeSearchSuccess->SetReatimeValue(arr97[3]); machine->m_SignalStateWrapper->m_RollerEdgeSearchFaild->SetReatimeValue(arr97[4]); } if (pAxisState.Result == 0) { unsigned char* arr = (unsigned char*)pAxisState.pdata; bitset<8> arr249(arr[0]); machine->m_SignalStateWrapper->m_IsInPrintCylinderSeparatePos->SetReatimeValue(arr249[4]); //打印缸体分离位 machine->m_SignalStateWrapper->m_IsInPrintPlatformBottomPos->SetReatimeValue(arr249[7]); //打印基板底座面 bitset<8> arr250(arr[1]); machine->m_SignalStateWrapper->m_IsInPrintPlatformFlatPos->SetReatimeValue(arr250[0]); //打印基板平面 machine->m_SignalStateWrapper->m_IsInLoadPrintPos->SetReatimeValue(arr250[5]); //移载打印位 machine->m_SignalStateWrapper->m_IsInLoadCleanPos->SetReatimeValue(arr250[6]); //移载清粉位 bitset<8> arr251(arr[2]); machine->m_SignalStateWrapper->m_IsInDropPowderPos->SetReatimeValue(arr251[0]); //铺粉下粉位 machine->m_SignalStateWrapper->m_IsInAcceptPowderPos->SetReatimeValue(arr251[1]); //铺粉接粉位 } if (pAxisCtrl.Result == 0) { unsigned char* arr = (unsigned char*)pAxisCtrl.pdata; machine->m_Axis->m_Mold->GetState()->Update(arr); machine->m_Axis->m_MoldSlave->GetState()->Update(arr + 6); machine->m_Axis->m_Clean->GetState()->Update(arr + 12); machine->m_Axis->m_Ele->GetState()->Update(arr + 12); machine->m_Axis->m_CleanSlave->GetState()->Update(arr + 18); machine->m_Axis->m_EleSlave->GetState()->Update(arr + 18); machine->m_Axis->m_Load->GetState()->Update(arr + 24); machine->m_Axis->m_Arm->GetState()->Update(arr + 28); machine->m_Axis->m_Supply->GetState()->Update(arr + 32); bitset<8> arr41(arr[41]); machine->m_AxisRecordWrapper->m_DisableMoldTorqueCheck->SetReatimeValue(arr41[6]); bitset<8> arr42(arr[42]); machine->m_AxisRecordWrapper->m_DisableLoadTorqueCheck->SetReatimeValue(arr42[0]); machine->m_AxisRecordWrapper->m_DisableArmTorqueCheck->SetReatimeValue(arr42[1]); machine->m_AxisRecordWrapper->m_DisableSupplyTorqueCheck->SetReatimeValue(arr42[2]); machine->m_AxisRecordWrapper->m_LoadHandPosRecord->SetReatimeValue(arr42[3]); machine->m_AxisRecordWrapper->m_LoadHandCrashPosRecord->SetReatimeValue(arr42[4]); machine->m_AxisRecordWrapper->m_ArmBackAcceptPosRecord->SetReatimeValue(arr42[5]); } if (pPersistState.Result == 0) { unsigned char* arr = (unsigned char*)pPersistState.pdata; bitset<8> arr0(arr[0]); machine->m_SignalStateWrapper->m_UseSupplySearchEdge->SetReatimeValue(arr0[1]); machine->m_SignalStateWrapper->m_SheildLinearEncoder->SetReatimeValue(arr0[5]); bitset<8> arr1(arr[1]); machine->m_SignalStateWrapper->m_SheilServoEmptyOpen->SetReatimeValue(arr1[0]); //屏蔽伺服空开 machine->m_SignalStateWrapper->m_SheildHighPressure->SetReatimeValue(arr1[2]); //屏蔽高压气 machine->m_SignalStateWrapper->m_UnuseCoverReachSensor->SetReatimeValue(arr1[3]); //不使用铺粉轴到位感应器 machine->m_SignalStateWrapper->m_UseCoverBaffleSensor->SetReatimeValue(arr1[4]); machine->m_SignalStateWrapper->m_UseArmCaptureHome->SetReatimeValue(arr1[5]); machine->m_SignalStateWrapper->m_LinearEncoderOppDirection->SetReatimeValue(arr1[7]); bitset<8> arr2(arr[2]); machine->m_SignalStateWrapper->m_CoverV2UseCintinueMode->SetReatimeValue(arr2[0]); machine->m_SignalStateWrapper->m_UseCoverShiftSpeed->SetReatimeValue(arr2[1]); } if (pTimeSet.Result == 0) { unsigned char* arr = (unsigned char*)pTimeSet.pdata; int flag = 0; machine->m_SysParamWrapper->m_HeatingCheckTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); flag += 4; machine->m_SysParamWrapper->m_CylinderMotionDelayTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); flag += 4; machine->m_SysParamWrapper->m_LinearEncoderCompensateTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); flag += 4; machine->m_SysParamWrapper->m_DropPowderOpenDeleyTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); flag += 4; machine->m_SysParamWrapper->m_DropPowderCloseDelayTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); } if (pCapture.Result == 0) { unsigned char* arr = (unsigned char*)pCapture.pdata; int flag = 0; machine->m_SysParamWrapper->m_AutoCaptureCoverHomeIntervalTimes->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag += 2; machine->m_SysParamWrapper->m_AutoCaptureCoverHomeCalcTimes->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag += 2; machine->m_SysParamWrapper->m_LinearEncoderCompensateTimes->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag += 2; machine->m_SysParamWrapper->m_LaserCount->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag += 2; machine->m_SysParamWrapper->m_SealPressureHoldingAlarmTime->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); } if (pDB3Ext.Result == 0) { unsigned char* arr = (unsigned char*)pDB3Ext.pdata; int flagtemp = 874; int flag = 874- flagtemp; machine->m_SysParamWrapper->m_ArmBackAcceptPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 878 - flagtemp; machine->m_SysParamWrapper->m_HighPressureGasJudgmentValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 882 - flagtemp; machine->m_SysParamWrapper->m_ProtectiveGasJudgmentValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 890 - flagtemp; machine->m_SysParamWrapper->m_DataSizeMinY->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 894 - flagtemp; machine->m_SysParamWrapper->m_DataSizeMaxY->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 898 - flagtemp; machine->m_SysParamWrapper->m_SealPressure->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 902 - flagtemp; machine->m_SysParamWrapper->m_SealPressureReleaseValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 906 - flagtemp; machine->m_SysParamWrapper->m_SealInflatableUpLimitValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 910 - flagtemp; machine->m_SysParamWrapper->m_SealInflatableDownLimitValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 914 - flagtemp; machine->m_SysParamWrapper->m_Oxygen1CompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 918 - flagtemp; machine->m_SysParamWrapper->m_Oxygen2CompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 922 - flagtemp; machine->m_SysParamWrapper->m_PowderStickCompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 926 - flagtemp; machine->m_SysParamWrapper->m_PrintCabinPressureCompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 930 - flagtemp; machine->m_SysParamWrapper->m_SealPressureCompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 934 - flagtemp; machine->m_SysParamWrapper->m_HighPressureGasCompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 938 - flagtemp; machine->m_SysParamWrapper->m_ProtectiveGasCompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 942 - flagtemp; machine->m_SysParamWrapper->m_AllowPrintHigh->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); } } void HBDE1000::ProcReadPLCData(void* pobject, Command* pcommand) { S7Command* s7Command = (S7Command*)pcommand; TS7DataItem* pdataItems = s7Command->getDataItems(); int itemcount = s7Command->getItemCount(); if (pobject == NULL || itemcount != READ_DATA_ITEM_COUNT)return; HBDE1000* machine = (HBDE1000*)pobject; CoreCommunication* cc = (CoreCommunication*)machine->m_PLC; TS7DataItem pSysData = pdataItems[0]; // for (int i = 0; i < itemcount; ++i) { // WriteData* data = new WriteData(); // data->dataType = WRITETYPE(i + 100); // data->strValue = (char*)pdataItems[i].pdata; // data->result = true; // for (auto& client : machine->m_clientUser) { // client->PushMsg(data); // } // // } //} std::unique_lock lock(cc->m_ValueMtx); if (pSysData.Result == 0) { unsigned char* arr = (unsigned char*)pSysData.pdata; int flag = 0; machine->m_SysParamWrapper->m_PrintOxygen1->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 4; machine->m_SysParamWrapper->m_PrintOxygen2->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 12; machine->m_SysParamWrapper->m_HighPressure->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 16; machine->m_SysParamWrapper->m_ProtectGasPressure->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 20; machine->m_SysParamWrapper->m_PrintPressure->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 24; machine->m_SysParamWrapper->m_PrintOxygen1Max->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 28; machine->m_SysParamWrapper->m_PrintOxygen1Min->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 32; machine->m_SysParamWrapper->m_PrintOxygen2Max->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 36; machine->m_SysParamWrapper->m_PrintOxygen2Min->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 48; machine->m_SysParamWrapper->m_HighPressureMax->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 52; machine->m_SysParamWrapper->m_HighPressureMin->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 56; machine->m_SysParamWrapper->m_ProtectGasPressureMax->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 60; machine->m_SysParamWrapper->m_ProtectGasPressureMin->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 64; machine->m_SysParamWrapper->m_PrintPressureMax->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 68; machine->m_SysParamWrapper->m_PrintPressureMin->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 76; machine->m_SysParamWrapper->m_SupplyPowderGridPerCycle->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 80; machine->m_SysParamWrapper->m_SupplyAxisAnglePerGrid->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 84; machine->m_Axis->m_Mold->GetState()->UpdatePosAndLoad(arr + flag); g_SystemInfo->LockInfo(); g_SystemInfo->m_MoldMainPos = machine->m_Axis->m_Mold->GetState()->GetShowPos(); g_SystemInfo->UnlockInfo(); flag = 92; machine->m_Axis->m_MoldSlave->GetState()->UpdatePosAndLoad(arr + flag); flag = 100; machine->m_Axis->m_Mold->GetConfig()->Update(arr + flag); flag = 120; machine->m_Axis->m_MoldSlave->GetConfig()->Update(arr + flag); flag = 140; machine->m_Axis->m_Ele->GetState()->UpdatePosAndLoad(arr + flag); flag = 148; machine->m_Axis->m_EleSlave->GetState()->UpdatePosAndLoad(arr + flag); flag = 156; machine->m_Axis->m_Ele->GetConfig()->Update(arr + flag); flag = 176; machine->m_Axis->m_EleSlave->GetConfig()->Update(arr + flag); flag = 196; machine->m_Axis->m_Load->GetState()->UpdatePosAndLoad(arr + flag); flag = 204; machine->m_Axis->m_Load->GetConfig()->Update(arr + flag); flag = 224; machine->m_Axis->m_Arm->GetState()->UpdatePosAndLoad(arr + flag); g_SystemInfo->LockInfo(); g_SystemInfo->m_ArmPos = machine->m_Axis->m_Arm->GetState()->GetShowPos(); g_SystemInfo->UnlockInfo(); flag = 232; machine->m_Axis->m_Arm->GetConfig()->Update(arr + flag); flag = 252; machine->m_Axis->m_Supply->GetState()->UpdatePosAndLoad(arr + flag); flag = 260; machine->m_Axis->m_Supply->GetConfig()->Update(arr + flag); std::unique_lock lock(machine->m_SysParamWrapper->mtx); flag = 280; machine->m_SysParamWrapper->m_PrintUpDownSafePos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 296; machine->m_SysParamWrapper->m_PrintJackupPlatformBottomPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 300; machine->m_SysParamWrapper->m_PrintJackupPlatformPlanePos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 304; machine->m_SysParamWrapper->m_PrintPlatformHight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 308; machine->m_SysParamWrapper->m_MoldUpLimitPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 312; machine->m_SysParamWrapper->m_MoldDownLimitPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 316; machine->m_SysParamWrapper->m_EleCylinderPrintJackupPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 320; machine->m_SysParamWrapper->m_EleCylinderCleanJackupPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 324; machine->m_SysParamWrapper->m_EleCylinderBottomFitPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 336; machine->m_SysParamWrapper->m_EleCylinderSoftUpLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 340; machine->m_SysParamWrapper->m_EleCylinderSoftDownLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 344; machine->m_SysParamWrapper->m_LoadAxisTrackPrintPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 348; machine->m_SysParamWrapper->m_LoadAxisTrackCleanPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 352; machine->m_SysParamWrapper->m_LoadAxisTrackWaitPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 356; machine->m_SysParamWrapper->m_LoadAxisLeftLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 360; machine->m_SysParamWrapper->m_LoadAxisRightLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 364; machine->m_SysParamWrapper->m_ArmPowderAcceptPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 368; machine->m_SysParamWrapper->m_ArmPowderDropFrontPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); machine->m_CoverCfg->Lock(); machine->m_CoverCfg->m_cover_distance = abs(machine->m_SysParamWrapper->m_ArmPowderAcceptPos->GetValue() - machine->m_SysParamWrapper->m_ArmPowderDropFrontPos->GetValue()); machine->m_CoverCfg->UnLock(); flag = 372; machine->m_SysParamWrapper->m_ArmPrintFrontLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 376; machine->m_SysParamWrapper->m_ArmPrintBackLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 380; machine->m_SysParamWrapper->m_ArmFrontLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 384; machine->m_SysParamWrapper->m_ArmBackLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 388; machine->m_SysParamWrapper->m_MoldAbsTestPos->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag = 390; machine->m_SysParamWrapper->m_EleCylinderAbsTestPos->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag = 392; machine->m_SysParamWrapper->m_LoadAxisAbsTestPos->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag = 394; machine->m_SysParamWrapper->m_ArmAbsTestPos->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag = 396; machine->m_SysParamWrapper->m_LineEncMoveValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 400; machine->m_SysParamWrapper->m_LineEncPulseEqu->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 404; machine->m_SysParamWrapper->m_MoldMainHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 408; machine->m_SysParamWrapper->m_MoldMainAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 412; machine->m_SysParamWrapper->m_MoldMainAlignHomeRel->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 416; machine->m_SysParamWrapper->m_MoldSlaveHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 420; machine->m_SysParamWrapper->m_MoldSlaveAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 424; machine->m_SysParamWrapper->m_MoldSlaveAlignHomeRel->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 428; machine->m_SysParamWrapper->m_EleCylinderMainHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 432; machine->m_SysParamWrapper->m_EleCylinderMainAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 436; machine->m_SysParamWrapper->m_EleCylinderMainAlignHomeRel->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 440; machine->m_SysParamWrapper->m_EleCylinderSlaveHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 444; machine->m_SysParamWrapper->m_EleCylinderSlaveAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 448; machine->m_SysParamWrapper->m_EleCylinderSlaveAlignHomeRel->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 452; machine->m_SysParamWrapper->m_MoldAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 456; machine->m_SysParamWrapper->m_MoldAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 460; machine->m_SysParamWrapper->m_MoldAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 464; machine->m_SysParamWrapper->m_MoldAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 468; machine->m_SysParamWrapper->m_MoldAutoAbsPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 472; machine->m_SysParamWrapper->m_EleCylinderAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 476; machine->m_SysParamWrapper->m_EleCylinderAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 480; machine->m_SysParamWrapper->m_EleCylinderAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 484; machine->m_SysParamWrapper->m_EleCylinderAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 488; machine->m_SysParamWrapper->m_EleCylinderAutoAbsPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 492; machine->m_SysParamWrapper->m_LoadAxisAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 496; machine->m_SysParamWrapper->m_LoadAxisnAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 500; machine->m_SysParamWrapper->m_LoadAxisAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 504; machine->m_SysParamWrapper->m_LoadAxisAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 508; machine->m_SysParamWrapper->m_LoadAxisAutoAbsPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 512; machine->m_SysParamWrapper->m_ArmAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 516; machine->m_SysParamWrapper->m_ArmAxisnAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 520; machine->m_SysParamWrapper->m_ArmAxisAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 524; machine->m_SysParamWrapper->m_ArmAxisAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 528; machine->m_SysParamWrapper->m_ArmAxisAutoAbsPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 532; machine->m_SysParamWrapper->m_SupplyAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 536; machine->m_SysParamWrapper->m_SupplyAxisnAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 540; machine->m_SysParamWrapper->m_SupplyAxisAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 544; machine->m_SysParamWrapper->m_SupplyAxisAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 548; machine->m_SysParamWrapper->m_SupplyAxisAutoAbsPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 552; machine->m_SysParamWrapper->m_Print3RSeparatTorqueThreshold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 556; machine->m_SysParamWrapper->m_MoldUpTorqueThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 560; machine->m_SysParamWrapper->m_MoldDownTorqueThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 568; machine->m_SysParamWrapper->m_EleCylinderUpTorqueThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 572; machine->m_SysParamWrapper->m_EleCylinderDownTorqueThreshold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 576; machine->m_SysParamWrapper->m_CoverType->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag = 578; machine->m_SysParamWrapper->m_CoverSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 582; machine->m_SysParamWrapper->m_CoverReturnSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 586; machine->m_SysParamWrapper->m_CoverDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 590; machine->m_SysParamWrapper->m_LayerThick->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 594; machine->m_SysParamWrapper->m_FixGap->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 598; machine->m_SysParamWrapper->m_SupplyCount->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag = 600; machine->m_SysParamWrapper->m_SupplyTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); machine->m_CoverCfg->Lock(); machine->m_CoverCfg->m_CoverDirection = machine->m_SysParamWrapper->m_CoverType->GetValue(); machine->m_CoverCfg->m_cover_shift_speed = machine->m_SysParamWrapper->m_CoverReturnSpeed->GetValue(); machine->m_CoverCfg->m_cover_speed = machine->m_SysParamWrapper->m_CoverSpeed->GetValue(); machine->m_CoverCfg->m_SupplyTime = machine->m_SysParamWrapper->m_SupplyTime->GetValue(); machine->m_CoverCfg->UnLock(); flag = 604; machine->m_SysParamWrapper->m_DebugLayerThick->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 608; machine->m_SysParamWrapper->m_DebugFixGap->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 612; machine->m_SysParamWrapper->m_DebugSupplyTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); flag = 616; machine->m_SysParamWrapper->m_DebugSupplyCount->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag = 618; machine->m_SysParamWrapper->m_DebugCoverDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 622; machine->m_SysParamWrapper->m_MoldHighSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 626; machine->m_SysParamWrapper->m_MoldDeoxygenSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 634; machine->m_SysParamWrapper->m_PrintPressureThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 638; machine->m_SysParamWrapper->m_MoldDeoxygenTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); flag = 642; machine->m_SysParamWrapper->m_PowderCarDeoxygenTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); flag = 646; machine->m_SysParamWrapper->m_GratingRulerValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 650; machine->m_SysParamWrapper->m_ArmTorqueThreshold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 654; machine->m_SysParamWrapper->m_LoadTorqueThreshold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 658; machine->m_SysParamWrapper->m_SupplyTorqueThreshold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 662; machine->m_SysParamWrapper->m_PrintMainLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 666; machine->m_SysParamWrapper->m_PrintMainReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 670; machine->m_SysParamWrapper->m_PrintMainMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 674; machine->m_SysParamWrapper->m_PrintSlaveLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 678; machine->m_SysParamWrapper->m_PrintSlaveReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 682; machine->m_SysParamWrapper->m_PrintSlaveMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 686; machine->m_SysParamWrapper->m_EleCylinderMainLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 690; machine->m_SysParamWrapper->m_EleCylinderMainReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 694; machine->m_SysParamWrapper->m_EleCylinderMainMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 698; machine->m_SysParamWrapper->m_EleCylinderSlaveLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 702; machine->m_SysParamWrapper->m_EleCylinderSlaveReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 706; machine->m_SysParamWrapper->m_EleCylinderSlaveMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 710; machine->m_SysParamWrapper->m_LoadAxisLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 714; machine->m_SysParamWrapper->m_LoadAxisReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 718; machine->m_SysParamWrapper->m_LoadAxisMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 722; machine->m_SysParamWrapper->m_ArmLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 726; machine->m_SysParamWrapper->m_ArmReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 730; machine->m_SysParamWrapper->m_ArmMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 734; machine->m_SysParamWrapper->m_SupplyLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 738; machine->m_SysParamWrapper->m_SupplyReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 742; machine->m_SysParamWrapper->m_SupplyRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 746; machine->m_SysParamWrapper->m_ArmSlotDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 750; machine->m_SysParamWrapper->m_PowderJarCabinPressureVoltage->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 754; machine->m_SysParamWrapper->m_PowderJarCabinPressureValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 758; machine->m_SysParamWrapper->m_CleanBoxDeoxygenSetValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 762; machine->m_SysParamWrapper->m_CleanBoxOxygenDownLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 766; machine->m_SysParamWrapper->m_CleanBoxOxygenUpLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 770; machine->m_SysParamWrapper->m_CleanBoxPressureReleaseValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 774; machine->m_SysParamWrapper->m_PrintCar1RealWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 778; machine->m_SysParamWrapper->m_PrintCar1AlarmWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 782; machine->m_SysParamWrapper->m_PrintCar2RealWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 786; machine->m_SysParamWrapper->m_PrintCar2AlarmWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 790; machine->m_SysParamWrapper->m_CleanCar1RealWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 794; machine->m_SysParamWrapper->m_CleanCar1AlarmWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 798; machine->m_SysParamWrapper->m_CleanCar2RealWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 802; machine->m_SysParamWrapper->m_CleanCar2AlarmWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 806; machine->m_SysParamWrapper->m_LoadHandPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 810; machine->m_SysParamWrapper->m_PowderLevelLength->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 814; machine->m_SysParamWrapper->m_PowderLevelValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 818; machine->m_SysParamWrapper->m_PrintAirRenewalPresRelValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 822; machine->m_SysParamWrapper->m_RollerEdgeSearchOffset->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 826; machine->m_SysParamWrapper->m_LoadHandCrashPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 830; machine->m_SysParamWrapper->m_ArmCatpureHomeFastSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 834; machine->m_SysParamWrapper->m_ArmCatpureHomeSlowSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 838; machine->m_SysParamWrapper->m_LinearEncoderErrorJudgeValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 842; machine->m_SysParamWrapper->m_LinearEncoderPerLayerRealValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 846; machine->m_SysParamWrapper->m_GapCompensateDiffValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 850; machine->m_SysParamWrapper->m_MoldTheoryDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 854; machine->m_SysParamWrapper->m_LinearActDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 858; machine->m_SysParamWrapper->m_LinearActPulse->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 862; machine->m_SysParamWrapper->m_PrintHomeSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 866; machine->m_SysParamWrapper->m_EleCylinderHomeSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 870; machine->m_SysParamWrapper->m_LoadHomeSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); } } //void HBDE1000::DrawSignal(bool* isshow) //{ // SignalState signalState; // SignalService::GetInstance().GetSignalState(signalState); // SignalStateWrapper* signalStateWrapper = m_SignalStateWrapper; // ImGui::Begin(u8"信号状态", isshow, ImGuiWindowFlags_NoDocking); // ImGui::BeginTabBar("SignalState"); // if (ImGui::BeginTabItem(u8"异常信号")) { // ImGui::BeginGroup(); // ImGui::ToggleButtonText(u8"PC与PLC网络异常", signalState.m_PLCConnectAlarm, false); // ImGui::ToggleButtonText(u8"系统急停异常", signalState.m_SystemStopAlarm, false); // ImGui::ToggleButtonText(u8"高压气压力不足异常", signalState.m_HighPressureLackAlarm, false); // ImGui::ToggleButtonText(u8"保护气压力不足异常", signalState.m_ProtectGasLackAlarm, false); // ImGui::ToggleButtonText(u8"外部电源断电异常", signalState.m_PowerDownAlarm, false); // ImGui::ToggleButtonText(u8"外界氧含量不足警告", signalState.m_OutsideOxygenLackAlarm, false); // ImGui::ToggleButtonText(u8"激光器冷水机报警", signalState.m_LaserChillerAlarm, false); // ImGui::ToggleButtonText(u8"总空开触点异常", signalState.m_BusAirSwitchAlarm, false); // ImGui::ToggleButtonText(u8"外部设备电源空开触点异常", signalState.m_ExtDevicePowerAirSwitchAlarm, false); // ImGui::ToggleButtonText(u8"加热电源空开触点异常", signalState.m_HeatingPowerAirSwitchAlarm, false); // ImGui::ToggleButtonText(u8"激光电源空开触点异常", signalState.m_LaserPowerAirSwitchAlarm, false); // ImGui::ToggleButtonText(u8"伺服电源空开触点", signalState.m_ServoPowerAirSwitchAlarm, false); // ImGui::ToggleButtonText(u8"激光器1报警", signalState.m_Laser1Alarm, false); // ImGui::ToggleButtonText(u8"激光器2报警", signalState.m_Laser2Alarm, false); // ImGui::ToggleButtonText(u8"激光器3报警", signalState.m_Laser3Alarm, false); // ImGui::ToggleButtonText(u8"激光器4报警", signalState.m_Laser4Alarm, false); // ImGui::ToggleButtonText(u8"激光5报警", signalState.m_Laser5Alarm, false); // ImGui::ToggleButtonText(u8"激光6报警", signalState.m_Laser6Alarm, false); // ImGui::ToggleButtonText(u8"激光7报警", signalState.m_Laser7Alarm, false); // ImGui::ToggleButtonText(u8"激光8报警", signalState.m_Laser8Alarm, false); // ImGui::ToggleButtonText(u8"加热异常报警", signalState.m_HeatingAlarm, false); // ImGui::ToggleButtonText(u8"UPS报警", signalState.m_UpsAlarm, false); // ImGui::ToggleButtonText(u8"打印主轴上限位触发警示", signalState.m_MoldMainUpLimitActive, false); // ImGui::ToggleButtonText(u8"打印主轴下限位触发警示", signalState.m_MoldMainDownLimitActive, false); // ImGui::ToggleButtonText(u8"轨道打印位感应失效警告", signalState.m_PrintTrackDisableWarn, false); // ImGui::EndGroup(); // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // // ImGui::BeginGroup(); // ImGui::ToggleButtonText(u8"缸体密封圈泄压异常", signalState.m_CylinderLinerSealReleaseValveException, false); // ImGui::ToggleButtonText(u8"轨道清粉位失效异常", signalState.m_CleanTrackPosDisableAlarm, false); // ImGui::ToggleButtonText(u8"清粉升降急停异常", signalState.m_CleanLiftStopAlarm, false); // ImGui::ToggleButtonText(u8"移载吊装位感应器失效", signalState.m_LoadHandPosSensorDiable, false); // ImGui::ToggleButtonText(u8"主电源缺相检测异常", signalState.m_MainPowerLossCheckAlarm, false); // ImGui::ToggleButtonText(u8"打印舱电锁感应异常", signalState.m_PrintCabinLockDisableAlarm, false); // ImGui::ToggleButtonText(u8"清粉箱折叠气缸升高异常", signalState.m_CleanBoxFoldUpException, false); // ImGui::ToggleButtonText(u8"清粉箱折叠气缸降低异常", signalState.m_CleanBoxFoldDownException, false); // ImGui::ToggleButtonText(u8"缸体吊装盖板打开异常", signalState.m_CylinderHandPlatformOpenAlarm, false); // ImGui::ToggleButtonText(u8"缸体吊装门打开异常", signalState.m_CylinderHandDoorOpenAlarm, false); // ImGui::ToggleButtonText(u8"安全地毯被触发", signalState.m_SecurityCarpetTriggered, false); // ImGui::ToggleButtonText(u8"栏杆不在打开或关闭位", signalState.m_RailNotInOpenOrClosePos, false); // ImGui::ToggleButtonText(u8"吊装盖板关闭异常", signalState.m_HandPlatformCloseAlarm, false); // ImGui::ToggleButtonText(u8"铺粉轴前限位触发警示", signalState.m_ArmFrontLimit, false); // ImGui::ToggleButtonText(u8"铺粉轴后限位触发警示", signalState.m_ArmBackLimit, false); // ImGui::ToggleButtonText(u8"移载轴左限位触发警示", signalState.m_LoadAxisLeftLimit, false); // ImGui::ToggleButtonText(u8"移载轴右限位触发警示", signalState.m_LoadAxisRightLimit, false); // ImGui::ToggleButtonText(u8"供粉转轴原点失效异常", signalState.m_SupplyHomeIndexDisableAlarm, false); // ImGui::EndGroup(); // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // ImGui::BeginGroup(); // ImGui::ToggleButtonText(u8"打印舱压力过高异常", signalState.m_PrintPressureOverLimitAlarm, false); // ImGui::ToggleButtonText(u8"总冷水机报警", signalState.m_TotalWaterCoolerAlarm, false); // ImGui::ToggleButtonText(u8"打印存粉小车1粉罐已满警示", signalState.m_PrintStorageCar1JarFullWarn, false); // ImGui::ToggleButtonText(u8"打印存粉小车1没有连接警示", signalState.m_PrintStorageCar1DisconnectWarn, false); // ImGui::ToggleButtonText(u8"打印存粉小车2粉罐已满警示", signalState.m_PrintStorageCar2JarFullWarn, false); // ImGui::ToggleButtonText(u8"打印存粉小车2没有连接警示", signalState.m_PrintStorageCar2DisconnectWarn, false); // ImGui::ToggleButtonText(u8"清粉存粉小车1粉罐已满警示", signalState.m_CleanStorageCar1JarFullWarn, false); // ImGui::ToggleButtonText(u8"清粉存粉小车1没有连接警示", signalState.m_CleanStorageCar1DisconnectWarn, false); // ImGui::ToggleButtonText(u8"清粉存粉小车2粉罐已满警示", signalState.m_CleanStorageCar2JarFullWarn, false); // ImGui::ToggleButtonText(u8"清粉存粉小车2没有连接警示", signalState.m_CleanStorageCar2DisconnectWarn, false); // // ImGui::ToggleButtonText(u8"打印主轴扭力异常", signalState.m_MoldTorqueAlarm, false); // ImGui::ToggleButtonText(u8"移载轴扭力异常", signalState.m_LoadTorqueAlarm, false); // ImGui::ToggleButtonText(u8"铺粉轴扭力异常", signalState.m_ArmTorqueAlarm, false); // ImGui::ToggleButtonText(u8"供粉轴扭力异常", signalState.m_SupplyTorqueAlarm, false); // ImGui::ToggleButtonText(u8"光栅尺补偿失败", signalState.m_GratingRulerFail, false); // ImGui::ToggleButtonText(u8"打印主轴超软上限", signalState.m_PrintMainOverSoftUpLimit, false); // ImGui::ToggleButtonText(u8"打印主轴超软下限", signalState.m_PrintMainOverSoftDownLimit, false); // ImGui::EndGroup(); // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // ImGui::BeginGroup(); // // // ImGui::ToggleButtonText(u8"移载轴超左软限", signalState.m_LoadAxisOverSoftLeftLimit, false); // ImGui::ToggleButtonText(u8"移载轴超右软限", signalState.m_LoadAxisOverSoftRightLimit, false); // ImGui::ToggleButtonText(u8"铺粉轴超前软限", signalState.m_ArmOverSoftFrontLimit, false); // ImGui::ToggleButtonText(u8"铺粉轴超后软限", signalState.m_ArmOverSoftBackLimit, false); // // ImGui::ToggleButtonText(u8"铺粉臂挡板不在前接粉位", signalState.m_CoverBaffleNotInFrontAcceptPos, false); // ImGui::ToggleButtonText(u8"铺粉臂挡板不在下粉位", signalState.m_CoverBaffleNotInDropPos, false); // ImGui::ToggleButtonText(u8"铺粉臂到接粉后位异常", signalState.m_ArmMoveBackAcceptPosException, false); // ImGui::ToggleButtonText(u8"上层维修门打开警告", signalState.m_UpServiceDoorOpenWarn, false); // ImGui::ToggleButtonText(u8"下层维修门打开警告", signalState.m_DownServiceDoorOpenWarn, false); // // ImGui::ToggleButtonText(u8"移栽手动异常", signalState.m_LoadAxisManualAlarmSignal, false); // ImGui::ToggleButtonText(u8"打印主轴伺服驱动器异常", signalState.m_PrintMainServoAlarmSignal, false); // ImGui::ToggleButtonText(u8"移载轴伺服驱动器异常", signalState.m_LoadAxisServoAlarmSignal, false); // ImGui::ToggleButtonText(u8"铺粉轴伺服驱动器异常", signalState.m_ArmServoAlarmSignal, false); // ImGui::ToggleButtonText(u8"供粉转轴伺服驱动器异常", signalState.m_SupplyServoAlarmSignal, false); // // ImGui::ToggleButtonText(u8"铺粉轴到接粉位异常", signalState.m_CoverReachAcceptPowderAlarmSignal, false); // ImGui::ToggleButtonText(u8"铺粉轴到下粉位异常", signalState.m_CoverReachDropPowderAlarmSignal, false); // ImGui::ToggleButtonText(u8"光栅尺检测异常", signalState.m_LinearEncoderCheckAlarmSignal, false); // ImGui::ToggleButtonText(u8"打印主轴软急停触发", signalState.m_PrintMainSoftStopTrigger, false); // ImGui::ToggleButtonText(u8"移载轴软急停触发", signalState.m_LoadAxisSoftStopTrigger, false); // ImGui::ToggleButtonText(u8"铺粉轴软急停触发", signalState.m_CoverSoftStopTrigger, false); // ImGui::ToggleButtonText(u8"铺粉归原点异常", signalState.m_CoverHomeException, false); // // ImGui::ToggleButtonText(u8"缸体密封圈充气失败报警", signalState.m_CylinderSealInflationFailureAlarm, false); // ImGui::ToggleButtonText(u8"缸体密封圈充气过压报警", signalState.m_CylinderSealInflationHighPressureAlarm, false); // ImGui::ToggleButtonText(u8"缸体密封圈存在漏气警告", signalState.m_CylinderSealLeakageWarn, false); // ImGui::ToggleButtonText(u8"密封圈压力异常", signalState.m_SealPressureExceptionWhenPrint, false); // ImGui::EndGroup(); // // ImGui::EndTabItem(); // } // if (ImGui::BeginTabItem(u8"常规信号")) { // bool isCtrl = (g_Admin > USER_ADMIN); // ImGui::BeginGroup(); // ImGui::ToggleButtonText(u8"PLC心跳", signalState.m_PLCKeepAlive, false); // ImGui::ToggleButtonText(u8"PC心跳", signalState.m_PCKeepAlice, false); // ImGui::ToggleButtonText(u8"设备空闲状态", signalState.m_DeviceStandby, false); // if (ImGui::ToggleButtonText(u8"设备打印状态", signalState.m_DevicePrinting, isCtrl))signalStateWrapper->m_DevicePrinting->SetValue(!signalState.m_DevicePrinting); // if (ImGui::ToggleButtonText(u8"设备手动调试状态", signalState.m_DeviceManualDebug, isCtrl))signalStateWrapper->m_DeviceManualDebug->SetValue(!signalState.m_DeviceManualDebug); // if (ImGui::ToggleButtonText(u8"设备自动运行状态", signalState.m_DeviceAutoRuning, isCtrl))signalStateWrapper->m_DeviceAutoRuning->SetValue(!signalState.m_DeviceAutoRuning); // if (ImGui::ToggleButtonText(u8"触摸屏控制状态", signalState.m_TouchPanelCtrling, isCtrl))signalStateWrapper->m_TouchPanelCtrling->SetValue(!signalState.m_TouchPanelCtrling); // if (ImGui::ToggleButtonText(u8"动作流程调试模式", signalState.m_MotionDebug, isCtrl))signalStateWrapper->m_MotionDebug->SetValue(!signalState.m_MotionDebug); // if (ImGui::ToggleButtonText(u8"异常复位", signalState.m_CylinderExceptionReset, isCtrl))signalStateWrapper->m_CylinderExceptionReset->SetValue(!signalState.m_CylinderExceptionReset); // // if (ImGui::ToggleButtonText(u8"触发缸体到达打印位_自动", signalState.m_CylinderReachPrintTriger, isCtrl))signalStateWrapper->m_CylinderReachPrintTriger->SetValue(!signalState.m_CylinderReachPrintTriger); // if (ImGui::ToggleButtonText(u8"缸体到打印位运行中_自动", signalState.m_CylinderReachPrintRun, isCtrl))signalStateWrapper->m_CylinderReachPrintRun->SetValue(!signalState.m_CylinderReachPrintRun); // if (ImGui::ToggleButtonText(u8"缸体到达打印位完毕_自动", signalState.m_CylinderReachPrintFinished, isCtrl))signalStateWrapper->m_CylinderReachPrintFinished->SetValue(!signalState.m_CylinderReachPrintFinished); // if (ImGui::ToggleButtonText(u8"触发缸体打印位装载_自动", signalState.m_CylinderPrintLoadTriger, isCtrl))signalStateWrapper->m_CylinderPrintLoadTriger->SetValue(!signalState.m_CylinderPrintLoadTriger); // if (ImGui::ToggleButtonText(u8"缸体打印位装载运行中_自动", signalState.m_CylinderPrintLoadRun, isCtrl))signalStateWrapper->m_CylinderPrintLoadRun->SetValue(!signalState.m_CylinderPrintLoadRun); // if (ImGui::ToggleButtonText(u8"缸体打印位装载完毕_自动", signalState.m_CylinderPrintLoadFinished, isCtrl))signalStateWrapper->m_CylinderPrintLoadFinished->SetValue(!signalState.m_CylinderPrintLoadFinished); // if (ImGui::ToggleButtonText(u8"触发缸体打印位卸载_自动", signalState.m_CylinderPrintUnloadTriger, isCtrl))signalStateWrapper->m_CylinderPrintUnloadTriger->SetValue(!signalState.m_CylinderPrintUnloadTriger); // if (ImGui::ToggleButtonText(u8"缸体打印位卸载运行中_自动", signalState.m_CylinderPrintUnloadRun, isCtrl))signalStateWrapper->m_CylinderPrintUnloadRun->SetValue(!signalState.m_CylinderPrintUnloadRun); // if (ImGui::ToggleButtonText(u8"缸体打印位卸载完毕_自动", signalState.m_CylinderPrintUnloadFinished, isCtrl))signalStateWrapper->m_CylinderPrintUnloadFinished->SetValue(!signalState.m_CylinderPrintUnloadFinished); // if (ImGui::ToggleButtonText(u8"触发缸体到达清粉位_自动", signalState.m_CylinderReachCleanTriger, isCtrl))signalStateWrapper->m_CylinderReachCleanTriger->SetValue(!signalState.m_CylinderReachCleanTriger); // if (ImGui::ToggleButtonText(u8"缸体到清粉位运行中", signalState.m_CylinderReachCleanRun, isCtrl))signalStateWrapper->m_CylinderReachCleanRun->SetValue(!signalState.m_CylinderReachCleanRun); // if (ImGui::ToggleButtonText(u8"缸体到清粉位完毕_自动", signalState.m_CylinderReachCleanFinished, isCtrl))signalStateWrapper->m_CylinderReachCleanFinished->SetValue(!signalState.m_CylinderReachCleanFinished); // ImGui::EndGroup(); // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // ImGui::BeginGroup(); // // // if (ImGui::ToggleButtonText(u8"触发缸体与清粉箱连接_自动", signalState.m_CylinderConnectCleanBoxTriger, isCtrl))m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger->SetValue(!signalState.m_CylinderConnectCleanBoxTriger); // if (ImGui::ToggleButtonText(u8"缸体与清粉箱连接中", signalState.m_CylinderConnectCleanBoxRun, isCtrl))m_SignalStateWrapper->m_CylinderConnectCleanBoxRun->SetValue(!signalState.m_CylinderConnectCleanBoxRun); // if (ImGui::ToggleButtonText(u8"缸体与清粉箱连接完毕_自动", signalState.m_CylinderConnectCleanBoxFinished, isCtrl))m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->SetValue(!signalState.m_CylinderConnectCleanBoxFinished); // if (ImGui::ToggleButtonText(u8"触发缸体与清粉箱分离_自动", signalState.m_CylinderDisconnectCleanBoxTriger, isCtrl))m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger->SetValue(!signalState.m_CylinderDisconnectCleanBoxTriger); // if (ImGui::ToggleButtonText(u8"缸体与清粉箱分离中", signalState.m_CylinderDisconnectCleanBoxRun, isCtrl))m_SignalStateWrapper->m_CylinderDisconnectCleanBoxRun->SetValue(!signalState.m_CylinderDisconnectCleanBoxRun); // if (ImGui::ToggleButtonText(u8"缸体与清粉箱分离完毕_自动", signalState.m_CylinderDisconnectCleanBoxFinished, isCtrl))m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->SetValue(!signalState.m_CylinderDisconnectCleanBoxFinished); // // if (ImGui::ToggleButtonText(u8"触发铺粉流程", signalState.m_CoverTriger, isCtrl))signalStateWrapper->m_CoverTriger->SetValue(!signalState.m_CoverTriger); // ImGui::ToggleButtonText(u8"铺粉流程忙", signalState.m_IsCovering, isCtrl); // if (ImGui::ToggleButtonText(u8"铺粉完成允许打印", signalState.m_IsCoverFinishedCanPrint, isCtrl))signalStateWrapper->m_IsCoverFinishedCanPrint->SetValue(!signalState.m_IsCoverFinishedCanPrint); // if (ImGui::ToggleButtonText(u8"铺粉调试模式", signalState.m_IsCoverDebug, isCtrl))signalStateWrapper->m_IsCoverDebug->SetValue(!signalState.m_IsCoverDebug); // if (ImGui::ToggleButtonText(u8"第一次铺粉", signalState.m_IsFirstCover, isCtrl))signalStateWrapper->m_IsFirstCover->SetValue(!signalState.m_IsFirstCover); // if (ImGui::ToggleButtonText(u8"触发打印室除氧", signalState.m_PrintDeoxygenTriger, isCtrl))signalStateWrapper->m_PrintDeoxygenTriger->SetValue(!signalState.m_PrintDeoxygenTriger); // if (ImGui::ToggleButtonText(u8"打印室除氧中", signalState.m_PrintDeoxygenRun, isCtrl))signalStateWrapper->m_PrintDeoxygenRun->SetValue(!signalState.m_PrintDeoxygenRun); // ImGui::ToggleButtonText(u8"打印室氧含量值到达", signalState.m_PrintDeoxygenFinished, false); // //if (ImGui::ToggleButtonText(u8"触发打印升降轴除氧", signalState.m_MoldDeoxygenTriger, isCtrl))signalStateWrapper->m_MoldDeoxygenTriger->SetValue(!signalState.m_MoldDeoxygenTriger); // //ImGui::ToggleButtonText(u8"打印升降轴除氧中", signalState.m_MoldDeoxygenRun, false); // //if (ImGui::ToggleButtonText(u8"打印升降轴除氧完毕", signalState.m_MoldDeoxygenFinished, isCtrl))signalStateWrapper->m_MoldDeoxygenFinished->SetValue(!signalState.m_MoldDeoxygenFinished); // if (ImGui::ToggleButtonText(u8"触发打印存粉小车除氧", signalState.m_StorgeCarDeoxygenTriger, isCtrl))signalStateWrapper->m_StorgeCarDeoxygenTriger->SetValue(!signalState.m_StorgeCarDeoxygenTriger); // ImGui::ToggleButtonText(u8"打印存粉小车除氧中", signalState.m_StorgeCarDeoxygenRun, false); // if (ImGui::ToggleButtonText(u8"打印存粉小车除氧完毕", signalState.m_StorgeCarDeoxygenFinished, isCtrl))signalStateWrapper->m_StorgeCarDeoxygenFinished->SetValue(!signalState.m_StorgeCarDeoxygenFinished); // ImGui::ToggleButtonText(u8"清粉箱启动吸尘器", signalState.m_CleanBoxVacuumTriger, false); // ImGui::EndGroup(); // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // ImGui::BeginGroup(); // // // ImGui::ToggleButtonText(u8"触发缸体到打印位EN", signalState.m_CylinderReachPrintEnable, false); // ImGui::ToggleButtonText(u8"触发缸体打印位装载EN", signalState.m_CylinderPrintLoadEnable, false); // ImGui::ToggleButtonText(u8"触发缸体打印位卸载EN", signalState.m_CylinderPrintUnloadEnable, false); // //ImGui::ToggleButtonText(u8"触发打印升降轴连接缸体EN", signalState.m_MoldConnectCylinderEnable, false); // //ImGui::ToggleButtonText(u8"触发打印升降轴分离缸体EN", signalState.m_MoldDisconnectCylinderEnable, false); // ImGui::ToggleButtonText(u8"触发缸体到清粉位EN", signalState.m_CylinderReachCleanEnable, false); // ImGui::ToggleButtonText(u8"触发缸体与清粉箱连接EN", signalState.m_CylinderConnectCleanBoxEnable, false); // ImGui::ToggleButtonText(u8"触发缸体与清粉箱分离EN", signalState.m_CylinderDisconnectCleanBoxEnable, false); // ImGui::ToggleButtonText(u8"触发铺粉EN", signalState.m_CoverEnable, false); // //ImGui::ToggleButtonText(u8"触发打印升降轴除氧EN", signalState.m_MoldDeoxygenEnable, false); // ImGui::ToggleButtonText(u8"触发缸体到吊装位EN", signalState.m_CylinderMoveHandPosEnable, false); // ImGui::ToggleButtonText(u8"触发缸体到吊装位", signalState.m_CylinderMoveHandPos, isCtrl); // ImGui::ToggleButtonText(u8"触发缸体到吊装位运行中", signalState.m_CylinderMovingHandPos, false); // ImGui::ToggleButtonText(u8"触发缸体到吊装位完毕", signalState.m_CylinderMovedHandPos, false); // // ImGui::ToggleButtonText(u8"打印室换气功能EN", signalState.m_PrintAirRenewalEnable, false); // if (ImGui::ToggleButtonText(u8"触发打印室换气", signalState.m_PrintAirRenewalTrigger, isCtrl))m_SignalStateWrapper->m_PrintAirRenewalTrigger->SetValue(!signalState.m_PrintAirRenewalTrigger); // ImGui::ToggleButtonText(u8"允许提风速", signalState.m_AllowRiseWindSpeed, false); // ImGui::ToggleButtonText(u8"手动铺粉测试", signalState.m_ManualCoverTest, false); // ImGui::ToggleButtonText(u8"滚粉轴寻边中", signalState.m_RollerEdgeSearching, false); // ImGui::ToggleButtonText(u8"滚粉轴寻边成功", signalState.m_RollerEdgeSearchSuccess, false); // ImGui::ToggleButtonText(u8"滚粉轴寻边失败", signalState.m_RollerEdgeSearchFaild, false); // //if (ImGui::ToggleButtonText(u8"存粉小车1使用吸筛送", signalState.m_StorageCar1UseSupply, isCtrl))signalStateWrapper->m_StorageCar1UseSupply->SetValue(!signalState.m_StorageCarUseSupply); // ImGui::EndGroup(); // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // ImGui::BeginGroup(); // ImGui::ToggleButtonText(u8"光栅尺判断OK", signalState.m_RasterJudgeOK, false); // ImGui::ToggleButtonText(u8"光栅尺判断NG", signalState.m_RasterJudgeNG, false); // if (ImGui::ToggleButtonText(u8"使用下粉轴寻边", signalState.m_UseSupplySearchEdge, isCtrl))signalStateWrapper->m_UseSupplySearchEdge->SetValue(!signalState.m_UseSupplySearchEdge); // // if (ImGui::ToggleButtonText(u8"屏蔽光栅尺", signalState.m_SheildLinearEncoder, isCtrl))signalStateWrapper->m_SheildLinearEncoder->SetValue(!signalState.m_SheildLinearEncoder); // // if (ImGui::ToggleButtonText(u8"屏蔽伺服空开", signalState.m_SheilServoEmptyOpen, isCtrl))signalStateWrapper->m_SheilServoEmptyOpen->SetValue(!signalState.m_SheilServoEmptyOpen); // if (ImGui::ToggleButtonText(u8"屏蔽高压气", signalState.m_SheildHighPressure, isCtrl))signalStateWrapper->m_SheildHighPressure->SetValue(!signalState.m_SheildHighPressure); // if (ImGui::ToggleButtonText(u8"不使用铺粉轴到位感应器", signalState.m_UnuseCoverReachSensor, isCtrl))signalStateWrapper->m_UnuseCoverReachSensor->SetValue(!signalState.m_UnuseCoverReachSensor); // if (ImGui::ToggleButtonText(u8"使用铺粉挡板感应器", signalState.m_UseCoverBaffleSensor, isCtrl))signalStateWrapper->m_UseCoverBaffleSensor->SetValue(!signalState.m_UseCoverBaffleSensor); // if (ImGui::ToggleButtonText(u8"使用铺粉臂归原点", signalState.m_UseArmCaptureHome, isCtrl))signalStateWrapper->m_UseArmCaptureHome->SetValue(!signalState.m_UseArmCaptureHome); // if (ImGui::ToggleButtonText(u8"光栅尺反向", signalState.m_LinearEncoderOppDirection, isCtrl))signalStateWrapper->m_LinearEncoderOppDirection->SetValue(!signalState.m_LinearEncoderOppDirection); // if (ImGui::ToggleButtonText(u8"铺粉V2使用连续模式", signalState.m_CoverV2UseCintinueMode, isCtrl))signalStateWrapper->m_CoverV2UseCintinueMode->SetValue(!signalState.m_CoverV2UseCintinueMode); // if (ImGui::ToggleButtonText(u8"使用打印区域变速", signalState.m_UseCoverShiftSpeed, isCtrl))signalStateWrapper->m_UseCoverShiftSpeed->SetValue(!signalState.m_UseCoverShiftSpeed); // ImGui::Text(u8"缸体状态:%d", signalState.m_CylinderState); ImGui::SameLine(); // ImGui::TextDisabled("(?)"); // if (ImGui::IsItemHovered()) // { // ImGui::BeginTooltip(); // ImGui::PushTextWrapPos(ImGui::GetFontSize() * 35.0f); // ImGui::TextUnformatted(u8"0=缸体在轨道中间\n1 = 缸体在打印位,未装载\n2 = 缸体在打印位,已装载\n3 = 缸体在清粉位,未连接清粉箱\n4 = 缸体在清粉位,已连接清粉箱\n5 = 移载台在吊装位\n"); // ImGui::PopTextWrapPos(); // ImGui::EndTooltip(); // } // ImGui::EndGroup(); // // ImGui::EndTabItem(); // } // ImGui::EndTabBar(); // // ImGui::End(); //} //void HBDE1000::DrawAxisCfg() //{ // vector directvec = { _(u8"上"),_(u8"下"),_(u8"左"),_(u8"右"),_(u8"前"),_(u8"后") }; // AxisData ad; // m_SysParamWrapper->GetAxisData(ad); // ImGui::Text(_(u8"移栽轴:").c_str()); // ImGui::BeginChild("LoadAxisCfg", ImVec2(0, 260), true, ImGuiWindowFlags_NoScrollWithMouse); // AxisCfg* loadCfg = ConfigManager::GetInstance()->GetLoadCfg(); // ImGui::PushItemWidth(120.0f); // ImGui::BeginGroup(); // if (ImGui::InputFloat(_(u8"移载轴轨道打印位").c_str(), &ad.LoadAxisTrackPrintPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_LoadAxisTrackPrintPos->SetValue(ad.LoadAxisTrackPrintPos); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"移载轴轨道打印位").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_LoadAxisTrackPrintPosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_LoadAxisTrackPrintPosRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"移载轴轨道清粉位").c_str(), &ad.LoadAxisTrackCleanPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_LoadAxisTrackCleanPos->SetValue(ad.LoadAxisTrackCleanPos); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"移载轴轨道清粉位").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_LoadAxisTrackCleanPosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_LoadAxisTrackCleanPosRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(u8"移载轨道吊装位", m_SysParamWrapper->GetEnvUIAssist()->m_LoadHandPos->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_LoadHandPos->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_LoadHandPos->GetValue()); // } // ImGui::SameLine(); // ImGui::PushID(u8"移载轨道吊装位"); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_LoadHandPosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_LoadHandPosRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(u8"移载吊装碰撞位", m_SysParamWrapper->GetEnvUIAssist()->m_LoadHandCrashPos->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_LoadHandCrashPos->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_LoadHandCrashPos->GetValue()); // } // ImGui::SameLine(); // ImGui::PushID(u8"移载吊装碰撞位"); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_LoadHandCrashPosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_LoadHandCrashPosRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"移载轴轨道左软限位").c_str(), &ad.LoadAxisLeftLimit, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_LoadAxisLeftLimit->SetValue(ad.LoadAxisLeftLimit); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"移载轴轨道左软限位").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_LoadAxisLeftLimitRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_LoadAxisLeftLimitRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"移载轴轨道右软限位").c_str(), &ad.LoadAxisRightLimit, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_LoadAxisRightLimit->SetValue(ad.LoadAxisRightLimit); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"移载轴轨道右软限位").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_LoadAxisRightLimitRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_LoadAxisRightLimitRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputScalar(_(u8"移载轴绝对值试运行位置列表").c_str(), ImGuiDataType_S16, &ad.LoadAxisAbsTestPos, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { //移载轴绝对值试运行位置列表_RW // m_SysParamWrapper->m_LoadAxisAbsTestPos->SetValue(ad.LoadAxisAbsTestPos); // } // // // ImGui::EndGroup(); // // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // // ImGui::BeginGroup(); // if (ImGui::InputFloat(_(u8"移载轴速度(自动)").c_str(), &ad.LoadAxisAutoSpeed, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_LoadAxisAutoSpeed->SetValue(ad.LoadAxisAutoSpeed); // } // // if (ImGui::InputFloat(_(u8"移载轴加速度(自动)").c_str(), &ad.LoadAxisnAutoAcc, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_LoadAxisnAutoAcc->SetValue(ad.LoadAxisnAutoAcc); // } // // if (ImGui::InputFloat(_(u8"移载轴减速度(自动)").c_str(), &ad.LoadAxisAutoDec, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_LoadAxisAutoDec->SetValue(ad.LoadAxisAutoDec); // } // // if (ImGui::InputFloat(_(u8"移载轴相对位移(自动)").c_str(), &ad.LoadAxisAutoRelShift, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_LoadAxisAutoRelShift->SetValue(ad.LoadAxisAutoRelShift); // } // // if (ImGui::InputFloat(_(u8"移载轴绝对位置(自动)").c_str(), &ad.LoadAxisAutoAbsPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_LoadAxisAutoAbsPos->SetValue(ad.LoadAxisAutoAbsPos); // } // // static bool isDisableLoadTorqueCheck; // if (isDisableLoadTorqueCheck != m_AxisRecordWrapper->m_DisableLoadTorqueCheck->GetValue()) { // isDisableLoadTorqueCheck = m_AxisRecordWrapper->m_DisableLoadTorqueCheck->GetValue(); // } // if (ImGui::InputFloat(_(u8"移载轴扭力报警值").c_str(), &ad.LoadTorqueThreshold, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_LoadTorqueThreshold->SetValue(ad.LoadTorqueThreshold); // } // if (ImGui::Checkbox(u8"屏蔽移载轴扭力判断", &isDisableLoadTorqueCheck)) { // m_AxisRecordWrapper->m_DisableLoadTorqueCheck->SetValue(isDisableLoadTorqueCheck); // } // // ImGui::EndGroup(); // // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // // ImGui::BeginGroup(); // if (g_Admin > USER_ADMIN) // { // ImGui::SemicolonCombo(_(u8"电机正转方向").c_str(), &loadCfg->m_active_direct, directvec); // } // else { // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, true); // ImGui::SemicolonCombo(_(u8"电机正转方向").c_str(), &loadCfg->m_active_direct, directvec); // ImGui::PopItemFlag(); // } // // ImGui::Checkbox(_(u8"显示位置置反").c_str(), &loadCfg->m_ShowPosInv); // ImGui::InputInt(_(u8"正限位").c_str(), &loadCfg->m_active_limit, NULL, NULL, ImGuiInputTextFlags_EnterReturnsTrue); // ImGui::InputInt(_(u8"负限位").c_str(), &loadCfg->m_negactive_limit, NULL, NULL, ImGuiInputTextFlags_EnterReturnsTrue); // // ImGui::InputFloat(u8"负载最大值", &loadCfg->m_MaxLoadValue, 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue); // ImGui::EndGroup(); // // ImGui::PopItemWidth(); // ImGui::EndChild(); // // ImGui::Text(u8"打印升降轴:"); // ImGui::BeginChild("PrintMoldCfg", ImVec2(0, 480), true, ImGuiWindowFlags_NoScrollWithMouse); // AxisCfg* moldCfg = ConfigManager::GetInstance()->GetMoldCfg(); // ImGui::PushItemWidth(120.0f); // ImGui::BeginGroup(); // // if (ImGui::InputFloat(u8"打印升降安全位", &ad.PrintUpDownSafePos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_PrintUpDownSafePos->SetValue(ad.PrintUpDownSafePos); // } // ImGui::SameLine(); // ImGui::PushID(u8"打印升降安全位记录"); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_PrintMoldSafePosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_PrintMoldSafePosRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"打印顶升轴基板底座缸平面位置").c_str(), &ad.PrintJackupPlatformBottomPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_PrintJackupPlatformBottomPos->SetValue(ad.PrintJackupPlatformBottomPos); // } // ImGui::SameLine(); // ImGui::PushID(u8"打印顶升轴基板底座缸平面位置记录"); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_PrintJackupPlatformBottomPosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_PrintJackupPlatformBottomPosRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"打印顶升轴基板缸平面位置").c_str(), &ad.PrintJackupPlatformPlanePos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_PrintJackupPlatformPlanePos->SetValue(ad.PrintJackupPlatformPlanePos); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"打印顶升轴基板缸平面位置").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_PrintJackupPlatformPlanePosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_PrintJackupPlatformPlanePosRecord->SetValue(false); // m_RunCfg->m_HadSetBasePlatformPoint = true; // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"打印基板厚度").c_str(), &ad.PrintPlatformHight, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_PrintPlatformHight->SetValue(ad.PrintPlatformHight); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"打印基板厚度").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_PrintPlatformHightRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_PrintPlatformHightRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"打印升降轴上软限位").c_str(), &ad.MoldUpLimitPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_MoldUpLimitPos->SetValue(ad.MoldUpLimitPos); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"打印升降轴上软限位").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_MoldUpLimitPosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_MoldUpLimitPosRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"打印升降轴下软限位").c_str(), &ad.MoldDownLimitPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_MoldDownLimitPos->SetValue(ad.MoldDownLimitPos); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"打印升降轴下软限位").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_MoldDownLimitPosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_MoldDownLimitPosRecord->SetValue(false); // } // ImGui::PopID(); // // ImGui::EndGroup(); // // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // // ImGui::BeginGroup(); // if (ImGui::InputFloat(_(u8"打印升降轴速度(自动)").c_str(), &ad.MoldAutoSpeed, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_MoldAutoSpeed->SetValue(ad.MoldAutoSpeed); // } // // if (ImGui::InputFloat(_(u8"打印升降轴加速度(自动)").c_str(), &ad.MoldAutoAcc, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_MoldAutoAcc->SetValue(ad.MoldAutoAcc); // } // // if (ImGui::InputFloat(_(u8"打印升降轴减速度(自动)").c_str(), &ad.MoldAutoDec, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_MoldAutoDec->SetValue(ad.MoldAutoDec); // } // // if (ImGui::InputFloat(_(u8"打印升降轴相对位移(自动)").c_str(), &ad.MoldAutoRelShift, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_MoldAutoRelShift->SetValue(ad.MoldAutoRelShift); // } // // if (ImGui::InputFloat(_(u8"打印升降轴绝对位置(自动)").c_str(), &ad.MoldAutoAbsPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_MoldAutoAbsPos->SetValue(ad.MoldAutoAbsPos); // } // // if (ImGui::InputFloat(_(u8"打印升降轴上升扭力报警值").c_str(), &ad.MoldUpTorqueThrehold, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_MoldUpTorqueThrehold->SetValue(ad.MoldUpTorqueThrehold); // } // if (ImGui::InputFloat(_(u8"打印升降轴下降扭力报警值").c_str(), &ad.MoldDownTorqueThrehold, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_MoldDownTorqueThrehold->SetValue(ad.MoldDownTorqueThrehold); // } // // if (ImGui::InputFloat(_(u8"打印升降轴快速移动速度").c_str(), &ad.MoldHighSpeed, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_MoldHighSpeed->SetValue(ad.MoldHighSpeed); // } // // if (ImGui::InputScalar(_(u8"打印升降轴绝对值试运行位置列表").c_str(), ImGuiDataType_S16, &ad.MoldAbsTestPos, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { //打印升降轴绝对值试运行位置列表_RW // m_SysParamWrapper->m_MoldAbsTestPos->SetValue(ad.MoldAbsTestPos); // } // // if (ImGui::InputFloat(_(u8"光栅尺判断值").c_str(), &ad.GratingRulerValue, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_GratingRulerValue->SetValue(ad.GratingRulerValue); // } // // if (ImGui::InputFloat(u8"光栅尺错误判断值", m_SysParamWrapper->GetEnvUIAssist()->m_LinearEncoderErrorJudgeValue->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_LinearEncoderErrorJudgeValue->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_LinearEncoderErrorJudgeValue->GetValue()); // } // if (ImGui::InputFloat(u8"间隙补偿差值", m_SysParamWrapper->GetEnvUIAssist()->m_GapCompensateDiffValue->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_GapCompensateDiffValue->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_GapCompensateDiffValue->GetValue()); // } // // static bool isDisableMoldTorqueCheck; // if (isDisableMoldTorqueCheck != m_AxisRecordWrapper->m_DisableMoldTorqueCheck->GetValue()) { // isDisableMoldTorqueCheck = m_AxisRecordWrapper->m_DisableMoldTorqueCheck->GetValue(); // } // if (ImGui::Checkbox(u8"屏蔽打印升降轴扭力判断", &isDisableMoldTorqueCheck)) { // m_AxisRecordWrapper->m_DisableMoldTorqueCheck->SetValue(isDisableMoldTorqueCheck); // } // // ImGui::EndGroup(); // // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // // ImGui::BeginGroup(); // if (g_Admin > USER_ADMIN) // { // ImGui::SemicolonCombo(_(u8"电机正转方向").c_str(), &moldCfg->m_active_direct, directvec); // } // else { // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, true); // ImGui::SemicolonCombo(_(u8"电机正转方向").c_str(), &moldCfg->m_active_direct, directvec); // ImGui::PopItemFlag(); // } // ImGui::Checkbox(_(u8"显示位置置反").c_str(), &moldCfg->m_ShowPosInv); // ImGui::InputInt(_(u8"正限位").c_str(), &moldCfg->m_active_limit, NULL, NULL, ImGuiInputTextFlags_EnterReturnsTrue); // ImGui::InputInt(_(u8"负限位").c_str(), &moldCfg->m_negactive_limit, NULL, NULL, ImGuiInputTextFlags_EnterReturnsTrue); // //if (ImGui::InputFloat(_(u8"光栅尺移动值").c_str(), &ad.LineEncMoveValue, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // //} // // if (ImGui::InputFloat(_(u8"光栅尺脉冲当量").c_str(), &ad.LineEncPulseEqu, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_LineEncPulseEqu->SetValue(ad.LineEncPulseEqu); // } // // if (ImGui::InputFloat(_(u8"打印室压力泄压值").c_str(), &ad.PrintPressureThrehold, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_PrintPressureThrehold->SetValue(ad.PrintPressureThrehold); // } // // if (ImGui::InputScalar(_(u8"存粉小车除氧时间").c_str(), ImGuiDataType_S32, &ad.PowderCarDeoxygenTime, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_PowderCarDeoxygenTime->SetValue(ad.PowderCarDeoxygenTime); // } // ImGui::InputFloat(u8"负载最大值", &moldCfg->m_MaxLoadValue, 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue); // // if (ImGui::InputScalar(u8"升降伺服位置警示值(μm)", ImGuiDataType_U32, &m_RunCfg->m_MoldServoPosWarnOffset, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // } // if (ImGui::InputScalar(u8"层光栅位置偏差报警值(μm)", ImGuiDataType_U32, &m_RunCfg->m_LayerLinearPosAlarmOffset, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // } // if (ImGui::InputScalar(u8"打印光栅累积误差报警值(μm)", ImGuiDataType_U32, &m_RunCfg->m_PrintLinearAccDevAlarmOffset, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // // } // ImGui::EndGroup(); // // ImGui::PopItemWidth(); // ImGui::EndChild(); // // // //铺粉轴 // { // ImGui::Text(u8"铺粉轴:"); // ImGui::BeginChild("ArmAxisCfg", ImVec2(0, 260), true, ImGuiWindowFlags_NoScrollWithMouse); // AxisCfg* armCfg = ConfigManager::GetInstance()->GetArmCfg(); // ImGui::PushItemWidth(120.0f); // ImGui::BeginGroup(); // // if (ImGui::InputFloat(_(u8"铺粉轴接粉位").c_str(), &ad.ArmPowderAcceptPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_ArmPowderAcceptPos->SetValue(ad.ArmPowderAcceptPos); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"铺粉轴接粉位").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_ArmPowderAcceptPosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_ArmPowderAcceptPosRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(u8"铺粉轴接粉后位", &ad.m_ArmBackAcceptPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_ArmBackAcceptPos->SetValue(ad.m_ArmBackAcceptPos); // } // ImGui::SameLine(); // ImGui::PushID(u8"铺粉轴接粉后位"); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_ArmBackAcceptPosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_ArmBackAcceptPosRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"铺粉轴前下粉位").c_str(), &ad.ArmPowderDropFrontPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_ArmPowderDropFrontPos->SetValue(ad.ArmPowderDropFrontPos); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"铺粉轴前下粉位").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_ArmPowderDropFrontPosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_ArmPowderDropFrontPosRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"铺粉轴打印面前限位").c_str(), &ad.ArmPrintFrontLimit, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_ArmPrintFrontLimit->SetValue(ad.ArmPrintFrontLimit); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"铺粉轴打印面前限位").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_ArmPrintFrontLimitRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_ArmPrintFrontLimitRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"铺粉轴打印面后限位").c_str(), &ad.ArmPrintBackLimit, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_ArmPrintBackLimit->SetValue(ad.ArmPrintBackLimit); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"铺粉轴打印面后限位").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_ArmPrintBackLimitRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_ArmPrintBackLimitRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"铺粉轴前软限位").c_str(), &ad.ArmFrontLimit, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_ArmFrontLimit->SetValue(ad.ArmFrontLimit); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"铺粉轴前软限位").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_ArmFrontLimitRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_ArmFrontLimitRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"铺粉轴后软限位").c_str(), &ad.ArmBackLimit, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_ArmBackLimit->SetValue(ad.ArmBackLimit); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"铺粉轴后软限位").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_ArmBackLimitRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_ArmBackLimitRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(u8"铺粉轴归原快速", m_SysParamWrapper->GetEnvUIAssist()->m_ArmCatpureHomeFastSpeed->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_ArmCatpureHomeFastSpeed->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_ArmCatpureHomeFastSpeed->GetValue()); // } // if (ImGui::InputFloat(u8"铺粉轴归原慢速", m_SysParamWrapper->GetEnvUIAssist()->m_ArmCatpureHomeSlowSpeed->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_ArmCatpureHomeSlowSpeed->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_ArmCatpureHomeSlowSpeed->GetValue()); // } // // ImGui::EndGroup(); // // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // // ImGui::BeginGroup(); // if (ImGui::InputFloat(_(u8"铺粉轴速度(自动)").c_str(), &ad.ArmAutoSpeed, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_ArmAutoSpeed->SetValue(ad.ArmAutoSpeed); // } // // if (ImGui::InputFloat(_(u8"铺粉轴加速度(自动)").c_str(), &ad.ArmAxisnAutoAcc, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_ArmAxisnAutoAcc->SetValue(ad.ArmAxisnAutoAcc); // } // // if (ImGui::InputFloat(_(u8"铺粉轴减速度(自动)").c_str(), &ad.ArmAxisAutoDec, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_ArmAxisAutoDec->SetValue(ad.ArmAxisAutoDec); // } // // if (ImGui::InputFloat(_(u8"铺粉轴相对位移(自动)").c_str(), &ad.ArmAxisAutoRelShift, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_ArmAxisAutoRelShift->SetValue(ad.ArmAxisAutoRelShift); // } // // if (ImGui::InputFloat(_(u8"铺粉轴绝对位置(自动)").c_str(), &ad.ArmAxisAutoAbsPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_ArmAxisAutoAbsPos->SetValue(ad.ArmAxisAutoAbsPos); // } // if (ImGui::InputScalar(_(u8"铺粉轴绝对值试运行位置列表").c_str(), ImGuiDataType_S16, &ad.ArmAbsTestPos, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { //铺粉轴绝对值试运行位置列表_RW // m_SysParamWrapper->m_ArmAbsTestPos->SetValue(ad.ArmAbsTestPos); // } // // static bool isDisableArmTorqueCheck; // if (isDisableArmTorqueCheck != m_AxisRecordWrapper->m_DisableArmTorqueCheck->GetValue()) { // isDisableArmTorqueCheck = m_AxisRecordWrapper->m_DisableArmTorqueCheck->GetValue(); // } // if (ImGui::Checkbox(u8"屏蔽铺粉轴扭力判断", &isDisableArmTorqueCheck)) { // m_AxisRecordWrapper->m_DisableArmTorqueCheck->SetValue(isDisableArmTorqueCheck); // } // ImGui::EndGroup(); // // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // ImGui::BeginGroup(); // ImGui::PushID("ArmAxisActiveDirect"); // if (g_Admin > USER_ADMIN) // { // ImGui::SemicolonCombo(_(u8"电机正转方向").c_str(), &armCfg->m_active_direct, directvec); // } // else { // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, true); // ImGui::SemicolonCombo(_(u8"电机正转方向").c_str(), &armCfg->m_active_direct, directvec); // ImGui::PopItemFlag(); // } // ImGui::PopID(); // ImGui::PushID("ArmAxisShowPosInv"); ImGui::Checkbox(_(u8"显示位置置反").c_str(), &armCfg->m_ShowPosInv); ImGui::PopID(); // ImGui::PushID("ArmAxisActiveLimit"); ImGui::InputInt(_(u8"正限位").c_str(), &armCfg->m_active_limit, NULL, NULL, ImGuiInputTextFlags_EnterReturnsTrue); ImGui::PopID(); // ImGui::PushID("ArmAxisNegactiveLimit"); ImGui::InputInt(_(u8"负限位").c_str(), &armCfg->m_negactive_limit, NULL, NULL, ImGuiInputTextFlags_EnterReturnsTrue); ImGui::PopID(); // if (ImGui::InputFloat(_(u8"铺粉轴扭力报警值").c_str(), &ad.ArmTorqueThreshold, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_ArmTorqueThreshold->SetValue(ad.ArmTorqueThreshold); // } // ImGui::InputFloat(u8"负载最大值", &armCfg->m_MaxLoadValue, 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue); // ImGui::InputDouble(u8"铺粉时间偏移毫秒", &m_RunCfg->m_CoverSimulateTimeOffset, 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue); // ImGui::InputDouble(u8"铺粉慢风速时间偏移毫秒", &m_RunCfg->m_CoverWindSimulateTimeOffset, 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue); // ImGui::EndGroup(); // ImGui::PopItemWidth(); // // ImGui::EndChild(); // } // // // ImGui::Text(u8"供粉轴:"); // ImGui::BeginChild("SupplyAxisCfg", ImVec2(0, 250), true, ImGuiWindowFlags_NoScrollWithMouse); // AxisCfg* supplyCfg = ConfigManager::GetInstance()->GetSupplyCfg(); // ImGui::PushItemWidth(120); // ImGui::BeginGroup(); // if (ImGui::InputFloat(_(u8"供粉转轴速度(自动)").c_str(), &ad.SupplyAutoSpeed, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_SupplyAutoSpeed->SetValue(ad.SupplyAutoSpeed); // } // // if (ImGui::InputFloat(_(u8"供粉转轴加速度(自动)").c_str(), &ad.SupplyAxisnAutoAcc, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_SupplyAxisnAutoAcc->SetValue(ad.SupplyAxisnAutoAcc); // } // // if (ImGui::InputFloat(_(u8"供粉转轴减速度(自动)").c_str(), &ad.SupplyAxisAutoDec, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_SupplyAxisAutoDec->SetValue(ad.SupplyAxisAutoDec); // } // // if (ImGui::InputFloat(_(u8"供粉转轴相对位移(自动)").c_str(), &ad.SupplyAxisAutoRelShift, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_SupplyAxisAutoRelShift->SetValue(ad.SupplyAxisAutoRelShift); // } // // if (ImGui::InputFloat(_(u8"供粉转轴绝对位置(自动)").c_str(), &ad.SupplyAxisAutoAbsPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_SupplyAxisAutoAbsPos->SetValue(ad.SupplyAxisAutoAbsPos); // } // if (ImGui::InputFloat(_(u8"供粉轴扭力报警值").c_str(), &ad.SupplyTorqueThreshold, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_SupplyTorqueThreshold->SetValue(ad.SupplyTorqueThreshold); // } // // static bool isDisableSupplyTorqueCheck; // if (isDisableSupplyTorqueCheck != m_AxisRecordWrapper->m_DisableSupplyTorqueCheck->GetValue()) { // isDisableSupplyTorqueCheck = m_AxisRecordWrapper->m_DisableSupplyTorqueCheck->GetValue(); // } // if (ImGui::Checkbox(u8"屏蔽供粉轴扭力判断", &isDisableSupplyTorqueCheck)) { // m_AxisRecordWrapper->m_DisableSupplyTorqueCheck->SetValue(isDisableSupplyTorqueCheck); // } // // ImGui::EndGroup(); // // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // // ImGui::BeginGroup(); // if (g_Admin > USER_ADMIN) // { // ImGui::SemicolonCombo(_(u8"电机正转方向").c_str(), &supplyCfg->m_active_direct, directvec); // } // else { // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, true); // ImGui::SemicolonCombo(_(u8"电机正转方向").c_str(), &supplyCfg->m_active_direct, directvec); // ImGui::PopItemFlag(); // } // ImGui::Checkbox(_(u8"显示位置置反").c_str(), &supplyCfg->m_ShowPosInv); // ImGui::InputInt(_(u8"正限位").c_str(), &supplyCfg->m_active_limit, NULL, NULL, ImGuiInputTextFlags_EnterReturnsTrue); // ImGui::InputInt(_(u8"负限位").c_str(), &supplyCfg->m_negactive_limit, NULL, NULL, ImGuiInputTextFlags_EnterReturnsTrue); // if (ImGui::InputFloat(u8"供粉转轴的格数一圈", &ad.m_SupplyPowderGridPerCycle, 0, 0, "%.1f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_SupplyPowderGridPerCycle->SetValue(ad.m_SupplyPowderGridPerCycle); // } // if (ImGui::InputFloat(u8"供粉转轴每格对用度数", &ad.m_SupplyAxisAnglePerGrid, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_SupplyAxisAnglePerGrid->SetValue(ad.m_SupplyAxisAnglePerGrid); // } // if (ImGui::InputFloat(u8"供粉转轴寻边偏移度数", m_SysParamWrapper->GetEnvUIAssist()->m_RollerEdgeSearchOffset->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_RollerEdgeSearchOffset->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_RollerEdgeSearchOffset->GetValue()); // } // ImGui::InputFloat(u8"负载最大值", &supplyCfg->m_MaxLoadValue, 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue); // ImGui::EndGroup(); // // ImGui::PopItemWidth(); // ImGui::EndChild(); // // ImGui::Text(u8"铺粉参数"); // ImGui::BeginChild("CoverConfig", ImVec2(0, 260), true, ImGuiWindowFlags_NoScrollWithMouse); // ImGui::PushItemWidth(120.0f); // ImGui::BeginGroup(); // if (ImGui::InputScalar(_(u8"铺粉类型").c_str(), ImGuiDataType_S16, &ad.CoverType, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_CoverType->SetValue(ad.CoverType); // } // if (ImGui::InputFloat(_(u8"打印铺粉速度(mm/s)").c_str(), &ad.CoverSpeed, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_CoverSpeed->SetValue(ad.CoverSpeed); // } // if (ImGui::InputFloat(_(u8"打印单向铺粉返回变速(mm/s)").c_str(), &ad.CoverReturnSpeed, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_CoverReturnSpeed->SetValue(ad.CoverReturnSpeed); // } // if (ImGui::InputFloat(_(u8"打印单向铺粉距离(mm)").c_str(), &ad.CoverDistance, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_CoverDistance->SetValue(ad.CoverDistance); // } // if (ImGui::InputFloat(_(u8"打印铺粉层厚(μm)").c_str(), &ad.LayerThick, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_LayerThick->SetValue(ad.LayerThick); // } // if (ImGui::InputFloat(_(u8"打印间隙补偿(μm)").c_str(), &ad.FixGap, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_FixGap->SetValue(ad.FixGap); // } // if (ImGui::InputScalar(_(u8"打印铺粉格数").c_str(), ImGuiDataType_S16, &ad.SupplyCount, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_SupplyCount->SetValue(ad.SupplyCount); // } // // if (ImGui::InputInt(_(u8"打印下粉时间(ms)").c_str(), &ad.SupplyTime, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_SupplyTime->SetValue(ad.SupplyTime); // } // ImGui::EndGroup(); // ImGui::SameLine(); // ImGui::BeginGroup(); // // if (ImGui::InputFloat(_(u8"铺粉调试层厚(μm)").c_str(), &ad.DebugLayerThick, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_DebugLayerThick->SetValue(ad.DebugLayerThick); // } // if (ImGui::InputFloat(_(u8"铺粉调试间隙(μm)").c_str(), &ad.DebugFixGap, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_DebugFixGap->SetValue(ad.DebugFixGap); // } // if (ImGui::InputInt(_(u8"铺粉调试下粉时间(ms)").c_str(), &ad.DebugSupplyTime, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_DebugSupplyTime->SetValue(ad.DebugSupplyTime); // } // if (ImGui::InputScalar(_(u8"铺粉调试格数").c_str(), ImGuiDataType_S16, &ad.DebugSupplyCount, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_DebugSupplyCount->SetValue(ad.DebugSupplyCount); // } // if (ImGui::InputFloat(_(u8"铺粉调试铺粉距离(mm)").c_str(), &ad.DebugCoverDistance, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_DebugCoverDistance->SetValue(ad.DebugCoverDistance); // } // // if (ImGui::InputScalar(u8"铺粉归原点触发数", ImGuiDataType_S16, m_SysParamWrapper->GetEnvUIAssist()->m_AutoCaptureCoverHomeIntervalTimes->GetUIValue(), 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->GetEnvUIAssist()->m_AutoCaptureCoverHomeIntervalTimes->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_AutoCaptureCoverHomeIntervalTimes->GetValue()); // } // // ImGui::Text(u8"铺粉归原点累积次数:%d", m_SysParamWrapper->m_AutoCaptureCoverHomeCalcTimes->GetValue()); // // ImGui::Checkbox(u8"铺粉减风速", &m_ExtCfg->m_AutoCoverSlowWind); // ImGui::EndGroup(); // ImGui::PopItemWidth(); // ImGui::EndChild(); //} // //void HBDE1000::DrawPowderCtrl(bool* winShow) //{ // ImGui::PushStyleVar(ImGuiStyleVar_FramePadding, ImVec2(4, 8)); // ImGui::Begin(_(u8"铺粉装置调试").c_str(), winShow, ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_NoDocking | ImGuiWindowFlags_NoNav); // ImGui::PopStyleVar(); // // int dstepflag = 1; // double fstepflag = 1.0; // long lstepflag = 1; // static int kb = GTS_AXIS_ID_ARM; // static bool continue_move = false; // // //CoverCfg* coverCfg = m_CoverCfg; // MainAxisState* mold = m_Axis->m_Mold->GetState(); // AxisState* load = m_Axis->m_Load->GetState(); // AxisState* arm = m_Axis->m_Arm->GetState(); // AxisState* supply = m_Axis->m_Supply->GetState(); // // AxisConfig* armCfg = m_Axis->m_Arm->GetConfig(); // AxisConfig::CfgValue armCfgVal; // armCfg->GetValue(armCfgVal); // AxisConfig* moldCfg = m_Axis->m_Mold->GetConfig(); // AxisConfig::CfgValue moldCfgVal; // moldCfg->GetValue(moldCfgVal); // //AxisConfig* cleanCfg = m_Axis->m_Clean->GetConfig(); // //AxisConfig::CfgValue cleanCfgVal; // //cleanCfg->GetValue(cleanCfgVal); // AxisConfig* loadCfg = m_Axis->m_Load->GetConfig(); // AxisConfig::CfgValue loadCfgVal; // loadCfg->GetValue(loadCfgVal); // AxisConfig* supplyCfg = m_Axis->m_Supply->GetConfig(); // AxisConfig::CfgValue supplyCfgVal; // supplyCfg->GetValue(supplyCfgVal); // // ChartletManager* chartletManager = ChartletManager::GetInstance(); // ImVec2 wpos = ImGui::GetWindowPos(); // SignalService::GetInstance().GetSignalState(m_SignalState); // if (m_PowderAssist.isLeftExpand) // { // ImGui::BeginGroup(); // ImGui::BeginChild("AxisSettingChild", ImVec2(420, 520), false, ImGuiWindowFlags_NoNav); // ImGui::BeginTabBar("AxisSetting"); // if (ImGui::BeginTabItem(_(u8"成型缸").c_str())) { // ImGui::PushItemWidth(100); // if (ImGui::InputScalar(_(u8"速度(mm/s)").c_str(), ImGuiDataType_Float, &moldCfgVal.speed, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // moldCfg->m_Speed->SetValue(moldCfgVal.speed); // g_log->TraceInfo(_(u8"更改成型缸速度:%.3f").c_str(), moldCfgVal.speed); // } // if (ImGui::InputScalar(_(u8"加速度(m/s²)").c_str(), ImGuiDataType_Float, &moldCfgVal.acc, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // moldCfg->m_Acc->SetValue(moldCfgVal.acc); // g_log->TraceInfo(_(u8"更改成型缸加速度:%.3f").c_str(), moldCfgVal.acc); // } // if (ImGui::InputScalar(_(u8"减速度(m/s2)").c_str(), ImGuiDataType_Float, &moldCfgVal.dec, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // moldCfg->m_Dec->SetValue(moldCfgVal.dec); // g_log->TraceInfo(u8"更新成型缸减速度:%.3f", moldCfgVal.dec); // } // if (ImGui::InputScalar(_(u8"点动行程(μm)").c_str(), ImGuiDataType_Float, &moldCfgVal.rel, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // moldCfg->m_RefDistance->SetValue(moldCfgVal.rel); // g_log->TraceInfo(_(u8"更改成型缸点动行程:%.3f").c_str(), moldCfgVal.rel); // } // ImGui::PopItemWidth(); // // if ((g_Admin > USER_ADMIN)) { // ImGui::Dummy(ImVec2(0, 20)); // if (mold->m_MoveAbsPos) // { // if (m_SysParamWrapper->m_MoldAbsTestPos->GetValue() == 0) // { // if (ImGui::ImageButton(chartletManager->m_MoldMoveDownesting->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_Axis->m_Mold->GetCtrl()->m_MoveAbsPos->SetValue(false); // g_log->TraceInfo(u8"中断打印升降轴移动到安全位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"打印升降轴移动到安全位"); // } // else { // ImGui::ImageButton(chartletManager->m_MoldMoveDownestDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"不能执行打印升降轴移动到安全位"); // } // } // else { // if (ImGui::ImageButton(chartletManager->m_MoldMoveDownestEnable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_SysParamWrapper->m_MoldAbsTestPos->SetValue(0); // m_Axis->m_Mold->GetCtrl()->m_MoveAbsPos->SetValue(true); // g_log->TraceInfo(u8"执行打印升降轴移动到安全位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"打印升降轴移动到安全位"); // } // // ImGui::SameLine(); // // if (mold->m_MoveAbsPos) // { // if (m_SysParamWrapper->m_MoldAbsTestPos->GetValue() == 3) // { // if (ImGui::ImageButton(chartletManager->m_MoldMovePlatformBottoming->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_Axis->m_Mold->GetCtrl()->m_MoveAbsPos->SetValue(false); // g_log->TraceInfo(u8"中断打印轴移动到底座缸平面位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"中断打印轴移动到底座缸平面位"); // } // else { // ImGui::ImageButton(chartletManager->m_MoldMovePlatformBottomDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"不能执行打印轴移动到底座缸平面位"); // } // } // else { // if (ImGui::ImageButton(chartletManager->m_MoldMovePlatformBottomEnable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_SysParamWrapper->m_MoldAbsTestPos->SetValue(3); // m_Axis->m_Mold->GetCtrl()->m_MoveAbsPos->SetValue(true); // g_log->TraceInfo(u8"执行打印轴移动到底座缸平面位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"打印轴移动到底座缸平面位"); // } // ImGui::SameLine(); // if (mold->m_MoveAbsPos) // { // if (m_SysParamWrapper->m_MoldAbsTestPos->GetValue() == 4) // { // if (ImGui::ImageButton(chartletManager->m_MoldMovePlatforming->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_Axis->m_Mold->GetCtrl()->m_MoveAbsPos->SetValue(false); // g_log->TraceInfo(u8"中断打印轴移动到基板缸平面位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"中断打印轴移动到基板缸平面位"); // // } // else { // ImGui::ImageButton(chartletManager->m_MoldMovePlatformDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"不能执行打印轴移动到基板缸平面位"); // } // } // else { // if (ImGui::ImageButton(chartletManager->m_MoldMovePlatformEnable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_SysParamWrapper->m_MoldAbsTestPos->SetValue(4); // m_Axis->m_Mold->GetCtrl()->m_MoveAbsPos->SetValue(true); // g_log->TraceInfo(u8"执行打印轴移动到基板缸平面位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"打印轴移动到基板缸平面位"); // } // } // ImGui::EndTabItem(); // } // // if (ImGui::BeginTabItem(_(u8"移载轴").c_str())) { // ImGui::PushItemWidth(100); // if (ImGui::InputScalar(_(u8"速度(mm/s)").c_str(), ImGuiDataType_Float, &loadCfgVal.speed, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // loadCfg->m_Speed->SetValue(loadCfgVal.speed); // g_log->TraceInfo(u8"更新移载轴速度:%.3f", loadCfgVal.speed); // } // if (ImGui::InputScalar(_(u8"加速度(m/s²)").c_str(), ImGuiDataType_Float, &loadCfgVal.acc, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // loadCfg->m_Acc->SetValue(loadCfgVal.acc); // g_log->TraceInfo(u8"更新移载轴加速度:%.3f", loadCfgVal.acc); // } // if (ImGui::InputScalar(_(u8"减速度(m/s2)").c_str(), ImGuiDataType_Float, &loadCfgVal.dec, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // loadCfg->m_Dec->SetValue(loadCfgVal.dec); // g_log->TraceInfo(u8"更新移载轴减速度:%.3f", loadCfgVal.dec); // } // if (ImGui::InputScalar(_(u8"点动行程(μm)").c_str(), ImGuiDataType_Float, &loadCfgVal.rel, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // loadCfg->m_RefDistance->SetValue(loadCfgVal.rel); // g_log->TraceInfo(u8"更新移载轴点动距离:%.3f", loadCfgVal.rel); // } // ImGui::PopItemWidth(); // if (g_Admin > USER_ADMIN) { // ImGui::Dummy(ImVec2(0, 20)); // // if (load->m_MoveAbsPos) // { // if (m_SysParamWrapper->m_LoadAxisAbsTestPos->GetValue() == 3) // { // if (ImGui::ImageButton(chartletManager->m_LoadHandPosing->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_Axis->m_Load->GetCtrl()->m_MoveAbsPos->SetValue(false); // g_log->TraceInfo(u8"中断移载轴移动到轨道吊装位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"中断移载轴移动到轨道吊装位"); // // } // else { // ImGui::ImageButton(chartletManager->m_LoadHandPosDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"不能执行移载轴移动到轨道吊装位"); // } // } // else { // if (ImGui::ImageButton(chartletManager->m_LoadHandPosEnable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_SysParamWrapper->m_LoadAxisAbsTestPos->SetValue(3); // m_Axis->m_Load->GetCtrl()->m_MoveAbsPos->SetValue(true); // g_log->TraceInfo(u8"执行移载轴移动到轨道吊装位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"移载轴移动到轨道吊装位"); // } // // ImGui::SameLine(); // if (load->m_MoveAbsPos) // { // if (m_SysParamWrapper->m_LoadAxisAbsTestPos->GetValue() == 1) // { // if (ImGui::ImageButton(chartletManager->m_LoadCleanPosing->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_Axis->m_Load->GetCtrl()->m_MoveAbsPos->SetValue(false); // g_log->TraceInfo(u8"中断移载轴移动到轨道清粉位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"中断移载轴移动到轨道清粉位"); // // } // else { // ImGui::ImageButton(chartletManager->m_LoadCleanPosDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"不能执行移载轴移动到轨道清粉位"); // } // } // else { // if (ImGui::ImageButton(chartletManager->m_LoadCleanPosEnable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_SysParamWrapper->m_LoadAxisAbsTestPos->SetValue(1); // m_Axis->m_Load->GetCtrl()->m_MoveAbsPos->SetValue(true); // g_log->TraceInfo(u8"执行移载轴移动到轨道清粉位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"移载轴移动到轨道清粉位"); // } // ImGui::SameLine(); // if (load->m_MoveAbsPos) // { // if (m_SysParamWrapper->m_LoadAxisAbsTestPos->GetValue() == 0) // { // if (ImGui::ImageButton(chartletManager->m_LoadPrintPosing->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_Axis->m_Load->GetCtrl()->m_MoveAbsPos->SetValue(false); // g_log->TraceInfo(u8"中断移载轴移动到轨道打印位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"中断移载轴移动到轨道打印位"); // // } // else { // ImGui::ImageButton(chartletManager->m_LoadPrintPosDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"不能执行移载轴移动到轨道打印位"); // } // } // else { // if (ImGui::ImageButton(chartletManager->m_LoadPrintPosEnable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_SysParamWrapper->m_LoadAxisAbsTestPos->SetValue(0); // m_Axis->m_Load->GetCtrl()->m_MoveAbsPos->SetValue(true); // g_log->TraceInfo(u8"执行移载轴移动到轨道打印位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"移栽轴移动到轨道打印位"); // } // } // // ImGui::EndTabItem(); // } // // if (ImGui::BeginTabItem(_(u8"铺粉轴").c_str())) { // ImGui::PushItemWidth(100); // if (ImGui::InputScalar(_(u8"速度(mm/s)").c_str(), ImGuiDataType_Float, &armCfgVal.speed, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // armCfg->m_Speed->SetValue(armCfgVal.speed); // g_log->TraceInfo(u8"更新铺粉轴速度:%.3f", armCfgVal.speed); // } // if (ImGui::InputScalar(_(u8"加速度(m/s²)").c_str(), ImGuiDataType_Float, &armCfgVal.acc, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // armCfg->m_Acc->SetValue(armCfgVal.acc); // g_log->TraceInfo(u8"更新铺粉轴加速度:%.3f", armCfgVal.acc); // } // if (ImGui::InputScalar(_(u8"减速度(m/s2)").c_str(), ImGuiDataType_Float, &armCfgVal.dec, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // armCfg->m_Dec->SetValue(armCfgVal.dec); // g_log->TraceInfo(u8"更新铺粉轴减速度:%.3f", armCfgVal.dec); // } // if (ImGui::InputScalar(_(u8"点动行程(μm)").c_str(), ImGuiDataType_Float, &armCfgVal.rel, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // armCfg->m_RefDistance->SetValue(armCfgVal.rel); // g_log->TraceInfo(u8"更新铺粉轴点动距离:%.3f", armCfgVal.rel); // } // ImGui::PopItemWidth(); // if (g_Admin > USER_ADMIN) { // ImGui::Dummy(ImVec2(0, 20)); // // if (arm->m_MoveAbsPos) // { // if (m_SysParamWrapper->m_ArmAbsTestPos->GetValue() == 0) // { // if (ImGui::ImageButton(chartletManager->m_ArmAcceptPosing->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_Axis->m_Arm->GetCtrl()->m_MoveAbsPos->SetValue(false); // g_log->TraceInfo(u8"中断铺粉轴移动到接粉后位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"中断铺粉轴移动到接粉后位"); // // } // else { // ImGui::ImageButton(chartletManager->m_ArmAcceptPosDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"不能执行铺粉轴移动到接粉后位"); // } // } // else { // if (ImGui::ImageButton(chartletManager->m_ArmAcceptPosEnable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_SysParamWrapper->m_ArmAbsTestPos->SetValue(2); // m_Axis->m_Arm->GetCtrl()->m_MoveAbsPos->SetValue(true); // g_log->TraceInfo(u8"执行铺粉轴移动到接粉后位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"铺粉轴移动到接粉后位"); // } // ImGui::SameLine(); // // if (arm->m_MoveAbsPos) // { // if (m_SysParamWrapper->m_ArmAbsTestPos->GetValue() == 0) // { // if (ImGui::ImageButton(chartletManager->m_ArmAcceptPosing->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_Axis->m_Arm->GetCtrl()->m_MoveAbsPos->SetValue(false); // g_log->TraceInfo(u8"中断铺粉轴移动到接粉位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"中断铺粉轴移动到接粉位"); // // } // else { // ImGui::ImageButton(chartletManager->m_ArmAcceptPosDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"不能执行铺粉轴移动到接粉位"); // } // } // else { // if (ImGui::ImageButton(chartletManager->m_ArmAcceptPosEnable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_SysParamWrapper->m_ArmAbsTestPos->SetValue(0); // m_Axis->m_Arm->GetCtrl()->m_MoveAbsPos->SetValue(true); // g_log->TraceInfo(u8"执行铺粉轴移动到接粉位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"铺粉轴移动到接粉位"); // } // // if (arm->m_MoveAbsPos) // { // if (m_SysParamWrapper->m_ArmAbsTestPos->GetValue() == 1) // { // if (ImGui::ImageButton(chartletManager->m_ArmFrontDropPosing->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_Axis->m_Arm->GetCtrl()->m_MoveAbsPos->SetValue(false); // g_log->TraceInfo(u8"中断铺粉轴移动到前下粉位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"中断铺粉轴移动到前下粉位"); // // } // else { // ImGui::ImageButton(chartletManager->m_ArmFrontDropPosDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"不能执行铺粉轴移动到前下粉位"); // } // } // else { // if (ImGui::ImageButton(chartletManager->m_ArmFrontDropPosEnable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_SysParamWrapper->m_ArmAbsTestPos->SetValue(1); // m_Axis->m_Arm->GetCtrl()->m_MoveAbsPos->SetValue(true); // g_log->TraceInfo(u8"执行铺粉轴移动到前下粉位"); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(u8"铺粉轴移动到前下粉位"); // } // } // // ImGui::EndTabItem(); // } // // if (ImGui::BeginTabItem(_(u8"供粉轴").c_str())) { // ImGui::PushItemWidth(100); // if (ImGui::InputScalar(_(u8"速度(mm/s)").c_str(), ImGuiDataType_Float, &supplyCfgVal.speed, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // supplyCfg->m_Speed->SetValue(supplyCfgVal.speed); // g_log->TraceInfo(u8"更新下粉轴速度:%.3f", supplyCfgVal.speed); // } // if (ImGui::InputScalar(_(u8"加速度(m/s²)").c_str(), ImGuiDataType_Float, &supplyCfgVal.acc, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // supplyCfg->m_Acc->SetValue(supplyCfgVal.acc); // g_log->TraceInfo(u8"更新下粉轴加速度:%.3f", supplyCfgVal.acc); // } // if (ImGui::InputScalar(_(u8"减速度(m/s2)").c_str(), ImGuiDataType_Float, &supplyCfgVal.dec, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // supplyCfg->m_Dec->SetValue(supplyCfgVal.dec); // g_log->TraceInfo(u8"更新下粉轴减速度:%.3f", supplyCfgVal.dec); // } // if (ImGui::InputScalar(u8"粉格", ImGuiDataType_Float, &supplyCfgVal.rel, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // supplyCfg->m_RefDistance->SetValue(supplyCfgVal.rel); // g_log->TraceInfo(u8"更新下粉轴相对移动距离:%.3f", supplyCfgVal.rel); // } // ImGui::PopItemWidth(); // ImGui::EndTabItem(); // } // // if (ImGui::BeginTabItem(u8"铺粉")) { // AxisData ad; // vector ss = { _(u8"双向铺粉"),_(u8"单向铺粉"),_(u8"不铺粉") ,_(u8"双向铺粉2") ,_(u8"单向铺粉2"),_(u8"单向铺粉3") }; // m_SysParamWrapper->GetAxisData(ad); // ImGui::PushItemWidth(120); // if (ImGui::SemicolonCombo(_(u8"铺粉类型").c_str(), &ad.CoverType, ss)) { // m_SysParamWrapper->m_CoverType->SetValue(ad.CoverType); // g_log->TraceInfo(u8"更新铺粉方式:%d", ad.CoverType); // } // // if (ImGui::InputFloat(_(u8"打印铺粉速度(mm/s)").c_str(), &ad.CoverSpeed, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_CoverSpeed->SetValue(ad.CoverSpeed); // g_log->TraceInfo(u8"更新铺粉速度:%.3f", ad.CoverSpeed); // } // if (ImGui::InputFloat(_(u8"打印单向铺粉返回变速(mm/s)").c_str(), &ad.CoverReturnSpeed, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_CoverReturnSpeed->SetValue(ad.CoverReturnSpeed); // g_log->TraceInfo(u8"更新打印单向返回速度:%.3f", ad.CoverReturnSpeed); // } // if (ImGui::InputFloat(_(u8"打印单向铺粉距离(mm)").c_str(), &ad.CoverDistance, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_CoverDistance->SetValue(ad.CoverDistance); // g_log->TraceInfo(u8"更新打印单向铺粉距离:%.3f", ad.CoverDistance); // } // if (ImGui::InputFloat(_(u8"打印铺粉层厚(μm)").c_str(), &ad.LayerThick, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_LayerThick->SetValue(ad.LayerThick); // g_log->TraceInfo(u8"更新打印铺粉层厚:%.3f", ad.LayerThick); // } // if (ImGui::InputFloat(_(u8"打印间隙补偿(μm)").c_str(), &ad.FixGap, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_FixGap->SetValue(ad.FixGap); // g_log->TraceInfo(u8"更新打印间隙补偿:%.3f", ad.FixGap); // } // if (ImGui::InputScalar(_(u8"打印铺粉格数").c_str(), ImGuiDataType_S16, &ad.SupplyCount, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_SupplyCount->SetValue(ad.SupplyCount); // g_log->TraceInfo(u8"更新打印铺粉格数:%d", ad.SupplyCount); // } // if (ImGui::InputScalar(_(u8"打印下粉时间(ms)").c_str(), ImGuiDataType_S16, &ad.SupplyTime, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_SupplyTime->SetValue(ad.SupplyTime); // g_log->TraceInfo(u8"更新打印下粉时间:%d", ad.SupplyTime); // } // if (ImGui::InputFloat(_(u8"铺粉调试层厚(μm)").c_str(), &ad.DebugLayerThick, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_DebugLayerThick->SetValue(ad.DebugLayerThick); // g_log->TraceInfo(u8"更新铺粉调试层厚:%.3f", ad.DebugLayerThick); // } // if (ImGui::InputFloat(_(u8"铺粉调试间隙(μm)").c_str(), &ad.DebugFixGap, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_DebugFixGap->SetValue(ad.DebugFixGap); // g_log->TraceInfo(u8"更新铺粉调试间隙补偿:%.3f", ad.DebugFixGap); // } // if (ImGui::InputScalar(_(u8"铺粉调试下粉时间(ms)").c_str(), ImGuiDataType_S16, &ad.DebugSupplyTime, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_DebugSupplyTime->SetValue(ad.DebugSupplyTime); // g_log->TraceInfo(u8"更新铺粉调试下粉时间:%d", ad.DebugSupplyTime); // } // if (ImGui::InputScalar(_(u8"铺粉调试格数").c_str(), ImGuiDataType_S16, &ad.DebugSupplyCount, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_DebugSupplyCount->SetValue(ad.DebugSupplyCount); // g_log->TraceInfo(u8"更新铺粉调试格数:%d", ad.DebugSupplyCount); // } // if (ImGui::InputFloat(_(u8"铺粉调试铺粉距离(mm)").c_str(), &ad.DebugCoverDistance, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_DebugCoverDistance->SetValue(ad.DebugCoverDistance); // g_log->TraceInfo(u8"更新铺粉调试距离:%.3f", ad.DebugCoverDistance); // } // ImGui::PopItemWidth(); // // ImGui::Dummy(ImVec2(0, 20)); // if (m_SignalStateWrapper->m_IsCovering->GetValue()) { // ImGui::PushID("CoverTrigerStop"); // if (ImGui::Button(u8"停止", ImVec2(-1, 0))) { // m_SignalStateWrapper->m_CoverTriger->SetValue(false); // g_log->TraceInfo(u8"停止铺粉调试"); // } // ImGui::PopID(); // } // else { // // if (m_Purifier->IsCoverWindSet()) // // { // // m_Purifier->ResetSlowWind(); // // } // if (ImGui::Button(u8"铺粉调试", ImVec2(-1, 0))) { // if (m_SignalStateWrapper->m_CoverEnable->GetValue()) { // // if (m_ExtCfg->m_AutoCoverSlowWind && m_Purifier->IsWindActive()) { // // m_Purifier->SetCoverWind(true); // // } // m_SignalStateWrapper->m_IsCoverDebug->SetValue(true); // Sleep(50); // m_SignalStateWrapper->m_ManualCoverTest->SetValue(true); // Sleep(50); // g_log->TraceInfo(u8"执行铺粉调试"); // } // else { // g_Toast->AddToast(new ToastBean(u8"铺粉调试条件不成立", 3000)); // } // } // } // ImGui::EndTabItem(); // } // if (g_Admin > USER_ADMIN) { // if (ImGui::BeginTabItem(u8"控制")) { // if (m_SignalStateWrapper->m_CylinderReachPrintRun->GetValue()) { // ImGui::PushID("CylinderReachPrintTrigerStop"); // if (ImGui::Button(u8"停止", ImVec2(177, 0))) { // m_SignalStateWrapper->m_CylinderReachPrintTriger->SetValue(false); // } // ImGui::PopID(); // } // else { // // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, !m_SignalStateWrapper->m_CylinderReachPrintEnable->GetValue()); // if (ImGui::Button(u8"移动缸体到打印位", ImVec2(177, 0))) { // if (m_SignalStateWrapper->m_CylinderReachPrintEnable->GetValue()) { // m_SignalStateWrapper->m_CylinderReachPrintTriger->SetValue(true); // g_log->TraceInfo(u8"执行移动缸体到打印位"); // } // else { // g_Toast->AddToast(new ToastBean(u8"移动缸体到打印位条件不成立", 3000)); // } // m_RunCfg->m_HadSetBasePlatformPoint = false; // } // ImGui::PopItemFlag(); // } // ImGui::SameLine(); // if (m_SignalStateWrapper->m_CylinderReachCleanRun->GetValue()) { // ImGui::PushID("CylinderReachCleanTrigerStop"); // if (ImGui::Button(u8"停止", ImVec2(177, 0))) { // m_SignalStateWrapper->m_CylinderReachCleanTriger->SetValue(false); // } // ImGui::PopID(); // } // else { // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, !m_SignalStateWrapper->m_CylinderReachCleanEnable->GetValue()); // if (ImGui::Button(u8"移动缸体到清粉位", ImVec2(177, 0))) { // if (m_SignalStateWrapper->m_CylinderReachCleanEnable->GetValue()) { // m_SignalStateWrapper->m_CylinderReachCleanTriger->SetValue(true); // g_log->TraceInfo(u8"执行移动缸体到清粉位"); // } // else { // g_Toast->AddToast(new ToastBean(u8"移动缸体到清粉位条件不成立", 3000)); // } // // } // ImGui::PopItemFlag(); // } // // // if (m_SignalStateWrapper->m_CylinderPrintLoadRun->GetValue()) { // ImGui::PushID("CylinderPrintLoadTrigerStop"); // if (ImGui::Button(u8"停止", ImVec2(177, 0))) { // m_SignalStateWrapper->m_CylinderPrintLoadTriger->SetValue(false); // } // ImGui::PopID(); // } // else { // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, !m_SignalStateWrapper->m_CylinderPrintLoadEnable->GetValue()); // if (ImGui::Button(u8"缸体打印位装载", ImVec2(177, 0))) { // if (m_SignalStateWrapper->m_CylinderPrintLoadEnable->GetValue()) { // m_SignalStateWrapper->m_CylinderPrintLoadTriger->SetValue(true); // g_log->TraceInfo(u8"执行缸体打印位装载"); // } // else { // g_Toast->AddToast(new ToastBean(u8"缸体打印位装载条件不成立", 3000)); // } // m_RunCfg->m_HadSetBasePlatformPoint = false; // } // ImGui::PopItemFlag(); // } // ImGui::SameLine(); // if (m_SignalStateWrapper->m_CylinderConnectCleanBoxRun->GetValue()) { // ImGui::PushID("CylinderConnectCleanBoxTrigerStop"); // if (ImGui::Button(u8"停止", ImVec2(177, 0))) { // m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger->SetValue(false); // } // ImGui::PopID(); // } // else { // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, !m_SignalStateWrapper->m_CylinderConnectCleanBoxEnable->GetValue()); // if (ImGui::Button(u8"缸体连接清粉箱", ImVec2(177, 0))) { // if (m_SignalStateWrapper->m_CylinderConnectCleanBoxEnable->GetValue()) { // m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger->SetValue(true); // g_log->TraceInfo(u8"执行缸体连接清粉箱"); // } // else { // g_Toast->AddToast(new ToastBean(u8"缸体连接清粉箱条件不成立", 3000)); // } // } // ImGui::PopItemFlag(); // } // // if (m_SignalStateWrapper->m_CylinderPrintUnloadRun->GetValue()) { // ImGui::PushID("CylinderPrintUnloadTrigerStop"); // if (ImGui::Button(u8"停止", ImVec2(177, 0))) { // m_SignalStateWrapper->m_CylinderPrintUnloadTriger->SetValue(false); // } // ImGui::PopID(); // } // else { // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, !m_SignalStateWrapper->m_CylinderPrintUnloadEnable->GetValue()); // if (ImGui::Button(u8"缸体打印位卸载", ImVec2(177, 0))) { // if (m_SignalStateWrapper->m_CylinderPrintUnloadEnable->GetValue()) { // m_SignalStateWrapper->m_CylinderPrintUnloadTriger->SetValue(true); // g_log->TraceInfo(u8"执行缸体打印位卸载"); // } // else { // g_Toast->AddToast(new ToastBean(u8"缸体打印位卸载条件不成立", 3000)); // } // m_RunCfg->m_HadSetBasePlatformPoint = false; // } // ImGui::PopItemFlag(); // } // ImGui::SameLine(); // if (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxRun->GetValue()) { // ImGui::PushID("CylinderDisconnectCleanBoxTrigerStop"); // if (ImGui::Button(u8"停止", ImVec2(177, 0))) { // m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger->SetValue(false); // } // ImGui::PopID(); // } // else { // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, !m_SignalStateWrapper->m_CylinderDisconnectCleanBoxEnable->GetValue()); // if (ImGui::Button(u8"缸体脱离清粉箱", ImVec2(177, 0))) { // if (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxEnable->GetValue()) { // m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger->SetValue(true); // g_log->TraceInfo(u8"执行缸体脱离清粉箱"); // } // else { // g_Toast->AddToast(new ToastBean(u8"缸体脱离清粉箱条件不成立", 3000)); // } // } // ImGui::PopItemFlag(); // } // // ImGui::EndTabItem(); // } // } // ImGui::EndTabBar(); // ImGui::EndChild(); // // // if (ImGui::Button(_(u8"运动急停").c_str(), ImVec2(260, 0))) { // m_Axis->StopAll(); // g_log->TraceInfo(u8"运动急停"); // } // // ImGui::EndGroup(); // ImGui::SameLine(); // } // // ImGui::BeginChild("AxisCtrl", ImVec2(820, 670)); // if (m_PowderAssist.isLeftExpand) { // if (ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::HNARROW]->GetTex(), ImVec2(38, 50), ImVec2(0, 0), ImVec2(1, 1), 0)) { // m_PowderAssist.isLeftExpand = !m_PowderAssist.isLeftExpand; // } // } // else { // if (ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::HEXPAND]->GetTex(), ImVec2(38, 50), ImVec2(0, 0), ImVec2(1, 1), 0)) { // m_PowderAssist.isLeftExpand = !m_PowderAssist.isLeftExpand; // } // } // // ImGui::SameLine(); // ImGui::BeginGroup(); // if (ImGui::ToggleButton(_(u8"连续运动").c_str(), continue_move)) // continue_move = !continue_move; // ImGui::SameLine(); // ImGui::Text(_(u8"连续运动").c_str()); // // ImGui::Dummy(ImVec2(0, 250)); // // if (ImGui::ImageButton(chartletManager->m_LoadOut->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) { // LoadOut(); // ImGui::OpenPopup(u8"移载载出"); // g_log->TraceInfo(u8"执行移出"); // } // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(u8"载出"); // } // ImGui::SameLine(); // if (ImGui::ImageButton(chartletManager->m_LoadIn->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) { // LoadIn(); // ImGui::OpenPopup(u8"移载载入"); // g_log->TraceInfo(u8"执行移入"); // } // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(u8"载入"); // // } // // if (ImGui::BeginPopupModal(u8"移载载入", NULL, ImGuiWindowFlags_AlwaysAutoResize)) { // if (GetLoadInProcStep() == In_Start) { // ImGui::Text(u8"移载开始载入"); // } // if (GetLoadInProcStep() == In_CylinderDisconnectCleanBox) { // ImGui::Text(u8"缸体与清粉箱分离中"); // } // if (GetLoadInProcStep() == In_CylinderReachPrint) { // ImGui::Text(u8"缸体到打印位运行中"); // } // if (GetLoadInProcStep() == In_CylinderPrintLoad) { // ImGui::Text(u8"缸体打印位装载运行中"); // } // // if (GetLoadInResult() == In_Intercept) { // ImGui::TextColored(Toast::COLOR_ORANGE, GetLoadInfo().c_str()); // if (ImGui::Button(u8"确定", ImVec2(-1, 0))) // { // ImGui::CloseCurrentPopup(); // } // } // else if (GetLoadInResult() == In_Success) { // ImGui::TextColored(Toast::COLOR_GREEN, GetLoadInfo().c_str()); // if (ImGui::Button(u8"确定", ImVec2(-1, 0))) // { // ImGui::CloseCurrentPopup(); // } // } // else if (GetLoadInResult() > In_Success) { // ImGui::TextColored(Toast::COLOR_RED, GetLoadInfo().c_str()); // if (ImGui::Button(u8"确定", ImVec2(-1, 0))) // { // ImGui::CloseCurrentPopup(); // } // } // // if (IsLoadIn()) { // if (ImGui::Button(u8"中断载入", ImVec2(-1, 0))) // { // InterceptLoad(); // } // } // ImGui::EndPopup(); // } // // // if (ImGui::BeginPopupModal(u8"移载载出", NULL, ImGuiWindowFlags_AlwaysAutoResize)) { // if (GetLoadOutProcSetp() == Out_Start) // { // ImGui::Text(u8"移载开始载出"); // } // if (GetLoadOutProcSetp() == Out_CylinderPrintUnload) // { // ImGui::Text(u8"缸体打印位卸载运行中"); // } // if (GetLoadOutProcSetp() == Out_CylinderReachClean) // { // ImGui::Text(u8"缸体到清粉位运行中"); // } // if (GetLoadOutProcSetp() == Out_CylinderConnectCleanBox) // { // ImGui::Text(u8"缸体与清粉箱连接中"); // } // if (GetLoadOutProcSetp() == Out_CylinderReachHand) // { // ImGui::Text(u8"缸体与吊装位运行中"); // } // // if (GetLoadOutProcSetp() == Out_CylinderDisconnectCleanBox) // { // ImGui::Text(u8"缸体与清粉箱分离中"); // } // // // if (m_NeedWaitSelectOutPos) { // vector combtemp = { _(u8"清粉位"),_(u8"吊装位") }; // ImGui::SemicolonCombo(u8"选择载出位置", &m_SelectOutPos, combtemp); // if (ImGui::Button(u8"下一步")) // { // m_WaitSelectOutPosCommit = true; // } // } // // if (IsWaitConnectBoxCommit()) { // if (ImGui::Button(u8"执行缸体与清粉箱连接")) // { // SetWaitConnectBoxCommit(false); // } // } // // if (GetLoadOutResult() == Out_Intercept) { // ImGui::TextColored(Toast::COLOR_ORANGE, GetLoadInfo().c_str()); // if (ImGui::Button(u8"确定", ImVec2(-1, 0))) // { // ImGui::CloseCurrentPopup(); // } // } // else if (GetLoadOutResult() == Out_Success) { // ImGui::TextColored(Toast::COLOR_GREEN, GetLoadInfo().c_str()); // if (ImGui::Button(u8"确定", ImVec2(-1, 0))) // { // ImGui::CloseCurrentPopup(); // } // } // else if (GetLoadOutResult() > Out_Success) { // ImGui::TextColored(Toast::COLOR_RED, GetLoadInfo().c_str()); // if (ImGui::Button(u8"确定", ImVec2(-1, 0))) // { // ImGui::CloseCurrentPopup(); // } // } // // if (IsLoadOut()) { // if (ImGui::Button(u8"中断载出", ImVec2(-1, 0))) // { // InterceptLoad(); // } // } // ImGui::EndPopup(); // } // // ImGui::Dummy(ImVec2(0, 80)); // ImGui::RadioButton(_(u8"移载轴").c_str(), &kb, GTS_AXIS_ID_LOAD); // if (IsLoadAxisCanMoveLeft()) // { // ImGui::PushID("LoadMovePointLeft"); // if (ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::LEFT_ARROW_GREEN]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) { // m_Axis->m_Load->MovPoint(AxisConfig::ActiveDirect::LEFT); // g_log->TraceInfo(u8"移载[%.3f]往左移动%.3f", load->GetShowPos(), loadCfgVal.rel); // } // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"移载轴左移 %.3fmm").c_str(), loadCfgVal.rel / 1000.0f); // } // if (kb == GTS_AXIS_ID_LOAD && !continue_move) { // if (ImGui::IsWindowFocused() && ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_LeftArrow), false)) { // m_Axis->m_Load->MovPoint(AxisConfig::ActiveDirect::LEFT); // g_log->TraceInfo(u8"移载[%.3f]往左移动%.3f", load->GetShowPos(), loadCfgVal.rel); // } // } // } // else { // ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::LEFT_ARROW_RED]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(GetLoadAxisCanotMoveLeftInfo().c_str()); // } // } // // ImGui::SameLine(); // // if (IsLoadAxisCanMoveRight()) // { // ImGui::PushID("LoadMovePointRight"); // if (ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::RIGHT_ARROW_GREEN]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_Axis->m_Load->MovPoint(AxisConfig::ActiveDirect::RIGHT); // g_log->TraceInfo(u8"移载[%.3f]往右移动%.3f", load->GetShowPos(), loadCfgVal.rel); // } // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"移载轴右移 %.3fmm").c_str(), loadCfgVal.rel); // } // if (kb == GTS_AXIS_ID_LOAD && !continue_move) { // if (ImGui::IsWindowFocused() && ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_RightArrow), false)) { // m_Axis->m_Load->MovPoint(AxisConfig::ActiveDirect::RIGHT); // g_log->TraceInfo(u8"移载[%.3f]往右移动%.3f", load->GetShowPos(), loadCfgVal.rel); // } // } // } // else { // ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::RIGHT_ARROW_RED]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(GetLoadAxisCanotMoveRightInfo().c_str()); // } // } // // if (IsLoadAxisCanMoveLeft()) { // ImGui::PushID("LoadMoveLimitLeft"); // if (ImGui::ImageButtonEx(chartletManager->m_TextureMap[ChartletManager::LEFT_ARROW_GREEN_BAR]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) { // if (!m_PowderAssist.isLoadLeftRepeat) { // m_PowderAssist.isLoadLeftRepeat = true; // m_Axis->m_Load->MovLimitStart(AxisConfig::ActiveDirect::LEFT); // g_log->TraceInfo(u8"移载[%.3f]往左连续移动", load->GetShowPos()); // } // } // else { // if (m_PowderAssist.isLoadLeftRepeat) // { // m_Axis->m_Load->MovLimitStop(AxisConfig::ActiveDirect::LEFT); // m_PowderAssist.isLoadLeftRepeat = false; // } // } // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"移载轴左连续").c_str()); // } // } // else { // ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::LEFT_ARROW_RED_BAR]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(GetLoadAxisCanotMoveLeftInfo().c_str()); // } // if (m_PowderAssist.isLoadLeftRepeat) { // m_PowderAssist.isLoadLeftRepeat = false; // } // } // // if (kb == GTS_AXIS_ID_LOAD && continue_move) { // if (ImGui::IsWindowFocused() && ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_LeftArrow), false)) { // if (IsLoadAxisCanMoveLeft()) { // m_Axis->m_Load->MovLimitStart(AxisConfig::ActiveDirect::LEFT); // g_log->TraceInfo(u8"移载[%.3f]往左连续移动", load->GetShowPos()); // } // else { // g_Toast->AddToast(new ToastBean(GetLoadAxisCanotMoveLeftInfo(), 5000, Toast::COLOR_ORANGE)); // } // } // if (ImGui::IsWindowFocused() && ImGui::IsKeyReleased(ImGui::GetKeyIndex(ImGuiKey_LeftArrow))) // m_Axis->m_Load->MovLimitStop(AxisConfig::ActiveDirect::LEFT); // } // // ImGui::SameLine(); // if (IsLoadAxisCanMoveRight()) { // ImGui::PushID("LoadMoveLimitRight"); // if (ImGui::ImageButtonEx(chartletManager->m_TextureMap[ChartletManager::RIGHT_ARROW_GREEN_BAR]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // if (!m_PowderAssist.isLoadRightRepeat) { // m_PowderAssist.isLoadRightRepeat = true; // m_Axis->m_Load->MovLimitStart(AxisConfig::ActiveDirect::RIGHT); // g_log->TraceInfo(u8"移载[%.3f]往右连续移动", load->GetShowPos()); // } // // } // else { // if (m_PowderAssist.isLoadRightRepeat) // { // m_Axis->m_Load->MovLimitStop(AxisConfig::ActiveDirect::RIGHT); // m_PowderAssist.isLoadRightRepeat = false; // } // } // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"移载轴右连续").c_str()); // } // } // else { // ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::RIGHT_ARROW_RED_BAR]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(GetLoadAxisCanotMoveRightInfo().c_str()); // } // if (m_PowderAssist.isLoadRightRepeat) { // m_PowderAssist.isLoadRightRepeat = false; // } // } // if (kb == GTS_AXIS_ID_LOAD && continue_move) { // if (ImGui::IsWindowFocused() && ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_RightArrow), false)) // { // if (IsLoadAxisCanMoveRight()) { // m_Axis->m_Load->MovLimitStart(AxisConfig::ActiveDirect::RIGHT); // g_log->TraceInfo(u8"移载[%.3f]往右连续移动", load->GetShowPos()); // } // else { // g_Toast->AddToast(new ToastBean(GetLoadAxisCanotMoveRightInfo(), 5000, Toast::COLOR_ORANGE)); // } // } // if (ImGui::IsWindowFocused() && ImGui::IsKeyReleased(ImGui::GetKeyIndex(ImGuiKey_RightArrow))) // { // m_Axis->m_Load->MovLimitStop(AxisConfig::ActiveDirect::RIGHT); // } // } // ImGui::PushID("load_to_zero"); // if (ImGui::ImageButton(chartletManager->m_ToZero->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // load->SetZeroPos(); // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"移栽轴位置清零").c_str()); // } // // ImGui::EndGroup(); // // ImGui::SameLine(); // ImGui::BeginGroup(); // // //ImGui::Dummy(ImVec2(500,1)); // ImGui::BeginChild("SupplyCtrl", ImVec2(500, 160)); // ImGui::BeginGroup(); // ImGui::Text(u8"移栽轴:%.3f", load->GetShowPos() / 1000.0f); // ImGui::Text(u8"成型缸:%.3f", mold->GetShowPos() / 1000.0f); // ImGui::Text(u8"铺粉臂:%.3f", arm->GetShowPos() / 1000.0f); // ImGui::EndGroup(); // ImGui::SameLine(350); // ImGui::BeginGroup(); // ImGui::RadioButton(_(u8"供粉轴").c_str(), &kb, GTS_AXIS_ID_SUPPLY); // // // ImGui::PushID("SupplyMovePointFront"); // if (ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::DOWN_ARROW_GREEN]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) { // m_Axis->m_Supply->MovPoint(AxisConfig::ActiveDirect::FRONT); // } // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(u8"下粉轴前转%.2f格", supplyCfgVal.rel); // } // if (kb == GTS_AXIS_ID_SUPPLY && !continue_move) { // if (ImGui::IsWindowFocused() && ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_DownArrow), false)) { // m_Axis->m_Supply->MovPoint(AxisConfig::ActiveDirect::FRONT); // } // } // ImGui::SameLine(); // ImGui::PushID("SupplyMoveLimitFront"); // if (ImGui::ImageButtonEx(chartletManager->m_TextureMap[ChartletManager::DOWN_ARROW_GREEN_BAR]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) { // if (!m_PowderAssist.isSupplyNegativeRepeat) { // m_PowderAssist.isSupplyNegativeRepeat = true; // m_Axis->m_Supply->MovLimitStart(AxisConfig::ActiveDirect::FRONT); // //OutputDebugString("left\n"); // } // } // else { // if (m_PowderAssist.isSupplyNegativeRepeat) // { // m_Axis->m_Supply->MovLimitStop(AxisConfig::ActiveDirect::FRONT); // m_PowderAssist.isSupplyNegativeRepeat = false; // //OutputDebugString("stop\n"); // } // } // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"供粉轴左连续").c_str()); // } // if (kb == GTS_AXIS_ID_SUPPLY && continue_move) { // if (ImGui::IsWindowFocused() && ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_DownArrow), false)) { // m_Axis->m_Supply->MovLimitStart(AxisConfig::ActiveDirect::FRONT); // } // if (ImGui::IsWindowFocused() && ImGui::IsKeyReleased(ImGui::GetKeyIndex(ImGuiKey_DownArrow))) // m_Axis->m_Supply->MovLimitStop(AxisConfig::ActiveDirect::FRONT); // } // // // ImGui::EndGroup(); // ImGui::EndChild(); // // MotionDrawAssist assit; // assit.loadRPos = load->m_RPos > 1.0f ? 1.0f : load->m_RPos; // int cylinderState = m_SignalState.m_CylinderState; // if (cylinderState == CylinderInCleanUnConnectBox || // cylinderState == CylinderInCleanConnectedBox || // cylinderState == CylinderInHand) { // assit.loadRPos = 1.0f; // } // // assit.moldRpos = mold->m_RPos > 1.0f ? 1.0f : mold->m_RPos; // assit.armRPos = arm->m_RPos; // assit.isCleanPressure = true; // assit.isPrintPressure = true; // assit.isPrintMoldSupprt = false; // assit.isPrintJackup = false; // assit.isInPrintPos = (m_SignalState.m_CylinderState == CylinderInPrintLoaded || m_SignalState.m_CylinderState == CylinderInPrintUnLoaded); // assit.isCleanClose = true; // if (m_IOCfgWrapper->m_Clean3RCylinderContact)assit.isCleanConnect = m_IOCfgWrapper->m_Clean3RCylinderContact->IsActive(); // ImGui::Powder1500V1(assit); // ImGui::EndGroup(); // // ImGui::SameLine(); // ImGui::BeginGroup(); // ImGui::Dummy(ImVec2(0, 170)); // ImGui::RadioButton(_(u8"铺粉臂").c_str(), &kb, GTS_AXIS_ID_ARM); // if (IsArmCanMoveBack()) { // ImGui::PushID("ArmMovPointBack"); // if (ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::UP_ARROW_GREEN]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_Axis->m_Arm->MovPoint(AxisConfig::ActiveDirect::BACK); // } // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"铺粉轴后移 %.3fmm").c_str(), armCfgVal.rel / 1000.0f); // } // if (kb == GTS_AXIS_ID_ARM && !continue_move) { // if (ImGui::IsWindowFocused() && ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_UpArrow), false)) { // m_Axis->m_Arm->MovPoint(AxisConfig::ActiveDirect::BACK); // } // } // } // else { // ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::UP_ARROW_RED]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(GetArmCanotMoveBackInfo().c_str()); // } // } // // ImGui::SameLine(); // if (IsArmCanMoveBack()) { // ImGui::PushID("ArmMoveLimitBack"); // if (ImGui::ImageButtonEx(chartletManager->m_TextureMap[ChartletManager::UP_ARROW_GREEN_BAR]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // if (!m_PowderAssist.isArmBackRepeat) { // m_PowderAssist.isArmBackRepeat = true; // m_Axis->m_Arm->MovLimitStart(AxisConfig::ActiveDirect::BACK); // } // } // else { // if (m_PowderAssist.isArmBackRepeat) // { // m_Axis->m_Arm->MovLimitStop(AxisConfig::ActiveDirect::BACK); // m_PowderAssist.isArmBackRepeat = false; // } // } // ImGui::PopID(); // // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"铺粉轴后连续").c_str()); // } // } // else { // ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::UP_ARROW_RED_BAR]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(GetArmCanotMoveBackInfo().c_str()); // } // if (m_PowderAssist.isArmBackRepeat) { // m_PowderAssist.isArmBackRepeat = false; // } // } // if (kb == GTS_AXIS_ID_ARM && continue_move) { // if (ImGui::IsWindowFocused() && ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_UpArrow), false)) // { // if (IsArmCanMoveBack()) { // m_Axis->m_Arm->MovLimitStart(AxisConfig::ActiveDirect::BACK); // } // else { // g_Toast->AddToast(new ToastBean(GetArmCanotMoveBackInfo(), 5000, Toast::COLOR_ORANGE)); // } // } // if (ImGui::IsWindowFocused() && ImGui::IsKeyReleased(ImGui::GetKeyIndex(ImGuiKey_UpArrow))) // { // m_Axis->m_Arm->MovLimitStop(AxisConfig::ActiveDirect::BACK); // } // } // // if (IsArmCanMoveFront()) { // ImGui::PushID("ArmMovPointFront"); // if (ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::DOWN_ARROW_GREEN]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) { // m_Axis->m_Arm->MovPoint(AxisConfig::ActiveDirect::FRONT); // } // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"铺粉轴前移 %.3fmm").c_str(), armCfgVal.rel / 1000.0f); // } // // if (kb == GTS_AXIS_ID_ARM && !continue_move) { // if (ImGui::IsWindowFocused() && ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_DownArrow), false)) { // m_Axis->m_Arm->MovPoint(AxisConfig::ActiveDirect::FRONT); // } // } // } // else { // ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::DOWN_ARROW_RED]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(GetArmCanotMoveFrontInfo().c_str()); // } // } // // ImGui::SameLine(); // // if (IsArmCanMoveFront()) { // ImGui::PushID("ArmMoveLimitFront"); // if (ImGui::ImageButtonEx(chartletManager->m_TextureMap[ChartletManager::DOWN_ARROW_GREEN_BAR]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) { // if (!m_PowderAssist.isArmFrontRepeat) { // m_PowderAssist.isArmFrontRepeat = true; // m_Axis->m_Arm->MovLimitStart(AxisConfig::ActiveDirect::FRONT); // } // } // else { // if (m_PowderAssist.isArmFrontRepeat) // { // m_Axis->m_Arm->MovLimitStop(AxisConfig::ActiveDirect::FRONT); // m_PowderAssist.isArmFrontRepeat = false; // } // } // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"铺粉轴前连续").c_str()); // } // } // else { // ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::DOWN_ARROW_RED_BAR]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(GetArmCanotMoveBackInfo().c_str()); // } // if (m_PowderAssist.isArmFrontRepeat) { // m_PowderAssist.isArmFrontRepeat = false; // } // } // if (kb == GTS_AXIS_ID_ARM && continue_move) { // if (ImGui::IsWindowFocused() && ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_DownArrow), false)) { // if (IsArmCanMoveFront()) { // m_Axis->m_Arm->MovLimitStart(AxisConfig::ActiveDirect::FRONT); // } // else { // g_Toast->AddToast(new ToastBean(GetArmCanotMoveBackInfo(), 5000, Toast::COLOR_ORANGE)); // } // } // if (ImGui::IsWindowFocused() && ImGui::IsKeyReleased(ImGui::GetKeyIndex(ImGuiKey_DownArrow))) // m_Axis->m_Arm->MovLimitStop(AxisConfig::ActiveDirect::FRONT); // } // // ImGui::PushID("arm_to_zero"); // if (ImGui::ImageButton(chartletManager->m_ToZero->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // arm->SetZeroPos(); // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"铺粉轴位置清零").c_str()); // } // if (m_AxisRecordWrapper->m_PCArmOverLimitAlarm->GetValue()) // { // ImGui::SameLine(); // ImGui::PushID("arm_alarm_remove"); // if (ImGui::ImageButton(chartletManager->m_AlarmRemove->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_AxisRecordWrapper->m_PCArmOverLimitAlarmRemove->SetValue(true); // } // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(u8"铺粉轴越限解除"); // } // } // ImGui::Dummy(ImVec2(0, 35)); // ImGui::RadioButton(_(u8"成型缸").c_str(), &kb, GTS_AXIS_ID_MOLD); // if (IsMoldCanMoveUp()) { // ImGui::PushID("MoldMovePointUp"); // if (ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::UP_ARROW_GREEN]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) { // m_Axis->m_Mold->MovPoint(AxisConfig::ActiveDirect::UP); // g_log->TraceInfo(u8"升降[%.3f]往上移动%.3f", mold->GetShowPos(), moldCfgVal.rel); // } // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"成型缸上移 %.3fmm").c_str(), moldCfgVal.rel / 1000.0f); // } // if (kb == GTS_AXIS_ID_MOLD && !continue_move) { // if (ImGui::IsWindowFocused() && ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_UpArrow), false)) { // m_Axis->m_Mold->MovPoint(AxisConfig::ActiveDirect::UP); // g_log->TraceInfo(u8"升降[%.3f]往上移动%.3f", mold->GetShowPos(), moldCfgVal.rel); // } // } // } // else { // ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::UP_ARROW_RED]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(GetMoldCanotUpInfo().c_str()); // } // } // // ImGui::SameLine(); // if (IsMoldCanMoveUp()) { // ImGui::PushID("MoldMoveLimitUp"); // if (ImGui::ImageButtonEx(chartletManager->m_TextureMap[ChartletManager::UP_ARROW_GREEN_BAR]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) { // if (!m_PowderAssist.isMoldUpRepeat) { // m_PowderAssist.isMoldUpRepeat = true; // m_Axis->m_Mold->MovLimitStart(AxisConfig::ActiveDirect::UP); // g_log->TraceInfo(u8"升降[%.3f]往上连续移动", mold->GetShowPos()); // } // } // else { // if (m_PowderAssist.isMoldUpRepeat) // { // m_Axis->m_Mold->MovLimitStop(AxisConfig::ActiveDirect::UP); // m_PowderAssist.isMoldUpRepeat = false; // } // } // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"成型缸上连续").c_str()); // } // } // else { // ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::UP_ARROW_RED_BAR]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(GetMoldCanotUpInfo().c_str()); // } // if (m_PowderAssist.isMoldUpRepeat) { // m_PowderAssist.isMoldUpRepeat = false; // } // } // if (kb == GTS_AXIS_ID_MOLD && continue_move) { // if (ImGui::IsWindowFocused() && ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_UpArrow), false)) { // if (IsMoldCanMoveUp()) { // m_Axis->m_Mold->MovLimitStart(AxisConfig::ActiveDirect::UP); // g_log->TraceInfo(u8"升降[%.3f]往上连续移动", mold->GetShowPos()); // } // else { // g_Toast->AddToast(new ToastBean(GetMoldCanotUpInfo(), 5000, Toast::COLOR_ORANGE)); // } // } // if (ImGui::IsWindowFocused() && ImGui::IsKeyReleased(ImGui::GetKeyIndex(ImGuiKey_UpArrow))) // m_Axis->m_Mold->MovLimitStop(AxisConfig::ActiveDirect::UP); // } // // if (IsMoldCanMoveDown()) { // ImGui::PushID("MoldMovePointDown"); // if (ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::DOWN_ARROW_GREEN]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // m_Axis->m_Mold->MovPoint(AxisConfig::ActiveDirect::DOWN); // g_log->TraceInfo(u8"升降[%.3f]往下移动%.3f", mold->GetShowPos(), moldCfgVal.rel); // } // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"成型缸下移 %.3fmm").c_str(), moldCfgVal.rel / 1000.0f); // } // if (kb == GTS_AXIS_ID_MOLD && !continue_move) { // if (ImGui::IsWindowFocused() && ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_DownArrow), false)) { // m_Axis->m_Mold->MovPoint(AxisConfig::ActiveDirect::DOWN); // g_log->TraceInfo(u8"升降[%.3f]往下移动%.3f", mold->GetShowPos(), moldCfgVal.rel); // } // } // } // else { // ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::DOWN_ARROW_RED]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(GetMoldCanotDownInfo().c_str()); // } // } // // ImGui::SameLine(); // // if (IsMoldCanMoveDown()) { // ImGui::PushID("MoldMoveLimitDown"); // if (ImGui::ImageButtonEx(chartletManager->m_TextureMap[ChartletManager::DOWN_ARROW_GREEN_BAR]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // { // if (!m_PowderAssist.isMoldDownRepeat) { // m_PowderAssist.isMoldDownRepeat = true; // m_Axis->m_Mold->MovLimitStart(AxisConfig::ActiveDirect::DOWN); // g_log->TraceInfo(u8"升降[%.3f]往下连续移动", mold->GetShowPos()); // } // } // else { // if (m_PowderAssist.isMoldDownRepeat) // { // m_Axis->m_Mold->MovLimitStop(AxisConfig::ActiveDirect::DOWN); // m_PowderAssist.isMoldDownRepeat = false; // } // } // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"成型缸下连续").c_str()); // } // // } // else { // ImGui::ImageButton(chartletManager->m_TextureMap[ChartletManager::DOWN_ARROW_RED_BAR]->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(GetMoldCanotDownInfo().c_str()); // } // if (m_PowderAssist.isMoldDownRepeat) { // m_PowderAssist.isMoldDownRepeat = false; // } // } // if (kb == GTS_AXIS_ID_MOLD && continue_move) { // if (ImGui::IsWindowFocused() && ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_DownArrow), false)) // { // if (IsMoldCanMoveDown()) { // m_Axis->m_Mold->MovLimitStart(AxisConfig::ActiveDirect::DOWN); // g_log->TraceInfo(u8"升降[%.3f]往连续下移动", mold->GetShowPos()); // } // else // { // g_Toast->AddToast(new ToastBean(GetMoldCanotDownInfo(), 5000, Toast::COLOR_ORANGE)); // } // // } // if (ImGui::IsWindowFocused() && ImGui::IsKeyReleased(ImGui::GetKeyIndex(ImGuiKey_DownArrow))) // { // m_Axis->m_Mold->MovLimitStop(AxisConfig::ActiveDirect::DOWN); // } // } // ImGui::PushID("mold_to_zero"); // if (ImGui::ImageButton(chartletManager->m_ToZero->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) // mold->SetZeroPos(); // ImGui::PopID(); // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"成型缸位置清零").c_str()); // } // ImGui::EndGroup(); // // ImGui::EndChild(); // // ImGui::End(); // //} // //void HBDE1000::DrawAnalogExt() //{ // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // ImGui::BeginGroup(); // // if (ImGui::InputFloat(u8"打印小车1报警重量", m_SysParamWrapper->GetEnvUIAssist()->m_PrintCar1AlarmWeight->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_PrintCar1AlarmWeight->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_PrintCar1AlarmWeight->GetValue()); // } // if (ImGui::InputFloat(u8"打印小车2报警重量", m_SysParamWrapper->GetEnvUIAssist()->m_PrintCar2AlarmWeight->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_PrintCar2AlarmWeight->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_PrintCar2AlarmWeight->GetValue()); // } // if (ImGui::InputFloat(u8"清粉小车1报警重量", m_SysParamWrapper->GetEnvUIAssist()->m_CleanCar1AlarmWeight->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_CleanCar1AlarmWeight->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_CleanCar1AlarmWeight->GetValue()); // } // if (ImGui::InputFloat(u8"清粉小车2报警重量", m_SysParamWrapper->GetEnvUIAssist()->m_CleanCar2AlarmWeight->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_CleanCar2AlarmWeight->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_CleanCar2AlarmWeight->GetValue()); // } // // // ImGui::EndGroup(); // // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // ImGui::BeginGroup(); // if (ImGui::InputFloat(u8"料位棒长度", m_SysParamWrapper->GetEnvUIAssist()->m_PowderLevelLength->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_PowderLevelLength->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_PowderLevelLength->GetValue()); // } // if (ImGui::InputFloat(u8"料位棒计算长度", &m_RunCfg->m_PowderStickCalcLength, 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // if (m_RunCfg->m_PowderStickCalcLength <= 0.0f) { // m_RunCfg->m_PowderStickCalcLength = 1.0f; // } // } // // if (ImGui::InputFloat(u8"料位棒当前值", m_SysParamWrapper->GetEnvUIAssist()->m_PowderLevelValue->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_PowderLevelValue->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_PowderLevelValue->GetValue()); // } // // if (ImGui::InputFloat(u8"打印室换气泄压值", m_SysParamWrapper->GetEnvUIAssist()->m_PrintAirRenewalPresRelValue->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_PrintAirRenewalPresRelValue->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_PrintAirRenewalPresRelValue->GetValue()); // } // ImGui::EndGroup(); //} // // void HBDE1000::GetAlarmState(SignalState& signalState) { signalState.m_PLCKeepAlive = m_SignalStateWrapper->m_PLCKeepAlive->GetValue(); //PLC心跳-》PC signalState.m_PCKeepAlice = m_SignalStateWrapper->m_PCKeepAlice->GetValue(); //PC心跳-》PLC signalState.m_DeviceStandby = m_SignalStateWrapper->m_DeviceStandby->GetValue(); //设备空闲状态 signalState.m_DevicePrinting = m_SignalStateWrapper->m_DevicePrinting->GetValue(); //设备打印状态 signalState.m_DeviceManualDebug = m_SignalStateWrapper->m_DeviceManualDebug->GetValue(); //设备手动调试状态 signalState.m_DeviceAutoRuning = m_SignalStateWrapper->m_DeviceAutoRuning->GetValue(); //设备自动运行状态 signalState.m_TouchPanelCtrling = m_SignalStateWrapper->m_TouchPanelCtrling->GetValue(); //触摸屏控制状态 signalState.m_MotionDebug = m_SignalStateWrapper->m_MotionDebug->GetValue(); //动作流程调试模式 signalState.m_CylinderExceptionReset = m_SignalStateWrapper->m_CylinderExceptionReset->GetValue(); //气缸异常复位 signalState.m_PLCConnectAlarm = m_SignalStateWrapper->m_PLCConnectAlarm->GetValue(); //PC与PLC网络异常 signalState.m_SystemStopAlarm = m_SignalStateWrapper->m_SystemStopAlarm->GetValue(); //系统急停异常 signalState.m_HighPressureLackAlarm = m_SignalStateWrapper->m_HighPressureLackAlarm->GetValue(); //高压气压力不足异常 signalState.m_ProtectGasLackAlarm = m_SignalStateWrapper->m_ProtectGasLackAlarm->GetValue(); //保护气压力不足异常 signalState.m_UpLaserAirSwitchAlarm = m_SignalStateWrapper->m_UpLaserAirSwitchAlarm->GetValue(); //上层激光器支路空开异常报警 signalState.m_UpServoAirSwitchAlarm = m_SignalStateWrapper->m_UpServoAirSwitchAlarm->GetValue(); //上层伺服空开异常报警 signalState.m_ScannerPowerExceptionAlarm = m_SignalStateWrapper->m_ScannerPowerExceptionAlarm->GetValue(); //振镜电源异常报警 signalState.m_PowerDownAlarm = m_SignalStateWrapper->m_PowerDownAlarm->GetValue(); //外部电源断电异常 signalState.m_BusAirSwitchAlarm = m_SignalStateWrapper->m_BusAirSwitchAlarm->GetValue(); //总空开触点异常 signalState.m_ExtDevicePowerAirSwitchAlarm = m_SignalStateWrapper->m_ExtDevicePowerAirSwitchAlarm->GetValue(); //外部设备电源空开触点异常 signalState.m_HeatingPowerAirSwitchAlarm = m_SignalStateWrapper->m_HeatingPowerAirSwitchAlarm->GetValue(); //加热电源空开触点异常 signalState.m_LaserPowerAirSwitchAlarm = m_SignalStateWrapper->m_LaserPowerAirSwitchAlarm->GetValue(); //激光电源空开触点异常 signalState.m_ServoPowerAirSwitchAlarm = m_SignalStateWrapper->m_ServoPowerAirSwitchAlarm->GetValue(); //伺服电源空开触点 signalState.m_Laser1Alarm = m_SignalStateWrapper->m_Laser1Alarm->GetValue(); //激光器1报警 signalState.m_Laser2Alarm = m_SignalStateWrapper->m_Laser2Alarm->GetValue(); //激光器2报警 signalState.m_Laser3Alarm = m_SignalStateWrapper->m_Laser3Alarm->GetValue(); //激光器3报警 signalState.m_Laser4Alarm = m_SignalStateWrapper->m_Laser4Alarm->GetValue(); //激光器4报警 signalState.m_HeatingAlarm = m_SignalStateWrapper->m_HeatingAlarm->GetValue(); //加热异常报警 signalState.m_PrintStorageCar1JarFullWarn = m_SignalStateWrapper->m_PrintStorageCar1JarFullWarn->GetValue(); //存粉小车粉罐已满警示 signalState.m_PrintStorageCar1DisconnectWarn = m_SignalStateWrapper->m_PrintStorageCar1DisconnectWarn->GetValue(); //打印存粉小车1没有连接警示 signalState.m_CleanStorageCar1JarFullWarn = m_SignalStateWrapper->m_CleanStorageCar1JarFullWarn->GetValue(); //清粉存粉小车1粉罐已满警示 signalState.m_CleanStorageCar1DisconnectWarn = m_SignalStateWrapper->m_CleanStorageCar1DisconnectWarn->GetValue(); //清粉存粉小车1没有连接警示 signalState.m_MoldMainUpLimitActive = m_SignalStateWrapper->m_MoldMainUpLimitActive->GetValue(); //打印主轴上限位触发警示 signalState.m_MoldMainDownLimitActive = m_SignalStateWrapper->m_MoldMainDownLimitActive->GetValue(); //打印主轴下限位触发警示 signalState.m_UpsAlarm = m_SignalStateWrapper->m_UpsAlarm->GetValue(); //UPS报警 signalState.m_Laser5Alarm = m_SignalStateWrapper->m_Laser5Alarm->GetValue(); //激光5报警 signalState.m_Laser6Alarm = m_SignalStateWrapper->m_Laser6Alarm->GetValue(); //激光6报警 signalState.m_Laser7Alarm = m_SignalStateWrapper->m_Laser7Alarm->GetValue(); //激光7报警 signalState.m_Laser8Alarm = m_SignalStateWrapper->m_Laser8Alarm->GetValue(); //激光8报警 signalState.m_PrintTrackDisableWarn = m_SignalStateWrapper->m_PrintTrackDisableWarn->GetValue(); //轨道打印位感应失效警告 signalState.m_CylinderLinerSealReleaseValveException = m_SignalStateWrapper->m_CylinderLinerSealReleaseValveException->GetValue(); //缸体密封圈泄压异常 signalState.m_CleanTrackPosDisableAlarm = m_SignalStateWrapper->m_CleanTrackPosDisableAlarm->GetValue(); //轨道清粉位失效异常 signalState.m_CleanLiftStopAlarm = m_SignalStateWrapper->m_CleanLiftStopAlarm->GetValue(); //清粉升降急停异常 signalState.m_LoadHandPosSensorDiable = m_SignalStateWrapper->m_LoadHandPosSensorDiable->GetValue(); signalState.m_MainPowerLossCheckAlarm = m_SignalStateWrapper->m_MainPowerLossCheckAlarm->GetValue(); //主电源缺相检测异常 signalState.m_PrintCabinLockDisableAlarm = m_SignalStateWrapper->m_PrintCabinLockDisableAlarm->GetValue(); //打印舱电锁感应异常 signalState.m_CleanBoxFoldUpException = m_SignalStateWrapper->m_CleanBoxFoldUpException->GetValue(); //清粉箱折叠气缸升高异常 signalState.m_CleanBoxFoldDownException = m_SignalStateWrapper->m_CleanBoxFoldDownException->GetValue(); //清粉箱折叠气缸降低异常 signalState.m_CylinderHandPlatformOpenAlarm = m_SignalStateWrapper->m_CylinderHandPlatformOpenAlarm->GetValue(); //缸体吊装盖板打开异常 signalState.m_CylinderHandDoorOpenAlarm = m_SignalStateWrapper->m_CylinderHandDoorOpenAlarm->GetValue(); //缸体吊装门打开异常 signalState.m_SecurityCarpetTriggered = m_SignalStateWrapper->m_SecurityCarpetTriggered->GetValue(); //安全地毯被触发 signalState.m_RailNotInOpenOrClosePos = m_SignalStateWrapper->m_RailNotInOpenOrClosePos->GetValue(); //栏杆不在打开或者关闭位置 signalState.m_HandPlatformCloseAlarm = m_SignalStateWrapper->m_HandPlatformCloseAlarm->GetValue(); //吊装盖板关闭异常 signalState.m_ArmFrontLimit = m_SignalStateWrapper->m_ArmFrontLimit->GetValue(); //铺粉轴前限位触发警示 signalState.m_ArmBackLimit = m_SignalStateWrapper->m_ArmBackLimit->GetValue(); //铺粉轴后限位触发警示 signalState.m_LoadAxisLeftLimit = m_SignalStateWrapper->m_LoadAxisLeftLimit->GetValue(); //移载轴左限位触发警示 signalState.m_LoadAxisRightLimit = m_SignalStateWrapper->m_LoadAxisRightLimit->GetValue(); //移载轴右限位触发警示 signalState.m_SupplyHomeIndexDisableAlarm = m_SignalStateWrapper->m_SupplyHomeIndexDisableAlarm->GetValue(); //供粉转轴原点失效异常 signalState.m_PrintPressureOverLimitAlarm = m_SignalStateWrapper->m_PrintPressureOverLimitAlarm->GetValue(); //打印舱压力过高异常 signalState.m_TotalWaterCoolerAlarm = m_SignalStateWrapper->m_TotalWaterCoolerAlarm->GetValue(); //总冷水机报警 signalState.m_MoldTorqueAlarm = m_SignalStateWrapper->m_MoldTorqueAlarm->GetValue(); //打印主轴扭力异常 signalState.m_LoadTorqueAlarm = m_SignalStateWrapper->m_LoadTorqueAlarm->GetValue(); //移载轴扭力异常 signalState.m_ArmTorqueAlarm = m_SignalStateWrapper->m_ArmTorqueAlarm->GetValue(); //铺粉轴扭力异常 signalState.m_SupplyTorqueAlarm = m_SignalStateWrapper->m_SupplyTorqueAlarm->GetValue(); //供粉轴扭力异常 signalState.m_GratingRulerFail = m_SignalStateWrapper->m_GratingRulerFail->GetValue(); //光栅尺补偿失败 signalState.m_PrintMainOverSoftUpLimit = m_SignalStateWrapper->m_PrintMainOverSoftUpLimit->GetValue(); //打印主轴超软上限 signalState.m_PrintMainOverSoftDownLimit = m_SignalStateWrapper->m_PrintMainOverSoftDownLimit->GetValue(); //打印主轴超软下限 signalState.m_LoadAxisOverSoftLeftLimit = m_SignalStateWrapper->m_LoadAxisOverSoftLeftLimit->GetValue(); //移载轴超左软限 signalState.m_LoadAxisOverSoftRightLimit = m_SignalStateWrapper->m_LoadAxisOverSoftRightLimit->GetValue(); //移载轴超右软限 signalState.m_ArmOverSoftFrontLimit = m_SignalStateWrapper->m_ArmOverSoftFrontLimit->GetValue(); //铺粉轴超前软限 signalState.m_ArmOverSoftBackLimit = m_SignalStateWrapper->m_ArmOverSoftBackLimit->GetValue(); //铺粉轴超后软限 signalState.m_PrintStorageCar2JarFullWarn = m_SignalStateWrapper->m_PrintStorageCar2JarFullWarn->GetValue(); //打印存粉小车2粉罐已满警示 signalState.m_PrintStorageCar2DisconnectWarn = m_SignalStateWrapper->m_PrintStorageCar2DisconnectWarn->GetValue(); //打印存粉小车2没有连接警示 signalState.m_CleanStorageCar2JarFullWarn = m_SignalStateWrapper->m_CleanStorageCar2JarFullWarn->GetValue(); //清粉存粉小车2粉罐已满警示 signalState.m_CleanStorageCar2DisconnectWarn = m_SignalStateWrapper->m_CleanStorageCar2DisconnectWarn->GetValue(); //清粉存粉小车2没有连接警示 signalState.m_CoverBaffleNotInFrontAcceptPos = m_SignalStateWrapper->m_CoverBaffleNotInFrontAcceptPos->GetValue(); //铺粉臂挡板不在前接粉位 signalState.m_CoverBaffleNotInDropPos = m_SignalStateWrapper->m_CoverBaffleNotInDropPos->GetValue(); //铺粉臂挡板不在下粉位 signalState.m_ArmMoveBackAcceptPosException = m_SignalStateWrapper->m_ArmMoveBackAcceptPosException->GetValue(); //铺粉臂到接粉后位异常 signalState.m_UpServiceDoorOpenWarn = m_SignalStateWrapper->m_UpServiceDoorOpenWarn->GetValue(); //上层维修门打开警告 signalState.m_DownServiceDoorOpenWarn = m_SignalStateWrapper->m_DownServiceDoorOpenWarn->GetValue(); //下层维修门打开警告 signalState.m_LoadAxisManualAlarmSignal = m_SignalStateWrapper->m_LoadAxisManualAlarmSignal->GetValue(); //移栽手动异常 signalState.m_PrintMainServoAlarmSignal = m_SignalStateWrapper->m_PrintMainServoAlarmSignal->GetValue(); //打印主轴伺服驱动器异常 signalState.m_LoadAxisServoAlarmSignal = m_SignalStateWrapper->m_LoadAxisServoAlarmSignal->GetValue(); //移载轴伺服驱动器异常 signalState.m_ArmServoAlarmSignal = m_SignalStateWrapper->m_ArmServoAlarmSignal->GetValue(); //铺粉轴伺服驱动器异常 signalState.m_SupplyServoAlarmSignal = m_SignalStateWrapper->m_SupplyServoAlarmSignal->GetValue(); //供粉转轴伺服驱动器异常 signalState.m_CoverReachAcceptPowderAlarmSignal = m_SignalStateWrapper->m_CoverReachAcceptPowderAlarmSignal->GetValue(); //铺粉轴到接粉位异常 signalState.m_CoverReachDropPowderAlarmSignal = m_SignalStateWrapper->m_CoverReachDropPowderAlarmSignal->GetValue(); //铺粉轴到下粉位异常 signalState.m_LinearEncoderCheckAlarmSignal = m_SignalStateWrapper->m_LinearEncoderCheckAlarmSignal->GetValue(); //光栅尺检测异常 signalState.m_PrintMainSoftStopTrigger = m_SignalStateWrapper->m_PrintMainSoftStopTrigger->GetValue(); //打印主轴软急停触发 signalState.m_LoadAxisSoftStopTrigger = m_SignalStateWrapper->m_LoadAxisSoftStopTrigger->GetValue(); //移载轴软急停触发 signalState.m_CoverSoftStopTrigger = m_SignalStateWrapper->m_CoverSoftStopTrigger->GetValue(); //铺粉轴软急停触发 signalState.m_CoverHomeException = m_SignalStateWrapper->m_CoverHomeException->GetValue(); //铺粉归原点异常 signalState.m_CylinderSealInflationFailureAlarm = m_SignalStateWrapper->m_CylinderSealInflationFailureAlarm->GetValue(); //缸体密封圈充气失败报警 signalState.m_CylinderSealInflationHighPressureAlarm = m_SignalStateWrapper->m_CylinderSealInflationHighPressureAlarm->GetValue(); //缸体密封圈充气过压报警 signalState.m_CylinderSealLeakageWarn = m_SignalStateWrapper->m_CylinderSealLeakageWarn->GetValue(); //缸体密封圈存在漏气警告 signalState.m_SealPressureExceptionWhenPrint = m_SignalStateWrapper->m_SealPressureExceptionWhenPrint->GetValue(); //密封圈压力异常 signalState.m_CylinderState = m_SignalStateWrapper->m_CylinderState->GetValue(); //缸体状态_R signalState.m_CylinderReachPrintTriger = m_SignalStateWrapper->m_CylinderReachPrintTriger->GetValue(); //触发缸体到达打印位_自动_RW signalState.m_CylinderReachPrintRun = m_SignalStateWrapper->m_CylinderReachPrintRun->GetValue(); //缸体到打印位运行中_自动_RW signalState.m_CylinderReachPrintFinished = m_SignalStateWrapper->m_CylinderReachPrintFinished->GetValue(); //缸体到达打印位完毕_自动_RW signalState.m_CylinderPrintLoadTriger = m_SignalStateWrapper->m_CylinderPrintLoadTriger->GetValue(); //触发缸体打印位装载_自动_RW signalState.m_CylinderPrintLoadRun = m_SignalStateWrapper->m_CylinderPrintLoadRun->GetValue(); //缸体打印位装载运行中_自动_RW signalState.m_CylinderPrintLoadFinished = m_SignalStateWrapper->m_CylinderPrintLoadFinished->GetValue(); //缸体打印位装载完毕_自动_RW signalState.m_CylinderPrintUnloadTriger = m_SignalStateWrapper->m_CylinderPrintUnloadTriger->GetValue(); //触发缸体打印位卸载_自动_RW signalState.m_CylinderPrintUnloadRun = m_SignalStateWrapper->m_CylinderPrintUnloadRun->GetValue(); //缸体打印位卸载运行中_自动_RW signalState.m_CylinderPrintUnloadFinished = m_SignalStateWrapper->m_CylinderPrintUnloadFinished->GetValue(); //缸体打印位卸载完毕_自动_RW signalState.m_CylinderReachCleanTriger = m_SignalStateWrapper->m_CylinderReachCleanTriger->GetValue(); //触发缸体到达清粉位_自动_RW signalState.m_CylinderReachCleanRun = m_SignalStateWrapper->m_CylinderReachCleanRun->GetValue(); //缸体到清粉位运行中_RW signalState.m_CylinderReachCleanFinished = m_SignalStateWrapper->m_CylinderReachCleanFinished->GetValue(); //缸体到清粉位完毕_自动_RW signalState.m_CylinderConnectCleanBoxTriger = m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger->GetValue(); //触发缸体与清粉箱连接_自动_RW signalState.m_CylinderConnectCleanBoxRun = m_SignalStateWrapper->m_CylinderConnectCleanBoxRun->GetValue(); //缸体与清粉箱连接中_RW signalState.m_CylinderConnectCleanBoxFinished = m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->GetValue(); //缸体与清粉箱连接完毕_自动_RW signalState.m_CylinderDisconnectCleanBoxTriger = m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger->GetValue(); //触发缸体与清粉箱分离_自动_RW signalState.m_CylinderDisconnectCleanBoxRun = m_SignalStateWrapper->m_CylinderDisconnectCleanBoxRun->GetValue(); //缸体与清粉箱分离中_RW signalState.m_CylinderDisconnectCleanBoxFinished = m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue(); //缸体与清粉箱分离完毕_自动_RW signalState.m_CoverTriger = m_SignalStateWrapper->m_CoverTriger->GetValue(); //触发铺粉流程_W signalState.m_IsCovering = m_SignalStateWrapper->m_IsCovering->GetValue(); //铺粉流程忙_R signalState.m_IsCoverFinishedCanPrint = m_SignalStateWrapper->m_IsCoverFinishedCanPrint->GetValue(); //铺粉完成允许打印_RW signalState.m_IsCoverDebug = m_SignalStateWrapper->m_IsCoverDebug->GetValue(); //铺粉调试模式_W signalState.m_IsFirstCover = m_SignalStateWrapper->m_IsFirstCover->GetValue(); //第一次铺粉_W signalState.m_PrintDeoxygenTriger = m_SignalStateWrapper->m_PrintDeoxygenTriger->GetValue(); //触发打印室除氧_W signalState.m_PrintDeoxygenRun = m_SignalStateWrapper->m_PrintDeoxygenRun->GetValue(); //打印室除氧中_RW signalState.m_PrintDeoxygenFinished = m_SignalStateWrapper->m_PrintDeoxygenFinished->GetValue(); //打印室氧含量值到达_R signalState.m_StorgeCarDeoxygenTriger = m_SignalStateWrapper->m_StorgeCarDeoxygenTriger->GetValue(); //触发存粉小车除氧_W signalState.m_StorgeCarDeoxygenRun = m_SignalStateWrapper->m_StorgeCarDeoxygenRun->GetValue(); //存粉小车除氧中_R signalState.m_StorgeCarDeoxygenFinished = m_SignalStateWrapper->m_StorgeCarDeoxygenFinished->GetValue(); //存粉小车除氧完毕_RW signalState.m_CleanBoxVacuumTriger = m_SignalStateWrapper->m_CleanBoxVacuumTriger->GetValue(); //清粉箱启动吸尘器_R signalState.m_RasterJudgeOK = m_SignalStateWrapper->m_RasterJudgeOK->GetValue(); //光栅尺判断OK_R signalState.m_RasterJudgeNG = m_SignalStateWrapper->m_RasterJudgeNG->GetValue(); //光栅尺判断NG_R signalState.m_CylinderReachPrintEnable = m_SignalStateWrapper->m_CylinderReachPrintEnable->GetValue(); //触发缸体到打印位EN_R signalState.m_CylinderPrintLoadEnable = m_SignalStateWrapper->m_CylinderPrintLoadEnable->GetValue(); //触发缸体打印位装载EN_R signalState.m_CylinderPrintUnloadEnable = m_SignalStateWrapper->m_CylinderPrintUnloadEnable->GetValue(); //触发缸体打印位卸载EN_R signalState.m_CylinderReachCleanEnable = m_SignalStateWrapper->m_CylinderReachCleanEnable->GetValue(); //触发缸体到清粉位EN_R signalState.m_CylinderConnectCleanBoxEnable = m_SignalStateWrapper->m_CylinderConnectCleanBoxEnable->GetValue(); //触发缸体与清粉箱连接EN_R signalState.m_CylinderDisconnectCleanBoxEnable = m_SignalStateWrapper->m_CylinderDisconnectCleanBoxEnable->GetValue(); //触发缸体与清粉箱分离EN_R signalState.m_CoverEnable = m_SignalStateWrapper->m_CoverEnable->GetValue(); //触发铺粉EN_R signalState.m_UseSupplySearchEdge = m_SignalStateWrapper->m_UseSupplySearchEdge->GetValue(); signalState.m_SheildLinearEncoder = m_SignalStateWrapper->m_SheildLinearEncoder->GetValue(); signalState.m_SheilServoEmptyOpen = m_SignalStateWrapper->m_SheilServoEmptyOpen->GetValue(); signalState.m_SheildHighPressure = m_SignalStateWrapper->m_SheildHighPressure->GetValue(); //屏蔽高压气 signalState.m_UnuseCoverReachSensor = m_SignalStateWrapper->m_UnuseCoverReachSensor->GetValue(); //不使用铺粉轴到位感应器 signalState.m_UseCoverBaffleSensor = m_SignalStateWrapper->m_UseCoverBaffleSensor->GetValue(); //使用铺粉挡板感应器 signalState.m_UseArmCaptureHome = m_SignalStateWrapper->m_UseArmCaptureHome->GetValue(); signalState.m_LinearEncoderOppDirection = m_SignalStateWrapper->m_LinearEncoderOppDirection->GetValue(); signalState.m_CoverV2UseCintinueMode = m_SignalStateWrapper->m_CoverV2UseCintinueMode->GetValue(); signalState.m_UseCoverShiftSpeed = m_SignalStateWrapper->m_UseCoverShiftSpeed->GetValue(); //使用打印区域变速 signalState.m_PrintTorqueUpInsideLimit = m_SignalStateWrapper->m_PrintTorqueUpInsideLimit->GetValue(); //扭力值在上升扭力范围内 signalState.m_ArmNotUponBasePlatform = m_SignalStateWrapper->m_ArmNotUponBasePlatform->GetValue(); //铺粉轴不在基板范围内 signalState.m_PrintMoldPosInsideUpSoftLimit = m_SignalStateWrapper->m_PrintMoldPosInsideUpSoftLimit->GetValue(); //轴位置没超过软上限 signalState.m_PrintInsideUpLimit = m_SignalStateWrapper->m_PrintInsideUpLimit->GetValue(); //上限位没触发 signalState.m_PrintTorqueDownInsideLimit = m_SignalStateWrapper->m_PrintTorqueDownInsideLimit->GetValue(); //扭力值在下降扭力范围内 signalState.m_PrintAxisPosInsideDownSoftLimit = m_SignalStateWrapper->m_PrintAxisPosInsideDownSoftLimit->GetValue(); //轴位置没超过软下限 signalState.m_PrintInsideDownLimit = m_SignalStateWrapper->m_PrintInsideDownLimit->GetValue(); //下限位没触发 signalState.m_PrintMainServoNoAlarm = m_SignalStateWrapper->m_PrintMainServoNoAlarm->GetValue(); //打印主轴伺服无异常 signalState.m_PrintMoldInPrintPos = m_SignalStateWrapper->m_PrintMoldInPrintPos->GetValue(); //缸体在打印位 signalState.m_PrintMoldInCleanPos = m_SignalStateWrapper->m_PrintMoldInCleanPos->GetValue(); //缸体在清粉位 signalState.m_PrintMoldInHandPos = m_SignalStateWrapper->m_PrintMoldInHandPos->GetValue(); //缸体在吊装位 signalState.m_MoldUpDownServiceDoorCloseStatue = m_SignalStateWrapper->m_MoldUpDownServiceDoorCloseStatue->GetValue(); //升降上下维护门在关闭状态 signalState.m_PrintJackupInSafePos = m_SignalStateWrapper->m_PrintJackupInSafePos->GetValue(); //打印顶升轴在安全位 signalState.m_LoadTorqueInsideLimit = m_SignalStateWrapper->m_LoadTorqueInsideLimit->GetValue(); //扭力值在扭力范围内 signalState.m_LoadPosInsideLeftSoftLimit = m_SignalStateWrapper->m_LoadPosInsideLeftSoftLimit->GetValue(); //轴位置没超过软左限 signalState.m_LoadPosInsideRightSoftLimit = m_SignalStateWrapper->m_LoadPosInsideRightSoftLimit->GetValue(); //轴位置没超过软右限 signalState.m_CylinderSealNoInflationStatue = m_SignalStateWrapper->m_CylinderSealNoInflationStatue->GetValue(); //密封圈无充气状态 signalState.m_LoadUpDownServiceDoorCloseStatue = m_SignalStateWrapper->m_LoadUpDownServiceDoorCloseStatue->GetValue(); //移载上下维护门在关闭状态 signalState.m_LoadLeftNotInsideLimit = m_SignalStateWrapper->m_LoadLeftNotInsideLimit->GetValue(); //左限位没触发 signalState.m_LoadRightNotInsideLimit = m_SignalStateWrapper->m_LoadRightNotInsideLimit->GetValue(); //右限位没触发 signalState.m_LoadServoNoAlarm = m_SignalStateWrapper->m_LoadServoNoAlarm->GetValue(); //移载轴伺服无异常 signalState.m_PrintUpDownPosBelowPlatform = m_SignalStateWrapper->m_PrintUpDownPosBelowPlatform->GetValue(); //打印顶升轴位置低于基板缸平面 signalState.m_ArmTorqueInsideLimit = m_SignalStateWrapper->m_ArmTorqueInsideLimit->GetValue(); //扭力值在扭力范围内 signalState.m_ArmPosInsideSoftFrontLimit = m_SignalStateWrapper->m_ArmPosInsideSoftFrontLimit->GetValue(); //轴位置没超过软前限 signalState.m_ArmPosInsideSoftBackLimit = m_SignalStateWrapper->m_ArmPosInsideSoftBackLimit->GetValue(); //轴位置没超过软后限 signalState.m_ArmPosInsideFrontLimit = m_SignalStateWrapper->m_ArmPosInsideFrontLimit->GetValue(); //前限位没触发 signalState.m_ArmPosInsideBackLimit = m_SignalStateWrapper->m_ArmPosInsideBackLimit->GetValue(); //后限位没触发 signalState.m_ArmServoNoAlarm = m_SignalStateWrapper->m_ArmServoNoAlarm->GetValue(); signalState.m_CylinderMoveHandPosEnable = m_SignalStateWrapper->m_CylinderMoveHandPosEnable->GetValue(); //触发缸体到吊装位En signalState.m_CylinderMoveHandPos = m_SignalStateWrapper->m_CylinderMoveHandPos->GetValue(); //触发缸体到吊装位 signalState.m_CylinderMovingHandPos = m_SignalStateWrapper->m_CylinderMovingHandPos->GetValue(); //触发缸体到吊装位运行中 signalState.m_CylinderMovedHandPos = m_SignalStateWrapper->m_CylinderMovedHandPos->GetValue();//触发缸体到吊装位完毕 signalState.m_PrintAirRenewalEnable = m_SignalStateWrapper->m_PrintAirRenewalEnable->GetValue(); //打印室换气功能EN signalState.m_PrintAirRenewalTrigger = m_SignalStateWrapper->m_PrintAirRenewalTrigger->GetValue(); //触发打印室换气 signalState.m_AllowRiseWindSpeed = m_SignalStateWrapper->m_AllowRiseWindSpeed->GetValue(); //允许提风速 signalState.m_ManualCoverTest = m_SignalStateWrapper->m_ManualCoverTest->GetValue(); //手动铺粉测试 signalState.m_RollerEdgeSearching = m_SignalStateWrapper->m_RollerEdgeSearching->GetValue(); //滚粉轴寻边中 signalState.m_RollerEdgeSearchSuccess = m_SignalStateWrapper->m_RollerEdgeSearchSuccess->GetValue(); //滚粉轴寻边成功 signalState.m_RollerEdgeSearchFaild = m_SignalStateWrapper->m_RollerEdgeSearchFaild->GetValue(); //滚粉轴寻边失败 signalState.m_IsInPrintCylinderSeparatePos = m_SignalStateWrapper->m_IsInPrintCylinderSeparatePos->GetValue(); //打印缸体分离位 signalState.m_IsInPrintPlatformBottomPos = m_SignalStateWrapper->m_IsInPrintPlatformBottomPos->GetValue(); //打印基板底座面 signalState.m_IsInPrintPlatformFlatPos = m_SignalStateWrapper->m_IsInPrintPlatformFlatPos->GetValue(); //打印基板平面 signalState.m_IsInLoadPrintPos = m_SignalStateWrapper->m_IsInLoadPrintPos->GetValue(); //移载打印位 signalState.m_IsInLoadCleanPos = m_SignalStateWrapper->m_IsInLoadCleanPos->GetValue(); //移载清粉位 signalState.m_IsInDropPowderPos = m_SignalStateWrapper->m_IsInDropPowderPos->GetValue(); //铺粉下粉位 signalState.m_IsInAcceptPowderPos = m_SignalStateWrapper->m_IsInAcceptPowderPos->GetValue(); //铺粉接粉位 signalState.m_PrintMoldServoAlarm = (m_Axis->m_Mold->GetState()->m_ServoException || m_Axis->m_MoldSlave->GetState()->m_ServoException); signalState.m_ArmServoAlarm = m_Axis->m_Arm->GetState()->m_ServoException; signalState.m_SupplyServoAlarm = m_Axis->m_Supply->GetState()->m_ServoException; //memcpy_s(&alarmState, sizeof(AlarmState),m_AlarmStateWrapper,sizeof(alarmState)); } void HBDE1000::LoadInRun() { SetLoadInProcStep(In_Start); if ((m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInPrintLoaded)) { SetLoadInResult(In_Success, u8"缸体已载入完成"); return; } if (m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInCleanConnectedBox) { SetLoadInProcStep(In_CylinderDisconnectCleanBox); m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger->SetValue(true); Sleep(1000); while (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxRun->GetValue()) { Sleep(300); if (!m_LoadCtrlFlag) { m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger->SetValue(false); break; } } if (!m_LoadCtrlFlag) { SetLoadInResult(In_Intercept, u8"载入中断"); return; } while (m_LoadCtrlFlag) { Sleep(500); if (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { break; } } Sleep(500); if (!m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { stringstream ss; ss << u8"缸体与清粉箱分离异常:\n"; SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << u8"高压气压力不足异常\n"; if (signalState.m_SystemStopAlarm) ss << u8"系统急停异常\n"; if (signalState.m_CleanLiftStopAlarm) ss << u8"清粉升降急停异常\n"; if (signalState.m_PrintMainSoftStopTrigger) ss << u8"打印主轴软急停触发\n"; if (signalState.m_LoadAxisSoftStopTrigger) ss << u8"移载轴软急停触发\n"; if (signalState.m_CoverSoftStopTrigger) ss << u8"铺粉轴软急停触发\n"; if (signalState.m_PrintMainOverSoftUpLimit) ss << u8"打印主轴超软上限\n"; if (signalState.m_PrintMainOverSoftDownLimit) ss << u8"打印主轴超软下限\n"; if (signalState.m_MoldMainUpLimitActive) ss << u8"打印主轴上限位触发警示\n"; if (signalState.m_MoldMainDownLimitActive) ss << u8"打印主轴下限位触发警示\n"; if (signalState.m_MoldTorqueAlarm) ss << u8"打印主轴扭力异常\n"; if (signalState.m_CylinderLinerSealReleaseValveException) ss << u8"缸体密封圈泄压异常\n"; if (signalState.m_CleanBoxFoldDownException) ss << u8"清粉箱折叠气缸降低异常\n"; SetLoadInResult(In_CylinderDisconnectCleanBoxError, ss.str()); return; } if (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->SetValue(false); } Sleep(1000); } if (!m_LoadCtrlFlag) { SetLoadInResult(In_Intercept, u8"载入中断"); return; } if (m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInCleanUnConnectBox || m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInHand || m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInMid) { SetLoadInProcStep(In_CylinderReachPrint); m_SignalStateWrapper->m_CylinderReachPrintTriger->SetValue(true); Sleep(1000); while (m_SignalStateWrapper->m_CylinderReachPrintRun->GetValue()) { Sleep(300); if (!m_LoadCtrlFlag) { m_SignalStateWrapper->m_CylinderReachPrintTriger->SetValue(false); break; } } if (!m_LoadCtrlFlag) { SetLoadInResult(In_Intercept, u8"载入中断"); return; } Sleep(500); if (!m_SignalStateWrapper->m_CylinderReachPrintFinished->GetValue()) { stringstream ss; ss << u8"缸体移动到打印位异常:\n"; SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << u8"高压气压力不足异常\n"; if (signalState.m_SystemStopAlarm) ss << u8"系统急停异常\n"; if (signalState.m_CleanLiftStopAlarm) ss << u8"清粉升降急停异常\n"; if (signalState.m_PrintMainSoftStopTrigger) ss << u8"打印主轴软急停触发\n"; if (signalState.m_LoadAxisSoftStopTrigger) ss << u8"移载轴软急停触发\n"; if (signalState.m_CoverSoftStopTrigger) ss << u8"铺粉轴软急停触发\n"; if (signalState.m_LoadAxisServoAlarmSignal) ss << u8"移载轴伺服驱动器异常\n"; if (signalState.m_LoadAxisOverSoftLeftLimit) ss << u8"移载轴超左软限\n"; if (signalState.m_LoadAxisOverSoftRightLimit) ss << u8"移载轴超右软限\n"; if (signalState.m_LoadAxisLeftLimit) ss << u8"移载轴左限位触发警示\n"; if (signalState.m_LoadAxisRightLimit) ss << u8"移载轴右限位触发警示\n"; if (signalState.m_LoadTorqueAlarm) ss << u8"移载轴扭力异常\n"; if (signalState.m_CylinderHandPlatformOpenAlarm) ss << u8"缸体吊装盖板打开异常\n"; if (signalState.m_CylinderHandDoorOpenAlarm) ss << u8"缸体吊装门打开异常\n"; if (signalState.m_HandPlatformCloseAlarm) ss << u8"吊装盖板关闭异常\n"; if (signalState.m_CylinderLinerSealReleaseValveException) ss << u8"缸体密封圈泄压异常\n"; if (signalState.m_UpServiceDoorOpenWarn) ss << u8"上维修门打开异常\n"; if (signalState.m_DownServiceDoorOpenWarn) ss << u8"下维修门打开异常\n"; SetLoadInResult(In_CylinderReachPrintError, ss.str()); return; } if (m_SignalStateWrapper->m_CylinderReachPrintFinished->GetValue()) { m_SignalStateWrapper->m_CylinderReachPrintFinished->SetValue(false); } Sleep(1000); } if (!m_LoadCtrlFlag) { SetLoadInResult(In_Intercept, u8"载入中断"); return; } if (m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInPrintUnLoaded) { SetLoadInProcStep(In_CylinderPrintLoad); m_SignalStateWrapper->m_CylinderPrintLoadTriger->SetValue(true); Sleep(500); while (m_SignalStateWrapper->m_CylinderPrintLoadRun->GetValue()) { Sleep(300); if (!m_LoadCtrlFlag) { m_SignalStateWrapper->m_CylinderPrintLoadTriger->SetValue(false); break; } } if (!m_LoadCtrlFlag) { SetLoadInResult(In_Intercept, u8"载入中断"); return; } Sleep(500); if (!m_SignalStateWrapper->m_CylinderPrintLoadFinished->GetValue()) { stringstream ss; ss << u8"缸体打印位装载异常:\n"; SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << u8"高压气压力不足异常\n"; if (signalState.m_SystemStopAlarm) ss << u8"系统急停异常\n"; if (signalState.m_CleanLiftStopAlarm) ss << u8"清粉升降急停异常\n"; if (signalState.m_PrintMainSoftStopTrigger) ss << u8"打印主轴软急停触发\n"; if (signalState.m_LoadAxisSoftStopTrigger) ss << u8"移载轴软急停触发\n"; if (signalState.m_CoverSoftStopTrigger) ss << u8"铺粉轴软急停触发\n"; if (signalState.m_CylinderSealInflationFailureAlarm) ss << u8"缸体密封圈充气失败报警\n"; if (signalState.m_CylinderSealInflationHighPressureAlarm) ss << u8"缸体密封圈充气过压报警\n";; SetLoadInResult(In_CylinderPrintLoadError, ss.str()); return; } if (m_SignalStateWrapper->m_CylinderPrintLoadFinished->GetValue()) { m_SignalStateWrapper->m_CylinderPrintLoadFinished->SetValue(false); } Sleep(1000); } SetLoadInResult(In_Success, u8"缸体已载入完成"); } void HBDE1000::LoadOutRun() { SetLoadOutProcStep(Out_Start); if (m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInHand) { SetLoadOutResult(Out_Success, u8"缸体载出已完成"); return; } m_WaitSelectOutPosCommit->SetValue(false); m_NeedWaitSelectOutPos->SetValue(true); while (!m_WaitSelectOutPosCommit->GetValue() && m_LoadCtrlFlag) { Sleep(300); } m_NeedWaitSelectOutPos->SetValue(false); if (!m_LoadCtrlFlag) { SetLoadOutResult(Out_Intercept, u8"载出中断"); return; } if (m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInPrintLoaded || m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInPrintUnLoaded) { SetLoadOutProcStep(Out_CylinderPrintUnload); m_SignalStateWrapper->m_CylinderPrintUnloadTriger->SetValue(true); Sleep(1000); while (m_SignalStateWrapper->m_CylinderPrintUnloadRun->GetValue()) { Sleep(300); if (!m_LoadCtrlFlag) { m_SignalStateWrapper->m_CylinderPrintUnloadTriger->SetValue(false); break; } } if (!m_LoadCtrlFlag) { SetLoadOutResult(Out_Intercept, u8"载出中断"); return; } Sleep(500); if (!m_SignalStateWrapper->m_CylinderPrintUnloadFinished->GetValue()) { stringstream ss; ss << u8"缸体打印位卸载异常:\n"; SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << u8"高压气压力不足异常\n"; if (signalState.m_SystemStopAlarm) ss << u8"系统急停异常\n"; if (signalState.m_CleanLiftStopAlarm) ss << u8"清粉升降急停异常\n"; if (signalState.m_PrintMainSoftStopTrigger) ss << u8"打印主轴软急停触发\n"; if (signalState.m_LoadAxisSoftStopTrigger) ss << u8"移载轴软急停触发\n"; if (signalState.m_CoverSoftStopTrigger) ss << u8"铺粉轴软急停触发\n"; if (signalState.m_PrintMainOverSoftUpLimit) ss << u8"打印主轴超软上限\n"; if (signalState.m_PrintMainOverSoftDownLimit) ss << u8"打印主轴超软下限\n"; if (signalState.m_MoldMainUpLimitActive) ss << u8"打印主轴上限位触发警示\n"; if (signalState.m_MoldMainDownLimitActive) ss << u8"打印主轴下限位触发警示\n"; if (signalState.m_MoldTorqueAlarm) ss << u8"打印主轴扭力异常\n"; if (signalState.m_CylinderLinerSealReleaseValveException) ss << u8"缸体密封圈泄压异常\n"; SetLoadOutResult(Out_CylinderPrintUnloadError, ss.str()); return; } if (m_SignalStateWrapper->m_CylinderPrintUnloadFinished->GetValue()) { m_SignalStateWrapper->m_CylinderPrintUnloadFinished->SetValue(false); } Sleep(1000); } if (!m_LoadCtrlFlag) { SetLoadOutResult(Out_Intercept, u8"载出中断"); return; } if (m_SelectOutPos->GetValue() == 0) { if (m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInCleanConnectedBox) { SetLoadOutResult(Out_Success, u8"缸体已载出到清粉位"); return; } if (m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInPrintUnLoaded || m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInMid) { SetLoadOutProcStep(Out_CylinderReachClean); m_SignalStateWrapper->m_CylinderReachCleanTriger->SetValue(true); Sleep(1000); while (m_SignalStateWrapper->m_CylinderReachCleanRun->GetValue()) { Sleep(300); if (!m_LoadCtrlFlag) { m_SignalStateWrapper->m_CylinderReachCleanTriger->SetValue(false); break; } } if (!m_LoadCtrlFlag) { SetLoadOutResult(Out_Intercept, u8"载出中断"); return; } Sleep(500); if (!m_SignalStateWrapper->m_CylinderReachCleanFinished->GetValue()) { stringstream ss; ss << u8"缸体移动到清粉位异常:\n"; SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << u8"高压气压力不足异常\n"; if (signalState.m_SystemStopAlarm) ss << u8"系统急停异常\n"; if (signalState.m_CleanLiftStopAlarm) ss << u8"清粉升降急停异常\n"; if (signalState.m_PrintMainSoftStopTrigger) ss << u8"打印主轴软急停触发\n"; if (signalState.m_LoadAxisSoftStopTrigger) ss << u8"移载轴软急停触发\n"; if (signalState.m_CoverSoftStopTrigger) ss << u8"铺粉轴软急停触发\n"; if (signalState.m_LoadAxisServoAlarmSignal) ss << u8"移载轴伺服驱动器异常\n"; if (signalState.m_LoadAxisOverSoftLeftLimit) ss << u8"移载轴超左软限\n"; if (signalState.m_LoadAxisOverSoftRightLimit) ss << u8"移载轴超右软限\n"; if (signalState.m_LoadAxisLeftLimit) ss << u8"移载轴左限位触发警示\n"; if (signalState.m_LoadAxisRightLimit) ss << u8"移载轴右限位触发警示\n"; if (signalState.m_LoadTorqueAlarm) ss << u8"移载轴扭力异常\n"; if (signalState.m_CylinderLinerSealReleaseValveException) ss << u8"缸体密封圈泄压异常\n"; if (signalState.m_CylinderHandPlatformOpenAlarm) ss << u8"缸体吊装盖板打开异常\n"; if (signalState.m_CylinderHandDoorOpenAlarm) ss << u8"缸体吊装门打开异常\n"; if (signalState.m_HandPlatformCloseAlarm) ss << u8"吊装盖板关闭异常\n"; if (signalState.m_UpServiceDoorOpenWarn) ss << u8"上维修门打开异常\n"; if (signalState.m_DownServiceDoorOpenWarn) ss << u8"下维修门打开异常\n"; SetLoadOutResult(Out_CylinderReachCleanError, ss.str()); return; } if (m_SignalStateWrapper->m_CylinderReachCleanFinished->GetValue()) { m_SignalStateWrapper->m_CylinderReachCleanFinished->SetValue(false); } Sleep(1000); } if (!m_LoadCtrlFlag) { SetLoadOutResult(Out_Intercept, u8"载出中断"); return; } if (m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInCleanUnConnectBox) { m_WaitConnectBoxCommit->SetValue(true); while (m_LoadCtrlFlag && m_WaitConnectBoxCommit->GetValue()) { Sleep(300); } if (!m_WaitConnectBoxCommit->GetValue()) { SetLoadOutProcStep(Out_CylinderConnectCleanBox); m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger->SetValue(true); Sleep(1000); while (m_SignalStateWrapper->m_CylinderConnectCleanBoxRun->GetValue()) { Sleep(300); if (!m_LoadCtrlFlag) { m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger->SetValue(false); break; } } if (!m_LoadCtrlFlag) { SetLoadOutResult(Out_Intercept, u8"载出中断"); return; } while (m_LoadCtrlFlag) { Sleep(500); if (m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->GetValue()) { break; } } Sleep(500); if (!m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->GetValue()) { stringstream ss; ss << u8"缸体与清粉箱连接异常:\n"; SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << u8"高压气压力不足异常\n"; if (signalState.m_SystemStopAlarm) ss << u8"系统急停异常\n"; if (signalState.m_CleanLiftStopAlarm) ss << u8"清粉升降急停异常\n"; if (signalState.m_PrintMainSoftStopTrigger) ss << u8"打印主轴软急停触发\n"; if (signalState.m_LoadAxisSoftStopTrigger) ss << u8"移载轴软急停触发\n"; if (signalState.m_CoverSoftStopTrigger) ss << u8"铺粉轴软急停触发\n"; if (signalState.m_CylinderSealInflationFailureAlarm) ss << u8"缸体密封圈充气失败报警\n"; if (signalState.m_CylinderSealInflationHighPressureAlarm) ss << u8"缸体密封圈充气过压报警\n";; if (signalState.m_CleanBoxFoldUpException) ss << u8"清粉箱折叠气缸升高异常\n"; SetLoadOutResult(Out_CylinderConnectCleanBoxError, ss.str()); return; } if (m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->GetValue()) { m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->SetValue(false); } Sleep(1000); } } if (!m_LoadCtrlFlag) { SetLoadOutResult(Out_Intercept, u8"载出中断"); return; } SetLoadOutResult(Out_Success, u8"缸体载出已完成"); } else if (m_SelectOutPos->GetValue() == 1) { if (m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInCleanConnectedBox) { SetLoadOutProcStep(Out_CylinderDisconnectCleanBox); m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger->SetValue(true); Sleep(1000); while (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxRun->GetValue()) { Sleep(300); if (!m_LoadCtrlFlag) { m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger->SetValue(false); break; } } if (!m_LoadCtrlFlag) { SetLoadOutResult(Out_Intercept, u8"载出中断"); return; } while (m_LoadCtrlFlag) { Sleep(500); if (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { break; } } Sleep(500); if (!m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { stringstream ss; ss << u8"缸体与清粉箱分离异常:\n"; SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << u8"高压气压力不足异常\n"; if (signalState.m_SystemStopAlarm) ss << u8"系统急停异常\n"; if (signalState.m_CleanLiftStopAlarm) ss << u8"清粉升降急停异常\n"; if (signalState.m_PrintMainSoftStopTrigger) ss << u8"打印主轴软急停触发\n"; if (signalState.m_LoadAxisSoftStopTrigger) ss << u8"移载轴软急停触发\n"; if (signalState.m_CoverSoftStopTrigger) ss << u8"铺粉轴软急停触发\n"; if (signalState.m_PrintMainOverSoftUpLimit) ss << u8"打印主轴超软上限\n"; if (signalState.m_PrintMainOverSoftDownLimit) ss << u8"打印主轴超软下限\n"; if (signalState.m_MoldMainUpLimitActive) ss << u8"打印主轴上限位触发警示\n"; if (signalState.m_MoldMainDownLimitActive) ss << u8"打印主轴下限位触发警示\n"; if (signalState.m_MoldTorqueAlarm) ss << u8"打印主轴扭力异常\n"; if (signalState.m_CylinderLinerSealReleaseValveException) ss << u8"缸体密封圈泄压异常\n"; if (signalState.m_CleanBoxFoldDownException) ss << u8"清粉箱折叠气缸降低异常\n"; SetLoadOutResult(Out_CylinderDisconnectCleanBoxError, ss.str()); return; } if (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->SetValue(false); } Sleep(1000); } if (!m_LoadCtrlFlag) { SetLoadOutResult(Out_Intercept, u8"载出中断"); return; } if (m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInPrintUnLoaded || m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInMid || m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInCleanUnConnectBox) { SetLoadOutProcStep(Out_CylinderReachHand); m_SignalStateWrapper->m_CylinderMoveHandPos->SetValue(true); Sleep(1000); while (m_SignalStateWrapper->m_CylinderMovingHandPos->GetValue()) { Sleep(300); if (!m_LoadCtrlFlag) { m_SignalStateWrapper->m_CylinderMoveHandPos->SetValue(false); break; } } if (!m_LoadCtrlFlag) { SetLoadOutResult(Out_Intercept, u8"载出中断"); return; } Sleep(500); if (!m_SignalStateWrapper->m_CylinderMovedHandPos->GetValue()) { stringstream ss; ss << u8"缸体移动到吊装位异常:\n"; SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << u8"高压气压力不足异常\n"; if (signalState.m_SystemStopAlarm) ss << u8"系统急停异常\n"; if (signalState.m_CleanLiftStopAlarm) ss << u8"清粉升降急停异常\n"; if (signalState.m_PrintMainSoftStopTrigger) ss << u8"打印主轴软急停触发\n"; if (signalState.m_LoadAxisSoftStopTrigger) ss << u8"移载轴软急停触发\n"; if (signalState.m_CoverSoftStopTrigger) ss << u8"铺粉轴软急停触发\n"; if (signalState.m_LoadAxisServoAlarmSignal) ss << u8"移载轴伺服驱动器异常\n"; if (signalState.m_LoadAxisOverSoftLeftLimit) ss << u8"移载轴超左软限\n"; if (signalState.m_LoadAxisOverSoftRightLimit) ss << u8"移载轴超右软限\n"; if (signalState.m_LoadAxisLeftLimit) ss << u8"移载轴左限位触发警示\n"; if (signalState.m_LoadAxisRightLimit) ss << u8"移载轴右限位触发警示\n"; if (signalState.m_LoadTorqueAlarm) ss << u8"移载轴扭力异常\n"; if (signalState.m_CylinderLinerSealReleaseValveException) ss << u8"缸体密封圈泄压异常\n"; if (signalState.m_CylinderHandPlatformOpenAlarm) ss << u8"缸体吊装盖板打开异常\n"; if (signalState.m_CylinderHandDoorOpenAlarm) ss << u8"缸体吊装门打开异常\n"; if (signalState.m_HandPlatformCloseAlarm) ss << u8"吊装盖板关闭异常\n"; if (signalState.m_UpServiceDoorOpenWarn) ss << u8"上维修门打开异常\n"; if (signalState.m_DownServiceDoorOpenWarn) ss << u8"下维修门打开异常\n"; SetLoadOutResult(Out_CylinderReachHandError, ss.str()); return; } if (m_SignalStateWrapper->m_CylinderMovedHandPos->GetValue()) { m_SignalStateWrapper->m_CylinderMovedHandPos->SetValue(false); } Sleep(1000); } SetLoadOutResult(Out_Success, u8"缸体载出已完成"); } } //bool HBDE1000::IsLoadAxisCanMoveLeft() //{ // if (!m_SignalState.m_PrintJackupInSafePos)return false; // if (!m_SignalState.m_LoadTorqueInsideLimit)return false; // if (!m_SignalState.m_LoadPosInsideLeftSoftLimit)return false; // if (!m_SignalState.m_CylinderSealNoInflationStatue)return false; // if (!m_SignalState.m_LoadUpDownServiceDoorCloseStatue)return false; // if (!m_SignalState.m_LoadLeftNotInsideLimit)return false; // if (!m_SignalState.m_LoadServoNoAlarm)return false; // if (!m_SignalState.m_HighPressureLackAlarm)return false; // if (!m_SignalState.m_SystemStopAlarm)return false; // if (!m_SignalState.m_CleanLiftStopAlarm)return false; // if (m_Axis->m_Load->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return false; // return true; //} //string HBDE1000::GetLoadAxisCanotMoveLeftInfo() //{ // if (!m_SignalState.m_PrintJackupInSafePos)return u8"打印顶升轴不在安全位"; // if (!m_SignalState.m_LoadTorqueInsideLimit)return u8"移载扭力越限"; // if (!m_SignalState.m_LoadPosInsideLeftSoftLimit)return u8"移载轴越软左限"; // if (!m_SignalState.m_CylinderSealNoInflationStatue)return u8"密封圈充气状态"; // if (!m_SignalState.m_LoadUpDownServiceDoorCloseStatue)return u8"上下维护门不在关闭状态"; // if (!m_SignalState.m_LoadLeftNotInsideLimit)return u8"移载轴已到左限位"; // if (!m_SignalState.m_LoadServoNoAlarm)return u8"移载轴伺服异常"; // if (!m_SignalState.m_HighPressureLackAlarm)return u8"高压气不足报警"; // if (!m_SignalState.m_SystemStopAlarm)return u8"系统急停异常"; // if (!m_SignalState.m_CleanLiftStopAlarm)return u8"清粉急停异常"; // if (m_Axis->m_Load->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return u8"舱门打开时运动受限"; // return u8"未知原因"; //} //bool HBDE1000::IsLoadAxisCanMoveRight() //{ // if (!m_SignalState.m_PrintJackupInSafePos)return false; // if (!m_SignalState.m_LoadTorqueInsideLimit)return false; // if (!m_SignalState.m_LoadPosInsideRightSoftLimit)return false; // if (!m_SignalState.m_CylinderSealNoInflationStatue)return false; // if (!m_SignalState.m_LoadUpDownServiceDoorCloseStatue)return false; // if (!m_SignalState.m_LoadRightNotInsideLimit)return false; // if (!m_SignalState.m_LoadServoNoAlarm)return false; // if (!m_SignalState.m_HighPressureLackAlarm)return false; // if (!m_SignalState.m_SystemStopAlarm)return false; // if (!m_SignalState.m_CleanLiftStopAlarm)return false; // if (m_Axis->m_Load->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return false; // return true; //} //string HBDE1000::GetLoadAxisCanotMoveRightInfo() //{ // if (!m_SignalState.m_PrintJackupInSafePos)return u8"打印顶升轴不在安全位"; // if (!m_SignalState.m_LoadTorqueInsideLimit)return u8"移载扭力越限"; // if (!m_SignalState.m_LoadPosInsideRightSoftLimit)return u8"移载轴越软右限"; // if (!m_SignalState.m_CylinderSealNoInflationStatue)return u8"密封圈充气状态"; // if (!m_SignalState.m_LoadUpDownServiceDoorCloseStatue)return u8"上下维护门不在关闭状态"; // if (!m_SignalState.m_LoadRightNotInsideLimit)return u8"移载轴已到右限位"; // if (!m_SignalState.m_LoadServoNoAlarm)return u8"移载轴伺服异常"; // if (!m_SignalState.m_HighPressureLackAlarm)return u8"高压气不足报警"; // if (!m_SignalState.m_SystemStopAlarm)return u8"系统急停异常"; // if (!m_SignalState.m_CleanLiftStopAlarm)return u8"清粉急停异常"; // if (m_Axis->m_Load->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return u8"舱门打开时运动受限"; // return u8"未知原因"; //} //bool HBDE1000::IsArmCanMoveBack() //{ // if (!m_SignalState.m_PrintUpDownPosBelowPlatform)return false; // if (!m_SignalState.m_ArmTorqueInsideLimit)return false; // if (!m_SignalState.m_ArmPosInsideSoftBackLimit)return false; // if (!m_SignalState.m_ArmPosInsideBackLimit)return false; // if (!m_SignalState.m_ArmServoNoAlarm)return false; // if (!m_SignalState.m_HighPressureLackAlarm)return false; // if (!m_SignalState.m_SystemStopAlarm)return false; // if (!m_SignalState.m_CleanLiftStopAlarm)return false; // if (m_Axis->m_Arm->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return false; // return true; //} //string HBDE1000::GetArmCanotMoveBackInfo() //{ // if (!m_SignalState.m_PrintUpDownPosBelowPlatform)return u8"打印升降轴高于基板缸平面"; // if (!m_SignalState.m_ArmTorqueInsideLimit)return u8"铺粉轴扭力越限"; // if (!m_SignalState.m_ArmPosInsideSoftBackLimit)return u8"铺粉轴位置超过软后限"; // if (!m_SignalState.m_ArmPosInsideBackLimit)return u8"铺粉轴已到后限位"; // if (!m_SignalState.m_ArmServoNoAlarm)return u8"铺粉轴伺服异常"; // if (!m_SignalState.m_HighPressureLackAlarm)return u8"高压气不足报警"; // if (!m_SignalState.m_SystemStopAlarm)return u8"系统急停异常"; // if (!m_SignalState.m_CleanLiftStopAlarm)return u8"清粉急停异常"; // if (m_Axis->m_Arm->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return u8"舱门打开时运动受限"; // return u8"未知原因"; //} //bool HBDE1000::IsArmCanMoveFront() //{ // if (!m_SignalState.m_PrintUpDownPosBelowPlatform)return false; // if (!m_SignalState.m_ArmTorqueInsideLimit)return false; // if (!m_SignalState.m_ArmPosInsideSoftFrontLimit)return false; // if (!m_SignalState.m_ArmPosInsideFrontLimit)return false; // if (!m_SignalState.m_ArmServoNoAlarm)return false; // if (!m_SignalState.m_HighPressureLackAlarm)return false; // if (!m_SignalState.m_SystemStopAlarm)return false; // if (!m_SignalState.m_CleanLiftStopAlarm)return false; // if (m_Axis->m_Arm->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return false; // return true; //} //string HBDE1000::GetArmCanotMoveFrontInfo() //{ // if (!m_SignalState.m_PrintUpDownPosBelowPlatform)return u8"打印升降轴高于基板缸平面"; // if (!m_SignalState.m_ArmTorqueInsideLimit)return u8"铺粉轴扭力越限"; // if (!m_SignalState.m_ArmPosInsideSoftFrontLimit)return u8"铺粉轴位置超过软前限"; // if (!m_SignalState.m_ArmPosInsideFrontLimit)return u8"铺粉轴已到前限位"; // if (!m_SignalState.m_ArmServoNoAlarm)return u8"铺粉轴伺服异常"; // if (!m_SignalState.m_HighPressureLackAlarm)return u8"高压气不足报警"; // if (!m_SignalState.m_SystemStopAlarm)return u8"系统急停异常"; // if (!m_SignalState.m_CleanLiftStopAlarm)return u8"清粉急停异常"; // if (m_Axis->m_Arm->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return u8"舱门打开时运动受限"; // return u8"未知原因"; //} //bool HBDE1000::IsMoldCanMoveUp() //{ // if (!m_SignalState.m_PrintTorqueUpInsideLimit)return false; // if (!m_SignalState.m_ArmNotUponBasePlatform)return false; // if (!m_SignalState.m_PrintMoldPosInsideUpSoftLimit)return false; // if (!m_SignalState.m_PrintInsideUpLimit)return false; // if (!m_SignalState.m_PrintMainServoNoAlarm)return false; // if (!m_SignalState.m_PrintMoldInPrintPos && !m_SignalState.m_PrintMoldInCleanPos && !m_SignalState.m_PrintMoldInHandPos)return false; // if (!m_SignalState.m_LoadUpDownServiceDoorCloseStatue)return false; // if (!m_SignalState.m_HighPressureLackAlarm)return false; // if (!m_SignalState.m_SystemStopAlarm)return false; // if (!m_SignalState.m_CleanLiftStopAlarm)return false; // // if (m_Axis->m_Mold->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return false; // return true; //} //bool HBDE1000::IsMoldCanMoveDown() //{ // if (!m_SignalState.m_PrintTorqueDownInsideLimit)return false; // if (!m_SignalState.m_ArmNotUponBasePlatform)return false; // if (!m_SignalState.m_PrintAxisPosInsideDownSoftLimit)return false; // if (!m_SignalState.m_PrintInsideDownLimit)return false; // if (!m_SignalState.m_PrintMainServoNoAlarm)return false; // if (!m_SignalState.m_PrintMoldInPrintPos && !m_SignalState.m_PrintMoldInCleanPos && !m_SignalState.m_PrintMoldInHandPos)return false; // if (!m_SignalState.m_LoadUpDownServiceDoorCloseStatue)return false; // if (!m_SignalState.m_HighPressureLackAlarm)return false; // if (!m_SignalState.m_SystemStopAlarm)return false; // if (!m_SignalState.m_CleanLiftStopAlarm)return false; // if (m_Axis->m_Mold->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return false; // return true; //} //string HBDE1000::GetMoldCanotUpInfo() //{ // if (!m_SignalState.m_PrintTorqueUpInsideLimit)return u8"升降轴上升扭力越限"; // if (!m_SignalState.m_ArmNotUponBasePlatform)return u8"铺粉臂在基板范围内"; // if (!m_SignalState.m_PrintMoldPosInsideUpSoftLimit)return u8"升降轴越软上限"; // if (!m_SignalState.m_PrintInsideUpLimit)return u8"升降轴越上限"; // if (!m_SignalState.m_PrintMainServoNoAlarm)return u8"打印主轴伺服异常"; // if (!m_SignalState.m_PrintMoldInPrintPos && !m_SignalState.m_PrintMoldInCleanPos && !m_SignalState.m_PrintMoldInHandPos) // { // return u8"缸体不在打印位、清粉位、吊装位"; // } // if (!m_SignalState.m_LoadUpDownServiceDoorCloseStatue)return u8"上下维护门不在关闭状态"; // if (!m_SignalState.m_HighPressureLackAlarm)return u8"高压气不足报警"; // if (!m_SignalState.m_SystemStopAlarm)return u8"系统急停异常"; // if (!m_SignalState.m_CleanLiftStopAlarm)return u8"清粉急停异常"; // if (m_Axis->m_Mold->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return u8"舱门打开时运动受限"; // return u8"未知原因"; //} //string HBDE1000::GetMoldCanotDownInfo() //{ // if (!m_SignalState.m_PrintTorqueDownInsideLimit)return u8"升降轴下降扭力越限"; // if (!m_SignalState.m_ArmNotUponBasePlatform)return u8"铺粉臂在基板范围内"; // if (!m_SignalState.m_PrintAxisPosInsideDownSoftLimit)return u8"升降轴越软下限"; // if (!m_SignalState.m_PrintInsideDownLimit)return u8"升降轴越下限"; // if (!m_SignalState.m_PrintMainServoNoAlarm)return u8"打印主轴伺服异常"; // if (!m_SignalState.m_PrintMoldInPrintPos && !m_SignalState.m_PrintMoldInCleanPos && !m_SignalState.m_PrintMoldInHandPos) // { // return u8"缸体不在打印位、清粉位、吊装位"; // } // if (!m_SignalState.m_LoadUpDownServiceDoorCloseStatue)return u8"上下维护门不在关闭状态"; // if (!m_SignalState.m_HighPressureLackAlarm)return u8"高压气不足报警"; // if (!m_SignalState.m_SystemStopAlarm)return u8"系统急停异常"; // if (!m_SignalState.m_CleanLiftStopAlarm)return u8"清粉急停异常"; // if (m_Axis->m_Mold->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return u8"舱门打开时运动受限"; // return u8"未知原因"; //} // //void HBDE1000::DrawServoState(bool* winShow) //{ // ImGui::SetNextWindowSize(ImVec2(452, 603)); // ImGui::Begin(u8"伺服状态", winShow, ImGuiWindowFlags_NoDocking | ImGuiWindowFlags_NoResize); // ImGui::BeginTabBar("servo_state"); // if (ImGui::BeginTabItem(u8"打印轴")) { // AxisStateValue mold; // m_Axis->m_Mold->GetState()->GetValue(mold); // ImGui::BeginGroup(); // ImGui::Text(u8"伺服使能:%s", mold.ServoOn ? "YES" : "NO"); // ImGui::Text(u8"伺服成立原点: %s", mold.ServoHomeIndexOn ? "YES" : "NO"); // ImGui::Text(u8"伺服复位: %s", mold.ServoReset ? "YES" : "NO"); // ImGui::Text(u8"相对上运动: %s", mold.MoveP ? "YES" : "NO"); // ImGui::Text(u8"相对下运动: %s", mold.MoveN ? "YES" : "NO"); // ImGui::Text(u8"上JOG: %s", mold.MovePContinue ? "YES" : "NO"); // ImGui::Text(u8"下JOG: %s", mold.MoveNContinue ? "YES" : "NO"); // ImGui::Text(u8"绝对值运动: %s", mold.MoveAbsPos ? "YES" : "NO"); // ImGui::Text(u8"急停: %s", mold.MotionStop ? "YES" : "NO"); // ImGui::Text(u8"伺服RDY状态: %s", mold.ServoRDY ? "YES" : "NO"); // ImGui::Text(u8"指令运行HOME_Done: %s", mold.ServoHomeDone ? "YES" : "NO"); // ImGui::Text(u8"指令运行RESET_Done: %s", mold.ResetDone ? "YES" : "NO"); // ImGui::Text(u8"伺服BUSY: %s", mold.ServoBusy ? "YES" : "NO"); // ImGui::Text(u8"伺服异常: %s", mold.ServoException ? "YES" : "NO"); // ImGui::Text(u8"可运行状态: %s", mold.Runable ? "YES" : "NO"); // ImGui::Text(u8"伺服异常字: %d", mold.ExceptionCode); //轴伺服异常字_R // ImGui::Text(u8"主轴伺服刹车: %s", mold.ServoBreakOn ? "YES" : "NO"); // ImGui::Text(u8"轴位置: %.3f", mold.Pos); // ImGui::Text(u8"轴扭矩: %.3f", mold.Torque); // ImGui::EndGroup(); // // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // // ImGui::BeginGroup(); // g_SystemInfo->LockInfo(); // float linearLayerValue = g_SystemInfo->m_EnvState.m_LinearLayerPos; // float moldTheoryDis = g_SystemInfo->m_EnvState.m_MoldTheoryDistance; // float linearActDis = g_SystemInfo->m_EnvState.m_LinearActDistance; // float linearPulseValue = g_SystemInfo->m_EnvState.m_LinearActPulse; // g_SystemInfo->UnlockInfo(); // ImGui::Text(u8"光栅每层实际值: %.3f", linearLayerValue); // ImGui::Text(u8"升降理论行程: %.3f", moldTheoryDis); // ImGui::Text(u8"光栅实际行程: %.3f", linearActDis); // ImGui::Text(u8"光栅实际脉冲数: %.3f", linearPulseValue); // // ImGui::EndGroup(); // ImGui::EndTabItem(); // } // // // if (ImGui::BeginTabItem(u8"铺粉轴")) { // AxisStateValue arm; // m_Axis->m_Arm->GetState()->GetValue(arm); // ImGui::Text(u8"伺服使能:%s", arm.ServoOn ? "YES" : "NO"); // ImGui::Text(u8"伺服成立原点: %s", arm.ServoHomeIndexOn ? "YES" : "NO"); // ImGui::Text(u8"伺服复位: %s", arm.ServoReset ? "YES" : "NO"); // ImGui::Text(u8"相对前运动: %s", arm.MoveP ? "YES" : "NO"); // ImGui::Text(u8"相对后运动: %s", arm.MoveN ? "YES" : "NO"); // ImGui::Text(u8"前JOG: %s", arm.MovePContinue ? "YES" : "NO"); // ImGui::Text(u8"后JOG: %s", arm.MoveNContinue ? "YES" : "NO"); // ImGui::Text(u8"绝对值运动: %s", arm.MoveAbsPos ? "YES" : "NO"); // ImGui::Text(u8"急停: %s", arm.MotionStop ? "YES" : "NO"); // ImGui::Text(u8"伺服RDY状态: %s", arm.ServoRDY ? "YES" : "NO"); // ImGui::Text(u8"指令运行HOME_Done: %s", arm.ServoHomeDone ? "YES" : "NO"); // ImGui::Text(u8"指令运行RESET_Done: %s", arm.ResetDone ? "YES" : "NO"); // ImGui::Text(u8"伺服BUSY: %s", arm.ServoBusy ? "YES" : "NO"); // ImGui::Text(u8"伺服异常: %s", arm.ServoException ? "YES" : "NO"); // ImGui::Text(u8"可运行状态: %s", arm.Runable ? "YES" : "NO"); // ImGui::Text(u8"伺服异常字: %d", arm.ExceptionCode); //轴伺服异常字_R // ImGui::Text(u8"轴位置: %.3f", arm.Pos); // ImGui::Text(u8"轴扭矩: %.3f", arm.Torque); // ImGui::EndTabItem(); // } // // if (ImGui::BeginTabItem(u8"移载轴")) { // AxisStateValue load; // m_Axis->m_Load->GetState()->GetValue(load); // ImGui::Text(u8"伺服使能:%s", load.ServoOn ? "YES" : "NO"); // ImGui::Text(u8"伺服成立原点: %s", load.ServoHomeIndexOn ? "YES" : "NO"); // ImGui::Text(u8"伺服复位: %s", load.ServoReset ? "YES" : "NO"); // ImGui::Text(u8"相对右运动: %s", load.MoveP ? "YES" : "NO"); // ImGui::Text(u8"相对左运动: %s", load.MoveN ? "YES" : "NO"); // ImGui::Text(u8"右JOG: %s", load.MovePContinue ? "YES" : "NO"); // ImGui::Text(u8"左JOG: %s", load.MoveNContinue ? "YES" : "NO"); // ImGui::Text(u8"绝对值运动: %s", load.MoveAbsPos ? "YES" : "NO"); // ImGui::Text(u8"急停: %s", load.MotionStop ? "YES" : "NO"); // ImGui::Text(u8"伺服RDY状态: %s", load.ServoRDY ? "YES" : "NO"); // ImGui::Text(u8"指令运行HOME_Done: %s", load.ServoHomeDone ? "YES" : "NO"); // ImGui::Text(u8"指令运行RESET_Done: %s", load.ResetDone ? "YES" : "NO"); // ImGui::Text(u8"伺服BUSY: %s", load.ServoBusy ? "YES" : "NO"); // ImGui::Text(u8"伺服异常: %s", load.ServoException ? "YES" : "NO"); // ImGui::Text(u8"可运行状态: %s", load.Runable ? "YES" : "NO"); // ImGui::Text(u8"伺服异常字: %d", load.ExceptionCode); //轴伺服异常字_R // ImGui::Text(u8"轴位置: %.3f", load.Pos); // ImGui::Text(u8"轴扭矩: %.3f", load.Torque); // ImGui::EndTabItem(); // } // // if (ImGui::BeginTabItem(u8"供粉轴")) { // AxisStateValue supply; // m_Axis->m_Supply->GetState()->GetValue(supply); // ImGui::Text(u8"伺服使能:%s", supply.ServoOn ? "YES" : "NO"); // ImGui::Text(u8"伺服成立原点: %s", supply.ServoHomeIndexOn ? "YES" : "NO"); // ImGui::Text(u8"伺服复位: %s", supply.ServoReset ? "YES" : "NO"); // ImGui::Text(u8"相对右运动: %s", supply.MoveP ? "YES" : "NO"); // ImGui::Text(u8"相对左运动: %s", supply.MoveN ? "YES" : "NO"); // ImGui::Text(u8"右JOG: %s", supply.MovePContinue ? "YES" : "NO"); // ImGui::Text(u8"左JOG: %s", supply.MoveNContinue ? "YES" : "NO"); // ImGui::Text(u8"绝对值运动: %s", supply.MoveAbsPos ? "YES" : "NO"); // ImGui::Text(u8"急停: %s", supply.MotionStop ? "YES" : "NO"); // ImGui::Text(u8"伺服RDY状态: %s", supply.ServoRDY ? "YES" : "NO"); // ImGui::Text(u8"指令运行HOME_Done: %s", supply.ServoHomeDone ? "YES" : "NO"); // ImGui::Text(u8"指令运行RESET_Done: %s", supply.ResetDone ? "YES" : "NO"); // ImGui::Text(u8"伺服BUSY: %s", supply.ServoBusy ? "YES" : "NO"); // ImGui::Text(u8"伺服异常: %s", supply.ServoException ? "YES" : "NO"); // ImGui::Text(u8"可运行状态: %s", supply.Runable ? "YES" : "NO"); // ImGui::Text(u8"伺服异常字: %d", supply.ExceptionCode); //轴伺服异常字_R // ImGui::Text(u8"轴位置: %.3f", supply.Pos); // ImGui::Text(u8"轴扭矩: %.3f", supply.Torque); // ImGui::EndTabItem(); // } // // ImGui::EndTabBar(); // ImGui::End(); //} bool HBDE1000::CheckPrintMoldReady() { if (m_SignalStateWrapper->m_CylinderState->GetValue() != CylinderInPrintLoaded) { return false; } else return true; } void HBDE1000::BindLaser() { LaserIO* lio1 = new LaserIO(); lio1->m_LaserRed = m_IOCfgWrapper->m_Laser1Red; lio1->m_LaserStart = m_IOCfgWrapper->m_Laser1Start; lio1->m_LaserEnable = m_IOCfgWrapper->m_Laser1Enable; m_IOCfgWrapper->m_LaserIOMap[1] = lio1; LaserIO* lio2 = new LaserIO(); lio2->m_LaserRed = m_IOCfgWrapper->m_Laser2Red; lio2->m_LaserStart = m_IOCfgWrapper->m_Laser2Start; lio2->m_LaserEnable = m_IOCfgWrapper->m_Laser2Enable; m_IOCfgWrapper->m_LaserIOMap[2] = lio2; LaserIO* lio3 = new LaserIO(); lio3->m_LaserRed = m_IOCfgWrapper->m_Laser3Red; lio3->m_LaserStart = m_IOCfgWrapper->m_Laser3Start; lio3->m_LaserEnable = m_IOCfgWrapper->m_Laser3Enable; m_IOCfgWrapper->m_LaserIOMap[3] = lio3; LaserIO* lio4 = new LaserIO(); lio4->m_LaserRed = m_IOCfgWrapper->m_Laser4Red; lio4->m_LaserStart = m_IOCfgWrapper->m_Laser4Start; lio4->m_LaserEnable = m_IOCfgWrapper->m_Laser4Enable; m_IOCfgWrapper->m_LaserIOMap[4] = lio4; LaserIO* lio5 = new LaserIO(); lio5->m_LaserRed = m_IOCfgWrapper->m_Laser5Red; lio5->m_LaserStart = m_IOCfgWrapper->m_Laser5Start; lio5->m_LaserEnable = m_IOCfgWrapper->m_Laser5Enable; m_IOCfgWrapper->m_LaserIOMap[5] = lio5; LaserIO* lio6 = new LaserIO(); lio6->m_LaserRed = m_IOCfgWrapper->m_Laser6Red; lio6->m_LaserStart = m_IOCfgWrapper->m_Laser6Start; lio6->m_LaserEnable = m_IOCfgWrapper->m_Laser6Enable; m_IOCfgWrapper->m_LaserIOMap[6] = lio6; LaserIO* lio7 = new LaserIO(); lio7->m_LaserRed = m_IOCfgWrapper->m_Laser7Red; lio7->m_LaserStart = m_IOCfgWrapper->m_Laser7Start; lio7->m_LaserEnable = m_IOCfgWrapper->m_Laser7Enable; m_IOCfgWrapper->m_LaserIOMap[7] = lio7; LaserIO* lio8 = new LaserIO(); lio8->m_LaserRed = m_IOCfgWrapper->m_Laser8Red; lio8->m_LaserStart = m_IOCfgWrapper->m_Laser8Start; lio8->m_LaserEnable = m_IOCfgWrapper->m_Laser8Enable; m_IOCfgWrapper->m_LaserIOMap[8] = lio8; }