资源描述:
多语言编程在高炉喷煤P L C 控制系统 中的应用 Ap p l i c a t i o n o f S F C i n P L C C o n t r o l S y s t e m o f P u l v e r i z e d C o a l I n j e c t i o n 摘要 为了解决用梯形图语言编写顺序控制设备时所存在的编程复杂, 理解困难等问题 ,引入P L C的顺序功能图来编程是一种非常有效的方法, 该方法具有编程简单而且直观等特点。本文以某高炉喷煤系统单罐循环的 控制为例,采用顺序功能图与梯形图、功能块 图相结合的方法编写控制程 序,与以往常用的梯形图、功能块图编程方法相比具有简单、直观、逻辑 性强等特点,大大提高了编程的效率。 关键词多语言;编程 ;P L C;应用 Ab s t r a c t F o r r e s o l v i n g t h e c o mp l e x i ty a n d i n d i g e s t i b i l i t y i n p r o g r a mmi n g f o r s e q u e n t i a l c o n t r o l b y u s e o f t h e l a d d e r d i a g r a m ,i t i s a n e f f e c t i v e me t ho d t o p r o g r a m t h e s e q u e n t i a l c o n t r o l b y ma k i n g u s e o f t h e S e q u e n t i a l F u n c t i o n a l Ch a r t S F C o f P L C . T h i s me tho d i s o f s i m p l e a n d d i r e c t c h a r a c t e r i s t i c s . T h i s p a p e r u t i l iz e s the me tho d o f S F C c o mb i n in g wit h L a d d e r d i a g r a m an d F u n c ti o n b l o c k d i a gra m t o p r o gram the P u l v e r i z e d C o a l I n j e c t i o n c o n t r o l s y s t e m o f B l a s t F u r n a c e . Co mp a r i n g wi th t h e me tho d o f La d d e r dia g r am a n d F u n c t i o n b l o c k d i a gra m, we c a n s e e tha t thi s me t h o d i s mo r e s i mp l e , dir e c t a n d l o g i c a l , an d it i mp r o v e s t h e p r o g r a mmin g e ffi c i e n c y . Ke ywo r d s S F C; P r o g r a m; P LC; Ap p l ic a ti o n 1 引言 在现代工业控制 中,由于生产工艺的复杂性 、多样性的特 点,对自动控制系统的要求也必然越来越高 。在实践中,我们往 往发现 ,在解决复 杂性 问题时单独使用一种编程语言会有局限 性 ,无形中增加了工作难度。而 目前大部分的工控软件都会提供 多种编程语言,常见的编程语言有梯形图、功能块图、指令表、 结构文本 、顺序功能图,每种编程语言各具特点。如果我们在实 40 苦 醯 咀置A U T O M A T I O N P A N O R A M A 2 0 1 1 .0 8 北京首钢自动化信息技术有限公司张玉红,钱崇东 践中针对各种复杂的控制要求或难点能灵活地运用各种语言进行 混合编程,往往会产生事半功倍的效果。 高炉喷煤技术 已成为节焦 、增铁 、降低成本 、改进高效冶 炼效果和促进高炉顺行的主要措施 ,也是 当今世界高炉冶炼技术 进步的主要方法。但要实现连续 、稳定、均匀的喷吹系统的P L C 控制却较为复杂 。采用多语言混合编程,就能起到良好的效果 。 现以该系统中的最主要的部分喷吹罐单元循环操作的控制为例 , 具体 阐述混 合编程在项 目中的应用 。在该项 目中控制系统采用 Q u a n tu m的6 5 1 5 0 控制器,编程软件采用U n i t y P r o X L v 4 . 0 。 2 高炉喷煤喷吹罐单元的控制要求 高炉喷煤是从高炉风口向炉内直接喷吹磨细了的煤粉 ,以替 代焦炭起提供热量和还原剂的作用,从而降低焦比 ,降低生铁成 本,它是现代高炉冶炼的一项重大技术革命 。 高炉煤粉喷吹工艺主要包括以下3 步 煤粉从煤粉仓进入喷吹罐,这是批料处理的一部分。在批料 处理中,喷吹罐可以装料、充压、保持、喷吹或减压,保证气动 输送管道上不断有煤粉通过。 从喷吹罐出来的输送管道中的单流煤粉在混合器中与输送空 气混合,并运送到高炉附近。 单流煤粉和输送空气的混合物进入分配器 中,并平均分配到 各喷吹管道 ,喷吹管道将其输送到各风口。 某高炉喷煤系统包含三个喷吹罐单元 F T - 3 4 1 0 、F T - 3 4 2 0 、 F T - 3 4 3 0 ,每个喷吹罐单元包括1 个喷吹罐 ,1 0 个电磁阀,3 个调 节阀,如图1 所示。喷吹罐可以进行连续批料循环,通过输送管线和混合器 将煤粉 从煤粉仓运到煤粉输送管线中。一个喷吹罐单元完整的喷吹周期包 括准备过程和喷吹过程 。1 个喷吹罐喷吹,另2 个喷吹罐就准备 。这样就可 以保证不断向高炉提供煤粉。 图1 F T - 3 4 1 0 单元设备示意图 准备周期又包含以下几个阶段 减压 阶段 喷吹罐压力从喷吹压力降至大气压 2 0 K P a 。打开泄 压阀P B V 3 4 1 2 2 ,喷吹罐通过连接到煤粉仓卸压过滤器的减压管线减压。 装料 阶段 煤粉在大气压下通过重力作用,通过装料阀P B V3 4 1 3 1 和 P B V 3 4 1 3 2 ,将煤粉从煤粉仓装填到喷吹罐中。 充压阶段 喷吹罐内压力从大气压加到喷吹压力,此过程又可细分为 以下步骤 等待过程 只发生在喷吹率非常低的情况下 。 慢速充压过程 在慢速充压阶段 ,通过进入喷吹罐的流化、 缓慢 加 压 。 压阀P B V3 4 1 1 4 进行充压。如果喷吹罐中的压力在规定范 围内过高,打开放散阀P B V3 4 1 2 1 进行减压。 在一个喷吹罐投入循环操作过程之前 ,首先应使阀组 内的各阀处于适当的位置 ,即各阀进行初始化操作 。在初 始化操作结束之后,喷吹罐就可以进入完整的循环过程 。 一 个喷吹罐完整的操作顺序可用图2 表示 满足启动条件 喷吹罐料满 喷吹罐压力满足 当前正在喷吹的罐结束喷吹 喷吹罐料空 喷 吹罐压力满足装料 7 图2 单罐循环操作 示意图 在循环操作的各个过程中 ,喷吹罐阀组中各阀需要按 照规范进行操作。 在初始化过程中 ,阀组内各阀应按照以下的顺序动 常压氮气 作 快速充压过程 正在喷吹的罐几乎变空的时候得到快速充压信号。通 过充 压 阀P BV3 41 1 4 完成 。 保持阶段 保持原状态 ,直到当前正在喷吹的罐完成喷吹周期 。在保 持阶段 ,喷吹罐的压 力通过压力控制阀在设定范围内随着正在喷吹罐的压 力变化而变化。极端情况下还可以使用加压阀P B V 3 4 1 1 4 进行充压 ,压力过 高时打开放散阀P B V 3 4 1 2 1 进行减压 。 喷吹过程是从喷吹罐达到 “ 停止喷吹的重量”开始的。正在喷吹的喷 吹罐喷吹 阀关闭的同时 ,处于保持 阶段喷吹罐的喷吹阀P B V3 4 1 7 1 立即打 开,并关闭疏松阀P B V 3 4 1 6 1 ,这就保证了换罐时高炉不会出现喷煤中断。 在喷吹过程中,通过压力控制阀控制喷吹罐中的压力,极端情况下使用加 1 喷吹阀P B V3 4 1 7 1 关闭 2 疏松阀P B V3 4 1 6 1 打开 3 压 力阀P B V3 41 1 2 关 闭 4 充压阀P B V 3 4 1 1 4 关闭 5 减压阀P B V3 4 1 2 2 打开 6 装料阀1 P B V3 4 1 3 1 关闭 7 装料阀2 P B V3 4 1 3 2 关闭 8 采样除尘阀P B V3 4 1 3 3 打开 9 放散阀P B V3 4 1 2 1 关闭 1 0 事故阀P B V3 4 1 4 1 打开 在阀组 内各阀都按上述要求动作并处于正确的位置 2 0 1 1 o 8 A U T O M A T I O N P A N O R A MA 萄痂 揖盛 41 后,如果满足单罐循环的启动条件 ,则进入装料阶段。 在装料阶段 ,启动装料的顺序是 1 采样除尘阀P B V3 4 1 3 3 关闭 2 装料阀2 P B V3 4 1 3 2 打开 3 装料阀1 P B V 3 4 1 3 1 打开 在喷吹罐填充装料期间 ,重量将达到 “ 料满”信号,这个信 号启动下列停止装料顺序 1 装料阀1 P B V3 4 1 3 1 关闭 2 装料阀2 P B V3 4 1 3 2 1 5 秒延时后关闭 3 采样除尘阀P B V一 3 4 1 3 3 打开 喷吹罐结束 “ 装料”阶段,开始进入 “ 充压”阶段 。如果单 罐循环启动时喷吹罐已经处于料满的条件下 ,将跳过装料阶段而 直 接进 人充 压 阶段 。 在充压、喷吹 、减压等各阶段,阀组内各阀也将按照规范进 行动作。在这里就不一一细说了。 在所有阶段 中,包括装料 、充压 、保持、喷吹、减压阶段 , 喷吹罐都要通过流化气控制阀F C V - 3 4 1 5 2 进行流化调节。且在所 有阶段中,下列操作不允许手动 在P B V 3 4 1 3 1 没有关闭的情况下打开P B V 3 4 1 3 3 ; 在P B V3 4 1 3 3 没有关闭的情况下打开P B V 3 4 1 3 1 ; 在喷吹罐压力 2 0 k P a 的情况下打开P B V 3 4 1 3 2 。 实际生产中,在正常情况下高炉喷吹系统的每个喷吹罐单元 都将按上述规定 自动执行循环操作。但在调试、检修及事故情况 下 ,还必 须允 许操 作人 员对单 体 设备进 行远 程手 动操 作 。 3 多语言编程的准备工作 我们常见的P L C 编程语言有梯形 图、功能块图、指令表、结 构文本 、顺序功能图。在高炉喷煤喷吹循环的控制中,重点应用 了顺序功能图、并以功能块图及梯形图为辅助应用。 梯形 图 L a d d e r D i a g r a m,L D是使用得最多的P L C图形编 程语言 。梯形图与继 电器电路图很相似 ,具有直观易懂的优点, 很容易被工厂熟悉继 电器控制的电气人员掌握 ,特别适合于数字 量逻辑控制。梯形 图由触点 、线 圈和用方框表示的指令框组成。 触点代表逻辑输入条件;线圈通常代表逻辑运算的结果,常用来 控制外部的负载和 内部的标志位等 ;指令框用来表示定时器、计 数器或者数学运算等附加指令。 功能块图 F u n c t i o n B l o c k D i a g r a m,F B D使用类似于布尔 42 i -w - d l A U T O MA T I O NP A N O R A MA 2 0 1 1 0 8 代数 的图形逻辑符号来表示控制逻辑。一些复杂的功能 例如数 学运算功能等 用指令框来表示 ,有数字电路基础的人很容易掌 握。功能块图用类似于与 门、或门的方框来表示逻辑运算关系, 方框的左侧为逻辑运算的输入变量 ,右侧 为输 出变量 ,方框被 “ 导线”连接在一起,信号 自左向右滚动。 顺序功能 图 S e q q u e n t i a l F u n c t i o n C h a r t ,S F C 是一种位于 其他编程语言之上的图形语言 ,用来编制顺序控制程序。在这种 语言 中,工艺过程被划分为若干个按顺序出现的步 ,步中包含控 制输 出的动作 ,从一步到另一步的转换由转换条件控制。用顺序 功能 图表达复杂的顺序控制过程非常清晰,用于编程及故障诊断 更为有效 ,使P L C 程序的结构更加易读,它特别适合于顺序控制 过程 。 一 个顺序控制过程可 以分为若干个状态 ,状态与状态之间由 转换分隔,相邻的状态具有不同的动作 ,当相邻状态之间的转换条 件得到满足时,就实现状态的转换,即上一个状态的动作结束而下 一 状态的动作开始 ,描述这一过程的方框图称为顺序功能图。 顺序功能 图主要由步 、转移和动作三大要素组成 ,如 图3 所 不 图3 由三个步构成的S F C 结构 步是一种逻辑块 ,即对应于特定的控制任务的编程逻辑。对 应于系统初始状态的工作步,称为初始步。步只有处于 活动状态 时 ,相应的动作才被执行 。 动作是步中的独立部分 ,表明步中要执行的逻辑任务。每一 步可以没有动作 ,也可以有多个动作。 转移就是从一个步过渡到另外一个步时的切换条件 。它只能 是B O O L 类型的数据。只有该转移的前步 为活动步且该转移条件 满足时 ,才能失活前一步,激活下一步。 S F C 的基本结构可分为单序列 、选择序列、并行序列和复合 序列几种 。单序列结构没有分支 ,它是单流程重复形式 ,动作不 断重复循环。选择序列的结构有分支,根据分支转移条件来决定 究竟选择哪一个分支。若在某一步执行完后,需要同时起动若干 条分支,那么这种结构称为并行序列。复合序列就是一个集单序 列、选择序列、并行序列于一体的结构。 由于每种工控软件 中的S F C 编程语言 的用法会稍有区别,为 方便读者阅读 ,在U n i t y P r o 软件的S F C 编程语言 中各种步示意及说 明见表1 。 表1 U n i t y P r o 软件的S F C 语言中各种步示意及说明 类型 表 示形式 描述 正常步 l 在创建步时,系统会为步分配一个默认的 S I _I l 名 字 , 用 户 也 可 以 更 改 步 名 。 l 初始步 I 在对 项 目或 序列字 符 串进行 初始化 后 ,初 l S 1_ 2 0 始 步 变 为 活 动 状 态 。 通 常 不 会 对 初 始 步 分 l 配任何 动作 。 宏步 宏步用于调用宏段 。进而调整顺序控制的 I 层次结构 。宏段包括一个序列字符 串, l M S 1 I I 该 字符串 的 主 要元 素与 ” 序列 控制 ” 段相同 l 一一 l 例如步、初始步,宏步、转换、分支 l 结点,等等 。每个宏段的开头还包含一 个输入步,结尾包含一个输出步。 输入步 l 每个宏段中只能放入一个输入步。可以为 l M S 一 一 l 输 入 步 分 配 动 作 。 I 输 出 步 I 每 个 宏 段 均 以 输 出 步 结 束。 且 只 能 放 入 一 lM s 1 1 ou1l 个 输 出 步 。 不 能 为 输 出 步 分 配 动 作 。 l 一 一 一 l ‘ l 跳转 跳转用于表示未完全显示的有向链路 跳 转符号中显示的是目标步 跳转目标的 名称。多个跳转可以有 同一个 目标步。跳 转目标用跳转目标符号 指示。 4 分析控制要求确定编程的思路 笔者对控制要求进行分析 后发现 ,整体系统包含三个喷吹 罐单元 ,但三个单 元执行 的功 能和操 作是相同的 ,只是在时间 上有些延迟 ,以保证在一个 时刻 只能有一 个罐处于喷吹阶段 。 所以 ,我们只要完成了单罐 的控 制程 序,然后稍加处理就可以 完成三罐的整体控制 。因此控制 的重 点就 落在 了单罐的循环动 作控制上 。单罐循环操作的控制主要体现在 1 O 个 电磁阀和3 个调 节阀的控 制上 。对于调节阀的控制,笔者认 为使用常用的L D进 行编程控制就可 以满足要求 ,而且一 般的工控 软件会提供一些 内置的调节控制功 能,在使 用起来也比较得心应手 。对于阀组 的控制 ,又分为两种情况 在 自动控制模式下每个喷吹罐在不 同的阶段间进行循环 ,且在每个阶段阀组内各阀都要按照设定 的动作倾序执行 。这属于比较典型的顺序控制要求 ,使用S F C 进 行编程相对比较容易 。而在手动控制模式下 ,阀组内各阀的控 制基本上属于数字量逻辑控制,使用常用的F B D或L D编写控制 程序会相对简单 、明了 。然而 ,不管是 自动控制模式还是手动 控制模式 ,控制的对象是相同的 。如果我们单独使用一种语言 进行编程 ,必然会顾 此失彼。综合考虑后 ,确立了用S F C 与F B D 相结合的方法编制阀组控制程序 ,这样就能兼顾两者的优势 , 势必形成事半功倍的效果。 自动模式下,单罐循环动作过程控制主要采用S F C中的单序 列结构为主 ,选择序列为辅进行控制 ,选择序列主要用于步间的 跳转 。由于喷吹罐在初始化 、装料、充压、喷吹、减压等阶段又 分别包含多个动作,为使程序具有良好的可读性 ,充分利用U n i t y 软件的特点,为每个阶段采用宏步的方式进行编程。这样就可 以 对整个循环过程按阶段进行分割,构成结构化的循环控制过程。 在S F C、 L D、F B D之间,通过项 目的变量 I / O变量或内部 变量进行数据的传递 ,使整个项目成为一个有机的整体 ,实现 对设备的完整控制。在S F C中用到的转换条件,如 “ 是否满足循 环启动条件”、 “ 料满”、 “ 料空”、 “ 罐压力满足”等 ,将在 L D或F B D中进行逻辑判断 ,判断的结果通过 中间变量传递到顺 序功能图中。 p S F C中的转换条件在梯形图或功能块 图中进行判 断。另一方面,如阀组内各阀的控制在F B D中编制控制逻辑 ,如 图4 所示 。 自动控制模式 自动控制命令 手动控制模式 手动控制命令 手动联锁条件 阀输出线圈控制 图4 F B D中阀控制逻辑示意图 图4 中的“ 手 动控制 命令”可 以直 接接受操作 员指令 。但 “ 自动控制命令 ”则在S F C 的步动作 中发出命令 ,通过中间变量 传递到功能块图中参与逻辑控制。 所 示 5 单罐动作循环控制要求的实现 根据F T - 3 4 1 0 喷吹罐的控制要求编制的顺序控制流程图如图5 2 0 1 1 0 8 A U T O MA T I O N P A N O R A MA苗 晌硼 隔 43 没 图5 单罐循环操作顺序控制流程图 在图5 所示的顺序控制图中,包含了五个宏步 ,分别为 “ 宏 步 一初 始化 ” 、 “ 宏 步一装料”、 “ 宏步一 充压”、 “ 宏步一 喷吹” 和“ 宏步 一减压”,分别代表实际生产中喷吹罐初始化 、装料、 充压、喷吹、减压五个阶段 。其中每个宏步调用一个宏段,每个 宏段可视为一个 “ 子顺序控制段” 。这五个宏段通过转换连接起 来 ,就完成了单罐循环过程的顺序控制 。为方便读者了解程序结 构 ,图5 中各步 或宏步 包含的具体动作并未展开。下面的图6 表示了 “ 宏步 一初始化”的顺序控制过程,此过程包含了1 O 个 电磁 阀的顺序动作 ,其内容如图6 所示 。 在另一个段中 ,使用我们熟悉的功能块图F B D 编写各阀的输 出控制。以P B V3 4 1 3 1 阀为例,控制逻辑如图7 所示。 4 4 誊 毓 谩麓 A U T O M A T I O N P A N O R A M A 2 0 1 1 0 8 图6 宏步一 初始化的顺序控制流程图 P B V 3 4 1 3 1手动控制模式 P B V 3 4 1 3 1手动打开命令 P B V 3 4 1 3 3关闭极限 P B V 3 4 1 3 1自动控耕模式 P B V 3 4 1 3 1自动打开命令 P B V 3 4 1 3 1手动控{} I 模式 P B V 3 4 1 3 1手动关闭命令 P B V 3 4 1 3 1自动控科模式 P B V 3 4 1 3 1自动关闭命令 图7 用F B D 编写P B V - 3 4 1 3 1 阀控制逻辑图 对调节阀的控制,我们单独创建一个段 ,用熟悉的梯形 图来 编写控制程序。
展开阅读全文