From f287ab5ee6b9938e0d48cdb62c05078bdec463d8 Mon Sep 17 00:00:00 2001 From: lsh <lsh@163.com> Date: 星期二, 22 四月 2025 20:06:22 +0800 Subject: [PATCH] * --- src/main/java/com/zy/common/Main.java | 168 +++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 123 insertions(+), 45 deletions(-) diff --git a/src/main/java/com/zy/common/Main.java b/src/main/java/com/zy/common/Main.java index ab86c2f..c158631 100644 --- a/src/main/java/com/zy/common/Main.java +++ b/src/main/java/com/zy/common/Main.java @@ -1,59 +1,137 @@ package com.zy.common; -import com.zy.common.HslCommunication.Core.Net.NetHandle; -import com.zy.common.HslCommunication.Core.Transfer.DataFormat; -import com.zy.common.HslCommunication.Core.Types.ActionOperateExThree; -import com.zy.common.HslCommunication.Core.Types.ActionOperateExTwo; -import com.zy.common.HslCommunication.Core.Types.OperateResult; -import com.zy.common.HslCommunication.Core.Types.OperateResultExOne; -import com.zy.common.HslCommunication.Enthernet.ComplexNet.NetComplexClient; -import com.zy.common.HslCommunication.Enthernet.PushNet.NetPushClient; -import com.zy.common.HslCommunication.Enthernet.SimplifyNet.NetSimplifyClient; -import com.zy.common.HslCommunication.ModBus.ModbusTcpNet; -import com.zy.common.HslCommunication.Profinet.Melsec.MelsecA1ENet; -import com.zy.common.HslCommunication.Profinet.Melsec.MelsecMcAsciiNet; -import com.zy.common.HslCommunication.Profinet.Melsec.MelsecMcNet; -import com.zy.common.HslCommunication.Profinet.Siemens.SiemensPLCS; -import com.zy.common.HslCommunication.Profinet.Siemens.SiemensS7Net; +import HslCommunication.Core.Net.NetHandle; +import HslCommunication.Core.Transfer.DataFormat; +import HslCommunication.Core.Types.ActionOperateExThree; +import HslCommunication.Core.Types.ActionOperateExTwo; +import HslCommunication.Core.Types.OperateResult; +import HslCommunication.Core.Types.OperateResultExOne; +import HslCommunication.Enthernet.ComplexNet.NetComplexClient; +import HslCommunication.Enthernet.PushNet.NetPushClient; +import HslCommunication.Enthernet.SimplifyNet.NetSimplifyClient; +import HslCommunication.ModBus.ModbusTcpNet; +import HslCommunication.Profinet.Melsec.MelsecA1ENet; +import HslCommunication.Profinet.Melsec.MelsecMcAsciiNet; +import HslCommunication.Profinet.Melsec.MelsecMcNet; +import HslCommunication.Profinet.Siemens.SiemensPLCS; +import HslCommunication.Profinet.Siemens.SiemensS7Net; import java.util.Arrays; public class Main { - public static void main(String[] args) throws InterruptedException { - SiemesTest(); - try { - //Constructor[] aa = Integer.class.getDeclaredConstructors(); - //int i = (Integer) (aa[1].newInstance("1")); - //System.out.println(Utilities.bytes2HexString( Utilities.getBytes(String.format("%04x",100),"ASCII"))); - //System.out.println(i); +// public static void main(String[] args) throws InterruptedException { +// SiemesTest(); +// try { +// //Constructor[] aa = Integer.class.getDeclaredConstructors(); +// //int i = (Integer) (aa[1].newInstance("1")); +// //System.out.println(Utilities.bytes2HexString( Utilities.getBytes(String.format("%04x",100),"ASCII"))); +// //System.out.println(i); +// +// //System.out.println(Arrays.toString("123".split("\\." ))); +// //ModbusTcpTets(); +// //MelsecMcNet melsec_net = new MelsecMcNet("192.168.8.12", 6001); +// //System.out.println(melsec_net.ReadInt16("D100").Content); +// +// SiemensS7Net siemensS7Net = new SiemensS7Net(SiemensPLCS.S1200,"192.168.8.12"); +// OperateResult write = siemensS7Net.Write("M200",(short)200); +// +// if(!write.IsSuccess){ +// System.out.println("Write failed:"+write.Message); +// } +// +// OperateResultExOne<Short> read = siemensS7Net.ReadInt16("M200"); +// if(read.IsSuccess){ +// System.out.println("Value:"+read.Content.toString()); +// } +// else { +// System.out.println("Read failed:"+read.Message); +// } +// } +// catch (Exception ex){ +// System.out.println(ex.getMessage()); +// } +// Thread.sleep(1000); +// } - //System.out.println(Arrays.toString("123".split("\\." ))); - //ModbusTcpTets(); - //MelsecMcNet melsec_net = new MelsecMcNet("192.168.8.12", 6001); - //System.out.println(melsec_net.ReadInt16("D100").Content); - SiemensS7Net siemensS7Net = new SiemensS7Net(SiemensPLCS.S1200,"192.168.8.12"); - OperateResult write = siemensS7Net.Write("M200",(short)200); - - if(!write.IsSuccess){ - System.out.println("Write failed:"+write.Message); - } - - OperateResultExOne<Short> read = siemensS7Net.ReadInt16("M200"); - if(read.IsSuccess){ - System.out.println("Value:"+read.Content.toString()); - } - else { - System.out.println("Read failed:"+read.Message); - } + public static void main(String[] args) { + SiemensS7Net siemens_net = new SiemensS7Net(SiemensPLCS.S300,"192.168.6.1"); + siemens_net.setSlot((byte) 2); + siemens_net.setRack((byte) 0); + OperateResult connect = siemens_net.ConnectServer(); + if(connect.IsSuccess){ + System.out.println("connect success!"); } - catch (Exception ex){ - System.out.println(ex.getMessage()); + else { + System.out.println("failed:"+connect.Message); } - Thread.sleep(1000); + siemens_net.ConnectClose(); + + short[] array = new short[] {9999,20,31,40,50}; + OperateResult db100 = siemens_net.Write("DB8.18", array); + if (db100.IsSuccess) { + System.out.println("鍐欏叆鎴愬姛"); + } else { + System.out.println("鍐欏叆澶辫触"); + } +// OperateResultExOne<Short> shortOperateResultExOne = siemens_net.ReadInt16("DB100.2"); +// System.out.println(shortOperateResultExOne.Content); + + OperateResultExOne<byte[]> read = siemens_net.Read("DB8.18", (short) 10); + if (read.IsSuccess) { +// for (int i = 0; i<10; i=i+2) { +// System.out.println(siemens_net.getByteTransform().TransInt16(read.Content, i)); +// } + System.out.println(siemens_net.getByteTransform().TransInt16(read.Content, 0)); + System.out.println(siemens_net.getByteTransform().TransInt16(read.Content, 2)); + System.out.println(siemens_net.getByteTransform().TransInt16(read.Content, 4)); + System.out.println(siemens_net.getByteTransform().TransInt16(read.Content, 6)); + System.out.println(siemens_net.getByteTransform().TransInt16(read.Content, 8)); + } + +// // 涓婇潰鏄垵濮嬪寲 +// System.out.println(siemens_net.ReadByte("M100").Content); +// +// byte m100_byte = siemens_net.ReadByte("M100").Content; +// short m100_short = siemens_net.ReadInt16("M100").Content; +// int m100_int = siemens_net.ReadInt32("M100").Content; +// long m100_long = siemens_net.ReadInt64("M100").Content; +// float m100_float = siemens_net.ReadFloat("M100").Content; +// double m100_double = siemens_net.ReadDouble("M100").Content; +// String m100_string = siemens_net.ReadString("M100",(short) 10).Content; +// +// siemens_net.Write("M100",(byte) 123); +// siemens_net.Write("M100",(short) 123); +// siemens_net.Write("M100",(int) 123); +// siemens_net.Write("M100",(long) 123); +// siemens_net.Write("M100", 123.456f); +// siemens_net.Write("M100", 123.456d); +// siemens_net.Write("M100","1234567890"); +// +// OperateResultExOne<byte[]> read = siemens_net.Read( "M100", (short) 10 ); +// { +// if(read.IsSuccess) +// { +// byte m100 = read.Content[0]; +// byte m101 = read.Content[1]; +// byte m102 = read.Content[2]; +// byte m103 = read.Content[3]; +// byte m104 = read.Content[4]; +// byte m105 = read.Content[5]; +// byte m106 = read.Content[6]; +// byte m107 = read.Content[7]; +// byte m108 = read.Content[8]; +// byte m109 = read.Content[9]; +// } +// else +// { +// // 鍙戠敓浜嗗紓甯� +// } +// } + + } - /** * 绠�鍗曠綉缁滃鎴风 @@ -264,7 +342,7 @@ /** - * 鍥涢棬瀛� + * 瑗块棬瀛� */ private static void SiemesTest(){ SiemensS7Net siemens_net = new SiemensS7Net(SiemensPLCS.S1200,"192.168.1.195"); -- Gitblit v1.9.1