RouteManager.cs 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. using System;
  2. using Aitex.Sorter.Common;
  3. using MECF.Framework.Common.Equipment;
  4. namespace Aitex.Sorter.RT.Module
  5. {
  6. [Flags]
  7. public enum MoveFlag
  8. {
  9. PickFromSource = 0x01,
  10. PlaceToAligner = 0x02,
  11. Align = 0x04,
  12. PickFromAligner = 0x08,
  13. PlaceToDest = 0x10,
  14. }
  15. public enum MoveStep
  16. {
  17. PickFromSource,
  18. PlaceToTurnOver,
  19. Turning,
  20. PickFromTurnOver,
  21. PlaceToAligner,
  22. Aligning,
  23. WaitAligner, //pass aligner wait
  24. PickFromAligner,
  25. PlaceToDest,
  26. Completed,
  27. };
  28. public class MoveTask
  29. {
  30. public string WaferID;
  31. public ModuleName SourceStaion;
  32. public int SourceSlot;
  33. public ModuleName DestStaion;
  34. public int DestSlot;
  35. public MoveOption option;
  36. public bool swap;
  37. public double Notch;
  38. public Hand Blade; //wafer使用的手臂
  39. public MoveFlag Flag;
  40. public MoveStep Step;
  41. public bool VerifyAny;
  42. public bool VerifyLaserMaker;
  43. public string LaserMaker;
  44. public bool VerifyT7Code;
  45. public string T7Code;
  46. public double DelayTimeBeforePick = 0.0;
  47. }
  48. public class Move
  49. {
  50. public string WaferID;
  51. public int SourceStaion;
  52. public int SourceSlot;
  53. public int DestStaion;
  54. public int DestSlot;
  55. public int option;
  56. public bool swap;
  57. public double Angle;
  58. public MoveFlag State;
  59. public bool VerifyAny;
  60. public bool VerifyLaserMaker;
  61. public string LaserMaker;
  62. public bool VerifyT7Code;
  63. public string T7Code;
  64. public double DelayTimeBeforePick = 0.0;
  65. }
  66. }