版博士V2.0程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

573 lines
14 KiB

  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. namespace MaiMuAOI.SysCtrl
  8. {
  9. public enum LightChannelEnum
  10. {
  11. [Description("通道1")]
  12. CH1 = 1,
  13. [Description("通道2")]
  14. CH2 = 2,
  15. [Description("通道3")]
  16. CH3 = 3,
  17. [Description("通道4")]
  18. CH4 = 4,
  19. [Description("通道5")]
  20. CH5 = 5,
  21. [Description("通道6")]
  22. CH6 = 6,
  23. }
  24. public enum AxisName
  25. {
  26. [Description("0-X1轴")]
  27. Axis0 = 0,
  28. [Description("1-X2轴")]
  29. Axis1 = 1,
  30. [Description("2-Y轴")]
  31. Axis2 = 2,
  32. [Description("3-Z轴")]
  33. Axis3 = 3,
  34. }
  35. public enum AxMoveMode
  36. {
  37. //MODE1_Abs = 0,
  38. //MODE2_Rel = 1,
  39. 绝对位置 = 0,
  40. 相对位置 = 1,
  41. }
  42. public enum MarkCam
  43. {
  44. 尺寸检测Mark,
  45. 缺陷检测Mark
  46. }
  47. public enum SmallAxCmdPos
  48. {
  49. 倍率0_58X = 0,
  50. 倍率1_0X = 4600,
  51. 倍率1_5X = 6700,
  52. 倍率2_0X = 8400,
  53. 倍率2_5X = 10300,
  54. 倍率3_0X = 11700,
  55. 倍率3_5X = 12800,
  56. 倍率4_0X = 13650,
  57. 倍率4_5X = 14500,
  58. 倍率5_0X = 15200,
  59. 倍率5_5X = 15900,
  60. 倍率6_0X = 16500,
  61. 倍率6_5X = 17150,
  62. 倍率7_0X = 17700,
  63. 倍率7_5X = 18650,
  64. }
  65. public enum IODirectionEnum
  66. {
  67. [Description("仅输入")]
  68. 输入 = 0,
  69. [Description("仅输出")]
  70. 输出 = 1,
  71. [Description("输入与输出")]
  72. 输入输出 = 2,
  73. }
  74. public enum AxisState : uint
  75. {
  76. STA_AX_DISABLE,
  77. STA_AX_READY,
  78. STA_AX_STOPPING,
  79. STA_AX_ERROR_STOP,
  80. STA_AX_HOMING,
  81. STA_AX_PTP_MOT,
  82. STA_AX_CONTI_MOT,
  83. STA_AX_SYNC_MOT,
  84. STA_AX_EXT_JOG,
  85. STA_AX_EXT_MPG,
  86. STA_AX_PAUSE,
  87. STA_AX_BUSY,
  88. STA_AX_WAIT_DI,
  89. STA_AX_WAIT_PTP,
  90. STA_AX_WAIT_VEL
  91. }
  92. public enum ScannerType
  93. {
  94. [Description("板卡相机")]
  95. GENTL = 0,
  96. [Description("网口相机")]
  97. CC = 1,
  98. }
  99. public enum AIEngineLibEnum
  100. {
  101. [Description("缺陷库")]
  102. 缺陷库 = 0,
  103. [Description("测量库")]
  104. 测量库 = 1,
  105. [Description("缺陷与测量库")]
  106. 缺陷与测量库 = 2,
  107. }
  108. public enum DefectCodeEnum
  109. {
  110. [Description("堵孔")]
  111. dk,
  112. [Description("脏污")]
  113. zw,
  114. [Description("纤维丝")]
  115. xws,
  116. [Description("钢丝异常")]
  117. gsyc,
  118. [Description("缺口")]
  119. qk,
  120. [Description("针孔")]
  121. zk,
  122. [Description("泡泡")]
  123. pp,
  124. [Description("划伤")]
  125. hs,
  126. [Description("压线")]
  127. yx,
  128. [Description("斜边")]
  129. xb,
  130. [Description("栅线")]
  131. sx,
  132. [Description("断栅")]
  133. ds,
  134. [Description("钢丝断裂")]
  135. gsdl,
  136. [Description("残胶堵孔")]
  137. cjdk,
  138. }
  139. public enum DefectNameEnum
  140. {
  141. 堵孔,
  142. 脏污,
  143. 纤维丝,
  144. 钢丝异常,
  145. 缺口,
  146. 针孔,
  147. 泡泡,
  148. 划伤,
  149. 压线,
  150. 斜边,
  151. 栅线,
  152. 断栅,
  153. 钢丝断裂,
  154. 残胶堵孔
  155. }
  156. public enum ValType
  157. {
  158. 字符串,
  159. 数值,
  160. }
  161. public enum CMDName
  162. {
  163. IO默认输出 = 0,
  164. 启动按钮 = 10,//输入+输出
  165. 暂停按钮 = 11,//输入+输出
  166. 复位按钮 = 12,//输入+输出
  167. 绿灯输出 = 15,
  168. 黄灯输出 = 16,
  169. 红灯输出 = 17,
  170. 日光灯输出 = 18,
  171. 蜂鸣器输出 = 20,
  172. //张力读取结束输出 = 25,//张力读取
  173. 张力读取 = 25,//张力读取
  174. 喷墨输出 = 26,
  175. 门磁告警输入 = 30,
  176. 喷墨告警输入 = 31,
  177. 厚度气缸与轴运动告警 = 34,
  178. 下料完成输出 = 35,
  179. Y轴复位输出 = 40,
  180. Y轴复位完成输入 = 41,
  181. }
  182. public enum DOName
  183. {
  184. 三色灯红灯 = 0,
  185. 三色灯绿灯 = 1,
  186. 三色灯黄灯 = 2,
  187. 三色灯蜂鸣器 = 3,
  188. 测厚气缸 = 4,
  189. 加紧气缸 = 5,
  190. 双手启动绿灯 = 7,
  191. 启动按钮绿灯 = 8,
  192. 复位按钮黄灯 = 9,
  193. 停止按钮红灯 = 10,
  194. 触发张力按钮灯 = 11,
  195. 日光灯 = 12,
  196. X1回原 = 13,
  197. X2回原 = 14,
  198. Y轴回原点 = 15
  199. }
  200. public enum DIName
  201. {
  202. 启动按钮 = 14,
  203. 暂停按钮 = 3,
  204. 复位按钮 = 2,
  205. 触发张力 = 4,
  206. 产品有无 = 5,
  207. 右夹紧缩回 = 6,
  208. 右夹紧伸出 = 7,
  209. 前夹紧缩回 = 8,
  210. 前夹紧伸出 = 9,
  211. 侧推伸出 = 0,
  212. 侧推缩回 = 1,
  213. 双手启动 = 10,
  214. 门磁 = 11,
  215. Y轴回原点完成 = 15
  216. }
  217. /// <summary>
  218. /// 数据处理方式
  219. /// </summary>
  220. public enum DataProcess
  221. {
  222. 均值,
  223. 最大值,
  224. 最小值
  225. }
  226. /// <summary>
  227. /// 数据判断方式
  228. /// </summary>
  229. public enum DataJudgment
  230. {
  231. 均值,
  232. 单点,
  233. }
  234. public enum PointTestType
  235. {
  236. Y轴方向PT值检测,
  237. 线宽正面,
  238. 反面检测,
  239. X轴方向PT值检测,
  240. 主栅连接线检测,
  241. 主栅宽度检测,
  242. 主栅间距,
  243. 细栅间距检测,
  244. 背极宽度,
  245. 主栅长度检测,
  246. Mark点横向间距,
  247. Mark点竖向间距,
  248. 鱼叉口长,
  249. 鱼叉口宽,
  250. 鱼叉口间距,
  251. 蜈蚣角长,
  252. 蜈蚣角宽,
  253. 分片间隔,
  254. 焊点长,
  255. 焊点宽,
  256. 焊点间隔,
  257. SP2主栅宽度
  258. }
  259. #region 打印数据类型
  260. public enum PrinterType
  261. {
  262. Label,
  263. Excel
  264. }
  265. public enum PrintDataEnum
  266. {
  267. [Description("检测结果")]
  268. Qualified,
  269. [Description("外观比对")]
  270. CompareResult,
  271. [Description("张力均值")]
  272. TensionValue,
  273. [Description("膜厚均值")]
  274. HeightValue,
  275. [Description("线宽均值")]
  276. LineWidthValue,
  277. [Description("Y-PT均值")]
  278. PTValue,
  279. [Description("X-PT均值")]
  280. XPTValue,
  281. [Description("反面线宽均值")]
  282. FLineWidthValue,
  283. [Description("主栅连接线均值")]
  284. MGridIntervalValue,
  285. [Description("主栅宽度均值")]
  286. MGridWidthValue,
  287. [Description("主栅间距均值")]
  288. MGridSpreadValue,
  289. [Description("细栅间距均值")]
  290. FGridSpreadValue,
  291. [Description("背极宽度均值")]
  292. BackPoleWidthValue,
  293. [Description("主栅长度均值")]
  294. MGridLengthValue,
  295. [Description("Mark点横向间距均值")]
  296. MarkXDisValue ,
  297. [Description("Mark点竖向间距均值")]
  298. MarkYDisValue ,
  299. [Description("鱼叉口长均值")]
  300. ForkLengthValue,
  301. [Description("鱼叉口宽均值")]
  302. ForkWidthValue ,
  303. [Description("鱼叉口间距均值")]
  304. ForkDisValue ,
  305. [Description("蜈蚣角长均值")]
  306. ChilopodLengthValue,
  307. [Description("蜈蚣角宽均值")]
  308. ChilopodWidthValue ,
  309. [Description("分片间隔均值")]
  310. ShardingDisValue ,
  311. [Description("焊点间隔均值")]
  312. WeldingSpotDisValue,
  313. [Description("焊点长均值")]
  314. WeldingSpotLengthValue ,
  315. [Description("焊点宽均值")]
  316. WeldingSpotWidthValue ,
  317. [Description("张力上下限")]
  318. TensionValueLimit,
  319. [Description("膜厚上下限")]
  320. HeightValueLimit,
  321. [Description("线宽上下限")]
  322. LineWidthValueLimit,
  323. [Description("Y-PT上下限")]
  324. PTValueLimit,
  325. [Description("X-PT上下限")]
  326. XPTValueLimit,
  327. [Description("反面线宽上下限")]
  328. FLineWidthValueLimit,
  329. [Description("主栅连接线上下限")]
  330. MGridIntervalValueLimit,
  331. [Description("主栅宽度上下限")]
  332. MGridWidthValueLimit,
  333. [Description("主栅间距上下限")]
  334. MGridSpreadValueLimit,
  335. [Description("细栅间距上下限")]
  336. FGridSpreadValueLimit,
  337. [Description("背极宽度上下限")]
  338. BackPoleWidthValueLimit,
  339. [Description("主栅长度上下限")]
  340. MGridLengthValueLimit,
  341. [Description("Mark点横向间距上下限")]
  342. MarkXDisValueLimit,
  343. [Description("Mark点竖向间距上下限")]
  344. MarkYDisValueLimit,
  345. [Description("鱼叉口长上下限")]
  346. ForkLengthValueLimit,
  347. [Description("鱼叉口宽上下限")]
  348. ForkWidthValueLimit,
  349. [Description("鱼叉口间距上下限")]
  350. ForkDisValueLimit,
  351. [Description("蜈蚣角长上下限")]
  352. ChilopodLengthValueLimit,
  353. [Description("蜈蚣角宽上下限")]
  354. ChilopodWidthValueLimit,
  355. [Description("分片间隔上下限")]
  356. ShardingDisValueLimit,
  357. [Description("焊点间隔上下限")]
  358. WeldingSpotDisValueLimit,
  359. [Description("焊点长上下限")]
  360. WeldingSpotLengthValueLimit,
  361. [Description("焊点宽上下限")]
  362. WeldingSpotWidthValueLimit,
  363. [Description("缺陷总数")]
  364. DefectCount,
  365. [Description("堵孔数量")]
  366. DKCount,
  367. [Description("脏污数量")]
  368. ZWCount,
  369. [Description("钢丝异常数量")]
  370. GSYCCount,
  371. [Description("纤维丝数量")]
  372. XWSCount,
  373. [Description("缺口数量")]
  374. QKCount,
  375. [Description("针孔数量")]
  376. ZKCount,
  377. [Description("泡泡数量")]
  378. PPCount,
  379. [Description("划伤数量")]
  380. HSCount,
  381. [Description("压线数量")]
  382. YXCount,
  383. [Description("斜边数量")]
  384. XBCount,
  385. [Description("栅线数量")]
  386. SXCount,
  387. [Description("钢丝断裂数量")]
  388. GSDLCount,
  389. [Description("残胶堵孔数量")]
  390. CJDKCount,
  391. [Description("检测单号")]
  392. DetectOrder,
  393. [Description("料号")]
  394. OrderCode,
  395. [Description("料号名称")]
  396. OrderName,
  397. [Description("料号批次")]
  398. BatchId,
  399. [Description("网版编码")]
  400. SN,
  401. [Description("检测时间")]
  402. Time,
  403. [Description("操作员")]
  404. OperatorName,
  405. }
  406. public enum PrintDataPdtEnum
  407. {
  408. [Description("检测结果")]
  409. Qualified,
  410. [Description("外观比对")]
  411. CompareResult,
  412. [Description("检测单号")]
  413. DetectOrder,
  414. [Description("料号")]
  415. OrderCode,
  416. [Description("料号名称")]
  417. OrderName,
  418. [Description("料号批次")]
  419. BatchId,
  420. [Description("网版编码")]
  421. SN,
  422. [Description("检测时间")]
  423. Time,
  424. [Description("操作员")]
  425. OperatorName,
  426. }
  427. static class EnumExtensions
  428. {
  429. public static string GetDescription(this Enum val)
  430. {
  431. var field = val.GetType().GetField(val.ToString());
  432. var customAttribute = Attribute.GetCustomAttribute(field, typeof(DescriptionAttribute));
  433. return customAttribute == null ? val.ToString() : ((DescriptionAttribute)customAttribute).Description;
  434. }
  435. }
  436. #endregion
  437. #region MES代码
  438. public enum MesCodeEnum
  439. {
  440. [Description("检测单号")]
  441. MM0001,
  442. [Description("料号")]
  443. MM0002,
  444. [Description("料号名称")]
  445. MM0003,
  446. [Description("网版编码")]
  447. MM0004,
  448. [Description("操作员")]
  449. MM0005,
  450. [Description("检测时间")]
  451. MM0006,
  452. [Description("料号批次")]
  453. MM0007,
  454. [Description("外观比对")]
  455. MM0008,
  456. [Description("检测结果")]
  457. MM0009,
  458. [Description("张力均值")]
  459. MM0010,
  460. [Description("膜厚均值")]
  461. MM0011,
  462. [Description("线宽均值")]
  463. MM0012,
  464. [Description("Y-PT均值")]
  465. MM0013,
  466. [Description("X-PT均值")]
  467. MM0014,
  468. [Description("主栅连接线检测(主栅间隔)")]
  469. MM0015,
  470. [Description("主栅宽度检测")]
  471. MM0016,
  472. [Description("主栅间距")]
  473. MM0017,
  474. [Description("细栅间距检测")]
  475. MM0018,
  476. [Description("背极宽度")]
  477. MM0019,
  478. [Description("主栅长度检测")]
  479. MM0020,
  480. [Description("Mark点横向间距")]
  481. MM0021,
  482. [Description("Mark点竖向间距")]
  483. MM0022,
  484. [Description("鱼叉口长")]
  485. MM0023,
  486. [Description("鱼叉口宽")]
  487. MM0024,
  488. [Description("鱼叉口间距")]
  489. MM0025,
  490. [Description("蜈蚣角长")]
  491. MM0026,
  492. [Description("蜈蚣角宽")]
  493. MM0027,
  494. [Description("缺陷总数")]
  495. MALL000,
  496. [Description("堵孔数量")]
  497. MDK000,
  498. [Description("脏污数量")]
  499. MZW000,
  500. [Description("钢丝异常数量")]
  501. MGSYC000,
  502. [Description("纤维丝数量")]
  503. MQWS000,
  504. [Description("缺口数量")]
  505. MQK000,
  506. [Description("针孔数量")]
  507. MZK000,
  508. [Description("泡泡数量")]
  509. MPP000,
  510. [Description("划伤数量")]
  511. MHS000,
  512. [Description("压线数量")]
  513. MYX000,
  514. [Description("斜边数量")]
  515. MXB000,
  516. [Description("栅线数量")]
  517. MSX000,
  518. [Description("检测单号")]
  519. DetectOrder,
  520. [Description("料号")]
  521. OrderCode,
  522. [Description("料号名称")]
  523. OrderName,
  524. [Description("料号批次")]
  525. BatchId,
  526. [Description("网版编码")]
  527. SN,
  528. }
  529. #endregion
  530. }