现场总线(Fieldbu)是80 年代末、90 年代初国际上发展起来的现场智能设备互连通信网络,是计算机网络适应工业现场环境的产物,经过十几年的发展已成为当今世界自动化技术的热点。据不完全统计,目前各类现场总线有40 多种,主要用于解决工业现场的智能化仪器仪表、控制器、执行机构等现场设备间的数据通信及这些现场控制设备与高级控制系统之间的信息传递问题。
目前较为流行的现场总线有FF 、LonWorks 、Profibus 、WorldFIP 、CAN 、HART (过渡协议)等。现场总线虽然必须设计成开放系统,但其网络结构并不需要保持与OSI 系统完全一致。现场总线采用了三3 层网络结构--物理层、数据链路层和应用层。流量控制和差错控制在数据链路层中执行,报文的可靠传输在数据链路层或应用层中执行。
1 PROFIBUS-DP总线
1.1 PROFIBUS-DP基本特性
Profibus-DP 的设计旨在用于现场一级的高级数据传输,在这一级中央控制器中(如可编程控制器PLC/可编程计算机控制器PCC/PC)通过高速串行线同分散的现场设备(如I/O、驱动器、阀门)进行通讯。中央控制器(主站)周期的读取从站的输入信息并周期的向从站发送输出信息,数据通讯由主站和从站进行监控。使用Profibus-DP可以取代昂贵的24V或4-20mA的并行信号传输线,它具有以下显著优点:(1)采用数字化通讯,稳定、可靠;(2)实现省配线化;(3)传输速度高;(4)高层的信息传输;(5)功能分散、危险分散;(6)互换性、可操作性好。
Profibus-DP网络是一个主站/从站(Master / Slaver)网络,典型的DP 配置是单主站结构。DP 主站与DP 从站之间的通信基于主从原理,主站具有总线控制权,可以向总站发送信息,而总线上的DP 从站仅仅是对主站作有关应答或响应。一个DP 系统也可能是多主系统。
1.2 Profibus-DP 总线拓扑
Profibus-DP 系统有两种总线拓扑结构:一种是RS485 ,采用屏蔽双绞线,拓扑结构为总线型,通信速率为9.6kbps/1200m, 12Mbps/100 m ,每段最多节点数为32,不支持总线供电和本安;另一种是采用光纤,用于电磁兼容性要求高和长距离要求的场合。
1.3 PROFIBUS-DP通信原理
PROFIBUS采用现有的国家和国际标准,其协议以国际ISO(国际标准)标准OSI(开放系统互连)参与模型为基础。Profibus-DP采用了参考模型的第一层物理层,第二层数据链路层和用户自己定义的用户层。
Profibus-DP的物理层与OSI参考模型的第一层相同,其主要功能是利用物理传输介质为数据链路层提供物理连接,以透明地传送比特流,符合EIARS485标准(也称H2),半双工方式,根据最大传输率的不同,可选用双绞线和光纤2种传输电缆。
在数据链路层中,PROFIBUS-DP 使用混合的总线存取控制机制来实现如下两个目标:同一级设备之间的通讯必须使每一个总线节点在确定的时间范围内能够获得足够的机会来处理它自己的通讯任务,同时在实现主从数据快速交换时花费很少的协议开销。它包括用于主站间通信的分散的令牌传递机制和用于主站与从站间通信的集中的主-从机制,符合欧洲标准EN50170V.2。Profibus-DP的总线存取控制机制与所使用的传输介质无关,每个DP 节点有一个总线上惟一的地址,报文用节点编址的方法组织。
令牌总线机制:令牌介质存取中令牌是一种特殊的电文,它在主站间传递控制权。连接到Profibus 网络的主站按它的总线地址(由总线存取控制MAC 程序自动判定总线上所有主动节点地址并记录在主动站表LAS 中)的升序组成一个逻辑令牌环。当某个主站得到令牌后,该主站就被允许在以后的一段时间内执行主站工作。根据主从站关系表给其它的主站或从站发送帧,直到发完或规定的时间到,再把令牌按令牌环规定的顺序传给其它主站。具有总线地址HAS (最高站地址)的站点例外,它只传递令牌给具有最低总线地址的站点,以使逻辑令牌环闭合。在单主方式中不存在令牌的传递。
在讨论主站模块EX450与带从站模块IF361、IF661的从站通讯时,应先讨论主从站之间的介质存取规约:主-从方式。主-从方式的介质存取控制与局域网标准不同,它符合OSI参考模型数据链路层中的非平衡正常响应模式,主站与从站之间传送帧的结构与上面的令牌帧的结构不同。在主-从方式下,由一个主站控制着多个从站,构成主-从系统。主站发出命令,从站给出响应,配合主站完成对数据链路的控制,一个主站应与相关的多个从站中的每一个从站建立一条数据链路,从站可以发送多个帧,直到以下一种情况发生为止:从站没有信息帧可发送,未完成帧的数目已达最大值或从站被主站停止。典型的Profibus-DP 总线配置是以主-从总线存取程序为基础的,一个主动节点(DP 主站)循环地与被动节点(DP 从站)交换数据。
2 基于Profibus 一DP 主从通信
2.1硬件部分
PROFIBUS通信的实现主要由带PROFIBUS通信接口的中央处理器或通信模块完成,通信模块有DP 从站、DP 主站、FMS 站及混合DP 和FMS 的通信模块。本文实验是基于奥地利贝加莱(B&R) 公司的相关产品在贝加莱-东华大学工业自动化联合实验室中进行的,以通过PROFIBUS -DP网对下位对象的控制为例介绍PROFIBUS 一DP 网通信的实现。本实验系统网络结构如图1 所示,其中主站为B&R公司的2005 系列,CPU 为CP260 或IF260 ,主站通过网络模块EX450 挂接到Profibus - DP 网上。当用EX450 作为主站模块时,可带具有IF361 、F661 或其它接口模块的从站127 个,也可带具有Profibus 一DP 口的其它设备,如B&R公司的PROVIT 图文显示操作站、ACOPOS 伺服装置、PANEL WARE 人机界面模块等等,或其它公司的一些产品,如Siemens 公司的ET200系列。两 个从站选用两种不同配置,其中一个为2003 系列,网络接口模IF361 ;另一个为2005 系列,接口模块为IF661。接口模块IF36l 与IF661 内部采用的都是西门子 公司ASICs 芯片SPC3 , SPC3 是一种用于从站的智能通信芯片,支持Profibus-DP 协议,可独立完成全部Profibus-DP 通信功能。
两从站下面挂接的实验控制对象为:
1)电梯控制模型:本实验电梯模型为五层;
2)立体仓库搬运系统模型:自动化立体仓库是近年来国际上发展迅速并得到广泛应用的一种新型仓储方式,其主要被控设备为巷道堆垛机,用于立体仓库中搬运和存取货物。主要进行仓库物品搬运存取研究。本实验仓库模型共有四条巷道,每条巷道都有一入库台和一出库台,八排货架。堆垛机有入库、出库、拣选、盘库四种工作方式。
2.2 软件部分
2.2.1网络组态
上位机中装有B&R PCC 通信程序开发平台Automation Studio (AS)软件及B&R Fieldbus
Configurator(Sycon)网络配置软件,分别用于对PCC 编程和对Profibus-DP 网进行组态、通信设置及监控。
PROFIBUS-DP网络的配置相当灵活,网络允许单子网或多子网配置,既可以单主-从网络,
又可多主-从网络。通过B&R 公司软件B&R Fieldbus Configurator可对整个网络进行配置,设置相关的参数。通过该软件,不仅可配置PROFIBUS-DP网络,对InterBus , CANopen , DeviceNet , ControlNet , SDS , As-Interface 都可以进行相关配置。组建Profibus-DP 网络的设备通过读取相应GSD 文件而加人到同一总线系统中。GSD文件是电子设备数据文件。为了将不同厂家的Profibus 产品集成在一起,生产厂家必须以GSD 文件方式提供这些产品的功能参数。GSD 文件应该包括3 个部分:总体规范(生产厂商和设备名称、硬件和软件版本、波特串等)、与DP 有关的规范(主站的各项参数)、与DP 从站有关的规范(输人输出通道数、 类型、诊断数据等)。从站与主站之间的通信是通过使用设备数据库文件(GSD )实现的。另外,B&R 公司软件FieldBus Configurator 还可以用于对整个网络进行诊断,并可对网络的通信信息进行监控。本系统由B&R 公司软件FieldBus Configurator组成的网络配置如实验网络组态诊断图可向作者索取。
系统具体配置过程如下:
1)通过GSD 文件组态网络,设置网络波特率、主从站地址,给从站模块在主站内存区分配映射缓冲区,确定映射区起始地址及大小(从站在主站缓冲区中分配的映射区是连续的),将配置文件下载至EX450 。
2)从站IF361是在程序中设置从站地址及波特率的,而从站IF661从站地址是通过硬件拨
码设置的,此拨码设定须与主站配置软件中的设置一致。
3)将两从站由AS编写的通信程序通过模块上的RS232 口下载至对应模块。
4)在B&R Fieldbus Configurator软件诊断模式下测试整个网络,查看从站激活情况(见图 2),然后由软件生成主站通信程序所需要的网络配置数据模块。
5)在主站程序中加人主站的PROFIBUS-DP库,并加人上面生成的数据模块,编写主站通信程序,下载至主站CPU 中。
2.2.2通信编程
从站程序主要设置从站缓冲区大小,及实现主站相应缓冲区与从站缓冲区的数据交换。它并不参与数据交换的协调过程,整个数据交换过程完全由主站程序控制。主站程序中,首先在初始化程序段通过INIT 函数初始化模块,并检查网络配置模块是否存在(标志变量与Config是否为1 )。如果标志变量Config 与run 都为1 ,直接调用I/O函数进人循环数据交换阶段。如果标志变量Config为0 ,调用CONFIG命令将配置模块传送到通信模块中。如果标志变量run为0 ,说明当前未在数据交换阶段,那么调用START 函数开始数据交换,进人循环数据交换阶段。在循环数据交换阶段,通过IO函数复制需传送的数据到相应的缓冲区中,由COMMAND 函数检查总线状态,判断总线是否忙,并进行同步处理。由SLAVESTATE 函数来诊断当前网络从站是否存在并处于激活状态,并由SlaveExtStat 函数给出详细的从站状态信息,如果一切正常的话,配合从站程序,实现从站程序缓冲区与主站缓冲区中的数据交换,最后由Stop终止数据交换。主站通信控制程序流程如主站通讯程序流程示意图略可向作者索取。
2.3 应用实例
在2003系列下挂的是电梯控制实验对象:设置的从站输入映射点主要有手动/自动选择开关、第X层楼上召唤按钮、第X层楼下召唤按钮、第X层楼主令按钮、第X层限位开关及启动、开门、关门、上升、下降按钮,从站的输出映射点主要有第X层楼上召唤记忆显示、第X层楼下召唤记忆显示、第X层楼主令记忆显示、正转继电器、反转继电器、开/关门指示、上升指示、下降指示及急停按钮。主站PCC通过Profibus-DP总线不断的与从站输入缓冲区交换数据来得到当前电梯的所有状态参数,交由主站PCC应用程序处理,然后把所得的控制参数送至从站输出缓冲区中。从站PCC同样不断的与主站的输出缓冲区做数据交换,根据获得的参数对当前电梯的运行状态作出控制。
在2005系列下挂的是仓库搬运实验对象:设置的从站输入映射点位堆垛机当前位置,输出映射点位堆垛机最近入库台(拣选台)地址、货箱地址。而操作方式及所需搬运货箱号是通过仓库管理系统操作站上VB编写的应用程序来设定。VB通过OPC程序接口与主站PCC中的AS相连,把设定数据送入主站PCC的数据模块中,供应用程序处理。然后主站PCC把得到的最近入库台地址及货箱地址由Profibus-DP送到从站输出缓冲区中,从站执行响应操作。
3 结语
本文从研究的角度讨论了Profibus -DP网络的基本特性、拓扑形式、通信原理等,结合具体的实验系统介绍了实现该网络主从通信的具体方法并取得了良好的实验效果。在本文所论述方法的基础上,通过修改应用程序可以很好地满足实际工程中主站对从站的配置监控、主从站数据通信等要求,具有很广泛的通用性。
由于Profibus -DP的开放性、实时性好,数据传输速度快,系统实现简单,可靠性高,符合现代工业网络发展的趋势,必将在未来一段时间内得到广泛的应用。
参考文献
[1] 阳宪惠,魏庆福,徐田娥.现场总线技术及其应用[M].北京:清华大学出版社,1999.
[2] 齐蓉,肖维荣.可编程计算机控制器高级技术,西北工业大学出版社,2002 .
[3] B&R 公司.B&R FieldBus Configurator 用户手册.
[4] 张浩,谭克勤,朱守云.现场总线与工业以太网络应用技术手册(第一册),上海科学技术出版社,2002 .