AITRfPowerData.cs 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  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. public enum EnumRfPowerRegulationMode
  12. {
  13. [EnumMember]
  14. Undefined = 0,
  15. [EnumMember]
  16. Forward = 1,
  17. [EnumMember]
  18. Load = 2,
  19. [EnumMember]
  20. DcBias = 3,
  21. [EnumMember]
  22. VALimit = 4,
  23. [EnumMember]
  24. Power = 6,
  25. [EnumMember]
  26. Voltage = 7,
  27. [EnumMember]
  28. Current = 8,
  29. }
  30. [Serializable]
  31. public enum EnumRfPowerWorkMode
  32. {
  33. [EnumMember]
  34. Undefined = 0,
  35. [EnumMember]
  36. ContinuousWaveMode = 1,
  37. [EnumMember]
  38. PulsingMode = 2,
  39. }
  40. [Serializable]
  41. public enum EnumRfPowerClockMode
  42. {
  43. [EnumMember]
  44. Undefined = 0,
  45. [EnumMember]
  46. Phase = 1,
  47. [EnumMember]
  48. FreqManual = 2,
  49. [EnumMember]
  50. FreqAuto = 3,
  51. }
  52. [DataContract]
  53. [Serializable]
  54. public class AITRfPowerData : NotifiableItem, IDeviceData
  55. {
  56. [DataMember]
  57. public string Module { get; set; }
  58. [DataMember]
  59. public string DeviceName { get; set; }
  60. /// <summary>
  61. /// 显示在界面上的名称
  62. /// </summary>
  63. [DataMember]
  64. public string DisplayName { get; set; }
  65. /// <summary>
  66. /// IO 表中定义的物理编号,物理追溯使用 比如: M122
  67. /// </summary>
  68. [DataMember]
  69. public string DeviceSchematicId { get; set; }
  70. [DataMember]
  71. public string Description { get; set; }
  72. [DataMember]
  73. public string UnitPower { get; set; }
  74. [DataMember]
  75. public string UnitFrequency { get; set; }
  76. [DataMember]
  77. public string UnitDuty { get; set; }
  78. [DataMember]
  79. public string UnitVoltage { get; set; }
  80. [DataMember]
  81. public string UnitCurrent { get; set; }
  82. [DataMember]
  83. public double ScalePower { get; set; }
  84. [DataMember]
  85. public double ScaleFrequency { get; set; }
  86. [DataMember]
  87. public double ScaleDuty { get; set; }
  88. [DataMember]
  89. public float ScaleCurrent { get; set; }
  90. [DataMember]
  91. public float PowerSetPoint { get; set; }
  92. [DataMember]
  93. public float FrequencySetPoint { get; set; }
  94. [DataMember]
  95. public float DutySetPoint { get; set; }
  96. [DataMember]
  97. public float VoltageSetPoint { get; set; }
  98. [DataMember]
  99. public float CurrentSetPoint { get; set; }
  100. [DataMember]
  101. public bool IsInterlockOk { get; set; }
  102. [DataMember]
  103. public bool IsPulseType { get; set; }
  104. [DataMember]
  105. public bool IsRfOn { get; set; }
  106. [DataMember]
  107. public bool IsRfAlarm { get; set; }
  108. [DataMember]
  109. public float ForwardPower { get; set; }
  110. [DataMember]
  111. public float ReflectPower { get; set; }
  112. [DataMember]
  113. public float Voltage { get; set; }
  114. [DataMember]
  115. public float Current { get; set; }
  116. [DataMember]
  117. public bool IsToleranceError { get; set; }
  118. [DataMember]
  119. public bool IsToleranceWarning { get; set; }
  120. [DataMember]
  121. public float Frequency { get; set; }
  122. [DataMember]
  123. public float PulsingFrequency { get; set; }
  124. [DataMember]
  125. public float PulsingDutyCycle { get; set; }
  126. [DataMember]
  127. public float PulsingReverseTime { get; set; }
  128. public string TextOnOff
  129. {
  130. get
  131. {
  132. return IsRfOn ? "On" : "Off";
  133. }
  134. }
  135. [DataMember]
  136. public EnumRfPowerRegulationMode RegulationMode { get; set; }
  137. [DataMember]
  138. public EnumRfPowerClockMode ClockMode { get; set; }
  139. [DataMember]
  140. public EnumRfPowerClockMode ClockModeSetpoint { get; set; }
  141. public AITRfPowerData()
  142. {
  143. DisplayName = "Undefined";
  144. }
  145. public void Update(IDeviceData data)
  146. {
  147. }
  148. }
  149. public enum AITRfPowerOperation
  150. {
  151. SetPowerOnOff,
  152. SetMode,
  153. SetContinuousPower,
  154. SetPulsingPower,
  155. SetPower,
  156. SetPulsingFrequency,
  157. SetPulsingDuty,
  158. SetMatchMode,
  159. SetMatchProcessMode,
  160. SetMatchPosition, //同时设置2个
  161. SetMatchPositionC1,
  162. SetMatchPositionC2,
  163. }
  164. public class AITRfPowerProperty
  165. {
  166. public const string RFEnable = "RFEnable";
  167. public const string RFSetPoint = "RFSetPoint";
  168. public const string RFForwardPower = "RFForwardPower";
  169. public const string RFReflectPower = "RFReflectPower";
  170. public const string RFRatio = "RFRatio";
  171. public const string RFInterlock = "RFInterlock";
  172. public const string RFDuty = "RFDuty";
  173. public const string RFFrequency = "RFFrequency";
  174. public const string RFMode = "RFMode";
  175. public const string RFMatchPositionC1Feedback = "RFMatchPositionC1Feedback";
  176. public const string RFMatchPositionC2Feedback = "RFMatchPositionC2Feedback";
  177. public const string RFMatchPositionC1SetPoint = "RFMatchPositionC1SetPoint";
  178. public const string RFMatchPositionC2SetPoint = "RFMatchPositionC2SetPoint";
  179. public const string RFAlarm = "RFAlarm";
  180. public const string Voltage = "Voltage";
  181. public const string Current = "Current";
  182. public const string IsOverTemp = "IsOverTemp";
  183. }
  184. }