瀏覽代碼

测试写入plc信号

dfsfs 1 年之前
父節點
當前提交
fc8207293c

+ 4 - 4
ruoyi-admin/src/main/java/com/ruoyi/init/StartService.java

@@ -40,16 +40,16 @@ public class StartService implements CommandLineRunner {
     @Override
     public void run(String... args) throws Exception {
         //自动下发任务
-        if (initTaskConfig.getAutoSend()) {
+        /*if (initTaskConfig.getAutoSend()) {
             Thread thread = new Thread(new AutoTaskThread(businessService));
             thread.start();
-        }
+        }*/
 
         //ndc下发
-        if (initTaskConfig.getAciService()) {
+        /*if (initTaskConfig.getAciService()) {
             Thread thread = new Thread(new AciServiceThread(aciService));
             thread.start();
-        }
+        }*/
     }
 
 

+ 3 - 3
ruoyi-admin/src/main/resources/application-dev.yml

@@ -6,9 +6,9 @@ spring:
         druid:
             # 主库数据源
             master:
-                url: jdbc:mysql://47.100.220.92:3306/warewms_dongfangtaiye?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8
-                username: warewms
-                password: warewms123
+                url: jdbc:mysql://localhost/warewms-dongfangtaiye?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8
+                username: root
+                password: 123456
             # 从库数据源
             slave:
                 # 从数据源开关/默认关闭

+ 11 - 11
ruoyi-admin/src/main/resources/application-prod.yml

@@ -6,8 +6,8 @@ spring:
         druid:
             # 主库数据源
             master:
-                url: jdbc:mysql://localhost:3306/warewms-hualan?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8
-                username: warewms
+                url: jdbc:mysql://localhost:3306/warewms-dongfangtaiye?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8
+                username: root
                 password: warewms123
             # 从库数据源
             slave:
@@ -71,44 +71,44 @@ init-task:
 modbus:
     tcp-master:
         first: # 自动门(靠马路)
-            open: true
+            open: false
             host: 192.168.42.201
             port: 9000
         second: # 自动门(靠里面)
-            open: true
+            open: false
             host: 192.168.42.202
             port: 9000
         sixth: # 自动门(靠马路-第二层)
-            open: true
+            open: false
             host: 192.168.42.210
             port: 9000
         seventh: # 卷帘门
-            open: true
+            open: false
             host: 192.168.42.211
             port: 9000
         third: # 按钮盒
-            open: true
+            open: false
             host: 192.168.42.205
             port: 9000
         fourth: # 充电机(三向车)
-            open: true
+            open: false
             host: 192.168.42.208
             port: 8899
         fifth: # 充电机(迷你堆垛)
-            open: true
+            open: false
             host: 192.168.42.209
             port: 8899
 
 
 rfid:
     first: # 靠马路
-        open: true
+        open: false
         host: 192.168.42.203
         port: 5084
         number-of-tags: 3 # 一次读取标签的数量
         timeout-milliseconds: 5000
     second: # 靠里面
-        open: true
+        open: false
         host: 192.168.42.204
         port: 5084
         number-of-tags: 3 # 一次读取标签的数量

+ 1 - 1
ruoyi-admin/src/main/resources/application.yml

@@ -59,7 +59,7 @@ spring:
     # 数据库索引
     database: 0
     # 密码
-    password:
+    password: 123456
     # 连接超时时间
     timeout: 10s
     lettuce:

+ 2 - 0
ruoyi-admin/src/test/java/com/ruoyi/admin/test/base/WarehouseTest.java

@@ -41,6 +41,7 @@ import com.ruoyi.base.service.IBaseLocationInfoService;
 import com.ruoyi.base.service.IBaseWarehouseService;
 import com.ruoyi.base.utils.IdSequenceUtils;
 import com.ruoyi.framework.web.domain.server.Sys;
+import com.ruoyi.system.config.PlcProperties;
 import com.ruoyi.system.enums.PLCConnectNameEnum;
 import com.ruoyi.taiye.domain.DeviceLog;
 import com.ruoyi.taiye.mapper.DeviceLogMapper;
@@ -52,6 +53,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.context.junit4.SpringRunner;
 
+import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.Date;

+ 20 - 0
ruoyi-dongfangyaiye/src/main/java/com/ruoyi/taiye/controller/DeviceLogController.java

@@ -3,8 +3,12 @@ package com.ruoyi.taiye.controller;
 import java.util.List;
 import javax.servlet.http.HttpServletResponse;
 
+import com.ruoyi.system.enums.PLCConnectNameEnum;
+import com.ruoyi.system.enums.PLCEnum;
+import com.ruoyi.system.init.PlcConnectServiceRunner;
 import com.ruoyi.taiye.domain.DeviceLog;
 import com.ruoyi.taiye.service.IDeviceLogService;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -28,12 +32,15 @@ import com.ruoyi.common.core.page.TableDataInfo;
  * @author zhifei
  * @date 2023-11-27
  */
+@Slf4j
 @RestController
 @RequestMapping("/device/log")
 public class DeviceLogController extends BaseController
 {
     @Autowired
     private IDeviceLogService deviceLogService;
+    @Autowired
+    PlcConnectServiceRunner plcConnectServiceRunner;
 
     /**
      * 查询设备日志列表
@@ -67,5 +74,18 @@ public class DeviceLogController extends BaseController
         return AjaxResult.success(deviceLogService.selectDeviceLogByDeviceLogId(deviceLogId));
     }
 
+    /**
+     * plc写数据测试
+     * @param plcSignal
+     * @param plcName
+     * @return
+     */
+    @GetMapping(value = "/writeBoolean/{plcName}/{plcSignal}")
+    public AjaxResult writeBoolean(@PathVariable String plcName, @PathVariable String plcSignal)
+    {
+        log.info("==={}:{}",plcName,plcSignal);
+        plcConnectServiceRunner.getPlcServer(plcName).writeBoolean(plcSignal, true);
+        return AjaxResult.success();
+    }
 
 }

+ 27 - 6
ruoyi-dongfangyaiye/src/main/java/com/ruoyi/taiye/job/AMSJob.java

@@ -1,5 +1,6 @@
 package com.ruoyi.taiye.job;
 
+import com.github.xingshuangs.iot.protocol.s7.service.S7PLC;
 import com.ruoyi.system.init.PlcConnectServiceRunner;
 import com.ruoyi.taiye.domain.DeviceLog;
 import com.ruoyi.system.enums.PLCConnectNameEnum;
@@ -23,13 +24,33 @@ public class AMSJob {
     private IDeviceLogService deviceLogService;
 
     public void test() {
-
+        // 一号包装机
+        boolean b1 = plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata()).readBoolean(PLCEnum.PACKING_MACHINE_UNLOADING_1.getMetadata());
+        log.info("一号包装机下料信号:{}:{}:{}", PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata(), PLCEnum.PACKING_MACHINE_UNLOADING_1.getMetadata(),b1);
+        boolean b2 = plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata()).readBoolean(PLCEnum.PACKING_MACHINE_UP_EMPTY_PALLETS_1.getMetadata());
+        log.info("一号包装机上空信号:{}:{}:{}", PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata(), PLCEnum.PACKING_MACHINE_UP_EMPTY_PALLETS_1.getMetadata(),b2);
+        boolean b3 = plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata()).readBoolean(PLCEnum.PACKING_MACHINE_UNLOADING_ENTER_1.getMetadata());
+        log.info("一号包装机下料允许进入信号:{}:{}:{}", PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata(), PLCEnum.PACKING_MACHINE_UNLOADING_ENTER_1.getMetadata(),b3);
+        boolean b4 = plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata()).readBoolean(PLCEnum.PACKING_MACHINE_UP_EMPTY_ENTER_1.getMetadata());
+        log.info("一号包装机上空允许进入信号:{}:{}:{}", PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata(), PLCEnum.PACKING_MACHINE_UP_EMPTY_ENTER_1.getMetadata(),b4);
+        boolean b5 = plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata()).readBoolean(PLCEnum.PACKING_MACHINE_UNLOADING_Leave_1.getMetadata());
+        log.info("一号包装机下料完成信号:{}:{}:{}", PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata(), PLCEnum.PACKING_MACHINE_UNLOADING_Leave_1.getMetadata(),b5);
+        boolean b6 = plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata()).readBoolean(PLCEnum.PACKING_MACHINE_UP_EMPTY_Leave_1.getMetadata());
+        log.info("一号包装机上空完成信号:{}:{}:{}", PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata(), PLCEnum.PACKING_MACHINE_UP_EMPTY_Leave_1.getMetadata(),b6);
+        // 叠包机
+        boolean b7 = plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.STACKING_MACHINE.getMetadata()).readBoolean(PLCEnum.STACKING_MACHINE_FEEDING.getMetadata());
+        log.info("叠包机上料信号:{}:{}:{}", PLCConnectNameEnum.STACKING_MACHINE.getMetadata(), PLCEnum.STACKING_MACHINE_FEEDING.getMetadata(),b7);
+        boolean b8 = plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.STACKING_MACHINE.getMetadata()).readBoolean(PLCEnum.STACKING_MACHINE_FEEDING_ENTER.getMetadata());
+        log.info("叠包机允许进入:{}:{}:{}", PLCConnectNameEnum.STACKING_MACHINE.getMetadata(), PLCEnum.STACKING_MACHINE_FEEDING_ENTER.getMetadata(),b8);
+        boolean b9 = plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.STACKING_MACHINE.getMetadata()).readBoolean(PLCEnum.STACKING_MACHINE_FEEDING_FINISH.getMetadata());
+        log.info("叠包机上料完成信号:{}:{}:{}", PLCConnectNameEnum.STACKING_MACHINE.getMetadata(), PLCEnum.STACKING_MACHINE_FEEDING_FINISH.getMetadata(),b9);
     }
 
     /**
      * 一号包装机下料任务
      */
     public void onePackingMachineUnloading() {
+        log.info("一号包装机下料信号:{}:{}", PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata(), PLCEnum.PACKING_MACHINE_UNLOADING_1.getMetadata());
         boolean b = plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata()).readBoolean(PLCEnum.PACKING_MACHINE_UNLOADING_1.getMetadata());
         deviceLogService.insertDeviceLog(new DeviceLog(PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata(),PLCConnectNameEnum.PACKING_MACHINE_1.getMetaName(),"获取到下料信号:"+b,"1"));
         if (b) {
@@ -51,7 +72,7 @@ public class AMSJob {
             boolean b1 = plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.STACKING_MACHINE.getMetadata()).readBoolean(PLCEnum.STACKING_MACHINE_FEEDING.getMetadata());
             deviceLogService.insertDeviceLog(new DeviceLog(PLCConnectNameEnum.STACKING_MACHINE.getMetadata(),PLCConnectNameEnum.STACKING_MACHINE.getMetaName(),"获取到上料信号:"+b1,"1"));
             if (b1) {
-                processService.createPackingMachineUnloadingTask("PM_L_3", 001);
+                processService.createPackingMachineUnloadingTask("PM_L_3", 100001);
             }
         }
     }
