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