AITRfData.cs 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285
  1. using System;
  2. using System.ComponentModel;
  3. using System.Reflection;
  4. using System.Runtime.Serialization;
  5. using System.Windows.Input;
  6. using Aitex.Core.UI.MVVM;
  7. using MECF.Framework.Common.CommonData;
  8. namespace Aitex.Core.Common.DeviceData
  9. {
  10. [Serializable]
  11. [DataContract]
  12. public enum RfMode
  13. {
  14. [EnumMember]
  15. ContinuousWaveMode = 1,
  16. [EnumMember]
  17. PulsingMode = 2,
  18. }
  19. public enum PatronRfMatchMode
  20. {
  21. Manual = 1,
  22. Auto = 2,
  23. }
  24. public enum TritonRfMatchMode
  25. {
  26. Manual = 0,
  27. Auto = 1,
  28. }
  29. public enum RfMatchModeProcess
  30. {
  31. TritonPresetMode = 0,
  32. TritonAutoMode = 1,
  33. }
  34. [DataContract]
  35. [Serializable]
  36. public class AITRfData : NotifiableItem, IDeviceData
  37. {
  38. [DataMember]
  39. public string Module { get; set; }
  40. [DataMember]
  41. public string DeviceName { get; set; }
  42. /// <summary>
  43. /// 显示在界面上的名称
  44. /// </summary>
  45. [DataMember]
  46. public string DisplayName { get; set; }
  47. /// <summary>
  48. /// IO 表中定义的物理编号,物理追溯使用 比如: M122
  49. /// </summary>
  50. [DataMember]
  51. public string DeviceSchematicId { get; set; }
  52. [DataMember]
  53. public string Description { get; set; }
  54. [DataMember]
  55. public string UnitPower { get; set; }
  56. [DataMember]
  57. public string UnitFrequency { get; set; }
  58. [DataMember]
  59. public string UnitDuty { get; set; }
  60. [DataMember]
  61. public double ScalePower { get; set; }
  62. [DataMember]
  63. public double ScaleFrequency { get; set; }
  64. [DataMember]
  65. public double ScaleDuty { get; set; }
  66. [DataMember]
  67. public float PowerSetPoint { get; set; }
  68. [DataMember]
  69. public float FrequencySetPoint { get; set; }
  70. [DataMember]
  71. public float DutySetPoint { get; set; }
  72. [DataMember]
  73. public bool IsInterlockOk { get; set; }
  74. [DataMember]
  75. public bool IsRfOn { get; set; }
  76. [DataMember]
  77. public bool IsRfAlarm { get; set; }
  78. [DataMember]
  79. public float ForwardPower { get; set; }
  80. [DataMember]
  81. public float ReflectPower { get; set; }
  82. [DataMember]
  83. public int WorkMode { get; set; }
  84. [DataMember]
  85. public string PowerOnElapsedTime
  86. {
  87. get;
  88. set;
  89. }
  90. [DataMember]
  91. public bool EnablePulsing
  92. {
  93. get;
  94. set;
  95. }
  96. [DataMember]
  97. public bool EnableC1C2Position
  98. {
  99. get;
  100. set;
  101. }
  102. [DataMember]
  103. public bool EnableReflectPower
  104. {
  105. get;
  106. set;
  107. }
  108. [DataMember]
  109. public bool EnableVoltageCurrent
  110. {
  111. get;
  112. set;
  113. }
  114. [DataMember]
  115. public int MatchMode
  116. {
  117. get;
  118. set;
  119. }
  120. [DataMember]
  121. public int MatchPresetMode
  122. {
  123. get;
  124. set;
  125. }
  126. [DataMember]
  127. public float MatchPositionC1
  128. {
  129. get;
  130. set;
  131. }
  132. [DataMember]
  133. public float MatchPositionC2
  134. {
  135. get;
  136. set;
  137. }
  138. [DataMember]
  139. public float MatchPositionC1SetPoint
  140. {
  141. get;
  142. set;
  143. }
  144. [DataMember]
  145. public float MatchPositionC2SetPoint
  146. {
  147. get;
  148. set;
  149. }
  150. [DataMember]
  151. public float Voltage
  152. {
  153. get;
  154. set;
  155. }
  156. [DataMember]
  157. public float Current
  158. {
  159. get;
  160. set;
  161. }
  162. public string TextWorkMode
  163. {
  164. get
  165. {
  166. return WorkMode == (int) RfMode.ContinuousWaveMode ? "Continuous" : "Pulsing";
  167. }
  168. }
  169. public string TextOnOff
  170. {
  171. get
  172. {
  173. return IsRfOn ? "On" : "Off";
  174. }
  175. }
  176. public string PatronTextMatchMode
  177. {
  178. get
  179. {
  180. return MatchMode == (int)PatronRfMatchMode.Manual ? "Manual" : "Auto";
  181. }
  182. }
  183. public string TritonTextMatchMode
  184. {
  185. get
  186. {
  187. return MatchMode == (int)TritonRfMatchMode.Manual ? "Manual" : "Auto";
  188. }
  189. }
  190. public string TritonMatchProcessModeDisplay
  191. {
  192. get
  193. {
  194. return MatchMode == (int)TritonRfMatchMode.Manual ? "Preset" : "Auto";
  195. }
  196. }
  197. public AITRfData()
  198. {
  199. DisplayName = "Undefined";
  200. }
  201. public void Update(IDeviceData data)
  202. {
  203. throw new NotImplementedException();
  204. }
  205. }
  206. public enum AITRfOperation
  207. {
  208. SetPowerOnOff,
  209. SetMode,
  210. SetContinuousPower,
  211. SetPulsingPower,
  212. SetPower,
  213. SetPulsingFrequency,
  214. SetPulsingDuty,
  215. SetMatchMode,
  216. SetMatchProcessMode,
  217. SetMatchPosition, //同时设置2个
  218. SetMatchPositionC1,
  219. SetMatchPositionC2,
  220. }
  221. public class AITRfProperty
  222. {
  223. public const string RFEnable = "RFEnable";
  224. public const string RFSetPoint = "RFSetPoint";
  225. public const string RFForwardPower = "RFForwardPower";
  226. public const string RFReflectPower = "RFReflectPower";
  227. public const string RFRatio = "RFRatio";
  228. public const string RFInterlock = "RFInterlock";
  229. public const string RFDuty = "RFDuty";
  230. public const string RFFrequency = "RFFrequency";
  231. public const string RFMode = "RFMode";
  232. public const string RFMatchPositionC1Feedback = "RFMatchPositionC1Feedback";
  233. public const string RFMatchPositionC2Feedback = "RFMatchPositionC2Feedback";
  234. public const string RFMatchPositionC1SetPoint = "RFMatchPositionC1SetPoint";
  235. public const string RFMatchPositionC2SetPoint = "RFMatchPositionC2SetPoint";
  236. public const string RFAlarm = "RFAlarm";
  237. public const string Voltage = "Voltage";
  238. public const string Current = "Current";
  239. public const string IsOverTemp = "IsOverTemp";
  240. }
  241. }