Protocol.cs 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. namespace Efem.Protocol
  6. {
  7. public enum EfemCommandType
  8. {
  9. MOV, //MOV Motion request
  10. GET, //Request for each type status acquisition
  11. SET, //Control setting
  12. ACK,
  13. };
  14. public enum EfemCommand
  15. {
  16. READY, //Ready , ACK, INF
  17. INIT, //EFEM initialization MOV, ACK, INF
  18. ORGSH, //Origin search
  19. LOCK, //Pod lock MOV, ACK, INF
  20. UNLOCK, //Pod unlock
  21. DOCK, //Moving to pod dock position MOV, ACK, INF
  22. UNDOCK, //Moving to pod undock position MOV, ACK, INF
  23. OPEN, //Pod open MOV, ACK, INF
  24. CLOSE, //Pod close MOV, ACK, INF
  25. WAFSH, //Wafer mapping MOV, ACK, INF
  26. MAPDT, //Wafer map information GET, ACK, INF, EVT
  27. LOAD, //Wafer carry-out MOV, ACK, INF
  28. UNLOAD, //Wafer carry-in MOV, ACK, INF
  29. GOTO, //Move to specified object MOV, ACK, INF
  30. TRANS, //Wafer transfer MOV, ACK, INF
  31. CHANGE, //Wafer exchange MOV, ACK, INF
  32. MPNT, //Wafer MPNT MOV, ACK, INF
  33. ALIGN, //Alignment MOV, SET, ACK, INF
  34. ALIGN2, //Alignment MOV, SET, ACK, INF
  35. LIFT, //Alignment MOV, SET, ACK, INF
  36. HOME, //Home MOV, ACK, INF
  37. HOLD, //Hold MOV, ACK, INF
  38. RESTR, //Restart MOV, ACK
  39. ABORT, //Abort termination MOV, ACK, INF
  40. EMS, //Emergency stop MOV, ACK, INF
  41. ERROR, //Error GET, SET, ACK, INF
  42. CLAMP, //Clamp output, get state GET, SET, ACK, INF
  43. STATE, //Get status GET, ACK, INF
  44. MODE, //E84 mode setting GET, SET, ACK, INF
  45. TRANSREQ, //E84 automatic transfer request MOV, GET, ACK, INF, EVT
  46. SIGOUT, //Signal output SET, ACK
  47. SIGSTAT, //Signal input/output information GET, ACK, INF, EVT
  48. EVENT, //Event setting GET, SET, ACK, INF
  49. CSTID, //Carrier ID GET, ACK, INF
  50. USDEFINE, //User Define
  51. THICKNESS, //wafer thickness, GET, SET, ACK, INF
  52. SLOTSNUM, //LP slotsnum, GET, SET, ACK, INF
  53. WAFERSIZE, //LP WAFERSIZE, GET, SET, ACK, INF
  54. FLIP, //Flipper TurnOver, MOV, ACK, INF (add)
  55. }
  56. public enum EfemEventType
  57. {
  58. ALL = 0x1000, //All events (cannot be designated for GET)
  59. MAPDT = 0x0001, //Mapping result event
  60. TRANSREQ = 0x0002, //E84 automatic transfer start event
  61. SYSTEM = 0x0004, //System I/O update event
  62. PORT = 0x0008, //Port I/O update event
  63. PRS = 0x0010, //Pressure sensor measured value update event
  64. FFU = 0x0020, //FFU revolution update event
  65. CSTID,
  66. };
  67. public enum EfemEventValue
  68. {
  69. ON, //Event is enabled
  70. OFF, //Event is disabled
  71. };
  72. public class EfemParameter
  73. {
  74. public const string SYS = "SYS";
  75. public const string STOWER = "STOWER";
  76. public const string P1 = "P1";
  77. public const string P2 = "P2";
  78. public const string P3 = "P3";
  79. public const string P4 = "P4";
  80. }
  81. public enum StateItem
  82. {
  83. VER, //MOV Motion request
  84. TRACK, //Request for each type status acquisition
  85. PRS, //Control setting
  86. FFU,
  87. };
  88. public enum MoveArm
  89. {
  90. ARM1, //Designates upper finger
  91. ARM2, //Designates lower finger
  92. }
  93. public enum MovePosition
  94. {
  95. UP, //Height for inserting a wafer
  96. DOWN, //Height for picking up a wafer
  97. }
  98. }