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 中文站