|  |  |  | 
|---|
|  |  |  | package com.zy.core.model.protocol; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.zy.asrs.entity.BasCrnErrorLog; | 
|---|
|  |  |  | import com.zy.asrs.entity.BasCrnp; | 
|---|
|  |  |  | import com.zy.core.enums.CrnForkPosType; | 
|---|
|  |  |  | import com.zy.core.enums.CrnLiftPosType; | 
|---|
|  |  |  | import com.zy.core.enums.CrnModeType; | 
|---|
|  |  |  | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Data | 
|---|
|  |  |  | public class CrnProtocol { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private Integer crnNo; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 1 = 手动模式 | 
|---|
|  |  |  | 
|---|
|  |  |  | public Short walkPos; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 堆垛机任务完成 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public Short taskFinish; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 载货台有物 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public Short loaded; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 异常码(数值显示) | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | private Short alarm1; | 
|---|
|  |  |  | private Short temp1; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private CrnTemp1 crnTemp1; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private Short temp2; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private Short temp3; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private Short temp4; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 异常1 | 
|---|
|  |  |  | 
|---|
|  |  |  | private CrnError2 crnError2; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 保留 | 
|---|
|  |  |  | * 异常3 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | private Short temp1; | 
|---|
|  |  |  | private boolean[] error3; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private CrnError3 crnError3; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 异常4 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | private boolean[] error4; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private CrnError4 crnError4; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 异常5 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | private boolean[] error5; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private CrnError5 crnError5; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 异常6 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | private boolean[] error6; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private CrnError6 crnError6; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * X行走线速度m/min | 
|---|
|  |  |  | 
|---|
|  |  |  | * 堆垛机累计升降时长h | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public Float yDuration; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //堆垛机配置信号-------------------------------------------------------------- | 
|---|
|  |  |  | // 故障读取锁定标记 | 
|---|
|  |  |  | private boolean errorMk = false; | 
|---|
|  |  |  | //写入标记 | 
|---|
|  |  |  | private boolean writeMk = true; | 
|---|
|  |  |  | private Boolean ibDriveFault = false;       // 行走变频器故障 | 
|---|
|  |  |  | private Boolean ibSupplyFault = false;      // 提供变频器故障 | 
|---|
|  |  |  | private Boolean ibForkDriveFault = false;   // 货叉变频器故障 | 
|---|
|  |  |  | private Boolean ibDriveCircuitFault = false; // 行走断路器故障 | 
|---|
|  |  |  | private Boolean ibLiftCircuitFault = false; // 提升断路器故障 | 
|---|
|  |  |  | private Boolean ibForkCircuitFault = false; // 货叉断路器故障 | 
|---|
|  |  |  | private Boolean ibForwardLimit = false;     // 前进限位 | 
|---|
|  |  |  | private Boolean ibReverseLimit = false;     // 后退限位 | 
|---|
|  |  |  | private Boolean ibDriveStart = false;       // 行走原点 | 
|---|
|  |  |  | private Boolean ibForwardBrakeSpeed = false; // 前进强制低速 | 
|---|
|  |  |  | private Boolean ibReverseBrakeSpeed = false; // 后退强制低速 | 
|---|
|  |  |  | private Boolean ibUpLimit = false;          // 上升限位 | 
|---|
|  |  |  | private Boolean ibDownLimit = false;        // 下限限位 | 
|---|
|  |  |  | private Boolean ibUpOrigin = false;         // 提升原点 | 
|---|
|  |  |  | private Boolean ibUpBrakeSpeed = false;     // 上升强制低速 | 
|---|
|  |  |  | private Boolean ibDownBrakeSpeed = false;   // 下降强制低速 | 
|---|
|  |  |  | private Boolean ibPlatformSignal = false;   // 载货台探货 | 
|---|
|  |  |  | private Boolean ibForkMidSignal = false;    // 货叉中位信号 | 
|---|
|  |  |  | private Boolean ibForkLeftLimit = false;    // 货叉左极限 | 
|---|
|  |  |  | private Boolean ibForkRightLimit = false;   // 货叉右极限 | 
|---|
|  |  |  | private Boolean ibFrontOverLimit = false;   // 前超限 | 
|---|
|  |  |  | private Boolean ibRearOverLimit = false;    // 后超限 | 
|---|
|  |  |  | private Boolean ibLeftOverLimit = false;    // 左超限 | 
|---|
|  |  |  | private Boolean ibRightOverLimit = false;   // 右超限 | 
|---|
|  |  |  | private Boolean ibHighOverLimit1 = false;   // 高超限1 | 
|---|
|  |  |  | private Boolean ibHighOverLimit2 = false;   // 高超限2 | 
|---|
|  |  |  | private Boolean ibHighOverLimit3 = false;   // 高超限3 | 
|---|
|  |  |  | private Boolean ibOneExtendLeftLoad1 = false; // 一伸左侧探货1 | 
|---|
|  |  |  | private Boolean ibOneExtendLeftLoad2 = false; // 一伸左侧探货2 | 
|---|
|  |  |  | private Boolean ibOneExtendRightLoad1 = false; // 一伸右侧探货1 | 
|---|
|  |  |  | private Boolean ibOneExtendRightLoad2 = false; // 一伸右侧探货2 | 
|---|
|  |  |  | private Boolean ibTwoExtendLeftLoad1 = false; // 二伸左侧探货1 | 
|---|
|  |  |  | private Boolean ibTwoExtendLeftLoad2 = false; // 二伸左侧探货2 | 
|---|
|  |  |  | private Boolean ibTwoExtendRightLoad1 = false; // 二伸右侧探货1 | 
|---|
|  |  |  | private Boolean ibTwoExtendRightLoad2 = false; // 二伸右侧探货2 | 
|---|
|  |  |  | private Boolean ibSpeedSignal1 = false;      // 超速信号1 | 
|---|
|  |  |  | private Boolean ibSpeedSignal2 = false;      // 超速信号2 | 
|---|
|  |  |  | private Boolean ibOverweightSignal1 = false; // 超重信号1 | 
|---|
|  |  |  | private Boolean ibOverweightSignal2 = false; // 超重信号2 | 
|---|
|  |  |  | private Boolean ibRopeReleaseSignal1 = false; // 松绳信号1 | 
|---|
|  |  |  | private Boolean ibRopeReleaseSignal2 = false; // 松绳信号2 | 
|---|
|  |  |  | private Boolean ibSafetyClamp = false;       // 安全钳 | 
|---|
|  |  |  | private Boolean ibTightener = false;         // 张紧器 | 
|---|
|  |  |  | private Boolean ibSpeedLimiter = false;      // 限速器 | 
|---|
|  |  |  | private Boolean ibSafetyDoorOpen = false;    // 安全门打开 | 
|---|
|  |  |  | //------------------------------------------------------------------- | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public BasCrnErrorLog toSqlModelError() { | 
|---|
|  |  |  | BasCrnErrorLog basCrnErrorLog = new BasCrnErrorLog(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 错误字段转换 | 
|---|
|  |  |  | basCrnErrorLog.setCrnNo(crnNo); | 
|---|
|  |  |  | basCrnErrorLog.setIbDriveFault(ibDriveFault ? "Y" : "N");       // 行走变频器故障 | 
|---|
|  |  |  | basCrnErrorLog.setIbSupplyFault(ibSupplyFault ? "Y" : "N");      // 提供变频器故障 | 
|---|
|  |  |  | basCrnErrorLog.setIbForkDriveFault(ibForkDriveFault ? "Y" : "N");   // 货叉变频器故障 | 
|---|
|  |  |  | basCrnErrorLog.setIbDriveCircuitFault(ibDriveCircuitFault ? "Y" : "N"); // 行走断路器故障 | 
|---|
|  |  |  | basCrnErrorLog.setIbLiftCircuitFault(ibLiftCircuitFault ? "Y" : "N"); // 提升断路器故障 | 
|---|
|  |  |  | basCrnErrorLog.setIbForkCircuitFault(ibForkCircuitFault ? "Y" : "N"); // 货叉断路器故障 | 
|---|
|  |  |  | basCrnErrorLog.setIbForwardLimit(ibForwardLimit ? "Y" : "N");     // 前进限位 | 
|---|
|  |  |  | basCrnErrorLog.setIbReverseLimit(ibReverseLimit ? "Y" : "N");     // 后退限位 | 
|---|
|  |  |  | basCrnErrorLog.setIbDriveStart(ibDriveStart ? "Y" : "N");       // 行走原点 | 
|---|
|  |  |  | basCrnErrorLog.setIbForwardBrakeSpeed(ibForwardBrakeSpeed ? "Y" : "N"); // 前进强制低速 | 
|---|
|  |  |  | basCrnErrorLog.setIbReverseBrakeSpeed(ibReverseBrakeSpeed ? "Y" : "N"); // 后退强制低速 | 
|---|
|  |  |  | basCrnErrorLog.setIbUpLimit(ibUpLimit ? "Y" : "N");          // 上升限位 | 
|---|
|  |  |  | basCrnErrorLog.setIbDownLimit(ibDownLimit ? "Y" : "N");        // 下限限位 | 
|---|
|  |  |  | basCrnErrorLog.setIbUpOrigin(ibUpOrigin ? "Y" : "N");         // 提升原点 | 
|---|
|  |  |  | basCrnErrorLog.setIbUpBrakeSpeed(ibUpBrakeSpeed ? "Y" : "N");     // 上升强制低速 | 
|---|
|  |  |  | basCrnErrorLog.setIbDownBrakeSpeed(ibDownBrakeSpeed ? "Y" : "N");   // 下降强制低速 | 
|---|
|  |  |  | basCrnErrorLog.setIbPlatformSignal(ibPlatformSignal ? "Y" : "N");   // 载货台探货 | 
|---|
|  |  |  | basCrnErrorLog.setIbForkMidSignal(ibForkMidSignal ? "Y" : "N");    // 货叉中位信号 | 
|---|
|  |  |  | basCrnErrorLog.setIbForkLeftLimit(ibForkLeftLimit ? "Y" : "N");    // 货叉左极限 | 
|---|
|  |  |  | basCrnErrorLog.setIbForkRightLimit(ibForkRightLimit ? "Y" : "N");   // 货叉右极限 | 
|---|
|  |  |  | basCrnErrorLog.setIbFrontOverLimit(ibFrontOverLimit ? "Y" : "N");   // 前超限 | 
|---|
|  |  |  | basCrnErrorLog.setIbRearOverLimit(ibRearOverLimit ? "Y" : "N");    // 后超限 | 
|---|
|  |  |  | basCrnErrorLog.setIbLeftOverLimit(ibLeftOverLimit ? "Y" : "N");    // 左超限 | 
|---|
|  |  |  | basCrnErrorLog.setIbRightOverLimit(ibRightOverLimit ? "Y" : "N");   // 右超限 | 
|---|
|  |  |  | basCrnErrorLog.setIbHighOverLimit1(ibHighOverLimit1 ? "Y" : "N");   // 高超限1 | 
|---|
|  |  |  | basCrnErrorLog.setIbHighOverLimit2(ibHighOverLimit2 ? "Y" : "N");   // 高超限2 | 
|---|
|  |  |  | basCrnErrorLog.setIbHighOverLimit3(ibHighOverLimit3 ? "Y" : "N");   // 高超限3 | 
|---|
|  |  |  | basCrnErrorLog.setIbOneExtendLeftLoad1(ibOneExtendLeftLoad1 ? "Y" : "N"); // 一伸左侧探货1 | 
|---|
|  |  |  | basCrnErrorLog.setIbOneExtendLeftLoad2(ibOneExtendLeftLoad2 ? "Y" : "N"); // 一伸左侧探货2 | 
|---|
|  |  |  | basCrnErrorLog.setIbOneExtendRightLoad1(ibOneExtendRightLoad1 ? "Y" : "N"); // 一伸右侧探货1 | 
|---|
|  |  |  | basCrnErrorLog.setIbOneExtendRightLoad2(ibOneExtendRightLoad2 ? "Y" : "N"); // 一伸右侧探货2 | 
|---|
|  |  |  | basCrnErrorLog.setIbTwoExtendLeftLoad1(ibTwoExtendLeftLoad1 ? "Y" : "N"); // 二伸左侧探货1 | 
|---|
|  |  |  | basCrnErrorLog.setIbTwoExtendLeftLoad2(ibTwoExtendLeftLoad2 ? "Y" : "N"); // 二伸左侧探货2 | 
|---|
|  |  |  | basCrnErrorLog.setIbTwoExtendRightLoad1(ibTwoExtendRightLoad1 ? "Y" : "N"); // 二伸右侧探货1 | 
|---|
|  |  |  | basCrnErrorLog.setIbTwoExtendRightLoad2(ibTwoExtendRightLoad2 ? "Y" : "N"); // 二伸右侧探货2 | 
|---|
|  |  |  | basCrnErrorLog.setIbSpeedSignal1(ibSpeedSignal1 ? "Y" : "N");      // 超速信号1 | 
|---|
|  |  |  | basCrnErrorLog.setIbSpeedSignal2(ibSpeedSignal2 ? "Y" : "N");      // 超速信号2 | 
|---|
|  |  |  | basCrnErrorLog.setIbOverweightSignal1(ibOverweightSignal1 ? "Y" : "N"); // 超重信号1 | 
|---|
|  |  |  | basCrnErrorLog.setIbOverweightSignal2(ibOverweightSignal2 ? "Y" : "N"); // 超重信号2 | 
|---|
|  |  |  | basCrnErrorLog.setIbRopeReleaseSignal1(ibRopeReleaseSignal1 ? "Y" : "N"); // 松绳信号1 | 
|---|
|  |  |  | basCrnErrorLog.setIbRopeReleaseSignal2(ibRopeReleaseSignal2 ? "Y" : "N"); // 松绳信号2 | 
|---|
|  |  |  | basCrnErrorLog.setIbSafetyClamp(ibSafetyClamp ? "Y" : "N");       // 安全钳 | 
|---|
|  |  |  | basCrnErrorLog.setIbTightener(ibTightener ? "Y" : "N");         // 张紧器 | 
|---|
|  |  |  | basCrnErrorLog.setIbSpeedLimiter(ibSpeedLimiter ? "Y" : "N");      // 限速器 | 
|---|
|  |  |  | basCrnErrorLog.setIbSafetyDoorOpen(ibSafetyDoorOpen ? "Y" : "N");    // 安全门打开 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return basCrnErrorLog; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void setMode(Short mode) { | 
|---|
|  |  |  | this.mode = mode; | 
|---|
|  |  |  | 
|---|
|  |  |  | this.status = CrnStatusType.get(type).id.shortValue(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void setError1(boolean[] error1){ | 
|---|
|  |  |  | this.error1 = error1; | 
|---|
|  |  |  | this.crnError1 = new CrnError1(); | 
|---|
|  |  |  | this.crnError1.stop = error1[0]; | 
|---|
|  |  |  | this.crnError1.xCoverErr = error1[1]; | 
|---|
|  |  |  | this.crnError1.yCoverErr = error1[2]; | 
|---|
|  |  |  | this.crnError1.zCoverErr = error1[3]; | 
|---|
|  |  |  | this.crnError1.rangeErr = error1[4]; | 
|---|
|  |  |  | this.crnError1.barcodeErr = error1[5]; | 
|---|
|  |  |  | this.crnError1.xFrontLimitErr = error1[6]; | 
|---|
|  |  |  | this.crnError1.xBackLimitErr = error1[7]; | 
|---|
|  |  |  | this.crnError1.yUpLimitErr = error1[8]; | 
|---|
|  |  |  | this.crnError1.yDownLimitErr = error1[9]; | 
|---|
|  |  |  | this.crnError1.zLeftLimitErr = error1[10]; | 
|---|
|  |  |  | this.crnError1.zRightLimitErr = error1[11]; | 
|---|
|  |  |  | this.crnError1.xLocationUpErr = error1[12]; | 
|---|
|  |  |  | this.crnError1.xLocationDownErr = error1[13]; | 
|---|
|  |  |  | this.crnError1.yLocationUpErr = error1[14]; | 
|---|
|  |  |  | this.crnError1.yLocationDownErr = error1[15]; | 
|---|
|  |  |  | public Short getTemp1() { | 
|---|
|  |  |  | return temp1; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void setError2(boolean[] error2){ | 
|---|
|  |  |  | this.error2 = error2; | 
|---|
|  |  |  | this.crnError2 = new CrnError2(); | 
|---|
|  |  |  | this.crnError2.zLocationUpErr = error2[0]; | 
|---|
|  |  |  | this.crnError2.zLocationDownErr = error2[1]; | 
|---|
|  |  |  | this.crnError2.wcsCommandErr = error2[2]; | 
|---|
|  |  |  | this.crnError2.leftWidthLimitErr = error2[3]; | 
|---|
|  |  |  | this.crnError2.rightWidthLimitErr = error2[4]; | 
|---|
|  |  |  | this.crnError2.leftLengthLimitErr = error2[5]; | 
|---|
|  |  |  | this.crnError2.rightLengthLimitErr = error2[6]; | 
|---|
|  |  |  | this.crnError2.highLimitErr = error2[7]; | 
|---|
|  |  |  | this.crnError2.leftTakeNoneErr = error2[8]; | 
|---|
|  |  |  | this.crnError2.rightTakeNoneErr = error2[9]; | 
|---|
|  |  |  | this.crnError2.leftPutLoadErr = error2[10]; | 
|---|
|  |  |  | this.crnError2.rightPutLoadErr = error2[11]; | 
|---|
|  |  |  | this.crnError2.startErr = error2[12]; | 
|---|
|  |  |  | this.crnError2.looseRopeErr = error2[13]; | 
|---|
|  |  |  | this.crnError2.safeDoorSwitchErr = error2[14]; | 
|---|
|  |  |  | this.crnError2.none = error2[15]; | 
|---|
|  |  |  | public void setTemp1(Short temp1) { | 
|---|
|  |  |  | this.temp1 = temp1; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | private String lastIo = "I"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public BasCrnp toSqlModel(BasCrnp basCrnp){ | 
|---|
|  |  |  | if (alarm!=null) { | 
|---|
|  |  |  | basCrnp.setCrnErr(alarm.longValue()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | basCrnp.setWrkNo(taskNo.intValue()); | 
|---|
|  |  |  | return basCrnp; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void setxSpeed(float xSpeed) { | 
|---|
|  |  |  | this.xSpeed = xSpeed; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void setySpeed(float ySpeed) { | 
|---|
|  |  |  | this.ySpeed = ySpeed; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void setzSpeed(float zSpeed) { | 
|---|
|  |  |  | this.zSpeed = zSpeed; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void setxDistance(float xDistance) { | 
|---|
|  |  |  | this.xDistance = xDistance; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void setyDistance(float yDistance) { | 
|---|
|  |  |  | this.yDistance = yDistance; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void setxDuration(float xDuration) { | 
|---|
|  |  |  | this.xDuration = xDuration; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void setyDuration(float yDuration) { | 
|---|
|  |  |  | this.yDuration = yDuration; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|