ModBus通信协议_第1页
ModBus通信协议_第2页
ModBus通信协议_第3页
ModBus通信协议_第4页
ModBus通信协议_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

1 ModBus通信协议及通信调试 2 目录 一Modbus协议 三Modbus数据包的分析 四简单Linux操作命令 九常见问题分析讲解 Modbus协议 Modbus协议是应用于电子控制器上的一种通用语言 它已经成为一通用工业标准 有了它 不同厂商生产的控制设备可以连成工业网络 进行集中监控ModBus通信采用主从方式 在同一个网络中有一个主设备及最多达255台从设备 从设备的地址编码为1 255 通常情况下 主设备只与1台从设备通信 但当主设备发出的地址码为0即采用广播方式时 可以将消息发送给所有的从设备ModBus一次通信其发送和接收的数据包由若干帧组成 协议正是定义了这些帧的意义 控制器只要按照协议解释其接收和发送的帧数据 就能与在同一网络中采用同样协议的控制器实现通信 Modbus协议 ModBus协议有两种通信模式 ASCII模式和RTU 远程终端单元 模式 ASCII模式是将一个字节分为两个ASCII字符发送 而RTU模式以十六进制传送数据 一个字节就是一帧 因而数据传送的效率高于ASCII模式 大多数工业控制器采用RTU模式 目前我们接触过的采用ASCII模式的设备只有SHAFER的气液联动阀的电子控制单元 在同一个网络中 无论主机还是从机 都必须采用相同的通信模式及相同的传输速率 如 9600 N 8 1 Modbus协议 ModBus协议有两种通信模式 ASCII模式和RTU 远程终端单元 模式 ASCII模式是将一个字节分为两个ASCII字符发送 而RTU模式以十六进制传送数据 一个字节就是一帧 因而数据传送的效率高于ASCII模式 大多数工业控制器采用RTU模式 目前我们接触过的采用ASCII模式的设备只有SHAFER的气液联动阀的电子控制单元 在同一个网络中 无论主机还是从机 都必须采用相同的通信模式及相同的传输速率 如 9600 N 8 1 Modbus协议 询问 应答 Modbus协议 询问 应答 TheQuery Thefunctioncodeinthequerytellstheaddressedslavedevicewhatkindofactiontoperform Thedatabytescontainanyadditionalinformationthattheslavewillneedtoperformthefunction Forexample functioncode03willquerytheslavetoreadholdingregistersandrespondwiththeircontents Thedatafieldmustcontaintheinformationtellingtheslavewhichregistertostartatandhowmanyregisterstoread Theerrorcheckfieldprovidesamethodfortheslavetovalidatetheintegrityofthemessagecontents Modbus协议 询问 应答 TheResponse Iftheslavemakesanormalresponse thefunctioncodeintheresponseisanechoofthefunctioncodeinthequery Thedatabytescontainthedatacollectedbytheslave suchasregistervaluesorstatus Ifanerroroccurs thefunctioncodeismodifiedtoindicatethattheresponseisanerrorresponse andthedatabytescontainacodethatdescribestheerror Theerrorcheckfieldallowsthemastertoconfirmthatthemessagecontentsarevalid 9 目录 一Modbus协议 三Modbus数据包的分析 四简单Linux操作命令 九常见问题分析讲解 Modbus数据包的分析 功能码03 QUERYRESPONSESlaveAddress 01SlaveAddress 01Function 03Function 03StartingAddressHi 00ByteCount 02StartingAddressLo 01DataHi 00No ofRegistersHi 00DataLo 06No ofRegistersLo 01ErrorCheck 3846ErrorCheck d5ca Modbus数据包的分析 功能码02 Q 010200C40016 R 010203ACDB35 QUERYRESPONSESlaveAddress 01SlaveAddress 01Function 02Function 02StartingAddressHi 00ByteCount 03StartingAddressLo C4Data Inputs10204 10197 ACNo ofRegistersHi 00Data Inputs10212 10205 DBNo ofRegistersLo 16Data Inputs10218 10213 35ErrorCheck ErrorCheck Modbus数据包的分析 功能码02 Q 010200C40016 R 010203ACDB35 十六进制十进制C4196十六进制二进制10204 10197AC1010110010212 10205DB1101101110218 10213 10220 10213 3500110101 13 目录 一Modbus协议 三Modbus数据包的分析 四简单Linux操作命令 九常见问题分析讲解 简单的Linux操作命令 VI编辑器 VI指令主要用来编辑Linux操作系统中的文件 它包含两种模式 编辑模式 命令模式 从编辑模式到命令模式按ESC键即可 简单的Linux操作命令 VI编辑器 在VI编辑器中相应指令如下 编辑模式 a在当前光标后插入字符i在当前光标前插入字符o在当前光标后插入一行x删除当前字符dd删除当前行r R 替代当前字符命令模式 q 不保存 wq 保存 简单的Linux操作命令 文件的传输FTP FTP的主要作用 就是让用户连接上一个远程计算机 这些计算机上运行着FTP服务器程序 察看远程计算机有哪些文件 然后把文件从远程计算机上拷到本地计算机 或把本地计算机的文件送到远程计算机去 简单的Linux操作命令 文件的传输FTP FTP命令简介 1 FTP目的IP地址FTP服务器的登陆2 DIR LS显示文件信息3 GET文件名 下载到当前目录 下载文件4 PUT文件名上传文件5 BYE退出6 HELP帮助 简单的Linux操作命令 文件的传输FTP FTP命令简介 1 FTP目的IP地址FTP服务器的登陆2 DIR LS显示文件信息3 GET文件名 下载到当前目录 下载文件4 PUT文件名上传文件5 BYE退出6 HELP帮助 简单的Linux操作命令 文件的传输FTP 传输模式FTP的传输有两种方式 ASCII 二进制 ASCII传输方式假定用户正在拷贝的文件包含的简单ASCII码文本 如果在远程机器上运行的不是Linux 当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式 但是常常有这样的情况 用户正在传输的文件包含的不是文本文件 它们可能是程序 数据库 字处理文件或者压缩文件 在拷贝任何非文本文件之前 用binary命令告诉ftp逐字拷贝 简单的Linux操作命令 文件的传输FTP 传输模式FTP的传输有两种方式 ASCII 二进制 二进制传输模式在二进制传输中 保存文件的位序 以便原始和拷贝的是逐位一一对应的 即使目的地机器上包含位序列的文件是没意义的 如在ASCII方式下传输二进制文件 即使不需要也仍会转译 这会损坏数据 ASCII方式一般假设每一字符的第一有效位无意义 因为ASCII字符组合不使用它 如果传输二进制文件 所有的位都是重要的 21 目录

温馨提示

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

评论

0/150

提交评论