汇川AM521 PLC托盘输送线控制系统方案实现

在全球各行业对自动化需求高度密集的背景之下,国内智能化物流产业也呈现出快速发展的趋势,对生产、制造自动化装备的企业而言如何内外兼修提升技术、促进产品迭代升级是重要命题。

输送作为整体物流解决方案中的重要一环,输送效率决定了物流体系的整体运作效率。在自动化仓储系统中,托盘输送线主要可用来实现物料的自动出入库作业、物料暂存缓冲作业、实现系统的无缝衔接等。托盘输送线作为物流仓储系统中的重要组成部分,为整个出入库系统的柔性化提供基础保障,托盘输送线的高效运作,已经成功运用于各大物流集散中心,为客户带来良好的使用体验!

过往项目控制系统采用国外产品居多,本项目主要采用汇川技术平台。相关资源获取

1、现场项目组态如下:

AM521-0808TN  GL20-RTU-ECT_1.3.20.0  GL20-1600END(16 channels DI module) GL20-0016ETP(16 channels DO module) 等模块组成

2、 项目程序主框架

设备IO采集功能块、设备状态信息、手动控制功能、自动控制功能、输出功能模块、故障报警功能、上位机通信模块、拆叠盘机控制、提升机控制

3、设备IO采集功能块

(*io-change*)

//设备信号1001
InPut_DB.Device_Signal[1].for_stop:=D1001前停光电;
InPut_DB.Device_Signal[1].bak_stop:=D1001前停光电;
InPut_DB.Device_Signal[1].for_limit:= TRUE;
InPut_DB.Device_Signal[1].bak_limit:= TRUE;
InPut_DB.Device_Signal[1].up_good:=TRUE;
InPut_DB.Device_Signal[1].Conveyor_fault:= D1001故障;

//设备信号1002	
InPut_DB.Device_Signal[2].for_stop	:=D1002前停光电;
InPut_DB.Device_Signal[2].bak_stop	:=D1002前停光电;
InPut_DB.Device_Signal[2].for_limit:= TRUE;	
InPut_DB.Device_Signal[2].bak_limit:= TRUE;	
InPut_DB.Device_Signal[2].up_good:=TRUE;	
InPut_DB.Device_Signal[2].Conveyor_fault	:= D1002故障;
	
//设备信号1003	
InPut_DB.Device_Signal[3].for_stop	:=D1003前停光电;
InPut_DB.Device_Signal[3].bak_stop	:=D1003前停光电;
InPut_DB.Device_Signal[3].for_limit:= TRUE;	
InPut_DB.Device_Signal[3].bak_limit:= TRUE;	
InPut_DB.Device_Signal[3].up_good:=TRUE;	
InPut_DB.Device_Signal[3].Conveyor_fault	:= D1003故障;
	
//设备信号1004	
InPut_DB.Device_Signal[4].for_stop	:=D1004前停光电;
InPut_DB.Device_Signal[4].bak_stop	:=D1004前停光电;
InPut_DB.Device_Signal[4].for_limit:= TRUE;	
InPut_DB.Device_Signal[4].bak_limit:= TRUE;	
InPut_DB.Device_Signal[4].up_good:=TRUE;	
InPut_DB.Device_Signal[4].Conveyor_fault	:= D1004故障;
	
//设备信号1005	
InPut_DB.Device_Signal[5].for_stop	:=D1005前停光电;
InPut_DB.Device_Signal[5].bak_stop	:=D1005前停光电;
InPut_DB.Device_Signal[5].for_limit:= TRUE;	
InPut_DB.Device_Signal[5].bak_limit:= TRUE;	
InPut_DB.Device_Signal[5].up_good:=TRUE;	
InPut_DB.Device_Signal[5].Conveyor_fault	:= D1005故障;
	
//设备信号1006	
InPut_DB.Device_Signal[6].for_stop	:=D1006前停光电;
InPut_DB.Device_Signal[6].bak_stop	:=D1006后停光电;
InPut_DB.Device_Signal[6].for_limit:= TRUE;	
InPut_DB.Device_Signal[6].bak_limit:= TRUE;	
InPut_DB.Device_Signal[6].up_good:=D1006移栽上定位;	
InPut_DB.Device_Signal[6].down_good:=D1006移栽下定位;	
InPut_DB.Device_Signal[6].Conveyor_fault	:= D1006移栽故障;
InPut_DB.Device_Signal[6].Elevator_fault:=D1006升降故障;
	
//设备信号1007	
InPut_DB.Device_Signal[7].for_stop	:=D1007前停光电;
InPut_DB.Device_Signal[7].bak_stop	:=D1007前停光电;
InPut_DB.Device_Signal[7].for_limit:= TRUE;	
InPut_DB.Device_Signal[7].bak_limit:= TRUE;	
InPut_DB.Device_Signal[7].up_good:=TRUE;	
InPut_DB.Device_Signal[7].Conveyor_fault	:= D1007故障;
	
//设备信号1008	
InPut_DB.Device_Signal[8].for_stop	:=D1008前停光电;
InPut_DB.Device_Signal[8].bak_stop	:=D1008后停光电;
InPut_DB.Device_Signal[8].for_limit:= TRUE;	
InPut_DB.Device_Signal[8].bak_limit:= TRUE;	
InPut_DB.Device_Signal[8].up_good:=D1008移栽上定位;
InPut_DB.Device_Signal[8].up_good:=D1008移栽下定位;	
InPut_DB.Device_Signal[8].Conveyor_fault	:= D1008移栽故障;
InPut_DB.Device_Signal[8].Elevator_fault:=D1008升降故障;
	
//设备信号1009	
InPut_DB.Device_Signal[9].for_stop	:=D1009前停光电;
InPut_DB.Device_Signal[9].bak_stop	:=D1009前停光电;
InPut_DB.Device_Signal[9].for_limit:= TRUE;	
InPut_DB.Device_Signal[9].bak_limit:= TRUE;	
InPut_DB.Device_Signal[9].up_good:=TRUE;	
InPut_DB.Device_Signal[9].Conveyor_fault	:= D1009故障;
	
//设备信号1010	
InPut_DB.Device_Signal[10].for_stop	:=D1010前停光电;
InPut_DB.Device_Signal[10].bak_stop	:=D1010前停光电;
InPut_DB.Device_Signal[10].for_limit:= TRUE;	
InPut_DB.Device_Signal[10].bak_limit:= TRUE;	
InPut_DB.Device_Signal[10].up_good:=TRUE;	
InPut_DB.Device_Signal[10].Conveyor_fault	:= D1010故障;
	
//设备信号1011	
InPut_DB.Device_Signal[11].for_stop	:=D1011前停光电;
InPut_DB.Device_Signal[11].bak_stop	:=D1011前停光电;
InPut_DB.Device_Signal[11].for_limit:= TRUE;	
InPut_DB.Device_Signal[11].bak_limit:= TRUE;	
InPut_DB.Device_Signal[11].up_good:=TRUE;	
InPut_DB.Device_Signal[11].Conveyor_fault	:= D1011故障;
	
//设备信号1012	
InPut_DB.Device_Signal[12].for_stop	:=D1012前停光电;
InPut_DB.Device_Signal[12].bak_stop	:=D1012后停光电;
InPut_DB.Device_Signal[12].for_limit:= TRUE;	
InPut_DB.Device_Signal[12].bak_limit:= TRUE;	
InPut_DB.Device_Signal[12].up_good:=D1012移栽上定位;	
InPut_DB.Device_Signal[12].down_good:=D1012移栽下定位;
InPut_DB.Device_Signal[12].Conveyor_fault	:= D1012移栽故障;
InPut_DB.Device_Signal[12].Elevator_fault:=D1012升降故障;
	
//设备信号1013	
InPut_DB.Device_Signal[13].for_stop	:=D1013前停光电;
InPut_DB.Device_Signal[13].bak_stop	:=D1013前停光电;
InPut_DB.Device_Signal[13].for_limit:= TRUE;	
InPut_DB.Device_Signal[13].bak_limit:= TRUE;	
InPut_DB.Device_Signal[13].up_good:=TRUE;	
InPut_DB.Device_Signal[13].Conveyor_fault	:= D1013故障;
	
