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

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

3天内不再提示

Modbus被称之为事实上的工业标准

工控论坛 来源:陈年丽 2019-07-19 11:23 次阅读

从Modbus开始说现场总线(一)

PLC应用,在了解了硬件配置和逻辑编程之后,很大一部分工作就是处理现场通讯了。各式各样的现场总线,其实还是有一定的规律的。我们在现场最常见到的现场总线协议,恐怕就是的Modbus了。

我在刚接触Modbus的时候,还顺便学会了一个单词De facto ,查了很多词典才知道是“事实上的”,Modbus也确实可以称之为事实上的工业标准。Modbus是Modicon公司(该公司几经收购,最后并入现在的施耐德电气 Schneider Electric,目前Modicon还作为施耐德某些PLC的系列名称)于1979年为使用可编程逻辑控制器(PLC)通信而开发。为了显示楼主学识渊博(爱好八卦),这里猜测一下这个词的由来,方便大家记忆。Modicon大概是Modular Control的缩写,Modbus作为Modicon的第一代通讯总线,理解成Modular bus:“模块化的总线”好像有些牵强,理解为Modicon的通讯总线Modicon Bus大概比较像吧。Modbus能够成为工业领域通信协议的事实标准(De facto standard),楼主擅自猜测,主要的原因大概有两个:一是Modicon做PLC比较(最)早,另外一个,估计是“简单”。

Modbus协议后来还出了升级版本Modbus Plus(MB+)但因为Modicon公司没有公开协议,所以没有流行开来,但仍然在工业现场大量使用。

最早的Modbus是基于串行通讯的(EIA/TIA)RS232/485/422技术,协议简单易用,硬件消耗很少,所有逐步超出PLC通讯的范围,广泛用于各种工业通讯,很多仪器仪表、控制器都支持该协议,配电领域的断流器也加入其中。后来随着工业以太网的普及,Modbus协议也作为应用层的协议搭上了以太网的快车,仍然出现在各种工业和民用现场。对网络通讯协议模型有了解的同行,通过下图可以清楚的了解Modbus协议的位置和作用。

下面详细介绍Modbus协议的内容,希望以这个“事实上的工业标准”为例,带您认识五花八门的通讯标准。

我们每天都离不开的通讯网络,或许您并不陌生,但对于其工作原理,大概就只有少数人了解了。我在网上看到一个用订外卖过程来说明国际标准化组织定义的标准化网络模型(OSI)的结构,很贴切,您有空可以看看。

一文简单理解OSI网络模型:

https://www.versatek.com/blog/you-wont-believe-what-the-osi-model-and-pizza-have-in-common/

楼主把几种常见的网络(模型)做了一个比对,方便大家理解。当然其中电话网的内容,并不严谨,仅供参考。

从Modbus开始说现场总线(二)

Modbus作为一个应用层的协议,最初是为了实现PLC间通讯的,所以基础的协议内容相对简单,传输的数据主要分为四类:离散量(开关量)输入,离散量(开关量,线圈)输出,输入寄存器,保持寄存器。对应电力系统中的术语,分别是:遥信,遥控,遥测,遥调。实际使用中因为一个保持寄存器可以作为十六个开关量使用,而且读和写都支持,大家都习惯通过读/写保持寄存器来搞定一切。

最初的Modbus协议基于RS-232/485链路,有两种编码方式,RTU和ASCII。这也是为什么有时候看到“Modbus RTU”说法的由来,后面我们介绍的帧格式就是RTU格式,ASCII格式已经很少用了。

其实Modbus的通讯格式非常容易理解,主站给从站发送一条报文,大概相当于网友问支付宝:

支付宝(从站地址),内定的锦鲤(数据类型,保持寄存器)第二名(寄存器地址)是多少(读数据,暗号03)啊(校验码)?报文格式如下(16进制):

支付宝回复网友:

支付宝(从站地址),这个嘛(重复读数据功能码),没有(返回数据长度,二),是0017这厮(返回数据),真没有(校验码):

这样,Modbus主机就完成了一次对从机数据的读操作,是不是很简单?最常用的两个功能码就是上面介绍的0x03(读连续多个保持寄存器)和0x10(十进制16,写多个保持寄存器),其他的功能码,基本类似,无非是类型(离散量,寄存器,…)数量(单个,连续多个)的不同组合。当然还少不了错误处理等细节,详细内容见参考文献。

寄存器地址是从0000开始的,对应于Modicon(施耐德)PLC中的40001,如果是寄存器地址从0001开始,并直接对应寄存器地址40001,Modbus RTU协议就有了一个别名JBUS,可以理解为JBUS是Modbus的一个常用功能子集。另外,有的厂商在返回数据时,数据长度不是按字节计算,而是按字计算,也无法和标准Modbus协议兼容。

把Modbus报文去掉地址和CRC校验码嵌入到以太网的数据帧中,就成了TCP-Modbus,如下图。这样串行设备(我们前面讲的断路器,多数都是通过附件成为一个串行设备)就可以很方便的接入以太网了,当然这个“嵌入”的过程,是由网关完成的。

Modbus协议的主要内容就介绍完了,我们会发现,作为一个应用层协议,Modbus并没有定义数据的格式和含义。例如,读一个保持寄存器的值,我们得到一个16位的数,至于这个数是每一位代表一个开关量的状态,还是一个无符号整数,或者是32位浮点数的高字节或者低字节,就要靠通讯双方自行定义了。所以实现Modbus通讯的很大一部分工作就是按照双方的通讯数据表逐个处理。

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

    关注

    112

    文章

    15191

    浏览量

    171088
  • 电气
    +关注

    关注

    18

    文章

    1080

    浏览量

    52109

