From 875a4c2ad21ec2b7c937955773e9687f1c43bb64 Mon Sep 17 00:00:00 2001
From: xcd <834800634@qq.com>
Date: 星期五, 10 七月 2020 17:36:39 +0800
Subject: [PATCH] 板卡暂停/恢复提至板卡基类 流程方法修改参数
---
src/Bro.Device.GTSCard/GTSCardDriver.cs | 4 ++--
src/Bro.Common.Device/DeviceBase/MotionCardBase.cs | 12 ++++++++++++
src/Bro.M071.Process/M071Process.cs | 5 ++++-
src/Bro.M071.Process/M071Process_MotionCard.cs | 15 ++++++++-------
4 files changed, 26 insertions(+), 10 deletions(-)
diff --git a/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs b/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs
index 2825f26..cba431b 100644
--- a/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs
+++ b/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs
@@ -102,6 +102,18 @@
public List<AxisMovingStatus> AxisMovingOptionValues { get; set; } = new List<AxisMovingStatus>();
public abstract void WriteOutput(short index, IOValue value);
+
+ #region ImmediatePause
+ /// <summary>
+ /// 鍚姩绔嬪嵆鏆傚仠
+ /// </summary>
+ public abstract void SetImmediatePause();
+
+ /// <summary>
+ /// 鎭㈠绔嬪嵆鏆傚仠
+ /// </summary>
+ public abstract void ResetImmediatePause();
+ #endregion
}
public class MotionCardInitialConfigBase : InitialConfigBase, IMonitorConfig
diff --git a/src/Bro.Device.GTSCard/GTSCardDriver.cs b/src/Bro.Device.GTSCard/GTSCardDriver.cs
index 3a167dd..0f06173 100644
--- a/src/Bro.Device.GTSCard/GTSCardDriver.cs
+++ b/src/Bro.Device.GTSCard/GTSCardDriver.cs
@@ -220,7 +220,7 @@
/// <summary>
/// 鍚姩绔嬪嵆鏆傚仠
/// </summary>
- public void SetImmediatePause()
+ public override void SetImmediatePause()
{
if (!_isResetting)
{
@@ -240,7 +240,7 @@
/// <summary>
/// 鎭㈠绔嬪嵆鏆傚仠
/// </summary>
- public void ResetImmediatePause()
+ public override void ResetImmediatePause()
{
var immediatePauseAxis = IConfig.AxisSettings.FindAll(a => a.IsAxisEnabled && a.IsImmediatePause).Select(u => u.AxisIndex).ToList();
diff --git a/src/Bro.M071.Process/M071Process.cs b/src/Bro.M071.Process/M071Process.cs
index 01065c8..26c855d 100644
--- a/src/Bro.M071.Process/M071Process.cs
+++ b/src/Bro.M071.Process/M071Process.cs
@@ -472,7 +472,7 @@
{
foreach (var keyValue in keyUnit.MeasureValueDict)//鑾峰彇鍗曚釜閿殑鍗曚釜娴嬮噺item 缁撴灉
{
- bool isExist = keyUnitDatas.FirstOrDefault(u => u.Key == keyUnit.Key && u.MeasurementItem == keyValue.Key) != null;
+ bool isExist = keyUnitDatas.Any(u => u.Key == keyUnit.Key && u.MeasurementItem == keyValue.Key);
if (!isExist)//宸插瓨鍦� 涓嶉噸澶嶆坊鍔犲師濮嬫暟鎹�
{
KeyUnitData keyUnitData = new KeyUnitData();
@@ -503,6 +503,9 @@
private async void ExportProductionExcel(ProductionMeasurementUnitResultAndKeyUnitDataSet measurementUnitResultAndKeyUnitDataSet)
{
+ if (!Config.IsCSVOutputEnabled)
+ return;
+
await Task.Run(() =>
{
ExcelExportSet excelExportDto = new ExcelExportSet();
diff --git a/src/Bro.M071.Process/M071Process_MotionCard.cs b/src/Bro.M071.Process/M071Process_MotionCard.cs
index 62fd994..441e2c3 100644
--- a/src/Bro.M071.Process/M071Process_MotionCard.cs
+++ b/src/Bro.M071.Process/M071Process_MotionCard.cs
@@ -213,7 +213,7 @@
}
MotionCardDefaultRun("Reset", ref opConfig, ref invokeDevice);
- //(invokeDevice as IMotionCard).Reset();
+ (invokeDevice as MotionCardBase).ResetAlarm();
RaisedAlarm("");
MachineState = MachineState.Ready;
@@ -251,7 +251,8 @@
}
}
- [ProcessMethod("MotionCardOperationConfigCollection", "FullReset", "澶у浣嶆搷浣�", InvokeType.TestInvoke)]
+ //[ProcessMethod("MotionCardOperationConfigCollection", "FullReset", "澶у浣嶆搷浣�", InvokeType.TestInvoke)]
+ [ProcessMethod("MotionCardBase", "FullReset", "澶у浣嶆搷浣�", InvokeType.TestInvoke)]
public ProcessResponse FullReset(IOperationConfig opConfig, IDevice invokeDevice, IDevice sourceDevice)
{
//if (opConfig == null)
@@ -302,7 +303,7 @@
};
MachineState _machineStateBeforePause = MachineState.Unknown;
List<MachineState> _statesAllowPause = new List<MachineState>() { MachineState.Running, MachineState.Ready, MachineState.Pause };
- [ProcessMethod("", "PauseJob", "鏆傚仠娴佺▼", InvokeType.TestInvoke)]
+ [ProcessMethod("", "SwitchJobStatus", "娴佺▼鐘舵�佸垏鎹�", InvokeType.TestInvoke)]
public ProcessResponse SwitchJobStatus(IOperationConfig opConfig, IDevice invokeDevice, IDevice sourceDevice)
{
if (!_statesAllowPause.Contains(MachineState))
@@ -328,7 +329,7 @@
if (!_pauseHandle.WaitResult)
{
#region 鏉垮崱鏆傚仠鍔ㄤ綔
- motionDevice.StateChange(DeviceState.DSPause);
+ motionDevice.SetImmediatePause();
#endregion
_pauseHandle.WaitHandle.Reset();
@@ -339,7 +340,7 @@
else if (!_pauseHandle.WaitResult)
{
#region 鏉垮崱鎭㈠鍔ㄤ綔
- motionDevice.StateChange(DeviceState.DSOpen);
+ motionDevice.ResetImmediatePause();
#endregion
_pauseHandle.WaitHandle.Set();
@@ -354,7 +355,7 @@
if (!_pauseHandle.WaitResult)
{
#region 鏉垮崱鏆傚仠鍔ㄤ綔
- motionDevice.StateChange(DeviceState.DSPause);
+ motionDevice.SetImmediatePause();
#endregion
_pauseHandle.WaitHandle.Reset();
@@ -367,7 +368,7 @@
if (!_pauseHandle.WaitResult)
{
#region 鏉垮崱鎭㈠鍔ㄤ綔
- motionDevice.StateChange(DeviceState.DSOpen);
+ motionDevice.ResetImmediatePause();
#endregion
_pauseHandle.WaitHandle.Set();
--
Gitblit v1.8.0