| | |
| | | import com.zy.core.News; |
| | | import com.zy.core.cache.MessageQueue; |
| | | import com.zy.core.cache.OutputQueue; |
| | | import com.zy.core.enums.IoModeType; |
| | | import com.zy.core.enums.SlaveType; |
| | | import com.zy.core.model.DevpSlave; |
| | | import com.zy.core.model.Task; |
| | |
| | | private DevpSlave slave; |
| | | private SiemensS7Net siemensS7Net; |
| | | private Map<Integer, StaProtocol> station = new ConcurrentHashMap<>(); |
| | | |
| | | public IoModeType ioModeOf2_5 = IoModeType.PAKIN_MODE; |
| | | |
| | | private short heartBeatVal = 1; |
| | | private int barcodeSize = 10; |
| | |
| | | * 读取状态 ====> 整块plc |
| | | */ |
| | | private void read() throws InterruptedException { |
| | | // 更新入出库模式 |
| | | updateIoMode(); |
| | | int staNoSize = staNos2.size(); |
| | | OperateResultExOne<byte[]> result = siemensS7Net.Read("DB82.14", (short) (staNoSize * 26)); |
| | | if (result.IsSuccess) { |
| | |
| | | } |
| | | |
| | | |
| | | // 更新入出库模式 |
| | | private void updateIoMode() throws InterruptedException { |
| | | if (this.ioModeOf2_5 != null && (this.ioModeOf2_5.id == 0 || this.ioModeOf2_5.id == 1)) { |
| | | if (!siemensS7Net.Write("DB83.80", this.ioModeOf2_5.id).IsSuccess) { |
| | | OutputQueue.DEVP.offer(MessageFormat.format("【{0}】写入输送线2.5F入出库模式失败", this.ioModeOf2_5)); |
| | | log.error("【{0}】写入输送线2.5F入出库模式失败。输送线plc编号={}", this.ioModeOf2_5); |
| | | } else { |
| | | if (station.get(1031) != null) { |
| | | station.get(1031).setOutInModel(this.ioModeOf2_5.id); |
| | | station.get(1032).setOutInModel(this.ioModeOf2_5.id); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | } |