From 8f392cc88b0768b74efca3b68785cf5aa1c38e70 Mon Sep 17 00:00:00 2001 From: wangxinhui <wangxinhui@hnkhzn.com> Date: 星期三, 06 十一月 2024 14:28:20 +0800 Subject: [PATCH] 代码更新 --- wcs-server-hbf/WIDESEA_WCS/SchedulerExecute/AGV/heartbeatZJTB.cs | 2655 +++++++++++++++++++++++++++++++--------------------------- 1 files changed, 1,439 insertions(+), 1,216 deletions(-) diff --git a/wcs-server-hbf/WIDESEA_WCS/SchedulerExecute/AGV/heartbeatZJTB.cs b/wcs-server-hbf/WIDESEA_WCS/SchedulerExecute/AGV/heartbeatZJTB.cs index 25bfa64..17a6cb8 100644 --- a/wcs-server-hbf/WIDESEA_WCS/SchedulerExecute/AGV/heartbeatZJTB.cs +++ b/wcs-server-hbf/WIDESEA_WCS/SchedulerExecute/AGV/heartbeatZJTB.cs @@ -14,1269 +14,1492 @@ { public partial class heartbeatZJTB { - public static async void heartbeatWork() + private static int lockObj1 = 0; + public static void heartbeatWork() { - WriteLog.GetLog().Write($"寮�濮嬫椂闂达細{DateTime.Now} --------------", $"蹇冭烦鏃堕棿"); - VOLContext Context = new VOLContext(); - Idt_plcinfodetailRepository plcdetailRep = new dt_plcinfodetailRepository(Context); - Idt_plcinfoheadRepository plcheadRep = new dt_plcinfoheadRepository(Context); - PLCClient agvplcZ = WCSService.Clients.Find(v => v.PLCName == "姝f瀬AGV璋冨害"); - PLCClient agvplcF = WCSService.Clients.Find(v => v.PLCName == "璐熸瀬AGV璋冨害"); - PLCClient agvplc = WCSService.Clients.Find(v => v.PLCName == "缁勮AGV璋冨害"); - List<Task> taskList = new List<Task>(); - var tokenSource = new CancellationTokenSource(); - var token = tokenSource.Token; - #region 姝g骇娑傚竷鏈哄績璺充俊鍙蜂紶閫� - #region 姝g骇娑傚竷鏈轰竴鍙蜂俊鍙蜂紶閫� - await Task.Run(() => + if (lockObj1 == 0) { - try + lockObj1 = 1; { - var tbsb = "娑傚竷鏈烘鏋�1"; - - if (WCSService.Clients == null) + string tbsb = "娑傚竷鏈烘鏋�1"; + Task.Run(() => { - return; - } - PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); - if (tbplc == null) - { - return; - } - if (agvplcZ == null) - { - return; - } - #region 娑傚竷鏈烘鏋�1鍙疯澶囧績璺� - WriteLog.GetLog().Write($"{tbsb}蹇冭烦浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}蹇冭烦浼犻��"); - //璇诲彇娑傚竷鏈烘鏋�1鍙疯澶囧績璺� - OperateResult<bool> R_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11000.00"); - if (R_TBR_XT.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11000.00锛岃鍙栧�硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}淇℃伅浼犻��"); - return; - } - //娑傚竷鏈烘鏋�1鍙疯澶囧績璺斥�斿啓鍏モ�斻�嬫鏋丄GV璋冨害蹇冭烦 - OperateResult W_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.200.0", R_TBR_XT.Content); - if (W_AGV_XT.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName}蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.200.0, 鍐欏叆鍊硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - return; - } - //璇诲彇姝f瀬AGV璋冨害蹇冭烦 - OperateResult<bool> R_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.300.0"); - if (R_AGV_XT.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName}蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.300.0, 璇诲彇鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - return; - } - //姝f瀬AGV璋冨害鈥斿啓鍏モ�斻�嬫秱甯冩満姝f瀬1鍙疯澶囧績璺� - OperateResult W_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11100.00", R_AGV_XT.Content); - if (W_TBR_XT.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11100.00, 鍐欏叆鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - return; - } - WriteLog.GetLog().Write($"{tbsb}蹇冭烦浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - #endregion - - #region 娑傚竷鏈烘鏋�1鍙蜂笂鏂欏彛 - WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - //璇诲彇agv鎶ヨ淇″彿 - OperateResult<bool> R_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.392.0"); - if (R_AGV_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName}涓婃枡鍙f姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:DB1002.392.0, 璇诲彇鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //鍐欏叆娑傚竷璁惧 - OperateResult W_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.00", R_AGV_BJ.Content); - if (W_TBR_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙蜂笂鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11192.00, 鍐欏叆鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //璇诲彇璁惧鎶ヨ淇″彿 - OperateResult<bool> R_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.00"); - if (R_TBR_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙蜂笂鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11092.00, 璇诲彇鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //鍐欏叆agv - OperateResult W_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.292.0", R_TBR_BJ.Content); - if (W_AGV_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.292.0, 鍐欏叆鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //璇诲彇agv瀵规帴姝ラ娴佺▼ - OperateResult<Int16> R_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.390"); - if (R_AGV_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}涓婃枡鍙GV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.390, 璇诲彇鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //鍐欏叆娑傚竷璁惧 - OperateResult W_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11190", R_AGV_DJLC.Content); - if (W_TBR_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笂鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11190,鍐欏叆鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //璇诲彇娑傚竷璁惧瀵规帴娴佺▼ - OperateResult<Int16> R_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11090"); - if (R_TBR_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11090, 璇诲彇鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //鍐欏叆agv - OperateResult W_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.290", R_TBR_DJLC.Content); - if (W_AGV_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.290, 鍐欏叆鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - #endregion - - #region 娑傚竷鏈烘鏋�1鍙蜂笅鏂欏彛 - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - //璇诲彇娑傚竷鎶ヨ - OperateResult<bool> R_tbBJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11292.00"); - if (R_tbBJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11292.00, 璇诲彇鍊硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //鎶ヨ淇″彿鍐欏叆agv - OperateResult W_tbBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.493.2", R_tbBJ.Content); - if (W_tbBJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.493.2, 鍐欏叆鍊硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //璇诲彇agv鎶ヨ - OperateResult<bool> R_agvBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.592.0"); - if (R_agvBJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ}涓嬫枡鍙GV鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.592.0, 璇诲彇鍊硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //鎶ヨ淇″彿鍐欏叆娑傚竷鏈� - OperateResult W_agvBJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11392.00", R_agvBJ.Content); - if (W_agvBJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11392.00, 鍐欏叆鍊硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //璇诲彇agv姝ラ - OperateResult<Int16> R_agvBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.590.0"); - if (R_agvBZ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}鍙蜂笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.590.0, 璇诲彇鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - - if (R_agvBZ.Content > 0) - { - OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", true);//璇锋眰娑傚竷鏈哄紑闂� - if (W_TB1_OpenDoor.IsSuccess) + while (true) { - WriteLog.GetLog().Write($"璇锋眰{tbsb}鍙蜂笅鏂欏彛寮�闂�,DB鍋忕Щ鍊�:D11192.05, 鍐欏叆鍊硷細true, 鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - OperateResult<bool> R_TB_IsOpen = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.06");//娑傚竷鏈哄紑闂ㄥ畬鎴愪俊鍙� - if (R_TB_IsOpen.IsSuccess) + try { - WriteLog.GetLog().Write($"璇诲彇 {tbsb}鍙蜂笅鏂欏彛闂ㄤ俊鎭垚鍔�,DB鍋忕Щ鍊�:D11092.06, 璇诲彇鍊硷細{R_TB_IsOpen.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - if (R_TB_IsOpen.Content) + if (WCSService.Clients == null) + { + continue; + } + PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); + if (tbplc == null) + { + continue; + } + PLCClient agvplcZ = WCSService.Clients.Find(v => v.PLCName == "姝f瀬AGV璋冨害"); + if (agvplcZ == null) + { + continue; + } + #region 娑傚竷鏈烘鏋�1鍙疯澶囧績璺� + WriteLog.GetLog().Write($"{tbsb}蹇冭烦浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}蹇冭烦浼犻��"); + //璇诲彇娑傚竷鏈烘鏋�1鍙疯澶囧績璺� + OperateResult<bool> R_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11000.00"); + //if (R_TBR_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11000.00锛岃鍙栧�硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}淇℃伅浼犻��"); + // return; + //} + ////娑傚竷鏈烘鏋�1鍙疯澶囧績璺斥�斿啓鍏モ�斻�嬫鏋丄GV璋冨害蹇冭烦 + OperateResult W_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.200.0", R_TBR_XT.Content); + //if (W_AGV_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName}蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.200.0, 鍐欏叆鍊硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + // return; + //} + ////璇诲彇姝f瀬AGV璋冨害蹇冭烦 + OperateResult<bool> R_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.300.0"); + //if (R_AGV_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName}蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.300.0, 璇诲彇鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + // return; + //} + ////姝f瀬AGV璋冨害鈥斿啓鍏モ�斻�嬫秱甯冩満姝f瀬1鍙疯澶囧績璺� + OperateResult W_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11100.00", R_AGV_XT.Content); + //if (W_TBR_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11100.00, 鍐欏叆鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + // return; + //} + WriteLog.GetLog().Write($"{tbsb}蹇冭烦浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + #endregion + } + catch (Exception ex) { } + Thread.Sleep(200); + } + + }); + + Task.Run(() => + { + while (true) + { + try + { + if (WCSService.Clients == null) + { + continue; + } + PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); + if (tbplc == null) + { + continue; + } + PLCClient agvplcZ = WCSService.Clients.Find(v => v.PLCName == "姝f瀬AGV璋冨害"); + if (agvplcZ == null) + { + continue; + } + #region 娑傚竷鏈烘鏋�1鍙蜂笂鏂欏彛 + WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //璇诲彇agv鎶ヨ淇″彿 + OperateResult<bool> R_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.392.0"); + //if (R_AGV_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName}涓婃枡鍙f姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:DB1002.392.0, 璇诲彇鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////鍐欏叆娑傚竷璁惧 + OperateResult W_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.00", R_AGV_BJ.Content); + //if (W_TBR_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙蜂笂鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11192.00, 鍐欏叆鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇璁惧鎶ヨ淇″彿 + OperateResult<bool> R_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.00"); + //if (R_TBR_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙蜂笂鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11092.00, 璇诲彇鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////鍐欏叆agv + OperateResult W_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.292.0", R_TBR_BJ.Content); + //if (W_AGV_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.292.0, 鍐欏叆鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇agv瀵规帴姝ラ娴佺▼ + OperateResult<Int16> R_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.390"); + //if (R_AGV_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}涓婃枡鍙GV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.390, 璇诲彇鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////鍐欏叆娑傚竷璁惧 + OperateResult W_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11190", R_AGV_DJLC.Content); + //if (W_TBR_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笂鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11190,鍐欏叆鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇娑傚竷璁惧瀵规帴娴佺▼ + OperateResult<Int16> R_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11090"); + //if (R_TBR_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11090, 璇诲彇鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////鍐欏叆agv + OperateResult W_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.290", R_TBR_DJLC.Content); + //if (W_AGV_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.290, 鍐欏叆鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + #endregion + } + catch (Exception ex) + { + + } + Thread.Sleep(200); + } + }); + + Task.Run(() => + { + while (true) + { + try + { + if (WCSService.Clients == null) + { + continue; + } + PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); + if (tbplc == null) + { + continue; + } + PLCClient agvplcZ = WCSService.Clients.Find(v => v.PLCName == "姝f瀬AGV璋冨害"); + if (agvplcZ == null) + { + continue; + } + #region 娑傚竷鏈烘鏋�1鍙蜂笅鏂欏彛 + WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //璇诲彇娑傚竷鎶ヨ + OperateResult<bool> R_tbBJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11292.00"); + //if (R_tbBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11292.00, 璇诲彇鍊硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////鎶ヨ淇″彿鍐欏叆agv + OperateResult W_tbBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.493.2", R_tbBJ.Content); + //if (W_tbBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.493.2, 鍐欏叆鍊硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇agv鎶ヨ + OperateResult<bool> R_agvBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.592.0"); + //if (R_agvBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ}涓嬫枡鍙GV鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.592.0, 璇诲彇鍊硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////鎶ヨ淇″彿鍐欏叆娑傚竷鏈� + OperateResult W_agvBJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11392.00", R_agvBJ.Content); + //if (W_agvBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11392.00, 鍐欏叆鍊硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇agv姝ラ + OperateResult<Int16> R_agvBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.590.0"); + //if (R_agvBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}鍙蜂笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.590.0, 璇诲彇鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + + if (R_agvBZ.Content > 0) + { + OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", true);//璇锋眰娑傚竷鏈哄紑闂� + //if (W_TB1_OpenDoor.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇锋眰{tbsb}鍙蜂笅鏂欏彛寮�闂�,DB鍋忕Щ鍊�:D11192.05, 鍐欏叆鍊硷細true, 鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + OperateResult<bool> R_TB_IsOpen = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.06");//娑傚竷鏈哄紑闂ㄥ畬鎴愪俊鍙� + //if (R_TB_IsOpen.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇 {tbsb}鍙蜂笅鏂欏彛闂ㄤ俊鎭垚鍔�,DB鍋忕Щ鍊�:D11092.06, 璇诲彇鍊硷細{R_TB_IsOpen.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + if (R_TB_IsOpen.Content) + { + //鍐欑粰娑傚竷鏈� + OperateResult W_agvBZ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11390", R_agvBZ.Content); + //if (W_agvBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390, 鍐欏叆鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}淇℃伅浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}淇℃伅浼犻��"); + //} + //璇诲彇璁惧姝ラ + OperateResult<Int16> R_tbBZ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11290"); + //if (R_tbBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11290, 璇诲彇鍊硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}淇℃伅浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}淇℃伅浼犻��"); + //} + //姝ラ淇″彿鍐欏叆agv + OperateResult W_tbBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.490.0", R_tbBZ.Content); + // if (W_tbBZ.IsSuccess) + // { + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.490.0, 鍐欏叆鍊硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}淇℃伅浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------{Environment.NewLine} ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // } + // else + // { + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}淇℃伅浼犻��"); + // } + // } + // else + // { + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛闂ㄥ綋鍓嶆湭寮�闂ㄥ埌浣嶏紝姝ゅ洖璇濈粨鏉燂紝绛夊緟寮�闂ㄥ埌浣�", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------{Environment.NewLine} ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + // } + // } + // else + // { + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + // } + + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}淇℃伅浼犻��"); + // return; + } + } + + else if (R_agvBZ.Content == 0) { //鍐欑粰娑傚竷鏈� OperateResult W_agvBZ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11390", R_agvBZ.Content); - if (W_agvBZ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390, 鍐欏叆鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}淇℃伅浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}淇℃伅浼犻��"); - } - //璇诲彇璁惧姝ラ - OperateResult<Int16> R_tbBZ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11290"); - if (R_tbBZ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11290, 璇诲彇鍊硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}淇℃伅浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}淇℃伅浼犻��"); - } - //姝ラ淇″彿鍐欏叆agv - OperateResult W_tbBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.490.0", R_tbBZ.Content); - if (W_tbBZ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.490.0, 鍐欏叆鍊硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}淇℃伅浼犻��"); - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------{Environment.NewLine} ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}淇℃伅浼犻��"); - } + //if (W_agvBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390, 鍐欏叆鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", false);//璇锋眰娑傚竷鏈哄叧闂� + //if (W_TB1_OpenDoor.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇锋眰{tbsb}鍙蜂笅鏂欏彛鍏抽棬,DB鍋忕Щ鍊�:D11192.05, 鍐欏叆鍊硷細false, 鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------{Environment.NewLine} ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} } - else + //else { - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛闂ㄥ綋鍓嶆湭寮�闂ㄥ埌浣嶏紝姝ゅ洖璇濈粨鏉燂紝绛夊緟寮�闂ㄥ埌浣�", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------{Environment.NewLine} ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; + WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); } + #endregion } - else + catch (Exception ex) { } + Thread.Sleep(200); + } + }); + } + + { + string tbsb = "娑傚竷鏈烘鏋�2"; + Task.Run(() => + { + while (true) + { + try { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; + if (WCSService.Clients == null) + { + continue; + } + PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); + if (tbplc == null) + { + continue; + } + PLCClient agvplcZ = WCSService.Clients.Find(v => v.PLCName == "姝f瀬AGV璋冨害"); + if (agvplcZ == null) + { + continue; + } + #region 娑傚竷鏈烘鏋�2鍙疯澶囧績璺� + WriteLog.GetLog().Write($"{tbsb}蹇冭烦浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}蹇冭烦浼犻��"); + //璇诲彇娑傚竷鏈烘鏋�2鍙疯澶囧績璺� + OperateResult<bool> R_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11000.00"); + //if (R_TBR_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11000.00, 璇诲彇鍊硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + // return; + //} + ////娑傚竷鏈烘鏋�1鍙疯澶囧績璺斥�斿啓鍏モ�斻�嬫鏋丄GV璋冨害蹇冭烦 + OperateResult W_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.600.0", R_TBR_XT.Content); + //if (W_AGV_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆姝f瀬AGV璋冨害蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.600.0, 鍐欏叆鍊硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + // return; + //} + ////璇诲彇姝f瀬AGV璋冨害蹇冭烦 + OperateResult<bool> R_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.700.0"); + //if (R_AGV_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇姝f瀬AGV璋冨害蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.700.0, 璇诲彇鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + // return; + //} + ////姝f瀬AGV璋冨害鈥斿啓鍏モ�斻�嬫秱甯冩満姝f瀬1鍙疯澶囧績璺� + OperateResult W_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11100.00", R_AGV_XT.Content); + //if (W_TBR_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11100.00, 鍐欏叆鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}蹇冭烦浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + // return; + //} + WriteLog.GetLog().Write($"{tbsb}蹇冭烦浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}蹇冭烦浼犻��"); + #endregion } - + catch (Exception ex) { } + Thread.Sleep(200); } - else + + }); + + Task.Run(() => + { + while (true) { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}淇℃伅浼犻��"); - return; - } - } - - else if (R_agvBZ.Content == 0) - { - //鍐欑粰娑傚竷鏈� - OperateResult W_agvBZ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11390", R_agvBZ.Content); - if (W_agvBZ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390, 鍐欏叆鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", false);//璇锋眰娑傚竷鏈哄叧闂� - if (W_TB1_OpenDoor.IsSuccess) - { - WriteLog.GetLog().Write($"璇锋眰{tbsb}鍙蜂笅鏂欏彛鍏抽棬,DB鍋忕Щ鍊�:D11192.05, 鍐欏叆鍊硷細false, 鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------{Environment.NewLine} ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - } - else - { - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - #endregion - } - catch (Exception ex) - { - WriteLog.GetLog().Write($"閫氳寮傚父锛屽唴瀹癸細{ex.Message},鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"娑傚竷鏈烘鏋�1鍙蜂笅鏂欏彛浼犻��"); - } - }); - - #endregion - #region 姝g骇娑傚竷鏈轰簩鍙蜂俊鍙蜂紶閫� - await Task.Run(() => - { - try - { - var tbsb = "娑傚竷鏈烘鏋�2"; - - if (WCSService.Clients == null) - { - return; - } - PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); - if (tbplc == null) - { - return; - } - if (agvplcZ == null) - { - return; - } - #region 娑傚竷鏈烘鏋�2鍙疯澶囧績璺� - WriteLog.GetLog().Write($"{tbsb}蹇冭烦浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}蹇冭烦浼犻��"); - //璇诲彇娑傚竷鏈烘鏋�2鍙疯澶囧績璺� - OperateResult<bool> R_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11000.00"); - if (R_TBR_XT.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11000.00, 璇诲彇鍊硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - return; - } - //娑傚竷鏈烘鏋�1鍙疯澶囧績璺斥�斿啓鍏モ�斻�嬫鏋丄GV璋冨害蹇冭烦 - OperateResult W_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.600.0", R_TBR_XT.Content); - if (W_AGV_XT.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆姝f瀬AGV璋冨害蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.600.0, 鍐欏叆鍊硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - return; - } - //璇诲彇姝f瀬AGV璋冨害蹇冭烦 - OperateResult<bool> R_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.700.0"); - if (R_AGV_XT.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇姝f瀬AGV璋冨害蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.700.0, 璇诲彇鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - - } - else - { - WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - return; - } - //姝f瀬AGV璋冨害鈥斿啓鍏モ�斻�嬫秱甯冩満姝f瀬1鍙疯澶囧績璺� - OperateResult W_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11100.00", R_AGV_XT.Content); - if (W_TBR_XT.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11100.00, 鍐欏叆鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - WriteLog.GetLog().Write($"{tbsb}蹇冭烦浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - return; - } - #endregion - - #region 娑傚竷鏈烘鏋�2鍙蜂笂鏂欏彛 - WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - //璇诲彇agv鎶ヨ淇″彿 - OperateResult<bool> R_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.792.0"); - if (R_AGV_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName}涓婃枡鍙f姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:DB1002.792.0, 璇诲彇鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //鍐欏叆娑傚竷璁惧 - OperateResult W_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.00", R_AGV_BJ.Content); - if (W_TBR_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙锋姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:D11192.00, 鍐欏叆鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //璇诲彇璁惧鎶ヨ淇″彿 - OperateResult<bool> R_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.00"); - if (R_TBR_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囨姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:D11092.00, 璇诲彇鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //鍐欏叆agv - OperateResult W_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.692.0", R_TBR_BJ.Content); - if (W_AGV_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.692.0, 鍐欏叆鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //璇诲彇agv瀵规帴姝ラ娴佺▼ - OperateResult<Int16> R_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.790"); - if (R_AGV_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}涓婃枡鍙GV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.790, 璇诲彇鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - //鍐欏叆娑傚竷璁惧 - OperateResult W_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11190", R_AGV_DJLC.Content); - if (W_TBR_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笂鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11190, 鍐欏叆鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - //璇诲彇娑傚竷璁惧瀵规帴娴佺▼ - OperateResult<Int16> R_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11090"); - if (R_TBR_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11090, 璇诲彇鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - //鍐欏叆agv - OperateResult W_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.690", R_TBR_DJLC.Content); - if (W_AGV_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.690, 鍐欏叆鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - #endregion - - #region 娑傚竷鏈烘鏋�2鍙蜂笅鏂欏彛 - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - //璇诲彇娑傚竷鎶ヨ - OperateResult<bool> R_tbBJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11292.00"); - if (R_tbBJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11292.00锛� 璇诲彇鍊硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //鎶ヨ淇″彿鍐欏叆agv - OperateResult W_tbBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.893.2", R_tbBJ.Content); - if (W_tbBJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.893.2锛屽啓鍏ュ�硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //璇诲彇agv鎶ヨ - OperateResult<bool> R_agvBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.992.0"); - if (R_agvBJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ}涓嬫枡鍙GV鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.992.0锛岃鍙栧�硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //鎶ヨ淇″彿鍐欏叆娑傚竷鏈� - OperateResult W_agvBJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11392.00", R_agvBJ.Content); - if (W_agvBJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11392.00锛屽啓鍏ュ�硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //璇诲彇agv姝ラ - OperateResult<Int16> R_agvBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.990.0"); - if (R_agvBZ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}涓嬫枡鍙GV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.990.0锛岃鍙栧�硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - - if (R_agvBZ.Content > 0) - { - OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", true);//璇锋眰娑傚竷鏈哄紑闂� - if (W_TB1_OpenDoor.IsSuccess) - { - WriteLog.GetLog().Write($"璇锋眰{tbsb}鍙蜂笅鏂欏彛寮�闂�,DB鍋忕Щ鍊�:D11192.05, 鍐欏叆鍊硷細true, 鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - OperateResult<bool> R_TB_IsOpen = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.06");//娑傚竷鏈哄紑闂ㄥ畬鎴愪俊鍙� - if (R_TB_IsOpen.IsSuccess) + try { - WriteLog.GetLog().Write($"璇诲彇 {tbsb}鍙蜂笅鏂欏彛闂ㄤ俊鎭垚鍔�,DB鍋忕Щ鍊�:D11092.06, 璇诲彇鍊硷細{R_TB_IsOpen.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - if (R_TB_IsOpen.Content) + if (WCSService.Clients == null) + { + continue; + } + PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); + if (tbplc == null) + { + continue; + } + PLCClient agvplcZ = WCSService.Clients.Find(v => v.PLCName == "姝f瀬AGV璋冨害"); + if (agvplcZ == null) + { + continue; + } + #region 娑傚竷鏈烘鏋�2鍙蜂笂鏂欏彛 + WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //璇诲彇agv鎶ヨ淇″彿 + OperateResult<bool> R_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.792.0"); + //if (R_AGV_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName}涓婃枡鍙f姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:DB1002.792.0, 璇诲彇鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////鍐欏叆娑傚竷璁惧 + OperateResult W_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.00", R_AGV_BJ.Content); + //if (W_TBR_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙锋姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:D11192.00, 鍐欏叆鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇璁惧鎶ヨ淇″彿 + OperateResult<bool> R_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.00"); + //if (R_TBR_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囨姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:D11092.00, 璇诲彇鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////鍐欏叆agv + OperateResult W_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.692.0", R_TBR_BJ.Content); + //if (W_AGV_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.692.0, 鍐欏叆鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇agv瀵规帴姝ラ娴佺▼ + OperateResult<Int16> R_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.790"); + //if (R_AGV_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}涓婃枡鍙GV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.790, 璇诲彇鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + ////鍐欏叆娑傚竷璁惧 + OperateResult W_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11190", R_AGV_DJLC.Content); + //if (W_TBR_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笂鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11190, 鍐欏叆鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + ////璇诲彇娑傚竷璁惧瀵规帴娴佺▼ + OperateResult<Int16> R_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11090"); + //if (R_TBR_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11090, 璇诲彇鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + ////鍐欏叆agv + OperateResult W_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.690", R_TBR_DJLC.Content); + //if (W_AGV_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.690, 鍐欏叆鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + #endregion + } + catch (Exception ex) + { + + } + Thread.Sleep(200); + } + }); + + Task.Run(() => + { + while (true) + { + try + { + if (WCSService.Clients == null) + { + continue; + } + PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); + if (tbplc == null) + { + continue; + } + PLCClient agvplcZ = WCSService.Clients.Find(v => v.PLCName == "姝f瀬AGV璋冨害"); + if (agvplcZ == null) + { + continue; + } + #region 娑傚竷鏈烘鏋�2鍙蜂笅鏂欏彛 + WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //璇诲彇娑傚竷鎶ヨ + OperateResult<bool> R_tbBJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11292.00"); + //if (R_tbBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11292.00锛� 璇诲彇鍊硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////鎶ヨ淇″彿鍐欏叆agv + OperateResult W_tbBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.893.2", R_tbBJ.Content); + //if (W_tbBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.893.2锛屽啓鍏ュ�硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇agv鎶ヨ + OperateResult<bool> R_agvBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.992.0"); + //if (R_agvBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ}涓嬫枡鍙GV鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.992.0锛岃鍙栧�硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////鎶ヨ淇″彿鍐欏叆娑傚竷鏈� + OperateResult W_agvBJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11392.00", R_agvBJ.Content); + //if (W_agvBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11392.00锛屽啓鍏ュ�硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇agv姝ラ + OperateResult<Int16> R_agvBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.990.0"); + //if (R_agvBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}涓嬫枡鍙GV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.990.0锛岃鍙栧�硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + + if (R_agvBZ.Content > 0) + { + OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", true);//璇锋眰娑傚竷鏈哄紑闂� + //if (W_TB1_OpenDoor.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇锋眰{tbsb}鍙蜂笅鏂欏彛寮�闂�,DB鍋忕Щ鍊�:D11192.05, 鍐欏叆鍊硷細true, 鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + OperateResult<bool> R_TB_IsOpen = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.06");//娑傚竷鏈哄紑闂ㄥ畬鎴愪俊鍙� + //if (R_TB_IsOpen.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇 {tbsb}鍙蜂笅鏂欏彛闂ㄤ俊鎭垚鍔�,DB鍋忕Щ鍊�:D11092.06, 璇诲彇鍊硷細{R_TB_IsOpen.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + if (R_TB_IsOpen.Content) + { + //鍐欑粰娑傚竷鏈� + OperateResult W_agvBZ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11390", R_agvBZ.Content); + //if (W_agvBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390锛屽啓鍏ュ�硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + //璇诲彇璁惧姝ラ + OperateResult<Int16> R_tbBZ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11290"); + //if (R_tbBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11290锛岃鍙栧�硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + //姝ラ淇″彿鍐欏叆agv + OperateResult W_tbBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.890.0", R_tbBZ.Content); + // if (W_tbBZ.IsSuccess) + // { + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.890.0锛屽啓鍏ュ�硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // } + // else + // { + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + // } + // } + // else + // { + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛闂ㄥ綋鍓嶆湭寮�闂ㄥ埌浣嶏紝姝ゅ洖璇濈粨鏉燂紝绛夊緟寮�闂ㄥ埌浣�", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + // } + // } + // else + // { + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + // } + + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + } + } + else if (R_agvBZ.Content == 0) { //鍐欑粰娑傚竷鏈� OperateResult W_agvBZ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11390", R_agvBZ.Content); - if (W_agvBZ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390锛屽啓鍏ュ�硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //璇诲彇璁惧姝ラ - OperateResult<Int16> R_tbBZ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11290"); - if (R_tbBZ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11290锛岃鍙栧�硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //姝ラ淇″彿鍐欏叆agv - OperateResult W_tbBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.890.0", R_tbBZ.Content); - if (W_tbBZ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.890.0锛屽啓鍏ュ�硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } + //if (W_agvBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390锛屽啓鍏ュ�硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", false);//璇锋眰娑傚竷鏈哄叧闂� + //if (W_TB1_OpenDoor.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇锋眰{tbsb}鍙蜂笅鏂欏彛鍏抽棬,DB鍋忕Щ鍊�:D11192.05, 鍐欏叆鍊硷細false, 鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------{Environment.NewLine} ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} } - else - { - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛闂ㄥ綋鍓嶆湭寮�闂ㄥ埌浣嶏紝姝ゅ洖璇濈粨鏉燂紝绛夊緟寮�闂ㄥ埌浣�", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } + + WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + #endregion } - else + catch (Exception ex) { } + Thread.Sleep(200); + } + }); + } + + { + string tbsb = "娑傚竷鏈烘鏋�3"; + Task.Run(() => + { + while (true) + { + try { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; + if (WCSService.Clients == null) + { + continue; + } + PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); + if (tbplc == null) + { + continue; + } + PLCClient agvplcZ = WCSService.Clients.Find(v => v.PLCName == "姝f瀬AGV璋冨害"); + if (agvplcZ == null) + { + continue; + } + #region 娑傚竷鏈烘鏋�3鍙疯澶囧績璺� + WriteLog.GetLog().Write($"{tbsb}蹇冭烦浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} --------------", $"{tbsb}蹇冭烦浼犻��"); + //璇诲彇娑傚竷鏈烘鏋�3鍙疯澶囧績璺� + OperateResult<bool> R_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11000.00"); + //if (R_TBR_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11000.00, 璇诲彇鍊硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + // return; + //} + ////娑傚竷鏈烘鏋�1鍙疯澶囧績璺斥�斿啓鍏モ�斻�嬫鏋丄GV璋冨害蹇冭烦 + OperateResult W_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1000.0", R_TBR_XT.Content); + //if (W_AGV_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆姝f瀬AGV璋冨害蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1000.0,鍐欏叆鍊硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + // return; + //} + ////璇诲彇姝f瀬AGV璋冨害蹇冭烦 + OperateResult<bool> R_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.1100.0"); + //if (R_AGV_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇姝f瀬AGV璋冨害蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1100.0,璇诲彇鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + // return; + //} + ////姝f瀬AGV璋冨害鈥斿啓鍏モ�斻�嬫秱甯冩満姝f瀬1鍙疯澶囧績璺� + OperateResult W_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11100.00", R_AGV_XT.Content); + //if (W_TBR_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11100.00,鍐欏叆鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}蹇冭烦浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + // return; + //} + WriteLog.GetLog().Write($"{tbsb}蹇冭烦浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------", $"{tbsb}蹇冭烦浼犻��"); + #endregion } - + catch (Exception ex) { } + Thread.Sleep(200); } - else - { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - } - else if (R_agvBZ.Content == 0) - { - //鍐欑粰娑傚竷鏈� - OperateResult W_agvBZ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11390", R_agvBZ.Content); - if (W_agvBZ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390锛屽啓鍏ュ�硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", false);//璇锋眰娑傚竷鏈哄叧闂� - if (W_TB1_OpenDoor.IsSuccess) - { - WriteLog.GetLog().Write($"璇锋眰{tbsb}鍙蜂笅鏂欏彛鍏抽棬,DB鍋忕Щ鍊�:D11192.05, 鍐欏叆鍊硷細false, 鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------{Environment.NewLine} ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - } - #endregion - } - catch (Exception) - { - throw; - } + }); - }); - - - #endregion - #region 姝g骇娑傚竷鏈轰笁鍙蜂俊鍙蜂紶閫� - await Task.Run(() => - { - try - { - var tbsb = "娑傚竷鏈烘鏋�3"; - if (WCSService.Clients == null) + Task.Run(() => { - return; - } - PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); - if (tbplc == null) - { - return; - } - if (agvplcZ == null) - { - return; - } - #region 娑傚竷鏈烘鏋�3鍙疯澶囧績璺� - WriteLog.GetLog().Write($"{tbsb}蹇冭烦浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} --------------", $"{tbsb}蹇冭烦浼犻��"); - //璇诲彇娑傚竷鏈烘鏋�3鍙疯澶囧績璺� - OperateResult<bool> R_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11000.00"); - if (R_TBR_XT.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11000.00, 璇诲彇鍊硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - return; - } - //娑傚竷鏈烘鏋�1鍙疯澶囧績璺斥�斿啓鍏モ�斻�嬫鏋丄GV璋冨害蹇冭烦 - OperateResult W_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1000.0", R_TBR_XT.Content); - if (W_AGV_XT.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆姝f瀬AGV璋冨害蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1000.0,鍐欏叆鍊硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - return; - } - //璇诲彇姝f瀬AGV璋冨害蹇冭烦 - OperateResult<bool> R_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.1100.0"); - if (R_AGV_XT.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇姝f瀬AGV璋冨害蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1100.0,璇诲彇鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - return; - } - //姝f瀬AGV璋冨害鈥斿啓鍏モ�斻�嬫秱甯冩満姝f瀬1鍙疯澶囧績璺� - OperateResult W_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11100.00", R_AGV_XT.Content); - if (W_TBR_XT.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11100.00,鍐欏叆鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - WriteLog.GetLog().Write($"{tbsb}蹇冭烦浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - return; - } - #endregion - #region 娑傚竷鏈烘鏋�3鍙蜂笂鏂欏彛 - WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} --------------", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - //璇诲彇agv鎶ヨ淇″彿 - OperateResult<bool> R_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.1192.0"); - if (R_AGV_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName}涓婃枡鍙f姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:DB1002.1192.0,璇诲彇鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //鍐欏叆娑傚竷璁惧 - OperateResult W_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.00", R_AGV_BJ.Content); - if (W_TBR_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙锋姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:,鍐欏叆鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //璇诲彇璁惧鎶ヨ淇″彿 - OperateResult<bool> R_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.00"); - if (R_TBR_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囨姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:D11092.00,璇诲彇鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //鍐欏叆agv - OperateResult W_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1092.0", R_TBR_BJ.Content); - if (W_AGV_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1092.0,鍐欏叆鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //璇诲彇agv瀵规帴姝ラ娴佺▼ - OperateResult<Int16> R_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.1190"); - if (R_AGV_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}涓婃枡鍙GV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1190,璇诲彇鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - //鍐欏叆娑傚竷璁惧 - OperateResult W_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11190", R_AGV_DJLC.Content); - if (W_TBR_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笂鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11190,鍐欏叆鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //璇诲彇娑傚竷璁惧瀵规帴娴佺▼ - OperateResult<Int16> R_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11090"); - if (R_TBR_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11090,璇诲彇鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //鍐欏叆agv - OperateResult W_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1090", R_TBR_DJLC.Content); - if (W_AGV_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1090,鍐欏叆鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - #endregion - #region 娑傚竷鏈烘鏋�3鍙蜂笅鏂欏彛 - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} --------------", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - //璇诲彇娑傚竷鎶ヨ - OperateResult<bool> R_tbBJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11292.00"); - if (R_tbBJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11292.00,璇诲彇鍊硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //鎶ヨ淇″彿鍐欏叆agv - OperateResult W_tbBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1293.2", R_tbBJ.Content); - if (W_tbBJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1293.2,鍐欏叆鍊硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //璇诲彇agv鎶ヨ - OperateResult<bool> R_agvBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.1392.0"); - if (R_agvBJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ}涓嬫枡鍙GV鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1392.0,璇诲彇鍊硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //鎶ヨ淇″彿鍐欏叆娑傚竷鏈� - OperateResult W_agvBJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11392.00", R_agvBJ.Content); - if (W_agvBJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11392.00,鍐欏叆鍊硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //璇诲彇agv姝ラ - OperateResult<Int16> R_agvBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.1390.0"); - if (R_agvBZ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}涓嬫枡鍙GV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1390.0,璇诲彇鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - - if (R_agvBZ.Content > 0) - { - OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", true);//璇锋眰娑傚竷鏈哄紑闂� - if (W_TB1_OpenDoor.IsSuccess) + while (true) { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛寮�闂ㄤ俊鎭垚鍔�,DB鍋忕Щ鍊�:D11192.05,鍐欏叆鍊硷細true,鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - OperateResult<bool> R_TB_IsOpen = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.06");//娑傚竷鏈哄紑闂ㄥ畬鎴愪俊鍙� - if (R_TB_IsOpen.Content) + try { - WriteLog.GetLog().Write($"璇诲彇 {tbsb}鍙疯澶囦笅鏂欏彛闂ㄤ俊鎭垚鍔�,DB鍋忕Щ鍊�:D11192.06,璇诲彇鍊硷細{R_TB_IsOpen.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - //鍐欑粰娑傚竷鏈� - OperateResult W_agvBZ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11390", R_agvBZ.Content); - if (W_agvBZ.IsSuccess) + if (WCSService.Clients == null) { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390,鍐欏叆鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + continue; } - else + PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); + if (tbplc == null) { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; + continue; } - //璇诲彇璁惧姝ラ - OperateResult<Int16> R_tbBZ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11290"); - if (R_tbBZ.IsSuccess) + PLCClient agvplcZ = WCSService.Clients.Find(v => v.PLCName == "姝f瀬AGV璋冨害"); + if (agvplcZ == null) { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11290,璇诲彇鍊硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + continue; } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //姝ラ淇″彿鍐欏叆agv - OperateResult W_tbBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1290.0", R_tbBZ.Content); - if (W_tbBZ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1290.0,鍐欏叆鍊硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------{Environment.NewLine} ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } + #region 娑傚竷鏈烘鏋�3鍙蜂笂鏂欏彛 + WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} --------------", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //璇诲彇agv鎶ヨ淇″彿 + OperateResult<bool> R_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.1192.0"); + //if (R_AGV_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName}涓婃枡鍙f姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:DB1002.1192.0,璇诲彇鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////鍐欏叆娑傚竷璁惧 + OperateResult W_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.00", R_AGV_BJ.Content); + //if (W_TBR_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙锋姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:,鍐欏叆鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇璁惧鎶ヨ淇″彿 + OperateResult<bool> R_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.00"); + //if (R_TBR_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囨姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:D11092.00,璇诲彇鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////鍐欏叆agv + OperateResult W_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1092.0", R_TBR_BJ.Content); + //if (W_AGV_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1092.0,鍐欏叆鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇agv瀵规帴姝ラ娴佺▼ + OperateResult<Int16> R_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.1190"); + //if (R_AGV_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}涓婃枡鍙GV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1190,璇诲彇鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + ////鍐欏叆娑傚竷璁惧 + OperateResult W_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11190", R_AGV_DJLC.Content); + //if (W_TBR_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笂鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11190,鍐欏叆鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇娑傚竷璁惧瀵规帴娴佺▼ + OperateResult<Int16> R_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11090"); + //if (R_TBR_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11090,璇诲彇鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////鍐欏叆agv + OperateResult W_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1090", R_TBR_DJLC.Content); + //if (W_AGV_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1090,鍐欏叆鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + #endregion } - } - } - else if (R_agvBZ.Content == 0) - { //鍐欑粰娑傚竷鏈� - OperateResult W_agvBZ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11390", R_agvBZ.Content); - if (W_agvBZ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390,鍐欏叆鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", false);//璇锋眰娑傚竷鏈哄叧闂� - if (W_TB1_OpenDoor.IsSuccess) - { - WriteLog.GetLog().Write($"璇锋眰{tbsb}鍙蜂笅鏂欏彛鍏抽棬,DB鍋忕Щ鍊�:D11192.05, 鍐欏叆鍊硷細false, 鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------{Environment.NewLine} ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - } - #endregion - } - catch (Exception) - { - - throw; - } - - }); - #endregion - #region 姝g骇娑傚竷鏈哄洓鍙蜂俊鍙蜂紶閫� - await Task.Run(() => - { - try - { - var tbsb = "娑傚竷鏈烘鏋�4"; - - if (WCSService.Clients == null) - { - return; - } - PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); - if (tbplc == null) - { - return; - } - if (agvplcZ == null) - { - return; - } - #region 娑傚竷鏈烘鏋�4鍙疯澶囧績璺� - WriteLog.GetLog().Write($"{tbsb}鍙峰績璺充紶閫掑紑濮�,鏃堕棿锛歿DateTime.Now} --------------", $"{tbsb}蹇冭烦浼犻��"); - //璇诲彇娑傚竷鏈烘鏋�4鍙疯澶囧績璺� - OperateResult<bool> R_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11000.00"); - if (R_TBR_XT.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11000.00,璇诲彇鍊硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - return; - } - //娑傚竷鏈烘鏋�1鍙疯澶囧績璺斥�斿啓鍏モ�斻�嬫鏋丄GV璋冨害蹇冭烦 - OperateResult W_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1400.0", R_TBR_XT.Content); - if (W_AGV_XT.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆姝f瀬AGV璋冨害蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1400.0,鍐欏叆鍊硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - return; - } - //璇诲彇姝f瀬AGV璋冨害蹇冭烦 - OperateResult<bool> R_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.1500.0"); - if (R_AGV_XT.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇姝f瀬AGV璋冨害蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1500.0,璇诲彇鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - return; - } - //姝f瀬AGV璋冨害鈥斿啓鍏モ�斻�嬫秱甯冩満姝f瀬1鍙疯澶囧績璺� - OperateResult W_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11100.00", R_AGV_XT.Content); - if (W_TBR_XT.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11100.00,鍐欏叆鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); - WriteLog.GetLog().Write($"{tbsb}鍙峰績璺充紶閫掑��,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); - return; - } - #endregion - #region 娑傚竷鏈烘鏋�4鍙蜂笂鏂欏彛 - WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掑紑濮� 鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - //璇诲彇agv鎶ヨ淇″彿 - OperateResult<bool> R_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.1592.0"); - if (R_AGV_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName}涓婃枡鍙f姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:DB1002.1592.0,璇诲彇鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //鍐欏叆娑傚竷璁惧 - OperateResult W_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.00", R_AGV_BJ.Content); - if (W_TBR_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙锋姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:D11192.00,鍐欏叆鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //璇诲彇璁惧鎶ヨ淇″彿 - OperateResult<bool> R_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.00"); - if (R_TBR_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囨姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:D11092.00,璇诲彇鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //鍐欏叆agv - OperateResult W_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1492.0", R_TBR_BJ.Content); - if (W_AGV_BJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1492.0,鍐欏叆鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //璇诲彇agv瀵规帴姝ラ娴佺▼ - OperateResult<Int16> R_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.1590"); - if (R_AGV_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}涓婃枡鍙GV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1590,璇诲彇鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //鍐欏叆娑傚竷璁惧 - OperateResult W_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11190", R_AGV_DJLC.Content); - if (W_TBR_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笂鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11190,鍐欏叆鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //璇诲彇娑傚竷璁惧瀵规帴娴佺▼ - OperateResult<Int16> R_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11090"); - if (R_TBR_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11090,璇诲彇鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - //鍐欏叆agv - OperateResult W_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1490", R_TBR_DJLC.Content); - if (W_AGV_DJLC.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1490,鍐欏叆鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掔粨鏉� 鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); - return; - } - #endregion - - #region 娑傚竷鏈烘鏋�4鍙蜂笅鏂欏彛 - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鍙蜂笅鏂欏彛浼犻�掑紑濮� 鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - //璇诲彇娑傚竷鎶ヨ - OperateResult<bool> R_tbBJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11292.00"); - if (R_tbBJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,鍋忕Щ鍊�:D11292.00, 璇诲彇鍊硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //鎶ヨ淇″彿鍐欏叆agv - OperateResult W_tbBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1693.2", R_tbBJ.Content); - if (W_tbBJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1693.2,鍐欏叆鍊硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //璇诲彇agv鎶ヨ - OperateResult<bool> R_agvBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.1792.0"); - if (R_agvBJ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ}涓嬫枡鍙GV鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1792.0,璇诲彇鍊硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //鎶ヨ淇″彿鍐欏叆娑傚竷鏈� - OperateResult W_agvBJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11392.00", R_agvBJ.Content); - if (W_agvBJ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11392.00,鍐欏叆鍊硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //璇诲彇agv姝ラ - OperateResult<Int16> R_agvBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.1790.0"); - if (R_agvBZ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}涓嬫枡鍙GV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1790.0,璇诲彇鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - - if (R_agvBZ.Content > 0) - { - OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", true);//璇锋眰娑傚竷鏈哄紑闂� - if (W_TB1_OpenDoor.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛寮�闂ㄤ俊鎭垚鍔�,DB鍋忕Щ鍊�:D11192.05,鍐欏叆鍊硷細true,鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - OperateResult<bool> R_TB_IsOpen = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.06");//娑傚竷鏈哄紑闂ㄥ畬鎴愪俊鍙� - if (R_TB_IsOpen.IsSuccess) + catch (Exception ex) { - WriteLog.GetLog().Write($"璇诲彇 {tbsb}鍙疯澶囦笅鏂欏彛寮�淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11092.06,璇诲彇鍊硷細{R_TB_IsOpen.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - if (R_TB_IsOpen.Content) - { //鍐欑粰娑傚竷鏈� + + } + Thread.Sleep(200); + } + }); + + Task.Run(() => + { + while (true) + { + try + { + if (WCSService.Clients == null) + { + continue; + } + PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); + if (tbplc == null) + { + continue; + } + PLCClient agvplcZ = WCSService.Clients.Find(v => v.PLCName == "姝f瀬AGV璋冨害"); + if (agvplcZ == null) + { + continue; + } + #region 娑傚竷鏈烘鏋�3鍙蜂笅鏂欏彛 + WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掑紑濮�,鏃堕棿锛歿DateTime.Now} --------------", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //璇诲彇娑傚竷鎶ヨ + OperateResult<bool> R_tbBJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11292.00"); + //if (R_tbBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11292.00,璇诲彇鍊硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////鎶ヨ淇″彿鍐欏叆agv + OperateResult W_tbBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1293.2", R_tbBJ.Content); + //if (W_tbBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1293.2,鍐欏叆鍊硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇agv鎶ヨ + OperateResult<bool> R_agvBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.1392.0"); + //if (R_agvBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ}涓嬫枡鍙GV鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1392.0,璇诲彇鍊硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////鎶ヨ淇″彿鍐欏叆娑傚竷鏈� + OperateResult W_agvBJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11392.00", R_agvBJ.Content); + //if (W_agvBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11392.00,鍐欏叆鍊硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇agv姝ラ + OperateResult<Int16> R_agvBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.1390.0"); + //if (R_agvBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}涓嬫枡鍙GV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1390.0,璇诲彇鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + + if (R_agvBZ.Content > 0) + { + OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", true);//璇锋眰娑傚竷鏈哄紑闂� + //if (W_TB1_OpenDoor.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛寮�闂ㄤ俊鎭垚鍔�,DB鍋忕Щ鍊�:D11192.05,鍐欏叆鍊硷細true,鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + OperateResult<bool> R_TB_IsOpen = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.06");//娑傚竷鏈哄紑闂ㄥ畬鎴愪俊鍙� + if (R_TB_IsOpen.Content) + { + // WriteLog.GetLog().Write($"璇诲彇 {tbsb}鍙疯澶囦笅鏂欏彛闂ㄤ俊鎭垚鍔�,DB鍋忕Щ鍊�:D11192.06,璇诲彇鍊硷細{R_TB_IsOpen.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //鍐欑粰娑傚竷鏈� + OperateResult W_agvBZ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11390", R_agvBZ.Content); + //if (W_agvBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390,鍐欏叆鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + //璇诲彇璁惧姝ラ + OperateResult<Int16> R_tbBZ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11290"); + //if (R_tbBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11290,璇诲彇鍊硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + //姝ラ淇″彿鍐欏叆agv + OperateResult W_tbBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1290.0", R_tbBZ.Content); + //if (W_tbBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1290.0,鍐欏叆鍊硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------{Environment.NewLine} ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + // } + } + } + else if (R_agvBZ.Content == 0) + { //鍐欑粰娑傚竷鏈� OperateResult W_agvBZ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11390", R_agvBZ.Content); - if (W_agvBZ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390,鍐欏叆鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //璇诲彇璁惧姝ラ - OperateResult<Int16> R_tbBZ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11290"); - if (R_tbBZ.IsSuccess) - { - WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11290,璇诲彇鍊硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - //姝ラ淇″彿鍐欏叆agv - OperateResult W_tbBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1690.0", R_tbBZ.Content); - if (W_tbBZ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1690.0,鍐欏叆鍊硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } + //if (W_agvBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390,鍐欏叆鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", false);//璇锋眰娑傚竷鏈哄叧闂� + //if (W_TB1_OpenDoor.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇锋眰{tbsb}鍙蜂笅鏂欏彛鍏抽棬,DB鍋忕Щ鍊�:D11192.05, 鍐欏叆鍊硷細false, 鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------{Environment.NewLine} ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} } + WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + #endregion } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - + catch (Exception ex) { } + Thread.Sleep(200); } - - } - - else if (R_agvBZ.Content == 0) - { //鍐欑粰娑傚竷鏈� - OperateResult W_agvBZ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11390", R_agvBZ.Content); - if (W_agvBZ.IsSuccess) - { - WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390,鍐欏叆鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", false);//璇锋眰娑傚竷鏈哄叧闂� - if (W_TB1_OpenDoor.IsSuccess) - { - WriteLog.GetLog().Write($"璇锋眰{tbsb}鍙蜂笅鏂欏彛鍏抽棬,DB鍋忕Щ鍊�:D11192.05, 鍐欏叆鍊硷細false, 鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - } - else - { - WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); - return; - } - } - #endregion + }); } - catch (Exception) + { + string tbsb = "娑傚竷鏈烘鏋�4"; + Task.Run(() => + { + while (true) + { + try + { + if (WCSService.Clients == null) + { + continue; + } + PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); + if (tbplc == null) + { + continue; + } + PLCClient agvplcZ = WCSService.Clients.Find(v => v.PLCName == "姝f瀬AGV璋冨害"); + if (agvplcZ == null) + { + continue; + } + #region 娑傚竷鏈烘鏋�4鍙疯澶囧績璺� + WriteLog.GetLog().Write($"{tbsb}鍙峰績璺充紶閫掑紑濮�,鏃堕棿锛歿DateTime.Now} --------------", $"{tbsb}蹇冭烦浼犻��"); + //璇诲彇娑傚竷鏈烘鏋�4鍙疯澶囧績璺� + OperateResult<bool> R_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11000.00"); + //if (R_TBR_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11000.00,璇诲彇鍊硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + // return; + //} + ////娑傚竷鏈烘鏋�1鍙疯澶囧績璺斥�斿啓鍏モ�斻�嬫鏋丄GV璋冨害蹇冭烦 + OperateResult W_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1400.0", R_TBR_XT.Content); + //if (W_AGV_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆姝f瀬AGV璋冨害蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1400.0,鍐欏叆鍊硷細{R_TBR_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + // return; + //} + ////璇诲彇姝f瀬AGV璋冨害蹇冭烦 + OperateResult<bool> R_AGV_XT = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.1500.0"); + //if (R_AGV_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇姝f瀬AGV璋冨害蹇冭烦淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1500.0,璇诲彇鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + // return; + //} + ////姝f瀬AGV璋冨害鈥斿啓鍏モ�斻�嬫秱甯冩満姝f瀬1鍙疯澶囧績璺� + OperateResult W_TBR_XT = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11100.00", R_AGV_XT.Content); + //if (W_TBR_XT.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囧績璺充俊鎭垚鍔�,DB鍋忕Щ鍊�:D11100.00,鍐欏叆鍊硷細{R_AGV_XT.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}蹇冭烦浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}鍙峰績璺充紶閫掑��,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbsb}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}蹇冭烦浼犻��"); + // return; + //} + WriteLog.GetLog().Write($"{tbsb}鍙峰績璺充紶閫掔粨鏉�,鏃堕棿锛歿DateTime.Now} --------------", $"{tbsb}蹇冭烦浼犻��"); + #endregion + } + catch (Exception ex) { } + Thread.Sleep(200); + } - throw; + }); + + Task.Run(() => + { + while (true) + { + try + { + if (WCSService.Clients == null) + { + continue; + } + PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); + if (tbplc == null) + { + continue; + } + PLCClient agvplcZ = WCSService.Clients.Find(v => v.PLCName == "姝f瀬AGV璋冨害"); + if (agvplcZ == null) + { + continue; + } + #region 娑傚竷鏈烘鏋�4鍙蜂笂鏂欏彛 + WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掑紑濮� 鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //璇诲彇agv鎶ヨ淇″彿 + OperateResult<bool> R_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.1592.0"); + //if (R_AGV_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName}涓婃枡鍙f姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:DB1002.1592.0,璇诲彇鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////鍐欏叆娑傚竷璁惧 + OperateResult W_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.00", R_AGV_BJ.Content); + //if (W_TBR_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙锋姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:D11192.00,鍐欏叆鍊硷細{R_AGV_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇璁惧鎶ヨ淇″彿 + OperateResult<bool> R_TBR_BJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.00"); + //if (R_TBR_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囨姤璀︿俊鎭垚鍔�,DB鍋忕Щ鍊�:D11092.00,璇诲彇鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////鍐欏叆agv + OperateResult W_AGV_BJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1492.0", R_TBR_BJ.Content); + //if (W_AGV_BJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1492.0,鍐欏叆鍊硷細{R_TBR_BJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇agv瀵规帴姝ラ娴佺▼ + OperateResult<Int16> R_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.1590"); + //if (R_AGV_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}涓婃枡鍙GV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1590,璇诲彇鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////鍐欏叆娑傚竷璁惧 + OperateResult W_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11190", R_AGV_DJLC.Content); + //if (W_TBR_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笂鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11190,鍐欏叆鍊硷細{R_AGV_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇娑傚竷璁惧瀵规帴娴佺▼ + OperateResult<Int16> R_TBR_DJLC = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11090"); + //if (R_TBR_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11090,璇诲彇鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + ////鍐欏叆agv + OperateResult W_AGV_DJLC = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1490", R_TBR_DJLC.Content); + //if (W_AGV_DJLC.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笂鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1490,鍐欏叆鍊硷細{R_TBR_DJLC.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掔粨鏉� 鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + // return; + //} + WriteLog.GetLog().Write($"{tbsb}鍙蜂笂鏂欏彛浼犻�掔粨鏉� 鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笂鏂欏彛浼犻��"); + #endregion + } + catch (Exception ex) + { + + } + Thread.Sleep(200); + } + }); + + Task.Run(() => + { + while (true) + { + try + { + if (WCSService.Clients == null) + { + continue; + } + PLCClient tbplc = WCSService.Clients.Find(v => v.PLCName == tbsb); + if (tbplc == null) + { + continue; + } + PLCClient agvplcZ = WCSService.Clients.Find(v => v.PLCName == "姝f瀬AGV璋冨害"); + if (agvplcZ == null) + { + continue; + } + #region 娑傚竷鏈烘鏋�4鍙蜂笅鏂欏彛 + WriteLog.GetLog().Write($"{agvplcZ.PLCName}鍙蜂笅鏂欏彛浼犻�掑紑濮� 鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //璇诲彇娑傚竷鎶ヨ + OperateResult<bool> R_tbBJ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11292.00"); + //if (R_tbBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,鍋忕Щ鍊�:D11292.00, 璇诲彇鍊硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{tbplc.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////鎶ヨ淇″彿鍐欏叆agv + OperateResult W_tbBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1693.2", R_tbBJ.Content); + //if (W_tbBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1693.2,鍐欏叆鍊硷細{R_tbBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇agv鎶ヨ + OperateResult<bool> R_agvBJ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadBool("DB1002.1792.0"); + //if (R_agvBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ}涓嬫枡鍙GV鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1792.0,璇诲彇鍊硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////鎶ヨ淇″彿鍐欏叆娑傚竷鏈� + OperateResult W_agvBJ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11392.00", R_agvBJ.Content); + //if (W_agvBJ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ}鍙蜂笅鏂欏彛鎶ヨ淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11392.00,鍐欏叆鍊硷細{R_agvBJ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + ////璇诲彇agv姝ラ + OperateResult<Int16> R_agvBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.ReadInt16("DB1002.1790.0"); + //if (R_agvBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{agvplcZ.PLCName} {tbsb}涓嬫枡鍙GV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1790.0,璇诲彇鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + + if (R_agvBZ.Content > 0) + { + OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", true);//璇锋眰娑傚竷鏈哄紑闂� + //if (W_TB1_OpenDoor.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛寮�闂ㄤ俊鎭垚鍔�,DB鍋忕Щ鍊�:D11192.05,鍐欏叆鍊硷細true,鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + OperateResult<bool> R_TB_IsOpen = tbplc.OmronPLCClient.OmronFinsNetClient.ReadBool("D11092.06");//娑傚竷鏈哄紑闂ㄥ畬鎴愪俊鍙� + //if (R_TB_IsOpen.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇 {tbsb}鍙疯澶囦笅鏂欏彛寮�淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11092.06,璇诲彇鍊硷細{R_TB_IsOpen.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + if (R_TB_IsOpen.Content) + { //鍐欑粰娑傚竷鏈� + OperateResult W_agvBZ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11390", R_agvBZ.Content); + //if (W_agvBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390,鍐欏叆鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + //璇诲彇璁惧姝ラ + OperateResult<Int16> R_tbBZ = tbplc.OmronPLCClient.OmronFinsNetClient.ReadInt16("D11290"); + //if (R_tbBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇诲彇{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11290,璇诲彇鍊硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + //姝ラ淇″彿鍐欏叆agv + OperateResult W_tbBZ = agvplcZ.SiemensPLCClient.SiemensS7NetClient.Write("DB1002.1690.0", R_tbBZ.Content); + //if (W_tbBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{agvplcZ.PLCName},{tbsb}鍙疯澶囦笅鏂欏彛鍏佽AGV杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:DB1002.1690.0,鍐欏叆鍊硷細{R_tbBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + } + //} + // } + // else + // { + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + // } + + // } + + } + + else if (R_agvBZ.Content == 0) + { //鍐欑粰娑傚竷鏈� + OperateResult W_agvBZ = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11390", R_agvBZ.Content); + //if (W_agvBZ.IsSuccess) + //{ + // WriteLog.GetLog().Write($"鍐欏叆{tbsb}鍙疯澶囦笅鏂欏彛AGV璇锋眰杩涘叆淇℃伅鎴愬姛,DB鍋忕Щ鍊�:D11390,鍐欏叆鍊硷細{R_agvBZ.Content},鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + OperateResult W_TB1_OpenDoor = tbplc.OmronPLCClient.OmronFinsNetClient.Write("D11192.05", false);//璇锋眰娑傚竷鏈哄叧闂� + //if (W_TB1_OpenDoor.IsSuccess) + //{ + // WriteLog.GetLog().Write($"璇锋眰{tbsb}鍙蜂笅鏂欏彛鍏抽棬,DB鍋忕Щ鍊�:D11192.05, 鍐欏叆鍊硷細false, 鏃堕棿锛歿DateTime.Now}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // WriteLog.GetLog().Write($"{tbsb}鍙蜂笅鏂欏彛浼犻�掔粨鏉�,鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + //} + //else + //{ + // WriteLog.GetLog().Write($"{agvplcZ.PLCName}鏂紑杩炴帴 鏃堕棿锛歿DateTime.Now} -------------- {Environment.NewLine}", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + // return; + //} + } + + WriteLog.GetLog().Write($"{agvplcZ.PLCName}鍙蜂笅鏂欏彛浼犻�掔粨鏉� 鏃堕棿锛歿DateTime.Now} -------------- ", $"{tbsb}鍙蜂笅鏂欏彛浼犻��"); + #endregion + } + catch (Exception ex) { } + Thread.Sleep(200); + } + }); } - - }); - #endregion - #endregion + } } } } -- Gitblit v1.9.3