Administrator
3 天以前 aa33e56e37cd19b88ae8eea69c5ebc7c6da8b1d2
src/main/java/com/zy/common/Main.java
@@ -1,20 +1,20 @@
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;
@@ -56,20 +56,78 @@
    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
//            {
//                // 发生了异常
//            }
//        }
    }
@@ -268,15 +326,13 @@
    /**
     * 三菱   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());
        }
    }
@@ -285,14 +341,13 @@
    /**
     * 西门子
     */
    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();
@@ -305,20 +360,19 @@
        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];
@@ -329,9 +383,7 @@
                byte m107 = read.Content[7];
                byte m108 = read.Content[8];
                byte m109 = read.Content[9];
            }
            else
            {
            } else {
                // 发生了异常
            }
        }
@@ -340,7 +392,7 @@
    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);
@@ -349,35 +401,34 @@
        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);
            }
        };