Profibus-DP冗余电动执行机构通信系统
基于安全可靠,电力行业对现场总线有冗余的要求。针对此类要求,Profibus国际组织提出了《Specifi-cationSlaveRedundancyV1.2》从站冗余规范。现场总线控制系统中,可以冗余方式,将故障单元或串行链路自动切换到备用单元或者串行链路,实现系统不停机的无扰动切换。
电动执行机构作为过程控制系统基本驱动装置,通过驱动阀门、挡板等机械设备对介质流量、温度、压力等调节和控制,在火力发电过程中扮演着重要角色。因此研究和开发符合《SlaveRedundancyV1.2》的Profibus-DP电动执行机构,并应用于火力发电行业,提高Profibus-DP电动执行机构与控制系统之间通信的可靠性。
1、系统总体结构
Profibus-DP冗余电动执行机构通信系统分为主站和从站两类,主站又分为一类主站和二类主站。
(1)主站冗余。
一类主站是指PLC、PC或可做一类主站的控制器。一类主站与从站交换数据并控制整个DP通信网络。一旦一类主站出现故障,则会使其控制的所有从二类主站是指操作员工作站(如PC机加图形监控软件)、编程器、操作员接口等,完成各类站点数据读写、系统配置、故障诊断等。该项目采用装有西门子WinCC组态软件的PC机作为二类主站。
(2)从站冗余。
Profibus国际组织在2004年底提出了《Specifica-tionSlaveRedundancyV1.2》,该标准的制订确立了Profibus-DP的从站冗余规范。项目中以扬修2SA8冗余现场总线电动执行机构作为从站。
Profibus-DP冗余电动执行机构通信系统总体结构图如图1所示。
图1 系统总体结构图
2、冗余从站
冗余从站是指带有两个Profibus-DP通信接口的从站,而且两个接口之间具有特殊的冗余通信通道实现二者信息交互,工作时其中一个作为主从站通信接口,另一个作为备用从站通信接口。因此,冗余从站必须具有:至少2个连接;2个独立的通信接口;1个冗余通信信道(RedCom);独立的线路冗余连接。
冗余从站具有2个独立的Profibus-DP协议通信栈,对应于2个Profibus-DP总线接口。2个互为冗余的通信接口在系统组态和参数化过程中都需要被正确组态和参数化,需要给它们分配站点地址,2个接口的站点地址可以相同也可以不同,这依赖于冗余系统的构成方式。
冗余通道专门用来在冗余从站内部交换2个协议栈之间的组态信息、总线参数信息以及输入输出过程数据,同时完成冗余从站的主、备用通信接口的切换。冗余从站构架如图2所示。
图2 冗余从站构架图
2.1、冗余从站的初始化
在主从站的通信中,从站一般只能被动地等待主站的请求,然后才能执行数据交换,而进入此状态之前,必须由主站对其赋参数、配置初始化并诊断。
从站在上电后,即处于诊断状态,判断主站发来的Set_Slave_Add指令,以改变本身的默认地址,如不需要改变地址,从站将直接接受参数赋值指令。
2.2、冗余从站故障自动切换
当执行机构使用了Profibus总线接口之后,为了提高可靠性,可以采用双通道(冗余型)的Profibus总线通信板。2SA8电动执行机构具有双通道(冗余)的Profibus总线通信板,由执行机构决定哪个通道为工作通道(第一通道),控制电动执行机构运行操作。第二通道为被动通道(备用通道),只能将数据从电动执行机构传送到总线系统,因此,总线系统只能通过备用通道查看电动执行机构运行状态,而不能操作电动执行机构。
当工作通道发生故障,且备用通道可以进行用户数据通信,则自动切换到该备用通道。
报文和总线地址:2个通道可以被配置成使用不同的用户数据报文,2个通道的站地址可以自由选择。
切换准则:当不再能通过工作通道进行数据交换时,就必须切换到另一个通,如主站发生故障、DP连接发生中断(电缆断线)、ASIC损坏、RedCom故障。
从站在通过Profibus-DP通信网络进行通信时,启动看门狗定时器TWD对通信过程进行监视。TWD溢出,表示主从站通信接口发生故障,将故障通信接口模块输出至失效安全模式下,同时启动从站冗余切换操作。首先启动TOH,如果在TOH溢出前收到主站的传递数据请求则停止TOH,否则TOH溢出从站进入失效安全模式。因此,在发生故障后,将故障发生前从站的最后一次输出值作为从站有效输出的最长时间(TWD十TOH)。
3、Profibus-DP电动执行机构实现
3.1、硬件方案
选用一款高度集成的Profibus从站芯片,它可以用于Profibus-DPV1,可连接电动执行机构的主处理器,SPI接口可扩展E2PROM,掉电时存储用户参数;冗余通道采用FPGA实现,可以针对冗余从站的冗余信息交换需要随时定制接口,提高交换效率,避免使用双口RAM等昂贵器件,并可以大集成冗余从站中其他数字逻辑,节省电路板空间。
电动执行机构本体是公司目前正常生产的执行机构,与Profibus-DP冗余通信板之间通过串行通信方式交换数据。由于Profibus-DP物理层是RS-485接口,因此在驱动电路部分按照Profibus规范进行设计,采用光电隔离芯片实现底层信号传输,通过设置终端电阻,保证信号阻抗匹配。
3.2、软件设计
软件主要分为3个部分:数据链路层控制器的初始化及中断处理、Profibus-DP站状态机、冗余协议栈实现。数据链路层控制器在上电复位后即进行初始化,配置各个寄存器。中断处理程序处理发生的各种事件,包括参数化、全局控制命令、进入/退出数据交换状态事件、配置下载、设置从站地址、检测到波特率、看门狗溢出等。Profibus-DP从站状态机严格按照Profibus-DP协议要求实现。
冗余协议栈软件实现主要考虑冗余状态机跳转及冗余通道设计。冗余状态跳转同Profibus-DPJ、X站状态机及冗余通道数据交换联系紧密,在系统设计时采用单CPU方案,用软件实现冗余通道,可以保证冗余数据交换的实时性。试验证明,冗余数据交换的实时性及冗余状态机的及时切换是冗余电动执行机构可靠运行的前提。
3.3、GSD文件设计要点
GSD用来描述DP设备的特性数据文件。GSD文件包含了设备所有的参数定义,包括设备所支持的波特率及DP功能、参数说明、诊断数据的含义、模块定义等。数据对象的指定由GSD文件中的模块预先定义。协议实现符合冗余从站规范要求,在GSD中需要增加一些关键字:
这样冗余DP主站才能配合从站的切换,及时发出切换报文PRM—CMD。
4、PLC组态
采用西门子STEP7V5.4组态软件对PLC编程,首先,要对软件进行硬件组态。在硬件组态之前,还需建立PLC和STEP7的通信,因为PLC组件具有2个CPU,所以,需使用路由器,并在CP443-1和路由器中设置正确的IP地址以保证通信的正常。
4.1、PLC硬件组态
根据客户要求的不同,PLC的硬件组态分为2种:模块不同地址(见图3)和模块相同地址(见图4)。如果客户要求相同的地址,则采用2种方式都可以,如果要求2个模块具有不同的地址,则必须采用第一种组态方式。
第2种组态方式,必须在GSD版本5中才能实现,需增加一些关键命令:
PrmCmd_supp=1
//支持PrmCmd
Slave_Max_Switch_Over_Time=3
//模块最大切换时间
Slave_Redundancy_supp=8
//支持冗余规范
4.2 PLC软件编程
程序中几个重要信号定义:
M2.0//读非周期数据
M2.1//写非周期数据
MW3//槽号
MB5//索引
MW6//故障记录
图3 模块不同地址的硬件组态
图4 模块相同地址的硬件组态
(1)电动执行机构控制程序。
电动执行机构开向运行逻辑(关向同理):
A(
O M 0.0 //开按钮
O Q 0.5 //开自锁
)
AN Q 0.4//关互锁
AN Q 0.6//停止
AN Q 0.7//紧急
AN I 4.2//行程限位
AN I 4.0//力矩限位
= Q 0.5//电动执行机构开
(2)非周期性数据读写。
非周期数据的读写需调用SFC59和SFC58数据块。
读程序:
CALL "RD_REC"
REQ :=M2.0
IOID :=B#16#54
LADDR:=MW3
RECNUM:=MB5
RET_VAL:=MW6
BUSY :=M1.2
RECORD:=P#M100.0BYTE39
//非周期数据存放在MB100以后的39个字节里面
写程序:
CALL "WR_REC"
REQ :=M2.1
IOID :=B#16#54
LADDR:=MW3
RECNUM:=MB5
RECORD:=P#M100.0BYTE27
RET_VAL:=MW6
BUSY :=M1.2
(3)读取诊断数据:
CALL "DPNRM_DG"
REQ :=M40.0
LADDR:=W#16#0
RET_VAL:=MW24
RECORD:=P#M200.0BYTE20
BUSY :=M40.1
PLC编程完后,和硬件组态一起下载进入PLC组件中,如果PLC组件没有报故障,说明系统正常,已经建立PLC和从站的通信。
5、结语
介绍了一种基于Profibus-DPV1协议的电动执行通信模块的设计与实现,给出一种基于数据对象映射的现场总线协议转换方法。PI-china测试认证及实际运行结果表明该通信模块工作稳定,可靠性高,符合智能断路器实时监控与联网通信的要求。