ModbusTCP是一种基于TCP/IP协议的应用层协议,用于在工业电子设备之间进行数据交换。在C#中使用ModbusTCP,你可以使用第三方库,如NModbus或Modbus.Net等。以下是使用NModbus库的一个简单示例:
Install-Package NModbus
创建一个C#控制台应用程序项目,并在项目中引用NModbus库。
编写以下代码:
using System;
using NModbus;
namespace ModbusTcpExample
{
class Program
{
static void Main(string[] args)
{
// 创建一个ModbusTCP客户端
IModbusTcpClient client = new ModbusTcpClient("127.0.0.1"); // 替换为你的ModbusTCP服务器地址
client.Connect();
// 读取寄存器
int[] registers = client.ReadHoldingRegisters(0, 10); // 从地址0开始读取10个寄存器
Console.WriteLine("Registers:");
foreach (int register in registers)
{
Console.Write(register + " ");
}
Console.WriteLine();
// 写入寄存器
client.WriteMultipleRegisters(10, new short[] { 1, 2, 3, 4, 5 }); // 将地址10到14的寄存器值分别设置为1, 2, 3, 4, 5
// 断开连接
client.Disconnect();
}
}
}
在这个示例中,我们创建了一个ModbusTCP客户端,连接到服务器,读取了地址0到9的寄存器值,并将地址10到14的寄存器值分别设置为1, 2, 3, 4, 5。最后,我们断开了与服务器的连接。
请注意,你需要根据实际情况修改服务器地址和寄存器地址。此外,你可能还需要处理异常和错误情况,以确保程序的健壮性。