From 7b027a10eac44a6fd4ca8930068e4e347b772d3a Mon Sep 17 00:00:00 2001 From: Tyrone CT Date: Fri, 7 Feb 2025 14:42:31 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=94=B9=E4=BA=86=E8=BD=AC=E6=8D=A2?= =?UTF-8?q?=E8=BF=9B=E5=88=B6=E5=92=8C=E4=B8=8B=E8=BD=BD=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?0=E6=AD=A5=E9=AA=A4=E7=9A=84=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CapMachine.Wpf/ProPars/ProParsHelperQuick.cs | 19 ++++++++++++++++++ CapMachine.Wpf/ReportFile/快速程序模版.xlsx | Bin 12492 -> 12493 bytes .../Services/MachineRtDataService.cs | 2 +- .../ViewModels/QuickMeterStepViewModel.cs | 1 + 4 files changed, 21 insertions(+), 1 deletion(-) diff --git a/CapMachine.Wpf/ProPars/ProParsHelperQuick.cs b/CapMachine.Wpf/ProPars/ProParsHelperQuick.cs index 7abf0b7..e23e2c6 100644 --- a/CapMachine.Wpf/ProPars/ProParsHelperQuick.cs +++ b/CapMachine.Wpf/ProPars/ProParsHelperQuick.cs @@ -75,6 +75,9 @@ namespace CapMachine.Wpf.ProPars CurStep++; } + //防止上一次下载的程序多余当前的步骤,为了清空多余的步骤数据,增加一行的数据 + ListPlcParsDataQuick = AddNullData(ListPlcParsDataQuick); + LoadDataToPLC(siemensS7NetStance, ListPlcParsDataQuick); //装载地址 VW1000 @@ -147,6 +150,22 @@ namespace CapMachine.Wpf.ProPars //siemensS7NetStance.Write(); } + + /// + /// 增加一行空的数据,作为终止的执行 + /// + public static List AddNullData(List plcParsDatas) + { + var NewStep = new QuickMeterStepDto() + { + + }; + + return LoadPlcParsData(NewStep, plcParsDatas, plcParsDatas.First().Steps.Count()+1); + + } + + /// /// 单步骤程序解析 /// 单步骤里面包括多个仪表参数的配置信息 diff --git a/CapMachine.Wpf/ReportFile/快速程序模版.xlsx b/CapMachine.Wpf/ReportFile/快速程序模版.xlsx index b4889df356b31e3532402025ae9874e75c95eb0e..8c4eb15bc761121c5ba55eb37d2ce94488a79ca3 100644 GIT binary patch delta 4756 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 delta 4755 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 h06qwl5->OgE4B^bNs~`7Q~_X("LV[A]", "LV[A]", "LVCur", "程序", "VW15024", 100, 0, 100, "A", new ShortTagValue(), false) { DecimalPoint = 2 }); TagManger.AddTag(new Tag("环境温度", "环境温度[℃]", "EnvTemp", "程序", "VW15026", 100, 0, 10, "℃", new ShortTagValue(), true) { DecimalPoint = 1 }); //TagManger.AddTag(new Tag("环境湿度", "环境湿度[%]", "EnvRH", "程序", "VW15028", 100, 0, 10, "%", new ShortTagValue(), true) { DecimalPoint = 1 }); - TagManger.AddTag(new Tag("环境湿度", "环境湿度[%]", "EnvRH", "程序", "VW15028", 100, 0, 1, "%", new ShortTagValue(), true) { DecimalPoint = 0 }); + TagManger.AddTag(new Tag("环境湿度", "环境湿度[%]", "EnvRH", "程序", "VW15028", 100, 0, 1, "%", new ShortTagValue(), true) { DecimalPoint = 1 }); TagManger.AddTag(new Tag("OS1温度", "OS1温度[℃]", "OS1Temp", "程序", "VW15030", 100, 0, 10, "℃", new ShortTagValue(), false) { DecimalPoint = 1 }); TagManger.AddTag(new Tag("OS2温度", "OS2温度[℃]", "OS2Temp", "程序", "VW15032", 100, 0, 10, "℃", new ShortTagValue(), false) { DecimalPoint = 1 }); TagManger.AddTag(new Tag("COND2温度", "COND2温度[℃]", "Cond2Temp", "程序", "VW15034", 100, 0, 10, "℃", new ShortTagValue(), false) { DecimalPoint = 1 }); diff --git a/CapMachine.Wpf/ViewModels/QuickMeterStepViewModel.cs b/CapMachine.Wpf/ViewModels/QuickMeterStepViewModel.cs index c335d98..9a59dbf 100644 --- a/CapMachine.Wpf/ViewModels/QuickMeterStepViewModel.cs +++ b/CapMachine.Wpf/ViewModels/QuickMeterStepViewModel.cs @@ -326,6 +326,7 @@ namespace CapMachine.Wpf.ViewModels } ProParsHelperQuick.GetPlcParsData(ListQuickMeterStepDto.ToList(), this.MachineRtDataService.SiemensDrive); + //下载完成的话,则标记状态 SysRunService.MachineRunState1.IsProLoad = true; }