



全文预览已结束
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
垒 兰兰 翌竺 基于M O D B U SR T U 的组态王与智能仪表通讯 T h ec o m m u n i c a t i o nb e t w e e nK i n g V i e w 6 5a n dI n t e l l i g e n ti n s t r u m e n t s b a s e do nM O D B U SR T U 汪韩韩1 杨辉2 张华3 朱淑云4 W A N GH a n h a n Y A N GH u i 2 Z H A N GH u a 3 Z H US h u y u n 4 1 南昌大学机器人研究所 南昌3 3 0 0 3 1 2 华东交通大学科研处 南昌3 3 0 0 1 3 3 南昌大学教务处 南昌 3 3 0 0 3 1 4 南昌大学科学技术学院 南昌3 3 0 0 3 1 摘要 本文设计了一种组态王 K l n g V i e w 6 5 与智能仪表的通信方法 给出了基于M O D B U SR T U 通 信协议的数据传输格式 并详细描述了组态王和智能仪表的通信参数设置 尤其对非固化通 信协议的S O M 型智能仪表做出了详细说明 并开发了组态王与智能仪表通信工程测试平台 经过对智能仪表R S 4 8 5 远距离传输状态下测试 效果良好 实验结果表明 该通信系统结构简 单 稳定可靠 实时性好 易于功能拓展和移植 可在工程实际应用中推广使用 关键词 M O D B U SR T U 组态王 智能仪表 中圈分类号 T N 9 4文献标识码 B文章编号 10 0 9 0 13 4 2 0 13 0 4 下 一0 0 0 8 0 3 D o i 1 0 3 9 6 9 l J I s s n 1 0 0 9 0 13 4 2 0 13 0 4 下 0 4 0 引言 M O D B U SR T U 协议是莫迪康公司发明的一 种广泛应用于自动化控制领域的工业通讯标准 协议规定 控制器之间通讯采用主从技术 即主 机可对各从机寻址 发出广播信息 从机返回 信息作为对查询的响应川 该协议支持R S 一2 3 2 R S 一4 2 2 R S 一4 8 5 和E t h e r n e t 等多种接口类型的通 讯设备 而本文研究的是基于R S 4 8 5 接口 采用 M o D B U SI H U 通信协议 组态王作为主端 智能 仪表为从端 进行相互握手 互相数据交换 并且 利用K i n g V i e w 6 5 开发平台对通讯过程进行实时监 测和管理 从而完成整个通信系统的设计和实现 1M O D B U S R T U 数据传输 控制器以R T U 模式在M O D B U S 总线上通讯 时 具体信息格式定义如表1 所示 M A C D 设备地址 组态王对智能仪表从端 的访问地址 定义为0 1 如若是多机通讯 可以 依次叠加0 2 0 3 F u n c t i o n 功能代码 组态王对智能仪表从 端的命令操作 P t rA d d r 待查询数据起始地址 2 字节 首 字节为高地址 P t rN u m b 待查询数据数量 2 字节 从起始 地址开始 地址依次加一 C R C 循环冗余校验码 2 字节 从M A C I D 至 P t rn u m b 计算C R C 值 如计算值与实际值相同则传送 正确 若不相同证明错误 丢弃该帧 重新检测 T 1 T 2 一T 3 一T 4 静止时间 当发送或接收数据 时需延时 3 5 个字符 除主机查询模式下的数据格式外 还有主机 写数据 从机应答等数据格式 具体见M O D B U S 协议标准 这里不再重复叙述 2 组态王通讯设置 基本通讯参数配置为 波特率9 6 0 0 b p s 数据 位8 位 无奇偶校验 停止位l 位 通讯方式R S 4 8 5 总线传输模式 通讯超时时间1 0 0 0 m s 从站设备C O M 配置可按配置向导依次进行 选择驱动 莫迪康M O D B U SR T U C O M 定 义逻辑名称 智能仪表0 1 选择串行口 C O M l 选择设备地址 1 0 1 为设备地址 不 打包 尝试恢复时间与最长恢复时间 3 0 s 和 2 4 h 如需配置多台智能仪表 方法类似 2 1 配置完设备端口之后 则需要在数据词典定 义变量 如表2 所示 表1 数据传输格式 收1 日l 2 0 1 3 0 1 1 8 作者簧介 汪韩韩 1 9 8 9 一 男 在读硕士研究生 研究方向为运动控制与移动机器人技术 8 第3 5 卷第3 期2 0 1 3 0 4 下 万方数据 表2 数据词典用户变量 3 智能仪表通讯设置 智能仪表作为从机端 硬件配置为4 8 5 总线接 口 软件一般使用固化好的通信协议或自主开发 编程设计 这里给出示例 以S t c 8 9 c 5 2 为例 利用 串行中断进行M O D B U SR T U 通讯设计 其中T 2 计 数器用于产生9 6 0 0 b p s 波特率 2 2 M 晶振下 初始 值设置为T L 2 0 x C C T H 2 0 x C D 中断服务子程 序如图1 所示 图1 发送接收串行中断服务子程序 单片机应答程序是主程序M a i n 函数中的 详细流程图如图2 所示 为满足通讯需求 我们需 要分析串口接收的命令 对不同的功能指令做出 相应的答复 首先 对接收命令中数据依次进行校 验 包括地址码校验 功能码校验 C R C 校验 地 址范围校验等 若出错则给出相应的出错指令 其 次 根据功能码把与单片机相对应的地址 数据 等一一写入待发送数组中 具体发送格式依功能码 的不同而不同 详细参考 M O D B U S 中文协议手 册 最后 启动发送函数B e g i n S e n d 0 将发送数 据发送至发送接收缓存区例 应答流程图中只给出了1 3 5 1 6 四种功能 码指令 即足以满足实现本文对组态王中离散变 量和模拟变量读写操作要求 如需添加强制多个 线圈 预置单个寄存器等功能指令 可进行额外 拓展 见图中省略部分 4 组态王与智能仪表的通讯实现 为满足实时调试和监控相关的参数与状 态 开发相应的组态王通讯调试界面 如图3 所示 其中1 号参变量设定为 D 1 1 D 1 8 分别 用两组黄 绿 红 蓝的按键显示输入状态 1 0 1 0 1 1 0 0 当为1 时按键按下 当为0 时按键弹 起 D O l D 0 8 分别用两组黄 绿 红 蓝的 L E D 灯表示输出状态0 1 0 1 0 0 1 1 当为1 时灯亮 当为0 时灯灭 A 1 1 一A 1 8 分别显示输入寄存器 值11 2 2 3 3 4 4 4 5 5 5 6 6 6 7 7 7 7 8 8 8 8 A 0 1 一A 0 8 则分别表示预置寄存器值8 8 8 8 7 7 7 7 6 6 6 5 5 5 4 4 4 3 3 2 2 1 l 另外 2 号参变量设置 D 1 1 D 1 8 分 别读入0 0 111 0 0 0 D 0 1 D 0 8 分别写出1 1 0 0 0 111 A 1 1 A 1 8 分别读入6 2 1 6 5 6 7 6 7 6 3 5 6 4 6 1 9 8 6 6 6 A 0 1 A 0 8 分别写出6 6 1 9 8 6 4 6 3 5 6 7 6 7 6 5 6 2 1 6 6 其中 图上数据按钮一能够改变预置数值H 从通信结果来看 效果良好 能够实时稳定 地读和写数据 针对测试过程中遇到的问题 给 出了解决方案 主要有以下两点 1 寄存器数值 超出上限0 6 5 5 3 5 解决方案 设置智能仪表 中变量初始值和原始值 并将实际数据缩小至一 定倍数 然后在组态王中将相应的参变量扩大适 当的倍数即可 2 多机通讯测试时 部分监控参 数错乱变化且无规律 由于在组态王中设置的各 从机通讯参数中 采集频率 都是相同的 导致 采集数据时出现了数据冲突 因此 设置不同的 采集频率 能够很好地解决以上问题 5 结束语 在本文设计的组态王与智能仪表通信系统 中 采用标准的M O D B U SR T U 数据传输格式 详 细描述了通信参数配置 并给出了 组态王与单 片机通信工程 平台的调试方案与测试结果 实 验结果表明该方法简单有效 稳定可靠 第3 5 卷第3 期2 0 1 3 0 4 下 1 9 1 万方数据 参考文献 开始 7 强各地自F N e c e B u f 0 11 Y 上 m 码 地址范围 数 围和C R C 校验正确否 Y 人 功能码 N B u f 1 12 Y 异常分别送o l H 10 2 H 0 3 H 0 4 发送地址 功能码l O x S O H 异常码 R e c e B f 1 弧磊 f 1 三 Y Y 读线圈状态R e a d C o i l0 l 读寄存器状态l 强制单个线圈 将单 q 机对应地址中的值ll R e a d R e g i s t e r s 将单片机ll F 0 r c e S i n g l e C o i lo 送发送缓冲区l 对应地址中的值送发送缓冲区ll 单片机对应地址位的值 预置多个寄存器 P r e s e t M u l t i p l e R e g i s t e r s 写单片机对应地址位的值 设备地址 功能码 字节数 数据 C R C 值 设备地址 功能码 字节数 数据 C R C 值 设备地址 功能码 线 圈地址 数据 C R C 值 设各地址 功能码 起始地址 寄存器数量 C R C 值 已准备好 发送数据 B e g i n S e n d0 结束当前循环 返回到开始 图2 单片机应答流程图 0 一nm m 豳nu 8u 8簟i u0 誊u 楚 臻塑一一秘 憋 塑舅 勰 婵鲷 鞠 髓楚墼 髂 鲢 n u n U n 曩删 啊 口口口田田口田园 口田口团田口园口 啊啊嘲 瞳圈 隧囊豳 瞳 园团口团口口口口 口囡口田园口团口 麟麟赫粕螂麟 赫麟蟪蝴躺蛐麟 蟪勰糖 瞳 一 一 图3 组态王与2 台单片机通信工程测试平台 1 M O D B U SA p p l i c a t i o nP r o t o c o lS p e c i f i c a t i o nV 1 1 b k M O D B U S I D A 2 0 0 6 2 北京亚控科技发展有限公司 组态王6 5 使用手册 z 2 0 1 0 3 尤慧芳 M O D B U SR T U 单片机通信程序编写方法 J 工 业控制计算机 2 0 0 9 2 2 1 2 8 6 8 7 1 0 1 第3 5 卷第3 期2 0 1 3 0 4 下 4 胡雄峰 郑应霞 基于M O D B U S R T U 通讯协议的组态王 与T O P 9 5 0 0 通讯 J 工业控制计算机 2 0 1 0 2 3 3 9 1 0 5 刘杰 王慧 组态王与单片机多机串口通信的设计 J 电 子设计工程 2 0 0 9 1 7 7 7 11 6 吕国芳 唐海龙 李进 基于M o d b u sR T U 的串口调试软件 的实现 J 计算机技术与发展 2 0 0 9 1 9 9 2 3 6 2 4 1 万方数据 基于MODBUS RTU的组态王与智能仪表通讯基于MODBUS RTU的组态王与智能仪表通讯 作者 汪韩韩 杨辉 张华 朱淑云
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年物流管理专业理论知识考试试题及答案
- 2025年社区工作者职称考试试题及答案
- 2025年社会心理学师职称考试试题及答案
- 2025年教师资格证考试题及答案
- 2025年法律职业资格考试题及答案
- 2025年城市管理与服务能力考试题及答案
- 2024年度浙江省护师类之主管护师能力提升试卷A卷附答案
- 2024年度浙江省二级注册建筑师之法律法规经济与施工通关试题库(有答案)
- 2024年度浙江省二级造价工程师之土建建设工程计量与计价实务模拟题库及答案下载
- 实验室监督人员培训
- PEP小学英语五年级下册《Unit5-Read-and-write-Robin-at-the-zoo》教学设计
- 个体工商户转让协议(2篇)
- 胸痛中心胸痛随访数据采集表
- 体检机构服务流程
- 水工混凝土建筑物修补加固技术规程
- 经皮冠状动脉介入治疗术术后健康饮食宣教
- 【语文】福建省厦门市演武小学小学二年级下册期末试题
- 2021-2022学年山东省东营市广饶县七年级(下)期末英语试卷(五四学制)(附答案详解)
- 卧式常压热水锅炉使用说明书
- (完整版)新人教版英语七年级下册单词听写表
- 酒店住宿水单模板2020
评论
0/150
提交评论