百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

Modbus协议很简单,结合温湿度传感器手把手教你使用Modbus协议

toqiye 2024-11-27 21:10 5 浏览 0 评论

一、阅读温湿度传感器产品手册

1、产品参数

2、产品所用到的Modbus协议功能号

3、产品通讯协议


二、利用PC串口调试助手与温控传感器进行通信设置

设置串口调试助手通讯格式字:波特率9600,校验位NONE,数据位8,停止位1。


三、读取输入寄存器的内容(0x04)

1、PC读取温湿度传感器温度值(0x04)

1.1、主机发送——主机发送命令帧格式如下:


根据产品通讯协议,存放温度寄存器地址为:0x0001,寄存器数量为:1,根据命令帧格式,填表如下:


1.2、从机响应——从机响应数据帧格式如下:


温湿度传感器响应数据帧为:


温度值包含2个字节,值=0x00FE,转换为十进制=254,根据产品手册,温度单位为0.1℃,因此实际温度值=254×0.1℃=25.4℃。


2、PC连续读取温湿度传感器湿度值、湿度值(0x04)

2.1、主机发送——主机发送命令帧格式如下:

根据产品通讯协议,存放温度值、湿度值寄存器地址为连续的地址,分别为:0x0001、0x0002,因此起始地址=0x0001,寄存器数量=0x0002,填表如下:


2.2、从机响应——从机响应数据帧格式如下:


读取温度值=0x0112,转换为十进制=274,实际温度=274×0.1℃=27.4℃;

读取湿度值=0x0231,转换为十进制=561,实际温度=561×0.1%RH =56.1%RH。


四、读取保持寄存器内容(0x03)

根据产品通信协议,保持温湿度传感器设定了四个保持寄存器,分别为:

设备地址(0x0101)、波特率(0x0102)、温度修正值(0x0103)、湿度修正值(0x0104)

1、PC读取从机设备地址(0x03)

1.1、主机发送——主机发送命令帧格式如下:


根据产品通讯协议,存放设备地址的寄存器地址为:0x0101,寄存器数量为:1,根据命令帧格式,填表如下:


1.2、从机响应——从机响应数据帧格式如下:


温湿度传感器响应数据帧为:


设备地址值包含2个字节,值=0x0001,与我们预想的一致。


2、PC连续读取从机设备地址、波特率、温度修正值、湿度修正值(0x03)

1.1、主机发送——主机发送命令帧格式如下:

根据产品通讯协议,“设备地址、波特率、温度修正值、湿度修正值”为连续的四个地址,起始地址为:0x0101,寄存器数量为:4,根据命令帧格式,填表如下:


1.2、从机响应——从机响应数据帧格式如下:


设备地址=0x0001、波特率=0x258,十进制9600、温度修正=0、湿度修正=0。


五、修改单个保持寄存器内容(0x06)

1、PC修改从机设备地址(0x06)

例如,将从机设备地址由01改为05

1.1、主机发送——主机发送命令帧格式如下:


根据产品通讯协议,存放设备地址的寄存器地址为:0x0101,寄存器修改值为:05,根据命令帧格式,填表如下:


1.2、从机响应——从机响应数据帧格式如下(与发送相同):



以上已经完成了对从机设备地址的修改,断送电重启一次温湿度传感器,再次发送“01 04 00 01 00 01 60 0A”读取温度时,已经无法收到响应,因为,设备地址已经改为“05”,需要发送“05 04 00 01 00 01 61 8E”,即可收到响应,读取温度值为0x0277,转换为十进制=277,因此实际温度=277×0.1℃=27.7℃。


六、修改多个保持寄存器内容(0x10)

1、PC同时修改从机设备地址、波特率、温度修正值、湿度修正值

例如,要求如下:


1.1、主机发送——主机发送命令帧格式如下:


说明:第7位“字节数”=寄存器数的2倍,这里修改4个寄存器的内容,因此字节数为8,填表如下:


