摘要:為了解決用梯形圖語(yǔ)言編寫(xiě)順序控制設(shè)備時(shí)所存在的編程復(fù)雜、理解困難等問(wèn)題,引入PLC的順序功能圖來(lái)編程是一種非常有效的方法,該方法具有編程簡(jiǎn)單而且直觀等特點(diǎn)。本文以某高爐噴煤系統(tǒng)單罐循環(huán)的控制為例,采用順序功能圖與梯形圖、功能塊圖相結(jié)合的方法編寫(xiě)控制程序,與以往常用的梯形圖、功能塊圖編程方法相比具有簡(jiǎn)單、直觀、邏輯性強(qiáng)等特點(diǎn),大大提高了編程的效率。
關(guān)鍵詞:多語(yǔ)言;編程;PLC;應(yīng)用
Abstract: For resolving the complexity and indigestibility in programming forsequential control by use of the ladder diagram,it is an effective method toprogram the sequential control by making use of the Sequential Functional Chart(SFC) of PLC. This method is of simple and direct characteristics. This paperutilizes the method of SFC combining with Ladder diagram and Function blockdiagram to program the Pulverized Coal Injection control system of Blast Furnace.Comparing with the method of Ladder diagram and Function block diagram, wecan see that this method is more simple, direct and logical, and it improves theprogramming efficiency.Key words: SFC; Program; PLC; ApplicationhhhhApplication of SFC in PLC Control System of Pulverized Coal Injection
1 引言
在現(xiàn)代工業(yè)控制中,由于生產(chǎn)工藝的復(fù)雜性、多樣性的特點(diǎn),對(duì)自動(dòng)控制系統(tǒng)的要求也必然越來(lái)越高。在實(shí)踐中,我們往往發(fā)現(xiàn),在解決復(fù)雜性問(wèn)題時(shí)單獨(dú)使用一種編程語(yǔ)言會(huì)有局限性,無(wú)形中增加了工作難度。而目前大部分的工控軟件都會(huì)提供多種編程語(yǔ)言,常見(jiàn)的編程語(yǔ)言有梯形圖、功能塊圖、指令表、結(jié)構(gòu)文本、順序功能圖,每種編程語(yǔ)言各具特點(diǎn)。如果我們?cè)趯?shí)踐中針對(duì)各種復(fù)雜的控制要求或難點(diǎn)能靈活地運(yùn)用各種語(yǔ)言進(jìn)行混合編程,往往會(huì)產(chǎn)生事半功倍的效果。
高爐噴煤技術(shù)已成為節(jié)焦、增鐵、降低成本、改進(jìn)高效冶煉效果和促進(jìn)高爐順行的主要措施,也是當(dāng)今世界高爐冶煉技術(shù)進(jìn)步的主要方法。但要實(shí)現(xiàn)連續(xù)、穩(wěn)定、均勻的噴吹系統(tǒng)的PLC控制卻較為復(fù)雜。采用多語(yǔ)言混合編程,就能起到良好的效果。現(xiàn)以該系統(tǒng)中的最主要的部分噴吹罐單元循環(huán)操作的控制為例,具體闡述混合編程在項(xiàng)目中的應(yīng)用。在該項(xiàng)目中控制系統(tǒng)采用Quantum的65150控制器,編程軟件采用UnityPro XL v4.0。
2 高爐噴煤噴吹罐單元的控制要求
高爐噴煤是從高爐風(fēng)口向爐內(nèi)直接噴吹磨細(xì)了的煤粉,以替代焦炭起提供熱量和還原劑的作用,從而降低焦比,降低生鐵成本,它是現(xiàn)代高爐冶煉的一項(xiàng)重大技術(shù)革命。
高爐煤粉噴吹工藝主要包括以下3步:
煤粉從煤粉倉(cāng)進(jìn)入噴吹罐,這是批料處理的一部分。在批料處理中,噴吹罐可以裝料、充壓、保持、噴吹或減壓,保證氣動(dòng)輸送管道上不斷有煤粉通過(guò)。
從噴吹罐出來(lái)的輸送管道中的單流煤粉在混合器中與輸送空氣混合,并運(yùn)送到高爐附近。
單流煤粉和輸送空氣的混合物進(jìn)入分配器中,并平均分配到各噴吹管道,噴吹管道將其輸送到各風(fēng)口。
某高爐噴煤系統(tǒng)包含三個(gè)噴吹罐單元(FT-3410、FT-3420、FT-3430),每個(gè)噴吹罐單元包括1個(gè)噴吹罐,10個(gè)電磁閥,3個(gè)調(diào)節(jié)閥,如圖1所示。噴吹罐可以進(jìn)行連續(xù)批料循環(huán),通過(guò)輸送管線和混合器將煤粉從煤粉倉(cāng)運(yùn)到煤粉輸送管線中。一個(gè)噴吹罐單元完整的噴吹周期包括準(zhǔn)備過(guò)程和噴吹過(guò)程。1個(gè)噴吹罐噴吹,另2個(gè)噴吹罐就準(zhǔn)備。這樣就可以保證不斷向高爐提供煤粉。
圖1 FT-3410單元設(shè)備示意圖
準(zhǔn)備周期又包含以下幾個(gè)階段:
減壓階段:噴吹罐壓力從噴吹壓力降至大氣壓(+20KPa)。打開(kāi)泄壓閥PBV34122,噴吹罐通過(guò)連接到煤粉倉(cāng)卸壓過(guò)濾器的減壓管線減壓。
裝料階段:煤粉在大氣壓下通過(guò)重力作用,通過(guò)裝料閥PBV34131和PBV34132,將煤粉從煤粉倉(cāng)裝填到噴吹罐中。
充壓階段:噴吹罐內(nèi)壓力從大氣壓加到噴吹壓力,此過(guò)程又可細(xì)分為以下步驟:
等待過(guò)程:只發(fā)生在噴吹率非常低的情況下。
慢速充壓過(guò)程:在慢速充壓階段,通過(guò)進(jìn)入噴吹罐的流化、常壓氮?dú)饩徛訅骸?br />
快速充壓過(guò)程:正在噴吹的罐幾乎變空的時(shí)候得到快速充壓信號(hào)。通過(guò)充壓閥PBV34114完成。
保持階段:保持原狀態(tài),直到當(dāng)前正在噴吹的罐完成噴吹周期。在保持階段,噴吹罐的壓力通過(guò)壓力控制閥在設(shè)定范圍內(nèi)隨著正在噴吹罐的壓力變化而變化。極端情況下還可以使用加壓閥PBV34114進(jìn)行充壓,壓力過(guò)高時(shí)打開(kāi)放散閥PBV34121進(jìn)行減壓。
噴吹過(guò)程是從噴吹罐達(dá)到“停止噴吹的重量”開(kāi)始的。正在噴吹的噴吹罐噴吹閥關(guān)閉的同時(shí),處于保持階段噴吹罐的噴吹閥PBV34171立即打開(kāi),并關(guān)閉疏松閥PBV34161,這就保證了換罐時(shí)高爐不會(huì)出現(xiàn)噴煤中斷。在噴吹過(guò)程中,通過(guò)壓力控制閥控制噴吹罐中的壓力,極端情況下使用加壓閥PBV34114進(jìn)行充壓。如果噴吹罐中的壓力在規(guī)定范圍內(nèi)過(guò)高,打開(kāi)放散閥PBV34121進(jìn)行減壓。
在一個(gè)噴吹罐投入循環(huán)操作過(guò)程之前,首先應(yīng)使閥組內(nèi)的各閥處于適當(dāng)?shù)奈恢茫锤鏖y進(jìn)行初始化操作。在初始化操作結(jié)束之后,噴吹罐就可以進(jìn)入完整的循環(huán)過(guò)程。一個(gè)噴吹罐完整的操作順序可用圖2表示:
在循環(huán)操作的各個(gè)過(guò)程中,噴吹罐閥組中各閥需要按照規(guī)范進(jìn)行操作。
在初始化過(guò)程中,閥組內(nèi)各閥應(yīng)按照以下的順序動(dòng)作:
(1)噴吹閥 PBV34171 關(guān)閉 (2)疏松閥 PBV34161 打開(kāi)
(3)壓力閥 PBV34112 關(guān)閉 (4)充壓閥 PBV34114 關(guān)閉
(5)減壓閥 PBV34122 打開(kāi) (6)裝料閥1 PBV34131 關(guān)閉
(7)裝料閥2 PBV34132 關(guān)閉 (8)采樣除塵閥 PBV34133 打開(kāi)
(9)放散閥 PBV34121 關(guān)閉 (10)事故閥
PBV34141 打開(kāi)在閥組內(nèi)各閥都按上述要求動(dòng)作并處于正確的位置后,如果滿足單罐循環(huán)的啟動(dòng)條件,則進(jìn)入裝料階段。
在裝料階段,啟動(dòng)裝料的順序是:
(1)采樣除塵閥 PBV34133 關(guān)閉
(2)裝料閥2 PBV34132 打開(kāi)
(3)裝料閥1 PBV34131 打開(kāi)
在噴吹罐填充裝料期間,重量將達(dá)到“料滿”信號(hào),這個(gè)信號(hào)啟動(dòng)下列停止裝料順序:
(1)裝料閥1 PBV34131 關(guān)閉
(2)裝料閥2 PBV34132 15秒延時(shí)后關(guān)閉
(3)采樣除塵閥 PBV -34133 打開(kāi)
噴吹罐結(jié)束“裝料”階段,開(kāi)始進(jìn)入“充壓”階段。如果單罐循環(huán)啟動(dòng)時(shí)噴吹罐已經(jīng)處于料滿的條件下,將跳過(guò)裝料階段而直接進(jìn)入充壓階段。
在充壓、噴吹、減壓等各階段,閥組內(nèi)各閥也將按照規(guī)范進(jìn)行動(dòng)作。在這里就不一一細(xì)說(shuō)了。
在所有階段中,包括裝料、充壓、保持、噴吹、減壓階段,噴吹罐都要通過(guò)流化氣控制閥FCV-34152進(jìn)行流化調(diào)節(jié)。且在所有階段中,下列操作不允許手動(dòng):
• 在PBV34131沒(méi)有關(guān)閉的情況下打開(kāi)PBV34133;
• 在PBV34133沒(méi)有關(guān)閉的情況下打開(kāi)PBV34131;
• 在噴吹罐壓力 >20kPa的情況下打開(kāi)PBV34132。
實(shí)際生產(chǎn)中,在正常情況下高爐噴吹系統(tǒng)的每個(gè)噴吹罐單元都將按上述規(guī)定自動(dòng)執(zhí)行循環(huán)操作。但在調(diào)試、檢修及事故情況下,還必須允許操作人員對(duì)單體設(shè)備進(jìn)行遠(yuǎn)程手動(dòng)操作。
3 多語(yǔ)言編程的準(zhǔn)備工作
我們常見(jiàn)的PLC編程語(yǔ)言有梯形圖、功能塊圖、指令表、結(jié)構(gòu)文本、順序功能圖。在高爐噴煤噴吹循環(huán)的控制中,重點(diǎn)應(yīng)用了順序功能圖、并以功能塊圖及梯形圖為輔助應(yīng)用。
梯形圖(Ladder Diagram,LD)是使用得最多的PLC圖形編程語(yǔ)言。梯形圖與繼電器電路圖很相似,具有直觀易懂的優(yōu)點(diǎn),很容易被工廠熟悉繼電器控制的電氣人員掌握,特別適合于數(shù)字量邏輯控制。梯形圖由觸點(diǎn)、線圈和用方框表示的指令框組成。觸點(diǎn)代表邏輯輸入條件;線圈通常代表邏輯運(yùn)算的結(jié)果,常用來(lái)控制外部的負(fù)載和內(nèi)部的標(biāo)志位等;指令框用來(lái)表示定時(shí)器、計(jì)數(shù)器或者數(shù)學(xué)運(yùn)算等附加指令。
功能塊圖(Function Block Diagram,F(xiàn)BD)使用類似于布爾代數(shù)的圖形邏輯符號(hào)來(lái)表示控制邏輯。一些復(fù)雜的功能(例如數(shù)學(xué)運(yùn)算功能等)用指令框來(lái)表示,有數(shù)字電路基礎(chǔ)的人很容易掌握。功能塊圖用類似于與門、或門的方框來(lái)表示邏輯運(yùn)算關(guān)系,方框的左側(cè)為邏輯運(yùn)算的輸入變量,右側(cè)為輸出變量,方框被“導(dǎo)線”連接在一起,信號(hào)自左向右滾動(dòng)。
順序功能圖(Seqquential Function Chart,SFC)是一種位于其他編程語(yǔ)言之上的圖形語(yǔ)言,用來(lái)編制順序控制程序。在這種語(yǔ)言中,工藝過(guò)程被劃分為若干個(gè)按順序出現(xiàn)的步,步中包含控制輸出的動(dòng)作,從一步到另一步的轉(zhuǎn)換由轉(zhuǎn)換條件控制。用順序功能圖表達(dá)復(fù)雜的順序控制過(guò)程非常清晰,用于編程及故障診斷更為有效,使PLC程序的結(jié)構(gòu)更加易讀,它特別適合于順序控制過(guò)程。
一個(gè)順序控制過(guò)程可以分為若干個(gè)狀態(tài),狀態(tài)與狀態(tài)之間由轉(zhuǎn)換分隔,相鄰的狀態(tài)具有不同的動(dòng)作,當(dāng)相鄰狀態(tài)之間的轉(zhuǎn)換條件得到滿足時(shí),就實(shí)現(xiàn)狀態(tài)的轉(zhuǎn)換,即上一個(gè)狀態(tài)的動(dòng)作結(jié)束而下一狀態(tài)的動(dòng)作開(kāi)始,描述這一過(guò)程的方框圖稱為順序功能圖。
順序功能圖主要由步、轉(zhuǎn)移和動(dòng)作三大要素組成,如圖3所示。
圖3 由三個(gè)步構(gòu)成的SFC結(jié)構(gòu)
步是一種邏輯塊,即對(duì)應(yīng)于特定的控制任務(wù)的編程邏輯。對(duì)應(yīng)于系統(tǒng)初始狀態(tài)的工作步,稱為初始步。步只有處于活動(dòng)狀態(tài)時(shí),相應(yīng)的動(dòng)作才被執(zhí)行。
動(dòng)作是步中的獨(dú)立部分,表明步中要執(zhí)行的邏輯任務(wù)。每一步可以沒(méi)有動(dòng)作,也可以有多個(gè)動(dòng)作。
轉(zhuǎn)移就是從一個(gè)步過(guò)渡到另外一個(gè)步時(shí)的切換條件。它只能是BOOL類型的數(shù)據(jù)。只有該轉(zhuǎn)移的前步為活動(dòng)步且該轉(zhuǎn)移條件滿足時(shí),才能失活前一步,激活下一步。
SFC的基本結(jié)構(gòu)可分為單序列、選擇序列、并行序列和復(fù)合序列幾種。單序列結(jié)構(gòu)沒(méi)有分支,它是單流程重復(fù)形式,動(dòng)作不斷重復(fù)循環(huán)。選擇序列的結(jié)構(gòu)有分支,根據(jù)分支轉(zhuǎn)移條件來(lái)決定究竟選擇哪一個(gè)分支。若在某一步執(zhí)行完后,需要同時(shí)起動(dòng)若干條分支,那么這種結(jié)構(gòu)稱為并行序列。復(fù)合序列就是一個(gè)集單序列、選擇序列、并行序列于一體的結(jié)構(gòu)。
由于每種工控軟件中的SFC編程語(yǔ)言的用法會(huì)稍有區(qū)別,為方便讀者閱讀,在UnityPro軟件的SFC編程語(yǔ)言中各種步示意及說(shuō)明見(jiàn)表1。
4 分析控制要求確定編程的思路
筆者對(duì)控制要求進(jìn)行分析后發(fā)現(xiàn),整體系統(tǒng)包含三個(gè)噴吹罐單元,但三個(gè)單元執(zhí)行的功能和操作是相同的,只是在時(shí)間上有些延遲,以保證在一個(gè)時(shí)刻只能有一個(gè)罐處于噴吹階段。所以,我們只要完成了單罐的控制程序,然后稍加處理就可以完成三罐的整體控制。因此控制的重點(diǎn)就落在了單罐的循環(huán)動(dòng)作控制上。單罐循環(huán)操作的控制主要體現(xiàn)在10個(gè)電磁閥和3個(gè)調(diào)節(jié)閥的控制上。對(duì)于調(diào)節(jié)閥的控制,筆者認(rèn)為使用常用的LD進(jìn)行編程控制就可以滿足要求,而且一般的工控軟件會(huì)提供一些內(nèi)置的調(diào)節(jié)控制功能,在使用起來(lái)也比較得心應(yīng)手。對(duì)于閥組的控制,又分為兩種情況:在自動(dòng)控制模式下每個(gè)噴吹罐在不同的階段間進(jìn)行循環(huán),且在每個(gè)階段閥組內(nèi)各閥都要按照設(shè)定的動(dòng)作順序執(zhí)行。這屬于比較典型的順序控制要求,使用SFC進(jìn)行編程相對(duì)比較容易。而在手動(dòng)控制模式下,閥組內(nèi)各閥的控制基本上屬于數(shù)字量邏輯控制,使用常用的FBD或LD編寫(xiě)控制程序會(huì)相對(duì)簡(jiǎn)單、明了。然而,不管是自動(dòng)控制模式還是手動(dòng)控制模式,控制的對(duì)象是相同的。如果我們單獨(dú)使用一種語(yǔ)言進(jìn)行編程,必然會(huì)顧此失彼。綜合考慮后,確立了用SFC與FBD相結(jié)合的方法編制閥組控制程序,這樣就能兼顧兩者的優(yōu)勢(shì),勢(shì)必形成事半功倍的效果。
自動(dòng)模式下,單罐循環(huán)動(dòng)作過(guò)程控制主要采用SFC中的單序列結(jié)構(gòu)為主,選擇序列為輔進(jìn)行控制,選擇序列主要用于步間的跳轉(zhuǎn)。由于噴吹罐在初始化、裝料、充壓、噴吹、減壓等階段又分別包含多個(gè)動(dòng)作,為使程序具有良好的可讀性,充分利用Unity軟件的特點(diǎn),為每個(gè)階段采用宏步的方式進(jìn)行編程。這樣就可以對(duì)整個(gè)循環(huán)過(guò)程按階段進(jìn)行分割,構(gòu)成結(jié)構(gòu)化的循環(huán)控制過(guò)程。
在SFC、 LD、FBD之間,通過(guò)項(xiàng)目的變量(I/O變量或內(nèi)部變量)進(jìn)行數(shù)據(jù)的傳遞,使整個(gè)項(xiàng)目成為一個(gè)有機(jī)的整體,實(shí)現(xiàn)對(duì)設(shè)備的完整控制。在SFC中用到的轉(zhuǎn)換條件,如“是否滿足循環(huán)啟動(dòng)條件”、“料滿”、“料空”、“罐壓力滿足”等,將在LD或FBD中進(jìn)行邏輯判斷,判斷的結(jié)果通過(guò)中間變量傳遞到順序功能圖中。即SFC中的轉(zhuǎn)換條件在梯形圖或功能塊圖中進(jìn)行判斷。另一方面,如閥組內(nèi)各閥的控制在FBD中編制控制邏輯,如圖4所示。
圖4 FBD中閥控制邏輯示意圖
圖4中的“手動(dòng)控制命令”可以直接接受操作員指令。但“自動(dòng)控制命令”則在SFC的步動(dòng)作中發(fā)出命令,通過(guò)中間變量傳遞到功能塊圖中參與邏輯控制。
5 單罐動(dòng)作循環(huán)控制要求的實(shí)現(xiàn)
根據(jù)FT-3410噴吹罐的控制要求編制的順序控制流程圖如圖5所示:
圖5 單罐循環(huán)操作順序控制流程圖
在圖5所示的順序控制圖中,包含了五個(gè)宏步,分別為“宏步_初始化”、“宏步_裝料”、“宏步_充壓”、“宏步_噴吹”和“宏步_減壓”,分別代表實(shí)際生產(chǎn)中噴吹罐初始化、裝料、充壓、噴吹、減壓五個(gè)階段。其中每個(gè)宏步調(diào)用一個(gè)宏段,每個(gè)宏段可視為一個(gè)“子順序控制段”。這五個(gè)宏段通過(guò)轉(zhuǎn)換連接起來(lái),就完成了單罐循環(huán)過(guò)程的順序控制。為方便讀者了解程序結(jié)構(gòu),圖5中各步(或宏步)包含的具體動(dòng)作并未展開(kāi)。下面的圖6表示了“宏步_初始化”的順序控制過(guò)程,此過(guò)程包含了10個(gè)電磁閥的順序動(dòng)作,其內(nèi)容如圖6所示。
圖6 宏步_初始化”的順序控制過(guò)程圖
在另一個(gè)段中,使用我們熟悉的功能塊圖FBD編寫(xiě)各閥的輸出控制。以PBV34131閥為例,控制邏輯如圖7所示。
圖7 用FBD編寫(xiě)PBV-34131閥控制邏輯圖
對(duì)調(diào)節(jié)閥的控制,我們單獨(dú)創(chuàng)建一個(gè)段,用熟悉的梯形圖來(lái)編寫(xiě)控制程序。按照以上的過(guò)程,我們就可以較輕松地完成單罐循環(huán)的動(dòng)作過(guò)程。
6 實(shí)踐中的幾點(diǎn)體會(huì)
在以上的控制系統(tǒng)的實(shí)現(xiàn)中,在原來(lái)常用的梯形圖、功能塊圖的基礎(chǔ)上,針對(duì)系統(tǒng)順序控制要求的特點(diǎn),增加了SFC語(yǔ)言的應(yīng)用,實(shí)現(xiàn)多語(yǔ)言混合編程的模式。在實(shí)踐中總結(jié)出以下幾點(diǎn)體會(huì):
(1)混合編程模式能充分發(fā)揮每種編程語(yǔ)言的優(yōu)勢(shì),減少編程的工作量,提高工作效率。
在高爐噴煤系統(tǒng)單罐自動(dòng)循環(huán)操作的控制中,由于控制系統(tǒng)的主要任務(wù)是完成順序控制,因此我們使用了SFC編程的方法。因?yàn)樵陧樞蚩刂品矫妫琒FC語(yǔ)言具有無(wú)可比擬的優(yōu)勢(shì)。使用SFC語(yǔ)言進(jìn)行順序控制,只要根據(jù)控制要求列出系統(tǒng)工作過(guò)程的順序控制流程,就可以編制出系統(tǒng)控制程序,既能滿足控制要求,又減少了編程工作量。雖然使用梯形圖語(yǔ)言也可以實(shí)現(xiàn)系統(tǒng)的順序控制,但經(jīng)過(guò)實(shí)踐的對(duì)比,完成單罐循環(huán)控制的梯形圖程序至少要300行以上,還要使用到大量的中間變量來(lái)存儲(chǔ)過(guò)程狀態(tài)。另一方面,在閥組中各閥的輸出線圈的控制中,我們使用了FBD編程方法,充分利用了FBD語(yǔ)言在數(shù)字量邏輯控制方面的優(yōu)勢(shì)及編程界面簡(jiǎn)潔易懂、位置調(diào)整靈活的特點(diǎn),將自動(dòng)控制模式與手動(dòng)控制模式單獨(dú)考慮,通過(guò)簡(jiǎn)單的控制架構(gòu),完成設(shè)備在自動(dòng)和手動(dòng)模式下的控制要求。
在調(diào)節(jié)閥控制方面,使用傳統(tǒng)的、應(yīng)用最廣泛的LD語(yǔ)言,并最大限度地利用了工控軟件提供的系統(tǒng)功能塊(如PID調(diào)節(jié)功能塊),使得編程簡(jiǎn)單快捷、得心應(yīng)手。
在分析系統(tǒng)要求的基礎(chǔ)上,針對(duì)不同的要求采取不同的策略,充分發(fā)揮各種編程語(yǔ)言的優(yōu)勢(shì),取長(zhǎng)補(bǔ)短,并通過(guò)必要的手段使它們形成一個(gè)有機(jī)的整體,完成系統(tǒng)全部的控制要求,大大地減少設(shè)計(jì)和編程的工作量,提高了工作效率。
(2)程序結(jié)構(gòu)清晰,邏輯簡(jiǎn)單、直觀,便于理解。
我們都知道,控制系統(tǒng)的自動(dòng)控制比手動(dòng)控制要復(fù)雜,在編程時(shí)我們往往需要把大部分的精力放在系統(tǒng)自動(dòng)控制的實(shí)現(xiàn)上。在單罐循環(huán)自動(dòng)控制部分,如果使用梯形圖或功能塊圖語(yǔ)言編寫(xiě)控制程序時(shí),由于沒(méi)有固定的編程規(guī)則,對(duì)于不同的控制系統(tǒng),沒(méi)有一種通用的容易掌握的設(shè)計(jì)方法,還需要用大量的中間單元來(lái)完成記憶、聯(lián)鎖和互鎖功能。由于需要考慮的因素很多,它們往往又交織在一起,分析起來(lái)非常困難,一般不可能把所有的問(wèn)題都考慮得很周到。程序設(shè)計(jì)出來(lái)后,需要模擬調(diào)試或在現(xiàn)場(chǎng)調(diào)試,發(fā)現(xiàn)問(wèn)題后再針對(duì)問(wèn)題對(duì)程序進(jìn)行修改。不同的設(shè)計(jì)者會(huì)按照各自不同的編程習(xí)慣、思路、方法來(lái)設(shè)計(jì)出相同功能的程序,以至于其他人要理解起來(lái)可能會(huì)有一定的困難。而這次我們改用SFC語(yǔ)言編寫(xiě)單罐循環(huán)自動(dòng)控制的程序后,在程序中可以很直觀地看到設(shè)備的動(dòng)作順序。不同的人員都比較容易理解其他人編寫(xiě)的程序,因?yàn)槌绦蚴前凑赵O(shè)備動(dòng)作的順序進(jìn)行編寫(xiě)的。在閥組的控制方面,由于各閥間復(fù)雜的聯(lián)鎖條件已經(jīng)在SFC中考慮過(guò)了,所以我們?cè)诠δ軌K圖中只需要考慮一般情況下必要的聯(lián)鎖(如手動(dòng)操作時(shí)閥組間的聯(lián)鎖),就可以實(shí)現(xiàn)對(duì)各閥的輸出線圈的控制。這樣就減少了多因素交織狀態(tài)的發(fā)生,簡(jiǎn)化了分析和調(diào)試的過(guò)程。通過(guò)這種多語(yǔ)言結(jié)合的編程方式,我們就可以把復(fù)雜的控制問(wèn)題簡(jiǎn)單化,同時(shí)使程序的整體結(jié)構(gòu)清晰,便于理解。進(jìn)一步地,為日后系統(tǒng)的維護(hù)和修改也創(chuàng)造了一個(gè)良好的基礎(chǔ)。
(3)方便系統(tǒng)調(diào)試與維護(hù),提高試車成功率。
以往用梯形圖編程時(shí),一般不可能把所有的問(wèn)題都考慮得很周到,程序設(shè)計(jì)出來(lái)后,需要模擬調(diào)試或在現(xiàn)場(chǎng)調(diào)試,發(fā)現(xiàn)問(wèn)題后再針對(duì)問(wèn)題對(duì)程序進(jìn)行修改。修改某一局部邏輯時(shí),很可能會(huì)引發(fā)出別的問(wèn)題,對(duì)系統(tǒng)的其他部分產(chǎn)生意想不到的影響。在這個(gè)項(xiàng)目中的單罐循環(huán)自動(dòng)控制是一個(gè)順序控制的要求,而順序控制系統(tǒng)在梯形圖中實(shí)現(xiàn)較為復(fù)雜,即使是非常有經(jīng)驗(yàn)的工程師,也很難做到設(shè)計(jì)出的程序能試車一次成功。而我們?cè)谶@個(gè)應(yīng)用中,通過(guò)多語(yǔ)言混合編程,就可以很好地解決這個(gè)問(wèn)題。在調(diào)試過(guò)程中,通過(guò)FBD編寫(xiě)的閥輸出線圈控制段中,我們可以很容易地區(qū)分出是自動(dòng)模式下邏輯出了問(wèn)題還是手動(dòng)模式下的邏輯出了問(wèn)題,或者是設(shè)備本身的問(wèn)題;如果是自動(dòng)模式下的問(wèn)題,進(jìn)一步地,我們可以在SFC中非常直觀地看到設(shè)備的動(dòng)作順序、步驟,找出問(wèn)題所在之處。通過(guò)這種方式,可以大大地縮短調(diào)試周期,降低調(diào)試難度。該項(xiàng)目在現(xiàn)場(chǎng)調(diào)試階段,噴吹罐的循環(huán)控制部分基本上是一次試車成功。
參考文獻(xiàn):[1] 廖常初. S7-300/400 PLC應(yīng)用技術(shù)[M]. 北京: 機(jī)械工業(yè)出版社, 2008.
張玉紅(1971-)
女,河北唐縣人,本科,1992年畢業(yè)于西安工業(yè)學(xué)院,自動(dòng)化專業(yè)工程師,現(xiàn)就職于北京首鋼自動(dòng)化信息技術(shù)有限公司,從事自動(dòng)化編程與調(diào)試工作。
摘自《自動(dòng)化博覽》2011年第八期