c#使用Modbus TCP

c#使用Modbus TCP

在C#中,使用第三方库来实现Modbus TCP通讯。其中比较常用的是EasyModbusTCP库。

以下是使用EasyModbusTCP库进行Modbus TCP通讯的示例代码:

首先需要安装EasyModbusTCP库,可以通过NuGet包管理器来安装。

1.创建一个ModbusClient对象,并设置连接参数:

csharp 复制代码
using EasyModbus;

// 创建ModbusClient对象
ModbusClient modbusClient = new ModbusClient();

// 设置连接参数
modbusClient.IPAddress = "192.168.1.100"; // 服务器IP地址
modbusClient.Port = 502; // 端口号
modbusClient.Connect(); // 建立连接

2.读取数据:

csharp 复制代码
// 读取保持寄存器的数据
int[] registers = modbusClient.ReadHoldingRegisters(0, 10); // 从地址0开始读取10个保持寄存器的数据

// 读取输入寄存器的数据
int[] inputRegisters = modbusClient.ReadInputRegisters(0, 10); // 从地址0开始读取10个输入寄存器的数据

3.写入数据:

csharp 复制代码
复制代码运行
// 写入保持寄存器的数据
modbusClient.WriteSingleRegister(0, 1234); // 将值1234写入地址为0的保持寄存器

// 写入多个保持寄存器的数据
int[] values = new int[] { 1, 2, 3, 4, 5 };
modbusClient.WriteMultipleRegisters(0, values); // 将数组values中的值写入从地址0开始的连续5个保持寄存器

4.断开连接:

csharp 复制代码
modbusClient.Disconnect(); // 断开连接
相关推荐
小二·2 小时前
Python 异步编程深度解析:Async/Await 实战
网络·python·github
Yang96112 小时前
宽温大功率输出,LDMN-GM7 助力矿区雷达性能验收工作
网络·能源
xiaoshuaishuai82 小时前
C# AvaloniaUI ProgressBar用法
开发语言·c#
Jun6262 小时前
QT(10)-TCP数据收发
开发语言·qt·tcp/ip
电子科技圈2 小时前
CXL连接全面赋能AI与车载算力提升,SmartDV CXL全栈IP加速相关芯片设计
人工智能·网络协议·tcp/ip·机器学习·自动驾驶·边缘计算
网安小白的进阶之路2 小时前
B模块 安全通信网络 第二门课IPv6与WLAN 03
网络·安全
海绵宝宝de派小星2 小时前
MCP与A2A协议深度解析:Agent时代的“TCP/IP“如何诞生
arm开发·网络协议·tcp/ip·ai
dong__csdn2 小时前
websocket实现简单的单聊、群聊demo
网络·websocket·网络协议
一只小鱼儿吖2 小时前
代理IP与内网穿透:网络世界的“隐形斗篷”与“任意门”
网络
天行健,君子而铎2 小时前
自适应、全链路与智能识别——政务数据安全泛监测系统
java·网络·政务