{"text_format":"3","workbook":"xls","n_sheets":5,"sheets":["成品、原料堆垛机通讯协议","车间AGV提升机通讯协议","二楼纸片上料通讯协议","一楼冲切下料通讯协议","缠膜机"],"not_rendered":{"images":3},"read":"whole","date_system":"1900","formulas":"cached_only"}

{"sheet":"成品、原料堆垛机通讯协议","index":0,"n_rows":35,"n_cols":7,"rows_kept":35,"merged":[[0,0,1,5],[2,0,17,0],[19,0,34,0]],"flags":["formulas_cached_only"]}
["堆垛机通讯协议（DB1000）"]
[]
["WCS下发指令","序号","名称","数据类型","偏移量","含有"]
[null,1,"HeartBeat","Int",0,"心跳"]
[null,2,"TaskID","DInt",2,"任务号"]
[null,3,"Start_Row","Int",6,"起始排"]
[null,4,"Start_Bay","Int",8,"起始列"]
[null,5,"Start_Level","Int",10,"起始层"]
[null,6,"Stop_Row","Int",12,"终止排"]
[null,7,"Stop_Bay","Int",14,"终止列"]
[null,8,"Stop_Level","Int",16,"终止层"]
[null,9,"CMD_TaskType","Int",18,"作业命令（1.移动取货任务、2.移动放货任务、3.取货任务、4.放货任务、5.取放任务","正常取放5"]
[null,10,"Write_Command","Bool",20,"可写命令","上方任务指令WCS写入完后，写入Write_Command确认任务堆垛机执行"]
[null,11,"Write_Finish","Bool",20.1,"确认完成","堆垛机反馈完成，WCS写入任务完成确认"]
[null,12,"Backup[1]","Int",22,"1：单侧双叉 2：全叉","原料库存在单个货架存放两卷小纸卷的情况"]
[null,13,"Backup[2]","Int",24]
[null,14,"Backup[3]","Int",26]
[null,15,"Backup[4]","Int",28]
[]
["PLC上报指令",null,"HeartBeat","Int",30,"心跳"]
[null,null,"System_Status","Int",32,"0不在线，1在线"]
[null,null,"SMC_Status","Int",34,"1半自动，2单步，3自动，4手动，5脱机"]
[null,null,"RUN_Status","Int",36,"1无货待命，2，取货完成，3移动任务，4取货中，5.放货中，9完成待命","堆垛机取放任务完成，WCS判断RUN_Status状态是否为指令9，WCS写入Write_Finish确认完成信号，恢复状态指令1"]
[null,null,"Rec_Status","Int",38,"1 PC可写，2写入成功， 3写入非法"]
[null,null,"EventType","Int",40,"2 正常完成任务, 3 人为强制完成"]
[null,null,"TaskID","DInt",42,"任务号"]
[null,null,"Accu_Row","Int",46,"当前排"]
[null,null,"Accu_Bay","Int",48,"当前列"]
[null,null,"Accu_Level","Int",50,"当前层"]
[null,null,"Accu_Fork","Int",52,"当前叉"]
[null,null,"Err_Status","Int",54,"故障代码"]
[null,null,"Backup[1]","Int",56]
[null,null,"Backup[2]","Int",58]
[null,null,"Backup[3]","Int",60]
[null,null,"Backup[4]","Int",62]

