| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668 | using System;using System.ComponentModel;namespace WCS.Entity.Protocol.Protocol.Robot{    /// <summary>    ///  机械手工位状态    /// </summary>    [Flags]    public enum RobotState : ushort    {        /// <summary>        ///  完成取货信号        /// </summary>        [Description("完成取货信号")]        GetFinish = 1 << 0,        /// <summary>        ///  完成放货信号        /// </summary>        [Description("完成放货信号")]        PutFinish = 1 << 1,        /// <summary>        ///  设备故障状态        /// </summary>        [Description("设备故障状态")]        Alarm = 1 << 2,        /// <summary>        ///  当前任务完成        /// </summary>        [Description("当前任务完成")]        TaskFinish = 1 << 3,        /// <summary>        ///  设备上有货        /// </summary>        [Description("设备上有货")]        Loaded = 1 << 4,        /// <summary>        ///  机器人在原位        /// </summary>        [Description("机器人在原位")]        ForkCenter = 1 << 5,        /// <summary>        ///  反馈WCS能否发任务,1:可以发任务 0:不能发任务        /// </summary>        [Description("反馈WCS能否发任务,1:可以发任务 0:不能发任务")]        IssueTask = 1 << 6,        /// <summary>        ///  备用s        /// </summary>        [Description("备用")]        Res = 1 << 7,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        Res1 = 1 << 8,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        Res2 = 1 << 9,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        Res3 = 1 << 10,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        Res4 = 1 << 11,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        Res5 = 1 << 12,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        Res6 = 1 << 13,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        Res7 = 1 << 14,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        Res8 = 1 << 15,    }    /// <summary>    ///  机械臂模式    /// </summary>    public enum RobotMode : short    {        /// <summary>        ///  自动        /// </summary>        [Description("自动")]        Automatic = 1,        /// <summary>        ///  手动        /// </summary>        [Description("手动")]        Manua = 2,        /// <summary>        ///  报警        /// </summary>        [Description("报警")]        Alarm = 3    }    /// <summary>    ///  机械臂运行状态    /// </summary>    public enum RobotRunStatus : short    {        /// <summary>        ///  空闲        /// </summary>        [Description("空闲")]        Idle = 1,        /// <summary>        ///  入库抓取中        /// </summary>        [Description("入库抓取中")]        InboundCrawling = 2,        /// <summary>        ///  入库放置中        /// </summary>        [Description("入库放置中")]        InStorage = 3,        /// <summary>        ///  出库抓取中        /// </summary>        [Description("出库抓取中")]        OutBoundCrawling = 4,        /// <summary>        ///  出库放置中        /// </summary>        [Description("出库放置中")]        OutStorage = 5,        /// <summary>        ///  维护        /// </summary>        [Description("维护")]        Maintain = 99    }    /// <summary>    ///  机械臂报警    /// </summary>    [Flags]    public enum RobotAlarm : ulong    {        /// <summary>        ///  无        /// </summary>        [Description("无")]        无 = 0,        /// <summary>        ///  入库深度数据错误        /// </summary>        [Description("入库深度数据错误")]        入库深度数据错误 = 1L << 0,        /// <summary>        ///  出库深度数据错误        /// </summary>        [Description("出库深度数据错误")]        出库深度数据错误 = 1L << 1,        /// <summary>        ///  出库码垛数据出错        /// </summary>        [Description("出库码垛数据出错")]        出库码垛数据出错 = 1L << 2,        /// <summary>        ///  入库时检测有料        /// </summary>        [Description("入库时检测有料")]        入库时检测有料 = 1L << 3,        /// <summary>        ///  入库任务放置数据出错        /// </summary>        [Description("入库任务放置数据出错")]        入库任务放置数据出错 = 1L << 4,        /// <summary>        ///  出库任务放置数据出错        /// </summary>        [Description("出库任务放置数据出错")]        出库任务放置数据出错 = 1L << 5,        /// <summary>        /// 夹具1/2压货报警        /// </summary>        [Description("夹具1/2压货报警")]        夹具12压货报警 = 1L << 6,        /// <summary>        ///  移库任务放置数据出错        /// </summary>        [Description("移库任务放置数据出错")]        移库任务放置数据出错 = 1L << 7,        /// <summary>        ///  夹具1/2掉料报警        /// </summary>        [Description("夹具1/2掉料报警")]        夹具12掉料报警 = 1L << 8,        /// <summary>        ///  机器人充磁失败报警        /// </summary>        [Description("机器人充磁失败报警")]        机器人充磁失败报警 = 1L << 9,        /// <summary>        ///  光栅报警        /// </summary>        [Description("光栅报警")]        光栅报警 = 1L << 10,        /// <summary>        ///  光栅误触报警        /// </summary>        [Description("光栅误触报警")]        光栅误触报警 = 1L << 11,        /// <summary>        ///  安全门急停报警(取反)        /// </summary>        [Description("安全门急停报警取反")]        安全门急停报警 = 1L << 12,        /// <summary>        ///  检查机械臂A4轴报错        /// </summary>        [Description("检查机械臂A4轴报错")]        检查机械臂A4轴报错 = 1L << 13,        /// <summary>        ///  初始化后检测出夹具接近开关有物料        /// </summary>        [Description("初始化后检测出夹具接近开关有物料")]        初始化后检测出夹具接近开关有物料 = 1L << 14,        /// <summary>        ///  安全门打开(取反)        /// </summary>        [Description("安全门打开(取反)")]        安全门打开 = 1L << 15,        /// <summary>        ///  夹取物料5秒后光电未检测到        /// </summary>        [Description("夹取物料5秒后光电未检测到")]        夹取物料5秒后光电未检测到 = 1L << 16,        /// <summary>        ///  A4轴报错        /// </summary>        [Description("A4轴报错")]        A4轴报错 = 1L << 17,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用2 = 1L << 18,        /// <summary>        ///  提升变频器报警        /// </summary>        [Description("提升变频器报警")]        备用3 = 1L << 19,        /// <summary>        ///  货叉变频器报警        /// </summary>        [Description("货叉变频器报警")]        备用4 = 1L << 20,        /// <summary>        ///  提升超速报警        /// </summary>        [Description("提升超速报警")]        备用5 = 1L << 21,        /// <summary>        ///  风扇灯插座空开        /// </summary>        [Description("风扇灯插座空开")]        备用6 = 1L << 22,        /// <summary>        ///  触摸屏光通讯激光测距空开        /// </summary>        [Description("触摸屏光通讯激光测距空开")]        备用7 = 1L << 23,        /// <summary>        ///  行走马达保护器        /// </summary>        [Description("行走马达保护器")]        备用8 = 1L << 24,        /// <summary>        ///  行走抱闸空开        /// </summary>        [Description("行走抱闸空开")]        备用9 = 1L << 25,        /// <summary>        ///  起升马达保护器        /// </summary>        [Description("起升马达保护器")]        备用10 = 1L << 26,        /// <summary>        ///  起升抱闸空开        /// </summary>        [Description("起升抱闸空开")]        备用11 = 1L << 27,        /// <summary>        ///  货叉马达保护器        /// </summary>        [Description("货叉马达保护器")]        备用12 = 1L << 28,        /// <summary>        ///  货叉抱闸空开        /// </summary>        [Description("货叉抱闸空开")]        备用13 = 1L << 29,        /// <summary>        ///  安全门打开        /// </summary>        [Description("安全门打开")]        备用14 = 1L << 30,        /// <summary>        ///  安全继电器报警        /// </summary>        [Description("安全继电器报警")]        备用15 = 1L << 31,        /// <summary>        ///  当前货位已禁用        /// </summary>        [Description("当前货位已禁用")]        备用16 = 1L << 32,        /// <summary>        ///  组态中断报警        /// </summary>        [Description("组态中断报警")]        备用17 = 1L << 33,        /// <summary>        ///  货物左前超出        /// </summary>        [Description("货物左前超出")]        备用18 = 1L << 34,        /// <summary>        ///  货物左后超出        /// </summary>        [Description("货物左后超出")]        备用19 = 1L << 35,        /// <summary>        ///  货物右前超出        /// </summary>        [Description("货物右前超出")]        备用20 = 1L << 36,        /// <summary>        ///  货物右后超出        /// </summary>        [Description("货物右后超出")]        备用21 = 1L << 37,        /// <summary>        ///  相序保护        /// </summary>        [Description("相序保护")]        备用22 = 1L << 38,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用23 = 1L << 39,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用24 = 1L << 40,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用25 = 1L << 41,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用26 = 1L << 42,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用27 = 1L << 43,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用28 = 1L << 44,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用29 = 1L << 45,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用30 = 1L << 46,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用31 = 1L << 47,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用32 = 1L << 48,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用33 = 1L << 49,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用34 = 1L << 50,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用35 = 1L << 51,        /// <summary>        ///  载货台电源空开        /// </summary>        [Description("备用")]        备用36 = 1L << 52,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用37 = 1L << 53,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用38 = 1L << 54,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用39 = 1L << 55,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用40 = 1L << 56,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用41 = 1L << 57,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用42 = 1L << 58,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用43 = 1L << 59,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用44 = 1L << 60,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用45 = 1L << 61,        /// <summary>        ///  备用        /// </summary>        [Description("备用")]        备用46 = 1L << 62,    }    /// <summary>    ///  机械臂指令    /// </summary>    [Flags]    public enum RobotCmdType : ushort    {        /// <summary>        /// 码垛结束        /// </summary>        [Description("码垛结束")]        End = 1 >> 0,        /// <summary>        /// 备用        /// </summary>        [Description("备用")]        Res7 = 1 >> 1,        /// <summary>        /// 备用        /// </summary>        [Description("备用")]        Res8 = 1 >> 2,        /// <summary>        /// 备用        /// </summary>        [Description("备用")]        Res9 = 1 >> 3,        /// <summary>        /// 备用        /// </summary>        [Description("备用")]        Res10 = 1 >> 4,        /// <summary>        /// 备用        /// </summary>        [Description("备用")]        Res11 = 1 >> 5,        /// <summary>        /// 备用        /// </summary>        [Description("备用")]        Res12 = 1 >> 6,        /// <summary>        /// 备用        /// </summary>        [Description("备用")]        Res13 = 1 >> 7,        /// <summary>        /// 备用        /// </summary>        [Description("备用")]        Res14 = 1 >> 8,        /// <summary>        /// 备用        /// </summary>        [Description("备用")]        Res = 1 >> 9,        /// <summary>        /// 备用        /// </summary>        [Description("备用")]        Res1 = 1 >> 10,        /// <summary>        /// 备用        /// </summary>        [Description("备用")]        Res2 = 1 >> 11,        /// <summary>        /// 备用        /// </summary>        [Description("备用")]        Res3 = 1 >> 12,        /// <summary>        /// 备用        /// </summary>        [Description("备用")]        Res4 = 1 >> 13,        /// <summary>        /// 备用        /// </summary>        [Description("备用")]        Res5 = 1 >> 14,        /// <summary>        /// 备用        /// </summary>        [Description("备用")]        Res6 = 1 >> 15,    }}
 |