From 518766738fcf0c8086775056fd3fe935581a94f5 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期二, 30 一月 2024 10:24:47 +0800
Subject: [PATCH] 整理s7采集代码

---
 mdc-parent/mdc-collect/src/main/java/com/qianwen/mdc/service/scanet/ScanetClient.java |  610 +++++++++++++++++++++++++------------------------------
 1 files changed, 278 insertions(+), 332 deletions(-)

diff --git a/mdc-parent/mdc-collect/src/main/java/com/qianwen/mdc/service/scanet/ScanetClient.java b/mdc-parent/mdc-collect/src/main/java/com/qianwen/mdc/service/scanet/ScanetClient.java
index 1c9007f..58d5714 100644
--- a/mdc-parent/mdc-collect/src/main/java/com/qianwen/mdc/service/scanet/ScanetClient.java
+++ b/mdc-parent/mdc-collect/src/main/java/com/qianwen/mdc/service/scanet/ScanetClient.java
@@ -1,336 +1,282 @@
-/*     */ package com.qianwen.mdc.service.scanet;
-/*     */ import com.github.s7connector.api.DaveArea;
-/*     */ import com.github.s7connector.api.S7Connector;
-/*     */ import com.github.s7connector.api.S7Serializer;
-/*     */ import com.github.s7connector.api.factory.S7ConnectorFactory;
-/*     */ import com.github.s7connector.api.factory.S7SerializerFactory;
-/*     */ import com.github.s7connector.exception.S7Exception;
-import com.qianwen.mdc.service.scanet.PlcByteValue;
+package com.qianwen.mdc.service.scanet;
+
+import com.github.s7connector.api.DaveArea;
+import com.github.s7connector.api.S7Connector;
+import com.github.s7connector.api.S7Serializer;
+import com.github.s7connector.api.factory.S7ConnectorFactory;
+import com.github.s7connector.api.factory.S7SerializerFactory;
+import com.github.s7connector.exception.S7Exception;
 import com.qianwen.mdc.utils.MdcException;
 
