modbus协议对应地址_第1页
modbus协议对应地址_第2页
modbus协议对应地址_第3页
modbus协议对应地址_第4页
modbus协议对应地址_第5页
全文预览已结束

下载本文档

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

文档简介

CPUCPU 上的通信口 上的通信口 Port0Port0 支持 支持 ModbusModbus RTURTU 从站通信协议从站通信协议 S7 200 CPU 上的通信口 Port0 可以支持 Modbus RTU 协议 成为 Modbus RTU 从 站 此功能是通过 S7 200 的自由口通信模式实现 因此可以通过无线数据电台 等慢速通信设备传输 如果想在 S7 200 CPU 之间 或者其他支持 Modbus RTU 的设备使用 Modbus RTU 协议通信 需要由有 S7 200 CPU 做 Modbus 主站 S7 200 CPU 做主站必须由用 户自己用自由口模式 按相关协议编程 详情请参考 S7 200 系统手册 之相关章节 要实现 Modbus RTU 通信 需要 STEP 7 Micro WIN32 V3 2 以上版本的编程软件 而且须安装 STEP 7 Micro WIN32 V3 2 Instruction Library 指令库 Modbus RTU 功能是通过指令库中预先编好的程序功能块实现的 Modbus RTU 从站指令库只支持只支持 CPUCPU 上的通信上的通信 0 0 口 口 Port0Port0 参考 Modbus RTU 主站指令库 基本步骤 基本步骤 1 检查 Micro WIN 的软件版本 应当是 STEP 7 Micro WIN V3 2 以上版本 2 检查 Micro WIN 的指令树中是否存在 Modbus RTU 从站指令库 图 1 库中应当 包括 MBUS INIT 和 MBUS SLAVE 两个子程序 如果没有 须安装 Micro WIN32 V3 2 的 Instruction Library 指令库 软件包 图 1 指令树中的库指令 3 编程时使用 SM0 1 调用子程序 MBUS INIT 进行初始化 使用 SM0 0 调用 MBUS SLAVE 并指定相应参数 关于参数的详细说明 可在子程序的局部变量 表中找到 图 2 调用 Modbus RTU 通信指令库 图中参数意义如下 a 模式选择 启动 停止 Modbus 1 启动 0 停止 b 从站地址 Modbus 从站地址 取值 1 247 c 波特率 可选 1200 2400 4800 9600 19200 38400 57600 115200 d 奇偶校验 0 无校验 1 奇校验 2 偶校验 e 延时 附加字符间延时 缺省值为 0 f 最大 I Q 位 参与通信的最大 I O 点数 S7 200 的 I O 映像区为 128 128 缺省值为 128 g 最大 AI 字数 参与通信的最大 AI 通道数 可为 16 或 32 h 最大保持寄存器区 参与通信的 V 存储区字 VW i 保持寄存器区起始地址 以 T 为偶数 ModbusModbus RTURTU 从站指令库支持的从站指令库支持的 ModbusModbus 功能码功能码 Modbus RTU 从站指令库支持特定的 Modbus 功能 访问使用此指令库的主站必 须遵循这个指令库的要求 表 2 Modbus RTU 从站功能码 功功 能能 码码 主站使用相应功能码作用于此从站的效用主站使用相应功能码作用于此从站的效用 1 读取单个 多个线圈 离散量输出点 状态 功能 1 返回任意个数输出点 Q 的 ON OFF 状态 2 读取单个 多个触点 离散量输入点 状态 功能 2 返回任意个数输入点 I 的 ON OFF 状态 3 读取单个 多个保持寄存器 功能 3 返回 V 存储区的内容 在 Modbus 协议下保持寄 存器都是 字 值 在一次请求中可以读取最多 120 个字的数据 4读取单个 多个输入寄存器 功能 4 返回 S7 200 的模拟量数据值 5 写单个线圈 离散量输出点 功能 5 用于将离散量输出点设置为指定的值 这个点 不是被强制的 用户程序可以覆盖 Modbus 通信请求写入的值 6写单个保持寄存器 功能 6 写一个值到 S7 200 的 V 存储区的保持寄存器中 15 写多个线圈 离散量输出点 功能 15 把多个离散量输出点的值写到 S7 200 的输出 映像寄存器 Q 区 输出点的地址必须以字节边界起始 如 Q0 0 或 Q2 0 并且输 出点的数目必须是 8 的整数倍 这是此 Modbus RTU 从站指令库的限制 些点不是 被强制的 用户程序可以覆盖 Modbus 通信请求写入的值 16 些多个保持寄存器 功能 16 写多个值到 S7 200 的 V 存储区的保持寄存器中 在一 次请求中可以写最多 120 个字的数据 常问问题常问问题 ModbusModbus 从站的网络地址与从站的网络地址与 S7 200S7 200 的的 CPUCPU 网络地址有什么关系 网络地址有什么关系 没有关系 支持网络通信的通信协议必须有其自己的网络寻址规定 Modbus 从站的地址只是它在 Modbus 网络上的地址 而通常所说的 S7 200 CPU 地址 是 CPU 在西门子的 PPI 网络上的站地址 S7 200 CPU 的大部分通信功能都通 过 PPI 网络完成 例如编程 网络读写通信等 如何理解如何理解 ModbusModbus 地址与功能码的区别 地址与功能码的区别 Modbus 地址与 Modbus 的功能码是两个层次的概念 根据 Modbus 通信协议 Modbus 数据的地址使用 00 xxx 10 xxx 30 xxx 和 40 xxx 的形式 分别表示数字量输出 数字量输入 模拟量输入等数据地址 在使用 S7 200 的指令库时 Modbus 数据地址与 S7 200 的 I O 和数据存储 区地址间有特定的对应关系 有些设备表明它支持 Modbus RTU 通信协议 但也详细提供了读写数据的详细 通信帧格式 其中包括如何指定 Modbus 站的地址 需要读写数据类型 长度 等等 数据帧有特定字节指出此指令读写的数据类型和地址 此字节的数据内 容即所谓 功能码 如功能 1 指定读取单个 多个数字量输出点的值 支持 Modbus 协议的设备或软件 使用时用户直接设置或看到的应当是 Modbus 数据地址 Modbus 地址所访问的数据 是通过各种 功能 读写而来 功能码 是 Modbus 地址的底层 如果 Modbus 通信的一方提供的所谓 Modbus 协议只 有功能码 则需要注意了解此功能号与 Modbus 地址间的对应关系 ModbusModbus 指令库启动后 如何通过同一个通信端口进行指令库启动后 如何通过同一个通信端口进行 CPUCPU 监控 监控 Modbus 指令库使用的是 CPU 的自由口通信功能 工作在自由口模式下的通讯 口不能使用 Micro WIN 的 PPI 编程通信监控 如果通信口都已经被占用 可 以考虑 加一个通信模块 如 EM 277 CP 243 1 EM 241 等 扩展出一个编程通信口 中止自由口模式 可以将 CPU 上的模式开关从 RUN 拨到 STOP 或者保持处于 RUN 状态 用程序停止指令库的 Modbus 模式 参见指令库应用 为何有些为何有些 HMIHMI 软件使用软件使用 ModbusModbus RTURTU 读取读取 S7 200S7 200 中的实数会出现错误 中的实数会出现错误 有些 HMI 软件使用 Modbus RTU 通信协议时 处理存储在数据保持寄存器中的实 数 浮点数 的方式与西门子的实数保存格式不同 西门子的 PLC 遵循 高字 节低地址 低字节高地址 的规律 Modbus RTU 的保持寄存器总是以 字 双字节 为单位 而一个实数需要 4 个字节 双字 表示 HMI 软件在处理时可能会把保持寄存器的两个 字 互 换位置 造成不能识别以西门子格式表示的实数 如果 HMI 软件一方无法处理 这种实数 则可在 S7 200 CPU 中编程将存入数据缓冲区 保持寄存器区 的实 数的高字和低字互换 为何有的为何有的 HMIHMI 软件用软件用 ModbusModbus RTURTU 可以读取作为从站的可以读取作为从站的 S7 200S7 200 的内容 但不能的内容 但不能 写入 写入 可能此软件使用了 Modbus 功能 15 写多个离散量 或类似功能 功能 16 S7 200 从站协议遵守 以整字节地址边界 如 Q0 0 Q2 0 开始 以 8 的整数 倍为位个数 的规约 如果 HMI 软件未严格执行此规律就可能发生写入错误的 情况 S7 200S7 200 是否支持是否支持 ModbusModbus ASCIIASCII 模式 模式 S7 200 可以支持上述模式 但是没有现成的指令库 需要用户自己编程 项目编译后为何出现很多错误 项目编译后为何出现很多错误 使用指令库时 若编译后出现很多错误 一般是因为未指定库指令数据存储区 请参考相关条目 S7 200S7 200 CPUCPU 的的 Port1Port1 是否可以支持是否可以支持 ModbusModbus RTURTU 协议 协议 可以 用户可以自己编程实现 在 S7 200

温馨提示

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

评论

0/150

提交评论