diff --git a/PrintC/DataManage/DataHandle.cpp b/PrintC/DataManage/DataHandle.cpp index ca68dd7..5bf26fb 100644 --- a/PrintC/DataManage/DataHandle.cpp +++ b/PrintC/DataManage/DataHandle.cpp @@ -1,4 +1,5 @@ #include "DataHandle.h" +#include "../config/ConfigManager.h" void DataHandle::DataCallBackProc(void* pthis, const ReadData& msg) { DataHandle* p = (DataHandle*)pthis; @@ -47,7 +48,7 @@ void DataHandle::DataCallBackHandle(const ReadData& msg) { param.sysParamI->SetValue(atoi(val.c_str())); break; case iFLOAT: - param.sysParamB->SetValue(atof(val.c_str())); + param.sysParamF->SetValue(atof(val.c_str())); break; default: break; } @@ -57,6 +58,9 @@ void DataHandle::DataCallBackHandle(const ReadData& msg) { case VERSIONRSP: m_version = msg.strValue; break; + case IOSIGNALRSP: //io信号返回 + ConfigManager::Instance()->GetIoCfgWrapper()->Update(msg); + break; default:break; diff --git a/PrintC/DataManage/DataHandle.h b/PrintC/DataManage/DataHandle.h index f44639f..9fe1891 100644 --- a/PrintC/DataManage/DataHandle.h +++ b/PrintC/DataManage/DataHandle.h @@ -41,8 +41,7 @@ public: } } - string GetVersion()const { - return m_version;} + string GetVersion()const {return m_version;} private: DataHandle(); virtual ~DataHandle(); diff --git a/PrintC/DataManage/RWData.h b/PrintC/DataManage/RWData.h new file mode 100644 index 0000000..9edc471 --- /dev/null +++ b/PrintC/DataManage/RWData.h @@ -0,0 +1,92 @@ +#pragma once +//#include +#include + +enum READTYPE { + ProcReadPLC0 = 0, //snap7 数据 + ProcReadPLC1, + ProcReadPLC2, + ProcReadPLC3, + ProcReadPLC4, + ProcReadPLC5, + ProcReadPLC6, + ProcReadPLCData0 = 100, + ALARM, //报警 + RESPOND, //回应 + TIMEDATA, //定时数据 + + INITERRORINFOSRSP, //返回初始化错误信息 + VERSIONRSP, //返回版本信息 + IOSIGNALRSP, //io信号返回数据 +}; + +enum DATATYPE { + iBOOL = 0, + iSHORT, + iUSHORT, + iINT, + iUINT, + iFLOAT +}; + +struct ReadData { + READTYPE dataType; + bool result; + std::string nameKey; //参数key 空格隔开 + std::string strValue; //value 空格隔开 + DATATYPE valueType; //数据类型 + + +}; + + + +enum WRITETYPE { + GET = 0, + SET, + LOAD, //载入 + LOADOUT, //载出 + SUPPLYAXLEAFTER, //供粉轴后移 + SUPPLYAXLEFRONT, //供粉轴前移 + SUPPLYAXLEAFTERCONTSTART, //供粉轴后移连续开始 + SUPPLYAXLEAFTERCONTSTOP, //供粉轴后移连续停止 + SUPPLYAXLEFRONTCONTSTART, //供粉轴前移连续开始 + SUPPLYAXLEFRONTCONTSTOP, //供粉轴前移连续停止 + PAVEAXLEFRONT, // 铺粉臂前移 + PAVEAXLEFRONTCONTSTART, //铺粉臂前移连续 + PAVEAXLEFRONTCONTSTOP, //铺粉臂前移连续 + PAVEAXLEAFTER, //铺粉臂后移 + PAVEAXLEAFTERCONTSTART, //铺粉臂后移连续开始 + PAVEAXLEAFTERCONTSTOP, //铺粉臂后移连续停止 + PAVEAXLECLEAR, //铺粉臂清零 + PRINTAXLEUP, //成型缸上升 + PRINTAXLEUPCONTSTART, //成型缸连续上升开始 + PRINTAXLEUPCONTSTOP, //成型缸连续上升停止 + PRINTAXLEDOWN, //成型缸下降 + PRINTAXLEDOWNCONTSTART, //成型缸连续下降开始 + PRINTAXLEDOWNCONTSTOP, //成型缸连续下降停止 + PRINTAXLECLEAR, //成型缸清零 + TRANSFERAXIELEFT, //移载轴左移 + TRANSFERAXIELEFTCONTSTART, //移载轴连续左移开始 + TRANSFERAXIELEFTCONTSTOP, //移载轴连续左移停止 + TRANSFERAXIERIGHT, //移载轴右移 + TRANSFERAXIERIGHTCONTSTART, //移载轴连续右移开始 + TRANSFERAXIERIGHTCONTSTOP, //移载轴连续右移停止 + TRANSFERAXIECLEAR, //移载轴清零 + SCANERSTART, //开始扫描 + SCANERSTOP, //停止扫描 + STARTHEATINGSCANNERTEST, //开始振镜预热测试 + STOPHEATINGSCANNERTEST, //停止振镜预热 + INITERRORINFOSREQ, //初始化错误信息 + VERSIONREQ, //获取版本信息 + + IOSIGNAL, //io 信号 + +}; + +struct WriteData { + WRITETYPE dataType; + std::string nameKey; //参数key + std::string strValue; //value + DATATYPE valueType; +}; diff --git a/PrintC/DataManage/StreamClient.h b/PrintC/DataManage/StreamClient.h index b97a267..c75a646 100644 --- a/PrintC/DataManage/StreamClient.h +++ b/PrintC/DataManage/StreamClient.h @@ -5,6 +5,7 @@ #include #include #include "../protobuf/stream.grpc.pb.h" +#include "RWData.h" using grpc::Channel; using grpc::ClientContext; @@ -13,93 +14,6 @@ using stream::Stream; using stream::RequestInfo; using stream::ResponseInfo; -enum READTYPE { - ProcReadPLC0 = 0, //snap7 数据 - ProcReadPLC1, - ProcReadPLC2, - ProcReadPLC3, - ProcReadPLC4, - ProcReadPLC5, - ProcReadPLC6, - ProcReadPLCData0 = 100, - ALARM, //报警 - RESPOND, //回应 - TIMEDATA, //定时数据 - - INITERRORINFOSRSP, //返回初始化错误信息 - VERSIONRSP, //返回版本信息 -}; - -enum DATATYPE { - iBOOL = 0, - iSHORT, - iUSHORT, - iINT, - iUINT, - iFLOAT -}; - -struct ReadData { - READTYPE dataType; - bool result; - std::string nameKey; //参数key 空格隔开 - std::string strValue; //value 空格隔开 - DATATYPE valueType; //数据类型 - - -}; - - - -enum WRITETYPE { - GET = 0, - SET, - LOAD, //载入 - LOADOUT, //载出 - SUPPLYAXLEAFTER, //供粉轴后移 - SUPPLYAXLEFRONT, //供粉轴前移 - SUPPLYAXLEAFTERCONTSTART, //供粉轴后移连续开始 - SUPPLYAXLEAFTERCONTSTOP, //供粉轴后移连续停止 - SUPPLYAXLEFRONTCONTSTART, //供粉轴前移连续开始 - SUPPLYAXLEFRONTCONTSTOP, //供粉轴前移连续停止 - PAVEAXLEFRONT, // 铺粉臂前移 - PAVEAXLEFRONTCONTSTART, //铺粉臂前移连续 - PAVEAXLEFRONTCONTSTOP, //铺粉臂前移连续 - PAVEAXLEAFTER, //铺粉臂后移 - PAVEAXLEAFTERCONTSTART, //铺粉臂后移连续开始 - PAVEAXLEAFTERCONTSTOP, //铺粉臂后移连续停止 - PAVEAXLECLEAR, //铺粉臂清零 - PRINTAXLEUP, //成型缸上升 - PRINTAXLEUPCONTSTART, //成型缸连续上升开始 - PRINTAXLEUPCONTSTOP, //成型缸连续上升停止 - PRINTAXLEDOWN, //成型缸下降 - PRINTAXLEDOWNCONTSTART, //成型缸连续下降开始 - PRINTAXLEDOWNCONTSTOP, //成型缸连续下降停止 - PRINTAXLECLEAR, //成型缸清零 - TRANSFERAXIELEFT, //移载轴左移 - TRANSFERAXIELEFTCONTSTART, //移载轴连续左移开始 - TRANSFERAXIELEFTCONTSTOP, //移载轴连续左移停止 - TRANSFERAXIERIGHT, //移载轴右移 - TRANSFERAXIERIGHTCONTSTART, //移载轴连续右移开始 - TRANSFERAXIERIGHTCONTSTOP, //移载轴连续右移停止 - TRANSFERAXIECLEAR, //移载轴清零 - SCANERSTART, //开始扫描 - SCANERSTOP, //停止扫描 - STARTHEATINGSCANNERTEST, //开始振镜预热测试 - STOPHEATINGSCANNERTEST, //停止振镜预热 - INITERRORINFOSREQ, //初始化错误信息 - VERSIONREQ, //获取版本信息 - - IOSIGNAL, //io 信号 - -}; - -struct WriteData { - WRITETYPE dataType; - std::string nameKey; //参数key - std::string strValue; //value - DATATYPE valueType; -}; class StreamClient { typedef void (*DataCallBack)(void* pthis, const ReadData& msg); diff --git a/PrintC/PrintC.vcxproj b/PrintC/PrintC.vcxproj index ef225e9..4e77dd4 100644 --- a/PrintC/PrintC.vcxproj +++ b/PrintC/PrintC.vcxproj @@ -232,6 +232,7 @@ + diff --git a/PrintC/PrintC.vcxproj.filters b/PrintC/PrintC.vcxproj.filters index b594d07..c48ca20 100644 --- a/PrintC/PrintC.vcxproj.filters +++ b/PrintC/PrintC.vcxproj.filters @@ -612,6 +612,9 @@ config\bean + + DataManage + diff --git a/PrintC/config/ConfigManager.h b/PrintC/config/ConfigManager.h index a803e27..82ea356 100644 --- a/PrintC/config/ConfigManager.h +++ b/PrintC/config/ConfigManager.h @@ -22,8 +22,8 @@ public: private: ConfigManager(); virtual ~ConfigManager(); - ConfigManager(const ConfigManager& cfg) {}; - ConfigManager& operator= (const ConfigManager& cfg) {}; + ConfigManager(const ConfigManager& cfg) = delete; + ConfigManager& operator= (const ConfigManager& cfg) = delete; private: Machine* m_Machine; diff --git a/PrintC/config/bean/IOCfg.cpp b/PrintC/config/bean/IOCfg.cpp index c2556c8..7ce5462 100644 --- a/PrintC/config/bean/IOCfg.cpp +++ b/PrintC/config/bean/IOCfg.cpp @@ -17,6 +17,7 @@ #include "../../DataManage/DataHandle.h" #include "../ConfigManager.h" + IOCfg::IOCfg() { diff --git a/PrintC/config/bean/IOCfg.h b/PrintC/config/bean/IOCfg.h index 22c46b1..826056f 100644 --- a/PrintC/config/bean/IOCfg.h +++ b/PrintC/config/bean/IOCfg.h @@ -8,6 +8,8 @@ #include "RunCfg.h" #include #include +#include "../DataManage/RWData.h" +#include using namespace std; @@ -1754,12 +1756,30 @@ public: //} void Update(unsigned char* arr) { - Lock(); + Lock(); m_IoVMap[m_IOCtrlIndex]->Update(arr); m_SafeDoorState = m_IoVMap[m_IOCtrlIndex]->GetSafeDoorState(); Unlock(); } + void Update(const ReadData& rd) { + Lock(); + std::istringstream issKey(rd.nameKey), issVal(rd.strValue); + string keyStr, valStr; + while (issKey >> keyStr && issVal >> valStr) { + size_t pos = valStr.find("_"); + if (m_IOCfgMap.find(keyStr) != m_IOCfgMap.end() && pos != string::npos) { + DATATYPE valType = (DATATYPE)atoi(valStr.substr(pos + 1).c_str()); //值类型 + if (valType != iBOOL) continue; + string val = valStr.substr(0, pos); //值 + m_IOCfgMap[keyStr]->m_IsActive = atoi(val.c_str()); + } + } + Unlock(); + } + + + bool IsSafeDoorClose() { bool rel = false; Lock(); diff --git a/PrintC/main.cpp b/PrintC/main.cpp index fa0c1c9..21ad8c3 100644 --- a/PrintC/main.cpp +++ b/PrintC/main.cpp @@ -9,11 +9,7 @@ #include "SystemInfo.h" #include "Logger.h" #include "Toast.h" -#include #include -#include "PLC/SysParam.h" -#include "Machine/Machine.h" -#include "Machine/HBD1000.h" #include "LanguageManager.h" #include "ChartletManager.h" @@ -31,17 +27,16 @@ SystemInfo* g_SystemInfo; class HBDSystem { public: - HBDSystem():m_win(nullptr) - {} + HBDSystem():m_win(nullptr), m_controller(nullptr){} - ~HBDSystem() - { + ~HBDSystem(){ //ConfigManager::GetInstance()->SaveConfig(); DELP(g_log); DELP(g_Toast); + DELP(g_SystemInfo); + DELP(g_LngManager); DELP(m_controller); DELP(m_win); - } bool init(){ diff --git a/PrintS/Controler/Controler.cpp b/PrintS/Controller/Controller.cpp similarity index 93% rename from PrintS/Controler/Controler.cpp rename to PrintS/Controller/Controller.cpp index 5841440..b1d59ce 100644 --- a/PrintS/Controler/Controler.cpp +++ b/PrintS/Controller/Controller.cpp @@ -1,19 +1,19 @@ -#include "Controler.h" +#include "Controller.h" -Controler::Controler() +Controller::Controller() : m_Machine(nullptr) , m_CoreCommunication(nullptr) , m_Axis(nullptr) , m_StateCtrlWrapper(nullptr) , m_SysParamWrapper(nullptr) , m_AxisRecordWrapper(nullptr) - , m_SignalStateWrapper(nullptr) { - + , m_SignalStateWrapper(nullptr){ + } -Controler::~Controler() { +Controller::~Controller() { DELP(m_CoreCommunication); DELP(m_Axis); DELP(m_StateCtrlWrapper); @@ -22,11 +22,9 @@ Controler::~Controler() { DELP(m_SignalStateWrapper); DELP(m_ComServer); - - } -void Controler::Init(){ +void Controller::Init(){ m_CoreCommunication = new CoreCommunication(); m_CoreCommunication->SetIOCfgWrapper(ConfigManager::GetInstance()->GetIoCfgWrapper()); m_CoreCommunication->SetSysParamWrapper(m_SysParamWrapper); @@ -67,4 +65,6 @@ void Controler::Init(){ //m_ScannerCtrl->SetRemoteClient(m_RemoteClient); //m_ScannerCtrl->SetMachineCtrl(m_MachineCtrl); -} \ No newline at end of file + + +} diff --git a/PrintS/Controler/Controler.h b/PrintS/Controller/Controller.h similarity index 92% rename from PrintS/Controler/Controler.h rename to PrintS/Controller/Controller.h index 6a5536b..aa5838b 100644 --- a/PrintS/Controler/Controler.h +++ b/PrintS/Controller/Controller.h @@ -7,10 +7,10 @@ #include "../Communication/ComServer.h" #include "../remote/RemoteClient.h" -class Controler { +class Controller { public: - Controler(); - ~Controler(); + Controller(); + ~Controller(); void Init(); diff --git a/PrintS/DataManage/ClientInfo.cpp b/PrintS/DataManage/ClientInfo.cpp new file mode 100644 index 0000000..75de854 --- /dev/null +++ b/PrintS/DataManage/ClientInfo.cpp @@ -0,0 +1,50 @@ +#include "ClientInfo.h" + +//添加客户端 +void ClientWrapper::AddClient(ClientInfo* clientInfo) { + bool isExist = false; + std::lock_guard lck(m_mux); + for (auto client = m_clientList.begin(); client != m_clientList.end(); ++client) { + if (clientInfo == *client) { + isExist = true; break; + } + } + if (!isExist) m_clientList.emplace_back(clientInfo); +} + +//下线检测 +void ClientWrapper::OfflineCheck() { + std::lock_guard lck(m_mux); + auto client = m_clientList.begin(); + while (client != m_clientList.end()) { + if (!(*client)->IsConnect()) { + printf("%s 下线了...\n", (*client)->m_clientAddr.c_str()); + delete (*client); + client = m_clientList.erase(client); + } + else { + ++client; + } + } +} + + +void ClientWrapper::Clear() { + std::lock_guard lck(m_mux); + auto client = m_clientList.begin(); + while (client != m_clientList.end()) { + if (*client) delete (*client); + ++client; + } + m_clientList.clear(); +} + + +void ClientWrapper::PushAllClient(WriteData* wd) { + std::lock_guard lck(m_mux); + auto client = m_clientList.begin(); + while (client != m_clientList.end()) { + (*client)->PushMsg(wd); + ++client; + } +} \ No newline at end of file diff --git a/PrintS/DataManage/ClientInfo.h b/PrintS/DataManage/ClientInfo.h index 3cdbc52..92ffdf8 100644 --- a/PrintS/DataManage/ClientInfo.h +++ b/PrintS/DataManage/ClientInfo.h @@ -3,101 +3,13 @@ #include #include #include +#include "RWData.h" #include "../protobuf/stream.grpc.pb.h" using grpc::ServerContext; -enum READTYPE { - GET = 0, - SET, - LOAD, //载入 - LOADOUT, //载出 - SUPPLYAXLEAFTER, //供粉轴后移 - SUPPLYAXLEFRONT, //供粉轴前移 - SUPPLYAXLEAFTERCONTSTART, //供粉轴后移连续开始 - SUPPLYAXLEAFTERCONTSTOP, //供粉轴后移连续停止 - SUPPLYAXLEFRONTCONTSTART, //供粉轴前移连续开始 - SUPPLYAXLEFRONTCONTSTOP, //供粉轴前移连续停止 - PAVEAXLEFRONT, // 铺粉臂前移 - PAVEAXLEFRONTCONTSTART, //铺粉臂前移连续 - PAVEAXLEFRONTCONTSTOP, //铺粉臂前移连续 - PAVEAXLEAFTER, //铺粉臂后移 - PAVEAXLEAFTERCONTSTART, //铺粉臂后移连续开始 - PAVEAXLEAFTERCONTSTOP, //铺粉臂后移连续停止 - PAVEAXLECLEAR, //铺粉臂清零 - PRINTAXLEUP, //成型缸上升 - PRINTAXLEUPCONTSTART, //成型缸连续上升开始 - PRINTAXLEUPCONTSTOP, //成型缸连续上升停止 - PRINTAXLEDOWN, //成型缸下降 - PRINTAXLEDOWNCONTSTART, //成型缸连续下降开始 - PRINTAXLEDOWNCONTSTOP, //成型缸连续下降停止 - PRINTAXLECLEAR, //成型缸清零 - TRANSFERAXIELEFT, //移载轴左移 - TRANSFERAXIELEFTCONTSTART, //移载轴连续左移开始 - TRANSFERAXIELEFTCONTSTOP, //移载轴连续左移停止 - TRANSFERAXIERIGHT, //移载轴右移 - TRANSFERAXIERIGHTCONTSTART, //移载轴连续右移开始 - TRANSFERAXIERIGHTCONTSTOP, //移载轴连续右移停止 - TRANSFERAXIECLEAR, //移载轴清零 - SCANERSTART, //开始扫描 - SCANERSTOP, //停止扫描 - STARTHEATINGSCANNERTEST, //开始振镜预热测试 - STOPHEATINGSCANNERTEST, //停止振镜预热 - INITERRORINFOSREQ, //初始化错误信息 - VERSIONREQ, //获取版本信息 -}; - -enum DATATYPE { - iBOOL = 0, - iSHORT, - iUSHORT, - iINT, - iUINT, - iFLOAT, - iSTRING, - - iWORD, -}; - -class ClientInfo; -struct ReadData { - READTYPE dataType; - std::string nameKey; //参数key - std::string strValue; //value - DATATYPE valueType; - ClientInfo* clientPtr; -}; - -enum WRITETYPE { - ProcReadPLC0=0, //snap7 数据 - ProcReadPLC1, - ProcReadPLC2, - ProcReadPLC3, - ProcReadPLC4, - ProcReadPLC5, - ProcReadPLC6, - ProcReadPLCData0 = 100, - ALARM , //报警 - RESPOND, //回应 - TIMEDATA, //定时数据 - - INITERRORINFOSRSP, //返回初始化错误信息 - VERSIONRSP, //返回版本信息 -}; - - -struct WriteData { - WRITETYPE dataType; - bool result; - std::string nameKey; //参数key - std::string strValue; //value - DATATYPE valueType; //数据类型 -}; - - - class ClientInfo { public: ClientInfo() @@ -132,7 +44,7 @@ public: } } - void SetPushMsg(WriteData* msg) { + void PushMsg(WriteData* msg) { std::lock_guard lock(m_msgLock); m_msgList.push_back(msg); } @@ -142,9 +54,34 @@ public: bool m_readQuitFlag; //读线程退出标致 bool m_writeQuitFlag; //写线程退出标致 ServerContext* m_context; //上下文 - private: std::list m_msgList; //信息缓存区 std::mutex m_msgLock; //信息锁 +}; + +class ClientWrapper { +public: + static ClientWrapper* Instance() { + static ClientWrapper* clientWrapper = new ClientWrapper(); + return clientWrapper; + } + + void AddClient(ClientInfo* clientInfo); //添加客户端 + + void OfflineCheck(); //下线检测 + + void Clear(); //清空客户端 + + void PushAllClient(WriteData* wd); + +private: + ClientWrapper() {} + ~ClientWrapper() {} + ClientWrapper(const ClientWrapper& clientWrapper) = delete; + ClientWrapper& operator= (const ClientWrapper& clientWrapper) = delete; + +private: + std::mutex m_mux; + std::list m_clientList; }; \ No newline at end of file diff --git a/PrintS/DataManage/DataHandle.cpp b/PrintS/DataManage/DataHandle.cpp index 89d7ac4..ed17cc6 100644 --- a/PrintS/DataManage/DataHandle.cpp +++ b/PrintS/DataManage/DataHandle.cpp @@ -12,7 +12,7 @@ DataHandle::DataHandle() : m_dataCallBack(nullptr) , m_streamServer(nullptr) , m_config(nullptr) - , m_controler(nullptr) + , m_controller(nullptr) , m_testFlag(false){ } @@ -24,7 +24,7 @@ DataHandle::~DataHandle() { if (m_testTd.joinable()) m_testTd.join(); DELP(m_streamServer); - DELP(m_controler); + DELP(m_controller); } @@ -38,8 +38,6 @@ void DataHandle::Init() { m_config->Init(); - //WriteData(); - m_streamServer = new StreamServer(m_config->GetMachine()); //测试线程 @@ -53,7 +51,7 @@ void DataHandle::Init() { wd->result = true; wd->valueType = iFLOAT; if (m_streamServer && m_streamServer->GetClient()) - m_streamServer->GetClient()->SetPushMsg(wd); + m_streamServer->GetClient()->PushMsg(wd); std::this_thread::sleep_for(std::chrono::seconds(1)); } }); @@ -62,8 +60,8 @@ void DataHandle::Init() { m_streamServer->SetCallBackFunc(this, &DataHandle::DataCallBackProc); m_streamServer->Init(); - m_controler = new Controler(); - m_controler->Init(); + m_controller = new Controller(); + m_controller->Init(); } @@ -89,135 +87,135 @@ void DataHandle::DataCallBackHandle(const ReadData& msg) { break; case SET: break; case LOAD: - if (!m_controler->m_ScannerCtrl->IsStandBy() && g_Admin == USER)return; - m_controler->m_Machine->LoadIn(); + if (!m_controller->m_ScannerCtrl->IsStandBy() && g_Admin == USER)return; + m_controller->m_Machine->LoadIn(); break; //载入 case LOADOUT: - if (!m_controler->m_ScannerCtrl->IsStandBy() && g_Admin == USER)return; - m_controler->m_Machine->LoadOut(); + if (!m_controller->m_ScannerCtrl->IsStandBy() && g_Admin == USER)return; + m_controller->m_Machine->LoadOut(); break; //载出 case SUPPLYAXLEAFTER: //供粉轴后移 - m_controler->m_Machine->SupplyAxisMove(AxisConfig::ActiveDirect::BACK); + m_controller->m_Machine->SupplyAxisMove(AxisConfig::ActiveDirect::BACK); break; case SUPPLYAXLEFRONT: //供粉轴前移 - m_controler->m_Machine->SupplyAxisMove(AxisConfig::ActiveDirect::FRONT); + m_controller->m_Machine->SupplyAxisMove(AxisConfig::ActiveDirect::FRONT); break; case SUPPLYAXLEAFTERCONTSTART: //供粉轴后移连续 - m_controler->m_Machine->SupplyAxisMove(AxisConfig::ActiveDirect::BACK,true,true); + m_controller->m_Machine->SupplyAxisMove(AxisConfig::ActiveDirect::BACK,true,true); break; case SUPPLYAXLEAFTERCONTSTOP: - m_controler->m_Machine->SupplyAxisMove(AxisConfig::ActiveDirect::BACK, true, false); + m_controller->m_Machine->SupplyAxisMove(AxisConfig::ActiveDirect::BACK, true, false); break; //供粉轴后移连续 case SUPPLYAXLEFRONTCONTSTART: //供粉轴前移连续开始 - m_controler->m_Machine->SupplyAxisMove(AxisConfig::ActiveDirect::FRONT, true, true); + m_controller->m_Machine->SupplyAxisMove(AxisConfig::ActiveDirect::FRONT, true, true); break; case SUPPLYAXLEFRONTCONTSTOP: //供粉轴前移连续结束 - m_controler->m_Machine->SupplyAxisMove(AxisConfig::ActiveDirect::FRONT, true, false); + m_controller->m_Machine->SupplyAxisMove(AxisConfig::ActiveDirect::FRONT, true, false); break; case PAVEAXLEFRONT: //铺粉臂前移 - m_controler->m_Machine->ArmAxisMove(AxisConfig::ActiveDirect::FRONT); + m_controller->m_Machine->ArmAxisMove(AxisConfig::ActiveDirect::FRONT); break; case PAVEAXLEFRONTCONTSTART: //铺粉臂前移连续 - m_controler->m_Machine->ArmAxisMove(AxisConfig::ActiveDirect::FRONT,true,true); + m_controller->m_Machine->ArmAxisMove(AxisConfig::ActiveDirect::FRONT,true,true); break; case PAVEAXLEFRONTCONTSTOP: //铺粉臂前移连续 - m_controler->m_Machine->ArmAxisMove(AxisConfig::ActiveDirect::FRONT,true,false); + m_controller->m_Machine->ArmAxisMove(AxisConfig::ActiveDirect::FRONT,true,false); break; case PAVEAXLEAFTER: //铺粉臂后移 - m_controler->m_Machine->ArmAxisMove(AxisConfig::ActiveDirect::BACK); + m_controller->m_Machine->ArmAxisMove(AxisConfig::ActiveDirect::BACK); break; case PAVEAXLEAFTERCONTSTART: //铺粉臂后移连续开始 - m_controler->m_Machine->ArmAxisMove(AxisConfig::ActiveDirect::BACK, true, true); + m_controller->m_Machine->ArmAxisMove(AxisConfig::ActiveDirect::BACK, true, true); break; case PAVEAXLEAFTERCONTSTOP: //铺粉臂后移连续停止 - m_controler->m_Machine->ArmAxisMove(AxisConfig::ActiveDirect::BACK, true, false); + m_controller->m_Machine->ArmAxisMove(AxisConfig::ActiveDirect::BACK, true, false); break; case PAVEAXLECLEAR: - m_controler->m_Machine->ArmAxisMove(AxisConfig::ActiveDirect::ZERO); + m_controller->m_Machine->ArmAxisMove(AxisConfig::ActiveDirect::ZERO); break; //铺粉臂清零 case PRINTAXLEUP: - m_controler->m_Machine->PrintAxisMove(AxisConfig::ActiveDirect::UP); + m_controller->m_Machine->PrintAxisMove(AxisConfig::ActiveDirect::UP); break; //成型缸上升 case PRINTAXLEUPCONTSTART: //成型缸连续上升开始 - m_controler->m_Machine->PrintAxisMove(AxisConfig::ActiveDirect::UP, true, true); + m_controller->m_Machine->PrintAxisMove(AxisConfig::ActiveDirect::UP, true, true); break; case PRINTAXLEUPCONTSTOP: //成型缸连续上升停止 - m_controler->m_Machine->PrintAxisMove(AxisConfig::ActiveDirect::UP, true, false); + m_controller->m_Machine->PrintAxisMove(AxisConfig::ActiveDirect::UP, true, false); break; case PRINTAXLEDOWN: - m_controler->m_Machine->PrintAxisMove(AxisConfig::ActiveDirect::DOWN); + m_controller->m_Machine->PrintAxisMove(AxisConfig::ActiveDirect::DOWN); break; //成型缸下降 case PRINTAXLEDOWNCONTSTART: - m_controler->m_Machine->PrintAxisMove(AxisConfig::ActiveDirect::DOWN, true, true); + m_controller->m_Machine->PrintAxisMove(AxisConfig::ActiveDirect::DOWN, true, true); break; //成型缸连续下降开始 case PRINTAXLEDOWNCONTSTOP: //成型缸连续下降停止 - m_controler->m_Machine->PrintAxisMove(AxisConfig::ActiveDirect::DOWN,true,false); + m_controller->m_Machine->PrintAxisMove(AxisConfig::ActiveDirect::DOWN,true,false); break; case PRINTAXLECLEAR: //成型缸清零 - m_controler->m_Machine->PrintAxisMove(AxisConfig::ActiveDirect::ZERO); + m_controller->m_Machine->PrintAxisMove(AxisConfig::ActiveDirect::ZERO); break; case TRANSFERAXIELEFT: //移栽轴左移 - if (!m_controler->m_ScannerCtrl->IsStandBy() && g_Admin == USER)return; - m_controler->m_Machine->LoadAxisMove(AxisConfig::ActiveDirect::LEFT); + if (!m_controller->m_ScannerCtrl->IsStandBy() && g_Admin == USER)return; + m_controller->m_Machine->LoadAxisMove(AxisConfig::ActiveDirect::LEFT); break; case TRANSFERAXIELEFTCONTSTART: //移栽轴连续左移开始 - m_controler->m_Machine->LoadAxisMove(AxisConfig::ActiveDirect::LEFT, true,true); + m_controller->m_Machine->LoadAxisMove(AxisConfig::ActiveDirect::LEFT, true,true); break; case TRANSFERAXIELEFTCONTSTOP: //移栽轴连续左移停止 - m_controler->m_Machine->LoadAxisMove(AxisConfig::ActiveDirect::LEFT, true, false); + m_controller->m_Machine->LoadAxisMove(AxisConfig::ActiveDirect::LEFT, true, false); break; case TRANSFERAXIERIGHT: //移栽轴右移 - if (!m_controler->m_ScannerCtrl->IsStandBy() && g_Admin == USER)return; - m_controler->m_Machine->LoadAxisMove(AxisConfig::ActiveDirect::RIGHT); + if (!m_controller->m_ScannerCtrl->IsStandBy() && g_Admin == USER)return; + m_controller->m_Machine->LoadAxisMove(AxisConfig::ActiveDirect::RIGHT); break; case TRANSFERAXIERIGHTCONTSTART: //移栽轴连续右移 - if (!m_controler->m_ScannerCtrl->IsStandBy() && g_Admin == USER)return; - m_controler->m_Machine->LoadAxisMove(AxisConfig::ActiveDirect::RIGHT,true,true); + if (!m_controller->m_ScannerCtrl->IsStandBy() && g_Admin == USER)return; + m_controller->m_Machine->LoadAxisMove(AxisConfig::ActiveDirect::RIGHT,true,true); break; case TRANSFERAXIERIGHTCONTSTOP: //移栽轴连续右移 - if (!m_controler->m_ScannerCtrl->IsStandBy() && g_Admin == USER)return; - m_controler->m_Machine->LoadAxisMove(AxisConfig::ActiveDirect::RIGHT, true, false); + if (!m_controller->m_ScannerCtrl->IsStandBy() && g_Admin == USER)return; + m_controller->m_Machine->LoadAxisMove(AxisConfig::ActiveDirect::RIGHT, true, false); break; case TRANSFERAXIECLEAR: //移栽轴清零 - m_controler->m_Machine->LoadAxisMove(AxisConfig::ActiveDirect::ZERO); + m_controller->m_Machine->LoadAxisMove(AxisConfig::ActiveDirect::ZERO); break; case SCANERSTART: //开始扫描 - scanners = m_controler->m_ScannerCtrl->GetScanners(); + scanners = m_controller->m_ScannerCtrl->GetScanners(); index = atoi(msg.strValue.c_str()); if (index >= (*scanners).size()) return; if ((*scanners)[index]) (*scanners)[index]->StartDebugTest(); break; case SCANERSTOP: //停止扫描 - scanners = m_controler->m_ScannerCtrl->GetScanners(); + scanners = m_controller->m_ScannerCtrl->GetScanners(); index = atoi(msg.strValue.c_str()); if (index >= (*scanners).size()) return; if ((*scanners)[index]) (*scanners)[index]->StopDebugTest(); break; case STARTHEATINGSCANNERTEST: //开始振镜预热测试 - scanners = m_controler->m_ScannerCtrl->GetScanners(); + scanners = m_controller->m_ScannerCtrl->GetScanners(); index = atoi(msg.strValue.c_str()); if (index >= (*scanners).size()) return; if((*scanners)[index]) (*scanners)[index]->StartHeatingScannerTest(); break; case STOPHEATINGSCANNERTEST: //停止振镜预热 - scanners = m_controler->m_ScannerCtrl->GetScanners(); + scanners = m_controller->m_ScannerCtrl->GetScanners(); index = atoi(msg.strValue.c_str()); if (index >= (*scanners).size()) return; if ((*scanners)[index]) (*scanners)[index]->StopHeatingScannerTest(); break; case INITERRORINFOSREQ: //初始化错误信息 wd = new WriteData(); - wd->strValue = m_controler->m_ScannerCtrl->GetInitErrorInfos(); + wd->strValue = m_controller->m_ScannerCtrl->GetInitErrorInfos(); wd->dataType = INITERRORINFOSRSP; wd->valueType = iSTRING; - msg.clientPtr->SetPushMsg(wd); + msg.clientPtr->PushMsg(wd); break; case VERSIONREQ: //获取版本信息 wd = new WriteData(); wd->strValue = g_SystemInfo->m_ProductVersion; wd->dataType = VERSIONRSP; wd->valueType = iSTRING; - msg.clientPtr->SetPushMsg(wd); + msg.clientPtr->PushMsg(wd); break; default: break; diff --git a/PrintS/DataManage/DataHandle.h b/PrintS/DataManage/DataHandle.h index 539d215..11aae05 100644 --- a/PrintS/DataManage/DataHandle.h +++ b/PrintS/DataManage/DataHandle.h @@ -2,7 +2,7 @@ #include #include "StreamServer.h" #include "../Config/ConfigManager.h" -#include "../Controler/Controler.h" +#include "../Controller/Controller.h" class DataHandle{ typedef void (*DataCallBack)(void* pthis, const ReadData& msg); @@ -21,7 +21,7 @@ private: std::thread m_testTd; ConfigManager* m_config; - Controler* m_controler; + Controller* m_controller; bool m_testFlag; //测试线程 void DataCallBackHandle(const ReadData& msg); diff --git a/PrintS/DataManage/RWData.h b/PrintS/DataManage/RWData.h new file mode 100644 index 0000000..4854120 --- /dev/null +++ b/PrintS/DataManage/RWData.h @@ -0,0 +1,94 @@ +#pragma once +#include + +enum READTYPE { + GET = 0, + SET, + LOAD, //载入 + LOADOUT, //载出 + SUPPLYAXLEAFTER, //供粉轴后移 + SUPPLYAXLEFRONT, //供粉轴前移 + SUPPLYAXLEAFTERCONTSTART, //供粉轴后移连续开始 + SUPPLYAXLEAFTERCONTSTOP, //供粉轴后移连续停止 + SUPPLYAXLEFRONTCONTSTART, //供粉轴前移连续开始 + SUPPLYAXLEFRONTCONTSTOP, //供粉轴前移连续停止 + PAVEAXLEFRONT, // 铺粉臂前移 + PAVEAXLEFRONTCONTSTART, //铺粉臂前移连续 + PAVEAXLEFRONTCONTSTOP, //铺粉臂前移连续 + PAVEAXLEAFTER, //铺粉臂后移 + PAVEAXLEAFTERCONTSTART, //铺粉臂后移连续开始 + PAVEAXLEAFTERCONTSTOP, //铺粉臂后移连续停止 + PAVEAXLECLEAR, //铺粉臂清零 + PRINTAXLEUP, //成型缸上升 + PRINTAXLEUPCONTSTART, //成型缸连续上升开始 + PRINTAXLEUPCONTSTOP, //成型缸连续上升停止 + PRINTAXLEDOWN, //成型缸下降 + PRINTAXLEDOWNCONTSTART, //成型缸连续下降开始 + PRINTAXLEDOWNCONTSTOP, //成型缸连续下降停止 + PRINTAXLECLEAR, //成型缸清零 + TRANSFERAXIELEFT, //移载轴左移 + TRANSFERAXIELEFTCONTSTART, //移载轴连续左移开始 + TRANSFERAXIELEFTCONTSTOP, //移载轴连续左移停止 + TRANSFERAXIERIGHT, //移载轴右移 + TRANSFERAXIERIGHTCONTSTART, //移载轴连续右移开始 + TRANSFERAXIERIGHTCONTSTOP, //移载轴连续右移停止 + TRANSFERAXIECLEAR, //移载轴清零 + SCANERSTART, //开始扫描 + SCANERSTOP, //停止扫描 + STARTHEATINGSCANNERTEST, //开始振镜预热测试 + STOPHEATINGSCANNERTEST, //停止振镜预热 + INITERRORINFOSREQ, //初始化错误信息 + VERSIONREQ, //获取版本信息 +}; + +enum DATATYPE { + iBOOL = 0, + iSHORT, + iUSHORT, + iINT, + iUINT, + iFLOAT, + iSTRING, + + iWORD, +}; + +class ClientInfo; +struct ReadData { + READTYPE dataType; + std::string nameKey; //参数key + std::string strValue; //value + DATATYPE valueType; + ClientInfo* clientPtr; +}; + +enum WRITETYPE { + ProcReadPLC0 = 0, //snap7 数据 + ProcReadPLC1, + ProcReadPLC2, + ProcReadPLC3, + ProcReadPLC4, + ProcReadPLC5, + ProcReadPLC6, + ProcReadPLCData0 = 100, + ALARM, //报警 + RESPOND, //回应 + TIMEDATA, //定时数据 + + INITERRORINFOSRSP, //返回初始化错误信息 + VERSIONRSP, //返回版本信息 + SYSPARAMDATA, // +}; + + +struct WriteData { + WRITETYPE dataType; + bool result; + std::string nameKey; //参数key + std::string strValue; //value + DATATYPE valueType; //数据类型 + + WriteData() {} + WriteData(WRITETYPE dt, const std::string& keyStr, const std::string& valStr) + : dataType(dt), nameKey(keyStr),strValue(valStr){} +}; diff --git a/PrintS/DataManage/StreamServer.cpp b/PrintS/DataManage/StreamServer.cpp index cfd0338..379c740 100644 --- a/PrintS/DataManage/StreamServer.cpp +++ b/PrintS/DataManage/StreamServer.cpp @@ -6,7 +6,6 @@ StreamServer::StreamServer(Machine* p) , m_dataCallBack(nullptr) , m_machine(p) , m_handlePtr(nullptr){ - } @@ -27,11 +26,8 @@ Status StreamServer::AllStream(ServerContext* context, grpc::ServerReaderWriter< cinfo->m_clientAddr = context->peer(); cinfo->m_context = context; - { - std::lock_guard lck(m_clientMutex); - m_clientList.emplace_back(cinfo); - m_machine->UpdateClients(m_clientList); - } + ClientWrapper::Instance()->AddClient(cinfo); + std::thread read([this, &stream, cinfo] { RequestInfo request; @@ -89,21 +85,7 @@ void StreamServer::Run() { if (!m_checkCloseTd.joinable()) { m_checkCloseTd = std::thread([this] { while (!m_checkQuitFlag) { - { - std::lock_guard lck(m_clientMutex); - bool ischange = false; - for (auto client = m_clientList.begin(); client != m_clientList.end();) { - if (!(*client)->IsConnect()) { - printf("%s 下线了...\n", (*client)->m_clientAddr.c_str()); - delete (*client); - client = m_clientList.erase(client); - ischange = true; - } - else - ++client; - } - if (ischange) m_machine->UpdateClients(m_clientList); - } + ClientWrapper::Instance()->OfflineCheck(); std::this_thread::sleep_for(std::chrono::milliseconds(1000)); } }); diff --git a/PrintS/HBDSystem.cpp b/PrintS/HBDSystem.cpp index b564ac5..9b798c9 100644 --- a/PrintS/HBDSystem.cpp +++ b/PrintS/HBDSystem.cpp @@ -75,10 +75,7 @@ void HBDSystem::GetVersion() lpTranslate[i].wCodePage); void* lpBuffer = NULL; unsigned int dwBytes = 0; - VerQueryValue(InfoBuf, - SubBlock, - &lpBuffer, - &dwBytes); + VerQueryValue(InfoBuf,SubBlock,&lpBuffer,&dwBytes); string strTemp = (char*)lpBuffer; strVersion += strTemp; diff --git a/PrintS/Machine/HBD1000.cpp b/PrintS/Machine/HBD1000.cpp index 1955319..c1d0cd8 100644 --- a/PrintS/Machine/HBD1000.cpp +++ b/PrintS/Machine/HBD1000.cpp @@ -13073,18 +13073,7 @@ void HBD1000::ProcReadPLCData(void* pobject, Command* pcommand) 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->SetPushMsg(data); -// } -// -// } -// -//} + std::unique_lock lock(cc->m_ValueMtx); if (pSysData.Result == 0) { unsigned char* arr = (unsigned char*)pSysData.pdata; diff --git a/PrintS/Machine/HBD1200.cpp b/PrintS/Machine/HBD1200.cpp index ff9ba67..e201e2e 100644 --- a/PrintS/Machine/HBD1200.cpp +++ b/PrintS/Machine/HBD1200.cpp @@ -5524,365 +5524,352 @@ void HBD1200::ProcReadPLC(void* pobject, Command* pcommand) TS7DataItem pCapture = pdataItems[5]; CoreCommunication* cc = (CoreCommunication*)machine->m_PLC; + 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]); - 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->SetPushMsg(data); - } + 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_DisableEleCylinderTorqueCheck->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_UseSupplySearchEdge->SetReatimeValue(arr0[1]); + machine->m_SignalStateWrapper->m_SheildCylinderFixSensor->SetReatimeValue(arr0[2]); + machine->m_SignalStateWrapper->m_SheildLinearEncoder->SetReatimeValue(arr0[5]); + machine->m_SignalStateWrapper->m_UseWellAutoCount->SetReatimeValue(arr0[7]); + + bitset<8> arr1(arr[1]); + machine->m_SignalStateWrapper->m_SheilServoEmptyOpen->SetReatimeValue(arr1[0]); //屏蔽伺服空开 + machine->m_SignalStateWrapper->m_SheildHighPressure->SetReatimeValue(arr1[2]); //屏蔽高压气 + machine->m_SignalStateWrapper->m_UnuseCoverReachSensor->SetReatimeValue(arr1[3]); //不使用铺粉轴到位感应器 + machine->m_SignalStateWrapper->m_UseArmCaptureHome->SetReatimeValue(arr1[5]); + machine->m_SignalStateWrapper->m_LinearEncoderOppDirection->SetReatimeValue(arr1[7]); + + bitset<8> arr2(arr[2]); + machine->m_SignalStateWrapper->m_CoverV2UseCintinueMode->SetReatimeValue(arr2[0]); + } + + 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); + } } -// -// 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_DisableEleCylinderTorqueCheck->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_UseSupplySearchEdge->SetReatimeValue(arr0[1]); -// machine->m_SignalStateWrapper->m_SheildCylinderFixSensor->SetReatimeValue(arr0[2]); -// machine->m_SignalStateWrapper->m_SheildLinearEncoder->SetReatimeValue(arr0[5]); -// machine->m_SignalStateWrapper->m_UseWellAutoCount->SetReatimeValue(arr0[7]); -// -// bitset<8> arr1(arr[1]); -// machine->m_SignalStateWrapper->m_SheilServoEmptyOpen->SetReatimeValue(arr1[0]); //屏蔽伺服空开 -// machine->m_SignalStateWrapper->m_SheildHighPressure->SetReatimeValue(arr1[2]); //屏蔽高压气 -// machine->m_SignalStateWrapper->m_UnuseCoverReachSensor->SetReatimeValue(arr1[3]); //不使用铺粉轴到位感应器 -// machine->m_SignalStateWrapper->m_UseArmCaptureHome->SetReatimeValue(arr1[5]); -// machine->m_SignalStateWrapper->m_LinearEncoderOppDirection->SetReatimeValue(arr1[7]); -// -// bitset<8> arr2(arr[2]); -// machine->m_SignalStateWrapper->m_CoverV2UseCintinueMode->SetReatimeValue(arr2[0]); -// } -// -// 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 HBD1200::ProcReadPLCData(void* pobject, Command* pcommand) { S7Command* s7Command = (S7Command*)pcommand; @@ -5893,408 +5880,401 @@ void HBD1200::ProcReadPLCData(void* pobject, Command* pcommand) 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->SetPushMsg(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 = (long)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); } + + } -// 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 HBD1200::GetAlarmState(SignalState& signalState) //{ // signalState.m_PLCKeepAlive = m_SignalStateWrapper->m_PLCKeepAlive->GetValue(); //PLC心跳-》PC @@ -6533,507 +6513,507 @@ void HBD1200::ProcReadPLCData(void* pobject, Command* pcommand) // signalState.m_SupplyServoAlarm = m_Axis->m_Supply->GetState()->m_ServoException; // //memcpy_s(&alarmState, sizeof(AlarmState),m_AlarmStateWrapper,sizeof(alarmState)); //} -// -//void HBD1200::LoadInRun() { -// SetLoadInProcStep(In_Start); -// if ((m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInPrintLoaded)) { -// 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; -// } -// -// while (m_LoadCtrlFlag) -// { -// Sleep(500); -// if (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { -// break; -// } -// } -// Sleep(500); -// if (!m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { -// stringstream ss; -// ss << _(u8"缸体与清粉箱分离异常:\n").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 HBD1200::LoadOutRun() -//{ -// SetLoadOutProcStep(Out_Start); -// if (m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInHand) { -// SetLoadOutResult(Out_Success, _(u8"缸体载出已完成").c_str()); -// return; -// } -// -// m_WaitSelectOutPosCommit = false; -// -// if (m_RunCfg->m_ShowUnloadHandPos) { -// m_NeedWaitSelectOutPos = true; -// while (!m_WaitSelectOutPosCommit && m_LoadCtrlFlag) { -// Sleep(300); -// } -// } -// else { -// m_SelectOutPos = 0; -// } -// -// m_NeedWaitSelectOutPos = 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 = 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; -// } -// -// while (m_LoadCtrlFlag) -// { -// Sleep(500); -// if (m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->GetValue()) { -// break; -// } -// -// } -// Sleep(500); -// if (!m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->GetValue()) { -// stringstream ss; -// ss << _(u8"缸体与清粉箱连接异常:\n").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); -// } -// } -// if (!m_LoadCtrlFlag) { -// SetLoadOutResult(Out_Intercept, u8"载出中断"); -// return; -// } -// SetLoadOutResult(Out_Success, _(u8"缸体载出已完成").c_str()); -// } -// else if (m_SelectOutPos == 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; -// } -// -// while (m_LoadCtrlFlag) -// { -// Sleep(500); -// if (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { -// break; -// } -// -// } -// Sleep(500); -// if (!m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { -// stringstream ss; -// ss << _(u8"缸体与清粉箱分离异常:\n").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 HBD1200::CheckPrintMoldReady() -//{ -// if (m_SignalStateWrapper->m_CylinderState->GetValue() != CylinderInPrintLoaded) -// { -// return false; -// } -// else return true; -//} + +void HBD1200::LoadInRun() { + SetLoadInProcStep(In_Start); + if ((m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInPrintLoaded)) { + 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; + } + + while (m_LoadCtrlFlag) + { + Sleep(500); + if (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { + break; + } + } + Sleep(500); + if (!m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { + stringstream ss; + ss << _(u8"缸体与清粉箱分离异常:\n").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 HBD1200::LoadOutRun() +{ + SetLoadOutProcStep(Out_Start); + if (m_SignalStateWrapper->m_CylinderState->GetValue() == CylinderInHand) { + SetLoadOutResult(Out_Success, _(u8"缸体载出已完成").c_str()); + return; + } + + m_WaitSelectOutPosCommit = false; + + if (m_RunCfg->m_ShowUnloadHandPos) { + m_NeedWaitSelectOutPos = true; + while (!m_WaitSelectOutPosCommit && m_LoadCtrlFlag) { + Sleep(300); + } + } + else { + m_SelectOutPos = 0; + } + + m_NeedWaitSelectOutPos = 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 = 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; + } + + while (m_LoadCtrlFlag) + { + Sleep(500); + if (m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->GetValue()) { + break; + } + + } + Sleep(500); + if (!m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->GetValue()) { + stringstream ss; + ss << _(u8"缸体与清粉箱连接异常:\n").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); + } + } + if (!m_LoadCtrlFlag) { + SetLoadOutResult(Out_Intercept, u8"载出中断"); + return; + } + SetLoadOutResult(Out_Success, _(u8"缸体载出已完成").c_str()); + } + else if (m_SelectOutPos == 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; + } + + while (m_LoadCtrlFlag) + { + Sleep(500); + if (m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { + break; + } + + } + Sleep(500); + if (!m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->GetValue()) { + stringstream ss; + ss << _(u8"缸体与清粉箱分离异常:\n").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 HBD1200::CheckPrintMoldReady() +{ + if (m_SignalStateWrapper->m_CylinderState->GetValue() != CylinderInPrintLoaded) + { + return false; + } + else return true; +} diff --git a/PrintS/Machine/HBD1200.h b/PrintS/Machine/HBD1200.h index b4e7cb9..ba54312 100644 --- a/PrintS/Machine/HBD1200.h +++ b/PrintS/Machine/HBD1200.h @@ -84,13 +84,13 @@ public: void InitSysParam(SysParamWrapper* spw, PLCReveiver* cc); void InitPLCCommand(vector& vecs); //void GetAlarmState(SignalState& signalState); - //bool CheckPrintMoldReady(); + bool CheckPrintMoldReady(); private: static void CheckIO_V0(vector& ins, IOCfgWrapper* iocfgWrapper, string str, int type); static void ProcReadPLC(void* pobject, Command* pcommand); static void ProcReadPLCData(void* pobject, Command* pcommand); - void LoadInRun() {} - void LoadOutRun() {} + void LoadInRun(); + void LoadOutRun(); bool IsLoadAxisCanMoveLeft(); string GetLoadAxisCanotMoveLeftInfo(); bool IsLoadAxisCanMoveRight(); diff --git a/PrintS/Machine/HBD1200OLD.cpp b/PrintS/Machine/HBD1200OLD.cpp index 6faa023..0179f7b 100644 --- a/PrintS/Machine/HBD1200OLD.cpp +++ b/PrintS/Machine/HBD1200OLD.cpp @@ -5022,362 +5022,362 @@ void HBD1200OLD::ProcReadPLC(void* pobject, Command* pcommand) 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->SetPushMsg(data); - } + //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); + } } -// -// 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; @@ -5388,411 +5388,412 @@ void HBD1200OLD::ProcReadPLCData(void* pobject, Command* pcommand) 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->SetPushMsg(data); - } + //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); } + + } -// 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 @@ -6202,7 +6203,8 @@ void HBD1200OLD::ProcReadPLCData(void* pobject, Command* pcommand) // // SetLoadInResult(In_Success, _(u8"缸体已载入完成").c_str()); //} -// + + //void HBD1200OLD::LoadOutRun() //{ // SetLoadOutProcStep(Out_Start); @@ -6520,7 +6522,7 @@ void HBD1200OLD::ProcReadPLCData(void* pobject, Command* pcommand) // } // //} -// + //bool HBD1200OLD::CheckPrintMoldReady() //{ // if (m_SignalStateWrapper->m_CylinderState->GetValue() != CylinderInPrintLoaded) @@ -6529,7 +6531,7 @@ void HBD1200OLD::ProcReadPLCData(void* pobject, Command* pcommand) // } // else return true; //} -// + //bool HBD1200OLD::IsLoadAxisCanMoveLeft() //{ // if (!m_SignalState.m_PrintJackupInSafePos)return false; @@ -6542,7 +6544,7 @@ void HBD1200OLD::ProcReadPLCData(void* pobject, Command* pcommand) // 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(); @@ -6554,7 +6556,7 @@ void HBD1200OLD::ProcReadPLCData(void* pobject, Command* pcommand) // 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; @@ -6567,7 +6569,7 @@ void HBD1200OLD::ProcReadPLCData(void* pobject, Command* pcommand) // 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(); @@ -6579,7 +6581,7 @@ void HBD1200OLD::ProcReadPLCData(void* pobject, Command* pcommand) // 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; @@ -6590,7 +6592,7 @@ void HBD1200OLD::ProcReadPLCData(void* pobject, Command* pcommand) // 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(); @@ -6601,7 +6603,7 @@ void HBD1200OLD::ProcReadPLCData(void* pobject, Command* pcommand) // 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; @@ -6612,7 +6614,7 @@ void HBD1200OLD::ProcReadPLCData(void* pobject, Command* pcommand) // 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(); @@ -6623,7 +6625,7 @@ void HBD1200OLD::ProcReadPLCData(void* pobject, Command* pcommand) // 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; @@ -6635,7 +6637,7 @@ void HBD1200OLD::ProcReadPLCData(void* pobject, Command* pcommand) // 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(); @@ -6650,7 +6652,7 @@ void HBD1200OLD::ProcReadPLCData(void* pobject, Command* pcommand) // 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; @@ -6662,7 +6664,8 @@ void HBD1200OLD::ProcReadPLCData(void* pobject, Command* pcommand) // 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(); diff --git a/PrintS/Machine/HBD1500.cpp b/PrintS/Machine/HBD1500.cpp index ea2221e..74f1506 100644 --- a/PrintS/Machine/HBD1500.cpp +++ b/PrintS/Machine/HBD1500.cpp @@ -5377,432 +5377,432 @@ void HBD1500::ProcReadPLC(void* pobject, Command* pcommand) TS7DataItem pExt = pdataItems[6]; CoreCommunication* cc = (CoreCommunication*)machine->m_PLC; - for (int i = 0; i < itemcount; ++i) { - WriteData* data = new WriteData(); - data->dataType = WRITETYPE(i); - data->strValue = (char*)pdataItems[i].pdata; - data->result = true; - for (auto& client : machine->m_clientUser) { - client->SetPushMsg(data); - } - - } -} +// 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_Print3RSeparateAlarm->SetReatimeValue(arr59[0]); -// machine->m_SignalStateWrapper->m_Print3RConnectAlarm->SetReatimeValue(arr59[1]); -// machine->m_SignalStateWrapper->m_Print3RDisableAlarm->SetReatimeValue(arr59[2]); -// machine->m_SignalStateWrapper->m_PrintTrackDisableWarn->SetReatimeValue(arr59[3]); -// machine->m_SignalStateWrapper->m_PrintPressOnDisableAlarm->SetReatimeValue(arr59[4]); -// machine->m_SignalStateWrapper->m_PrintPressOffDisableAlarm->SetReatimeValue(arr59[5]); -// machine->m_SignalStateWrapper->m_PrintJackUpDisableAlarm->SetReatimeValue(arr59[6]); -// machine->m_SignalStateWrapper->m_PrintJackDownDisableAlarm->SetReatimeValue(arr59[7]); -// -// bitset<8> arr60(arr[60]); -// machine->m_SignalStateWrapper->m_PrintSupportOnDisableAlarm->SetReatimeValue(arr60[0]); -// machine->m_SignalStateWrapper->m_PrintSupportOffDisableAlarm->SetReatimeValue(arr60[1]); -// 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_CleanBoxPressOnAlarm->SetReatimeValue(arr62[5]); -// machine->m_SignalStateWrapper->m_CleanBoxPressOffAlarm->SetReatimeValue(arr62[6]); -// machine->m_SignalStateWrapper->m_HandPlatformCloseAlarm->SetReatimeValue(arr62[7]); -// -// bitset<8> arr63(arr[63]); -// machine->m_SignalStateWrapper->m_CleanPosPressOnAlarm->SetReatimeValue(arr63[4]); -// machine->m_SignalStateWrapper->m_CleanPosPressOffAlarm->SetReatimeValue(arr63[5]); -// machine->m_SignalStateWrapper->m_CleanPosPreventCylinderOnAlarm->SetReatimeValue(arr63[6]); -// machine->m_SignalStateWrapper->m_CleanPosPreventCylinderOffAlarm->SetReatimeValue(arr63[7]); -// -// bitset<8> arr64(arr[64]); -// machine->m_SignalStateWrapper->m_Clean3RDisableAlarm->SetReatimeValue(arr64[2]); -// 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]); -// machine->m_SignalStateWrapper->m_LoadAxisSearchEdgeDisableAlarm->SetReatimeValue(arr64[7]); -// -// 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_CleanTorqueAlarm->SetReatimeValue(arr67[1]); -// 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_CleanMainOverSoftUpLimit->SetReatimeValue(arr68[1]); -// machine->m_SignalStateWrapper->m_CleanMainOverSoftDownLimit->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]); -// machine->m_SignalStateWrapper->m_Clean3RPressureLackAlarm->SetReatimeValue(arr69[4]); -// machine->m_SignalStateWrapper->m_Print3RPressureLackAlarm->SetReatimeValue(arr69[5]); -// machine->m_SignalStateWrapper->m_LoadElectromagnetDisconnectAlarm->SetReatimeValue(arr69[6]); -// -// bitset<8> arr70(arr[70]); -// 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_CleanMainServoAlarmSignal->SetReatimeValue(arr70[6]); -// machine->m_SignalStateWrapper->m_CleanBoxTopDoorRiseAlarmSignal->SetReatimeValue(arr70[7]); -// -// bitset<8> arr71(arr[71]); -// machine->m_SignalStateWrapper->m_CleanBoxTopDoorFallAlarmSignal->SetReatimeValue(arr71[0]); -// machine->m_SignalStateWrapper->m_LinearEncoderCheckAlarmSignal->SetReatimeValue(arr71[1]); -// machine->m_SignalStateWrapper->m_PrintMainSoftStopTrigger->SetReatimeValue(arr71[2]); -// machine->m_SignalStateWrapper->m_CleanMainSoftStopTrigger->SetReatimeValue(arr71[3]); -// machine->m_SignalStateWrapper->m_LoadAxisSoftStopTrigger->SetReatimeValue(arr71[4]); -// machine->m_SignalStateWrapper->m_CoverSoftStopTrigger->SetReatimeValue(arr71[5]); -// -// 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_MoldConnectCylinderTriger->SetReatimeValue(arr81[1]); -// machine->m_SignalStateWrapper->m_MoldConnectCylinderRun->SetReatimeValue(arr81[2]); -// machine->m_SignalStateWrapper->m_MoldConnectCylinderFinished->SetReatimeValue(arr81[3]); -// machine->m_SignalStateWrapper->m_MoldDisconnectCylinderTriger->SetReatimeValue(arr81[4]); -// machine->m_SignalStateWrapper->m_MoldDisconnectCylinderRun->SetReatimeValue(arr81[5]); -// machine->m_SignalStateWrapper->m_MoldDisconnectCylinderFinished->SetReatimeValue(arr81[6]); -// 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_MoldDeoxygenTriger->SetReatimeValue(arr84[0]); -// machine->m_SignalStateWrapper->m_MoldDeoxygenRun->SetReatimeValue(arr84[1]); -// machine->m_SignalStateWrapper->m_MoldDeoxygenFinished->SetReatimeValue(arr84[2]); -// 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_MoldConnectCylinderEnable->SetReatimeValue(arr86[0]); -// machine->m_SignalStateWrapper->m_MoldDisconnectCylinderEnable->SetReatimeValue(arr86[1]); -// 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]); -// machine->m_SignalStateWrapper->m_MoldDeoxygenEnable->SetReatimeValue(arr86[6]); -// machine->m_SignalStateWrapper->m_CalcLoadSearchEdgeOffset->SetReatimeValue(arr86[7]); -// -// bitset<8> arr87(arr[87]); -// machine->m_SignalStateWrapper->m_ManualTestOffset->SetReatimeValue(arr87[0]); -// -// 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_PrintSlaveServoNoAlarm->SetReatimeValue(arr89[0]); -// -// 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_CleanMainServoNoAlarm->SetReatimeValue(arr91[0]); -// -// bitset<8> arr92(arr[92]); -// machine->m_SignalStateWrapper->m_PrintJackupInSplitePos->SetReatimeValue(arr92[0]); -// machine->m_SignalStateWrapper->m_LoadTorqueInsideLimit->SetReatimeValue(arr92[1]); -// machine->m_SignalStateWrapper->m_LoadPosInsideLeftSoftLimit->SetReatimeValue(arr92[2]); -// machine->m_SignalStateWrapper->m_LoadPosInsideRightSoftLimit->SetReatimeValue(arr92[3]); -// machine->m_SignalStateWrapper->m_PrintPressingInReleasePos->SetReatimeValue(arr92[4]); -// machine->m_SignalStateWrapper->m_PrintJackupInDropPos->SetReatimeValue(arr92[5]); -// machine->m_SignalStateWrapper->m_PrintSupportInAvoidPos->SetReatimeValue(arr92[6]); -// machine->m_SignalStateWrapper->m_CleanPressingInReleasePos->SetReatimeValue(arr92[7]); -// -// bitset<8> arr93(arr[93]); -// machine->m_SignalStateWrapper->m_CylinderFixInReleasePos->SetReatimeValue(arr93[0]); -// machine->m_SignalStateWrapper->m_CleanBoxReleasePos->SetReatimeValue(arr93[1]); -// 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_CleanAxisInCylinderSeparatePos->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_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_IsInPrint3RSeparatePos->SetReatimeValue(arr249[5]); //打印3R脱离位 -// machine->m_SignalStateWrapper->m_IsInPrintDeoxygenLowestPos->SetReatimeValue(arr249[6]); //打印除氧最低位 -// 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_IsInCleanPlatfromBottomPos->SetReatimeValue(arr250[2]); //清粉基板底座面 -// machine->m_SignalStateWrapper->m_IsInClean3RSeparatePos->SetReatimeValue(arr250[3]); //清粉3R脱离位 -// machine->m_SignalStateWrapper->m_IsInCleanLowestPos->SetReatimeValue(arr250[4]); //清粉最低面 -// machine->m_SignalStateWrapper->m_IsInLoadPrintPos->SetReatimeValue(arr250[5]); //移载打印位 -// machine->m_SignalStateWrapper->m_IsInLoadCleanPos->SetReatimeValue(arr250[6]); //移载清粉位 -// machine->m_SignalStateWrapper->m_IsInLoadWaitPos->SetReatimeValue(arr250[7]); //移载等待位 -// -// 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]); -// machine->m_AxisRecordWrapper->m_PCPrintUpDownOverLimitAlarm->SetReatimeValue(arr42[5]); -// machine->m_AxisRecordWrapper->m_PCPrintUpDownOverLimitAlarmRemove->SetReatimeValue(arr42[6]); -// machine->m_AxisRecordWrapper->m_PCCleanUpDownOverLimitAlarm->SetReatimeValue(arr42[7]); -// -// bitset<8> arr43(arr[43]); -// machine->m_AxisRecordWrapper->m_PCCleanUpDownOverLimitAlarmRemove->SetReatimeValue(arr43[0]); -// machine->m_AxisRecordWrapper->m_PCLoadOverLimitAlarm->SetReatimeValue(arr43[1]); -// machine->m_AxisRecordWrapper->m_PCLoadOverLimitAlarmRemove->SetReatimeValue(arr43[2]); -// machine->m_AxisRecordWrapper->m_PCArmOverLimitAlarm->SetReatimeValue(arr43[3]); -// machine->m_AxisRecordWrapper->m_PCArmOverLimitAlarmRemove->SetReatimeValue(arr43[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_SheildPrintSupportCylinder->SetReatimeValue(arr0[4]); -// machine->m_SignalStateWrapper->m_SheildLinearEncoder->SetReatimeValue(arr0[5]); -// machine->m_SignalStateWrapper->m_LoadAxisUseSensorPos->SetReatimeValue(arr0[6]); -// -// bitset<8> arr1(arr[1]); -// machine->m_SignalStateWrapper->m_RemoveIOActionLimit->SetReatimeValue(arr1[0]); //屏蔽前后定位气缸 -// machine->m_SignalStateWrapper->m_SheildHighPressure->SetReatimeValue(arr1[2]); //屏蔽高压气 -// machine->m_SignalStateWrapper->m_LoadPrintBackDistance->SetReatimeValue(arr1[4]); //移载打印在后退距离 -// machine->m_SignalStateWrapper->m_UseArmCaptureHome->SetReatimeValue(arr1[5]); -// machine->m_SignalStateWrapper->m_UseCapacityBar->SetReatimeValue(arr1[6]); -// -// } -// -// 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); -// } -// -// if (pExt.Result==0) { -// unsigned char* arr = (unsigned char*)pExt.pdata; -// int flagtemp = 862; -// int flag = 862 - flagtemp; -// machine->m_SysParamWrapper->m_PrintHomeSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 866 - flagtemp; -// machine->m_SysParamWrapper->m_CleanHomeSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 870 - flagtemp; -// machine->m_SysParamWrapper->m_LoadHomeSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 874 - flagtemp; -// machine->m_SysParamWrapper->m_LoadSearchEdgeTorqueAlarmValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 878 - flagtemp; -// machine->m_SysParamWrapper->m_HighPressureGasJudgmentValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 882 - flagtemp; -// machine->m_SysParamWrapper->m_ProtectiveGasJudgmentValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 886 - flagtemp; -// machine->m_SysParamWrapper->m_UnloadDropDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 890 - flagtemp; -// machine->m_SysParamWrapper->m_DataSizeMinY->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 894 - flagtemp; -// machine->m_SysParamWrapper->m_DataSizeMaxY->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 898 - flagtemp; -// machine->m_SysParamWrapper->m_AllowPrintHigh->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// // } //} -// + + 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_Print3RSeparateAlarm->SetReatimeValue(arr59[0]); + machine->m_SignalStateWrapper->m_Print3RConnectAlarm->SetReatimeValue(arr59[1]); + machine->m_SignalStateWrapper->m_Print3RDisableAlarm->SetReatimeValue(arr59[2]); + machine->m_SignalStateWrapper->m_PrintTrackDisableWarn->SetReatimeValue(arr59[3]); + machine->m_SignalStateWrapper->m_PrintPressOnDisableAlarm->SetReatimeValue(arr59[4]); + machine->m_SignalStateWrapper->m_PrintPressOffDisableAlarm->SetReatimeValue(arr59[5]); + machine->m_SignalStateWrapper->m_PrintJackUpDisableAlarm->SetReatimeValue(arr59[6]); + machine->m_SignalStateWrapper->m_PrintJackDownDisableAlarm->SetReatimeValue(arr59[7]); + + bitset<8> arr60(arr[60]); + machine->m_SignalStateWrapper->m_PrintSupportOnDisableAlarm->SetReatimeValue(arr60[0]); + machine->m_SignalStateWrapper->m_PrintSupportOffDisableAlarm->SetReatimeValue(arr60[1]); + 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_CleanBoxPressOnAlarm->SetReatimeValue(arr62[5]); + machine->m_SignalStateWrapper->m_CleanBoxPressOffAlarm->SetReatimeValue(arr62[6]); + machine->m_SignalStateWrapper->m_HandPlatformCloseAlarm->SetReatimeValue(arr62[7]); + + bitset<8> arr63(arr[63]); + machine->m_SignalStateWrapper->m_CleanPosPressOnAlarm->SetReatimeValue(arr63[4]); + machine->m_SignalStateWrapper->m_CleanPosPressOffAlarm->SetReatimeValue(arr63[5]); + machine->m_SignalStateWrapper->m_CleanPosPreventCylinderOnAlarm->SetReatimeValue(arr63[6]); + machine->m_SignalStateWrapper->m_CleanPosPreventCylinderOffAlarm->SetReatimeValue(arr63[7]); + + bitset<8> arr64(arr[64]); + machine->m_SignalStateWrapper->m_Clean3RDisableAlarm->SetReatimeValue(arr64[2]); + 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]); + machine->m_SignalStateWrapper->m_LoadAxisSearchEdgeDisableAlarm->SetReatimeValue(arr64[7]); + + 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_CleanTorqueAlarm->SetReatimeValue(arr67[1]); + 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_CleanMainOverSoftUpLimit->SetReatimeValue(arr68[1]); + machine->m_SignalStateWrapper->m_CleanMainOverSoftDownLimit->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]); + machine->m_SignalStateWrapper->m_Clean3RPressureLackAlarm->SetReatimeValue(arr69[4]); + machine->m_SignalStateWrapper->m_Print3RPressureLackAlarm->SetReatimeValue(arr69[5]); + machine->m_SignalStateWrapper->m_LoadElectromagnetDisconnectAlarm->SetReatimeValue(arr69[6]); + + bitset<8> arr70(arr[70]); + 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_CleanMainServoAlarmSignal->SetReatimeValue(arr70[6]); + machine->m_SignalStateWrapper->m_CleanBoxTopDoorRiseAlarmSignal->SetReatimeValue(arr70[7]); + + bitset<8> arr71(arr[71]); + machine->m_SignalStateWrapper->m_CleanBoxTopDoorFallAlarmSignal->SetReatimeValue(arr71[0]); + machine->m_SignalStateWrapper->m_LinearEncoderCheckAlarmSignal->SetReatimeValue(arr71[1]); + machine->m_SignalStateWrapper->m_PrintMainSoftStopTrigger->SetReatimeValue(arr71[2]); + machine->m_SignalStateWrapper->m_CleanMainSoftStopTrigger->SetReatimeValue(arr71[3]); + machine->m_SignalStateWrapper->m_LoadAxisSoftStopTrigger->SetReatimeValue(arr71[4]); + machine->m_SignalStateWrapper->m_CoverSoftStopTrigger->SetReatimeValue(arr71[5]); + + 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_MoldConnectCylinderTriger->SetReatimeValue(arr81[1]); + machine->m_SignalStateWrapper->m_MoldConnectCylinderRun->SetReatimeValue(arr81[2]); + machine->m_SignalStateWrapper->m_MoldConnectCylinderFinished->SetReatimeValue(arr81[3]); + machine->m_SignalStateWrapper->m_MoldDisconnectCylinderTriger->SetReatimeValue(arr81[4]); + machine->m_SignalStateWrapper->m_MoldDisconnectCylinderRun->SetReatimeValue(arr81[5]); + machine->m_SignalStateWrapper->m_MoldDisconnectCylinderFinished->SetReatimeValue(arr81[6]); + 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_MoldDeoxygenTriger->SetReatimeValue(arr84[0]); + machine->m_SignalStateWrapper->m_MoldDeoxygenRun->SetReatimeValue(arr84[1]); + machine->m_SignalStateWrapper->m_MoldDeoxygenFinished->SetReatimeValue(arr84[2]); + 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_MoldConnectCylinderEnable->SetReatimeValue(arr86[0]); + machine->m_SignalStateWrapper->m_MoldDisconnectCylinderEnable->SetReatimeValue(arr86[1]); + 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]); + machine->m_SignalStateWrapper->m_MoldDeoxygenEnable->SetReatimeValue(arr86[6]); + machine->m_SignalStateWrapper->m_CalcLoadSearchEdgeOffset->SetReatimeValue(arr86[7]); + + bitset<8> arr87(arr[87]); + machine->m_SignalStateWrapper->m_ManualTestOffset->SetReatimeValue(arr87[0]); + + 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_PrintSlaveServoNoAlarm->SetReatimeValue(arr89[0]); + + 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_CleanMainServoNoAlarm->SetReatimeValue(arr91[0]); + + bitset<8> arr92(arr[92]); + machine->m_SignalStateWrapper->m_PrintJackupInSplitePos->SetReatimeValue(arr92[0]); + machine->m_SignalStateWrapper->m_LoadTorqueInsideLimit->SetReatimeValue(arr92[1]); + machine->m_SignalStateWrapper->m_LoadPosInsideLeftSoftLimit->SetReatimeValue(arr92[2]); + machine->m_SignalStateWrapper->m_LoadPosInsideRightSoftLimit->SetReatimeValue(arr92[3]); + machine->m_SignalStateWrapper->m_PrintPressingInReleasePos->SetReatimeValue(arr92[4]); + machine->m_SignalStateWrapper->m_PrintJackupInDropPos->SetReatimeValue(arr92[5]); + machine->m_SignalStateWrapper->m_PrintSupportInAvoidPos->SetReatimeValue(arr92[6]); + machine->m_SignalStateWrapper->m_CleanPressingInReleasePos->SetReatimeValue(arr92[7]); + + bitset<8> arr93(arr[93]); + machine->m_SignalStateWrapper->m_CylinderFixInReleasePos->SetReatimeValue(arr93[0]); + machine->m_SignalStateWrapper->m_CleanBoxReleasePos->SetReatimeValue(arr93[1]); + 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_CleanAxisInCylinderSeparatePos->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_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_IsInPrint3RSeparatePos->SetReatimeValue(arr249[5]); //打印3R脱离位 + machine->m_SignalStateWrapper->m_IsInPrintDeoxygenLowestPos->SetReatimeValue(arr249[6]); //打印除氧最低位 + 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_IsInCleanPlatfromBottomPos->SetReatimeValue(arr250[2]); //清粉基板底座面 + machine->m_SignalStateWrapper->m_IsInClean3RSeparatePos->SetReatimeValue(arr250[3]); //清粉3R脱离位 + machine->m_SignalStateWrapper->m_IsInCleanLowestPos->SetReatimeValue(arr250[4]); //清粉最低面 + machine->m_SignalStateWrapper->m_IsInLoadPrintPos->SetReatimeValue(arr250[5]); //移载打印位 + machine->m_SignalStateWrapper->m_IsInLoadCleanPos->SetReatimeValue(arr250[6]); //移载清粉位 + machine->m_SignalStateWrapper->m_IsInLoadWaitPos->SetReatimeValue(arr250[7]); //移载等待位 + + 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]); + machine->m_AxisRecordWrapper->m_PCPrintUpDownOverLimitAlarm->SetReatimeValue(arr42[5]); + machine->m_AxisRecordWrapper->m_PCPrintUpDownOverLimitAlarmRemove->SetReatimeValue(arr42[6]); + machine->m_AxisRecordWrapper->m_PCCleanUpDownOverLimitAlarm->SetReatimeValue(arr42[7]); + + bitset<8> arr43(arr[43]); + machine->m_AxisRecordWrapper->m_PCCleanUpDownOverLimitAlarmRemove->SetReatimeValue(arr43[0]); + machine->m_AxisRecordWrapper->m_PCLoadOverLimitAlarm->SetReatimeValue(arr43[1]); + machine->m_AxisRecordWrapper->m_PCLoadOverLimitAlarmRemove->SetReatimeValue(arr43[2]); + machine->m_AxisRecordWrapper->m_PCArmOverLimitAlarm->SetReatimeValue(arr43[3]); + machine->m_AxisRecordWrapper->m_PCArmOverLimitAlarmRemove->SetReatimeValue(arr43[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_SheildPrintSupportCylinder->SetReatimeValue(arr0[4]); + machine->m_SignalStateWrapper->m_SheildLinearEncoder->SetReatimeValue(arr0[5]); + machine->m_SignalStateWrapper->m_LoadAxisUseSensorPos->SetReatimeValue(arr0[6]); + + bitset<8> arr1(arr[1]); + machine->m_SignalStateWrapper->m_RemoveIOActionLimit->SetReatimeValue(arr1[0]); //屏蔽前后定位气缸 + machine->m_SignalStateWrapper->m_SheildHighPressure->SetReatimeValue(arr1[2]); //屏蔽高压气 + machine->m_SignalStateWrapper->m_LoadPrintBackDistance->SetReatimeValue(arr1[4]); //移载打印在后退距离 + machine->m_SignalStateWrapper->m_UseArmCaptureHome->SetReatimeValue(arr1[5]); + machine->m_SignalStateWrapper->m_UseCapacityBar->SetReatimeValue(arr1[6]); + + } + + 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); + } + + if (pExt.Result==0) { + unsigned char* arr = (unsigned char*)pExt.pdata; + int flagtemp = 862; + int flag = 862 - flagtemp; + machine->m_SysParamWrapper->m_PrintHomeSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 866 - flagtemp; + machine->m_SysParamWrapper->m_CleanHomeSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 870 - flagtemp; + machine->m_SysParamWrapper->m_LoadHomeSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 874 - flagtemp; + machine->m_SysParamWrapper->m_LoadSearchEdgeTorqueAlarmValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 878 - flagtemp; + machine->m_SysParamWrapper->m_HighPressureGasJudgmentValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 882 - flagtemp; + machine->m_SysParamWrapper->m_ProtectiveGasJudgmentValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 886 - flagtemp; + machine->m_SysParamWrapper->m_UnloadDropDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 890 - flagtemp; + machine->m_SysParamWrapper->m_DataSizeMinY->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 894 - flagtemp; + machine->m_SysParamWrapper->m_DataSizeMaxY->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 898 - flagtemp; + machine->m_SysParamWrapper->m_AllowPrintHigh->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + + } +} + void HBD1500::ProcReadPLCData(void* pobject, Command* pcommand) { S7Command* s7Command = (S7Command*)pcommand; @@ -5813,420 +5813,421 @@ void HBD1500::ProcReadPLCData(void* pobject, Command* pcommand) 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->SetPushMsg(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_Clean->GetState()->UpdatePosAndLoad(&arr[flag]); -// flag = 148; -// machine->m_Axis->m_CleanSlave->GetState()->UpdatePosAndLoad(&arr[flag]); -// flag = 156; -// machine->m_Axis->m_Clean->GetConfig()->Update(&arr[flag]); -// flag = 176; -// machine->m_Axis->m_CleanSlave->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]); -// +// 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(machine->m_SysParamWrapper->mtx); -// flag = 280; -// machine->m_SysParamWrapper->m_MoldCylinderSeparatePos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 284; -// machine->m_SysParamWrapper->m_Print3RSeparatePos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 288; -// machine->m_SysParamWrapper->m_Print3RSeparateCheckDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 292; -// machine->m_SysParamWrapper->m_PrintJackupDeoxygenPressureMinPos->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_CleanAxisPlatformAlignPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// -// flag = 324; -// machine->m_SysParamWrapper->m_Clean3RSeparatePos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 328; -// machine->m_SysParamWrapper->m_Clean3RSeparateCheckDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 332; -// machine->m_SysParamWrapper->m_CleanLowestPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 336; -// machine->m_SysParamWrapper->m_CleanUpLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 340; -// machine->m_SysParamWrapper->m_CleanDownLimit->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_CleanAbsTestPos->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_CleanMainHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 432; -// machine->m_SysParamWrapper->m_CleanMainAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 436; -// machine->m_SysParamWrapper->m_CleanMainAlignHomeRel->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 440; -// machine->m_SysParamWrapper->m_CleanSlaveHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 444; -// machine->m_SysParamWrapper->m_CleanSlaveAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 448; -// machine->m_SysParamWrapper->m_CleanSlaveAlignHomeRel->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_CleanAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 476; -// machine->m_SysParamWrapper->m_CleanAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 480; -// machine->m_SysParamWrapper->m_CleanAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 484; -// machine->m_SysParamWrapper->m_CleanAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 488; -// machine->m_SysParamWrapper->m_CleanAutoAbsPos->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 = 564; -// machine->m_SysParamWrapper->m_Clean3RSeparatTorqueThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 568; -// machine->m_SysParamWrapper->m_CleanUpTorqueThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 572; -// machine->m_SysParamWrapper->m_CleanDownTorqueThreshold->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 = 630; -// machine->m_SysParamWrapper->m_CleanHighSpeed->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_CleanMainLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 690; -// machine->m_SysParamWrapper->m_CleanMainReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 694; -// machine->m_SysParamWrapper->m_CleanMainMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 698; -// machine->m_SysParamWrapper->m_CleanSlaveLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 702; -// machine->m_SysParamWrapper->m_CleanSlaveReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 706; -// machine->m_SysParamWrapper->m_CleanSlaveMaxRotationlSpeed->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); // } // -// //} + 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_Clean->GetState()->UpdatePosAndLoad(&arr[flag]); + flag = 148; + machine->m_Axis->m_CleanSlave->GetState()->UpdatePosAndLoad(&arr[flag]); + flag = 156; + machine->m_Axis->m_Clean->GetConfig()->Update(&arr[flag]); + flag = 176; + machine->m_Axis->m_CleanSlave->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_MoldCylinderSeparatePos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 284; + machine->m_SysParamWrapper->m_Print3RSeparatePos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 288; + machine->m_SysParamWrapper->m_Print3RSeparateCheckDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 292; + machine->m_SysParamWrapper->m_PrintJackupDeoxygenPressureMinPos->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_CleanAxisPlatformAlignPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + + flag = 324; + machine->m_SysParamWrapper->m_Clean3RSeparatePos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 328; + machine->m_SysParamWrapper->m_Clean3RSeparateCheckDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 332; + machine->m_SysParamWrapper->m_CleanLowestPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 336; + machine->m_SysParamWrapper->m_CleanUpLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 340; + machine->m_SysParamWrapper->m_CleanDownLimit->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_CleanAbsTestPos->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_CleanMainHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 432; + machine->m_SysParamWrapper->m_CleanMainAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 436; + machine->m_SysParamWrapper->m_CleanMainAlignHomeRel->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 440; + machine->m_SysParamWrapper->m_CleanSlaveHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 444; + machine->m_SysParamWrapper->m_CleanSlaveAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 448; + machine->m_SysParamWrapper->m_CleanSlaveAlignHomeRel->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_CleanAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 476; + machine->m_SysParamWrapper->m_CleanAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 480; + machine->m_SysParamWrapper->m_CleanAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 484; + machine->m_SysParamWrapper->m_CleanAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 488; + machine->m_SysParamWrapper->m_CleanAutoAbsPos->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 = 564; + machine->m_SysParamWrapper->m_Clean3RSeparatTorqueThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 568; + machine->m_SysParamWrapper->m_CleanUpTorqueThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 572; + machine->m_SysParamWrapper->m_CleanDownTorqueThreshold->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 = 630; + machine->m_SysParamWrapper->m_CleanHighSpeed->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_CleanMainLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 690; + machine->m_SysParamWrapper->m_CleanMainReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 694; + machine->m_SysParamWrapper->m_CleanMainMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 698; + machine->m_SysParamWrapper->m_CleanSlaveLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 702; + machine->m_SysParamWrapper->m_CleanSlaveReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 706; + machine->m_SysParamWrapper->m_CleanSlaveMaxRotationlSpeed->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); + } + + +} + //void HBD1500::GetAlarmState(SignalState& signalState) //{ // signalState.m_PLCKeepAlive = m_SignalStateWrapper->m_PLCKeepAlive->GetValue(); //PLC心跳-》PC diff --git a/PrintS/Machine/HBDE1000.cpp b/PrintS/Machine/HBDE1000.cpp index 5cc3422..4d5e719 100644 --- a/PrintS/Machine/HBDE1000.cpp +++ b/PrintS/Machine/HBDE1000.cpp @@ -2152,380 +2152,381 @@ void HBDE1000::ProcReadPLC(void* pobject, Command* pcommand) TS7DataItem pDB3Ext = pdataItems[6]; CoreCommunication* cc = (CoreCommunication*)machine->m_PLC; - for (int i = 0; i < itemcount; ++i) { - WriteData* data = new WriteData(); - data->dataType = WRITETYPE(i); - data->strValue = (char*)pdataItems[i].pdata; - data->result = true; - for (auto& client : machine->m_clientUser) { - client->SetPushMsg(data); - } - - } -} +// 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_BusAirSwitchAlarm->SetReatimeValue(arr56[5]); -// machine->m_SignalStateWrapper->m_ExtDevicePowerAirSwitchAlarm->SetReatimeValue(arr56[6]); -// machine->m_SignalStateWrapper->m_HeatingPowerAirSwitchAlarm->SetReatimeValue(arr56[7]); -// -// bitset<8> arr57(arr[57]); -// machine->m_SignalStateWrapper->m_LaserPowerAirSwitchAlarm->SetReatimeValue(arr57[0]); -// machine->m_SignalStateWrapper->m_ServoPowerAirSwitchAlarm->SetReatimeValue(arr57[1]); -// machine->m_SignalStateWrapper->m_Laser1Alarm->SetReatimeValue(arr57[2]); -// machine->m_SignalStateWrapper->m_Laser2Alarm->SetReatimeValue(arr57[3]); -// machine->m_SignalStateWrapper->m_Laser3Alarm->SetReatimeValue(arr57[4]); -// machine->m_SignalStateWrapper->m_Laser4Alarm->SetReatimeValue(arr57[5]); -// machine->m_SignalStateWrapper->m_HeatingAlarm->SetReatimeValue(arr57[6]); -// -// bitset<8> arr58(arr[58]); -// machine->m_SignalStateWrapper->m_PrintStorageCar1JarFullWarn->SetReatimeValue(arr58[0]); -// machine->m_SignalStateWrapper->m_PrintStorageCar1DisconnectWarn->SetReatimeValue(arr58[1]); -// machine->m_SignalStateWrapper->m_CleanStorageCar1JarFullWarn->SetReatimeValue(arr58[2]); -// machine->m_SignalStateWrapper->m_CleanStorageCar1DisconnectWarn->SetReatimeValue(arr58[3]); -// machine->m_SignalStateWrapper->m_MoldMainUpLimitActive->SetReatimeValue(arr58[4]); -// machine->m_SignalStateWrapper->m_MoldMainDownLimitActive->SetReatimeValue(arr58[5]); -// machine->m_SignalStateWrapper->m_UpsAlarm->SetReatimeValue(arr58[6]); -// machine->m_SignalStateWrapper->m_Laser5Alarm->SetReatimeValue(arr58[7]); -// -// bitset<8> arr59(arr[59]); -// machine->m_SignalStateWrapper->m_Laser6Alarm->SetReatimeValue(arr59[0]); -// machine->m_SignalStateWrapper->m_Laser7Alarm->SetReatimeValue(arr59[1]); -// machine->m_SignalStateWrapper->m_Laser8Alarm->SetReatimeValue(arr59[2]); -// machine->m_SignalStateWrapper->m_PrintTrackDisableWarn->SetReatimeValue(arr59[3]); -// -// bitset<8> arr60(arr[60]); -// machine->m_SignalStateWrapper->m_CylinderLinerSealReleaseValveException->SetReatimeValue(arr60[3]); -// -// bitset<8> arr61(arr[61]); -// machine->m_SignalStateWrapper->m_CleanTrackPosDisableAlarm->SetReatimeValue(arr61[4]); -// machine->m_SignalStateWrapper->m_CleanLiftStopAlarm->SetReatimeValue(arr61[5]); -// machine->m_SignalStateWrapper->m_LoadHandPosSensorDiable->SetReatimeValue(arr61[6]); -// machine->m_SignalStateWrapper->m_MainPowerLossCheckAlarm->SetReatimeValue(arr61[7]); -// -// bitset<8> arr62(arr[62]); -// machine->m_SignalStateWrapper->m_PrintCabinLockDisableAlarm->SetReatimeValue(arr62[0]); -// machine->m_SignalStateWrapper->m_CleanBoxFoldUpException->SetReatimeValue(arr62[1]); -// machine->m_SignalStateWrapper->m_CleanBoxFoldDownException->SetReatimeValue(arr62[2]); -// machine->m_SignalStateWrapper->m_CylinderHandPlatformOpenAlarm->SetReatimeValue(arr62[3]); -// machine->m_SignalStateWrapper->m_CylinderHandDoorOpenAlarm->SetReatimeValue(arr62[4]); -// machine->m_SignalStateWrapper->m_SecurityCarpetTriggered->SetReatimeValue(arr62[5]); -// machine->m_SignalStateWrapper->m_RailNotInOpenOrClosePos->SetReatimeValue(arr62[6]); -// machine->m_SignalStateWrapper->m_HandPlatformCloseAlarm->SetReatimeValue(arr62[7]); -// -// bitset<8> arr64(arr[64]); -// machine->m_SignalStateWrapper->m_ArmFrontLimit->SetReatimeValue(arr64[3]); -// machine->m_SignalStateWrapper->m_ArmBackLimit->SetReatimeValue(arr64[4]); -// machine->m_SignalStateWrapper->m_LoadAxisLeftLimit->SetReatimeValue(arr64[5]); -// machine->m_SignalStateWrapper->m_LoadAxisRightLimit->SetReatimeValue(arr64[6]); -// -// bitset<8> arr65(arr[65]); -// machine->m_SignalStateWrapper->m_SupplyHomeIndexDisableAlarm->SetReatimeValue(arr65[7]); -// -// bitset<8> arr66(arr[66]); -// machine->m_SignalStateWrapper->m_PrintPressureOverLimitAlarm->SetReatimeValue(arr66[4]); -// machine->m_SignalStateWrapper->m_TotalWaterCoolerAlarm->SetReatimeValue(arr66[6]); -// machine->m_SignalStateWrapper->m_MoldTorqueAlarm->SetReatimeValue(arr66[7]); -// -// bitset<8> arr67(arr[67]); -// machine->m_SignalStateWrapper->m_LoadTorqueAlarm->SetReatimeValue(arr67[3]); -// machine->m_SignalStateWrapper->m_ArmTorqueAlarm->SetReatimeValue(arr67[4]); -// machine->m_SignalStateWrapper->m_SupplyTorqueAlarm->SetReatimeValue(arr67[5]); -// machine->m_SignalStateWrapper->m_GratingRulerFail->SetReatimeValue(arr67[6]); -// machine->m_SignalStateWrapper->m_PrintMainOverSoftUpLimit->SetReatimeValue(arr67[7]); -// -// bitset<8> arr68(arr[68]); -// machine->m_SignalStateWrapper->m_PrintMainOverSoftDownLimit->SetReatimeValue(arr68[0]); -// machine->m_SignalStateWrapper->m_LoadAxisOverSoftLeftLimit->SetReatimeValue(arr68[3]); -// machine->m_SignalStateWrapper->m_LoadAxisOverSoftRightLimit->SetReatimeValue(arr68[4]); -// machine->m_SignalStateWrapper->m_ArmOverSoftFrontLimit->SetReatimeValue(arr68[5]); -// machine->m_SignalStateWrapper->m_ArmOverSoftBackLimit->SetReatimeValue(arr68[6]); -// machine->m_SignalStateWrapper->m_PrintStorageCar2JarFullWarn->SetReatimeValue(arr68[7]); -// -// bitset<8> arr69(arr[69]); -// machine->m_SignalStateWrapper->m_PrintStorageCar2DisconnectWarn->SetReatimeValue(arr69[0]); -// machine->m_SignalStateWrapper->m_CleanStorageCar2JarFullWarn->SetReatimeValue(arr69[1]); -// machine->m_SignalStateWrapper->m_CleanStorageCar2DisconnectWarn->SetReatimeValue(arr69[2]); -// machine->m_SignalStateWrapper->m_CoverBaffleNotInFrontAcceptPos->SetReatimeValue(arr69[3]); -// machine->m_SignalStateWrapper->m_CoverBaffleNotInDropPos->SetReatimeValue(arr69[4]); -// machine->m_SignalStateWrapper->m_ArmMoveBackAcceptPosException->SetReatimeValue(arr69[5]); -// machine->m_SignalStateWrapper->m_UpServiceDoorOpenWarn->SetReatimeValue(arr69[6]); -// machine->m_SignalStateWrapper->m_DownServiceDoorOpenWarn->SetReatimeValue(arr69[7]); -// -// bitset<8> arr70(arr[70]); -// machine->m_SignalStateWrapper->m_LoadAxisManualAlarmSignal->SetReatimeValue(arr70[1]); -// machine->m_SignalStateWrapper->m_PrintMainServoAlarmSignal->SetReatimeValue(arr70[2]); -// machine->m_SignalStateWrapper->m_LoadAxisServoAlarmSignal->SetReatimeValue(arr70[3]); -// machine->m_SignalStateWrapper->m_ArmServoAlarmSignal->SetReatimeValue(arr70[4]); -// machine->m_SignalStateWrapper->m_SupplyServoAlarmSignal->SetReatimeValue(arr70[5]); -// -// bitset<8> arr71(arr[71]); -// machine->m_SignalStateWrapper->m_CoverReachAcceptPowderAlarmSignal->SetReatimeValue(arr71[2]); -// machine->m_SignalStateWrapper->m_CoverReachDropPowderAlarmSignal->SetReatimeValue(arr71[3]); -// machine->m_SignalStateWrapper->m_LinearEncoderCheckAlarmSignal->SetReatimeValue(arr71[5]); -// machine->m_SignalStateWrapper->m_PrintMainSoftStopTrigger->SetReatimeValue(arr71[6]); -// -// bitset<8> arr72(arr[72]); -// machine->m_SignalStateWrapper->m_LoadAxisSoftStopTrigger->SetReatimeValue(arr72[0]); -// machine->m_SignalStateWrapper->m_CoverSoftStopTrigger->SetReatimeValue(arr72[1]); -// machine->m_SignalStateWrapper->m_CoverHomeException->SetReatimeValue(arr72[2]); -// machine->m_SignalStateWrapper->m_CylinderSealInflationFailureAlarm->SetReatimeValue(arr72[3]); -// machine->m_SignalStateWrapper->m_CylinderSealInflationHighPressureAlarm->SetReatimeValue(arr72[4]); -// machine->m_SignalStateWrapper->m_CylinderSealLeakageWarn->SetReatimeValue(arr72[5]); -// machine->m_SignalStateWrapper->m_SealPressureExceptionWhenPrint->SetReatimeValue(arr72[6]); -// -// machine->m_SignalStateWrapper->m_CylinderState->SetReatimeValue(S7WORDDATA(arr[79], arr[78]).wValue); -// -// bitset<8> arr80(arr[80]); -// machine->m_SignalStateWrapper->m_CylinderReachPrintTriger->SetReatimeValue(arr80[0]); -// machine->m_SignalStateWrapper->m_CylinderReachPrintRun->SetReatimeValue(arr80[1]); -// machine->m_SignalStateWrapper->m_CylinderReachPrintFinished->SetReatimeValue(arr80[2]); -// machine->m_SignalStateWrapper->m_CylinderPrintLoadTriger->SetReatimeValue(arr80[3]); -// machine->m_SignalStateWrapper->m_CylinderPrintLoadRun->SetReatimeValue(arr80[4]); -// machine->m_SignalStateWrapper->m_CylinderPrintLoadFinished->SetReatimeValue(arr80[5]); -// machine->m_SignalStateWrapper->m_CylinderPrintUnloadTriger->SetReatimeValue(arr80[6]); -// machine->m_SignalStateWrapper->m_CylinderPrintUnloadRun->SetReatimeValue(arr80[7]); -// -// bitset<8> arr81(arr[81]); -// machine->m_SignalStateWrapper->m_CylinderPrintUnloadFinished->SetReatimeValue(arr81[0]); -// machine->m_SignalStateWrapper->m_CylinderReachCleanTriger->SetReatimeValue(arr81[7]); -// -// bitset<8> arr82(arr[82]); -// machine->m_SignalStateWrapper->m_CylinderReachCleanRun->SetReatimeValue(arr82[0]); -// machine->m_SignalStateWrapper->m_CylinderReachCleanFinished->SetReatimeValue(arr82[1]); -// machine->m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger->SetReatimeValue(arr82[2]); -// machine->m_SignalStateWrapper->m_CylinderConnectCleanBoxRun->SetReatimeValue(arr82[3]); -// machine->m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->SetReatimeValue(arr82[4]); -// machine->m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger->SetReatimeValue(arr82[5]); -// machine->m_SignalStateWrapper->m_CylinderDisconnectCleanBoxRun->SetReatimeValue(arr82[6]); -// machine->m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->SetReatimeValue(arr82[7]); -// -// bitset<8> arr83(arr[83]); -// machine->m_SignalStateWrapper->m_CoverTriger->SetReatimeValue(arr83[0]); -// machine->m_SignalStateWrapper->m_IsCovering->SetReatimeValue(arr83[1]); -// machine->m_SignalStateWrapper->m_IsCoverFinishedCanPrint->SetReatimeValue(arr83[2]); -// machine->m_SignalStateWrapper->m_IsCoverDebug->SetReatimeValue(arr83[3]); -// machine->m_SignalStateWrapper->m_IsFirstCover->SetReatimeValue(arr83[4]); -// machine->m_SignalStateWrapper->m_PrintDeoxygenTriger->SetReatimeValue(arr83[5]); -// machine->m_SignalStateWrapper->m_PrintDeoxygenRun->SetReatimeValue(arr83[6]); -// machine->m_SignalStateWrapper->m_PrintDeoxygenFinished->SetReatimeValue(arr83[7]); -// -// bitset<8> arr84(arr[84]); -// machine->m_SignalStateWrapper->m_StorgeCarDeoxygenTriger->SetReatimeValue(arr84[3]); -// machine->m_SignalStateWrapper->m_StorgeCarDeoxygenRun->SetReatimeValue(arr84[4]); -// machine->m_SignalStateWrapper->m_StorgeCarDeoxygenFinished->SetReatimeValue(arr84[5]); -// machine->m_SignalStateWrapper->m_CleanBoxVacuumTriger->SetReatimeValue(arr84[6]); -// -// bitset<8> arr85(arr[85]); -// machine->m_SignalStateWrapper->m_RasterJudgeOK->SetReatimeValue(arr85[3]); -// machine->m_SignalStateWrapper->m_RasterJudgeNG->SetReatimeValue(arr85[4]); -// machine->m_SignalStateWrapper->m_CylinderReachPrintEnable->SetReatimeValue(arr85[5]); -// machine->m_SignalStateWrapper->m_CylinderPrintLoadEnable->SetReatimeValue(arr85[6]); -// machine->m_SignalStateWrapper->m_CylinderPrintUnloadEnable->SetReatimeValue(arr85[7]); -// -// bitset<8> arr86(arr[86]); -// machine->m_SignalStateWrapper->m_CylinderReachCleanEnable->SetReatimeValue(arr86[2]); -// machine->m_SignalStateWrapper->m_CylinderConnectCleanBoxEnable->SetReatimeValue(arr86[3]); -// machine->m_SignalStateWrapper->m_CylinderDisconnectCleanBoxEnable->SetReatimeValue(arr86[4]); -// machine->m_SignalStateWrapper->m_CoverEnable->SetReatimeValue(arr86[5]); -// -// bitset<8> arr88(arr[88]); -// machine->m_SignalStateWrapper->m_PrintTorqueUpInsideLimit->SetReatimeValue(arr88[0]); -// machine->m_SignalStateWrapper->m_ArmNotUponBasePlatform->SetReatimeValue(arr88[1]); -// machine->m_SignalStateWrapper->m_PrintMoldPosInsideUpSoftLimit->SetReatimeValue(arr88[2]); -// machine->m_SignalStateWrapper->m_PrintInsideUpLimit->SetReatimeValue(arr88[3]); -// machine->m_SignalStateWrapper->m_PrintTorqueDownInsideLimit->SetReatimeValue(arr88[4]); -// machine->m_SignalStateWrapper->m_PrintAxisPosInsideDownSoftLimit->SetReatimeValue(arr88[5]); -// machine->m_SignalStateWrapper->m_PrintInsideDownLimit->SetReatimeValue(arr88[6]); -// machine->m_SignalStateWrapper->m_PrintMainServoNoAlarm->SetReatimeValue(arr88[7]); -// -// bitset<8> arr89(arr[89]); -// machine->m_SignalStateWrapper->m_PrintMoldInPrintPos->SetReatimeValue(arr89[0]); -// machine->m_SignalStateWrapper->m_PrintMoldInCleanPos->SetReatimeValue(arr89[1]); -// machine->m_SignalStateWrapper->m_PrintMoldInHandPos->SetReatimeValue(arr89[2]); -// machine->m_SignalStateWrapper->m_MoldUpDownServiceDoorCloseStatue->SetReatimeValue(arr89[3]); -// -// -// bitset<8> arr92(arr[92]); -// machine->m_SignalStateWrapper->m_PrintJackupInSafePos->SetReatimeValue(arr92[0]); -// machine->m_SignalStateWrapper->m_LoadTorqueInsideLimit->SetReatimeValue(arr92[1]); -// machine->m_SignalStateWrapper->m_LoadPosInsideLeftSoftLimit->SetReatimeValue(arr92[2]); -// machine->m_SignalStateWrapper->m_LoadPosInsideRightSoftLimit->SetReatimeValue(arr92[3]); -// machine->m_SignalStateWrapper->m_CylinderSealNoInflationStatue->SetReatimeValue(arr92[4]); -// machine->m_SignalStateWrapper->m_LoadUpDownServiceDoorCloseStatue->SetReatimeValue(arr92[5]); -// -// bitset<8> arr93(arr[93]); -// machine->m_SignalStateWrapper->m_LoadLeftNotInsideLimit->SetReatimeValue(arr93[2]); -// machine->m_SignalStateWrapper->m_LoadRightNotInsideLimit->SetReatimeValue(arr93[3]); -// machine->m_SignalStateWrapper->m_LoadServoNoAlarm->SetReatimeValue(arr93[4]); -// -// bitset<8> arr94(arr[94]); -// machine->m_SignalStateWrapper->m_PrintUpDownPosBelowPlatform->SetReatimeValue(arr94[0]); -// machine->m_SignalStateWrapper->m_ArmTorqueInsideLimit->SetReatimeValue(arr94[1]); -// machine->m_SignalStateWrapper->m_ArmPosInsideSoftFrontLimit->SetReatimeValue(arr94[2]); -// machine->m_SignalStateWrapper->m_ArmPosInsideSoftBackLimit->SetReatimeValue(arr94[3]); -// machine->m_SignalStateWrapper->m_ArmPosInsideFrontLimit->SetReatimeValue(arr94[4]); -// machine->m_SignalStateWrapper->m_ArmPosInsideBackLimit->SetReatimeValue(arr94[5]); -// machine->m_SignalStateWrapper->m_ArmServoNoAlarm->SetReatimeValue(arr94[6]); -// -// bitset<8> arr96(arr[96]); -// machine->m_SignalStateWrapper->m_CylinderMoveHandPosEnable->SetReatimeValue(arr96[2]); -// machine->m_SignalStateWrapper->m_CylinderMoveHandPos->SetReatimeValue(arr96[3]); -// machine->m_SignalStateWrapper->m_CylinderMovingHandPos->SetReatimeValue(arr96[4]); -// machine->m_SignalStateWrapper->m_CylinderMovedHandPos->SetReatimeValue(arr96[5]); -// machine->m_SignalStateWrapper->m_PrintAirRenewalEnable->SetReatimeValue(arr96[6]); -// machine->m_SignalStateWrapper->m_PrintAirRenewalTrigger->SetReatimeValue(arr96[7]); -// -// bitset<8> arr97(arr[97]); -// machine->m_SignalStateWrapper->m_AllowRiseWindSpeed->SetReatimeValue(arr97[0]); -// machine->m_SignalStateWrapper->m_ManualCoverTest->SetReatimeValue(arr97[1]); -// machine->m_SignalStateWrapper->m_RollerEdgeSearching->SetReatimeValue(arr97[2]); -// machine->m_SignalStateWrapper->m_RollerEdgeSearchSuccess->SetReatimeValue(arr97[3]); -// machine->m_SignalStateWrapper->m_RollerEdgeSearchFaild->SetReatimeValue(arr97[4]); -// } -// -// if (pAxisState.Result == 0) { -// unsigned char* arr = (unsigned char*)pAxisState.pdata; -// bitset<8> arr249(arr[0]); -// machine->m_SignalStateWrapper->m_IsInPrintCylinderSeparatePos->SetReatimeValue(arr249[4]); //打印缸体分离位 -// machine->m_SignalStateWrapper->m_IsInPrintPlatformBottomPos->SetReatimeValue(arr249[7]); //打印基板底座面 -// -// bitset<8> arr250(arr[1]); -// machine->m_SignalStateWrapper->m_IsInPrintPlatformFlatPos->SetReatimeValue(arr250[0]); //打印基板平面 -// machine->m_SignalStateWrapper->m_IsInLoadPrintPos->SetReatimeValue(arr250[5]); //移载打印位 -// machine->m_SignalStateWrapper->m_IsInLoadCleanPos->SetReatimeValue(arr250[6]); //移载清粉位 -// -// bitset<8> arr251(arr[2]); -// machine->m_SignalStateWrapper->m_IsInDropPowderPos->SetReatimeValue(arr251[0]); //铺粉下粉位 -// machine->m_SignalStateWrapper->m_IsInAcceptPowderPos->SetReatimeValue(arr251[1]); //铺粉接粉位 -// } -// -// if (pAxisCtrl.Result == 0) { -// unsigned char* arr = (unsigned char*)pAxisCtrl.pdata; -// machine->m_Axis->m_Mold->GetState()->Update(arr); -// machine->m_Axis->m_MoldSlave->GetState()->Update(arr + 6); -// machine->m_Axis->m_Clean->GetState()->Update(arr + 12); -// machine->m_Axis->m_Ele->GetState()->Update(arr + 12); -// machine->m_Axis->m_CleanSlave->GetState()->Update(arr + 18); -// machine->m_Axis->m_EleSlave->GetState()->Update(arr + 18); -// machine->m_Axis->m_Load->GetState()->Update(arr + 24); -// machine->m_Axis->m_Arm->GetState()->Update(arr + 28); -// machine->m_Axis->m_Supply->GetState()->Update(arr + 32); -// -// bitset<8> arr41(arr[41]); -// machine->m_AxisRecordWrapper->m_DisableMoldTorqueCheck->SetReatimeValue(arr41[6]); -// -// bitset<8> arr42(arr[42]); -// machine->m_AxisRecordWrapper->m_DisableLoadTorqueCheck->SetReatimeValue(arr42[0]); -// machine->m_AxisRecordWrapper->m_DisableArmTorqueCheck->SetReatimeValue(arr42[1]); -// machine->m_AxisRecordWrapper->m_DisableSupplyTorqueCheck->SetReatimeValue(arr42[2]); -// machine->m_AxisRecordWrapper->m_LoadHandPosRecord->SetReatimeValue(arr42[3]); -// machine->m_AxisRecordWrapper->m_LoadHandCrashPosRecord->SetReatimeValue(arr42[4]); -// machine->m_AxisRecordWrapper->m_ArmBackAcceptPosRecord->SetReatimeValue(arr42[5]); -// } -// -// if (pPersistState.Result == 0) { -// unsigned char* arr = (unsigned char*)pPersistState.pdata; -// bitset<8> arr0(arr[0]); -// machine->m_SignalStateWrapper->m_UseSupplySearchEdge->SetReatimeValue(arr0[1]); -// machine->m_SignalStateWrapper->m_SheildLinearEncoder->SetReatimeValue(arr0[5]); -// -// bitset<8> arr1(arr[1]); -// machine->m_SignalStateWrapper->m_SheilServoEmptyOpen->SetReatimeValue(arr1[0]); //屏蔽伺服空开 -// machine->m_SignalStateWrapper->m_SheildHighPressure->SetReatimeValue(arr1[2]); //屏蔽高压气 -// machine->m_SignalStateWrapper->m_UnuseCoverReachSensor->SetReatimeValue(arr1[3]); //不使用铺粉轴到位感应器 -// machine->m_SignalStateWrapper->m_UseCoverBaffleSensor->SetReatimeValue(arr1[4]); -// machine->m_SignalStateWrapper->m_UseArmCaptureHome->SetReatimeValue(arr1[5]); -// machine->m_SignalStateWrapper->m_LinearEncoderOppDirection->SetReatimeValue(arr1[7]); -// -// bitset<8> arr2(arr[2]); -// machine->m_SignalStateWrapper->m_CoverV2UseCintinueMode->SetReatimeValue(arr2[0]); -// machine->m_SignalStateWrapper->m_UseCoverShiftSpeed->SetReatimeValue(arr2[1]); -// } -// -// if (pTimeSet.Result == 0) -// { -// unsigned char* arr = (unsigned char*)pTimeSet.pdata; -// int flag = 0; -// machine->m_SysParamWrapper->m_HeatingCheckTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); flag += 4; -// machine->m_SysParamWrapper->m_CylinderMotionDelayTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); flag += 4; -// machine->m_SysParamWrapper->m_LinearEncoderCompensateTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); flag += 4; -// machine->m_SysParamWrapper->m_DropPowderOpenDeleyTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); flag += 4; -// machine->m_SysParamWrapper->m_DropPowderCloseDelayTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); -// } -// -// if (pCapture.Result == 0) { -// unsigned char* arr = (unsigned char*)pCapture.pdata; -// int flag = 0; -// machine->m_SysParamWrapper->m_AutoCaptureCoverHomeIntervalTimes->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag += 2; -// machine->m_SysParamWrapper->m_AutoCaptureCoverHomeCalcTimes->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag += 2; -// machine->m_SysParamWrapper->m_LinearEncoderCompensateTimes->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag += 2; -// machine->m_SysParamWrapper->m_LaserCount->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag += 2; -// machine->m_SysParamWrapper->m_SealPressureHoldingAlarmTime->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); -// } -// -// if (pDB3Ext.Result == 0) -// { -// unsigned char* arr = (unsigned char*)pDB3Ext.pdata; -// int flagtemp = 874; -// int flag = 874- flagtemp; -// machine->m_SysParamWrapper->m_ArmBackAcceptPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 878 - flagtemp; -// machine->m_SysParamWrapper->m_HighPressureGasJudgmentValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 882 - flagtemp; -// machine->m_SysParamWrapper->m_ProtectiveGasJudgmentValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 890 - flagtemp; -// machine->m_SysParamWrapper->m_DataSizeMinY->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 894 - flagtemp; -// machine->m_SysParamWrapper->m_DataSizeMaxY->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 898 - flagtemp; -// machine->m_SysParamWrapper->m_SealPressure->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 902 - flagtemp; -// machine->m_SysParamWrapper->m_SealPressureReleaseValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 906 - flagtemp; -// machine->m_SysParamWrapper->m_SealInflatableUpLimitValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 910 - flagtemp; -// machine->m_SysParamWrapper->m_SealInflatableDownLimitValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 914 - flagtemp; -// machine->m_SysParamWrapper->m_Oxygen1CompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 918 - flagtemp; -// machine->m_SysParamWrapper->m_Oxygen2CompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 922 - flagtemp; -// machine->m_SysParamWrapper->m_PowderStickCompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 926 - flagtemp; -// machine->m_SysParamWrapper->m_PrintCabinPressureCompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 930 - flagtemp; -// machine->m_SysParamWrapper->m_SealPressureCompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 934 - flagtemp; -// machine->m_SysParamWrapper->m_HighPressureGasCompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 938 - flagtemp; -// machine->m_SysParamWrapper->m_ProtectiveGasCompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); // } //} -// + + + 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_BusAirSwitchAlarm->SetReatimeValue(arr56[5]); + machine->m_SignalStateWrapper->m_ExtDevicePowerAirSwitchAlarm->SetReatimeValue(arr56[6]); + machine->m_SignalStateWrapper->m_HeatingPowerAirSwitchAlarm->SetReatimeValue(arr56[7]); + + bitset<8> arr57(arr[57]); + machine->m_SignalStateWrapper->m_LaserPowerAirSwitchAlarm->SetReatimeValue(arr57[0]); + machine->m_SignalStateWrapper->m_ServoPowerAirSwitchAlarm->SetReatimeValue(arr57[1]); + machine->m_SignalStateWrapper->m_Laser1Alarm->SetReatimeValue(arr57[2]); + machine->m_SignalStateWrapper->m_Laser2Alarm->SetReatimeValue(arr57[3]); + machine->m_SignalStateWrapper->m_Laser3Alarm->SetReatimeValue(arr57[4]); + machine->m_SignalStateWrapper->m_Laser4Alarm->SetReatimeValue(arr57[5]); + machine->m_SignalStateWrapper->m_HeatingAlarm->SetReatimeValue(arr57[6]); + + bitset<8> arr58(arr[58]); + machine->m_SignalStateWrapper->m_PrintStorageCar1JarFullWarn->SetReatimeValue(arr58[0]); + machine->m_SignalStateWrapper->m_PrintStorageCar1DisconnectWarn->SetReatimeValue(arr58[1]); + machine->m_SignalStateWrapper->m_CleanStorageCar1JarFullWarn->SetReatimeValue(arr58[2]); + machine->m_SignalStateWrapper->m_CleanStorageCar1DisconnectWarn->SetReatimeValue(arr58[3]); + machine->m_SignalStateWrapper->m_MoldMainUpLimitActive->SetReatimeValue(arr58[4]); + machine->m_SignalStateWrapper->m_MoldMainDownLimitActive->SetReatimeValue(arr58[5]); + machine->m_SignalStateWrapper->m_UpsAlarm->SetReatimeValue(arr58[6]); + machine->m_SignalStateWrapper->m_Laser5Alarm->SetReatimeValue(arr58[7]); + + bitset<8> arr59(arr[59]); + machine->m_SignalStateWrapper->m_Laser6Alarm->SetReatimeValue(arr59[0]); + machine->m_SignalStateWrapper->m_Laser7Alarm->SetReatimeValue(arr59[1]); + machine->m_SignalStateWrapper->m_Laser8Alarm->SetReatimeValue(arr59[2]); + machine->m_SignalStateWrapper->m_PrintTrackDisableWarn->SetReatimeValue(arr59[3]); + + bitset<8> arr60(arr[60]); + machine->m_SignalStateWrapper->m_CylinderLinerSealReleaseValveException->SetReatimeValue(arr60[3]); + + bitset<8> arr61(arr[61]); + machine->m_SignalStateWrapper->m_CleanTrackPosDisableAlarm->SetReatimeValue(arr61[4]); + machine->m_SignalStateWrapper->m_CleanLiftStopAlarm->SetReatimeValue(arr61[5]); + machine->m_SignalStateWrapper->m_LoadHandPosSensorDiable->SetReatimeValue(arr61[6]); + machine->m_SignalStateWrapper->m_MainPowerLossCheckAlarm->SetReatimeValue(arr61[7]); + + bitset<8> arr62(arr[62]); + machine->m_SignalStateWrapper->m_PrintCabinLockDisableAlarm->SetReatimeValue(arr62[0]); + machine->m_SignalStateWrapper->m_CleanBoxFoldUpException->SetReatimeValue(arr62[1]); + machine->m_SignalStateWrapper->m_CleanBoxFoldDownException->SetReatimeValue(arr62[2]); + machine->m_SignalStateWrapper->m_CylinderHandPlatformOpenAlarm->SetReatimeValue(arr62[3]); + machine->m_SignalStateWrapper->m_CylinderHandDoorOpenAlarm->SetReatimeValue(arr62[4]); + machine->m_SignalStateWrapper->m_SecurityCarpetTriggered->SetReatimeValue(arr62[5]); + machine->m_SignalStateWrapper->m_RailNotInOpenOrClosePos->SetReatimeValue(arr62[6]); + machine->m_SignalStateWrapper->m_HandPlatformCloseAlarm->SetReatimeValue(arr62[7]); + + bitset<8> arr64(arr[64]); + machine->m_SignalStateWrapper->m_ArmFrontLimit->SetReatimeValue(arr64[3]); + machine->m_SignalStateWrapper->m_ArmBackLimit->SetReatimeValue(arr64[4]); + machine->m_SignalStateWrapper->m_LoadAxisLeftLimit->SetReatimeValue(arr64[5]); + machine->m_SignalStateWrapper->m_LoadAxisRightLimit->SetReatimeValue(arr64[6]); + + bitset<8> arr65(arr[65]); + machine->m_SignalStateWrapper->m_SupplyHomeIndexDisableAlarm->SetReatimeValue(arr65[7]); + + bitset<8> arr66(arr[66]); + machine->m_SignalStateWrapper->m_PrintPressureOverLimitAlarm->SetReatimeValue(arr66[4]); + machine->m_SignalStateWrapper->m_TotalWaterCoolerAlarm->SetReatimeValue(arr66[6]); + machine->m_SignalStateWrapper->m_MoldTorqueAlarm->SetReatimeValue(arr66[7]); + + bitset<8> arr67(arr[67]); + machine->m_SignalStateWrapper->m_LoadTorqueAlarm->SetReatimeValue(arr67[3]); + machine->m_SignalStateWrapper->m_ArmTorqueAlarm->SetReatimeValue(arr67[4]); + machine->m_SignalStateWrapper->m_SupplyTorqueAlarm->SetReatimeValue(arr67[5]); + machine->m_SignalStateWrapper->m_GratingRulerFail->SetReatimeValue(arr67[6]); + machine->m_SignalStateWrapper->m_PrintMainOverSoftUpLimit->SetReatimeValue(arr67[7]); + + bitset<8> arr68(arr[68]); + machine->m_SignalStateWrapper->m_PrintMainOverSoftDownLimit->SetReatimeValue(arr68[0]); + machine->m_SignalStateWrapper->m_LoadAxisOverSoftLeftLimit->SetReatimeValue(arr68[3]); + machine->m_SignalStateWrapper->m_LoadAxisOverSoftRightLimit->SetReatimeValue(arr68[4]); + machine->m_SignalStateWrapper->m_ArmOverSoftFrontLimit->SetReatimeValue(arr68[5]); + machine->m_SignalStateWrapper->m_ArmOverSoftBackLimit->SetReatimeValue(arr68[6]); + machine->m_SignalStateWrapper->m_PrintStorageCar2JarFullWarn->SetReatimeValue(arr68[7]); + + bitset<8> arr69(arr[69]); + machine->m_SignalStateWrapper->m_PrintStorageCar2DisconnectWarn->SetReatimeValue(arr69[0]); + machine->m_SignalStateWrapper->m_CleanStorageCar2JarFullWarn->SetReatimeValue(arr69[1]); + machine->m_SignalStateWrapper->m_CleanStorageCar2DisconnectWarn->SetReatimeValue(arr69[2]); + machine->m_SignalStateWrapper->m_CoverBaffleNotInFrontAcceptPos->SetReatimeValue(arr69[3]); + machine->m_SignalStateWrapper->m_CoverBaffleNotInDropPos->SetReatimeValue(arr69[4]); + machine->m_SignalStateWrapper->m_ArmMoveBackAcceptPosException->SetReatimeValue(arr69[5]); + machine->m_SignalStateWrapper->m_UpServiceDoorOpenWarn->SetReatimeValue(arr69[6]); + machine->m_SignalStateWrapper->m_DownServiceDoorOpenWarn->SetReatimeValue(arr69[7]); + + bitset<8> arr70(arr[70]); + machine->m_SignalStateWrapper->m_LoadAxisManualAlarmSignal->SetReatimeValue(arr70[1]); + machine->m_SignalStateWrapper->m_PrintMainServoAlarmSignal->SetReatimeValue(arr70[2]); + machine->m_SignalStateWrapper->m_LoadAxisServoAlarmSignal->SetReatimeValue(arr70[3]); + machine->m_SignalStateWrapper->m_ArmServoAlarmSignal->SetReatimeValue(arr70[4]); + machine->m_SignalStateWrapper->m_SupplyServoAlarmSignal->SetReatimeValue(arr70[5]); + + bitset<8> arr71(arr[71]); + machine->m_SignalStateWrapper->m_CoverReachAcceptPowderAlarmSignal->SetReatimeValue(arr71[2]); + machine->m_SignalStateWrapper->m_CoverReachDropPowderAlarmSignal->SetReatimeValue(arr71[3]); + machine->m_SignalStateWrapper->m_LinearEncoderCheckAlarmSignal->SetReatimeValue(arr71[5]); + machine->m_SignalStateWrapper->m_PrintMainSoftStopTrigger->SetReatimeValue(arr71[6]); + + bitset<8> arr72(arr[72]); + machine->m_SignalStateWrapper->m_LoadAxisSoftStopTrigger->SetReatimeValue(arr72[0]); + machine->m_SignalStateWrapper->m_CoverSoftStopTrigger->SetReatimeValue(arr72[1]); + machine->m_SignalStateWrapper->m_CoverHomeException->SetReatimeValue(arr72[2]); + machine->m_SignalStateWrapper->m_CylinderSealInflationFailureAlarm->SetReatimeValue(arr72[3]); + machine->m_SignalStateWrapper->m_CylinderSealInflationHighPressureAlarm->SetReatimeValue(arr72[4]); + machine->m_SignalStateWrapper->m_CylinderSealLeakageWarn->SetReatimeValue(arr72[5]); + machine->m_SignalStateWrapper->m_SealPressureExceptionWhenPrint->SetReatimeValue(arr72[6]); + + machine->m_SignalStateWrapper->m_CylinderState->SetReatimeValue(S7WORDDATA(arr[79], arr[78]).wValue); + + bitset<8> arr80(arr[80]); + machine->m_SignalStateWrapper->m_CylinderReachPrintTriger->SetReatimeValue(arr80[0]); + machine->m_SignalStateWrapper->m_CylinderReachPrintRun->SetReatimeValue(arr80[1]); + machine->m_SignalStateWrapper->m_CylinderReachPrintFinished->SetReatimeValue(arr80[2]); + machine->m_SignalStateWrapper->m_CylinderPrintLoadTriger->SetReatimeValue(arr80[3]); + machine->m_SignalStateWrapper->m_CylinderPrintLoadRun->SetReatimeValue(arr80[4]); + machine->m_SignalStateWrapper->m_CylinderPrintLoadFinished->SetReatimeValue(arr80[5]); + machine->m_SignalStateWrapper->m_CylinderPrintUnloadTriger->SetReatimeValue(arr80[6]); + machine->m_SignalStateWrapper->m_CylinderPrintUnloadRun->SetReatimeValue(arr80[7]); + + bitset<8> arr81(arr[81]); + machine->m_SignalStateWrapper->m_CylinderPrintUnloadFinished->SetReatimeValue(arr81[0]); + machine->m_SignalStateWrapper->m_CylinderReachCleanTriger->SetReatimeValue(arr81[7]); + + bitset<8> arr82(arr[82]); + machine->m_SignalStateWrapper->m_CylinderReachCleanRun->SetReatimeValue(arr82[0]); + machine->m_SignalStateWrapper->m_CylinderReachCleanFinished->SetReatimeValue(arr82[1]); + machine->m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger->SetReatimeValue(arr82[2]); + machine->m_SignalStateWrapper->m_CylinderConnectCleanBoxRun->SetReatimeValue(arr82[3]); + machine->m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished->SetReatimeValue(arr82[4]); + machine->m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger->SetReatimeValue(arr82[5]); + machine->m_SignalStateWrapper->m_CylinderDisconnectCleanBoxRun->SetReatimeValue(arr82[6]); + machine->m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished->SetReatimeValue(arr82[7]); + + bitset<8> arr83(arr[83]); + machine->m_SignalStateWrapper->m_CoverTriger->SetReatimeValue(arr83[0]); + machine->m_SignalStateWrapper->m_IsCovering->SetReatimeValue(arr83[1]); + machine->m_SignalStateWrapper->m_IsCoverFinishedCanPrint->SetReatimeValue(arr83[2]); + machine->m_SignalStateWrapper->m_IsCoverDebug->SetReatimeValue(arr83[3]); + machine->m_SignalStateWrapper->m_IsFirstCover->SetReatimeValue(arr83[4]); + machine->m_SignalStateWrapper->m_PrintDeoxygenTriger->SetReatimeValue(arr83[5]); + machine->m_SignalStateWrapper->m_PrintDeoxygenRun->SetReatimeValue(arr83[6]); + machine->m_SignalStateWrapper->m_PrintDeoxygenFinished->SetReatimeValue(arr83[7]); + + bitset<8> arr84(arr[84]); + machine->m_SignalStateWrapper->m_StorgeCarDeoxygenTriger->SetReatimeValue(arr84[3]); + machine->m_SignalStateWrapper->m_StorgeCarDeoxygenRun->SetReatimeValue(arr84[4]); + machine->m_SignalStateWrapper->m_StorgeCarDeoxygenFinished->SetReatimeValue(arr84[5]); + machine->m_SignalStateWrapper->m_CleanBoxVacuumTriger->SetReatimeValue(arr84[6]); + + bitset<8> arr85(arr[85]); + machine->m_SignalStateWrapper->m_RasterJudgeOK->SetReatimeValue(arr85[3]); + machine->m_SignalStateWrapper->m_RasterJudgeNG->SetReatimeValue(arr85[4]); + machine->m_SignalStateWrapper->m_CylinderReachPrintEnable->SetReatimeValue(arr85[5]); + machine->m_SignalStateWrapper->m_CylinderPrintLoadEnable->SetReatimeValue(arr85[6]); + machine->m_SignalStateWrapper->m_CylinderPrintUnloadEnable->SetReatimeValue(arr85[7]); + + bitset<8> arr86(arr[86]); + machine->m_SignalStateWrapper->m_CylinderReachCleanEnable->SetReatimeValue(arr86[2]); + machine->m_SignalStateWrapper->m_CylinderConnectCleanBoxEnable->SetReatimeValue(arr86[3]); + machine->m_SignalStateWrapper->m_CylinderDisconnectCleanBoxEnable->SetReatimeValue(arr86[4]); + machine->m_SignalStateWrapper->m_CoverEnable->SetReatimeValue(arr86[5]); + + bitset<8> arr88(arr[88]); + machine->m_SignalStateWrapper->m_PrintTorqueUpInsideLimit->SetReatimeValue(arr88[0]); + machine->m_SignalStateWrapper->m_ArmNotUponBasePlatform->SetReatimeValue(arr88[1]); + machine->m_SignalStateWrapper->m_PrintMoldPosInsideUpSoftLimit->SetReatimeValue(arr88[2]); + machine->m_SignalStateWrapper->m_PrintInsideUpLimit->SetReatimeValue(arr88[3]); + machine->m_SignalStateWrapper->m_PrintTorqueDownInsideLimit->SetReatimeValue(arr88[4]); + machine->m_SignalStateWrapper->m_PrintAxisPosInsideDownSoftLimit->SetReatimeValue(arr88[5]); + machine->m_SignalStateWrapper->m_PrintInsideDownLimit->SetReatimeValue(arr88[6]); + machine->m_SignalStateWrapper->m_PrintMainServoNoAlarm->SetReatimeValue(arr88[7]); + + bitset<8> arr89(arr[89]); + machine->m_SignalStateWrapper->m_PrintMoldInPrintPos->SetReatimeValue(arr89[0]); + machine->m_SignalStateWrapper->m_PrintMoldInCleanPos->SetReatimeValue(arr89[1]); + machine->m_SignalStateWrapper->m_PrintMoldInHandPos->SetReatimeValue(arr89[2]); + machine->m_SignalStateWrapper->m_MoldUpDownServiceDoorCloseStatue->SetReatimeValue(arr89[3]); + + + bitset<8> arr92(arr[92]); + machine->m_SignalStateWrapper->m_PrintJackupInSafePos->SetReatimeValue(arr92[0]); + machine->m_SignalStateWrapper->m_LoadTorqueInsideLimit->SetReatimeValue(arr92[1]); + machine->m_SignalStateWrapper->m_LoadPosInsideLeftSoftLimit->SetReatimeValue(arr92[2]); + machine->m_SignalStateWrapper->m_LoadPosInsideRightSoftLimit->SetReatimeValue(arr92[3]); + machine->m_SignalStateWrapper->m_CylinderSealNoInflationStatue->SetReatimeValue(arr92[4]); + machine->m_SignalStateWrapper->m_LoadUpDownServiceDoorCloseStatue->SetReatimeValue(arr92[5]); + + bitset<8> arr93(arr[93]); + machine->m_SignalStateWrapper->m_LoadLeftNotInsideLimit->SetReatimeValue(arr93[2]); + machine->m_SignalStateWrapper->m_LoadRightNotInsideLimit->SetReatimeValue(arr93[3]); + machine->m_SignalStateWrapper->m_LoadServoNoAlarm->SetReatimeValue(arr93[4]); + + bitset<8> arr94(arr[94]); + machine->m_SignalStateWrapper->m_PrintUpDownPosBelowPlatform->SetReatimeValue(arr94[0]); + machine->m_SignalStateWrapper->m_ArmTorqueInsideLimit->SetReatimeValue(arr94[1]); + machine->m_SignalStateWrapper->m_ArmPosInsideSoftFrontLimit->SetReatimeValue(arr94[2]); + machine->m_SignalStateWrapper->m_ArmPosInsideSoftBackLimit->SetReatimeValue(arr94[3]); + machine->m_SignalStateWrapper->m_ArmPosInsideFrontLimit->SetReatimeValue(arr94[4]); + machine->m_SignalStateWrapper->m_ArmPosInsideBackLimit->SetReatimeValue(arr94[5]); + machine->m_SignalStateWrapper->m_ArmServoNoAlarm->SetReatimeValue(arr94[6]); + + bitset<8> arr96(arr[96]); + machine->m_SignalStateWrapper->m_CylinderMoveHandPosEnable->SetReatimeValue(arr96[2]); + machine->m_SignalStateWrapper->m_CylinderMoveHandPos->SetReatimeValue(arr96[3]); + machine->m_SignalStateWrapper->m_CylinderMovingHandPos->SetReatimeValue(arr96[4]); + machine->m_SignalStateWrapper->m_CylinderMovedHandPos->SetReatimeValue(arr96[5]); + machine->m_SignalStateWrapper->m_PrintAirRenewalEnable->SetReatimeValue(arr96[6]); + machine->m_SignalStateWrapper->m_PrintAirRenewalTrigger->SetReatimeValue(arr96[7]); + + bitset<8> arr97(arr[97]); + machine->m_SignalStateWrapper->m_AllowRiseWindSpeed->SetReatimeValue(arr97[0]); + machine->m_SignalStateWrapper->m_ManualCoverTest->SetReatimeValue(arr97[1]); + machine->m_SignalStateWrapper->m_RollerEdgeSearching->SetReatimeValue(arr97[2]); + machine->m_SignalStateWrapper->m_RollerEdgeSearchSuccess->SetReatimeValue(arr97[3]); + machine->m_SignalStateWrapper->m_RollerEdgeSearchFaild->SetReatimeValue(arr97[4]); + } + + if (pAxisState.Result == 0) { + unsigned char* arr = (unsigned char*)pAxisState.pdata; + bitset<8> arr249(arr[0]); + machine->m_SignalStateWrapper->m_IsInPrintCylinderSeparatePos->SetReatimeValue(arr249[4]); //打印缸体分离位 + machine->m_SignalStateWrapper->m_IsInPrintPlatformBottomPos->SetReatimeValue(arr249[7]); //打印基板底座面 + + bitset<8> arr250(arr[1]); + machine->m_SignalStateWrapper->m_IsInPrintPlatformFlatPos->SetReatimeValue(arr250[0]); //打印基板平面 + machine->m_SignalStateWrapper->m_IsInLoadPrintPos->SetReatimeValue(arr250[5]); //移载打印位 + machine->m_SignalStateWrapper->m_IsInLoadCleanPos->SetReatimeValue(arr250[6]); //移载清粉位 + + bitset<8> arr251(arr[2]); + machine->m_SignalStateWrapper->m_IsInDropPowderPos->SetReatimeValue(arr251[0]); //铺粉下粉位 + machine->m_SignalStateWrapper->m_IsInAcceptPowderPos->SetReatimeValue(arr251[1]); //铺粉接粉位 + } + + if (pAxisCtrl.Result == 0) { + unsigned char* arr = (unsigned char*)pAxisCtrl.pdata; + machine->m_Axis->m_Mold->GetState()->Update(arr); + machine->m_Axis->m_MoldSlave->GetState()->Update(arr + 6); + machine->m_Axis->m_Clean->GetState()->Update(arr + 12); + machine->m_Axis->m_Ele->GetState()->Update(arr + 12); + machine->m_Axis->m_CleanSlave->GetState()->Update(arr + 18); + machine->m_Axis->m_EleSlave->GetState()->Update(arr + 18); + machine->m_Axis->m_Load->GetState()->Update(arr + 24); + machine->m_Axis->m_Arm->GetState()->Update(arr + 28); + machine->m_Axis->m_Supply->GetState()->Update(arr + 32); + + bitset<8> arr41(arr[41]); + machine->m_AxisRecordWrapper->m_DisableMoldTorqueCheck->SetReatimeValue(arr41[6]); + + bitset<8> arr42(arr[42]); + machine->m_AxisRecordWrapper->m_DisableLoadTorqueCheck->SetReatimeValue(arr42[0]); + machine->m_AxisRecordWrapper->m_DisableArmTorqueCheck->SetReatimeValue(arr42[1]); + machine->m_AxisRecordWrapper->m_DisableSupplyTorqueCheck->SetReatimeValue(arr42[2]); + machine->m_AxisRecordWrapper->m_LoadHandPosRecord->SetReatimeValue(arr42[3]); + machine->m_AxisRecordWrapper->m_LoadHandCrashPosRecord->SetReatimeValue(arr42[4]); + machine->m_AxisRecordWrapper->m_ArmBackAcceptPosRecord->SetReatimeValue(arr42[5]); + } + + if (pPersistState.Result == 0) { + unsigned char* arr = (unsigned char*)pPersistState.pdata; + bitset<8> arr0(arr[0]); + machine->m_SignalStateWrapper->m_UseSupplySearchEdge->SetReatimeValue(arr0[1]); + machine->m_SignalStateWrapper->m_SheildLinearEncoder->SetReatimeValue(arr0[5]); + + bitset<8> arr1(arr[1]); + machine->m_SignalStateWrapper->m_SheilServoEmptyOpen->SetReatimeValue(arr1[0]); //屏蔽伺服空开 + machine->m_SignalStateWrapper->m_SheildHighPressure->SetReatimeValue(arr1[2]); //屏蔽高压气 + machine->m_SignalStateWrapper->m_UnuseCoverReachSensor->SetReatimeValue(arr1[3]); //不使用铺粉轴到位感应器 + machine->m_SignalStateWrapper->m_UseCoverBaffleSensor->SetReatimeValue(arr1[4]); + machine->m_SignalStateWrapper->m_UseArmCaptureHome->SetReatimeValue(arr1[5]); + machine->m_SignalStateWrapper->m_LinearEncoderOppDirection->SetReatimeValue(arr1[7]); + + bitset<8> arr2(arr[2]); + machine->m_SignalStateWrapper->m_CoverV2UseCintinueMode->SetReatimeValue(arr2[0]); + machine->m_SignalStateWrapper->m_UseCoverShiftSpeed->SetReatimeValue(arr2[1]); + } + + if (pTimeSet.Result == 0) + { + unsigned char* arr = (unsigned char*)pTimeSet.pdata; + int flag = 0; + machine->m_SysParamWrapper->m_HeatingCheckTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); flag += 4; + machine->m_SysParamWrapper->m_CylinderMotionDelayTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); flag += 4; + machine->m_SysParamWrapper->m_LinearEncoderCompensateTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); flag += 4; + machine->m_SysParamWrapper->m_DropPowderOpenDeleyTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); flag += 4; + machine->m_SysParamWrapper->m_DropPowderCloseDelayTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); + } + + if (pCapture.Result == 0) { + unsigned char* arr = (unsigned char*)pCapture.pdata; + int flag = 0; + machine->m_SysParamWrapper->m_AutoCaptureCoverHomeIntervalTimes->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag += 2; + machine->m_SysParamWrapper->m_AutoCaptureCoverHomeCalcTimes->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag += 2; + machine->m_SysParamWrapper->m_LinearEncoderCompensateTimes->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag += 2; + machine->m_SysParamWrapper->m_LaserCount->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); flag += 2; + machine->m_SysParamWrapper->m_SealPressureHoldingAlarmTime->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); + } + + if (pDB3Ext.Result == 0) + { + unsigned char* arr = (unsigned char*)pDB3Ext.pdata; + int flagtemp = 874; + int flag = 874- flagtemp; + machine->m_SysParamWrapper->m_ArmBackAcceptPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 878 - flagtemp; + machine->m_SysParamWrapper->m_HighPressureGasJudgmentValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 882 - flagtemp; + machine->m_SysParamWrapper->m_ProtectiveGasJudgmentValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 890 - flagtemp; + machine->m_SysParamWrapper->m_DataSizeMinY->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 894 - flagtemp; + machine->m_SysParamWrapper->m_DataSizeMaxY->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 898 - flagtemp; + machine->m_SysParamWrapper->m_SealPressure->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 902 - flagtemp; + machine->m_SysParamWrapper->m_SealPressureReleaseValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 906 - flagtemp; + machine->m_SysParamWrapper->m_SealInflatableUpLimitValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 910 - flagtemp; + machine->m_SysParamWrapper->m_SealInflatableDownLimitValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 914 - flagtemp; + machine->m_SysParamWrapper->m_Oxygen1CompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 918 - flagtemp; + machine->m_SysParamWrapper->m_Oxygen2CompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 922 - flagtemp; + machine->m_SysParamWrapper->m_PowderStickCompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 926 - flagtemp; + machine->m_SysParamWrapper->m_PrintCabinPressureCompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 930 - flagtemp; + machine->m_SysParamWrapper->m_SealPressureCompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 934 - flagtemp; + machine->m_SysParamWrapper->m_HighPressureGasCompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 938 - flagtemp; + machine->m_SysParamWrapper->m_ProtectiveGasCompensationValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + } +} + void HBDE1000::ProcReadPLCData(void* pobject, Command* pcommand) { S7Command* s7Command = (S7Command*)pcommand; @@ -2536,406 +2537,407 @@ void HBDE1000::ProcReadPLCData(void* pobject, Command* pcommand) 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->SetPushMsg(data); - } - - } -} -// std::unique_lock lock(cc->m_ValueMtx); -// if (pSysData.Result == 0) { -// unsigned char* arr = (unsigned char*)pSysData.pdata; -// int flag = 0; -// machine->m_SysParamWrapper->m_PrintOxygen1->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 4; -// machine->m_SysParamWrapper->m_PrintOxygen2->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// -// flag = 12; -// machine->m_SysParamWrapper->m_HighPressure->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 16; -// machine->m_SysParamWrapper->m_ProtectGasPressure->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 20; -// machine->m_SysParamWrapper->m_PrintPressure->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 24; -// machine->m_SysParamWrapper->m_PrintOxygen1Max->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 28; -// machine->m_SysParamWrapper->m_PrintOxygen1Min->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 32; -// machine->m_SysParamWrapper->m_PrintOxygen2Max->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 36; -// machine->m_SysParamWrapper->m_PrintOxygen2Min->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// -// flag = 48; -// machine->m_SysParamWrapper->m_HighPressureMax->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 52; -// machine->m_SysParamWrapper->m_HighPressureMin->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 56; -// machine->m_SysParamWrapper->m_ProtectGasPressureMax->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 60; -// machine->m_SysParamWrapper->m_ProtectGasPressureMin->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 64; -// machine->m_SysParamWrapper->m_PrintPressureMax->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 68; -// machine->m_SysParamWrapper->m_PrintPressureMin->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// -// flag = 76; -// machine->m_SysParamWrapper->m_SupplyPowderGridPerCycle->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 80; -// machine->m_SysParamWrapper->m_SupplyAxisAnglePerGrid->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 84; -// machine->m_Axis->m_Mold->GetState()->UpdatePosAndLoad(arr + flag); -// g_SystemInfo->LockInfo(); -// g_SystemInfo->m_MoldMainPos = machine->m_Axis->m_Mold->GetState()->GetShowPos(); -// g_SystemInfo->UnlockInfo(); -// flag = 92; -// machine->m_Axis->m_MoldSlave->GetState()->UpdatePosAndLoad(arr + flag); -// flag = 100; -// machine->m_Axis->m_Mold->GetConfig()->Update(arr + flag); -// flag = 120; -// machine->m_Axis->m_MoldSlave->GetConfig()->Update(arr + flag); -// flag = 140; -// machine->m_Axis->m_Ele->GetState()->UpdatePosAndLoad(arr + flag); -// flag = 148; -// machine->m_Axis->m_EleSlave->GetState()->UpdatePosAndLoad(arr + flag); -// flag = 156; -// machine->m_Axis->m_Ele->GetConfig()->Update(arr + flag); -// flag = 176; -// machine->m_Axis->m_EleSlave->GetConfig()->Update(arr + flag); -// flag = 196; -// machine->m_Axis->m_Load->GetState()->UpdatePosAndLoad(arr + flag); -// flag = 204; -// machine->m_Axis->m_Load->GetConfig()->Update(arr + flag); -// flag = 224; -// machine->m_Axis->m_Arm->GetState()->UpdatePosAndLoad(arr + flag); -// g_SystemInfo->LockInfo(); -// g_SystemInfo->m_ArmPos = machine->m_Axis->m_Arm->GetState()->GetShowPos(); -// g_SystemInfo->UnlockInfo(); -// flag = 232; -// machine->m_Axis->m_Arm->GetConfig()->Update(arr + flag); -// flag = 252; -// machine->m_Axis->m_Supply->GetState()->UpdatePosAndLoad(arr + flag); -// flag = 260; -// machine->m_Axis->m_Supply->GetConfig()->Update(arr + flag); -// -// -// std::unique_lock lock(machine->m_SysParamWrapper->mtx); -// flag = 280; -// machine->m_SysParamWrapper->m_PrintUpDownSafePos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 296; -// machine->m_SysParamWrapper->m_PrintJackupPlatformBottomPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 300; -// machine->m_SysParamWrapper->m_PrintJackupPlatformPlanePos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 304; -// machine->m_SysParamWrapper->m_PrintPlatformHight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 308; -// machine->m_SysParamWrapper->m_MoldUpLimitPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 312; -// machine->m_SysParamWrapper->m_MoldDownLimitPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 316; -// machine->m_SysParamWrapper->m_EleCylinderPrintJackupPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 320; -// machine->m_SysParamWrapper->m_EleCylinderCleanJackupPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 324; -// machine->m_SysParamWrapper->m_EleCylinderBottomFitPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 336; -// machine->m_SysParamWrapper->m_EleCylinderSoftUpLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 340; -// machine->m_SysParamWrapper->m_EleCylinderSoftDownLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 344; -// machine->m_SysParamWrapper->m_LoadAxisTrackPrintPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 348; -// machine->m_SysParamWrapper->m_LoadAxisTrackCleanPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 352; -// machine->m_SysParamWrapper->m_LoadAxisTrackWaitPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 356; -// machine->m_SysParamWrapper->m_LoadAxisLeftLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 360; -// machine->m_SysParamWrapper->m_LoadAxisRightLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 364; -// machine->m_SysParamWrapper->m_ArmPowderAcceptPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 368; -// machine->m_SysParamWrapper->m_ArmPowderDropFrontPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// -// machine->m_CoverCfg->Lock(); -// machine->m_CoverCfg->m_cover_distance = abs(machine->m_SysParamWrapper->m_ArmPowderAcceptPos->GetValue() - machine->m_SysParamWrapper->m_ArmPowderDropFrontPos->GetValue()); -// machine->m_CoverCfg->UnLock(); -// -// flag = 372; -// machine->m_SysParamWrapper->m_ArmPrintFrontLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 376; -// machine->m_SysParamWrapper->m_ArmPrintBackLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 380; -// machine->m_SysParamWrapper->m_ArmFrontLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 384; -// machine->m_SysParamWrapper->m_ArmBackLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 388; -// machine->m_SysParamWrapper->m_MoldAbsTestPos->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); -// flag = 390; -// machine->m_SysParamWrapper->m_EleCylinderAbsTestPos->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); -// flag = 392; -// machine->m_SysParamWrapper->m_LoadAxisAbsTestPos->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); -// flag = 394; -// machine->m_SysParamWrapper->m_ArmAbsTestPos->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); -// flag = 396; -// machine->m_SysParamWrapper->m_LineEncMoveValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 400; -// machine->m_SysParamWrapper->m_LineEncPulseEqu->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 404; -// machine->m_SysParamWrapper->m_MoldMainHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 408; -// machine->m_SysParamWrapper->m_MoldMainAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 412; -// machine->m_SysParamWrapper->m_MoldMainAlignHomeRel->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 416; -// machine->m_SysParamWrapper->m_MoldSlaveHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 420; -// machine->m_SysParamWrapper->m_MoldSlaveAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 424; -// machine->m_SysParamWrapper->m_MoldSlaveAlignHomeRel->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 428; -// machine->m_SysParamWrapper->m_EleCylinderMainHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 432; -// machine->m_SysParamWrapper->m_EleCylinderMainAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 436; -// machine->m_SysParamWrapper->m_EleCylinderMainAlignHomeRel->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 440; -// machine->m_SysParamWrapper->m_EleCylinderSlaveHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 444; -// machine->m_SysParamWrapper->m_EleCylinderSlaveAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 448; -// machine->m_SysParamWrapper->m_EleCylinderSlaveAlignHomeRel->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// -// flag = 452; -// machine->m_SysParamWrapper->m_MoldAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 456; -// machine->m_SysParamWrapper->m_MoldAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 460; -// machine->m_SysParamWrapper->m_MoldAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 464; -// machine->m_SysParamWrapper->m_MoldAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 468; -// machine->m_SysParamWrapper->m_MoldAutoAbsPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 472; -// machine->m_SysParamWrapper->m_EleCylinderAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 476; -// machine->m_SysParamWrapper->m_EleCylinderAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 480; -// machine->m_SysParamWrapper->m_EleCylinderAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 484; -// machine->m_SysParamWrapper->m_EleCylinderAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 488; -// machine->m_SysParamWrapper->m_EleCylinderAutoAbsPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 492; -// machine->m_SysParamWrapper->m_LoadAxisAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 496; -// machine->m_SysParamWrapper->m_LoadAxisnAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 500; -// machine->m_SysParamWrapper->m_LoadAxisAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 504; -// machine->m_SysParamWrapper->m_LoadAxisAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 508; -// machine->m_SysParamWrapper->m_LoadAxisAutoAbsPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 512; -// machine->m_SysParamWrapper->m_ArmAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 516; -// machine->m_SysParamWrapper->m_ArmAxisnAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 520; -// machine->m_SysParamWrapper->m_ArmAxisAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 524; -// machine->m_SysParamWrapper->m_ArmAxisAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 528; -// machine->m_SysParamWrapper->m_ArmAxisAutoAbsPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 532; -// machine->m_SysParamWrapper->m_SupplyAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 536; -// machine->m_SysParamWrapper->m_SupplyAxisnAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 540; -// machine->m_SysParamWrapper->m_SupplyAxisAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 544; -// machine->m_SysParamWrapper->m_SupplyAxisAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 548; -// machine->m_SysParamWrapper->m_SupplyAxisAutoAbsPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 552; -// machine->m_SysParamWrapper->m_Print3RSeparatTorqueThreshold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 556; -// machine->m_SysParamWrapper->m_MoldUpTorqueThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 560; -// machine->m_SysParamWrapper->m_MoldDownTorqueThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// -// flag = 568; -// machine->m_SysParamWrapper->m_EleCylinderUpTorqueThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 572; -// machine->m_SysParamWrapper->m_EleCylinderDownTorqueThreshold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 576; -// machine->m_SysParamWrapper->m_CoverType->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); -// flag = 578; -// machine->m_SysParamWrapper->m_CoverSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 582; -// machine->m_SysParamWrapper->m_CoverReturnSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 586; -// machine->m_SysParamWrapper->m_CoverDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 590; -// machine->m_SysParamWrapper->m_LayerThick->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 594; -// machine->m_SysParamWrapper->m_FixGap->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 598; -// machine->m_SysParamWrapper->m_SupplyCount->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); -// flag = 600; -// machine->m_SysParamWrapper->m_SupplyTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); -// -// machine->m_CoverCfg->Lock(); -// machine->m_CoverCfg->m_CoverDirection = machine->m_SysParamWrapper->m_CoverType->GetValue(); -// machine->m_CoverCfg->m_cover_shift_speed = machine->m_SysParamWrapper->m_CoverReturnSpeed->GetValue(); -// machine->m_CoverCfg->m_cover_speed = machine->m_SysParamWrapper->m_CoverSpeed->GetValue(); -// machine->m_CoverCfg->m_SupplyTime = machine->m_SysParamWrapper->m_SupplyTime->GetValue(); -// machine->m_CoverCfg->UnLock(); -// flag = 604; -// machine->m_SysParamWrapper->m_DebugLayerThick->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 608; -// machine->m_SysParamWrapper->m_DebugFixGap->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 612; -// machine->m_SysParamWrapper->m_DebugSupplyTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); -// flag = 616; -// machine->m_SysParamWrapper->m_DebugSupplyCount->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); -// flag = 618; -// machine->m_SysParamWrapper->m_DebugCoverDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 622; -// machine->m_SysParamWrapper->m_MoldHighSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 626; -// machine->m_SysParamWrapper->m_MoldDeoxygenSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// -// flag = 634; -// machine->m_SysParamWrapper->m_PrintPressureThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 638; -// machine->m_SysParamWrapper->m_MoldDeoxygenTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); -// flag = 642; -// machine->m_SysParamWrapper->m_PowderCarDeoxygenTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); -// flag = 646; -// machine->m_SysParamWrapper->m_GratingRulerValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 650; -// machine->m_SysParamWrapper->m_ArmTorqueThreshold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 654; -// machine->m_SysParamWrapper->m_LoadTorqueThreshold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 658; -// machine->m_SysParamWrapper->m_SupplyTorqueThreshold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 662; -// machine->m_SysParamWrapper->m_PrintMainLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 666; -// machine->m_SysParamWrapper->m_PrintMainReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 670; -// machine->m_SysParamWrapper->m_PrintMainMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 674; -// machine->m_SysParamWrapper->m_PrintSlaveLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 678; -// machine->m_SysParamWrapper->m_PrintSlaveReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 682; -// machine->m_SysParamWrapper->m_PrintSlaveMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 686; -// machine->m_SysParamWrapper->m_EleCylinderMainLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 690; -// machine->m_SysParamWrapper->m_EleCylinderMainReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 694; -// machine->m_SysParamWrapper->m_EleCylinderMainMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 698; -// machine->m_SysParamWrapper->m_EleCylinderSlaveLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 702; -// machine->m_SysParamWrapper->m_EleCylinderSlaveReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 706; -// machine->m_SysParamWrapper->m_EleCylinderSlaveMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 710; -// machine->m_SysParamWrapper->m_LoadAxisLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 714; -// machine->m_SysParamWrapper->m_LoadAxisReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 718; -// machine->m_SysParamWrapper->m_LoadAxisMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 722; -// machine->m_SysParamWrapper->m_ArmLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 726; -// machine->m_SysParamWrapper->m_ArmReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 730; -// machine->m_SysParamWrapper->m_ArmMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 734; -// machine->m_SysParamWrapper->m_SupplyLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 738; -// machine->m_SysParamWrapper->m_SupplyReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 742; -// machine->m_SysParamWrapper->m_SupplyRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 746; -// machine->m_SysParamWrapper->m_ArmSlotDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 750; -// machine->m_SysParamWrapper->m_PowderJarCabinPressureVoltage->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 754; -// machine->m_SysParamWrapper->m_PowderJarCabinPressureValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 758; -// machine->m_SysParamWrapper->m_CleanBoxDeoxygenSetValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 762; -// machine->m_SysParamWrapper->m_CleanBoxOxygenDownLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 766; -// machine->m_SysParamWrapper->m_CleanBoxOxygenUpLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 770; -// machine->m_SysParamWrapper->m_CleanBoxPressureReleaseValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 774; -// machine->m_SysParamWrapper->m_PrintCar1RealWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 778; -// machine->m_SysParamWrapper->m_PrintCar1AlarmWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 782; -// machine->m_SysParamWrapper->m_PrintCar2RealWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 786; -// machine->m_SysParamWrapper->m_PrintCar2AlarmWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 790; -// machine->m_SysParamWrapper->m_CleanCar1RealWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 794; -// machine->m_SysParamWrapper->m_CleanCar1AlarmWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 798; -// machine->m_SysParamWrapper->m_CleanCar2RealWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 802; -// machine->m_SysParamWrapper->m_CleanCar2AlarmWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 806; -// machine->m_SysParamWrapper->m_LoadHandPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 810; -// machine->m_SysParamWrapper->m_PowderLevelLength->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 814; -// machine->m_SysParamWrapper->m_PowderLevelValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 818; -// machine->m_SysParamWrapper->m_PrintAirRenewalPresRelValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 822; -// machine->m_SysParamWrapper->m_RollerEdgeSearchOffset->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 826; -// machine->m_SysParamWrapper->m_LoadHandCrashPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 830; -// machine->m_SysParamWrapper->m_ArmCatpureHomeFastSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 834; -// machine->m_SysParamWrapper->m_ArmCatpureHomeSlowSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 838; -// machine->m_SysParamWrapper->m_LinearEncoderErrorJudgeValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 842; -// machine->m_SysParamWrapper->m_LinearEncoderPerLayerRealValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 846; -// machine->m_SysParamWrapper->m_GapCompensateDiffValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 850; -// machine->m_SysParamWrapper->m_MoldTheoryDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 854; -// machine->m_SysParamWrapper->m_LinearActDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 858; -// machine->m_SysParamWrapper->m_LinearActPulse->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// -// flag = 862; -// machine->m_SysParamWrapper->m_PrintHomeSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 866; -// machine->m_SysParamWrapper->m_EleCylinderHomeSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// flag = 870; -// machine->m_SysParamWrapper->m_LoadHomeSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); -// +// for (int i = 0; i < itemcount; ++i) { +// WriteData* data = new WriteData(); +// data->dataType = WRITETYPE(i + 100); +// data->strValue = (char*)pdataItems[i].pdata; +// data->result = true; +// for (auto& client : machine->m_clientUser) { +// client->PushMsg(data); +// } // // } //} -// -// + + std::unique_lock lock(cc->m_ValueMtx); + if (pSysData.Result == 0) { + unsigned char* arr = (unsigned char*)pSysData.pdata; + int flag = 0; + machine->m_SysParamWrapper->m_PrintOxygen1->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 4; + machine->m_SysParamWrapper->m_PrintOxygen2->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + + flag = 12; + machine->m_SysParamWrapper->m_HighPressure->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 16; + machine->m_SysParamWrapper->m_ProtectGasPressure->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 20; + machine->m_SysParamWrapper->m_PrintPressure->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 24; + machine->m_SysParamWrapper->m_PrintOxygen1Max->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 28; + machine->m_SysParamWrapper->m_PrintOxygen1Min->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 32; + machine->m_SysParamWrapper->m_PrintOxygen2Max->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 36; + machine->m_SysParamWrapper->m_PrintOxygen2Min->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + + flag = 48; + machine->m_SysParamWrapper->m_HighPressureMax->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 52; + machine->m_SysParamWrapper->m_HighPressureMin->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 56; + machine->m_SysParamWrapper->m_ProtectGasPressureMax->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 60; + machine->m_SysParamWrapper->m_ProtectGasPressureMin->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 64; + machine->m_SysParamWrapper->m_PrintPressureMax->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 68; + machine->m_SysParamWrapper->m_PrintPressureMin->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + + flag = 76; + machine->m_SysParamWrapper->m_SupplyPowderGridPerCycle->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 80; + machine->m_SysParamWrapper->m_SupplyAxisAnglePerGrid->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 84; + machine->m_Axis->m_Mold->GetState()->UpdatePosAndLoad(arr + flag); + g_SystemInfo->LockInfo(); + g_SystemInfo->m_MoldMainPos = machine->m_Axis->m_Mold->GetState()->GetShowPos(); + g_SystemInfo->UnlockInfo(); + flag = 92; + machine->m_Axis->m_MoldSlave->GetState()->UpdatePosAndLoad(arr + flag); + flag = 100; + machine->m_Axis->m_Mold->GetConfig()->Update(arr + flag); + flag = 120; + machine->m_Axis->m_MoldSlave->GetConfig()->Update(arr + flag); + flag = 140; + machine->m_Axis->m_Ele->GetState()->UpdatePosAndLoad(arr + flag); + flag = 148; + machine->m_Axis->m_EleSlave->GetState()->UpdatePosAndLoad(arr + flag); + flag = 156; + machine->m_Axis->m_Ele->GetConfig()->Update(arr + flag); + flag = 176; + machine->m_Axis->m_EleSlave->GetConfig()->Update(arr + flag); + flag = 196; + machine->m_Axis->m_Load->GetState()->UpdatePosAndLoad(arr + flag); + flag = 204; + machine->m_Axis->m_Load->GetConfig()->Update(arr + flag); + flag = 224; + machine->m_Axis->m_Arm->GetState()->UpdatePosAndLoad(arr + flag); + g_SystemInfo->LockInfo(); + g_SystemInfo->m_ArmPos = machine->m_Axis->m_Arm->GetState()->GetShowPos(); + g_SystemInfo->UnlockInfo(); + flag = 232; + machine->m_Axis->m_Arm->GetConfig()->Update(arr + flag); + flag = 252; + machine->m_Axis->m_Supply->GetState()->UpdatePosAndLoad(arr + flag); + flag = 260; + machine->m_Axis->m_Supply->GetConfig()->Update(arr + flag); + + + std::unique_lock lock(machine->m_SysParamWrapper->mtx); + flag = 280; + machine->m_SysParamWrapper->m_PrintUpDownSafePos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 296; + machine->m_SysParamWrapper->m_PrintJackupPlatformBottomPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 300; + machine->m_SysParamWrapper->m_PrintJackupPlatformPlanePos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 304; + machine->m_SysParamWrapper->m_PrintPlatformHight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 308; + machine->m_SysParamWrapper->m_MoldUpLimitPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 312; + machine->m_SysParamWrapper->m_MoldDownLimitPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 316; + machine->m_SysParamWrapper->m_EleCylinderPrintJackupPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 320; + machine->m_SysParamWrapper->m_EleCylinderCleanJackupPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 324; + machine->m_SysParamWrapper->m_EleCylinderBottomFitPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 336; + machine->m_SysParamWrapper->m_EleCylinderSoftUpLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 340; + machine->m_SysParamWrapper->m_EleCylinderSoftDownLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 344; + machine->m_SysParamWrapper->m_LoadAxisTrackPrintPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 348; + machine->m_SysParamWrapper->m_LoadAxisTrackCleanPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 352; + machine->m_SysParamWrapper->m_LoadAxisTrackWaitPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 356; + machine->m_SysParamWrapper->m_LoadAxisLeftLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 360; + machine->m_SysParamWrapper->m_LoadAxisRightLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 364; + machine->m_SysParamWrapper->m_ArmPowderAcceptPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 368; + machine->m_SysParamWrapper->m_ArmPowderDropFrontPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + + machine->m_CoverCfg->Lock(); + machine->m_CoverCfg->m_cover_distance = abs(machine->m_SysParamWrapper->m_ArmPowderAcceptPos->GetValue() - machine->m_SysParamWrapper->m_ArmPowderDropFrontPos->GetValue()); + machine->m_CoverCfg->UnLock(); + + flag = 372; + machine->m_SysParamWrapper->m_ArmPrintFrontLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 376; + machine->m_SysParamWrapper->m_ArmPrintBackLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 380; + machine->m_SysParamWrapper->m_ArmFrontLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 384; + machine->m_SysParamWrapper->m_ArmBackLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 388; + machine->m_SysParamWrapper->m_MoldAbsTestPos->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); + flag = 390; + machine->m_SysParamWrapper->m_EleCylinderAbsTestPos->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); + flag = 392; + machine->m_SysParamWrapper->m_LoadAxisAbsTestPos->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); + flag = 394; + machine->m_SysParamWrapper->m_ArmAbsTestPos->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); + flag = 396; + machine->m_SysParamWrapper->m_LineEncMoveValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 400; + machine->m_SysParamWrapper->m_LineEncPulseEqu->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 404; + machine->m_SysParamWrapper->m_MoldMainHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 408; + machine->m_SysParamWrapper->m_MoldMainAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 412; + machine->m_SysParamWrapper->m_MoldMainAlignHomeRel->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 416; + machine->m_SysParamWrapper->m_MoldSlaveHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 420; + machine->m_SysParamWrapper->m_MoldSlaveAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 424; + machine->m_SysParamWrapper->m_MoldSlaveAlignHomeRel->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 428; + machine->m_SysParamWrapper->m_EleCylinderMainHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 432; + machine->m_SysParamWrapper->m_EleCylinderMainAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 436; + machine->m_SysParamWrapper->m_EleCylinderMainAlignHomeRel->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 440; + machine->m_SysParamWrapper->m_EleCylinderSlaveHomeIndexEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 444; + machine->m_SysParamWrapper->m_EleCylinderSlaveAlignEnc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 448; + machine->m_SysParamWrapper->m_EleCylinderSlaveAlignHomeRel->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + + flag = 452; + machine->m_SysParamWrapper->m_MoldAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 456; + machine->m_SysParamWrapper->m_MoldAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 460; + machine->m_SysParamWrapper->m_MoldAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 464; + machine->m_SysParamWrapper->m_MoldAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 468; + machine->m_SysParamWrapper->m_MoldAutoAbsPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 472; + machine->m_SysParamWrapper->m_EleCylinderAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 476; + machine->m_SysParamWrapper->m_EleCylinderAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 480; + machine->m_SysParamWrapper->m_EleCylinderAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 484; + machine->m_SysParamWrapper->m_EleCylinderAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 488; + machine->m_SysParamWrapper->m_EleCylinderAutoAbsPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 492; + machine->m_SysParamWrapper->m_LoadAxisAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 496; + machine->m_SysParamWrapper->m_LoadAxisnAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 500; + machine->m_SysParamWrapper->m_LoadAxisAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 504; + machine->m_SysParamWrapper->m_LoadAxisAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 508; + machine->m_SysParamWrapper->m_LoadAxisAutoAbsPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 512; + machine->m_SysParamWrapper->m_ArmAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 516; + machine->m_SysParamWrapper->m_ArmAxisnAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 520; + machine->m_SysParamWrapper->m_ArmAxisAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 524; + machine->m_SysParamWrapper->m_ArmAxisAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 528; + machine->m_SysParamWrapper->m_ArmAxisAutoAbsPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 532; + machine->m_SysParamWrapper->m_SupplyAutoSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 536; + machine->m_SysParamWrapper->m_SupplyAxisnAutoAcc->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 540; + machine->m_SysParamWrapper->m_SupplyAxisAutoDec->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 544; + machine->m_SysParamWrapper->m_SupplyAxisAutoRelShift->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 548; + machine->m_SysParamWrapper->m_SupplyAxisAutoAbsPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 552; + machine->m_SysParamWrapper->m_Print3RSeparatTorqueThreshold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 556; + machine->m_SysParamWrapper->m_MoldUpTorqueThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 560; + machine->m_SysParamWrapper->m_MoldDownTorqueThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + + flag = 568; + machine->m_SysParamWrapper->m_EleCylinderUpTorqueThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 572; + machine->m_SysParamWrapper->m_EleCylinderDownTorqueThreshold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 576; + machine->m_SysParamWrapper->m_CoverType->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); + flag = 578; + machine->m_SysParamWrapper->m_CoverSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 582; + machine->m_SysParamWrapper->m_CoverReturnSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 586; + machine->m_SysParamWrapper->m_CoverDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 590; + machine->m_SysParamWrapper->m_LayerThick->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 594; + machine->m_SysParamWrapper->m_FixGap->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 598; + machine->m_SysParamWrapper->m_SupplyCount->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); + flag = 600; + machine->m_SysParamWrapper->m_SupplyTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); + + machine->m_CoverCfg->Lock(); + machine->m_CoverCfg->m_CoverDirection = machine->m_SysParamWrapper->m_CoverType->GetValue(); + machine->m_CoverCfg->m_cover_shift_speed = machine->m_SysParamWrapper->m_CoverReturnSpeed->GetValue(); + machine->m_CoverCfg->m_cover_speed = machine->m_SysParamWrapper->m_CoverSpeed->GetValue(); + machine->m_CoverCfg->m_SupplyTime = machine->m_SysParamWrapper->m_SupplyTime->GetValue(); + machine->m_CoverCfg->UnLock(); + flag = 604; + machine->m_SysParamWrapper->m_DebugLayerThick->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 608; + machine->m_SysParamWrapper->m_DebugFixGap->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 612; + machine->m_SysParamWrapper->m_DebugSupplyTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); + flag = 616; + machine->m_SysParamWrapper->m_DebugSupplyCount->SetReatimeValue(S7WORDDATA(arr[flag + 1], arr[flag]).wValue); + flag = 618; + machine->m_SysParamWrapper->m_DebugCoverDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 622; + machine->m_SysParamWrapper->m_MoldHighSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 626; + machine->m_SysParamWrapper->m_MoldDeoxygenSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + + flag = 634; + machine->m_SysParamWrapper->m_PrintPressureThrehold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 638; + machine->m_SysParamWrapper->m_MoldDeoxygenTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); + flag = 642; + machine->m_SysParamWrapper->m_PowderCarDeoxygenTime->SetReatimeValue(S7DWORDDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).iValue); + flag = 646; + machine->m_SysParamWrapper->m_GratingRulerValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 650; + machine->m_SysParamWrapper->m_ArmTorqueThreshold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 654; + machine->m_SysParamWrapper->m_LoadTorqueThreshold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 658; + machine->m_SysParamWrapper->m_SupplyTorqueThreshold->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 662; + machine->m_SysParamWrapper->m_PrintMainLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 666; + machine->m_SysParamWrapper->m_PrintMainReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 670; + machine->m_SysParamWrapper->m_PrintMainMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 674; + machine->m_SysParamWrapper->m_PrintSlaveLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 678; + machine->m_SysParamWrapper->m_PrintSlaveReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 682; + machine->m_SysParamWrapper->m_PrintSlaveMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 686; + machine->m_SysParamWrapper->m_EleCylinderMainLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 690; + machine->m_SysParamWrapper->m_EleCylinderMainReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 694; + machine->m_SysParamWrapper->m_EleCylinderMainMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 698; + machine->m_SysParamWrapper->m_EleCylinderSlaveLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 702; + machine->m_SysParamWrapper->m_EleCylinderSlaveReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 706; + machine->m_SysParamWrapper->m_EleCylinderSlaveMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 710; + machine->m_SysParamWrapper->m_LoadAxisLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 714; + machine->m_SysParamWrapper->m_LoadAxisReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 718; + machine->m_SysParamWrapper->m_LoadAxisMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 722; + machine->m_SysParamWrapper->m_ArmLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 726; + machine->m_SysParamWrapper->m_ArmReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 730; + machine->m_SysParamWrapper->m_ArmMaxRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 734; + machine->m_SysParamWrapper->m_SupplyLead->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 738; + machine->m_SysParamWrapper->m_SupplyReductionRatio->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 742; + machine->m_SysParamWrapper->m_SupplyRotationlSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 746; + machine->m_SysParamWrapper->m_ArmSlotDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 750; + machine->m_SysParamWrapper->m_PowderJarCabinPressureVoltage->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 754; + machine->m_SysParamWrapper->m_PowderJarCabinPressureValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 758; + machine->m_SysParamWrapper->m_CleanBoxDeoxygenSetValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 762; + machine->m_SysParamWrapper->m_CleanBoxOxygenDownLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 766; + machine->m_SysParamWrapper->m_CleanBoxOxygenUpLimit->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 770; + machine->m_SysParamWrapper->m_CleanBoxPressureReleaseValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 774; + machine->m_SysParamWrapper->m_PrintCar1RealWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 778; + machine->m_SysParamWrapper->m_PrintCar1AlarmWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 782; + machine->m_SysParamWrapper->m_PrintCar2RealWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 786; + machine->m_SysParamWrapper->m_PrintCar2AlarmWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 790; + machine->m_SysParamWrapper->m_CleanCar1RealWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 794; + machine->m_SysParamWrapper->m_CleanCar1AlarmWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 798; + machine->m_SysParamWrapper->m_CleanCar2RealWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 802; + machine->m_SysParamWrapper->m_CleanCar2AlarmWeight->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 806; + machine->m_SysParamWrapper->m_LoadHandPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 810; + machine->m_SysParamWrapper->m_PowderLevelLength->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 814; + machine->m_SysParamWrapper->m_PowderLevelValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 818; + machine->m_SysParamWrapper->m_PrintAirRenewalPresRelValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 822; + machine->m_SysParamWrapper->m_RollerEdgeSearchOffset->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 826; + machine->m_SysParamWrapper->m_LoadHandCrashPos->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 830; + machine->m_SysParamWrapper->m_ArmCatpureHomeFastSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 834; + machine->m_SysParamWrapper->m_ArmCatpureHomeSlowSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 838; + machine->m_SysParamWrapper->m_LinearEncoderErrorJudgeValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 842; + machine->m_SysParamWrapper->m_LinearEncoderPerLayerRealValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 846; + machine->m_SysParamWrapper->m_GapCompensateDiffValue->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 850; + machine->m_SysParamWrapper->m_MoldTheoryDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 854; + machine->m_SysParamWrapper->m_LinearActDistance->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 858; + machine->m_SysParamWrapper->m_LinearActPulse->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + + flag = 862; + machine->m_SysParamWrapper->m_PrintHomeSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 866; + machine->m_SysParamWrapper->m_EleCylinderHomeSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + flag = 870; + machine->m_SysParamWrapper->m_LoadHomeSpeed->SetReatimeValue(S7FLOATDATA(arr[flag + 3], arr[flag + 2], arr[flag + 1], arr[flag]).fValue); + + + } +} + + //void HBDE1000::DrawSignal(bool* isshow) //{ // SignalState signalState; @@ -3178,7 +3180,7 @@ void HBDE1000::ProcReadPLCData(void* pobject, Command* pcommand) // // ImGui::End(); //} -// + //void HBDE1000::DrawAxisCfg() //{ // vector directvec = { _(u8"上"),_(u8"下"),_(u8"左"),_(u8"右"),_(u8"前"),_(u8"后") }; diff --git a/PrintS/Machine/Machine.h b/PrintS/Machine/Machine.h index 026239c..497e5de 100644 --- a/PrintS/Machine/Machine.h +++ b/PrintS/Machine/Machine.h @@ -128,10 +128,6 @@ public: return true; } - void UpdateClients(const list& clientList) { - m_clientUser = clientList; - } - virtual void LoadAxisMove(AxisConfig::ActiveDirect adr, bool isContinue = false, bool isStart = false); //移栽轴运动 virtual void SupplyAxisMove(AxisConfig::ActiveDirect adr, bool isContinue = false, bool isStart = false); //供粉轴运动 virtual void PrintAxisMove(AxisConfig::ActiveDirect adr, bool isContinue = false, bool isStart = false); //成型缸运动 @@ -256,8 +252,6 @@ protected: vector m_AxisTabs; - list m_clientUser; //连接客户端 - std::map m_plcMp; }; diff --git a/PrintS/PLC/CoreCommunication.cpp b/PrintS/PLC/CoreCommunication.cpp index 20b7dd7..eed2aa3 100644 --- a/PrintS/PLC/CoreCommunication.cpp +++ b/PrintS/PLC/CoreCommunication.cpp @@ -7,9 +7,10 @@ #include CoreCommunication::CoreCommunication() - :m_Config(NULL) + : m_Config(NULL) , m_ReadThread(INVALID_HANDLE_VALUE) - ,m_WriteThread(INVALID_HANDLE_VALUE) + , m_WriteThread(INVALID_HANDLE_VALUE) + , m_sendTdExitFlag(false) { m_IsSmart = true; m_Invoker = new PLCInvoker(); @@ -23,6 +24,9 @@ CoreCommunication::~CoreCommunication() if (m_S7Client->Connected)m_S7Client->Disconnect(); delete m_S7Client; } + + m_sendTdExitFlag = true; + if (m_sendTd.joinable()) m_sendTd.join(); } void CoreCommunication::Startup() @@ -32,6 +36,8 @@ void CoreCommunication::Startup() m_AssistRunFlag = true; m_ReadThread = AtlCreateThread(ReadProc, this); m_AssistThread = AtlCreateThread(AssistProc, this); + + m_sendTd = std::thread([this] {SendProc(); }); } void CoreCommunication::Shutdown() @@ -340,58 +346,58 @@ void CoreCommunication::AssistRun() } } -//void CoreCommunication::GetAlarmState(SignalState& signalState) -//{ -// std::shared_lock lock(m_ValueMtx); -// ConfigManager::GetInstance()->GetMachine()->GetAlarmState(signalState); -//} +void CoreCommunication::GetAlarmState(SignalState& signalState) +{ + std::shared_lock lock(m_ValueMtx); + //ConfigManager::GetInstance()->GetMachine()->GetAlarmState(signalState); +} -//void CoreCommunication::GetEnvState(EnvState& envState) -//{ -// std::shared_lock lock(m_ValueMtx); -// //ConfigManager::GetInstance()->GetMachine()->GetAlarmState(envState); -// -// envState.m_PrintOxygen1Analog=m_SysParamWrapper->m_PrintOxygen1->GetValue(); -// envState.m_PrintOxygen2Analog =m_SysParamWrapper->m_PrintOxygen2->GetValue(); -// envState.m_OutsideOxygenAnalog =m_SysParamWrapper->m_OutsideOxygen->GetValue(); -// -// envState.m_HighPressureAnalog =m_SysParamWrapper->m_HighPressure->GetValue(); -// envState.m_ProtectGasPressureAnalog =m_SysParamWrapper->m_ProtectGasPressure->GetValue(); -// envState.m_PrintPressureAnalog =m_SysParamWrapper->m_PrintPressure->GetValue(); -// envState.m_MoldMainCurrentPos=m_SysParamWrapper->m_MoldMainCurrentPos->GetValue(); //打印主轴当前位置_R -// envState.m_MoldMainCurrentLoad=m_SysParamWrapper->m_MoldMainCurrentLoad->GetValue(); //打印主轴当前扭矩_R -// envState.m_MoldSlaveCurrentPos=m_SysParamWrapper->m_MoldSlaveCurrentPos->GetValue(); //打印从轴当前位置_R -// envState.m_MoldSlaveCurrentLoad=m_SysParamWrapper->m_MoldSlaveCurrentLoad->GetValue(); //打印从轴当前扭矩_R -// envState.m_CleanMainCurrentPos=m_SysParamWrapper->m_CleanMainCurrentPos->GetValue(); //清粉主轴当前位置_R -// envState.m_CleanMainCurrentLoad=m_SysParamWrapper->m_CleanMainCurrentLoad->GetValue(); //清粉主轴当前扭矩_R -// envState.m_CleanSlaveCurrentPos=m_SysParamWrapper->m_CleanSlaveCurrentPos->GetValue(); //清粉从轴当前位置_R -// envState.m_CleanSlaveCurrentLoad=m_SysParamWrapper->m_CleanSlaveCurrentLoad->GetValue(); //清粉从轴当前扭矩_R -// envState.m_LoadAxisCurrentPos=m_SysParamWrapper->m_LoadAxisCurrentPos->GetValue(); //移载轴当前位置_R -// envState.m_LoadAxisCurrentLoad=m_SysParamWrapper->m_LoadAxisCurrentLoad->GetValue(); //移载轴当前扭矩_R -// envState.m_ArmCurrentPos=m_SysParamWrapper->m_ArmCurrentPos->GetValue(); //铺粉轴当前位置_R -// envState.m_ArmCurrentLoad=m_SysParamWrapper->m_ArmCurrentLoad->GetValue(); //铺粉轴当前扭矩_R -// envState.m_SupplyCurrentPos=m_SysParamWrapper->m_SupplyCurrentPos->GetValue(); //供粉转轴当前位置_R -// envState.m_SupplyCurrentLoad=m_SysParamWrapper->m_SupplyCurrentLoad->GetValue(); //供粉转轴当前扭矩_R -// -// envState.m_IsPrintCabinDoorClose = m_IOCfgWrapper->IsSafeDoorClose(); -// -// envState.m_PowderJarCabinPressureVoltage=m_SysParamWrapper->m_PowderJarCabinPressureVoltage->GetValue(); -// envState.m_PowderJarCabinPressure=m_SysParamWrapper->m_PowderJarCabinPressureValue->GetValue(); -// envState.m_PowderLevelLength = m_SysParamWrapper->m_PowderLevelLength->GetValue(); -// envState.m_PowderLevelValue = m_SysParamWrapper->m_PowderLevelValue->GetValue(); -// -// envState.m_LinearLayerPos = m_SysParamWrapper->m_LinearEncoderPerLayerRealValue->GetValue(); -// envState.m_MoldTheoryDistance = m_SysParamWrapper->m_MoldTheoryDistance->GetValue(); -// envState.m_LinearActDistance = m_SysParamWrapper->m_LinearActDistance->GetValue(); -// envState.m_LinearActPulse = m_SysParamWrapper->m_LinearActPulse->GetValue(); -// envState.m_LineEncPulseEqu = m_SysParamWrapper->m_LineEncPulseEqu->GetValue(); -// -// envState.m_PrintCar1RealWeight = m_SysParamWrapper->m_PrintCar1RealWeight->GetValue(); -// envState.m_PrintCar2RealWeight = m_SysParamWrapper->m_PrintCar2RealWeight->GetValue(); -// envState.m_CleanCar1RealWeight = m_SysParamWrapper->m_CleanCar1RealWeight->GetValue(); -// envState.m_CleanCar2RealWeight = m_SysParamWrapper->m_CleanCar2RealWeight->GetValue(); -// -//} +void CoreCommunication::GetEnvState(EnvState& envState) +{ + std::shared_lock lock(m_ValueMtx); + //ConfigManager::GetInstance()->GetMachine()->GetAlarmState(envState); + + envState.m_PrintOxygen1Analog=m_SysParamWrapper->m_PrintOxygen1->GetValue(); + envState.m_PrintOxygen2Analog =m_SysParamWrapper->m_PrintOxygen2->GetValue(); + envState.m_OutsideOxygenAnalog =m_SysParamWrapper->m_OutsideOxygen->GetValue(); + + envState.m_HighPressureAnalog =m_SysParamWrapper->m_HighPressure->GetValue(); + envState.m_ProtectGasPressureAnalog =m_SysParamWrapper->m_ProtectGasPressure->GetValue(); + envState.m_PrintPressureAnalog =m_SysParamWrapper->m_PrintPressure->GetValue(); + envState.m_MoldMainCurrentPos=m_SysParamWrapper->m_MoldMainCurrentPos->GetValue(); //打印主轴当前位置_R + envState.m_MoldMainCurrentLoad=m_SysParamWrapper->m_MoldMainCurrentLoad->GetValue(); //打印主轴当前扭矩_R + envState.m_MoldSlaveCurrentPos=m_SysParamWrapper->m_MoldSlaveCurrentPos->GetValue(); //打印从轴当前位置_R + envState.m_MoldSlaveCurrentLoad=m_SysParamWrapper->m_MoldSlaveCurrentLoad->GetValue(); //打印从轴当前扭矩_R + envState.m_CleanMainCurrentPos=m_SysParamWrapper->m_CleanMainCurrentPos->GetValue(); //清粉主轴当前位置_R + envState.m_CleanMainCurrentLoad=m_SysParamWrapper->m_CleanMainCurrentLoad->GetValue(); //清粉主轴当前扭矩_R + envState.m_CleanSlaveCurrentPos=m_SysParamWrapper->m_CleanSlaveCurrentPos->GetValue(); //清粉从轴当前位置_R + envState.m_CleanSlaveCurrentLoad=m_SysParamWrapper->m_CleanSlaveCurrentLoad->GetValue(); //清粉从轴当前扭矩_R + envState.m_LoadAxisCurrentPos=m_SysParamWrapper->m_LoadAxisCurrentPos->GetValue(); //移载轴当前位置_R + envState.m_LoadAxisCurrentLoad=m_SysParamWrapper->m_LoadAxisCurrentLoad->GetValue(); //移载轴当前扭矩_R + envState.m_ArmCurrentPos=m_SysParamWrapper->m_ArmCurrentPos->GetValue(); //铺粉轴当前位置_R + envState.m_ArmCurrentLoad=m_SysParamWrapper->m_ArmCurrentLoad->GetValue(); //铺粉轴当前扭矩_R + envState.m_SupplyCurrentPos=m_SysParamWrapper->m_SupplyCurrentPos->GetValue(); //供粉转轴当前位置_R + envState.m_SupplyCurrentLoad=m_SysParamWrapper->m_SupplyCurrentLoad->GetValue(); //供粉转轴当前扭矩_R + + envState.m_IsPrintCabinDoorClose = m_IOCfgWrapper->IsSafeDoorClose(); + + envState.m_PowderJarCabinPressureVoltage=m_SysParamWrapper->m_PowderJarCabinPressureVoltage->GetValue(); + envState.m_PowderJarCabinPressure=m_SysParamWrapper->m_PowderJarCabinPressureValue->GetValue(); + envState.m_PowderLevelLength = m_SysParamWrapper->m_PowderLevelLength->GetValue(); + envState.m_PowderLevelValue = m_SysParamWrapper->m_PowderLevelValue->GetValue(); + + envState.m_LinearLayerPos = m_SysParamWrapper->m_LinearEncoderPerLayerRealValue->GetValue(); + envState.m_MoldTheoryDistance = m_SysParamWrapper->m_MoldTheoryDistance->GetValue(); + envState.m_LinearActDistance = m_SysParamWrapper->m_LinearActDistance->GetValue(); + envState.m_LinearActPulse = m_SysParamWrapper->m_LinearActPulse->GetValue(); + envState.m_LineEncPulseEqu = m_SysParamWrapper->m_LineEncPulseEqu->GetValue(); + + envState.m_PrintCar1RealWeight = m_SysParamWrapper->m_PrintCar1RealWeight->GetValue(); + envState.m_PrintCar2RealWeight = m_SysParamWrapper->m_PrintCar2RealWeight->GetValue(); + envState.m_CleanCar1RealWeight = m_SysParamWrapper->m_CleanCar1RealWeight->GetValue(); + envState.m_CleanCar2RealWeight = m_SysParamWrapper->m_CleanCar2RealWeight->GetValue(); + +} /*void CoreCommunication::AddCmd(Command* cmd) @@ -402,3 +408,34 @@ void CoreCommunication::AssistRun() }*/ +void CoreCommunication::SendProc() { + int index = 0; + string keyStr, valStr; + while (!m_sendTdExitFlag) { + index = 0; + std::unique_lock lock(m_ValueMtx); + keyStr = valStr = ""; + auto param = SysParam::m_sysParamMp.begin(); + while (param != SysParam::m_sysParamMp.end()) { + keyStr += param->first; + valStr += param->second.GetValue(); + ++index; + if (index % 30 == 0) { + WriteData* wd = new WriteData(); + ClientWrapper::Instance()->PushAllClient(new WriteData(SYSPARAMDATA, keyStr, valStr)); + keyStr = valStr = ""; + } + ++param; + } + if (!keyStr.empty() && !valStr.empty()) { + ClientWrapper::Instance()->PushAllClient(new WriteData(SYSPARAMDATA, keyStr, valStr)); + } + + index = 0; + keyStr = valStr = ""; + + + + std::this_thread::sleep_for(std::chrono::milliseconds(100)); + } +} \ No newline at end of file diff --git a/PrintS/PLC/CoreCommunication.h b/PrintS/PLC/CoreCommunication.h index 9ee1ce9..c569fbc 100644 --- a/PrintS/PLC/CoreCommunication.h +++ b/PrintS/PLC/CoreCommunication.h @@ -39,8 +39,8 @@ public: void SetSysParamWrapper(SysParamWrapper* param) { m_SysParamWrapper = param; } void SetPLCAxis(PLCAxis* axis) { m_Axis = axis; } void SetAlarmStateWrapper(SignalStateWrapper* param) { m_AlarmStateWrapper = param; }; - //void GetAlarmState(SignalState& alarmState); - //void GetEnvState(EnvState& envState); + void GetAlarmState(SignalState& alarmState); + void GetEnvState(EnvState& envState); void SetAxisRecordWrapper(AxisRecordWrapper* record) { m_AxisrecordWrapper = record; } virtual bool IsServerConnected() { @@ -68,6 +68,7 @@ private: Command* GetSendCycleCommand(); void UpdateCycleCommands(); + void SendProc(); public: BaseStat m_BaseStat; bool m_IsSmart; @@ -98,6 +99,12 @@ private: AxisRecordWrapper* m_AxisrecordWrapper; PLCInvoker* m_Invoker; + + + bool m_sendTdExitFlag; //线程退出标记 + std::thread m_sendTd; //定时发送客户端线程 + + static const unsigned int READ_INFO_ITEM_COUNT = 6; static const unsigned int READ_DATA_ITEM_COUNT = 1; }; diff --git a/PrintS/PLC/SysParam.h b/PrintS/PLC/SysParam.h index b006dd9..2ec7b40 100644 --- a/PrintS/PLC/SysParam.h +++ b/PrintS/PLC/SysParam.h @@ -5,6 +5,7 @@ #include #include "Command/PLCReceiver.h" #include +#include "../DataManage/RWData.h" using namespace std; struct DValue; @@ -28,6 +29,7 @@ public: LeaveCriticalSection(&m_ValueCS); } static std::map m_sysParamMp; //记录 + protected: int m_Addr; int m_DBNumber; @@ -167,6 +169,15 @@ struct DValue { //printf("SysParamFloat init"); } + std::string GetValue() { + if (sysParamB) return std::to_string(sysParamB->GetValue())+"_"+to_string(DATATYPE::iBOOL); + if (sysParamW) return std::to_string(sysParamW->GetValue())+"_"+to_string(iSHORT); + if (sysParamI) return std::to_string(sysParamI->GetValue()) + "_" + to_string(iINT); + if (sysParamF) return std::to_string(sysParamF->GetValue()) + "_" + to_string(iFLOAT); + if (sysParamFU) return std::to_string(sysParamFU->GetValue()) + "_" + to_string(iFLOAT); + if (sysParamWU) return std::to_string(sysParamWU->GetValue()) + "_" + to_string(iSHORT); + return ""; + } SysParamBool* sysParamB; SysParamWord* sysParamW; diff --git a/PrintS/PrintS.vcxproj b/PrintS/PrintS.vcxproj index 2ff357b..30bdd5c 100644 --- a/PrintS/PrintS.vcxproj +++ b/PrintS/PrintS.vcxproj @@ -137,7 +137,7 @@ Console true true - true + false ./lib;./lib/absl libprotobuf.lib;libprotobuf-lite.lib;libprotoc.lib;address_sorting.lib;cares.lib;gpr.lib;crypto.lib;grpc++.lib;grpc++_alts.lib;grpc++_error_details.lib;grpc++_reflection.lib;grpc++_unsecure.lib;grpc.lib;grpcpp_channelz.lib;grpc_authorization_provider.lib;grpc_plugin_support.lib;grpc_unsecure.lib;upb.lib;upb_collections_lib.lib;upb_json_lib.lib;upb_textformat_lib.lib;utf8_range_lib.lib;re2.lib;ssl.lib;testing.lib;zlib.lib;zlibstatic.lib;absl_bad_any_cast_impl.lib;absl_bad_optional_access.lib;absl_bad_variant_access.lib;absl_base.lib;absl_city.lib;absl_civil_time.lib;absl_cord.lib;absl_cordz_functions.lib;absl_cordz_handle.lib;absl_cordz_info.lib;absl_cordz_sample_token.lib;absl_cord_internal.lib;absl_crc32c.lib;absl_crc_cord_state.lib;absl_crc_cpu_detect.lib;absl_crc_internal.lib;absl_debugging_internal.lib;absl_demangle_internal.lib;absl_die_if_null.lib;absl_examine_stack.lib;absl_exponential_biased.lib;absl_failure_signal_handler.lib;absl_flags.lib;absl_flags_commandlineflag.lib;absl_flags_commandlineflag_internal.lib;absl_flags_config.lib;absl_flags_internal.lib;absl_flags_marshalling.lib;absl_flags_parse.lib;absl_flags_private_handle_accessor.lib;absl_flags_program_name.lib;absl_flags_reflection.lib;absl_flags_usage.lib;absl_flags_usage_internal.lib;absl_graphcycles_internal.lib;absl_hash.lib;absl_hashtablez_sampler.lib;absl_int128.lib;absl_kernel_timeout_internal.lib;absl_leak_check.lib;absl_log_entry.lib;absl_log_flags.lib;absl_log_globals.lib;absl_log_initialize.lib;absl_log_internal_check_op.lib;absl_log_internal_conditions.lib;absl_log_internal_format.lib;absl_log_internal_globals.lib;absl_log_internal_log_sink_set.lib;absl_log_internal_message.lib;absl_log_internal_nullguard.lib;absl_log_internal_proto.lib;absl_log_severity.lib;absl_log_sink.lib;absl_low_level_hash.lib;absl_malloc_internal.lib;absl_periodic_sampler.lib;absl_random_distributions.lib;absl_random_internal_distribution_test_util.lib;absl_random_internal_platform.lib;absl_random_internal_pool_urbg.lib;absl_random_internal_randen.lib;absl_random_internal_randen_hwaes.lib;absl_random_internal_randen_hwaes_impl.lib;absl_random_internal_randen_slow.lib;absl_random_internal_seed_material.lib;absl_random_seed_gen_exception.lib;absl_random_seed_sequences.lib;absl_raw_hash_set.lib;absl_raw_logging_internal.lib;absl_scoped_set_env.lib;absl_spinlock_wait.lib;absl_stacktrace.lib;absl_status.lib;absl_statusor.lib;absl_strerror.lib;absl_strings.lib;absl_strings_internal.lib;absl_string_view.lib;absl_str_format_internal.lib;absl_symbolize.lib;absl_synchronization.lib;absl_throw_delegate.lib;absl_time.lib;absl_time_zone.lib;Ws2_32.lib;utf8_range.lib;utf8_validity.lib;opengl32.lib;sqlite3.lib;Rpcrt4.lib;ws2_32.lib;winmm.lib;dbghelp.lib;version.lib;gdiplus.lib;GxIAPICPPEx.lib;MVSDKmd.lib;jpeg-static.lib;turbojpeg-static.lib;RTC5DLLx64.lib;opencv_world455.lib;expat.lib;%(AdditionalDependencies) crypto.lib @@ -227,8 +227,8 @@ - - + + @@ -436,8 +436,10 @@ - + + + diff --git a/PrintS/PrintS.vcxproj.filters b/PrintS/PrintS.vcxproj.filters index 76707de..4e40971 100644 --- a/PrintS/PrintS.vcxproj.filters +++ b/PrintS/PrintS.vcxproj.filters @@ -77,9 +77,6 @@ {92e21183-dc80-46b5-ad1d-750bbe59eeca} - - {3144f523-bb18-4add-b886-c19f2f90c72a} - {5b502dd4-fc0d-4177-89fa-babb40b7ab3c} @@ -128,6 +125,9 @@ {b3261719-dd99-4a4b-8621-cb665ae76036} + + {3144f523-bb18-4add-b886-c19f2f90c72a} + @@ -518,15 +518,9 @@ external\QRCode - - DataManage - Config - - Controler - PLC @@ -681,6 +675,12 @@ external\minizip + + Controller + + + DataManage + @@ -1406,9 +1406,6 @@ Config - - Controler - PLC @@ -1738,6 +1735,15 @@ + + DataManage + + + Controller + + + DataManage +