// //设备信号1014	
// InPut_DB.Device_Signal[14].for_stop	:=D1014前停光电;
// InPut_DB.Device_Signal[14].bak_stop	:=D1014前停光电;
// InPut_DB.Device_Signal[14].for_limit:= TRUE;	
// InPut_DB.Device_Signal[14].bak_limit:= TRUE;	
// InPut_DB.Device_Signal[14].up_good:=TRUE;	
// InPut_DB.Device_Signal[14].Conveyor_fault	:= D1014故障;
	
//设备信号1015	
InPut_DB.Device_Signal[15].for_stop	:=D1015前停光电;
InPut_DB.Device_Signal[15].bak_stop	:=D1015前停光电;
InPut_DB.Device_Signal[15].for_limit:= TRUE;	
InPut_DB.Device_Signal[15].bak_limit:= TRUE;	
InPut_DB.Device_Signal[15].up_good:=TRUE;	
InPut_DB.Device_Signal[15].Conveyor_fault	:= D1015故障;
	
// //设备信号1016	
// InPut_DB.Device_Signal[16].for_stop	:=D1016前停光电;
// InPut_DB.Device_Signal[16].bak_stop	:=D1016前停光电;
// InPut_DB.Device_Signal[16].for_limit:= TRUE;	
// InPut_DB.Device_Signal[16].bak_limit:= TRUE;	
// InPut_DB.Device_Signal[16].up_good:=TRUE;	
// InPut_DB.Device_Signal[16].Conveyor_fault	:= D1016故障;
	
// //设备信号1017	
// InPut_DB.Device_Signal[17].for_stop	:=D1017前停光电;
// InPut_DB.Device_Signal[17].bak_stop	:=D1017前停光电;
// InPut_DB.Device_Signal[17].for_limit:= TRUE;	
// InPut_DB.Device_Signal[17].bak_limit:= TRUE;	
// InPut_DB.Device_Signal[17].up_good:=TRUE;	
// InPut_DB.Device_Signal[17].Conveyor_fault	:= D1017故障;
// 	
// //设备信号1018	
// InPut_DB.Device_Signal[18].for_stop	:=D1018前停光电;
// InPut_DB.Device_Signal[18].bak_stop	:=D1018前停光电;
// InPut_DB.Device_Signal[18].for_limit:= TRUE;	
// InPut_DB.Device_Signal[18].bak_limit:= TRUE;	
// InPut_DB.Device_Signal[18].up_good:=TRUE;	
// InPut_DB.Device_Signal[18].Conveyor_fault	:= D1018故障;
	
//设备信号1019	
InPut_DB.Device_Signal[19].for_stop	:=D1019前停光电;
InPut_DB.Device_Signal[19].bak_stop	:=D1019前停光电;
InPut_DB.Device_Signal[19].for_limit:= TRUE;	
InPut_DB.Device_Signal[19].bak_limit:= TRUE;	
InPut_DB.Device_Signal[19].up_good:=TRUE;	
InPut_DB.Device_Signal[19].Conveyor_fault	:= D1019故障;
	
//设备信号1020	
InPut_DB.Device_Signal[20].for_stop	:=D1020前停光电;
InPut_DB.Device_Signal[20].bak_stop	:=D1020后停光电;
InPut_DB.Device_Signal[20].for_limit:= TRUE;	
InPut_DB.Device_Signal[20].bak_limit:= TRUE;	
InPut_DB.Device_Signal[20].up_good:=D1020移栽上定位;	
InPut_DB.Device_Signal[20].down_good:=D1020移栽下定位;
InPut_DB.Device_Signal[20].Conveyor_fault	:= D1020移栽故障;
InPut_DB.Device_Signal[20].Elevator_fault:=D1020升降故障;	
	
//设备信号1021	
InPut_DB.Device_Signal[21].for_stop	:=D1021前停光电;
InPut_DB.Device_Signal[21].bak_stop	:=D1021前停光电;
InPut_DB.Device_Signal[21].for_limit:= TRUE;	
InPut_DB.Device_Signal[21].bak_limit:= TRUE;	
InPut_DB.Device_Signal[21].up_good:=TRUE;	
InPut_DB.Device_Signal[21].Conveyor_fault	:= D1021故障;
	
//设备信号1022	
InPut_DB.Device_Signal[22].for_stop	:=D1022前停光电;
InPut_DB.Device_Signal[22].bak_stop	:=D1022前停光电;
InPut_DB.Device_Signal[22].for_limit:= TRUE;	
InPut_DB.Device_Signal[22].bak_limit:= TRUE;	
InPut_DB.Device_Signal[22].up_good:=TRUE;	
InPut_DB.Device_Signal[22].Conveyor_fault	:= D1022故障;
	
//设备信号1023	
InPut_DB.Device_Signal[23].for_stop	:=D1023前停光电;
InPut_DB.Device_Signal[23].bak_stop	:=D1023前停光电;
InPut_DB.Device_Signal[23].for_limit:= TRUE;	
InPut_DB.Device_Signal[23].bak_limit:= TRUE;	
InPut_DB.Device_Signal[23].up_good:=TRUE;	
InPut_DB.Device_Signal[23].Conveyor_fault	:= D1023故障;
	
//设备信号1024	
InPut_DB.Device_Signal[24].for_stop	:=D1024前停光电;
InPut_DB.Device_Signal[24].bak_stop	:=D1024后停光电;
InPut_DB.Device_Signal[24].for_limit:= TRUE;	
InPut_DB.Device_Signal[24].bak_limit:= TRUE;	
InPut_DB.Device_Signal[24].up_good:=D1024移栽上定位;
InPut_DB.Device_Signal[24].down_good:=D1024移栽下定位;
InPut_DB.Device_Signal[24].Conveyor_fault	:= D1024移栽故障;
InPut_DB.Device_Signal[24].Elevator_fault:=D1024升降故障;
	
//设备信号1025	
InPut_DB.Device_Signal[25].for_stop	:=D1025前停光电;
InPut_DB.Device_Signal[25].bak_stop	:=D1025前停光电;
InPut_DB.Device_Signal[25].for_limit:= TRUE;	
InPut_DB.Device_Signal[25].bak_limit:= TRUE;	
InPut_DB.Device_Signal[25].up_good:=TRUE;	
InPut_DB.Device_Signal[25].Conveyor_fault	:= D1025故障;
	
//设备信号1026	
InPut_DB.Device_Signal[26].for_stop	:=D1026前停光电;
InPut_DB.Device_Signal[26].bak_stop	:=D1026前停光电;
InPut_DB.Device_Signal[26].for_limit:= TRUE;	
InPut_DB.Device_Signal[26].bak_limit:= TRUE;	
InPut_DB.Device_Signal[26].up_good:=TRUE;	
InPut_DB.Device_Signal[26].Conveyor_fault	:= D1026故障;
	
//设备信号1027	
InPut_DB.Device_Signal[27].for_stop	:=D1027前停光电;
InPut_DB.Device_Signal[27].bak_stop	:=D1027后停光电;
InPut_DB.Device_Signal[27].for_limit:= TRUE;	
InPut_DB.Device_Signal[27].bak_limit:= TRUE;	
InPut_DB.Device_Signal[27].up_good:=D1027移栽上定位;
InPut_DB.Device_Signal[27].down_good:=D1027移栽下定位;
InPut_DB.Device_Signal[27].Conveyor_fault	:= D1027移栽故障;
InPut_DB.Device_Signal[27].Elevator_fault:=D1027升降故障;
	
//设备信号1028	
InPut_DB.Device_Signal[28].for_stop	:=D1028前停光电;
InPut_DB.Device_Signal[28].bak_stop	:=D1028前停光电;
InPut_DB.Device_Signal[28].for_limit:= TRUE;	
InPut_DB.Device_Signal[28].bak_limit:= TRUE;	
InPut_DB.Device_Signal[28].up_good:=TRUE;	
InPut_DB.Device_Signal[28].Conveyor_fault	:= D1028故障;
	
// //设备信号1029	
// InPut_DB.Device_Signal[29].for_stop	:=D1029前停光电;
// InPut_DB.Device_Signal[29].bak_stop	:=D1029前停光电;
// InPut_DB.Device_Signal[29].for_limit:= TRUE;	
// InPut_DB.Device_Signal[29].bak_limit:= TRUE;	
// InPut_DB.Device_Signal[29].up_good:=TRUE;	
// InPut_DB.Device_Signal[29].Conveyor_fault	:= D1029故障;
	
