AITAPCData.cs 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. using System;
  2. using System.CodeDom;
  3. using System.Collections.Generic;
  4. using System.ComponentModel;
  5. using System.Globalization;
  6. using System.Linq;
  7. using System.Reflection;
  8. using System.Runtime.Serialization;
  9. using System.Text;
  10. using System.Windows.Data;
  11. using System.Windows.Input;
  12. using Aitex.Core.UI.MVVM;
  13. using MECF.Framework.Common.CommonData;
  14. namespace Aitex.Core.Common.DeviceData
  15. {
  16. [DataContract]
  17. [Serializable]
  18. public class AITAPCData : NotifiableItem, IDeviceData
  19. {
  20. [DataMember]
  21. public string Module { get; set; }
  22. [DataMember]
  23. public string DeviceName { get; set; }
  24. [DataMember]
  25. public string DisplayName { get; set; }
  26. [DataMember]
  27. public string DeviceSchematicId { get; set; }
  28. [DataMember]
  29. public string UnitPosition { get; set; }
  30. [DataMember]
  31. public string UnitPressure { get; set; }
  32. [DataMember]
  33. public string Description { get; set; }
  34. /// <summary>
  35. /// 量程
  36. /// </summary>
  37. [DataMember]
  38. public double MaxValuePosition { get; set; }
  39. [DataMember]
  40. public double MaxValuePressure { get; set; }
  41. /// <summary>
  42. /// MFC,PC
  43. /// </summary>
  44. [DataMember]
  45. public string Type { get; set; }
  46. [DataMember]
  47. public int ModeFeedback { get; set; }
  48. [DataMember]
  49. public int ModeSetPoint { get; set; }
  50. [DataMember]
  51. public float PositionFeedback { get; set; }
  52. [DataMember]
  53. public float PressureFeedback { get; set; }
  54. [DataMember]
  55. public float Pressure1Feedback { get; set; }
  56. [DataMember]
  57. public float Pressure2Feedback { get; set; }
  58. [DataMember]
  59. public float PressureSetPoint { get; set; }//界面设定
  60. [DataMember]
  61. public float PositionSetPoint { get; set; }//界面设定
  62. [DataMember]
  63. public float SlowRateSetPoint { get; set; }//界面设定
  64. [DataMember]
  65. public float SlowTargetPressureSetPoint { get; set; }//界面设定
  66. [DataMember]
  67. public int State { get; set; }
  68. [DataMember]
  69. public int HomingStatus { get; set; }
  70. [DataMember]
  71. public int SelectedControllerFeedback { get; set; }
  72. [DataMember]
  73. public int SelectedControllerSetPoint { get; set; }//界面设定
  74. [DataMember]
  75. public string PIDTable//界面设定
  76. {
  77. get;
  78. set;
  79. }
  80. [DataMember]
  81. public string AlarmWatchTable
  82. {
  83. get;
  84. set;
  85. }
  86. [DataMember]
  87. public float SetPoint { get; set; }//界面设定
  88. [DataMember]
  89. public string CommandSetPoint { get; set; }//界面设定
  90. [DataMember]
  91. public string LowPressWaitSetPoint { get; set; }//界面设定
  92. [DataMember]
  93. public string HardError { get; set; }
  94. [DataMember]
  95. public string HomeStatusDisplay { get; set; }
  96. public string TextModeSetPoint
  97. {
  98. get
  99. {
  100. switch (ModeSetPoint)
  101. {
  102. case (int)(PressureControlMode.PositionControl):
  103. return "Valve Angle";
  104. case (int)(PressureControlMode.Press1Control):
  105. return "Press";
  106. case (int)(PressureControlMode.Press2Control):
  107. return "Press2";
  108. case (int)(PressureControlMode.Open):
  109. return "Full Open";
  110. case (int)(PressureControlMode.Close):
  111. return "Full Close";
  112. case (int)(PressureControlMode.SlowVacuum):
  113. return "Slow Vac";
  114. case (int)(PressureControlMode.Hold):
  115. return "Hold";
  116. case (int)(PressureControlMode.Homing):
  117. return "Homing";
  118. default:
  119. return "Idle";
  120. }
  121. }
  122. }
  123. public string TextModeFeedback
  124. {
  125. get
  126. {
  127. switch (ModeFeedback)
  128. {
  129. case (int)(PressureControlMode.PositionControl):
  130. return "Valve Angle";
  131. case (int)(PressureControlMode.Press1Control):
  132. return "Press";
  133. case (int)(PressureControlMode.Press2Control):
  134. return "Press2";
  135. case (int)(PressureControlMode.Open):
  136. return "Full Open";
  137. case (int)(PressureControlMode.Close):
  138. return "Full Close";
  139. case (int)(PressureControlMode.SlowVacuum):
  140. return "Slow Vac";
  141. case (int)(PressureControlMode.Hold):
  142. return "Hold";
  143. case (int)(PressureControlMode.Homing):
  144. return "Homing";
  145. default:
  146. return "Idle";
  147. }
  148. }
  149. }
  150. public AITAPCData()
  151. {
  152. DisplayName = "Undefined";
  153. UnitPosition = "%";
  154. UnitPressure = "mTorr";
  155. Type = "TV";
  156. MaxValuePosition = 100;
  157. MaxValuePressure = 1000;
  158. }
  159. public void Update(IDeviceData data)
  160. {
  161. throw new NotImplementedException();
  162. }
  163. }
  164. }