using HslCommunication.Profinet.Siemens; using iWareCommon.Utils; using iWareModel; using S7.Net; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace iWareSda { /// /// 结构类 /// public class WareSdaStruct { /// /// PLC地址分隔符 ,用于分隔 DB地址和偏移量的 /// public static char PLCDBADDRESS_SEPARATE = '|'; /// /// 跟PLC最大的心跳值 /// public static int MaxHandShake = 10000; /// /// 系统设置的语言 语言配置 配置 0 中文 1 英文 /// public static int LanguageFlg = 0; /// /// 系统设置的使用的方式 /// public readonly static PLCServiceTypeEnum System_PlcServiceTypeEnum = PLCServiceTypeEnum.Siemens_HslCommunicationService; #region 堆垛机的PLC地址 public const CpuType Srm_PLC_CpuType = CpuType.S71500; public const SiemensPLCS Srm_SiemensPLCS = SiemensPLCS.S1500; public static string Srm1_Address = ConfigHelper.GetConfigString("Srm1_Address"); public static string Srm2_Address = ConfigHelper.GetConfigString("Srm2_Address"); public static string Srm3_Address = ConfigHelper.GetConfigString("Srm3_Address"); public static string Srm4_Address = ConfigHelper.GetConfigString("Srm4_Address"); public static short Srm_Rack = (short)ConfigHelper.GetConfigInt("Srm_Rack"); public static short Srm_Slot = (short)ConfigHelper.GetConfigInt("Srm_Slot"); public static short Srm_Port = (short)ConfigHelper.GetConfigInt("Srm_Port"); #endregion #region 输送线的PLC地址 public const CpuType Conveyer_PLC_CpuType = CpuType.S71500; public const SiemensPLCS Conveyer_SiemensPLCS = SiemensPLCS.S1500; public static string Conveyer_Address = ConfigHelper.GetConfigString("Conveyer_Address"); public static short Conveyer_Rack = (short)ConfigHelper.GetConfigInt("Conveyer_Rack"); public static short Conveyer_Slot = (short)ConfigHelper.GetConfigInt("Conveyer_Slot"); public static short Conveyer_Port = (short)ConfigHelper.GetConfigInt("Conveyer_Port"); #endregion public static string HuscoLine_Address = "";//ConfigHelper.GetConfigString("HuscoLine_Address"); /// /// Conveyer站点集合 /// public static List ConveyerStationList = new List() { "101","102" }; #region 堆垛机报警 //里面有空格,别忘了最后trim下 /// /// 堆垛机报警字典 /// key:报警DB块地址 value:报警内容 /// public static IDictionary SrmAlertDict = new System.Collections.Generic.Dictionary() { {"0.0","取货堆垛机有货"}, {"0.1","放货堆垛机无货"}, {"0.2","行走定位异常"}, {"0.3","升降定位异常"}, {"0.4","货叉定位异常"}, {"0.5","货叉编码器数据异常"}, {"0.6","货叉原位开关异常"}, {"0.7","左前超宽"}, {"1.0","右超高"}, {"1.1","右坍塌"}, {"1.2","起叉超时"}, {"1.3","落叉超时"}, {"1.4","货叉力矩异常"}, {"1.5","行走、升降寻址数据异常 "}, {"1.6","货叉寻址数据异常 "}, {"1.7","货叉运行超时 "}, {"2.0","行走超出软限位 "}, {"2.1","升降超出软限位 "}, {"2.2","货叉1超出软限位 "}, {"2.3","夹紧装置触发 "}, {"2.5","超速保护触发 "}, {"2.6","行走极限触发 "}, {"2.7","升降极限触发 "}, {"3.0","柜门急停触发 "}, {"3.1","非维修模式调整未归位,请归位 "}, {"3.2","相序继电器触发 "}, {"3.3","安全模块异常 "}, {"3.4","货叉1绝对值编码器数据异常 "}, {"3.5","外部急停触发,安全门急停触发 "}, {"3.6","外部手动触发 "}, {"4.0","行走变频器故障 "}, {"4.1","行走马达保护器未正常工作 "}, {"4.2","行走抱闸断路器未正常工作 "}, {"4.3","升降变频器故障 "}, {"4.4","升降马达保护器未正常工作 "}, {"4.5","升降抱闸断路器未正常工作 "}, {"4.6","货叉1变频器故障 "}, {"4.7","货叉1达保护器未正常工作 "}, {"5.0","货叉1抱闸断路器未正常工作 "}, {"5.1","货叉2变频器故障 "}, {"5.2","货叉2达保护器未正常工作 "}, {"5.3","货叉2抱闸断路器未正常工作 "}, {"5.4","过载装置触发 "}, {"5.5","软急停触发 "}, {"6.0","从站故障 "}, {"6.1","6.1 "}, {"6.2","列到位,无光电到位信号 "}, {"6.3","层到位,无光电到位信号 "}, {"6.4","行走抱闸接触器异常 "}, {"7.1","地面机通讯中断 "}, {"8.0","空取异常 "}, {"8.1","出库货位堵塞 "}, {"8.2","满入异常 "}, {"8.3"," 入库货位阻塞(放远处近处有货)"}, {"8.4"," 叉1叉2同时动作"}, {"8.5","源位置校验错误 "}, {"8.6","目标位置校验错误 "}, {"7.2","左后超宽 "}, {"7.0"," 输送机通讯中断"}, {"7.4","左后超宽 "}, {"7.3","右前超宽 "}, {"7.6","左超高1 "}, {"7.5","左超长 "}, {"5.6","取放货申请超时 "}, {"5.7","取放货申请信号中断 "}, {"2.4","立柱急停触发 "}, {"3.7","登梯口/立柱急停触发 "}, {"6.5","升降抱闸接触器异常 "}, {"6.6","货叉1抱闸接触器异常 "}, {"6.7","货叉2抱闸接触器异常 "}, {"10.0","行走机械卡阻 "}, {"10.1","升降机械卡阻 "}, {"10.2","货叉1机械卡阻 "}, {"10.3","货叉2机械卡阻 "}, {"10.4","地面柜急停触发 "}, {"10.5","拉绳开关被触发 "}, {"10.6","安全门被打开 "}, {"10.7","风扇灯断路器工作异常 "}, {"11.0","触摸屏、光通讯、激光测距电源断路器工作异常 "}, {"11.1","载货台安全回路断路器工作异常"}, {"11.2","按钮开关断路器 "}, {"11.3","载货台安全回路断路器工作异常"}, {"11.4","控制室安全门未关闭"}, {"11.5","行走激光丢失"}, {"11.6","升降激光丢失"}, {"11.7","货叉不在原位"}, {"12.2","安全插销未放回原位"}, {"12.3","堆垛机放完后还有货"}, {"12.4","设备停止"}, {"12.5","任务校验失败"}, {"12.6","制动电阻温控报警"}, {"12.7","左超高2"}, {"13.0","左超高3"}, {"13.1","左超高4"}, {"13.2","右超高2"}, {"13.3","右超高3"}, {"13.4","右超高4"}, {"7.7","升降超出范围 "}, //{"11.6","升降激光数据丢失 "}, //{"11.5","行走激光数据丢失 "}, {"8.7"," 电控柜门未关闭"}, //{"12.0","安全门打开 "}, //{"16.0","货物大小与指令不一致 "}, //{"16.1","货物大小与指令位置不一致 "}, }; #endregion #region Conveyer和输送线报警 //里面有空格,别忘了最后trim下 /// /// Conveyer报警字典 /// key:报警代码 value:报警内容 /// public static IDictionary ConveyerAlertDict = new System.Collections.Generic.Dictionary() { {"1102.0","HMI急停"}, {"1102.1","安全急停"}, {"1112.0","WCS通信中断"}, {"1112.1","堆垛机1通信中断"}, {"1112.2","堆垛机2通信中断"}, {"1112.3","扫码器1未扫到码"}, {"1112.4","扫码器1内部产生错误"}, {"1112.5","扫码器2未扫到码"}, {"1112.6","扫码器2内部产生错误"}, {"1112.7","扫码器3未扫到码"}, {"1113.0","扫码器3内部产生错误"}, {"1113.1","扫码器4未扫到码"}, {"1113.2","扫码器4内部产生错误"}, {"1113.3","Profinet宜科大模块掉线"}, {"1113.4","Profinet扫码器1掉线"}, {"1113.5","Profinet扫码器2掉线"}, {"1113.6","Profinet扫码器3掉线"}, {"1113.7","Profinet扫码器4掉线"}, {"1114.0","称重仪表1通信故障"}, {"1114.1","称重仪表2通信故障"}, {"1114.2","称重仪表3通信故障"}, {"1114.3","称重仪表4通信故障"}, {"1114.4","101口左超宽"}, {"1114.5","101口右超宽"}, {"1114.6","101口超高"}, {"1114.7","101口检测前数据未清除"}, {"1115.0","102口左超宽"}, {"1115.1","102口右超宽"}, {"1115.2","102口超高"}, {"1115.3","102口检测前数据未清除"}, {"1115.4","103口左超宽"}, {"1115.5","103口右超宽"}, {"1115.6","103口超高"}, {"1115.7","103口检测前数据未清除"}, //{"","104口左超宽"}, //{"","104口右超宽"}, //{"","104口超高"}, //{"","104口检测前数据未清除"}, {"1122.0","C1滚筒运行超时"}, {"1122.1","C1升降超时"}, {"1122.2","C1链条运行超时"}, {"1122.3","C1货物信息错误"}, {"1122.4","C1升降高位信号丢失"}, {"1122.5","C1升降低位信号丢失"}, {"1122.6","C1升降高低位信号同时亮故障"}, {"1122.7","C1托盘进碟盘机,检测有货"}, {"1123.0","C1滚筒停止位丢失"}, {"1123.1","C1滚筒变频报警"}, {"1123.2","C1升降变频报警"}, {"1123.3","C1链条变频报警"}, {"1123.4","备用1"}, {"1123.5","备用2"}, {"1123.6","备用3"}, {"1123.7","C1链条停止位丢失"}, {"1124.0","C1转盘运行超时"}, {"1124.1","C1转盘中停止位丢失"}, {"1124.2","C1转盘左停止位丢失"}, {"1124.3","C1转盘右停止位丢失"}, {"1124.4","C1堆垛机取货完成但传感器检测有货"}, {"1124.5","C1堆垛机放货完成但未检测到货"}, {"1126.0","C2滚筒运行超时"}, {"1126.1","C2升降超时"}, {"1126.2","C2链条运行超时"}, {"1126.3","C2货物信息错误"}, {"1126.4","C2升降高位信号丢失"}, {"1126.5","C2升降低位信号丢失"}, {"1126.6","C2升降高低位信号同时亮故障"}, {"1126.7","C2托盘进碟盘机,检测有货"}, {"1127.0","C2滚筒停止位丢失"}, {"1127.1","C2滚筒变频报警"}, {"1127.2","C2升降变频报警"}, {"1127.3","C2链条变频报警"}, {"1127.4","备用4"}, {"1127.5","备用5"}, {"1127.6","备用6"}, {"1127.7","C2链条停止位丢失"}, {"1128.0","C2转盘运行超时"}, {"1128.1","C2转盘中停止位丢失"}, {"1128.2","C2转盘左停止位丢失"}, {"1128.3","C2转盘右停止位丢失"}, {"1128.4","C2堆垛机取货完成但传感器检测有货"}, {"1128.5","C2堆垛机放货完成但未检测到货"}, {"1130.0","C3滚筒运行超时"}, {"1130.1","C3升降超时"}, {"1130.2","C3链条运行超时"}, {"1130.3","C3货物信息错误"}, {"1130.4","C3升降高位信号丢失"}, {"1130.5","C3升降低位信号丢失"}, {"1130.6","C3升降高低位信号同时亮故障"}, {"1130.7","C3托盘进碟盘机,检测有货"}, {"1131.0","C3滚筒停止位丢失"}, {"1131.1","C3滚筒变频报警"}, {"1131.2","C3升降变频报警"}, {"1131.3","C3链条变频报警"}, {"1131.4","备用7"}, {"1131.5","备用8"}, {"1131.6","备用9"}, {"1131.7","C3链条停止位丢失"}, {"1132.0","C3转盘运行超时"}, {"1132.1","C3转盘中停止位丢失"}, {"1132.2","C3转盘左停止位丢失"}, {"1132.3","C3转盘右停止位丢失"}, {"1132.4","C3堆垛机取货完成但传感器检测有货"}, {"1132.5","C3堆垛机放货完成但未检测到货"}, {"1134.0","C4滚筒运行超时"}, {"1134.1","C4升降超时"}, {"1134.2","C4链条运行超时"}, {"1134.3","C4货物信息错误"}, {"1134.4","C4升降高位信号丢失"}, {"1134.5","C4升降低位信号丢失"}, {"1134.6","C4升降高低位信号同时亮故障"}, {"1134.7","C4托盘进碟盘机,检测有货"}, {"1135.0","C4滚筒停止位丢失"}, {"1135.1","C4滚筒变频报警"}, {"1135.2","C4升降变频报警"}, {"1135.3","C4链条变频报警"}, {"1135.4","备用10"}, {"1135.5","备用11"}, {"1135.6","备用12"}, {"1135.7","C4链条停止位丢失"}, {"1136.0","C4转盘运行超时"}, {"1136.1","C4转盘中停止位丢失"}, {"1136.2","C4转盘左停止位丢失"}, {"1136.3","C4转盘右停止位丢失"}, {"1136.4","C4堆垛机取货完成但传感器检测有货"}, {"1136.5","C4堆垛机放货完成但未检测到货"}, {"1138.0","C5滚筒运行超时"}, {"1138.1","C5升降超时"}, {"1138.2","C5链条运行超时"}, {"1138.3","C5货物信息错误"}, {"1138.4","C5升降高位信号丢失"}, {"1138.5","C5升降低位信号丢失"}, {"1138.6","C5升降高低位信号同时亮故障"}, {"1138.7","C5托盘进碟盘机,检测有货"}, {"1139.0","C5滚筒停止位丢失"}, {"1139.1","C5滚筒变频报警"}, {"1139.2","C5升降变频报警"}, {"1139.3","C5链条变频报警"}, {"1139.4","备用13"}, {"1139.5","备用14"}, {"1139.6","备用15"}, {"1139.7","C5链条停止位丢失"}, {"1140.0","C5转盘运行超时"}, {"1140.1","C5转盘中停止位丢失"}, {"1140.2","C5转盘左停止位丢失"}, {"1140.3","C5转盘右停止位丢失"}, {"1140.4","C5堆垛机取货完成但传感器检测有货"}, {"1140.5","C5堆垛机放货完成但未检测到货"}, {"1142.0","C6滚筒运行超时"}, {"1142.1","C6升降超时"}, {"1142.2","C6链条运行超时"}, {"1142.3","C6货物信息错误"}, {"1142.4","C6升降高位信号丢失"}, {"1142.5","C6升降低位信号丢失"}, {"1142.6","C6升降高低位信号同时亮故障"}, {"1142.7","C6托盘进碟盘机,检测有货"}, {"1143.0","C6滚筒停止位丢失"}, {"1143.1","C6滚筒变频报警"}, {"1143.2","C6升降变频报警"}, {"1143.3","C6链条变频报警"}, {"1143.4","备用16"}, {"1143.5","备用17"}, {"1143.6","备用18"}, {"1143.7","C6链条停止位丢失"}, {"1144.0","C6转盘运行超时"}, {"1144.1","C6转盘中停止位丢失"}, {"1144.2","C6转盘左停止位丢失"}, {"1144.3","C6转盘右停止位丢失"}, {"1144.4","C6堆垛机取货完成但传感器检测有货"}, {"1144.5","C6堆垛机放货完成但未检测到货"}, {"1146.0","C7滚筒运行超时"}, {"1146.1","C7升降超时"}, {"1146.2","C7链条运行超时"}, {"1146.3","C7货物信息错误"}, {"1146.4","C7升降高位信号丢失"}, {"1146.5","C7升降低位信号丢失"}, {"1146.6","C7升降高低位信号同时亮故障"}, {"1146.7","C7托盘进碟盘机,检测有货"}, {"1147.0","C7滚筒停止位丢失"}, {"1147.1","C7滚筒变频报警"}, {"1147.2","C7升降变频报警"}, {"1147.3","C7链条变频报警"}, {"1147.4","备用19"}, {"1147.5","备用20"}, {"1147.6","备用21"}, {"1147.7","C7链条停止位丢失"}, {"1148.0","C7转盘运行超时"}, {"1148.1","C7转盘中停止位丢失"}, {"1148.2","C7转盘左停止位丢失"}, {"1148.3","C7转盘右停止位丢失"}, {"1148.4","C7堆垛机取货完成但传感器检测有货"}, {"1148.5","C7堆垛机放货完成但未检测到货"}, {"1150.0","C8滚筒运行超时"}, {"1150.1","C8升降超时"}, {"1150.2","C8链条运行超时"}, {"1150.3","C8货物信息错误"}, {"1150.4","C8升降高位信号丢失"}, {"1150.5","C8升降低位信号丢失"}, {"1150.6","C8升降高低位信号同时亮故障"}, {"1150.7","C8托盘进碟盘机,检测有货"}, {"1151.0","C8滚筒停止位丢失"}, {"1151.1","C8滚筒变频报警"}, {"1151.2","C8升降变频报警"}, {"1151.3","C8链条变频报警"}, {"1151.4","备用22"}, {"1151.5","备用23"}, {"1151.6","备用24"}, {"1151.7","C8链条停止位丢失"}, {"1152.0","C8转盘运行超时"}, {"1152.1","C8转盘中停止位丢失"}, {"1152.2","C8转盘左停止位丢失"}, {"1152.3","C8转盘右停止位丢失"}, {"1152.4","C8堆垛机取货完成但传感器检测有货"}, {"1152.5","C8堆垛机放货完成但未检测到货"}, }; #endregion } }