| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177 | 
							- using MECF.Framework.Common.Device.Galil;
 
- using MECF.Framework.Common.TwinCat;
 
- using System;
 
- using System.Collections.Generic;
 
- using System.Linq;
 
- using System.Reflection;
 
- using System.Text;
 
- using System.Threading.Tasks;
 
- namespace PunkHPX8_RT.Devices.AXIS
 
- {
 
-     public class GalilCommonAxis
 
-     {
 
-         #region 常量
 
-         private const string IS_SWITCH_ON = "IsSwitchOn";
 
-         private const string STOP_CODE = "StopCode";
 
-         private const string MOTOR_POSITION = "MotorPosition";
 
-         private const string POSITION_ERROR = "PositionError";
 
-         private const string ACTUAL_TORQUE = "ActualTorque";
 
-         private const string ACTUAL_VELOCITY = "Velocity";
 
-         private const string FORWARD_LIMIT = "ForwardLimit";
 
-         private const string TARGET_POSITION = "ReferencePosition";
 
-         #endregion
 
-         #region 内部变量
 
-         private string _module;
 
-         private string _name;
 
-         private JetAxisBase _axis;
 
-         #endregion
 
-         /// <summary>
 
-         /// 构造函数
 
-         /// </summary>
 
-         /// <param name="_module"></param>
 
-         /// <param name="name"></param>
 
-         public GalilCommonAxis(string module,string name,JetAxisBase jetAxisBase)
 
-         {
 
-             _module = module;
 
-             _name = name;
 
-             _axis = jetAxisBase;
 
-         }
 
-         /// <summary>
 
-         /// 订阅变量
 
-         /// </summary>
 
-         public void SubscriptionVariable()
 
-         {
 
-             _axis.AxisSubscribeUpdateVariable(IS_SWITCH_ON);
 
-             _axis.AxisSubscribeUpdateVariable(STOP_CODE);
 
-             _axis.AxisSubscribeUpdateVariable(MOTOR_POSITION);
 
-             _axis.AxisSubscribeUpdateVariable(POSITION_ERROR);
 
-             _axis.AxisSubscribeUpdateVariable(ACTUAL_TORQUE);
 
-             _axis.AxisSubscribeUpdateVariable(ACTUAL_VELOCITY);
 
-             _axis.AxisSubscribeUpdateVariable(FORWARD_LIMIT);
 
-             _axis.AxisSubscribeUpdateVariable(TARGET_POSITION);
 
-         }
 
-         /// <summary>
 
-         /// 上电
 
-         /// </summary>
 
-         /// <returns></returns>
 
-         public bool WriteSwitchOn()
 
-         {
 
-             return GalilControllerCfgManager.Instance.SetAxisCommand(_module, _name, "SH", null);
 
-         }
 
-         /// <summary>
 
-         /// 下电
 
-         /// </summary>
 
-         /// <returns></returns>
 
-         public bool WriteSwitchOff()
 
-         {
 
-             return GalilControllerCfgManager.Instance.SetAxisCommand(_module, _name, "MO", null);
 
-         }
 
-         /// <summary>
 
-         /// 写入相对位置
 
-         /// </summary>
 
-         /// <param name="referencePosition"></param>
 
-         /// <returns></returns>
 
-         public bool WriteReferencePosition(int referencePosition)
 
-         {
 
-             return GalilControllerCfgManager.Instance.SetAxisCommand(_module, _name, "PR", referencePosition);
 
-         }
 
-         /// <summary>
 
-         /// 写入绝对位置
 
-         /// </summary>
 
-         /// <param name="referencePosition"></param>
 
-         /// <returns></returns>
 
-         public bool WriteAbsolutePosition(int absolutePosition)
 
-         {
 
-             return GalilControllerCfgManager.Instance.SetAxisCommand(_module, _name, "PA", absolutePosition);
 
-         }
 
-         /// <summary>
 
-         /// 写入速度
 
-         /// </summary>
 
-         /// <param name="referencePosition"></param>
 
-         /// <returns></returns>
 
-         public bool WriteSpeed(int speed)
 
-         {
 
-             return GalilControllerCfgManager.Instance.SetAxisCommand(_module, _name, "SP", speed);
 
-         }
 
-         /// <summary>
 
-         /// 写入加速度
 
-         /// </summary>
 
-         /// <param name="referencePosition"></param>
 
-         /// <returns></returns>
 
-         public bool WriteAcceleration(int acceleration)
 
-         {
 
-             return GalilControllerCfgManager.Instance.SetAxisCommand(_module, _name, "AC", acceleration);
 
-         }
 
-         /// <summary>
 
-         /// 写入减速度
 
-         /// </summary>
 
-         /// <param name="referencePosition"></param>
 
-         /// <returns></returns>
 
-         public bool WriteDeceleration(int deceleration)
 
-         {
 
-             return GalilControllerCfgManager.Instance.SetAxisCommand(_module, _name, "DC", deceleration);
 
-         }
 
-         /// <summary>
 
-         /// 停止
 
-         /// </summary>
 
-         /// <returns></returns>
 
-         public bool WriteStop()
 
-         {
 
-             return GalilControllerCfgManager.Instance.SetAxisCommand(_module, _name, "ST", null);
 
-         }
 
-         /// <summary>
 
-         /// 开始运动
 
-         /// </summary>
 
-         /// <returns></returns>
 
-         public bool WriteStartMotion()
 
-         {
 
-             return GalilControllerCfgManager.Instance.SetAxisCommand(_module, _name, "BG", null);
 
-         }
 
-         /// <summary>
 
-         /// Home 电机
 
-         /// </summary>
 
-         /// <returns></returns>
 
-         public bool WriteHomeAxisCommand()
 
-         {
 
-             return GalilControllerCfgManager.Instance.SetAxisCommand(_module, _name, "HM", null);
 
-         }
 
-         /// <summary>
 
-         /// Home 电机
 
-         /// </summary>
 
-         /// <returns></returns>
 
-         public bool WriteFIAxisCommand()
 
-         {
 
-             return GalilControllerCfgManager.Instance.SetAxisCommand(_module, _name, "FI", null);
 
-         }
 
-         /// <summary>
 
-         /// Home 电机
 
-         /// </summary>
 
-         /// <returns></returns>
 
-         public bool WriteCNCommand(string cn)
 
-         {
 
-             return GalilControllerCfgManager.Instance.SetSystemCommand(_module, _name, "CN", cn);
 
-         }
 
-         /// <summary>
 
-         /// 手动置零
 
-         /// </summary>
 
-         /// <returns></returns>
 
-         public bool WriteDP(int dp)
 
-         {
 
-             bool result = GalilControllerCfgManager.Instance.SetAxisCommand(_module, _name, "DP", dp);
 
-             if (result)
 
-             {
 
-                 return GalilControllerCfgManager.Instance.SetAxisCommand(_module, _name, "DE", dp);
 
-             }
 
-             return false;
 
-         }
 
-     }
 
- }
 
 
  |