CarrierRobotModuleAlarmDefine.cs 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691
  1. using Aitex.Core.RT.Event;
  2. using MECF.Framework.Common.Event;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. namespace FurnaceRT.Equipments.CarrierRobots
  9. {
  10. public partial class CarrierRobotModule
  11. {
  12. #region AlarmDefine
  13. public AlarmEventItem TargetCassettePresentWarning { get; set; }
  14. public AlarmEventItem TargetCassetteNotPresentWarning { get; set; }
  15. public AlarmEventItem BladeCassettePresentWarning { get; set; }
  16. public AlarmEventItem BladeCassetteNotPresentWarning { get; set; }
  17. public AlarmEventItem CheckCarrierIDFailAlarm { get; set; }
  18. public AlarmEventItem GotoTimeoutAlarm { get; set; }
  19. public AlarmEventItem GotoFailAlarm { get; set; }
  20. public AlarmEventItem PickCassetteTimeoutAlarm { get; set; }
  21. public AlarmEventItem PickCassetteFailAlarm { get; set; }
  22. public AlarmEventItem PlaceCassetteTimeoutAlarm { get; set; }
  23. public AlarmEventItem PlaceCassetteFailAlarm { get; set; }
  24. public AlarmEventItem RequestCassettePresentTimeoutAlarm { get; set; }
  25. public AlarmEventItem RequestCassettePresentFailAlarm { get; set; }
  26. public AlarmEventItem RobotSensorFoundCassetteOnBladeAfterPlaceAlarm { get; set; }
  27. public AlarmEventItem RobotSensorNotFoundCassetteOnBladeAfterPickAlarm { get; set; }
  28. public AlarmEventItem CheckCassetteInformationFailAlarm { get; set; }
  29. public AlarmEventItem RobotHasError { get; set; }
  30. public AlarmEventItem SetServoOnTimeoutAlarm { get; set; }
  31. public AlarmEventItem SetServoOnFailAlarm { get; set; }
  32. public AlarmEventItem RobotHomeTimeoutAlarm { get; set; }
  33. public AlarmEventItem RobotHomeFailAlarm { get; set; }
  34. public AlarmEventItem CheckLoadTimeoutAlarm { get; set; }
  35. public AlarmEventItem CheckLoadFailAlarm { get; set; }
  36. public AlarmEventItem SetSpeedTimeoutAlarm { get; set; }
  37. public AlarmEventItem SetSpeedFailAlarm { get; set; }
  38. public AlarmEventItem WaitInCommandTimeout { get; set; }
  39. public AlarmEventItem WaitOutCommandTimeout { get; set; }
  40. public AlarmEventItem WaitPodPrensentChangeTimeout { get; set; }
  41. public AlarmEventItem WaferMapTimeout { get; set; }
  42. public AlarmEventItem WaferMapFailAlarm { get; set; }
  43. public AlarmEventItem SetStageValveTimeout { get; set; }
  44. public AlarmEventItem SetStageValveFailAlarm { get; set; }
  45. public AlarmEventItem LoadCassetteMappingFailAlarm { get; set; }
  46. public AlarmEventItem LoadCassetteTimeoutAlarm { get; set; }
  47. public AlarmEventItem LoadCassetteFailAlarm { get; set; }
  48. public AlarmEventItem UnloadCassetteTimeoutAlarm { get; set; }
  49. public AlarmEventItem UnloadCassetteFailAlarm { get; set; }
  50. public AlarmEventItem LoadCassettePauseWarning { get; set; }
  51. public AlarmEventItem LoadCassetteResumeWarning { get; set; }
  52. public AlarmEventItem UnoadCassettePauseWarning { get; set; }
  53. public AlarmEventItem UnoadCassetteResumeWarning { get; set; }
  54. public AlarmEventItem PickCassettePauseWarning { get; set; }
  55. public AlarmEventItem PickCassetteResumeWarning { get; set; }
  56. public AlarmEventItem PlaceCassettePauseWarning { get; set; }
  57. public AlarmEventItem PlaceCassetteResumeWarning { get; set; }
  58. public AlarmEventItem GotoPauseWarning { get; set; }
  59. public AlarmEventItem GotoResumeWarning { get; set; }
  60. public AlarmEventItem ShutterOpenTimeoutAlarm { get; set; }
  61. public AlarmEventItem ShutterCloseTimeoutAlarm { get; set; }
  62. public AlarmEventItem RobotDIAlarm { get; set; }
  63. #endregion
  64. private void InitAlarmDefine()
  65. {
  66. TargetCassettePresentWarning = SubscribeAlarm(new AlarmEventItem()
  67. {
  68. EventEnum = $"{Name}.TargetCassettePresentWarning",
  69. Description = $"Target cassette present ",
  70. Solution = "No information available. Press[Clear] to delete alarm message.",
  71. Explaination = "No information available.",
  72. AutoRecovery = false,
  73. Level = EventLevel.Warning,
  74. Action = EventAction.Clear,
  75. Category = "CassetteRobotAlarm",
  76. }, () => { return true; });
  77. TargetCassetteNotPresentWarning = SubscribeAlarm(new AlarmEventItem()
  78. {
  79. EventEnum = $"{Name}.TargetCassetteNotPresentWarning",
  80. Description = $"Target cassette not present ",
  81. Solution = "No information available. Press[Clear] to delete alarm message.",
  82. Explaination = "No information available.",
  83. AutoRecovery = false,
  84. Level = EventLevel.Warning,
  85. Action = EventAction.Clear,
  86. Category = "CassetteRobotAlarm",
  87. }, () => { return true; });
  88. BladeCassettePresentWarning = SubscribeAlarm(new AlarmEventItem()
  89. {
  90. EventEnum = $"{Name}.BladeCassettePresentWarning",
  91. Description = $"Blade cassette present ",
  92. Solution = "No information available. Press[Clear] to delete alarm message.",
  93. Explaination = "No information available.",
  94. AutoRecovery = false,
  95. Level = EventLevel.Warning,
  96. Action = EventAction.Clear,
  97. Category = "CassetteRobotAlarm",
  98. }, () => { return true; });
  99. BladeCassetteNotPresentWarning = SubscribeAlarm(new AlarmEventItem()
  100. {
  101. EventEnum = $"{Name}.BladeCassetteNotPresentWarning",
  102. Description = $"Blade cassette not present ",
  103. Solution = "No information available. Press[Clear] to delete alarm message.",
  104. Explaination = "No information available.",
  105. AutoRecovery = false,
  106. Level = EventLevel.Warning,
  107. Action = EventAction.Clear,
  108. Category = "CassetteRobotAlarm",
  109. }, () => { return true; });
  110. GotoTimeoutAlarm = SubscribeAlarm(new AlarmEventItem()
  111. {
  112. EventEnum = $"{Name}.GotoTimeoutAlarm",
  113. Description = $"{Name} goto timeout ",
  114. Solution = "No information available. Press[Retry] to delete alarm message.",
  115. Explaination = "No information available.",
  116. AutoRecovery = false,
  117. Level = EventLevel.Alarm,
  118. Action = EventAction.Retry,
  119. Category = "CassetteRobotAlarm",
  120. }, () => { return true; });
  121. GotoFailAlarm = SubscribeAlarm(new AlarmEventItem()
  122. {
  123. EventEnum = $"{Name}.GotoFailAlarm",
  124. Description = $"{Name} goto fail ",
  125. Solution = "No information available. Press[Retry] to delete alarm message.",
  126. Explaination = "No information available.",
  127. AutoRecovery = false,
  128. Level = EventLevel.Alarm,
  129. Action = EventAction.Retry,
  130. Category = "CassetteRobotAlarm",
  131. }, () => { return true; });
  132. PickCassetteTimeoutAlarm = SubscribeAlarm(new AlarmEventItem()
  133. {
  134. EventEnum = $"{Name}.PickCassetteTimeoutAlarm",
  135. Description = $"Pick cassette timeout ",
  136. Solution = "No information available. Press[Retry] to delete alarm message.",
  137. Explaination = "No information available.",
  138. AutoRecovery = false,
  139. Level = EventLevel.Alarm,
  140. Action = EventAction.ClearAndRetry,
  141. Category = "CassetteRobotAlarm",
  142. }, () => { return true; });
  143. PickCassetteFailAlarm = SubscribeAlarm(new AlarmEventItem()
  144. {
  145. EventEnum = $"{Name}.PickCassetteFailAlarm",
  146. Description = $"Pick cassette fail reason ",
  147. Solution = "No information available. Press[Retry] to delete alarm message.",
  148. Explaination = "No information available.",
  149. AutoRecovery = false,
  150. Level = EventLevel.Alarm,
  151. Action = EventAction.ClearAndRetry,
  152. Category = "CassetteRobotAlarm",
  153. }, () => { return true; });
  154. CheckCarrierIDFailAlarm = SubscribeAlarm(new AlarmEventItem()
  155. {
  156. EventEnum = $"{Name}.CheckCarrierIDFailAlarm",
  157. Description = $"Check carrier id fail reason ",
  158. Solution = "No information available. Press[Retry] to delete alarm message.",
  159. Explaination = "No information available.",
  160. AutoRecovery = false,
  161. Level = EventLevel.Alarm,
  162. Action = EventAction.ClearAndRetry,
  163. Category = "CassetteRobotAlarm",
  164. }, () => { return true; });
  165. PlaceCassetteTimeoutAlarm = SubscribeAlarm(new AlarmEventItem()
  166. {
  167. EventEnum = $"{Name}.PlaceCassetteTimeoutAlarm",
  168. Description = $"Place cassette timeout ",
  169. Solution = "No information available. Press[Retry] to delete alarm message.",
  170. Explaination = "No information available.",
  171. AutoRecovery = false,
  172. Level = EventLevel.Alarm,
  173. Action = EventAction.ClearAndRetry,
  174. Category = "CassetteRobotAlarm",
  175. }, () => { return true; });
  176. PlaceCassetteFailAlarm = SubscribeAlarm(new AlarmEventItem()
  177. {
  178. EventEnum = $"{Name}.PlaceCassetteFailAlarm",
  179. Description = $"Place cassette fail reason ",
  180. Solution = "No information available. Press[Retry] to delete alarm message.",
  181. Explaination = "No information available.",
  182. AutoRecovery = false,
  183. Level = EventLevel.Alarm,
  184. Action = EventAction.ClearAndRetry,
  185. Category = "CassetteRobotAlarm",
  186. }, () => { return true; });
  187. RequestCassettePresentTimeoutAlarm = SubscribeAlarm(new AlarmEventItem()
  188. {
  189. EventEnum = $"{Name}.RequestCassettePresentTimeoutAlarm",
  190. Description = $"Request cassette present timeout ",
  191. Solution = "No information available. Press[Retry] to delete alarm message.",
  192. Explaination = "No information available.",
  193. AutoRecovery = false,
  194. Level = EventLevel.Alarm,
  195. Action = EventAction.ClearAndRetry,
  196. Category = "CassetteRobotAlarm",
  197. }, () => { return true; });
  198. RequestCassettePresentFailAlarm = SubscribeAlarm(new AlarmEventItem()
  199. {
  200. EventEnum = $"{Name}.RequestCassettePresentFailAlarm",
  201. Description = $"Request cassette present fail ",
  202. Solution = "No information available. Press[Retry] to delete alarm message.",
  203. Explaination = "No information available.",
  204. AutoRecovery = false,
  205. Level = EventLevel.Alarm,
  206. Action = EventAction.ClearAndRetry,
  207. Category = "CassetteRobotAlarm",
  208. }, () => { return true; });
  209. RobotSensorFoundCassetteOnBladeAfterPlaceAlarm = SubscribeAlarm(new AlarmEventItem()
  210. {
  211. EventEnum = $"{Name}.RobotSensorFoundCassetteOnBladeAfterPlaceAlarm",
  212. Description = $"Robot sensor found cassette on blade after place ",
  213. Solution = "No information available. Press[Retry] to delete alarm message.",
  214. Explaination = "No information available.",
  215. AutoRecovery = false,
  216. Level = EventLevel.Alarm,
  217. Action = EventAction.ClearAndRetry,
  218. Category = "CassetteRobotAlarm",
  219. }, () => { return true; });
  220. RobotSensorNotFoundCassetteOnBladeAfterPickAlarm = SubscribeAlarm(new AlarmEventItem()
  221. {
  222. EventEnum = $"{Name}.RobotSensorNotFoundCassetteOnBladeAfterPickAlarm",
  223. Description = $"Robot sensor not found cassette on blade after pick ",
  224. Solution = "No information available. Press[Retry] to delete alarm message.",
  225. Explaination = "No information available.",
  226. AutoRecovery = false,
  227. Level = EventLevel.Alarm,
  228. Action = EventAction.ClearAndRetry,
  229. Category = "CassetteRobotAlarm",
  230. }, () => { return true; });
  231. CheckCassetteInformationFailAlarm = SubscribeAlarm(new AlarmEventItem()
  232. {
  233. EventEnum = $"{Name}.CheckCassetteInformationFailAlarm",
  234. Description = $"Check cassette information fail ",
  235. Solution = "No information available. Press[Retry] to delete alarm message.",
  236. Explaination = "No information available.",
  237. AutoRecovery = false,
  238. Level = EventLevel.Alarm,
  239. Action = EventAction.ClearAndRetry,
  240. Category = "CassetteRobotAlarm",
  241. }, () => { return true; });
  242. RobotHasError = SubscribeAlarm(new AlarmEventItem()
  243. {
  244. EventEnum = $"{Name}.RobotHasError",
  245. Description = $"Robot has error ",
  246. Solution = "No information available. Press[Retry] to delete alarm message.",
  247. Explaination = "No information available.",
  248. AutoRecovery = false,
  249. Level = EventLevel.Alarm,
  250. Action = EventAction.ClearAndRetry,
  251. Category = "CassetteRobotAlarm",
  252. }, () => { return true; });
  253. SetServoOnTimeoutAlarm = SubscribeAlarm(new AlarmEventItem()
  254. {
  255. EventEnum = $"{Name}.SetServoOnTimeoutAlarm",
  256. Description = $"Set servo on timeout ",
  257. Solution = "No information available. Press[Retry] to delete alarm message.",
  258. Explaination = "No information available.",
  259. AutoRecovery = false,
  260. Level = EventLevel.Alarm,
  261. Action = EventAction.ClearAndRetry,
  262. Category = "CassetteRobotAlarm",
  263. }, () => { return true; });
  264. SetServoOnFailAlarm = SubscribeAlarm(new AlarmEventItem()
  265. {
  266. EventEnum = $"{Name}.SetServoOnFailAlarm",
  267. Description = $"Set servo on fail reason ",
  268. Solution = "No information available. Press[Retry] to delete alarm message.",
  269. Explaination = "No information available.",
  270. AutoRecovery = false,
  271. Level = EventLevel.Alarm,
  272. Action = EventAction.ClearAndRetry,
  273. Category = "CassetteRobotAlarm",
  274. }, () => { return true; });
  275. RobotHomeTimeoutAlarm = SubscribeAlarm(new AlarmEventItem()
  276. {
  277. EventEnum = $"{Name}.RobotHomeTimeoutAlarm",
  278. Description = $"Robot home timeout ",
  279. Solution = "No information available. Press[Retry] to delete alarm message.",
  280. Explaination = "No information available.",
  281. AutoRecovery = false,
  282. Level = EventLevel.Alarm,
  283. Action = EventAction.ClearAndRetry,
  284. Category = "CassetteRobotAlarm",
  285. }, () => { return true; });
  286. RobotHomeFailAlarm = SubscribeAlarm(new AlarmEventItem()
  287. {
  288. EventEnum = $"{Name}.RobotHomeFailAlarm",
  289. Description = $"Robot home fail reason ",
  290. Solution = "No information available. Press[Retry] to delete alarm message.",
  291. Explaination = "No information available.",
  292. AutoRecovery = false,
  293. Level = EventLevel.Alarm,
  294. Action = EventAction.ClearAndRetry,
  295. Category = "CassetteRobotAlarm",
  296. }, () => { return true; });
  297. CheckLoadTimeoutAlarm = SubscribeAlarm(new AlarmEventItem()
  298. {
  299. EventEnum = $"{Name}.CheckLoadTimeoutAlarm",
  300. Description = $"Check load timeout ",
  301. Solution = "No information available. Press[Retry] to delete alarm message.",
  302. Explaination = "No information available.",
  303. AutoRecovery = false,
  304. Level = EventLevel.Alarm,
  305. Action = EventAction.ClearAndRetry,
  306. Category = "CassetteRobotAlarm",
  307. }, () => { return true; });
  308. CheckLoadFailAlarm = SubscribeAlarm(new AlarmEventItem()
  309. {
  310. EventEnum = $"{Name}.CheckLoadFailAlarm",
  311. Description = $"Check load fail reason ",
  312. Solution = "No information available. Press[Retry] to delete alarm message.",
  313. Explaination = "No information available.",
  314. AutoRecovery = false,
  315. Level = EventLevel.Alarm,
  316. Action = EventAction.ClearAndRetry,
  317. Category = "CassetteRobotAlarm",
  318. }, () => { return true; });
  319. SetSpeedTimeoutAlarm = SubscribeAlarm(new AlarmEventItem()
  320. {
  321. EventEnum = $"{Name}.SetSpeedTimeoutAlarm",
  322. Description = $"Set speed timeout ",
  323. Solution = "No information available. Press[Retry] to delete alarm message.",
  324. Explaination = "No information available.",
  325. AutoRecovery = false,
  326. Level = EventLevel.Alarm,
  327. Action = EventAction.ClearAndRetry,
  328. Category = "CassetteRobotAlarm",
  329. }, () => { return true; });
  330. SetSpeedFailAlarm = SubscribeAlarm(new AlarmEventItem()
  331. {
  332. EventEnum = $"{Name}.SetSpeedFailAlarm",
  333. Description = $"Set speed fail ",
  334. Solution = "No information available. Press[Retry] to delete alarm message.",
  335. Explaination = "No information available.",
  336. AutoRecovery = false,
  337. Level = EventLevel.Alarm,
  338. Action = EventAction.ClearAndRetry,
  339. Category = "CassetteRobotAlarm",
  340. }, () => { return true; });
  341. WaferMapTimeout = SubscribeAlarm(new AlarmEventItem()
  342. {
  343. EventEnum = $"{Name}.WaferMapTimeout",
  344. Description = $"Wafer map timeout ",
  345. Solution = "No information available. Press[Clear] to delete alarm message.",
  346. Explaination = "No information available.",
  347. AutoRecovery = false,
  348. Level = EventLevel.Alarm,
  349. Action = EventAction.Clear,
  350. Category = "CassetteRobotAlarm",
  351. }, () => { return true; });
  352. WaferMapFailAlarm = SubscribeAlarm(new AlarmEventItem()
  353. {
  354. EventEnum = $"{Name}.WaferMapFailAlarm",
  355. Description = $"Wafer map fail reason ",
  356. Solution = "No information available. Press[Clear] to delete alarm message.",
  357. Explaination = "No information available.",
  358. AutoRecovery = false,
  359. Level = EventLevel.Alarm,
  360. Action = EventAction.Clear,
  361. Category = "CassetteRobotAlarm",
  362. }, () => { return true; });
  363. WaitInCommandTimeout = SubscribeAlarm(new AlarmEventItem()
  364. {
  365. EventEnum = $"{Name}.WaitInCommandTimeout",
  366. Description = $"Wait In Command timeout ",
  367. Solution = "No information available. Press[Retry] to delete alarm message.",
  368. Explaination = "No information available.",
  369. AutoRecovery = false,
  370. Level = EventLevel.Alarm,
  371. Action = EventAction.ClearAndRetry,
  372. Category = "CassetteRobotAlarm",
  373. }, () => { return true; });
  374. WaitOutCommandTimeout = SubscribeAlarm(new AlarmEventItem()
  375. {
  376. EventEnum = $"{Name}.WaitOutCommandTimeout",
  377. Description = $"Wait Out Command timeout ",
  378. Solution = "No information available. Press[Retry] to delete alarm message.",
  379. Explaination = "No information available.",
  380. AutoRecovery = false,
  381. Level = EventLevel.Alarm,
  382. Action = EventAction.ClearAndRetry,
  383. Category = "CassetteRobotAlarm",
  384. }, () => { return true; });
  385. WaitPodPrensentChangeTimeout = SubscribeAlarm(new AlarmEventItem()
  386. {
  387. EventEnum = $"{Name}.WaitPodPrensentChangeTimeout",
  388. Description = $"Wait pod prensent change timeout ",
  389. Solution = "No information available. Press[Retry] to delete alarm message.",
  390. Explaination = "No information available.",
  391. AutoRecovery = false,
  392. Level = EventLevel.Alarm,
  393. Action = EventAction.ClearAndRetry,
  394. Category = "CassetteRobotAlarm",
  395. }, () => { return true; });
  396. SetStageValveTimeout = SubscribeAlarm(new AlarmEventItem()
  397. {
  398. EventEnum = $"{Name}.SetStageValveTimeout",
  399. Description = $"Set stage valve timeout ",
  400. Solution = "No information available. Press[Retry] to delete alarm message.",
  401. Explaination = "No information available.",
  402. AutoRecovery = false,
  403. Level = EventLevel.Alarm,
  404. Action = EventAction.ClearAndRetry,
  405. Category = "CassetteRobotAlarm",
  406. }, () => { return true; });
  407. SetStageValveFailAlarm = SubscribeAlarm(new AlarmEventItem()
  408. {
  409. EventEnum = $"{Name}.SetStageValveFailAlarm",
  410. Description = $"Set stage valve fail reason ",
  411. Solution = "No information available. Press[Retry] to delete alarm message.",
  412. Explaination = "No information available.",
  413. AutoRecovery = false,
  414. Level = EventLevel.Alarm,
  415. Action = EventAction.ClearAndRetry,
  416. Category = "CassetteRobotAlarm",
  417. }, () => { return true; });
  418. LoadCassetteMappingFailAlarm = SubscribeAlarm(new AlarmEventItem()
  419. {
  420. EventEnum = $"{Name}.LoadCassetteMappingFailAlarm",
  421. Description = $"Load cassette mapping fail reason ",
  422. Solution = "No information available. Press[Retry] to delete alarm message.",
  423. Explaination = "No information available.",
  424. AutoRecovery = false,
  425. Level = EventLevel.Alarm,
  426. Action = EventAction.ClearAndRetry,
  427. Category = "CassetteRobotAlarm",
  428. }, () => { return true; });
  429. LoadCassetteTimeoutAlarm = SubscribeAlarm(new AlarmEventItem()
  430. {
  431. EventEnum = $"{Name}.LoadCassetteTimeoutAlarm",
  432. Description = $"Load cassette timeout ",
  433. Solution = "No information available. Press[Retry] to delete alarm message.",
  434. Explaination = "No information available.",
  435. AutoRecovery = false,
  436. Level = EventLevel.Alarm,
  437. Action = EventAction.ClearAndRetry,
  438. Category = "CassetteRobotAlarm",
  439. }, () => { return true; });
  440. LoadCassetteFailAlarm = SubscribeAlarm(new AlarmEventItem()
  441. {
  442. EventEnum = $"{Name}.LoadCassetteFailAlarm",
  443. Description = $"Load cassette fail reason ",
  444. Solution = "No information available. Press[Retry] to delete alarm message.",
  445. Explaination = "No information available.",
  446. AutoRecovery = false,
  447. Level = EventLevel.Alarm,
  448. Action = EventAction.ClearAndRetry,
  449. Category = "CassetteRobotAlarm",
  450. }, () => { return true; });
  451. UnloadCassetteTimeoutAlarm = SubscribeAlarm(new AlarmEventItem()
  452. {
  453. EventEnum = $"{Name}.UnloadCassetteTimeoutAlarm",
  454. Description = $"Unload cassette timeout ",
  455. Solution = "No information available. Press[Retry] to delete alarm message.",
  456. Explaination = "No information available.",
  457. AutoRecovery = false,
  458. Level = EventLevel.Alarm,
  459. Action = EventAction.ClearAndRetry,
  460. Category = "CassetteRobotAlarm",
  461. }, () => { return true; });
  462. UnloadCassetteFailAlarm = SubscribeAlarm(new AlarmEventItem()
  463. {
  464. EventEnum = $"{Name}.UnloadCassetteFailAlarm",
  465. Description = $"Unload cassette fail reason ",
  466. Solution = "No information available. Press[Retry] to delete alarm message.",
  467. Explaination = "No information available.",
  468. AutoRecovery = false,
  469. Level = EventLevel.Alarm,
  470. Action = EventAction.ClearAndRetry,
  471. Category = "CassetteRobotAlarm",
  472. }, () => { return true; });
  473. LoadCassettePauseWarning = SubscribeAlarm(new AlarmEventItem()
  474. {
  475. EventEnum = $"{Name}.LoadCassettePauseWarning",
  476. Description = $"Load cassette pause ",
  477. Solution = "No information available. Press[Clear] to delete alarm message.",
  478. Explaination = "No information available.",
  479. AutoRecovery = false,
  480. Level = EventLevel.Warning,
  481. Action = EventAction.Clear,
  482. Category = "CassetteRobotAlarm",
  483. }, () => { return true; });
  484. LoadCassetteResumeWarning = SubscribeAlarm(new AlarmEventItem()
  485. {
  486. EventEnum = $"{Name}.LoadCassetteResumeWarning",
  487. Description = $"Load cassette resume ",
  488. Solution = "No information available. Press[Clear] to delete alarm message.",
  489. Explaination = "No information available.",
  490. AutoRecovery = false,
  491. Level = EventLevel.Warning,
  492. Action = EventAction.Clear,
  493. Category = "CassetteRobotAlarm",
  494. }, () => { return true; });
  495. UnoadCassettePauseWarning = SubscribeAlarm(new AlarmEventItem()
  496. {
  497. EventEnum = $"{Name}.UnoadCassettePauseWarning",
  498. Description = $"Unload cassette pause ",
  499. Solution = "No information available. Press[Clear] to delete alarm message.",
  500. Explaination = "No information available.",
  501. AutoRecovery = false,
  502. Level = EventLevel.Warning,
  503. Action = EventAction.Clear,
  504. Category = "CassetteRobotAlarm",
  505. }, () => { return true; });
  506. UnoadCassetteResumeWarning = SubscribeAlarm(new AlarmEventItem()
  507. {
  508. EventEnum = $"{Name}.UnoadCassetteResumeWarning",
  509. Description = $"Unload cassette resume ",
  510. Solution = "No information available. Press[Clear] to delete alarm message.",
  511. Explaination = "No information available.",
  512. AutoRecovery = false,
  513. Level = EventLevel.Warning,
  514. Action = EventAction.Clear,
  515. Category = "CassetteRobotAlarm",
  516. }, () => { return true; });
  517. PickCassettePauseWarning = SubscribeAlarm(new AlarmEventItem()
  518. {
  519. EventEnum = $"{Name}.PickCassettePauseWarning",
  520. Description = $"Pick cassette pause ",
  521. Solution = "No information available. Press[Clear] to delete alarm message.",
  522. Explaination = "No information available.",
  523. AutoRecovery = false,
  524. Level = EventLevel.Warning,
  525. Action = EventAction.Clear,
  526. Category = "CassetteRobotAlarm",
  527. }, () => { return true; });
  528. PickCassetteResumeWarning = SubscribeAlarm(new AlarmEventItem()
  529. {
  530. EventEnum = $"{Name}.PickCassetteResumeWarning",
  531. Description = $"Pick cassette resume ",
  532. Solution = "No information available. Press[Clear] to delete alarm message.",
  533. Explaination = "No information available.",
  534. AutoRecovery = false,
  535. Level = EventLevel.Warning,
  536. Action = EventAction.Clear,
  537. Category = "CassetteRobotAlarm",
  538. }, () => { return true; });
  539. PlaceCassettePauseWarning = SubscribeAlarm(new AlarmEventItem()
  540. {
  541. EventEnum = $"{Name}.PlaceCassettePauseWarning",
  542. Description = $"Place cassette pause ",
  543. Solution = "No information available. Press[Clear] to delete alarm message.",
  544. Explaination = "No information available.",
  545. AutoRecovery = false,
  546. Level = EventLevel.Warning,
  547. Action = EventAction.Clear,
  548. Category = "CassetteRobotAlarm",
  549. }, () => { return true; });
  550. PlaceCassetteResumeWarning = SubscribeAlarm(new AlarmEventItem()
  551. {
  552. EventEnum = $"{Name}.PlaceCassetteResumeWarning",
  553. Description = $"Place cassette resume ",
  554. Solution = "No information available. Press[Clear] to delete alarm message.",
  555. Explaination = "No information available.",
  556. AutoRecovery = false,
  557. Level = EventLevel.Warning,
  558. Action = EventAction.Clear,
  559. Category = "CassetteRobotAlarm",
  560. }, () => { return true; });
  561. GotoPauseWarning = SubscribeAlarm(new AlarmEventItem()
  562. {
  563. EventEnum = $"{Name}.GotoPauseWarning",
  564. Description = $"{Name} goto pause ",
  565. Solution = "No information available. Press[Clear] to delete alarm message.",
  566. Explaination = "No information available.",
  567. AutoRecovery = false,
  568. Level = EventLevel.Warning,
  569. Action = EventAction.Clear,
  570. Category = "CassetteRobotAlarm",
  571. }, () => { return true; });
  572. GotoResumeWarning = SubscribeAlarm(new AlarmEventItem()
  573. {
  574. EventEnum = $"{Name}.GotoResumeWarning",
  575. Description = $"{Name} goto resume ",
  576. Solution = "No information available. Press[Clear] to delete alarm message.",
  577. Explaination = "No information available.",
  578. AutoRecovery = false,
  579. Level = EventLevel.Warning,
  580. Action = EventAction.Clear,
  581. Category = "CassetteRobotAlarm",
  582. }, () => { return true; });
  583. ShutterOpenTimeoutAlarm = SubscribeAlarm(new AlarmEventItem()
  584. {
  585. EventEnum = $"{Name}.ShutterOpenTimeoutAlarm",
  586. Description = $"Shutter Open Timeout ",
  587. Solution = "No information available. Press[Clear] to delete alarm message.",
  588. Explaination = "No information available.",
  589. AutoRecovery = false,
  590. Level = EventLevel.Alarm,
  591. Action = EventAction.Clear,
  592. Category = "CassetteRobotAlarm",
  593. }, () => { return true; });
  594. RobotDIAlarm = SubscribeAlarm(new AlarmEventItem()
  595. {
  596. EventEnum = $"{Name}.RobotDIAlarm",
  597. Description = $"Carrier Robot DI Alarm Trigger ",
  598. Solution = "No information available. Press[Retry] to delete alarm message.",
  599. Explaination = "No information available.",
  600. AutoRecovery = false,
  601. Level = EventLevel.Alarm,
  602. Action = EventAction.ClearAndRetry,
  603. Category = "CarrierRobotAlarm",
  604. }, () => { return true; });
  605. ShutterCloseTimeoutAlarm = SubscribeAlarm(new AlarmEventItem()
  606. {
  607. EventEnum = $"{Name}.ShutterCloseTimeoutAlarm",
  608. Description = $"Shutter Close Timeout ",
  609. Solution = "No information available. Press[Clear] to delete alarm message.",
  610. Explaination = "No information available.",
  611. AutoRecovery = false,
  612. Level = EventLevel.Alarm,
  613. Action = EventAction.Clear,
  614. Category = "CassetteRobotAlarm",
  615. }, () => { return true; });
  616. if (AlarmSignaFOUPRobotTPStatusWarning != null)
  617. {
  618. var alarm = SubscribeAlarm(new AlarmEventItem()
  619. {
  620. EventEnum = $"{Name}.AlarmSignaFOUPRobotTPStatusWarning",
  621. Description = $"FOUP Robot TP Status Warning Trigger ",
  622. Solution = "No information available. Press[Clear] to delete alarm message.",
  623. Explaination = "No information available.",
  624. AutoRecovery = false,
  625. Level = EventLevel.Warning,
  626. Action = EventAction.Clear,
  627. Category = "CassetteRobotAlarm",
  628. }, () => { AlarmSignaFOUPRobotTPStatusWarning.Reset(); return true; });
  629. AlarmSignaFOUPRobotTPStatusWarning.AlarmTriggered = alarm;
  630. }
  631. CarrierRobotDevice.RobotHasError = RobotHasError;
  632. }
  633. }
  634. }