{"sheet":"车间AGV提升机通讯协议","index":1,"n_rows":20,"n_cols":6,"rows_kept":20,"merged":[[0,0,1,5],[2,0,7,0],[8,0,8,5],[9,0,17,0],[19,0,28,5]],"flags":["formulas_cached_only"]}
["车间AGV提升机通讯协议（DB1）"]
[]
["WCS下发指令","序号","名称","数据类型","偏移量","备注"]
[null,1,"TaskID","DInt",2000,"任务号（任务号与新任务不一致时，判定为新任务）"]
[null,2,"ToLevel","Int",2004,"目的层"]
[null,3,"Type","Int",2006,"1接车，2送车"]
[null,4,"Door","Int",2008,"当前层开关门 1开门 2关门;"]
[null,5,"Backup","Int",2010,"备用  清错、初始化"]
[]
["PLC上报指令",6,"SystemStatus","Int",2012,"系统状态 1半自动，2手动 ，3自动"]
[null,7,"RunStatus","Int",2014,"运行状态 1无货待命，2移动中，3有货待命"]
[null,8,"RecStatus","Int",2016,"写入状态 1 PC可写，2写入成功， 3写入非法"]
[null,9,"TaskID","DInt",2018,"任务号"]
[null,10,"ToLevel","Int",2022,"目的层"]
[null,11,"AccuLevel","Int",2024,"当前层"]
[null,12,"DoorStatus","Int",2026,"当前层门状态  1开门到位 2关门到位;"]
[null,13,"LoadStatus","Int",2028,"1有车 2无车"]
[null,14,"ErrStatus","Int",2032,"故障代码"]
[]
["AGV进入提升机逻辑(一楼->二楼为例)：\n1.AGV到达提升机前请求点\n2.WCS发送一楼指令(任务号、目的层1、开门1)\n3.提升机1楼开门到位后放行AGV进入提升机\n4.获取提升机状态有车时，WCS发送1楼关门指令(目的层1、关门2)\n5.提升机1楼关门到位后，WCS发送二楼指令(目的层2、开门1)\n6.提升机2楼开门到位后，AGV走出提升机\n7.获取提升机状态无车时，WCS发送2楼关门指令(目的层2、关门2)"]

{"sheet":"二楼纸片上料通讯协议","index":2,"n_rows":9,"n_cols":13,"rows_kept":9,"merged":[[0,1,0,5],[0,7,0,12]],"flags":["formulas_cached_only"]}
["1#-11#桁架","PLC上报WCS指令",{"$nulls":5},"WCS下发PLC"]
["上报","变量名称(PLC_PC)",null,"地址[DB100]","数据类型","备注",null,"下发","变量名称(PC_PLC.)",null,"地址[DB200]","数据类型","备注"]
[null,"心跳",null,0,"bool",{"$nulls":3},"心跳",null,0,"bool"]
[null,"桁架故障总报警",null,0.1,"bool",{"$nulls":3},"AGV开始往1#位放料",null,0.1,"bool"]
[null,"1#位料架无料信号",null,0.2,"bool",{"$nulls":3},"AGV开始往2#位料架放料",null,0.2,"bool"]
[null,"2#位料架无料信号",null,0.3,"bool",{"$nulls":3},"1#位放料完成",null,0.3,"bool"]
[null,"自动模式",null,0.4,"bool",{"$nulls":3},"2#位放料完成",null,0.4,"bool"]
[null,"备用",null,null,"Int",{"$nulls":3},"备用",null,null,"Int"]
[null,"备用",null,null,"Int",{"$nulls":3},"备用",null,null,"Int"]

{"sheet":"一楼冲切下料通讯协议","index":3,"n_rows":9,"n_cols":13,"rows_kept":9,"merged":[[0,1,0,5],[0,7,0,12]],"flags":["formulas_cached_only"]}
["1#-4#桁架","PLC上报WCS指令",{"$nulls":5},"WCS下发PLC"]
["上报","变量名称(PLC_PC)",null,"地址[DB100]","数据类型","备注",null,"下发","变量名称(PC_PLC.)",null,"地址[DB200]","数据类型","备注"]
[null,"心跳",null,0,"bool",{"$nulls":3},"心跳",null,0,"bool"]
[null,"桁架故障总报警",null,0.1,"bool",{"$nulls":3},"AGV开始放放1#空料架",null,0.1,"bool"]
[null,"1#料架放满信号",null,0.2,"bool",{"$nulls":3},"AGV开始放放2#空料架",null,0.2,"bool"]
[null,"2#料架放满信号",null,0.3,"bool",{"$nulls":3},"AGV放1#空料架完成",null,0.3,"bool"]
[null,"自动模式",null,0.4,"bool",{"$nulls":3},"AGV放2#空料架完成",null,0.4,"bool"]
[null,"备用",null,null,"Int",{"$nulls":3},"备用",null,null,"Int"]
[null,"备用",null,null,"Int",{"$nulls":3},"备用",null,null,"Int"]

{"sheet":"缠膜机","index":4,"n_rows":0,"n_cols":0,"rows_kept":0,"flags":["formulas_cached_only"]}