From ffe7655f943fc6edac2f3d2c3cf1e523f3c1480d Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期四, 13 八月 2020 08:37:52 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/DevpThread.java | 78 +++++++++++++++++++++-----------------
1 files changed, 43 insertions(+), 35 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/DevpThread.java b/src/main/java/com/zy/core/thread/DevpThread.java
index 1695914..af1d65d 100644
--- a/src/main/java/com/zy/core/thread/DevpThread.java
+++ b/src/main/java/com/zy/core/thread/DevpThread.java
@@ -47,13 +47,11 @@
switch (step) {
// 璇绘暟鎹�
case 1:
- read(); // 璇诲彇鐘舵��
+ read();
break;
+ // 鍐欐暟鎹�
case 2:
- break;
- case 3:
- break;
- case 4:
+ write((StaProtocol)task.getData());
break;
default:
break;
@@ -83,28 +81,12 @@
return result;
}
- public static void main(String[] args) {
- Slave slave = new Slave();
- slave.setIp("192.168.2.125");
- DevpThread devpThread = new DevpThread(slave);
- boolean connect = devpThread.connect();
- System.out.println(connect);
- devpThread.read();
- // 鍐�
- StaProtocol staProtocol = devpThread.getStation().get(1);
- staProtocol.setWorkNo((short) 666);
- devpThread.write(staProtocol);
- // 璇�
- devpThread.read();
- System.out.println(JSON.toJSONString(devpThread.station));
- }
-
/**
* 璇诲彇鐘舵��
*/
private void read(){
OperateResultExOne<byte[]> result = siemensS7Net.Read("DB100.0", (short) 40);
- for (int i = 1; i <= 7; i++) {
+ for (int i = 1; i <= 8; i++) {
StaProtocol staProtocol = station.get(i);
if (null == staProtocol) {
staProtocol = new StaProtocol();
@@ -116,30 +98,56 @@
staProtocol.setStaNo(siemensS7Net.getByteTransform().TransInt16(result.Content, (i-1)*2+20));
// staProtocol.setAutoing(siemensS7Net.getByteTransform().TransBool());
}
- // todo
-// OperateResultExOne<Short> shortOperateResultExOne = siemensS7Net.ReadInt16("DB100.0");
-// System.out.println(shortOperateResultExOne.Content);
+ System.out.println("===> 鐘舵��");
+ OperateResultExOne<byte[]> result1 = siemensS7Net.Read("DB100.40", (short) 10);
+ for (int i = 1; i <= 8; i++) {
+ System.out.println(siemensS7Net.getByteTransform().TransByte(result.Content, (i-1)));
+ }
}
-
-
-
+ /**
+ * 鍐欏叆
+ */
private void write(StaProtocol staProtocol){
if (null == staProtocol) {
return;
}
- OperateResult write = siemensS7Net.Write("DB100." + (staProtocol.getSiteId() - 1) * 2, staProtocol.getWorkNo());
- if (write.IsSuccess) {
- System.out.println("鍐欏叆鎴愬姛");
- } else {
- System.out.println("鍐欏叆澶辫触");
+ OperateResult write = siemensS7Net.Write("DB100." + (staProtocol.getSiteId() - 1) * 2, staProtocol.getWorkNo()); // 宸ヤ綔鍙�
+ OperateResult write1 = siemensS7Net.Write("DB100." + (staProtocol.getSiteId() - 1) * 2 + 20, staProtocol.getSiteId()); // 鐩爣绔�
+ boolean[] status = new boolean[8];
+ status[0] = staProtocol.isAutoing();
+ status[1] = staProtocol.isLoading();
+ status[2] = staProtocol.isInEnable();
+ status[3] = staProtocol.isOutEnable();
+ status[4] = staProtocol.isEmptyMk();
+ OperateResult write2 = siemensS7Net.Write("DB100." + (staProtocol.getSiteId() - 1) * 2 + 40, status);// 鐘舵��
+ if (!write.IsSuccess || !write1.IsSuccess || !write2.IsSuccess) {
+ log.error("鍐欏叆杈撻�佺嚎绔欑偣鏁版嵁澶辫触銆傝緭閫佺嚎plc缂栧彿={}锛岀珯鐐规暟鎹�={}", slave.getId(), JSON.toJSON(staProtocol));
}
-
-
}
@Override
public void close() {
}
+
+ public static void main(String[] args) {
+ Slave slave = new Slave();
+ slave.setIp("192.168.2.125");
+ DevpThread devpThread = new DevpThread(slave);
+ boolean connect = devpThread.connect();
+ System.out.println(connect);
+ devpThread.read();
+ // 鍐�
+ StaProtocol staProtocol = devpThread.getStation().get(1);
+ staProtocol.setWorkNo((short) 666);
+ staProtocol.setAutoing(true);
+ staProtocol.setEmptyMk(true);
+ devpThread.write(staProtocol);
+ System.out.println("----------------------------------------");
+ // 璇�
+ devpThread.read();
+ System.out.println(JSON.toJSONString(devpThread.station));
+ }
+
}
--
Gitblit v1.9.1