From bf3d6101a58cdec0e81f369d94b8191648813c41 Mon Sep 17 00:00:00 2001 From: wu <731351411@qq.com> Date: 星期三, 10 四月 2024 09:08:51 +0800 Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/Albania_Mes --- springboot-vue3/src/main/java/com/example/springboot/component/S7control.java | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 42 insertions(+), 0 deletions(-) diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java b/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java index 9ad8e83..69e66f5 100644 --- a/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java +++ b/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java @@ -10,6 +10,7 @@ import com.github.xingshuangs.iot.protocol.s7.enums.EPlcType; import com.github.xingshuangs.iot.protocol.s7.service.MultiAddressWrite; import com.github.xingshuangs.iot.protocol.s7.service.S7PLC; +import com.github.xingshuangs.iot.utils.FloatUtil; import com.google.common.primitives.Bytes; import org.apache.ibatis.jdbc.Null; @@ -477,4 +478,45 @@ public String readStrings(String addr) { return s7PLC.readString(addr); } + + public float readFloat32(String addr) { + return s7PLC.readFloat32(addr); + } + + public double readFloat64(String addr) { + return s7PLC.readFloat64(addr); + } + // public float[] readfloat32(List<String> addr) { + // float[] result=new float[addr.size()]; + // for (int i=0;i<addr.size();i++) { + // String address=addr.get(i); + // result[i]=readFloat32(address); + // } + // return result; + // } + + public List<Float> readFloat32(List<String> addr) { + List<Float> result=new ArrayList<>(); + for (String string : addr) { + if(string.equals("DB10.2000")||string.equals("DB10.2008")){ + result.add((float)s7PLC.readFloat64(string)); + }else if (string.equals("DB10.224")||string.equals("DB10.226")||string.equals("DB10.228")||string.equals("DB10.230")) { + List<Short> word=ReadWord(string,1); + for (Short short1 : word) { + result.add((float)short1); + } + } + else{ + result.add(s7PLC.readFloat32(string)); + } + + } + return result; + } + + public void writeFloat32(String addr, float data) { + s7PLC.writeFloat32(addr,data); + } + + } -- Gitblit v1.8.0