c#使用Modbus TCP

c#使用Modbus TCP

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

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

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

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

using EasyModbus;

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

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

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

2.读取数据:

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

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

  • 1
  • 2
  • 3
  • 4
  • 5

3.写入数据:

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

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

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

4.断开连接:

modbusClient.Disconnect(); // 断开连接
  • 1
文章知识点与官方知识档案匹配,可进一步学习相关知识
posted @ 2024-05-30 09:06  mkmkbj  阅读(3375)  评论(0编辑  收藏  举报