自动化立体仓库 - WCS系统
#
18516761980
2022-08-11 d9d35401bf3153e96dafc00b83db13ed554c6d5c
src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -8,13 +8,9 @@
import com.core.common.Cools;
import com.core.common.DateUtils;
import com.core.common.SpringUtils;
import com.google.common.base.Utf8;
import com.sun.xml.internal.bind.v2.runtime.output.Encoded;
import com.zy.asrs.entity.BasDevp;
import com.zy.asrs.service.BasDevpService;
import com.zy.asrs.service.WrkMastService;
import com.zy.core.DevpThread;
import com.zy.core.Slave;
import com.zy.core.cache.MessageQueue;
import com.zy.core.cache.OutputQueue;
import com.zy.core.cache.SlaveConnection;
@@ -25,7 +21,6 @@
import com.zy.core.model.protocol.StaProtocol;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import java.text.MessageFormat;
import java.util.ArrayList;
@@ -47,10 +42,9 @@
    private Map<Integer, StaProtocol> station = new ConcurrentHashMap<>();
    private short heartBeatVal = 1;
    public static final ArrayList<Integer> staNos = new ArrayList<Integer>() {{
        add(101);add(102);add(103);add(104);add(105);add(106);add(107);add(108);add(109);
        add(110);add(111);add(112);add(113);add(114);add(115);add(116);add(117);add(118);add(119);
        add(120);add(121);add(122);add(123);add(124);add(125);add(126);add(127);add(128);add(129);
        add(130);add(131);add(132);add(133);add(134);add(135);add(136);
        add(101);add(102);add(103);add(104);
        add(201);add(202);add(203);add(204);
        add(301);add(302);add(303);add(304);add(305);add(306);
    }};
    /**
@@ -58,6 +52,11 @@
     */
    private int barcodeSize = 1;
    public IoModeType ioMode = IoModeType.NONE;
    public int startSignal1 = 0;
    public int startSignal2 = 0;
    public int startSignal3 = 0;
    public int startSignal4 = 0;
    public SiemensDevpThread(DevpSlave slave) {
        this.slave = slave;
@@ -82,6 +81,10 @@
                    // 写数据 ID+目标站
                    case 2:
                        write((StaProtocol)task.getData());
                        break;
                    //复位测试信号
                    case 3:
                        siemensS7Net.Write("DB100." + (150 + ((int)task.getData()) * 2), 0);
                        break;
                    default:
                        break;
@@ -183,9 +186,16 @@
                    barcodeThread.setBarcode(barcode);
                }
            }
        }
        Thread.sleep(200);
        OperateResultExOne<byte[]> result3 = siemensS7Net.Read("DB100.150", (short) 8);
        if(result3.IsSuccess) {
            startSignal1 = siemensS7Net.getByteTransform().TransInt16(result.Content, 0);
            startSignal2 = siemensS7Net.getByteTransform().TransInt16(result.Content, 2);
            startSignal3 = siemensS7Net.getByteTransform().TransInt16(result.Content, 4);
            startSignal4 = siemensS7Net.getByteTransform().TransInt16(result.Content, 6);
        }
//        OperateResultExOne<Short> result2 = siemensS7Net.ReadInt16("DB200.0");
//        if (result2.IsSuccess) {
//            this.ioMode = IoModeType.get(result2.Content);