From f39f00ee0ee41e169fa24ccb85b4af36090dbd25 Mon Sep 17 00:00:00 2001
From: xcd <834800634@qq.com>
Date: 星期三, 08 七月 2020 16:38:51 +0800
Subject: [PATCH] Merge branch 'master' of http://gitblit.broconcentric.com:8088/r/M071

---
 src/Bro.UI.Device.Winform/MotionCard/FrmMotionCardOperationBase.cs |   62 +++++++++++++-----------------
 1 files changed, 27 insertions(+), 35 deletions(-)

diff --git a/src/Bro.UI.Device.Winform/MotionCard/FrmMotionCardOperationBase.cs b/src/Bro.UI.Device.Winform/MotionCard/FrmMotionCardOperationBase.cs
index cfe0328..6118331 100644
--- a/src/Bro.UI.Device.Winform/MotionCard/FrmMotionCardOperationBase.cs
+++ b/src/Bro.UI.Device.Winform/MotionCard/FrmMotionCardOperationBase.cs
@@ -3,6 +3,7 @@
 using Bro.Common.Interface;
 using Bro.Common.Model;
 using System;
+using System.Linq;
 using System.Windows.Forms;
 
 namespace Bro.UI.Device.Winform
@@ -16,7 +17,7 @@
 
         public IDevice Device { get; set; }
 
-        public MotionCardOperationConfigBase MotionCardOperationConfig { get; set; }
+        public MovingOption MotionCardMovingOption { get; set; } = new MovingOption();
 
         /// <summary>
         /// 褰撳墠鏉垮崱瀹炰緥
@@ -32,68 +33,59 @@
             InitializeComponent();
 
             Device = device;
-            MotionCardOperationConfig = new MotionCardOperationConfigBase();
-
+            InitialLayout();
         }
-
-        MovingOption movingConfig = null;
-
-        #region ILogoutput
-        public Action<LogMsg> OnLogMsgOutput { get; set; }
-
-        public void LogDisplay(LogMsg msg)
+        private void InitialLayout()
         {
-        }
-        #endregion
+            foreach (var axisConfig in MotionCard.IConfig.AxisSettings.FindAll(u => u.IsAxisEnabled))
+            {
+                CtrlMotionCardAxisOperation axisOperation = new CtrlMotionCardAxisOperation(Device, axisConfig.AxisIndex, axisConfig.AxisName);
+                axisOperation.Dock = DockStyle.Fill;
+                flowLayoutPanel1.Controls.Add(axisOperation);
 
+            }
 
-        private void RadioButton_CheckedChanged(object sender, EventArgs e)
-        {
-            //鍔犺浇瀵瑰簲杩愬姩鐨� movingConfig
-            //if (radioP2P.Checked)
-            //{
-            //    movingConfig = MotionCardOperationConfig.MovingOps.FirstOrDefault(u => u.MoveMode == EnumHelper.MotorMoveMode.Normal);
-            //}
-            //else if (radioJog.Checked)
-            //{
-            //    movingConfig = MotionCardOperationConfig.MovingOps.FirstOrDefault(u => u.MoveMode == EnumHelper.MotorMoveMode.Jog);
-            //}
-            //else if (radioGoHome.Checked)
-            //{
-            //    movingConfig = MotionCardOperationConfig.MovingOps.FirstOrDefault(u => u.MoveMode == EnumHelper.MotorMoveMode.FindOri);
-            //}
-
-            propGrid.SelectedObject = movingConfig;
+            propGrid.SelectedObject = MotionCardMovingOption;
         }
 
         private void buttonClearStatus_Click(object sender, EventArgs e)
         {
-
+            MotionCard.ClearStatus(1, MotionCard.IConfig.AxisSettings.FindAll(u => u.IsAxisEnabled).Count);
         }
 
         private void buttonServoEnable_Click(object sender, EventArgs e)
         {
-
+            int sts = MotionCard.GetAxisStatus(MotionCardMovingOption.AxisIndex);
+            if ((sts & 0x200) == 0)//鍏抽棴鐘舵��
+            {
+                MotionCard.AxisOnAsync(MotionCardMovingOption.AxisIndex).GetAwaiter().GetResult();
+                buttonServoEnable.Text = "浼烘湇宸插紑鍚�";
+            }
+            else
+            {
+                MotionCard.AxisOffAsync(MotionCardMovingOption.AxisIndex).GetAwaiter().GetResult();
+                buttonServoEnable.Text = "浼烘湇宸插叧闂�";
+            }
         }
 
         private void buttonPositionReset_Click(object sender, EventArgs e)
         {
-
+            var res = MotionCard.PositionReset(MotionCardMovingOption.AxisIndex, 1);
         }
 
         private void btnStart_Click(object sender, EventArgs e)
         {
-
+            MotionCard.SingleAxisMoving(MotionCardMovingOption).GetAwaiter().GetResult();
         }
 
         private void buttonSmoothStop_Click(object sender, EventArgs e)
         {
-
+            MotionCard.MoveStop(MotionCardMovingOption.AxisIndex, 0).GetAwaiter().GetResult();
         }
 
         private void buttonEmergencyStop_Click(object sender, EventArgs e)
         {
-
+            MotionCard.MoveStop(MotionCardMovingOption.AxisIndex, 1).GetAwaiter().GetResult();
         }
 
     }

--
Gitblit v1.8.0