RS485和PROFINET网关设计
作者:顾萍 李宗昌
来源:《软件导刊》2011年第02期
摘要:一种是价格低廉、开发自主性较强的现场总线,另一种是开始被主流生产商推广的工业以太网,两种控制网络在性能、应用以及价格方面又有很大的不同。基于瑞典HMS公司推出的ANYBUS—S模块,提出了一种可以完成RS485和PROFINET无缝连接功能的网关设计方法。
关键词:工业以太网;RS485;PROFINET;网关 中图分类号:TP393.04文献标识码:A文章编号:
作者简介:顾萍(1985-),女,江苏昆山人,江苏广播电视大学昆山学院教师,研究方向为电子教学与研究;李宗昌(1986-),男,江苏徐州人,江苏徐矿综合发电有限公司助理工程师,研究方向为电气检修。0引言
当前,通信技术在现场生产中的监测、控制和故障报警等等有举足轻重的应用。从简单的RS232、RS422到RS485等现场总线,再到更高级的工业以太网,比如PROFINET和ETHERNET/IP,它们被应用到了工业的各个方面。现在对于通信及其协议的研究已日趋成熟,并且通过转换芯片设计的网关,可以进行任意两种协议的转换,即将不同类型的控制网络连接到一起。这样可以利用不同协议的优点,大大增加了产品设计的灵活性。
本设计就是利用现有的模块(ANYBUS—S PN IO)开发出一种网关,通过对RS485和PROFINET的协议进行处理,完成两者的无缝连接,并在功能上形成统一。 1系统概述
图1为本系统的框图。图左侧以串行RS485为主要通信手段的架构;右侧以西门子S7 300建立PROFINET工业以太网;中间部分为以控制ANYBUS—S模块为基础单片机控制电路,同时这部分电路也设计了RS485接口,处理两侧的通信协议。 图1系统框图
2PROFINET和ANYBUS—S
(2011)
龙源期刊网 http://www.qikan.com.cn
2.1PROFINET简介
PROFINET是由PI(PROFIBUS International)组织制定,是以工业以太网技术为基础的自动化总线标准。它为工业现场通信提供了一套完整的解决方案,包括实时以太网、运动控制、分布式自動化以及网络安全等;同时,作为跨供应商的技术,它能够兼容现有的现场总线(如PROFIBUS)技术,保护现有投资。PROFINET基于工业以太网,采用存贮转发机制而非现场总线的共享方式通信,总线带宽和节点扩展能力大大。 2.2ANYBUS—S技术
ANYBUS—S是由瑞典HMS公司研发的、用于工业现场的产品的总称。通过它完成的代理器(proxy)的作用,使得本不具备网络通信能力的模块或者设备接入控制网络。 本设计使用的ANYBUS—S是应用于PROFINET网络的,它内嵌了PROFINET网络协议,并对于控制它的CPU没有太高的要求。所有的ANYBUS—S模块都有标准的应用接口,即34pin的排针。因此在开发ANYBUS—S模块时,最关键的就在于对它的标准34pin的操作。34pin各个端口的意义如表1所示。3 硬件设计
本设计的硬件设计有两部分,一部分是PROFINET接口电路,另一部分是RS485接口电路。前者通过控制ANYBUS—S的34pin,包括数据总线、地址总线和控制总线等等,完成模块的初始化;后者通过单片机控制芯片MAX485构成RS485接口,以便接入控制网络。 3.1PROFINET接口电路
根据上节给出的34pin接口及各个端口意义,设计了PROFINET接口电路。它主要由左侧的单片机最小应用电路,控制右侧的模块的数据总线、地址总线和控制总线等,通过编写的软件对模块进行配置,完成其初始化。电路如图2所示。 表1ANYBUS-S模块34pin各端口的意义
引脚名称意义1Vcc2GND[3]总线接口的电源3,4NC空引脚5Vcc6GND[3]模块供电电源7TxD8RxD[3]串行通信接口9-18A0-A9地址总线19-26D0-D7数据总线27/BUSY指示当前DPRAM在被模块使用,低电平有效28/IRQ指示握手寄存器(7FFH)有新消息,低电平有效29/RD输出使能,低电平有效30/WR输入使能,低电平有效31/CS片选端,低电平有效32/RESET复位端,低电平有效33A10第11位地址位34A11第12位地址位,扩展时使用图2 PROFINET接口电路
图2中,AYBUS—S模块中34pin接口由数据总线、地址总线、控制总线等等组成,它的串行通信接口只有在硬件升级中使用到,因此在这里的设计中没有涉及到。8位数据总线D0~D7依次接于单片机的P0~P7;12位地址总线A0~A11,由于模块中DPRAM的数据空间只有2K,即需要11位地址总线,则它的低8位接单片机P0口经74HC573锁存后的输出,
龙源期刊网 http://www.qikan.com.cn
A8~A10接P2.0~P2.2,A11接Vcc即可;控制总线包括/BUSY、/IRQ等等,接单片机的外部中断INIT0和INIT1。 3.2MAX485芯片
MAX485是专门用于RS485总线通信的芯片,如图3所示。它有8个端口,其中Vcc和GND为电源端,RO和DI分别是数据输出端和输入端,它接单片机的串行输入和输出。/RE是接收使能,低电平有效,DE是发送使能,高电平有效。一般情况下,两个使能端接到一个控制端口,即用单片机的一个I/O端来同时控制收/发状态。B和A为差分传输端口,与进行通信的另外的MAX485芯片的B和A相连。 3.3RS485接口电路
电路原理如图4所示,MAX485与单片机相应的控制和数据端相接,即它的RO和DI分别接单片机的串口RXD和TXD,收发控制端/RE和DE一起接到单片机的P1.0,这样用同一个端口来控制收发。
图3 MAX485芯片引脚图4RS485接口电路 4软件设计
本设计的软件设计,包括初始化和数据交换两部分。初始化部分完成ANYBUS—S模块的启动,并定义了I/O数据的大小等等;数据交换部分则完成下位应用程序和上位PLC之间的通信,即下位通过单片机扫描的数据放入模块DPRAM的数据输入区域,并读取指定的数据输出区域,并进行处理。 图5系统软件框图 5结束语
通过对硬件电路的调试,证明该设计在技术上是可行的。本设计在硬件和软件都是分为两部分(RS485和PROFINET)分别设计的。完成了初始化,ANYBUS—S模块才具备建立PROFINET从站接口的功能;外围数字及模拟设计,保证了其他设备进入网络。同时,在不涉及模块初始化部分的前提下,通过修改外围电路,也可以接入其他的从站装置,从而减少成本,提高了灵活性。 参考文献:
[1]韩建波,杨志辉.基于RS485串行通信总线的电子抢答器系统[J].河北软件职业技术学院学报,2009(3).
龙源期刊网 http://www.qikan.com.cn
[2]Profibus International.PROFINE连接各个领域[J].仪器仪表标准化与计量,2001(2). (责任编辑:杜能钢)
因篇幅问题不能全部显示,请点此查看更多更全内容