在C#中使用Modbus TCP主要是通過第三方庫來實現,比如NModbus庫。使用這個庫可以很方便地實現Modbus TCP的通訊功能。
以下是使用NModbus庫進行Modbus TCP通訊的簡單示例:
using System;
using System.Net;
using System.Net.Sockets;
using Modbus.Device;
class ModbusTcpExample
{
static void Main(string[] args)
{
// 創建一個TCP連接到Modbus服務器
TcpClient client = new TcpClient("127.0.0.1", 502);
ModbusIpMaster master = ModbusIpMaster.CreateIp(client);
// 讀取保持寄存器的值
ushort startAddress = 0;
ushort numRegisters = 1;
ushort[] registers = master.ReadHoldingRegisters(1, startAddress, numRegisters);
// 打印讀取的寄存器值
foreach (ushort reg in registers)
{
Console.WriteLine(reg);
}
// 關閉連接
client.Close();
}
}
在以上示例中,我們創建了一個TCP連接到Modbus服務器,并通過ModbusIpMaster類來讀取保持寄存器的值。通過NModbus庫的幫助,我們可以很容易地實現Modbus TCP的通訊功能。