C#读写西门子PLC.OPC.数据库.Socket 1、PLC数据通信读写; 2、联合OPC; 3、联合Socket; 4、联合数据库;

在工业自动化领域,数据通信和数据处理是必不可少的环节。尤其是在使用西门子PLC(Programmable Logic Controller)时,如何在C#中实现PLC数据的读写、联合OPC(Open Platform Communications)、Socket通信以及与数据库的集成,是许多开发者关注的重点。本文将通过代码示例和分析,介绍如何在C#中实现这些功能。


1. PLC数据通信读写

在开始复杂的联合操作之前,首先需要了解如何在C#中读写PLC数据。西门子PLC可以通过OPC协议与C#结合使用,OPC是一种用于工业设备数据交换的开放协议。

代码示例

using System;
using System.Collections.Generic;
using System.Text;
using System.Net.Opc;
using System.Net.Sockets;

public class PlcCommunication
{
    private OpcOle=DB Opc;
    private string ipAddress = "192.168.1.100";
    private string username = "admin";
    private string password = "password";

    public PlcCommunication()
    {
        Connect();
    }

    private void Connect()
    {
        try
        {
            OpcTypeType ocpType = OpcTypeType.GetOpcTypeType();
            OpcOle=DB Opc = new OpcOle(DBType.OpcUdp);
            Opc.Port = 5020;
            Opc.InetSocketAddress = ipAddress;
            Opc.PortAddress = ipAddress;
            Opc.PortType = OpcPortTypeType.Udp;
            Opc.PortTimeout = 1000;

            Opc.Usernames = new OpcUsernames();
            Opc.Usernames.Add(new OpcUsername(
                Name = username,
                AuthType = OpcAuthProviderTypeType.User,
                AuthValue = password
            ));

            Opc.Servers = new OpcServers();
            Opc.Servers.Add(new OpcServer(
                ServerType = OpcServerTypeType.Tcp,
                ServerName = ipAddress,
                ServerPort = 5020
            ));

            Opc.Ports = new OpcPports();
            Opc.Ports.Add(new OpcPort(
                PortType = OpcPortTypeType.Tcp,
                PortNumber = 5020,
                SourceAddress = ipAddress,
                DestinationAddress = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 1,
                PortNumber = 1,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 2,
                PortNumber = 2,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 3,
                PortNumber = 3,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 4,
                PortNumber = 4,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 5,
                PortNumber = 5,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 6,
                PortNumber = 6,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 7,
                PortNumber = 7,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 8,
                PortNumber = 8,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 9,
                PortNumber = 9,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 10,
                PortNumber = 10,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 11,
                PortNumber = 11,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 12,
                PortNumber = 12,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 13,
                PortNumber = 13,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 14,
                PortNumber = 14,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 15,
                PortNumber = 15,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 16,
                PortNumber = 16,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 17,
                PortNumber = 17,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 18,
                PortNumber = 18,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 19,
                PortNumber = 19,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 20,
                PortNumber = 20,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 21,
                PortNumber = 21,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 22,
                PortNumber = 22,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 23,
                PortNumber = 23,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 24,
                PortNumber = 24,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 25,
                PortNumber = 25,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 26,
                PortNumber = 26,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 27,
                PortNumber = 27,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 28,
                PortNumber = 28,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 29,
                PortNumber = 29,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 30,
                PortNumber = 30,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 31,
                PortNumber = 31,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 32,
                PortNumber = 32,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 33,
                PortNumber = 33,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 34,
                PortNumber = 34,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 35,
                PortNumber = 35,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 36,
                PortNumber = 36,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 37,
                PortNumber = 37,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 38,
                PortNumber = 38,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 39,
                PortNumber = 39,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 40,
                PortNumber = 40,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 41,
                PortNumber = 41,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 42,
                PortNumber = 42,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 43,
                PortNumber = 43,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 44,
                PortNumber = 44,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 45,
                PortNumber = 45,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 46,
                PortNumber = 46,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 47,
                PortNumber = 47,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 48,
                PortNumber = 48,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 49,
                PortNumber = 49,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 50,
                PortNumber = 50,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 51,
                PortNumber = 51,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 52,
                PortNumber = 52,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 53,
                PortNumber = 53,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 54,
                PortNumber = 54,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 55,
                PortNumber = 55,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 56,
                PortNumber = 56,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 57,
                PortNumber = 57,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 58,
                PortNumber = 58,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 59,
                PortNumber = 59,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 60,
                PortNumber = 60,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 61,
                PortNumber = 61,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 62,
                PortNumber = 62,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 63,
                PortNumber = 63,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 64,
                PortNumber = 64,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 65,
                PortNumber = 65,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 66,
                PortNumber = 66,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 67,
                PortNumber = 67,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 68,
                PortNumber = 68,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 69,
                PortNumber = 69,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 70,
                PortNumber = 70,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 71,
                PortNumber = 71,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 72,
                PortNumber = 72,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 73,
                PortNumber = 73,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 74,
                PortNumber = 74,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 75,
                PortNumber = 75,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 76,
                PortNumber = 76,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 77,
                PortNumber = 77,
                Address = ipAddress
            ));

            Opc.Fans = new OpcFans();
            Opc.Fans.Add(new OpcFan(
                FanNumber = 78,
                PortNumber = 78,
                Address

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