收藏 分享(赏)

MODBUS协议中文版.pdf

上传人:精品资料 文档编号:9811644 上传时间:2019-09-06 格式:PDF 页数:74 大小:1,010KB
下载 相关 举报
MODBUS协议中文版.pdf_第1页
第1页 / 共74页
MODBUS协议中文版.pdf_第2页
第2页 / 共74页
MODBUS协议中文版.pdf_第3页
第3页 / 共74页
MODBUS协议中文版.pdf_第4页
第4页 / 共74页
MODBUS协议中文版.pdf_第5页
第5页 / 共74页
点击查看更多>>
资源描述

1、PI-MBUS-300 Modbus Protocol 1 第一章 Modbus协议 介 绍 Modbus 协 议 介 绍 两 种 串 行 传 输 模 式 信 息 帧 错 误 检 查 方 法 Modbus Protocol PI-MBUS-300 2 Modbus协议介绍协议介绍协议介绍协议介绍 Modbus 可 编 程 控 制 器 之 间 可 相 互 通 讯 , 也 可 与 不 同 网 络 上 的 其 他 设 备 进 行 通 讯 , 支 撑 网 络 有 Modicon 的 Modbus 和 Modbus+ 工 业 网 络 。 网 络 信 息 存 取 可 由 控 制 器 内 置 的 端 口 ,

2、 网 络 适 配 器 以 及 Modicon 提 供 的 模 块 选 件 和 网 关 等 设 备 实 现 , 对 OEM( 机 械 设 备 制 造 商 ) 来 说 , Modicon 可 为 合 作 伙 伴 提 供 现 有 的 程 序 , 可 使 Modbus+ 网 络 紧 密 地 集 成 到 他 们 的 产 品 设 计 中 去 。 Modicon 的 各 种 控 制 器 使 用 的 公 共 语 言 被 称 为 Modbus 协 议 , 该 协 议 定 义 了 控 制 器 能 识 别 和 使 用 的 信 息 结 构 。 当 在 Modbus 网 络 上 进 行 通 讯 时 , 协 议 能 使

3、每 一 台 控 制 器 知 道 它 本 身 的 设 备 地 址 , 并 识 别 对 它 寻 址 的 数 据 , 决 定 应 起 作 用 的 类 型 , 取 出 包 含 在 信 息 中 的 数 据 和 资 料 等 , 控 制 器 也 可 组 织 回 答 信 息 , 并 使 用 Modbus 协 议 将 此 信 息 传 送 出 去 。 在 其 他 网 络 上 使 用 时 , 数 据 包 和 数 据 帧 中 也 包 含 着 Modbus 协 议 。 如 , Modbus+ 或 MAP 网 络 控 制 器 中 有 相 应 的 应 用 程 序 库 和 驱 动 程 序 , 实 现 嵌 入 式 Modbus

4、 协 议 信 息 与 此 网 络 中 用 子 节 点 设 备 间 通 讯 的 特 殊 信 息 帧 的 数 据 转 换 。 该 转 换 也 可 扩 展 , 处 理 节 点 地 址 , 路 由 , 和 每 一 个 特 殊 网 络 的 错 误 检 查 方 法 。 如 包 含 在 Modbus 协 议 中 的 设 备 地 址 , 在 信 息 发 送 前 就 转 换 成 节 点 地 址 , 错 误 检 查 区 也 用 于 数 据 包 , 与 每 个 网 络 的 协 议 一 致 , 最 后 一 点 是 需 用 Modbus 协 议 , 写 入 嵌 入 的 信 息 , 定 义 应 处 理 的 动 作 。 P

5、I-MBUS-300 Modbus Protocol 3 图 1 说 明 了 采 用 不 同 通 讯 技 术 的 多 层 网 络 中 设 备 的 互 连 方 法 。 在 信 息 交 换 中 , 嵌 入 到 每 个 网 络 数 据 包 中 的 Modbus 协 议 , 提 供 了 设 备 间 能 够 交 换 数 据 的 公 共 的 语 言 。 图 图 图 图 1 : : : : Modbus 协 议 应 用 示 意 图 协 议 应 用 示 意 图 协 议 应 用 示 意 图 协 议 应 用 示 意 图 * MB+ 为 Modbus 主 处 理 器 4 个 Modus 设 备 或 网 络 编 程

6、器 编 程 器 ( 去 MB+) S980( 去 MAP) AT/HC-984 和 HOST/MMHI AT/HC-984 和 HOST/MMHI 984A/B 和 S985 Modbus Protocol PI-MBUS-300 4 Modbus上的数据传输 Modicon 控 制 器 上 的 标 准 Modbus 端 口 是 使 用 一 个 RS-232 兼 容 的 串 行 接 口 , 定 义 了 连 接 器 , 接 线 电 缆 , 信 号 等 级 , 传 输 波 特 率 , 和 奇 偶 校 验 , 控 制 器 可 直 接 或 通 过 调 制 解 调 器 ( 以 后 简 称 Modems)

