SCC顺序控制图在水电站顺控流程中的设计及实现

2023-01-04 09:13:18邢本福夏国强张重越
水电站机电技术 2022年12期
关键词:程序段顺序控制编程语言

邢本福,夏国强,李 萌,张重越

(1.北京中水科水电科技开发有限公司,北京 100038;2.三峡水力发电厂,湖北 宜昌 443000)

0 前言

随着PLC产品的飞速发展、编程语言的多样化,在程序设计和应用方面对编程语言选择有了更高的要求。目前,PLC编程语言大致分为顺序功能图(SFC)、梯形图(LD)、功能模块图(FBD)三种图形化语言和语句表(IL)、结构文本(ST)两种文本语言;其中顺序功能图(SFC)编程语言具有流程可视化、程序易读、故障易查、编程简单、易维护等优点,在水电站开停机流程中得到了广泛应用。某巨型水电站改造前的开停机流程采用的是SFC编程方式,改造后的PLC采用的是傲拓科技自主可控高性能NJ600系列PLC,该PLC支持顺序控制图(SCC)而不支持SFC编程语言,以下主要对通过使用顺序控制图(SCC)图形化语言实现顺控流程的可视化编程进行阐述。

1 设计思路

顺序控制图(SCC)属于图形化编程语言,且执行逻辑是顺序执行,编程方式如图1所示。该流程图由开始框、执行框、条件框、结束框、连线组成。

开始框:开始框在每个顺序控制图中都必须有并且是唯一的,它是顺序控制图的开始,开始框无需设置参数。

执行框:也称为步属性框,当使用某种操作时,需要选用执行框,执行框中有13种基本操作,可根据需要进行选择。

条件框:用来判断一个条件是否成立,如果条件成立,就走“是”分支,如不成立就走“否”分支。

结束框:一般的顺序控制图都要有结束。结束框也无需设置参数。也有个别需始终循环执行的顺序控制图可以没有结束框。

结合顺序控制图(SCC)编程语言特点,最终确定了在执行框属性中选择调用程序,在调用程序段中写入执行框步号、步运行时间、步超时时间及启动下一步条件程序,通过执行框中的“启动下一步条件程序”来判断是否满足下一步执行条件,从而实现顺控流程中的设备顺序控制。

2 实现方法

2.1 建立数据库

以图1为例:在PLC编程软件变量表中建立顺控流程所需要的数据点,包括但不限于运行步号、步运行时间、步运行状态、步超时时间、下一步就绪、启动下一步条件满足。

运行步号:整型变量,用于上送,便于运行人员实时监视流程运行到哪一步。

步运行时间:整型变量,用于上送,以便运行人员实时监视流程本步运行了多长时间。

图1 顺序控制图(SCC)示意图

步超时时间:整型变量,步运行最长时间,如果步运行时间超过步超时时间,则发出步超时报警信号,并根据需要来执行中断流程或者跳转其他执行框。

(1)步运行:BOOL型变量,作为中间变量,执行顺控流程中对设备的操作。

(2)启动下一步条件满足:BOOL型变量,当此条件满足时,直接执行下一个执行框。

表1 设备执行逻辑名称

2.2 建立程序段

(1)根据顺控流程建立SCC顺控图程序,如图1所示。

(2)建立执行框读写程序,前面提到执行框支持13种基本操作,由于水电站顺控流程复杂且单个设备具有多种操作方式,因此执行框应选择“调用程序”基本操作属性,调用程序段内容应包含以下几个方面:对运行步号的读写功能;对运行超时时间的读写功能;对步运行属性的读写功能;对启动下一步条件的读写功能。通过对“程序段”编程,可以实现顺控流程中步运行时间监视、步运行超时报警、下一步启动条件读写、步与步之间转换等功能,逻辑如图2所示。

图2 执行框逻辑

(3)建立设备执行程序,水电站设备执行一般分为自动执行和手动执行2种操作方式,其中自动执行是根据顺控流程步运行状态直接触发,手动执行是运行人员在上位机进行下令触发,具体逻辑如图3所示。

图3 设备执行逻辑

(4)建立启动、中止SCC触发程序, SCC顺控图程序启动需要用EXEC功能块触发,流程执行异常中止需要用KILL功能块触发。如图4所示,“SEQ_S101_DI62”为S101流程启动信号, “RESET_SYN_ALL”为S101流程中止信号,通过二者信号的上升沿触发SCC流程启动、中止功能。

图4 SCC启动、中止调用程序

2.3 程序运行及监视

SCC流程执行过程中,已运行或正在运行的程序段颜色显示为红色,未执行的程序段显示为蓝色,方便技术人员实时观察程序运行到了哪一步,如图5所示。

图5 SCC运行监视

3 结束语

顺控流程在水电站机组运行过程中起着至关重要的作用,因此顺控流程设计的可视化、逻辑实现的清晰化、编程的简单化、维护便捷化在PLC编程中显得尤为重要,通过SCC顺序控制图对顺控流程的设计,使得顺控流程执行可视化、程序维护更加清晰易懂,减少了用户维护难度,相比其他编程方式,SCC顺序控制图在顺控流程方面节约了近30%的维护工作量。

猜你喜欢
程序段顺序控制编程语言
基于WinCC的物料小车控制系统设计与仿真
电动工具(2022年2期)2022-05-18 08:40:38
压力-体积转换在CFC编程语言中的实现解析
数控系统手轮回退功能的研究与实现*
Java编程语言的特点与应用
PLC顺序控制设计方法的深入探析
机电信息(2018年30期)2018-10-24 06:24:46
基于NC程序段的提高数控加工监控阈值与信号同步的方法*
浅谈不同编程语言对计算机软件开发的影响
电子制作(2018年1期)2018-04-04 01:48:36
智能变电站中顺序控制的功能分析与实现
浅谈智能变电站的顺序控制功能及应用
面向对象Web开发编程语言的的评估方法