modbus通讯协议_第1页
modbus通讯协议_第2页
modbus通讯协议_第3页
modbus通讯协议_第4页
modbus通讯协议_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

1、Modbus通讯协议图像:图像:图像:Modbus协议最初由Modicon公司开发,1979年底该公司成为Schneider Automation部门的一部分,现在Modbus是工业领域中世界上最受欢迎的协议。 此连接协议支持传统的RS-232、RS-422、RS-485和以太网数据老虎钳。 PLC、DCS、斯玛特仪表等许多工业设备将Modbus连接协议作为通讯标准使用。 由此,可将不同厂家生产的控制设备连接到工业网络上,进行集中监视。当在网络上通讯时,Modbus连接协议知道每个控制支重轮的解老虎钳地址,标识按地址发送的消息,并确定将采取什么动作。 如果需要响应,则控制支重轮生成响应并使用M

2、odbus连接协议将其发送到询问法目标。Modbus连接协议包括未定义物理层的ASCII、RTU、TCP等。 此连接协议定义了控件支重轮可以识别和使用的消息结构,而不管它们是通过哪个网络通讯的。 标准的Modicon控制支重轮使用RS232C实现串行Modbus。 Modbus的ASCII、RTU连接协议规定消息、数据的结构、命令和响应的方式,数据通讯采用Maser/Slave方式,主方发出数据请求消息,Slave方在收到正确的消息后向主方发送数据主站侧也可直接通过信息修改从站侧的数据,实现双向读取/写入。Modbus连接协议需要验证对数数据,串行连接协议除奇偶校验外,ASCII模式采用LRC

3、校验,RTU模式采用16二进制位CRC校验,而TCP模式是面向连接的可靠连接协议,因此TCP模式没有附加的规定校验另外,由于Modbus以从属方式定期发送接收数据,所以在实际使用中的从属站点被关闭后(例如,故障或关闭),主站侧能够进行诊断,在故障修复后,网络自动接通。 因此,Modbus连接协议的可靠性很好。简要介绍了Modbus的ASCII、RTU和TCP连接协议。 其中,TCP和RTU连接协议非常相似。 去掉RTU连接协议的2字节校验码,在RTU连接协议的开始加上0和6,用TCP/IP网络连接协议发送即可。 所以这里只介绍Modbus的ASCII和RTU连接协议。下表介绍了ASCII连接协

4、议和RTU连接协议的比较如从比较中可以看到的,ASCII连接协议比RTU连接协议具有开始和结束标签,以便于计程仪项目群处理,并且,它传送所有可见的ASCII字符,因此在调试时是直观的并且也容易检查LRC。 然而,RTU传送的数据都是可见的ASCII字符,因此通过RTU传送的数据的每个字节的ASCII必须用2字节来传送。 例如,RTU传输十六进制的0xF9时,ASCII需要传输“f9”的ASCII查询密码0x39和0x46字节,传输效率高,因此通常,如果要传输的数据量少,则考虑使用ASCII连接协议进行传输以下对两个连接协议的验证进行说明。1、LRC检查LRC结构域是包含8二进制位二进制值的字节

