基于S7-200的PLC数据通信研究.pdf
7 8 工业仪表与自动化装置 2 0 1 1 年第 4期 基 于 S 72 0 0的 P LC数 据 通 信 研 究 陈仲凯 , 吴萌岭 , 左建勇 同济大学 铁道与城 市轨道交通研 究院, 上海 2 0 0 0 9 2 摘要 介绍了 s 72 0 0系列 P L C的通信特点 , 提 出并比较 了针对工控机与 P L C及 P L C之 间通 信 的基 于 P P I 或 自由口的通信方案。通过 L a b V I E W 平 台的试验验证表 明, 采用 自由口通信能够显 著提高通信速度, 从而更好地利用通信电缆的带宽资源, 这对一些采样率要求不高的测控系统有一 定借 鉴价 值 。 关键词 L a b V I E W; S 72 0 0 P L C; 串口通信 ; P P I 协议 中图分类号 T P 2 7 3 文献标志码 A 文章编号 1 0 0 00 6 8 2 2 0 1 1 0 4 0 0 7 8 0 3 The s t u dy o f da t a c o mmu ni c a t i O i l b a s e d o il S 72 0 0 PLC C HEN Z h o n g k a i .WU Me n g l i n g .ZU O J i a n y o n g R a i l w a y a n d U r b a n R a i l z c A c a d e m y ,T o n g i i U n i v e r s i t y , S h a n g h a i 2 0 0 0 9 2 ,C h i n a Ab s t r a c t I n t h i s p a p e r,t h e g e n e r a l c h a r a c t e r i s t i c s o f s 7 2 0 0 PLC c o mmu n i c a t i o n a r e i n t r o d u c e d t o g e t he r wi t h t he c o mmu n i c a t i o n s t r a t e g i e s f o r P LC PC o r i n t e rPL C c o mmu ni c a t i o n.Ac c o r d i n g t o t h e t e s t c o n du c t e d o n La b VI EW p l a t f o r m .t h e f r e e p o r t mo d e o f S 7 2 0 0 PLC i s p r o v e d t o b e mo r e e ffi c i e n t t h a n P PI mo d e,wh i c h i s i mp o r t a n t f o r o b s e r v e a nd c o n t r o l s y s t e m d e v e l o p me nt whe n t h e r e q ui r e me n t for s a mp l i n g r a t e i s l i mi t e d . Ke y wo r ds La bVI EW ;S 7 2 0 0 PLC;s e r i a l p o rt c o mmu n i c a t i o n;P PI p r o t o c o l 0 引言 P L C是为工业 控制应用 设计 制造 的一 种计算 机。早期的 P L C主要用来代替继 电器实现逻辑控 制功能 , 但随着技术发展 , 这种装置的功能 已经大大 超出了逻辑控制 的范 围。比如 西门子 S 7 2 0 0 , 除 了数字量扩展模块外 , 还具有模拟量扩展和测温模 块 。通过使用这些扩展模块 , 可 以组成一个简单的 测控系统。 然而 , 由于 P L C 自身并 不具 备完 善 的显示设 备 , 常常需要借助不 同 P L C之间及 P L C与工控机的 数据通信实现测控系统的分散控制和集中管理 。该 文以 s 7 2 0 0模拟模块 的数据通信为对象 , 并借 助 L a b V I E W 平台对 P P I 通信与自由口通信的性能进 行 了比较。 1 S 72 0 0的通信模式 S 7 2 0 0系列 P L C的 C P U模块带有的通信端 收稿 日期 2 0 1 1- 0 21 2 作者简介 陈仲凯 1 9 8 7 , 同济大学硕士研究生, 从事测控方面 研 究。 口主要支持 2种通信模式 P P I 模式 和 自由口模式 。 P P I 通信协议是西 门子公 司 自主开发的通信协议 , 其性质是一种主 一从协议 主站器件发送要求到从 站器件 , 从站器件响应 , 主站靠一个 P P I 协议管理的 共享连接来与从站通信 。而 自由口模式允许应用程 序控制 S 7 2 0 0的通信端 口, 用户可 以在 自由口模 式下使用用户定义的通信协议来实现与多种类型智 能设备 的通信。 用 户 可 以 通 过 配 置 特 殊 寄 存 器 S MB 3 0和 S MB 1 3 0分别将通信 口 0和通信 口 1配置成 P P I 模 式或 自由 口模式。此外 , S MB 3 0及 S MB 1 3 0在 自由 口模式下还用于配置校验 、 每个字符 的数据位及波 特率。在 P P I 模式下 , s 72 0 0系列 P L C之间可 以 通过网络读指令 N E T R 和网络写指令 N E T W 指 令初始化一个通信操作, 根据数据表 T B L 的定义, 通过指定端 15 从远程设备指定存储地址读写数据。 同时, P L C与 L a b V I E W 应用程序之间可以通过数据 绑定的方式进行数据通信。在自由口模式下, s 7 2 0 0系列 P L C之 间可以通过发送指令 X MT 和接 收指令 R C V 控制通信端口发送和接收数据。同 时 , 这两种通信指令也可配合 L a b V I E W 的串口通信 2 0 1 1 年第 4期 工业仪表与自动化装置 7 9 V I 实现 P L C与 L a b V I E W 的数据通信 。 2 s 7 2 0 0通信程序实现 如 图 1 所示 , 选用 3个 带双通信 口的 s 72 0 0 P L C C P U 2 2 6 , 每个 P L C还连接有 模拟量模 块用 以采集模拟信 号。P L C之 间采 用 P P I 或 自由 口方 式通信, 而 P L C与工控机之 间使 用 U S B / P P I 或 U S B / R S 4 8 5电缆 通过 数 据 绑定 或 串 口方 式 实 现 通信 。 图 1 工控机与 P L C通信方式 2 . 1 s 7 2 0 0与 L a b VI E W 的通信实现 在 P P I 模式下 , s 72 0 0内部存储 器的数据 可 以通过简单的数据绑定实现 P L C与 L a b V I E W 的通 信 , 该方法无需编写任何 P L C程序且 L a b V I E W 程 序也 十分简单 , 硬件上需要 U S B / P P I 或 R S 2 3 2 / P P I 电缆 , 软件上只需安装 西门子公 司针对 S 72 0 0系 列 P L C的 O P C O L E f o r P r o c e s s C o n t r o l , 一种嵌入式 过程控制标准 应用开发 的 P C A c c e s s 软件 , 并在其 项 目窗 口中创建指向 P L C内存地址 的条 目, 然后设 置相应 的 L a b V I E W 控件的数据绑定位置即可 , 如图 2所示 。 图2 L a b V I E W 中 s 7 2 0 0 P L C的数据绑定 然而 , 由于 P P I 协议 自身 的复杂性减缓 了 P L C 与工控机的通信交换速度。为了提高通信速度 , 工 程实际中可以应用 s 7 2 0 0的 自由口模式与 L a b . V I E w 的串口模块建立通信。该通信方式无需 P P I 电缆, 只需普通的 R S 4 8 5 半双工通信电缆即可, 如 工控机无 R S 4 8 5端 口可选用 U S B / R S 4 8 5或 R S 2 3 2 / 4 8 5 转换器。为了保障数据的实时性, 通信采用应 答方式 , 即有工控机首先发送控制字节并启动延时, P L C在接收到正确控制字节后将需要传送 的数据反 馈给工控机。 P L C的程序如 图 3所示。程序使用发送指 令 X M T 和接收指令 R C V 及他们对应 的中断事件 2 6和 2 4 , 实现对工控机发送 的控制字节的应答 。主 程序 中, 在 P L C启 动 的 第 一 个 扫 描 循 环 配 置 C P U 2 2 6的通信 口 1 相应控制寄存器。 主程序 发送中断 接收中断 图 3 P L C程序框 图 工控机 L a b V I E W程序同时使用绑定方式和串 口方式与 P L C通信 , 通过显示 向 P L C的 A I W0输人 1 H z 的正弦信号来比较 2种通信方式的速度。如 图 4所示 , 串 口部分通过发送控制字节、 接收延时和 接收反馈信号实现通信, “ 绑定信号” 控件通过数据 绑定与 P L C的相 应存 储单元通信。接 收延 时基本 取决于发送反馈信号所需 的时间和 P L C的处理 时 间, 这里双字节 数据所需 时间为 1 8 / 1 9 2 0 0 1 ms 双字节包括奇校验位 , 考虑处理延时将接收延 时 设置为 5 m s 。 串口方式 图4 L a b V I E W 通信比较程序 L a b V I E W程序的运行结果如图5所示 , 图中显 示了2 S 的波形图像。显而易见, 由串口方式显示 的波形能够充分还原 1 H z 的正弦波图像, 而由绑定 方式显示的波形则由于通信速度限制丢失了大量波 形信息 薰 望 8 0 工业仪表与 自动化装置 2 0 1 1年第 4期 j四 警 0 时间 2。 图5 绑定方式与串口方式通信效果比较 2 . 2 S 7 2 0 0系列 P L C之间的通信 实现 s 7 2 0 0系列 P L C之间同样有 2种通信方式 P P I 方式和 自由口方式。对于 由 3个 P L C构成 的网 络 , 其主站和从站 的 P L C程序如图 6所示。其 中 2 个从站只需在其启动后的第一个扫描周期配置其控 制寄存器使其处 于从站模式 , 并在每个循环 中更新 A I 类存储单元 中的数据 至 V类存储单元 中。而主 站则通过网络读指令 N E T R 对指定站地址 的指定 存储地址的数据进行读取 , 网络读指令可 以从远程 站点读取最多 l 6个字节 的信息。 主站 从 站 图 6 P P I 协议 中主站 与从 站程序框 图 当各 P L C之间使用自由口方式进行通信时, 其 P L C程 序与当 P L C和工控机用 串 口通信时 的程序 类似 , 故不再赘述 。然而 , 使用 自由口通信时用户必 须 自行定义通信协议 。文 中采用了一种简单的应答 协议来替代 P P I 协议 的功能 。该协议不采用独立的 问询帧 , 而是将问询信息捎带于数据帧 中以求最大 限度地提升通信速度 。如 图7所示 , 数据帧共 1 7个 字节, 其中控制信息占一个字节, 数据占其余 1 6 个 字节。其中 C位用于区分主站与从站, N N两位用 于区分主站的站地址。 控制信息 数据 C X XXX XNN l 0 1 0 1 0 1 0 1 ⋯0 0 0 1 0 1 0 1 0 0 1 1字节 1 6字节 图7 数据帧定义 主站与从站通信时的时序如图 8 所示。其中通 信周期取决于数据帧的长度及波特率 即发送时延 数据块长度/ 波特率 , 并且考虑到主站与从站的处理 时延必须增加一定裕度 , 通信周期为6 0 m s 发送延时 总和为 3 91 7 / 9 6 O O 0 . 0 4 8 s , 保 留1 2 m s 。主站 每隔一个通信周期发送一次主站信息 , 其发送信息的 间隔用于接收从站的反馈信息。从站默认状态下为 接收状态, 当判断到接收的数据帧为主站帧 C位为 1 时, 根据主站的站地址 N N两位确定 设定不同定 时中断 。当定时中断响应时, 从站即把 自身的数据帧 发送至信道中, 并继续接收数据。 圜圆圈 主站 1 信息 主站 1 信息 . 从站 信息 从站 信息 1 l 8 ’ 一 周期 发送时 延 -设 定延时 图 8 自由口方式 F 各 P L C的通信时序 为了比较 P P I 方式与自由口 方式的通信效果, 向 各 P L C的模拟模块同时输入 了相同的 1 H z 正弦波。 显示借由工控机与主站 P L C的另一通信 口的串口通 信实现 , 为能 比较 P P I方式与 自由口方式 的差别 , L a b V I E W程序与 P I E的通信周期设为 5 0 i n s 6 0 i n s , 且 2种方式下各 P L C之间的波特率均为 9 6 0 0 b p s 。 如图 9所示 , 采用 P P J 方式时从站波形的失真严重, 而采用 自由口方式时从站波形的失真较小。 趔 罂 j型 謦 时间 2 S 图9 不同P L C问通信方式的性能比较 下转第 8 9页 ∞∞∞∞∞∞∞∞∞∞∞ ∞∞O 珊 姗 渤 瑚 ㈣ 如 一 一 2 0 1 1年第 4期 工业仪表与自动化装置 8 9 行收缩包裹 , 若线路屏蔽线接地则需要重新接线 , 采 取防接地措施 。 前置器处的 3个压接端子在多次压接之后 , 很 容易出现损坏 , 无法压紧线缆。由于前置器整体构 造的特点 , 端子损坏后很难修复 , 必须更换新 的前置 器 , 这样造成 了很大 的浪费 , 建议 在前置器与 3 5 0 0 之间再增加一接线端子排 , 这样前置器处的压接端 子只需一次将线接好 , 以后检查线路就在新增加 的 端子排处进行。 4 . 3 探头故障引起的误报警 此类故障在机组运行期 间无法处理 , 必须进行 停机处理。 探头在设 备搬运和拆卸过程 中, 可能会 因碰撞 和磨损而损坏端部 的测量线 圈, 所以在每次安装之 前 , 要进行检查校验。首先进行外观的检查 , 外观无 明显缺陷的情况下 , 用万用表测量其直流阻抗 , 若在 规定范 围内, 则说明探头完好 ; 若外观有明显缺陷, 如端部有磨损现象 , 电缆皮破损较大等 , 在处理破损 后, 除测量阻抗外 , 还需要用专用的传感器标准校验 仪 T K 32 E进行校验 , 校验结果合格后 , 方可使用 此探头。 不论何种故障, 在机组运行期 间, 现场检查只能 进行 以下内容 在解除联锁 的前提下 , 检查 3 5 0 0处 的接线是否正常 , 前置器的接线端子有无松动 , 前置 器供 电电压是否正常, 若探头 中间转接头在机组壳 体外保护管内, 可以检查 中间转接头有无松动 , 绝缘 是否 良好 。若想做更进一步检查 , 就必须进行停机 处理 。 5 结论 本特利传感器系统在神华神木化工有限公司的 各机组上有大量应用 , 主要用于空压机组 和合成气 压缩机组 , 系统从 2 0 0 5年投用至今 , 只更换 了 2支 传感器, 原因是探头所带电缆在多次检修拆装过程 中磨损严重 。将更换下的探头线缆用绝缘胶带缠绕 一 遍 , 再用热缩管整体缩裹 , 经测试符合规定标准 , 可 以继续使用。5年来系统没有 出现过一起设备质 量事故, 传感器性能好, 故障率低 , 使用寿命长。 参考文献 [ 1 ] 左国庆, 明赐东. 自动化仪表故障处理实例 [ M] .北 京 化学工业出版社, 2 0 0 2 . [ 2 ] 离心式、 螺杆式制冷机组设计选型与运行维护及工程 应用标准规范实用手册 [ M] .北京 北方工业出版 社 , 2 0 0 7 . 上接 第 8 0页 事实上 , 图 9中自由 口方式下的从 站波形存在 阶梯状失真是 由于工控机与 P L C的通信周期较各 P L C之间的通信 周期小。若增加工控 机与 P L C的 通信周期 , 则可 以基本消除阶梯状失真 如 图 1 0所 示, 通信周期改为 1 0 0 m s , 但这是以减少采样率为 代价的。若需要更高 的采样率 , 可以考虑增加 P L C 间通信的波特率 , 或减少单次通信的字节数。 图 1 0 调整 L a b V I E W循环周期后的通信性能 3 小结 该文针对西 门子 s 72 0 0系列 P L C的 2种通 信模式在 P L C与工 控机及各 P L C之间通信的速度 问题进行 了探讨。试验证明 2种情况下 , 自由 口通 信都能较大幅度地提升通信速度, 这对于面向模拟 量监控、 较低采样率、 且只有较少需要相互通信的 P L C的实际工程应用有一定借鉴价值。 参 考文献 [ 1 ] 西门子公 司. 深入浅出西门子 s 72 0 0 P L C[ M] . 北 京 北京航空航天大学出版社, 2 0 0 3 . [ 2 ] 郭宗仁. 可编程序控制器及其通信网络技术[ M] . 北 京 人民邮电 出版社 , 1 9 9 9 . [ 3 ] 西 门子公司. S I MA T I C S 72 0 0可编程控制器手册 [ M] . 北京 国防工业出版社, 2 0 0 0 . [ 4 ] 朱建平, 吕春峰. 基于 L a b V I E W 的单片机串口通信实 现[ M] . 机械工程与 自动化出版社, 2 0 0 8 . [ 5 ] 张材. P L C与上位机监控系统的串行通信的实现[ J ] . 基础自动化, 2 0 0 4 , 9 2 5 2 .