自动化立体仓库 - WCS系统
#
whycq
2023-02-17 8f0bc9c0e67c527bef6392401b776d36423206f4
#
8个文件已修改
223 ■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/ConsoleController.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/SiteController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/ServerBootstrap.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/enums/CrnStatusType.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/thread/SiemensDevpThread.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/console.map.js 144 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/crn.html 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/ConsoleController.java
@@ -35,6 +35,7 @@
import com.zy.core.thread.BarcodeThread;
import com.zy.core.thread.MelsecCrnThread;
import com.zy.core.thread.ScaleThread;
import com.zy.core.thread.SiemensCrnThread;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -249,7 +250,7 @@
        CrnDetailVo vo = new CrnDetailVo();
        for (CrnSlave crnSlave : slaveProperties.getCrn()) {
            if (crnSlave.getId().equals(crnNo)) {
                MelsecCrnThread crnThread = (MelsecCrnThread) SlaveConnection.get(SlaveType.Crn, crnSlave.getId());
                SiemensCrnThread crnThread = (SiemensCrnThread) SlaveConnection.get(SlaveType.Crn, crnSlave.getId());
                CrnProtocol crnProtocol = crnThread.getCrnProtocol();
                vo.setCrnNo(crnNo);
                vo.setWorkNo(crnProtocol.getTaskNo());
src/main/java/com/zy/asrs/controller/SiteController.java
@@ -58,7 +58,7 @@
                res.add(map2);
            } else {
                Map<String, Object> map3 = new HashMap<>();
                map3.put("floor", 2);
                map3.put("floor", 3);
                map3.put("modeVal", devpThread.ioModeOf1F3.id);
                map3.put("modeDesc", devpThread.ioModeOf1F3.desc);
                res.add(map3);
src/main/java/com/zy/core/ServerBootstrap.java
@@ -77,7 +77,7 @@
        // 初始化堆垛机线程
        log.info("初始化堆垛机线程...................................................");
        for (CrnSlave crn : slaveProperties.getCrn()) {
            CrnThread crnThread = new MelsecCrnThread(crn);
            CrnThread crnThread = new SiemensCrnThread(crn);
            new Thread((Runnable) crnThread).start();
            SlaveConnection.put(SlaveType.Crn, crn.getId(), crnThread);
        }
src/main/java/com/zy/core/enums/CrnStatusType.java
@@ -16,6 +16,7 @@
    WAITING(10, "任务完成等待WCS确认"),
    PAUSE(11, "任务暂停"),
    SOS(99, "报警"),
    UNKNOW(100,"其他")
    ;
    public Integer id;
src/main/java/com/zy/core/thread/SiemensDevpThread.java
@@ -308,37 +308,37 @@
        }
        if (slave.getId() == 2 && this.ioModeOf1F3 != IoModeType.NONE) {
            if (!siemensS7Net.Write("DB100.300", this.ioModeOf1F3.id).IsSuccess) {
                OutputQueue.DEVP.offer(MessageFormat.format("【{0}】写入输送线1F3入出库模式失败。输送线plc编号={1}", slave.getId()));
                OutputQueue.DEVP.offer(MessageFormat.format("【{0}】写入输送线1F3入出库模式失败。输送线plc编号={2}", slave.getId()));
                log.error("写入输送线1F3入出库模式失败。输送线plc编号={}", slave.getId());
            }
        }
        if (slave.getId() == 2 && this.ioModeOf1F4 != IoModeType.NONE) {
            if (!siemensS7Net.Write("DB100.302", this.ioModeOf1F4.id).IsSuccess) {
                OutputQueue.DEVP.offer(MessageFormat.format("【{0}】写入输送线1F4入出库模式失败。输送线plc编号={1}", slave.getId()));
                OutputQueue.DEVP.offer(MessageFormat.format("【{0}】写入输送线1F4入出库模式失败。输送线plc编号={2}", slave.getId()));
                log.error("写入输送线1F4入出库模式失败。输送线plc编号={}", slave.getId());
            }
        }
        if (slave.getId() == 2 && this.ioModeOf2F1 != IoModeType.NONE) {
            if (!siemensS7Net.Write("DB100.304", this.ioModeOf2F1.id).IsSuccess) {
                OutputQueue.DEVP.offer(MessageFormat.format("【{0}】写入输送线2F1入出库模式失败。输送线plc编号={1}", slave.getId()));
                OutputQueue.DEVP.offer(MessageFormat.format("【{0}】写入输送线2F1入出库模式失败。输送线plc编号={2}", slave.getId()));
                log.error("写入输送线2F1入出库模式失败。输送线plc编号={}", slave.getId());
            }
        }
        if (slave.getId() == 2 && this.ioModeOf2F2 != IoModeType.NONE) {
            if (!siemensS7Net.Write("DB100.306", this.ioModeOf2F2.id).IsSuccess) {
                OutputQueue.DEVP.offer(MessageFormat.format("【{0}】写入输送线2F2入出库模式失败。输送线plc编号={1}", slave.getId()));
                OutputQueue.DEVP.offer(MessageFormat.format("【{0}】写入输送线2F2入出库模式失败。输送线plc编号={2}", slave.getId()));
                log.error("写入输送线2F2入出库模式失败。输送线plc编号={}", slave.getId());
            }
        }
        if (slave.getId() == 2 && this.ioModeOf3F1 != IoModeType.NONE) {
            if (!siemensS7Net.Write("DB100.308", this.ioModeOf3F1.id).IsSuccess) {
                OutputQueue.DEVP.offer(MessageFormat.format("【{0}】写入输送线3F1入出库模式失败。输送线plc编号={1}", slave.getId()));
                OutputQueue.DEVP.offer(MessageFormat.format("【{0}】写入输送线3F1入出库模式失败。输送线plc编号={2}", slave.getId()));
                log.error("写入输送线3F1入出库模式失败。输送线plc编号={}", slave.getId());
            }
        }
        if (slave.getId() == 2 && this.ioModeOf3F2 != IoModeType.NONE) {
            if (!siemensS7Net.Write("DB100.310", this.ioModeOf3F2.id).IsSuccess) {
                OutputQueue.DEVP.offer(MessageFormat.format("【{0}】写入输送线3F2入出库模式失败。输送线plc编号={1}", slave.getId()));
                OutputQueue.DEVP.offer(MessageFormat.format("【{0}】写入输送线3F2入出库模式失败。输送线plc编号={2}", slave.getId()));
                log.error("写入输送线3F2入出库模式失败。输送线plc编号={}", slave.getId());
            }
        }
src/main/resources/application.yml
@@ -48,7 +48,7 @@
  # 堆垛机1
  crn[0]:
    id: 1
    ip: 10.10.10.101
    ip: 10.10.10.10
    port: 102
    rack: 0
    slot: 0
@@ -60,61 +60,61 @@
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 102
      row: 2
      bay: 2
      bay: 84
      lev: 1
    # 堆垛机入库站点2
    crnInStn[1]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 112
      row: 2
      bay: 55
      bay: 1
      lev: 1
    # 堆垛机入库站点3
    crnInStn[2]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 202
      row: 2
      bay: 55
      bay: 1
      lev: 4
    # 堆垛机入库站点
    crnInStn[3]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 302
      row: 2
      bay: 55
      bay: 1
      lev: 7
    # 堆垛机出库站点1
    crnOutStn[0]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 102
      row: 2
      bay: 2
      bay: 84
      lev: 1
    # 堆垛机出库站点2
    crnOutStn[1]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 112
      row: 2
      bay: 55
      bay: 1
      lev: 1
    # 堆垛机出库站点3
    crnOutStn[2]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 202
      row: 2
      bay: 55
      bay: 1
      lev: 4
    # 堆垛机出库站点
    crnOutStn[3]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 302
      row: 2
      bay: 55
      bay: 1
      lev: 7
  # 堆垛机2
  # 堆垛机1
  crn[1]:
    id: 2
    ip: 10.10.10.111
    ip: 10.10.10.20
    port: 102
    rack: 0
    slot: 0
@@ -126,35 +126,35 @@
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 106
      row: 7
      bay: 2
      bay: 84
      lev: 1
    # 堆垛机入库站点2
    crnInStn[1]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 116
      row: 7
      bay: 55
      bay: 1
      lev: 1
    # 堆垛机入库站点3
    crnInStn[2]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 205
      row: 7
      bay: 55
      bay: 1
      lev: 4
    # 堆垛机入库站点4
    crnInStn[3]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 305
      row: 7
      bay: 55
      bay: 1
      lev: 7
    # 堆垛机出库站点1
    crnOutStn[0]:
      devpPlcId: ${wcs-slave.devp[0].id}
      staNo: 106
      row: 7
      bay: 2
      bay: 84
      lev: 1
    # 堆垛机出库站点2
    crnOutStn[1]:
@@ -168,14 +168,14 @@
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 205
      row: 7
      bay: 55
      bay: 1
      lev: 4
    # 堆垛机出库站点3
    crnOutStn[3]:
      devpPlcId: ${wcs-slave.devp[1].id}
      staNo: 305
      row: 7
      bay: 55
      bay: 1
      lev: 7
  # 输送线1
  devp[0]:
src/main/webapp/static/js/console.map.js
@@ -91,36 +91,9 @@
    "rackDescs": [
        {
            "type": "rackDescs",
            "id": "lb_desc8",
            "text": "#8",
            "id": "lb_desc1",
            "text": "#1",
            "top": 150,
            "left": 1345,
            "width": 30,
            "height": 23
        },
        {
            "type": "rackDescs",
            "id": "lb_desc6",
            "text": "#6",
            "top": 223,
            "left": 1380,
            "width": 30,
            "height": 23
        },
        {
            "type": "rackDescs",
            "id": "lb_desc5",
            "text": "#5",
            "top": 245,
            "left": 1380,
            "width": 30,
            "height": 23
        },
        {
            "type": "rackDescs",
            "id": "lb_desc4",
            "text": "#4",
            "top": 280,
            "left": 1380,
            "width": 30,
            "height": 23
@@ -129,6 +102,33 @@
            "type": "rackDescs",
            "id": "lb_desc3",
            "text": "#3",
            "top": 223,
            "left": 1380,
            "width": 30,
            "height": 23
        },
        {
            "type": "rackDescs",
            "id": "lb_desc4",
            "text": "#4",
            "top": 245,
            "left": 1380,
            "width": 30,
            "height": 23
        },
        {
            "type": "rackDescs",
            "id": "lb_desc5",
            "text": "#5",
            "top": 280,
            "left": 1380,
            "width": 30,
            "height": 23
        },
        {
            "type": "rackDescs",
            "id": "lb_desc6",
            "text": "#6",
            "top": 300,
            "left": 1380,
            "width": 30,
@@ -136,10 +136,10 @@
        },
        {
            "type": "rackDescs",
            "id": "lb_desc1",
            "text": "#1",
            "id": "lb_desc8",
            "text": "#8",
            "top": 380,
            "left": 1345,
            "left": 1380,
            "width": 30,
            "height": 23
        },
@@ -206,8 +206,8 @@
                            "type": "stn",
                            "id": "site-102",
                            "text": "102",
                            "top": 173,
                            "left": 403,
                            "top": 172,
                            "left": 1342,
                            "width": 70,
                            "height": 20
                        },
@@ -215,8 +215,8 @@
                            "type": "stn",
                            "id": "site-101",
                            "text": "101",
                            "top": 173,
                            "left": 332,
                            "top": 172,
                            "left": 1413,
                            "width": 70,
                            "height": 20
                        },