7、 接 入 总 线 ( 网 络 ) 。 控 制 器 通 讯 使 用 主 从 技 术 , 即 主 机 能 起 动 数 据 传 输 , 称 查 询 。 而 其 它 设 备 ( 从 机 ) 应 返 回 对 查 询 作 出 的 响 应 , 或 处 理 查 询 所 要 求 的 动 作 。 典 应 的 主 机 设 备 应 包 括 主 处 理 器 和 编 程 器 。 典 应 的 从 机 包 括 可 编 程 控 制 器 。 主 机 可 对 各 从 机 寻 址 , 发 出 广 播 信 息 , 从 机 返 回 信 息 作 为 对 查 询 的 响 应 。 从 机 对 于 主 机 的 广 播 查 询 , 无 响 应 返

8、 回 Modbus 协 议 报 据 设 备 地 址 , 请 求 功 能 代 码 , 发 送 数 据 , 错 误 校 验 码 , 建 立 了 主 机 查 询 格 式 , 从 机 的 响 应 信 息 也 用 Modbus 协 议 组 织 , 它 包 括 确 认 动 作 的 代 码 , 返 回 数 据 和 错 误 校 验 码 。 若 在 接 收 信 息 时 出 现 一 个 错 误 或 从 机 不 能 执 行 要 求 的 动 作 时 , 从 机 会 组 织 一 个 错 误 信 息 。 并 向 主 机 发 送 作 为 响 应 。 在 其 它 总 线 上 传 输 数 据 在 其 它 总 线 上 传 输 数

9、 据 在 其 它 总 线 上 传 输 数 据 在 其 它 总 线 上 传 输 数 据 除 标 准 的 Modbus 功 能 外 , 有 些 Modcon 控 制 器 内 置 端 口 或 总 线 适 配 器 , 在 Modbus+ 总 线 上 实 现 通 讯 或 使 用 网 络 适 配 器 , 在 MAP 网 络 上 通 讯 。 在 这 些 总 线 上 , 控 制 器 间 采 用 对 等 的 技 术 进 行 通 讯 , 即 任 意 一 个 控 制 器 可 向 其 它 控 制 器 启 动 数 据 传 送 。 因 此 , 一 台 控 制 器 既 可 作 为 从 机 , 也 可 作 为 主 机 , 常

10、 提 供 多 重 的 内 部 通 道 , 允 许 并 列 处 理 主 机 和 从 机 传 输 数 据 在 信 息 级 , 尽 管 网 络 通 讯 方 法 是 对 等 的 , 但 Modbus 协 议 仍 采 用 主 从 方 式 , 若 一 台 控 制 器 作 为 主 机 设 备 发 送 一 个 信 息 , 则 可 从 一 台 从 机 设 备 返 回 一 个 响 应 , 类 似 , 当 一 台 控 制 器 接 受 信 息 时 , 它 就 组 织 一 个 从 机 设 备 的 响 应 信 息 , 并 返 回 至 原 发 送 信 息 的 控 制 器 。 查 询 响 应 周 期 查 询 响 应 周 期

11、查 询 响 应 周 期 查 询 响 应 周 期 : : : : 图 图 图 图 2 : : : : 主 从 查 询 响 应 周 期 主 从 查 询 响 应 周 期 主 从 查 询 响 应 周 期 主 从 查 询 响 应 周 期 查 询 查 询 查 询 查 询 : : : : 查 询 中 的 功 能 代 码 为 被 寻 址 的 从 机 设 备 应 执 行 的 动 作 类 型 。 数 据 字 节 中 包 含 从 机 须 执 行 功 能 的 各 附 加 信 息 , 如 功 能 代 码 03 将 查 询 从 机 , 并 读 保 持 寄 存 器 。 并 用 寄 存 器 的 内 容 作 响 应 。 该 数

12、 据 区 必 须 含 有 告 之 从 机 读 取 寄 存 器 的 起 始 地 址 及 数 量 , 错 误 校 验 区 的 一 些 信 息 , 为 从 机 提 供 一 种 校 验 方 法 , 以 保 证 信 息 内 容 的 完 整 性 。 响 应 响 应 响 应 响 应 : : : : 从 机 正 常 响 应 时 , 响 应 功 能 码 是 查 询 功 能 码 的 应 答 , 数 据 字 节 包 含 从 机 采 集 的 数 据 , 如 寄 存 器 值 或 状 态 。 如 出 现 错 误 , 则 修 改 功 能 码 , 指 明 为 错 误 响 应 。 并 在 数 据 字 节 中 含 有 一 个 代

