logo资料库

基于MemobusRTU通信协议的PLC数据优化组合传送方法.pdf

第1页 / 共5页
第2页 / 共5页
第3页 / 共5页
第4页 / 共5页
第5页 / 共5页
资料共5页,全文预览结束
文章编号 : 1000 - 5188 (2003) 01 - 0052 - 0005 Vol. 24 No. 1 Mar. 2003 上海海运学院学报 Journal of Shanghai Maritime University 基于 Memobus R TU 通信协议的 PL C 数据 优化组合传送方法 史建民 ,  黄有方 ,  赵婉莹 (上海海运学院 工学院 ,上海 200135) 摘  要 : 提出了一种 PLC 数据优化组合的传送方法。该法适合采用 Memobus RTU 通信协议的 PLC 向上位计算机传送大量数据时使用。同时 ,针对 PLC 内存变量分布不连续提出分块判据 ,可以明显 提高数据的整体传送速度。此方法的原理可以应用于其他类似的协议 ,例如 Modbus RTU 等。 关键词 : PL C ;数据传送 ;通信协议 ;Memobus R TU ;Modbus R TU 中图分类号 : TN919 5   文献标识码 : A The PLC Data Optimized Block Moving Method Based on the Memobus RTU Communication Protocol SHI Jian min ,  HUAN G You fang ,  ZHAO Wan ying ( Engineering College , Shanghai Maritime University , Shanghai 200135 , China ) Abstract : This article discusses t he PL C Data Optimized Block Moving Met hod , which is suitable for transferring large amounts of data from PL C to Computer when using Memobus R TU Communication Protocol. The Criterion of Block Divide provided in t his article can upgrade data transfer speed obviously , especially when t he data in PL C memory is uncontinual. The principle can also be applied to ot her similar protocols , such as Modbus R TU and so on. Key words : PL C ; data transfer ; communication protocol ; memobus R TU ; modbus R TU 0  引  言 在大型港口机械设备的远程服务中 ,经常要从 收稿日期 : 2002 - 09 - 20 基金项目 :上海市教委重点学科建设基金资助项目 (沪教委科 [ 2001 ]71 号文) 作者简介 : 史建民 (1949 -   ) ,男 ,上海人 ,上海海运学院工 学院讲师 ,大学本科 ,研究方向为机电系统控制技术。 集装箱装卸桥的 PL C 中读取大量数据 ,传送给上位 计算机做远程监测 。大多数 PL C 采用 RS - 232 串 口通信 ,由于串口传送速度极慢 ,保证实时性就成了 值得关注的问题 。 PL C 串口通信协议的格式都比较复杂 ,冗余度 大 ,这样就更加恶化了串口的传送特性 。我们提出 的优化组合传送方法 ,最大限度地避免了串口通信 协议的冗余 ,明显提高了串口数据的传送效率 ,在实 © 1994-2009 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
No. 1 史建民 ,等 :基于 Memobus R TU 通信协议的 PL C 数据优化组合传送方法 35 际使用中取得了良好效果 。 本项研究有实际的应用背景 。研究时使用的 PL C 是日本安川公司 ( YAS KAWA) 的 CP - 316H , 通信协议是公司内部非标准格式的 Memobus R TU 。 1  CP - 316 H 串口通信的时间特性 RS - 232 串口传送数据时 ,对于每个字节 、位的 发送次序为 :起始位 、数据位 、奇偶校验位 、停止位 。 CP - 316H 通信参数为 :1 位起始 、8 位数据 、1 位偶 校验 、1 位停止 、波特率 9 600 bps。 对于每个 8 位数据的字节 ,总的发送长度为 11 位 。根据 9 600 波特率 ,发送一个字节的时间约为 1. 146ms。在最理想的情况下 ,每秒大约发送 872 个字节 。 2  Memobus R TU 通信协议 2 1  Memobus 工作原理 Memobus 是日本 YAS KAWA 公司内部的一种 用于可编程序控制器的工业数据通信系统 ,它适用 于公司下属多种产品间的互相通信 。Memobus 系 统由 1 个主单元和多达 63 个从单元组成 。任何一 台带有 RS - 232 通信口的计算机都可作为主单元 , 从单元可以是 PL C。主从单元之间的串口通信受 到主单元中程序的控制 。主单元启动数据传输 ,从 单元仅仅是应答而已 。主单元一次只和一个从单元 通信 。每个从单元都有一个各自的地址码 ,主单元 通过地址码和相应的从单元对话 。收到主单元命令 的从单元执行指定的功能 ,并且对主单元做出应答 。 在主单元中预留一段监视响应时间 ,如果在预定时 间内没有接收到应答的话 ,重新发送相同的查询信 息 。用这种方法 ,主单元能够识别分布在不同地点 的从单元线圈的状态 ,能够读出或者改写它们寄存 器的内容 ,这使得对于广阔生产作业区的集中监控 成为可能 。Memobus 在主从单元之间有两种通信 模式 ,R TU ( Remote Terminal Unit 远程终端) 和 ASCII 模式 。R TU 模式的格式紧凑 ,ASCII 模式的 可读性好 。当主单元的数据处理速度相对比较快 时 ,选择 R TU 模式 。 2 2  Memobus RTU 读出功能 作为远程监测 ,只需研究读出功能 。Memobus R TU 的读出功能一共有 4 条 。线圈和输入继电器 都是数据位 ,所以 01H 功能和 02H 功能有相似的格 式 。中间寄存器和输入寄存器都是数据字 (16 位长 度) ,03H 和 04H 有相似的格式 。 表 1  Memobus RTU的读出功能 功能码 功  能 参考地址 相对地址 查询信息 01 H 02 H 03 H 04 H 读出线圈状态 读出输入继电器状态 读出中间寄存器内容 读出输入寄存器内容 0XXXX 1XXXX 4XXXX 3XXXX 0XXXX - 00001 1XXXX - 10001 4XXXX - 40001 3XXXX - 30001 8 字节 8 字节 8 字节 8 字节 应答信息 6~255 字节 6~255 字节 7~255 字节 7~255 字节 2 3  01 H、02 H功能的信息格式和时间特性 01H 和 02H 功能的信息格式见表 2 和表 3 。 表 2  主单元的查询信息 从单元地址    功能码 起始地址 数据位数(1~2 000 位) CRC - 16 校验 1 字节 1 字节 2 字节 2 字节 2 字节 表 3  从单元的应答信息 从单元地址 功能码 数据字节数 数据实际内容 CRC - 16 校验 1 字节 1 字节 1 字节 1~250 字节 2 字节 计算机从 PL C 读出一个数据位的时间为 : 主单元 8 字节的查询时间 + 从单元 6 字节的应 答时间 = 1. 146 ×14 = 16. 044ms。本项目一共要读 出 1 557 个数据位 ,逐位读出要花费 24. 98s。 2 4  03 H、04 H功能的信息格式和时间特性 03H、04H 功能的信息格式和时间特性见表 4 和表 5 。 表 4  主单元的查询信息 从单元地址    功能码 起始地址 数据字数(1~125 字) CRC - 16 校验 1 字节 1 字节 2 字节 2 字节 2 字节 表 5  从单元的应答信息 从单元地址    功能码 数据字节数 数据实际内容 CRC - 16 校验 1 字节 1 字节 1 字节 2~250 字节 2 字节 © 1994-2009 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
1 45 1 上  海  海  运  学  院  学  报 2003   计算机从 PL C 读出一个数据字的时间为 : 主单元 8 字节的查询时间 + 从单元 7 字节的应 答时间 = 1. 146 ×15 = 17. 19ms。本项目一共要读 出 354 个数据字 ,逐字读出要花费 6. 08 秒 ,加上数 据位一共 31. 06 秒 。 3  CP - 316 H 的内存变量 3 1  内存变量的表示法 内存变量的表示法见表 6 。 表 6  内存变量的表示法 代号 MB IB MW IW 名称 线圈 输入继电器 中间寄存器 输入寄存器 表示方法 MB nnnnnh IB hhhhh MW nnnnn IW hhhh 内存地址取值 MB000000~16384F IB00000~6400F MW00000~16384 IW0000~6400 参考地址取值 00001~09999 10001~19999 40001~49999 30001~39999 注 : n 为 10 进制数 , h 为 16 进制数   在 CP - 316H 中 ,MB 和 MW 在内存的存储空 间是重合的 。MB 是数据位 。MW 是数据字 ,长度 相当于 16 位 。MW 地址用 5 位 10 进制数表示 ,读 出容量为 16 384 字 。MB 地址用 5 位 10 进制数加 1 位 16 进制数表示 ,读出容量为 262 144 位 ,相当 于 163 84 字 。 IB 和 IW 在内存的存储空间是重合的 。IB 是 数据位 。IW 是数据字 ,长度相当于 16 位 。IW 地 址用 4 位 16 进制数表示 ,读出容量为 25 600 字 (6 400H) 。MB 地址用 5 位 16 进制数表示 ,读出容 量为 409 600 位 ,相当于 25 600 字 。 CP - 316H 的内存地址混用 10 进制数和 16 进 制数 ,参考地址和它的换算例如下 : 00001 = MB000000 ,09999 = MB00624 E 10001 = IB00000 ,19999 = IB0270 E 40001 = MW00000 ,49999 = MW09998 30001 = IW0000 ,39999 = IW270 E 虽然理论上 CP - 316H 内存地址的取值范围很 大 ,读出容量惊人 。但是实际上由于参考地址的限 制 ,对于上位计算机来说 ,通过通信读出的数据是有 限的 。对于 MB00624 E、IB0270 E、MW09998 、 IW270 E 以上的内存变量 ,上位计算机无法读到 。 经统计 ,本项目的待读变量为 :MB 1 045 个 、IB 512 个 、MW 310 个 、IW 44 个 。 3 2  内存变量的分布图 作为讨论例子 ,画出了内存中一小部分 MB/ W 的分布图 (见图 1) 。各个内存变量 ,MB 或者 MW , 根据内存地址递增次序 ,用浅灰色依次填入 。当 MB 和 MW 有重迭时 ,把不传送的涂成深灰色 。如 MB000010 、MB000011 和 MW00001 重迭 。决定 MW00001 不传送 ,涂成深灰色 。全部画完后可以 直观地看出内存变量的分布 。IB 和 IW 与此相似 , 不再重复 。 4  优化组合传送方法 4 1  按字传送 图 1 查询信息 ( N ×8) 个字节 。应答信息 ( N ×7) 个字 节 。总长度 ( N ×15) 个字节 ,或者 ( N ×7. 5) 个字 。 4 2  按自然块传送 在执行 04H 功能的情况下 ,按字传送 N 个字 , 定义一 :有效数据地址连续的块称为“自然块”。 © 1994-2009 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
No. 1 史建民 ,等 :基于 Memobus R TU 通信协议的 PL C 数据优化组合传送方法 55 在执行 04H 功能的情况下 ,按自然块传送 N 个字 ,查询信息 8 个字节 。应答信息 ( N ×2 + 5) 个 字节 。总长度 ( N ×2 + 13) 个字节 ,或者 ( N + 6. 5) 个字 。 显然 , N > 1 时 ,按字传送的总长度 ( N ×7. 5) > 按块传送的总长度 ( N + 6. 5) 所以 ,传送 1 个以上的字时 ,“按块传送”的效率 高 。 4 3  N1 、N2 两个自然块之间有 M 字空洞的传字 方案 定义二 :没有有效数据 ,地址连续的部分称为 “数据空洞”。 定义三 :自然块和数据空洞的组合结构称为“组 合块”。 假设有 N 1 , N 2 两个自然块 ,分别有 N 1 个字和 N 2 个字 。在这两个自然块之间有 M 个连续地址 没有有效数据 ,我们称为 M 字的数据空洞 。传送 N 1 、N 2 有两种方案 。 方案一 :按自然块分别传送 N 1 和 N 2 查询长度 :8 + 8 字节 应答长度 : ( N 1 ×2 + 5) + ( N 2 ×2 + 5) = ( N 1 + N 2) ×2 + 10 字节 总长度 : ( N 1 + N 2 + 13) 字 方案二 :按组合块传送 N 1 和 N 2 把自然块 N 1 、空洞 M 和自然块 N 2 放在一起 , 构成长度为 ( N 1 + M + N 2) 的块 ,我们把这种结构 的块称为“组合块” 查询长度 :8 字节 应答长度 : ( N 1 + M + N 2) ×2 + 5 字节 总长度 : ( N 1 + N 2 + M + 6. 5) 字 方案比较 “方案二”优于“方案一”的充要条件是 ( N 1 + N 2 + M + 6. 5) < ( N 1 + N 2 + 13) 即  M < 6. 5 字 传字分块判据  当数据空洞不大于 6 个字时 , 按组合块传送较优 。我们把数据空洞不大于 6 个字 的组合块称为“优化组合块”。 4 4  N1 、N2 两个自然块之间有 M 位空洞的传位 方案 运用对称原理 ,作出相似推导 。 传位分块判据 ,当数据空洞不大于 96 位时 ,按 组合块传送较优 。我们把数据空洞不大于 96 位组 合块称为“优化组合块”。 4 5  “优化组合块”的最大长度 定义四 :数据空洞不大于 6 个字或者 96 位的组 合块称为“优化组合块”。 根据 3. 3 节 ,主单元查询信息的最大数据位数 为 2 000 。根据 3. 4 节 ,主单元查询信息的最大数 据字数为 125 。Memobus R TU 通信协议的这些限 制 ,决定了“优化组合块”的最大长度 。 4 6  实际应用 根据分块判据 ,4. 2 节分布图例的“优化组合 块”一共有 3 块 (见表 7) 。注意 M - 03 块中有较大 的空洞 ,00023~25 (48 位) 、00028~30 (48 位) 。采 用“优化组合块”来进行 PL C 到上位计算机的数据 传送 ,能够保证最快的整体传送速度 。 块  号 M - 01 M - 02 M - 03 数据块名称 AMB00000 AMW00005 AMB00020 表 7  优化组合块的实际应用 参考起址 00001 40006 00321 数据长度 3 ×8 = 24 位 13 字 25 ×8 = 200 位 查询字节 8 8 8 应答字节 3 + 5 = 8 13 ×2 + 5 = 31 25 + 5 = 30   在本项目中 ,CP - 316H 的 MB/ W 内存变量的 “优化组合块”一共有 43 块 ,合计查询字节 344 ,合 计应答字节 1 266 。IB/ W 内存变量的“优化组合 块”一共有 16 块 ,合计查询字节 128 ,合计应答字节 296 。 全部传送时间 = (344 + 1 266 + 128 + 296) × 1. 146 = 2 330. 96ms = 2. 33s 和 3. 4 节比较 ,按位 、按字传送相同的数据量要 31. 06s。优化组合传送的整体速度提高了十几倍 , 这个结果是非常理想的 。 5  结束语 不同设备不同系统之间的信息交互 ,关键问题 在于通信协议的研究 ,有时即使能够实现通信 ,也不 能保证有良好的信息传送质量 。本文在研究 Memobus R TU 通信协议所有细节的基础上 ,提出 了优化组合传送方法 ,使 PL C 向上位计算机传送数 据的整体速度能够得到最大提升 。本文的研究技术 路线可以为类似的研究提供一个示例 。 (下转第 59 页) © 1994-2009 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
No. 1 孙可平 ,等 :电子器件氧化层 ESD 介质击穿物理模型研究 95 拟电路中与氧化层串联的电阻 R = 1 500Ω , C = 100p F , 氧化层的厚度为 400 。但 3 种样品的有效 面积 则 大 不 相 同 。所 加 ESD 脉 冲 峰 值 电 场 为 20MV/ cm , 衰减时间为 150ns。这时该门电路氧化 层的击穿电压计算值与实测值列于表 2 。 表 2  门电路中氧化层介质击穿电压 ( HBM 电路中的 ESD 脉冲电压) 介质电容 (p F) 20 13 11. 5 氧化层有效 面积 (cm2) 9. 09 ×10 - 6 5. 91 ×10 - 6 5. 23 ×10 - 6 击穿电压实 测值 (V) 击穿电压理论 计算值 (V) 200 175 75 203 176 169 由表 2 清楚地表明 ,前两种较宽氧化层的样品 , 其介质击穿电压理论值与实测值惊人地一致 。证明 这种介质击穿模型是可信的 。而后一种较小面积的 样品 有 较 大 差 异 , 可 能 是 所 谓 缺 损 密 度 的 变 化 (defect density variation) 导致较小氧化层过早击穿 造成的 。 3. 4  门电路氧化层 ESD 敏感度的尺寸效应 我们以表 2 所列的厚度为 400 、面积为 9. 09 ×10 - 6cm2的门电路氧化层为例 ,讨论一下 ESD 敏 感度的尺寸效应 。 表 2 显示这种氧化层的击穿电压约为 203V 。 如果我们缩小该种材质的氧化层尺寸 ,即将原来的 厚度缩致 40 而有效面积保持不变 ,则击穿电压约 为 160V 。如果面积也同时成比例地缩小 ,则击穿电 压经计算变为 20V 左右 。可见 ,集成电路集成度的 提高 ,伴随而来的必是耐 ESD 性能的降低 。因此 , 如何使集成技术与 ESD 控制技术同步发展 ,是电子 工业顺利发展的关键之一 。 参考文献 [ 1 ]  Distefano T H , Shatzkes M. Dielectric Instabilit y and Breakdown in SiO2 Thin Tilm[J ] . J . Vac. Sci. Technol. ,1976 (13) :50 - 54. [ 2 ]  O’Dwyer J . J . Theory of High Field Conduction in A Dielectric [J ] , J . Appl. Phys. ,1969 (39) :3887 - 3890. [ 3 ]  Dimaria D J , etc , Impact Ionization and Positive Charge Formation in Silicon Dioxide Films on Silicon , Appl. Phys. lett . , 1992 (60) :2118 - 2120. [ 4 ]  Klein N , Solomon P. Current Runaway in Insulators Affected by Impact Ionization and Recombination[J ] , J . Appl. Phys. , 1976 (47) :4364 - 4372. [ 5 ]  Lin D L ,Welsher T L , From Lightning to Charged device Model Electrostatic Discharges[J ] . EOS/ ESD symp . Proc. , EOS - 14 , 1992 , 68 - 75. [ 6 ]  孙可平 ,等. 电子器件热击穿物理模型研究[ M ] . 南海出版公 司 , 2002. 6 , 6 - 10. [ 7 ]  Ward A L . Calculation of Electrical Breakdown in Air at Near - atomspheric Pressure , Phys. Rek. , 1965 (138) :1357 - 1362 [ 8 ]  Lin D L . Electron Multiplication and Electrostatic Discharge Wave Forms[J ] , J . Appl. Phys. ,1992 (71) :2580 - 2586. (责任编辑  廖粤新) (上接第 55 页) 参考文献 [ 4 ]  YASKAWA. SIE - C877 - 17. 4C , CP - 717 Operation Manual 〔Z〕. [ 5 ]  YASKAWA. SIE - C877 - 17. 5C , CP - 717 Operation Manual 〔Z〕. [ 1 ]  GE Fanuc. GF K - 0582B , Series 90 PLC Serial Communications User’s Manual YASKAWA , SIE - C873 - 16. 1 , Control Pack CP - 316 User’s Manual〔Z〕. [ 2 ]  YASKAWA. SIE - C873 - 16. 1 , Pack CP - 316 User’s Manual〔Z〕. [ 6 ]  YASKAWA. SIE - C815 - 13. 60 E , MEMOBUS Descriptive Information〔Z〕. [ 7 ]  郭宗仁. 可编程序控制器及其通信网络技术〔M〕. 北京 :人民邮 电出版社 ,1999. [ 8 ]  [ 美 ]J . Scott Haugdahl. 网络分析与故障排除实用手册〔M〕. 北 [ 3 ]  YASKAWA. SIE - C873 - 16. 2 , FDS Series Programming 京 :电子工业出版社 ,2000. Manual〔Z〕. (责任编辑  廖粤新) © 1994-2009 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
分享到:
收藏