@@ -224,8 +224,8 @@
                            "type": "stn",
                            "id": "site-100",
                            "text": "100",
                            "top": 173,
                            "left": 261,
                            "top": 172,
                            "left": 1484,
                            "width": 70,
                            "height": 20
                        },
@@ -233,8 +233,8 @@
                            "type": "stn",
                            "id": "site-106",
                            "text": "106",
                            "top": 358,
                            "left": 403,
                            "top": 359,
                            "left": 1342,
                            "width": 70,
                            "height": 20
                        },
@@ -242,8 +242,8 @@
                            "type": "stn",
                            "id": "site-105",
                            "text": "105",
                            "top": 358,
                            "left": 332,
                            "top": 359,
                            "left": 1413,
                            "width": 70,
                            "height": 20
                        },
@@ -251,8 +251,8 @@
                            "type": "stn",
                            "id": "site-104",
                            "text": "104",
                            "top": 358,
                            "left": 261,
                            "top": 359,
                            "left": 1484,
                            "width": 70,
                            "height": 20
                        },
@@ -260,8 +260,8 @@
                            "type": "stn",
                            "id": "site-103",
                            "text": "103",
                            "top": 358,
                            "left": 190,
                            "top": 359,
                            "left": 1555,
                            "width": 70,
                            "height": 20
                        },
