ClsPressure.cs 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351
  1. using BaseLibRWFile;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using System.Windows.Forms;
  8. namespace HRT_Measure
  9. {
  10. public class ClsPressure
  11. {
  12. public ClsPressure(string strInfo)
  13. {
  14. string[] arrStr = strInfo.Split(',');
  15. Name = arrStr[0];
  16. Address = arrStr[1].Remove(0, 1);
  17. type = arrStr[2];
  18. Scale = Convert.ToSingle(arrStr[3]);
  19. }
  20. public string Name = "";
  21. public string Address = "";
  22. public string type = "";
  23. public string value = "";
  24. public float Scale = 1.0f;
  25. }
  26. public class ClsPLCIO
  27. {
  28. public string ResetAdd = "";
  29. public string SetAdd = "";
  30. public string LedResetAdd = "";
  31. public string LedSetAdd = "";
  32. public string SensorResetAdd = "";
  33. public string SensorSetAdd = "";
  34. public string ResetEnableAdd = "";
  35. public string SetEnableAdd = "";
  36. public string PLCName = "";
  37. public string CylinderName = "";
  38. public bool isLedResetOn = false;
  39. public bool isLedSetOn = false;
  40. public bool isSensorResetOn = false;
  41. public bool isSensorSetOn = false;
  42. public bool isResetEnableOn = false;
  43. public bool isSetEnableOn = false;
  44. public ClsPLCIO(string plc, string strInfo)
  45. {
  46. PLCName = plc;
  47. string[] arrStr = strInfo.Split(',');
  48. //气缸名称,复位名称-复位点位-指示灯点位-使能点位-感应器点位,置位名称-置位点位-指示灯点位-使能点位-感应器点位
  49. CylinderName = arrStr[0];
  50. if (arrStr.Length == 2)
  51. {
  52. string[] arrStrAdd = arrStr[1].Split('-');
  53. SetAdd = arrStrAdd[1];
  54. LedSetAdd = arrStrAdd[2];
  55. SetEnableAdd = arrStrAdd[3];
  56. }
  57. else if (arrStr.Length == 3)
  58. {
  59. string strreset = arrStr[1];
  60. string[] arrreset = strreset.Split('-');
  61. ResetAdd = arrreset[1];
  62. LedResetAdd = arrreset[2];
  63. ResetEnableAdd = arrreset[3];
  64. if (arrreset.Length == 5)
  65. {
  66. SensorResetAdd = arrreset[4];
  67. }
  68. string strset = arrStr[2];
  69. string[] arrset = strset.Split('-');
  70. SetAdd = arrset[1];
  71. LedSetAdd = arrset[2];
  72. SetEnableAdd = arrset[3];
  73. if (arrset.Length == 5)
  74. {
  75. SensorSetAdd = arrset[4];
  76. }
  77. }
  78. }
  79. }
  80. public class ClsAlm
  81. {
  82. public ClsAlm(string plc, string strInfo)
  83. {
  84. PLCName = plc;
  85. string[] arrstr = strInfo.Split(',');
  86. AlmName = arrstr[0];
  87. AlmAdd = arrstr[1];
  88. }
  89. public string PLCName = "";
  90. public string AlmName = "";
  91. public string AlmAdd = "";
  92. public bool isAlm = false;
  93. }
  94. public class PLCInitIO
  95. {
  96. //strHandOrAuto = "DB20.494.5";
  97. //strInitDone = "DB48.24.4";
  98. //strWait = "DB20.495.1";
  99. //strAutoRunning = "DB20.495.2";
  100. //strAlm = "DB20.495.0";
  101. //string strIO = "DB20.494.5,DB48.24.4,DB20.495.1,DB20.495.2,DB20.495.0";
  102. public PLCInitIO(string plc, string strInfo)
  103. {
  104. PLCName = plc;
  105. string[] strArr = strInfo.Split(',');
  106. HandOrAutoAdd = strArr[0];
  107. InitDoneAdd = strArr[1];
  108. WaitAdd = strArr[2];
  109. AutoRunningAdd = strArr[3];
  110. AlmAdd = strArr[4];
  111. btnInitAdd = strArr[5];
  112. btnExcetionQuitAdd = strArr[6];
  113. btnStopAdd = strArr[7];
  114. btnStartAdd = strArr[8];
  115. btnHandOrAutoAdd = strArr[9];
  116. }
  117. public string PLCName = "";
  118. public string HandOrAutoAdd = "";
  119. public string InitDoneAdd = "";
  120. public string WaitAdd = "";
  121. public string AutoRunningAdd = "";
  122. public string AlmAdd = "";
  123. public string btnInitAdd = "";
  124. public string btnExcetionQuitAdd = "";
  125. public string btnStopAdd = "";
  126. public string btnStartAdd = "";
  127. public string btnHandOrAutoAdd = "";
  128. public bool isHandOrAuto = false;
  129. public bool isInitDone = false;
  130. public bool isWait = false;
  131. public bool isAutoRunning = false;
  132. public bool isAlm = false;
  133. public bool isBtnInit = false;
  134. public bool isBtnExceptionQuit = false;
  135. public bool isBtnStop = false;
  136. public bool isBtnStart = false;
  137. public bool isBtnHandOrAuto = false;
  138. }
  139. public class ClsAxisPos
  140. {
  141. public string GoAdd = "";
  142. public string LightAdd = "";
  143. public string PosName = "";
  144. public string PLCName = "";
  145. public string PosAdd = "";
  146. public string SpeedAdd = "";
  147. public string AxisName = "";
  148. public bool isLightOn = false;
  149. public ushort uGoValue = 0;
  150. public ushort GoCurrValue = 0;
  151. public Ini newIni;
  152. public ClsAxisPos(string plc, string strAxisName, string strInfo)
  153. {
  154. PLCName = plc;
  155. AxisName = strAxisName;
  156. string[] arrStr = strInfo.Split(',');
  157. PosName = arrStr[0];
  158. LightAdd = arrStr[1];
  159. GoAdd = arrStr[2];
  160. uGoValue = Convert.ToUInt16(arrStr[3]);
  161. PosAdd = arrStr[4];
  162. SpeedAdd = arrStr[5];
  163. newIni = new Ini(Application.StartupPath + $"\\Config\\PLCAxis{PLCName}.ini");
  164. }
  165. public void WritePara(string strPosName, string axisName, string strValue)
  166. {
  167. newIni.WriteIni(axisName, strPosName, strValue);
  168. }
  169. public string ReadPara(string axisName, string strPosName)
  170. {
  171. return newIni.ReadIni(axisName, strPosName, "20");
  172. }
  173. }
  174. public class ClsAxis
  175. {
  176. public string 当前位置 = "";
  177. public string 异常代码 = "";
  178. public string 点动速度 = "";
  179. public string 寸动负 = "";
  180. public string 寸动正 = "";
  181. public string 轴使能 = "";
  182. public string 回原点 = "";
  183. public string 使能完成 = "";
  184. public string 运行允许 = "";
  185. public string 异常 = "";
  186. public string 正极限 = "";
  187. public string 原点 = "";
  188. public string 负极限 = "";
  189. public string 定位 = "";
  190. public string AxisName = "";
  191. public string PLCName = "";
  192. public int i当前位置 = 0;
  193. public short s异常代码 = 0;
  194. public int i点动速度 = 0;
  195. public bool is轴使能 = false;
  196. public bool is使能完成 = false;
  197. public bool is运行允许 = false;
  198. public bool is异常 = false;
  199. public bool isPositiveLimitOn = false;
  200. public bool isNegativeLimitOn = false;
  201. public bool isOriginalLimitOn = false;
  202. public ClsAxis(string plc, string axisName, string strInfo)
  203. {
  204. PLCName = plc;
  205. AxisName = axisName;
  206. string[] arrStr = strInfo.Split(',');
  207. 当前位置 = arrStr[0];
  208. 异常代码 = arrStr[1];
  209. 点动速度 = arrStr[2];
  210. 寸动负 = arrStr[3];
  211. 寸动正 = arrStr[4];
  212. 轴使能 = arrStr[5];
  213. 回原点 = arrStr[6];
  214. 使能完成 = arrStr[7];
  215. 运行允许 = arrStr[8];
  216. 异常 = arrStr[9];
  217. 正极限 = arrStr[10];
  218. 原点 = arrStr[11];
  219. 负极限 = arrStr[12];
  220. 定位 = arrStr[13];
  221. }
  222. }
  223. public class ClsWeight
  224. {
  225. public ClsWeight()//string strInfo
  226. {
  227. for (int i = 0; i < 10; i++)
  228. {
  229. //
  230. f净重[i] = 0.0f;
  231. f完成[i] = 0.0f;
  232. f实时[i] = 0.0f;
  233. i数量[i] = 0;
  234. //
  235. f目标重量[i] = 0.0f;
  236. f正偏差[i] = 0.0f;
  237. f负偏差[i] = 0.0f;
  238. f快加提前量[i] = 0.0f;
  239. f慢加提前量[i] = 0.0f;
  240. f阈值[i] = 0.0f;
  241. //
  242. i快加速度[i] = 0;
  243. i慢加速度[i] = 0;
  244. i补料速度[i] = 0;
  245. i稳定检测时间[i] = 0;
  246. i快加禁止比较时间[i] = 0;
  247. i慢加禁止比较时间[i] = 0;
  248. i补加禁止比较时间[i] = 0;
  249. i完成动作执行时间[i] = 0;
  250. }
  251. }
  252. #region 地址
  253. //主
  254. public string[] Add净重 = new string[10];//1 = "", Add净重2 = "", Add净重3 = "", Add净重4 = "", Add净重5 = "", Add净重6 = "", Add净重7 = "", Add净重8 = "", Add净重9 = "", Add净重10 = "";
  255. public string[] Add完成 = new string[10];//1 = "", Add完成2 = "", Add完成3 = "", Add完成4 = "", Add完成5 = "", Add完成6 = "", Add完成7 = "", Add完成8 = "", Add完成9 = "", Add完成10 = "";
  256. public string[] Add实时 = new string[10];//1 = "", Add实时2 = "", Add实时3 = "", Add实时4 = "", Add实时5 = "", Add实时6 = "", Add实时7 = "", Add实时8 = "", Add实时9 = "", Add实时10 = "";
  257. public string[] Add数量 = new string[10];//1 = "", Add数量2 = "", Add数量3 = "", Add数量4 = "", Add数量5 = "", Add数量6 = "", Add数量7 = "", Add数量8 = "", Add数量9 = "", Add数量10 = "";
  258. //配方
  259. public string[] Add目标重量 = new string[10];//1 = "", Add目标重量2 = "", Add目标重量3 = "", Add目标重量4 = "", Add目标重量5 = "", Add目标重量6 = "", Add目标重量7 = "", Add目标重量8 = "", Add目标重量9 = "", Add目标重量10 = "";
  260. public string[] Add正偏差 = new string[10];//1 = "", Add正偏差2 = "", Add正偏差3 = "", Add正偏差4 = "", Add正偏差5 = "", Add正偏差6 = "", Add正偏差7 = "", Add正偏差8 = "", Add正偏差9 = "", Add正偏差10 = "";
  261. public string[] Add负偏差 = new string[10];//1 = "", Add负偏差2 = "", Add负偏差3 = "", Add负偏差4 = "", Add负偏差5 = "", Add负偏差6 = "", Add负偏差7 = "", Add负偏差8 = "", Add负偏差9 = "", Add负偏差10 = "";
  262. public string[] Add快加提前量 = new string[10];//1 = "", Add快加提前量2 = "", Add快加提前量3 = "", Add快加提前量4 = "", Add快加提前量5 = "", Add快加提前量6 = "", Add快加提前量7 = "", Add快加提前量8 = "", Add快加提前量9 = "", Add快加提前量10 = "";
  263. public string[] Add慢加提前量 = new string[10];//1 = "", Add慢加提前量2 = "", Add慢加提前量3 = "", Add慢加提前量4 = "", Add慢加提前量5 = "", Add慢加提前量6 = "", Add慢加提前量7 = "", Add慢加提前量8 = "", Add慢加提前量9 = "", Add慢加提前量10 = "";
  264. public string[] Add阈值 = new string[10];//1 = "", Add阈值2 = "", Add阈值3 = "", Add阈值4 = "", Add阈值5 = "", Add阈值6 = "", Add阈值7 = "", Add阈值8 = "", Add阈值9 = "", Add阈值10 = "";
  265. //设备
  266. public string[] Add快加速度 = new string[10];//1 = "", Add快加速度2 = "", Add快加速度3 = "", Add快加速度4 = "", Add快加速度5 = "", Add快加速度6 = "", Add快加速度7 = "", Add快加速度8 = "", Add快加速度9 = "", Add快加速度10 = "";
  267. public string[] Add慢加速度 = new string[10];//1 = "", Add慢加速度2 = "", Add慢加速度3 = "", Add慢加速度4 = "", Add慢加速度5 = "", Add慢加速度6 = "", Add慢加速度7 = "", Add慢加速度8 = "", Add慢加速度9 = "", Add慢加速度10 = "";
  268. public string[] Add补料速度 = new string[10];//1 = "", Add补料速度2 = "", Add补料速度3 = "", Add补料速度4 = "", Add补料速度5 = "", Add补料速度6 = "", Add补料速度7 = "", Add补料速度8 = "", Add补料速度9 = "", Add补料速度10 = "";
  269. public string[] Add稳定检测时间 = new string[10];//1 = "";// = "", Add稳定检测时间2 = "", Add稳定检测时间3 = "", Add稳定检测时间4 = "", Add稳定检测时间5 = "", Add稳定检测时间6 = "", Add稳定检测时间7 = "", Add稳定检测时间8 = "", Add稳定检测时间9 = "", Add稳定检测时间10 = "";
  270. public string[] Add快加禁止比较时间 = new string[10];//1 = "", Add快加禁止比较时间2 = "", Add快加禁止比较时间3 = "", Add快加禁止比较时间4 = "", Add快加禁止比较时间5 = "", Add快加禁止比较时间6 = "", Add快加禁止比较时间7 = "", Add快加禁止比较时间8 = "", Add快加禁止比较时间9 = "", Add快加禁止比较时间10 = "";
  271. public string[] Add慢加禁止比较时间 = new string[10];//1 = "", Add慢加禁止比较时间2 = "", Add慢加禁止比较时间3 = "", Add慢加禁止比较时间4 = "", Add慢加禁止比较时间5 = "", Add慢加禁止比较时间6 = "", Add慢加禁止比较时间7 = "", Add慢加禁止比较时间8 = "", Add慢加禁止比较时间9 = "", Add慢加禁止比较时间10 = "";
  272. public string[] Add补加禁止比较时间 = new string[10];//1 = "", Add补加禁止比较时间2 = "", Add补加禁止比较时间3 = "", Add补加禁止比较时间4 = "", Add补加禁止比较时间5 = "", Add补加禁止比较时间6 = "", Add补加禁止比较时间7 = "", Add补加禁止比较时间8 = "", Add补加禁止比较时间9 = "", Add补加禁止比较时间10 = "";
  273. public string[] Add完成动作执行时间 = new string[10];//1 = "", Add完成动作执行时间2 = "", Add完成动作执行时间3 = "", Add完成动作执行时间4 = "", Add完成动作执行时间5 = "", Add完成动作执行时间6 = "", Add完成动作执行时间7 = "", Add完成动作执行时间8 = "", Add完成动作执行时间9 = "", Add完成动作执行时间10 = "";
  274. //称重
  275. public string Add零点跟踪范围 = "";
  276. public string Add零点跟踪速率 = "";
  277. public string Add稳定检测范围 = "";
  278. public string Add稳定检测时间总 = "";
  279. public string Add预处理滤波强度 = "";
  280. public string Add预处理滤波系数 = "";
  281. public string Add静态滤波防抖动 = "";
  282. public string Add静态采样频率 = "";
  283. public string Add静态滤波强度 = "";
  284. public string Add静态滤波收敛 = "";
  285. #endregion
  286. //主
  287. public float[] f净重 = new float[10];
  288. public float[] f完成 = new float[10];
  289. public float[] f实时 = new float[10];
  290. public int[] i数量 = new int[10];
  291. //配方
  292. public float[] f目标重量 = new float[10];
  293. public float[] f正偏差 = new float[10];
  294. public float[] f负偏差 = new float[10];
  295. public float[] f快加提前量 = new float[10];
  296. public float[] f慢加提前量 = new float[10];
  297. public float[] f阈值 = new float[10];
  298. //设备
  299. public short[] i快加速度 = new short[10];
  300. public short[] i慢加速度 = new short[10];
  301. public short[] i补料速度 = new short[10];
  302. public short[] i稳定检测时间 = new short[10];
  303. public short[] i快加禁止比较时间 = new short[10];
  304. public short[] i慢加禁止比较时间 = new short[10];
  305. public short[] i补加禁止比较时间 = new short[10];
  306. public short[] i完成动作执行时间 = new short[10];
  307. //称重
  308. public float f零点跟踪范围 = 0.0f;
  309. public float f稳定检测时间总 = 0.0f;
  310. public short i零点跟踪速率 = 0;
  311. public short i稳定检测范围 = 0;
  312. public short i预处理滤波强度 = 0;
  313. public short i预处理滤波系数 = 0;
  314. public short i静态滤波防抖动 = 0;
  315. public int i静态采样频率 = 0;
  316. public short i静态滤波强度 = 0;
  317. public short i静态滤波收敛 = 0;
  318. }
  319. }