Modbus RS485 设备的串口调试

  • 准备
  • Modbus功能码
  • 二、使用步骤
    • 1.接线
    • 2.串口调试
  • 温湿度的计算

准备

硬件设备:
电脑
RS485 温湿度传感器
RS485 土壤温湿度传感器
RS485 继电器控制模块
TTL转RS485模块
TTL转USB模块
软件:
串口调试助手

Modbus功能码

Modbus 协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。它已经成为一通用工业标准。
关于协议的的具体内容比较复杂,我们是通过串口来与Modbus设备通讯,所以并不需要了解更多具体内容,只需要知道Modbus是主从机制,主机发送问询,从机回复,对于功能码需要了解,能够使用功能码通过串口实现信息下发与回收即可。
Modbus 有两种通信传输方式,一种是 ASCII 模式,一种是 RTU 模式。第一种不常用,我们这里使用的是RTU模式。一条典型的RTU数据帧如下:

起始位 设备地址 功能码 数据 CRC校验 结束符
T1-T2-T3-T4 8bit 8bit n个8bit 16bit T1-T2-T3-T4

二、使用步骤

1.接线

传感器的A接RS485模块A,传感器的B接RS485模块B,传感器电源按其要求提供(多数是5-24V直流供电,但要仔细阅读传感器说明书,以免错接损坏传感器)。RS485模块与USB模块连接:RX接RX,TX接TX,GND接GND,VCC接VCC。

2.串口调试

我调试所使用的传感器如图。

串口助手:
MODBUS部分功能码

代码 功能
01 读线圈状态
02 读离散输入状态
03 读保持寄存器状态
04 读输入寄存器状态
05 写单个线圈
06 写单个保持寄存器
15 写多个线圈
16 写多个保持寄存器


读取温度请求码:01 04 00 01 00 01 60 0A
从机返回码:01 04 02 01 04 B9 63
读取湿度请求码:01 04 00 02 00 01 90 0A
从机返回码:01 04 02 02 1A 39 9B

温湿度的计算

返回码中的第4位和第5位是返回的温湿度值,但是16进制的显示方式,需要换算才能得到我们需要的十进制表示。

计算方法是:
先将16进制书转为10进制数:(01)16=(1)10,(04)16=(4)10,(02)16=(2)10,(1A)16=(26)10
温度值 = (返回值高位256+返回值低位)/10 = (1256+4)/10 = 26.0摄氏度
湿度值 = (返回值高位256+返回值低位)/10 = (2256+26)/10 = 53.8%
如果高位大于7F,计算方法为:
先将16进制书转为10进制数,然后
数值 = (返回值高位*256+返回值低位-65535)/10

Modbus RS485 设备的串口调试相关推荐

  1. linux下使用串口调试设备,Linux串口调试详解

    测试平台 宿主机平台:Ubuntu 16.04.6 目标机:iMX6ULL 目标机内核:Linux 4.1.15 目标机添加串口设备 一般嵌入式主板的默认镜像可能只配置了调试串口,并用于 consol ...

  2. 串口如何接收数据_原创分享 | S71200通过串口服务器读取MODBUS RTU设备

    此项目使用S7-1200的TCP通讯功能读取远程MODBUS RTU仪表,利用原有的串口服务器,克服了485总线传输距离的问题. 所用设备:S7-1212C ,NP3016T(三旺16口串口服务器 4 ...

  3. modbus串口调试

    1.window7 64位操作系统的话 要使用java 64位的串口通信包:http://download.csdn.net/detail/likekobe2012/9149871 将里面的三个文件分 ...

  4. QT使用串口与RS485设备通讯

    QT使用串口与RS485设备通讯 背景 开始 小结 背景 近期才开始接触QT编程,以前都是使用MFC编写上位机软件,经常需要通过串口与RS485设备通讯.之所以开始学习QT,是因为看到网上有个人说自从 ...

  5. 高通SDM450 Android9上调试RS485接口温湿度传感器调试介绍

    高通SDM450 Android9上调试RS485接口温湿度传感器调试介绍 1.初步确认硬件电路工作正常 2.确认主控端串口可以正常工作 3.调试主控串口经过RS485连接电脑可以正常收发 4.单独调 ...

  6. 变频器怎么设置_如何利用串口调试软件与变频器通信?

     西门子博途的全套视频教程下载!  西门子S7-1500内部培训PPT下载! 每一个做工控的都必须要会利用串口调试软件来和我们的外围设备来做通讯测试.今天我们就来学习怎么用串口调试软件控制台达的这款变 ...

  7. DIY一款4路USB转TTL串口调试模块

    目录 1.电源设计 2.USB集线器设计 3.USB转TTL设计 4.模块效果 最近调测程序经常用到单片机的三个串口同时交互通信,我使用1路USB转TTL串口调试模块不断切换,不仅影响观察效果,更是劳 ...

  8. 怎么做串口调试软件?

    嗯 ~~~ 说一下我自己写的串口助手吧, 名字叫 Bittly, 样子呢长下面这个样子 Bittly 指令调试界面 1. 需求确认 一开始使用的是类似于XCOM或者SSCOM之类的串口调试助手,他们的 ...

  9. Android BLE开发(一):串口调试

    由于之前做的蓝牙检测功能有点久远,没有做好备份.重新再做相类似工程时,有些遗漏,特意在此做总结. 一.Android端 二.蓝牙硬件设备 使用蓝牙模块为TI公司CC2541,CC dubugger,两 ...

最新文章

  1. Runtime初学习
  2. My first App EncryptWheel is in WAITING FOR REVIEW status
  3. Windows中启动Redis走配置文件的bat脚本
  4. mac的ideal终端中mvn命令不生效 commang not found
  5. 作者:赵江华(1989-),女,中国科学院计算机网络信息中心研究实习员
  6. Java-排序算法-冒泡排序
  7. java将dxf展示在网页_七天串起java技术栈-第四天
  8. 为了让你的网页能在更多的服务器上正常地显示,还是加上“SET NAMES UTF8”吧...
  9. php中fread用法,php fread函数与fread函数用法
  10. 【云周刊】第200期:云栖专辑 | 阿里开发者们的第6个感悟:享受折磨
  11. [UML]UML系列——类图class的实现关系Realization
  12. 26. 简述队列和栈的异同
  13. 无法定位程序输入点于动态链接库kernel32
  14. 最大公约数,最小公倍数的求法
  15. Coloring Torus(Atcoder Grand Contest 030 C)
  16. algorithm2e笔记,记录一下常规操作
  17. 我是这样被电麻的:电容降压电路使用和注意事项
  18. 怎么理解PKW和PZD,各有什么作用
  19. 低俗广告的“擦边球”为何有道、白云山都来打了?
  20. 画画怎么配色好看?怎样才能画好色彩搭配?

热门文章

  1. Zxing 预览框不变增加扫描区域,仿微信扫到一半就可以成功
  2. 小猿圈python学习-Selenium爬虫之使用代理ip的方法
  3. muduo源码分析2——Singleton分析
  4. 除夕将至,快来定制你的春节头像叭
  5. 实验三 多层神经网络
  6. C++编程验证费马小定律
  7. OS - 浅谈操作系统的内存管理
  8. python红楼梦人物统计_基于共现使用Python来分析《红楼梦》中贾宝玉与金陵十二钗的关系...
  9. matlab 去高光,图像处理-去高光/直方图均衡
  10. JavaScript 进阶 - 第2天