|  |  | 
 |  |  |     private Map<Integer, StaProtocol> station = new ConcurrentHashMap<>(); | 
 |  |  |     private short heartBeatVal = 1; | 
 |  |  |  | 
 |  |  | //    public static final ArrayList<Integer> staNoseee1 = new ArrayList<Integer>() {{ | 
 |  |  | //        add(1001);add(1002);add(1003);add(1004);add(1005); | 
 |  |  | //        add(1006);add(1007);add(1008);add(1009);add(1010); | 
 |  |  | //        add(1011);add(1012);add(1013);add(1014);add(1015); | 
 |  |  | //        add(1016);add(1017);add(1018);add(1019);add(1020); | 
 |  |  | //        add(1021);add(1022);add(1023);add(1024);add(1025); | 
 |  |  | // | 
 |  |  | //        add(2001);add(2002);add(2003);add(2004);add(2005); | 
 |  |  | //        add(2006);add(2007);add(2008);add(2009);add(2010); | 
 |  |  | //        add(2011);add(2012);add(2013); | 
 |  |  | // | 
 |  |  | //        add(2101);add(2102);add(2103);add(2104);add(2105); | 
 |  |  | //        add(2106);add(2107);add(2108);add(2109);add(2110); | 
 |  |  | //        add(2111);add(2112);add(2113);add(2114); | 
 |  |  | // | 
 |  |  | //        add(2301);add(2302);add(2303);add(2304);add(2305); | 
 |  |  | //        add(2306); | 
 |  |  | // | 
 |  |  | //        add(2401);add(2402);add(2403); | 
 |  |  | // | 
 |  |  | //        add(3001);add(3002);add(3003);add(3004);add(3005); | 
 |  |  | //        add(3006);add(3007);add(3008);add(3009);add(3010); | 
 |  |  | //        add(3011);add(3012); | 
 |  |  | // | 
 |  |  | //        add(4001);add(4002);add(4003);add(4004);add(4005); | 
 |  |  | //        add(4006);add(4007); | 
 |  |  | // | 
 |  |  | //        add(4010);add(4011);add(4012);add(4013);add(4014); | 
 |  |  | //        add(4015);add(4016); | 
 |  |  | //    }}; | 
 |  |  |  | 
 |  |  |     public static final ArrayList<Integer> staNos1 = new ArrayList<Integer>() {{ | 
 |  |  |         add(1001);add(1002);add(1003);add(1004);add(1005); | 
 |  |  |         add(1006);add(1007);add(1008);add(1009);add(1010); | 
 |  |  |         add(1011);add(1012);add(1013);add(1014);add(1015); | 
 |  |  |         add(1016);add(1017);add(1018);add(1019);add(1020); | 
 |  |  |         add(1021);add(1022);add(1023);add(1024);add(1025); | 
 |  |  |     }}; | 
 |  |  |  | 
 |  |  |         add(2001);add(2002);add(2003);add(2004);add(2005); | 
 |  |  |         add(2006);add(2007);add(2008);add(2009);add(2010); | 
 |  |  |         add(2011);add(2012);add(2013); | 
 |  |  |     public static final ArrayList<Integer> staNos2 = new ArrayList<Integer>() {{ | 
 |  |  |         add(2001);add(2002);add(2003);add(2004);add(2005);add(2006); | 
 |  |  |         add(2101);add(2102);add(2103);add(2104);add(2105);add(2106);add(2107); | 
 |  |  |         add(2301);add(2302);add(2303);add(2304);add(2305);add(2306); | 
 |  |  |     }}; | 
 |  |  |  | 
 |  |  |         add(2101);add(2102);add(2103);add(2104);add(2105); | 
 |  |  |         add(2106);add(2107);add(2108);add(2109);add(2110); | 
 |  |  |         add(2111);add(2112);add(2113);add(2114); | 
 |  |  |  | 
 |  |  |         add(2301);add(2302);add(2303);add(2304);add(2305); | 
 |  |  |         add(2306); | 
 |  |  |  | 
 |  |  |     public static final ArrayList<Integer> staNos3 = new ArrayList<Integer>() {{ | 
 |  |  |         add(2007);add(2008);add(2009);add(2010);add(2011);add(2012);add(2013); | 
 |  |  |         add(2108);add(2109);add(2110);add(2111);add(2112);add(2113);add(2114); | 
 |  |  |         add(2401);add(2402);add(2403); | 
 |  |  |     }}; | 
 |  |  |  | 
 |  |  |     public static final ArrayList<Integer> staNos4 = new ArrayList<Integer>() {{ | 
 |  |  |         add(3001);add(3002);add(3003);add(3004);add(3005); | 
 |  |  |         add(3006);add(3007);add(3008);add(3009);add(3010); | 
 |  |  |         add(3011);add(3012); | 
 |  |  |     }}; | 
 |  |  |  | 
 |  |  |         add(4001);add(4002);add(4003);add(4004);add(4005); | 
 |  |  |         add(4006);add(4007); | 
 |  |  |     public static final ArrayList<Integer> staNos5 = new ArrayList<Integer>() {{ | 
 |  |  |         add(4001);add(4002);add(4003);add(4004);add(4005);add(4006);add(4007); | 
 |  |  |     }}; | 
 |  |  |  | 
 |  |  |         add(4010);add(4011);add(4012);add(4013);add(4014); | 
 |  |  |         add(4015);add(4016); | 
 |  |  |     public static final ArrayList<Integer> staNos6 = new ArrayList<Integer>() {{ | 
 |  |  |         add(4010);add(4011);add(4012);add(4013);add(4014);add(4015);add(4016); | 
 |  |  |     }}; | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     public static final ArrayList<Integer> writeStaNos1 = new ArrayList<Integer>() {{ | 
 |  |  |         add(1001);add(1002);add(1003);add(1004);add(1005); | 
 |  |  |         add(1006);add(1007);add(1008);add(1009);add(1010); | 
 |  |  |         add(1011);add(1012);add(1013);add(1014);add(1015); | 
 |  |  |         add(1016);add(1017);add(1018);add(1019);add(1020); | 
 |  |  |         add(1021);add(1022);add(1023);add(1024);add(1025); | 
 |  |  |     }}; | 
 |  |  |  | 
 |  |  |     public static final ArrayList<Integer> writeStaNos2 = new ArrayList<Integer>() {{ | 
 |  |  |         add(2001);add(2002);add(2003); | 
 |  |  |         add(2101);add(2102);add(2103); | 
 |  |  |         add(2301); | 
 |  |  |     }}; | 
 |  |  |  | 
 |  |  |     public static final ArrayList<Integer> writeStaNos3 = new ArrayList<Integer>() {{ | 
 |  |  |         add(2013); | 
 |  |  |         add(2114); | 
 |  |  |         add(2401);add(2402); | 
 |  |  |     }}; | 
 |  |  |  | 
 |  |  |     public static final ArrayList<Integer> writeStaNos4 = new ArrayList<Integer>() {{ | 
 |  |  |         add(3001); | 
 |  |  |         add(3007); | 
 |  |  |         add(3012); | 
 |  |  |     }}; | 
 |  |  |  | 
 |  |  |     public static final ArrayList<Integer> writeStaNos5 = new ArrayList<Integer>() {{ | 
 |  |  |         add(4001);add(4007); | 
 |  |  |     }}; | 
 |  |  |  | 
 |  |  |     public static final ArrayList<Integer> writeStaNos6 = new ArrayList<Integer>() {{ | 
 |  |  |         add(4010);add(4016); | 
 |  |  |     }}; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  | 
 |  |  |         switch (slave.getId()) { | 
 |  |  |             case 1: | 
 |  |  |                 return staNos1; | 
 |  |  |             case 2: | 
 |  |  |                 return staNos2; | 
 |  |  |             case 3: | 
 |  |  |                 return staNos3; | 
 |  |  |             case 4: | 
 |  |  |                 return staNos4; | 
 |  |  |             case 5: | 
 |  |  |                 return staNos5; | 
 |  |  |             case 6: | 
 |  |  |                 return staNos6; | 
 |  |  |             default: | 
 |  |  |                 throw new CoolException("获取站点失败!"); | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     private ArrayList<Integer> getWriteStaNo() { | 
 |  |  |         switch (slave.getId()) { | 
 |  |  |             case 1: | 
 |  |  |                 return writeStaNos1; | 
 |  |  |             case 2: | 
 |  |  |                 return writeStaNos2; | 
 |  |  |             case 3: | 
 |  |  |                 return writeStaNos3; | 
 |  |  |             case 4: | 
 |  |  |                 return writeStaNos4; | 
 |  |  |             case 5: | 
 |  |  |                 return writeStaNos5; | 
 |  |  |             case 6: | 
 |  |  |                 return writeStaNos6; | 
 |  |  |             default: | 
 |  |  |                 throw new CoolException("获取站点失败!"); | 
 |  |  |         } | 
 |  |  | 
 |  |  |         if (null == staProtocol) { | 
 |  |  |             return; | 
 |  |  |         } | 
 |  |  |         ArrayList<Integer> staNos = getStaNo(); | 
 |  |  |         ArrayList<Integer> staNos = getWriteStaNo(); | 
 |  |  |         int index = staNos.indexOf(staProtocol.getSiteId()); | 
 |  |  |         OperateResult write = siemensS7Net.Write("DB100." + index*6, staProtocol.getWorkNo().intValue());    // 工作号 | 
 |  |  |         Thread.sleep(500); | 
 |  |  | 
 |  |  |         } else { | 
 |  |  |             OutputQueue.DEVP.offer(MessageFormat.format("【{0}】 输送线命令下发 [id:{1}] >>>>> {2}", DateUtils.convert(new Date()), slave.getId(), JSON.toJSON(staProtocol))); | 
 |  |  |             log.info("输送线命令下发 [id:{}] >>>>> 命令下发: {}",  slave.getId(), JSON.toJSON(staProtocol)); | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     // 更新入出库模式 | 
 |  |  |     private void updateIoMode() throws InterruptedException { | 
 |  |  |         if (slave.getId() == 1 && this.ioModeOf1F1 != IoModeType.NONE) { | 
 |  |  |             if (!siemensS7Net.Write("DB100.120", this.ioModeOf1F1.id).IsSuccess) { | 
 |  |  |                 OutputQueue.DEVP.offer(MessageFormat.format("【{0}】写入输送线1F1入出库模式失败。输送线plc编号={1}", slave.getId())); | 
 |  |  |                 log.error("写入输送线1F1入出库模式失败。输送线plc编号={}", slave.getId()); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |         if (slave.getId() == 1 && this.ioModeOf1F2 != IoModeType.NONE) { | 
 |  |  |             if (!siemensS7Net.Write("DB100.122", this.ioModeOf1F2.id).IsSuccess) { | 
 |  |  |                 OutputQueue.DEVP.offer(MessageFormat.format("【{0}】写入输送线1F2入出库模式失败。输送线plc编号={1}", slave.getId())); | 
 |  |  |                 log.error("写入输送线1F2入出库模式失败。输送线plc编号={}", slave.getId()); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  |