| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383 | using Aitex.Core.RT.Device;using Aitex.Sorter.Common;namespace MECF.Framework.RT.EquipmentLibrary.HardwareUnits.LoadPorts.TDK{    public class MovHandler : IMsg    {        public bool background { get; private set; }        public string deviceID { private get; set; }        public string _cmd = string.Empty;        TDKLoadPort _device = null;        public MovHandler()        {            background = true;        }        public string package(params object[] args)        {            MovType type = (MovType)args[0];            _cmd = type.ToString();            return string.Format("MOV:{0}", _cmd);        }        public string retry()        {            return string.Format("RMV:{0}", _cmd);        }        public bool unpackage(string type, string[] cmds)        {            if (!type.Equals("INF"))                return false;            _device = DEVICE.GetDevice<TDKLoadPort>(deviceID);            if (_cmd == MovType.CULOD.ToString() || _cmd == MovType.CULDK.ToString())                _device.OnUnloaded();             if (_cmd == MovType.CLDDK.ToString() || _cmd == MovType.CLDMP.ToString() || _cmd == MovType.CLOAD.ToString())                _device.OnLoaded();                                     return true;        }        public bool canhandle(string id)        {            return id.Equals(_cmd);        }    }    public class HomeHandler : IMsg    {        public bool background { get; private set; }        public string deviceID { private get; set; }        TDKLoadPort _device = null;        private string _cmd = string.Empty;        public HomeHandler()        {            background = true;        }        public string package(params object[] args)        {            _cmd = MovType.ORGSH.ToString();            return string.Format("MOV:{0}", _cmd);        }        public string retry()        {            return string.Format("RMV:{0}", _cmd);        }        public bool unpackage(string type, string[] cmds)        {            if (!type.Equals("INF"))                return false;            _device = DEVICE.GetDevice<TDKLoadPort>(deviceID);            _device.Initalized = true;            _device.OnHomed();                        return true;        }        public bool canhandle(string id)        {            return id.Equals(_cmd);        }    }            public class ForceHomeHandler : IMsg    {        public bool background { get; private set; }        public string deviceID { private get; set; }        TDKLoadPort _device = null;        private string _cmd = string.Empty;        public ForceHomeHandler()        {            background = true;        }        public string package(params object[] args)        {            _cmd = MovType.ABORG.ToString();            return string.Format("MOV:{0}", _cmd);        }        public string retry()        {            return string.Format("RMV:{0}", _cmd);        }        public bool unpackage(string type, string[] cmds)        {            if (!type.Equals("INF"))                return false;            _device = DEVICE.GetDevice<TDKLoadPort>(deviceID);            _device.Initalized = true;            _device.OnHomed();                        return true;        }        public bool canhandle(string id)        {            return id.Equals(_cmd);        }    }    /// <summary>    /// 单步移动到Dock位置动作 指令为YDOOR    /// </summary>    public class DockPosHandler : IMsg    {        public bool background { get; private set; }        public string deviceID { private get; set; }        TDKLoadPort _device = null;        private string _cmd = string.Empty;        public DockPosHandler()        {            background = true;        }        public string package(params object[] args)        {            _cmd = MovType.YDOOR.ToString();            return string.Format("MOV:{0}", _cmd);        }        public string retry()        {            return string.Format("RMV:{0}", _cmd);        }        public bool unpackage(string type, string[] cmds)        {            if (!type.Equals("INF"))                return false;                        _device = DEVICE.GetDevice<TDKLoadPort>(deviceID);            _device.ClampState = FoupClampState.Close;            return true;        }        public bool canhandle(string id)        {            return id.Equals(_cmd);        }    }        /// <summary>    /// 单步移动到Un Dock位置动作 指令为YWAIT    /// </summary>    public class UnDockPosHandler : IMsg    {        public bool background { get; private set; }        public string deviceID { private get; set; }        TDKLoadPort _device = null;        private string _cmd = string.Empty;        public UnDockPosHandler()        {            background = true;        }        public string package(params object[] args)        {            _cmd = MovType.YWAIT.ToString();            return string.Format("MOV:{0}", _cmd);        }        public string retry()        {            return string.Format("RMV:{0}", _cmd);        }        public bool unpackage(string type, string[] cmds)        {            if (!type.Equals("INF"))                return false;                        _device = DEVICE.GetDevice<TDKLoadPort>(deviceID);            _device.ClampState = FoupClampState.Open;            return true;        }        public bool canhandle(string id)        {            return id.Equals(_cmd);        }    }        /// <summary>    /// 单步开门动作 指令为DORBK    /// </summary>    public class DoorOpenHandler : IMsg    {        public bool background { get; private set; }        public string deviceID { private get; set; }#pragma warning disable 414        TDKLoadPort _device = null;#pragma warning restore 414        private string _cmd = string.Empty;        public DoorOpenHandler()        {            background = true;        }        public string package(params object[] args)        {            _cmd = MovType.DORBK.ToString();            return string.Format("MOV:{0}", _cmd);        }        public string retry()        {            return string.Format("RMV:{0}", _cmd);        }        public bool unpackage(string type, string[] cmds)        {            if (!type.Equals("INF"))                return false;                        return true;        }        public bool canhandle(string id)        {            return id.Equals(_cmd);        }    }        /// <summary>    /// 单步关门动作 指令为DORFW    /// </summary>    public class DoorCloseHandler : IMsg    {        public bool background { get; private set; }        public string deviceID { private get; set; }#pragma warning disable 414        TDKLoadPort _device = null;#pragma warning restore 414        private string _cmd = string.Empty;        public DoorCloseHandler()        {            background = true;        }        public string package(params object[] args)        {            _cmd = MovType.DORFW.ToString();            return string.Format("MOV:{0}", _cmd);        }        public string retry()        {            return string.Format("RMV:{0}", _cmd);        }        public bool unpackage(string type, string[] cmds)        {            if (!type.Equals("INF"))                return false;                        return true;        }        public bool canhandle(string id)        {            return id.Equals(_cmd);        }    }        /// <summary>    /// 单步门下降动作 指令为ZDRDW    /// </summary>    public class DoorDownHandler : IMsg    {        public bool background { get; private set; }        public string deviceID { private get; set; }        TDKLoadPort _device = null;        private string _cmd = string.Empty;        public DoorDownHandler()        {            background = true;        }        public string package(params object[] args)        {            _cmd = MovType.ZDRDW.ToString();            return string.Format("MOV:{0}", _cmd);        }        public string retry()        {            return string.Format("RMV:{0}", _cmd);        }        public bool unpackage(string type, string[] cmds)        {            if (!type.Equals("INF"))                return false;            _device = DEVICE.GetDevice<TDKLoadPort>(deviceID);            _device.DoorState = FoupDoorState.Open;                        return true;        }        public bool canhandle(string id)        {            return id.Equals(_cmd);        }    }        /// <summary>    /// 单步门上升动作 指令为ZDRUP    /// </summary>    public class DoorUpHandler : IMsg    {        public bool background { get; private set; }        public string deviceID { private get; set; }        TDKLoadPort _device = null;        private string _cmd = string.Empty;        public DoorUpHandler()        {            background = true;        }        public string package(params object[] args)        {            _cmd = MovType.ZDRUP.ToString();            return string.Format("MOV:{0}", _cmd);        }        public string retry()        {            return string.Format("RMV:{0}", _cmd);        }        public bool unpackage(string type, string[] cmds)        {            if (!type.Equals("INF"))                return false;            _device = DEVICE.GetDevice<TDKLoadPort>(deviceID);            _device.DoorState = FoupDoorState.Close;                        return true;        }        public bool canhandle(string id)        {            return id.Equals(_cmd);        }    }}
 |