5、。 LRC值由发送解老虎钳进行修正,并置于消息信息帧中。 传入的解老虎钳在接收消息的过程中修正LRC,并与传入消息的LRC字段的值进行比较。 如果两个值不同,则有错误。LRC验证相对简单,在ASCII连接协议中使用,检测到消息域开始的冒号和结束的换行以外的内容。 只需将每个传输的数据以字节为单位重叠,然后反过来加1即可。 VC查询密码如下所示bytegetcheckcode (const char * p sendbuf,int nEnd)/获取关校验码字。按比例分配LRC=0;char pBuf4;int nData=0;for(i=1; i=1;wCrc =0xA001;是埃尔斯。wCrc

6、=1;是是是返回wcrc;是RTU连接协议命令可以通过以下步骤轻松地转换为ASCII连接协议命令1 .撤消指令的CRC校验,校正LRC校验替换。2 .将生成的命令列的每个字节转换为对应的2字节ASCII查询密码,例如0x03转换为0x03、0x 33 (具有0 ascii查询密码和3 ascii查询密码)。3 .在命令的开头加上开头标记“:”,其ASCII查询密码为0x3A。4 .在命令的末尾加上结束标志CR,LF(0xD,0xA ),在这里CR,LF表示换行和换行的ASCII查询密码。因此,以下仅介绍RTU连接协议即可,并且对应的ASCII连接协议可以使用上述过程生成。下表列出了Modbus

7、支持的功能查询密码在这些个的功能查询密码中,长时间使用的是1、2、3、4、5、6号功能查询密码,通过使用这些个,可以向下位机读写数字量和电视计程仪量。1 .可读写的数字容量暂存器(线圈状态):计算机发送指令: 去老虎钳地址 指令编号01 开头暂存器地址上位8二进制位 读取的暂存器数上位8二进制位 下位8二进制位 CRC检查的下位8二进制位 CRC检查的上位8二进制位示例: 11、01、00、13、00、25、CRC低、CRC高意思如下1解老虎钳地址:一个485男低音可连接多个解老虎钳。 这里的去老虎钳地址表示想与哪个去老虎钳通讯。 在本例中,想通讯17日(10进制的17是16进制的11 )。2

8、指令编号01 :读取数字量的指令编号固定为01。3起始地址上位8二进制位、下位8二进制位:表示要读取的开闭量的起始地址(起始地址为0 )。 例如,在该示例中,起始地址是19。4暂存器数上位8二进制位、下位8二进制位:表示从起始地址读取几个开闭量。 在例子中为37个开闭量。5CRC检查:从头到尾检查。 本协议的最后介绍。 这里需要注意的是,CRC校验指令中的高低字节的顺序与其他顺序相反。解老虎钳响应: 解老虎钳地址 命令编号01 返回的字节数 数据1数据2.数据nCRC检查的低位8二进制位 CRC检查的高位8二进制位例如:110105CD6 bb 20 e1 bCRC低CRC高意思如下1解码地址

9、和指令编号与上述相同。2返回的字节数:表示数据的字节数,即数据1,1,2.n的值。3数据1 .因为每n个数据是8个二进制位,所以每数据代表8个开关的值,其中每二进制位0表示相应的开关断开,而1表示闭合。 例如,这表示第20号(目录索引编号19 )的开关闭合、第21号闭合、第22号闭合、第23号闭合、第24号打开、第25号闭合、第26号闭合、第27号闭合4CRC检查同上。2 .只读数字容量暂存器(输入状态):与读取线圈的状态相似,第2字节的命令编号是2,而不是1。3 .写入数字量(线圈状态):计算机发送指令: 去老虎钳地址 指令编号05 下位暂存器地址上位8二进制位 下位数据上位8二进制位 下位

10、8二进制位 CRC检查下位8二进制位 CRC检查上位8二进制位示例: 11、05、00、交流、ff、00、CRC低、CRC高意思如下1解码地址与上述相同。2指令编号:写入数字量的指令编号固定为05。3需要下段的暂存器地址表示上位8二进制位、下位8二进制位:需要下段的交换机地址。4下位数据表示需要上位8二进制位、下位8二进制位:下位开闭量的状态。 在本例中闭合这个开关。 注意:此处只显示FF00表关闭0000表打开,其他数值无法使用。5注意这个命令是只能设定一个开关量的状态。解老虎钳响应:如果成功返回从计算机发送的命令,则不响应。4 .可读取/可写入的模拟计程仪暂存器(保持暂存器):计算机发送指

11、令: 去老虎钳地址 指令编号03 开头暂存器地址上位8二进制位 读取的暂存器数上位8二进制位 下位8二进制位 CRC检查的下位8二进制位 CRC检查的上位8二进制位示例: 11、03、00、6 b、00、03、CRC低、CRC高意思如下1解码地址与上述相同。2指令编号:读天线计程仪量的指令编号固定为03。3起始地址上位8二进制位下位8二进制位:表示要读取的天线计程仪量的起始地址(起始地址为0 )。 例如,在该例子中,开头地址是107。4暂存器数上位8二进制位、下位8二进制位:表示从起始地址读取多少模拟计程仪量。 例中为3个阿纳计程仪量。 请注意,返回的信息中,一个阿纳计程仪必须返回2个字节。解

12、老虎钳响应: 解老虎钳地址 命令编号03 返回的字节数 数据1数据2.数据nCRC检查的低位8二进制位 CRC检查的高位8二进制位示例: 11、03、06、02、2 b、00、64、CRC低、CRC高意思如下1解码地址和指令编号与上述相同。2返回的字节数:表示数据的字节数,即数据1,1,2.n的值。 示例返回三个模拟计程仪量的数据,但由于一个模拟计程仪量需要2字节,因此是6字节的合并。3数据1.n :其中,数据1数据2分别是第1个天线计程仪量的上位8二进制位和下位8二进制位,数据3数据4是第2个天线计程仪量的上位8二进制位和下位8二进制位等。 示例中返回的值分别为555、0和100。4CRC检

13、查同上。5 .只读天线计程仪暂存器(输入暂存器):与读取保存暂存器类似,第2字节的指令编号不是2,而是4。6 .写入单一模拟计程仪暂存器(保持暂存器)计算机发送指令: 去老虎钳地址 指令编号06 下位暂存器地址上位8二进制位 下位数据上位8二进制位 下位8二进制位 CRC检查下位8二进制位 CRC检查上位8二进制位示例: 11、06、00、01、03、CRC低、CRC高意思如下1解码地址与上述相同。2指令编号:的写入天线计程仪量的指令编号固定为06。3需要下段的暂存器地址表示上位8二进制位、下位8二进制位:需要下段的阿纳计程仪暂存器的地址。4下位的数据表示需要上位8二进制位、下位8二进制位:下

14、位的分析计程仪数据。 例如,在该示例中,第一暂存器的值是3。5注意该命令处于只能将1根阿纳计程仪量向下的状态。解老虎钳响应:如果成功返回从计算机发送的命令,则不响应。超时空要塞等级:总版本精华: 41投稿: 3956威望: 9957分金钱: 9431金贡献值: 601分朋友圈: ifix技术群上线了时间:539 (小时)注册时间:2005-02-02最终注册:2008-01-25Modbus通讯协议MODBUS通讯协议概述产业控制从单机控制走向集中监控、集散控制,目前已进入联网时代,产业控制器网络也便于网络管理。 Modbus是工业竞赛支重轮的联网连接协议之一。一、概要Modbus连接协议是应用于电子控件支重轮的通用语言。 根据该连接协议,可以在控制支重轮之间、控制支重轮通过网络(例如,以太网)与其它的数据老虎钳进行通讯。 这已经成为通用工业标准。 由此,可将不同厂家生产的控制设备连接到工业网络上,进行集中监视。定义此连接协议以识别控件支重轮使用的消息结构,而不管它们是通过哪个网络通讯的。 它说明了控件支重轮请求

温馨提示

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

最新文档

评论

0/150

提交评论