13、 码 , 来 说 明 错 误 , 错 误 检 查 区 允 许 主 机 确 认 有 效 的 信 息 内 容 。 主 机 查 询 信 息 主 机 查 询 信 息 主 机 查 询 信 息 主 机 查 询 信 息 设 备 地 址 功 能 代 码 8 位 数 据 字 节 错 误 校 验 设 备 地 址 功 能 代 码 8 位 数 据 字 节 错 误 校 验 从 机 响 应 信 息 从 机 响 应 信 息 从 机 响 应 信 息 从 机 响 应 信 息 PI-MBUS-300 Modbus Protocol 5 两种串行传输模式 控 制 器 可 使 用 ASCII 或 RTU 通 讯 模 式 , 在 标

14、准 Modbus 上 通 讯 。 在 配 置 每 台 控 制 器 时 , 用 户 须 选 择 通 讯 模 式 以 及 串 行 口 的 通 讯 参 数 。 ( 波 特 率 , 奇 偶 校 验 等 ) , 在 Modbus 总 线 上 的 所 有 设 备 应 具 有 相 同 的 通 讯 模 式 和 串 行 通 讯 参 数 。 选 择 ASCII 或 RTU 模 式 用 于 标 准 的 Modbus 总 线 。 它 定 义 了 总 线 上 串 行 传 输 信 息 区 的 “ 位 ” 的 含 义 , 决 定 信 息 打 包 及 解 码 方 法 。 如 在 MAP 和 Modbus+ 总 线 上 时 ,

15、 Modbus 信 息 以 帧 的 方 式 出 现 , 并 与 串 行 传 输 无 关 , 如 请 求 读 保 持 寄 存 器 可 以 在 Modbus+ 上 的 两 个 控 制 器 之 间 处 理 , 而 与 使 用 的 控 制 器 的 Modbus 端 口 无 关 。 ASCII 模 式 当 控 制 器 以 ASCII 模 式 在 Modbus 总 线 上 进 行 通 讯 时 , 一 个 信 息 中 的 每 8 位 字 节 作 为 2 个 ASCII 字 符 传 输 的 , 这 种 模 式 的 主 要 优 点 是 允 许 字 符 之 间 的 时 间 间 隔 长 达 IS , 也 不 会 出

16、 现 错 误 。 ASCII 码 每 一 个 字 节 的 格 式 : 编 码 系 统 : 16 进 制 , ASCII 字 符 0-9,A-F 1 个 16 进 制 数 据 位 : 1 起 始 位 7 位 数 据 , 低 位 先 送 奇 / 偶 校 验 时 1 位 ; 无 奇 偶 校 验 时 0 位 ( LRC ) 1 位 带 校 验 1 停 止 位 ; 无 校 验 2 止 位 错 误 校 验 区 : 纵 向 冗 余 校 验 RTU 模 式 模 式 模 式 模 式 控 制 器 以 RTU 模 式 在 Modbus 总 线 上 进 行 通 讯 时 , 信 息 中 的 每 8 位 字 节 分 成

17、2 个 4 位 16 进 制 的 字 符 , 该 模 式 的 主 要 优 点 是 在 相 同 波 特 率 下 其 传 输 的 字 符 的 密 度 高 于 ASCII 模 式 , 每 个 信 息 必 须 连 续 传 输 。 RTU 模 式 中 每 个 字 节 的 格 式 : 编 码 系 统 : 8 位 二 进 制 , 十 六 进 制 0-9 , A-F 数 据 位 : 1 起 始 位 8 位 数 据 , 低 位 先 送 奇 / 偶 校 验 时 1 位 ; 无 奇 偶 校 验 时 0 位 停 止 位 1 位 ( 带 校 验 ); 停 止 位 2 位 ( 无 校 验 ) 带 校 验 时 1 位 停

18、止 位 ; 无 校 验 时 2 位 停 止 位 错 误 校 验 区 : 循 环 冗 余 校 验 (CRC) Modbus信息帧 何 论 是 ASCII 模 式 还 是 RTU 模 式 , Modbus 信 息 以 帧 的 方 式 传 输 , 每 帧 有 确 定 的 起 始 点 和 结 束 点 , 使 接 收 设 备 在 信 息 的 起 点 开 始 读 地 址 , 并 确 定 要 寻 址 的 设 备 ( 广 播 时 对 全 部 设 备 ) , 以 及 信 息 传 输 的 结 束 时 间 。 可 检 测 部 分 信 息 , 错 误 可 作 为 一 种 结 果 设 定 。 对 MAP 或 Modbu

