添加参数映射功能等

This commit is contained in:
wangxx1809 2024-03-27 16:09:22 +08:00
parent 3c98b83bb5
commit c61f379dd9
15 changed files with 1126 additions and 272 deletions

View File

@ -114,7 +114,7 @@ void ConfigManager::PreInit()
void ConfigManager::Init()
{
m_Machine = Machine::CreateInstance(m_MachineCfg.m_MachineType);
m_Machine = Machine::CreateInstance(MachineTypeCfg::HBD_1000/*m_MachineCfg.m_MachineType*/);
m_LoadCfg = m_Machine->CreateLoadAxisCfg();
m_MoldCfg = m_Machine->CreateMoldAxisCfg();

View File

@ -36,13 +36,15 @@ enum READTYPE {
};
enum DATATYPE {
iBOOL =0,
iBOOL = 0,
iSHORT,
iUSHORT,
iINT,
iUINT,
iFLOAT,
iSTRING,
iWORD,
};
class ClientInfo;

View File

@ -6,7 +6,10 @@
DataHandle::DataHandle()
: m_dataCallBack(nullptr)
, m_streamServer(nullptr){
, m_streamServer(nullptr)
, m_config(nullptr)
, m_controler(nullptr)
, m_testFlag(false){
}
@ -28,19 +31,21 @@ void DataHandle::Init() {
m_config->Init();
//WriteData();
m_streamServer = new StreamServer(m_config->GetMachine());
//测试线程
m_testTd = std::thread ([this] {
static float i = 10.12540f;
while (1) {
while (!m_testFlag) {
WriteData* wd = new WriteData();
wd->dataType = RESPOND;
wd->strValue = std::to_string(i);
wd->nameKey = "hello";
wd->result = true;
wd->valueType = iFLOAT;
if (m_streamServer->GetClient())
if (m_streamServer && m_streamServer->GetClient())
m_streamServer->GetClient()->SetPushMsg(wd);
std::this_thread::sleep_for(std::chrono::seconds(1));
}
@ -60,6 +65,9 @@ void DataHandle::Run() {
}
void DataHandle::Stop() {
m_testFlag = true;
if (m_testTd.joinable()) m_testTd.join();
m_streamServer->Stop();
}

View File

@ -22,7 +22,7 @@ private:
ConfigManager* m_config;
Controler* m_controler;
bool m_testFlag; //测试线程
public:
StreamServer* m_streamServer;

View File

@ -17,8 +17,6 @@ using stream::RequestInfo;
using stream::ResponseInfo;
class StreamServer final : public Stream::Service {
typedef void (*DataCallBack)(void* pthis,const ReadData& msg);
typedef void (*ClientStateCallBack)(void* pthis,const ReadData& msg);
@ -39,7 +37,7 @@ public:
ClientInfo* GetClient() {
std::lock_guard<std::mutex> lck(m_clientMutex);
return m_clientList.front();
return m_clientList.empty() ? nullptr : m_clientList.front();
}
ClientInfo* GetAllClient() {

View File

@ -8,6 +8,7 @@
#include "../Toast.h"
#include "../SystemInfo.h"
#include "../Logger.h"
//#include "../utils/DataKey.hpp"
HBD1000::HBD1000(MachineTypeCfg::MachineTypeId type) :Machine(type)
{
@ -11219,6 +11220,16 @@ void HBD1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_MotionDebug = new SysParamBool(flag++, 1, cc); //动作流程调试模式
m_SignalStateWrapper->m_CylinderExceptionReset = new SysParamBool(flag++, 1, cc); //气缸异常复位
m_plcMp.insert(make_pair("PLCKeepAlive", DValue(m_SignalStateWrapper->m_PLCKeepAlive)));
m_plcMp.insert(make_pair("PCKeepAlice", DValue(m_SignalStateWrapper->m_PCKeepAlice)));
m_plcMp.insert(make_pair("DeviceStandby", DValue(m_SignalStateWrapper->m_DeviceStandby)));
m_plcMp.insert(make_pair("DevicePrinting", DValue(m_SignalStateWrapper->m_DevicePrinting)));
m_plcMp.insert(make_pair("DeviceManualDebug", DValue(m_SignalStateWrapper->m_DeviceManualDebug)));
m_plcMp.insert(make_pair("DeviceAutoRuning", DValue(m_SignalStateWrapper->m_DeviceAutoRuning)));
m_plcMp.insert(make_pair("TouchPanelCtrling", DValue(m_SignalStateWrapper->m_TouchPanelCtrling)));
m_plcMp.insert(make_pair("MotionDebug", DValue(m_SignalStateWrapper->m_MotionDebug)));
m_plcMp.insert(make_pair("CylinderExceptionReset", DValue(m_SignalStateWrapper->m_CylinderExceptionReset)));
flag = 55 * 8 + 6;
m_SignalStateWrapper->m_PLCConnectAlarm = new SysParamBool(flag++, 1, cc); //PC与PLC网络异常
m_SignalStateWrapper->m_SystemStopAlarm = new SysParamBool(flag++, 1, cc); //系统急停异常
@ -11238,6 +11249,25 @@ void HBD1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_Laser4Alarm = new SysParamBool(flag++, 1, cc); //激光器4报警
m_SignalStateWrapper->m_HeatingInputAlarm = new SysParamBool(flag++, 1, cc); //加热输入异常
m_SignalStateWrapper->m_HeatingOutputAlarm = new SysParamBool(flag++, 1, cc); //加热输出异常
m_plcMp.insert(make_pair("PLCConnectAlarm", DValue(m_SignalStateWrapper->m_PLCConnectAlarm)));
m_plcMp.insert(make_pair("SystemStopAlarm", DValue(m_SignalStateWrapper->m_SystemStopAlarm)));
m_plcMp.insert(make_pair("HighPressureLackAlarm", DValue(m_SignalStateWrapper->m_HighPressureLackAlarm)));
m_plcMp.insert(make_pair("ProtectGasLackAlarm", DValue(m_SignalStateWrapper->m_ProtectGasLackAlarm)));
m_plcMp.insert(make_pair("PowerDownAlarm", DValue(m_SignalStateWrapper->m_PowerDownAlarm)));
m_plcMp.insert(make_pair("OutsideOxygenLackAlarm", DValue(m_SignalStateWrapper->m_OutsideOxygenLackAlarm)));
m_plcMp.insert(make_pair("LaserChillerAlarm", DValue(m_SignalStateWrapper->m_LaserChillerAlarm)));
m_plcMp.insert(make_pair("BusAirSwitchAlarm", DValue(m_SignalStateWrapper->m_BusAirSwitchAlarm)));
m_plcMp.insert(make_pair("ExtDevicePowerAirSwitchAlarm", DValue(m_SignalStateWrapper->m_ExtDevicePowerAirSwitchAlarm)));
m_plcMp.insert(make_pair("HeatingPowerAirSwitchAlarm", DValue(m_SignalStateWrapper->m_HeatingPowerAirSwitchAlarm)));
m_plcMp.insert(make_pair("LaserPowerAirSwitchAlarm", DValue(m_SignalStateWrapper->m_LaserPowerAirSwitchAlarm)));
m_plcMp.insert(make_pair("ServoPowerAirSwitchAlarm", DValue(m_SignalStateWrapper->m_ServoPowerAirSwitchAlarm)));
m_plcMp.insert(make_pair("Laser1Alarm", DValue(m_SignalStateWrapper->m_Laser1Alarm)));
m_plcMp.insert(make_pair("Laser2Alarm", DValue(m_SignalStateWrapper->m_Laser2Alarm)));
m_plcMp.insert(make_pair("Laser3Alarm", DValue(m_SignalStateWrapper->m_Laser3Alarm)));
m_plcMp.insert(make_pair("Laser4Alarm", DValue(m_SignalStateWrapper->m_Laser4Alarm)));
m_plcMp.insert(make_pair("HeatingInputAlarm", DValue(m_SignalStateWrapper->m_HeatingInputAlarm)));
m_plcMp.insert(make_pair("HeatingOutputAlarm", DValue(m_SignalStateWrapper->m_HeatingOutputAlarm)));
m_SignalStateWrapper->m_PrintStorageCar1JarFullWarn = new SysParamBool(flag++, 1, cc); //打印存粉小车1粉罐已满警示
m_SignalStateWrapper->m_PrintStorageCar1DisconnectWarn = new SysParamBool(flag++, 1, cc); //打印存粉小车1没有连接警示
@ -11274,11 +11304,47 @@ void HBD1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_PrintCabinLockDisableAlarm = new SysParamBool(flag++, 1, cc); //打印舱电锁感应异常
m_SignalStateWrapper->m_CleanBoxUpOpenAlarm = new SysParamBool(flag++, 1, cc); //清粉箱上盖气缸打开不到位异常
m_SignalStateWrapper->m_CleanBoxUpCloseAlarm = new SysParamBool(flag++, 1, cc); //清粉箱上盖气缸关闭不到位异常
m_plcMp.insert(make_pair("PrintStorageCar1JarFullWarn", DValue(m_SignalStateWrapper->m_PrintStorageCar1JarFullWarn)));
m_plcMp.insert(make_pair("PrintStorageCar1DisconnectWarn", DValue(m_SignalStateWrapper->m_PrintStorageCar1DisconnectWarn)));
m_plcMp.insert(make_pair("PrintStorageCar2JarFullWarn", DValue(m_SignalStateWrapper->m_PrintStorageCar2JarFullWarn)));
m_plcMp.insert(make_pair("PrintStorageCar2DisconnectWarn", DValue(m_SignalStateWrapper->m_PrintStorageCar2DisconnectWarn)));
m_plcMp.insert(make_pair("MoldMainUpLimitActive", DValue(m_SignalStateWrapper->m_MoldMainUpLimitActive)));
m_plcMp.insert(make_pair("MoldMainDownLimitActive", DValue(m_SignalStateWrapper->m_MoldMainDownLimitActive)));
m_plcMp.insert(make_pair("MoldSlaveUpLimitActive", DValue(m_SignalStateWrapper->m_MoldSlaveUpLimitActive)));
m_plcMp.insert(make_pair("MoldSlaveDownLimitActive", DValue(m_SignalStateWrapper->m_MoldSlaveDownLimitActive)));
m_plcMp.insert(make_pair("Print3RSeparateAlarm", DValue(m_SignalStateWrapper->m_Print3RSeparateAlarm)));
m_plcMp.insert(make_pair("Print3RConnectAlarm", DValue(m_SignalStateWrapper->m_Print3RConnectAlarm)));
m_plcMp.insert(make_pair("Print3RDisableAlarm", DValue(m_SignalStateWrapper->m_Print3RDisableAlarm)));
m_plcMp.insert(make_pair("PrintTrackDisableWarn", DValue(m_SignalStateWrapper->m_PrintTrackDisableWarn)));
m_plcMp.insert(make_pair("PrintPressOnDisableAlarm", DValue(m_SignalStateWrapper->m_PrintPressOnDisableAlarm)));
m_plcMp.insert(make_pair("PrintPressOffDisableAlarm", DValue(m_SignalStateWrapper->m_PrintPressOffDisableAlarm)));
m_plcMp.insert(make_pair("PrintJackUpDisableAlarm", DValue(m_SignalStateWrapper->m_PrintJackUpDisableAlarm)));
m_plcMp.insert(make_pair("PrintJackDownDisableAlarm", DValue(m_SignalStateWrapper->m_PrintJackDownDisableAlarm)));
m_plcMp.insert(make_pair("PrintSupportOnDisableAlarm", DValue(m_SignalStateWrapper->m_PrintSupportOnDisableAlarm)));
m_plcMp.insert(make_pair("PrintSupportOffDisableAlarm", DValue(m_SignalStateWrapper->m_PrintSupportOffDisableAlarm)));
m_plcMp.insert(make_pair("PrintHorizontalExtendOnAlarm", DValue(m_SignalStateWrapper->m_PrintHorizontalExtendOnAlarm)));
m_plcMp.insert(make_pair("PrintHorizontalExtendOffAlarm", DValue(m_SignalStateWrapper->m_PrintHorizontalExtendOffAlarm)));
m_plcMp.insert(make_pair("PrintVerticalExtendOnAlarm", DValue(m_SignalStateWrapper->m_PrintVerticalExtendOnAlarm)));
m_plcMp.insert(make_pair("PrintVerticalExtendOffAlarm", DValue(m_SignalStateWrapper->m_PrintVerticalExtendOffAlarm)));
m_plcMp.insert(make_pair("PrintCylinderVerifyAlarm", DValue(m_SignalStateWrapper->m_PrintCylinderVerifyAlarm)));
m_plcMp.insert(make_pair("CleanMainUpLimit", DValue(m_SignalStateWrapper->m_CleanMainUpLimit)));
m_plcMp.insert(make_pair("CleanMainDownLimit", DValue(m_SignalStateWrapper->m_CleanMainDownLimit)));
m_plcMp.insert(make_pair("CleanSlaveUpLimit", DValue(m_SignalStateWrapper->m_CleanSlaveUpLimit)));
m_plcMp.insert(make_pair("CleanSlaveDownLimit", DValue(m_SignalStateWrapper->m_CleanSlaveDownLimit)));
m_plcMp.insert(make_pair("CleanTrackConnectAlarm", DValue(m_SignalStateWrapper->m_CleanTrackConnectAlarm)));
m_plcMp.insert(make_pair("CleanTrackPosDisableAlarm", DValue(m_SignalStateWrapper->m_CleanTrackPosDisableAlarm)));
m_plcMp.insert(make_pair("CleanLiftStopAlarm", DValue(m_SignalStateWrapper->m_CleanLiftStopAlarm)));
m_plcMp.insert(make_pair("CleanCabinDisableAlarm", DValue(m_SignalStateWrapper->m_CleanCabinDisableAlarm)));
m_plcMp.insert(make_pair("MainPowerLossCheckAlarm", DValue(m_SignalStateWrapper->m_MainPowerLossCheckAlarm)));
m_plcMp.insert(make_pair("PrintCabinLockDisableAlarm", DValue(m_SignalStateWrapper->m_PrintCabinLockDisableAlarm)));
flag++;
flag++;
m_SignalStateWrapper->m_CleanBoxPressOnAlarm = new SysParamBool(flag++, 1, cc); //清粉箱压紧气缸压紧不到位异常
m_SignalStateWrapper->m_CleanBoxPressOffAlarm = new SysParamBool(flag++, 1, cc); //清粉箱压紧气缸松开不到位异常
m_plcMp.insert(make_pair("CleanBoxPressOnAlarm", DValue(m_SignalStateWrapper->m_CleanBoxPressOnAlarm)));
m_plcMp.insert(make_pair("CleanBoxPressOffAlarm", DValue(m_SignalStateWrapper->m_CleanBoxPressOffAlarm)));
flag++;
flag++;
flag++;
@ -11299,10 +11365,30 @@ void HBD1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_LoadAxisSearchEdgeDisableAlarm = new SysParamBool(flag++, 1, cc); //移载寻边感应器失效异常
m_SignalStateWrapper->m_LoadAxisInnertOnAlarm = new SysParamBool(flag++, 1, cc); //移载插销气缸插紧不到位异常
m_SignalStateWrapper->m_LoadAxisInnertOffAlarm = new SysParamBool(flag++, 1, cc); //移载插销气缸松开不到位异常
m_plcMp.insert(make_pair("CleanBoxCylinderDisconnectAlarm", DValue(m_SignalStateWrapper->m_CleanBoxCylinderDisconnectAlarm)));
m_plcMp.insert(make_pair("CleanPosPressOnAlarm", DValue(m_SignalStateWrapper->m_CleanPosPressOnAlarm)));
m_plcMp.insert(make_pair("CleanPosPressOffAlarm", DValue(m_SignalStateWrapper->m_CleanPosPressOffAlarm)));
m_plcMp.insert(make_pair("TrackAssistExtendOnAlarm", DValue(m_SignalStateWrapper->m_TrackAssistExtendOnAlarm)));
m_plcMp.insert(make_pair("TrackAssistExtendOffAlarm", DValue(m_SignalStateWrapper->m_TrackAssistExtendOffAlarm)));
m_plcMp.insert(make_pair("Clean3RConnectAlarm", DValue(m_SignalStateWrapper->m_Clean3RConnectAlarm)));
m_plcMp.insert(make_pair("Clean3RCombineAlarm", DValue(m_SignalStateWrapper->m_Clean3RCombineAlarm)));
m_plcMp.insert(make_pair("Clean3RDisableAlarm", DValue(m_SignalStateWrapper->m_Clean3RDisableAlarm)));
m_plcMp.insert(make_pair("ArmFrontLimit", DValue(m_SignalStateWrapper->m_ArmFrontLimit)));
m_plcMp.insert(make_pair("ArmBackLimit", DValue(m_SignalStateWrapper->m_ArmBackLimit)));
m_plcMp.insert(make_pair("LoadAxisLeftLimit", DValue(m_SignalStateWrapper->m_LoadAxisLeftLimit)));
m_plcMp.insert(make_pair("LoadAxisRightLimit", DValue(m_SignalStateWrapper->m_LoadAxisRightLimit)));
m_plcMp.insert(make_pair("LoadAxisSearchEdgeDisableAlarm", DValue(m_SignalStateWrapper->m_LoadAxisSearchEdgeDisableAlarm)));
m_plcMp.insert(make_pair("LoadAxisInnertOnAlarm", DValue(m_SignalStateWrapper->m_LoadAxisInnertOnAlarm)));
m_plcMp.insert(make_pair("LoadAxisInnertOffAlarm", DValue(m_SignalStateWrapper->m_LoadAxisInnertOffAlarm)));
flag = 64 * 8 + 7;
m_SignalStateWrapper->m_PrintInnerLossPressureAlarm= new SysParamBool(flag++, 1, cc); //舱内失压报警
m_SignalStateWrapper->m_PrintOxygenRiseAlarm= new SysParamBool(flag++, 1, cc); //氧含量快速升高报警
m_SignalStateWrapper->m_PrintHandupSeparateAlarm= new SysParamBool(flag++, 1, cc); //顶升气缸异常分离报警
m_plcMp.insert(make_pair("PrintInnerLossPressureAlarm", DValue(m_SignalStateWrapper->m_PrintInnerLossPressureAlarm)));
m_plcMp.insert(make_pair("PrintOxygenRiseAlarm", DValue(m_SignalStateWrapper->m_PrintOxygenRiseAlarm)));
m_plcMp.insert(make_pair("PrintHandupSeparateAlarm", DValue(m_SignalStateWrapper->m_PrintHandupSeparateAlarm)));
flag = 65 * 8 + 2;
m_SignalStateWrapper->m_PowderPosition1Alarm = new SysParamBool(flag++, 1, cc); //粉仓料位感应器1异常
m_SignalStateWrapper->m_PowderPosition2Alarm = new SysParamBool(flag++, 1, cc); //粉仓料位感应器2异常
@ -11349,10 +11435,52 @@ void HBD1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_LoadAxisSoftStopTrigger = new SysParamBool(flag++, 1, cc); //移载轴软急停触发
m_SignalStateWrapper->m_CoverSoftStopTrigger = new SysParamBool(flag++, 1, cc); //铺粉轴软急停触发
m_SignalStateWrapper->m_CoverHomeException= new SysParamBool(flag++, 1, cc); //铺粉归原点异常
m_plcMp.insert(make_pair("PowderPosition1Alarm", DValue(m_SignalStateWrapper->m_PowderPosition1Alarm)));
m_plcMp.insert(make_pair("PowderPosition2Alarm", DValue(m_SignalStateWrapper->m_PowderPosition2Alarm)));
m_plcMp.insert(make_pair("PowderPosition3Alarm", DValue(m_SignalStateWrapper->m_PowderPosition3Alarm)));
m_plcMp.insert(make_pair("PowderPosition4Alarm", DValue(m_SignalStateWrapper->m_PowderPosition4Alarm)));
m_plcMp.insert(make_pair("PowderPosition5Alarm", DValue(m_SignalStateWrapper->m_PowderPosition5Alarm)));
m_plcMp.insert(make_pair("SupplyHomeIndexDisableAlarm", DValue(m_SignalStateWrapper->m_SupplyHomeIndexDisableAlarm)));
m_plcMp.insert(make_pair("SupplyPipeBlockWarn", DValue(m_SignalStateWrapper->m_SupplyPipeBlockWarn)));
m_plcMp.insert(make_pair("PrintOxygen1DeciceAlarm", DValue(m_SignalStateWrapper->m_PrintOxygen1DeciceAlarm)));
m_plcMp.insert(make_pair("PrintOxygen2DeviceAlarm", DValue(m_SignalStateWrapper->m_PrintOxygen2DeviceAlarm)));
m_plcMp.insert(make_pair("OutsideOxygenDeviceAlarm", DValue(m_SignalStateWrapper->m_OutsideOxygenDeviceAlarm)));
m_plcMp.insert(make_pair("PrintPressureOverLimitAlarm", DValue(m_SignalStateWrapper->m_PrintPressureOverLimitAlarm)));
m_plcMp.insert(make_pair("ScannerChillerAlarm", DValue(m_SignalStateWrapper->m_ScannerChillerAlarm)));
m_plcMp.insert(make_pair("PurifierChillerAlarm", DValue(m_SignalStateWrapper->m_PurifierChillerAlarm)));
m_plcMp.insert(make_pair("MoldTorqueAlarm", DValue(m_SignalStateWrapper->m_MoldTorqueAlarm)));
m_plcMp.insert(make_pair("MoldSlaveTorqueAlarm", DValue(m_SignalStateWrapper->m_MoldSlaveTorqueAlarm)));
m_plcMp.insert(make_pair("CleanTorqueAlarm", DValue(m_SignalStateWrapper->m_CleanTorqueAlarm)));
m_plcMp.insert(make_pair("CleanSlaveTorqueAlarm", DValue(m_SignalStateWrapper->m_CleanSlaveTorqueAlarm)));
m_plcMp.insert(make_pair("LoadTorqueAlarm", DValue(m_SignalStateWrapper->m_LoadTorqueAlarm)));
m_plcMp.insert(make_pair("PrintMainOverSoftUpLimit", DValue(m_SignalStateWrapper->m_PrintMainOverSoftUpLimit)));
m_plcMp.insert(make_pair("PrintMainOverSoftDownLimit", DValue(m_SignalStateWrapper->m_PrintMainOverSoftDownLimit)));
m_plcMp.insert(make_pair("CleanMainOverSoftUpLimit", DValue(m_SignalStateWrapper->m_CleanMainOverSoftUpLimit)));
m_plcMp.insert(make_pair("CleanMainOverSoftDownLimit", DValue(m_SignalStateWrapper->m_CleanMainOverSoftDownLimit)));
m_plcMp.insert(make_pair("LoadAxisOverSoftLeftLimit", DValue(m_SignalStateWrapper->m_LoadAxisOverSoftLeftLimit)));
m_plcMp.insert(make_pair("LoadAxisOverSoftRightLimit", DValue(m_SignalStateWrapper->m_LoadAxisOverSoftRightLimit)));
m_plcMp.insert(make_pair("ArmOverSoftFrontLimit", DValue(m_SignalStateWrapper->m_ArmOverSoftFrontLimit)));
m_plcMp.insert(make_pair("ArmOverSoftBackLimit", DValue(m_SignalStateWrapper->m_ArmOverSoftBackLimit)));
m_plcMp.insert(make_pair("PrintMainServoAlarmSignal", DValue(m_SignalStateWrapper->m_PrintMainServoAlarmSignal)));
m_plcMp.insert(make_pair("PrintSlaveServoAlarmSignal", DValue(m_SignalStateWrapper->m_PrintSlaveServoAlarmSignal)));
m_plcMp.insert(make_pair("CleanMainServoAlarmSignal", DValue(m_SignalStateWrapper->m_CleanMainServoAlarmSignal)));
m_plcMp.insert(make_pair("CleanSlaveServoAlarmSignal", DValue(m_SignalStateWrapper->m_CleanSlaveServoAlarmSignal)));
m_plcMp.insert(make_pair("LoadAxisServoAlarmSignal", DValue(m_SignalStateWrapper->m_LoadAxisServoAlarmSignal)));
m_plcMp.insert(make_pair("ArmServoAlarmSignal", DValue(m_SignalStateWrapper->m_ArmServoAlarmSignal)));
m_plcMp.insert(make_pair("SupplyServoAlarmSignal", DValue(m_SignalStateWrapper->m_SupplyServoAlarmSignal)));
m_plcMp.insert(make_pair("PrintMainSoftStopTrigger", DValue(m_SignalStateWrapper->m_PrintMainSoftStopTrigger)));
m_plcMp.insert(make_pair("PrintSlaveSoftStopTrigger", DValue(m_SignalStateWrapper->m_PrintSlaveSoftStopTrigger)));
m_plcMp.insert(make_pair("CleanMainSoftStopTrigger", DValue(m_SignalStateWrapper->m_CleanMainSoftStopTrigger)));
m_plcMp.insert(make_pair("CleanSlaveSoftStopTrigger", DValue(m_SignalStateWrapper->m_CleanSlaveSoftStopTrigger)));
m_plcMp.insert(make_pair("LoadAxisSoftStopTrigger", DValue(m_SignalStateWrapper->m_LoadAxisSoftStopTrigger)));
m_plcMp.insert(make_pair("CoverSoftStopTrigger", DValue(m_SignalStateWrapper->m_CoverSoftStopTrigger)));
m_plcMp.insert(make_pair("CoverHomeException", DValue(m_SignalStateWrapper->m_CoverHomeException)));
flag = 78;
m_SignalStateWrapper->m_CylinderState = new SysParamInt(flag, 1, cc); //缸体状态_R
m_plcMp.insert(make_pair("CylinderState", DValue(m_SignalStateWrapper->m_CylinderState)));
flag = 80 * 8;
m_SignalStateWrapper->m_CylinderReachPrintTriger = new SysParamBool(flag++, 1, cc); //触发缸体到达打印位_自动_RW
m_SignalStateWrapper->m_CylinderReachPrintRun = new SysParamBool(flag++, 1, cc); //缸体到打印位运行中_自动_RW
@ -11394,6 +11522,48 @@ void HBD1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_StorgeCarDeoxygenFinished = new SysParamBool(flag++, 1, cc); //存粉小车除氧完毕_RW
m_SignalStateWrapper->m_CleanBoxVacuumTriger = new SysParamBool(flag++, 1, cc); //清粉箱启动吸尘器_R
m_SignalStateWrapper->m_PrintVacuumTriger = new SysParamBool(flag++, 1, cc); //打印室启动吸尘器_W
m_plcMp.insert(make_pair("CylinderReachPrintTriger", DValue(m_SignalStateWrapper->m_CylinderReachPrintTriger)));
m_plcMp.insert(make_pair("CylinderReachPrintRun", DValue(m_SignalStateWrapper->m_CylinderReachPrintRun)));
m_plcMp.insert(make_pair("CylinderReachPrintFinished", DValue(m_SignalStateWrapper->m_CylinderReachPrintFinished)));
m_plcMp.insert(make_pair("CylinderPrintLoadTriger", DValue(m_SignalStateWrapper->m_CylinderPrintLoadTriger)));
m_plcMp.insert(make_pair("CylinderPrintLoadRun", DValue(m_SignalStateWrapper->m_CylinderPrintLoadRun)));
m_plcMp.insert(make_pair("CylinderPrintLoadFinished", DValue(m_SignalStateWrapper->m_CylinderPrintLoadFinished)));
m_plcMp.insert(make_pair("CylinderPrintUnloadTriger", DValue(m_SignalStateWrapper->m_CylinderPrintUnloadTriger)));
m_plcMp.insert(make_pair("CylinderPrintUnloadRun", DValue(m_SignalStateWrapper->m_CylinderPrintUnloadRun)));
m_plcMp.insert(make_pair("CylinderPrintUnloadFinished", DValue(m_SignalStateWrapper->m_CylinderPrintUnloadFinished)));
m_plcMp.insert(make_pair("MoldConnectCylinderTriger", DValue(m_SignalStateWrapper->m_MoldConnectCylinderTriger)));
m_plcMp.insert(make_pair("MoldConnectCylinderRun", DValue(m_SignalStateWrapper->m_MoldConnectCylinderRun)));
m_plcMp.insert(make_pair("MoldConnectCylinderFinished", DValue(m_SignalStateWrapper->m_MoldConnectCylinderFinished)));
m_plcMp.insert(make_pair("MoldDisconnectCylinderTriger", DValue(m_SignalStateWrapper->m_MoldDisconnectCylinderTriger)));
m_plcMp.insert(make_pair("MoldDisconnectCylinderRun", DValue(m_SignalStateWrapper->m_MoldDisconnectCylinderRun)));
m_plcMp.insert(make_pair("MoldDisconnectCylinderFinished", DValue(m_SignalStateWrapper->m_MoldDisconnectCylinderFinished)));
m_plcMp.insert(make_pair("CylinderReachCleanTriger", DValue(m_SignalStateWrapper->m_CylinderReachCleanTriger)));
m_plcMp.insert(make_pair("CylinderReachCleanRun", DValue(m_SignalStateWrapper->m_CylinderReachCleanRun)));
m_plcMp.insert(make_pair("CylinderReachCleanFinished", DValue(m_SignalStateWrapper->m_CylinderReachCleanFinished)));
m_plcMp.insert(make_pair("CylinderConnectCleanBoxTriger", DValue(m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger)));
m_plcMp.insert(make_pair("CylinderConnectCleanBoxRun", DValue(m_SignalStateWrapper->m_CylinderConnectCleanBoxRun)));
m_plcMp.insert(make_pair("CylinderConnectCleanBoxFinished", DValue(m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished)));
m_plcMp.insert(make_pair("CylinderDisconnectCleanBoxTriger", DValue(m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger)));
m_plcMp.insert(make_pair("CylinderDisconnectCleanBoxRun", DValue(m_SignalStateWrapper->m_CylinderDisconnectCleanBoxRun)));
m_plcMp.insert(make_pair("CylinderDisconnectCleanBoxFinished", DValue(m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished)));
m_plcMp.insert(make_pair("CoverTriger", DValue(m_SignalStateWrapper->m_CoverTriger)));
m_plcMp.insert(make_pair("IsCovering", DValue(m_SignalStateWrapper->m_IsCovering)));
m_plcMp.insert(make_pair("IsCoverFinishedCanPrint", DValue(m_SignalStateWrapper->m_IsCoverFinishedCanPrint)));
m_plcMp.insert(make_pair("IsCoverDebug", DValue(m_SignalStateWrapper->m_IsCoverDebug)));
m_plcMp.insert(make_pair("IsFirstCover", DValue(m_SignalStateWrapper->m_IsFirstCover)));
m_plcMp.insert(make_pair("PrintDeoxygenTriger", DValue(m_SignalStateWrapper->m_PrintDeoxygenTriger)));
m_plcMp.insert(make_pair("PrintDeoxygenRun", DValue(m_SignalStateWrapper->m_PrintDeoxygenRun)));
m_plcMp.insert(make_pair("PrintDeoxygenFinished", DValue(m_SignalStateWrapper->m_PrintDeoxygenFinished)));
m_plcMp.insert(make_pair("MoldDeoxygenTriger", DValue(m_SignalStateWrapper->m_MoldDeoxygenTriger)));
m_plcMp.insert(make_pair("MoldDeoxygenRun", DValue(m_SignalStateWrapper->m_MoldDeoxygenRun)));
m_plcMp.insert(make_pair("MoldDeoxygenFinished", DValue(m_SignalStateWrapper->m_MoldDeoxygenFinished)));
m_plcMp.insert(make_pair("StorgeCarDeoxygenTriger", DValue(m_SignalStateWrapper->m_StorgeCarDeoxygenTriger)));
m_plcMp.insert(make_pair("StorgeCarDeoxygenRun", DValue(m_SignalStateWrapper->m_StorgeCarDeoxygenRun)));
m_plcMp.insert(make_pair("StorgeCarDeoxygenFinished", DValue(m_SignalStateWrapper->m_StorgeCarDeoxygenFinished)));
m_plcMp.insert(make_pair("CleanBoxVacuumTriger", DValue(m_SignalStateWrapper->m_CleanBoxVacuumTriger)));
m_plcMp.insert(make_pair("PrintVacuumTriger", DValue(m_SignalStateWrapper->m_PrintVacuumTriger)));
flag++;
flag++;
m_SignalStateWrapper->m_DisableRasterJudge = new SysParamBool(flag++, 1, cc); //屏蔽光栅尺判断_W
@ -11412,6 +11582,22 @@ void HBD1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_MoldDeoxygenEnable = new SysParamBool(flag++, 1, cc); //触发打印升降轴除氧EN_R
m_SignalStateWrapper->m_CalcLoadSearchEdgeOffset = new SysParamBool(flag++, 1, cc); //计算移栽寻边偏移值_RW
m_SignalStateWrapper->m_ManualTestOffset = new SysParamBool(flag++, 1, cc); //手动测试偏移值
m_plcMp.insert(make_pair("DisableRasterJudge", DValue(m_SignalStateWrapper->m_DisableRasterJudge)));
m_plcMp.insert(make_pair("RasterJudgeOK", DValue(m_SignalStateWrapper->m_RasterJudgeOK)));
m_plcMp.insert(make_pair("RasterJudgeNG", DValue(m_SignalStateWrapper->m_RasterJudgeNG)));
m_plcMp.insert(make_pair("CylinderReachPrintEnable", DValue(m_SignalStateWrapper->m_CylinderReachPrintEnable)));
m_plcMp.insert(make_pair("CylinderPrintLoadEnable", DValue(m_SignalStateWrapper->m_CylinderPrintLoadEnable)));
m_plcMp.insert(make_pair("CylinderPrintUnloadEnable", DValue(m_SignalStateWrapper->m_CylinderPrintUnloadEnable)));
m_plcMp.insert(make_pair("MoldConnectCylinderEnable", DValue(m_SignalStateWrapper->m_MoldConnectCylinderEnable)));
m_plcMp.insert(make_pair("MoldDisconnectCylinderEnable", DValue(m_SignalStateWrapper->m_MoldDisconnectCylinderEnable)));
m_plcMp.insert(make_pair("CylinderReachCleanEnable", DValue(m_SignalStateWrapper->m_CylinderReachCleanEnable)));
m_plcMp.insert(make_pair("CylinderConnectCleanBoxEnable", DValue(m_SignalStateWrapper->m_CylinderConnectCleanBoxEnable)));
m_plcMp.insert(make_pair("CylinderDisconnectCleanBoxEnable", DValue(m_SignalStateWrapper->m_CylinderDisconnectCleanBoxEnable)));
m_plcMp.insert(make_pair("CoverEnable", DValue(m_SignalStateWrapper->m_CoverEnable)));
m_plcMp.insert(make_pair("MoldDeoxygenEnable", DValue(m_SignalStateWrapper->m_MoldDeoxygenEnable)));
m_plcMp.insert(make_pair("CalcLoadSearchEdgeOffset", DValue(m_SignalStateWrapper->m_CalcLoadSearchEdgeOffset)));
m_plcMp.insert(make_pair("ManualTestOffset", DValue(m_SignalStateWrapper->m_ManualTestOffset)));
flag = 96 * 8;
m_SignalStateWrapper->m_PrintStoreCar1ExhaustEnable = new SysParamBool(flag++, 1, cc); //触发打印存粉小车1排粉
@ -11426,6 +11612,16 @@ void HBD1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_RollerEdgeSearchSuccess = new SysParamBool(flag++, 1, cc); //滚粉轴寻边成功
m_SignalStateWrapper->m_RollerEdgeSearchFaild = new SysParamBool(flag++, 1, cc); //滚粉轴寻边失败
m_plcMp.insert(make_pair("PrintStoreCar1ExhaustEnable", DValue(m_SignalStateWrapper->m_PrintStoreCar1ExhaustEnable)));
m_plcMp.insert(make_pair("PrintStoreCar2ExhaustEnable", DValue(m_SignalStateWrapper->m_PrintStoreCar2ExhaustEnable)));
m_plcMp.insert(make_pair("PrintAirRenewalEnable", DValue(m_SignalStateWrapper->m_PrintAirRenewalEnable)));
m_plcMp.insert(make_pair("PrintAirRenewalTrigger", DValue(m_SignalStateWrapper->m_PrintAirRenewalTrigger)));
m_plcMp.insert(make_pair("AllowRiseWindSpeed", DValue(m_SignalStateWrapper->m_AllowRiseWindSpeed)));
m_plcMp.insert(make_pair("ManualCoverTest", DValue(m_SignalStateWrapper->m_ManualCoverTest)));
m_plcMp.insert(make_pair("RollerEdgeSearching", DValue(m_SignalStateWrapper->m_RollerEdgeSearching)));
m_plcMp.insert(make_pair("RollerEdgeSearchSuccess", DValue(m_SignalStateWrapper->m_RollerEdgeSearchSuccess)));
m_plcMp.insert(make_pair("RollerEdgeSearchFaild", DValue(m_SignalStateWrapper->m_RollerEdgeSearchFaild)));
flag = 0;
m_SignalStateWrapper->m_SheildPrintPosSensor = new SysParamBool(flag++, 68, cc); //屏蔽打印位感应器
m_SignalStateWrapper->m_SheildCylinderSensor = new SysParamBool(flag++, 68, cc); //屏蔽缸体感应器
@ -11446,6 +11642,24 @@ void HBD1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_LinearEncoderOppDirection = new SysParamBool(flag++, 68, cc); //光栅尺反向
m_SignalStateWrapper->m_CoverV2UseCintinueMode = new SysParamBool(flag++, 68, cc); //铺粉V2是否使用连续模式
m_plcMp.insert(make_pair("SheildPrintPosSensor", DValue(m_SignalStateWrapper->m_SheildPrintPosSensor)));
m_plcMp.insert(make_pair("SheildCylinderSensor", DValue(m_SignalStateWrapper->m_SheildCylinderSensor)));
m_plcMp.insert(make_pair("SheildLeftRightLocSensor", DValue(m_SignalStateWrapper->m_SheildLeftRightLocSensor)));
m_plcMp.insert(make_pair("SheildCleanAssCylinder", DValue(m_SignalStateWrapper->m_SheildCleanAssCylinder)));
m_plcMp.insert(make_pair("SheildPrintSupportCylinder", DValue(m_SignalStateWrapper->m_SheildPrintSupportCylinder)));
m_plcMp.insert(make_pair("SheildLinearEncoder", DValue(m_SignalStateWrapper->m_SheildLinearEncoder)));
m_plcMp.insert(make_pair("LoadAxisUseSensorPos", DValue(m_SignalStateWrapper->m_LoadAxisUseSensorPos)));
m_plcMp.insert(make_pair("SheildSlaveLimit", DValue(m_SignalStateWrapper->m_SheildSlaveLimit)));
m_plcMp.insert(make_pair("SheildFrontBackLocSensor", DValue(m_SignalStateWrapper->m_SheildFrontBackLocSensor)));
m_plcMp.insert(make_pair("SheildHighPressure", DValue(m_SignalStateWrapper->m_SheildHighPressure)));
m_plcMp.insert(make_pair("RailValveAdsorb", DValue(m_SignalStateWrapper->m_RailValveAdsorb)));
m_plcMp.insert(make_pair("LoadPrintBackDistance", DValue(m_SignalStateWrapper->m_LoadPrintBackDistance)));
m_plcMp.insert(make_pair("UseSupplySearchEdge", DValue(m_SignalStateWrapper->m_UseSupplySearchEdge)));
m_plcMp.insert(make_pair("UseArmCaptureHome", DValue(m_SignalStateWrapper->m_UseArmCaptureHome)));
m_plcMp.insert(make_pair("UseCapacityBar", DValue(m_SignalStateWrapper->m_UseCapacityBar)));
m_plcMp.insert(make_pair("LinearEncoderOppDirection", DValue(m_SignalStateWrapper->m_LinearEncoderOppDirection)));
m_plcMp.insert(make_pair("CoverV2UseCintinueMode", DValue(m_SignalStateWrapper->m_CoverV2UseCintinueMode)));
flag = 249 * 8 + 4;
m_SignalStateWrapper->m_IsInPrintCylinderSeparatePos = new SysParamBool(flag++, 4, cc); //打印缸体分离位
m_SignalStateWrapper->m_IsInPrint3RSeparatePos = new SysParamBool(flag++, 4, cc); //打印3R脱离位
@ -11463,6 +11677,22 @@ void HBD1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_IsInDropPowderPos = new SysParamBool(flag++, 4, cc); //铺粉下粉位
m_SignalStateWrapper->m_IsInAcceptPowderPos = new SysParamBool(flag++, 4, cc); //铺粉接粉位
m_plcMp.insert(make_pair("IsInPrintCylinderSeparatePos", DValue(m_SignalStateWrapper->m_IsInPrintCylinderSeparatePos)));
m_plcMp.insert(make_pair("IsInPrint3RSeparatePos", DValue(m_SignalStateWrapper->m_IsInPrint3RSeparatePos)));
m_plcMp.insert(make_pair("IsInPrintDeoxygenLowestPos", DValue(m_SignalStateWrapper->m_IsInPrintDeoxygenLowestPos)));
m_plcMp.insert(make_pair("IsInPrintPlatformBottomPos", DValue(m_SignalStateWrapper->m_IsInPrintPlatformBottomPos)));
m_plcMp.insert(make_pair("IsInPrintPlatformFlatPos", DValue(m_SignalStateWrapper->m_IsInPrintPlatformFlatPos)));
m_plcMp.insert(make_pair("IsInPrintJackupPos", DValue(m_SignalStateWrapper->m_IsInPrintJackupPos)));
m_plcMp.insert(make_pair("IsInCleanPlatfromBottomPos", DValue(m_SignalStateWrapper->m_IsInCleanPlatfromBottomPos)));
m_plcMp.insert(make_pair("IsInClean3RSeparatePos", DValue(m_SignalStateWrapper->m_IsInClean3RSeparatePos)));
m_plcMp.insert(make_pair("IsInCleanLowestPos", DValue(m_SignalStateWrapper->m_IsInCleanLowestPos)));
m_plcMp.insert(make_pair("IsInLoadPrintPos", DValue(m_SignalStateWrapper->m_IsInLoadPrintPos)));
m_plcMp.insert(make_pair("IsInLoadCleanPos", DValue(m_SignalStateWrapper->m_IsInLoadCleanPos)));
m_plcMp.insert(make_pair("IsInLoadWaitPos", DValue(m_SignalStateWrapper->m_IsInLoadWaitPos)));
m_plcMp.insert(make_pair("IsInDropPowderPos", DValue(m_SignalStateWrapper->m_IsInDropPowderPos)));
m_plcMp.insert(make_pair("IsInAcceptPowderPos", DValue(m_SignalStateWrapper->m_IsInAcceptPowderPos)));
flag = 88 * 8;
m_SignalStateWrapper->m_PrintTorqueUpInsideLimit = new SysParamBool(flag++, 1, cc); //扭力值在上升扭力范围内
m_SignalStateWrapper->m_ArmNotUponBasePlatform = new SysParamBool(flag++, 1, cc); //铺粉轴不在基板范围内
@ -11473,6 +11703,15 @@ void HBD1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_PrintInsideDownLimit = new SysParamBool(flag++, 1, cc); //下限位没触发
m_SignalStateWrapper->m_PrintMainServoNoAlarm = new SysParamBool(flag++, 1, cc); //打印主轴伺服无异常
m_SignalStateWrapper->m_PrintSlaveServoNoAlarm = new SysParamBool(flag++, 1, cc); //打印从轴伺服无异常
m_plcMp.insert(make_pair("PrintTorqueUpInsideLimit", DValue(m_SignalStateWrapper->m_PrintTorqueUpInsideLimit)));
m_plcMp.insert(make_pair("ArmNotUponBasePlatform", DValue(m_SignalStateWrapper->m_ArmNotUponBasePlatform)));
m_plcMp.insert(make_pair("PrintMoldPosInsideUpSoftLimit", DValue(m_SignalStateWrapper->m_PrintMoldPosInsideUpSoftLimit)));
m_plcMp.insert(make_pair("PrintInsideUpLimit", DValue(m_SignalStateWrapper->m_PrintInsideUpLimit)));
m_plcMp.insert(make_pair("PrintTorqueDownInsideLimit", DValue(m_SignalStateWrapper->m_PrintTorqueDownInsideLimit)));
m_plcMp.insert(make_pair("PrintAxisPosInsideDownSoftLimit", DValue(m_SignalStateWrapper->m_PrintAxisPosInsideDownSoftLimit)));
m_plcMp.insert(make_pair("PrintInsideDownLimit", DValue(m_SignalStateWrapper->m_PrintInsideDownLimit)));
m_plcMp.insert(make_pair("PrintMainServoNoAlarm", DValue(m_SignalStateWrapper->m_PrintMainServoNoAlarm)));
m_plcMp.insert(make_pair("PrintSlaveServoNoAlarm", DValue(m_SignalStateWrapper->m_PrintSlaveServoNoAlarm)));
flag = 90 * 8;
m_SignalStateWrapper->m_CleanCylinderOnSafePos = new SysParamBool(flag++, 1, cc); //缸体在安全位置
@ -11486,6 +11725,16 @@ void HBD1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_CleanMainServoNoAlarm = new SysParamBool(flag++, 1, cc); //清粉主轴伺服无异常
m_SignalStateWrapper->m_CleanSlaveServoNoAlarm = new SysParamBool(flag++, 1, cc); //清粉从轴伺服无异常
m_plcMp.insert(make_pair("CleanCylinderOnSafePos", DValue(m_SignalStateWrapper->m_CleanCylinderOnSafePos)));
m_plcMp.insert(make_pair("CleanTorqueUpInsideLimit", DValue(m_SignalStateWrapper->m_CleanTorqueUpInsideLimit)));
m_plcMp.insert(make_pair("CleanAxisPosUpInSoftLimit", DValue(m_SignalStateWrapper->m_CleanAxisPosUpInSoftLimit)));
m_plcMp.insert(make_pair("CleanTorqueDownInsideLimit", DValue(m_SignalStateWrapper->m_CleanTorqueDownInsideLimit)));
m_plcMp.insert(make_pair("CleanAxisPosDownInsideSoftLimit", DValue(m_SignalStateWrapper->m_CleanAxisPosDownInsideSoftLimit)));
m_plcMp.insert(make_pair("CleanUpInsideLimit", DValue(m_SignalStateWrapper->m_CleanUpInsideLimit)));
m_plcMp.insert(make_pair("CleanDownInsideLimit", DValue(m_SignalStateWrapper->m_CleanDownInsideLimit)));
m_plcMp.insert(make_pair("CleanMainServoNoAlarm", DValue(m_SignalStateWrapper->m_CleanMainServoNoAlarm)));
m_plcMp.insert(make_pair("CleanSlaveServoNoAlarm", DValue(m_SignalStateWrapper->m_CleanSlaveServoNoAlarm)));
flag = 92 * 8;
m_SignalStateWrapper->m_PrintJackupInSplitePos = new SysParamBool(flag++, 1, cc); //打印顶升轴在缸体分离位
m_SignalStateWrapper->m_LoadTorqueInsideLimit = new SysParamBool(flag++, 1, cc); //扭力值在扭力范围内
@ -11500,6 +11749,19 @@ void HBD1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_LoadLeftNotInsideLimit = new SysParamBool(flag++, 1, cc); //左限位没触发
m_SignalStateWrapper->m_LoadRightNotInsideLimit = new SysParamBool(flag++, 1, cc); //右限位没触发
m_SignalStateWrapper->m_LoadServoNoAlarm = new SysParamBool(flag++, 1, cc); //移载轴伺服无异常
m_plcMp.insert(make_pair("PrintJackupInSplitePos", DValue(m_SignalStateWrapper->m_PrintJackupInSplitePos)));
m_plcMp.insert(make_pair("LoadTorqueInsideLimit", DValue(m_SignalStateWrapper->m_LoadTorqueInsideLimit)));
m_plcMp.insert(make_pair("LoadPosInsideLeftSoftLimit", DValue(m_SignalStateWrapper->m_LoadPosInsideLeftSoftLimit)));
m_plcMp.insert(make_pair("LoadPosInsideRightSoftLimit", DValue(m_SignalStateWrapper->m_LoadPosInsideRightSoftLimit)));
m_plcMp.insert(make_pair("PrintPressingInReleasePos", DValue(m_SignalStateWrapper->m_PrintPressingInReleasePos)));
m_plcMp.insert(make_pair("PrintJackupInDropPos", DValue(m_SignalStateWrapper->m_PrintJackupInDropPos)));
m_plcMp.insert(make_pair("PrintSupportInAvoidPos", DValue(m_SignalStateWrapper->m_PrintSupportInAvoidPos)));
m_plcMp.insert(make_pair("CleanPressingInReleasePos", DValue(m_SignalStateWrapper->m_CleanPressingInReleasePos)));
m_plcMp.insert(make_pair("CleanUpDownInDownestPos", DValue(m_SignalStateWrapper->m_CleanUpDownInDownestPos)));
m_plcMp.insert(make_pair("CylinderCleanHadSparate", DValue(m_SignalStateWrapper->m_CylinderCleanHadSparate)));
m_plcMp.insert(make_pair("LoadLeftNotInsideLimit", DValue(m_SignalStateWrapper->m_LoadLeftNotInsideLimit)));
m_plcMp.insert(make_pair("LoadRightNotInsideLimit", DValue(m_SignalStateWrapper->m_LoadRightNotInsideLimit)));
m_plcMp.insert(make_pair("LoadServoNoAlarm", DValue(m_SignalStateWrapper->m_LoadServoNoAlarm)));
flag = 94 * 8;
m_SignalStateWrapper->m_PrintUpDownPosBelowPlatform = new SysParamBool(flag++, 1, cc); //打印顶升轴位置低于基板缸平面
@ -11510,6 +11772,14 @@ void HBD1000::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_ArmPosInsideBackLimit = new SysParamBool(flag++, 1, cc); //后限位没触发
m_SignalStateWrapper->m_ArmServoNoAlarm = new SysParamBool(flag++, 1, cc); //铺粉轴伺服无异常
m_plcMp.insert(make_pair("PrintUpDownPosBelowPlatform", DValue(m_SignalStateWrapper->m_PrintUpDownPosBelowPlatform)));
m_plcMp.insert(make_pair("ArmTorqueInsideLimit", DValue(m_SignalStateWrapper->m_ArmTorqueInsideLimit)));
m_plcMp.insert(make_pair("ArmPosInsideSoftFrontLimit", DValue(m_SignalStateWrapper->m_ArmPosInsideSoftFrontLimit)));
m_plcMp.insert(make_pair("ArmPosInsideSoftBackLimit", DValue(m_SignalStateWrapper->m_ArmPosInsideSoftBackLimit)));
m_plcMp.insert(make_pair("ArmPosInsideFrontLimit", DValue(m_SignalStateWrapper->m_ArmPosInsideFrontLimit)));
m_plcMp.insert(make_pair("ArmPosInsideBackLimit", DValue(m_SignalStateWrapper->m_ArmPosInsideBackLimit)));
m_plcMp.insert(make_pair("ArmServoNoAlarm", DValue(m_SignalStateWrapper->m_ArmServoNoAlarm)));
m_SignalStateWrapper->m_KeepAliveCommand = new KeepAliveCommand(cc);
m_SignalStateWrapper->m_KeepAliveCommand->m_PCKeepAlice = m_SignalStateWrapper->m_PCKeepAlice;
m_SignalStateWrapper->m_KeepAliveCommand->m_DevicePrinting = m_SignalStateWrapper->m_DevicePrinting;
@ -11539,8 +11809,30 @@ void HBD1000::InitSysParam(SysParamWrapper* spw, PLCReveiver* cc)
m_SysParamWrapper->m_ProtectGasPressureMin = new SysParamFloat(flag, 3, cc); flag += 4; //保护气量程最小值_RW
m_SysParamWrapper->m_PrintPressureMax = new SysParamFloat(flag, 3, cc); flag += 4; //打印舱压力量程最大值_RW
m_SysParamWrapper->m_PrintPressureMin = new SysParamFloat(flag, 3, cc); flag += 4; //打印舱压力量程最小值_RW
m_plcMp.insert(make_pair("PrintOxygen1", DValue(m_SysParamWrapper->m_PrintOxygen1)));
m_plcMp.insert(make_pair("PrintOxygen2", DValue(m_SysParamWrapper->m_PrintOxygen2)));
m_plcMp.insert(make_pair("OutsideOxygen", DValue(m_SysParamWrapper->m_OutsideOxygen)));
m_plcMp.insert(make_pair("HighPressure", DValue(m_SysParamWrapper->m_HighPressure)));
m_plcMp.insert(make_pair("ProtectGasPressure", DValue(m_SysParamWrapper->m_ProtectGasPressure)));
m_plcMp.insert(make_pair("PrintPressure", DValue(m_SysParamWrapper->m_PrintPressure)));
m_plcMp.insert(make_pair("PrintOxygen1Max", DValue(m_SysParamWrapper->m_PrintOxygen1Max)));
m_plcMp.insert(make_pair("PrintOxygen1Min", DValue(m_SysParamWrapper->m_PrintOxygen1Min)));
m_plcMp.insert(make_pair("PrintOxygen2Max", DValue(m_SysParamWrapper->m_PrintOxygen2Max)));
m_plcMp.insert(make_pair("PrintOxygen2Min", DValue(m_SysParamWrapper->m_PrintOxygen2Min)));
m_plcMp.insert(make_pair("OutsideOxygenMax", DValue(m_SysParamWrapper->m_OutsideOxygenMax)));
m_plcMp.insert(make_pair("OutsideOxygenMin", DValue(m_SysParamWrapper->m_OutsideOxygenMin)));
m_plcMp.insert(make_pair("HighPressureMax", DValue(m_SysParamWrapper->m_HighPressureMax)));
m_plcMp.insert(make_pair("HighPressureMin", DValue(m_SysParamWrapper->m_HighPressureMin)));
m_plcMp.insert(make_pair("ProtectGasPressureMax", DValue(m_SysParamWrapper->m_ProtectGasPressureMax)));
m_plcMp.insert(make_pair("ProtectGasPressureMin", DValue(m_SysParamWrapper->m_ProtectGasPressureMin)));
m_plcMp.insert(make_pair("PrintPressureMax", DValue(m_SysParamWrapper->m_PrintPressureMax)));
m_plcMp.insert(make_pair("PrintPressureMin", DValue(m_SysParamWrapper->m_PrintPressureMin)));
m_SysParamWrapper->m_OutsideOxygenAlarmValue = new SysParamFloat(flag, 3, cc); flag += 4; //室外氧含量报警值_RW
m_plcMp.insert(make_pair("OutsideOxygenAlarmValue", DValue(m_SysParamWrapper->m_OutsideOxygenAlarmValue)));
m_SysParamWrapper->m_EnvUIAssit.m_PrintOxygen1Max = new SysParamFloatUI(m_SysParamWrapper->m_PrintOxygen1Max);
m_SysParamWrapper->m_EnvUIAssit.m_PrintOxygen1Min = new SysParamFloatUI(m_SysParamWrapper->m_PrintOxygen1Min);
m_SysParamWrapper->m_EnvUIAssit.m_PrintOxygen2Max = new SysParamFloatUI(m_SysParamWrapper->m_PrintOxygen2Max);
@ -11553,9 +11845,22 @@ void HBD1000::InitSysParam(SysParamWrapper* spw, PLCReveiver* cc)
m_SysParamWrapper->m_EnvUIAssit.m_ProtectGasPressureMin = new SysParamFloatUI(m_SysParamWrapper->m_ProtectGasPressureMin);
m_SysParamWrapper->m_EnvUIAssit.m_PrintPressureMax = new SysParamFloatUI(m_SysParamWrapper->m_PrintPressureMax);
m_SysParamWrapper->m_EnvUIAssit.m_PrintPressureMin = new SysParamFloatUI(m_SysParamWrapper->m_PrintPressureMin);
m_SysParamWrapper->m_EnvUIAssit.m_OutsideOxygenAlarmValue = new SysParamFloatUI(m_SysParamWrapper->m_OutsideOxygenAlarmValue);
m_plcMp.insert(make_pair("PrintOxygen1Max", DValue(m_SysParamWrapper->m_EnvUIAssit.m_PrintOxygen1Max)));
m_plcMp.insert(make_pair("PrintOxygen1Min", DValue(m_SysParamWrapper->m_EnvUIAssit.m_PrintOxygen1Min)));
m_plcMp.insert(make_pair("PrintOxygen2Max", DValue(m_SysParamWrapper->m_EnvUIAssit.m_PrintOxygen2Max)));
m_plcMp.insert(make_pair("PrintOxygen2Min", DValue(m_SysParamWrapper->m_EnvUIAssit.m_PrintOxygen2Min)));
m_plcMp.insert(make_pair("OutsideOxygenMax", DValue(m_SysParamWrapper->m_EnvUIAssit.m_OutsideOxygenMax)));
m_plcMp.insert(make_pair("OutsideOxygenMin", DValue(m_SysParamWrapper->m_EnvUIAssit.m_OutsideOxygenMin)));
m_plcMp.insert(make_pair("HighPressureMax", DValue(m_SysParamWrapper->m_EnvUIAssit.m_HighPressureMax)));
m_plcMp.insert(make_pair("HighPressureMin", DValue(m_SysParamWrapper->m_EnvUIAssit.m_HighPressureMin)));
m_plcMp.insert(make_pair("ProtectGasPressureMax", DValue(m_SysParamWrapper->m_EnvUIAssit.m_ProtectGasPressureMax)));
m_plcMp.insert(make_pair("ProtectGasPressureMin", DValue(m_SysParamWrapper->m_EnvUIAssit.m_ProtectGasPressureMin)));
m_plcMp.insert(make_pair("PrintPressureMax", DValue(m_SysParamWrapper->m_EnvUIAssit.m_PrintPressureMax)));
m_plcMp.insert(make_pair("PrintPressureMin", DValue(m_SysParamWrapper->m_EnvUIAssit.m_PrintPressureMin)));
m_plcMp.insert(make_pair("OutsideOxygenAlarmValue", DValue(m_SysParamWrapper->m_EnvUIAssit.m_OutsideOxygenAlarmValue)));
m_SysParamWrapper->m_SupplyPowderGridPerCycle = new SysParamFloat(flag, 3, cc); flag += 4; //供粉转轴的格数一圈_RW
m_SysParamWrapper->m_SupplyAxisAnglePerGrid = new SysParamFloat(flag, 3, cc); flag += 4; //供粉转轴每格对用度数_RW
m_SysParamWrapper->m_MoldMainCurrentPos = new SysParamFloat(flag, 3, cc); flag += 4; //打印主轴当前位置_R
@ -11586,6 +11891,36 @@ void HBD1000::InitSysParam(SysParamWrapper* spw, PLCReveiver* cc)
m_SysParamWrapper->m_CleanSlaveManualDec = new SysParamFloat(flag, 3, cc); flag += 4; //清粉从轴手动减速_RW
m_SysParamWrapper->m_CleanSlaveManualRefDistance = new SysParamFloat(flag, 3, cc); flag += 4; //清粉从轴手动相对位移距离_RW
m_SysParamWrapper->m_CleanSlaveManualAbsPos = new SysParamFloat(flag, 3, cc); flag += 4; //清粉从轴绝对位置_手动_RW
m_plcMp.insert(make_pair("SupplyPowderGridPerCycle", DValue(m_SysParamWrapper->m_SupplyPowderGridPerCycle)));
m_plcMp.insert(make_pair("SupplyAxisAnglePerGrid", DValue(m_SysParamWrapper->m_SupplyAxisAnglePerGrid)));
m_plcMp.insert(make_pair("MoldMainCurrentPos", DValue(m_SysParamWrapper->m_MoldMainCurrentPos)));
m_plcMp.insert(make_pair("MoldMainCurrentLoad", DValue(m_SysParamWrapper->m_MoldMainCurrentLoad)));
m_plcMp.insert(make_pair("MoldSlaveCurrentPos", DValue(m_SysParamWrapper->m_MoldSlaveCurrentPos)));
m_plcMp.insert(make_pair("MoldSlaveCurrentLoad", DValue(m_SysParamWrapper->m_MoldSlaveCurrentLoad)));
m_plcMp.insert(make_pair("MoldMainManualSpeed", DValue(m_SysParamWrapper->m_MoldMainManualSpeed)));
m_plcMp.insert(make_pair("MoldMainManualAcc", DValue(m_SysParamWrapper->m_MoldMainManualAcc)));
m_plcMp.insert(make_pair("MoldMainManualDec", DValue(m_SysParamWrapper->m_MoldMainManualDec)));
m_plcMp.insert(make_pair("MoldMainManualRefDistance", DValue(m_SysParamWrapper->m_MoldMainManualRefDistance)));
m_plcMp.insert(make_pair("MoldMainManualAbsPos", DValue(m_SysParamWrapper->m_MoldMainManualAbsPos)));
m_plcMp.insert(make_pair("MoldSlaveManualSpeed", DValue(m_SysParamWrapper->m_MoldSlaveManualSpeed)));
m_plcMp.insert(make_pair("MoldSlaveManualAcc", DValue(m_SysParamWrapper->m_MoldSlaveManualAcc)));
m_plcMp.insert(make_pair("MoldSlaveManualDec", DValue(m_SysParamWrapper->m_MoldSlaveManualDec)));
m_plcMp.insert(make_pair("MoldSlaveManualRefDistance", DValue(m_SysParamWrapper->m_MoldSlaveManualRefDistance)));
m_plcMp.insert(make_pair("MoldSlaveManualAbsPos", DValue(m_SysParamWrapper->m_MoldSlaveManualAbsPos)));
m_plcMp.insert(make_pair("CleanMainCurrentPos", DValue(m_SysParamWrapper->m_CleanMainCurrentPos)));
m_plcMp.insert(make_pair("CleanMainCurrentLoad", DValue(m_SysParamWrapper->m_CleanMainCurrentLoad)));
m_plcMp.insert(make_pair("CleanSlaveCurrentPos", DValue(m_SysParamWrapper->m_CleanSlaveCurrentPos)));
m_plcMp.insert(make_pair("CleanSlaveCurrentLoad", DValue(m_SysParamWrapper->m_CleanSlaveCurrentLoad)));
m_plcMp.insert(make_pair("CleanMainManualSpeed", DValue(m_SysParamWrapper->m_CleanMainManualSpeed)));
m_plcMp.insert(make_pair("CleanMainManualAcc", DValue(m_SysParamWrapper->m_CleanMainManualAcc)));
m_plcMp.insert(make_pair("CleanMainManualDec", DValue(m_SysParamWrapper->m_CleanMainManualDec)));
m_plcMp.insert(make_pair("CleanMainManualRefDistance", DValue(m_SysParamWrapper->m_CleanMainManualRefDistance)));
m_plcMp.insert(make_pair("CleanMainManualAbsPos", DValue(m_SysParamWrapper->m_CleanMainManualAbsPos)));
m_plcMp.insert(make_pair("CleanSlaveManualSpeed", DValue(m_SysParamWrapper->m_CleanSlaveManualSpeed)));
m_plcMp.insert(make_pair("CleanSlaveManualAcc", DValue(m_SysParamWrapper->m_CleanSlaveManualAcc)));
m_plcMp.insert(make_pair("CleanSlaveManualDec", DValue(m_SysParamWrapper->m_CleanSlaveManualDec)));
m_plcMp.insert(make_pair("CleanSlaveManualRefDistance", DValue(m_SysParamWrapper->m_CleanSlaveManualRefDistance)));
m_plcMp.insert(make_pair("CleanSlaveManualAbsPos", DValue(m_SysParamWrapper->m_CleanSlaveManualAbsPos)));
m_SysParamWrapper->m_EleCylinderMainCurrentPos = m_SysParamWrapper->m_CleanMainCurrentPos; //电缸主轴当前位置_R
m_SysParamWrapper->m_EleCylinderMainCurrentLoad = m_SysParamWrapper->m_CleanMainCurrentLoad; //电缸主轴当前扭矩_R
@ -11601,6 +11936,20 @@ void HBD1000::InitSysParam(SysParamWrapper* spw, PLCReveiver* cc)
m_SysParamWrapper->m_EleCylinderSlaveManualDec = m_SysParamWrapper->m_CleanSlaveManualDec; //电缸从轴手动减速_RW
m_SysParamWrapper->m_EleCylinderSlaveManualRefDistance = m_SysParamWrapper->m_CleanSlaveManualRefDistance; //电缸从轴手动相对位移距离_RW
m_SysParamWrapper->m_EleCylinderSlaveManualAbsPos = m_SysParamWrapper->m_CleanSlaveManualAbsPos; //电缸从轴绝对位置_手动_RW
m_plcMp.insert(make_pair("EleCylinderMainCurrentPos", DValue(m_SysParamWrapper->m_EleCylinderMainCurrentPos)));
m_plcMp.insert(make_pair("EleCylinderMainCurrentLoad", DValue(m_SysParamWrapper->m_EleCylinderMainCurrentLoad)));
m_plcMp.insert(make_pair("EleCylinderSlaveCurrentPos", DValue(m_SysParamWrapper->m_EleCylinderSlaveCurrentPos)));
m_plcMp.insert(make_pair("EleCylinderSlaveCurrentLoad", DValue(m_SysParamWrapper->m_EleCylinderSlaveCurrentLoad)));
m_plcMp.insert(make_pair("EleCylinderMainManualSpeed", DValue(m_SysParamWrapper->m_EleCylinderMainManualSpeed)));
m_plcMp.insert(make_pair("EleCylinderMainManualAcc", DValue(m_SysParamWrapper->m_EleCylinderMainManualAcc)));
m_plcMp.insert(make_pair("EleCylinderMainManualDec", DValue(m_SysParamWrapper->m_EleCylinderMainManualDec)));
m_plcMp.insert(make_pair("EleCylinderMainManualRefDistance", DValue(m_SysParamWrapper->m_EleCylinderMainManualRefDistance)));
m_plcMp.insert(make_pair("EleCylinderMainManualAbsPos", DValue(m_SysParamWrapper->m_EleCylinderMainManualAbsPos)));
m_plcMp.insert(make_pair("EleCylinderSlaveManualSpeed", DValue(m_SysParamWrapper->m_EleCylinderSlaveManualSpeed)));
m_plcMp.insert(make_pair("EleCylinderSlaveManualAcc", DValue(m_SysParamWrapper->m_EleCylinderSlaveManualAcc)));
m_plcMp.insert(make_pair("EleCylinderSlaveManualDec", DValue(m_SysParamWrapper->m_EleCylinderSlaveManualDec)));
m_plcMp.insert(make_pair("EleCylinderSlaveManualRefDistance", DValue(m_SysParamWrapper->m_EleCylinderSlaveManualRefDistance)));
m_plcMp.insert(make_pair("EleCylinderSlaveManualAbsPos", DValue(m_SysParamWrapper->m_EleCylinderSlaveManualAbsPos)));
m_SysParamWrapper->m_LoadAxisCurrentPos = new SysParamFloat(flag, 3, cc); flag += 4; //移载轴当前位置_R
m_SysParamWrapper->m_LoadAxisCurrentLoad = new SysParamFloat(flag, 3, cc); flag += 4; //移载轴当前扭矩_R
@ -11682,6 +12031,86 @@ void HBD1000::InitSysParam(SysParamWrapper* spw, PLCReveiver* cc)
m_SysParamWrapper->m_EleCylinderSlaveHomeIndexEnc = m_SysParamWrapper->m_CleanSlaveHomeIndexEnc; //电缸从轴原点编码器值_RW
m_SysParamWrapper->m_EleCylinderSlaveAlignEnc = m_SysParamWrapper->m_CleanSlaveAlignEnc; //电缸从轴对齐位编码器值_RW
m_SysParamWrapper->m_EleCylinderSlaveAlignHomeRel = m_SysParamWrapper->m_CleanSlaveAlignHomeRel; //电缸从轴对齐位与原点相对值_RW
m_plcMp.insert(make_pair("LoadAxisCurrentPos", DValue(m_SysParamWrapper->m_LoadAxisCurrentPos)));
m_plcMp.insert(make_pair("LoadAxisCurrentLoad", DValue(m_SysParamWrapper->m_LoadAxisCurrentLoad)));
m_plcMp.insert(make_pair("LoadAxisManualSpeed", DValue(m_SysParamWrapper->m_LoadAxisManualSpeed)));
m_plcMp.insert(make_pair("LoadAxisManualAcc", DValue(m_SysParamWrapper->m_LoadAxisManualAcc)));
m_plcMp.insert(make_pair("LoadAxisManualDec", DValue(m_SysParamWrapper->m_LoadAxisManualDec)));
m_plcMp.insert(make_pair("LoadAxisManualRefDistance", DValue(m_SysParamWrapper->m_LoadAxisManualRefDistance)));
m_plcMp.insert(make_pair("LoadAxisManualAbsPos", DValue(m_SysParamWrapper->m_LoadAxisManualAbsPos)));
m_plcMp.insert(make_pair("ArmCurrentPos", DValue(m_SysParamWrapper->m_ArmCurrentPos)));
m_plcMp.insert(make_pair("ArmCurrentLoad", DValue(m_SysParamWrapper->m_ArmCurrentLoad)));
m_plcMp.insert(make_pair("ArmManualSpeed", DValue(m_SysParamWrapper->m_ArmManualSpeed)));
m_plcMp.insert(make_pair("ArmManualAcc", DValue(m_SysParamWrapper->m_ArmManualAcc)));
m_plcMp.insert(make_pair("ArmManualDec", DValue(m_SysParamWrapper->m_ArmManualDec)));
m_plcMp.insert(make_pair("ArmManualRefDistance", DValue(m_SysParamWrapper->m_ArmManualRefDistance)));
m_plcMp.insert(make_pair("ArmManualAbsPos", DValue(m_SysParamWrapper->m_ArmManualAbsPos)));
m_plcMp.insert(make_pair("SupplyCurrentPos", DValue(m_SysParamWrapper->m_SupplyCurrentPos)));
m_plcMp.insert(make_pair("SupplyCurrentLoad", DValue(m_SysParamWrapper->m_SupplyCurrentLoad)));
m_plcMp.insert(make_pair("SupplyManualSpeed", DValue(m_SysParamWrapper->m_SupplyManualSpeed)));
m_plcMp.insert(make_pair("SupplyManualAcc", DValue(m_SysParamWrapper->m_SupplyManualAcc)));
m_plcMp.insert(make_pair("SupplyManualDec", DValue(m_SysParamWrapper->m_SupplyManualDec)));
m_plcMp.insert(make_pair("SupplyManualRefDistance", DValue(m_SysParamWrapper->m_SupplyManualRefDistance)));
m_plcMp.insert(make_pair("SupplyManualAbsPos", DValue(m_SysParamWrapper->m_SupplyManualAbsPos)));
m_plcMp.insert(make_pair("MoldCylinderSeparatePos", DValue(m_SysParamWrapper->m_MoldCylinderSeparatePos)));
m_plcMp.insert(make_pair("PrintUpDownSafePos", DValue(m_SysParamWrapper->m_PrintUpDownSafePos)));
m_plcMp.insert(make_pair("Print3RSeparatePos", DValue(m_SysParamWrapper->m_Print3RSeparatePos)));
m_plcMp.insert(make_pair("Print3RSeparateCheckDistance", DValue(m_SysParamWrapper->m_Print3RSeparateCheckDistance)));
m_plcMp.insert(make_pair("PrintJackupDeoxygenPressureMinPos", DValue(m_SysParamWrapper->m_PrintJackupDeoxygenPressureMinPos)));
m_plcMp.insert(make_pair("PrintJackupPlatformBottomPos", DValue(m_SysParamWrapper->m_PrintJackupPlatformBottomPos)));
m_plcMp.insert(make_pair("PrintJackupPlatformPlanePos", DValue(m_SysParamWrapper->m_PrintJackupPlatformPlanePos)));
m_plcMp.insert(make_pair("PrintPlatformHight", DValue(m_SysParamWrapper->m_PrintPlatformHight)));
m_plcMp.insert(make_pair("MoldUpLimitPos", DValue(m_SysParamWrapper->m_MoldUpLimitPos)));
m_plcMp.insert(make_pair("MoldDownLimitPos", DValue(m_SysParamWrapper->m_MoldDownLimitPos)));
m_plcMp.insert(make_pair("CleanTrackConnectPos", DValue(m_SysParamWrapper->m_CleanTrackConnectPos)));
m_plcMp.insert(make_pair("CleanAxisPlatformAlignPos", DValue(m_SysParamWrapper->m_CleanAxisPlatformAlignPos)));
m_plcMp.insert(make_pair("CleanBoxCylinderConnectPos", DValue(m_SysParamWrapper->m_CleanBoxCylinderConnectPos)));
m_plcMp.insert(make_pair("Clean3RSeparatePos", DValue(m_SysParamWrapper->m_Clean3RSeparatePos)));
m_plcMp.insert(make_pair("Clean3RSeparateCheckDistance", DValue(m_SysParamWrapper->m_Clean3RSeparateCheckDistance)));
m_plcMp.insert(make_pair("CleanLowestPos", DValue(m_SysParamWrapper->m_CleanLowestPos)));
m_plcMp.insert(make_pair("CleanUpLimit", DValue(m_SysParamWrapper->m_CleanUpLimit)));
m_plcMp.insert(make_pair("CleanDownLimit", DValue(m_SysParamWrapper->m_CleanDownLimit)));
m_plcMp.insert(make_pair("EleCylinderPrintJackupPos", DValue(m_SysParamWrapper->m_EleCylinderPrintJackupPos)));
m_plcMp.insert(make_pair("EleCylinderCleanJackupPos", DValue(m_SysParamWrapper->m_EleCylinderCleanJackupPos)));
m_plcMp.insert(make_pair("EleCylinderBottomFitPos", DValue(m_SysParamWrapper->m_EleCylinderBottomFitPos)));
m_plcMp.insert(make_pair("EleCylinderSoftUpLimit", DValue(m_SysParamWrapper->m_EleCylinderSoftUpLimit)));
m_plcMp.insert(make_pair("EleCylinderSoftDownLimit", DValue(m_SysParamWrapper->m_EleCylinderSoftDownLimit)));
m_plcMp.insert(make_pair("LoadAxisTrackPrintPos", DValue(m_SysParamWrapper->m_LoadAxisTrackPrintPos)));
m_plcMp.insert(make_pair("LoadAxisTrackCleanPos", DValue(m_SysParamWrapper->m_LoadAxisTrackCleanPos)));
m_plcMp.insert(make_pair("LoadAxisTrackWaitPos", DValue(m_SysParamWrapper->m_LoadAxisTrackWaitPos)));
m_plcMp.insert(make_pair("LoadAxisLeftLimit", DValue(m_SysParamWrapper->m_LoadAxisLeftLimit)));
m_plcMp.insert(make_pair("LoadAxisRightLimit", DValue(m_SysParamWrapper->m_LoadAxisRightLimit)));
m_plcMp.insert(make_pair("ArmPowderAcceptPos", DValue(m_SysParamWrapper->m_ArmPowderAcceptPos)));
m_plcMp.insert(make_pair("ArmPowderDropFrontPos", DValue(m_SysParamWrapper->m_ArmPowderDropFrontPos)));
m_plcMp.insert(make_pair("ArmPrintFrontLimit", DValue(m_SysParamWrapper->m_ArmPrintFrontLimit)));
m_plcMp.insert(make_pair("ArmPrintBackLimit", DValue(m_SysParamWrapper->m_ArmPrintBackLimit)));
m_plcMp.insert(make_pair("ArmFrontLimit", DValue(m_SysParamWrapper->m_ArmFrontLimit)));
m_plcMp.insert(make_pair("ArmBackLimit", DValue(m_SysParamWrapper->m_ArmBackLimit)));
m_plcMp.insert(make_pair("MoldAbsTestPos", DValue(m_SysParamWrapper->m_MoldAbsTestPos)));
m_plcMp.insert(make_pair("CleanAbsTestPos", DValue(m_SysParamWrapper->m_CleanAbsTestPos)));
m_plcMp.insert(make_pair("EleCylinderAbsTestPos", DValue(m_SysParamWrapper->m_EleCylinderAbsTestPos)));
m_plcMp.insert(make_pair("LoadAxisAbsTestPos", DValue(m_SysParamWrapper->m_LoadAxisAbsTestPos)));
m_plcMp.insert(make_pair("ArmAbsTestPos", DValue(m_SysParamWrapper->m_ArmAbsTestPos)));
m_plcMp.insert(make_pair("LineEncMoveValue", DValue(m_SysParamWrapper->m_LineEncMoveValue)));
m_plcMp.insert(make_pair("LineEncPulseEqu", DValue(m_SysParamWrapper->m_LineEncPulseEqu)));
m_plcMp.insert(make_pair("MoldMainHomeIndexEnc", DValue(m_SysParamWrapper->m_MoldMainHomeIndexEnc)));
m_plcMp.insert(make_pair("MoldMainAlignEnc", DValue(m_SysParamWrapper->m_MoldMainAlignEnc)));
m_plcMp.insert(make_pair("MoldMainAlignHomeRel", DValue(m_SysParamWrapper->m_MoldMainAlignHomeRel)));
m_plcMp.insert(make_pair("MoldSlaveHomeIndexEnc", DValue(m_SysParamWrapper->m_MoldSlaveHomeIndexEnc)));
m_plcMp.insert(make_pair("MoldSlaveAlignEnc", DValue(m_SysParamWrapper->m_MoldSlaveAlignEnc)));
m_plcMp.insert(make_pair("MoldSlaveAlignHomeRel", DValue(m_SysParamWrapper->m_MoldSlaveAlignHomeRel)));
m_plcMp.insert(make_pair("CleanMainHomeIndexEnc", DValue(m_SysParamWrapper->m_CleanMainHomeIndexEnc)));
m_plcMp.insert(make_pair("CleanMainAlignEnc", DValue(m_SysParamWrapper->m_CleanMainAlignEnc)));
m_plcMp.insert(make_pair("CleanMainAlignHomeRel", DValue(m_SysParamWrapper->m_CleanMainAlignHomeRel)));
m_plcMp.insert(make_pair("CleanSlaveHomeIndexEnc", DValue(m_SysParamWrapper->m_CleanSlaveHomeIndexEnc)));
m_plcMp.insert(make_pair("CleanSlaveAlignEnc", DValue(m_SysParamWrapper->m_CleanSlaveAlignEnc)));
m_plcMp.insert(make_pair("CleanSlaveAlignHomeRel", DValue(m_SysParamWrapper->m_CleanSlaveAlignHomeRel)));
m_plcMp.insert(make_pair("EleCylinderMainHomeIndexEnc", DValue(m_SysParamWrapper->m_EleCylinderMainHomeIndexEnc)));
m_plcMp.insert(make_pair("EleCylinderMainAlignEnc", DValue(m_SysParamWrapper->m_EleCylinderMainAlignEnc)));
m_plcMp.insert(make_pair("EleCylinderMainAlignHomeRel", DValue(m_SysParamWrapper->m_EleCylinderMainAlignHomeRel)));
m_plcMp.insert(make_pair("EleCylinderSlaveHomeIndexEnc", DValue(m_SysParamWrapper->m_EleCylinderSlaveHomeIndexEnc)));
m_plcMp.insert(make_pair("EleCylinderSlaveAlignEnc", DValue(m_SysParamWrapper->m_EleCylinderSlaveAlignEnc)));
m_plcMp.insert(make_pair("EleCylinderSlaveAlignHomeRel", DValue(m_SysParamWrapper->m_EleCylinderSlaveAlignHomeRel)));
m_SysParamWrapper->m_MoldAutoSpeed = new SysParamFloat(flag, 3, cc); flag += 4; //打印升降轴速度_自动_RW
m_SysParamWrapper->m_MoldAutoAcc = new SysParamFloat(flag, 3, cc); flag += 4; //打印升降轴加速度_自动_RW
@ -11699,6 +12128,23 @@ void HBD1000::InitSysParam(SysParamWrapper* spw, PLCReveiver* cc)
m_SysParamWrapper->m_EleCylinderAutoRelShift = m_SysParamWrapper->m_CleanAutoRelShift; //电缸升降轴相对位移_自动_RW
m_SysParamWrapper->m_EleCylinderAutoAbsPos = m_SysParamWrapper->m_CleanAutoAbsPos; //电缸升降轴绝对位置_自动_RW
m_plcMp.insert(make_pair("MoldAutoSpeed", DValue(m_SysParamWrapper->m_MoldAutoSpeed)));
m_plcMp.insert(make_pair("MoldAutoAcc", DValue(m_SysParamWrapper->m_MoldAutoAcc)));
m_plcMp.insert(make_pair("MoldAutoDec", DValue(m_SysParamWrapper->m_MoldAutoDec)));
m_plcMp.insert(make_pair("MoldAutoRelShift", DValue(m_SysParamWrapper->m_MoldAutoRelShift)));
m_plcMp.insert(make_pair("MoldAutoAbsPos", DValue(m_SysParamWrapper->m_MoldAutoAbsPos)));
m_plcMp.insert(make_pair("CleanAutoSpeed", DValue(m_SysParamWrapper->m_CleanAutoSpeed)));
m_plcMp.insert(make_pair("CleanAutoAcc", DValue(m_SysParamWrapper->m_CleanAutoAcc)));
m_plcMp.insert(make_pair("CleanAutoDec", DValue(m_SysParamWrapper->m_CleanAutoDec)));
m_plcMp.insert(make_pair("CleanAutoRelShift", DValue(m_SysParamWrapper->m_CleanAutoRelShift)));
m_plcMp.insert(make_pair("CleanAutoAbsPos", DValue(m_SysParamWrapper->m_CleanAutoAbsPos)));
m_plcMp.insert(make_pair("EleCylinderAutoSpeed", DValue(m_SysParamWrapper->m_EleCylinderAutoSpeed)));
m_plcMp.insert(make_pair("EleCylinderAutoAcc", DValue(m_SysParamWrapper->m_EleCylinderAutoAcc)));
m_plcMp.insert(make_pair("EleCylinderAutoDec", DValue(m_SysParamWrapper->m_EleCylinderAutoDec)));
m_plcMp.insert(make_pair("EleCylinderAutoRelShift", DValue(m_SysParamWrapper->m_EleCylinderAutoRelShift)));
m_plcMp.insert(make_pair("EleCylinderAutoAbsPos", DValue(m_SysParamWrapper->m_EleCylinderAutoAbsPos)));
m_SysParamWrapper->m_LoadAxisAutoSpeed = new SysParamFloat(flag, 3, cc); flag += 4; //移载轴速度_自动_RW
m_SysParamWrapper->m_LoadAxisnAutoAcc = new SysParamFloat(flag, 3, cc); flag += 4; //移载轴加速度_自动_RW
m_SysParamWrapper->m_LoadAxisAutoDec = new SysParamFloat(flag, 3, cc); flag += 4; //移载轴减速度_自动_RW
@ -11714,6 +12160,21 @@ void HBD1000::InitSysParam(SysParamWrapper* spw, PLCReveiver* cc)
m_SysParamWrapper->m_SupplyAxisAutoDec = new SysParamFloat(flag, 3, cc); flag += 4; //供粉转轴减速度_自动_RW
m_SysParamWrapper->m_SupplyAxisAutoRelShift = new SysParamFloat(flag, 3, cc); flag += 4; //供粉转轴相对位移_自动_RW
m_SysParamWrapper->m_SupplyAxisAutoAbsPos = new SysParamFloat(flag, 3, cc); flag += 4; //供粉转轴绝对位置_自动_RW
m_plcMp.insert(make_pair("LoadAxisAutoSpeed", DValue(m_SysParamWrapper->m_LoadAxisAutoSpeed)));
m_plcMp.insert(make_pair("LoadAxisnAutoAcc", DValue(m_SysParamWrapper->m_LoadAxisnAutoAcc)));
m_plcMp.insert(make_pair("LoadAxisAutoDec", DValue(m_SysParamWrapper->m_LoadAxisAutoDec)));
m_plcMp.insert(make_pair("LoadAxisAutoRelShift", DValue(m_SysParamWrapper->m_LoadAxisAutoRelShift)));
m_plcMp.insert(make_pair("LoadAxisAutoAbsPos", DValue(m_SysParamWrapper->m_LoadAxisAutoAbsPos)));
m_plcMp.insert(make_pair("ArmAutoSpeed", DValue(m_SysParamWrapper->m_ArmAutoSpeed)));
m_plcMp.insert(make_pair("ArmAxisnAutoAcc", DValue(m_SysParamWrapper->m_ArmAxisnAutoAcc)));
m_plcMp.insert(make_pair("ArmAxisAutoDec", DValue(m_SysParamWrapper->m_ArmAxisAutoDec)));
m_plcMp.insert(make_pair("ArmAxisAutoRelShift", DValue(m_SysParamWrapper->m_ArmAxisAutoRelShift)));
m_plcMp.insert(make_pair("ArmAxisAutoAbsPos", DValue(m_SysParamWrapper->m_ArmAxisAutoAbsPos)));
m_plcMp.insert(make_pair("SupplyAutoSpeed", DValue(m_SysParamWrapper->m_SupplyAutoSpeed)));
m_plcMp.insert(make_pair("SupplyAxisnAutoAcc", DValue(m_SysParamWrapper->m_SupplyAxisnAutoAcc)));
m_plcMp.insert(make_pair("SupplyAxisAutoDec", DValue(m_SysParamWrapper->m_SupplyAxisAutoDec)));
m_plcMp.insert(make_pair("SupplyAxisAutoRelShift", DValue(m_SysParamWrapper->m_SupplyAxisAutoRelShift)));
m_plcMp.insert(make_pair("SupplyAxisAutoAbsPos", DValue(m_SysParamWrapper->m_SupplyAxisAutoAbsPos)));
m_SysParamWrapper->m_Print3RSeparatTorqueThreshold = new SysParamFloat(flag, 3, cc); flag += 4; //打印3R脱离扭力报警值_RW Real
m_SysParamWrapper->m_MoldUpTorqueThrehold = new SysParamFloat(flag, 3, cc); flag += 4; //打印升降轴上升扭力报警值_RW Real
@ -11747,6 +12208,38 @@ void HBD1000::InitSysParam(SysParamWrapper* spw, PLCReveiver* cc)
m_SysParamWrapper->m_ArmTorqueThreshold = new SysParamFloat(flag, 3, cc); flag += 4; //铺粉轴扭力报警值
m_SysParamWrapper->m_LoadTorqueThreshold = new SysParamFloat(flag, 3, cc); flag += 4; //移载轴扭力报警值
m_SysParamWrapper->m_SupplyTorqueThreshold = new SysParamFloat(flag, 3, cc); flag += 4; //供粉轴扭力报警值
m_plcMp.insert(make_pair("Print3RSeparatTorqueThreshold", DValue(m_SysParamWrapper->m_Print3RSeparatTorqueThreshold)));
m_plcMp.insert(make_pair("MoldUpTorqueThrehold", DValue(m_SysParamWrapper->m_MoldUpTorqueThrehold)));
m_plcMp.insert(make_pair("MoldDownTorqueThrehold", DValue(m_SysParamWrapper->m_MoldDownTorqueThrehold)));
m_plcMp.insert(make_pair("Clean3RSeparatTorqueThrehold", DValue(m_SysParamWrapper->m_Clean3RSeparatTorqueThrehold)));
m_plcMp.insert(make_pair("CleanUpTorqueThrehold", DValue(m_SysParamWrapper->m_CleanUpTorqueThrehold)));
m_plcMp.insert(make_pair("CleanDownTorqueThreshold", DValue(m_SysParamWrapper->m_CleanDownTorqueThreshold)));
m_plcMp.insert(make_pair("EleCylinderUpTorqueThrehold", DValue(m_SysParamWrapper->m_EleCylinderUpTorqueThrehold)));
m_plcMp.insert(make_pair("EleCylinderDownTorqueThreshold", DValue(m_SysParamWrapper->m_EleCylinderDownTorqueThreshold)));
m_plcMp.insert(make_pair("CoverType", DValue(m_SysParamWrapper->m_CoverType)));
m_plcMp.insert(make_pair("CoverSpeed", DValue(m_SysParamWrapper->m_CoverSpeed)));
m_plcMp.insert(make_pair("CoverReturnSpeed", DValue(m_SysParamWrapper->m_CoverReturnSpeed)));
m_plcMp.insert(make_pair("CoverDistance", DValue(m_SysParamWrapper->m_CoverDistance)));
m_plcMp.insert(make_pair("LayerThick", DValue(m_SysParamWrapper->m_LayerThick)));
m_plcMp.insert(make_pair("FixGap", DValue(m_SysParamWrapper->m_FixGap)));
m_plcMp.insert(make_pair("SupplyCount", DValue(m_SysParamWrapper->m_SupplyCount)));
m_plcMp.insert(make_pair("SupplyTime", DValue(m_SysParamWrapper->m_SupplyTime)));
m_plcMp.insert(make_pair("DebugLayerThick", DValue(m_SysParamWrapper->m_DebugLayerThick)));
m_plcMp.insert(make_pair("DebugFixGap", DValue(m_SysParamWrapper->m_DebugFixGap)));
m_plcMp.insert(make_pair("DebugSupplyTime", DValue(m_SysParamWrapper->m_DebugSupplyTime)));
m_plcMp.insert(make_pair("DebugSupplyCount", DValue(m_SysParamWrapper->m_DebugSupplyCount)));
m_plcMp.insert(make_pair("DebugCoverDistance", DValue(m_SysParamWrapper->m_DebugCoverDistance)));
m_plcMp.insert(make_pair("MoldHighSpeed", DValue(m_SysParamWrapper->m_MoldHighSpeed)));
m_plcMp.insert(make_pair("MoldDeoxygenSpeed", DValue(m_SysParamWrapper->m_MoldDeoxygenSpeed)));
m_plcMp.insert(make_pair("CleanHighSpeed", DValue(m_SysParamWrapper->m_CleanHighSpeed)));
m_plcMp.insert(make_pair("PrintPressureThrehold", DValue(m_SysParamWrapper->m_PrintPressureThrehold)));
m_plcMp.insert(make_pair("PrintPressureThrehold", DValue(m_SysParamWrapper->m_EnvUIAssit.m_PrintPressureThrehold)));
m_plcMp.insert(make_pair("MoldDeoxygenTime", DValue(m_SysParamWrapper->m_MoldDeoxygenTime)));
m_plcMp.insert(make_pair("PowderCarDeoxygenTime", DValue(m_SysParamWrapper->m_PowderCarDeoxygenTime)));
m_plcMp.insert(make_pair("GratingRulerValue", DValue(m_SysParamWrapper->m_GratingRulerValue)));
m_plcMp.insert(make_pair("ArmTorqueThreshold", DValue(m_SysParamWrapper->m_ArmTorqueThreshold)));
m_plcMp.insert(make_pair("LoadTorqueThreshold", DValue(m_SysParamWrapper->m_LoadTorqueThreshold)));
m_plcMp.insert(make_pair("LoadTorqueThreshold", DValue(m_SysParamWrapper->m_SupplyTorqueThreshold)));
m_SysParamWrapper->m_PrintMainLead = new SysParamFloat(flag, 3, cc); flag += 4; //打印主轴导程_RW
m_SysParamWrapper->m_PrintMainReductionRatio = new SysParamFloat(flag, 3, cc); flag += 4; //打印主轴减速比
@ -11775,6 +12268,33 @@ void HBD1000::InitSysParam(SysParamWrapper* spw, PLCReveiver* cc)
m_SysParamWrapper->m_SupplyLead = new SysParamFloat(flag, 3, cc); flag += 4; //供粉转轴导程
m_SysParamWrapper->m_SupplyReductionRatio = new SysParamFloat(flag, 3, cc); flag += 4; //供粉转轴减速比
m_SysParamWrapper->m_SupplyRotationlSpeed = new SysParamFloat(flag, 3, cc); flag += 4; //供粉转轴电机最高转速
m_plcMp.insert(make_pair("PrintMainLead", DValue(m_SysParamWrapper->m_PrintMainLead)));
m_plcMp.insert(make_pair("PrintMainReductionRatio", DValue(m_SysParamWrapper->m_PrintMainReductionRatio)));
m_plcMp.insert(make_pair("PrintMainMaxRotationlSpeed", DValue(m_SysParamWrapper->m_PrintMainMaxRotationlSpeed)));
m_plcMp.insert(make_pair("PrintSlaveLead", DValue(m_SysParamWrapper->m_PrintSlaveLead)));
m_plcMp.insert(make_pair("PrintSlaveReductionRatio", DValue(m_SysParamWrapper->m_PrintSlaveReductionRatio)));
m_plcMp.insert(make_pair("PrintSlaveMaxRotationlSpeed", DValue(m_SysParamWrapper->m_PrintSlaveMaxRotationlSpeed)));
m_plcMp.insert(make_pair("CleanMainLead", DValue(m_SysParamWrapper->m_CleanMainLead)));
m_plcMp.insert(make_pair("CleanMainReductionRatio", DValue(m_SysParamWrapper->m_CleanMainReductionRatio)));
m_plcMp.insert(make_pair("CleanMainMaxRotationlSpeed", DValue(m_SysParamWrapper->m_CleanMainMaxRotationlSpeed)));
m_plcMp.insert(make_pair("CleanSlaveLead", DValue(m_SysParamWrapper->m_CleanSlaveLead)));
m_plcMp.insert(make_pair("CleanSlaveReductionRatio", DValue(m_SysParamWrapper->m_CleanSlaveReductionRatio)));
m_plcMp.insert(make_pair("CleanSlaveMaxRotationlSpeed", DValue(m_SysParamWrapper->m_CleanSlaveMaxRotationlSpeed)));
m_plcMp.insert(make_pair("EleCylinderMainLead", DValue(m_SysParamWrapper->m_EleCylinderMainLead)));
m_plcMp.insert(make_pair("EleCylinderMainReductionRatio", DValue(m_SysParamWrapper->m_EleCylinderMainReductionRatio)));
m_plcMp.insert(make_pair("EleCylinderMainMaxRotationlSpeed", DValue(m_SysParamWrapper->m_EleCylinderMainMaxRotationlSpeed)));
m_plcMp.insert(make_pair("EleCylinderSlaveLead", DValue(m_SysParamWrapper->m_EleCylinderSlaveLead)));
m_plcMp.insert(make_pair("EleCylinderSlaveReductionRatio", DValue(m_SysParamWrapper->m_EleCylinderSlaveReductionRatio)));
m_plcMp.insert(make_pair("EleCylinderSlaveMaxRotationlSpeed", DValue(m_SysParamWrapper->m_EleCylinderSlaveMaxRotationlSpeed)));
m_plcMp.insert(make_pair("LoadAxisLead", DValue(m_SysParamWrapper->m_LoadAxisLead)));
m_plcMp.insert(make_pair("LoadAxisReductionRatio", DValue(m_SysParamWrapper->m_LoadAxisReductionRatio)));
m_plcMp.insert(make_pair("LoadAxisMaxRotationlSpeed", DValue(m_SysParamWrapper->m_LoadAxisMaxRotationlSpeed)));
m_plcMp.insert(make_pair("ArmLead", DValue(m_SysParamWrapper->m_ArmLead)));
m_plcMp.insert(make_pair("ArmReductionRatio", DValue(m_SysParamWrapper->m_ArmReductionRatio)));
m_plcMp.insert(make_pair("ArmMaxRotationlSpeed", DValue(m_SysParamWrapper->m_ArmMaxRotationlSpeed)));
m_plcMp.insert(make_pair("SupplyLead", DValue(m_SysParamWrapper->m_SupplyLead)));
m_plcMp.insert(make_pair("SupplyReductionRatio", DValue(m_SysParamWrapper->m_SupplyReductionRatio)));
m_plcMp.insert(make_pair("SupplyRotationlSpeed", DValue(m_SysParamWrapper->m_SupplyRotationlSpeed)));
m_SysParamWrapper->m_ArmSlotDistance = new SysParamFloat(flag, 3, cc); flag += 4; //铺粉槽距离
m_SysParamWrapper->m_PowderJarCabinPressureVoltage = new SysParamFloat(flag, 3, cc); flag += 4; //下粉罐与粉仓的压差电压值
@ -11819,7 +12339,49 @@ void HBD1000::InitSysParam(SysParamWrapper* spw, PLCReveiver* cc)
m_SysParamWrapper->m_DataSizeMinY = new SysParamFloat(flag, 3, cc); flag += 4;
m_SysParamWrapper->m_DataSizeMaxY = new SysParamFloat(flag, 3, cc); flag += 4;
m_plcMp.insert(make_pair("ArmSlotDistance", DValue(m_SysParamWrapper->m_ArmSlotDistance)));
m_plcMp.insert(make_pair("PowderJarCabinPressureVoltage", DValue(m_SysParamWrapper->m_PowderJarCabinPressureVoltage)));
m_plcMp.insert(make_pair("PowderJarCabinPressureValue", DValue(m_SysParamWrapper->m_PowderJarCabinPressureValue)));
m_plcMp.insert(make_pair("CleanBoxDeoxygenSetValue", DValue(m_SysParamWrapper->m_CleanBoxDeoxygenSetValue)));
m_plcMp.insert(make_pair("CleanBoxOxygenDownLimit", DValue(m_SysParamWrapper->m_CleanBoxOxygenDownLimit)));
m_plcMp.insert(make_pair("CleanBoxOxygenUpLimit", DValue(m_SysParamWrapper->m_CleanBoxOxygenUpLimit)));
m_plcMp.insert(make_pair("CleanBoxPressureReleaseValue", DValue(m_SysParamWrapper->m_CleanBoxPressureReleaseValue)));
m_plcMp.insert(make_pair("PrintCar1RealWeight", DValue(m_SysParamWrapper->m_PrintCar1RealWeight)));
m_plcMp.insert(make_pair("PrintCar1AlarmWeight", DValue(m_SysParamWrapper->m_PrintCar1AlarmWeight)));
m_plcMp.insert(make_pair("PrintCar2RealWeight", DValue(m_SysParamWrapper->m_PrintCar2RealWeight)));
m_plcMp.insert(make_pair("PrintCar2AlarmWeight", DValue(m_SysParamWrapper->m_PrintCar2AlarmWeight)));
m_plcMp.insert(make_pair("CleanCar1RealWeight", DValue(m_SysParamWrapper->m_CleanCar1RealWeight)));
m_plcMp.insert(make_pair("CleanCar1AlarmWeight", DValue(m_SysParamWrapper->m_CleanCar1AlarmWeight)));
m_plcMp.insert(make_pair("CleanCar2RealWeight", DValue(m_SysParamWrapper->m_CleanCar2RealWeight)));
m_plcMp.insert(make_pair("CleanCar2AlarmWeight", DValue(m_SysParamWrapper->m_CleanCar2AlarmWeight)));
m_plcMp.insert(make_pair("LoadHandPos", DValue(m_SysParamWrapper->m_LoadHandPos)));
m_plcMp.insert(make_pair("PowderLevelLength", DValue(m_SysParamWrapper->m_PowderLevelLength)));
m_plcMp.insert(make_pair("PowderLevelValue", DValue(m_SysParamWrapper->m_PowderLevelValue)));
m_plcMp.insert(make_pair("PrintAirRenewalPresRelValue", DValue(m_SysParamWrapper->m_PrintAirRenewalPresRelValue)));
m_plcMp.insert(make_pair("RollerEdgeSearchOffset", DValue(m_SysParamWrapper->m_RollerEdgeSearchOffset)));
m_plcMp.insert(make_pair("LoadHandCrashPos", DValue(m_SysParamWrapper->m_LoadHandCrashPos)));
m_plcMp.insert(make_pair("ArmCatpureHomeFastSpeed", DValue(m_SysParamWrapper->m_ArmCatpureHomeFastSpeed)));
m_plcMp.insert(make_pair("ArmCatpureHomeSlowSpeed", DValue(m_SysParamWrapper->m_ArmCatpureHomeSlowSpeed)));
m_plcMp.insert(make_pair("LinearEncoderErrorJudgeValue", DValue(m_SysParamWrapper->m_LinearEncoderErrorJudgeValue)));
m_plcMp.insert(make_pair("LinearEncoderPerLayerRealValue", DValue(m_SysParamWrapper->m_LinearEncoderPerLayerRealValue)));
m_plcMp.insert(make_pair("GapCompensateDiffValue", DValue(m_SysParamWrapper->m_GapCompensateDiffValue)));
m_plcMp.insert(make_pair("MoldTheoryDistance", DValue(m_SysParamWrapper->m_MoldTheoryDistance)));
m_plcMp.insert(make_pair("LinearActDistance", DValue(m_SysParamWrapper->m_LinearActDistance)));
m_plcMp.insert(make_pair("LinearActPulse", DValue(m_SysParamWrapper->m_LinearActPulse)));
m_plcMp.insert(make_pair("PrintHomeSpeed", DValue(m_SysParamWrapper->m_PrintHomeSpeed)));
m_plcMp.insert(make_pair("EleCylinderHomeSpeed", DValue(m_SysParamWrapper->m_EleCylinderHomeSpeed)));
m_plcMp.insert(make_pair("CleanHomeSpeed", DValue(m_SysParamWrapper->m_CleanHomeSpeed)));
m_plcMp.insert(make_pair("LoadHomeSpeed", DValue(m_SysParamWrapper->m_LoadHomeSpeed)));
m_plcMp.insert(make_pair("LoadSearchEdgeTorqueAlarmValue", DValue(m_SysParamWrapper->m_LoadSearchEdgeTorqueAlarmValue)));
m_plcMp.insert(make_pair("ArmBackAcceptPos", DValue(m_SysParamWrapper->m_ArmBackAcceptPos)));
m_plcMp.insert(make_pair("HighPressureGasJudgmentValue", DValue(m_SysParamWrapper->m_HighPressureGasJudgmentValue)));
m_plcMp.insert(make_pair("ProtectiveGasJudgmentValue", DValue(m_SysParamWrapper->m_ProtectiveGasJudgmentValue)));
m_plcMp.insert(make_pair("UnloadDropDistance", DValue(m_SysParamWrapper->m_UnloadDropDistance)));
m_plcMp.insert(make_pair("DataSizeMinY", DValue(m_SysParamWrapper->m_DataSizeMinY)));
m_plcMp.insert(make_pair("DataSizeMaxY", DValue(m_SysParamWrapper->m_DataSizeMaxY)));
flag = 914;
m_SysParamWrapper->m_AllowPrintHigh = new SysParamFloat(flag, 3, cc);
flag = 1158;
@ -11861,6 +12423,43 @@ void HBD1000::InitSysParam(SysParamWrapper* spw, PLCReveiver* cc)
m_SysParamWrapper->m_LinearEncoderCompensateTime = new SysParamInt(flag, 65, cc); flag += 4;
m_SysParamWrapper->m_DropPowderOpenDeleyTime = new SysParamInt(flag, 65, cc); flag += 4; //下粉阀开延时ms_RW
m_SysParamWrapper->m_DropPowderCloseDelayTime = new SysParamInt(flag, 65, cc); flag += 4; //下粉阀关延时ms_RW
m_plcMp.insert(make_pair("AllowPrintHigh", DValue(m_SysParamWrapper->m_AllowPrintHigh)));
m_plcMp.insert(make_pair("AutoCaptureCoverHomeIntervalTimes", DValue(m_SysParamWrapper->m_AutoCaptureCoverHomeIntervalTimes)));
m_plcMp.insert(make_pair("AutoCaptureCoverHomeCalcTimes", DValue(m_SysParamWrapper->m_AutoCaptureCoverHomeCalcTimes)));
m_plcMp.insert(make_pair("LinearEncoderCompensateTimes", DValue(m_SysParamWrapper->m_LinearEncoderCompensateTimes)));
m_plcMp.insert(make_pair("CleanBoxDeoxygenSetValue", DValue(m_SysParamWrapper->m_EnvUIAssit.m_CleanBoxDeoxygenSetValue)));
m_plcMp.insert(make_pair("CleanBoxOxygenDownLimit", DValue(m_SysParamWrapper->m_EnvUIAssit.m_CleanBoxOxygenDownLimit)));
m_plcMp.insert(make_pair("CleanBoxOxygenUpLimit", DValue(m_SysParamWrapper->m_EnvUIAssit.m_CleanBoxOxygenUpLimit)));
m_plcMp.insert(make_pair("CleanBoxPressureReleaseValue", DValue(m_SysParamWrapper->m_EnvUIAssit.m_CleanBoxPressureReleaseValue)));
m_plcMp.insert(make_pair("PrintCar1AlarmWeight", DValue(m_SysParamWrapper->m_EnvUIAssit.m_PrintCar1AlarmWeight)));
m_plcMp.insert(make_pair("PrintCar2AlarmWeight", DValue(m_SysParamWrapper->m_EnvUIAssit.m_PrintCar2AlarmWeight)));
m_plcMp.insert(make_pair("CleanCar1AlarmWeight", DValue(m_SysParamWrapper->m_EnvUIAssit.m_CleanCar1AlarmWeight)));
m_plcMp.insert(make_pair("CleanCar2AlarmWeight", DValue(m_SysParamWrapper->m_EnvUIAssit.m_CleanCar2AlarmWeight)));
m_plcMp.insert(make_pair("LoadHandPos", DValue(m_SysParamWrapper->m_EnvUIAssit.m_LoadHandPos)));
m_plcMp.insert(make_pair("PowderLevelLength", DValue(m_SysParamWrapper->m_EnvUIAssit.m_PowderLevelLength)));
m_plcMp.insert(make_pair("PowderLevelValue", DValue(m_SysParamWrapper->m_EnvUIAssit.m_PowderLevelValue)));
m_plcMp.insert(make_pair("PrintAirRenewalPresRelValue", DValue(m_SysParamWrapper->m_EnvUIAssit.m_PrintAirRenewalPresRelValue)));
m_plcMp.insert(make_pair("RollerEdgeSearchOffset", DValue(m_SysParamWrapper->m_EnvUIAssit.m_RollerEdgeSearchOffset)));
m_plcMp.insert(make_pair("LoadHandCrashPos", DValue(m_SysParamWrapper->m_EnvUIAssit.m_LoadHandCrashPos)));
m_plcMp.insert(make_pair("ArmCatpureHomeFastSpeed", DValue(m_SysParamWrapper->m_EnvUIAssit.m_ArmCatpureHomeFastSpeed)));
m_plcMp.insert(make_pair("ArmCatpureHomeSlowSpeed", DValue(m_SysParamWrapper->m_EnvUIAssit.m_ArmCatpureHomeSlowSpeed)));
m_plcMp.insert(make_pair("LinearEncoderErrorJudgeValue", DValue(m_SysParamWrapper->m_EnvUIAssit.m_LinearEncoderErrorJudgeValue)));
m_plcMp.insert(make_pair("GapCompensateDiffValue", DValue(m_SysParamWrapper->m_EnvUIAssit.m_GapCompensateDiffValue)));
m_plcMp.insert(make_pair("PrintHomeSpeed", DValue(m_SysParamWrapper->m_EnvUIAssit.m_PrintHomeSpeed)));
m_plcMp.insert(make_pair("CleanHomeSpeed", DValue(m_SysParamWrapper->m_EnvUIAssit.m_CleanHomeSpeed)));
m_plcMp.insert(make_pair("LoadHomeSpeed", DValue(m_SysParamWrapper->m_EnvUIAssit.m_LoadHomeSpeed)));
m_plcMp.insert(make_pair("AutoCaptureCoverHomeIntervalTimes", DValue(m_SysParamWrapper->m_EnvUIAssit.m_AutoCaptureCoverHomeIntervalTimes)));
m_plcMp.insert(make_pair("HighPressureGasJudgmentValue", DValue(m_SysParamWrapper->m_EnvUIAssit.m_HighPressureGasJudgmentValue)));
m_plcMp.insert(make_pair("ProtectiveGasJudgmentValue", DValue(m_SysParamWrapper->m_EnvUIAssit.m_ProtectiveGasJudgmentValue)));
m_plcMp.insert(make_pair("HeatingCheckTime", DValue(m_SysParamWrapper->m_HeatingCheckTime)));
m_plcMp.insert(make_pair("CylinderMotionDelayTime", DValue(m_SysParamWrapper->m_CylinderMotionDelayTime)));
m_plcMp.insert(make_pair("LinearEncoderCompensateTime", DValue(m_SysParamWrapper->m_LinearEncoderCompensateTime)));
m_plcMp.insert(make_pair("DropPowderOpenDeleyTime", DValue(m_SysParamWrapper->m_DropPowderOpenDeleyTime)));
m_plcMp.insert(make_pair("DropPowderCloseDelayTime", DValue(m_SysParamWrapper->m_DropPowderCloseDelayTime)));
}
void HBD1000::InitPLCCommand(vector<S7Command*>& vecs)
@ -11959,21 +12558,6 @@ void HBD1000::ProcReadPLC(void* pobject, Command* pcommand)
TS7DataItem pDataSize = 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);
}
}*/
std::unique_lock<std::shared_mutex> lock(cc->m_ValueMtx);
if (pIOAndStatus.Result == 0) {
unsigned char* arr = (unsigned char*)pIOAndStatus.pdata;

View File

@ -4263,6 +4263,16 @@ void HBD1200::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_TouchPanelCtrling = new SysParamBool(flag++, 1, cc); //触摸屏控制状态
m_SignalStateWrapper->m_MotionDebug = new SysParamBool(flag++, 1, cc); //动作流程调试模式
m_SignalStateWrapper->m_CylinderExceptionReset = new SysParamBool(flag++, 1, cc); //气缸异常复位
m_plcMp.insert(make_pair("PLCKeepAlive", DValue(m_SignalStateWrapper->m_PLCKeepAlive)));
m_plcMp.insert(make_pair("PCKeepAlice", DValue(m_SignalStateWrapper->m_PCKeepAlice)));
m_plcMp.insert(make_pair("DeviceStandby", DValue(m_SignalStateWrapper->m_DeviceStandby)));
m_plcMp.insert(make_pair("DevicePrinting", DValue(m_SignalStateWrapper->m_DevicePrinting)));
m_plcMp.insert(make_pair("DeviceManualDebug", DValue(m_SignalStateWrapper->m_DeviceManualDebug)));
m_plcMp.insert(make_pair("DeviceAutoRuning", DValue(m_SignalStateWrapper->m_DeviceAutoRuning)));
m_plcMp.insert(make_pair("TouchPanelCtrling", DValue(m_SignalStateWrapper->m_TouchPanelCtrling)));
m_plcMp.insert(make_pair("MotionDebug", DValue(m_SignalStateWrapper->m_MotionDebug)));
m_plcMp.insert(make_pair("CylinderExceptionReset", DValue(m_SignalStateWrapper->m_CylinderExceptionReset)));
flag = 55 * 8 + 6;
m_SignalStateWrapper->m_PLCConnectAlarm = new SysParamBool(flag++, 1, cc); //PC与PLC网络异常
@ -4283,274 +4293,486 @@ void HBD1200::InitSignal(SignalStateWrapper* ssw, PLCReveiver* cc)
m_SignalStateWrapper->m_Laser4Alarm = new SysParamBool(flag++, 1, cc); //激光器4报警
m_SignalStateWrapper->m_HeatingInputAlarm = new SysParamBool(flag++, 1, cc); //加热输入异常
m_SignalStateWrapper->m_HeatingOutputAlarm = new SysParamBool(flag++, 1, cc); //加热输出异常
m_plcMp.insert(make_pair("PLCConnectAlarm", DValue(m_SignalStateWrapper->m_PLCConnectAlarm)));
m_plcMp.insert(make_pair("SystemStopAlarm", DValue(m_SignalStateWrapper->m_SystemStopAlarm)));
m_plcMp.insert(make_pair("HighPressureLackAlarm", DValue(m_SignalStateWrapper->m_HighPressureLackAlarm)));
m_plcMp.insert(make_pair("ProtectGasLackAlarm", DValue(m_SignalStateWrapper->m_ProtectGasLackAlarm)));
m_plcMp.insert(make_pair("PowerDownAlarm", DValue(m_SignalStateWrapper->m_PowerDownAlarm)));
m_plcMp.insert(make_pair("OutsideOxygenLackAlarm", DValue(m_SignalStateWrapper->m_OutsideOxygenLackAlarm)));
m_plcMp.insert(make_pair("LaserChillerAlarm", DValue(m_SignalStateWrapper->m_LaserChillerAlarm)));
m_plcMp.insert(make_pair("BusAirSwitchAlarm", DValue(m_SignalStateWrapper->m_BusAirSwitchAlarm)));
m_plcMp.insert(make_pair("ExtDevicePowerAirSwitchAlarm", DValue(m_SignalStateWrapper->m_ExtDevicePowerAirSwitchAlarm)));
m_plcMp.insert(make_pair("HeatingPowerAirSwitchAlarm", DValue(m_SignalStateWrapper->m_HeatingPowerAirSwitchAlarm)));
m_plcMp.insert(make_pair("LaserPowerAirSwitchAlarm", DValue(m_SignalStateWrapper->m_LaserPowerAirSwitchAlarm)));
m_plcMp.insert(make_pair("ServoPowerAirSwitchAlarm", DValue(m_SignalStateWrapper->m_ServoPowerAirSwitchAlarm)));
m_plcMp.insert(make_pair("Laser1Alarm", DValue(m_SignalStateWrapper->m_Laser1Alarm)));
m_plcMp.insert(make_pair("Laser2Alarm", DValue(m_SignalStateWrapper->m_Laser2Alarm)));
m_plcMp.insert(make_pair("Laser3Alarm", DValue(m_SignalStateWrapper->m_Laser3Alarm)));
m_plcMp.insert(make_pair("Laser4Alarm", DValue(m_SignalStateWrapper->m_Laser4Alarm)));
m_plcMp.insert(make_pair("HeatingInputAlarm", DValue(m_SignalStateWrapper->m_HeatingInputAlarm)));
m_plcMp.insert(make_pair("HeatingOutputAlarm", DValue(m_SignalStateWrapper->m_HeatingOutputAlarm)));
m_SignalStateWrapper->m_PrintStorageCar1JarFullWarn = new SysParamBool(flag++, 1, cc); //存粉小车1粉罐已满警示
m_SignalStateWrapper->m_PrintStorageCar1DisconnectWarn = new SysParamBool(flag++, 1, cc); //存粉小车1没有连接警示
m_SignalStateWrapper->m_PrintStorageCar1BlockWarn = new SysParamBool(flag++, 1, cc); //打印存粉小车1堵塞警示
m_SignalStateWrapper->m_PrintStorageCar1JarFullWarn = new SysParamBool(flag++, 1, cc, "存粉小车1粉罐已满警示");
m_SignalStateWrapper->m_PrintStorageCar1DisconnectWarn = new SysParamBool(flag++, 1, cc, "存粉小车1没有连接警示");
m_SignalStateWrapper->m_PrintStorageCar1BlockWarn = new SysParamBool(flag++, 1, cc, "打印存粉小车1堵塞警示");
flag++;
m_SignalStateWrapper->m_MoldMainUpLimitActive = new SysParamBool(flag++, 1, cc); //打印主轴上限位触发警示
m_SignalStateWrapper->m_MoldMainDownLimitActive = new SysParamBool(flag++, 1, cc); //打印主轴下限位触发警示
m_SignalStateWrapper->m_MoldMainUpLimitActive = new SysParamBool(flag++, 1, cc, "打印主轴上限位触发警示");
m_SignalStateWrapper->m_MoldMainDownLimitActive = new SysParamBool(flag++, 1, cc, "打印主轴下限位触发警示");
flag++;
flag++;
flag++;
flag++;
flag++;
m_SignalStateWrapper->m_PrintTrackDisableWarn = new SysParamBool(flag++, 1, cc); //轨道打印位感应失效警告
m_SignalStateWrapper->m_PrintTrackDisableWarn = new SysParamBool(flag++, 1, cc, "轨道打印位感应失效警告");
flag++;
flag++;
flag++;
flag++;
flag++;
flag++;
m_SignalStateWrapper->m_CylinderExtendOnAlarm = new SysParamBool(flag++, 1, cc); //缸体固定气缸伸出不到位异常
m_SignalStateWrapper->m_CylinderExtendOffAlarm = new SysParamBool(flag++, 1, cc); //缸体固定定位气缸缩回不到位异常
m_SignalStateWrapper->m_CylinderExtendOnAlarm = new SysParamBool(flag++, 1, cc, "缸体固定气缸伸出不到位异常");
m_SignalStateWrapper->m_CylinderExtendOffAlarm = new SysParamBool(flag++, 1, cc, "缸体固定定位气缸缩回不到位异常");
flag++;
flag++;
m_SignalStateWrapper->m_PrintCylinderVerifyAlarm = new SysParamBool(flag++, 1, cc); //打印位缸体检测异常
m_SignalStateWrapper->m_PrintCylinderVerifyAlarm = new SysParamBool(flag++, 1, cc, "打印位缸体检测异常");
flag++;
flag++;
flag++;
flag++;
flag++;
m_SignalStateWrapper->m_CleanTrackPosDisableAlarm = new SysParamBool(flag++, 1, cc); //轨道清粉位失效异常
m_SignalStateWrapper->m_CleanLiftStopAlarm = new SysParamBool(flag++, 1, cc); //清粉升降急停异常
m_SignalStateWrapper->m_LoadHandPosSensorDiable = new SysParamBool(flag++, 1, cc); //移载吊装位感应器失效
m_SignalStateWrapper->m_MainPowerLossCheckAlarm = new SysParamBool(flag++, 1, cc); //主电源缺相检测异常
m_SignalStateWrapper->m_PrintCabinLockDisableAlarm = new SysParamBool(flag++, 1, cc); //打印舱电锁感应异常
m_SignalStateWrapper->m_CleanBoxUpOpenAlarm = new SysParamBool(flag++, 1, cc); //清粉箱上盖气缸打开不到位异常
m_SignalStateWrapper->m_CleanBoxUpCloseAlarm = new SysParamBool(flag++, 1, cc); //清粉箱上盖气缸关闭不到位异常
m_SignalStateWrapper->m_CylinderHandPlatformOpenAlarm = new SysParamBool(flag++, 1, cc); //缸体吊装盖板打开异常
m_SignalStateWrapper->m_CylinderHandDoorOpenAlarm = new SysParamBool(flag++, 1, cc); //缸体吊装门打开异常
flag++;
flag++;
m_SignalStateWrapper->m_HandPlatformCloseAlarm = new SysParamBool(flag++, 1, cc); //吊装盖板关闭异常
flag++;
flag++;
flag++;
flag++;
flag++;
flag++;
flag++;
flag++;
flag++;
flag++;
flag++;
m_SignalStateWrapper->m_ArmFrontLimit = new SysParamBool(flag++, 1, cc); //铺粉轴前限位触发警示
m_SignalStateWrapper->m_ArmBackLimit = new SysParamBool(flag++, 1, cc); //铺粉轴后限位触发警示
m_SignalStateWrapper->m_LoadAxisLeftLimit = new SysParamBool(flag++, 1, cc); //移载轴左限位触发警示
m_SignalStateWrapper->m_LoadAxisRightLimit = new SysParamBool(flag++, 1, cc); //移载轴右限位触发警示
flag++;
flag++;
flag++;
m_SignalStateWrapper->m_PowderPosition1Alarm = new SysParamBool(flag++, 1, cc); //粉仓料位感应器1异常
m_SignalStateWrapper->m_PowderPosition2Alarm = new SysParamBool(flag++, 1, cc); //粉仓料位感应器2异常
m_SignalStateWrapper->m_PowderPosition3Alarm = new SysParamBool(flag++, 1, cc); //粉仓料位感应器3异常
m_SignalStateWrapper->m_PowderPosition4Alarm = new SysParamBool(flag++, 1, cc); //粉仓料位感应器4异常
m_SignalStateWrapper->m_PowderPosition5Alarm = new SysParamBool(flag++, 1, cc); //粉仓料位感应器5异常
m_SignalStateWrapper->m_SupplyHomeIndexDisableAlarm = new SysParamBool(flag++, 1, cc); //供粉转轴原点失效异常
flag++;
m_SignalStateWrapper->m_PrintOxygen1DeciceAlarm = new SysParamBool(flag++, 1, cc); //打印舱测氧仪1异常
m_SignalStateWrapper->m_PrintOxygen2DeviceAlarm = new SysParamBool(flag++, 1, cc); //打印舱测氧仪2异常
m_SignalStateWrapper->m_OutsideOxygenDeviceAlarm = new SysParamBool(flag++, 1, cc); //室外测氧仪异常
m_SignalStateWrapper->m_PrintPressureOverLimitAlarm = new SysParamBool(flag++, 1, cc); //打印舱压力过高异常
m_SignalStateWrapper->m_ScannerChillerAlarm = new SysParamBool(flag++, 1, cc); //光路冷水机报警
m_SignalStateWrapper->m_PurifierChillerAlarm = new SysParamBool(flag++, 1, cc); //净化器冷水机报警
m_SignalStateWrapper->m_MoldTorqueAlarm = new SysParamBool(flag++, 1, cc); //打印主轴扭力异常
flag++;
m_SignalStateWrapper->m_EleCylinderMainTorqueAlarm = new SysParamBool(flag++, 1, cc); //电缸主轴扭力异常
m_SignalStateWrapper->m_EleCylinderSlaveTorqueAlarm = new SysParamBool(flag++, 1, cc); //电缸从轴扭力异常
m_SignalStateWrapper->m_LoadTorqueAlarm = new SysParamBool(flag++, 1, cc); //移载轴扭力异常
m_SignalStateWrapper->m_ArmTorqueAlarm = new SysParamBool(flag++, 1, cc); //铺粉轴扭力异常
m_SignalStateWrapper->m_SupplyTorqueAlarm = new SysParamBool(flag++, 1, cc); //供粉轴扭力异常
m_SignalStateWrapper->m_GratingRulerFail = new SysParamBool(flag++, 1, cc); //光栅尺补偿失败
m_SignalStateWrapper->m_CleanTrackPosDisableAlarm = new SysParamBool(flag++, 1, cc, "轨道清粉位失效异常");
m_SignalStateWrapper->m_CleanLiftStopAlarm = new SysParamBool(flag++, 1, cc, "清粉升降急停异常");
m_SignalStateWrapper->m_LoadHandPosSensorDiable = new SysParamBool(flag++, 1, cc, "移载吊装位感应器失效");
m_SignalStateWrapper->m_PrintMainOverSoftUpLimit = new SysParamBool(flag++, 1, cc); //打印主轴超软上限
m_SignalStateWrapper->m_PrintMainOverSoftDownLimit = new SysParamBool(flag++, 1, cc); //打印主轴超软下限
m_SignalStateWrapper->m_EleCylinderMainOverSoftUpLimit = new SysParamBool(flag++, 1, cc); //电缸主轴超软上限
m_SignalStateWrapper->m_EleCylinderMainOverSoftDownLimit = new SysParamBool(flag++, 1, cc); //电缸主轴超软下限
m_SignalStateWrapper->m_LoadAxisOverSoftLeftLimit = new SysParamBool(flag++, 1, cc); //移载轴超左软限
m_SignalStateWrapper->m_LoadAxisOverSoftRightLimit = new SysParamBool(flag++, 1, cc); //移载轴超右软限
m_SignalStateWrapper->m_ArmOverSoftFrontLimit = new SysParamBool(flag++, 1, cc); //铺粉轴超前软限
m_SignalStateWrapper->m_ArmOverSoftBackLimit = new SysParamBool(flag++, 1, cc); //铺粉轴超后软限
m_SignalStateWrapper->m_PrintStorageCar2JarFullWarn = new SysParamBool(flag++, 1, cc); //存粉小车2粉罐已满警示
m_SignalStateWrapper->m_PrintStorageCar2DisconnectWarn = new SysParamBool(flag++, 1, cc); //存粉小车2没有连接警示
m_SignalStateWrapper->m_PrintStorageCar2BlockAlarm = new SysParamBool(flag++, 1, cc); //打印存粉小车2堵塞报警
m_SignalStateWrapper->m_MainPowerLossCheckAlarm = new SysParamBool(flag++, 1, cc, "主电源缺相检测异常");
m_SignalStateWrapper->m_PrintCabinLockDisableAlarm = new SysParamBool(flag++, 1, cc, "打印舱电锁感应异常");
m_SignalStateWrapper->m_CleanBoxUpOpenAlarm = new SysParamBool(flag++, 1, cc, "清粉箱上盖气缸打开不到位异常");
m_SignalStateWrapper->m_CleanBoxUpCloseAlarm = new SysParamBool(flag++, 1, cc, "清粉箱上盖气缸关闭不到位异常");
m_SignalStateWrapper->m_CylinderHandPlatformOpenAlarm = new SysParamBool(flag++, 1, cc, "缸体吊装盖板打开异常");
m_SignalStateWrapper->m_CylinderHandDoorOpenAlarm = new SysParamBool(flag++, 1, cc, "缸体吊装门打开异常");
flag++;
flag++;
m_SignalStateWrapper->m_HandPlatformCloseAlarm = new SysParamBool(flag++, 1, cc, "吊装盖板关闭异常");
flag++;
flag++;
flag++;
flag++;
flag++;
flag++;
flag++;
flag++;
flag++;
flag++;
flag++;
m_SignalStateWrapper->m_ArmFrontLimit = new SysParamBool(flag++, 1, cc, "铺粉轴前限位触发警示");
m_SignalStateWrapper->m_ArmBackLimit = new SysParamBool(flag++, 1, cc, "铺粉轴后限位触发警示");
m_SignalStateWrapper->m_LoadAxisLeftLimit = new SysParamBool(flag++, 1, cc, "移载轴左限位触发警示");
m_SignalStateWrapper->m_LoadAxisRightLimit = new SysParamBool(flag++, 1, cc, "移载轴右限位触发警示");
flag++;
flag++;
flag++;
m_plcMp.insert(make_pair("PrintStorageCar1JarFullWarn", DValue(m_SignalStateWrapper->m_PrintStorageCar1JarFullWarn)));
m_plcMp.insert(make_pair("PrintStorageCar1DisconnectWarn", DValue(m_SignalStateWrapper->m_PrintStorageCar1DisconnectWarn)));
m_plcMp.insert(make_pair("PrintStorageCar1BlockWarn", DValue(m_SignalStateWrapper->m_PrintStorageCar1BlockWarn)));
m_plcMp.insert(make_pair("MoldMainUpLimitActive", DValue(m_SignalStateWrapper->m_MoldMainUpLimitActive)));
m_plcMp.insert(make_pair("MoldMainDownLimitActive", DValue(m_SignalStateWrapper->m_MoldMainDownLimitActive)));
m_plcMp.insert(make_pair("PrintTrackDisableWarn", DValue(m_SignalStateWrapper->m_PrintTrackDisableWarn)));
m_plcMp.insert(make_pair("CylinderExtendOnAlarm", DValue(m_SignalStateWrapper->m_CylinderExtendOnAlarm)));
m_plcMp.insert(make_pair("CylinderExtendOffAlarm", DValue(m_SignalStateWrapper->m_CylinderExtendOffAlarm)));
m_plcMp.insert(make_pair("PrintCylinderVerifyAlarm", DValue(m_SignalStateWrapper->m_PrintCylinderVerifyAlarm)));
m_plcMp.insert(make_pair("CleanTrackPosDisableAlarm", DValue(m_SignalStateWrapper->m_CleanTrackPosDisableAlarm)));
m_plcMp.insert(make_pair("CleanLiftStopAlarm", DValue(m_SignalStateWrapper->m_CleanLiftStopAlarm)));
m_plcMp.insert(make_pair("LoadHandPosSensorDiable", DValue(m_SignalStateWrapper->m_LoadHandPosSensorDiable)));
m_plcMp.insert(make_pair("PrintStorageCar1JarFullWarn", DValue(m_SignalStateWrapper->m_PrintStorageCar1JarFullWarn)));
m_plcMp.insert(make_pair("PrintStorageCar1DisconnectWarn", DValue(m_SignalStateWrapper->m_PrintStorageCar1DisconnectWarn)));
m_plcMp.insert(make_pair("PrintStorageCar1BlockWarn", DValue(m_SignalStateWrapper->m_PrintStorageCar1BlockWarn)));
m_plcMp.insert(make_pair("MoldMainUpLimitActive", DValue(m_SignalStateWrapper->m_MoldMainUpLimitActive)));
m_plcMp.insert(make_pair("MoldMainDownLimitActive", DValue(m_SignalStateWrapper->m_MoldMainDownLimitActive)));
m_plcMp.insert(make_pair("PrintTrackDisableWarn", DValue(m_SignalStateWrapper->m_PrintTrackDisableWarn)));
m_plcMp.insert(make_pair("CylinderExtendOnAlarm", DValue(m_SignalStateWrapper->m_CylinderExtendOnAlarm)));
m_plcMp.insert(make_pair("CylinderExtendOffAlarm", DValue(m_SignalStateWrapper->m_CylinderExtendOffAlarm)));
m_plcMp.insert(make_pair("PrintCylinderVerifyAlarm", DValue(m_SignalStateWrapper->m_PrintCylinderVerifyAlarm)));
m_plcMp.insert(make_pair("CleanTrackPosDisableAlarm", DValue(m_SignalStateWrapper->m_CleanTrackPosDisableAlarm)));
m_plcMp.insert(make_pair("CleanLiftStopAlarm", DValue(m_SignalStateWrapper->m_CleanLiftStopAlarm)));
m_plcMp.insert(make_pair("LoadHandPosSensorDiable", DValue(m_SignalStateWrapper->m_LoadHandPosSensorDiable)));
m_plcMp.insert(make_pair("MainPowerLossCheckAlarm", DValue(m_SignalStateWrapper->m_MainPowerLossCheckAlarm)));
m_plcMp.insert(make_pair("PrintCabinLockDisableAlarm", DValue(m_SignalStateWrapper->m_PrintCabinLockDisableAlarm)));
m_plcMp.insert(make_pair("CleanBoxUpOpenAlarm", DValue(m_SignalStateWrapper->m_CleanBoxUpOpenAlarm)));
m_plcMp.insert(make_pair("CleanBoxUpCloseAlarm", DValue(m_SignalStateWrapper->m_CleanBoxUpCloseAlarm)));
m_plcMp.insert(make_pair("CylinderHandPlatformOpenAlarm", DValue(m_SignalStateWrapper->m_CylinderHandPlatformOpenAlarm)));
m_plcMp.insert(make_pair("CylinderHandDoorOpenAlarm", DValue(m_SignalStateWrapper->m_CylinderHandDoorOpenAlarm)));
m_plcMp.insert(make_pair("HandPlatformCloseAlarm", DValue(m_SignalStateWrapper->m_HandPlatformCloseAlarm)));
m_plcMp.insert(make_pair("ArmFrontLimit", DValue(m_SignalStateWrapper->m_ArmFrontLimit)));
m_plcMp.insert(make_pair("ArmBackLimit", DValue(m_SignalStateWrapper->m_ArmBackLimit)));
m_plcMp.insert(make_pair("LoadAxisLeftLimit", DValue(m_SignalStateWrapper->m_LoadAxisLeftLimit)));
m_plcMp.insert(make_pair("LoadAxisRightLimit", DValue(m_SignalStateWrapper->m_LoadAxisRightLimit)));
m_SignalStateWrapper->m_PowderPosition1Alarm = new SysParamBool(flag++, 1, cc, "粉仓料位感应器1异常");
m_SignalStateWrapper->m_PowderPosition2Alarm = new SysParamBool(flag++, 1, cc, "粉仓料位感应器2异常");
m_SignalStateWrapper->m_PowderPosition3Alarm = new SysParamBool(flag++, 1, cc, "粉仓料位感应器3异常");
m_SignalStateWrapper->m_PowderPosition4Alarm = new SysParamBool(flag++, 1, cc, "粉仓料位感应器4异常");
m_SignalStateWrapper->m_PowderPosition5Alarm = new SysParamBool(flag++, 1, cc, "粉仓料位感应器5异常");
m_SignalStateWrapper->m_SupplyHomeIndexDisableAlarm = new SysParamBool(flag++, 1, cc, "供粉转轴原点失效异常");
flag++;
m_SignalStateWrapper->m_PrintOxygen1DeciceAlarm = new SysParamBool(flag++, 1, cc, "打印舱测氧仪1异常");
m_SignalStateWrapper->m_PrintOxygen2DeviceAlarm = new SysParamBool(flag++, 1, cc, "打印舱测氧仪2异常");
m_SignalStateWrapper->m_OutsideOxygenDeviceAlarm = new SysParamBool(flag++, 1, cc, "室外测氧仪异常");
m_SignalStateWrapper->m_PrintPressureOverLimitAlarm = new SysParamBool(flag++, 1, cc, "打印舱压力过高异常");
m_SignalStateWrapper->m_ScannerChillerAlarm = new SysParamBool(flag++, 1, cc, "光路冷水机报警");
m_SignalStateWrapper->m_PurifierChillerAlarm = new SysParamBool(flag++, 1, cc, "净化器冷水机报警");
m_SignalStateWrapper->m_MoldTorqueAlarm = new SysParamBool(flag++, 1, cc, "打印主轴扭力异常");
flag++;
m_SignalStateWrapper->m_EleCylinderMainTorqueAlarm = new SysParamBool(flag++, 1, cc, "电缸主轴扭力异常");
m_SignalStateWrapper->m_EleCylinderSlaveTorqueAlarm = new SysParamBool(flag++, 1, cc, "电缸从轴扭力异常");
m_SignalStateWrapper->m_LoadTorqueAlarm = new SysParamBool(flag++, 1, cc, "移载轴扭力异常");
m_SignalStateWrapper->m_ArmTorqueAlarm = new SysParamBool(flag++, 1, cc, "铺粉轴扭力异常");
m_SignalStateWrapper->m_SupplyTorqueAlarm = new SysParamBool(flag++, 1, cc, "供粉轴扭力异常");
m_SignalStateWrapper->m_GratingRulerFail = new SysParamBool(flag++, 1, cc, "光栅尺补偿失败");
m_SignalStateWrapper->m_PrintMainOverSoftUpLimit = new SysParamBool(flag++, 1, cc, "打印主轴超软上限");
m_SignalStateWrapper->m_PrintMainOverSoftDownLimit = new SysParamBool(flag++, 1, cc, "打印主轴超软下限");
m_SignalStateWrapper->m_EleCylinderMainOverSoftUpLimit = new SysParamBool(flag++, 1, cc, "电缸主轴超软上限");
m_SignalStateWrapper->m_EleCylinderMainOverSoftDownLimit = new SysParamBool(flag++, 1, cc, "电缸主轴超软下限");
m_SignalStateWrapper->m_LoadAxisOverSoftLeftLimit = new SysParamBool(flag++, 1, cc, "移载轴超左软限");
m_SignalStateWrapper->m_LoadAxisOverSoftRightLimit = new SysParamBool(flag++, 1, cc, "移载轴超右软限");
m_SignalStateWrapper->m_ArmOverSoftFrontLimit = new SysParamBool(flag++, 1, cc, "铺粉轴超前软限");
m_SignalStateWrapper->m_ArmOverSoftBackLimit = new SysParamBool(flag++, 1, cc, "铺粉轴超后软限");
m_SignalStateWrapper->m_PrintStorageCar2JarFullWarn = new SysParamBool(flag++, 1, cc, "存粉小车2粉罐已满警示");
m_SignalStateWrapper->m_PrintStorageCar2DisconnectWarn = new SysParamBool(flag++, 1, cc, "存粉小车2没有连接警示");
m_SignalStateWrapper->m_PrintStorageCar2BlockAlarm = new SysParamBool(flag++, 1, cc, "打印存粉小车2堵塞报警");
m_plcMp.insert(make_pair("PowderPosition1Alarm", DValue(m_SignalStateWrapper->m_PowderPosition1Alarm)));
m_plcMp.insert(make_pair("PowderPosition2Alarm", DValue(m_SignalStateWrapper->m_PowderPosition2Alarm)));
m_plcMp.insert(make_pair("PowderPosition3Alarm", DValue(m_SignalStateWrapper->m_PowderPosition3Alarm)));
m_plcMp.insert(make_pair("PowderPosition4Alarm", DValue(m_SignalStateWrapper->m_PowderPosition4Alarm)));
m_plcMp.insert(make_pair("PowderPosition5Alarm", DValue(m_SignalStateWrapper->m_PowderPosition5Alarm)));
m_plcMp.insert(make_pair("SupplyHomeIndexDisableAlarm", DValue(m_SignalStateWrapper->m_SupplyHomeIndexDisableAlarm)));
m_plcMp.insert(make_pair("PrintOxygen1DeciceAlarm", DValue(m_SignalStateWrapper->m_PrintOxygen1DeciceAlarm)));
m_plcMp.insert(make_pair("PrintOxygen2DeviceAlarm", DValue(m_SignalStateWrapper->m_PrintOxygen2DeviceAlarm)));
m_plcMp.insert(make_pair("OutsideOxygenDeviceAlarm", DValue(m_SignalStateWrapper->m_OutsideOxygenDeviceAlarm)));
m_plcMp.insert(make_pair("PrintPressureOverLimitAlarm", DValue(m_SignalStateWrapper->m_PrintPressureOverLimitAlarm)));
m_plcMp.insert(make_pair("ScannerChillerAlarm", DValue(m_SignalStateWrapper->m_ScannerChillerAlarm)));
m_plcMp.insert(make_pair("PurifierChillerAlarm", DValue(m_SignalStateWrapper->m_PurifierChillerAlarm)));
m_plcMp.insert(make_pair("MoldTorqueAlarm", DValue(m_SignalStateWrapper->m_MoldTorqueAlarm)));
m_plcMp.insert(make_pair("EleCylinderMainTorqueAlarm", DValue(m_SignalStateWrapper->m_EleCylinderMainTorqueAlarm)));
m_plcMp.insert(make_pair("EleCylinderSlaveTorqueAlarm", DValue(m_SignalStateWrapper->m_EleCylinderSlaveTorqueAlarm)));
m_plcMp.insert(make_pair("LoadTorqueAlarm", DValue(m_SignalStateWrapper->m_LoadTorqueAlarm)));
m_plcMp.insert(make_pair("ArmTorqueAlarm", DValue(m_SignalStateWrapper->m_ArmTorqueAlarm)));
m_plcMp.insert(make_pair("SupplyTorqueAlarm", DValue(m_SignalStateWrapper->m_SupplyTorqueAlarm)));
m_plcMp.insert(make_pair("GratingRulerFail", DValue(m_SignalStateWrapper->m_GratingRulerFail)));
m_plcMp.insert(make_pair("PrintMainOverSoftUpLimit", DValue(m_SignalStateWrapper->m_PrintMainOverSoftUpLimit)));
m_plcMp.insert(make_pair("PrintMainOverSoftDownLimit", DValue(m_SignalStateWrapper->m_PrintMainOverSoftDownLimit)));
m_plcMp.insert(make_pair("EleCylinderMainOverSoftUpLimit", DValue(m_SignalStateWrapper->m_EleCylinderMainOverSoftUpLimit)));
m_plcMp.insert(make_pair("EleCylinderMainOverSoftDownLimit", DValue(m_SignalStateWrapper->m_EleCylinderMainOverSoftDownLimit)));
m_plcMp.insert(make_pair("LoadAxisOverSoftLeftLimit", DValue(m_SignalStateWrapper->m_LoadAxisOverSoftLeftLimit)));
m_plcMp.insert(make_pair("LoadAxisOverSoftRightLimit", DValue(m_SignalStateWrapper->m_LoadAxisOverSoftRightLimit)));
m_plcMp.insert(make_pair("ArmOverSoftFrontLimit", DValue(m_SignalStateWrapper->m_ArmOverSoftFrontLimit)));
m_plcMp.insert(make_pair("ArmOverSoftBackLimit", DValue(m_SignalStateWrapper->m_ArmOverSoftBackLimit)));
m_plcMp.insert(make_pair("PrintStorageCar2JarFullWarn", DValue(m_SignalStateWrapper->m_PrintStorageCar2JarFullWarn)));
m_plcMp.insert(make_pair("PrintStorageCar2DisconnectWarn", DValue(m_SignalStateWrapper->m_PrintStorageCar2DisconnectWarn)));
m_plcMp.insert(make_pair("PrintStorageCar2BlockAlarm", DValue(m_SignalStateWrapper->m_PrintStorageCar2BlockAlarm)));
flag = 70 * 8 + 1;
m_SignalStateWrapper->m_LoadAxisManualAlarmSignal= new SysParamBool(flag++, 1, cc); //移栽手动异常
m_SignalStateWrapper->m_PrintMainServoAlarmSignal = new SysParamBool(flag++, 1, cc); //打印主轴伺服驱动器异常
m_SignalStateWrapper->m_LoadAxisServoAlarmSignal = new SysParamBool(flag++, 1, cc); //移载轴伺服驱动器异常
m_SignalStateWrapper->m_ArmServoAlarmSignal = new SysParamBool(flag++, 1, cc); //铺粉轴伺服驱动器异常
m_SignalStateWrapper->m_SupplyServoAlarmSignal = new SysParamBool(flag++, 1, cc); //供粉转轴伺服驱动器异常
m_SignalStateWrapper->m_EleCylinderMainServoAlarmSignal = new SysParamBool(flag++, 1, cc); //电缸主轴伺服异常
m_SignalStateWrapper->m_EleCylinderPrintHandupAlarmSignal = new SysParamBool(flag++, 1, cc);//电缸打印位顶升异常
m_SignalStateWrapper->m_CleanBoxTopDoorRiseAlarmSignal = new SysParamBool(flag++, 1, cc); //清粉箱顶门升高异常
m_SignalStateWrapper->m_CleanBoxTopDoorFallAlarmSignal = new SysParamBool(flag++, 1, cc); //清粉箱顶门降低异常
m_SignalStateWrapper->m_CoverReachAcceptPowderAlarmSignal = new SysParamBool(flag++, 1, cc); //铺粉轴到接粉位异常
m_SignalStateWrapper->m_CoverReachDropPowderAlarmSignal = new SysParamBool(flag++, 1, cc); //铺粉轴到下粉位异常
m_SignalStateWrapper->m_EleCylinderSlaveServoAlarmSignal = new SysParamBool(flag++, 1, cc); //电缸从轴伺服异常
m_SignalStateWrapper->m_LinearEncoderCheckAlarmSignal = new SysParamBool(flag++, 1, cc); //光栅尺检测异常
m_SignalStateWrapper->m_PrintMainSoftStopTrigger = new SysParamBool(flag++, 1, cc); //打印主轴软急停触发
m_SignalStateWrapper->m_EleCylinderSoftStopTrigger = new SysParamBool(flag++, 1, cc); //电缸主轴软急停触发
m_SignalStateWrapper->m_LoadAxisSoftStopTrigger = new SysParamBool(flag++, 1, cc); //移载轴软急停触发
m_SignalStateWrapper->m_CoverSoftStopTrigger = new SysParamBool(flag++, 1, cc); //铺粉轴软急停触发
m_SignalStateWrapper->m_CoverHomeException = new SysParamBool(flag++, 1, cc); //铺粉归原点异常
m_SignalStateWrapper->m_LoadAxisManualAlarmSignal = new SysParamBool(flag++, 1, cc, "移栽手动异常");
m_SignalStateWrapper->m_PrintMainServoAlarmSignal = new SysParamBool(flag++, 1, cc, "打印主轴伺服驱动器异常");
m_SignalStateWrapper->m_LoadAxisServoAlarmSignal = new SysParamBool(flag++, 1, cc, "移载轴伺服驱动器异常");
m_SignalStateWrapper->m_ArmServoAlarmSignal = new SysParamBool(flag++, 1, cc, "铺粉轴伺服驱动器异常");
m_SignalStateWrapper->m_SupplyServoAlarmSignal = new SysParamBool(flag++, 1, cc, "供粉转轴伺服驱动器异常");
m_SignalStateWrapper->m_EleCylinderMainServoAlarmSignal = new SysParamBool(flag++, 1, cc, "电缸主轴伺服异常");
m_SignalStateWrapper->m_EleCylinderPrintHandupAlarmSignal = new SysParamBool(flag++, 1, cc, "电缸打印位顶升异常");
m_SignalStateWrapper->m_CleanBoxTopDoorRiseAlarmSignal = new SysParamBool(flag++, 1, cc, "清粉箱顶门升高异常");
m_SignalStateWrapper->m_CleanBoxTopDoorFallAlarmSignal = new SysParamBool(flag++, 1, cc, "清粉箱顶门降低异常");
m_SignalStateWrapper->m_CoverReachAcceptPowderAlarmSignal = new SysParamBool(flag++, 1, cc, "铺粉轴到接粉位异常");
m_SignalStateWrapper->m_CoverReachDropPowderAlarmSignal = new SysParamBool(flag++, 1, cc, "铺粉轴到下粉位异常");
m_SignalStateWrapper->m_EleCylinderSlaveServoAlarmSignal = new SysParamBool(flag++, 1, cc, "电缸从轴伺服异常");
m_SignalStateWrapper->m_LinearEncoderCheckAlarmSignal = new SysParamBool(flag++, 1, cc, "光栅尺检测异常");
m_SignalStateWrapper->m_PrintMainSoftStopTrigger = new SysParamBool(flag++, 1, cc, "打印主轴软急停触发");
m_SignalStateWrapper->m_EleCylinderSoftStopTrigger = new SysParamBool(flag++, 1, cc, "电缸主轴软急停触发");
m_SignalStateWrapper->m_LoadAxisSoftStopTrigger = new SysParamBool(flag++, 1, cc, "移载轴软急停触发");
m_SignalStateWrapper->m_CoverSoftStopTrigger = new SysParamBool(flag++, 1, cc, "铺粉轴软急停触发");
m_SignalStateWrapper->m_CoverHomeException = new SysParamBool(flag++, 1, cc, "铺粉归原点异常");
m_plcMp.insert(make_pair("LoadAxisManualAlarmSignal", DValue(m_SignalStateWrapper->m_LoadAxisManualAlarmSignal)));
m_plcMp.insert(make_pair("PrintMainServoAlarmSignal", DValue(m_SignalStateWrapper->m_PrintMainServoAlarmSignal)));
m_plcMp.insert(make_pair("LoadAxisServoAlarmSignal", DValue(m_SignalStateWrapper->m_LoadAxisServoAlarmSignal)));
m_plcMp.insert(make_pair("ArmServoAlarmSignal", DValue(m_SignalStateWrapper->m_ArmServoAlarmSignal)));
m_plcMp.insert(make_pair("SupplyServoAlarmSignal", DValue(m_SignalStateWrapper->m_SupplyServoAlarmSignal)));
m_plcMp.insert(make_pair("EleCylinderMainServoAlarmSignal", DValue(m_SignalStateWrapper->m_EleCylinderMainServoAlarmSignal)));
m_plcMp.insert(make_pair("EleCylinderPrintHandupAlarmSignal", DValue(m_SignalStateWrapper->m_EleCylinderPrintHandupAlarmSignal)));
m_plcMp.insert(make_pair("CleanBoxTopDoorRiseAlarmSignal", DValue(m_SignalStateWrapper->m_CleanBoxTopDoorRiseAlarmSignal)));
m_plcMp.insert(make_pair("CleanBoxTopDoorFallAlarmSignal", DValue(m_SignalStateWrapper->m_CleanBoxTopDoorFallAlarmSignal)));
m_plcMp.insert(make_pair("CoverReachAcceptPowderAlarmSignal", DValue(m_SignalStateWrapper->m_CoverReachAcceptPowderAlarmSignal)));
m_plcMp.insert(make_pair("CoverReachDropPowderAlarmSignal", DValue(m_SignalStateWrapper->m_CoverReachDropPowderAlarmSignal)));
m_plcMp.insert(make_pair("EleCylinderSlaveServoAlarmSignal", DValue(m_SignalStateWrapper->m_EleCylinderSlaveServoAlarmSignal)));
m_plcMp.insert(make_pair("LinearEncoderCheckAlarmSignal", DValue(m_SignalStateWrapper->m_LinearEncoderCheckAlarmSignal)));
m_plcMp.insert(make_pair("PrintMainSoftStopTrigger", DValue(m_SignalStateWrapper->m_PrintMainSoftStopTrigger)));
m_plcMp.insert(make_pair("EleCylinderSoftStopTrigger", DValue(m_SignalStateWrapper->m_EleCylinderSoftStopTrigger)));
m_plcMp.insert(make_pair("LoadAxisSoftStopTrigger", DValue(m_SignalStateWrapper->m_LoadAxisSoftStopTrigger)));
m_plcMp.insert(make_pair("CoverSoftStopTrigger", DValue(m_SignalStateWrapper->m_CoverSoftStopTrigger)));
m_plcMp.insert(make_pair("CoverHomeException", DValue(m_SignalStateWrapper->m_CoverHomeException)));
flag = 78;
m_SignalStateWrapper->m_CylinderState = new SysParamInt(flag, 1, cc); //缸体状态_R
m_SignalStateWrapper->m_CylinderState = new SysParamInt(flag, 1, cc, "缸体状态_R");
flag = 80 * 8;
m_SignalStateWrapper->m_CylinderReachPrintTriger = new SysParamBool(flag++, 1, cc); //触发缸体到达打印位_自动_RW
m_SignalStateWrapper->m_CylinderReachPrintRun = new SysParamBool(flag++, 1, cc); //缸体到打印位运行中_自动_RW
m_SignalStateWrapper->m_CylinderReachPrintFinished = new SysParamBool(flag++, 1, cc); //缸体到达打印位完毕_自动_RW
m_SignalStateWrapper->m_CylinderPrintLoadTriger = new SysParamBool(flag++, 1, cc); //触发缸体打印位装载_自动_RW
m_SignalStateWrapper->m_CylinderPrintLoadRun = new SysParamBool(flag++, 1, cc); //缸体打印位装载运行中_自动_RW
m_SignalStateWrapper->m_CylinderPrintLoadFinished = new SysParamBool(flag++, 1, cc); //缸体打印位装载完毕_自动_RW
m_SignalStateWrapper->m_CylinderPrintUnloadTriger = new SysParamBool(flag++, 1, cc); //触发缸体打印位卸载_自动_RW
m_SignalStateWrapper->m_CylinderPrintUnloadRun = new SysParamBool(flag++, 1, cc); //缸体打印位卸载运行中_自动_RW
m_SignalStateWrapper->m_CylinderPrintUnloadFinished = new SysParamBool(flag++, 1, cc); //缸体打印位卸载完毕_自动_RW
m_SignalStateWrapper->m_CylinderReachPrintTriger = new SysParamBool(flag++, 1, cc, "触发缸体到达打印位_自动_RW");
m_SignalStateWrapper->m_CylinderReachPrintRun = new SysParamBool(flag++, 1, cc, "缸体到打印位运行中_自动_RW");
m_SignalStateWrapper->m_CylinderReachPrintFinished = new SysParamBool(flag++, 1, cc, "缸体到达打印位完毕_自动_RW");
m_SignalStateWrapper->m_CylinderPrintLoadTriger = new SysParamBool(flag++, 1, cc, "触发缸体打印位装载_自动_RW");
m_SignalStateWrapper->m_CylinderPrintLoadRun = new SysParamBool(flag++, 1, cc, "缸体打印位装载运行中_自动_RW");
m_SignalStateWrapper->m_CylinderPrintLoadFinished = new SysParamBool(flag++, 1, cc, "缸体打印位装载完毕_自动_RW");
m_SignalStateWrapper->m_CylinderPrintUnloadTriger = new SysParamBool(flag++, 1, cc, "触发缸体打印位卸载_自动_RW");
m_SignalStateWrapper->m_CylinderPrintUnloadRun = new SysParamBool(flag++, 1, cc, "缸体打印位卸载运行中_自动_RW");
m_SignalStateWrapper->m_CylinderPrintUnloadFinished = new SysParamBool(flag++, 1, cc, "缸体打印位卸载完毕_自动_RW");
m_plcMp.insert(make_pair("CylinderState", DValue(m_SignalStateWrapper->m_CylinderState)));
m_plcMp.insert(make_pair("CylinderReachPrintTriger", DValue(m_SignalStateWrapper->m_CylinderReachPrintTriger)));
m_plcMp.insert(make_pair("CylinderReachPrintRun", DValue(m_SignalStateWrapper->m_CylinderReachPrintRun)));
m_plcMp.insert(make_pair("CylinderReachPrintFinished", DValue(m_SignalStateWrapper->m_CylinderReachPrintFinished)));
m_plcMp.insert(make_pair("CylinderPrintLoadTriger", DValue(m_SignalStateWrapper->m_CylinderPrintLoadTriger)));
m_plcMp.insert(make_pair("CylinderPrintLoadRun", DValue(m_SignalStateWrapper->m_CylinderPrintLoadRun)));
m_plcMp.insert(make_pair("CylinderPrintLoadFinished", DValue(m_SignalStateWrapper->m_CylinderPrintLoadFinished)));
m_plcMp.insert(make_pair("CylinderPrintUnloadTriger", DValue(m_SignalStateWrapper->m_CylinderPrintUnloadTriger)));
m_plcMp.insert(make_pair("CylinderPrintUnloadRun", DValue(m_SignalStateWrapper->m_CylinderPrintUnloadRun)));
m_plcMp.insert(make_pair("CylinderPrintUnloadFinished", DValue(m_SignalStateWrapper->m_CylinderPrintUnloadFinished)));
flag = 81 * 8+7;
m_SignalStateWrapper->m_CylinderReachCleanTriger = new SysParamBool(flag++, 1, cc); //触发缸体到达清粉位_自动_RW
m_SignalStateWrapper->m_CylinderReachCleanRun = new SysParamBool(flag++, 1, cc); //缸体到清粉位运行中_RW
m_SignalStateWrapper->m_CylinderReachCleanFinished = new SysParamBool(flag++, 1, cc); //缸体到清粉位完毕_自动_RW
m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger = new SysParamBool(flag++, 1, cc); //触发缸体与清粉箱连接_自动_RW
m_SignalStateWrapper->m_CylinderConnectCleanBoxRun = new SysParamBool(flag++, 1, cc); //缸体与清粉箱连接中_RW
m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished = new SysParamBool(flag++, 1, cc); //缸体与清粉箱连接完毕_自动_RW
m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger = new SysParamBool(flag++, 1, cc); //触发缸体与清粉箱分离_自动_RW
m_SignalStateWrapper->m_CylinderDisconnectCleanBoxRun = new SysParamBool(flag++, 1, cc); //缸体与清粉箱分离中_RW
m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished = new SysParamBool(flag++, 1, cc); //缸体与清粉箱分离完毕_自动_RW
m_SignalStateWrapper->m_CoverTriger = new SysParamBool(flag++, 1, cc); //触发铺粉流程_W
m_SignalStateWrapper->m_IsCovering = new SysParamBool(flag++, 1, cc); //铺粉流程忙_R
m_SignalStateWrapper->m_IsCoverFinishedCanPrint = new SysParamBool(flag++, 1, cc); //铺粉完成允许打印_RW
m_SignalStateWrapper->m_IsCoverDebug = new SysParamBool(flag++, 1, cc); //铺粉调试模式_W
m_SignalStateWrapper->m_IsFirstCover = new SysParamBool(flag++, 1, cc); //第一次铺粉_W
m_SignalStateWrapper->m_PrintDeoxygenTriger = new SysParamBool(flag++, 1, cc); //触发打印室除氧_W
m_SignalStateWrapper->m_PrintDeoxygenRun = new SysParamBool(flag++, 1, cc); //打印室除氧中_RW
m_SignalStateWrapper->m_PrintDeoxygenFinished = new SysParamBool(flag++, 1, cc); //打印室氧含量值到达_R
m_SignalStateWrapper->m_CylinderReachCleanTriger = new SysParamBool(flag++, 1, cc, "触发缸体到达清粉位_自动_RW");
m_SignalStateWrapper->m_CylinderReachCleanRun = new SysParamBool(flag++, 1, cc, "缸体到清粉位运行中_RW");
m_SignalStateWrapper->m_CylinderReachCleanFinished = new SysParamBool(flag++, 1, cc, "缸体到清粉位完毕_自动_RW");
m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger = new SysParamBool(flag++, 1, cc, "触发缸体与清粉箱连接_自动_RW");
m_SignalStateWrapper->m_CylinderConnectCleanBoxRun = new SysParamBool(flag++, 1, cc, "缸体与清粉箱连接中_RW");
m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished = new SysParamBool(flag++, 1, cc, "缸体与清粉箱连接完毕_自动_RW");
m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger = new SysParamBool(flag++, 1, cc, "触发缸体与清粉箱分离_自动_RW");
m_SignalStateWrapper->m_CylinderDisconnectCleanBoxRun = new SysParamBool(flag++, 1, cc, "缸体与清粉箱分离中_RW");
m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished = new SysParamBool(flag++, 1, cc, "缸体与清粉箱分离完毕_自动_RW");
m_SignalStateWrapper->m_CoverTriger = new SysParamBool(flag++, 1, cc, "触发铺粉流程_W");
m_SignalStateWrapper->m_IsCovering = new SysParamBool(flag++, 1, cc, "铺粉流程忙_R");
m_SignalStateWrapper->m_IsCoverFinishedCanPrint = new SysParamBool(flag++, 1, cc, "铺粉完成允许打印_RW");
m_SignalStateWrapper->m_IsCoverDebug = new SysParamBool(flag++, 1, cc, "铺粉调试模式_W");
m_SignalStateWrapper->m_IsFirstCover = new SysParamBool(flag++, 1, cc, "第一次铺粉_W");
m_SignalStateWrapper->m_PrintDeoxygenTriger = new SysParamBool(flag++, 1, cc, "触发打印室除氧_W");
m_SignalStateWrapper->m_PrintDeoxygenRun = new SysParamBool(flag++, 1, cc, "打印室除氧中_RW");
m_SignalStateWrapper->m_PrintDeoxygenFinished = new SysParamBool(flag++, 1, cc, "打印室氧含量值到达_R");
m_plcMp.insert(make_pair("CylinderReachCleanTriger", DValue(m_SignalStateWrapper->m_CylinderReachCleanTriger)));
m_plcMp.insert(make_pair("CylinderReachCleanRun", DValue(m_SignalStateWrapper->m_CylinderReachCleanRun)));
m_plcMp.insert(make_pair("CylinderReachCleanFinished", DValue(m_SignalStateWrapper->m_CylinderReachCleanFinished)));
m_plcMp.insert(make_pair("CylinderConnectCleanBoxTriger", DValue(m_SignalStateWrapper->m_CylinderConnectCleanBoxTriger)));
m_plcMp.insert(make_pair("CylinderConnectCleanBoxRun", DValue(m_SignalStateWrapper->m_CylinderConnectCleanBoxRun)));
m_plcMp.insert(make_pair("CylinderConnectCleanBoxFinished", DValue(m_SignalStateWrapper->m_CylinderConnectCleanBoxFinished)));
m_plcMp.insert(make_pair("CylinderDisconnectCleanBoxTriger", DValue(m_SignalStateWrapper->m_CylinderDisconnectCleanBoxTriger)));
m_plcMp.insert(make_pair("CylinderDisconnectCleanBoxRun", DValue(m_SignalStateWrapper->m_CylinderDisconnectCleanBoxRun)));
m_plcMp.insert(make_pair("CylinderDisconnectCleanBoxFinished", DValue(m_SignalStateWrapper->m_CylinderDisconnectCleanBoxFinished)));
m_plcMp.insert(make_pair("CoverTriger", DValue(m_SignalStateWrapper->m_CoverTriger)));
m_plcMp.insert(make_pair("IsCovering", DValue(m_SignalStateWrapper->m_IsCovering)));
m_plcMp.insert(make_pair("IsCoverFinishedCanPrint", DValue(m_SignalStateWrapper->m_IsCoverFinishedCanPrint)));
m_plcMp.insert(make_pair("IsCoverDebug", DValue(m_SignalStateWrapper->m_IsCoverDebug)));
m_plcMp.insert(make_pair("IsFirstCover", DValue(m_SignalStateWrapper->m_IsFirstCover)));
m_plcMp.insert(make_pair("PrintDeoxygenTriger", DValue(m_SignalStateWrapper->m_PrintDeoxygenTriger)));
m_plcMp.insert(make_pair("PrintDeoxygenRun", DValue(m_SignalStateWrapper->m_PrintDeoxygenRun)));
m_plcMp.insert(make_pair("PrintDeoxygenFinished", DValue(m_SignalStateWrapper->m_PrintDeoxygenFinished)));
flag++;
flag++;
flag++;
m_SignalStateWrapper->m_StorgeCarDeoxygenTriger = new SysParamBool(flag++, 1, cc); //触发存粉小车除氧_W
m_SignalStateWrapper->m_StorgeCarDeoxygenRun = new SysParamBool(flag++, 1, cc); //存粉小车除氧中_R
m_SignalStateWrapper->m_StorgeCarDeoxygenFinished = new SysParamBool(flag++, 1, cc); //存粉小车除氧完毕_RW
m_SignalStateWrapper->m_CleanBoxVacuumTriger = new SysParamBool(flag++, 1, cc); //清粉箱启动吸尘器_R
m_SignalStateWrapper->m_PrintVacuumTriger = new SysParamBool(flag++, 1, cc); //打印室启动吸尘器_W
m_SignalStateWrapper->m_StorgeCarDeoxygenTriger = new SysParamBool(flag++, 1, cc, "触发存粉小车除氧_W");
m_SignalStateWrapper->m_StorgeCarDeoxygenRun = new SysParamBool(flag++, 1, cc, "存粉小车除氧中_R");
m_SignalStateWrapper->m_StorgeCarDeoxygenFinished = new SysParamBool(flag++, 1, cc, "存粉小车除氧完毕_RW");
m_SignalStateWrapper->m_CleanBoxVacuumTriger = new SysParamBool(flag++, 1, cc, "清粉箱启动吸尘器_R");
m_SignalStateWrapper->m_PrintVacuumTriger = new SysParamBool(flag++, 1, cc, "打印室启动吸尘器_W");
m_plcMp.insert(make_pair("StorgeCarDeoxygenTriger", DValue(m_SignalStateWrapper->m_StorgeCarDeoxygenTriger)));
m_plcMp.insert(make_pair("StorgeCarDeoxygenRun", DValue(m_SignalStateWrapper->m_StorgeCarDeoxygenRun)));
m_plcMp.insert(make_pair("StorgeCarDeoxygenFinished", DValue(m_SignalStateWrapper->m_StorgeCarDeoxygenFinished)));
m_plcMp.insert(make_pair("CleanBoxVacuumTriger", DValue(m_SignalStateWrapper->m_CleanBoxVacuumTriger)));
m_plcMp.insert(make_pair("PrintVacuumTriger", DValue(m_SignalStateWrapper->m_PrintVacuumTriger)));
flag++;
flag++;
m_SignalStateWrapper->m_DisableRasterJudge = new SysParamBool(flag++, 1, cc); //屏蔽光栅尺判断_W
m_SignalStateWrapper->m_RasterJudgeOK = new SysParamBool(flag++, 1, cc); //光栅尺判断OK_R
m_SignalStateWrapper->m_RasterJudgeNG = new SysParamBool(flag++, 1, cc); //光栅尺判断NG_R
m_SignalStateWrapper->m_DisableRasterJudge = new SysParamBool(flag++, 1, cc, "屏蔽光栅尺判断_W");
m_SignalStateWrapper->m_RasterJudgeOK = new SysParamBool(flag++, 1, cc, "光栅尺判断OK_R");
m_SignalStateWrapper->m_RasterJudgeNG = new SysParamBool(flag++, 1, cc, "光栅尺判断NG_R");
m_SignalStateWrapper->m_CylinderReachPrintEnable = new SysParamBool(flag++, 1, cc); //触发缸体到打印位EN_R
m_SignalStateWrapper->m_CylinderPrintLoadEnable = new SysParamBool(flag++, 1, cc); //触发缸体打印位装载EN_R
m_SignalStateWrapper->m_CylinderPrintUnloadEnable = new SysParamBool(flag++, 1, cc); //触发缸体打印位卸载EN_R
m_SignalStateWrapper->m_CylinderReachPrintEnable = new SysParamBool(flag++, 1, cc, "触发缸体到打印位EN_R");
m_SignalStateWrapper->m_CylinderPrintLoadEnable = new SysParamBool(flag++, 1, cc, "触发缸体打印位装载EN_R");
m_SignalStateWrapper->m_CylinderPrintUnloadEnable = new SysParamBool(flag++, 1, cc, "触发缸体打印位卸载EN_R");
m_plcMp.insert(make_pair("DisableRasterJudge", DValue(m_SignalStateWrapper->m_DisableRasterJudge)));
m_plcMp.insert(make_pair("RasterJudgeOK", DValue(m_SignalStateWrapper->m_RasterJudgeOK)));
m_plcMp.insert(make_pair("RasterJudgeNG", DValue(m_SignalStateWrapper->m_RasterJudgeNG)));
m_plcMp.insert(make_pair("CylinderReachPrintEnable", DValue(m_SignalStateWrapper->m_CylinderReachPrintEnable)));
m_plcMp.insert(make_pair("CylinderPrintLoadEnable", DValue(m_SignalStateWrapper->m_CylinderPrintLoadEnable)));
m_plcMp.insert(make_pair("CylinderPrintUnloadEnable", DValue(m_SignalStateWrapper->m_CylinderPrintUnloadEnable)));
flag++;
flag++;
m_SignalStateWrapper->m_CylinderReachCleanEnable = new SysParamBool(flag++, 1, cc); //触发缸体到清粉位EN_R
m_SignalStateWrapper->m_CylinderConnectCleanBoxEnable = new SysParamBool(flag++, 1, cc); //触发缸体与清粉箱连接EN_R
m_SignalStateWrapper->m_CylinderDisconnectCleanBoxEnable = new SysParamBool(flag++, 1, cc); //触发缸体与清粉箱分离EN_R
m_SignalStateWrapper->m_CoverEnable = new SysParamBool(flag++, 1, cc); //触发铺粉EN_R
m_SignalStateWrapper->m_CylinderReachCleanEnable = new SysParamBool(flag++, 1, cc, "触发缸体到清粉位EN_R");
m_SignalStateWrapper->m_CylinderConnectCleanBoxEnable = new SysParamBool(flag++, 1, cc, "触发缸体与清粉箱连接EN_R");
m_SignalStateWrapper->m_CylinderDisconnectCleanBoxEnable = new SysParamBool(flag++, 1, cc, "触发缸体与清粉箱分离EN_R");
m_SignalStateWrapper->m_CoverEnable = new SysParamBool(flag++, 1, cc, "触发铺粉EN_R");
flag = 96 * 8;
m_SignalStateWrapper->m_PrintStoreCar1ExhaustEnable = new SysParamBool(flag++, 1, cc); //触发打印存粉小车1排粉
m_SignalStateWrapper->m_PrintStoreCar2ExhaustEnable = new SysParamBool(flag++, 1, cc); //触发打印存粉小车2排粉
m_SignalStateWrapper->m_CylinderMoveHandPosEnable = new SysParamBool(flag++, 1, cc); //触发缸体到吊装位En
m_SignalStateWrapper->m_CylinderMoveHandPos = new SysParamBool(flag++, 1, cc); //触发缸体到吊装位
m_SignalStateWrapper->m_CylinderMovingHandPos = new SysParamBool(flag++, 1, cc); //触发缸体到吊装位运行中
m_SignalStateWrapper->m_CylinderMovedHandPos = new SysParamBool(flag++, 1, cc); //触发缸体到吊装位完毕
m_SignalStateWrapper->m_PrintAirRenewalEnable = new SysParamBool(flag++, 1, cc); //打印室换气功能EN
m_SignalStateWrapper->m_PrintAirRenewalTrigger = new SysParamBool(flag++, 1, cc); //触发打印室换气
m_SignalStateWrapper->m_AllowRiseWindSpeed = new SysParamBool(flag++, 1, cc); //允许提风速
m_SignalStateWrapper->m_ManualCoverTest = new SysParamBool(flag++, 1, cc); //手动铺粉测试
m_SignalStateWrapper->m_RollerEdgeSearching = new SysParamBool(flag++, 1, cc); //滚粉轴寻边中
m_SignalStateWrapper->m_RollerEdgeSearchSuccess = new SysParamBool(flag++, 1, cc); //滚粉轴寻边成功
m_SignalStateWrapper->m_RollerEdgeSearchFaild = new SysParamBool(flag++, 1, cc); //滚粉轴寻边失败
m_SignalStateWrapper->m_PrintStoreCar1ExhaustEnable = new SysParamBool(flag++, 1, cc, "触发打印存粉小车1排粉");
m_SignalStateWrapper->m_PrintStoreCar2ExhaustEnable = new SysParamBool(flag++, 1, cc, "触发打印存粉小车2排粉");
m_SignalStateWrapper->m_CylinderMoveHandPosEnable = new SysParamBool(flag++, 1, cc, "触发缸体到吊装位En");
m_SignalStateWrapper->m_CylinderMoveHandPos = new SysParamBool(flag++, 1, cc, "触发缸体到吊装位");
m_SignalStateWrapper->m_CylinderMovingHandPos = new SysParamBool(flag++, 1, cc, "触发缸体到吊装位运行中");
m_SignalStateWrapper->m_CylinderMovedHandPos = new SysParamBool(flag++, 1, cc, "触发缸体到吊装位完毕");
m_SignalStateWrapper->m_PrintAirRenewalEnable = new SysParamBool(flag++, 1, cc, "打印室换气功能EN");
m_SignalStateWrapper->m_PrintAirRenewalTrigger = new SysParamBool(flag++, 1, cc, "触发打印室换气");
m_SignalStateWrapper->m_AllowRiseWindSpeed = new SysParamBool(flag++, 1, cc, "允许提风速");
m_SignalStateWrapper->m_ManualCoverTest = new SysParamBool(flag++, 1, cc, "手动铺粉测试");
m_SignalStateWrapper->m_RollerEdgeSearching = new SysParamBool(flag++, 1, cc, "滚粉轴寻边中");
m_SignalStateWrapper->m_RollerEdgeSearchSuccess = new SysParamBool(flag++, 1, cc, "滚粉轴寻边成功");
m_SignalStateWrapper->m_RollerEdgeSearchFaild = new SysParamBool(flag++, 1, cc, "滚粉轴寻边失败");
m_plcMp.insert(make_pair("CylinderReachCleanEnable", DValue(m_SignalStateWrapper->m_CylinderReachCleanEnable)));
m_plcMp.insert(make_pair("CylinderConnectCleanBoxEnable", DValue(m_SignalStateWrapper->m_CylinderConnectCleanBoxEnable)));
m_plcMp.insert(make_pair("CylinderDisconnectCleanBoxEnable", DValue(m_SignalStateWrapper->m_CylinderDisconnectCleanBoxEnable)));
m_plcMp.insert(make_pair("CoverEnable", DValue(m_SignalStateWrapper->m_CoverEnable)));
m_plcMp.insert(make_pair("PrintStoreCar1ExhaustEnable", DValue(m_SignalStateWrapper->m_PrintStoreCar1ExhaustEnable)));
m_plcMp.insert(make_pair("PrintStoreCar2ExhaustEnable", DValue(m_SignalStateWrapper->m_PrintStoreCar2ExhaustEnable)));
m_plcMp.insert(make_pair("CylinderMoveHandPosEnable", DValue(m_SignalStateWrapper->m_CylinderMoveHandPosEnable)));
m_plcMp.insert(make_pair("CylinderMoveHandPos", DValue(m_SignalStateWrapper->m_CylinderMoveHandPos)));
m_plcMp.insert(make_pair("CylinderMovingHandPos", DValue(m_SignalStateWrapper->m_CylinderMovingHandPos)));
m_plcMp.insert(make_pair("CylinderMovedHandPos", DValue(m_SignalStateWrapper->m_CylinderMovedHandPos)));
m_plcMp.insert(make_pair("PrintAirRenewalEnable", DValue(m_SignalStateWrapper->m_PrintAirRenewalEnable)));
m_plcMp.insert(make_pair("PrintAirRenewalTrigger", DValue(m_SignalStateWrapper->m_PrintAirRenewalTrigger)));
m_plcMp.insert(make_pair("AllowRiseWindSpeed", DValue(m_SignalStateWrapper->m_AllowRiseWindSpeed)));
m_plcMp.insert(make_pair("ManualCoverTest", DValue(m_SignalStateWrapper->m_ManualCoverTest)));
m_plcMp.insert(make_pair("RollerEdgeSearching", DValue(m_SignalStateWrapper->m_RollerEdgeSearching)));
m_plcMp.insert(make_pair("RollerEdgeSearchSuccess", DValue(m_SignalStateWrapper->m_RollerEdgeSearchSuccess)));
m_plcMp.insert(make_pair("RollerEdgeSearchFaild", DValue(m_SignalStateWrapper->m_RollerEdgeSearchFaild)));
flag = 1;
m_SignalStateWrapper->m_UseSupplySearchEdge = new SysParamBool(flag++, 68, cc); //使用滚粉轴寻边
m_SignalStateWrapper->m_SheildCylinderFixSensor = new SysParamBool(flag++, 68, cc); //屏蔽缸体固定定位感应器
m_SignalStateWrapper->m_UseSupplySearchEdge = new SysParamBool(flag++, 68, cc,"使用滚粉轴寻边");
m_SignalStateWrapper->m_SheildCylinderFixSensor = new SysParamBool(flag++, 68, cc, "屏蔽缸体固定定位感应器");
m_plcMp.insert(make_pair("UseSupplySearchEdge", DValue(m_SignalStateWrapper->m_UseSupplySearchEdge)));
m_plcMp.insert(make_pair("SheildCylinderFixSensor", DValue(m_SignalStateWrapper->m_SheildCylinderFixSensor)));
flag++;
flag++;
m_SignalStateWrapper->m_SheildLinearEncoder = new SysParamBool(flag++, 68, cc); //屏蔽光栅尺
m_SignalStateWrapper->m_SheildLinearEncoder = new SysParamBool(flag++, 68, cc,"屏蔽光栅尺");
m_plcMp.insert(make_pair("SheildLinearEncoder", DValue(m_SignalStateWrapper->m_SheildLinearEncoder)));
flag++;
m_SignalStateWrapper->m_UseWellAutoCount = new SysParamBool(flag++, 68, cc); //使用wellauto高速计数
m_SignalStateWrapper->m_SheilServoEmptyOpen = new SysParamBool(flag++, 68, cc); //屏蔽伺服空开
m_SignalStateWrapper->m_UseWellAutoCount = new SysParamBool(flag++, 68, cc,"使用wellauto高速计数");
m_SignalStateWrapper->m_SheilServoEmptyOpen = new SysParamBool(flag++, 68, cc,"屏蔽伺服空开");
m_plcMp.insert(make_pair("UseWellAutoCount", DValue(m_SignalStateWrapper->m_UseWellAutoCount)));
m_plcMp.insert(make_pair("SheilServoEmptyOpen", DValue(m_SignalStateWrapper->m_SheilServoEmptyOpen)));
flag++;
m_SignalStateWrapper->m_SheildHighPressure = new SysParamBool(flag++, 68, cc); //屏蔽高压气
m_SignalStateWrapper->m_UnuseCoverReachSensor = new SysParamBool(flag++, 68, cc); //不使用铺粉轴到位感应器
flag++;
m_SignalStateWrapper->m_UseArmCaptureHome = new SysParamBool(flag++, 68, cc); flag++; //使用铺粉臂归原点
flag++;
m_SignalStateWrapper->m_LinearEncoderOppDirection = new SysParamBool(flag++, 68, cc); //光栅尺反向
m_SignalStateWrapper->m_CoverV2UseCintinueMode = new SysParamBool(flag++, 68, cc); //铺粉V2是否使用连续模式
m_SignalStateWrapper->m_SheildHighPressure = new SysParamBool(flag++, 68, cc,"屏蔽高压气");
m_SignalStateWrapper->m_UnuseCoverReachSensor = new SysParamBool(flag++, 68, cc,"不使用铺粉轴到位感应器");
m_plcMp.insert(make_pair("SheildHighPressure", DValue(m_SignalStateWrapper->m_SheildHighPressure)));
m_plcMp.insert(make_pair("UnuseCoverReachSensor", DValue(m_SignalStateWrapper->m_UnuseCoverReachSensor)));
flag++;
m_SignalStateWrapper->m_UseArmCaptureHome = new SysParamBool(flag++, 68, cc,"使用铺粉臂归原点"); flag++;
m_plcMp.insert(make_pair("UseArmCaptureHome", DValue(m_SignalStateWrapper->m_UseArmCaptureHome)));
flag++;
m_SignalStateWrapper->m_LinearEncoderOppDirection = new SysParamBool(flag++, 68, cc,"光栅尺反向");
m_SignalStateWrapper->m_CoverV2UseCintinueMode = new SysParamBool(flag++, 68, cc,"铺粉V2是否使用连续模式");
m_plcMp.insert(make_pair("LinearEncoderOppDirection", DValue(m_SignalStateWrapper->m_LinearEncoderOppDirection)));
m_plcMp.insert(make_pair("CoverV2UseCintinueMode", DValue(m_SignalStateWrapper->m_CoverV2UseCintinueMode)));
flag = 249 * 8 + 4;
m_SignalStateWrapper->m_IsInPrintCylinderSeparatePos = new SysParamBool(flag++, 4, cc); //打印缸体分离位
m_SignalStateWrapper->m_IsInPrintCylinderSeparatePos = new SysParamBool(flag++, 4, cc,"打印缸体分离位");
m_plcMp.insert(make_pair("IsInPrintCylinderSeparatePos", DValue(m_SignalStateWrapper->m_IsInPrintCylinderSeparatePos)));
flag++;
flag++;
m_SignalStateWrapper->m_IsInPrintPlatformBottomPos = new SysParamBool(flag++, 4, cc); //打印基板底座面
m_SignalStateWrapper->m_IsInPrintPlatformFlatPos = new SysParamBool(flag++, 4, cc); //打印基板平面
m_SignalStateWrapper->m_IsInPrintJackupPos = new SysParamBool(flag++, 4, cc); //打印顶升位
m_SignalStateWrapper->m_IsInCleanJackupPos = new SysParamBool(flag++, 4, cc); //清粉顶升位
m_SignalStateWrapper->m_IsInEleCylinderBottomFixPos = new SysParamBool(flag++, 4, cc); //底座贴合位
m_SignalStateWrapper->m_IsInPrintPlatformBottomPos = new SysParamBool(flag++, 4, cc,"打印基板底座面");
m_SignalStateWrapper->m_IsInPrintPlatformFlatPos = new SysParamBool(flag++, 4, cc,"打印基板平面");
m_SignalStateWrapper->m_IsInPrintJackupPos = new SysParamBool(flag++, 4, cc,"打印顶升位");
m_SignalStateWrapper->m_IsInCleanJackupPos = new SysParamBool(flag++, 4, cc,"清粉顶升位");
m_SignalStateWrapper->m_IsInEleCylinderBottomFixPos = new SysParamBool(flag++, 4, cc,"底座贴合位");
m_plcMp.insert(make_pair("IsInPrintPlatformBottomPos", DValue(m_SignalStateWrapper->m_IsInPrintPlatformBottomPos)));
m_plcMp.insert(make_pair("IsInPrintPlatformFlatPos", DValue(m_SignalStateWrapper->m_IsInPrintPlatformFlatPos)));
m_plcMp.insert(make_pair("IsInPrintJackupPos", DValue(m_SignalStateWrapper->m_IsInPrintJackupPos)));
m_plcMp.insert(make_pair("IsInCleanJackupPos", DValue(m_SignalStateWrapper->m_IsInCleanJackupPos)));
m_plcMp.insert(make_pair("IsInEleCylinderBottomFixPos", DValue(m_SignalStateWrapper->m_IsInEleCylinderBottomFixPos)));
flag++;
m_SignalStateWrapper->m_IsInLoadPrintPos = new SysParamBool(flag++, 4, cc); //移载打印位
m_SignalStateWrapper->m_IsInLoadCleanPos = new SysParamBool(flag++, 4, cc); //移载清粉位
m_SignalStateWrapper->m_IsInLoadPrintPos = new SysParamBool(flag++, 4, cc,"移载打印位");
m_SignalStateWrapper->m_IsInLoadCleanPos = new SysParamBool(flag++, 4, cc,"移载清粉位");
m_plcMp.insert(make_pair("IsInLoadPrintPos", DValue(m_SignalStateWrapper->m_IsInLoadPrintPos)));
m_plcMp.insert(make_pair("IsInLoadCleanPos", DValue(m_SignalStateWrapper->m_IsInLoadCleanPos)));
flag = 251 * 8;
m_SignalStateWrapper->m_IsInDropPowderPos = new SysParamBool(flag++, 4, cc); //铺粉下粉位
m_SignalStateWrapper->m_IsInAcceptPowderPos = new SysParamBool(flag++, 4, cc); //铺粉接粉位
m_SignalStateWrapper->m_IsInDropPowderPos = new SysParamBool(flag++, 4, cc,"铺粉下粉位");
m_SignalStateWrapper->m_IsInAcceptPowderPos = new SysParamBool(flag++, 4, cc,"铺粉接粉位");
m_plcMp.insert(make_pair("IsInDropPowderPos", DValue(m_SignalStateWrapper->m_IsInDropPowderPos)));
m_plcMp.insert(make_pair("IsInAcceptPowderPos", DValue(m_SignalStateWrapper->m_IsInAcceptPowderPos)));
flag = 88 * 8;
m_SignalStateWrapper->m_PrintTorqueUpInsideLimit = new SysParamBool(flag++, 1, cc); //扭力值在上升扭力范围内
m_SignalStateWrapper->m_ArmNotUponBasePlatform = new SysParamBool(flag++, 1, cc); //铺粉轴不在基板范围内
m_SignalStateWrapper->m_PrintMoldPosInsideUpSoftLimit = new SysParamBool(flag++, 1, cc); //轴位置没超过软上限
m_SignalStateWrapper->m_PrintInsideUpLimit = new SysParamBool(flag++, 1, cc); //上限位没触发
m_SignalStateWrapper->m_PrintTorqueDownInsideLimit = new SysParamBool(flag++, 1, cc); //扭力值在下降扭力范围内
m_SignalStateWrapper->m_PrintAxisPosInsideDownSoftLimit = new SysParamBool(flag++, 1, cc); //轴位置没超过软下限
m_SignalStateWrapper->m_PrintInsideDownLimit = new SysParamBool(flag++, 1, cc); //下限位没触发
m_SignalStateWrapper->m_PrintMainServoNoAlarm = new SysParamBool(flag++, 1, cc); //打印主轴伺服无异常
m_SignalStateWrapper->m_PrintMoldInPrintPos = new SysParamBool(flag++, 1, cc); //缸体在打印位
m_SignalStateWrapper->m_PrintMoldInCleanPos = new SysParamBool(flag++, 1, cc); //缸体在清粉位
m_SignalStateWrapper->m_PrintMoldInHandPos = new SysParamBool(flag++, 1, cc); //缸体在吊装位
m_SignalStateWrapper->m_PrintTorqueUpInsideLimit = new SysParamBool(flag++, 1, cc, "扭力值在上升扭力范围内");
m_SignalStateWrapper->m_ArmNotUponBasePlatform = new SysParamBool(flag++, 1, cc, "铺粉轴不在基板范围内");
m_SignalStateWrapper->m_PrintMoldPosInsideUpSoftLimit = new SysParamBool(flag++, 1, cc, "轴位置没超过软上限");
m_SignalStateWrapper->m_PrintInsideUpLimit = new SysParamBool(flag++, 1, cc, "上限位没触发");
m_SignalStateWrapper->m_PrintTorqueDownInsideLimit = new SysParamBool(flag++, 1, cc, "扭力值在下降扭力范围内");
m_SignalStateWrapper->m_PrintAxisPosInsideDownSoftLimit = new SysParamBool(flag++, 1, cc, "轴位置没超过软下限");
m_SignalStateWrapper->m_PrintInsideDownLimit = new SysParamBool(flag++, 1, cc, "下限位没触发");
m_SignalStateWrapper->m_PrintMainServoNoAlarm = new SysParamBool(flag++, 1, cc, "打印主轴伺服无异常");
m_SignalStateWrapper->m_PrintMoldInPrintPos = new SysParamBool(flag++, 1, cc, "缸体在打印位");
m_SignalStateWrapper->m_PrintMoldInCleanPos = new SysParamBool(flag++, 1, cc, "缸体在清粉位");
m_SignalStateWrapper->m_PrintMoldInHandPos = new SysParamBool(flag++, 1, cc, "缸体在吊装位");
m_plcMp.insert(make_pair("PrintTorqueUpInsideLimit", DValue(m_SignalStateWrapper->m_PrintTorqueUpInsideLimit)));
m_plcMp.insert(make_pair("ArmNotUponBasePlatform", DValue(m_SignalStateWrapper->m_ArmNotUponBasePlatform)));
m_plcMp.insert(make_pair("PrintMoldPosInsideUpSoftLimit", DValue(m_SignalStateWrapper->m_PrintMoldPosInsideUpSoftLimit)));
m_plcMp.insert(make_pair("PrintInsideUpLimit", DValue(m_SignalStateWrapper->m_PrintInsideUpLimit)));
m_plcMp.insert(make_pair("PrintTorqueDownInsideLimit", DValue(m_SignalStateWrapper->m_PrintTorqueDownInsideLimit)));
m_plcMp.insert(make_pair("PrintAxisPosInsideDownSoftLimit", DValue(m_SignalStateWrapper->m_PrintAxisPosInsideDownSoftLimit)));
m_plcMp.insert(make_pair("PrintInsideDownLimit", DValue(m_SignalStateWrapper->m_PrintInsideDownLimit)));
m_plcMp.insert(make_pair("PrintMainServoNoAlarm", DValue(m_SignalStateWrapper->m_PrintMainServoNoAlarm)));
m_plcMp.insert(make_pair("PrintMoldInPrintPos", DValue(m_SignalStateWrapper->m_PrintMoldInPrintPos)));
m_plcMp.insert(make_pair("PrintMoldInCleanPos", DValue(m_SignalStateWrapper->m_PrintMoldInCleanPos)));
m_plcMp.insert(make_pair("PrintMoldInHandPos", DValue(m_SignalStateWrapper->m_PrintMoldInHandPos)));
flag = 90 * 8+2;
m_SignalStateWrapper->m_CleanTorqueUpInsideLimit = new SysParamBool(flag++, 1, cc); //扭力值在上升扭力范围内
m_SignalStateWrapper->m_CleanAxisPosUpInSoftLimit = new SysParamBool(flag++, 1, cc); //轴位置没超过软上限
m_SignalStateWrapper->m_CleanTorqueDownInsideLimit = new SysParamBool(flag++, 1, cc); //扭力值在下降扭力范围内
m_SignalStateWrapper->m_CleanAxisPosDownInsideSoftLimit = new SysParamBool(flag++, 1, cc); //轴位置没超过软下限
m_SignalStateWrapper->m_CleanUpInsideLimit = new SysParamBool(flag++, 1, cc); //上限位没触发
m_SignalStateWrapper->m_CleanDownInsideLimit = new SysParamBool(flag++, 1, cc); //下限位没触发
m_SignalStateWrapper->m_EleMainServoNoAlarm = new SysParamBool(flag++, 1, cc); //电缸主轴伺服无异常
m_SignalStateWrapper->m_EleSlaveServoNoAlarm = new SysParamBool(flag++, 1, cc); //电缸从轴伺服无异常
m_SignalStateWrapper->m_CleanTorqueUpInsideLimit = new SysParamBool(flag++, 1, cc, "扭力值在上升扭力范围内");
m_SignalStateWrapper->m_CleanAxisPosUpInSoftLimit = new SysParamBool(flag++, 1, cc, "轴位置没超过软上限");
m_SignalStateWrapper->m_CleanTorqueDownInsideLimit = new SysParamBool(flag++, 1, cc, "扭力值在下降扭力范围内");
m_SignalStateWrapper->m_CleanAxisPosDownInsideSoftLimit = new SysParamBool(flag++, 1, cc, "轴位置没超过软下限");
m_SignalStateWrapper->m_CleanUpInsideLimit = new SysParamBool(flag++, 1, cc, "上限位没触发");
m_SignalStateWrapper->m_CleanDownInsideLimit = new SysParamBool(flag++, 1, cc, "下限位没触发");
m_SignalStateWrapper->m_EleMainServoNoAlarm = new SysParamBool(flag++, 1, cc, "电缸主轴伺服无异常");
m_SignalStateWrapper->m_EleSlaveServoNoAlarm = new SysParamBool(flag++, 1, cc, "电缸从轴伺服无异常");
m_plcMp.insert(make_pair("CleanTorqueUpInsideLimit", DValue(m_SignalStateWrapper->m_CleanTorqueUpInsideLimit)));
m_plcMp.insert(make_pair("CleanAxisPosUpInSoftLimit", DValue(m_SignalStateWrapper->m_CleanAxisPosUpInSoftLimit)));
m_plcMp.insert(make_pair("CleanTorqueDownInsideLimit", DValue(m_SignalStateWrapper->m_CleanTorqueDownInsideLimit)));
m_plcMp.insert(make_pair("CleanAxisPosDownInsideSoftLimit", DValue(m_SignalStateWrapper->m_CleanAxisPosDownInsideSoftLimit)));
m_plcMp.insert(make_pair("CleanUpInsideLimit", DValue(m_SignalStateWrapper->m_CleanUpInsideLimit)));
m_plcMp.insert(make_pair("CleanDownInsideLimit", DValue(m_SignalStateWrapper->m_CleanDownInsideLimit)));
m_plcMp.insert(make_pair("EleMainServoNoAlarm", DValue(m_SignalStateWrapper->m_EleMainServoNoAlarm)));
m_plcMp.insert(make_pair("EleSlaveServoNoAlarm", DValue(m_SignalStateWrapper->m_EleSlaveServoNoAlarm)));
flag = 92 * 8;
m_SignalStateWrapper->m_PrintJackupInSafePos = new SysParamBool(flag++, 1, cc); //打印顶升轴在安全位
m_SignalStateWrapper->m_LoadTorqueInsideLimit = new SysParamBool(flag++, 1, cc); //扭力值在扭力范围内
m_SignalStateWrapper->m_LoadPosInsideLeftSoftLimit = new SysParamBool(flag++, 1, cc); //轴位置没超过软左限
m_SignalStateWrapper->m_LoadPosInsideRightSoftLimit = new SysParamBool(flag++, 1, cc); //轴位置没超过软右限
m_SignalStateWrapper->m_PrintJackupInSafePos = new SysParamBool(flag++, 1, cc,"打印顶升轴在安全位");
m_SignalStateWrapper->m_LoadTorqueInsideLimit = new SysParamBool(flag++, 1, cc,"扭力值在扭力范围内");
m_SignalStateWrapper->m_LoadPosInsideLeftSoftLimit = new SysParamBool(flag++, 1, cc,"轴位置没超过软左限");
m_SignalStateWrapper->m_LoadPosInsideRightSoftLimit = new SysParamBool(flag++, 1, cc,"轴位置没超过软右限");
m_plcMp.insert(make_pair("PrintJackupInSafePos", DValue(m_SignalStateWrapper->m_PrintJackupInSafePos)));
m_plcMp.insert(make_pair("LoadTorqueInsideLimit", DValue(m_SignalStateWrapper->m_LoadTorqueInsideLimit)));
m_plcMp.insert(make_pair("LoadPosInsideLeftSoftLimit", DValue(m_SignalStateWrapper->m_LoadPosInsideLeftSoftLimit)));
m_plcMp.insert(make_pair("LoadPosInsideRightSoftLimit", DValue(m_SignalStateWrapper->m_LoadPosInsideRightSoftLimit)));
flag++;
flag++;
flag++;
flag++;
m_SignalStateWrapper->m_CylinderFixInReleasePos = new SysParamBool(flag++, 1, cc); //缸体固定气缸在松开位
m_SignalStateWrapper->m_CylinderFixInReleasePos = new SysParamBool(flag++, 1, cc,"缸体固定气缸在松开位");
m_plcMp.insert(make_pair("CylinderFixInReleasePos", DValue(m_SignalStateWrapper->m_CylinderFixInReleasePos)));
flag++;
m_SignalStateWrapper->m_LoadLeftNotInsideLimit = new SysParamBool(flag++, 1, cc); //左限位没触发
m_SignalStateWrapper->m_LoadRightNotInsideLimit = new SysParamBool(flag++, 1, cc); //右限位没触发
m_SignalStateWrapper->m_LoadServoNoAlarm = new SysParamBool(flag++, 1, cc); //移载轴伺服无异常
m_SignalStateWrapper->m_EleServoInBottomPos = new SysParamBool(flag++, 1, cc); //电缸在底座位
m_SignalStateWrapper->m_LoadLeftNotInsideLimit = new SysParamBool(flag++, 1, cc,"左限位没触发");
m_SignalStateWrapper->m_LoadRightNotInsideLimit = new SysParamBool(flag++, 1, cc,"右限位没触发");
m_SignalStateWrapper->m_LoadServoNoAlarm = new SysParamBool(flag++, 1, cc,"移载轴伺服无异常");
m_SignalStateWrapper->m_EleServoInBottomPos = new SysParamBool(flag++, 1, cc,"电缸在底座位");
m_plcMp.insert(make_pair("LoadLeftNotInsideLimit", DValue(m_SignalStateWrapper->m_LoadLeftNotInsideLimit)));
m_plcMp.insert(make_pair("LoadRightNotInsideLimit", DValue(m_SignalStateWrapper->m_LoadRightNotInsideLimit)));
m_plcMp.insert(make_pair("LoadServoNoAlarm", DValue(m_SignalStateWrapper->m_LoadServoNoAlarm)));
m_plcMp.insert(make_pair("EleServoInBottomPos", DValue(m_SignalStateWrapper->m_EleServoInBottomPos)));
flag = 94 * 8;
m_SignalStateWrapper->m_PrintUpDownPosBelowPlatform = new SysParamBool(flag++, 1, cc); //打印顶升轴位置低于基板缸平面
m_SignalStateWrapper->m_ArmTorqueInsideLimit = new SysParamBool(flag++, 1, cc); //扭力值在扭力范围内
m_SignalStateWrapper->m_ArmPosInsideSoftFrontLimit = new SysParamBool(flag++, 1, cc); //轴位置没超过软前限
m_SignalStateWrapper->m_ArmPosInsideSoftBackLimit = new SysParamBool(flag++, 1, cc); //轴位置没超过软后限
m_SignalStateWrapper->m_ArmPosInsideFrontLimit = new SysParamBool(flag++, 1, cc); //前限位没触发
m_SignalStateWrapper->m_ArmPosInsideBackLimit = new SysParamBool(flag++, 1, cc); //后限位没触发
m_SignalStateWrapper->m_ArmServoNoAlarm = new SysParamBool(flag++, 1, cc); //铺粉轴伺服无异常
m_SignalStateWrapper->m_PrintUpDownPosBelowPlatform = new SysParamBool(flag++, 1, cc, "打印顶升轴位置低于基板缸平面");
m_SignalStateWrapper->m_ArmTorqueInsideLimit = new SysParamBool(flag++, 1, cc, "扭力值在扭力范围内");
m_SignalStateWrapper->m_ArmPosInsideSoftFrontLimit = new SysParamBool(flag++, 1, cc, "轴位置没超过软前限");
m_SignalStateWrapper->m_ArmPosInsideSoftBackLimit = new SysParamBool(flag++, 1, cc, "轴位置没超过软后限");
m_SignalStateWrapper->m_ArmPosInsideFrontLimit = new SysParamBool(flag++, 1, cc, "前限位没触发");
m_SignalStateWrapper->m_ArmPosInsideBackLimit = new SysParamBool(flag++, 1, cc, "后限位没触发");
m_SignalStateWrapper->m_ArmServoNoAlarm = new SysParamBool(flag++, 1, cc, "铺粉轴伺服无异常");
m_plcMp.insert(make_pair("PrintUpDownPosBelowPlatform", DValue(m_SignalStateWrapper->m_PrintUpDownPosBelowPlatform)));
m_plcMp.insert(make_pair("ArmTorqueInsideLimit", DValue(m_SignalStateWrapper->m_ArmTorqueInsideLimit)));
m_plcMp.insert(make_pair("ArmPosInsideSoftFrontLimit", DValue(m_SignalStateWrapper->m_ArmPosInsideSoftFrontLimit)));
m_plcMp.insert(make_pair("ArmPosInsideSoftBackLimit", DValue(m_SignalStateWrapper->m_ArmPosInsideSoftBackLimit)));
m_plcMp.insert(make_pair("ArmPosInsideFrontLimit", DValue(m_SignalStateWrapper->m_ArmPosInsideFrontLimit)));
m_plcMp.insert(make_pair("ArmPosInsideBackLimit", DValue(m_SignalStateWrapper->m_ArmPosInsideBackLimit)));
m_plcMp.insert(make_pair("ArmServoNoAlarm", DValue(m_SignalStateWrapper->m_ArmServoNoAlarm)));
m_SignalStateWrapper->m_KeepAliveCommand = new KeepAliveCommand(cc);
m_SignalStateWrapper->m_KeepAliveCommand->m_PCKeepAlice = m_SignalStateWrapper->m_PCKeepAlice;

View File

@ -19,10 +19,34 @@
#include <bitset>
#include "../DataManage/ClientInfo.h"
#include "../LanguageManager.h"
using namespace std;
struct DValue {
DValue(SysParamBool* p)
: sysParamB(p), sysParamW(nullptr), sysParamI(nullptr), sysParamF(nullptr){
//printf("SysParamBool init");
}
DValue(SysParamWord* p)
: sysParamB(nullptr), sysParamW(p), sysParamI(nullptr), sysParamF(nullptr) {
//printf("SysParamWord init");
}
DValue(SysParamInt* p)
: sysParamB(nullptr), sysParamW(nullptr), sysParamI(p), sysParamF(nullptr) {
//printf("SysParamInt init");
}
DValue(SysParamFloat* p)
: sysParamB(nullptr), sysParamW(nullptr), sysParamI(nullptr), sysParamF(p) {
//printf("SysParamFloat init");
}
SysParamBool* sysParamB;
SysParamWord* sysParamW;
SysParamInt* sysParamI;
SysParamFloat* sysParamF;
};
class Machine {
typedef void(*IoVersionCheck)(vector<string>&, IOCfgWrapper*, string str, int type);
public:
@ -253,6 +277,9 @@ protected:
vector<string> m_AxisTabs;
list<ClientInfo*> m_clientUser; //连接客户端
std::map<std::string, DValue > m_plcMp;
};

View File

@ -3,10 +3,11 @@
//#include "CoreCommunication.h"
SysParam::SysParam(int addr, int num, PLCReveiver* cc)
:PLCCommand(cc)
SysParam::SysParam(int addr, int num, PLCReveiver* cc,const string& context)
: PLCCommand(cc)
, m_Addr(addr)
, m_DBNumber(num)
, m_context(context)
{
}
@ -23,7 +24,7 @@ SysParam::SysParam(SysParam* sp) :PLCCommand(sp->m_Receiver)
}
SysParamFloat::SysParamFloat(int addr, int num, PLCReveiver* cc) :SysParam(addr, num, cc)
SysParamFloat::SysParamFloat(int addr, int num, PLCReveiver* cc, const string& context) :SysParam(addr, num, cc,context)
{
m_CtrlCommand = new S7Command(S7_COMMAND_WRITE, 1);
TS7DataItem* pItem = m_CtrlCommand->getDataItems();
@ -59,7 +60,7 @@ SysParamFloat::~SysParamFloat()
delete m_CtrlCommand;
}
SysParamWord::SysParamWord(int addr, int num, PLCReveiver* cc) :SysParam(addr, num, cc)
SysParamWord::SysParamWord(int addr, int num, PLCReveiver* cc, const string& context) :SysParam(addr, num, cc,context)
{
m_CtrlCommand = new S7Command(S7_COMMAND_WRITE, 1);
TS7DataItem* pItem = m_CtrlCommand->getDataItems();
@ -93,7 +94,7 @@ SysParamWord::~SysParamWord()
delete m_CtrlCommand;
}
SysParamBool::SysParamBool(int addr, int num, PLCReveiver* cc) : SysParam(addr, num, cc)
SysParamBool::SysParamBool(int addr, int num, PLCReveiver* cc,const string& context) : SysParam(addr, num, cc, context)
{
m_CtrlCommand = new S7Command(S7_COMMAND_WRITE, 1);
TS7DataItem* pItem = m_CtrlCommand->getDataItems();
@ -122,7 +123,7 @@ void SysParamBool::SetValue(bool value)
//m_cc->AddCmd(m_CtrlCommand);
}
SysParamInt::SysParamInt(int addr, int num, PLCReveiver* cc) : SysParam(addr, num, cc)
SysParamInt::SysParamInt(int addr, int num, PLCReveiver* cc, const string& context) : SysParam(addr, num, cc,context)
{
m_CtrlCommand = new S7Command(S7_COMMAND_WRITE, 1);
TS7DataItem* pItem = m_CtrlCommand->getDataItems();

View File

@ -4,6 +4,7 @@
#include "Command/PLCComand.h"
#include <condition_variable>
#include "Command/PLCReceiver.h"
#include <map>
using namespace std;
//class CoreCommunication;
@ -11,7 +12,7 @@ class SysParam :public PLCCommand
{
public:
SysParam(int addr, int num, PLCReveiver* cc);
SysParam(int addr, int num, PLCReveiver* cc, const string& context = "");
virtual ~SysParam();
SysParam(SysParam*);
@ -20,6 +21,7 @@ public:
protected:
int m_Addr;
int m_DBNumber;
string m_context; //名称内容
//S7Command* m_CtrlCommand;
//PLCReveiver* m_cc;
};
@ -27,7 +29,7 @@ protected:
class SysParamFloat :public SysParam
{
public:
SysParamFloat(int addr, int num, PLCReveiver* cc);
SysParamFloat(int addr, int num, PLCReveiver* cc, const string& context = "");
virtual ~SysParamFloat();
SysParamFloat(SysParamFloat* sp) :SysParam(sp) {}
void SetReatimeValue(float value) { m_RealtimeValue = value; }
@ -51,7 +53,7 @@ class SysParamWord :public SysParam
{
public:
SysParamWord(int addr, int num, PLCReveiver* cc);
SysParamWord(int addr, int num, PLCReveiver* cc,const string& context = "");
~SysParamWord();
SysParamWord(SysParamWord* sp) :SysParam(sp) {}
void SetReatimeValue(short value) { m_RealtimeValue = value; }
@ -74,7 +76,7 @@ class SysParamBool :public SysParam
{
public:
SysParamBool(int addr, int num, PLCReveiver* cc);
SysParamBool(int addr, int num, PLCReveiver* cc,const string& context = "");
~SysParamBool();
void SetReatimeValue(bool value) { m_RealtimeValue = value; }
void SetValue(bool value);
@ -87,7 +89,7 @@ class SysParamInt :public SysParam
{
public:
SysParamInt(int addr, int num, PLCReveiver* cc);
SysParamInt(int addr, int num, PLCReveiver* cc, const string& context = "");
~SysParamInt();
void SetReatimeValue(int value) { m_RealtimeValue = value; }
void SetValue(int value);

View File

@ -137,7 +137,7 @@
<SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>DebugFastLink</GenerateDebugInformation>
<GenerateDebugInformation>false</GenerateDebugInformation>
<AdditionalLibraryDirectories>./lib;./lib/absl</AdditionalLibraryDirectories>
<AdditionalDependencies>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)</AdditionalDependencies>
<IgnoreSpecificDefaultLibraries>crypto.lib</IgnoreSpecificDefaultLibraries>

View File

@ -2,13 +2,11 @@
#include "global.h"
#include "SystemInfo.h"
#include "Logger.h"
#include "LanguageManager.h"
#include "Toast.h"
#include "config/ConfigManager.h"
#include <iostream>
#include <map>
UserType g_Admin;
string g_AppPath;
string g_AppDisk;
Logger* g_log;
@ -19,35 +17,46 @@ uint32_t g_ScanSerial;
string g_gno;
SystemInfo* g_SystemInfo;
void usage() {
class HBDSystem {
public:
HBDSystem() {}
~HBDSystem() {
DELP(g_log);
DELP(g_SystemInfo);
DELP(g_Toast);
DELP(g_LngManager);
}
void Init(){
char szFilePath[MAX_PATH + 1] = { 0 };
GetModuleFileName(NULL, szFilePath, MAX_PATH);
(strrchr(szFilePath, '\\'))[1] = 0;
g_AppPath = szFilePath;
g_AppDisk = g_AppPath.substr(0, 2);
}
g_Admin = ADMIN;
g_isDebug = false;
g_log = new Logger();
g_log->m_LogDao->Init();
g_SystemInfo = new SystemInfo();
g_Toast = new Toast();
}
};
int main(int argc, char** argv) {
char szFilePath[MAX_PATH + 1] = { 0 };
GetModuleFileName(NULL, szFilePath, MAX_PATH);
(strrchr(szFilePath, '\\'))[1] = 0;
g_AppPath = szFilePath;
g_AppDisk = g_AppPath.substr(0, 2);
g_Admin = ADMIN;
g_isDebug = false;
g_log = new Logger();
g_log->m_LogDao->Init();
g_SystemInfo = new SystemInfo();
g_Toast = new Toast();
HBDSystem* hbd = new HBDSystem();
hbd->Init();
DataHandle* dataHandle = new DataHandle();
dataHandle->Init();
printf("服务器已启动,请输入命令:");
std::string userInput;
while (true) {
std::getline(std::cin, userInput); // 读取用户输入
//std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');// 清除输入缓冲区中的多余字符
if (userInput == "r" || userInput == "run") {
printf("service is running...\n");
@ -55,7 +64,7 @@ int main(int argc, char** argv) {
}
else if (userInput == "exit" || userInput == "e") {
dataHandle->Stop();
delete dataHandle;
DELP(dataHandle);
printf("service is exited...\n");
break;
}
@ -64,9 +73,7 @@ int main(int argc, char** argv) {
}
}
delete g_log;
delete g_SystemInfo;
delete g_Toast;
delete g_LngManager;
DELP(dataHandle);
DELP(hbd);
return 0;
}

Binary file not shown.

View File

@ -1,4 +1,4 @@
#pragma once
#pragma once
union FLOATDATA
{

View File

@ -11,3 +11,6 @@
数据库放到服务端
切片文件放到服务器上
服务端保存一份数据,