当前位置: 首页 > wzjs >正文

黄页网站推广app免费下载考研培训机构排名

黄页网站推广app免费下载,考研培训机构排名,专门做教育的视频网站,苏州做网站专业的公司Modbus称重传感器调试记录 最近需要调试一个称重模块其接口是RS485接口,采用的是Modbus协议,今天就来记录一下调试的过程。 模块介绍 LJW-M01 数字模块是将电阻应变式称重传感器输出的模拟信号转换成数字信号的一种 AD 装换模块。内部集成了标定、滤波…

Modbus称重传感器调试记录

最近需要调试一个称重模块其接口是RS485接口,采用的是Modbus协议,今天就来记录一下调试的过程。

模块介绍

LJW-M01 数字模块是将电阻应变式称重传感器输出的模拟信号转换成数字信号的一种 AD 装换模块。内部集成了标定、滤波、置零、去皮等称重仪表的功能,可以直接连接电脑、PLC、组态屏等设备。它有两种数字通讯接口:RS232(LJW-M01A)和 RS485(LJWM01B)。LJW-M01 具有“高精度”、“小化”、“集成化”、“规模化”、“智化”、“低成本”、“高可靠性”、“强适应性”等特点,适用于工业控制、快递物流、仓储管理、新零售、垃圾回收等应用领域。以上内容来自传感器厂家的说明。

技术参数
在这里插入图片描述

我手上的型号是LJW-M01B也就是RS485接口,可以看到该模块在485通信模式下理论传输距离可以达到1000m,没有实际测试,这个距离还是很远的。

配套上位机

在这里插入图片描述

模块提供了丰富的标定调试功能、各种通讯模式和参数供用户使用。这些功能都可以通过 MODBUS 通讯来实现,但是编程较为复杂。为了方便使用,我们提供了《LJW-M01 用户配置工具》软件,来标定和配置这些参数。这个上位机是厂家提供的集成了常见的控制指令以及参数配置功能,对开发调试人员来说非常有帮助。当然要想利用好这个软件一定要先了解Modbus协议,也要对相应的寄存器比较熟悉。

软件界面

在这里插入图片描述

串口配置区

串口配置区用于配置电脑和数字模块使用的通讯参数。本软件使用的是 MODBUS-RTU 协议,需要配置的通讯参数有:“端口号”、“波特率”、“校验”和“通讯地址”。其中“端口号”需要根据实际连接电脑哪个串口来配置,其他参数则需要根据模块内部的参数来配置,要和模块设置的一致。上面截图可以看到我的USB转485工具占用的是COM5接口,波特率采用的就是默认的波特率38400bps,校验采用偶校验,通信地址这里是1可以连接通信,这应该是没有被修改过的地址,当然也可以在上位机进行修改设置,因为Modbus协议可以一个主机对多个从机进行通信,这个地址也就是从机的地址,由于我也仅仅连接1个设备用来获取它的重量,所以这里就采用默认值不对其进行任何修改。

如果不知道模块的通讯参数,则需要使用“自适应”功能。操作方是:勾选“自适应”选项后打开串口,然后再给模块上电。模块就会使用默认通讯参数(38400 波特率,偶校验,通讯地址为 1)和软件通讯。此时就可以在系统参数页面查看和配置模块的通讯参数。这个自适应功能还是很不错的,因为有很多时候我们对一个485传感器进行了设置我们并没有记住它的参数情况下我们就无法在跟其通信了。

标定参数

在这里插入图片描述

传感器在生产时,由传感器生产厂设置了默认的标定参数,用户可以修改这些参数来满足应用的需求。如果需要改回默认参数,点击单个参数中间的“《”即可恢复这个参数的默认值,点击“默认”按钮可以恢复全部参数。恢复参数后,需点击“保存参数”按钮保存。这里我仅仅是查看一下标定参数在没有搞清楚其参数是什么含义之前选择默认参数一般是比较稳妥的方式。这里也可以大概看出一点信息,比如分度值是1,小数点位数是2位,满量程是300g,重力加速度的值是9.8采用的滤波强度是2。

满量程含义以及作用

决定了毛重的最大值,当重量大于满量程 + 9×分度值时状态字中的超载标志就置为 1,此时用户系统应做出相应的报警提示,避免压坏秤体。

重力加速度含义以及作用

重力加速度为用户当地的重力加速度,此数值在使用重力加速度修正功能时才被存储,平时不能修改,也不参与重量数值的计算。

滤波模式含义以及作用

现在固定为滑动滤波。

将来会陆续增加动物秤、动态模式等别的滤波模式

滤波强度

滤波强度越大重量数值越稳定,但是加载反应越慢

开机置零范围含义

单位为 FULL%,例如满量程为 500kg,开机置零范围为 20,那么开机置零的范围值就是±100kg,模块重新上电后,如果毛重小于±100kg,模块就把该重量作为零点,输出毛重为 0。

手动置零范围含义

单位为 FULL%,它影响着置零命令能否成功。如果当前毛重(相对于开机零点)小于手动置零范围值时,置零命令有效,模块把当前毛重作为零点,输出毛重为 0

这些参数脑子有个印象即可,需要用到的时候再来阅读即可。

上位机读取测试

打开上位机进行连接后,先手动点击去皮,其实就是把当前测量的结果清零,这个去皮指令能否生效取决于手动置零范围,由上面的描述可以知道手动清零的范围是4单位是g也就是说4给范围以内都可以手动去皮操作,而且手动去皮操作是可以执行成功的。

在这里插入图片描述

这是用手按下的测试结果,可能这个结果在没有进行标定前结果是有误差的,我们重点放在这个值是如何拿到的。

这里就需要先了解一下它的Modbus手册了。

在这里插入图片描述

通过阅读手册我们可以得到一些信息,就是重量信息应该在保持寄存器中获取。继续查阅手册来看读取寄存器用什么功能码。

功能码表

在这里插入图片描述

涉及到读的操作有读离散量,这里我们首先关心的是读取重量,那我们重点关注的功能码应该是0x04 或者是0x03,再或者是0x23,至于究竟是哪个我们现在还不得而知仍需要查阅手册。
在这里插入图片描述

继续查阅手册可以看到手册中对保持寄存器的描述通过读取输入寄存器可以获得模块的重量数据和状态。

如何理解毛重皮重和净重

毛重,皮重和净重为模块当前的对应“重量数值”。“重量数值”为对应重量不包括小数点的数值(小数点位数需要从状态标志 1 获取)。例如毛重为 21kg,小数点为 2 位,那么毛重的重量数据值就是 2100;净重为 123kg,小数

点为 3 位,那么净重的重量数值就是 123000。

其实就是都不同地址得到不同的重量数据,数据是带0的,至于带几个零要取决于传感器的设定,我们最开始的标定参数设置里面有个2位小数点,就意味着你都回来的数据按照单位来说后面有两位小数,比如读回来的是12345其实对应的克数应该是123.45克。

“重量数值”为 32bit 补码占两个字,高字在前。这句话的含金量非常高,这里说明读回来的数据是按照补码的形式存储的,补码也是计算机中使用的存储方式,这里我就不在解释了,如果大家想了解补码的细节大家可以查看我之前的文章我应该详细的讲述过补码的存储。

其他命令比较多这里不一一列举 重点看一下上位机如何获取重量信息这里我使用串口监视工具来查看一下上位机发送了什么命令。

第一步先打开置零命令

在这里插入图片描述

此时上位机显示的值就是0.00克,小数值是2位。
在这里插入图片描述

抓包分析来看,ID是01,功能码是04,读18个寄存器,每个寄存器是2个字节,也就是读取了36个字节数据

寄存器0:0000

寄存器1:0000

寄存器2:0000

寄存器3:0000

寄存器4:0000

寄存器5:0000

寄存器6:1203 十六进制0x1203 状态寄存器1

在这里插入图片描述

在这里插入图片描述

寄存器7:9000 十六进制0x9000 状态寄存器2

在这里插入图片描述

寄存器8:0000

寄存器9:0000

寄存器10:0000

寄存器11:0000

寄存器12:0000

寄存器13:0000

寄存器14:0000

寄存器15:0000

寄存器16:0000

寄存器17:0000

置零指令抓包分析

在这里插入图片描述
在这里插入图片描述

ID:01 功能码05 地址0x0009 数据是 0xFF00 校验和是0x5C 38

在这里插入图片描述

获取重量

在这里插入图片描述

如图所示上位机读取到稳定的重量是2.24g,

在这里插入图片描述

寄存器0-1:0x000000E0 对应十进制是 224 也就是224 对应的重量值是2.24g 毛重

寄存器2-3:0x00000000 对应十进制是0 也就是皮重是0

寄存器4-5:0x000000E0 对应十进制是224 也就是对应净重是2.24克。

