0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用Mthing工具解耦Modbus问题

创易栈 来源:创易栈 2023-04-15 10:01 次阅读

1摘要

在实际的工控应用中,RS485总线上经常会挂接多个设备,不同的设备的厂商可能不一致,一旦出现问题,就很难解耦是谁的问题。本文解释一种简单的问题解耦方法,即学即精通。

2问题描述

工业现场应用最多的总线就是RS485,RS485用到最多的协议就是modbus-rtu,不同的厂家都通过该总线和协议进行数据交互。这也存在一个问题,不同的厂家的,不同的技术人员水平参差不齐,一旦系统出现问题,互相之间的扯皮自然少不了。

例如下图中的系统,一个主机带4个从机,数据无法读取到,问题的解耦还是比较棘手。有没有一种简单的方案,引入一个裁判,能够简单快速解耦是哪一方的问题。

df2f537e-daaf-11ed-bfe3-dac502259ad0.png

3知识科普

关于使用RS485的现场,需要先了解以下的知识:

1) 90%以上的RS485通信之间使用的是modbus-rtu协议,该协议全球通用;

2) RS485标准电平全球通用,只要标注为RS485都可以互相连接,RS485输出的电平是0~5V,是通过总线上A-B的差值判断逻辑1还是逻辑0,A-B>0标示为逻辑1,A-B<0标示为逻辑0。

3) modbus-rtu 数据帧由地址、功能码、数据和校验组成,不同的功能码的数据字节数不同。

Modbus RTU协议数据帧是没有起始符和结束符,所以两个数据帧之间需要靠时间间隔来区分。协议中规定信息帧发送至少要有3.5个字符时间的停顿间隔。即在一个数据帧的最后一个字符传输完成之后,需要至少3.5个字符时间的停顿标定数据帧的结束,一个新的数据帧可在此停顿之后开始。

如果一个新消息在小于3.5个字符时间内接着前个消息开始,接受的设备将认为它是前一数据帧的延续,这将导致CRC校验出错。同时整个数据帧必须作为一连续的流传输。如果在帧完成之前有超过1.5字符时间的停顿时间,接受设备将刷新不完整的数据帧从而认为存在丢包现象。

那么一个字符是什么呢,他由1个bit起始位,8bit数据位,1个bit奇偶校验位(或者没有检验位,停止位变成2个),1个bit停止位组成,在发送时从起始位开始。

df5e215e-daaf-11ed-bfe3-dac502259ad0.png

4Mthings简介

Mthings主要是模拟Modbus设备,可以配置为主和从设备。

1) 模拟仿真上位机软件,支持MODBUS主机读写功能。

2) 模拟仿真Modbus设备软件,支持Modbus从机被动读写功能。

3) 支持多设备、多通道并发运行,无设备个数限制。

4) 支持持久化数据配置、无菜单设计,操作友好。

5) 支持MODBUS-RTU、MODBUS-ASCII、MODBUS-TCP。

6) 支持串口、TCP客户端、TCP服务器(可接入多客户端)、UDP单播。

7) 支持全链路报文监控、存储、分析。

8)支持丰富的链路丢包统计方法。

9) 支持数据曲线录波,统计数据极值和均值,并可导出所有数据。

10) 支持MODBUS数据配置模板导入导出。

11) 支持多种变化数据模拟方法。

12)支持数据二次加工,界面呈现原始真实数据。

13) 支持良好的非标协议适配。

14) 性能优异,支持接入> 500设备节点,超20K数据点。

15) 永久免费,免安装,中文。

5解耦举例

我以PLC和HMI通信为例,假设两者无法正常通信,需要一个中间的裁判判定问题出在谁。解耦的步骤如下。

1) 将安装有Mthings的PC使用USB转485模块和PLC连接。如下图

dfb346e8-daaf-11ed-bfe3-dac502259ad0.png

dfbbbbf2-daaf-11ed-bfe3-dac502259ad0.png

2)本次实验要做的是通过电脑模拟RS485主站,PLC作为从站,使用Modbus-RTU协议。PLC端的配置如下:

dfcadae2-daaf-11ed-bfe3-dac502259ad0.png

3) Mthings配置PC为主机,地址和上述的PLC保持一致。

e001e014-daaf-11ed-bfe3-dac502259ad0.png

4) 配置串口的波特率信息,和PLC保持一致。

e00e2590-daaf-11ed-bfe3-dac502259ad0.png

5) 配置需要访问的寄存器地址。地址是plc真实的地址。

e022e2be-daaf-11ed-bfe3-dac502259ad0.png

6)可以批量读取PLC的数据,或者双击“数值”即可以访问PLC,如下图,访问PLC的数据为123,和第一步的plc中的数据保持一致。这就证明了,PLC作为从站,是正常的,如何hmi和plc无法通信,则问题可以解耦到hmi身上。

e0575a6c-daaf-11ed-bfe3-dac502259ad0.png

6总结延伸

