using System;
using System.ComponentModel;

namespace WCS.Entity.Protocol.SRM
{
    /// <summary>
    /// 运行模式
    /// </summary>
    [Description("运行模式")]
    public enum SrmRunSpeed : short
    {
        /// <summary>
        ///  默认
        /// </summary>
        [Description("默认")]
        Default = 0,

        /// <summary>
        ///  低速
        /// </summary>
        [Description("低速")]
        LowSpeed = 1,
    }

    /// <summary>
    /// 任务类型
    /// </summary>
    [Description("任务类型")]
    public enum SrmTaskType : short
    {
        /// <summary>
        ///  默认 出入库使用该任务类型
        /// </summary>
        [Description("默认,出入库使用该任务类型")]
        Default = 0,

        /// <summary>
        ///  完成任务
        /// </summary>
        [Description("完成任务")]
        FinishTask = 1,

        /// <summary>
        ///  删除任务
        /// </summary>
        [Description("删除任务")]
        DeleteTask = 2,

        /// <summary>
        ///  移动任务
        /// </summary>
        [Description("移动任务")]
        MoveTask = 3,

        /// <summary>
        ///  移库任务
        /// </summary>
        [Description("移库任务")]
        MoveGoods = 4
    }

    /// <summary>
    ///  货叉位置
    /// </summary>
    [Description("货叉位置")]
    public enum SrmForkPosition : short
    {
        /// <summary>
        ///  中位
        /// </summary>
        [Description("中位")]
        Centr = 0,

        /// <summary>
        ///  一深度
        /// </summary>
        [Description("一深度")]
        OneDepth = 1,

        /// <summary>
        /// 二深度
        /// </summary>
        [Description("二深度")]
        TwoDepth = 2
    }

    /// <summary>
    ///  运行模式
    /// </summary>
    [Description("运行模式")]
    public enum SrmMode : short
    {
        /// <summary>
        ///  自动
        /// </summary>
        [Description("自动")]
        自动 = 1,

        /// <summary>
        ///  半自动
        /// </summary>
        [Description("半自动")]
        半自动 = 2,

        /// <summary>
        ///  手动
        /// </summary>
        [Description("手动")]
        手动 = 3,

        /// <summary>
        ///  保持维修
        /// </summary>
        [Description("保持维修")]
        维修 = 4
    }

    /// <summary>
    ///  运行状态
    /// </summary>
    [Description("运行状态")]
    public enum SrmRunStatus : short
    {
        /// <summary>
        ///  空闲
        /// </summary>
        [Description("空闲")]
        空闲 = 1,

        /// <summary>
        ///  取货行走
        /// </summary>
        [Description("取货行走")]
        取货行走 = 2,

        /// <summary>
        ///  取货伸叉
        /// </summary>
        [Description("取货伸叉")]
        取货伸叉 = 3,

        /// <summary>
        ///  取货抬叉
        /// </summary>
        [Description("取货抬叉")]
        取货抬叉 = 4,

        /// <summary>
        ///  取货收叉
        /// </summary>
        [Description("取货收叉")]
        取货收叉 = 5,

        /// <summary>
        ///  放货行走
        /// </summary>
        [Description("放货行走")]
        放货行走 = 6,

        /// <summary>
        ///  放货伸叉
        /// </summary>
        [Description("放货伸叉")]
        放货伸叉 = 7,

        /// <summary>
        ///  放货降叉
        /// </summary>
        [Description("放货降叉")]
        放货降叉 = 8,

        /// <summary>
        ///  放货收叉
        /// </summary>
        [Description("放货收叉")]
        放货收叉 = 9,

        /// <summary>
        ///  任务执行中
        /// </summary>
        [Description("任务执行中")]
        任务执行中 = 10,

        /// <summary>
        ///  保持维修
        /// </summary>
        [Description("保持维修")]
        保持维修 = 99,
    }

    /// <summary>
    ///  堆垛机状态
    /// </summary>
    [Description("堆垛机状态")]
    [Flags]
    public enum SrmStatus : short
    {  
        /// <summary>
        ///  完成取货信号
        /// </summary>
        [Description("完成取货信号")]
        GetFinishi = 1 << 0,