原文标题:干货丨从Modbus开始说现场总线!

文章出处:【微信号:gkongbbs,微信公众号:工控论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    为什么说谷歌Brillo将动摇智能家居市场格局?

    Brillo使用了谷歌全新的称之为“Weave”的通讯协议,公司希望其可以成为物联网设备领域事实上工业标准
    发表于 08-17 08:40 4563次阅读

    4 什么称之为半导体?

    元器件
    车同轨,书同文,行同伦
    发布于 :2022年08月06日 13:50:25

    我愿称之为最强按钮

    电源led电子技术电子diy
    学习电子知识
    发布于 :2023年09月06日 21:04:28

    基于像素失控的剖析

    修理更换,“整屏像素失控率”控制在3/104之内、“区域像素失控率”控制在2/103之内是没问题的,甚至一些厂家的企业标准件厂是不允许出现失控像素。事实上,在不同的应用场合,该像素控制率的实际要求可以
    发表于 06-12 11:43

    遗忘的角差溯源

    听到角差的概念。事实上,包括LEM公司在内,目前几乎所有生产的霍尔电压、电流传感器均未标称角差指标。  没提到不代表不重要!  事实上,在变频电量测量中,传感器的角差指标比互感器角差指标更为重要!  角
    发表于 05-21 20:16

    怎么样才能称之为好的保险丝?

    保险丝时需要首先考虑的。  一般情况下保险丝的额定电流一定要大于电路正常工作电流,且拥有一定的过载能力,但如果余量过大,将会降低或削弱其保护功能,保险丝应该动作的时候不动作,造成保护的元器件损坏甚至更
    发表于 04-24 17:13

    单片机的定义是什么?为什么称之为单片机最小系统呢?

    单片机的定义是什么?单片机主要分为哪几类?为什么称之为单片机最小系统呢?单片机最小系统的要素包括哪些?
    发表于 07-08 06:22

    哈弗H6怎么样?凭什么被车界称之为“神车”,配置及价格如何?

    在2016年最终两个月哈弗就凭哈弗H6这一款车型就别离月销7万辆和8万辆,哈弗更是以全年58万辆的销量连任45个月中国轿车市场SUV销量冠军,哈弗H6被称为“神车”也是再适宜不过的。哈弗H6作为一款紧凑型SUV,并且这款车型分为红标和蓝标两个版别,两种不同特性规划也是招引了一批又一批的消费者。俗语说的人无完人,作为轿车相同也是有不足之处的,在线下据许多车主反响,这款车的油耗有点夸大,居然能开出11-15个油。
    发表于 07-24 15:06 1082次阅读

    可圈可点!老罗称之为“用了就回不去的东西”--优点E1智能门锁评测

    今年四月,锤子科技召开的坚果 3 新品发布会上,罗永浩在千元级产品坚果 3 亮相后,第一次为大家带来了锤子科技在智能家居上的合作,和很多人想象中的智能音箱不同,现场介绍的是一款智能门锁,老罗称之为「用了就回不去的东西」。
    的头像 发表于 08-09 11:10 4696次阅读

    intel酷睿i9-9900K处理器为什么被称之为最佳游戏处理器

    英特尔在秋季发布会上正式推出了九代酷睿处理器,旗舰是酷睿i9-9900K处理器,升级到了8核16线程,加速频率也提升到了5GHz,所以单核及多核性能都很强大,英特尔称之为最佳游戏处理器。
    发表于 12-24 14:17 1440次阅读

    什么样的程序员才可以称之为全栈工程师

    全栈工程师这个头衔在国内还是少有听闻,但是在美国早已大肆流行开来,纵关Facebook,Twitter,Amazon的招聘要求来看,有相当多的职位写的是Full Stack Enginner,即全栈工程师。那么,到底什么样的程序员才可以称之为全栈工程师呢?
    的头像 发表于 09-05 15:34 2790次阅读

    vivo在IOT中的布局可以称之为另类

    一产业中的布局可以称之为另类。 同宗的vivo 对vivo了解的用户应该知道,虽然在线下不难看到vivo与OPPO不断发生冲突,但从根本上来说,vivo与OPPO的创始人,均是原步步高旗下业务线的负责人。 而步步高的创立,不得不提到小霸王,还有段永平。 在前不久,小霸王被申
    的头像 发表于 11-22 09:49 3256次阅读

    AMR调度系统被业内人士称之为“海运”

    相较之下,AMR调度系统则被业内人士称之为“海运”,车到山前必有路,所有的路都是可以走的,甚至可以超车、并道。这意味着,基于5G实时的AMR集群调度系统可以调度一万台甚至更多AMR。
    的头像 发表于 11-24 15:57 3305次阅读

    小米有品贝尔森后置离合智能门锁上架,官方称之为“第三代”智能门锁

    12月9日,小米有品上新了一款贝尔森后置离合智能门锁,后置主板设计,众筹价1999元。 官方称之为“第三代”智能门锁,前两代主板均在门外,其中第一代为外置离合,第二代为中置离合。而第三代智能门锁
    的头像 发表于 12-09 13:34 4636次阅读

    超级电容器为什么被称之为“超级”,是什么原因

    超级电容器之所以称之为“超级”的原因是哪些? 1。超级电容器可以被视为悬浮在电解质中的两个无反应活性的多孔电极板,在极板上加电,正极板吸引电解质中的负离子,负极板吸引正离子,实际上形成两个容性存储
    发表于 04-14 01:27 1358次阅读