using System; using WCS.Entity.Protocol.RGV; namespace WCS.Entity.Protocol { /// /// RGV 读取协议 后缀 _1=1工位 _2=2工位 无=共用 /// public interface IRGV521 : IProtocol { #region 一工位 /// /// 任务号 /// int TaskID_1 { get; set; } /// /// 任务类型 /// RGVTaskType TaskType_1 { get; set; } /// /// 起始站台 /// short StartPosition_1 { get; set; } /// /// 目标站台 /// short DestPosition_1 { get; set; } /// /// 优先级 /// short PRIORITY_1 { get; set; } /// /// 备用 /// short RES1_1 { get; set; } /// /// 备用 /// short RES2_1 { get; set; } /// /// 一工位状态 /// RGVStatus Status_1 { get; set; } /// /// 触发信号 在通讯协议中为VoucherNo_1 /// int Trigger_1 { get; set; } #endregion 一工位 #region 二工位 /// /// 任务号 /// int TaskID_2 { get; set; } /// /// 任务类型 /// RGVTaskType TaskType_2 { get; set; } /// /// 起始站台 /// short StartPosition_2 { get; set; } /// /// 目标站台 /// short DestPosition_2 { get; set; } /// /// 优先级 /// short PRIORITY_2 { get; set; } /// /// 备用 /// short RES1_2 { get; set; } /// /// 备用 /// short RES2_2 { get; set; } /// /// 一工位状态 /// RGVStatus Status_2 { get; set; } /// /// 触发信号 在通讯协议中为VoucherNo_1 /// int Trigger_2 { get; set; } #endregion 二工位 #region 共用 /// /// RGV运行状态 /// RGVRunStatus SystemStatus { get; set; } /// /// RGV运行模式 /// RGVMode WorkMode { get; set; } /// /// 备用6 /// short RES6 { get; set; } /// /// 位置 /// float Position { get; set; } /// /// 里程 /// [IgnoreChanging] float Mileage { get; set; } /// /// 运行时长 (单位:小时,带小数) /// [IgnoreChanging] float Runtime { get; set; } #endregion 共用 } [Flags] public enum RGVStatus : ushort { 光电 = 1 << 0, RGV到站 = 1 << 1, 任务完成 = 1 << 2, 备用 = 1 << 3, 备用9 = 1 << 4, 备用10 = 1 << 5, 备用11 = 1 << 6, 备用12 = 1 << 7, 备用1 = 1 << 8, 备用2 = 1 << 9, 备用3 = 1 << 10, 备用4 = 1 << 11, 备用5 = 1 << 12, 载货 = 1 << 13, RGV输送线反转 = 1 << 14, RGV输送线正转 = 1 << 15, } }