        /// <summary>
        ///  完成放货信号
        /// </summary>
        [Description("完成放货信号")]
        PutFinishi = 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>
        ///  可以下发任务
        /// </summary>
        [Description("可以下发任务")]
        CanTaskIssued = 1 << 6,
         
    }

    /// <summary>
    /// 堆垛机报警项
    /// </summary>
    [Description("堆垛机报警项")]
    [Flags]
    public enum SrmAlarm : 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>
        /// 货叉运行超时
        /// </summary>
        [Description("货叉运行超时")]
        货叉运行超时 = 1L << 6,

        /// <summary>
        ///  货叉左侧超行程
        /// </summary>
        [Description("货叉左侧超行程")]
        货叉左侧超行程 = 1L << 7,

        /// <summary>
        ///  货物左前坍塌
        /// </summary>
        [Description("货物左前坍塌")]
        货物左前坍塌 = 1L << 8,

        /// <summary>
        ///  货物右前坍塌
        /// </summary>
        [Description("货物右前坍塌")]
        货物右前坍塌 = 1L << 9,

        /// <summary>
        ///  前限位触发
        /// </summary>
        [Description("前限位触发")]
        前限位触发 = 1L << 10,

        /// <summary>
        ///  后限位触发
        /// </summary>
        [Description("后限位触发")]
        后限位触发 = 1L << 11,

        /// <summary>
        ///  上限位触发
        /// </summary>
        [Description("上限位触发")]
        上限位触发 = 1L << 12,

        /// <summary>
        ///  下限位触发
        /// </summary>
        [Description("下限位触发")]
        下限位触发 = 1L << 13,

        /// <summary>
        ///  超载限位触发
        /// </summary>
        [Description("超载限位触发")]
        超载限位触发 = 1L << 14,

        /// <summary>
        ///  松绳限位触发1
        /// </summary>
        [Description("松绳限位触发1")]
        松绳限位触发1 = 1L << 15,

        /// <summary>
        ///  行走运动超行程
        /// </summary>
        [Description("行走运动超行程")]
        行走运动超行程 = 1L << 16,

        /// <summary>
        ///  起升运动超行程
        /// </summary>
        [Description("起升运动超行程")]
        起升运动超行程 = 1L << 17,

        /// <summary>
        ///  行走变频器报警
        /// </summary>
        [Description("行走变频器报警")]
        行走变频器报警 = 1L << 18,

        /// <summary>
        ///  提升变频器报警
        /// </summary>
        [Description("提升变频器报警")]
        提升变频器报警 = 1L << 19,

        /// <summary>
        ///  货叉变频器报警
        /// </summary>
        [Description("货叉变频器报警")]
        货叉变频器报警 = 1L << 20,

        /// <summary>
        ///  提升超速报警
        /// </summary>
        [Description("提升超速报警")]
        提升超速报警 = 1L << 21,

        /// <summary>
        ///  风扇灯插座空开
        /// </summary>
        [Description("风扇灯插座空开")]
        风扇灯插座空开 = 1L << 22,

        /// <summary>
        ///  触摸屏光通讯激光测距空开
        /// </summary>
        [Description("触摸屏光通讯激光测距空开")]
        触摸屏光通讯激光测距空开 = 1L << 23,

        /// <summary>
        ///  行走马达保护器
        /// </summary>
        [Description("行走马达保护器")]
        行走马达保护器 = 1L << 24,

        /// <summary>
        ///  行走抱闸空开
        /// </summary>
        [Description("行走抱闸空开")]
        行走抱闸空开 = 1L << 25,

        /// <summary>
        ///  起升马达保护器
        /// </summary>
        [Description("起升马达保护器")]
        起升马达保护器 = 1L << 26,

        /// <summary>
        ///  起升抱闸空开
        /// </summary>
        [Description("起升抱闸空开")]
        起升抱闸空开 = 1L << 27,

        /// <summary>
        ///  货叉马达保护器
        /// </summary>
        [Description("货叉马达保护器")]
        货叉马达保护器 = 1L << 28,

