AlignTaskEx2.cs 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using Aitex.Core.Common;
  2. using Aitex.Core.RT.Device;
  3. using Aitex.Core.RT.Device.Unit;
  4. using athosRT.Devices.EFEM.ABS;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. namespace athosRT.Devices.EFEM.Task
  11. {
  12. public class AlignTaskEx2 : CheckImp, ITask
  13. {
  14. public bool Execute(out string result, params string[] args)
  15. {
  16. string str = "CoolingBuffer2";
  17. BufferServerModule entity = (BufferServerModule)this.GetEntity(str);
  18. if (entity == null)
  19. {
  20. result = "PARAM_NG";
  21. return false;
  22. }
  23. if (!this.MultiWaferSize)
  24. ;
  25. if (!this.Check<NoReadyPolicy>(str, out result) || !this.Check<NoInitCompletedPolicy>(str, out result) || !this.Check<NoOriginCompletedPolicy>(str, out result) || !this.Check<VacPolicy>(str, out result) || !this.Check<EMSPolicy>(str, out result) || !this.Check<ErrorPolicy>(str, out result) || !this.Check<BusyPolicy>(str, out result) || !this.Check<HoldPolicy>(str, out result) || !this.Check<RemovePolicy>(str, out result) || !this.Check<MaintenancePolicy>(str, out result) || !this.Check<LinkPolicy>(str, out result) || !this.Check<ArmExtendPolicy>(str, out result) || !this.Check<PowerDownPolicy>(str, out result))
  26. return false;
  27. entity.Align((WaferSize)Enum.Parse(typeof(WaferSize), args[0]), out result);
  28. return true;
  29. }
  30. public bool? Monitor(out string result, params string[] args)
  31. {
  32. result = string.Empty;
  33. string str = "CoolingBuffer2";
  34. IoCoolingBuffer device = DEVICE.GetDevice<IoCoolingBuffer>(str);
  35. if (device.Error)
  36. {
  37. this.flag1 = ErrorCheckList1.VAC | ErrorCheckList1.STALL | ErrorCheckList1.LIMIT | ErrorCheckList1.POSITION | ErrorCheckList1.EMS | ErrorCheckList1.COMM | ErrorCheckList1.COMM2 | ErrorCheckList1.CLAMPON | ErrorCheckList1.CLAMPOF;
  38. this.flag2 = ErrorCheckList2.COMMAND | ErrorCheckList2.CLAMP_S;
  39. this.flag3 = ErrorCheckList3.WAFLOST | ErrorCheckList3.ALIGNNG | ErrorCheckList3.HARDWARE | ErrorCheckList3.INTERNAL;
  40. return new bool?(this.CheckError(str, out result));
  41. }
  42. return !device.Moving ? new bool?(true) : new bool?();
  43. }
  44. }
  45. }