//设备信号1030	
InPut_DB.Device_Signal[30].for_stop	:=D1030前停光电;
InPut_DB.Device_Signal[30].bak_stop	:=D1030前停光电;
InPut_DB.Device_Signal[30].for_limit:= TRUE;	
InPut_DB.Device_Signal[30].bak_limit:= TRUE;	
InPut_DB.Device_Signal[30].up_good:=TRUE;	
InPut_DB.Device_Signal[30].Conveyor_fault	:= D1030故障;
	
//设备信号1031	
InPut_DB.Device_Signal[31].for_stop	:=D1031前停光电;
InPut_DB.Device_Signal[31].bak_stop	:=D1031后停光电;
InPut_DB.Device_Signal[31].for_limit:= TRUE;	
InPut_DB.Device_Signal[31].bak_limit:= TRUE;	
InPut_DB.Device_Signal[31].up_good:=D1031移栽上定位;
InPut_DB.Device_Signal[31].down_good:=D1031移栽下定位;
InPut_DB.Device_Signal[31].Conveyor_fault	:= D1031移栽故障;
InPut_DB.Device_Signal[31].Elevator_fault:=D1031升降故障;
	
//设备信号1032	
InPut_DB.Device_Signal[32].for_stop	:=D1032前停光电;
InPut_DB.Device_Signal[32].bak_stop	:=D1032前停光电;
InPut_DB.Device_Signal[32].for_limit:= TRUE;	
InPut_DB.Device_Signal[32].bak_limit:= TRUE;	
InPut_DB.Device_Signal[32].up_good:=TRUE;	
InPut_DB.Device_Signal[32].Conveyor_fault	:= D1032故障;
	
// //设备信号1033	
// InPut_DB.Device_Signal[33].for_stop	:=D1033前停光电;
// InPut_DB.Device_Signal[33].bak_stop	:=D1033前停光电;
// InPut_DB.Device_Signal[33].for_limit:= TRUE;	
// InPut_DB.Device_Signal[33].bak_limit:= TRUE;	
// InPut_DB.Device_Signal[33].up_good:=TRUE;	
// InPut_DB.Device_Signal[33].Conveyor_fault	:= D1033故障;
	
//设备信号1034	
InPut_DB.Device_Signal[34].for_stop	:=D1034前停光电;
InPut_DB.Device_Signal[34].bak_stop	:=D1034前停光电;
InPut_DB.Device_Signal[34].for_limit:= TRUE;	
InPut_DB.Device_Signal[34].bak_limit:= TRUE;	
InPut_DB.Device_Signal[34].up_good:=TRUE;	
InPut_DB.Device_Signal[34].Conveyor_fault	:= D1034故障;
	
// //设备信号1035	
// InPut_DB.Device_Signal[35].for_stop	:=D1035前停光电;
// InPut_DB.Device_Signal[35].bak_stop	:=D1035前停光电;
// InPut_DB.Device_Signal[35].for_limit:= TRUE;	
// InPut_DB.Device_Signal[35].bak_limit:= TRUE;	
// InPut_DB.Device_Signal[35].up_good:=TRUE;	
// InPut_DB.Device_Signal[35].Conveyor_fault	:= D1035故障;
	
//设备信号1036	
InPut_DB.Device_Signal[36].for_stop	:=D1036前停光电;
InPut_DB.Device_Signal[36].bak_stop	:=D1036前停光电;
InPut_DB.Device_Signal[36].for_limit:= TRUE;	
InPut_DB.Device_Signal[36].bak_limit:= TRUE;	
InPut_DB.Device_Signal[36].up_good:=TRUE;	
InPut_DB.Device_Signal[36].Conveyor_fault	:= D1036故障;
	
//设备信号1037	
InPut_DB.Device_Signal[37].for_stop	:=D1037前停光电;
InPut_DB.Device_Signal[37].bak_stop	:=D1037前停光电;
InPut_DB.Device_Signal[37].for_limit:= TRUE;	
InPut_DB.Device_Signal[37].bak_limit:= TRUE;	
InPut_DB.Device_Signal[37].up_good:=TRUE;	
InPut_DB.Device_Signal[37].Conveyor_fault	:= D1037故障;
	
//设备信号1038	
InPut_DB.Device_Signal[38].for_stop	:=D1038前停光电;
InPut_DB.Device_Signal[38].bak_stop	:=D1038前停光电;
InPut_DB.Device_Signal[38].for_limit:= TRUE;	
InPut_DB.Device_Signal[38].bak_limit:= TRUE;	
InPut_DB.Device_Signal[38].up_good:=TRUE;	
InPut_DB.Device_Signal[38].Conveyor_fault	:= D1038故障;
	
//设备信号1039	
InPut_DB.Device_Signal[39].for_stop	:=D1039前停光电;
InPut_DB.Device_Signal[39].bak_stop	:=D1039前停光电;
InPut_DB.Device_Signal[39].for_limit:= TRUE;	
InPut_DB.Device_Signal[39].bak_limit:= TRUE;	
InPut_DB.Device_Signal[39].up_good:=TRUE;	
InPut_DB.Device_Signal[39].Conveyor_fault	:= D1039故障;
	
//设备信号1040	
InPut_DB.Device_Signal[40].for_stop	:=D1040前停光电;
InPut_DB.Device_Signal[40].bak_stop	:=D1040前停光电;
InPut_DB.Device_Signal[40].for_limit:= TRUE;	
InPut_DB.Device_Signal[40].bak_limit:= TRUE;	
InPut_DB.Device_Signal[40].up_good:=TRUE;	
InPut_DB.Device_Signal[40].Conveyor_fault	:= D1040故障;
	
//设备信号1041	
InPut_DB.Device_Signal[41].for_stop	:=D1041前停光电;
InPut_DB.Device_Signal[41].bak_stop	:=D1041前停光电;
InPut_DB.Device_Signal[41].for_limit:= TRUE;	
InPut_DB.Device_Signal[41].bak_limit:= TRUE;	
InPut_DB.Device_Signal[41].up_good:=TRUE;	
InPut_DB.Device_Signal[41].Conveyor_fault	:= D1041故障;
	
//设备信号1042	
InPut_DB.Device_Signal[42].for_stop	:=D1042前停光电;
InPut_DB.Device_Signal[42].bak_stop	:=D1042前停光电;
InPut_DB.Device_Signal[42].for_limit:= TRUE;	
InPut_DB.Device_Signal[42].bak_limit:= TRUE;	
InPut_DB.Device_Signal[42].up_good:=TRUE;	
InPut_DB.Device_Signal[42].Conveyor_fault	:= D1042故障;
	
//设备信号1043	
InPut_DB.Device_Signal[43].for_stop	:=D1043前停光电;
InPut_DB.Device_Signal[43].bak_stop	:=D1043后停光电;
InPut_DB.Device_Signal[43].for_limit:= TRUE;	
InPut_DB.Device_Signal[43].bak_limit:= TRUE;	
InPut_DB.Device_Signal[43].up_good:=D1043移栽上定位;
InPut_DB.Device_Signal[43].down_good:=D1043移栽下定位;
InPut_DB.Device_Signal[43].Conveyor_fault	:= D1043移栽故障;
InPut_DB.Device_Signal[43].Elevator_fault:=D1043升降故障;
	
//设备信号1044	
InPut_DB.Device_Signal[44].for_stop	:=D1044前停光电;
InPut_DB.Device_Signal[44].bak_stop	:=D1044前停光电;
InPut_DB.Device_Signal[44].for_limit:= TRUE;	
InPut_DB.Device_Signal[44].bak_limit:= TRUE;	
InPut_DB.Device_Signal[44].up_good:=TRUE;	
InPut_DB.Device_Signal[44].Conveyor_fault	:= D1044故障;
	
//设备信号1045	
InPut_DB.Device_Signal[45].for_stop	:=D1045前停光电;
InPut_DB.Device_Signal[45].bak_stop	:=D1045前停光电;
InPut_DB.Device_Signal[45].for_limit:= TRUE;	
InPut_DB.Device_Signal[45].bak_limit:= TRUE;	
InPut_DB.Device_Signal[45].up_good:=TRUE;	
InPut_DB.Device_Signal[45].Conveyor_fault	:= D1045故障;
	