19、s+ 协 议 可 对 信 息 帧 的 起 始 和 结 束 点 标 记 进 行 处 理 , 也 可 管 理 发 送 至 目 的 地 的 信 息 , 此 时 , 信 息 传 输 中 Modbus 数 据 帧 内 的 目 的 地 址 已 无 关 紧 要 , 因 为 Modbus+ 地 址 已 由 发 送 者 或 它 的 网 络 适 配 器 把 它 转 换 成 网 络 节 点 地 址 和 路 由 。 ASCII 帧 帧 帧 帧 在 ASCII 模 式 中 , 以 (:) 号 (ASCII3AH) 表 示 信 息 开 始 , 以 回 撤 一 换 行 键 (CRLF) (ASCII OD 和 OAH) 表

20、 示 信 息 结 束 。 对 其 它 的 区 , 允 许 发 送 的 字 符 为 16 进 制 字 符 0-9,A-F 。 网 络 中 设 备 连 续 检 测 并 接 收 一 个 冒 号 (:) 时 , 每 台 设 备 对 地 址 区 解 码 , 找 出 要 寻 址 的 设 备 。 字 符 之 间 的 最 大 间 隔 为 1S, 若 大 于 1S , 则 接 收 设 备 认 为 出 现 了 一 个 错 误 。 典 型 的 信 息 帧 见 下 表 开 始 地 址 功 能 数 据 纵 向 冗 余 检 查 结 束 1 字 符 2 字 符 2 字 符 n 字 符 2 字 符 2 字 符 Modbus

21、Protocol PI-MBUS-300 6 : 图 图 图 图 3 ASCII 信 息 帧 信 息 帧 信 息 帧 信 息 帧 例 外 例 外 例 外 例 外 : : : : 对 于 584 和 984A/B/X 控 制 器 , 一 个 ASCII 信 息 可 在 LRC 区 后 正 常 终 止 , 而 不 需 发 送 CRLF 字 符 , 此 时 出 现 IS 的 时 间 间 隔 , 控 制 器 也 将 认 为 是 正 常 中 断 。 RTU 帧 帧 帧 帧 RTU 模 式 中 , 信 息 开 始 至 少 需 要 有 3.5 个 字 符 的 静 止 时 间 , 依 据 使 用 的 波 特

22、率 , 很 容 易 计 算 这 个 静 止 的 时 间 ( 如 下 图 中 的 T1-T2-T3-T4) 。 接 着 , 第 一 个 区 的 数 据 为 设 备 地 址 。 各 个 区 允 许 发 送 的 字 符 均 为 16 进 制 的 0-9,A-F 。 网 络 上 的 设 备 连 续 监 测 网 络 上 的 信 息 , 包 括 静 止 时 间 。 当 接 收 第 一 个 地 址 数 据 时 , 每 台 设 备 立 即 对 它 解 码 , 以 决 定 是 否 是 自 己 的 地 址 。 发 送 完 最 后 一 个 字 符 号 后 , 也 有 一 个 3.5 个 字 符 的 静 止 时 间

23、, 然 后 才 能 发 送 一 个 新 的 信 息 。 整 个 信 息 必 须 连 续 发 送 。 如 果 在 发 送 帧 信 息 期 间 , 出 现 大 于 1.5 个 字 符 的 静 止 时 间 时 , 则 接 收 设 备 刷 新 不 完 整 的 信 息 , 并 假 设 下 一 个 地 址 数 据 。 同 样 一 个 信 息 后 , 立 即 发 送 的 一 个 新 信 息 , ( 若 无 3 。 5 个 字 符 的 静 止 时 间 ) 这 将 会 产 生 一 个 错 误 。 是 因 为 合 并 信 息 的 CRC 校 验 码 无 效 而 产 生 的 错 误 。 开 始 地 址 功 能 数

24、据 校 验 终 止 T1-T2-T3-T4 8 B 位 S 8 B 位 S N8 B 位 S 16B 位 S T1-T2-T3T-4 图 图 图 图 4 RTU 信 息 帧 信 息 帧 信 息 帧 信 息 帧 Modbus信息帧 (Continued) 地 址 设 置 地 址 设 置 地 址 设 置 地 址 设 置 信 息 地 址 包 括 2 个 字 符 (ASCII) 或 8 位 (RTU) , 有 效 的 从 机 设 备 地 址 范 围 0-247,( 十 进 制 ) , 各 从 机 设 备 的 寻 址 范 围 为 1-247 。 主 机 把 从 机 地 址 放 入 信 息 帧 的 地 址

25、 区 , 并 向 从 机 寻 址 。 从 机 响 应 时 , 把 自 己 的 地 址 放 入 响 应 信 息 的 地 址 区 , 让 主 机 识 别 已 作 出 响 应 的 从 机 地 址 。 地 址 0 为 于 广 播 地 址 , 所 有 从 机 均 能 识 别 。 当 Modbus 协 议 用 于 高 级 网 络 时 , 则 不 允 许 广 播 或 其 它 方 式 替 代 。 如 Modbus+ 使 用 令 牌 循 环 , 自 动 更 新 共 享 的 数 据 库 。 功 能 码 设 置 功 能 码 设 置 功 能 码 设 置 功 能 码 设 置 信 息 帧 功 能 代 码 包 括 字 符