本文接受的使用mthings解耦RS485通信中的modbus通信故障方法,可以快速解耦和定位问题,对于用户几乎无需对modbus协议的知识,使用该工具有两个好处:

1) 基本是配置式,用户无需对modbus协议有较深的理解;

2) 可以利用pc机(或者笔记本)模拟主机和从机,可以快速解耦各个厂商之间的问题。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • RS485
    +关注

    关注

    39

    文章

    1135

    浏览量

    82064
  • MODBUS
    +关注

    关注

    28

    文章

    1757

    浏览量

    76749
  • 总线
    +关注

    关注

    10

    文章

    2857

    浏览量

    87893
  • RTU
    RTU
    +关注

    关注

    0

    文章

    401

    浏览量

    28596
  • 解耦
    +关注

    关注

    0

    文章

    40

    浏览量

    11882

原文标题:【避坑指南】使用Mthing工具解耦Modbus问题

文章出处:【微信号:创易栈,微信公众号:创易栈】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    详解Board和SoC的设计思路

    本文简单介绍OpenHarmony轻量系统移植,Board和SoC的设计思路。适合自己动手移植OpenHarmony轻量系统的朋友们。
    的头像 发表于 03-03 09:50 5334次阅读
    详解Board和SoC<b class='flag-5'>解</b><b class='flag-5'>耦</b>的设计思路

    永磁同步电机偏差和电流前馈控制比较

    偏差控制:电机参数估计值采用估计值加上电流反馈补偿d轴电流:电机参数准确值采用准确值加上电流反馈补偿d轴电流:电机参数采用估计值加上偏差控制:电机参数采用准确值加上偏差
    发表于 06-28 06:08

    常用的设计方法

    在采用传统无动态控制时,uqu_quq​和udu_dud​的指令值存在耦合项。上一个学习笔记中设计的设计方法是将其忽略,因此在最后设计的效果并不太好。目前,常用的设计方法,有前
    发表于 08-27 07:29

    永磁同步电机偏差与电流前馈控制对比分析,哪个影响大?

    永磁同步电机偏差与电流前馈控制对比分析,哪个影响大?
    发表于 10-12 10:17

    电压前馈是如何实现的

    电压前馈是什么?电压前馈是如何实现的?
    发表于 10-15 06:55

    多变量控制实验

    多变量控制4.0 实验设备PC计算机1台(要求P4-1.8G以上)、MATLAB6.X软件1套。4.1 实验目的①学习多变量控制方法。②通过用MATLAB编程、上机调试,掌握多
    发表于 05-15 00:51 0次下载

    热连轧机活套系统的控制及仿真

    针对传统热连轧带钢活套张力与高度控制系统,本文给出了基于对角矩阵和解不变性原理的控制方法。通过耦合系统的动态结构图,求取活套耦合系
    发表于 08-04 15:27 11次下载

    基于补偿器的控制方法的研究

    本文通过对冷热水混合系统的温度和液位的双变量耦合问题进行分析,提出了一种满足要求和控制目标需要的基于补偿器的Smith预估控制方法。试验结果表明,
    发表于 02-11 14:38 10次下载

    先进PID多变量控制

    先进PID多变量控制 通过PID控制,可实现对多变量系统的控制
    发表于 05-04 16:01 40次下载

    多变量自适应控制及应用

    多变量自适应控制及应用,有需要的朋友下来看看。
    发表于 04-12 10:21 0次下载

    非线性系统控制及

    非线性系统控制及,有需要的朋友下来看看。
    发表于 04-12 10:34 0次下载

    初值设定对快速法潮流计算的影响研究

    初值设定对快速法潮流计算的影响研究
    发表于 01-23 14:13 0次下载

    基于H∞混合灵敏度控制器实现BTT导弹自动驾驶仪的设计

    导弹在大攻角飞行过程中,通道间存在严重的气动耦合。工程设计上,通常把较小的耦合项作为随机干扰来处理,但当耦合影响较大时,容易使控制系统丧失稳定性,因此必须考虑通道间的耦合效应,并对其。近年来
    发表于 05-17 10:35 1096次阅读

    电容如何放置

    警告: 请注意电容的位置,尤其是IC芯片的电源与地引脚是斜对角的。 潜在问题: 不合理的位置会导致不充分的。 预防措施: -对于像直插这样的IC,其电源端子与地是端子成对角放置
    的头像 发表于 09-30 09:18 4047次阅读
    电容<b class='flag-5'>解</b><b class='flag-5'>耦</b>如何放置

    永磁同步电机控制之反馈及复矢量

    永磁同步电机反馈及复矢量(无刷直流电机等交流电机同样适用) 一、永磁同步电机数学模型 1.永磁同步电机dq坐标系数学模型 2.永磁同步电机复矢量数学模型 二、
    发表于 03-09 10:09 0次下载
    永磁同步电机控制之反馈<b class='flag-5'>解</b><b class='flag-5'>耦</b>及复矢量<b class='flag-5'>解</b><b class='flag-5'>耦</b>