From f391747ad784f65c4f5c8f6640e094d01f3fdb79 Mon Sep 17 00:00:00 2001
From: wells.liu <wells.liu@broconcentric.com>
Date: 星期四, 02 七月 2020 18:21:29 +0800
Subject: [PATCH] 板卡操作
---
src/Bro.Device.GTSCard/GTSCardDriver.cs | 22 ++++++----
src/Bro.UI.Device.Winform/MotionCard/CtrlMotionCardOperationBase.cs | 49 ++++++++----------------
src/Bro.Common.Device/DeviceBase/MotionCardBase.cs | 24 +++++++++++-
3 files changed, 52 insertions(+), 43 deletions(-)
diff --git a/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs b/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs
index 4425373..1b11a50 100644
--- a/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs
+++ b/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs
@@ -22,6 +22,24 @@
public abstract ResponseMessage MoveToPoint(IOperationConfig opConfig);
public abstract void ResetAlarm();
public abstract ResponseMessage Run(IOperationConfig config);
+
+ public void ExcuteMonitorInvok(DateTime dateTime, string invokeDevice, IDevice device, IMonitorSet monitorSet)
+ {
+ OnMonitorInvoke?.BeginInvoke(dateTime, invokeDevice, device, monitorSet, null, null);
+ }
+
+ public void ExcuteMonitorAlarm(DateTime dateTime, IDevice device, IWarningSet warningSet)
+ {
+ OnMonitorAlarm?.BeginInvoke(dateTime, device, warningSet, null, null);
+ }
+
+ public virtual MotionCardInitialConfigBase IConfig
+ {
+ get
+ {
+ return InitialConfig as MotionCardInitialConfigBase;
+ }
+ }
}
public class MotionCardInitialConfigBase : InitialConfigBase, IMonitorConfig
@@ -108,17 +126,20 @@
public class MotionCardOperationConfigBase : OperationConfigBase, IComplexDisplay
{
[Category("IO鎿嶄綔閰嶇疆")]
+ [DisplayName("IO棰勬鏌ュ畾涔夐泦鍚�")]
[Description("IO棰勬鏌ュ畾涔夐泦鍚�")]
[TypeConverter(typeof(CollectionCountConvert))]
- [Editor(typeof(IORefrenceItemCollectionEditor),typeof(UITypeEditor))]
+ [Editor(typeof(IORefrenceItemCollectionEditor), typeof(UITypeEditor))]
public List<IORefrenceItem> PreCheckIOCollection { get; set; } = new List<IORefrenceItem>();
[Category("IO鎿嶄綔閰嶇疆")]
+ [DisplayName("IO杈撳嚭瀹氫箟闆嗗悎")]
[Description("IO杈撳嚭瀹氫箟闆嗗悎")]
[TypeConverter(typeof(CollectionCountConvert))]
public List<IORefrenceItem> IOOutputCollection { get; set; } = new List<IORefrenceItem>();
[Category("IO鎿嶄綔閰嶇疆")]
+ [DisplayName("IO纭瀹氫箟闆嗗悎")]
[Description("IO纭瀹氫箟闆嗗悎")]
[TypeConverter(typeof(CollectionCountConvert))]
public List<IORefrenceItem> IOConfirmCollection { get; set; } = new List<IORefrenceItem>();
@@ -136,5 +157,4 @@
}
}
-
}
diff --git a/src/Bro.Device.GTSCard/GTSCardDriver.cs b/src/Bro.Device.GTSCard/GTSCardDriver.cs
index 6927c56..de90301 100644
--- a/src/Bro.Device.GTSCard/GTSCardDriver.cs
+++ b/src/Bro.Device.GTSCard/GTSCardDriver.cs
@@ -18,7 +18,7 @@
namespace Bro.Device.GTSCard
{
[Device("GTSCard", "鍥洪珮鏉垮崱", EnumHelper.DeviceAttributeType.Device)]
- public class GTSCardDriver : DeviceBase, IMonitor, IMotion
+ public class GTSCardDriver : MotionCardBase
{
// 寮傚父浜嬩欢
public Action<Exception> OnExceptionRaised;
@@ -42,7 +42,7 @@
_isResetting = isReset;
}
- public List<AxisInfo> GetCurrentAxisInfo(params string[] axisName)
+ public override List<AxisInfo> GetCurrentAxisInfo(params string[] axisName)
{
throw new NotImplementedException();
}
@@ -74,6 +74,11 @@
AllMoveStop();
AllAxisOff();
}
+
+ public override ResponseMessage Run(IOperationConfig config)
+ {
+ throw new NotImplementedException();
+ }
#endregion
#region GTSCard
@@ -93,6 +98,7 @@
throw new Exception("鏉垮崱杞藉叆閰嶇疆鏂囦欢寮傚父锛岄敊璇爜锛�" + res);
}
}
+
public bool AllAxisOn()
{
@@ -153,7 +159,7 @@
/// </summary>
/// <param name="item">杩愬姩瀵硅薄</param>
/// <returns>杩愬姩鎺у埗+鍋滄鍒ゆ柇</returns>
- public ResponseMessage MoveToPoint(IOperationConfig opConfig)
+ public override ResponseMessage MoveToPoint(IOperationConfig opConfig)
{
bool resultOK = false;
var gtsOperationConfig = opConfig as GTSCardOperationConfig;
@@ -680,8 +686,6 @@
#endregion
#region IMonitor
- public event Action<DateTime, string, IDevice, IMonitorSet> OnMonitorInvoke;
- public event Action<DateTime, IDevice, IWarningSet> OnMonitorAlarm;
public List<IOItem> MonitorValues { get; set; } = new List<IOItem>();
@@ -718,7 +722,7 @@
return result;
}
- public async void Monitor()
+ public async override void Monitor()
{
await Task.Run(() =>
{
@@ -805,7 +809,7 @@
warningSet.TriggerTime = DateTime.Now;
warningSet.WarningDescription = $"璀︽姤锛歿warningSet.Name}-瑙﹀彂绱㈠紩锛歿warningSet.TriggerIndex}-{warningSet.WarningIOModel.GetEnumDescription()}:{warningSet.WarningCode}";
SaveAlarmCSVAsync(DateTime.Now, this.Name, warningSet);
- OnMonitorAlarm?.BeginInvoke(DateTime.Now, this, warningSet, null, null);
+ ExcuteMonitorAlarm(DateTime.Now, this, warningSet);
}
});
#endregion
@@ -836,14 +840,14 @@
// return tempNew[index].Value;
//}).ToList();
- OnMonitorInvoke?.BeginInvoke(DateTime.Now, monitorSet.InvokeDevice, this, monitorSet, OnMethodInvoked, monitorSet);
+ ExcuteMonitorInvok(DateTime.Now, monitorSet.InvokeDevice, this, monitorSet);
}
}
});
#endregion
}
- public void ResetAlarm()
+ public override void ResetAlarm()
{
int axis_sts;
uint clk;
diff --git a/src/Bro.UI.Device.Winform/MotionCard/CtrlMotionCardOperationBase.cs b/src/Bro.UI.Device.Winform/MotionCard/CtrlMotionCardOperationBase.cs
index ba0363c..2b8d8dd 100644
--- a/src/Bro.UI.Device.Winform/MotionCard/CtrlMotionCardOperationBase.cs
+++ b/src/Bro.UI.Device.Winform/MotionCard/CtrlMotionCardOperationBase.cs
@@ -1,9 +1,9 @@
-锘縰sing Bro.Common.Helper;
+锘縰sing Bro.Common.Base;
+using Bro.Common.Helper;
using Bro.Common.Interface;
+using Bro.Common.Model;
using Bro.Device.GTSCard;
using System;
-using System.Collections.Generic;
-using System.Data;
using System.Linq;
using System.Windows.Forms;
@@ -18,17 +18,23 @@
public IDevice Device { get; set; }
- //protected CameraBase Camera
- //{
- // get => Device as CameraBase;
- //}
+ public MotionCardOperationConfigBase MotionCardOperationConfig { get; set; }
+
+ /// <summary>
+ /// 褰撳墠鏉垮崱瀹炰緥
+ /// </summary>
+ protected MotionCardBase MotionCard
+ {
+ get => Device as MotionCardBase;
+ }
+
public CtrlMotionCardOperationBase(IDevice device)
{
InitializeComponent();
Device = device;
-
+ MotionCardOperationConfig = new MotionCardOperationConfigBase();
}
@@ -41,43 +47,22 @@
{
}
#endregion
- public void DownloadProcess(IProcess process)
- {
- throw new NotImplementedException();
- }
- public void OnProcessUpdated()
- {
- if (InvokeRequired)
- {
- Invoke(new Action(() => OnProcessUpdated()));
- }
- else
- {
- if (Process != null)
- {
- //_avaiableMethods = Process.ProcessMethodCollection.Where(u => u.InvokeType == _invokeType).Select(u => u.MethodCode).ToList();
-
- //LoadDevices();
- //LoadProcessMethods();
- }
- }
- }
private void RadioButton_CheckedChanged(object sender, EventArgs e)
{
//鍔犺浇瀵瑰簲杩愬姩鐨� movingConfig
if (radioP2P.Checked)
{
- movingConfig = GTSCardOperationConfig.MovingOps.FirstOrDefault(u => u.MoveMode == EnumHelper.MotorMoveMode.Normal);
+ movingConfig = MotionCardOperationConfig.MovingOps.FirstOrDefault(u => u.MoveMode == EnumHelper.MotorMoveMode.Normal);
}
else if (radioJog.Checked)
{
- movingConfig = GTSCardOperationConfig.MovingOps.FirstOrDefault(u => u.MoveMode == EnumHelper.MotorMoveMode.Jog);
+ movingConfig = MotionCardOperationConfig.MovingOps.FirstOrDefault(u => u.MoveMode == EnumHelper.MotorMoveMode.Jog);
}
else if (radioGoHome.Checked)
{
- movingConfig = GTSCardOperationConfig.MovingOps.FirstOrDefault(u => u.MoveMode == EnumHelper.MotorMoveMode.FindOri);
+ movingConfig = MotionCardOperationConfig.MovingOps.FirstOrDefault(u => u.MoveMode == EnumHelper.MotorMoveMode.FindOri);
}
propGrid.SelectedObject = movingConfig;
--
Gitblit v1.8.0