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

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

3天内不再提示

Modbus通信协议详解

达泰电子 来源:达泰电子 作者:达泰电子 2023-08-25 09:41 次阅读

Modbus 协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。它已经成为一通用工业标准。有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。

在Modbus网络上传输

标准的Modbus口是使用RS-232C兼容串行接口,它定义了连接口的针脚、电缆、信号位、传输波特率、奇偶校验。控制器能直接或经由Modem组网。

控制器通信使用主—从技术,即仅一设备(主设备)能初始化传输(查询)。其它设备(从设备)根据主设备查询提供的数据作出相应反应。典型的主设备:主机和可编程仪表。典型的从设备:可编程控制器。

主设备可单独和从设备通信,也能以广播方式和所有从设备通信。如果单独通信,从设备返回一消息作为回应,如果是以广播方式查询的,则不作任何回应。Modbus协议建立了主设备查询的格式:设备(或广播)地址、功能代码、所有要发送的数据、一错误检测域。

从设备回应消息也由Modbus协议构成,包括确认要行动的域、任何要返回的数据、和一错误检测域。如果在消息接收过程中发生一错误,或从设备不能执行其命令,从设备将建立一错误消息并把它作为回应发送出去。

在其它类型网络上传输

在其它网络上,控制器使用对等技术通信,故任何控制都能初始和其它控制器的通信。这样在单独的通信过程中,控制器既可作为主设备也可作为从设备。提供的多个内部通道可允许同时发生的传输进程。

在消息位,Modbus协议仍提供了主—从原则,尽管网络通信方法是“对等”。如果一控制器发送一消息,它只是作为主设备,并期望从从设备得到回应。同样,当控制器接收到一消息,它将建立一从设备回应格式并返回给发送的控制器。

查询——回应周期

(1)查询

查询消息中的功能代码告之被选中的从设备要执行何种功能。数据段包含了从设备要执行功能的任何附加信息。例如功能代码03是要求从设备读保持寄存器并返回它们的内容。数据段必须包含要告之从设备的信息:从何寄存器开始读及要读的寄存器数量。错误检测域为从设备提供了一种验证消息内容是否正确的方法。

(2)回应

如果从设备产生一正常的回应,在回应消息中的功能代码是在查询消息中的功能代码的回应。数据段包括了从设备收集的数据:象寄存器值或状态。如果有错误发生,功能代码将被修改以用于指出回应消息是错误的,同时数据段包含了描述此错误信息的代码。错误检测域允许主设备确认消息内容是否可用。

两种传输方式

控制器能设置为两种传输模式(ASCII或RTU)中的任何一种在标准的Modbus网络通信。用户选择想要的模式,包括串口通信参数(波特率、校验方式等),在配置每个控制器的时候,在一个Modbus网络上的所有设备都必须选择相同的传输模式和串口参数。

wKgaomToBsKAHoT8AABEUDuClaU81.jpeg

所选的ASCII或RTU方式仅适用于标准的Modbus网络,它定义了在这些网络上连续传输的消息段的每一位,以及决定怎样将信息打包成消息域和如何解码。

在其它网络上(象MAP和Modbus Plus)Modbus消息被转成与串行传输无关的帧。

(1)ASCII模式

当控制器设为在Modbus网络上以ASCII(美国标准信息交换代码)模式通信,在消息中的每个8Bit字节都作为两个ASCII字符发送。这种方式的主要优点是字符发送的时间间隔可达到1秒而不产生错误。

代码系统:

十六进制,ASCII字符0...9,A...F

消息中的每个ASCII字符都是一个十六进制字符组成

每个字节的位:

1个起始位

7个数据位,最小的有效位先发送

1个奇偶校验位,无校验则无

1个停止位(有校验时),2个Bit(无校验时)

错误检测域

LRC(纵向冗长检测)

(2)RTU模式

当控制器设为在Modbus网络上以RTU(远程终端单元)模式通信,在消息中的每个8Bit字节包含两个4Bit的十六进制字符。这种方式的主要优点是:在同样的波特率下,可比ASCII方式传送更多的数据。

代码系统:

8位二进制,十六进制数0...9,A...F

消息中的每个8位域都是一个两个十六进制字符组成

每个字节的位

1个起始位

8个数据位,最小的有效位先发送

1个奇偶校验位,无校验则无

1个停止位(有校验时),2个Bit(无校验时)

错误检测域

CRC(循环冗长检测)

无线Modbus的实现

遵从Modbus通讯协议,可以通过对接无线终端和需要无线功能的设备Rs485/Rs232接口变为无线Modbus通讯。也就是说,在有线Modbus网络通讯无误的情况下,只需要与兼容Modbus通讯协议的无线模块(DTD433M/DTD434M/DTD435M/DTD418M/DTD419M)对接硬件接口参数,即可实现多台设备的无线Modbus网络通讯。

下图是使用DTD434MC实现威纶触摸屏作为主站,与多个S7-1200plc进行无线Modbus通讯的案例。

wKgaomToBsKAIUjuAAHrQo2F7TU200.png

下图是使用DTD419MB实现2个组态王作为主站,与1个FX5Uplc进行无线ModbusTCP/IP以太网通讯的案例。

wKgZomToBsOASt4vAAGUebrZUoY058.png




审核编辑 黄宇

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

    关注

    40

    文章

    5080

    浏览量

    166261
  • 通信协议
    +关注

    关注

    28

    文章

    739

    浏览量

    39773
  • MODBUS
    +关注

    关注

    27

    文章

    1445

    浏览量

    75713
收藏 人收藏

    评论

    相关推荐

    Modbus​串行通信协议概述

    Modbus是一种串行通信协议,是Modicon公司(现在的施耐德电气 Schneider Electric)于1979年为使用可编程逻辑控制器(PLC)通信而发表。Modbus已经成
    发表于 09-02 10:58 1151次阅读

    浅谈Modbus通信协议

    Modbus通信协议是一种工业现场总线协议标准,常用的Modbus协议有以下三种类型:Modbus TCP、
    发表于 09-20 15:56 985次阅读
    浅谈<b class='flag-5'>Modbus</b><b class='flag-5'>通信协议</b>

    Modbus通信协议和多机通信例程

    Modbus通信协议介绍Modbus多机通信例程
    发表于 12-18 06:17

    Modbus通信协议的错误及解决办法

    Modbus通信协议可能出现的错误Modbus通信协议错误的解决办法
    发表于 01-11 07:32

    Modbus通信协议的相关资料分享

    Modbus通信协议Modicon公司1979在发展中,适用于工业现场总线协议控制。Modbus通信系统包含芯片的节点,并与组合物可编程控制
    发表于 11-24 08:01

    了解一下MODBUS通信协议

    目录前言MODBUS协议简介MODBUS通信格式信息帧格式前言近期需要制作一个MODBUS/RTU转MODBUS/TCP 的网关。首先需要了
    发表于 01-14 06:19

    Modbus通信协议的相关资料下载

    Modbus通信协议是在RS-485串口实验的基础上实现的,简单说就是首先要实现RS-485的串口通信,对所收发的数据串按照Modbus的规则编写(比作数据的加密处理)因此在程序编写上
    发表于 02-09 07:47

    浅析ModBus通信协议的相关知识

      概 述   Modbus是一种串行通信协议,是Modicon公司(现在的施耐德电气Schneider Electric)于1979年为使用可编程逻辑控制器(PLC)通信而发表。Modbus
    发表于 05-05 15:51

    ModBus通信协议.pdf

    ModBus通信协议.pdf
    发表于 04-09 22:24 88次下载

    Modbus通信协议详解

    关于Modbus通信协议详解和应用分析
    发表于 10-12 16:54 148次下载
    <b class='flag-5'>Modbus</b><b class='flag-5'>通信协议</b><b class='flag-5'>详解</b>

    Modbus通信协议教程

    Modbus通信协议教程Modbus通信协议教程Modbus通信协议教程
    发表于 12-08 14:14 69次下载

    ModBus通信协议及编程

    ModBus通信协议及编程。
    发表于 05-11 16:40 19次下载

    ModBus通信协议及编程_朱小襄

    ModBus通信协议及编程_朱小襄
    发表于 03-21 20:01 2次下载

    MODBUS通信协议学习(一):协议简介

    目录前言MODBUS协议简介MODBUS通信格式信息帧格式前言近期需要制作一个MODBUS/RTU转MODBUS/TCP 的网关。首先需要了
    发表于 01-14 13:24 21次下载
    <b class='flag-5'>MODBUS</b><b class='flag-5'>通信协议</b>学习(一):<b class='flag-5'>协议</b>简介

    ModBus RTU与ModBus TCP通信协议详解

    Modbus通信协议由Modicon公司(现已经为施耐德公司并购,成为其旗下的子品牌)于1979年发明的,是全球最早用于工业现场的总线规约。由于其免费公开发行,该协议免费使用,Modbus
    的头像 发表于 02-24 17:51 4908次阅读
    <b class='flag-5'>ModBus</b> RTU与<b class='flag-5'>ModBus</b> TCP<b class='flag-5'>通信协议</b><b class='flag-5'>详解</b>