123456789101112131415161718192021222324252627282930313233 |
- using Aitex.Core.RT.Device;
- using athosRT.Devices.EFEM.Task;
- using MECF.Framework.Common.Equipment;
- using MECF.Framework.RT.EquipmentLibrary.HardwareUnits.Robots.RobotBase;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace athosRT.Devices.EFEM.ABS
- {
- public class ArmExtendPolicy : CheckImp, IPolicy
- {
- public new bool Check(string device, out string reason)
- {
- reason = string.Empty;
- IServerModule entity = GetEntity("Robot");
- RobotBaseDevice device1 = DEVICE.GetDevice<RobotBaseDevice>("Robot");
- //如果robot处于非busy状态 || robot的Blade1/2Target不是device
- if (!entity.Busy || device1.Blade1Target != ModuleHelper.Converter(device) && device1.Blade2Target != ModuleHelper.Converter(device))
- {
- return true;
- }
- else
- {
- reason = "ARMEXTEND";
- return false;
- }
- }
- }
- }
|