From 56d73b9710766e7acab2e084a6af322175c78f1b Mon Sep 17 00:00:00 2001 From: xcd <834800634@qq.com> Date: 星期六, 11 七月 2020 11:20:38 +0800 Subject: [PATCH] 添加急停按钮相关处理 --- src/Bro.M071.Process/M071Process.cs | 52 ++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 40 insertions(+), 12 deletions(-) diff --git a/src/Bro.M071.Process/M071Process.cs b/src/Bro.M071.Process/M071Process.cs index 7f239ef..3305e4b 100644 --- a/src/Bro.M071.Process/M071Process.cs +++ b/src/Bro.M071.Process/M071Process.cs @@ -50,6 +50,8 @@ base.Open(); + InitialMotionCardBaseAxisAlarm(); + SwitchBeep(false); SwitchLightGreen(false); SwitchLightRed(false); @@ -57,6 +59,21 @@ Reset(null, null, null); FullReset(null); + } + + private void InitialMotionCardBaseAxisAlarm() + { + if (outputCtrlCard != null) + { + outputCtrlCard.OnAxisAlarmRaised -= MotionCard_OnAxisAlarmRaised; + outputCtrlCard.OnAxisAlarmRaised += MotionCard_OnAxisAlarmRaised; + } + } + + private void MotionCard_OnAxisAlarmRaised(int axisIndex, string alarmMsg) + { + RaisedAlarm(alarmMsg); + MachineState = MachineState.Alarm; } private void InitialSetting() @@ -202,6 +219,11 @@ Config.SnapshotPointCollection.Where(u => u.IsEnabled).ToList().ForEach(s => { _pauseHandle.WaitHandle.WaitOne(); + + if (MachineState != MachineState.Running) + { + throw new ProcessException("鏈哄彴鐘舵�佷笉鍦ㄨ繍琛屼腑锛岄��鍑烘娴�"); + } IDevice device = DeviceCollection.FirstOrDefault(u => u.Id == s.MotionOp.Device); if (device == null) @@ -379,7 +401,7 @@ //MES杈撳嚭 todo if (Config.IsEnableMESUpload) - { + { } //Excel鎶ヨ〃杈撳嚭 锛堝崟涓骇鍝佺殑excel瀵煎嚭锛� @@ -472,17 +494,20 @@ { foreach (var keyValue in keyUnit.MeasureValueDict)//鑾峰彇鍗曚釜閿殑鍗曚釜娴嬮噺item 缁撴灉 { - KeyUnitData keyUnitData = new KeyUnitData(); - keyUnitData.Key = keyUnit.Key; - keyUnitData.MeasurementItem = keyValue.Key; - keyUnitData.ItemValue = keyValue.Value.ToString(); - keyUnitDatas.Add(keyUnitData); + bool isExist = keyUnitDatas.Any(u => u.Key == keyUnit.Key && u.MeasurementItem == keyValue.Key); + if (!isExist)//宸插瓨鍦� 涓嶉噸澶嶆坊鍔犲師濮嬫暟鎹� + { + KeyUnitData keyUnitData = new KeyUnitData(); + keyUnitData.Key = keyUnit.Key; + keyUnitData.MeasurementItem = keyValue.Key; + keyUnitData.ItemValue = keyValue.Value.ToString(); + keyUnitDatas.Add(keyUnitData); - MeasurementAndKeyDataRelation measurementAndKeyDataRelation = new MeasurementAndKeyDataRelation(); - measurementAndKeyDataRelation.MeasurementUnitResultId = measurementUnitResult.ID; - measurementAndKeyDataRelation.KeyUnitDataId = keyUnitData.ID; - measurementAndKeyDataRelationList.Add(measurementAndKeyDataRelation); - + MeasurementAndKeyDataRelation measurementAndKeyDataRelation = new MeasurementAndKeyDataRelation(); + measurementAndKeyDataRelation.MeasurementUnitResultId = measurementUnitResult.ID; + measurementAndKeyDataRelation.KeyUnitDataId = keyUnitData.ID; + measurementAndKeyDataRelationList.Add(measurementAndKeyDataRelation); + } } } } @@ -500,6 +525,9 @@ private async void ExportProductionExcel(ProductionMeasurementUnitResultAndKeyUnitDataSet measurementUnitResultAndKeyUnitDataSet) { + if (!Config.IsCSVOutputEnabled) + return; + await Task.Run(() => { ExcelExportSet excelExportDto = new ExcelExportSet(); @@ -524,7 +552,7 @@ excelExportDto.WorksheetDataTable[excelExportDto.Worksheets[1]] = ExcelExportHelper.ListToDataTable(measurementUnitResultAndKeyUnitDataSet.MeasurementUnitResultList, measurementUnitResultColumns); ; byte[] filecontent = ExcelExportHelper.ExportExcel(excelExportDto, false); - string dir = Path.Combine(Config.ResultDataSaveFolder, DateTime.Now.ToString("yyyyMMdd")); + string dir = Path.Combine(Config.LogPath, DateTime.Now.ToString("yyyyMMdd")); if (!Directory.Exists(dir)) { Directory.CreateDirectory(dir); -- Gitblit v1.8.0