由于用户项目设计需求的多样性,不管是AS侧的功能块,还是OS侧的块图标(Block Icon),PCS 7系统库中提供的标准电机(MOTOR)和阀门(VALVE)功能块都不能完全满足一般用户的多样性需求。因此,用户基本上都是采用自定义功能库方式(Customized Library)使用电机(MOTOR)和阀门(VALVE)功能块。下面就以我的一个项目为例,讲述一下我对PCS 7系统自定义电机(MOTOR)和阀门(VALVE)功能块的设计改进总结,并与大家一起共同探讨和分享:
一、AS侧电机(MOTOR)和阀门(VALVE)功能块设计
1、自定义电机(MOTOR)和阀门(VALVE)功能块作用:自定义电机(MOTOR)功能块用于助燃风机的操作控制;自定义阀门(VALVE)功能块用于管道出口电动阀、的操作控制。
2、设计要求如下:(1)能“远程(Remote)/就地(Local)”切换和操控;
(2)能“手动(Manual)/自动(AUTO)”切换;
(3)能“正向(Positive)/反向(Negative)或(Forward/ Reverse)”转动操控;
(4)与准备好(Ready On)、电气故障(Main Contactor Fault)、电气柜故障(MCC Cabinet Fault)等电气保护信号联锁;
(5)在电气联锁保护(Interlock)动作后,由操作员人工手动解锁(Unlock);
(6)正/反向转动操控时,均要有外部输出状态指示灯(Indicator Light Lamp);
(7)正/反向转动运行计时(Time);
(8)正/反向转动极限位置(Limit Switch)保护及阀位状态指示。
(9)带“试灯(Test Lamp)”操作按钮。
由右图示功能块可知,PCS 7系统库提供的标准电机(MOTOR)和阀门(VALVE)功能块均不完全满足以上功能,因此只有开发自定义的电机(MOTOR)和阀门(VALVE)功能块。
3、自定义功能块简介:(1)采用SCL开发工具。SCL的确是开发PCS7功能块的强大利器,我将电动阀的故障(Fault)和报警(Alarm)信号在WinCC中触发产生、报警归档(Alarm Logging)、过程值归档(Tag Logging),全部集成于该功能块的SCL编程中完成,省去了在OS侧项目中的额外组态工作量。这对于有多台相同电动阀的操控组态确实节约了不少时间,提高了组态工作效率。
另外,对于SCL开发工具,熟练掌握块参数属性(Block and Parameter Attributes)的定义使用极为重要,不管是在AS侧,还是OS侧,都可极大的提高功能块的开发时间效率。特别是掌握S7_m_c、S7_archive、S7_tasklist、S7_alarm_ui、S7_dynamic、S7_visible、S7_shortcut、S7_unit等这些块参数属性的使用。
(2)PCS 7系统库的标准电机(MOTOR)功能块触发报警(Alarm)功能是调用系统功能块SFB35(ALARM_8P),即:Generate Block-Related Messages with Values for 8 Signals;而自定义开发的电机(MOTOR)功能块则是调用系统功能块SFB34(ALARM_8),即:Generate Block-Related Messages without Values for 8 Signals。
由于SFB35(ALARM_8P)功能块的SD_1~SD_10端口引脚,共10个,采用ANY数据类型,用于报警消息(Alarm Message)使用的结合值(Associated Value或Auxiliary Value)。而每个SD_x端口引脚的ANY数据类型却要占用10Byte存储空间;而SFB34(ALARM_8)功能块省去了用于报警消息(Alarm Message)使用的结合值(Associated Value或Auxiliary Value)功能,从而为每个调用自定义(MOTOR)功能块时,生成的背景DB块节省下10Byte存储空间。
(3)在用SCL编程正/反向转动运行计时(Time)功能时,采用在满足条件后循环累加计数(Count)方式实现。简单方便,并节省了系统提供的计时器(Timer)和计数器(Counter),和繁琐的调用计时器(Timer)和计数器(Counter)的参数填写。
4、互为备用的电机(MOTOR)和阀门(VALVE)自定义功能块的设计简介:在很多电气工程实际应用中,存在大量互为备用的电机(MOTOR)和阀门(VALVE)操作控制。对于这种编程控制,我通常将其操作控制(Control)和联锁保护(Interlock)动作功能,全部做在一个功能块中。这即简化了CFC编程连线,又便于在一个CFC功能块中集中监控调试和故障分析查找。这种集成化的双电机(MOTOR)和双阀门(VALVE)操作控制功能是PCS 7系统库没有提供的。图示如下:
二、OS侧电机(MOTOR)和阀门(VALVE)FACEPLAE面板块图标(Block Icon)设计

1、由于用户需求与PCS 7系统库提供的标准FACEPLAE面板块图标(Block Icon)功能差距很大,所以OS侧电机(MOTOR)和阀门(VALVE)块图标(Block Icon)外观几乎完全改变,重新设计。
2、由于自定义开发的AS侧电机(MOTOR)和阀门(VALVE)功能块调用了系统功能块SFB35(ALARM_8P),能在WinCC中触发产生报警(Alarm)信号,所以OS侧的电机(MOTOR)和阀门(VALVE)FACEPLAE面板块图标(Block Icon),也必需并增设了报警(Alarm)显示FACEPLAE面板块图标(Block Icon)功能,外观见上图所示。
三、PCS 7系统电机(MOTOR)和阀门(VALVE)控制设计总结要设计一个完全能满足用户各种需求的电机(MOTOR)和阀门(VALVE)控制功能,通常都是采用自定义功能库方式(Customized Library)实现。自定义开发的PCS 7控制功能不管是AS侧还是OS侧,尽管规划、设计工作量较大,对开发人员技术和经验要求高,但对于规模大、数量多、功能类同的控制设备,却是编程组态时间效率最高、用时最短的方式。
对于AS侧而言,所用CFC组态连线少、清爽简洁,还易于功能块中集中监控调试和故障分析查找;对于OS侧而言,FACEPLAE面板块图标(Block Icon)外观丰富多变且功能集成。
管理员注:本帖已被纳入此次探讨发帖整理,请
点此详阅。