C#使用 ModeBusTCP读取汇川Easy521PLC
在C#中使用ModeBus TCP读取汇川Easy521 PLC的数据,你需要一个支持ModeBus协议的库,比如LibUA (开源的ModeBus库) 或者使用第三方库,如EasyModbus。
以下是使用EasyModbus库进行ModeBus TCP通信的简单示例:
首先,安装EasyModbus库:
Install-Package EasyModbus
然后,使用以下代码读取PLC的寄存器:
using EasyModbus;
using System;
using System.Net;
namespace ModbusTCPExample
{
class Program
{
static void Main(string[] args)
{
// PLC的IP地址
string plcIp = "192.168.1.10";
// PLC的端口,ModeBus TCP通常是502
int port = 502;
// 创建Modbus TCP客户端
ModbusClient modbusClient = new ModbusClient(IPAddress.Parse(plcIp), port);
try
{
// 连接PLC
modbusClient.Connect();
// 读取起始地址为0的寄存器,长度为10的数据
int[] registers = modbusClient.ReadHoldingRegisters(0, 10);
for (int i = 0; i < registers.Length; i++)
{
Console.WriteLine($"Register {i}: {registers[i]}");
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
finally
{
// 断开连接
if (modbusClient.Connected)
{
modbusClient.Disconnect();
}
}
}
}
}
确保PLC的IP地址、端口和寄存器地址是正确的,并且你有足够的权限去访问PLC的资源。上述代码中的ReadHoldingRegisters
方法用于读取保持寄存器,如果你需要读取输入寄存器或者线圈状态,可以使用ReadInputRegisters
或ReadCoils
方法。
评论已关闭