NModbus4 读取串口设备数值

使用NModbus4 读取串口

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
public static void aget()
  {
      byte[] array = new byte[8];
      using (SerialPort port = new SerialPort("COM3"))
      {
          port.BaudRate = 9600;
          port.DataBits = 8;
          port.Parity = Parity.None;
          port.StopBits = StopBits.One;
          port.Open();
          array[0] = 253;
          array[1] = 3;
          array[2] = 1;
          array[3] = 0;
          array[4] = 0;
          array[5] = 2;
          array[6] = 209;
          array[7] = 203;
          port.Write(array, 0, 8);
          port.ReadTimeout = 1000;
          Thread.Sleep(800);
          if (port.BytesToRead > 0)
          {
 
              IModbusSerialMaster master = ModbusSerialMaster.CreateRtu(port);
 
              byte slaveId = 1;
              ushort startAddress = 100;
              ushort[] registers = new ushort[] { 1, 2, 3 };
 
              // write three registers
              //ushort[] shorts =  master.r(slaveId, 0, 80);
 
              while (true)
              {
                  ushort[] shorts2 = master.ReadHoldingRegisters(slaveId, 0, 5);
 
                  double sd = double.Parse(shorts2[0].ToString());
                  double wd = double.Parse(shorts2[1].ToString());
                  Console.Clear();
                  Console.ForegroundColor = ConsoleColor.Green;
                  Console.WriteLine("湿度:" + sd / 10 + "%");
 
                  Console.WriteLine("温度:" + wd / 10 + " ℃");
                  Thread.Sleep(1000);
              }
 
          }
          //port.BytesToRead
      }
  }

  

设备信息

精讯畅通的 高精度温湿度传感器RS485温湿度计 大棚防雨水工业级4-20ma

设备的数值

 

 

 

 

 

 每一秒读去一次

 

posted @   摇光Summer  阅读(4659)  评论(3编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示