26、(ASCII) 或 8 位 (RTU) 。 有 效 码 范 围 1-225( 十 进 制 ) , 其 中 有 些 代 码 适 用 全 部 型 号 的 Modicon 控 制 器 , 而 有 些 代 码 仅 适 用 于 某 些 型 号 的 控 制 器 。 还 有 一 些 代 码 留 作 将 来 使 用 , 有 关 功 能 代 替 码 的 设 置 将 在 第 2 章 说 明 。 当 主 机 向 从 句 发 送 信 息 时 , 功 能 代 码 向 从 机 说 明 应 执 行 的 动 作 。 如 读 一 组 离 散 式 线 圈 或 输 入 信 号 的 ON/OFF 状 态 , 读 一 组 寄 存 器

27、的 数 据 , 读 从 机 的 诊 断 状 态 , 写 线 圈 ( 或 寄 存 器 ) , 允 许 下 截 、 记 录 、 确 认 从 机 内 的 程 序 等 。 当 从 机 响 应 主 机 时 , 功 能 代 码 可 说 明 从 机 正 常 响 应 或 出 现 错 误 ( 即 不 正 常 响 应 ) , 正 常 响 应 时 , 从 句 简 单 返 回 原 始 功 能 代 码 ; 不 正 常 响 应 时 , 从 机 返 回 与 原 始 代 码 相 等 效 的 一 个 码 , 并 把 最 高 有 效 位 设 定 为 “ 1 ” 。 如 , 主 机 要 求 从 机 读 一 组 保 持 寄 存 器

28、时 , 则 发 送 信 息 的 功 能 码 为 : 0000 0011 ( 十 六 进 制 03) 若 从 机 正 确 接 收 请 求 的 动 作 信 息 后 , 则 返 回 相 同 的 代 码 值 作 为 正 常 响 应 。 发 现 错 时 , 则 返 回 一 个 不 正 常 响 信 息 : 1000 0011( 十 六 进 制 83) 从 机 对 功 能 代 码 作 为 了 修 改 , 此 外 , 还 把 一 个 特 殊 码 放 入 响 应 信 息 的 数 据 区 中 , 告 诉 主 机 出 现 的 错 误 类 型 和 不 正 常 响 应 的 原 因 。 主 机 设 备 的 应 用 程 序

29、 负 责 处 理 不 正 常 响 应 , 典 型 处 理 过 程 是 主 机 把 对 信 息 的 测 试 和 诊 断 送 给 从 机 , 并 通 知 操 作 者 。 数 据 区 的 内 容 数 据 区 的 内 容 数 据 区 的 内 容 数 据 区 的 内 容 数 据 区 有 2 个 16 进 制 的 数 据 位 , 数 据 范 围 为 00-FF(16 进 制 ) , 根 据 网 络 串 行 传 输 的 方 式 , 数 据 区 可 由 一 对 ASCII 字 符 组 成 或 由 一 个 RTU 字 符 组 成 。 PI-MBUS-300 Modbus Protocol 7 主 机 向 从 机

30、 设 备 发 送 的 信 息 数 据 中 包 含 了 从 机 执 行 主 机 功 能 代 码 中 规 定 的 请 求 动 作 , 如 离 散 量 寄 存 器 地 址 , 处 理 对 象 的 数 目 , 以 及 实 际 的 数 据 字 节 数 等 。 举 例 说 明 , 若 主 机 请 求 从 机 读 一 组 寄 存 器 ( 功 能 代 码 03 ) , 该 数 据 规 定 了 寄 存 器 的 起 始 地 址 , 以 及 寄 存 器 的 数 量 。 又 如 , 主 机 要 在 一 从 机 中 写 一 组 寄 存 器 , ( 则 功 能 代 码 为 10H ) 。 该 数 据 区 规 定 了 要

31、写 入 寄 存 区 的 起 始 地 址 , 寄 存 器 的 数 量 , 数 据 的 字 节 数 , 以 及 要 写 入 到 寄 存 器 的 数 据 。 若 无 错 误 出 现 , 从 机 向 主 机 的 响 应 信 息 中 包 含 了 请 求 数 据 , 若 有 错 误 出 现 , 则 数 据 中 有 一 个 不 正 常 代 码 , 使 主 机 能 判 断 并 作 出 下 一 步 的 动 作 。 数 据 区 的 长 度 可 为 “ 零 ” 以 表 示 某 类 信 息 , 如 , 主 机 要 求 - 从 机 响 应 它 的 通 讯 事 件 记 录 ( 功 能 代 码 OBH ) 。 此 时 ,

