#include "HBD1200OLD.h" #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 HBD1200OLD::IO_V0 = 0; HBD1200OLD::HBD1200OLD(MachineTypeCfg::MachineTypeId type) :Machine(type) { m_IoRef[IO_V0] = &HBD1200OLD::CheckIO_V0; } HBD1200OLD::~HBD1200OLD() { } AxisCfg* HBD1200OLD::CreateLoadAxisCfg() { AxisCfg* cfg = new AxisCfg(GTS_AXIS_ID_LOAD); cfg->m_name = "LOAD"; cfg->m_active_direct->SetValue(AxisCfg::LEFT); 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* HBD1200OLD::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* HBD1200OLD::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* HBD1200OLD::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* HBD1200OLD::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; } AxisCfg* HBD1200OLD::CreateEleAxisCfg() { AxisCfg* cfg = new AxisCfg(GTS_AXIS_ID_ELE); cfg->m_name = "ELE"; 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(true); cfg->m_MaxLoadValue->SetValue(7.0f); return cfg; } void HBD1200OLD::CheckIO_V0(vector&ins, IOCfgWrapper* iocfgWrapper, string strsql, int m_Type) { char buffer[1024]; //string strsql = GetInsertIOStr(); int statusStartIndex = 192; int ctrlStartIndex = 304; int flag = 0; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "ServoMotor", 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "YellowLamp", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "GreenLamp", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "RedLamp", 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(m_Type, 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(m_Type, 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++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "PressureRelease", 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(m_Type, 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(m_Type, 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintStorageCar1DropPowderValve", 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(m_Type, 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 += 7; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintCylindFixed", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintCylindRelease", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "HandrailDoorLock", 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(m_Type, 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 += 5; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "PowderCleanerUpOpenGap", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "PowderCleanerUpCloseGap", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanBoxDeoxygenValve", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanBoxEvacuationValve", 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 += 5; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, 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(m_Type, 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 += 3; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintVacuumEnterSlave", 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(m_Type, 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(m_Type, 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++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "PurifierCoolerPower", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "PrintStorageCar2DropPowderValve", 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(m_Type, 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(m_Type, 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(m_Type, 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++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanStorageCar1DropPowderValve", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanStorageCar1DeoxygenValve", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanStorageCar1EvacuationValve", 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(m_Type, 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++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanStorageCar2DropPowderValve", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanStorageCar2DeoxygenValve", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanStorageCar2EvacuationValve", 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(m_Type, 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(m_Type, 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(m_Type, 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++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "CylinderHandLockOpen", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "EleCylinderMainBrake", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "EleCylinderSlaveBrake", 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(m_Type, 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(m_Type, 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(m_Type, 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++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanVacuumReairValve", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanBlowSrcSelect", 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(m_Type, 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++; if (iocfgWrapper->m_OutputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_OutputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanBoxTopDoorRise", 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(m_Type, statusStartIndex + flag, ctrlStartIndex + flag, true, "CleanBoxTopDoorFall", 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); } statusStartIndex = 0; flag = 0; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, statusStartIndex + flag, 0, false, "PowerOK", 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(m_Type, statusStartIndex + flag, 0, false, "OutDoorOxygenAlarm", 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(m_Type, statusStartIndex + flag, 0, false, "LaserChillerAlarm", 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, statusStartIndex + flag, 0, false, "ServoAirSwitchClose", 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, 0, false, "PrintStorageCar1DownLimit", 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(m_Type, 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++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, 0, false, "PrintStorageCar1Block", 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, 0, false, "CleanStorageCar1PressureHigh", 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(m_Type, statusStartIndex + flag, 0, false, "CleanStorageCar2PressureHigh", 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 += 10; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, 0, false, "CylinderFixExtendOn", 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(m_Type, statusStartIndex + flag, 0, false, "CylinderFixExtendOff", 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(m_Type, statusStartIndex + flag, 0, false, "PrintCylinderJackupReachSensor", 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(m_Type, statusStartIndex + flag, 0, false, "EleCylinderHomeIndex", 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(m_Type, 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 += 8; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, 0, false, "EleCylinderUpLimit", 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(m_Type, 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(m_Type, 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(m_Type, 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++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, 0, false, "EleCylinderDownLimit", 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(m_Type, 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 += 4; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, 0, false, "CleanBoxTopDoorOpenPos", 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(m_Type, statusStartIndex + flag, 0, false, "CleanBoxTopDoorClosePos", 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(m_Type, 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++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, 0, false, "PrintStorageCar2DownLimit", 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(m_Type, 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(m_Type, statusStartIndex + flag, 0, false, "CylinderHandLockSensor", 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(m_Type, statusStartIndex + flag, 0, false, "PrintStorageCar2Block", 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(m_Type, statusStartIndex + flag, 0, false, "CleanBoxTopDoorRisePos", 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(m_Type, statusStartIndex + flag, 0, false, "CleanBoxTopDoorFallPos", 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(m_Type, 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(m_Type, statusStartIndex + flag, 0, false, "CoverDropPowderPos1", 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(m_Type, statusStartIndex + flag, 0, false, "CoverDropPowderPos2", 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, statusStartIndex + flag, 0, false, "PowderPosition5", 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(m_Type, statusStartIndex + flag, 0, false, "PowderPosition4", 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(m_Type, statusStartIndex + flag, 0, false, "PowderPosition3", 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(m_Type, statusStartIndex + flag, 0, false, "PowderPosition2", 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(m_Type, statusStartIndex + flag, 0, false, "PowderPosition1", 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(m_Type, 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(m_Type, statusStartIndex + flag, 0, false, "SafeDoorClose1", 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(m_Type, statusStartIndex + flag, 0, false, "SafeDoorClose2", 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(m_Type, statusStartIndex + flag, 0, false, "SafeDoorClose3", 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(m_Type, 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(m_Type, 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(m_Type, 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++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, 0, false, "LightPathChillerAlarm", 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(m_Type, statusStartIndex + flag, 0, false, "PurifierChillerAlarm", 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(m_Type, 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++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, 0, false, "CleanStorageCar1DownLimit", 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(m_Type, 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++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, 0, false, "CleanStorageCar1Block", 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(m_Type, 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++; if (iocfgWrapper->m_InputCheckAssist.find(statusStartIndex + flag) == iocfgWrapper->m_InputCheckAssist.end()) { IOCfg* pbean = new IOCfg(m_Type, statusStartIndex + flag, 0, false, "CleanStorageCar2DownLimit", 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(m_Type, 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(m_Type, statusStartIndex + flag, 0, false, "CleanStorageCar2Block", 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(m_Type, 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(m_Type, 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(m_Type, 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(m_Type, 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 HBD1200OLD::DrawSignal(bool* isshow) //{ // SignalState signalState; // SignalService::GetInstance().GetSignalState(signalState); // SignalStateWrapper* signalStateWrapper = m_SignalStateWrapper; // ImGui::Begin(_(u8"信号状态").c_str(), isshow, ImGuiWindowFlags_NoDocking); // ImGui::BeginTabBar("SignalState"); // if (ImGui::BeginTabItem(_(u8"异常信号").c_str())) { // ImGui::BeginGroup(); // ImGui::ToggleButtonText(_(u8"PC与PLC网络异常").c_str(), signalState.m_PLCConnectAlarm, false); // ImGui::ToggleButtonText(_(u8"系统急停异常").c_str(), signalState.m_SystemStopAlarm, false); // ImGui::ToggleButtonText(_(u8"高压气压力不足异常").c_str(), signalState.m_HighPressureLackAlarm, false); // ImGui::ToggleButtonText(_(u8"保护气压力不足异常").c_str(), signalState.m_ProtectGasLackAlarm, false); // ImGui::ToggleButtonText(_(u8"外部电源断电异常").c_str(), signalState.m_PowerDownAlarm, false); // ImGui::ToggleButtonText(_(u8"外界氧含量不足警告").c_str(), signalState.m_OutsideOxygenLackAlarm, false); // ImGui::ToggleButtonText(_(u8"激光器冷水机报警").c_str(), signalState.m_LaserChillerAlarm, false); // ImGui::ToggleButtonText(_(u8"总空开触点异常").c_str(), signalState.m_BusAirSwitchAlarm, false); // ImGui::ToggleButtonText(_(u8"外部设备电源空开触点异常").c_str(), signalState.m_ExtDevicePowerAirSwitchAlarm, false); // ImGui::ToggleButtonText(_(u8"加热电源空开触点异常").c_str(), signalState.m_HeatingPowerAirSwitchAlarm, false); // ImGui::ToggleButtonText(_(u8"激光电源空开触点异常").c_str(), signalState.m_LaserPowerAirSwitchAlarm, false); // ImGui::ToggleButtonText(_(u8"伺服电源空开触点").c_str(), signalState.m_ServoPowerAirSwitchAlarm, false); // ImGui::ToggleButtonText(_(u8"激光器1报警").c_str(), signalState.m_Laser1Alarm, false); // ImGui::ToggleButtonText(_(u8"激光器2报警").c_str(), signalState.m_Laser2Alarm, false); // ImGui::ToggleButtonText(_(u8"激光器3报警").c_str(), signalState.m_Laser3Alarm, false); // ImGui::ToggleButtonText(_(u8"激光器4报警").c_str(), signalState.m_Laser4Alarm, false); // ImGui::ToggleButtonText(_(u8"加热输入异常").c_str(), signalState.m_HeatingInputAlarm, false); // ImGui::ToggleButtonText(_(u8"加热输出异常").c_str(), signalState.m_HeatingOutputAlarm, false); // ImGui::ToggleButtonText(_(u8"打印主轴上限位触发警示").c_str(), signalState.m_MoldMainUpLimitActive, false); // ImGui::ToggleButtonText(_(u8"打印主轴下限位触发警示").c_str(), signalState.m_MoldMainDownLimitActive, false); // ImGui::ToggleButtonText(_(u8"轨道打印位感应失效警告").c_str(), signalState.m_PrintTrackDisableWarn, false); // ImGui::ToggleButtonText(_(u8"缸体固定气缸伸出不到位异常").c_str(), signalState.m_CylinderExtendOnAlarm, false); // ImGui::ToggleButtonText(_(u8"缸体固定气缸缩回不到位异常").c_str(), signalState.m_CylinderExtendOffAlarm, false); // ImGui::EndGroup(); // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // // ImGui::BeginGroup(); // ImGui::ToggleButtonText(_(u8"打印位缸体检测异常").c_str(), signalState.m_PrintCylinderVerifyAlarm, false); // ImGui::ToggleButtonText(_(u8"轨道清粉位失效异常").c_str(), signalState.m_CleanTrackPosDisableAlarm, false); // ImGui::ToggleButtonText(_(u8"清粉升降急停异常").c_str(), signalState.m_CleanLiftStopAlarm, false); // ImGui::ToggleButtonText(_(u8"移载吊装位感应器失效").c_str(), signalState.m_LoadHandPosSensorDiable, false); // ImGui::ToggleButtonText(_(u8"主电源缺相检测异常").c_str(), signalState.m_MainPowerLossCheckAlarm, false); // ImGui::ToggleButtonText(_(u8"打印舱电锁感应异常").c_str(), signalState.m_PrintCabinLockDisableAlarm, false); // ImGui::ToggleButtonText(_(u8"清粉箱上盖气缸打开不到位异常").c_str(), signalState.m_CleanBoxUpOpenAlarm, false); // ImGui::ToggleButtonText(_(u8"清粉箱上盖气缸关闭不到位异常").c_str(), signalState.m_CleanBoxUpCloseAlarm, false); // ImGui::ToggleButtonText(_(u8"缸体吊装盖板打开异常").c_str(), signalState.m_CylinderHandPlatformOpenAlarm, false); // ImGui::ToggleButtonText(_(u8"缸体吊装门打开异常").c_str(), signalState.m_CylinderHandDoorOpenAlarm, false); // ImGui::ToggleButtonText(_(u8"吊装盖板关闭异常").c_str(), signalState.m_HandPlatformCloseAlarm, false); // ImGui::ToggleButtonText(_(u8"铺粉轴前限位触发警示").c_str(), signalState.m_ArmFrontLimit, false); // ImGui::ToggleButtonText(_(u8"铺粉轴后限位触发警示").c_str(), signalState.m_ArmBackLimit, false); // ImGui::ToggleButtonText(_(u8"移载轴左限位触发警示").c_str(), signalState.m_LoadAxisLeftLimit, false); // ImGui::ToggleButtonText(_(u8"移载轴右限位触发警示").c_str(), signalState.m_LoadAxisRightLimit, false); // ImGui::ToggleButtonText(_(u8"粉仓料位感应器1异常").c_str(), signalState.m_PowderPosition1Alarm, false); // ImGui::ToggleButtonText(_(u8"粉仓料位感应器2异常").c_str(), signalState.m_PowderPosition2Alarm, false); // ImGui::ToggleButtonText(_(u8"粉仓料位感应器3异常").c_str(), signalState.m_PowderPosition3Alarm, false); // ImGui::ToggleButtonText(_(u8"粉仓料位感应器4异常").c_str(), signalState.m_PowderPosition4Alarm, false); // ImGui::ToggleButtonText(_(u8"粉仓料位感应器5异常").c_str(), signalState.m_PowderPosition5Alarm, false); // ImGui::ToggleButtonText(_(u8"供粉转轴原点失效异常").c_str(), signalState.m_SupplyHomeIndexDisableAlarm, false); // ImGui::EndGroup(); // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // ImGui::BeginGroup(); // ImGui::ToggleButtonText(_(u8"打印舱测氧仪1异常").c_str(), signalState.m_PrintOxygen1DeciceAlarm, false); // ImGui::ToggleButtonText(_(u8"打印舱测氧仪2异常").c_str(), signalState.m_PrintOxygen2DeviceAlarm, false); // ImGui::ToggleButtonText(_(u8"室外测氧仪异常").c_str(), signalState.m_OutsideOxygenDeviceAlarm, false); // ImGui::ToggleButtonText(_(u8"打印舱压力过高异常").c_str(), signalState.m_PrintPressureOverLimitAlarm, false); // ImGui::ToggleButtonText(_(u8"光路冷水机报警").c_str(), signalState.m_ScannerChillerAlarm, false); // ImGui::ToggleButtonText(_(u8"净化器冷水机报警").c_str(), signalState.m_PurifierChillerAlarm, false); // ImGui::ToggleButtonText(_(u8"打印存粉小车1粉罐已满警示").c_str(), signalState.m_PrintStorageCar1JarFullWarn, false); // ImGui::ToggleButtonText(_(u8"打印存粉小车1没有连接警示").c_str(), signalState.m_PrintStorageCar1DisconnectWarn, false); // ImGui::ToggleButtonText(_(u8"打印存粉小车1堵塞警示").c_str(), signalState.m_PrintStorageCar1BlockWarn, false); // ImGui::ToggleButtonText(_(u8"打印存粉小车2粉罐已满警示").c_str(), signalState.m_PrintStorageCar2JarFullWarn, false); // ImGui::ToggleButtonText(_(u8"打印存粉小车2没有连接警示").c_str(), signalState.m_PrintStorageCar2DisconnectWarn, false); // ImGui::ToggleButtonText(_(u8"打印存粉小车2堵塞报警").c_str(), signalState.m_PrintStorageCar2BlockAlarm, false); // ImGui::ToggleButtonText(_(u8"打印主轴扭力异常").c_str(), signalState.m_MoldTorqueAlarm, false); // ImGui::ToggleButtonText(_(u8"电缸主轴扭力异常").c_str(), signalState.m_EleCylinderMainTorqueAlarm, false); // ImGui::ToggleButtonText(_(u8"电缸从轴扭力异常").c_str(), signalState.m_EleCylinderSlaveTorqueAlarm, false); // ImGui::ToggleButtonText(_(u8"移载轴扭力异常").c_str(), signalState.m_LoadTorqueAlarm, false); // ImGui::ToggleButtonText(_(u8"铺粉轴扭力异常").c_str(), signalState.m_ArmTorqueAlarm, false); // ImGui::ToggleButtonText(_(u8"供粉轴扭力异常").c_str(), signalState.m_SupplyTorqueAlarm, false); // ImGui::ToggleButtonText(_(u8"光栅尺补偿失败").c_str(), signalState.m_GratingRulerFail, false); // ImGui::ToggleButtonText(_(u8"打印主轴超软上限").c_str(), signalState.m_PrintMainOverSoftUpLimit, false); // ImGui::ToggleButtonText(_(u8"打印主轴超软下限").c_str(), signalState.m_PrintMainOverSoftDownLimit, false); // ImGui::ToggleButtonText(_(u8"电缸主轴超软上限").c_str(), signalState.m_EleCylinderMainOverSoftUpLimit, false); // ImGui::ToggleButtonText(_(u8"电缸主轴超软下限").c_str(), signalState.m_EleCylinderMainOverSoftDownLimit, false); // ImGui::EndGroup(); // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // ImGui::BeginGroup(); // // // ImGui::ToggleButtonText(_(u8"移载轴超左软限").c_str(), signalState.m_LoadAxisOverSoftLeftLimit, false); // ImGui::ToggleButtonText(_(u8"移载轴超右软限").c_str(), signalState.m_LoadAxisOverSoftRightLimit, false); // ImGui::ToggleButtonText(_(u8"铺粉轴超前软限").c_str(), signalState.m_ArmOverSoftFrontLimit, false); // ImGui::ToggleButtonText(_(u8"铺粉轴超后软限").c_str(), signalState.m_ArmOverSoftBackLimit, false); // ImGui::ToggleButtonText(_(u8"移栽手动异常").c_str(), signalState.m_LoadAxisManualAlarmSignal, false); // ImGui::ToggleButtonText(_(u8"打印主轴伺服驱动器异常").c_str(), signalState.m_PrintMainServoAlarmSignal, false); // ImGui::ToggleButtonText(_(u8"移载轴伺服驱动器异常").c_str(), signalState.m_LoadAxisServoAlarmSignal, false); // ImGui::ToggleButtonText(_(u8"铺粉轴伺服驱动器异常").c_str(), signalState.m_ArmServoAlarmSignal, false); // ImGui::ToggleButtonText(_(u8"供粉转轴伺服驱动器异常").c_str(), signalState.m_SupplyServoAlarmSignal, false); // ImGui::ToggleButtonText(_(u8"电缸主轴伺服异常").c_str(), signalState.m_EleCylinderMainServoAlarmSignal, false); // // ImGui::ToggleButtonText(_(u8"电缸打印位顶升异常").c_str(), signalState.m_EleCylinderPrintHandupAlarmSignal, false); // ImGui::ToggleButtonText(_(u8"清粉箱顶门升高异常").c_str(), signalState.m_CleanBoxTopDoorRiseAlarmSignal, false); // ImGui::ToggleButtonText(_(u8"清粉箱顶门降低异常").c_str(), signalState.m_CleanBoxTopDoorFallAlarmSignal, false); // ImGui::ToggleButtonText(_(u8"铺粉轴到接粉位异常").c_str(), signalState.m_CoverReachAcceptPowderAlarmSignal, false); // ImGui::ToggleButtonText(_(u8"铺粉轴到下粉位异常").c_str(), signalState.m_CoverReachDropPowderAlarmSignal, false); // ImGui::ToggleButtonText(_(u8"电缸从轴伺服异常").c_str(), signalState.m_EleCylinderSlaveServoAlarmSignal, false); // ImGui::ToggleButtonText(_(u8"光栅尺检测异常").c_str(), signalState.m_LinearEncoderCheckAlarmSignal, false); // ImGui::ToggleButtonText(_(u8"打印主轴软急停触发").c_str(), signalState.m_PrintMainSoftStopTrigger, false); // ImGui::ToggleButtonText(_(u8"电缸主轴软急停触发").c_str(), signalState.m_EleCylinderSoftStopTrigger, false); // ImGui::ToggleButtonText(_(u8"移载轴软急停触发").c_str(), signalState.m_LoadAxisSoftStopTrigger, false); // ImGui::ToggleButtonText(_(u8"铺粉轴软急停触发").c_str(), signalState.m_CoverSoftStopTrigger, false); // ImGui::ToggleButtonText(_(u8"铺粉归原点异常").c_str(), signalState.m_CoverHomeException, false); // ImGui::EndGroup(); // // ImGui::EndTabItem(); // } // if (ImGui::BeginTabItem(_(u8"常规信号").c_str())) { // bool isCtrl = (g_Admin > USER_ADMIN); // ImGui::BeginGroup(); // ImGui::ToggleButtonText(_(u8"PLC心跳").c_str(), signalState.m_PLCKeepAlive, false); // ImGui::ToggleButtonText(_(u8"PC心跳").c_str(), signalState.m_PCKeepAlice, false); // ImGui::ToggleButtonText(_(u8"设备空闲状态").c_str(), signalState.m_DeviceStandby, false); // if (ImGui::ToggleButtonText(_(u8"设备打印状态").c_str(), signalState.m_DevicePrinting, isCtrl))signalStateWrapper->m_DevicePrinting->SetValue(!signalState.m_DevicePrinting); // if (ImGui::ToggleButtonText(_(u8"设备手动调试状态").c_str(), signalState.m_DeviceManualDebug, isCtrl))signalStateWrapper->m_DeviceManualDebug->SetValue(!signalState.m_DeviceManualDebug); // if (ImGui::ToggleButtonText(_(u8"设备自动运行状态").c_str(), signalState.m_DeviceAutoRuning, isCtrl))signalStateWrapper->m_DeviceAutoRuning->SetValue(!signalState.m_DeviceAutoRuning); // if (ImGui::ToggleButtonText(_(u8"触摸屏控制状态").c_str(), signalState.m_TouchPanelCtrling, isCtrl))signalStateWrapper->m_TouchPanelCtrling->SetValue(!signalState.m_TouchPanelCtrling); // if (ImGui::ToggleButtonText(_(u8"动作流程调试模式").c_str(), signalState.m_MotionDebug, isCtrl))signalStateWrapper->m_MotionDebug->SetValue(!signalState.m_MotionDebug); // if (ImGui::ToggleButtonText(_(u8"异常复位").c_str(), signalState.m_CylinderExceptionReset, isCtrl))signalStateWrapper->m_CylinderExceptionReset->SetValue(!signalState.m_CylinderExceptionReset); // // if (ImGui::ToggleButtonText(_(u8"触发缸体到达打印位_自动").c_str(), signalState.m_CylinderReachPrintTriger, isCtrl))signalStateWrapper->m_CylinderReachPrintTriger->SetValue(!signalState.m_CylinderReachPrintTriger); // if (ImGui::ToggleButtonText(_(u8"缸体到打印位运行中_自动").c_str(), signalState.m_CylinderReachPrintRun, isCtrl))signalStateWrapper->m_CylinderReachPrintRun->SetValue(!signalState.m_CylinderReachPrintRun); // if (ImGui::ToggleButtonText(_(u8"缸体到达打印位完毕_自动").c_str(), signalState.m_CylinderReachPrintFinished, isCtrl))signalStateWrapper->m_CylinderReachPrintFinished->SetValue(!signalState.m_CylinderReachPrintFinished); // if (ImGui::ToggleButtonText(_(u8"触发缸体打印位装载_自动").c_str(), signalState.m_CylinderPrintLoadTriger, isCtrl))signalStateWrapper->m_CylinderPrintLoadTriger->SetValue(!signalState.m_CylinderPrintLoadTriger); // if (ImGui::ToggleButtonText(_(u8"缸体打印位装载运行中_自动").c_str(), signalState.m_CylinderPrintLoadRun, isCtrl))signalStateWrapper->m_CylinderPrintLoadRun->SetValue(!signalState.m_CylinderPrintLoadRun); // if (ImGui::ToggleButtonText(_(u8"缸体打印位装载完毕_自动").c_str(), signalState.m_CylinderPrintLoadFinished, isCtrl))signalStateWrapper->m_CylinderPrintLoadFinished->SetValue(!signalState.m_CylinderPrintLoadFinished); // if (ImGui::ToggleButtonText(_(u8"触发缸体打印位卸载_自动").c_str(), signalState.m_CylinderPrintUnloadTriger, isCtrl))signalStateWrapper->m_CylinderPrintUnloadTriger->SetValue(!signalState.m_CylinderPrintUnloadTriger); // if (ImGui::ToggleButtonText(_(u8"缸体打印位卸载运行中_自动").c_str(), signalState.m_CylinderPrintUnloadRun, isCtrl))signalStateWrapper->m_CylinderPrintUnloadRun->SetValue(!signalState.m_CylinderPrintUnloadRun); // if (ImGui::ToggleButtonText(_(u8"缸体打印位卸载完毕_自动").c_str(), signalState.m_CylinderPrintUnloadFinished, isCtrl))signalStateWrapper->m_CylinderPrintUnloadFinished->SetValue(!signalState.m_CylinderPrintUnloadFinished); // if (ImGui::ToggleButtonText(_(u8"触发缸体到达清粉位_自动").c_str(), signalState.m_CylinderReachCleanTriger, isCtrl))signalStateWrapper->m_CylinderReachCleanTriger->SetValue(!signalState.m_CylinderReachCleanTriger); // if (ImGui::ToggleButtonText(_(u8"缸体到清粉位运行中").c_str(), signalState.m_CylinderReachCleanRun, isCtrl))signalStateWrapper->m_CylinderReachCleanRun->SetValue(!signalState.m_CylinderReachCleanRun); // if (ImGui::ToggleButtonText(_(u8"缸体到清粉位完毕_自动").c_str(), 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"触发缸体与清粉箱连接_自动").c_str(), signalState.m_CylinderConnectCleanBoxTriger, isCtrl))m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger->SetValue(!signalState.m_CylinderConnectCleanBoxTriger); // if (ImGui::ToggleButtonText(_(u8"缸体与清粉箱连接中").c_str(), signalState.m_CylinderConnectCleanBoxRun, isCtrl))m_SignalStateWrapper->m_CylinderConnectCleanBoxRun->SetValue(!signalState.m_CylinderConnectCleanBoxRun); // if (ImGui::ToggleButtonText(_(u8"缸体与清粉箱连接完毕_自动").c_str(), signalState.m_CylinderConnectCleanBoxFinished, isCtrl))m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->SetValue(!signalState.m_CylinderConnectCleanBoxFinished); // if (ImGui::ToggleButtonText(_(u8"触发缸体与清粉箱分离_自动").c_str(), signalState.m_CylinderDisconnectCleanBoxTriger, isCtrl))m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger->SetValue(!signalState.m_CylinderDisconnectCleanBoxTriger); // if (ImGui::ToggleButtonText(_(u8"缸体与清粉箱分离中").c_str(), signalState.m_CylinderDisconnectCleanBoxRun, isCtrl))m_SignalStateWrapper->m_CylinderDisconnectCleanBoxRun->SetValue(!signalState.m_CylinderDisconnectCleanBoxRun); // if (ImGui::ToggleButtonText(_(u8"缸体与清粉箱分离完毕_自动").c_str(), signalState.m_CylinderDisconnectCleanBoxFinished, isCtrl))m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->SetValue(!signalState.m_CylinderDisconnectCleanBoxFinished); // // if (ImGui::ToggleButtonText(_(u8"触发铺粉流程").c_str(), signalState.m_CoverTriger, isCtrl))signalStateWrapper->m_CoverTriger->SetValue(!signalState.m_CoverTriger); // ImGui::ToggleButtonText(_(u8"铺粉流程忙").c_str(), signalState.m_IsCovering, isCtrl); // if (ImGui::ToggleButtonText(_(u8"铺粉完成允许打印").c_str(), signalState.m_IsCoverFinishedCanPrint, isCtrl))signalStateWrapper->m_IsCoverFinishedCanPrint->SetValue(!signalState.m_IsCoverFinishedCanPrint); // if (ImGui::ToggleButtonText(_(u8"铺粉调试模式").c_str(), signalState.m_IsCoverDebug, isCtrl))signalStateWrapper->m_IsCoverDebug->SetValue(!signalState.m_IsCoverDebug); // if (ImGui::ToggleButtonText(_(u8"第一次铺粉").c_str(), signalState.m_IsFirstCover, isCtrl))signalStateWrapper->m_IsFirstCover->SetValue(!signalState.m_IsFirstCover); // if (ImGui::ToggleButtonText(_(u8"触发打印室除氧").c_str(), signalState.m_PrintDeoxygenTriger, isCtrl))signalStateWrapper->m_PrintDeoxygenTriger->SetValue(!signalState.m_PrintDeoxygenTriger); // if (ImGui::ToggleButtonText(_(u8"打印室除氧中").c_str(), signalState.m_PrintDeoxygenRun, isCtrl))signalStateWrapper->m_PrintDeoxygenRun->SetValue(!signalState.m_PrintDeoxygenRun); // ImGui::ToggleButtonText(_(u8"打印室氧含量值到达").c_str(), signalState.m_PrintDeoxygenFinished, false); // if (ImGui::ToggleButtonText(_(u8"触发打印存粉小车除氧").c_str(), signalState.m_StorgeCarDeoxygenTriger, isCtrl))signalStateWrapper->m_StorgeCarDeoxygenTriger->SetValue(!signalState.m_StorgeCarDeoxygenTriger); // ImGui::ToggleButtonText(_(u8"打印存粉小车除氧中").c_str(), signalState.m_StorgeCarDeoxygenRun, false); // if (ImGui::ToggleButtonText(_(u8"打印存粉小车除氧完毕").c_str(), signalState.m_StorgeCarDeoxygenFinished, isCtrl))signalStateWrapper->m_StorgeCarDeoxygenFinished->SetValue(!signalState.m_StorgeCarDeoxygenFinished); // ImGui::ToggleButtonText(_(u8"清粉箱启动吸尘器").c_str(), signalState.m_CleanBoxVacuumTriger, false); // if (ImGui::ToggleButtonText(_(u8"打印室启动吸尘器").c_str(), signalState.m_PrintVacuumTriger, isCtrl))signalStateWrapper->m_PrintVacuumTriger->SetValue(!signalState.m_PrintVacuumTriger); // ImGui::EndGroup(); // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // ImGui::BeginGroup(); // ImGui::ToggleButtonText(_(u8"触发缸体到打印位EN").c_str(), signalState.m_CylinderReachPrintEnable, false); // ImGui::ToggleButtonText(_(u8"触发缸体打印位装载EN").c_str(), signalState.m_CylinderPrintLoadEnable, false); // ImGui::ToggleButtonText(_(u8"触发缸体打印位卸载EN").c_str(), signalState.m_CylinderPrintUnloadEnable, false); // ImGui::ToggleButtonText(_(u8"触发缸体到清粉位EN").c_str(), signalState.m_CylinderReachCleanEnable, false); // ImGui::ToggleButtonText(_(u8"触发缸体与清粉箱连接EN").c_str(), signalState.m_CylinderConnectCleanBoxEnable, false); // ImGui::ToggleButtonText(_(u8"触发缸体与清粉箱分离EN").c_str(), signalState.m_CylinderDisconnectCleanBoxEnable, false); // ImGui::ToggleButtonText(_(u8"触发铺粉EN").c_str(), signalState.m_CoverEnable, false); // //ImGui::ToggleButtonText(_(u8"触发打印升降轴除氧EN").c_str(), signalState.m_MoldDeoxygenEnable, false); // ImGui::ToggleButtonText(_(u8"触发打印存粉小车1排粉").c_str(), signalState.m_PrintStoreCar1ExhaustEnable, false); // ImGui::ToggleButtonText(_(u8"触发打印存粉小车2排粉").c_str(), signalState.m_PrintStoreCar2ExhaustEnable, false); // ImGui::ToggleButtonText(_(u8"触发缸体到吊装位EN").c_str(), signalState.m_CylinderMoveHandPosEnable, false); // ImGui::ToggleButtonText(_(u8"触发缸体到吊装位").c_str(), signalState.m_CylinderMoveHandPos, isCtrl); // ImGui::ToggleButtonText(_(u8"触发缸体到吊装位运行中").c_str(), signalState.m_CylinderMovingHandPos, false); // ImGui::ToggleButtonText(_(u8"触发缸体到吊装位完毕").c_str(), signalState.m_CylinderMovedHandPos, false); // // ImGui::ToggleButtonText(_(u8"打印室换气功能EN").c_str(), signalState.m_PrintAirRenewalEnable, false); // if (ImGui::ToggleButtonText(_(u8"触发打印室换气").c_str(), signalState.m_PrintAirRenewalTrigger, isCtrl))m_SignalStateWrapper->m_PrintAirRenewalTrigger->SetValue(!signalState.m_PrintAirRenewalTrigger); // ImGui::ToggleButtonText(_(u8"允许提风速").c_str(), signalState.m_AllowRiseWindSpeed, false); // ImGui::ToggleButtonText(_(u8"手动铺粉测试").c_str(), signalState.m_ManualCoverTest, false); // ImGui::ToggleButtonText(_(u8"滚粉轴寻边中").c_str(), signalState.m_RollerEdgeSearching, false); // ImGui::ToggleButtonText(_(u8"滚粉轴寻边成功").c_str(), signalState.m_RollerEdgeSearchSuccess, false); // ImGui::ToggleButtonText(_(u8"滚粉轴寻边失败").c_str(), signalState.m_RollerEdgeSearchFaild, false); // ImGui::EndGroup(); // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // ImGui::BeginGroup(); // if (ImGui::ToggleButtonText(_(u8"屏蔽光栅尺判断").c_str(), signalState.m_DisableRasterJudge, isCtrl))signalStateWrapper->m_DisableRasterJudge->SetValue(!signalState.m_DisableRasterJudge); // ImGui::ToggleButtonText(_(u8"光栅尺判断OK").c_str(), signalState.m_RasterJudgeOK, false); // ImGui::ToggleButtonText(_(u8"光栅尺判断NG").c_str(), signalState.m_RasterJudgeNG, false); // if (ImGui::ToggleButtonText(_(u8"屏蔽打印位感应器").c_str(), signalState.m_SheildPrintPosSensor, isCtrl))signalStateWrapper->m_SheildPrintPosSensor->SetValue(!signalState.m_SheildPrintPosSensor); // if (ImGui::ToggleButtonText(_(u8"使用下粉轴寻边").c_str(), signalState.m_UseSupplySearchEdge, isCtrl))signalStateWrapper->m_UseSupplySearchEdge->SetValue(!signalState.m_UseSupplySearchEdge); // if (ImGui::ToggleButtonText(_(u8"屏蔽缸体固定定位感应器").c_str(), signalState.m_SheildCylinderFixSensor, isCtrl))signalStateWrapper->m_SheildCylinderFixSensor->SetValue(!signalState.m_SheildCylinderFixSensor); // if (ImGui::ToggleButtonText(_(u8"使用纳米单位").c_str(), signalState.m_UseNanoUnit, isCtrl))signalStateWrapper->m_UseNanoUnit->SetValue(!signalState.m_UseNanoUnit); // if (ImGui::ToggleButtonText(_(u8"屏蔽光栅尺").c_str(), signalState.m_SheildLinearEncoder, isCtrl))signalStateWrapper->m_SheildLinearEncoder->SetValue(!signalState.m_SheildLinearEncoder); // if (ImGui::ToggleButtonText(_(u8"屏蔽高压气").c_str(), signalState.m_SheildHighPressure, isCtrl))signalStateWrapper->m_SheildHighPressure->SetValue(!signalState.m_SheildHighPressure); // if (ImGui::ToggleButtonText(_(u8"不使用铺粉轴到位感应器").c_str(), signalState.m_UnuseCoverReachSensor, isCtrl))signalStateWrapper->m_UnuseCoverReachSensor->SetValue(!signalState.m_UnuseCoverReachSensor); // if (ImGui::ToggleButtonText(_(u8"使用铺粉臂归原点").c_str(), signalState.m_UseArmCaptureHome, isCtrl))signalStateWrapper->m_UseArmCaptureHome->SetValue(!signalState.m_UseArmCaptureHome); // if (ImGui::ToggleButtonText(_(u8"光栅尺反向").c_str(), signalState.m_LinearEncoderOppDirection, isCtrl))signalStateWrapper->m_LinearEncoderOppDirection->SetValue(!signalState.m_LinearEncoderOppDirection); // ImGui::Text(_(u8"缸体状态:%d").c_str(), 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").c_str()); // ImGui::PopTextWrapPos(); // ImGui::EndTooltip(); // } // ImGui::EndGroup(); // // ImGui::EndTabItem(); // } // ImGui::EndTabBar(); // // ImGui::End(); //} // //void HBD1200OLD::DrawServoState(bool* winShow) //{ // // ImGui::Begin(_(u8"伺服状态").c_str(), winShow, ImGuiWindowFlags_NoDocking | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_AlwaysAutoResize); // ImGui::BeginTabBar("servo_state"); // if (ImGui::BeginTabItem(_(u8"打印轴").c_str())) { // AxisStateValue mold; // m_Axis->m_Mold->GetState()->GetValue(mold); // ImGui::BeginGroup(); // //ImGui::Text(_(u8"伺服使能:%s").c_str(), mold.ServoOn ? "YES" : "NO"); // ImGui::Text(_(u8"伺服成立原点: %s").c_str(), mold.ServoHomeIndexOn ? "YES" : "NO"); // ImGui::Text(_(u8"伺服复位: %s").c_str(), mold.ServoReset ? "YES" : "NO"); // ImGui::Text(_(u8"相对上运动: %s").c_str(), mold.MoveP ? "YES" : "NO"); // ImGui::Text(_(u8"相对下运动: %s").c_str(), mold.MoveN ? "YES" : "NO"); // ImGui::Text(_(u8"上JOG: %s").c_str(), mold.MovePContinue ? "YES" : "NO"); // ImGui::Text(_(u8"下JOG: %s").c_str(), mold.MoveNContinue ? "YES" : "NO"); // ImGui::Text(_(u8"绝对值运动: %s").c_str(), mold.MoveAbsPos ? "YES" : "NO"); // ImGui::Text(_(u8"急停: %s").c_str(), mold.MotionStop ? "YES" : "NO"); // ImGui::Text(_(u8"伺服RDY状态: %s").c_str(), mold.ServoRDY ? "YES" : "NO"); // ImGui::Text(_(u8"指令运行HOME_Done: %s").c_str(), mold.ServoHomeDone ? "YES" : "NO"); // ImGui::Text(_(u8"指令运行RESET_Done: %s").c_str(), mold.ResetDone ? "YES" : "NO"); // ImGui::Text(_(u8"伺服BUSY: %s").c_str(), mold.ServoBusy ? "YES" : "NO"); // ImGui::Text(_(u8"伺服异常: %s").c_str(), mold.ServoException ? "YES" : "NO"); // ImGui::Text(_(u8"可运行状态: %s").c_str(), mold.Runable ? "YES" : "NO"); // ImGui::Text(_(u8"伺服异常字: %d").c_str(), mold.ExceptionCode); //轴伺服异常字_R // ImGui::Text(_(u8"主轴伺服刹车: %s").c_str(), mold.ServoBreakOn ? "YES" : "NO"); // // ImGui::Text(_(u8"轴位置: %.3f").c_str(), mold.Pos); // ImGui::Text(_(u8"轴扭矩: %.3f").c_str(), 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").c_str(), linearLayerValue); // ImGui::Text(_(u8"升降理论行程: %.3f").c_str(), moldTheoryDis); // ImGui::Text(_(u8"光栅实际行程: %.3f").c_str(), linearActDis); // ImGui::Text(_(u8"光栅实际脉冲数: %.3f").c_str(), linearPulseValue); // // ImGui::EndGroup(); // ImGui::EndTabItem(); // } // // if (ImGui::BeginTabItem(_(u8"电缸").c_str())) { // AxisStateValue ele_main; // m_Axis->m_Ele->GetState()->GetValue(ele_main); // AxisStateValue ele_slave; // m_Axis->m_EleSlave->GetState()->GetValue(ele_slave); // ImGui::BeginGroup(); // ImGui::Button(_(u8"电缸主轴").c_str(), ImVec2(200, 0)); // //ImGui::Text(_(u8"伺服使能:%s").c_str(), ele_main.ServoOn ? "YES" : "NO"); // ImGui::Text(_(u8"伺服成立原点: %s").c_str(), ele_main.ServoHomeIndexOn ? "YES" : "NO"); // ImGui::Text(_(u8"伺服复位: %s").c_str(), ele_main.ServoReset ? "YES" : "NO"); // ImGui::Text(_(u8"相对上运动: %s").c_str(), ele_main.MoveP ? "YES" : "NO"); // ImGui::Text(_(u8"相对下运动: %s").c_str(), ele_main.MoveN ? "YES" : "NO"); // ImGui::Text(_(u8"上JOG: %s").c_str(), ele_main.MovePContinue ? "YES" : "NO"); // ImGui::Text(_(u8"下JOG: %s").c_str(), ele_main.MoveNContinue ? "YES" : "NO"); // ImGui::Text(_(u8"绝对值运动: %s").c_str(), ele_main.MoveAbsPos ? "YES" : "NO"); // ImGui::Text(_(u8"急停: %s").c_str(), ele_main.MotionStop ? "YES" : "NO"); // ImGui::Text(_(u8"伺服RDY状态: %s").c_str(), ele_main.ServoRDY ? "YES" : "NO"); // ImGui::Text(_(u8"指令运行HOME_Done: %s").c_str(), ele_main.ServoHomeDone ? "YES" : "NO"); // ImGui::Text(_(u8"指令运行RESET_Done: %s").c_str(), ele_main.ResetDone ? "YES" : "NO"); // ImGui::Text(_(u8"伺服BUSY: %s").c_str(), ele_main.ServoBusy ? "YES" : "NO"); // ImGui::Text(_(u8"伺服异常: %s").c_str(), ele_main.ServoException ? "YES" : "NO"); // ImGui::Text(_(u8"可运行状态: %s").c_str(), ele_main.Runable ? "YES" : "NO"); // ImGui::Text(_(u8"伺服异常字: %d").c_str(), ele_main.ExceptionCode); //轴伺服异常字_R // // ImGui::Text(_(u8"主轴伺服刹车: %s").c_str(), ele_main.ServoBreakOn ? "YES" : "NO"); // ImGui::Text(_(u8"主轴伺服绑定从轴: %s").c_str(), ele_main.BindSlaveOn ? "YES" : "NO"); // ImGui::Text(_(u8"主从轴已经绑定: %s").c_str(), ele_main.BindSlaveFinish ? "YES" : "NO"); // // ImGui::Text(_(u8"轴位置: %.3f").c_str(), ele_main.Pos); // ImGui::Text(_(u8"轴扭矩: %.3f").c_str(), ele_main.Torque); // ImGui::EndGroup(); // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // // ImGui::BeginGroup(); // ImGui::Button(_(u8"电缸从轴").c_str(), ImVec2(200, 0)); // //ImGui::Text(_(u8"伺服使能:%s").c_str(), ele_slave.ServoOn ? "YES" : "NO"); // ImGui::Text(_(u8"伺服成立原点: %s").c_str(), ele_slave.ServoHomeIndexOn ? "YES" : "NO"); // ImGui::Text(_(u8"伺服复位: %s").c_str(), ele_slave.ServoReset ? "YES" : "NO"); // ImGui::Text(_(u8"相对上运动: %s").c_str(), ele_slave.MoveP ? "YES" : "NO"); // ImGui::Text(_(u8"相对下运动: %s").c_str(), ele_slave.MoveN ? "YES" : "NO"); // ImGui::Text(_(u8"上JOG: %s").c_str(), ele_slave.MovePContinue ? "YES" : "NO"); // ImGui::Text(_(u8"下JOG: %s").c_str(), ele_slave.MoveNContinue ? "YES" : "NO"); // ImGui::Text(_(u8"绝对值运动: %s").c_str(), ele_slave.MoveAbsPos ? "YES" : "NO"); // ImGui::Text(_(u8"急停: %s").c_str(), ele_slave.MotionStop ? "YES" : "NO"); // ImGui::Text(_(u8"伺服RDY状态: %s").c_str(), ele_slave.ServoRDY ? "YES" : "NO"); // ImGui::Text(_(u8"指令运行HOME_Done: %s").c_str(), ele_slave.ServoHomeDone ? "YES" : "NO"); // ImGui::Text(_(u8"指令运行RESET_Done: %s").c_str(), ele_slave.ResetDone ? "YES" : "NO"); // ImGui::Text(_(u8"伺服BUSY: %s").c_str(), ele_slave.ServoBusy ? "YES" : "NO"); // ImGui::Text(_(u8"伺服异常: %s").c_str(), ele_slave.ServoException ? "YES" : "NO"); // ImGui::Text(_(u8"可运行状态: %s").c_str(), ele_slave.Runable ? "YES" : "NO"); // ImGui::Text(_(u8"伺服异常字: %d").c_str(), ele_slave.ExceptionCode); //轴伺服异常字_R // // ImGui::Text(_(u8"主轴伺服刹车: %s").c_str(), ele_slave.ServoBreakOn ? "YES" : "NO"); // ImGui::Text(_(u8"主轴伺服绑定从轴: %s").c_str(), ele_slave.BindSlaveOn ? "YES" : "NO"); // ImGui::Text(_(u8"主从轴已经绑定: %s").c_str(), ele_slave.BindSlaveFinish ? "YES" : "NO"); // // ImGui::Text(_(u8"轴位置: %.3f").c_str(), ele_slave.Pos); // ImGui::Text(_(u8"轴扭矩: %.3f").c_str(), ele_slave.Torque); // ImGui::EndGroup(); // ImGui::EndTabItem(); // } // // if (ImGui::BeginTabItem(_(u8"铺粉轴").c_str())) { // AxisStateValue arm; // m_Axis->m_Arm->GetState()->GetValue(arm); // //ImGui::Text(_(u8"伺服使能:%s").c_str(), arm.ServoOn ? "YES" : "NO"); // ImGui::Text(_(u8"伺服成立原点: %s").c_str(), arm.ServoHomeIndexOn ? "YES" : "NO"); // ImGui::Text(_(u8"伺服复位: %s").c_str(), arm.ServoReset ? "YES" : "NO"); // ImGui::Text(_(u8"相对前运动: %s").c_str(), arm.MoveP ? "YES" : "NO"); // ImGui::Text(_(u8"相对后运动: %s").c_str(), arm.MoveN ? "YES" : "NO"); // ImGui::Text(_(u8"前JOG: %s").c_str(), arm.MovePContinue ? "YES" : "NO"); // ImGui::Text(_(u8"后JOG: %s").c_str(), arm.MoveNContinue ? "YES" : "NO"); // ImGui::Text(_(u8"绝对值运动: %s").c_str(), arm.MoveAbsPos ? "YES" : "NO"); // ImGui::Text(_(u8"急停: %s").c_str(), arm.MotionStop ? "YES" : "NO"); // ImGui::Text(_(u8"伺服RDY状态: %s").c_str(), arm.ServoRDY ? "YES" : "NO"); // ImGui::Text(_(u8"指令运行HOME_Done: %s").c_str(), arm.ServoHomeDone ? "YES" : "NO"); // ImGui::Text(_(u8"指令运行RESET_Done: %s").c_str(), arm.ResetDone ? "YES" : "NO"); // ImGui::Text(_(u8"伺服BUSY: %s").c_str(), arm.ServoBusy ? "YES" : "NO"); // ImGui::Text(_(u8"伺服异常: %s").c_str(), arm.ServoException ? "YES" : "NO"); // ImGui::Text(_(u8"可运行状态: %s").c_str(), arm.Runable ? "YES" : "NO"); // ImGui::Text(_(u8"伺服异常字: %d").c_str(), arm.ExceptionCode); //轴伺服异常字_R // ImGui::Text(_(u8"轴位置: %.3f").c_str(), arm.Pos); // ImGui::Text(_(u8"轴扭矩: %.3f").c_str(), arm.Torque); // ImGui::EndTabItem(); // } // // if (ImGui::BeginTabItem(_(u8"移载轴").c_str())) { // AxisStateValue load; // m_Axis->m_Load->GetState()->GetValue(load); // //ImGui::Text(_(u8"伺服使能:%s").c_str(), load.ServoOn ? "YES" : "NO"); // ImGui::Text(_(u8"伺服成立原点: %s").c_str(), load.ServoHomeIndexOn ? "YES" : "NO"); // ImGui::Text(_(u8"伺服复位: %s").c_str(), load.ServoReset ? "YES" : "NO"); // ImGui::Text(_(u8"相对右运动: %s").c_str(), load.MoveP ? "YES" : "NO"); // ImGui::Text(_(u8"相对左运动: %s").c_str(), load.MoveN ? "YES" : "NO"); // ImGui::Text(_(u8"右JOG: %s").c_str(), load.MovePContinue ? "YES" : "NO"); // ImGui::Text(_(u8"左JOG: %s").c_str(), load.MoveNContinue ? "YES" : "NO"); // ImGui::Text(_(u8"绝对值运动: %s").c_str(), load.MoveAbsPos ? "YES" : "NO"); // ImGui::Text(_(u8"急停: %s").c_str(), load.MotionStop ? "YES" : "NO"); // ImGui::Text(_(u8"伺服RDY状态: %s").c_str(), load.ServoRDY ? "YES" : "NO"); // ImGui::Text(_(u8"指令运行HOME_Done: %s").c_str(), load.ServoHomeDone ? "YES" : "NO"); // ImGui::Text(_(u8"指令运行RESET_Done: %s").c_str(), load.ResetDone ? "YES" : "NO"); // ImGui::Text(_(u8"伺服BUSY: %s").c_str(), load.ServoBusy ? "YES" : "NO"); // ImGui::Text(_(u8"伺服异常: %s").c_str(), load.ServoException ? "YES" : "NO"); // ImGui::Text(_(u8"可运行状态: %s").c_str(), load.Runable ? "YES" : "NO"); // ImGui::Text(_(u8"伺服异常字: %d").c_str(), load.ExceptionCode); //轴伺服异常字_R // ImGui::Text(_(u8"轴位置: %.3f").c_str(), load.Pos); // ImGui::Text(_(u8"轴扭矩: %.3f").c_str(), load.Torque); // ImGui::EndTabItem(); // } // // if (ImGui::BeginTabItem(_(u8"供粉轴").c_str())) { // AxisStateValue supply; // m_Axis->m_Supply->GetState()->GetValue(supply); // //ImGui::Text(_(u8"伺服使能:%s").c_str(), supply.ServoOn ? "YES" : "NO"); // ImGui::Text(_(u8"伺服成立原点: %s").c_str(), supply.ServoHomeIndexOn ? "YES" : "NO"); // ImGui::Text(_(u8"伺服复位: %s").c_str(), supply.ServoReset ? "YES" : "NO"); // ImGui::Text(_(u8"相对右运动: %s").c_str(), supply.MoveP ? "YES" : "NO"); // ImGui::Text(_(u8"相对左运动: %s").c_str(), supply.MoveN ? "YES" : "NO"); // ImGui::Text(_(u8"右JOG: %s").c_str(), supply.MovePContinue ? "YES" : "NO"); // ImGui::Text(_(u8"左JOG: %s").c_str(), supply.MoveNContinue ? "YES" : "NO"); // ImGui::Text(_(u8"绝对值运动: %s").c_str(), supply.MoveAbsPos ? "YES" : "NO"); // ImGui::Text(_(u8"急停: %s").c_str(), supply.MotionStop ? "YES" : "NO"); // ImGui::Text(_(u8"伺服RDY状态: %s").c_str(), supply.ServoRDY ? "YES" : "NO"); // ImGui::Text(_(u8"指令运行HOME_Done: %s").c_str(), supply.ServoHomeDone ? "YES" : "NO"); // ImGui::Text(_(u8"指令运行RESET_Done: %s").c_str(), supply.ResetDone ? "YES" : "NO"); // ImGui::Text(_(u8"伺服BUSY: %s").c_str(), supply.ServoBusy ? "YES" : "NO"); // ImGui::Text(_(u8"伺服异常: %s").c_str(), supply.ServoException ? "YES" : "NO"); // ImGui::Text(_(u8"可运行状态: %s").c_str(), supply.Runable ? "YES" : "NO"); // ImGui::Text(_(u8"伺服异常字: %d").c_str(), supply.ExceptionCode); //轴伺服异常字_R // ImGui::Text(_(u8"轴位置: %.3f").c_str(), supply.Pos); // ImGui::Text(_(u8"轴扭矩: %.3f").c_str(), supply.Torque); // ImGui::EndTabItem(); // } // // ImGui::EndTabBar(); // ImGui::End(); //} // //void HBD1200OLD::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"移载轴轨道等待位").c_str(), &ad.LoadAxisTrackWaitPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_LoadAxisTrackWaitPos->SetValue(ad.LoadAxisTrackWaitPos); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"移载轴轨道等待位").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_LoadAxisTrackWaitPosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_LoadAxisTrackWaitPosRecord->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); // } // // if (ImGui::InputFloat(_(u8"移载轨道吊装位置").c_str(), m_SysParamWrapper->GetEnvUIAssist()->m_LoadHandPos->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_LoadHandPos->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_LoadHandPos->GetValue()); // } // // if (ImGui::InputFloat(_(u8"移载吊装碰撞位").c_str(), m_SysParamWrapper->GetEnvUIAssist()->m_LoadHandCrashPos->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_LoadHandCrashPos->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_LoadHandCrashPos->GetValue()); // } // 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"屏蔽移载轴扭力判断").c_str(), &isDisableLoadTorqueCheck)) { // m_AxisRecordWrapper->m_DisableLoadTorqueCheck->SetValue(isDisableLoadTorqueCheck); // } // // static bool loadHandPosRecord; // if (loadHandPosRecord != m_AxisRecordWrapper->m_LoadHandPosRecord->GetValue()) { // loadHandPosRecord = m_AxisRecordWrapper->m_LoadHandPosRecord->GetValue(); // } // if (ImGui::Checkbox(_(u8"移载轴吊装位记录").c_str(), &loadHandPosRecord)) { // m_AxisRecordWrapper->m_LoadHandPosRecord->SetValue(loadHandPosRecord); // } // // 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"负载最大值").c_str(), &loadCfg->m_MaxLoadValue, 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue); // ImGui::Checkbox(_(u8"载出时可选择吊装位").c_str(), &m_RunCfg->m_ShowUnloadHandPos); // ImGui::EndGroup(); // // ImGui::PopItemWidth(); // ImGui::EndChild(); // // ImGui::Text(_(u8"打印升降轴:").c_str()); // ImGui::BeginChild("PrintMoldCfg", ImVec2(0, 480), true, ImGuiWindowFlags_NoScrollWithMouse); // AxisCfg* moldCfg = ConfigManager::GetInstance()->GetMoldCfg(); // ImGui::PushItemWidth(120.0f); // ImGui::BeginGroup(); // // if (ImGui::InputFloat(_(u8"打印升降安全位").c_str(), &ad.PrintUpDownSafePos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_PrintUpDownSafePos->SetValue(ad.PrintUpDownSafePos); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"打印升降安全位记录").c_str()); // 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"打印顶升轴基板底座缸平面位置记录").c_str()); // 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(); // // if (ImGui::InputFloat(_(u8"打印主轴原点编码器值").c_str(), &ad.MoldMainHomeIndexEnc, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_MoldMainHomeIndexEnc->SetValue(ad.MoldMainHomeIndexEnc); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"打印主轴原点编码器值").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_MoldMainHomeIndexRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_MoldMainHomeIndexRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"打印主轴对齐位编码器值").c_str(), &ad.MoldMainAlignEnc, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_MoldMainAlignEnc->SetValue(ad.MoldMainAlignEnc); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"打印主轴对齐位编码器值").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_MoldMainAlignRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_MoldMainAlignRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"打印主轴对齐位与原点相对值").c_str(), &ad.MoldMainAlignHomeRel, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_MoldMainAlignHomeRel->SetValue(ad.MoldMainAlignHomeRel); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"打印主轴对齐位与原点相对值").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_MoldMainAlignHomeIndexRelRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_MoldMainAlignHomeIndexRelRecord->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"光栅尺错误判断值").c_str(), 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"间隙补偿差值").c_str(), 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"屏蔽打印升降轴扭力判断").c_str(), &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"负载最大值").c_str(), &moldCfg->m_MaxLoadValue, 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue); // // if (ImGui::InputScalar(_(u8"升降伺服位置警示值(μm)").c_str(), ImGuiDataType_U32, &m_RunCfg->m_MoldServoPosWarnOffset, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // } // if (ImGui::InputScalar(_(u8"层光栅位置偏差报警值(μm)").c_str(), ImGuiDataType_U32, &m_RunCfg->m_LayerLinearPosAlarmOffset, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // } // if (ImGui::InputScalar(_(u8"打印光栅累积误差报警值(μm)").c_str(), ImGuiDataType_U32, &m_RunCfg->m_PrintLinearAccDevAlarmOffset, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { // // } // ImGui::EndGroup(); // // ImGui::PopItemWidth(); // ImGui::EndChild(); // // //电缸 // { // ImGui::Text(_(u8"电缸:").c_str()); // ImGui::BeginChild("CleanAxisCfg", ImVec2(0, 350), true, ImGuiWindowFlags_NoScrollWithMouse); // AxisCfg* eleCfg = ConfigManager::GetInstance()->GetEleCfg(); // ImGui::PushItemWidth(120); // ImGui::BeginGroup(); // // if (ImGui::InputFloat(_(u8"电缸打印顶升位置").c_str(), &ad.m_EleCylinderPrintJackupPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderPrintJackupPos->SetValue(ad.m_EleCylinderPrintJackupPos); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"电缸打印顶升位记录").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_EleCylinderPrintJackupPosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_EleCylinderPrintJackupPosRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"电缸清粉顶升位置").c_str(), &ad.m_EleCylinderCleanJackupPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderCleanJackupPos->SetValue(ad.m_EleCylinderCleanJackupPos); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"电缸清粉顶升位记录").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_EleCylinderCleanJackupPosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_EleCylinderCleanJackupPosRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"电缸底座贴合位置").c_str(), &ad.m_EleCylinderBottomFitPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderBottomFitPos->SetValue(ad.m_EleCylinderBottomFitPos); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"电缸底座位记录").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_EleCylinderBottomFitPosRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_EleCylinderBottomFitPosRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"电缸升降上软限位").c_str(), &ad.m_EleCylinderSoftUpLimit, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderSoftUpLimit->SetValue(ad.m_EleCylinderSoftUpLimit); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"电缸升降上软限位记录").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_EleCylinderSoftUpLimitRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_EleCylinderSoftUpLimitRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"电缸升降下软限位").c_str(), &ad.m_EleCylinderSoftDownLimit, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderSoftDownLimit->SetValue(ad.m_EleCylinderSoftDownLimit); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"电缸升降下软限位记录").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_EleCylinderSoftDownLimitRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_EleCylinderSoftDownLimitRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"电缸主轴原点编码器值").c_str(), &ad.m_EleCylinderMainHomeIndexEnc, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderMainHomeIndexEnc->SetValue(ad.m_EleCylinderMainHomeIndexEnc); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"电缸主轴原点记录").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_EleCylinderMainHomeIndexRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_EleCylinderMainHomeIndexRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"电缸主轴对齐位编码器值").c_str(), &ad.m_EleCylinderMainAlignEnc, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderMainAlignEnc->SetValue(ad.m_EleCylinderMainAlignEnc); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"电缸主轴对齐位记录").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_EleCylinderMainAlignRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_EleCylinderMainAlignRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"电缸主轴对齐位与原点相对值").c_str(), &ad.m_EleCylinderMainAlignHomeRel, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderMainAlignHomeRel->SetValue(ad.m_EleCylinderMainAlignHomeRel); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"电缸主轴对齐位与原点相对值记录").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_EleCylinderMainAlignHomeIndexRelRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_EleCylinderMainAlignHomeIndexRelRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"电缸从轴原点编码器值").c_str(), &ad.m_EleCylinderSlaveHomeIndexEnc, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderSlaveHomeIndexEnc->SetValue(ad.m_EleCylinderSlaveHomeIndexEnc); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"电缸从轴原点记录").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_EleCylinderSlaveHomeIndexRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_EleCylinderSlaveHomeIndexRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"电缸从轴对齐位编码器值").c_str(), &ad.m_EleCylinderSlaveAlignEnc, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderSlaveAlignEnc->SetValue(ad.m_EleCylinderSlaveAlignEnc); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"电缸从轴对齐位记录").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_EleCylinderSlaveAlignRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_EleCylinderSlaveAlignRecord->SetValue(false); // } // ImGui::PopID(); // // if (ImGui::InputFloat(_(u8"电缸从轴对齐位与原点相对值").c_str(), &ad.m_EleCylinderSlaveAlignHomeRel, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderSlaveAlignHomeRel->SetValue(ad.m_EleCylinderSlaveAlignHomeRel); // } // ImGui::SameLine(); // ImGui::PushID(_(u8"电缸从轴对齐位与原点相对值记录").c_str()); // if (ImGui::Button(u8"√")) { // m_AxisRecordWrapper->m_EleCylinderSlaveAlignHomeIndexRelRecord->SetValue(true); // Sleep(100); // m_AxisRecordWrapper->m_EleCylinderSlaveAlignHomeIndexRelRecord->SetValue(false); // } // ImGui::PopID(); // // // ImGui::EndGroup(); // // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // // ImGui::BeginGroup(); // if (ImGui::InputFloat(_(u8"电缸升降轴速度(自动)").c_str(), &ad.m_EleCylinderAutoSpeed, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderAutoSpeed->SetValue(ad.m_EleCylinderAutoSpeed); // } // // if (ImGui::InputFloat(_(u8"电缸升降轴加速度(自动)").c_str(), &ad.m_EleCylinderAutoAcc, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderAutoAcc->SetValue(ad.m_EleCylinderAutoAcc); // } // // if (ImGui::InputFloat(_(u8"电缸升降轴减速度(自动)").c_str(), &ad.m_EleCylinderAutoDec, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderAutoDec->SetValue(ad.m_EleCylinderAutoDec); // } // // if (ImGui::InputFloat(_(u8"电缸升降轴相对位移(自动)").c_str(), &ad.m_EleCylinderAutoRelShift, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderAutoRelShift->SetValue(ad.m_EleCylinderAutoRelShift); // } // // if (ImGui::InputFloat(_(u8"电缸升降轴绝对位置(自动)").c_str(), &ad.m_EleCylinderAutoAbsPos, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderAutoAbsPos->SetValue(ad.m_EleCylinderAutoAbsPos); // } // // if (ImGui::InputFloat(_(u8"电缸轴上升扭力报警值").c_str(), &ad.m_EleCylinderUpTorqueThrehold, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderUpTorqueThrehold->SetValue(ad.m_EleCylinderUpTorqueThrehold); // } // if (ImGui::InputFloat(_(u8"电缸轴下降扭力报警值").c_str(), &ad.m_EleCylinderDownTorqueThreshold, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_EleCylinderDownTorqueThreshold->SetValue(ad.m_EleCylinderDownTorqueThreshold); // } // // // if (ImGui::InputScalar(_(u8"电缸升降轴绝对值试运行位置列表").c_str(), ImGuiDataType_S16, &ad.m_EleCylinderAbsTestPos, 0, 0, 0, ImGuiInputTextFlags_EnterReturnsTrue)) { //清粉升降轴绝对值试运行位置列表_RW // m_SysParamWrapper->m_EleCylinderAbsTestPos->SetValue(ad.m_EleCylinderAbsTestPos); // } // // ImGui::EndGroup(); // // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // // ImGui::BeginGroup(); // if (g_Admin > USER_ADMIN) // { // ImGui::SemicolonCombo(_(u8"电机正转方向").c_str(), &eleCfg->m_active_direct, directvec); // } // else { // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, true); // ImGui::SemicolonCombo(_(u8"电机正转方向").c_str(), &eleCfg->m_active_direct, directvec); // ImGui::PopItemFlag(); // } // ImGui::Checkbox(_(u8"显示位置置反").c_str(), &eleCfg->m_ShowPosInv); // ImGui::InputInt(_(u8"正限位").c_str(), &eleCfg->m_active_limit, NULL, NULL, ImGuiInputTextFlags_EnterReturnsTrue); // ImGui::InputInt(_(u8"负限位").c_str(), &eleCfg->m_negactive_limit, NULL, NULL, ImGuiInputTextFlags_EnterReturnsTrue); // ImGui::InputFloat(_(u8"负载最大值").c_str(), &eleCfg->m_MaxLoadValue, 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue); // // ImGui::EndGroup(); // ImGui::PopItemWidth(); // ImGui::EndChild(); // } // // //铺粉轴 // { // ImGui::Text(_(u8"铺粉轴:").c_str()); // 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"铺粉轴前下粉位").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"铺粉轴归原快速").c_str(), 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"铺粉轴归原慢速").c_str(), 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"屏蔽铺粉轴扭力判断").c_str(), &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"负载最大值").c_str(), &armCfg->m_MaxLoadValue, 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue); // ImGui::InputDouble(_(u8"铺粉时间偏移毫秒").c_str(), &m_RunCfg->m_CoverSimulateTimeOffset, 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue); // ImGui::InputDouble(_(u8"铺粉慢风速时间偏移毫秒").c_str(), &m_RunCfg->m_CoverWindSimulateTimeOffset, 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue); // ImGui::EndGroup(); // ImGui::PopItemWidth(); // // ImGui::EndChild(); // } // // // ImGui::Text(_(u8"供粉轴:").c_str()); // 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"屏蔽供粉轴扭力判断").c_str(), &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"供粉转轴的格数一圈").c_str(), &ad.m_SupplyPowderGridPerCycle, 0, 0, "%.1f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_SupplyPowderGridPerCycle->SetValue(ad.m_SupplyPowderGridPerCycle); // } // if (ImGui::InputFloat(_(u8"供粉转轴每格对用度数").c_str(), &ad.m_SupplyAxisAnglePerGrid, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // m_SysParamWrapper->m_SupplyAxisAnglePerGrid->SetValue(ad.m_SupplyAxisAnglePerGrid); // } // if (ImGui::InputFloat(_(u8"供粉转轴寻边偏移度数").c_str(), 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"负载最大值").c_str(), &supplyCfg->m_MaxLoadValue, 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue); // ImGui::EndGroup(); // // ImGui::PopItemWidth(); // ImGui::EndChild(); // // ImGui::Text(_(u8"铺粉参数").c_str()); // 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"铺粉归原点触发数").c_str(), 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").c_str(), m_SysParamWrapper->m_AutoCaptureCoverHomeCalcTimes->GetValue()); // // ImGui::Checkbox(_(u8"铺粉减风速").c_str(), &m_ExtCfg->m_AutoCoverSlowWind); // ImGui::EndGroup(); // ImGui::PopItemWidth(); // ImGui::EndChild(); //} // //void HBD1200OLD::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(); // //MainAxisState* ele = m_Axis->m_Clean->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(); // vector tabs; // tabs.push_back(_(u8"成型缸")); // tabs.push_back(_(u8"移载轴")); // tabs.push_back(_(u8"铺粉轴")); // tabs.push_back(_(u8"供粉轴")); // tabs.push_back(_(u8"铺粉")); // tabs.push_back(_(u8"控制")); // int tabwidth = 0; // for (size_t tindex = 0; tindex < tabs.size(); tindex++) { // tabwidth = tabwidth + ImGui::CalcTextSize(tabs[tindex].c_str(), 0).x + 15; // } // ImVec2 showSize = ImVec2(tabwidth, 600); // // ImGui::BeginChild("AxisSettingChild", showSize, 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").c_str(), 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"中断打印升降轴移动到安全位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"打印升降轴移动到安全位").c_str()); // } // else { // ImGui::ImageButton(chartletManager->m_MoldMoveDownestDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"不能执行打印升降轴移动到安全位").c_str()); // } // } // 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"执行打印升降轴移动到安全位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"打印升降轴移动到安全位").c_str()); // } // // 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"中断打印轴移动到底座缸平面位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"中断打印轴移动到底座缸平面位").c_str()); // } // else { // ImGui::ImageButton(chartletManager->m_MoldMovePlatformBottomDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"不能执行打印轴移动到底座缸平面位").c_str()); // } // } // 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"执行打印轴移动到底座缸平面位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"打印轴移动到底座缸平面位").c_str()); // } // 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"中断打印轴移动到基板缸平面位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"中断打印轴移动到基板缸平面位").c_str()); // // } // else { // ImGui::ImageButton(chartletManager->m_MoldMovePlatformDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"不能执行打印轴移动到基板缸平面位").c_str()); // } // } // 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"执行打印轴移动到基板缸平面位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"打印轴移动到基板缸平面位").c_str()); // } // } // 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").c_str(), 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").c_str(), 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").c_str(), 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").c_str(), 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"中断移载轴移动到轨道吊装位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"中断移载轴移动到轨道吊装位").c_str()); // // } // else { // ImGui::ImageButton(chartletManager->m_LoadHandPosDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"不能执行移载轴移动到轨道吊装位").c_str()); // } // } // 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"执行移载轴移动到轨道吊装位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"移载轴移动到轨道吊装位").c_str()); // } // // 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"中断移载轴移动到轨道清粉位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"中断移载轴移动到轨道清粉位").c_str()); // // } // else { // ImGui::ImageButton(chartletManager->m_LoadCleanPosDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"不能执行移载轴移动到轨道清粉位").c_str()); // } // } // 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"执行移载轴移动到轨道清粉位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"移载轴移动到轨道清粉位").c_str()); // } // 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"中断移载轴移动到轨道打印位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"中断移载轴移动到轨道打印位").c_str()); // // } // else { // ImGui::ImageButton(chartletManager->m_LoadPrintPosDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"不能执行移载轴移动到轨道打印位").c_str()); // } // } // 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"执行移载轴移动到轨道打印位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"移载轴移动到轨道打印位").c_str()); // } // } // // 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").c_str(), 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").c_str(), 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").c_str(), 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").c_str(), 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"中断铺粉轴移动到接粉位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"中断铺粉轴移动到接粉位").c_str()); // // } // else { // ImGui::ImageButton(chartletManager->m_ArmAcceptPosDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"不能执行铺粉轴移动到接粉位").c_str()); // } // } // 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"执行铺粉轴移动到接粉位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"铺粉轴移动到接粉位").c_str()); // } // ImGui::SameLine(); // 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"中断铺粉轴移动到前下粉位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"中断铺粉轴移动到前下粉位").c_str()); // // } // else { // ImGui::ImageButton(chartletManager->m_ArmFrontDropPosDisable->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0); // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"不能执行铺粉轴移动到前下粉位").c_str()); // } // } // 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"执行铺粉轴移动到前下粉位").c_str()); // } // if (ImGui::IsItemHovered())ImGui::SetTooltip(_(u8"铺粉轴移动到前下粉位").c_str()); // } // } // // 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").c_str(), 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").c_str(), 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").c_str(), supplyCfgVal.dec); // } // if (ImGui::InputScalar(_(u8"粉格").c_str(), ImGuiDataType_Float, &supplyCfgVal.rel, 0, 0, "%.3f", ImGuiInputTextFlags_EnterReturnsTrue)) { // supplyCfg->m_RefDistance->SetValue(supplyCfgVal.rel); // g_log->TraceInfo(_(u8"更新下粉轴相对移动距离:%.3f").c_str(), supplyCfgVal.rel); // } // ImGui::PopItemWidth(); // ImGui::EndTabItem(); // } // // if (ImGui::BeginTabItem(_(u8"铺粉").c_str())) { // AxisData ad; // m_SysParamWrapper->GetAxisData(ad); // vector ss = { _(u8"双向铺粉"),_(u8"单向铺粉"),_(u8"不铺粉") ,_(u8"双向铺粉2") ,_(u8"单向铺粉2"),_(u8"单向铺粉3") }; // ImGui::PushItemWidth(120); // if (ImGui::SemicolonCombo(_(u8"铺粉类型").c_str(), &ad.CoverType, ss)) { // m_SysParamWrapper->m_CoverType->SetValue(ad.CoverType); // g_log->TraceInfo(_(u8"更新铺粉方式:%d").c_str(), 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").c_str(), 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").c_str(), 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").c_str(), 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").c_str(), 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").c_str(), 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").c_str(), 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").c_str(), 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").c_str(), 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").c_str(), 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").c_str(), 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").c_str(), 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").c_str(), ad.DebugCoverDistance); // } // ImGui::PopItemWidth(); // // ImGui::Dummy(ImVec2(0, 20)); // if (m_SignalStateWrapper->m_IsCovering->GetValue()) { // ImGui::PushID("CoverTrigerStop"); // if (ImGui::Button(_(u8"停止").c_str(), ImVec2(-1, 0))) { // m_SignalStateWrapper->m_CoverTriger->SetValue(false); // g_log->TraceInfo(_(u8"停止铺粉调试").c_str()); // } // ImGui::PopID(); // } // else { // // if (m_Purifier->IsCoverWindSet()) // // { // // m_Purifier->ResetSlowWind(); // // } // if (ImGui::Button(_(u8"铺粉调试").c_str(), 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"执行铺粉调试").c_str()); // } // else { // g_Toast->AddToast(new ToastBean(_(u8"铺粉调试条件不成立").c_str(), 3000)); // } // } // } // ImGui::EndTabItem(); // } // if (g_Admin > USER_ADMIN) { // if (ImGui::BeginTabItem(_(u8"控制").c_str())) { // if (m_SignalStateWrapper->m_CylinderReachPrintRun->GetValue()) { // ImGui::PushID("CylinderReachPrintTrigerStop"); // if (ImGui::Button(_(u8"停止").c_str())) { // m_SignalStateWrapper->m_CylinderReachPrintTriger->SetValue(false); // } // ImGui::PopID(); // } // else { // // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, !m_SignalStateWrapper->m_CylinderReachPrintEnable->GetValue()); // if (ImGui::Button(_(u8"移动缸体到打印位").c_str())) { // if (m_SignalStateWrapper->m_CylinderReachPrintEnable->GetValue()) { // m_SignalStateWrapper->m_CylinderReachPrintTriger->SetValue(true); // g_log->TraceInfo(_(u8"执行移动缸体到打印位").c_str()); // } // else { // g_Toast->AddToast(new ToastBean(_(u8"移动缸体到打印位条件不成立").c_str(), 3000)); // } // m_RunCfg->m_HadSetBasePlatformPoint = false; // } // ImGui::PopItemFlag(); // } // // if (m_SignalStateWrapper->m_CylinderReachCleanRun->GetValue()) { // ImGui::PushID("CylinderReachCleanTrigerStop"); // if (ImGui::Button(_(u8"停止").c_str())) { // m_SignalStateWrapper->m_CylinderReachCleanTriger->SetValue(false); // } // ImGui::PopID(); // } // else { // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, !m_SignalStateWrapper->m_CylinderReachCleanEnable->GetValue()); // if (ImGui::Button(_(u8"移动缸体到清粉位").c_str())) { // if (m_SignalStateWrapper->m_CylinderReachCleanEnable->GetValue()) { // m_SignalStateWrapper->m_CylinderReachCleanTriger->SetValue(true); // g_log->TraceInfo(_(u8"执行移动缸体到清粉位").c_str()); // } // else { // g_Toast->AddToast(new ToastBean(_(u8"移动缸体到清粉位条件不成立").c_str(), 3000)); // } // // } // ImGui::PopItemFlag(); // } // // // if (m_SignalStateWrapper->m_CylinderPrintLoadRun->GetValue()) { // ImGui::PushID("CylinderPrintLoadTrigerStop"); // if (ImGui::Button(_(u8"停止").c_str())) { // m_SignalStateWrapper->m_CylinderPrintLoadTriger->SetValue(false); // } // ImGui::PopID(); // } // else { // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, !m_SignalStateWrapper->m_CylinderPrintLoadEnable->GetValue()); // if (ImGui::Button(_(u8"缸体打印位装载").c_str())) { // if (m_SignalStateWrapper->m_CylinderPrintLoadEnable->GetValue()) { // m_SignalStateWrapper->m_CylinderPrintLoadTriger->SetValue(true); // g_log->TraceInfo(_(u8"执行缸体打印位装载").c_str()); // } // else { // g_Toast->AddToast(new ToastBean(_(u8"缸体打印位装载条件不成立").c_str(), 3000)); // } // m_RunCfg->m_HadSetBasePlatformPoint = false; // } // ImGui::PopItemFlag(); // } // // if (m_SignalStateWrapper->m_CylinderConnectCleanBoxRun->GetValue()) { // ImGui::PushID("CylinderConnectCleanBoxTrigerStop"); // if (ImGui::Button(_(u8"停止").c_str())) { // m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger->SetValue(false); // } // ImGui::PopID(); // } // else { // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, !m_SignalStateWrapper->m_CylinderConnectCleanBoxEnable->GetValue()); // if (ImGui::Button(_(u8"缸体连接清粉箱").c_str())) { // if (m_SignalStateWrapper->m_CylinderConnectCleanBoxEnable->GetValue()) { // m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger->SetValue(true); // g_log->TraceInfo(_(u8"执行缸体连接清粉箱").c_str()); // } // else { // g_Toast->AddToast(new ToastBean(_(u8"缸体连接清粉箱条件不成立").c_str(), 3000)); // } // } // ImGui::PopItemFlag(); // } // // if (m_SignalStateWrapper->m_CylinderPrintUnloadRun->GetValue()) { // ImGui::PushID("CylinderPrintUnloadTrigerStop"); // if (ImGui::Button(_(u8"停止").c_str())) { // m_SignalStateWrapper->m_CylinderPrintUnloadTriger->SetValue(false); // } // ImGui::PopID(); // } // else { // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, !m_SignalStateWrapper->m_CylinderPrintUnloadEnable->GetValue()); // if (ImGui::Button(_(u8"缸体打印位卸载").c_str())) { // if (m_SignalStateWrapper->m_CylinderPrintUnloadEnable->GetValue()) { // m_SignalStateWrapper->m_CylinderPrintUnloadTriger->SetValue(true); // g_log->TraceInfo(_(u8"执行缸体打印位卸载").c_str()); // } // else { // g_Toast->AddToast(new ToastBean(_(u8"缸体打印位卸载条件不成立").c_str(), 3000)); // } // m_RunCfg->m_HadSetBasePlatformPoint = false; // } // ImGui::PopItemFlag(); // } // // if (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxRun->GetValue()) { // ImGui::PushID("CylinderDisconnectCleanBoxTrigerStop"); // if (ImGui::Button(_(u8"停止").c_str())) { // m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger->SetValue(false); // } // ImGui::PopID(); // } // else { // ImGui::PushItemFlag(ImGuiItemFlags_Disabled, !m_SignalStateWrapper->m_CylinderDisconnectCleanBoxEnable->GetValue()); // if (ImGui::Button(_(u8"缸体脱离清粉箱").c_str())) { // if (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxEnable->GetValue()) { // m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger->SetValue(true); // g_log->TraceInfo(_(u8"执行缸体脱离清粉箱").c_str()); // } // else { // g_Toast->AddToast(new ToastBean(_(u8"缸体脱离清粉箱条件不成立").c_str(), 3000)); // } // } // ImGui::PopItemFlag(); // } // // ImGui::EndTabItem(); // } // } // ImGui::EndTabBar(); // ImGui::EndChild(); // // // if (ImGui::Button(_(u8"运动急停").c_str(), ImVec2(tabwidth, 0))) { // m_Axis->StopAll(); // g_log->TraceInfo(_(u8"运动急停").c_str()); // } // // ImGui::EndGroup(); // ImGui::SameLine(); // } // // ImGui::BeginChild("AxisCtrl", ImVec2(840, 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"移载载出").c_str()); // g_log->TraceInfo(_(u8"执行移出").c_str()); // } // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"载出").c_str()); // } // ImGui::SameLine(); // if (ImGui::ImageButton(chartletManager->m_LoadIn->GetTex(), ImVec2(60, 60), ImVec2(0, 0), ImVec2(1, 1), 0)) { // LoadIn(); // ImGui::OpenPopup(_(u8"移载载入").c_str()); // g_log->TraceInfo(_(u8"执行移入").c_str()); // } // if (ImGui::IsItemHovered()) { // ImGui::SetTooltip(_(u8"载入").c_str()); // } // // if (ImGui::BeginPopupModal(_(u8"移载载入").c_str(), NULL, ImGuiWindowFlags_AlwaysAutoResize)) { // if (GetLoadInProcStep() == In_Start) { // ImGui::Text(_(u8"移载开始载入").c_str()); // } // if (GetLoadInProcStep() == In_CylinderDisconnectCleanBox) { // ImGui::Text(_(u8"缸体与清粉箱分离中").c_str()); // } // if (GetLoadInProcStep() == In_CylinderReachPrint) { // ImGui::Text(_(u8"缸体到打印位运行中").c_str()); // } // if (GetLoadInProcStep() == In_CylinderPrintLoad) { // ImGui::Text(_(u8"缸体打印位装载运行中").c_str()); // } // if (GetLoadInResult() == In_Intercept) { // ImGui::TextColored(Toast::COLOR_ORANGE, GetLoadInfo().c_str()); // if (ImGui::Button(_(u8"确定").c_str(), ImVec2(-1, 0))) // { // ImGui::CloseCurrentPopup(); // } // } // else if (GetLoadInResult() == In_Success) { // ImGui::TextColored(Toast::COLOR_GREEN, GetLoadInfo().c_str()); // if (ImGui::Button(_(u8"确定").c_str(), ImVec2(-1, 0))) // { // ImGui::CloseCurrentPopup(); // } // } // else if (GetLoadInResult() > In_Success) { // ImGui::TextColored(Toast::COLOR_RED, GetLoadInfo().c_str()); // if (ImGui::Button(_(u8"确定").c_str(), ImVec2(-1, 0))) // { // ImGui::CloseCurrentPopup(); // } // } // // if (IsLoadIn()) { // if (ImGui::Button(_(u8"中断载入").c_str(), ImVec2(-1, 0))) // { // InterceptLoad(); // } // } // ImGui::EndPopup(); // } // // if (ImGui::BeginPopupModal(_(u8"移载载出").c_str(), NULL, ImGuiWindowFlags_AlwaysAutoResize)) { // if (GetLoadOutProcSetp() == Out_Start) // { // ImGui::Text(_(u8"移载开始载出").c_str()); // } // if (GetLoadOutProcSetp() == Out_CylinderPrintUnload) // { // ImGui::Text(_(u8"缸体打印位卸载运行中").c_str()); // } // if (GetLoadOutProcSetp() == Out_CylinderReachClean) // { // ImGui::Text(_(u8"缸体到清粉位运行中").c_str()); // } // if (GetLoadOutProcSetp() == Out_CylinderConnectCleanBox) // { // ImGui::Text(_(u8"缸体与清粉箱连接中").c_str()); // } // if (GetLoadOutProcSetp() == Out_CylinderReachHand) // { // ImGui::Text(_(u8"缸体与吊装位运行中").c_str()); // } // // if (GetLoadOutProcSetp() == Out_CylinderDisconnectCleanBox) // { // ImGui::Text(_(u8"缸体与清粉箱分离中").c_str()); // } // // // if (m_NeedWaitSelectOutPos) { // vector combtemp = { _(u8"清粉位"),_(u8"吊装位") }; // ImGui::SemicolonCombo(_(u8"选择载出位置").c_str(), &m_SelectOutPos, combtemp); // if (ImGui::Button(_(u8"下一步").c_str())) // { // m_WaitSelectOutPosCommit = true; // } // } // // if (IsWaitConnectBoxCommit()) { // if (ImGui::Button(_(u8"执行缸体与清粉箱连接").c_str())) // { // SetWaitConnectBoxCommit(false); // } // } // // if (GetLoadOutResult() == Out_Intercept) { // ImGui::TextColored(Toast::COLOR_ORANGE, GetLoadInfo().c_str()); // if (ImGui::Button(_(u8"确定").c_str(), ImVec2(-1, 0))) // { // ImGui::CloseCurrentPopup(); // } // } // else if (GetLoadOutResult() == Out_Success) { // ImGui::TextColored(Toast::COLOR_GREEN, GetLoadInfo().c_str()); // if (ImGui::Button(_(u8"确定").c_str(), ImVec2(-1, 0))) // { // ImGui::CloseCurrentPopup(); // } // } // else if (GetLoadOutResult() > Out_Success) { // ImGui::TextColored(Toast::COLOR_RED, GetLoadInfo().c_str()); // if (ImGui::Button(_(u8"确定").c_str(), ImVec2(-1, 0))) // { // ImGui::CloseCurrentPopup(); // } // } // // if (IsLoadOut()) { // if (ImGui::Button(_(u8"中断载出").c_str(), 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").c_str(), 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").c_str(), 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").c_str(), 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").c_str(), 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]往左连续移动").c_str(), 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_Axis->m_Load->MovLimitStop(AxisConfig::ActiveDirect::LEFT); // 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]往左连续移动").c_str(), 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]往右连续移动").c_str(), 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_Axis->m_Load->MovLimitStop(AxisConfig::ActiveDirect::RIGHT); // 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]往右连续移动").c_str(), 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").c_str(), load->GetShowPos() / 1000.0f); // ImGui::Text(_(u8"成型缸:%.3f").c_str(), mold->GetShowPos() / 1000.0f); // ImGui::Text(_(u8"铺粉臂:%.3f").c_str(), 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格").c_str(), 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_Axis->m_Arm->MovLimitStop(AxisConfig::ActiveDirect::BACK); // 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_Axis->m_Arm->MovLimitStop(AxisConfig::ActiveDirect::FRONT); // 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"铺粉轴越限解除").c_str()); // } // } // 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").c_str(), 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").c_str(), 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]往上连续移动").c_str(), 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_Axis->m_Mold->MovLimitStop(AxisConfig::ActiveDirect::UP); // 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]往上连续移动").c_str(), 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").c_str(), 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").c_str(), 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]往下连续移动").c_str(), 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_Axis->m_Mold->MovLimitStop(AxisConfig::ActiveDirect::DOWN); // 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]往连续下移动").c_str(), 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 HBD1200OLD::DrawAnalogExt() //{ // ImGui::SameLine(); // ImGui::SeparatorEx(ImGuiSeparatorFlags_Vertical); // ImGui::SameLine(); // ImGui::BeginGroup(); // if (ImGui::InputFloat(_(u8"清粉箱除氧设定值").c_str(), m_SysParamWrapper->GetEnvUIAssist()->m_CleanBoxDeoxygenSetValue->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_CleanBoxDeoxygenSetValue->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_CleanBoxDeoxygenSetValue->GetValue()); // } // if (ImGui::InputFloat(_(u8"清粉箱测氧仪下限").c_str(), m_SysParamWrapper->GetEnvUIAssist()->m_CleanBoxOxygenDownLimit->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_CleanBoxOxygenDownLimit->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_CleanBoxOxygenDownLimit->GetValue()); // } // if (ImGui::InputFloat(_(u8"清粉箱测氧仪上限").c_str(), m_SysParamWrapper->GetEnvUIAssist()->m_CleanBoxOxygenUpLimit->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_CleanBoxOxygenUpLimit->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_CleanBoxOxygenUpLimit->GetValue()); // } // if (ImGui::InputFloat(_(u8"清粉箱泄压值").c_str(), m_SysParamWrapper->GetEnvUIAssist()->m_CleanBoxPressureReleaseValue->GetUIValue(), 0, 0, "%.2f", ImGuiInputTextFlags_EnterReturnsTrue)) // { // m_SysParamWrapper->GetEnvUIAssist()->m_CleanBoxPressureReleaseValue->SetValue(m_SysParamWrapper->GetEnvUIAssist()->m_CleanBoxPressureReleaseValue->GetValue()); // } // if (ImGui::InputFloat(_(u8"打印小车1报警重量").c_str(), 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报警重量").c_str(), 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报警重量").c_str(), 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报警重量").c_str(), 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"料位棒长度").c_str(), 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"料位棒计算长度").c_str(), &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"料位棒当前值").c_str(), 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"打印室换气泄压值").c_str(), 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 HBD1200OLD::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_OutsideOxygenLackAlarm = new SysParamBool(flag++, 1, cc, u8"外界氧含量不足警告", "OutsideOxygenLackAlarm"); m_SignalStateWrapper->m_LaserChillerAlarm = new SysParamBool(flag++, 1, cc, u8"激光器冷水机报警", "LaserChillerAlarm"); 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_HeatingInputAlarm = new SysParamBool(flag++, 1, cc, u8"加热输入异常", "HeatingInputAlarm"); m_SignalStateWrapper->m_HeatingOutputAlarm = new SysParamBool(flag++, 1, cc, u8"加热输出异常", "HeatingOutputAlarm"); 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_PrintStorageCar1BlockWarn = new SysParamBool(flag++, 1, cc, u8"打印存粉小车1堵塞警示", "PrintStorageCar1BlockWarn"); flag++; m_SignalStateWrapper->m_MoldMainUpLimitActive = new SysParamBool(flag++, 1, cc, u8"打印主轴上限位触发警示", "MoldMainUpLimitActive"); m_SignalStateWrapper->m_MoldMainDownLimitActive = new SysParamBool(flag++, 1, cc, u8"打印主轴下限位触发警示", "MoldMainDownLimitActive"); flag++; flag++; flag++; flag++; flag++; m_SignalStateWrapper->m_PrintTrackDisableWarn = new SysParamBool(flag++, 1, cc,u8"轨道打印位感应失效警告","PrintTrackDisableWarn"); flag++; flag++; flag++; flag++; flag++; flag++; m_SignalStateWrapper->m_CylinderExtendOnAlarm = new SysParamBool(flag++, 1, cc,u8"缸体固定气缸伸出不到位异常","CylinderExtendOnAlarm"); m_SignalStateWrapper->m_CylinderExtendOffAlarm = new SysParamBool(flag++, 1, cc,u8"缸体固定定位气缸缩回不到位异常","CylinderExtendOffAlarm"); flag++; flag++; m_SignalStateWrapper->m_PrintCylinderVerifyAlarm = new SysParamBool(flag++, 1, cc,u8"打印位缸体检测异常","PrintCylinderVerifyAlarm"); flag++; flag++; flag++; flag++; flag++; 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_CleanBoxUpOpenAlarm = new SysParamBool(flag++, 1, cc, u8"清粉箱上盖气缸打开不到位异常", "CleanBoxUpOpenAlarm"); m_SignalStateWrapper->m_CleanBoxUpCloseAlarm = new SysParamBool(flag++, 1, cc, u8"清粉箱上盖气缸关闭不到位异常", "CleanBoxUpCloseAlarm"); m_SignalStateWrapper->m_CylinderHandPlatformOpenAlarm = new SysParamBool(flag++, 1, cc, u8"缸体吊装盖板打开异常", "CylinderHandPlatformOpenAlarm"); m_SignalStateWrapper->m_CylinderHandDoorOpenAlarm = new SysParamBool(flag++, 1, cc, u8"缸体吊装门打开异常", "CylinderHandDoorOpenAlarm"); flag++; flag++; m_SignalStateWrapper->m_HandPlatformCloseAlarm = new SysParamBool(flag++, 1, cc,u8"吊装盖板关闭异常","HandPlatformCloseAlarm"); flag = 64 * 8 + 3; 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++; m_SignalStateWrapper->m_PowderPosition1Alarm = new SysParamBool(flag++, 1, cc, u8"粉仓料位感应器1异常", "PowderPosition1Alarm"); m_SignalStateWrapper->m_PowderPosition2Alarm = new SysParamBool(flag++, 1, cc, u8"粉仓料位感应器2异常", "PowderPosition2Alarm"); m_SignalStateWrapper->m_PowderPosition3Alarm = new SysParamBool(flag++, 1, cc, u8"粉仓料位感应器3异常", "PowderPosition3Alarm"); m_SignalStateWrapper->m_PowderPosition4Alarm = new SysParamBool(flag++, 1, cc, u8"粉仓料位感应器4异常", "PowderPosition4Alarm"); m_SignalStateWrapper->m_PowderPosition5Alarm = new SysParamBool(flag++, 1, cc, u8"粉仓料位感应器5异常", "PowderPosition5Alarm"); m_SignalStateWrapper->m_SupplyHomeIndexDisableAlarm = new SysParamBool(flag++, 1, cc, u8"供粉转轴原点失效异常", "SupplyHomeIndexDisableAlarm"); flag++; m_SignalStateWrapper->m_PrintOxygen1DeciceAlarm = new SysParamBool(flag++, 1, cc, u8"打印舱测氧仪1异常", "PrintOxygen1DeciceAlarm"); m_SignalStateWrapper->m_PrintOxygen2DeviceAlarm = new SysParamBool(flag++, 1, cc, u8"打印舱测氧仪2异常", "PrintOxygen2DeviceAlarm"); m_SignalStateWrapper->m_OutsideOxygenDeviceAlarm = new SysParamBool(flag++, 1, cc, u8"室外测氧仪异常", "OutsideOxygenDeviceAlarm"); m_SignalStateWrapper->m_PrintPressureOverLimitAlarm = new SysParamBool(flag++, 1, cc, u8"打印舱压力过高异常", "PrintPressureOverLimitAlarm"); m_SignalStateWrapper->m_ScannerChillerAlarm = new SysParamBool(flag++, 1, cc, u8"光路冷水机报警", "ScannerChillerAlarm"); m_SignalStateWrapper->m_PurifierChillerAlarm = new SysParamBool(flag++, 1, cc, u8"净化器冷水机报警", "PurifierChillerAlarm"); m_SignalStateWrapper->m_MoldTorqueAlarm = new SysParamBool(flag++, 1, cc, u8"打印主轴扭力异常", "MoldTorqueAlarm"); flag++; m_SignalStateWrapper->m_EleCylinderMainTorqueAlarm = new SysParamBool(flag++, 1, cc, u8"电缸主轴扭力异常", "EleCylinderMainTorqueAlarm"); m_SignalStateWrapper->m_EleCylinderSlaveTorqueAlarm = new SysParamBool(flag++, 1, cc, u8"电缸从轴扭力异常", "EleCylinderSlaveTorqueAlarm"); 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"); m_SignalStateWrapper->m_EleCylinderMainOverSoftUpLimit = new SysParamBool(flag++, 1, cc, u8"电缸主轴超软上限", "EleCylinderMainOverSoftUpLimit"); m_SignalStateWrapper->m_EleCylinderMainOverSoftDownLimit = new SysParamBool(flag++, 1, cc, u8"电缸主轴超软下限", "EleCylinderMainOverSoftDownLimit"); 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_PrintStorageCar2BlockAlarm = new SysParamBool(flag++, 1, cc, u8"打印存粉小车2堵塞报警", "PrintStorageCar2BlockAlarm"); 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"); m_SignalStateWrapper->m_EleCylinderMainServoAlarmSignal = new SysParamBool(flag++, 1, cc, u8"电缸主轴伺服异常", "EleCylinderMainServoAlarmSignal"); m_SignalStateWrapper->m_EleCylinderPrintHandupAlarmSignal = new SysParamBool(flag++, 1, cc, u8"电缸打印位顶升异常", "EleCylinderPrintHandupAlarmSignal"); m_SignalStateWrapper->m_CleanBoxTopDoorRiseAlarmSignal = new SysParamBool(flag++, 1, cc, u8"清粉箱顶门升高异常", "CleanBoxTopDoorRiseAlarmSignal"); m_SignalStateWrapper->m_CleanBoxTopDoorFallAlarmSignal = new SysParamBool(flag++, 1, cc, u8"清粉箱顶门降低异常", "CleanBoxTopDoorFallAlarmSignal"); m_SignalStateWrapper->m_CoverReachAcceptPowderAlarmSignal = new SysParamBool(flag++, 1, cc, u8"铺粉轴到接粉位异常", "CoverReachAcceptPowderAlarmSignal"); m_SignalStateWrapper->m_CoverReachDropPowderAlarmSignal = new SysParamBool(flag++, 1, cc, u8"铺粉轴到下粉位异常", "CoverReachDropPowderAlarmSignal"); m_SignalStateWrapper->m_EleCylinderSlaveServoAlarmSignal = new SysParamBool(flag++, 1, cc, u8"电缸从轴伺服异常", "EleCylinderSlaveServoAlarmSignal"); m_SignalStateWrapper->m_LinearEncoderCheckAlarmSignal = new SysParamBool(flag++, 1, cc, u8"光栅尺检测异常", "LinearEncoderCheckAlarmSignal"); m_SignalStateWrapper->m_PrintMainSoftStopTrigger = new SysParamBool(flag++, 1, cc, u8"打印主轴软急停触发", "PrintMainSoftStopTrigger"); m_SignalStateWrapper->m_EleCylinderSoftStopTrigger = new SysParamBool(flag++, 1, cc, u8"电缸主轴软急停触发", "EleCylinderSoftStopTrigger"); 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"); 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"); m_SignalStateWrapper->m_PrintVacuumTriger = new SysParamBool(flag++, 1, cc, u8"打印室启动吸尘器_W", "PrintVacuumTriger"); flag++; flag++; m_SignalStateWrapper->m_DisableRasterJudge = new SysParamBool(flag++, 1, cc, u8"屏蔽光栅尺判断_W", "DisableRasterJudge"); 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; m_SignalStateWrapper->m_PrintStoreCar1ExhaustEnable = new SysParamBool(flag++, 1, cc, u8"触发打印存粉小车1排粉", "PrintStoreCar1ExhaustEnable"); m_SignalStateWrapper->m_PrintStoreCar2ExhaustEnable = new SysParamBool(flag++, 1, cc, u8"触发打印存粉小车2排粉", "PrintStoreCar2ExhaustEnable"); 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 = 0; m_SignalStateWrapper->m_SheildPrintPosSensor = new SysParamBool(flag++, 68, cc, u8"屏蔽打印位感应器", "SheildPrintPosSensor"); m_SignalStateWrapper->m_UseSupplySearchEdge = new SysParamBool(flag++, 68, cc, u8"使用下粉轴寻边", "UseSupplySearchEdge"); m_SignalStateWrapper->m_SheildCylinderFixSensor = new SysParamBool(flag++, 68, cc, u8"屏蔽缸体固定定位感应器", "SheildCylinderFixSensor"); m_SignalStateWrapper->m_UseNanoUnit = new SysParamBool(flag++, 68, cc, u8"使用纳米单位", "UseNanoUnit"); flag++; m_SignalStateWrapper->m_SheildLinearEncoder = new SysParamBool(flag++, 68, cc, u8"屏蔽光栅尺", "SheildLinearEncoder"); flag++; flag++; flag++; flag++; m_SignalStateWrapper->m_SheildHighPressure = new SysParamBool(flag++, 68, cc,u8"屏蔽高压气","SheildHighPressure"); m_SignalStateWrapper->m_UnuseCoverReachSensor = new SysParamBool(flag++, 68, cc,u8"不使用铺粉轴到位感应器","UnuseCoverReachSensor"); flag++; m_SignalStateWrapper->m_UseArmCaptureHome = new SysParamBool(flag++, 68, cc, u8"使用铺粉臂归原点", "UseArmCaptureHome"); flag++; flag++; m_SignalStateWrapper->m_LinearEncoderOppDirection = new SysParamBool(flag++, 68, cc, u8"光栅尺反向", "LinearEncoderOppDirection"); 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"); m_SignalStateWrapper->m_IsInPrintJackupPos = new SysParamBool(flag++, 4, cc, u8"打印顶升位", "IsInPrintJackupPos"); m_SignalStateWrapper->m_IsInCleanJackupPos = new SysParamBool(flag++, 4, cc, u8"清粉顶升位", "IsInCleanJackupPos"); m_SignalStateWrapper->m_IsInEleCylinderBottomFixPos = new SysParamBool(flag++, 4, cc, u8"底座贴合位", "IsInEleCylinderBottomFixPos"); 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"); flag = 90 * 8 + 2; m_SignalStateWrapper->m_CleanTorqueUpInsideLimit = new SysParamBool(flag++, 1, cc, u8"扭力值在上升扭力范围内", "CleanTorqueUpInsideLimit"); m_SignalStateWrapper->m_CleanAxisPosUpInSoftLimit = new SysParamBool(flag++, 1, cc, u8"轴位置没超过软上限", "CleanAxisPosUpInSoftLimit"); m_SignalStateWrapper->m_CleanTorqueDownInsideLimit = new SysParamBool(flag++, 1, cc, u8"扭力值在下降扭力范围内", "CleanTorqueDownInsideLimit"); m_SignalStateWrapper->m_CleanAxisPosDownInsideSoftLimit = new SysParamBool(flag++, 1, cc, u8"轴位置没超过软下限", "CleanAxisPosDownInsideSoftLimit"); m_SignalStateWrapper->m_CleanUpInsideLimit = new SysParamBool(flag++, 1, cc, u8"上限位没触发", "CleanUpInsideLimit"); m_SignalStateWrapper->m_CleanDownInsideLimit = new SysParamBool(flag++, 1, cc, u8"下限位没触发", "CleanDownInsideLimit"); m_SignalStateWrapper->m_EleMainServoNoAlarm = new SysParamBool(flag++, 1, cc, u8"电缸主轴伺服无异常", "EleMainServoNoAlarm"); m_SignalStateWrapper->m_EleSlaveServoNoAlarm = new SysParamBool(flag++, 1, cc, u8"电缸从轴伺服无异常", "EleSlaveServoNoAlarm"); 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"); flag++; flag++; flag++; flag++; m_SignalStateWrapper->m_CylinderFixInReleasePos = new SysParamBool(flag++, 1, cc,u8"缸体固定气缸在松开位","CylinderFixInReleasePos"); 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"); m_SignalStateWrapper->m_EleServoInBottomPos = new SysParamBool(flag++, 1, cc, u8"电缸在底座位", "EleServoInBottomPos"); 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 HBD1200OLD::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; 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 HBD1200OLD::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 = 2; items[flag].pdata = new unsigned char[2]; 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 = 6; items[flag].pdata = new unsigned char[6]; pcommand->m_Ref = this; pcommand->m_Fun = &HBD1200OLD::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 = &HBD1200OLD::ProcReadPLCData; pdata->isNeedDel = false; vecs.push_back(pdata); } void HBD1200OLD::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; HBD1200OLD* machine = (HBD1200OLD*)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]; 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_OutsideOxygenLackAlarm->SetReatimeValue(arr56[3]); machine->m_SignalStateWrapper->m_LaserChillerAlarm->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_HeatingInputAlarm->SetReatimeValue(arr57[6]); machine->m_SignalStateWrapper->m_HeatingOutputAlarm->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_PrintStorageCar1BlockWarn->SetReatimeValue(arr58[2]); machine->m_SignalStateWrapper->m_MoldMainUpLimitActive->SetReatimeValue(arr58[4]); machine->m_SignalStateWrapper->m_MoldMainDownLimitActive->SetReatimeValue(arr58[5]); bitset<8> arr59(arr[59]); machine->m_SignalStateWrapper->m_PrintTrackDisableWarn->SetReatimeValue(arr59[3]); bitset<8> arr60(arr[60]); machine->m_SignalStateWrapper->m_CylinderExtendOnAlarm->SetReatimeValue(arr60[2]); machine->m_SignalStateWrapper->m_CylinderExtendOffAlarm->SetReatimeValue(arr60[3]); machine->m_SignalStateWrapper->m_PrintCylinderVerifyAlarm->SetReatimeValue(arr60[6]); 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_CleanBoxUpOpenAlarm->SetReatimeValue(arr62[1]); machine->m_SignalStateWrapper->m_CleanBoxUpCloseAlarm->SetReatimeValue(arr62[2]); machine->m_SignalStateWrapper->m_CylinderHandPlatformOpenAlarm->SetReatimeValue(arr62[3]); machine->m_SignalStateWrapper->m_CylinderHandDoorOpenAlarm->SetReatimeValue(arr62[4]); 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_PowderPosition1Alarm->SetReatimeValue(arr65[2]); machine->m_SignalStateWrapper->m_PowderPosition2Alarm->SetReatimeValue(arr65[3]); machine->m_SignalStateWrapper->m_PowderPosition3Alarm->SetReatimeValue(arr65[4]); machine->m_SignalStateWrapper->m_PowderPosition4Alarm->SetReatimeValue(arr65[5]); machine->m_SignalStateWrapper->m_PowderPosition5Alarm->SetReatimeValue(arr65[6]); machine->m_SignalStateWrapper->m_SupplyHomeIndexDisableAlarm->SetReatimeValue(arr65[7]); bitset<8> arr66(arr[66]); machine->m_SignalStateWrapper->m_PrintOxygen1DeciceAlarm->SetReatimeValue(arr66[1]); machine->m_SignalStateWrapper->m_PrintOxygen2DeviceAlarm->SetReatimeValue(arr66[2]); machine->m_SignalStateWrapper->m_OutsideOxygenDeviceAlarm->SetReatimeValue(arr66[3]); machine->m_SignalStateWrapper->m_PrintPressureOverLimitAlarm->SetReatimeValue(arr66[4]); machine->m_SignalStateWrapper->m_ScannerChillerAlarm->SetReatimeValue(arr66[5]); machine->m_SignalStateWrapper->m_PurifierChillerAlarm->SetReatimeValue(arr66[6]); machine->m_SignalStateWrapper->m_MoldTorqueAlarm->SetReatimeValue(arr66[7]); bitset<8> arr67(arr[67]); machine->m_SignalStateWrapper->m_EleCylinderMainTorqueAlarm->SetReatimeValue(arr67[1]); machine->m_SignalStateWrapper->m_EleCylinderSlaveTorqueAlarm->SetReatimeValue(arr67[2]); 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_EleCylinderMainOverSoftUpLimit->SetReatimeValue(arr68[1]); machine->m_SignalStateWrapper->m_EleCylinderMainOverSoftDownLimit->SetReatimeValue(arr68[2]); 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_PrintStorageCar2BlockAlarm->SetReatimeValue(arr69[1]); 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]); machine->m_SignalStateWrapper->m_EleCylinderMainServoAlarmSignal->SetReatimeValue(arr70[6]); machine->m_SignalStateWrapper->m_EleCylinderPrintHandupAlarmSignal->SetReatimeValue(arr70[7]); bitset<8> arr71(arr[71]); machine->m_SignalStateWrapper->m_CleanBoxTopDoorRiseAlarmSignal->SetReatimeValue(arr71[0]); machine->m_SignalStateWrapper->m_CleanBoxTopDoorFallAlarmSignal->SetReatimeValue(arr71[1]); machine->m_SignalStateWrapper->m_CoverReachAcceptPowderAlarmSignal->SetReatimeValue(arr71[2]); machine->m_SignalStateWrapper->m_CoverReachDropPowderAlarmSignal->SetReatimeValue(arr71[3]); machine->m_SignalStateWrapper->m_EleCylinderSlaveServoAlarmSignal->SetReatimeValue(arr71[4]); machine->m_SignalStateWrapper->m_LinearEncoderCheckAlarmSignal->SetReatimeValue(arr71[5]); machine->m_SignalStateWrapper->m_PrintMainSoftStopTrigger->SetReatimeValue(arr71[6]); machine->m_SignalStateWrapper->m_EleCylinderSoftStopTrigger->SetReatimeValue(arr71[7]); 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_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]); machine->m_SignalStateWrapper->m_PrintVacuumTriger->SetReatimeValue(arr84[7]); bitset<8> arr85(arr[85]); machine->m_SignalStateWrapper->m_DisableRasterJudge->SetReatimeValue(arr85[2]); 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]); bitset<8> arr90(arr[90]); machine->m_SignalStateWrapper->m_CleanTorqueUpInsideLimit->SetReatimeValue(arr90[2]); machine->m_SignalStateWrapper->m_CleanAxisPosUpInSoftLimit->SetReatimeValue(arr90[3]); machine->m_SignalStateWrapper->m_CleanTorqueDownInsideLimit->SetReatimeValue(arr90[4]); machine->m_SignalStateWrapper->m_CleanAxisPosDownInsideSoftLimit->SetReatimeValue(arr90[5]); machine->m_SignalStateWrapper->m_CleanUpInsideLimit->SetReatimeValue(arr90[6]); machine->m_SignalStateWrapper->m_CleanDownInsideLimit->SetReatimeValue(arr90[7]); bitset<8> arr91(arr[91]); machine->m_SignalStateWrapper->m_EleMainServoNoAlarm->SetReatimeValue(arr91[0]); machine->m_SignalStateWrapper->m_EleSlaveServoNoAlarm->SetReatimeValue(arr91[1]); 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]); bitset<8> arr93(arr[93]); machine->m_SignalStateWrapper->m_CylinderFixInReleasePos->SetReatimeValue(arr93[0]); machine->m_SignalStateWrapper->m_LoadLeftNotInsideLimit->SetReatimeValue(arr93[2]); machine->m_SignalStateWrapper->m_LoadRightNotInsideLimit->SetReatimeValue(arr93[3]); machine->m_SignalStateWrapper->m_LoadServoNoAlarm->SetReatimeValue(arr93[4]); machine->m_SignalStateWrapper->m_EleServoInBottomPos->SetReatimeValue(arr93[5]); 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_PrintStoreCar1ExhaustEnable->SetReatimeValue(arr96[0]); machine->m_SignalStateWrapper->m_PrintStoreCar2ExhaustEnable->SetReatimeValue(arr96[1]); 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_IsInPrintJackupPos->SetReatimeValue(arr250[1]); //清粉基板底座面 machine->m_SignalStateWrapper->m_IsInCleanJackupPos->SetReatimeValue(arr250[2]); //清粉3R脱离位 machine->m_SignalStateWrapper->m_IsInEleCylinderBottomFixPos->SetReatimeValue(arr250[3]); //清粉最低面 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]); machine->m_AxisRecordWrapper->m_DisableCleanTorqueCheck->SetReatimeValue(arr41[7]); 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]); } if (pPersistState.Result == 0) { unsigned char* arr = (unsigned char*)pPersistState.pdata; bitset<8> arr0(arr[0]); machine->m_SignalStateWrapper->m_SheildPrintPosSensor->SetReatimeValue(arr0[0]); machine->m_SignalStateWrapper->m_UseSupplySearchEdge->SetReatimeValue(arr0[1]); machine->m_SignalStateWrapper->m_SheildCylinderFixSensor->SetReatimeValue(arr0[2]); machine->m_SignalStateWrapper->m_UseNanoUnit->SetReatimeValue(arr0[3]); machine->m_SignalStateWrapper->m_SheildLinearEncoder->SetReatimeValue(arr0[5]); bitset<8> arr1(arr[1]); machine->m_SignalStateWrapper->m_SheildHighPressure->SetReatimeValue(arr1[2]); //屏蔽高压气 machine->m_SignalStateWrapper->m_UnuseCoverReachSensor->SetReatimeValue(arr1[3]); machine->m_SignalStateWrapper->m_UseArmCaptureHome->SetReatimeValue(arr1[5]); machine->m_SignalStateWrapper->m_LinearEncoderOppDirection->SetReatimeValue(arr1[7]); } 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); } } void HBD1200OLD::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; HBD1200OLD* machine = (HBD1200OLD*)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 = 8; machine->m_SysParamWrapper->m_OutsideOxygen->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 = 40; machine->m_SysParamWrapper->m_OutsideOxygenMax->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); flag = 44; machine->m_SysParamWrapper->m_OutsideOxygenMin->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 = 72; machine->m_SysParamWrapper->m_OutsideOxygenAlarmValue->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 HBD1200OLD::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_PowerDownAlarm = m_SignalStateWrapper->m_PowerDownAlarm->GetValue(); //外部电源断电异常 signalState.m_OutsideOxygenLackAlarm = m_SignalStateWrapper->m_OutsideOxygenLackAlarm->GetValue(); //外界氧含量不足警告 signalState.m_LaserChillerAlarm = m_SignalStateWrapper->m_LaserChillerAlarm->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_HeatingInputAlarm = m_SignalStateWrapper->m_HeatingInputAlarm->GetValue(); //加热输入异常 signalState.m_HeatingOutputAlarm = m_SignalStateWrapper->m_HeatingOutputAlarm->GetValue(); //加热输出异常 signalState.m_PrintStorageCar1JarFullWarn = m_SignalStateWrapper->m_PrintStorageCar1JarFullWarn->GetValue(); //存粉小车粉罐已满警示 signalState.m_PrintStorageCar1DisconnectWarn = m_SignalStateWrapper->m_PrintStorageCar1DisconnectWarn->GetValue(); //打印存粉小车1没有连接警示 signalState.m_PrintStorageCar1BlockWarn = m_SignalStateWrapper->m_PrintStorageCar1BlockWarn->GetValue(); //打印存粉小车1堵塞警示 signalState.m_MoldMainUpLimitActive = m_SignalStateWrapper->m_MoldMainUpLimitActive->GetValue(); //打印主轴上限位触发警示 signalState.m_MoldMainDownLimitActive = m_SignalStateWrapper->m_MoldMainDownLimitActive->GetValue(); //打印主轴下限位触发警示 signalState.m_PrintTrackDisableWarn = m_SignalStateWrapper->m_PrintTrackDisableWarn->GetValue(); //轨道打印位感应失效警告 signalState.m_CylinderExtendOnAlarm = m_SignalStateWrapper->m_CylinderExtendOnAlarm->GetValue(); //缸体固定气缸伸出不到位异常 signalState.m_CylinderExtendOffAlarm = m_SignalStateWrapper->m_CylinderExtendOffAlarm->GetValue(); //缸体固定气缸缩回不到位异常 signalState.m_PrintCylinderVerifyAlarm = m_SignalStateWrapper->m_PrintCylinderVerifyAlarm->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_CleanBoxUpOpenAlarm = m_SignalStateWrapper->m_CleanBoxUpOpenAlarm->GetValue(); //清粉箱上盖气缸打开不到位异常 signalState.m_CleanBoxUpCloseAlarm = m_SignalStateWrapper->m_CleanBoxUpCloseAlarm->GetValue(); //清粉箱上盖气缸关闭不到位异常 signalState.m_CylinderHandPlatformOpenAlarm = m_SignalStateWrapper->m_CylinderHandPlatformOpenAlarm->GetValue(); //缸体吊装盖板打开异常 signalState.m_CylinderHandDoorOpenAlarm = m_SignalStateWrapper->m_CylinderHandDoorOpenAlarm->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_PowderPosition1Alarm = m_SignalStateWrapper->m_PowderPosition1Alarm->GetValue(); //粉仓料位感应器1异常 signalState.m_PowderPosition2Alarm = m_SignalStateWrapper->m_PowderPosition2Alarm->GetValue(); //粉仓料位感应器2异常 signalState.m_PowderPosition3Alarm = m_SignalStateWrapper->m_PowderPosition3Alarm->GetValue(); //粉仓料位感应器3异常 signalState.m_PowderPosition4Alarm = m_SignalStateWrapper->m_PowderPosition4Alarm->GetValue(); //粉仓料位感应器4异常 signalState.m_PowderPosition5Alarm = m_SignalStateWrapper->m_PowderPosition5Alarm->GetValue(); //粉仓料位感应器5异常 signalState.m_SupplyHomeIndexDisableAlarm = m_SignalStateWrapper->m_SupplyHomeIndexDisableAlarm->GetValue(); //供粉转轴原点失效异常 signalState.m_PrintOxygen1DeciceAlarm = m_SignalStateWrapper->m_PrintOxygen1DeciceAlarm->GetValue(); //打印舱测氧仪1异常 signalState.m_PrintOxygen2DeviceAlarm = m_SignalStateWrapper->m_PrintOxygen2DeviceAlarm->GetValue(); //打印舱测氧仪2异常 signalState.m_OutsideOxygenDeviceAlarm = m_SignalStateWrapper->m_OutsideOxygenDeviceAlarm->GetValue(); //室外测氧仪异常 signalState.m_PrintPressureOverLimitAlarm = m_SignalStateWrapper->m_PrintPressureOverLimitAlarm->GetValue(); //打印舱压力过高异常 signalState.m_ScannerChillerAlarm = m_SignalStateWrapper->m_ScannerChillerAlarm->GetValue(); //光路冷水机报警 signalState.m_PurifierChillerAlarm = m_SignalStateWrapper->m_PurifierChillerAlarm->GetValue(); //净化器冷水机报警 signalState.m_MoldTorqueAlarm = m_SignalStateWrapper->m_MoldTorqueAlarm->GetValue(); //打印主轴扭力异常 signalState.m_EleCylinderMainTorqueAlarm = m_SignalStateWrapper->m_EleCylinderMainTorqueAlarm->GetValue(); //电缸主轴扭力异常 signalState.m_EleCylinderSlaveTorqueAlarm = m_SignalStateWrapper->m_EleCylinderSlaveTorqueAlarm->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_EleCylinderMainOverSoftUpLimit = m_SignalStateWrapper->m_EleCylinderMainOverSoftUpLimit->GetValue(); //电缸主轴超软上限 signalState.m_EleCylinderMainOverSoftDownLimit = m_SignalStateWrapper->m_EleCylinderMainOverSoftDownLimit->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_PrintStorageCar2BlockAlarm = m_SignalStateWrapper->m_PrintStorageCar2BlockAlarm->GetValue(); //打印存粉小车2堵塞报警 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_EleCylinderMainServoAlarmSignal = m_SignalStateWrapper->m_EleCylinderMainServoAlarmSignal->GetValue(); //电缸主轴伺服异常 signalState.m_EleCylinderPrintHandupAlarmSignal = m_SignalStateWrapper->m_EleCylinderPrintHandupAlarmSignal->GetValue(); //电缸打印位顶升异常 signalState.m_CleanBoxTopDoorRiseAlarmSignal = m_SignalStateWrapper->m_CleanBoxTopDoorRiseAlarmSignal->GetValue(); //清粉箱顶门升高异常 signalState.m_CleanBoxTopDoorFallAlarmSignal = m_SignalStateWrapper->m_CleanBoxTopDoorFallAlarmSignal->GetValue(); //清粉箱顶门降低异常 signalState.m_CoverReachAcceptPowderAlarmSignal = m_SignalStateWrapper->m_CoverReachAcceptPowderAlarmSignal->GetValue(); //铺粉轴到接粉位异常 signalState.m_CoverReachDropPowderAlarmSignal = m_SignalStateWrapper->m_CoverReachDropPowderAlarmSignal->GetValue(); //铺粉轴到下粉位异常 signalState.m_EleCylinderSlaveServoAlarmSignal = m_SignalStateWrapper->m_EleCylinderSlaveServoAlarmSignal->GetValue(); //电缸从轴伺服异常 signalState.m_LinearEncoderCheckAlarmSignal = m_SignalStateWrapper->m_LinearEncoderCheckAlarmSignal->GetValue(); //光栅尺检测异常 signalState.m_PrintMainSoftStopTrigger = m_SignalStateWrapper->m_PrintMainSoftStopTrigger->GetValue(); //打印主轴软急停触发 signalState.m_EleCylinderSoftStopTrigger = m_SignalStateWrapper->m_EleCylinderSoftStopTrigger->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_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_PrintVacuumTriger = m_SignalStateWrapper->m_PrintVacuumTriger->GetValue(); //打印室启动吸尘器_W signalState.m_DisableRasterJudge = m_SignalStateWrapper->m_DisableRasterJudge->GetValue(); //屏蔽光栅尺判断_W 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_SheildPrintPosSensor = m_SignalStateWrapper->m_SheildPrintPosSensor->GetValue(); signalState.m_UseSupplySearchEdge = m_SignalStateWrapper->m_UseSupplySearchEdge->GetValue(); signalState.m_SheildCylinderFixSensor = m_SignalStateWrapper->m_SheildCylinderFixSensor->GetValue(); signalState.m_UseNanoUnit = m_SignalStateWrapper->m_UseNanoUnit->GetValue(); signalState.m_SheildLinearEncoder = m_SignalStateWrapper->m_SheildLinearEncoder->GetValue(); signalState.m_SheildHighPressure = m_SignalStateWrapper->m_SheildHighPressure->GetValue(); //屏蔽高压气 signalState.m_UnuseCoverReachSensor = m_SignalStateWrapper->m_UnuseCoverReachSensor->GetValue(); //不使用铺粉轴到位感应器 signalState.m_UseArmCaptureHome = m_SignalStateWrapper->m_UseArmCaptureHome->GetValue(); signalState.m_LinearEncoderOppDirection = m_SignalStateWrapper->m_LinearEncoderOppDirection->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_CleanTorqueUpInsideLimit = m_SignalStateWrapper->m_CleanTorqueUpInsideLimit->GetValue(); //扭力值在上升扭力范围内 signalState.m_CleanAxisPosUpInSoftLimit = m_SignalStateWrapper->m_CleanAxisPosUpInSoftLimit->GetValue(); //轴位置没超过软上限 signalState.m_CleanTorqueDownInsideLimit = m_SignalStateWrapper->m_CleanTorqueDownInsideLimit->GetValue(); //扭力值在下降扭力范围内 signalState.m_CleanAxisPosDownInsideSoftLimit = m_SignalStateWrapper->m_CleanAxisPosDownInsideSoftLimit->GetValue(); //轴位置没超过软下限 signalState.m_CleanUpInsideLimit = m_SignalStateWrapper->m_CleanUpInsideLimit->GetValue(); //上限位没触发 signalState.m_CleanDownInsideLimit = m_SignalStateWrapper->m_CleanDownInsideLimit->GetValue(); //下限位没触发 signalState.m_EleMainServoNoAlarm = m_SignalStateWrapper->m_EleMainServoNoAlarm->GetValue(); //电缸主轴伺服无异常 signalState.m_EleSlaveServoNoAlarm = m_SignalStateWrapper->m_EleSlaveServoNoAlarm->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_CylinderFixInReleasePos = m_SignalStateWrapper->m_CylinderFixInReleasePos->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_EleServoInBottomPos = m_SignalStateWrapper->m_EleServoInBottomPos->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_PrintStoreCar1ExhaustEnable = m_SignalStateWrapper->m_PrintStoreCar1ExhaustEnable->GetValue(); //触发打印存粉小车1排粉 signalState.m_PrintStoreCar2ExhaustEnable = m_SignalStateWrapper->m_PrintStoreCar2ExhaustEnable->GetValue(); //触发打印存粉小车2排粉 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_IsInPrintJackupPos = m_SignalStateWrapper->m_IsInPrintJackupPos->GetValue(); //打印顶升位 signalState.m_IsInCleanJackupPos = m_SignalStateWrapper->m_IsInCleanJackupPos->GetValue(); //清粉顶升位 signalState.m_IsInEleCylinderBottomFixPos = m_SignalStateWrapper->m_IsInEleCylinderBottomFixPos->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 HBD1200OLD::LoadInRun() { SetLoadInProcStep(In_Start); if ((m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInPrintLoaded) && m_IOCfgWrapper->m_Print3RCylinderContact->IsActive()) { SetLoadInResult(In_Success, _(u8"缸体已载入完成").c_str()); 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"载入中断").c_str()); return; } int count = 0; while (m_LoadCtrlFlag && (count < 18)) { Sleep(500); if (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { break; } count++; } Sleep(500); if (!m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { stringstream ss; ss << _(u8"缸体与清粉箱分离异常:\n").c_str(); SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << _(u8"高压气压力不足异常\n").c_str(); if (signalState.m_EleCylinderMainServoAlarmSignal) ss << _(u8"电缸主轴伺服异常\n").c_str(); if (signalState.m_EleCylinderSlaveServoAlarmSignal) ss << _(u8"电缸从轴伺服异常\n").c_str(); if (signalState.m_EleCylinderMainTorqueAlarm) ss << _(u8"电缸主轴扭力异常\n").c_str(); if (signalState.m_EleCylinderSlaveTorqueAlarm) ss << _(u8"电缸从轴扭力异常\n").c_str(); if (signalState.m_EleCylinderMainOverSoftUpLimit) ss << _(u8"电缸超上软限\n").c_str(); if (signalState.m_EleCylinderMainOverSoftDownLimit) ss << _(u8"电缸超下软限\n").c_str(); if (signalState.m_PrintMainOverSoftUpLimit) ss << _(u8"打印主轴超软上限\n").c_str(); if (signalState.m_PrintMainOverSoftDownLimit) ss << _(u8"打印主轴超软下限\n").c_str(); if (signalState.m_MoldMainUpLimitActive) ss << _(u8"打印主轴上限位触发警示\n").c_str(); if (signalState.m_MoldMainDownLimitActive) ss << _(u8"打印主轴下限位触发警示\n").c_str(); if (signalState.m_MoldTorqueAlarm) ss << _(u8"打印主轴扭力异常\n").c_str(); if (signalState.m_SystemStopAlarm) ss << _(u8"系统急停异常\n").c_str(); if (signalState.m_PrintMainSoftStopTrigger) ss << _(u8"打印主轴软急停触发\n").c_str(); if (signalState.m_EleCylinderSoftStopTrigger) ss << _(u8"电缸主从轴软急停触发\n").c_str(); if (signalState.m_LoadAxisSoftStopTrigger) ss << _(u8"移载轴软急停触发\n").c_str(); if (signalState.m_CoverSoftStopTrigger) ss << _(u8"铺粉轴软急停触发\n").c_str(); 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"载入中断").c_str()); 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"载入中断").c_str()); return; } Sleep(500); if (!m_SignalStateWrapper->m_CylinderReachPrintFinished->GetValue()) { stringstream ss; ss << _(u8"缸体移动到打印位异常:\n").c_str(); SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << _(u8"高压气压力不足异常\n").c_str(); if (signalState.m_CylinderExtendOffAlarm) ss << _(u8"缸体固定气缸缩回不到位异常\n").c_str(); if (signalState.m_SystemStopAlarm) ss << _(u8"系统急停异常\n").c_str(); if (signalState.m_LoadAxisServoAlarmSignal) ss << _(u8"移载轴伺服驱动器异常\n").c_str(); if (signalState.m_LoadAxisOverSoftLeftLimit) ss << _(u8"移载轴超左软限\n").c_str(); if (signalState.m_LoadAxisOverSoftRightLimit) ss << _(u8"移载轴超右软限\n").c_str(); if (signalState.m_LoadAxisLeftLimit) ss << _(u8"移载轴左限位触发警示\n").c_str(); if (signalState.m_LoadAxisRightLimit) ss << _(u8"移载轴右限位触发警示\n").c_str(); if (signalState.m_LoadTorqueAlarm) ss << _(u8"移载轴扭力异常\n").c_str(); if (signalState.m_CylinderHandDoorOpenAlarm) ss << _(u8"缸体吊装门打开异常\n").c_str(); if (signalState.m_EleCylinderMainServoAlarmSignal) ss << _(u8"电缸主轴伺服异常\n").c_str(); if (signalState.m_EleCylinderSlaveServoAlarmSignal) ss << _(u8"电缸从轴伺服异常\n").c_str(); if (signalState.m_EleCylinderMainTorqueAlarm) ss << _(u8"电缸主轴扭力异常\n").c_str(); if (signalState.m_EleCylinderSlaveTorqueAlarm) ss << _(u8"电缸从轴扭力异常\n").c_str(); if (signalState.m_EleCylinderMainOverSoftUpLimit) ss << _(u8"电缸超上软限\n").c_str(); if (signalState.m_EleCylinderMainOverSoftDownLimit) ss << _(u8"电缸超下软限\n").c_str(); if (signalState.m_HandPlatformCloseAlarm) ss << _(u8"吊装盖板关闭异常\n").c_str(); if (signalState.m_PrintMainSoftStopTrigger) ss << _(u8"打印主轴软急停触发\n").c_str(); if (signalState.m_EleCylinderSoftStopTrigger) ss << _(u8"电缸主从轴软急停触发\n").c_str(); if (signalState.m_LoadAxisSoftStopTrigger) ss << _(u8"移载轴软急停触发\n").c_str(); if (signalState.m_CoverSoftStopTrigger) ss << _(u8"铺粉轴软急停触发\n").c_str(); 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"载入中断").c_str()); 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"载入中断").c_str()); return; } Sleep(500); if (!m_SignalStateWrapper->m_CylinderPrintLoadFinished->GetValue()) { stringstream ss; ss << _(u8"缸体打印位装载异常:\n").c_str(); SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << _(u8"高压气压力不足异常\n").c_str(); if (signalState.m_CylinderExtendOnAlarm) ss << _(u8"缸体固定气缸伸出不到位异常\n").c_str();; if (signalState.m_SystemStopAlarm) ss << _(u8"系统急停异常\n").c_str(); if (signalState.m_EleCylinderPrintHandupAlarmSignal) ss << _(u8"电缸打印位顶升异常\n").c_str(); if (signalState.m_EleCylinderMainServoAlarmSignal) ss << _(u8"电缸主轴伺服异常\n").c_str(); if (signalState.m_EleCylinderSlaveServoAlarmSignal) ss << _(u8"电缸从轴伺服异常\n").c_str(); if (signalState.m_EleCylinderMainTorqueAlarm) ss << _(u8"电缸主轴扭力异常\n").c_str(); if (signalState.m_EleCylinderSlaveTorqueAlarm) ss << _(u8"电缸从轴扭力异常\n").c_str(); if (signalState.m_EleCylinderMainOverSoftUpLimit) ss << _(u8"电缸超上软限\n").c_str(); if (signalState.m_EleCylinderMainOverSoftDownLimit) ss << _(u8"电缸超下软限\n").c_str(); if (signalState.m_PrintMainSoftStopTrigger) ss << _(u8"打印主轴软急停触发\n").c_str(); if (signalState.m_EleCylinderSoftStopTrigger) ss << _(u8"电缸主从轴软急停触发\n").c_str(); if (signalState.m_LoadAxisSoftStopTrigger) ss << _(u8"移载轴软急停触发\n").c_str(); if (signalState.m_CoverSoftStopTrigger) ss << _(u8"铺粉轴软急停触发\n").c_str(); SetLoadInResult(In_CylinderPrintLoadError, ss.str()); return; } if (m_SignalStateWrapper->m_CylinderPrintLoadFinished->GetValue()) { m_SignalStateWrapper->m_CylinderPrintLoadFinished->SetValue(false); } Sleep(1000); } SetLoadInResult(In_Success, _(u8"缸体已载入完成").c_str()); } void HBD1200OLD::LoadOutRun() { SetLoadOutProcStep(Out_Start); if (m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInHand) { SetLoadOutResult(Out_Success, _(u8"缸体载出已完成").c_str()); return; } m_WaitSelectOutPosCommit->SetValue(false); if (m_RunCfg->m_ShowUnloadHandPos) { m_NeedWaitSelectOutPos->SetValue(true); while (!m_WaitSelectOutPosCommit->GetValue() || !m_LoadCtrlFlag) { Sleep(300); } } else { m_SelectOutPos->SetValue(0); } m_NeedWaitSelectOutPos->SetValue(false); if (!m_LoadCtrlFlag) { SetLoadOutResult(Out_Intercept, _(u8"载出中断").c_str()); 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"载出中断").c_str()); return; } Sleep(500); if (!m_SignalStateWrapper->m_CylinderPrintUnloadFinished->GetValue()) { stringstream ss; ss << _(u8"缸体打印位卸载异常:\n").c_str(); SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << _(u8"高压气压力不足异常\n").c_str(); if (signalState.m_SystemStopAlarm) ss << _(u8"系统急停异常\n").c_str(); if (signalState.m_CylinderExtendOffAlarm) ss << _(u8"缸体固定气缸缩回不到位异常\n").c_str(); if (signalState.m_EleCylinderMainServoAlarmSignal) ss << _(u8"电缸主轴伺服异常\n").c_str(); if (signalState.m_EleCylinderSlaveServoAlarmSignal) ss << _(u8"电缸从轴伺服异常\n").c_str(); if (signalState.m_EleCylinderMainTorqueAlarm) ss << _(u8"电缸主轴扭力异常\n").c_str(); if (signalState.m_EleCylinderSlaveTorqueAlarm) ss << _(u8"电缸从轴扭力异常\n").c_str(); if (signalState.m_EleCylinderMainOverSoftUpLimit) ss << _(u8"电缸超上软限\n").c_str(); if (signalState.m_EleCylinderMainOverSoftDownLimit) ss << _(u8"电缸超下软限\n").c_str(); if (signalState.m_PrintMainOverSoftUpLimit) ss << _(u8"打印主轴超软上限\n").c_str(); if (signalState.m_PrintMainOverSoftDownLimit) ss << _(u8"打印主轴超软下限\n").c_str(); if (signalState.m_MoldMainUpLimitActive) ss << _(u8"打印主轴上限位触发警示\n").c_str(); if (signalState.m_MoldMainDownLimitActive) ss << _(u8"打印主轴下限位触发警示\n").c_str(); if (signalState.m_MoldTorqueAlarm) ss << _(u8"打印主轴扭力异常\n").c_str(); if (signalState.m_PrintMainSoftStopTrigger) ss << _(u8"打印主轴软急停触发\n").c_str(); if (signalState.m_EleCylinderSoftStopTrigger) ss << _(u8"电缸主从轴软急停触发\n").c_str(); if (signalState.m_LoadAxisSoftStopTrigger) ss << _(u8"移载轴软急停触发\n").c_str(); if (signalState.m_CoverSoftStopTrigger) ss << _(u8"铺粉轴软急停触发\n").c_str(); 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"载出中断").c_str()); return; } if (m_SelectOutPos == 0) { if (m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInCleanConnectedBox) { SetLoadOutResult(Out_Success, _(u8"缸体已载出到清粉位").c_str()); 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"载出中断").c_str()); return; } Sleep(500); if (!m_SignalStateWrapper->m_CylinderReachCleanFinished->GetValue()) { stringstream ss; ss << _(u8"缸体移动到清粉位异常:\n").c_str(); SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << _(u8"高压气压力不足异常\n").c_str(); if (signalState.m_SystemStopAlarm) ss << _(u8"系统急停异常\n").c_str(); if (signalState.m_CylinderExtendOffAlarm) ss << _(u8"缸体固定气缸缩回不到位异常\n").c_str(); if (signalState.m_LoadAxisServoAlarmSignal) ss << _(u8"移载轴伺服驱动器异常\n").c_str(); if (signalState.m_LoadAxisOverSoftLeftLimit) ss << _(u8"移载轴超左软限\n").c_str(); if (signalState.m_LoadAxisOverSoftRightLimit) ss << _(u8"移载轴超右软限\n").c_str(); if (signalState.m_LoadAxisLeftLimit) ss << _(u8"移载轴左限位触发警示\n").c_str(); if (signalState.m_LoadAxisRightLimit) ss << _(u8"移载轴右限位触发警示\n").c_str(); if (signalState.m_LoadTorqueAlarm) ss << _(u8"移载轴扭力异常\n").c_str(); if (signalState.m_CylinderHandDoorOpenAlarm) ss << _(u8"缸体吊装门打开异常\n").c_str(); if (signalState.m_EleCylinderMainServoAlarmSignal) ss << _(u8"电缸主轴伺服异常\n").c_str(); if (signalState.m_EleCylinderSlaveServoAlarmSignal) ss << _(u8"电缸从轴伺服异常\n").c_str(); if (signalState.m_EleCylinderMainTorqueAlarm) ss << _(u8"电缸主轴扭力异常\n").c_str(); if (signalState.m_EleCylinderSlaveTorqueAlarm) ss << _(u8"电缸从轴扭力异常\n").c_str(); if (signalState.m_EleCylinderMainOverSoftUpLimit) ss << _(u8"电缸超上软限\n").c_str(); if (signalState.m_EleCylinderMainOverSoftDownLimit) ss << _(u8"电缸超下软限\n").c_str(); if (signalState.m_HandPlatformCloseAlarm) ss << _(u8"吊装盖板关闭异常\n").c_str(); if (signalState.m_PrintMainSoftStopTrigger) ss << _(u8"打印主轴软急停触发\n").c_str(); if (signalState.m_EleCylinderSoftStopTrigger) ss << _(u8"电缸主从轴软急停触发\n").c_str(); if (signalState.m_LoadAxisSoftStopTrigger) ss << _(u8"移载轴软急停触发\n").c_str(); if (signalState.m_CoverSoftStopTrigger) ss << _(u8"铺粉轴软急停触发\n").c_str(); 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"载出中断").c_str()); return; } if (m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInCleanUnConnectBox) { m_WaitConnectBoxCommit->SetValue(true); while (m_LoadCtrlFlag && m_WaitConnectBoxCommit) { Sleep(300); } if (!m_WaitConnectBoxCommit) { 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"载出中断").c_str()); return; } int count = 0; while (m_LoadCtrlFlag && (count < 30)) { Sleep(500); if (m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->GetValue()) { break; } count++; } Sleep(500); if (!m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->GetValue()) { stringstream ss; ss << _(u8"缸体与清粉箱连接异常:\n").c_str(); SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << _(u8"高压气压力不足异常\n").c_str(); if (signalState.m_SystemStopAlarm) ss << _(u8"系统急停异常\n").c_str(); if (signalState.m_EleCylinderMainServoAlarmSignal) ss << _(u8"电缸主轴伺服异常\n").c_str(); if (signalState.m_EleCylinderSlaveServoAlarmSignal) ss << _(u8"电缸从轴伺服异常\n").c_str(); if (signalState.m_EleCylinderMainTorqueAlarm) ss << _(u8"电缸主轴扭力异常\n").c_str(); if (signalState.m_EleCylinderSlaveTorqueAlarm) ss << _(u8"电缸从轴扭力异常\n").c_str(); if (signalState.m_EleCylinderMainOverSoftUpLimit) ss << _(u8"电缸超上软限\n").c_str(); if (signalState.m_EleCylinderMainOverSoftDownLimit) ss << _(u8"电缸超下软限\n").c_str(); if (signalState.m_PrintMainSoftStopTrigger) ss << _(u8"打印主轴软急停触发\n").c_str(); if (signalState.m_EleCylinderSoftStopTrigger) ss << _(u8"电缸主从轴软急停触发\n").c_str(); if (signalState.m_LoadAxisSoftStopTrigger) ss << _(u8"移载轴软急停触发\n").c_str(); if (signalState.m_CoverSoftStopTrigger) ss << _(u8"铺粉轴软急停触发\n").c_str(); SetLoadOutResult(Out_CylinderConnectCleanBoxError, ss.str()); return; } if (m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->GetValue()) { m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->SetValue(false); } Sleep(1000); } } SetLoadOutResult(Out_Success, _(u8"缸体载出已完成").c_str()); } 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"载出中断").c_str()); return; } int count = 0; while (m_LoadCtrlFlag && (count < 30)) { Sleep(500); if (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { break; } count++; } Sleep(500); if (!m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { stringstream ss; ss << _(u8"缸体与清粉箱分离异常:\n").c_str(); SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << _(u8"高压气压力不足异常\n").c_str(); if (signalState.m_SystemStopAlarm) ss << _(u8"系统急停异常\n").c_str(); if (signalState.m_EleCylinderMainServoAlarmSignal) ss << _(u8"电缸主轴伺服异常\n").c_str(); if (signalState.m_EleCylinderSlaveServoAlarmSignal) ss << _(u8"电缸从轴伺服异常\n").c_str(); if (signalState.m_EleCylinderMainTorqueAlarm) ss << _(u8"电缸主轴扭力异常\n").c_str(); if (signalState.m_EleCylinderSlaveTorqueAlarm) ss << _(u8"电缸从轴扭力异常\n").c_str(); if (signalState.m_EleCylinderMainOverSoftUpLimit) ss << _(u8"电缸超上软限\n").c_str(); if (signalState.m_EleCylinderMainOverSoftDownLimit) ss << _(u8"电缸超下软限\n").c_str(); if (signalState.m_PrintMainOverSoftUpLimit) ss << _(u8"打印主轴超软上限\n").c_str(); if (signalState.m_PrintMainOverSoftDownLimit) ss << _(u8"打印主轴超软下限\n").c_str(); if (signalState.m_MoldMainUpLimitActive) ss << _(u8"打印主轴上限位触发警示\n").c_str(); if (signalState.m_MoldMainDownLimitActive) ss << _(u8"打印主轴下限位触发警示\n").c_str(); if (signalState.m_MoldTorqueAlarm) ss << _(u8"打印主轴扭力异常\n").c_str(); if (signalState.m_PrintMainSoftStopTrigger) ss << _(u8"打印主轴软急停触发\n").c_str(); if (signalState.m_EleCylinderSoftStopTrigger) ss << _(u8"电缸主从轴软急停触发\n").c_str(); if (signalState.m_LoadAxisSoftStopTrigger) ss << _(u8"移载轴软急停触发\n").c_str(); if (signalState.m_CoverSoftStopTrigger) ss << _(u8"铺粉轴软急停触发\n").c_str(); 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"载出中断").c_str()); 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"载出中断").c_str()); return; } Sleep(500); if (!m_SignalStateWrapper->m_CylinderMovedHandPos->GetValue()) { stringstream ss; ss << _(u8"缸体移动到吊装位异常:\n").c_str(); SignalState signalState; SignalService::GetInstance().GetSignalState(signalState); if (signalState.m_HighPressureLackAlarm) ss << _(u8"高压气压力不足异常\n").c_str(); if (signalState.m_SystemStopAlarm) ss << _(u8"系统急停异常\n").c_str(); if (signalState.m_CylinderExtendOffAlarm) ss << _(u8"缸体固定气缸缩回不到位异常\n").c_str(); if (signalState.m_LoadAxisServoAlarmSignal) ss << _(u8"移载轴伺服驱动器异常\n").c_str(); if (signalState.m_LoadAxisOverSoftLeftLimit) ss << _(u8"移载轴超左软限\n").c_str(); if (signalState.m_LoadAxisOverSoftRightLimit) ss << _(u8"移载轴超右软限\n").c_str(); if (signalState.m_LoadAxisLeftLimit) ss << _(u8"移载轴左限位触发警示\n").c_str(); if (signalState.m_LoadAxisRightLimit) ss << _(u8"移载轴右限位触发警示\n").c_str(); if (signalState.m_LoadTorqueAlarm) ss << _(u8"移载轴扭力异常\n").c_str(); if (signalState.m_CylinderHandDoorOpenAlarm) ss << _(u8"缸体吊装门打开异常\n").c_str(); if (signalState.m_CylinderHandPlatformOpenAlarm) ss << _(u8"缸体吊装盖板打开异常\n").c_str(); if (signalState.m_EleCylinderMainServoAlarmSignal) ss << _(u8"电缸主轴伺服异常\n").c_str(); if (signalState.m_EleCylinderSlaveServoAlarmSignal) ss << _(u8"电缸从轴伺服异常\n").c_str(); if (signalState.m_EleCylinderMainTorqueAlarm) ss << _(u8"电缸主轴扭力异常\n").c_str(); if (signalState.m_EleCylinderSlaveTorqueAlarm) ss << _(u8"电缸从轴扭力异常\n").c_str(); if (signalState.m_EleCylinderMainOverSoftUpLimit) ss << _(u8"电缸超上软限\n").c_str(); if (signalState.m_EleCylinderMainOverSoftDownLimit) ss << _(u8"电缸超下软限\n").c_str(); if (signalState.m_PrintMainSoftStopTrigger) ss << _(u8"打印主轴软急停触发\n").c_str(); if (signalState.m_EleCylinderSoftStopTrigger) ss << _(u8"电缸主从轴软急停触发\n").c_str(); if (signalState.m_LoadAxisSoftStopTrigger) ss << _(u8"移载轴软急停触发\n").c_str(); if (signalState.m_CoverSoftStopTrigger) ss << _(u8"铺粉轴软急停触发\n").c_str(); SetLoadOutResult(Out_CylinderReachHandError, ss.str()); return; } if (m_SignalStateWrapper->m_CylinderMovedHandPos->GetValue()) { m_SignalStateWrapper->m_CylinderMovedHandPos->SetValue(false); } Sleep(1000); } SetLoadOutResult(Out_Success, _(u8"缸体载出已完成").c_str()); } } //bool HBD1200OLD::CheckPrintMoldReady() //{ // if (m_SignalStateWrapper->m_CylinderState->GetValue() != CylinderInPrintLoaded) // { // return false; // } // else return true; //} //bool HBD1200OLD::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_CylinderFixInReleasePos)return false; // if (!m_SignalState.m_LoadLeftNotInsideLimit)return false; // if (!m_SignalState.m_LoadServoNoAlarm)return false; // if (!m_SignalState.m_EleServoInBottomPos)return false; // if (m_Axis->m_Load->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return false; // return true; //} //string HBD1200OLD::GetLoadAxisCanotMoveLeftInfo() { // if (!m_SignalState.m_PrintJackupInSafePos)return _(u8"打印顶升轴不在安全位").c_str(); // if (!m_SignalState.m_LoadTorqueInsideLimit)return _(u8"移载扭力越限").c_str(); // if (!m_SignalState.m_LoadPosInsideLeftSoftLimit)return _(u8"移载轴越软左限").c_str(); // if (!m_SignalState.m_CylinderFixInReleasePos)return _(u8"缸体固定气缸不在松开位").c_str(); // if (!m_SignalState.m_LoadLeftNotInsideLimit)return _(u8"移载轴已到左限位").c_str(); // if (!m_SignalState.m_LoadServoNoAlarm)return _(u8"移载轴伺服异常").c_str(); // if (!m_SignalState.m_EleServoInBottomPos)return _(u8"电缸不在底座位").c_str(); // if (m_Axis->m_Load->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return _(u8"舱门打开时运动受限").c_str(); // return _(u8"未知原因").c_str(); //} //bool HBD1200OLD::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_CylinderFixInReleasePos)return false; // if (!m_SignalState.m_LoadRightNotInsideLimit)return false; // if (!m_SignalState.m_LoadServoNoAlarm)return false; // if (!m_SignalState.m_EleServoInBottomPos)return false; // if (m_Axis->m_Load->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return false; // return true; //} //string HBD1200OLD::GetLoadAxisCanotMoveRightInfo() { // if (!m_SignalState.m_PrintJackupInSafePos)return _(u8"打印顶升轴不在安全位").c_str(); // if (!m_SignalState.m_LoadTorqueInsideLimit)return _(u8"移载扭力越限").c_str(); // if (!m_SignalState.m_LoadPosInsideRightSoftLimit)return _(u8"移载轴越软右限").c_str(); // if (!m_SignalState.m_CylinderFixInReleasePos)return _(u8"缸体固定气缸不在松开位").c_str(); // if (!m_SignalState.m_LoadRightNotInsideLimit)return _(u8"移载轴已到右限位").c_str(); // if (!m_SignalState.m_LoadServoNoAlarm)return _(u8"移载轴伺服异常").c_str(); // if (!m_SignalState.m_EleServoInBottomPos)return _(u8"电缸不在底座位").c_str(); // if (m_Axis->m_Load->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return _(u8"舱门打开时运动受限").c_str(); // return _(u8"未知原因").c_str(); //} //bool HBD1200OLD::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_Axis->m_Arm->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return false; // return true; //} //string HBD1200OLD::GetArmCanotMoveBackInfo() //{ // if (!m_SignalState.m_PrintUpDownPosBelowPlatform)return _(u8"打印升降轴高于基板缸平面").c_str(); // if (!m_SignalState.m_ArmTorqueInsideLimit)return _(u8"铺粉轴扭力越限").c_str(); // if (!m_SignalState.m_ArmPosInsideSoftBackLimit)return _(u8"铺粉轴位置超过软后限").c_str(); // if (!m_SignalState.m_ArmPosInsideBackLimit)return _(u8"铺粉轴已到后限位").c_str(); // if (!m_SignalState.m_ArmServoNoAlarm)return _(u8"铺粉轴伺服异常").c_str(); // if (m_Axis->m_Arm->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return _(u8"舱门打开时运动受限").c_str(); // return _(u8"未知原因").c_str(); //} //bool HBD1200OLD::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_Axis->m_Arm->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return false; // return true; //} //string HBD1200OLD::GetArmCanotMoveFrontInfo() //{ // if (!m_SignalState.m_PrintUpDownPosBelowPlatform)return _(u8"打印升降轴高于基板缸平面").c_str(); // if (!m_SignalState.m_ArmTorqueInsideLimit)return _(u8"铺粉轴扭力越限").c_str(); // if (!m_SignalState.m_ArmPosInsideSoftFrontLimit)return _(u8"铺粉轴位置超过软前限").c_str(); // if (!m_SignalState.m_ArmPosInsideFrontLimit)return _(u8"铺粉轴已到前限位").c_str(); // if (!m_SignalState.m_ArmServoNoAlarm)return _(u8"铺粉轴伺服异常").c_str(); // if (m_Axis->m_Arm->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return _(u8"舱门打开时运动受限").c_str(); // return _(u8"未知原因").c_str(); //} //bool HBD1200OLD::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_Axis->m_Mold->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return false; // return true; //} //string HBD1200OLD::GetMoldCanotUpInfo() //{ // if (!m_SignalState.m_PrintTorqueUpInsideLimit)return _(u8"升降轴上升扭力越限").c_str(); // if (!m_SignalState.m_ArmNotUponBasePlatform)return _(u8"铺粉臂在基板范围内").c_str(); // if (!m_SignalState.m_PrintMoldPosInsideUpSoftLimit)return _(u8"升降轴越软上限").c_str(); // if (!m_SignalState.m_PrintInsideUpLimit)return _(u8"升降轴越上限").c_str(); // if (!m_SignalState.m_PrintMainServoNoAlarm)return _(u8"打印主轴伺服异常").c_str(); // if (!m_SignalState.m_PrintMoldInPrintPos && !m_SignalState.m_PrintMoldInCleanPos && !m_SignalState.m_PrintMoldInHandPos) // { // return _(u8"缸体不在打印位、清粉位、吊装位").c_str(); // } // if (m_Axis->m_Mold->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return _(u8"舱门打开时运动受限").c_str(); // return _(u8"未知原因").c_str(); //} //bool HBD1200OLD::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_Axis->m_Mold->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return false; // return true; //} //string HBD1200OLD::GetMoldCanotDownInfo() //{ // if (!m_SignalState.m_PrintTorqueDownInsideLimit)return _(u8"升降轴下降扭力越限").c_str(); // if (!m_SignalState.m_ArmNotUponBasePlatform)return _(u8"铺粉臂在基板范围内").c_str(); // if (!m_SignalState.m_PrintAxisPosInsideDownSoftLimit)return _(u8"升降轴越软下限").c_str(); // if (!m_SignalState.m_PrintInsideDownLimit)return _(u8"升降轴越下限").c_str(); // if (!m_SignalState.m_PrintMainServoNoAlarm)return _(u8"打印主轴伺服异常").c_str(); // if (!m_SignalState.m_PrintMoldInPrintPos && !m_SignalState.m_PrintMoldInCleanPos && !m_SignalState.m_PrintMoldInHandPos) // { // return _(u8"缸体不在打印位、清粉位、吊装位").c_str(); // } // if (m_Axis->m_Mold->GetState()->m_AxisCfg->m_SafeLimit && !g_SystemInfo->m_EnvState.m_IsPrintCabinDoorClose)return _(u8"舱门打开时运动受限").c_str(); // return _(u8"未知原因").c_str(); //}