@@ -66,7 +87,7 @@ public class AMSJob {
             boolean b1 = plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.STACKING_MACHINE.getMetadata()).readBoolean(PLCEnum.STACKING_MACHINE_FEEDING.getMetadata());
             deviceLogService.insertDeviceLog(new DeviceLog(PLCConnectNameEnum.STACKING_MACHINE.getMetadata(),PLCConnectNameEnum.STACKING_MACHINE.getMetaName(),"获取到上料信号:"+b1,"1"));
             if (b1) {
-                processService.createPackingMachineUnloadingTask("PM_L_3", 001);
+                processService.createPackingMachineUnloadingTask("PM_L_3", 100002);
             }
         }
 
@@ -79,7 +100,7 @@ public class AMSJob {
         boolean b = plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata()).readBoolean(PLCEnum.PACKING_MACHINE_UP_EMPTY_PALLETS_1.getMetadata());
         deviceLogService.insertDeviceLog(new DeviceLog(PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata(),PLCConnectNameEnum.PACKING_MACHINE_1.getMetaName(),"获取到上空信号:"+b,"1"));
         if (b) {
-            processService.createPackingMachineUpEmptyPallets("PM_UP_1",001);
+            processService.createPackingMachineUpEmptyPallets("PM_UP_1",100003);
         }
 
     }
@@ -91,7 +112,7 @@ public class AMSJob {
         boolean b = plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_2.getMetadata()).readBoolean(PLCEnum.PACKING_MACHINE_UP_EMPTY_PALLETS_2.getMetadata());
         deviceLogService.insertDeviceLog(new DeviceLog(PLCConnectNameEnum.PACKING_MACHINE_2.getMetadata(),PLCConnectNameEnum.PACKING_MACHINE_2.getMetaName(),"获取到上空信号:"+b,"1"));
         if (b) {
-            processService.createPackingMachineUpEmptyPallets("PM_UP_2",001);
+            processService.createPackingMachineUpEmptyPallets("PM_UP_2",100004);
         }
     }
 
@@ -102,7 +123,7 @@ public class AMSJob {
         boolean b = plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_3.getMetadata()).readBoolean(PLCEnum.PACKING_MACHINE_UP_EMPTY_PALLETS_3.getMetadata());
         deviceLogService.insertDeviceLog(new DeviceLog(PLCConnectNameEnum.PACKING_MACHINE_3.getMetadata(),PLCConnectNameEnum.PACKING_MACHINE_3.getMetaName(),"获取到上空信号:"+b,"1"));
         if (b) {
-            processService.createPackingMachineUpEmptyPallets("PM_UP_3",001);
+            processService.createPackingMachineUpEmptyPallets("PM_UP_3",100005);
         }
     }
 

+ 2 - 0
ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java

@@ -115,6 +115,8 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
                 .antMatchers("/wcs/**").anonymous()
                 .antMatchers("/api/wcstask/**").permitAll()
                 .antMatchers("/test/**").permitAll()
+                .antMatchers("/ams/locationView/**").permitAll()
+                .antMatchers("/device/log/writeBoolean/{plcName}/{plcSignal}").permitAll()
                 // 库位视图
                 .antMatchers("/ams/locationView/**").permitAll()
                 // 除上面外的所有请求全部需要鉴权认证

+ 1 - 0
ruoyi-ui/package.json

@@ -76,6 +76,7 @@
     "sass": "1.32.13",
     "sass-loader": "10.1.1",
     "script-ext-html-webpack-plugin": "2.1.5",
+    "sockjs-client": "^1.5.1",
     "svg-sprite-loader": "5.1.1",
     "vue-template-compiler": "2.6.12"
   },

+ 1 - 1
warewms-ams/src/main/java/com/ruoyi/ams/agv/ndc/AciService.java

@@ -38,7 +38,7 @@ public class AciService {
 
     private static final int BUFF_SIZE = 2048;
 
-    private static final String IP_ADDR = "192.168.1.58";
+    private static final String IP_ADDR = "192.168.100.130";
 
     private static final int IP_PORT = 30002;
 

+ 3 - 3
warewms-ams/src/main/java/com/ruoyi/ams/task/service/impl/WcsTaskServiceImpl.java

@@ -455,13 +455,13 @@ public class WcsTaskServiceImpl implements IWcsTaskService {
                             redisCache.unlockCacheObject(Long.parseLong(wcsTask.getExt8()), wcsTask.getLocationFrom());
                         }
                         if (wcsTask.getTaskType().equals(Constant.FLOW_CONFIG_ID.PM_L_1.name())) {
-                            plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata()).writeBoolean(PLCEnum.PACKING_MACHINE_UNLOADING_Leave_2.getMetadata(), true);
+                            plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata()).writeBoolean(PLCEnum.PACKING_MACHINE_UNLOADING_Leave_1.getMetadata(), true);
                         }
                         if (wcsTask.getTaskType().equals(Constant.FLOW_CONFIG_ID.PM_L_2.name())) {
-                            plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata()).writeBoolean(PLCEnum.PACKING_MACHINE_UNLOADING_Leave_2.getMetadata(), true);
+                            plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_2.getMetadata()).writeBoolean(PLCEnum.PACKING_MACHINE_UNLOADING_Leave_2.getMetadata(), true);
                         }
                         if (wcsTask.getTaskType().equals(Constant.FLOW_CONFIG_ID.PM_L_3.name())) {
-                            plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_1.getMetadata()).writeBoolean(PLCEnum.PACKING_MACHINE_UNLOADING_Leave_3.getMetadata(), true);
+                            plcConnectServiceRunner.getPlcServer(PLCConnectNameEnum.PACKING_MACHINE_3.getMetadata()).writeBoolean(PLCEnum.PACKING_MACHINE_UNLOADING_Leave_3.getMetadata(), true);
                         }
 
                         break;

+ 1 - 1
warewms-base/src/main/java/com/ruoyi/base/constant/Constant.java

@@ -46,7 +46,7 @@ public class Constant {
          */
         PM_UP_1(29L),
         /**
-         * 号包装机上空托
+         * 号包装机上空托
          */
         PM_UP_2(30L),
         /**