From 78b99e5348592a29ca1393a5e13db619cc4eba56 Mon Sep 17 00:00:00 2001 From: wangxinhui <wangxinhui@hnkhzn.com> Date: 星期四, 26 十二月 2024 23:40:56 +0800 Subject: [PATCH] 入壳设备增加 --- wcs-server-hbf/WIDESEA_WCS/SchedulerExecute/AGV/AgvAndEquiWork_JLM.cs | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 56 insertions(+), 0 deletions(-) diff --git a/wcs-server-hbf/WIDESEA_WCS/SchedulerExecute/AGV/AgvAndEquiWork_JLM.cs b/wcs-server-hbf/WIDESEA_WCS/SchedulerExecute/AGV/AgvAndEquiWork_JLM.cs index c87d749..d6554dc 100644 --- a/wcs-server-hbf/WIDESEA_WCS/SchedulerExecute/AGV/AgvAndEquiWork_JLM.cs +++ b/wcs-server-hbf/WIDESEA_WCS/SchedulerExecute/AGV/AgvAndEquiWork_JLM.cs @@ -2,10 +2,12 @@ using Newtonsoft.Json; using System; using System.Collections.Generic; +using WIDESEA_Common; using WIDESEA_Common.Tools; using WIDESEA_Core.Utilities; using WIDESEA_Services.Services; using WIDESEA_WCS.WCSClient; +using static FreeSql.Internal.GlobalFilter; namespace WIDESEA_WCS.SchedulerExecute.AGV { @@ -17,12 +19,18 @@ public static void AgvAndEquiWork_JLM() { PLCClient agvjrplc = WCSService.Clients.Find(v => v.PLCName == "缁勮AGV璋冨害"); + PLCClient oiplc1F = WCSService.Clients.Find(v => v.PLCName == PLCConst.PLCName1FLKHCJ); #region 鏃犵嚎io妯″潡 104鍗风粫涓帶 寮�闂ㄤ俊鍙蜂紶閫� int comErr = 0;//鑷姩闂ㄦ帀绾� "鎷嗗寘闂村嵎甯橀棬139", "娑傚竷姝h礋鏋佸嵎甯橀棬142", double doorCode = 2.0; //鑷姩闂↖D double doorState = 24.0;//鑷姩闂ㄧ姸鎬侊紝1闂ㄥ叧鍒颁綅锛�2 闂ㄥ紑鍒颁綅锛�3闂ㄦ湭鍒颁綅 double doorOpen = 26.0; //鑷姩闂ㄦ帶鍒跺紑 + + int RKErr = 450;//鑷姩闂ㄦ帀绾� + double RKCode = 452.0; //鑷姩闂↖D + double RKState = 474.0;//鑷姩闂ㄧ姸鎬侊紝1闂ㄥ叧鍒颁綅锛�2 闂ㄥ紑鍒颁綅锛�3闂ㄦ湭鍒颁綅 + double RKOpen = 476.0; //鑷姩闂ㄦ帶鍒跺紑 try { if (agvjrplc == null) @@ -113,6 +121,54 @@ doorState += 30; doorOpen += 30; } + //鍏ュ3鍗峰笜闂� 24/12/12鏂板 + OperateResult<bool> R_RKOpen = agvjrplc.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1004." + RKOpen); + if (!R_RKOpen.IsSuccess) + { + return; + } + //AGV璇锋眰寮�闂� + if (R_RKOpen.Content) + { + OperateResult RKOpenJLM = oiplc1F.ModbusPLCClient.ModbusTcpNetClient.Write("s=2;12",true); + if (RKOpenJLM.IsSuccess) + { + OperateResult<bool> JLMOpen = oiplc1F.ModbusPLCClient.ModbusTcpNetClient.ReadBool("x=2;8612"); + if (JLMOpen.Content)//寮�闂ㄥ埌浣� + { + OperateResult W_stationDockSteps = agvjrplc.SiemensPLCClient.SiemensS7NetClient.Write("DB1004." + (RKState), 2); + } + else//闂ㄦ湭鍒颁綅 + { + OperateResult W_stationDockSteps = agvjrplc.SiemensPLCClient.SiemensS7NetClient.Write("DB1004." + (RKState), 3); + } + } + else + { + OperateResult W_stationDockSteps = agvjrplc.SiemensPLCClient.SiemensS7NetClient.Write("DB1004." + (RKErr), true); + } + } + else + { + //AGV涓嶇粰寮�闂ㄤ俊鍙风殑鏃跺�� 鏂紑寮�闂ㄤ俊鍙� + OperateResult RKOpenJLM = oiplc1F.ModbusPLCClient.ModbusTcpNetClient.Write("s=2;12", false); + if (RKOpenJLM.IsSuccess) + { + OperateResult<bool> JLMOpen = oiplc1F.ModbusPLCClient.ModbusTcpNetClient.ReadBool("x=2;8613"); + if (JLMOpen.Content)//鍏抽棬鍒颁綅 + { + OperateResult W_stationDockSteps = agvjrplc.SiemensPLCClient.SiemensS7NetClient.Write("DB1004." + (RKState), 1); + } + else//闂ㄦ湭鍒颁綅 + { + OperateResult W_stationDockSteps = agvjrplc.SiemensPLCClient.SiemensS7NetClient.Write("DB1004." + (RKState), 3); + } + } + else + { + OperateResult W_stationDockSteps = agvjrplc.SiemensPLCClient.SiemensS7NetClient.Write("DB1004." + (RKErr), true); + } + } } catch (Exception ex) { -- Gitblit v1.9.3