32、从 机 不 需 要 其 他 附 加 的 信 息 , 功 能 代 码 只 规 定 了 该 动 作 。 信息帧 错 误 校 验 错 误 校 验 错 误 校 验 错 误 校 验 标 准 Modbus 总 线 , 有 两 类 错 误 检 查 方 法 , 错 误 检 查 区 的 内 容 按 使 用 的 错 误 检 查 方 法 填 写 。 SDCII 使 用 ASCII 方 式 时 , 错 误 校 验 码 为 2 个 ASCII 字 符 , 错 误 校 验 字 符 是 LRC 校 验 结 果 。 校 验 时 , 起 始 符 为 ( : ) 冒 号 结 束 符 为 CRLF 字 符 。 RTU 使 用 RT

33、U 方 式 时 , 错 误 校 验 码 为 一 个 16 位 的 值 , 2 个 8 位 字 节 。 错 误 校 验 值 是 对 信 息 内 容 执 行 CRC 校 验 结 果 。 CRC 校 验 信 息 帧 是 最 后 的 一 个 数 据 , 得 到 的 校 验 码 先 送 低 位 字 节 , 后 送 高 位 字 节 , 所 以 CRC 码 的 高 位 字 节 是 最 后 被 传 送 的 信 息 。 串 行 传 送 信 息 串 行 传 送 信 息 串 行 传 送 信 息 串 行 传 送 信 息 在 标 准 的 Modbus 上 传 送 的 信 息 中 , 每 个 字 符 或 字 节 , 按

34、由 左 向 右 的 次 序 传 送 : 最 低 有 效 位 : ( LSB ) 最 高 有 效 位 : ( MSB ) ASCII 数 据 帧 位 序 : 图 图 图 图 5 ASCII 位 序 位 序 位 序 位 序 RTU 数 据 帧 位 序 : 图 图 图 图 6 RTU 位 序 位 序 位 序 位 序 错误校验方法 标 准 的 Modbus 串 行 通 讯 网 络 采 用 两 种 错 误 校 验 方 法 , 奇 偶 校 验 ( 奇 或 偶 ) 可 用 于 校 验 每 一 个 字 符 , 信 息 帧 校 验 (LRC 或 CRC) 适 用 整 个 信 息 的 校 验 , 字 符 校 验

35、和 信 息 帧 校 验 均 由 主 机 设 备 产 生 , 并 在 传 送 前 加 到 信 息 中 去 。 从 机 设 备 在 接 收 信 息 过 程 中 校 验 每 个 字 符 和 整 个 信 息 。 无 奇 偶 校 验 带 奇 偶 校 验 无 奇 偶 校 验 带 奇 偶 校 验 Modbus Protocol PI-MBUS-300 8 主 机 可 由 用 户 设 置 的 一 个 预 定 时 间 间 隔 , 确 定 是 否 放 弃 传 送 信 息 。 该 间 隔 应 有 足 够 的 时 间 来 满 足 从 机 的 正 常 响 应 。 若 主 机 检 测 到 传 输 错 误 时 , 则 传

36、输 的 信 息 无 效 。 从 机 不 再 向 主 机 返 回 响 应 信 息 。 此 时 , 主 机 会 产 生 一 个 超 时 信 息 , 并 允 许 主 机 程 序 处 理 该 错 误 信 号 。 注 意 : 主 机 向 实 际 并 未 存 在 的 从 机 发 送 信 息 时 也 会 引 起 超 时 出 错 信 号 。 在 MAP 或 Modbus+ 等 其 它 网 骆 上 使 用 时 , 采 用 比 Modbus 更 高 一 级 的 数 据 帧 校 验 方 法 。 在 这 些 网 络 中 , 不 再 运 用 Modbus 中 的 LRC 或 CRC 校 验 方 法 。 当 出 现 发

37、送 错 误 时 , 网 络 中 的 通 讯 协 议 通 知 发 送 设 备 有 错 误 出 现 , 并 允 许 根 据 设 置 的 情 况 , 重 试 或 放 弃 信 息 发 送 。 若 信 息 已 发 送 , 但 从 机 设 备 未 作 响 应 , 则 主 机 通 过 程 序 检 查 后 发 出 一 个 超 时 错 误 。 奇 偶 校 验 奇 偶 校 验 奇 偶 校 验 奇 偶 校 验 用 户 可 设 置 奇 偶 校 验 或 无 校 验 , 以 此 决 定 每 个 字 符 发 送 时 的 奇 偶 校 验 位 的 状 态 。 何 论 是 奇 或 偶 校 验 , 它 均 会 计 算 每 个 字