在这里插入图片描述
在这里插入图片描述

同理锁定毛重,跟锁定净重都是224,也就是2.24g
在这里插入图片描述

毛重内码,皮重内码、以及净重内码同理。

抓包分析完毕实际测试:

这里我采用普通的串口调试助手来对其进行设置,01 是ID 04都输入寄存器 00 00 是开始地址 00 12意味着读取18个字节0x12是十六机制数据 结尾加上Modbus的CRC16 校验和 70 07 这里跟抓包工具也一致证明我们组包没有问题。
在这里插入图片描述

01 04 00 00 00 12 70 07

在这里插入图片描述

返回的数据是 01 是ID 04是功能码 数据长度是24也就是 十进制的36个字节 一个寄存器是2个字节 读取是18个寄存器返回的是36个字节,最后是CRC校验,这里由于我没有进行置零操作看到重量不一致。

01 04 24 00 00 00 6D 00 00 00 00 00 00 00 6D 12 02 80 00 00 00 00 6D 00 00 00 6D 00 00 08 85 00 00 00 00 00 00 08 85 B3 31

不太理解04功能码的可以参考下面这个表格

在这里插入图片描述

发送一个05指令先进行清零操作

05指令的格式如下

在这里插入图片描述

在这里插入图片描述

写单个线圈指令

01 05 00 09 FF 00 5C 38
在这里插入图片描述

之后再来读重量

在这里插入图片描述

00 98 十六进制对应十进制152 对应克重是1.52克 00 97 应该是误差1.51克

在这里插入图片描述

再用实际上位机来测试看结果

在这里插入图片描述

1.35克 可以认为测试结果是正确

调试完毕。

调试注意事项:

1、波特率选对

2、默认偶校验不选不能通信 尤其是打开关闭过串口助手后

3、去皮跟毛重净重的操作要注意先后顺序否则相同物体测试出来结果不同

00 97 应该是误差1.51克

[外链图片转存中…(img-wRuErIJB-1741532994369)]

再用实际上位机来测试看结果

[外链图片转存中…(img-QZzxwbZP-1741532994369)]

1.35克 可以认为测试结果是正确

调试完毕。

调试注意事项:

1、波特率选对

2、默认偶校验不选不能通信 尤其是打开关闭过串口助手后

3、去皮跟毛重净重的操作要注意先后顺序否则相同物体测试出来结果不同

接下里就是要用STM32来编写主机代码给其进行通信 把重量实时显示在屏幕上,感兴趣的小伙伴可以关注我哦。本次文章写的比较混乱可能对于不了解Modbus的小伙伴不太友好,大家如果想要学习Modbus相关协议可以点在看关注后后台找我要资料哦

http://www.dtcms.com/wzjs/302342.html

相关文章:

  • 企业微信开放平台宁波seo网络推广渠道介绍
  • 广州技术支持:奇亿网站建设域名注册腾讯云
  • 做网站方面百度关键词热度查询
  • 服装网页设计网站南京最大网站建设公司
  • 青岛住房和城乡建设厅网站首页佛山关键词排名效果
  • 企业网站托管外包平台小时seo百度关键词点击器
  • 电商 网站 降低 跳出率 措施 效果正规考证培训机构
  • 男女做爰免费网站长沙seo外包
  • 网站图标做多大好品牌推广文案
  • 深圳高端网站建设多少钱miy188coo免费入口
  • 网站开发技术发展网络搜索词排名
  • 杭州哪家公司可以做网站百度广告联盟怎么赚钱
  • 网站建设上传sem优化师
  • 微餐饮网站建设官网潍坊网站外包
  • 做网站需要提供哪些资料关键词快速上首页排名
  • 佛山网站建设公司价格多少企业网站制作流程
  • 商务网站建设简答题及答案营销技巧和营销方法视频
  • 网页制作首页代码模板做网站排名优化的公司
  • 深圳新站优化深圳最好seo
  • 随州网站建设crm
  • 如何用网站做苹果app关键词网站排名软件
  • 佛山高端网站制作推广普通话奋进新征程手抄报
  • 哪里可以做网站教程网站注册信息查询
  • 安康网站建设小程序如皋网站制作
  • 这么建设一个网站人民日报最新新闻
  • wordpress 魔板成都关键词优化服务
  • 平安保险网站自己怎么开网站
  • 老司机做爰网站老师影音百度热搜词排行榜
  • 网站建设与管理实训总结百度百度一下
  • 长春网站建设托管培训心得简短200字