| | |
| | | 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 static void main(String[] args) { |
| | | MelsecMcNet melsec_net = new MelsecMcNet("192.168.2.6", 6000); |
| | | OperateResult operateResult = melsec_net.ConnectServer(); |
| | | if (operateResult.IsSuccess) { |
| | | System.out.println("连接成功"); |
| | | 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!"); |
| | | } else { |
| | | System.err.println("连接失败" + operateResult.Message); |
| | | System.out.println("failed:" + connect.Message); |
| | | } |
| | | OperateResult d100 = melsec_net.Write("D100", "H000C"); |
| | | if (d100.IsSuccess) { |
| | | System.out.println("发送成功"); |
| | | 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 |
| | | // { |
| | | // // 发生了异常 |
| | | // } |
| | | // } |
| | | |
| | | |
| | | } |
| | |
| | | /** |
| | | * 三菱 Q ASCII通讯格式 |
| | | */ |
| | | private static void MelsecAsciiTest(){ |
| | | private static void MelsecAsciiTest() { |
| | | |
| | | MelsecMcAsciiNet melsec = new MelsecMcAsciiNet("192.168.1.192",6001); |
| | | OperateResultExOne<short[]> read = melsec.ReadInt16("D100",(short) 2); |
| | | if(read.IsSuccess) |
| | | { |
| | | MelsecMcAsciiNet melsec = new MelsecMcAsciiNet("192.168.1.192", 6001); |
| | | OperateResultExOne<short[]> read = melsec.ReadInt16("D100", (short) 2); |
| | | if (read.IsSuccess) { |
| | | System.out.println(Arrays.toString(read.Content)); |
| | | } |
| | | else { |
| | | } else { |
| | | System.out.println(read.ToMessageShowString()); |
| | | } |
| | | } |
| | |
| | | /** |
| | | * 西门子 |
| | | */ |
| | | private static void SiemesTest(){ |
| | | SiemensS7Net siemens_net = new SiemensS7Net(SiemensPLCS.S1200,"192.168.1.195"); |
| | | private static void SiemesTest() { |
| | | SiemensS7Net siemens_net = new SiemensS7Net(SiemensPLCS.S1200, "192.168.1.195"); |
| | | OperateResult connect = siemens_net.ConnectServer(); |
| | | if(connect.IsSuccess){ |
| | | if (connect.IsSuccess) { |
| | | System.out.println("connect success!"); |
| | | } |
| | | else { |
| | | System.out.println("failed:"+connect.Message); |
| | | } else { |
| | | System.out.println("failed:" + connect.Message); |
| | | } |
| | | siemens_net.ConnectClose(); |
| | | |
| | |
| | | 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; |
| | | 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", (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"); |
| | | siemens_net.Write("M100", "1234567890"); |
| | | |
| | | OperateResultExOne<byte[]> read = siemens_net.Read( "M100", (short) 10 ); |
| | | OperateResultExOne<byte[]> read = siemens_net.Read("M100", (short) 10); |
| | | { |
| | | if(read.IsSuccess) |
| | | { |
| | | if (read.IsSuccess) { |
| | | byte m100 = read.Content[0]; |
| | | byte m101 = read.Content[1]; |
| | | byte m102 = read.Content[2]; |
| | |
| | | byte m107 = read.Content[7]; |
| | | byte m108 = read.Content[8]; |
| | | byte m109 = read.Content[9]; |
| | | } |
| | | else |
| | | { |
| | | } else { |
| | | // 发生了异常 |
| | | } |
| | | } |
| | |
| | | |
| | | private static void PushNetTest() { |
| | | NetPushClient client = new NetPushClient("127.0.0.1", 23467, "A"); |
| | | OperateResult connect = client.CreatePush(new ActionOperateExTwo<NetPushClient,String>(){ |
| | | OperateResult connect = client.CreatePush(new ActionOperateExTwo<NetPushClient, String>() { |
| | | @Override |
| | | public void Action(NetPushClient content1, String content2) { |
| | | System.out.println(content2); |
| | |
| | | if (connect.IsSuccess) { |
| | | System.out.println("连接成功!"); |
| | | } else { |
| | | System.out.println("连接失败!"+connect.Message); |
| | | System.out.println("连接失败!" + connect.Message); |
| | | } |
| | | } |
| | | |
| | | private static void ModbusTcpTets(){ |
| | | ModbusTcpNet modbusTcpNet = new ModbusTcpNet("127.0.0.1",502,(byte) 0x01); |
| | | private static void ModbusTcpTets() { |
| | | ModbusTcpNet modbusTcpNet = new ModbusTcpNet("127.0.0.1", 502, (byte) 0x01); |
| | | // 当你需要指定格式的数据解析时,就需要设置下面的这个信息 |
| | | modbusTcpNet.setDataFormat(DataFormat.BADC); |
| | | OperateResultExOne<Double> read = modbusTcpNet.ReadDouble("s=2;x=4;200"); |
| | | if(read.IsSuccess){ |
| | | if (read.IsSuccess) { |
| | | System.out.println(read.Content); |
| | | } |
| | | else { |
| | | } else { |
| | | System.out.println(read.Message); |
| | | } |
| | | |
| | | modbusTcpNet.Write("100",new int[]{12345,-12345}); |
| | | modbusTcpNet.Write("100", new int[]{12345, -12345}); |
| | | } |
| | | |
| | | private static void NetComplexClientTest(){ |
| | | private static void NetComplexClientTest() { |
| | | System.out.println("Hello World!等待10s关闭"); |
| | | NetComplexClient client = new NetComplexClient(); |
| | | client.setIpAddress("127.0.0.1"); |
| | | client.setPort(12346); |
| | | client.setClientAlias("测试1"); |
| | | client.AcceptString= new ActionOperateExThree<NetComplexClient,NetHandle,String>(){ |
| | | client.AcceptString = new ActionOperateExThree<NetComplexClient, NetHandle, String>() { |
| | | @Override |
| | | public void Action(NetComplexClient content1, NetHandle content2, String content3) { |
| | | System.out.println("Handle:"+content2.get_CodeValue()+" Value:"+content3); |
| | | System.out.println("Handle:" + content2.get_CodeValue() + " Value:" + content3); |
| | | } |
| | | }; |
| | | |