|  |  |  | 
|---|
|  |  |  | String resultV1 = ""; | 
|---|
|  |  |  | switch (devNo){ | 
|---|
|  |  |  | case 1: | 
|---|
|  |  |  | resultV1 = "DB100.1824"; | 
|---|
|  |  |  | resultV1 = "DB500.0.0"; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case 2: | 
|---|
|  |  |  | resultV1 = "DB100.1836"; | 
|---|
|  |  |  | resultV1 = "DB500.0.1"; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | case 3: | 
|---|
|  |  |  | resultV1 = "DB100.1848"; | 
|---|
|  |  |  | resultV1 = "DB500.0.2"; | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | default: | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | OperateResult result = siemensS7Net.Write(resultV1, (short) 1); | 
|---|
|  |  |  | OperateResult result = siemensS7Net.Write(resultV1, true); | 
|---|
|  |  |  | Integer writeCount = 0; | 
|---|
|  |  |  | do { | 
|---|
|  |  |  | try{ | 
|---|
|  |  |  | if(!result.IsSuccess){ | 
|---|
|  |  |  | log.error("写入RGV数据失败,重新下发任务  写入直接失败 ===>> [id:{}],{},[写入次数:{}]", slave.getId(), JSON.toJSONString(devNo),writeCount); | 
|---|
|  |  |  | result = siemensS7Net.Write(resultV1, (short) 1); | 
|---|
|  |  |  | result = siemensS7Net.Write(resultV1, true); | 
|---|
|  |  |  | Thread.sleep(100); | 
|---|
|  |  |  | writeCount++; | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | OperateResultExOne<byte[]> resultRead1 = siemensS7Net.Read("resultV1", (short) 2); | 
|---|
|  |  |  | OperateResultExOne<byte[]> resultRead1 = siemensS7Net.Read("resultV1", (short) 1); | 
|---|
|  |  |  | if (resultRead1.IsSuccess) { | 
|---|
|  |  |  | short transInt16 = siemensS7Net.getByteTransform().TransInt16(resultRead1.Content, 0); | 
|---|
|  |  |  | if (transInt16 == (short) 1){ | 
|---|
|  |  |  | boolean[] status = siemensS7Net.getByteTransform().TransBool(resultRead1.Content, 0, 1); | 
|---|
|  |  |  | if (status[devNo-1]){ | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | log.error("写入RGV数据失败,重新下发任务  写入直接失败 ===>> [id:{}],{},[写入次数:{}]", slave.getId(), JSON.toJSONString(devNo),writeCount); | 
|---|
|  |  |  | result = siemensS7Net.Write(resultV1, (short) 1); | 
|---|
|  |  |  | result = siemensS7Net.Write(resultV1, true); | 
|---|
|  |  |  | Thread.sleep(100); | 
|---|
|  |  |  | writeCount++; | 
|---|
|  |  |  | continue; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | log.error("写入RGV数据失败,重新下发任务  写入直接失败 ===>> [id:{}],{},[写入次数:{}]", slave.getId(), JSON.toJSONString(devNo),writeCount); | 
|---|
|  |  |  | result = siemensS7Net.Write(resultV1, (short) 1); | 
|---|
|  |  |  | result = siemensS7Net.Write(resultV1, true); | 
|---|
|  |  |  | Thread.sleep(100); | 
|---|
|  |  |  | writeCount++; | 
|---|
|  |  |  | continue; | 
|---|