1.2、从机响应——从机响应数据帧格式如下(与发送相同):



相关推荐

基于Python查找图像中最常见的颜色

如果我们能够得知道一幅图像中最多的颜色是什么的话,可以帮助我们解决很多实际问题。例如在农业领域中想确定水果的成熟度,我们可以通过检查水果的颜色是否落在特定范围内,来判断它们是否已经成熟。接下来我们将使...

出大要几次/圣彼得堡悖论

程序:fromrandomimportrandomdeffn():n=1whilerandom()<0.5:n+=1returnny=[fn()...

使用OpenCV测量图像中物体之间的距离

原文链接:https://www.pyimagesearch.com/2016/04/04/measuring-distance-between-objects-in-an-image-with-op...

让颜色更加饱满和有冲击力:图像颜色校正

大家拍照或图片时,获取会遇到图像颜色与实际颜色存在色差的现象。我们看一个标准色卡的图片:第一张图片就是有色差的图片,这种现象一般是相机或光线的原因造成的,我们可以通过标准色卡进行校正。第一张图片是有色...

Python 数据分析 : 实例

1、构建矩阵生成4x4形式的矩阵,矩阵中的数据是1~10之间的随机数random_list=np.random.random(16)random_list=np.round(...

用这些免费开源的图标库,为你的项目画龙点睛

精致好看的图标能够为你的项目增色不少,今天我就整理了一期图标库精选系列,希望你可以从中找到自己喜欢的图标库。下面就跟我来一场视觉的盛宴,我会一一介绍GitHub上品牌、流行、极小,各具特色的免费精...

ICON设计规范之图标尺寸

编辑导语:图标设计是UI设计中不可缺少的元素,它看似简单,但其实内含门道。本篇文章里,作者就对icon设计的相关知识和icon绘制方法做出经验介绍。如果你对icon设计也想要有所了解的话,那就点进来看...

PHP开发必备VSCode插件(大全)

通用chinese(simplified...):简体中文语言包liveserverhtml:实时预览prettier-codeformatter:最流行的代码格式化插件...

增强用户体验:前端开发中HTML5和CSS3表格属性的应用与优化研究

摘要:本文探讨了在前端开发中HTML5和CSS3表格属性的应用与优化。首先介绍了HTML5中常用的表格元素和CSS3中丰富的表格样式属性,旨在帮助开发人员定制表格的外观和样式。其次,研究了表格结构的优...

产品经理小技术:图片素材随手找,原型设计快又好

数十万互联网从业者的共同关注!作者:牛冰峰博客:http://uxfeng.com/画图——这项古老而精细的做法,是一代代产品狗们得以传承的立足之本。草图、线框图、思维导图、PPT插图、数据汇报图表、...

MAUI Blazor 项目实战 - 从0到1轻松构建多平台应用UI

前言最近在项目中尝鲜了MAUI,总体感受下来还是挺不错的,优缺点并存,但是瑕不掩瑜,目前随着.Net版本的迭代升级对它的支持也越来越友好,相信未来可期!感兴趣的朋友欢迎关注。文章中如有不妥的地方,也请...

webstorm常用的插件

1、AtomMaterialIcons推荐原因:这款插件不仅...

「智能家居」自动化平台nodered第三方节点dashboard的使用

自带节点库讲完了,开始说说第三方节点库dashboard,该库提供另一个可配置的UI页面,可以配置一些表单元素,以及图表。先来看一下别人使用dashboard制作的面板吧,是不是很漂亮。接下来我们一...

「炫丽」从0开始做一个WPF+Blazor对话小程序

大家好,我是沙漠尽头的狼。...

MAUI使用Masa blazor组件库

上一篇(点击阅读)我们实现了UI在Web端(BlazorServer/Wasm)和客户端(Windows/macOS/Android/iOS)共享,这篇我加上MasaBlazor组件库的引用,并...

取消回复欢迎 发表评论: