Modbus通讯协议_第1页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、modbus通讯协议 modbus协议概述modbus协议是应用于控制器上的一种通用语言。通过此协议,控制器互相之间、控制器经由网络(例如以太网)和其他设备之间可以通信。它已经成为一种通用工业标准。有了它,不同厂商生产的控制设备可以连成工业网络,举行集中控制。 此协议定义了一个控制器能熟悉并用法的消息结构,而不管它们是经过何种网络举行通信的,它描述了控制器哀求拜访其他设备的过程,如何回应来自其他设备的哀求以及怎样侦测错误并记录。它制定了消息的域和内容的公共格式1所示。在modbus网络通信时,协议打算了每个控制器需要知道它们的设备地址,识别根据地址发来的消息,并打算要产生何种行动。假如需要响应

2、,控制器将生成反馈信息并用modbus协议发出。在其他网络上通信时,包含了modbus协议的消息要转换为此网络上用法的帧或包结构举行传输。modbus协议工作传输机制标准的modbus接口是用法rs232c兼容串行接口,它定义了衔接口的针脚、电缆、信号位、传输波特率、奇偶校验,控制器能挺直或经由modem组网。控制器之间通信用法主从技术,仅有主设备能初始化传输操作,其他设备(从设备)按照主设备查询提供的数据作出相应反应。典型的主设备:主机和可编程仪表,典型的从设备:可编程控制器。主从技术原理框图,2所示。查询:查询消息中的功能代码告之被选中的从设备要执行何种功能。数据段包含了从设备要执行功能的

3、所有附加信息,例如,功能代码03是要求从设备读取保持寄存器并返回它们的内容,数据段必需包含如下信息:从哪个寄存器开头读以及要读的寄存器数量。错误检测域为从设备提供了一种验证消息内容是否正确的办法。回应:假如从设备产生一个正常的回应,在回应消息中的功能代码是在查询消息中的功能代码的响应。数据段包括了从设备收集的数据,如寄存器值或状态等。假如有错误发生,功能代码将修改为用于指出回应消息是错误的,同时数据段包含了描述此错误信息的代码。错误检测域允许主设备确认消息内容是否可用。下面介绍modbus在不同的网络环境中主从技术的应用状况:1、在单一modbus网络上传输 主设备可单独和从设备通信,也能以广

4、播方式和全部从设备通讯。假如单独通信,从设备返回一条消息作为回应;假如是以广播方式查询的,则不作任何回应。modbus协议建立了主设备查询的格式:设备(或广播)地址、功能代码、全部要发送的数据、错误检测域。从设备回应消息也由modbus协议构成,包括确认要行动的域、任何要返回的数据和错误检测域。假如在消息接收过程中发生错误,或从设备不能执行其指令,从设备将建立错误消息并把它作为回应发送出去。2、在其他网络上传输 在其他网络上,控制器之间用法对等技术通信,故任何控制器都能初始和其他控制器的通信。这样在单独的通信过程中,控制器既可作为主设备也可作为从设备。传输网络提供的多个内部通道可允许同时发生的

5、多个传输进程执行。在消息位,modbus协议仍提供了主从原则,尽管网络通信办法是“对等”,假如一个控制器发送一条消息,它只是作为主设备,并期望从从设备得到回应。同样,当控制器接收到一条消息,它将建立一个从设备回应格式并返回给发送该消息的控制器。modbus两种工作传输模式在标准的modbus网络中,控制器可以设置为rtu和ascii两种通讯模式中的任何一种,在配置控制器的时候用户一旦选定某种模式(包括对应的串口通信参数),那么在同一modbus网络上的全部设备都必需挑选相同的传输模式和串口参数。两种不同的传输模式对应的传输数据单元有不同的格式:选定了的传输模式仅适用于标准的modbus传输网络

6、,它定义了在网络上传输的消息的每一字节消息段的意义,以及怎样将消息举行打包和解析。在其他网络上,例如map或modbus plus,modbus消息首先被转换成与串行无关的消息帧,再举行传输。1、rtu传输模式 rtu通信模式,在modbus网络上传输的消息中每个8bit字节包含两个4bit的十六进制数。这种传输方式的优点是:同样的波特率下,比ascii模式传输的数据更多。代码编码:(1)8bit二进制数分为两个4bit十六进制数09,af。(2)消息中每个8bit域都是由2个十六进制字符组成。在rtu传输模式下,消息起码要以3.5个字符时光的停顿间隔开头发送。在网络波特率多样的字符时光下,这

7、是很简单实现的,如下面示例中的t1t2t3t4所示。传输的第一个域是设备地址,可用法的传输字符是十六进制的09,af。网络设备不断侦测网络,包括停顿间隔时光在内。当接收到第一个传输字符之后,一个起码3.5个字符时光的停顿标定了消息的结束。新的消息发送可在此停顿后开头执行。rtu模式下,囫囵消息的传输必需作为一个延续的流举行。假如在传输完成之前有超过1.5个字符时光的停顿时光,接收设备将刷新不完整的消息并假定下一字节是一个新消息的地址域。同样地,假如一个新消息在小于3.5个字符时光内接着前一个消息开头,接收的设备将认为它是前一消息的连续。这都将导致错误的产生,由于在最后crc域的值不行能是正确的

8、。典型的rtu消息帧见表12、ascii传输模式 ascii通信模式,在modbus网络上传输的消息中每个8bit字节作为两个ascii字符发送。这种传输方式的优点是字符发送的间隔可以达到1s而不产生错误。代码编码:(1)8bit二进制数表示为两个ascii字符,09,af。(2)消息中每个ascii字符都是一个十六进制字符组成。在ascii传输模式下,消息以冒号(:)字符(ascii码3ah)开头,以回车换行符结束(ascii码0dh,0ah)。其他域可用法的传输字符是十六进制的09,af。网络上的设备不断侦测“:”字符,当有一个冒号接收到时,每个设备都解码下个域(地址域)来推断是否发给自己

9、的。消息中字符间发送的时光间隔最长不能超过1s,否则接收的设备将认为传输错误。一个典型ascii消息帧见表2所示modbus消息内各域解析上述段落中,主要叙述了modbus的不同传输模式以及对应传输模式的消息帧的典型构成,从中可以发觉,两种传输模式在消息的起始端具有不同的特性,消息内各域的编码方式不同之外,没有其他的区分。下面将统一举行消息内各域的解析讲解。1、地址域 消息帧的地址包含两个字符(ascii)或8bits(rtu)。可能的从设备地址是0247(十进制)。单个设备的地址范围是1247.主设备把要联系的从设备的地址放入消息中的地址域,发送出去,选通从设备。当从设备发送回应消息时,它把

10、自己的地址放入回应的地址域中,以便主设备知道是哪一个从设备作出了回应。地址0是用作广播地址,以使全部的从设备都能熟悉。当modbus协议用于更高水准的网络,可能是不允许广播或以其他方式代替。2、功能代码域 消息帧中的功能代码域包含了两个字符(ascii)或8bits(rtu)。可能的代码范围是十进制的1255.固然,有些代码是适用于全部控制器,有些是应用于某种控制器,还有些保留以备后用。当消息从主设备发往从设备时,功能代码域将告之从设备需要执行哪些行为。例如去读取输入的开关状态,读一组寄存器的数据内容,读从设备的诊断状态,允许调入、记录、校验在从设备中的程序等。当从设备回应时,它用法功能代码域

11、来指示是正常回应(无误)还是产生某种错误(称作异样回应)。对正常回应,从设备仅回应相应的功能代码。对异议回应,从设备返回一等同于正常代码的代码,但最重要的位置为规律1.例如:一由主设备发往从设备的消息要求读一组保持寄存器,将产生如下功能代码:00000011(十六进制 03h)对正常回应,从设备仅回应同样的功能代码。对异样回应,它返回:10000011(十六进制83h)除功能代码因异议错误作了修改外,从设备将一独特的代码放到回应消息的数据域中,以便告知主设备发生了什么错误。主设备应用程序得到异样的回应后,典型的处理过程是重发消息,或者诊断发给从设备的消息并报告给操作员。3、数据域 数据域是由两

12、个十六进制数集合构成的,取值范围00ff。按照网络传输模式,这可以是由一对ascii字符组成或由一rtu字符组成。主设备发给从设备消息的数据域包含如下附加信息:从设备用于执行由功能代码所定义的功能所必须的参数,包括了寄存器地址、处理项的数目、域中实际数据字节数等。例如,假如主设备需要从设备读取一组保持寄存器的数据(功能代码03),数据域指定了起始寄存器以及要读的寄存器数量。主设备要写一组从设备的寄存器(功能代码十六制10)数据域则指明白要写的起始寄存器以及要写的寄存器数量、数据域的数据字节数、要写入寄存器的数据。假如没有错误发生,从设备返回的数据域包含哀求的数据。假如有错误发生,此域包含了一个异样代码,主设备应用程序可以用来推断以实行下一步行动。在某种消息中数据域可以是不存在的(0长度)。例如,主设备要求从设备回应通信大事记录(功能代码十六进制0b),从设备不需任何附加的信息。4、差错校验域 标准的modbus串行网络采纳两种错误检测办法。奇偶校验对每

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论