AITServoMotorData.cs 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Linq;
  5. using System.Reflection;
  6. using System.Runtime.Serialization;
  7. using System.Text;
  8. using System.Windows.Input;
  9. using Aitex.Core.UI.MVVM;
  10. using MECF.Framework.Common.CommonData;
  11. namespace Aitex.Core.Common.DeviceData
  12. {
  13. [DataContract]
  14. public enum ServoState
  15. {
  16. [EnumMember]
  17. Unknown,
  18. [EnumMember]
  19. NotInitial,
  20. [EnumMember]
  21. Idle,
  22. [EnumMember]
  23. Moving,
  24. [EnumMember]
  25. Error,
  26. }
  27. [DataContract]
  28. [Serializable]
  29. public class AITServoMotorData : NotifiableItem, IDeviceData
  30. {
  31. [DataMember]
  32. public string Module { get; set; }
  33. [DataMember]
  34. public string DeviceName { get; set; }
  35. /// <summary>
  36. /// 显示在界面上的名称
  37. /// </summary>
  38. [DataMember]
  39. public string DisplayName { get; set; }
  40. /// <summary>
  41. /// IO 表中定义的物理编号,物理追溯使用 比如: V122
  42. /// </summary>
  43. [DataMember]
  44. public string DeviceSchematicId { get; set; }
  45. [DataMember]
  46. public bool IsServoOn { get; set; }
  47. [DataMember]
  48. public bool IsStopped { get; set; }
  49. [DataMember]
  50. public bool IsError { get; set; }
  51. [DataMember]
  52. public bool IsRunning { get; set; }
  53. [DataMember]
  54. public bool IsEmo { get; set; }
  55. [DataMember]
  56. public bool IsAuto { get; set; }
  57. [DataMember]
  58. public bool IsManual { get; set; }
  59. [DataMember]
  60. public bool IsServoNormal { get; set; }
  61. [DataMember]
  62. public bool IsServoNoWarning { get; set; }
  63. [DataMember]
  64. public bool IsServoNoAlarm { get; set; }
  65. [DataMember]
  66. public bool IsNop { get; set; }
  67. [DataMember]
  68. public bool IsPositionComplete { get; set; }
  69. [DataMember]
  70. public bool IsNLimit { get; set; }
  71. [DataMember]
  72. public bool IsPLimit { get; set; }
  73. #region Boffotto
  74. [DataMember]
  75. public bool DiPosFeedBack1 { get; set; }
  76. [DataMember]
  77. public bool DiPosFeedBack2 { get; set; }
  78. [DataMember]
  79. public bool DiPosFeedBack3 { get; set; }
  80. [DataMember]
  81. public bool DiReady { get; set; }
  82. [DataMember]
  83. public bool DiOnTarget { get; set; }
  84. [DataMember]
  85. public bool DiOnError { get; set; }
  86. [DataMember]
  87. public bool DiOnLeftLimit { get; set; }
  88. [DataMember]
  89. public bool DiOnRightLimit { get; set; }
  90. [DataMember]
  91. public bool DiOnHomeSensor { get; set; }
  92. [DataMember]
  93. public bool DoStart { get; set; }
  94. [DataMember]
  95. public bool DoPos1 { get; set; }
  96. [DataMember]
  97. public bool DoPos2 { get; set; }
  98. [DataMember]
  99. public bool DoPos3 { get; set; }
  100. [DataMember]
  101. public bool DoHomeOn { get; set; }
  102. [DataMember]
  103. public bool DoFreeOn { get; set; }
  104. [DataMember]
  105. public bool DoStop { get; set; }
  106. [DataMember]
  107. public bool DoReset { get; set; }
  108. [DataMember]
  109. public bool DoJogFwd { get; set; }
  110. [DataMember]
  111. public bool DoJogRev { get; set; }
  112. #endregion
  113. [DataMember]
  114. public int ErrorCode { get; set; }
  115. [DataMember]
  116. public float CurrentPosition { get; set; }
  117. [DataMember]
  118. public float CurrentSpeed { get; set; }
  119. [DataMember]
  120. public string CurrentStatus { get; set; }
  121. [DataMember]
  122. public float JogSpeedSetPoint { get; set; }
  123. [DataMember]
  124. public float AutoSpeedSetPoint { get; set; }
  125. [DataMember]
  126. public float AccSpeedSetPoint { get; set; }
  127. [DataMember]
  128. public ServoState State { get; set; }
  129. public AITServoMotorData()
  130. {
  131. DisplayName = "Undefined Servo Motor";
  132. }
  133. public void Update(IDeviceData data)
  134. {
  135. }
  136. }
  137. public class AITServoMotorOperation
  138. {
  139. public const string Home = "Home";
  140. public const string SetServoOn = "SetServoOn";
  141. public const string SetServoOff = "SetServoOff";
  142. public const string MoveTo = "MoveTo";
  143. public const string MoveBy = "MoveBy";
  144. public const string Reset = "Reset";
  145. public const string Stop = "Stop";
  146. }
  147. public class AITServoMotorProperty
  148. {
  149. public const string IsServoOn = "IsServoOn";
  150. public const string IsStopped = "IsStopped";
  151. public const string IsError = "IsError";
  152. public const string CurrentPosition = "CurrentPosition";
  153. public const string CurrentStatus = "CurrentStatus";
  154. public const string IsWalkingShaftStart = "IsWalkingShaftStart";
  155. public const string IsWalkingShaftIn1 = "IsWalkingShaftIn1";
  156. public const string IsWalkingShaftIn2 = "IsWalkingShaftIn2";
  157. public const string IsWalkingShaftIn3 = "IsWalkingShaftIn3";
  158. public const string IsWalkingShaftHome = "IsWalkingShaftHome";
  159. public const string IsWalkingShaftFree = "IsWalkingShaftFree";
  160. public const string IsWalkingShafStop = "IsWalkingShafStop";
  161. public const string IsWalkingShaftReset = "IsWalkingShaftReset";
  162. public const string IsWalkingShaftJogFwd = "IsWalkingShaftJogFwd";
  163. public const string IsWalkingShaftJogRev = "IsWalkingShaftJogRev";
  164. }
  165. }