38、符 数 据 中 值 为 “ 1 ” 的 位 数 , ASCII 方 式 为 位 数 据 ; RTU 方 式 为 8 位 数 据 。 并 根 据 “ 1 ” 的 位 数 值 ( 奇 数 或 偶 数 ) 来 设 定 为 “ 0 ” 或 “ 1 ” 如 一 个 RTU 数 据 帧 中 8 位 数 据 位 为 : 1100 0101 在 该 帧 中 , 值 为 “ 1 ” 的 总 位 数 为 4 , 即 偶 数 。 如 采 用 奇 校 验 方 式 时 , 则 “ 1 ” 的 总 位 数 为 奇 数 , 即 5 。 发 送 信 息 时 , 计 算 奇 偶 位 , 并 加 到 数 据 帧 中 , 接 收

39、设 备 统 计 位 值 为 “ 1 ” 的 数 量 , 若 与 该 设 备 要 求 的 不 一 致 时 产 生 一 个 错 误 。 在 Modbus 总 线 上 的 所 有 设 备 必 须 采 用 相 同 的 奇 偶 校 验 方 式 。 注 意 : 奇 偶 校 验 只 能 检 测 到 数 据 帧 在 传 输 过 程 中 丢 失 奇 数 “ 位 ” 时 才 产 生 的 错 误 。 如 采 用 奇 数 校 验 方 式 时 , 一 个 包 含 3 个 “ 1 ” 位 的 数 据 丢 失 2 个 “ 1 ” 位 时 , 其 结 果 仍 然 是 奇 数 。 若 无 奇 偶 校 验 方 式 时 , 传 输

40、 中 不 作 实 际 的 校 验 , 应 附 加 一 个 停 止 位 。 LRC 校 验 校 验 校 验 校 验 ASCII 方 式 时 , 数 据 中 包 含 错 误 校 验 码 , 采 用 LRC 校 验 方 法 时 , LRC 校 验 信 息 以 冒 号 “ : ” 开 始 , 以 CRLF 字 符 作 为 结 束 。 它 忽 略 了 单 个 字 符 数 据 的 奇 偶 校 验 的 方 法 。 LRC 校 验 码 为 1 个 字 节 , 8 位 二 进 制 值 , 由 发 送 设 备 计 算 LRC 值 。 接 收 设 备 在 接 收 信 息 时 计 算 LRC 校 验 码 。 并 与

41、收 到 的 LRC 的 实 际 值 进 行 比 较 , 若 二 者 不 一 致 , 亦 产 生 一 个 错 误 。 在 梯 形 图 中 , CKSM 函 数 可 计 算 数 据 信 息 中 LRC 的 校 验 。 用 于 主 计 算 机 时 请 查 阅 附 录 C 中 的 一 个 实 例 , 它 详 细 说 明 LRC 的 校 验 的 过 程 。 错误校验方法 CRC 校 验 校 验 校 验 校 验 RTU 方 式 时 , 采 用 CRC 方 法 计 算 错 误 校 验 码 , CRC 校 验 传 送 的 全 部 数 据 。 它 忽 略 信 息 中 单 个 字 符 数 据 的 奇 偶 校 验

42、方 法 。 CRC 码 为 2 个 字 节 , 16 位 的 二 进 制 值 。 由 发 送 设 备 计 算 CRC 值 , 并 把 它 附 到 信 息 中 去 。 接 收 设 备 在 接 收 信 息 过 程 中 再 次 计 算 CRC 值 并 与 CRC 的 实 际 值 进 行 比 较 , 若 二 者 不 一 致 , 亦 产 生 一 个 错 误 , 校 验 开 始 时 , 把 16 位 寄 存 器 的 各 位 都 置 为 “ 1 ” , 然 后 把 信 息 中 的 相 邻 2 个 8 位 字 节 数 据 放 到 当 前 寄 存 器 中 处 理 , 只 有 每 个 字 符 的 8 位 数 据

43、用 于 CRC 处 理 。 起 始 位 , 停 止 位 和 校 验 位 不 参 与 CRC 计 算 。 CRC 校 验 时 , 每 个 8 位 数 据 与 该 寄 存 器 的 内 容 进 行 异 或 运 算 , 然 后 向 最 低 有 效 位 (LSB) 方 向 移 位 , 用 零 填 入 最 高 有 效 位 (MSB) 后 , 再 对 LSB 检 查 , 若 LSB=1 , 则 寄 存 器 与 预 置 的 固 定 值 异 或 , 若 LSB=0 , 不 作 异 或 运 算 。 重 复 上 述 处 理 过 程 , 直 至 移 位 8 次 , 最 后 一 次 ( 第 8 次 ) 移 位 后 ,