        /// <summary>
        ///  货叉抱闸空开
        /// </summary>
        [Description("货叉抱闸空开")]
        货叉抱闸空开 = 1L << 29,

        /// <summary>
        ///  安全门打开
        /// </summary>
        [Description("安全门打开")]
        安全门打开 = 1L << 30,

        /// <summary>
        ///  安全继电器报警
        /// </summary>
        [Description("安全继电器报警")]
        安全继电器报警 = 1L << 31,

        /// <summary>
        ///  当前货位已禁用
        /// </summary>
        [Description("当前货位已禁用")]
        当前货位已禁用 = 1L << 32,

        /// <summary>
        ///  组态中断报警
        /// </summary>
        [Description("组态中断报警")]
        组态中断报警 = 1L << 33,

        /// <summary>
        ///  货物左前超出
        /// </summary>
        [Description("货物左前超出")]
        货物左前超出 = 1L << 34,

        /// <summary>
        ///  货物左后超出
        /// </summary>
        [Description("货物左后超出")]
        货物左后超出 = 1L << 35,

        /// <summary>
        ///  货物右前超出
        /// </summary>
        [Description("货物右前超出")]
        货物右前超出 = 1L << 36,

        /// <summary>
        ///  货物右后超出
        /// </summary>
        [Description("货物右后超出")]
        货物右后超出 = 1L << 37,

        /// <summary>
        ///  相序保护
        /// </summary>
        [Description("相序保护")]
        相序保护 = 1L << 38,

        /// <summary>
        ///  备用
        /// </summary>
        [Description("备用")]
        备用 = 1L << 39,

        /// <summary>
        ///  安全门1报警
        /// </summary>
        [Description("安全门1报警")]
        安全门1报警 = 1L << 40,

        /// <summary>
        ///  安全门2报警
        /// </summary>
        [Description("安全门2报警")]
        安全门2报警 = 1L << 41,

        /// <summary>
        ///  行走测距信号丢失报警
        /// </summary>
        [Description("行走测距信号丢失报警")]
        行走测距信号丢失报警 = 1L << 42,

        /// <summary>
        ///  提升测距信号丢失报警
        /// </summary>
        [Description("提升测距信号丢失报警")]
        提升测距信号丢失报警 = 1L << 43,

        /// <summary>
        ///  行走定位失败
        /// </summary>
        [Description("行走定位失败")]
        行走定位失败 = 1L << 44,

        /// <summary>
        ///  提升定位失败
        /// </summary>
        [Description("提升定位失败")]
        提升定位失败 = 1L << 45,

        /// <summary>
        ///  回中定位失败
        /// </summary>
        [Description("回中定位失败")]
        回中定位失败 = 1L << 46,

        /// <summary>
        ///  堆垛机巷道有人进入光通讯中断
        /// </summary>
        [Description("堆垛机巷道有人进入光通讯中断")]
        堆垛机巷道有人进入光通讯中断 = 1L << 47,

        /// <summary>
        ///  货叉位置错误
        /// </summary>
        [Description("货叉位置错误")]
        货叉位置错误 = 1L << 48,

        /// <summary>
        ///  货叉编码器报警
        /// </summary>
        [Description("货叉编码器报警")]
        货叉编码器报警 = 1L << 49,

        /// <summary>
        ///  货叉编码器报警中间位
        /// </summary>
        [Description("货叉编码器报警中间位")]
        货叉编码器报警中间位 = 1L << 50,

        /// <summary>
        ///  货叉中位光电异常
        /// </summary>
        [Description("货叉中位光电异常")]
        货叉中位光电异常 = 1L << 51,

        /// <summary>
        ///  载货台电源空开
        /// </summary>
        [Description("载货台电源空开")]
        载货台电源空开 = 1L << 52,

        /// <summary>
        ///  按钮, 安全回路空开
        /// </summary>
        [Description("按钮安全回路空开")]
        按钮安全回路空开 = 1L << 53,

        /// <summary>
        ///  货物左前坍塌
        /// </summary>
        [Description("货物左后坍塌")]
        货物左后坍塌 = 1L << 54,

        /// <summary>
        ///  货物右前坍塌
        /// </summary>
        [Description("货物右后坍塌")]
        货物右后坍塌 = 1L << 55,

