using System;
namespace WCS.Entity.Protocol.SRM
{
///
/// 速度模式
///
public enum SCSpeedMode : short
{
正常 = 0,
低速 = 1
}
///
/// 运行状态
///
public enum SCRunStatus : short
{
空闲 = 1,
取货行走 = 2,
取货伸叉 = 3,
取货抬叉 = 4,
取货收叉 = 5,
放货行走 = 6,
放货伸叉 = 7,
取货降叉 = 8,
放货收叉 = 9,
维护 = 99
}
///
/// 运行模式
///
public enum SCMode : short
{
远程 = 1,
半自动 = 2,
手动 = 3,
维修 = 4
}
///
/// 货叉状态
///
[Flags]
public enum SRMForkStatus : ushort
{
握手 = 1 << 0,
取货完成 = 1 << 1,
放货完成 = 1 << 2,
设备故障 = 1 << 3,
任务完成 = 1 << 4,
有货 = 1 << 5,
货叉中位 = 1 << 6,
WCS能否发任务 = 1 << 7,
备用1 = 1 << 8,
备用2 = 1 << 9,
备用3 = 1 << 10,
备用4 = 1 << 11,
备用5 = 1 << 12,
备用6 = 1 << 13,
备用7 = 1 << 14,
备用8 = 1 << 15,
}
///
/// 堆垛机报警
///
[Flags]
public enum SCAlarm : ulong
{
无 = 0,
主柜急停 = 1L << 0,
分柜急停 = 1L << 1,
取货点异常 = 1L << 2,
放货点有货 = 1L << 3,
货叉取货完成后无货 = 1L << 4,
货叉无任务有货异常 = 1L << 5,
货叉运行超时 = 1L << 6,
货叉左侧超行程 = 1L << 7,
货物左前坍塌 = 1L << 8,
货物右前坍塌 = 1L << 9,
前限位触发 = 1L << 10,
后限位触发 = 1L << 11,
上限位触发 = 1L << 12,
下限位触发 = 1L << 13,
超载限位触发 = 1L << 14,
松绳限位触发1 = 1L << 15,
行走运动超行程 = 1L << 16,
起升运动超行程 = 1L << 17,
行走变频器报警 = 1L << 18,
提升变频器报警 = 1L << 19,
货叉变频器报警 = 1L << 20,
提升超速报警 = 1L << 21,
风扇, 灯, 插座空开 = 1L << 22,
触摸屏, 光通讯, 激光测距空开 = 1L << 23,
行走马达保护器 = 1L << 24,
行走抱闸空开 = 1L << 25,
起升马达保护器 = 1L << 26,
起升抱闸空开 = 1L << 27,
货叉马达保护器 = 1L << 28,
货叉抱闸空开 = 1L << 29,
安全门打开 = 1L << 30,
安全继电器报警 = 1L << 31,
当前货位已禁用 = 1L << 32,
组态中断报警 = 1L << 33,
货物左前超出 = 1L << 34,
货物左后超出 = 1L << 35,
货物右前超出 = 1L << 36,
货物右后超出 = 1L << 37,
相序保护 = 1L << 38,
货物右超高1M5 = 1L << 39,
安全门1报警 = 1L << 40,
安全门2报警 = 1L << 41,
行走测距信号丢失报警 = 1L << 42,
提升测距信号丢失报警 = 1L << 43,
行走定位失败 = 1L << 44,
提升定位失败 = 1L << 45,
回中定位失败 = 1L << 46,
//根据堆垛机通讯协议定义 下述报警暂时不存在
堆垛机巷道有人进入, 光通讯中断 = 1L << 47,
货叉位置错误 = 1L << 48,
货叉编码器报警 = 1L << 49,
货叉编码器报警中间位 = 1L << 50,
货叉中位光电异常 = 1L << 51,
载货台电源空开 = 1L << 52,
按钮, 安全回路空开 = 1L << 53,
货物左后坍塌 = 1L << 54,
货物右后坍塌 = 1L << 55,
登梯口急停 = 1L << 56,
货物左超高1M9 = 1L << 57,
货物右超高1M9 = 1L << 58,
松绳限位触发2 = 1L << 59,
货叉右侧超行程 = 1L << 60,
取放货托盘总数超限 = 1L << 61,
安全门急停 = 1L << 62,
}
}