@@ -269,8 +269,8 @@
                            "type": "stn",
                            "id": "site-112",
                            "text": "112",
                            "top": 172,
                            "left": 1342,
                            "top": 173,
                            "left": 403,
                            "width": 70,
                            "height": 20
                        },
@@ -278,8 +278,8 @@
                            "type": "stn",
                            "id": "site-111",
                            "text": "111",
                            "top": 172,
                            "left": 1413,
                            "top": 173,
                            "left": 332,
                            "width": 70,
                            "height": 20
                        },
@@ -287,8 +287,8 @@
                            "type": "stn",
                            "id": "site-110",
                            "text": "110",
                            "top": 172,
                            "left": 1484,
                            "top": 173,
                            "left": 261,
                            "width": 70,
                            "height": 20
                        },
@@ -296,8 +296,8 @@
                            "type": "stn",
                            "id": "site-116",
                            "text": "116",
                            "top": 359,
                            "left": 1342,
                            "top": 358,
                            "left": 403,
                            "width": 70,
                            "height": 20
                        },
@@ -305,8 +305,8 @@
                            "type": "stn",
                            "id": "site-115",
                            "text": "115",
                            "top": 359,
                            "left": 1413,
                            "top": 358,
                            "left": 332,
                            "width": 70,
                            "height": 20
                        },
