src/Bro.Common.Device/DeviceBase/MotionCardBase.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/Bro.Device.GTSCard/GTSCardDriver.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/Bro.M071.Process/M071Process.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/Bro.M071.Process/M071Process_MotionCard.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
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 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(); 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(); 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();