-/*     */ import java.io.IOException;
-/*     */ import org.slf4j.Logger;
-/*     */ import org.slf4j.LoggerFactory;
-/*     */ 
-/*     */ 
-/*     */ 
-/*     */ public class ScanetClient
-/*     */ {
-/*     */   private String ip;
-/*     */   
-/*     */   public void connectServer() {
-/*  22 */     if (null == this.connector) {
-/*     */       try {
-/*  24 */         this.connector = S7ConnectorFactory.buildTCPConnector().withHost(this.ip).build();
-/*  25 */         this.serializer = S7SerializerFactory.buildSerializer(this.connector);
-/*  26 */         if (null != this.connector) {
-/*  27 */           this.count = 0;
-/*  28 */           this.connected = true;
-/*     */         } else {
-/*  30 */           this.connected = false;
-/*  31 */           throw new MdcException();
-/*     */         } 
-/*  33 */       } catch (Exception e) {
-/*  34 */         this.connected = false;
-/*  35 */         throw new MdcException();
-/*     */       } 
-/*     */     }
-/*     */   }
-/*     */   
-/*     */   public void disconnectServer() {
-/*  41 */     if (this.serializer != null) {
-/*     */       try {
-/*  43 */         this.connector.close();
-/*  44 */         this.connector = null;
-/*  45 */         this.serializer = null;
-/*  46 */       } catch (IOException e) {
-/*  47 */         throw new MdcException();
-/*     */       } 
-/*     */     }
-/*     */     
-/*  51 */     this.count = 0;
-/*  52 */     this.connected = false;
-/*     */   }
-/*     */   
-/*     */   public void reconnectServer() {
-/*     */     try {
-/*  57 */       disconnectServer();
-/*  58 */       connectServer();
-/*  59 */     } catch (Exception exception) {}
-/*     */   }
-/*     */ 
-/*     */   
-/*     */   public void checkConnection() {
-/*  64 */     int dbNum = 21;
-/*  65 */     int byteOffset = 35;
-/*     */ 
-/*     */     
-/*     */     try {
-/*  69 */       byte[] read = this.connector.read(DaveArea.DB, dbNum, 50, byteOffset);
-/*     */       int i;
-/*  71 */       for (i = 1; i < read.length; i++) {
-/*  72 */         if (read[i] != 0) {
-/*  73 */           this.connected = true;
-/*     */           break;
-/*     */         } 
-/*     */       } 
-/*  77 */       if (i == read.length) {
-/*  78 */         this.connected = false;
-/*     */       }
-/*  80 */       if (!this.connected) {
-/*     */         
-/*  82 */         reconnectServer();
-/*  83 */         throw new MdcException();
-/*     */       } 
-/*  85 */     } catch (S7Exception e) {
-/*     */       
-/*  87 */       this.connected = false;
-/*  88 */       reconnectServer();
-/*  89 */     } catch (Exception e) {
-/*     */       
-/*  91 */       if (++this.count >= 3) {
-/*  92 */         this.connected = false;
-/*     */       }
-/*  94 */       throw new MdcException();
-/*     */     } 
-/*     */   }
-/*     */   
-/*     */   public int readOpMode() {
-/*  99 */     int dbNum = 11;
-/* 100 */     int byteOffset1 = 6;
-/* 101 */     int byteOffset2 = 7;
-/* 102 */     byte autoMask = 1;
-/* 103 */     byte mdaMask = 2;
-/* 104 */     byte jogMask = 4;
-/* 105 */     byte refMask = 4;
-/*     */ 
-/*     */ 
-/*     */ 
-/*     */     
-/* 110 */     int ret = 9000;
-/*     */     
-/*     */     try {
-/* 113 */       PlcByteValue opModeValue1 = (PlcByteValue)this.serializer.dispense(PlcByteValue.class, dbNum, byteOffset1);
-/* 114 */       boolean autoValue = ((opModeValue1.value & autoMask) != 0);
-/* 115 */       boolean mdaValue = ((opModeValue1.value & mdaMask) != 0);
-/* 116 */       boolean jogValue = ((opModeValue1.value & jogMask) != 0);
-/* 117 */       PlcByteValue opModeValue2 = (PlcByteValue)this.serializer.dispense(PlcByteValue.class, dbNum, byteOffset2);
-/* 118 */       boolean refValue = ((opModeValue2.value & refMask) != 0);
-/* 119 */       ret = autoValue ? 200 : (mdaValue ? 100 : (jogValue ? 0 : (refValue ? 300 : 9000)));
-/*     */       
-/* 121 */       this.count = 0;
-/* 122 */       this.connected = true;
-/* 123 */     } catch (S7Exception e) {
-/* 124 */       this.connected = false;
-/* 125 */       reconnectServer();
-/* 126 */     } catch (Exception e) {
-/* 127 */       if (++this.count >= 3) {
-/* 128 */         this.connected = false;
-/*     */       }
-/* 130 */       throw new MdcException();
-/*     */     } 
-/*     */     
-/* 133 */     return ret;
-/*     */   }
-/*     */   
-/*     */   public int readNCState() {
-/* 137 */     int dbNum = 21;
-/* 138 */     int byteOffset = 35;
-/* 139 */     byte ncStartMask = 1;
-/* 140 */     byte ncStopMask = 4;
-/*     */ 
-/*     */     
-/* 143 */     int ret = 9000;
-/*     */     
-/*     */     try {
-/* 146 */       PlcByteValue ncValue = (PlcByteValue)this.serializer.dispense(PlcByteValue.class, dbNum, byteOffset);
-/* 147 */       boolean ncStartValue = ((ncValue.value & ncStartMask) != 0);
-/* 148 */       boolean ncStopValue = ((ncValue.value & ncStopMask) != 0);
-/* 149 */       ret = ncStartValue ? 0 : (ncStopValue ? 100 : 8000);
-/*     */       
-/* 151 */       this.count = 0;
-/* 152 */       this.connected = true;
-/* 153 */     } catch (S7Exception e) {
-/* 154 */       this.connected = false;
-/* 155 */       reconnectServer();
-/* 156 */     } catch (Exception e) {
-/* 157 */       if (++this.count >= 3) {
-/* 158 */         this.connected = false;
-/*     */       }
-/* 160 */       throw new MdcException();
-/*     */     } 
-/*     */     
-/* 163 */     return ret;
-/*     */   }
-/*     */   
-/*     */   public int readSpState() {
-/* 167 */     int dbNum = 34;
-/* 168 */     int byteOffset = 64;
-/* 169 */     byte forwardMask = 64;
-/* 170 */     byte reverseMask = Byte.MIN_VALUE;
-/*     */ 
-/*     */     
-/* 173 */     int ret = 9000;
-/*     */     
-/*     */     try {
-/* 176 */       PlcByteValue spStateValue = (PlcByteValue)this.serializer.dispense(PlcByteValue.class, dbNum, byteOffset);
-/* 177 */       boolean forwardValue = ((spStateValue.value & forwardMask) != 0);
-/* 178 */       boolean reverseValue = ((spStateValue.value & reverseMask) != 0);
-/* 179 */       ret = (forwardValue | reverseValue) ? 0 : 8000;
-/*     */       
-/* 181 */       this.count = 0;
-/* 182 */       this.connected = true;
-/* 183 */     } catch (S7Exception e) {
-/* 184 */       this.connected = false;
-/* 185 */       reconnectServer();
-/* 186 */     } catch (Exception e) {
-/* 187 */       if (++this.count >= 3) {
-/* 188 */         this.connected = false;
-/*     */       }
-/* 190 */       throw new MdcException();
-/*     */     } 
-/*     */     
-/* 193 */     return ret;
-/*     */   }
-/*     */   
-/*     */   public int readSpRate() {
-/* 197 */     int dbNum = 34;
-/* 198 */     int byteOffset = 19;
-/* 199 */     int ret = 0;
-/*     */     
-/*     */     try {
-/* 202 */       PlcByteValue spRateValue = (PlcByteValue)this.serializer.dispense(PlcByteValue.class, dbNum, byteOffset);
-/* 203 */       ret = spRateValue.value;
-/*     */       
-/* 205 */       this.count = 0;
-/* 206 */       this.connected = true;
-/* 207 */     } catch (S7Exception e) {
-/* 208 */       this.connected = false;
-/* 209 */       reconnectServer();
-/* 210 */     } catch (Exception e) {
-/* 211 */       if (++this.count >= 3) {
-/* 212 */         this.connected = false;
-/*     */       }
-/* 214 */       throw new MdcException();
-/*     */     } 
-/*     */     
-/* 217 */     return ret;
-/*     */   }
-/*     */   
-/*     */   public int readSpSpeed() {
-/* 221 */     int dbNum = 34;
-/* 222 */     int byteOffset = 88;
-/* 223 */     int ret = 0;
-/*     */     
-/*     */     try {
-/* 226 */       PlcByteValue spRateValue = (PlcByteValue)this.serializer.dispense(PlcByteValue.class, dbNum, byteOffset);
-/* 227 */       ret = spRateValue.value;
-/*     */       
-/* 229 */       this.count = 0;
-/* 230 */       this.connected = true;
-/* 231 */     } catch (S7Exception e) {
-/* 232 */       this.connected = false;
-/* 233 */       reconnectServer();
-/* 234 */     } catch (Exception e) {
-/* 235 */       if (++this.count >= 3) {
-/* 236 */         this.connected = false;
-/*     */       }
-/* 238 */       throw new MdcException();
-/*     */     } 
-/*     */     
-/* 241 */     return ret;
-/*     */   }
-/*     */   
-/*     */   public int readFeedRate() {
-/* 245 */     int dbNum = 21;
-/* 246 */     int byteOffset = 4;
-/* 247 */     int ret = 0;
-/*     */     
-/*     */     try {
-/* 250 */       PlcByteValue feedRateValue = (PlcByteValue)this.serializer.dispense(PlcByteValue.class, dbNum, byteOffset);
-/* 251 */       ret = feedRateValue.value;
-/*     */       
-/* 253 */       this.count = 0;
-/* 254 */       this.connected = true;
-/* 255 */     } catch (S7Exception e) {
-/* 256 */       this.connected = false;
-/* 257 */       reconnectServer();
-/* 258 */     } catch (Exception e) {
-/* 259 */       if (++this.count >= 3) {
-/* 260 */         this.connected = false;
-/*     */       }
-/* 262 */       throw new MdcException();
-/*     */     } 
-/*     */     
-/* 265 */     return ret;
-/*     */   }
-/*     */   
-/*     */   public int readAlarmState() {
-/* 269 */     int dbNum = 2;
-/* 270 */     int[] userAlarmOffset = { 180, 181, 182, 183, 184, 195, 186, 187 };
-/*     */     
-/* 272 */     int ret = 0;
-/*     */     
-/*     */     try {
-/* 275 */       for (int i : userAlarmOffset) {
-/* 276 */         PlcByteValue alarmState = (PlcByteValue)this.serializer.dispense(PlcByteValue.class, dbNum, i);
-/* 277 */         if (alarmState.value != 0) {
-/* 278 */           ret = 1;
-/*     */           
-/*     */           break;
-/*     */         } 
-/*     */       } 
-/* 283 */       this.count = 0;
-/* 284 */       this.connected = true;
-/* 285 */     } catch (S7Exception e) {
-/* 286 */       this.connected = false;
-/* 287 */       reconnectServer();
-/* 288 */     } catch (Exception e) {
-/* 289 */       if (++this.count >= 3) {
-/* 290 */         this.connected = false;
-/*     */       }
-/* 292 */       throw new MdcException();
-/*     */     } 
-/*     */     
-/* 295 */     return ret;
-/*     */   }
-/*     */   
-/*     */   public String readALARMState() {
-/* 299 */     return null;
-/*     */   }
-/*     */   
-/*     */   public String readSPState() {
-/* 303 */     return null;
-/*     */   }
-/*     */   
-/*     */   public String getIp() {
-/* 307 */     return this.ip;
-/*     */   }
-/*     */   
-/*     */   public void setIp(String ip) {
-/* 311 */     this.ip = ip;
-/*     */   }
-/*     */   
-/*     */   public boolean isConnected() {
-/* 315 */     return this.connected;
-/*     */   }
-/*     */   
-/*     */   public void setConnected(boolean connected) {
-/* 319 */     this.connected = connected;
-/*     */   }
-/*     */ 
-/*     */   
-/* 323 */   private S7Connector connector = null;
-/* 324 */   private S7Serializer serializer = null;
-/*     */   
-/* 326 */   private int count = 0;
-/*     */   
-/*     */   private boolean connected = false;
-/* 329 */   private final Logger logger = LoggerFactory.getLogger(getClass());
-/*     */ }
+import java.io.IOException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
+public class ScanetClient {
+	private String ip;
+	private S7Connector connector = null;
 
-/* Location:              D:\yangys\mdm\鑰佷唬鐮乗mdcplugin\mdc-plugin-0.0.1-SNAPSHOT-鍒犻櫎lib.jar!\BOOT-INF\classes\cn\net\hx\mdc\service\scanet\ScanetClient.class
- * Java compiler version: 8 (52.0)
- * JD-Core Version:       1.1.3
- */
\ No newline at end of file
+	private S7Serializer serializer = null;
+
+	private int count = 0;
+
+	private boolean connected = false;
+
+	private final Logger logger = LoggerFactory.getLogger(getClass());
+	
+	public void connectServer() {
+		if (null == this.connector)
+			try {
+				this.connector = S7ConnectorFactory.buildTCPConnector().withHost(this.ip).build();
+				this.serializer = S7SerializerFactory.buildSerializer(this.connector);
+				if (null != this.connector) {
+					this.count = 0;
+					this.connected = true;
+				} else {
+					this.connected = false;
+					throw new MdcException();
+				}
+			} catch (Exception e) {
+				this.connected = false;
+				throw new MdcException();
+			}
+	}
+
+	public void disconnectServer() {
+		if (this.serializer != null)
+			try {
+				this.connector.close();
+				this.connector = null;
+				this.serializer = null;
+			} catch (IOException e) {
+				throw new MdcException();
+			}
+		this.count = 0;
+		this.connected = false;
+	}
+
+	public void reconnectServer() {
+		try {
+			disconnectServer();
+			connectServer();
+		} catch (Exception exception) {
+		}
+	}
+
+	public void checkConnection() {
+		int dbNum = 21;
+		int byteOffset = 35;
+		try {
+			byte[] read = this.connector.read(DaveArea.DB, dbNum, 50, byteOffset);
+			int i;
+			for (i = 1; i < read.length; i++) {
+				if (read[i] != 0) {
+					this.connected = true;
+					break;
+				}
+			}
+			if (i == read.length)
+				this.connected = false;
+			if (!this.connected) {
+				reconnectServer();
+				throw new MdcException();
+			}
+		} catch (S7Exception e) {
+			this.connected = false;
+			reconnectServer();
+		} catch (Exception e) {
+			if (++this.count >= 3)
+				this.connected = false;
+			throw new MdcException();
+		}
+	}
+
+	public int readOpMode() {
+		int dbNum = 11;
+		int byteOffset1 = 6;
+		int byteOffset2 = 7;
+		byte autoMask = 1;
+		byte mdaMask = 2;
+		byte jogMask = 4;
+		byte refMask = 4;
+		int ret = 9000;
+		try {
+			PlcByteValue opModeValue1 = (PlcByteValue) this.serializer.dispense(PlcByteValue.class, dbNum, byteOffset1);
+			boolean autoValue = ((opModeValue1.value & autoMask) != 0);
+			boolean mdaValue = ((opModeValue1.value & mdaMask) != 0);
+			boolean jogValue = ((opModeValue1.value & jogMask) != 0);
+			PlcByteValue opModeValue2 = (PlcByteValue) this.serializer.dispense(PlcByteValue.class, dbNum, byteOffset2);
+			boolean refValue = ((opModeValue2.value & refMask) != 0);
+			ret = autoValue ? 200 : (mdaValue ? 100 : (jogValue ? 0 : (refValue ? 300 : 9000)));
+			this.count = 0;
+			this.connected = true;
+		} catch (S7Exception e) {
+			this.connected = false;
+			reconnectServer();
+		} catch (Exception e) {
+			if (++this.count >= 3)
+				this.connected = false;
+			throw new MdcException();
+		}
+		return ret;
+	}
+
+	public int readNCState() {
+		int dbNum = 21;
+		int byteOffset = 35;
+		byte ncStartMask = 1;
+		byte ncStopMask = 4;
+		int ret = 9000;
+		try {
+			PlcByteValue ncValue = (PlcByteValue) this.serializer.dispense(PlcByteValue.class, dbNum, byteOffset);
+			boolean ncStartValue = ((ncValue.value & ncStartMask) != 0);
+			boolean ncStopValue = ((ncValue.value & ncStopMask) != 0);
+			ret = ncStartValue ? 0 : (ncStopValue ? 100 : 8000);
+			this.count = 0;
+			this.connected = true;
+		} catch (S7Exception e) {
+			this.connected = false;
+			reconnectServer();
+		} catch (Exception e) {
+			if (++this.count >= 3)
+				this.connected = false;
+			throw new MdcException();
+		}
+		return ret;
+	}
+
+	public int readSpState() {
+		int dbNum = 34;
+		int byteOffset = 64;
+		byte forwardMask = 64;
+		byte reverseMask = Byte.MIN_VALUE;
+		int ret = 9000;
+		try {
+			PlcByteValue spStateValue = (PlcByteValue) this.serializer.dispense(PlcByteValue.class, dbNum, byteOffset);
+			boolean forwardValue = ((spStateValue.value & forwardMask) != 0);
+			boolean reverseValue = ((spStateValue.value & reverseMask) != 0);
+			ret = (forwardValue | reverseValue) ? 0 : 8000;
+			this.count = 0;
+			this.connected = true;
+		} catch (S7Exception e) {
+			this.connected = false;
+			reconnectServer();
+		} catch (Exception e) {
+			if (++this.count >= 3)
+				this.connected = false;
+			throw new MdcException();
+		}
+		return ret;
+	}
+
+	public int readSpRate() {
+		int dbNum = 34;
+		int byteOffset = 19;
+		int ret = 0;
+		try {
+			PlcByteValue spRateValue = (PlcByteValue) this.serializer.dispense(PlcByteValue.class, dbNum, byteOffset);
+			ret = spRateValue.value;
+			this.count = 0;
+			this.connected = true;
+		} catch (S7Exception e) {
+			this.connected = false;
+			reconnectServer();
+		} catch (Exception e) {
+			if (++this.count >= 3)
+				this.connected = false;
+			throw new MdcException();
+		}
+		return ret;
+	}
+
+	public int readSpSpeed() {
+		int dbNum = 34;
+		int byteOffset = 88;
+		int ret = 0;
+		try {
+			PlcByteValue spRateValue = (PlcByteValue) this.serializer.dispense(PlcByteValue.class, dbNum, byteOffset);
+			ret = spRateValue.value;
+			this.count = 0;
+			this.connected = true;
+		} catch (S7Exception e) {
+			this.connected = false;
+			reconnectServer();
+		} catch (Exception e) {
+			if (++this.count >= 3)
+				this.connected = false;
+			throw new MdcException();
+		}
+		return ret;
+	}
+
+	public int readFeedRate() {
+		int dbNum = 21;
+		int byteOffset = 4;
+		int ret = 0;
+		try {
+			PlcByteValue feedRateValue = (PlcByteValue) this.serializer.dispense(PlcByteValue.class, dbNum, byteOffset);
+			ret = feedRateValue.value;
+			this.count = 0;
+			this.connected = true;
+		} catch (S7Exception e) {
+			this.connected = false;
+			reconnectServer();
+		} catch (Exception e) {
+			if (++this.count >= 3)
+				this.connected = false;
+			throw new MdcException();
+		}
+		return ret;
+	}
+
+	public int readAlarmState() {
+		int dbNum = 2;
+		int[] userAlarmOffset = { 180, 181, 182, 183, 184, 195, 186, 187 };
+		int ret = 0;
+		try {
+			for (int i : userAlarmOffset) {
+				PlcByteValue alarmState = (PlcByteValue) this.serializer.dispense(PlcByteValue.class, dbNum, i);
+				if (alarmState.value != 0) {
+					ret = 1;
+					break;
+				}
+			}
+			this.count = 0;
+			this.connected = true;
+		} catch (S7Exception e) {
+			this.connected = false;
+			reconnectServer();
+		} catch (Exception e) {
+			if (++this.count >= 3)
+				this.connected = false;
+			throw new MdcException();
+		}
+		return ret;
+	}
+
+	public String readALARMState() {
+		return null;
+	}
+
+	public String readSPState() {
+		return null;
+	}
+
+	public String getIp() {
+		return this.ip;
+	}
+
+	public void setIp(String ip) {
+		this.ip = ip;
+	}
+
+	public boolean isConnected() {
+		return this.connected;
+	}
+
+	public void setConnected(boolean connected) {
+		this.connected = connected;
+	}
+
+	
+}

--
Gitblit v1.9.3