// //设备信号1046	
// InPut_DB.Device_Signal[46].for_stop	:=D1046前停光电;
// InPut_DB.Device_Signal[46].bak_stop	:=D1046前停光电;
// InPut_DB.Device_Signal[46].for_limit:= TRUE;	
// InPut_DB.Device_Signal[46].bak_limit:= TRUE;	
// InPut_DB.Device_Signal[46].up_good:=TRUE;	
// InPut_DB.Device_Signal[46].Conveyor_fault	:= D1046故障;
	
//设备信号1047	
InPut_DB.Device_Signal[47].for_stop	:=D1047前停光电;
InPut_DB.Device_Signal[47].bak_stop	:=D1047前停光电;
InPut_DB.Device_Signal[47].for_limit:= TRUE;	
InPut_DB.Device_Signal[47].bak_limit:= TRUE;	
InPut_DB.Device_Signal[47].up_good:=TRUE;	
InPut_DB.Device_Signal[47].Conveyor_fault	:= D1047故障;
	
//设备信号1048	
InPut_DB.Device_Signal[48].for_stop	:=D1048前停光电;
InPut_DB.Device_Signal[48].bak_stop	:=D1048后停光电;
InPut_DB.Device_Signal[48].for_limit:= TRUE;	
InPut_DB.Device_Signal[48].bak_limit:= TRUE;	
InPut_DB.Device_Signal[48].up_good:=D1048移栽上定位;
InPut_DB.Device_Signal[48].down_good:=D1048移栽下定位;
InPut_DB.Device_Signal[48].Conveyor_fault	:= D1048移栽故障;
InPut_DB.Device_Signal[48].Elevator_fault:=D1048升降故障;
	
//设备信号1049	
InPut_DB.Device_Signal[49].for_stop	:=D1049前停光电;
InPut_DB.Device_Signal[49].bak_stop	:=D1049前停光电;
InPut_DB.Device_Signal[49].for_limit:= TRUE;	
InPut_DB.Device_Signal[49].bak_limit:= TRUE;	
InPut_DB.Device_Signal[49].up_good:=D1050移栽下定位;	
InPut_DB.Device_Signal[49].Conveyor_fault	:= D1049故障;
	
//设备信号1050	
InPut_DB.Device_Signal[50].for_stop	:=D1050前停光电;
InPut_DB.Device_Signal[50].bak_stop	:=D1050后停光电;
InPut_DB.Device_Signal[50].for_limit:= TRUE;	
InPut_DB.Device_Signal[50].bak_limit:= TRUE;	
InPut_DB.Device_Signal[50].up_good:=D1050移栽上定位;
InPut_DB.Device_Signal[50].down_good:=D1050移栽下定位;
InPut_DB.Device_Signal[50].Conveyor_fault	:= D1050移栽故障;
InPut_DB.Device_Signal[50].Elevator_fault:=D1050升降故障;
	
//设备信号1051	
InPut_DB.Device_Signal[51].for_stop	:=D1051前停光电;
InPut_DB.Device_Signal[51].bak_stop	:=D1051前停光电;
InPut_DB.Device_Signal[51].for_limit:= TRUE;	
InPut_DB.Device_Signal[51].bak_limit:= TRUE;	
InPut_DB.Device_Signal[51].up_good:=TRUE;	
InPut_DB.Device_Signal[51].Conveyor_fault	:= D1051故障;
	
// //设备信号1052	
// InPut_DB.Device_Signal[52].for_stop	:=D1052前停光电;
// InPut_DB.Device_Signal[52].bak_stop	:=D1052前停光电;
// InPut_DB.Device_Signal[52].for_limit:= TRUE;	
// InPut_DB.Device_Signal[52].bak_limit:= TRUE;	
// InPut_DB.Device_Signal[52].up_good:=TRUE;	
// InPut_DB.Device_Signal[52].Conveyor_fault	:= D1052故障;
	
//设备信号1053	
InPut_DB.Device_Signal[53].for_stop	:=D1053前停光电;
InPut_DB.Device_Signal[53].bak_stop	:=D1053前停光电;
InPut_DB.Device_Signal[53].for_limit:= TRUE;	
InPut_DB.Device_Signal[53].bak_limit:= TRUE;	
InPut_DB.Device_Signal[53].up_good:=TRUE;	
InPut_DB.Device_Signal[53].Conveyor_fault	:= D1053故障;
	
//设备信号1054	
InPut_DB.Device_Signal[54].for_stop	:=D1054前停光电;
InPut_DB.Device_Signal[54].bak_stop	:=D1054前停光电;
InPut_DB.Device_Signal[54].for_limit:= TRUE;	
InPut_DB.Device_Signal[54].bak_limit:= TRUE;	
InPut_DB.Device_Signal[54].up_good:=TRUE;	
InPut_DB.Device_Signal[54].Conveyor_fault	:= D1054故障;
	
//设备信号1055	
InPut_DB.Device_Signal[55].for_stop	:=D1055前停光电;
InPut_DB.Device_Signal[55].bak_stop	:=D1055前停光电;
InPut_DB.Device_Signal[55].for_limit:= TRUE;	
InPut_DB.Device_Signal[55].bak_limit:= TRUE;	
InPut_DB.Device_Signal[55].up_good:=TRUE;	
InPut_DB.Device_Signal[55].Conveyor_fault	:= D1055故障;
	
//设备信号1056	
InPut_DB.Device_Signal[56].for_stop	:=D1056前停光电;
InPut_DB.Device_Signal[56].bak_stop	:=D1056后停光电;
InPut_DB.Device_Signal[56].for_limit:= TRUE;	
InPut_DB.Device_Signal[56].bak_limit:= TRUE;	
InPut_DB.Device_Signal[56].up_good:=D1056移栽上定位;
InPut_DB.Device_Signal[56].down_good:=D1056移栽下定位;
InPut_DB.Device_Signal[56].Conveyor_fault	:= D1056移栽故障;
InPut_DB.Device_Signal[56].Elevator_fault:=D1056升降故障;

//设备信号1057	
InPut_DB.Device_Signal[57].for_stop	:=D1057前停光电;
InPut_DB.Device_Signal[57].bak_stop	:=D1057前停光电;
InPut_DB.Device_Signal[57].for_limit:= TRUE;	
InPut_DB.Device_Signal[57].bak_limit:= TRUE;	
InPut_DB.Device_Signal[57].up_good:=TRUE;	
InPut_DB.Device_Signal[57].Conveyor_fault	:= D1057故障;
	
//设备信号1058	
InPut_DB.Device_Signal[58].for_stop	:=D1058前停光电;
InPut_DB.Device_Signal[58].bak_stop	:=D1058后停光电;
InPut_DB.Device_Signal[58].for_limit:= TRUE;	
InPut_DB.Device_Signal[58].bak_limit:= TRUE;	
InPut_DB.Device_Signal[58].up_good:=D1058移栽上定位;
InPut_DB.Device_Signal[58].down_good:=D1058移栽下定位;
InPut_DB.Device_Signal[58].Conveyor_fault	:= D1058移栽故障;
InPut_DB.Device_Signal[58].Elevator_fault:=D1058升降故障;
	
//设备信号1059	
InPut_DB.Device_Signal[59].for_stop	:=D1059前停光电;
InPut_DB.Device_Signal[59].bak_stop	:=D1059前停光电;
InPut_DB.Device_Signal[59].for_limit:= TRUE;	
InPut_DB.Device_Signal[59].bak_limit:= TRUE;	
InPut_DB.Device_Signal[59].up_good:=TRUE;	
InPut_DB.Device_Signal[59].Conveyor_fault	:= D1059故障;
	
// //设备信号1060	
// InPut_DB.Device_Signal[60].for_stop	:=D1060前停光电;
// InPut_DB.Device_Signal[60].bak_stop	:=D1060前停光电;
// InPut_DB.Device_Signal[60].for_limit:= TRUE;	
// InPut_DB.Device_Signal[60].bak_limit:= TRUE;	
// InPut_DB.Device_Signal[60].up_good:=TRUE;	
// InPut_DB.Device_Signal[60].Conveyor_fault	:= D1060故障;
	
//设备信号1061	
InPut_DB.Device_Signal[61].for_stop	:=D1061前停光电;
InPut_DB.Device_Signal[61].bak_stop	:=D1061前停光电;
InPut_DB.Device_Signal[61].for_limit:= TRUE;	
InPut_DB.Device_Signal[61].bak_limit:= TRUE;	
InPut_DB.Device_Signal[61].up_good:=TRUE;	
InPut_DB.Device_Signal[61].Conveyor_fault	:= D1061故障;
	