@@ -314,8 +314,8 @@
                            "type": "stn",
                            "id": "site-114",
                            "text": "114",
                            "top": 359,
                            "left": 1484,
                            "top": 358,
                            "left": 261,
                            "width": 70,
                            "height": 20
                        },
@@ -323,8 +323,8 @@
                            "type": "stn",
                            "id": "site-113",
                            "text": "113",
                            "top": 359,
                            "left": 1555,
                            "top": 358,
                            "left": 190,
                            "width": 70,
                            "height": 20
                        },
@@ -344,7 +344,7 @@
                            "id": "site-202",
                            "text": "202",
                            "top": 173,
                            "left": 1342,
                            "left": 403,
                            "width": 70,
                            "height": 20
                        },
@@ -353,7 +353,7 @@
                            "id": "site-201",
                            "text": "201",
                            "top": 173,
                            "left": 1413,
                            "left": 332,
                            "width": 70,
                            "height": 20
                        },
@@ -362,7 +362,7 @@
                            "id": "site-200",
                            "text": "200",
                            "top": 173,
                            "left": 1484,
                            "left": 261,
                            "width": 70,
                            "height": 20
                        },
@@ -371,7 +371,7 @@
                            "id": "site-205",
                            "text": "205",
                            "top": 358,
                            "left": 1342,
                            "left": 403,
                            "width": 70,
                            "height": 20
                        },
@@ -380,7 +380,7 @@
                            "id": "site-204",
                            "text": "204",
                            "top": 358,
                            "left": 1413,
                            "left": 332,
                            "width": 70,
                            "height": 20
                        },
@@ -389,7 +389,7 @@
                            "id": "site-203",
                            "text": "203",
                            "top": 358,
                            "left": 1484,
                            "left": 261,
                            "width": 70,
                            "height": 20
                        },
@@ -409,7 +409,7 @@
                            "id": "site-302",
                            "text": "302",
                            "top": 173,
                            "left": 1342,
                            "left": 403,
                            "width": 70,
                            "height": 20
                        },
@@ -418,7 +418,7 @@
                            "id": "site-301",
                            "text": "301",
                            "top": 173,
                            "left": 1413,
                            "left": 332,
                            "width": 70,
                            "height": 20
                        },
@@ -427,7 +427,7 @@
                            "id": "site-300",
                            "text": "300",
                            "top": 173,
                            "left": 1484,
                            "left": 261,
                            "width": 70,
                            "height": 20
                        },
@@ -436,7 +436,7 @@
                            "id": "site-305",
                            "text": "305",
                            "top": 358,
                            "left": 1342,
                            "left": 403,
                            "width": 70,
                            "height": 20
                        },
@@ -445,7 +445,7 @@
                            "id": "site-304",
                            "text": "304",
                            "top": 358,
                            "left": 1413,
                            "left": 332,
                            "width": 70,
                            "height": 20
                        },
@@ -454,7 +454,7 @@
                            "id": "site-303",
                            "text": "303",
                            "top": 358,
                            "left": 1484,
                            "left": 261,
                            "width": 70,
                            "height": 20
                        },
src/main/webapp/views/crn.html
@@ -65,24 +65,7 @@
                    <!--            <span>&nbsp;</span>-->
                    <input id="crn2" disabled="disabled">
                </div>
                <div class="crn-command-item">
                    <label>3#</label>
                    <button id="demoBtn-3" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>
                    <!--            <span>&nbsp;</span>-->
                    <input id="crn3" disabled="disabled">
                </div>
                <div class="crn-command-item">
                    <label>4#</label>
                    <button id="demoBtn-4" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>
                    <!--            <span>&nbsp;</span>-->
                    <input id="crn4" disabled="disabled">
                </div>
                <div class="crn-command-item">
                    <label>5#</label>
                    <button id="demoBtn-5" class="demoBtn" onclick="demoSwitch(this.id)"> - </button>
                    <!--            <span>&nbsp;</span>-->
                    <input id="crn5" disabled="disabled">
                </div>
            </div>
            <!-- 堆垛机状态位信息 -->
            <div class="crn-state">
@@ -150,9 +133,7 @@
                    <div class="select-container" style="padding: 20px 0;">
                        <label><input type="radio" name="crnSelect" value="1" checked>&nbsp;1号堆垛机</label>
                        <label><input type="radio" name="crnSelect" value="2">&nbsp;2号堆垛机</label>
                        <label><input type="radio" name="crnSelect" value="3">&nbsp;3号堆垛机</label>
                        <label><input type="radio" name="crnSelect" value="4">&nbsp;4号堆垛机</label>
                        <label><input type="radio" name="crnSelect" value="5">&nbsp;5号堆垛机</label>
                    </div>
                </div>
                <!-- 源站/源库位 选择 -->