|  |  |  | 
|---|
|  |  |  | import com.zy.asrs.service.BasRgvOptService; | 
|---|
|  |  |  | import com.zy.asrs.service.BasRgvService; | 
|---|
|  |  |  | import com.zy.common.utils.News; | 
|---|
|  |  |  | import com.zy.core.RgvThread2; | 
|---|
|  |  |  | import com.zy.core.ThreadHandler; | 
|---|
|  |  |  | import com.zy.core.cache.MessageQueue; | 
|---|
|  |  |  | import com.zy.core.cache.OutputQueue; | 
|---|
|  |  |  | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Data | 
|---|
|  |  |  | @Slf4j | 
|---|
|  |  |  | public class RgvThread implements Runnable, ThreadHandler { | 
|---|
|  |  |  | public class RgvThread implements Runnable, RgvThread2 { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private SiemensS7Net siemensNet; | 
|---|
|  |  |  | private RgvSlave slave; | 
|---|
|  |  |  | 
|---|
|  |  |  | * 工位2复位信号 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | private boolean resetFlag2 = false; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //锁定标记 | 
|---|
|  |  |  | private boolean PakMk = true; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public RgvThread(RgvSlave slave) { | 
|---|
|  |  |  | this.slave = slave; | 
|---|
|  |  |  | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | OperateResultExOne<byte[]> result3 = siemensNet.Read("DB100.0", (short) 12); | 
|---|
|  |  |  | OperateResultExOne<byte[]> result4 = siemensNet.Read("DB100.10", (short) 2); | 
|---|
|  |  |  | if (result3.IsSuccess){ | 
|---|
|  |  |  | RgvCommand one = new RgvCommand(); | 
|---|
|  |  |  | //                one.setAckFinish1(siemensNet.getByteTransform().TransInt16(resultRead.Content, 0)); | 
|---|
|  |  |  | one.setTaskNo1(siemensNet.getByteTransform().TransInt16(result3.Content, 2)); | 
|---|
|  |  |  | one.setTaskMode1(siemensNet.getByteTransform().TransInt16(result3.Content, 4)); | 
|---|
|  |  |  | one.setSourceStaNo1(siemensNet.getByteTransform().TransInt16(result3.Content, 6)); | 
|---|
|  |  |  | one.setDestinationStaNo1(siemensNet.getByteTransform().TransInt16(result3.Content, 8)); | 
|---|
|  |  |  | one.setCommand(siemensNet.getByteTransform().TransInt16(result4.Content, 0)); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | News.error("RGV命令下发前读取状态[id:{}] >>>>> 写入[{}],===>>回读[{}]", slave.getId(), JSON.toJSON(command),JSON.toJSON(one)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | OperateResult result8 = siemensNet.Write("DB100.10", (short) 0); | 
|---|
|  |  |  | if (result8.IsSuccess){ | 
|---|
|  |  |  | News.error("下发前把车子确认位置为0"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //        siemensNet.Write("DB100.20", command.getCommand()); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | command.setRgvNo(slave.getId()); | 
|---|
|  |  |  | 
|---|
|  |  |  | array[2] = command.getTaskMode1(); | 
|---|
|  |  |  | array[3] = command.getSourceStaNo1(); | 
|---|
|  |  |  | array[4] = command.getDestinationStaNo1(); | 
|---|
|  |  |  | siemensNet.Write("DB100.10", command.getCommand()); | 
|---|
|  |  |  | //        siemensNet.Write("DB100.10", command.getCommand()); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | OperateResult result = siemensNet.Write("DB100.0", array); | 
|---|
|  |  |  |  | 
|---|