//设备信号1062	
InPut_DB.Device_Signal[62].for_stop	:=D1062前端定位;
InPut_DB.Device_Signal[62].bak_stop	:=D1062后端定位;
InPut_DB.Device_Signal[62].for_limit:= D1062台车前突出;	
InPut_DB.Device_Signal[62].bak_limit:= D1062台车后突出;	
InPut_DB.Device_Signal[62].up_good:=Tsj_Data.提升机1062.tsj_a.一层到位 OR Tsj_Data.提升机1062.tsj_a.二层到位;	
InPut_DB.Device_Signal[62].Conveyor_fault	:= D1062故障;
	
//设备信号1063	
InPut_DB.Device_Signal[63].for_stop	:=D1063前停光电;
InPut_DB.Device_Signal[63].bak_stop	:=D1063前停光电;
InPut_DB.Device_Signal[63].for_limit:= TRUE;	
InPut_DB.Device_Signal[63].bak_limit:= TRUE;	
InPut_DB.Device_Signal[63].up_good:=TRUE;	
InPut_DB.Device_Signal[63].Conveyor_fault	:= D1063故障;
	
// //设备信号1064	
// InPut_DB.Device_Signal[64].for_stop	:=D1064前停光电;
// InPut_DB.Device_Signal[64].bak_stop	:=D1064前停光电;
// InPut_DB.Device_Signal[64].for_limit:= TRUE;	
// InPut_DB.Device_Signal[64].bak_limit:= TRUE;	
// InPut_DB.Device_Signal[64].up_good:=TRUE;	
// InPut_DB.Device_Signal[64].Conveyor_fault	:= D1064故障;
	
//设备信号1065	
InPut_DB.Device_Signal[65].for_stop	:=D1065前停光电;
InPut_DB.Device_Signal[65].bak_stop	:=D1065前停光电;
InPut_DB.Device_Signal[65].for_limit:= TRUE;	
InPut_DB.Device_Signal[65].bak_limit:= TRUE;	
InPut_DB.Device_Signal[65].up_good:=TRUE;	
InPut_DB.Device_Signal[65].Conveyor_fault	:= D1065故障;
	
//设备信号1066	
InPut_DB.Device_Signal[66].for_stop	:=D1066前停光电;
InPut_DB.Device_Signal[66].bak_stop	:=D1066后停光电;
InPut_DB.Device_Signal[66].for_limit:= TRUE;	
InPut_DB.Device_Signal[66].bak_limit:= TRUE;	
InPut_DB.Device_Signal[66].up_good:=D1066移栽上定位;
InPut_DB.Device_Signal[66].down_good:=D1066移栽下定位;
InPut_DB.Device_Signal[66].Conveyor_fault	:= D1066移栽故障;
InPut_DB.Device_Signal[66].Elevator_fault:=D1066升降故障;
	
//设备信号1067	
InPut_DB.Device_Signal[67].for_stop	:=D1067前停光电;
InPut_DB.Device_Signal[67].bak_stop	:=D1067前停光电;
InPut_DB.Device_Signal[67].for_limit:= TRUE;	
InPut_DB.Device_Signal[67].bak_limit:= TRUE;	
InPut_DB.Device_Signal[67].up_good:=TRUE;	
InPut_DB.Device_Signal[67].Conveyor_fault	:= D1067故障;
	
//设备信号1068	
InPut_DB.Device_Signal[68].for_stop	:=D1068前停光电;
InPut_DB.Device_Signal[68].bak_stop	:=D1068后停光电;
InPut_DB.Device_Signal[68].for_limit:= TRUE;	
InPut_DB.Device_Signal[68].bak_limit:= TRUE;	
InPut_DB.Device_Signal[68].up_good:=D1068移栽上定位;
InPut_DB.Device_Signal[68].down_good:=D1068移栽下定位;
InPut_DB.Device_Signal[68].Conveyor_fault	:= D1068移栽故障;
InPut_DB.Device_Signal[68].Elevator_fault:=D1068升降故障;
	
//设备信号1069	
InPut_DB.Device_Signal[69].for_stop	:=D1069前停光电;
InPut_DB.Device_Signal[69].bak_stop	:=D1069前停光电;
InPut_DB.Device_Signal[69].for_limit:= TRUE;	
InPut_DB.Device_Signal[69].bak_limit:= TRUE;	
InPut_DB.Device_Signal[69].up_good:=TRUE;	
InPut_DB.Device_Signal[69].Conveyor_fault	:= D1069故障;
	
//设备信号1070	
// InPut_DB.Device_Signal[70].for_stop	:=D1070前停光电;
// InPut_DB.Device_Signal[70].bak_stop	:=D1070前停光电;
// InPut_DB.Device_Signal[70].for_limit:= TRUE;	
// InPut_DB.Device_Signal[70].bak_limit:= TRUE;	
// InPut_DB.Device_Signal[70].up_good:=TRUE;	
// InPut_DB.Device_Signal[70].Conveyor_fault	:= D1070故障;
	
//设备信号1071	
InPut_DB.Device_Signal[71].for_stop	:=D1071前停光电;
InPut_DB.Device_Signal[71].bak_stop	:=D1071前停光电;
InPut_DB.Device_Signal[71].for_limit:= TRUE;	
InPut_DB.Device_Signal[71].bak_limit:= TRUE;	
InPut_DB.Device_Signal[71].up_good:=TRUE;	
InPut_DB.Device_Signal[71].Conveyor_fault	:= D1071故障;
	
//设备信号1072	
InPut_DB.Device_Signal[72].for_stop	:=D1072前停光电;
InPut_DB.Device_Signal[72].bak_stop	:=D1072前停光电;
InPut_DB.Device_Signal[72].for_limit:= TRUE;	
InPut_DB.Device_Signal[72].bak_limit:= TRUE;	
InPut_DB.Device_Signal[72].up_good:=TRUE;	
InPut_DB.Device_Signal[72].Conveyor_fault	:= D1072故障;
	
//设备信号1073	
InPut_DB.Device_Signal[73].for_stop	:=D1073前停光电;
InPut_DB.Device_Signal[73].bak_stop	:=D1073前停光电;
InPut_DB.Device_Signal[73].for_limit:= TRUE;	
InPut_DB.Device_Signal[73].bak_limit:= TRUE;	
InPut_DB.Device_Signal[73].up_good:=TRUE;	
InPut_DB.Device_Signal[73].Conveyor_fault	:= D1073故障;
	
//设备信号1074	
InPut_DB.Device_Signal[74].for_stop	:=D1074前停光电;
InPut_DB.Device_Signal[74].bak_stop	:=D1074后停光电;
InPut_DB.Device_Signal[74].for_limit:= TRUE;	
InPut_DB.Device_Signal[74].bak_limit:= TRUE;	
InPut_DB.Device_Signal[74].up_good:=D1074移栽上定位;	
InPut_DB.Device_Signal[74].down_good:=D1074移栽下定位;
InPut_DB.Device_Signal[74].Conveyor_fault	:= D1074移栽故障;
InPut_DB.Device_Signal[74].Elevator_fault:=D1074升降故障;

//设备信号1075	
InPut_DB.Device_Signal[75].for_stop	:=D1075前停光电;
InPut_DB.Device_Signal[75].bak_stop	:=D1075前停光电;
InPut_DB.Device_Signal[75].for_limit:= TRUE;	
InPut_DB.Device_Signal[75].bak_limit:= TRUE;	
InPut_DB.Device_Signal[75].up_good:=TRUE;	
InPut_DB.Device_Signal[75].Conveyor_fault	:= D1075故障;
	
//设备信号1076	
InPut_DB.Device_Signal[76].for_stop	:=D1076前停光电;
InPut_DB.Device_Signal[76].bak_stop	:=D1076后停光电;
InPut_DB.Device_Signal[76].for_limit:= TRUE;	
InPut_DB.Device_Signal[76].bak_limit:= TRUE;	
InPut_DB.Device_Signal[76].up_good:=D1076移栽上定位;
InPut_DB.Device_Signal[76].down_good:=D1076移栽下定位;
InPut_DB.Device_Signal[76].Conveyor_fault	:= D1076移栽故障;
InPut_DB.Device_Signal[76].Elevator_fault:=D1076升降故障;
	