44、下 一 个 8 位 字 节 数 据 与 寄 存 器 的 当 前 值 异 或 , 再 重 复 上 述 过 程 。 全 部 处 理 完 信 息 中 的 数 据 字 节 后 , 最 终 得 到 的 寄 存 器 值 为 CRC 值 。 CRC 值 附 加 到 信 息 时 , 低 位 在 先 , 高 位 在 后 。 在 梯 形 图 中 , CKSM 函 数 计 算 信 息 中 的 CRC 值 。 用 于 主 计 算 机 时 , 可 查 阅 附 录 C 中 的 一 个 实 例 , 它 详 细 说 明 了 CRC 的 校 验 。 第二章第二章第二章第二章 数据和控制功能数据和控制功能数据和控制功能数据和控制

45、功能 Modbus 功 能 代 码 格 式 Modbus 功 能 代 码 总 结 PI-MBUS-300 Modbus Protocol 9 Modbus 功 能 代 码 说 明 Modbus Protocol PI-MBUS-300 10 功能代码格式功能代码格式功能代码格式功能代码格式 数 字 值 表 达 数 字 值 表 达 数 字 值 表 达 数 字 值 表 达 若 无 特 殊 说 明 在 此 节 文 中 用 进 制 值 表 示 , 图 中 的 数 据 区 则 用 十 六 进 制 表 示 。 Modbus 信 息 中 的 数 据 地 址 信 息 中 的 数 据 地 址 信 息 中 的 数

46、 据 地 址 信 息 中 的 数 据 地 址 Modbus 信 息 中 的 所 有 数 据 地 址 以 零 作 为 基 准 , 各 项 数 据 的 第 一 个 数 据 地 址 的 编 号 为 0 如 : 在 可 编 程 控 制 器 中 “ coil 1 ” 在 Modbus 信 息 中 其 地 址 值 表 示 为 0000 Coil 127( 十 进 制 ) 在 Modbus 信 息 中 则 为 007EH(126 十 进 制 ) 保 持 寄 存 器 40001 , 在 信 息 中 数 据 地 址 为 寄 存 器 0000 。 功 能 代 码 区 为 保 持 寄 存 器 类 型 规 定 的 操

47、 作 , 因 此 , “ 4XXXX ” 是 缺 省 的 地 址 类 型 。 保 持 寄 存 器 40108 寻 址 寄 存 器 地 址 为 006B hex( 进 制 107) Modbus 信 息 中 区 内 容 信 息 中 区 内 容 信 息 中 区 内 容 信 息 中 区 内 容 图 7 为 一 个 例 子 , 说 明 了 Modbus 的 查 询 信 息 , 图 8 为 正 常 响 应 的 例 子 , 这 两 例 子 中 的 数 据 均 是 16 进 制 的 , 也 表 示 了 以 ASCLL 或 RTU 方 式 构 成 数 据 帧 的 方 法 。 主 机 查 询 是 读 保 持 寄

48、 存 器 , 被 请 求 的 从 机 地 址 是 06 , 读 取 的 数 据 来 自 地 址 从 40108 至 40110 3 个 保 持 寄 有 器 。 注 意 , 该 信 息 规 定 了 寄 存 器 的 起 始 地 址 为 0107 (006BH) 。 从 机 响 应 返 回 该 功 能 代 码 , 说 明 是 正 常 响 应 , 字 节 数 “ Byle count ” 中 说 明 有 多 少 个 8 位 字 节 被 返 回 。 因 无 论 是 ASCII 方 式 还 是 RTU 方 式 , 它 表 明 了 附 在 数 据 区 中 8 位 字 节 的 数 量 。 ASCII 方 式

49、时 , 字 节 数 为 数 据 中 ASCII 字 符 实 际 数 的 一 半 , 每 4 个 位 的 16 进 制 值 需 要 一 个 ASCII 字 符 表 示 , 因 此 在 数 据 中 应 由 2 个 ASCII 字 符 来 表 示 一 个 8 位 的 字 节 。 如 RTU 方 式 时 , 63H 用 一 个 字 节 (01100011) 发 送 , 而 用 ASCII 方 式 时 , 发 送 需 2 个 字 节 , 即 ASCII “ 6 ” (0110110) 和 ASCII “ 3 ” (0110011) 。 8 个 位 为 一 个 单 位 计 算 “ 字 节 数 ” , 它 忽 略 了 信 息 帧 用 (ASCII 或 RTU) 组 成 的 方 法 。 字 节 数 使 用 方 法 字 节 数 使 用 方 法 字 节 数 使 用 方 法 字 节 数 使 用 方 法 : : : : 当 在 缓 冲 区 组 织 响 应 信 息 时 , “ 字 节 数 ” 区 域 中 的 值 应 与 该 信 息 中 数 据 区 的 字 节 数 相 等 。 QUERY Field Name Header Slave Address Function Starting Address

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报