From 36d4157eb177c56c7261cfac3d6a82cf0b716b91 Mon Sep 17 00:00:00 2001 From: pengliangyang <1406009520@qq.com> Date: Fri, 5 May 2023 18:36:17 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Model/HK_PLC/HKDeviceStatus.cs | 2 +- .../Model/ProcessControl.cs | 8 ++++++++ .../Model/ProcessControl.cs | 16 +++++++++++++++- .../Model/WindSend/WindSendDeviceStatus.cs | 4 ++-- .../Model/WindSend/WindSend_Write.cs | 2 +- 5 files changed, 27 insertions(+), 5 deletions(-) diff --git a/BPASmartClient.JXJFoodBigStation/Model/HK_PLC/HKDeviceStatus.cs b/BPASmartClient.JXJFoodBigStation/Model/HK_PLC/HKDeviceStatus.cs index 87fb00f2..591fbd89 100644 --- a/BPASmartClient.JXJFoodBigStation/Model/HK_PLC/HKDeviceStatus.cs +++ b/BPASmartClient.JXJFoodBigStation/Model/HK_PLC/HKDeviceStatus.cs @@ -189,7 +189,7 @@ namespace BPASmartClient.JXJFoodBigStation.Model.HK_PLC } if (Math.Round(weight0, 1) != Math.Round(ReadWeight, 1)) { - MessageNotify.GetInstance.ShowRunLog($"地址:{Address},配方重量0,读取plc值{ReadWeight}"); + MessageNotify.GetInstance.ShowRunLog($"地址:{Address},配方重量为0,读取plc值{ReadWeight}"); return false; } } diff --git a/BPASmartClient.JXJFoodBigStation/Model/ProcessControl.cs b/BPASmartClient.JXJFoodBigStation/Model/ProcessControl.cs index a45b6463..6083fc69 100644 --- a/BPASmartClient.JXJFoodBigStation/Model/ProcessControl.cs +++ b/BPASmartClient.JXJFoodBigStation/Model/ProcessControl.cs @@ -228,6 +228,14 @@ namespace BPASmartClient.JXJFoodBigStation.Model MessageNotify.GetInstance.ShowRunLog($"配方编号:{code},托盘编号:{trayCode},订单类型为洗桶"); HKDevice.WritePlcRecipeData(LocalRecipes.ElementAt(index)); + Thread.Sleep(200); + if (!HKDevice.ReadPlcRecipeData(LocalRecipes.ElementAt(index))) + { + App.Current.Dispatcher.Invoke(() => + { + MessageNotify.GetInstance.ShowDialog($"plc配方数据和西门子配方数据不一致!", DialogType.Error); + }); + }; HKDevice.HK_PLC_S7.Write("DB99.DBX0.3", true); GVL_BigStation.Recipe1DosingStatus = 1; MessageNotify.GetInstance.ShowRunLog($"配方编号:{code},托盘编号:{trayCode},下发完成"); diff --git a/BPASmartClient.JXJFoodSmallStation/Model/ProcessControl.cs b/BPASmartClient.JXJFoodSmallStation/Model/ProcessControl.cs index 2df8c253..b3bfa792 100644 --- a/BPASmartClient.JXJFoodSmallStation/Model/ProcessControl.cs +++ b/BPASmartClient.JXJFoodSmallStation/Model/ProcessControl.cs @@ -243,7 +243,7 @@ namespace BPASmartClient.JXJFoodSmallStation.Model if (GVL_SmallStation.GetInstance.WindSendDosingComple) { //HKDevice.HK_PLC_S7.Write("DB4.DBX1.7", true); - HKDevice.HK_PLC_S7.Write("DB4.DBX2.0", true); + HKDevice.HK_PLC_S7.Write("DB4.DBX4.0", true); GVL_SmallStation.GetInstance.WindSendDosingComple = false; MessageNotify.GetInstance.ShowRunLog("风送配料完成信号,发给产线plc信号"); } @@ -529,6 +529,7 @@ namespace BPASmartClient.JXJFoodSmallStation.Model GVL_SmallStation.GetInstance.RecipeProcessStatus[i] = 0; } GVL_SmallStation.GetInstance.WindSendDosingStatus = 0; + GVL_SmallStation.GetInstance.WindSendDosing = false; } } else @@ -570,6 +571,7 @@ namespace BPASmartClient.JXJFoodSmallStation.Model GVL_SmallStation.GetInstance.RecipeProcessStatus[i] = 0; } GVL_SmallStation.GetInstance.WindSendDosingStatus = 0; + GVL_SmallStation.GetInstance.WindSendDosing = false; } } } @@ -699,6 +701,7 @@ namespace BPASmartClient.JXJFoodSmallStation.Model { if (GVL_SmallStation.GetInstance.WindSendDosingStatus == 1) { + WindSendReset(); WindSendData.TargetRecipeCode = code; WindSendData.IsAllowDosing = true; foreach (var item in RemoteRecipes.ElementAt(index).WindSend) @@ -1283,6 +1286,7 @@ namespace BPASmartClient.JXJFoodSmallStation.Model GVL_SmallStation.GetInstance.SiemensSendRecipeStatus = 0; GVL_SmallStation.GetInstance.WindSendDosingStatus = 0; + GVL_SmallStation.GetInstance.WindSendDosing = false; GVL_SmallStation.GetInstance.Order_Cancel = false; GVL_SmallStation.GetInstance.Order_CancelRecipeCode = ""; @@ -1295,6 +1299,7 @@ namespace BPASmartClient.JXJFoodSmallStation.Model GVL_SmallStation.GetInstance.Tray_AGVLogic[i] = 0; } StockBinInit(); + WindSendReset(); //for (int i = 0; i < GVL_SmallStation.GetInstance.StockInDosingComple.Length; i++) //{ // GVL_SmallStation.GetInstance.StockInDosingComple[i] = false; @@ -1506,6 +1511,15 @@ namespace BPASmartClient.JXJFoodSmallStation.Model } } } + private void WindSendReset() + { + float weight = (float)0.0; + WindSendDevice.Siemens_PLC_S7.Write("DB95.DBD0", weight); + WindSendDevice.Siemens_PLC_S7.Write("DB95.DBD4", weight); + WindSendDevice.Siemens_PLC_S7.Write("DB95.DBD8", weight); + WindSendDevice.Siemens_PLC_S7.Write("DB95.DBD12", weight); + WindSendDevice.Siemens_PLC_S7.Write("DB95.DBX38.1", false); + } public void RawMaterialNameWithCode() { GVL_SmallStation.GetInstance.RawMaterialsNameCode.Clear(); diff --git a/BPASmartClient.JXJFoodSmallStation/Model/WindSend/WindSendDeviceStatus.cs b/BPASmartClient.JXJFoodSmallStation/Model/WindSend/WindSendDeviceStatus.cs index b50fe91c..7ea4b6ac 100644 --- a/BPASmartClient.JXJFoodSmallStation/Model/WindSend/WindSendDeviceStatus.cs +++ b/BPASmartClient.JXJFoodSmallStation/Model/WindSend/WindSendDeviceStatus.cs @@ -45,14 +45,14 @@ namespace BPASmartClient.JXJFoodSmallStation.Model } break; case 3: - if (RTrig.GetInstance("CurrentCompleteSign").Start(readData.CurrentCompleteSign)) + if (readData.CurrentCompleteSign) { Siemens_PLC_S7.Write("DB95.DBX38.1", true); GVL_SmallStation.GetInstance.WindSendDosingStatus = 4; } break; case 4: - if (TTrig.GetInstance("CurrentCompleteSign").Start(readData.CurrentCompleteSign)) + if (!readData.CurrentCompleteSign) { Siemens_PLC_S7.Write("DB95.DBX38.1", false); GVL_SmallStation.GetInstance.WindSendDosingStatus = 5; diff --git a/BPASmartClient.JXJFoodSmallStation/Model/WindSend/WindSend_Write.cs b/BPASmartClient.JXJFoodSmallStation/Model/WindSend/WindSend_Write.cs index f3bbc7f9..fd619b57 100644 --- a/BPASmartClient.JXJFoodSmallStation/Model/WindSend/WindSend_Write.cs +++ b/BPASmartClient.JXJFoodSmallStation/Model/WindSend/WindSend_Write.cs @@ -33,7 +33,7 @@ namespace BPASmartClient.JXJFoodSmallStation.Model.WindSend /// 目标配方编码 /// [Siemens(16)] - public string TargetRecipeCode { get; set; } + public string TargetRecipeCode { get; set; } = ""; /// /// 允许配料 ///