//设备信号1077	
InPut_DB.Device_Signal[77].for_stop	:=D1077前停光电;
InPut_DB.Device_Signal[77].bak_stop	:=D1077前停光电;
InPut_DB.Device_Signal[77].for_limit:= TRUE;	
InPut_DB.Device_Signal[77].bak_limit:= TRUE;	
InPut_DB.Device_Signal[77].up_good:=TRUE;	
InPut_DB.Device_Signal[77].Conveyor_fault	:= D1077故障;
	
// //设备信号1078	
// InPut_DB.Device_Signal[78].for_stop	:=D1078前停光电;
// InPut_DB.Device_Signal[78].bak_stop	:=D1078前停光电;
// InPut_DB.Device_Signal[78].for_limit:= TRUE;	
// InPut_DB.Device_Signal[78].bak_limit:= TRUE;	
// InPut_DB.Device_Signal[78].up_good:=TRUE;	
// InPut_DB.Device_Signal[78].Conveyor_fault	:= D1078故障;
	
//设备信号1079	
InPut_DB.Device_Signal[79].for_stop	:=D1079前停光电;
InPut_DB.Device_Signal[79].bak_stop	:=D1079前停光电;
InPut_DB.Device_Signal[79].for_limit:= TRUE;	
InPut_DB.Device_Signal[79].bak_limit:= TRUE;	
InPut_DB.Device_Signal[79].up_good:=TRUE;	
InPut_DB.Device_Signal[79].Conveyor_fault	:= D1079故障;
	
//设备信号1080	
InPut_DB.Device_Signal[80].for_stop	:=D1080前停光电;
InPut_DB.Device_Signal[80].bak_stop	:=D1080前停光电;
InPut_DB.Device_Signal[80].for_limit:= TRUE;	
InPut_DB.Device_Signal[80].bak_limit:= TRUE;	
InPut_DB.Device_Signal[80].up_good:=TRUE;	
InPut_DB.Device_Signal[80].Conveyor_fault	:= D1080故障;
	
//设备信号1081	
InPut_DB.Device_Signal[81].for_stop	:=D1081前停光电;
InPut_DB.Device_Signal[81].bak_stop	:=D1081后停光电;
InPut_DB.Device_Signal[81].for_limit:= TRUE;	
InPut_DB.Device_Signal[81].bak_limit:= TRUE;	
InPut_DB.Device_Signal[81].up_good:=D1081移栽上定位;
InPut_DB.Device_Signal[81].down_good:=D1081移栽下定位;
InPut_DB.Device_Signal[81].Conveyor_fault	:= D1081移栽故障;
InPut_DB.Device_Signal[81].Elevator_fault:=D1081升降故障;
	
//设备信号1082	
InPut_DB.Device_Signal[82].for_stop	:=D1082前停光电;
InPut_DB.Device_Signal[82].bak_stop	:=D1082前停光电;
InPut_DB.Device_Signal[82].for_limit:= TRUE;	
InPut_DB.Device_Signal[82].bak_limit:= TRUE;	
InPut_DB.Device_Signal[82].up_good:=TRUE;	
InPut_DB.Device_Signal[82].Conveyor_fault	:= D1082故障;
	
//设备信号1083	
InPut_DB.Device_Signal[83].for_stop	:=D1083前停光电;
InPut_DB.Device_Signal[83].bak_stop	:=D1083前停光电;
InPut_DB.Device_Signal[83].for_limit:= TRUE;	
InPut_DB.Device_Signal[83].bak_limit:= TRUE;	
InPut_DB.Device_Signal[83].up_good:=TRUE;	
InPut_DB.Device_Signal[83].Conveyor_fault	:= D1083故障;
	
//设备信号1084	
InPut_DB.Device_Signal[84].for_stop	:=D1084前停光电;
InPut_DB.Device_Signal[84].bak_stop	:=D1084后停光电;
InPut_DB.Device_Signal[84].for_limit:= TRUE;	
InPut_DB.Device_Signal[84].bak_limit:= TRUE;	
InPut_DB.Device_Signal[84].up_good:=D1084移栽上定位;
InPut_DB.Device_Signal[84].down_good:=D1084移栽下定位;
InPut_DB.Device_Signal[84].Conveyor_fault	:= D1084移栽故障;
	
//设备信号1085	
InPut_DB.Device_Signal[85].for_stop	:=D1085前停光电;
InPut_DB.Device_Signal[85].bak_stop	:=D1085前停光电;
InPut_DB.Device_Signal[85].for_limit:= TRUE;	
InPut_DB.Device_Signal[85].bak_limit:= TRUE;	
InPut_DB.Device_Signal[85].up_good:=TRUE;	
InPut_DB.Device_Signal[85].Conveyor_fault	:= D1085故障;
	
//设备信号1086	
InPut_DB.Device_Signal[86].for_stop	:=D1086前停光电;
InPut_DB.Device_Signal[86].bak_stop	:=D1086前停光电;
InPut_DB.Device_Signal[86].for_limit:= TRUE;	
InPut_DB.Device_Signal[86].bak_limit:= TRUE;	
InPut_DB.Device_Signal[86].up_good:=TRUE;	
InPut_DB.Device_Signal[86].Conveyor_fault	:= D1086故障;
	
//设备信号1087	
InPut_DB.Device_Signal[87].for_stop	:=D1087前停光电;
InPut_DB.Device_Signal[87].bak_stop	:=D1087后停光电;
InPut_DB.Device_Signal[87].for_limit:= TRUE;	
InPut_DB.Device_Signal[87].bak_limit:= TRUE;	
InPut_DB.Device_Signal[87].up_good:=D1087移栽上定位;
InPut_DB.Device_Signal[87].down_good:=D1087移栽下定位;
InPut_DB.Device_Signal[87].Conveyor_fault	:= D1087移栽故障;
InPut_DB.Device_Signal[87].Elevator_fault:=D1087升降故障;
	
//设备信号1088	
InPut_DB.Device_Signal[88].for_stop	:=D1088前停光电;
InPut_DB.Device_Signal[88].bak_stop	:=D1088后停光电;
InPut_DB.Device_Signal[88].for_limit:= TRUE;	
InPut_DB.Device_Signal[88].bak_limit:= TRUE;	
InPut_DB.Device_Signal[88].up_good:=D1088移栽上定位;
InPut_DB.Device_Signal[88].down_good:=D1088移栽下定位;
InPut_DB.Device_Signal[88].Conveyor_fault	:= D1088移栽故障;
InPut_DB.Device_Signal[88].Elevator_fault:=D1088升降故障;
	
//设备信号1089	
InPut_DB.Device_Signal[89].for_stop	:=D1089前停光电;
InPut_DB.Device_Signal[89].bak_stop	:=D1089后停光电;
InPut_DB.Device_Signal[89].for_limit:= TRUE;	
InPut_DB.Device_Signal[89].bak_limit:= TRUE;	
InPut_DB.Device_Signal[89].up_good:=D1089移栽上定位;
InPut_DB.Device_Signal[89].down_good:=D1089移栽下定位;
InPut_DB.Device_Signal[89].Conveyor_fault	:= D1089移栽故障;
InPut_DB.Device_Signal[89].Elevator_fault:=D1089升降故障;
	
//设备信号1090	
InPut_DB.Device_Signal[90].for_stop	:=D1089前停光电;
InPut_DB.Device_Signal[90].bak_stop	:=D1089后停光电;
InPut_DB.Device_Signal[90].for_limit:= TRUE;	
InPut_DB.Device_Signal[90].bak_limit:= TRUE;	
InPut_DB.Device_Signal[90].up_good:=TRUE;	
InPut_DB.Device_Signal[90].Conveyor_fault	:= D1090故障;
	
//设备信号1091	
InPut_DB.Device_Signal[91].for_stop	:=D1158前停光电;
InPut_DB.Device_Signal[91].bak_stop	:=D1158前停光电;
InPut_DB.Device_Signal[91].for_limit:= TRUE;	
InPut_DB.Device_Signal[91].bak_limit:= TRUE;	
InPut_DB.Device_Signal[91].up_good:=TRUE;	
InPut_DB.Device_Signal[91].Conveyor_fault	:= D1158故障;
	
//设备信号1092	
InPut_DB.Device_Signal[92].for_stop	:=D1157前停光电;
InPut_DB.Device_Signal[92].bak_stop	:=D1157前停光电;
InPut_DB.Device_Signal[92].for_limit:= TRUE;	
InPut_DB.Device_Signal[92].bak_limit:= TRUE;	
InPut_DB.Device_Signal[92].up_good:=TRUE;	
InPut_DB.Device_Signal[92].Conveyor_fault	:= D1092故障;
	
