src/main/java/com/zy/asrs/controller/SteController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/domain/vo/SteSensorDataVo.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/core/model/protocol/SteProtocol.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/core/thread/SteThread.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/SteController.java
@@ -201,6 +201,63 @@ if (steProtocol == null) { return R.error("设备不在线"); } // 穿梭车异常 ----------- vo.setLiftErr(steProtocol.isLiftErr()); vo.setInFetchErr(steProtocol.isInFetchErr()); vo.setOutFetchErr(steProtocol.isOutFetchErr()); vo.setAntiErr(steProtocol.isAntiErr()); vo.setLiftSwitchErr(steProtocol.isLiftSwitchErr()); vo.setTrackErr(steProtocol.isTrackErr()); vo.setTimeoutErr(steProtocol.isTimeoutErr()); vo.setConnectErr(steProtocol.isConnectErr()); vo.setEmergencyErr(steProtocol.isEmergencyErr()); vo.setTaskTypeErr(steProtocol.isTaskTypeErr()); vo.setTaskNoErr(steProtocol.isTaskNoErr()); vo.setNewTaskErr(steProtocol.isNewTaskErr()); vo.setErrTaskErr(steProtocol.isErrTaskErr()); vo.setStopErr(steProtocol.isStopErr()); vo.setOfflineTaskErr(steProtocol.isOfflineTaskErr()); vo.setStartTaskErr(steProtocol.isStartTaskErr()); vo.setVoltageTaskErr(steProtocol.isVoltageTaskErr()); vo.setDevpErr(steProtocol.isDevpErr()); // 穿梭车提示信息 ---------------------- vo.setOnline(steProtocol.isOnline()); vo.setNotOnTrack(steProtocol.isNotOnTrack()); vo.setLowVoltage(steProtocol.isLowVoltage()); vo.setElectricityLoss(steProtocol.isElectricityLoss()); vo.setForcedTravel(steProtocol.isForcedTravel()); vo.setDemoMode(steProtocol.isDemoMode()); vo.setBrushConnect(steProtocol.isBrushConnect()); vo.setTaskManualForbid(steProtocol.isTaskManualForbid()); vo.setOnlineManualForbid(steProtocol.isOnlineManualForbid()); vo.setDevpEmergency(steProtocol.isDevpEmergency()); vo.setTaskInterrupt(steProtocol.isTaskInterrupt()); vo.setTaskClear(steProtocol.isTaskClear()); vo.setTaskConfirmTimeout(steProtocol.isTaskConfirmTimeout()); vo.setTaskWithCharge(steProtocol.isTaskWithCharge()); // 任务信息 ---------------- vo.setPakInTask(steProtocol.isPakInTask()); vo.setPakOutTask(steProtocol.isPakOutTask()); vo.setPakMoveTask(steProtocol.isPakMoveTask()); vo.setGoHpTask(steProtocol.isGoHpTask()); vo.setGoOHpTask(steProtocol.isGoOHpTask()); vo.setGoHpAvoid(steProtocol.isGoHpAvoid()); vo.setGoOHpAvoid(steProtocol.isGoOHpAvoid()); vo.setPakInEmpty(steProtocol.isPakInEmpty()); vo.setPakInFinish(steProtocol.isPakInFinish()); vo.setPakOutEmpty(steProtocol.isPakOutEmpty()); vo.setPakOutFinish(steProtocol.isPakOutFinish()); vo.setGoHpAvoidFinish(steProtocol.isGoHpAvoidFinish()); vo.setGoOHpAvoidFinish(steProtocol.isGoOHpAvoidFinish()); vo.setGoHpAvoidErr(steProtocol.isGoHpAvoidErr()); vo.setGoOHpAvoidErr(steProtocol.isGoOHpAvoidErr()); // 状态信息 ------------- vo.setAutoMode(steProtocol.isAutoMode()); vo.setVoltageLow(steProtocol.isVoltageLow()); break; } } src/main/java/com/zy/asrs/domain/vo/SteSensorDataVo.java
@@ -8,8 +8,259 @@ @Data public class SteSensorDataVo { // 穿梭车号 /** * 穿梭车号 */ private Integer steNo; // 穿梭车异常 ------------------------------------------------------------------------ /** * 0.升降超时报警 */ private boolean liftErr; /** * 2.入库取空报警 */ private boolean inFetchErr; /** * 3.出库取空报警 */ private boolean outFetchErr; /** * 4.防撞保护 */ private boolean antiErr; /** * 5.升降接近开关故障 */ private boolean liftSwitchErr; /** * 6.轨道检测报警 */ private boolean trackErr; /** * 7.设备运行超时报警 */ private boolean timeoutErr; /** * 8.通信错误报警 */ private boolean connectErr; /** * 9.设备急停 */ private boolean emergencyErr; /** * 10.任务类型缺失 */ private boolean taskTypeErr; /** * 11.任务号缺失 */ private boolean taskNoErr; /** * 12.运行中有新任务 */ private boolean newTaskErr; /** * 13.故障中有任务 */ private boolean errTaskErr; /** * 14.运行中停止 */ private boolean stopErr; /** * 15.脱机模式下有任务 */ private boolean offlineTaskErr; /** * 16.条件未满足启动任务 */ private boolean startTaskErr; /** * 17.低电压时有任务 */ private boolean voltageTaskErr; /** * 63.设备故障标志位 */ private boolean devpErr; // 穿梭车异常 ------------------------------------------------------------------------ // 穿梭车提示信息 ------------------------------------------------------------------------ /** * 64.联机状态 */ private boolean online; /** * 65.不在轨道上 */ private boolean notOnTrack; /** * 66.低电量提醒 */ private boolean lowVoltage; /** * 67.亏电中 */ private boolean electricityLoss; /** * 68.强制行走启动 */ private boolean forcedTravel; /** * 69.演示模式开启 */ private boolean demoMode; /** * 70.充电刷已接通 */ private boolean brushConnect; /** * 71.任务中禁止手动 */ private boolean taskManualForbid; /** * 72.联机中禁止手动 */ private boolean onlineManualForbid; /** * 73.设备急停中 */ private boolean devpEmergency; /** * 74.任务中断中 */ private boolean taskInterrupt; /** * 75.任务已清除 */ private boolean taskClear; /** * 76.任务确认已超时 */ private boolean taskConfirmTimeout; /** * 77.充电中有任务 */ private boolean taskWithCharge; // 任务信息 --------------------------------------------------------- /** * 96.入库任务中 */ private boolean pakInTask; /** * 97. 出库任务中 */ private boolean pakOutTask; /** * 98. 移库任务中 */ private boolean pakMoveTask; /** * 99. 回原点任务中 */ private boolean goHpTask; /** * 100. 去反原点任务中 */ private boolean goOHpTask; /** * 101. 去原点避让位 */ private boolean goHpAvoid; /** * 102. 去反原点避让位 */ private boolean goOHpAvoid; /** * 104. 入库取空结束 */ private boolean pakInEmpty; /** * 105. 入库正常结束 */ private boolean pakInFinish; /** * 106. 出库取空结束 */ private boolean pakOutEmpty; /** * 107. 出库正常结束 */ private boolean pakOutFinish; /** * 108. 去原点避让完成 */ private boolean goHpAvoidFinish; /** * 109. 去反原点避让完成 */ private boolean goOHpAvoidFinish; /** * 110. 去原点避让完成 */ private boolean goHpAvoidErr; /** * 111. 去反原点避让完成 */ private boolean goOHpAvoidErr; // 状态信息 --------------------------------------------------------- /** * 112. 联机模式 */ private boolean autoMode; /** * 113. 电压过低 */ private boolean voltageLow; } src/main/java/com/zy/core/model/protocol/SteProtocol.java
@@ -206,136 +206,253 @@ // 穿梭车异常 ------------------------------------------------------------------------ /** * 1.升降超时报警 * 0.升降超时报警 */ private boolean liftErr; /** * 3.入库取空报警 * 2.入库取空报警 */ private boolean inFetchErr; /** * 4.出库取空报警 * 3.出库取空报警 */ private boolean outFetchErr; /** * 5.防撞保护 * 4.防撞保护 */ private boolean antiErr; /** * 6.升降接近开关故障 * 5.升降接近开关故障 */ private boolean liftSwitchErr; /** * 7.轨道检测报警 * 6.轨道检测报警 */ private boolean trackErr; /** * 8.设备运行超时报警 * 7.设备运行超时报警 */ private boolean timeoutErr; /** * 9.通信错误报警 * 8.通信错误报警 */ private boolean connectErr; /** * 10.设备急停 * 9.设备急停 */ private boolean emergencyErr; /** * 11.任务类型缺失 * 10.任务类型缺失 */ private boolean taskTypeErr; /** * 12.任务号缺失 * 11.任务号缺失 */ private boolean taskNoErr; /** * 13.运行中有新任务 * 12.运行中有新任务 */ private boolean newTaskErr; /** * 14.故障中有任务 * 13.故障中有任务 */ private boolean errTaskErr; /** * 15.运行中停止 * 14.运行中停止 */ private boolean stopErr; /** * 16.脱机模式下有任务 * 15.脱机模式下有任务 */ private boolean offlineTaskErr; /** * 17.条件未满足启动任务 * 16.条件未满足启动任务 */ private boolean startTaskErr; /** * 18.低电压时有任务 * 17.低电压时有任务 */ private boolean voltageTaskErr; /** * 64.设备故障标志位 * 63.设备故障标志位 */ private boolean devpErr; // 穿梭车异常 ------------------------------------------------------------------------ // 穿梭车提示信息 ------------------------------------------------------------------------ /** * 65.联机状态 * 64.联机状态 */ private boolean online; /** * 66.不在轨道上 * 65.不在轨道上 */ private boolean notOnTrack; /** * 67.低电量提醒 * 66.低电量提醒 */ private boolean lowVoltage; /** * 68.亏电中 * 67.亏电中 */ private boolean electricityLoss; /** * 69.强制行走启动 * 68.强制行走启动 */ private boolean forcedTravel; /** * 70.演示模式开启 * 69.演示模式开启 */ private boolean demoMode; /** * 71.充电刷已接通 * 70.充电刷已接通 */ private boolean brushConnect; // /** // * 71.充电刷已接通 // */ // private boolean brushConnect; /** * 71.任务中禁止手动 */ private boolean taskManualForbid; /** * 72.联机中禁止手动 */ private boolean onlineManualForbid; /** * 73.设备急停中 */ private boolean devpEmergency; /** * 74.任务中断中 */ private boolean taskInterrupt; /** * 75.任务已清除 */ private boolean taskClear; /** * 76.任务确认已超时 */ private boolean taskConfirmTimeout; /** * 77.充电中有任务 */ private boolean taskWithCharge; // 任务信息 --------------------------------------------------------- /** * 96.入库任务中 */ private boolean pakInTask; /** * 97. 出库任务中 */ private boolean pakOutTask; /** * 98. 移库任务中 */ private boolean pakMoveTask; /** * 99. 回原点任务中 */ private boolean goHpTask; /** * 100. 去反原点任务中 */ private boolean goOHpTask; /** * 101. 去原点避让位 */ private boolean goHpAvoid; /** * 102. 去反原点避让位 */ private boolean goOHpAvoid; /** * 104. 入库取空结束 */ private boolean pakInEmpty; /** * 105. 入库正常结束 */ private boolean pakInFinish; /** * 106. 出库取空结束 */ private boolean pakOutEmpty; /** * 107. 出库正常结束 */ private boolean pakOutFinish; /** * 108. 去原点避让完成 */ private boolean goHpAvoidFinish; /** * 109. 去反原点避让完成 */ private boolean goOHpAvoidFinish; /** * 110. 去原点避让完成 */ private boolean goHpAvoidErr; /** * 111. 去反原点避让完成 */ private boolean goOHpAvoidErr; // 状态信息 --------------------------------------------------------- /** * 112. 联机模式 */ private boolean autoMode; /** * 113. 电压过低 */ private boolean voltageLow; public void setStatus(Short status){ src/main/java/com/zy/core/thread/SteThread.java
@@ -179,6 +179,65 @@ OutputQueue.STE.offer(MessageFormat.format("【{0}】[id:{1}] <<<<< 实时数据更新成功",DateUtils.convert(new Date()), slave.getId())); //读取穿梭车设备信息,提供查询 OperateResultExOne<byte[]> result1 = siemensS7Net.Read("V732", (short) 16); if (result1.IsSuccess) { boolean[] status = siemensS7Net.getByteTransform().TransBool(result1.Content, 0, 128); steProtocol.setLiftErr(status[0]); steProtocol.setInFetchErr(status[2]); steProtocol.setOutFetchErr(status[3]); steProtocol.setAntiErr(status[4]); steProtocol.setLiftSwitchErr(status[5]); steProtocol.setTrackErr(status[6]); steProtocol.setTimeoutErr(status[7]); steProtocol.setConnectErr(status[8]); steProtocol.setEmergencyErr(status[9]); steProtocol.setTaskTypeErr(status[10]); steProtocol.setTaskNoErr(status[11]); steProtocol.setNewTaskErr(status[12]); steProtocol.setErrTaskErr(status[13]); steProtocol.setStopErr(status[14]); steProtocol.setOfflineTaskErr(status[15]); steProtocol.setStartTaskErr(status[16]); steProtocol.setVoltageTaskErr(status[17]); steProtocol.setDevpErr(status[63]); steProtocol.setOnline(status[64]); steProtocol.setNotOnTrack(status[65]); steProtocol.setLowVoltage(status[66]); steProtocol.setElectricityLoss(status[67]); steProtocol.setForcedTravel(status[68]); steProtocol.setDemoMode(status[69]); steProtocol.setBrushConnect(status[70]); steProtocol.setTaskManualForbid(status[71]); steProtocol.setOnlineManualForbid(status[72]); steProtocol.setDevpEmergency(status[73]); steProtocol.setTaskInterrupt(status[74]); steProtocol.setTaskClear(status[75]); steProtocol.setTaskConfirmTimeout(status[76]); steProtocol.setTaskWithCharge(status[77]); steProtocol.setPakInTask(status[96]); steProtocol.setPakOutTask(status[97]); steProtocol.setPakMoveTask(status[98]); steProtocol.setGoHpTask(status[99]); steProtocol.setGoOHpTask(status[100]); steProtocol.setGoHpAvoid(status[101]); steProtocol.setGoOHpAvoid(status[102]); steProtocol.setPakInEmpty(status[104]); steProtocol.setPakInFinish(status[105]); steProtocol.setPakOutEmpty(status[106]); steProtocol.setPakOutFinish(status[107]); steProtocol.setGoHpAvoidFinish(status[108]); steProtocol.setGoOHpAvoidFinish(status[109]); steProtocol.setGoHpAvoidErr(status[110]); steProtocol.setGoOHpAvoidErr(status[111]); steProtocol.setAutoMode(status[112]); steProtocol.setVoltageLow(status[113]); } // 复位信号 if (steProtocol.getWaiting()) { if (resetFlag) { @@ -189,7 +248,6 @@ } } } // 根据实时信息更新数据库 BasSteService service = SpringUtils.getBean(BasSteService.class);