using System;
using Modbus.Device;
using System.Net.Sockets;
class Program
{
static void Main(string[] args)
{
// 创建一个TCP客户端连接到Modbus服务器
using (TcpClient client = new TcpClient("192.168.1.100", 502))
{
// 创建Modbus主站
using (ModbusIpMaster master = ModbusIpMaster.CreateIpMaster(client))
{
// 读取保持寄存器(假设起始地址为40001,读取1个寄存器)
ushort startAddress = 0; // Modbus地址从0开始
ushort numberOfPoints = 1;
ushort[] registers = master.ReadHoldingRegisters(startAddress, numberOfPoints);
// 输出读取到的寄存器值
Console.WriteLine($"Register value at address {startAddress}: {registers[0]}");
}
}
}
}
TcpClient
类连接到指定IP地址和端口的Modbus服务器。ModbusIpMaster.CreateIpMaster
方法创建一个Modbus TCP主站实例。ReadHoldingRegisters
方法读取Modbus设备中的保持寄存器。这里假设起始地址为40001(在代码中表示为0,因为Modbus地址从0开始),读取1个寄存器。这个示例展示了如何使用C#通过Modbus协议与远程设备进行通信并读取数据。请确保你已经安装了 NModbus
库,可以通过NuGet包管理器安装。
上一篇:c# volatile
下一篇:c# treeview
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站