        /// <summary>
        ///  登梯口急停
        /// </summary>
        [Description("登梯口急停")]
        登梯口急停 = 1L << 56,

        /// <summary>
        ///  货物左超高19M
        /// </summary>
        [Description("货物左超高19M")]
        货物左超高19M = 1L << 57,

        /// <summary>
        ///  货物右超高19M
        /// </summary>
        [Description("货物右超高19M")]
        货物右超高19M = 1L << 58,

        /// <summary>
        ///  松绳限位触发2
        /// </summary>
        [Description("松绳限位触发2")]
        松绳限位触发2 = 1L << 59,

        /// <summary>
        ///  货叉右侧超行程
        /// </summary>
        [Description("货叉右侧超行程")]
        货叉右侧超行程 = 1L << 60,

        /// <summary>
        ///  取放货托盘总数超出限制
        /// </summary>
        [Description("取放货托盘总数超出限制")]
        取放货托盘总数超出限制 = 1L << 61,

        /// <summary>
        ///  安全门急停
        /// </summary>
        [Description("安全门急停")]
        安全门急停 = 1L << 62,
    }

    /// <summary>
    /// 堆垛机报警项
    /// </summary>
    [Description("堆垛机报警项")]
    [Flags]
    public enum SrmAlarmExt : ulong
    {
        /// <summary>
        ///  取货堆垛机有货
        /// </summary>
        [Description("工位1取货堆垛机有货")]
        工位1取货堆垛机有货 = 1L << 0,

        /// <summary>
        ///  放货时堆垛机无货
        /// </summary>
        [Description("工位1放货时堆垛机无货")]
        工位1放货时堆垛机无货 = 1L << 1,

        /// <summary>
        ///  行走定位失败
        /// </summary>
        [Description("行走定位失败")]
        行走定位失败 = 1L << 2,

        /// <summary>
        ///  升降定位失败
        /// </summary>
        [Description("升降定位失败")]
        升降定位失败 = 1L << 3,

         /// <summary>
        ///  货叉定位失败
        /// </summary>
        [Description("货叉定位失败")]
        货叉定位失败 = 1L << 4,

        /// <summary>
        ///  WCS通讯异常
        /// </summary>
        [Description("WCS通讯异常")]
        WCS通讯异常 = 1L << 5,

        /// <summary>
        /// 货叉中位开关异常
        /// </summary>
        [Description("货叉中位开关异常")]
        货叉中位开关异常 = 1L << 6,

        /// <summary>
        ///  工位1左前超宽
        /// </summary>
        [Description("工位1左前超宽")]
        工位1左前超宽 = 1L << 7,

        /// <summary>
        ///  工位1右超高
        /// </summary>
        [Description("工位1右超高")]
        工位1右超高 = 1L << 8,

        /// <summary>
        ///  工位1右超长
        /// </summary>
        [Description("工位1右超长")]
        工位1右超长 = 1L << 9,

        /// <summary>
        ///  工位1起叉超时
        /// </summary>
        [Description("工位1起叉超时")]
        工位1起叉超时 = 1L << 10,

        /// <summary>
        ///  工位1落叉超时
        /// </summary>
        [Description("工位1落叉超时")]
        工位1落叉超时 = 1L << 11,

        /// <summary>
        ///  工位2放货堆垛机无货
        /// </summary>
        [Description("工位2放货堆垛机无货")]
        工位2放货堆垛机无货 = 1L << 12,

        /// <summary>
        ///  行走、升降寻址数据异常
        /// </summary>
        [Description("行走、升降寻址数据异常")]
        行走升降寻址数据异常 = 1L << 13,

        /// <summary>
        ///  货叉1寻址数据异常
        /// </summary>
        [Description("货叉1寻址数据异常")]
        货叉1寻址数据异常 = 1L << 14,

        /// <summary>
        ///  货叉1运行超时
        /// </summary>
        [Description("货叉1运行超时")]
        货叉1运行超时 = 1L << 15,

        /// <summary>
        ///  行走超软极限
        /// </summary>
        [Description("行走超软极限")]
        行走超软极限 = 1L << 16,

        /// <summary>
        ///  升降超软极限
        /// </summary>
        [Description("升降超软极限")]
        升降超软极限 = 1L << 17,

        /// <summary>
        ///  货叉1超软极限
        /// </summary>
        [Description("货叉1超软极限")]
        货叉1超软极限 = 1L << 18,

        /// <summary>
        ///  加紧装置
        /// </summary>
        [Description("加紧装置")]
        加紧装置 = 1L << 19,

        /// <summary>
        ///  工位2左前超宽
        /// </summary>
        [Description("工位2左前超宽")]
        工位2左前超宽 = 1L << 20,

        /// <summary>
        ///  超速保护
        /// </summary>
        [Description("超速保护")]
        超速保护 = 1L << 21,

        /// <summary>
        ///  行走极限
        /// </summary>
        [Description("行走极限")]
        行走极限 = 1L << 22,

        /// <summary>
        ///  升降极限
        /// </summary>
        [Description("升降极限")]
        升降极限 = 1L << 23,

        /// <summary>
        ///  柜门急停
        /// </summary>
        [Description("柜门急停")]
        柜门急停 = 1L << 24,

        /// <summary>
        ///  登梯口急停
        /// </summary>
        [Description("登梯口急停")]
        登梯口急停 = 1L << 25,

        /// <summary>
        ///  相序继电器
        /// </summary>
        [Description("相序继电器")]
        相序继电器 = 1L << 26,

        /// <summary>
        ///  安全继电器
        /// </summary>
        [Description("安全继电器")]
        安全继电器 = 1L << 27,

        /// <summary>
        ///  货叉2超软极限
        /// </summary>
        [Description("货叉2超软极限")]
        货叉2超软极限 = 1L << 28,

        /// <summary>
        ///  工位2左后超宽
        /// </summary>
        [Description("工位2左后超宽")]
        工位2左后超宽 = 1L << 29,

        /// <summary>
        ///  外部手动触发
        /// </summary>
        [Description("外部手动触发")]
        外部手动触发 = 1L << 30,

        /// <summary>
        ///  工位2右前超宽
        /// </summary>
        [Description("工位2右前超宽")]
        工位2右前超宽 = 1L << 31,

        /// <summary>
        ///  行走变频器报警
        /// </summary>
        [Description("行走变频器报警")]
        行走变频器报警 = 1L << 32,

        /// <summary>
        ///  行走马达保护器报警
        /// </summary>
        [Description("行走马达保护器报警")]
        行走马达保护器报警 = 1L << 33,

        /// <summary>
        ///  行走抱闸断路器报警
        /// </summary>
        [Description("行走抱闸断路器报警")]
        行走抱闸断路器报警 = 1L << 34,

        /// <summary>
        ///  升降变频器报警
        /// </summary>
        [Description("升降变频器报警")]
        升降变频器报警 = 1L << 35,

        /// <summary>
        ///  升降马达保护器报警
        /// </summary>
        [Description("升降马达保护器报警")]
        升降马达保护器报警 = 1L << 36,

        /// <summary>
        ///  升降抱闸断路器报警
        /// </summary>
        [Description("升降抱闸断路器报警")]
        升降抱闸断路器报警 = 1L << 37,

        /// <summary>
        ///  货叉1变频器
        /// </summary>
        [Description("货叉1变频器")]
        货叉1变频器 = 1L << 38,

        /// <summary>
        ///  货叉1马达保护器报警
        /// </summary>
        [Description("货叉1马达保护器报警")]
        货叉1马达保护器报警 = 1L << 39,

        /// <summary>
        ///  货叉1抱闸报警
        /// </summary>
        [Description("货叉1抱闸报警")]
        货叉1抱闸报警 = 1L << 40,

        /// <summary>
        ///  货叉2变频器报警
        /// </summary>
        [Description("货叉2变频器报警")]
        货叉2变频器报警 = 1L << 41,

        /// <summary>
        ///  货叉2马达保护器报警
        /// </summary>
        [Description("货叉2马达保护器报警")]
        货叉2马达保护器报警 = 1L << 42,

        /// <summary>
        ///  货叉2抱闸报警
        /// </summary>
        [Description("货叉2抱闸报警")]
        货叉2抱闸报警 = 1L << 43,

        /// <summary>
        ///  工位2右后超宽
        /// </summary>
        [Description("工位2右后超宽")]
        工位2右后超宽 = 1L << 44,

        /// <summary>
        ///  本机软急停
        /// </summary>
        [Description("本机软急停")]
        本机软急停 = 1L << 45,

        /// <summary>
        ///  取放货申请超时
        /// </summary>
        [Description("取放货申请超时")]
        取放货申请超时 = 1L << 46,

        /// <summary>
        ///  取放货允许信号中断
        /// </summary>
        [Description("取放货允许信号中断")]
        取放货允许信号中断 = 1L << 47,

        /// <summary>
        ///  从站故障1
        /// </summary>
        [Description("从站故障1")]
        从站故障1 = 1L << 48,

        /// <summary>
        ///  从站故障2
        /// </summary>
        [Description("从站故障2")]
        从站故障2 = 1L << 49,

        /// <summary>
        ///  列确认异常
        /// </summary>
        [Description("列确认异常")]
        列确认异常 = 1L << 50,

        /// <summary>
        ///  层确认异常
        /// </summary>
        [Description("层确认异常")]
        层确认异常 = 1L << 51,

        /// <summary>
        ///  行走抱闸接触器异常
        /// </summary>
        [Description("行走抱闸接触器异常")]
        行走抱闸接触器异常 = 1L << 52,

        /// <summary>
        ///  升降抱闸接触器异常
        /// </summary>
        [Description("升降抱闸接触器异常")]
        升降抱闸接触器异常 = 1L << 53,

        /// <summary>
        ///  货叉1抱闸接触器异常
        /// </summary>
        [Description("货叉1抱闸接触器异常")]
        货叉1抱闸接触器异常 = 1L << 54,

        /// <summary>
        ///  货叉2抱闸接触器异常
        /// </summary>
        [Description("货叉2抱闸接触器异常")]
        货叉2抱闸接触器异常 = 1L << 55,

        /// <summary>
        ///  外部急停触发
        /// </summary>
        [Description("外部急停触发")]
        外部急停触发 = 1L << 56,

        /// <summary>
        ///  输送线通讯中断
        /// </summary>
        [Description("输送线通讯中断")]
        输送线通讯中断 = 1L << 57,

        /// <summary>
        ///  工位1左后超宽
        /// </summary>
        [Description("工位1左后超宽")]
        工位1左后超宽 = 1L << 58,

        /// <summary>
        ///  工位1右前超宽
        /// </summary>
        [Description("工位1右前超宽")]
        工位1右前超宽 = 1L << 59,

        /// <summary>
        ///  工位1右后超宽
        /// </summary>
        [Description("工位1右后超宽")]
        工位1右后超宽 = 1L << 60,

        /// <summary>
        ///  工位1左超长
        /// </summary>
        [Description("工位1左超长")]
        工位1左超长 = 1L << 61,

        /// <summary>
        ///  工位1左超高
        /// </summary>
        [Description("工位1左超高")]
        工位1左超高 = 1L << 62,
 
    }
    /// <summary>
    /// 堆垛机报警项
    /// </summary>
    [Description("堆垛机报警项")]
    [Flags]
    public enum SrmAlarmExt1 : ulong
    {
        /// <summary>
        ///  工位1空取
        /// </summary>
        [Description("工位1空取")]
        工位1空取 = 1L << 0,

        /// <summary>
        ///  工位2空取
        /// </summary>
        [Description("工位2空取")]
        工位2空取 = 1L << 1,

        /// <summary>
        ///  工位1满入
        /// </summary>
        [Description("工位1满入")]
        工位1满入 = 1L << 2,

        /// <summary>
        ///  工位2满入
        /// </summary>
        [Description("工位2满入")]
        工位2满入 = 1L << 3,

        /// <summary>
        ///  工位2源位校验错误
        /// </summary>
        [Description("工位2源位校验错误")]
        工位2源位校验错误 = 1L <<4,

        /// <summary>
        ///  工位1源位校验错误
        /// </summary>
        [Description("工位1源位校验错误")]
        工位1源位校验错误 = 1L << 5,

        /// <summary>
        /// 货叉中位开关异常
        /// </summary>
        [Description("工位1目标位校验错误")]
        工位1目标位校验错误 = 1L << 6,

        /// <summary>
        ///  工位2目标位校验错误
        /// </summary>
        [Description("工位2目标位校验错误")]
        工位2目标位校验错误 = 1L << 7,

        /// <summary>
        ///  工位2取货堆垛机有货
        /// </summary>
        [Description("工位2取货堆垛机有货")]
        工位2取货堆垛机有货 = 1L << 8,

        /// <summary>
        ///  24V电源断路器工作异常
        /// </summary>
        [Description("24V电源断路器工作异常")]
        电源断路器工作异常 = 1L << 9,

        /// <summary>
        ///  电控柜门未关闭
        /// </summary>
        [Description("电控柜门未关闭")]
        电控柜门未关闭 = 1L << 10,
        /// <summary>
        ///  wcs远程急停
        /// </summary>
        [Description("wcs远程急停")]
        wcs远程急停 = 1L << 11,

        /// <summary>
        ///  与WCS通讯中断
        /// </summary>
        [Description("与WCS通讯中断")]
        与WCS通讯中断 = 1L << 12,

        /// <summary>
        ///  工位1放货后载货台有货
        /// </summary>
        [Description("工位1放货后载货台有货")]
        工位1放货后载货台有货 = 1L << 13,

        /// <summary>
        ///  工位2放货后载货台有货
        /// </summary>
        [Description("工位2放货后载货台有货")]
        工位2放货后载货台有货 = 1L << 14,

        /// <summary>
        ///  任务超时
        /// </summary>
        [Description("任务超时")]
        任务超时 = 1L << 15,

        /// <summary>
        ///  行走扫码数据异常或卡阻
        /// </summary>
        [Description("行走扫码数据异常或卡阻")]
        行走扫码数据异常或卡阻 = 1L << 16,

        /// <summary>
        ///  升降扫码数据异常或卡阻
        /// </summary>
        [Description("升降扫码数据异常或卡阻")]
        升降扫码数据异常或卡阻 = 1L << 17,

        /// <summary>
        ///  货叉1编码器数据异常或卡阻
        /// </summary>
        [Description("货叉1编码器数据异常或卡阻")]
        货叉1编码器数据异常或卡阻 = 1L << 18,

        /// <summary>
        ///  货叉2编码器数据异常或卡阻
        /// </summary>
        [Description("货叉2编码器数据异常或卡阻")]
        货叉2编码器数据异常或卡阻 = 1L << 19,

        /// <summary>
        ///  工位2右超长
        /// </summary>
        [Description("工位2右超长")]
        工位2右超长 = 1L << 20,

        /// <summary>
        ///  工位2左超长
        /// </summary>
        [Description("工位2左超长")]
        工位2左超长 = 1L << 21,

        /// <summary>
        ///  安全门被打开
        /// </summary>
        [Description("安全门被打开")]
        安全门被打开 = 1L << 22,

        /// <summary>
        ///  风扇灯断路器工作异常
        /// </summary>
        [Description("风扇灯断路器工作异常")]
        风扇灯断路器工作异常 = 1L << 23,

        /// <summary>
        ///  触摸屏、光通讯、激光测距电源断路器工作异常
        /// </summary>
        [Description("触摸屏、光通讯、激光测距电源断路器工作异常")]
        触摸屏光通讯激光测距电源断路器工作异常 = 1L << 24,

        /// <summary>
        ///  载货台安全回路工作异常
        /// </summary>
        [Description("载货台安全回路工作异常")]
        载货台安全回路工作异常 = 1L << 25,

        /// <summary>
        ///  按钮开关断路器
        /// </summary>
        [Description("按钮开关断路器")]
        按钮开关断路器 = 1L << 26,

        /// <summary>
        ///  载货台安全回路断路器工作异常
        /// </summary>
        [Description("载货台安全回路断路器工作异常")]
        载货台安全回路断路器工作异常 = 1L << 27,

        /// <summary>
        ///  工位2起叉超时
        /// </summary>
        [Description("工位2起叉超时")]
        工位2起叉超时 = 1L << 28,

        /// <summary>
        ///  行走激光丢失
        /// </summary>
        [Description("行走激光丢失")]
        行走激光丢失 = 1L << 29,

        /// <summary>
        ///  升降激光丢失
        /// </summary>
        [Description("升降激光丢失")]
        升降激光丢失 = 1L << 30,

        /// <summary>
        ///  货叉不在源位
        /// </summary>
        [Description("货叉不在源位")]
        货叉不在源位 = 1L << 31,

        /// <summary>
        ///  工位2落叉超时
        /// </summary>
        [Description("工位2落叉超时")]
        工位2落叉超时 = 1L << 32,
         /// <summary>
        ///  无
        /// </summary>
        [Description("无")]
        无 = 1L << 33,
        /// <summary>
        ///  无
        /// </summary>
        [Description("无")]
        无1 = 1L << 34,
        /// <summary>
        ///  无
        /// </summary>
        [Description("无")]
        无2 = 1L << 35,
        /// <summary>
        ///  无
        /// </summary>
        [Description("无")]
        无3 = 1L << 36,
        /// <summary>
        ///  无
        /// </summary>
        [Description("无")]
        无4 = 1L << 37,
        /// <summary>
        ///  无
        /// </summary>
        [Description("无")]
        无5 = 1L << 38,
        /// <summary>
        ///  无
        /// </summary>
        [Description("无")]
        无6 = 1L << 39,
        /// <summary>
        ///  无
        /// </summary>
        [Description("无")]
        无7 = 1L << 40,
        /// <summary>
        ///  过载保护
        /// </summary>
        [Description("过载保护")]
        过载保护 = 1L << 41,
        /// <summary>
        ///  无
        /// </summary>
        [Description("无")]
        无8 = 1L << 42,
        /// <summary>
        ///  无
        /// </summary>
        [Description("无")]
        无9 = 1L << 43,


        /// <summary>
        ///  操作平台安全门检测
        /// </summary>
        [Description("操作平台安全门检测")]
        操作平台安全门检测 = 1L << 44,

        /// <summary>
        ///  地面控制盒通讯中断
        /// </summary>
        [Description("地面控制盒通讯中断")]
        地面控制盒通讯中断 = 1L << 45,

        /// <summary>
        ///  工位1入库货位堵塞
        /// </summary>
        [Description("工位1入库货位堵塞")]
        工位1入库货位堵塞 = 1L << 46,

        /// <summary>
        ///  工位2入库货位堵塞
        /// </summary>
        [Description("工位2入库货位堵塞")]
        工位2入库货位堵塞 = 1L << 47,

        /// <summary>
        ///  工位1出库阻塞（取远深位的货，但近深位有货阻挡）
        /// </summary>
        [Description("工位1出库阻塞（取远深位的货，但近深位有货阻挡）")]
        工位1出库阻塞取远深位的货但近深位有货阻挡 = 1L << 48,

        /// <summary>
        ///  工位2出库阻塞（取远深位的货，但近深位有货阻挡）
        /// </summary>
        [Description("工位2出库阻塞（取远深位的货，但近深位有货阻挡）")]
        工位2出库阻塞取远深位的货但近深位有货阻挡 = 1L << 49,

        /// <summary>
        ///  工位1出库阻塞（往站台放货时站台有货）
        /// </summary>
        [Description("工位1出库阻塞（往站台放货时站台有货）")]
        工位1出库阻塞往站台放货时站台有货 = 1L << 50,

        /// <summary>
        ///  工位2出库阻塞（往站台放货时站台有货）
        /// </summary>
        [Description("工位2出库阻塞（往站台放货时站台有货）")]
        工位2出库阻塞往站台放货时站台有货 = 1L <<51,

        /// <summary>
        ///  远程模块信号丢失
        /// </summary>
        [Description("远程模块信号丢失")]
        远程模块信号丢失 = 1L << 52,
 

    }
}