//设备信号1093	
InPut_DB.Device_Signal[93].for_stop	:=D1156前停光电;
InPut_DB.Device_Signal[93].bak_stop	:=D1156前停光电;
InPut_DB.Device_Signal[93].for_limit:= TRUE;	
InPut_DB.Device_Signal[93].bak_limit:= TRUE;	
InPut_DB.Device_Signal[93].up_good:=TRUE;	
InPut_DB.Device_Signal[93].Conveyor_fault	:= D1093故障;
	
//设备信号1094	
InPut_DB.Device_Signal[94].for_stop	:=D1155前停光电;
InPut_DB.Device_Signal[94].bak_stop	:=D1155前停光电;
InPut_DB.Device_Signal[94].for_limit:= TRUE;	
InPut_DB.Device_Signal[94].bak_limit:= TRUE;	
InPut_DB.Device_Signal[94].up_good:=TRUE;	
InPut_DB.Device_Signal[94].Conveyor_fault	:= D1094故障;
	
//设备信号1095	
InPut_DB.Device_Signal[95].for_stop	:=D1006前停光电;
InPut_DB.Device_Signal[95].bak_stop	:=D1006后停光电;
InPut_DB.Device_Signal[95].for_limit:= TRUE;	
InPut_DB.Device_Signal[95].bak_limit:= TRUE;	
InPut_DB.Device_Signal[95].up_good:=D1006移栽下定位;	
InPut_DB.Device_Signal[95].Conveyor_fault	:= D1005故障;

//设备信号1096	
InPut_DB.Device_Signal[96].for_stop	:=D1008前停光电;
InPut_DB.Device_Signal[96].bak_stop	:=D1008后停光电;
InPut_DB.Device_Signal[96].for_limit:= TRUE;	
InPut_DB.Device_Signal[96].bak_limit:= TRUE;	
InPut_DB.Device_Signal[96].up_good	:=D1008移栽下定位;
InPut_DB.Device_Signal[96].Conveyor_fault	:= D1007故障;
	
//设备信号1097	
InPut_DB.Device_Signal[97].for_stop	:=D1012前停光电;
InPut_DB.Device_Signal[97].bak_stop	:=D1012后停光电;
InPut_DB.Device_Signal[97].for_limit:= TRUE;	
InPut_DB.Device_Signal[97].bak_limit:= TRUE;	
InPut_DB.Device_Signal[97].up_good	:=D1012移栽下定位;
InPut_DB.Device_Signal[97].Conveyor_fault	:= D1011故障;
	
//设备信号1098	
InPut_DB.Device_Signal[98].for_stop	:=D1020前停光电;
InPut_DB.Device_Signal[98].bak_stop	:=D1020后停光电;
InPut_DB.Device_Signal[98].for_limit:= TRUE;	
InPut_DB.Device_Signal[98].bak_limit:= TRUE;	
InPut_DB.Device_Signal[98].up_good	:=D1020移栽下定位;
InPut_DB.Device_Signal[98].Conveyor_fault	:= D1019故障;
	
//设备信号1099	
InPut_DB.Device_Signal[99].for_stop	:=D1024前停光电;
InPut_DB.Device_Signal[99].bak_stop	:=D1024后停光电;
InPut_DB.Device_Signal[99].for_limit:= TRUE;	
InPut_DB.Device_Signal[99].bak_limit:= TRUE;	
InPut_DB.Device_Signal[99].up_good	:=D1024移栽下定位;
InPut_DB.Device_Signal[99].Conveyor_fault	:= D1023故障;
	
//设备信号1100	
InPut_DB.Device_Signal[100].for_stop	:=D1027前停光电;
InPut_DB.Device_Signal[100].bak_stop	:=D1027后停光电;
InPut_DB.Device_Signal[100].for_limit:= TRUE;	
InPut_DB.Device_Signal[100].bak_limit:= TRUE;	
InPut_DB.Device_Signal[100].up_good	:=D1027移栽下定位;
InPut_DB.Device_Signal[100].Conveyor_fault	:= D1026故障;
	
//设备信号1101	
InPut_DB.Device_Signal[101].for_stop	:=D1031前停光电;
InPut_DB.Device_Signal[101].bak_stop	:=D1031后停光电;
InPut_DB.Device_Signal[101].for_limit:= TRUE;	
InPut_DB.Device_Signal[101].bak_limit:= TRUE;	
InPut_DB.Device_Signal[101].up_good	:=D1031移栽下定位;
InPut_DB.Device_Signal[101].Conveyor_fault	:= D1040故障;
	
//设备信号1102	
InPut_DB.Device_Signal[102].for_stop	:=D1043前停光电;
InPut_DB.Device_Signal[102].bak_stop	:=D1043后停光电;
InPut_DB.Device_Signal[102].for_limit:= TRUE;	
InPut_DB.Device_Signal[102].bak_limit:= TRUE;	
InPut_DB.Device_Signal[102].up_good	:=D1043移栽下定位;
InPut_DB.Device_Signal[102].Conveyor_fault	:= D1042故障;
	
//设备信号1103	
InPut_DB.Device_Signal[103].for_stop	:=D1050前停光电;
InPut_DB.Device_Signal[103].bak_stop	:=D1050后停光电;
InPut_DB.Device_Signal[103].for_limit:= TRUE;	
InPut_DB.Device_Signal[103].bak_limit:= TRUE;	
InPut_DB.Device_Signal[103].up_good	:=D1050移栽下定位;
InPut_DB.Device_Signal[103].Conveyor_fault	:= D1049故障;
	
//设备信号1104	
InPut_DB.Device_Signal[104].for_stop	:=D1048前停光电;
InPut_DB.Device_Signal[104].bak_stop	:=D1048后停光电;
InPut_DB.Device_Signal[104].for_limit:= TRUE;	
InPut_DB.Device_Signal[104].bak_limit:= TRUE;	
InPut_DB.Device_Signal[104].up_good	:=D1048移栽下定位;
InPut_DB.Device_Signal[104].Conveyor_fault	:= D1047故障;
	
//设备信号1105	
InPut_DB.Device_Signal[105].for_stop	:=D1056前停光电;
InPut_DB.Device_Signal[105].bak_stop	:=D1056后停光电;
InPut_DB.Device_Signal[105].for_limit:= TRUE;	
InPut_DB.Device_Signal[105].bak_limit:= TRUE;	
InPut_DB.Device_Signal[105].up_good	:=D1056移栽下定位;
InPut_DB.Device_Signal[105].Conveyor_fault	:= D1055故障;
	
//设备信号1106	
InPut_DB.Device_Signal[106].for_stop	:=D1058前停光电;
InPut_DB.Device_Signal[106].bak_stop	:=D1058后停光电;
InPut_DB.Device_Signal[106].for_limit:= TRUE;	
InPut_DB.Device_Signal[106].bak_limit:= TRUE;	
InPut_DB.Device_Signal[106].up_good	:=D1058移栽下定位;
InPut_DB.Device_Signal[106].Conveyor_fault	:= D1057故障;
	
//设备信号1107	
InPut_DB.Device_Signal[107].for_stop	:=D1068前停光电;
InPut_DB.Device_Signal[107].bak_stop	:=D1068后停光电;
InPut_DB.Device_Signal[107].for_limit:= TRUE;	
InPut_DB.Device_Signal[107].bak_limit:= TRUE;	
InPut_DB.Device_Signal[107].up_good	:=D1068移栽下定位;
InPut_DB.Device_Signal[107].Conveyor_fault	:= D1067故障;
	
//设备信号1108	
InPut_DB.Device_Signal[108].for_stop	:=D1066前停光电;
InPut_DB.Device_Signal[108].bak_stop	:=D1066后停光电;
InPut_DB.Device_Signal[108].for_limit:= TRUE;	
InPut_DB.Device_Signal[108].bak_limit:= TRUE;	
InPut_DB.Device_Signal[108].up_good	:=D1066移栽下定位;
InPut_DB.Device_Signal[108].Conveyor_fault	:= D1065故障;
	
//设备信号1109	
InPut_DB.Device_Signal[109].for_stop	:=D1074前停光电;
InPut_DB.Device_Signal[109].bak_stop	:=D1074后停光电;
InPut_DB.Device_Signal[109].for_limit:= TRUE;	
InPut_DB.Device_Signal[109].bak_limit:= TRUE;	
InPut_DB.Device_Signal[109].up_good	:=D1074移栽下定位;
InPut_DB.Device_Signal[109].Conveyor_fault	:= D1073故障;
	
//设备信号1110	
InPut_DB.Device_Signal[110].for_stop	:=D1076前停光电;
InPut_DB.Device_Signal[110].bak_stop	:=D1076后停光电;
InPut_DB.Device_Signal[110].for_limit:= TRUE;	
InPut_DB.Device_Signal[110].bak_limit:= TRUE;	
InPut_DB.Device_Signal[110].up_good	:=D1076移栽下定位;
InPut_DB.Device_Signal[110].Conveyor_fault	:= D1075故障;
	
//设备信号1111	
InPut_DB.Device_Signal[111].for_stop	:=D1081前停光电;
InPut_DB.Device_Signal[111].bak_stop	:=D1081后停光电;
InPut_DB.Device_Signal[111].for_limit:= TRUE;	
InPut_DB.Device_Signal[111].bak_limit:= TRUE;	
InPut_DB.Device_Signal[111].up_good	:=D1081移栽下定位;
InPut_DB.Device_Signal[111].Conveyor_fault	:= D1080故障;
	
//设备信号1112	
InPut_DB.Device_Signal[112].for_stop	:=D1084前停光电;
InPut_DB.Device_Signal[112].bak_stop	:=D1084后停光电;
InPut_DB.Device_Signal[112].for_limit:= TRUE;	
InPut_DB.Device_Signal[112].bak_limit:= TRUE;	
InPut_DB.Device_Signal[112].up_good	:=D1084移栽下定位;
InPut_DB.Device_Signal[112].Conveyor_fault	:= D1083故障;
	
//设备信号1113	
InPut_DB.Device_Signal[113].for_stop	:=D1087前停光电;
InPut_DB.Device_Signal[113].bak_stop	:=D1087后停光电;
InPut_DB.Device_Signal[113].for_limit:= TRUE;	
InPut_DB.Device_Signal[113].bak_limit:= TRUE;	
InPut_DB.Device_Signal[113].up_good	:=D1087移栽下定位;
InPut_DB.Device_Signal[113].Conveyor_fault	:= D1086故障;
	
//设备信号1118	
InPut_DB.Device_Signal[118].for_stop	:=D1118前停光电;
InPut_DB.Device_Signal[118].bak_stop	:=D1118前停光电;
InPut_DB.Device_Signal[118].for_limit:= TRUE;	
InPut_DB.Device_Signal[118].bak_limit:= TRUE;	
InPut_DB.Device_Signal[118].up_good	:=TRUE;
InPut_DB.Device_Signal[118].Conveyor_fault	:= D1118故障;
(*************************************************************************************************************************)
(*************************************************************************************************************************)
//急停和复位
temp := PersistentVars.Cycle_Min;
FOR temp := PersistentVars.Cycle_Min TO PersistentVars.Cycle_Max DO
    IF NOT GVL.HMI_Sys_e_stop  THEN
        InPut_DB.Device_Signal[temp].e_stop := 1;
    ELSE
        InPut_DB.Device_Signal[temp].e_stop := 0;
    END_IF;
    
    IF
        GVL.HMI_Sys_reset
    THEN
        AlarmCV_DB.num[temp] := AlarmCV_DB.num[0];
    END_IF;
    
	IF temp < PersistentVars.Cycle_Min OR temp > PersistentVars.Cycle_Max THEN
		EXIT;
	END_IF
END_FOR;

	IF temp < PersistentVars.Cycle_Min OR temp > PersistentVars.Cycle_Max THEN
		temp  :=PersistentVars.Cycle_Min;
	END_IF

4、设备状态功能块实现

//当前设备信号显示转换
GVL.HMI_Dis_For_Stop          := InPut_DB.Device_Signal[GVL.Convert_Device_Number].for_stop;
GVL.HMI_Dis_Bak_Stop          := InPut_DB.Device_Signal[GVL.Convert_Device_Number].bak_stop;
GVL.HMI_Dis_Up_Good           := InPut_DB.Device_Signal[GVL.Convert_Device_Number].up_good;
GVL.HMI_Dis_Down_Good         := InPut_DB.Device_Signal[GVL.Convert_Device_Number].down_good;
GVL.HMI_Dis_For_limit         := InPut_DB.Device_Signal[GVL.Convert_Device_Number].for_limit;
GVL.HMI_Dis_Bak_limit         := InPut_DB.Device_Signal[GVL.Convert_Device_Number].bak_limit;
GVL.HMI_Dis_For_change_speed  := InPut_DB.Device_Signal[GVL.Convert_Device_Number].for_change;
GVL.HMI_Dis_Bak_change_speed  := InPut_DB.Device_Signal[GVL.Convert_Device_Number].bak_change;


//当前设备状态显示转换
GVL.DIS_Device_auto_state   := Device_Status_DB.Device[GVL.Convert_Device_Number].Auto_State ;
GVL.DIS_Device_manual_state := Device_Status_DB.Device[GVL.Convert_Device_Number].Manual_State ;
GVL.DIS_Device_idle_state   := Device_Status_DB.Device[GVL.Convert_Device_Number].Idle_State ;
GVL.DIS_Device_fault_state  := Device_Status_DB.Device[GVL.Convert_Device_Number].Fault_State ;
GVL.DIS_Device_no_order     := Device_Status_DB.Device[GVL.Convert_Device_Number].No_order ;
GVL.HMI_DIS_Change_speed    := HMISwitch.num[GVL.Convert_Device_Number].change_speed ;


//单机任务写入
IF GVL.Convert_Device_Number >=PersistentVars.Cycle_Min AND GVL.Convert_Device_Number <= PersistentVars.Cycle_Max THEN
    IF Device_Status_DB.Device[GVL.Convert_Device_Number].Auto_State AND GVL.HMI_Switch_Execute THEN
        PersistentVars.Carry_Task[GVL.Convert_Device_Number].Task_Type     := GVL.HMI_SET_Task_Type ;
        PersistentVars.Carry_Task[GVL.Convert_Device_Number].Target_Number := GVL.HMI_SET_Target_Number;
        PersistentVars.Carry_Task[GVL.Convert_Device_Number].Task_Number   := GVL.HMI_SET_Task_Number ;
        IF GVL.HMI_For_Bak_task_change =0  THEN
            Auto_Order_DB.Device[GVL.Convert_Device_Number].for_task := 1;
        ELSIF GVL.HMI_For_Bak_task_change =1  THEN    
            Auto_Order_DB.Device[GVL.Convert_Device_Number].bak_task := 1;
        END_IF
    END_IF;
END_IF;


//设备目标站及任务号显示
 GVL.HMI_DIS_Task_Type:= PersistentVars.Carry_Task[GVL.Convert_Device_Number].Task_Type;
 GVL.HMI_DIS_Target_Number:= PersistentVars.Carry_Task[GVL.Convert_Device_Number].Target_Number;
 GVL.HMI_DIS_Task_Number:= PersistentVars.Carry_Task[GVL.Convert_Device_Number].Task_Number;


//单机设备手自动切换
IF GVL.Convert_Device_Number >= PersistentVars.Cycle_Min AND GVL.Convert_Device_Number <= PersistentVars.Cycle_Max THEN
    IF GVL.HMI_Alone_Manual THEN
        GVL.HMI_Alone_Auto :=0;
        Device_Status_DB.Device[GVL.Convert_Device_Number].Auto_State := 0;
        Device_Status_DB.Device[GVL.Convert_Device_Number].Manual_State := 1;
    ELSIF  GVL.HMI_Alone_Auto THEN
        GVL.HMI_Alone_Manual :=0;
        Device_Status_DB.Device[GVL.Convert_Device_Number].Auto_State := 1;
        Device_Status_DB.Device[GVL.Convert_Device_Number].Manual_State := 0;
    END_IF
    
END_IF;


//手自动模式 & 故障检测汇总 & 空闲检测汇总 & 指令状态汇总
TEMP1 := PersistentVars.Cycle_Min;
FOR TEMP1 := PersistentVars.Cycle_Min TO PersistentVars.Cycle_Max DO
    (**********手自动模式**********)
    IF GVL

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

!chen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值