王春暉
(國網(wǎng)冀北電力有限公司 管理培訓(xùn)中心, 北京 102401)
計(jì)算機(jī)PLC 如今之所以在工業(yè)控制領(lǐng)域越來越受到行業(yè)的重視,已成為最主要的使用設(shè)備,主要就是因?yàn)槠溆兄€(wěn)定性高,操作簡單等特點(diǎn)。 隨著工業(yè)控制領(lǐng)域的發(fā)展,該領(lǐng)域中主要工作就是模擬閉環(huán)控制系統(tǒng),為了滿足此目的,PLC不斷對自身的運(yùn)算能力和數(shù)據(jù)分析處理能力進(jìn)行完善,為了增大其應(yīng)用的廣泛性。 但是在面對一些超大且復(fù)雜的模擬控制系統(tǒng)時(shí),PLC 中的PID 數(shù)字運(yùn)算功能就很難對系統(tǒng)進(jìn)行高效的處理,而此時(shí),就需要對PID 的算法進(jìn)行新的設(shè)計(jì)和改良,這就是本文的一個(gè)最為重要的究方向。 因此,文中主要針對PLC 技術(shù)在模糊PID 控制時(shí)的問題進(jìn)行分析與研究,并且設(shè)計(jì)和開發(fā)出對應(yīng)的算法以及編程的過程,得出最有效的設(shè)計(jì)辦法。 并且經(jīng)過一系列試驗(yàn)以及實(shí)踐檢驗(yàn),該系統(tǒng)可以充分達(dá)到設(shè)計(jì)需求[1]。
可編程邏輯控制器(PLC),它采用一類可編程的存儲(chǔ)器,用于其內(nèi)部存儲(chǔ)程序,執(zhí)行邏輯運(yùn)算、順序控制、定時(shí)、計(jì)數(shù)與算術(shù)操作等面向用戶的指令,并通過數(shù)字或模擬式輸入/輸出控制各種類型的機(jī)械或生產(chǎn)過程。 它其實(shí)就是一種專用于工業(yè)控制的計(jì)算機(jī),是由件電源、中央處理單元(CPU) 、存儲(chǔ)器、輸入輸出接口電路、功能模塊、通信模塊等部分構(gòu)成,一般情況下,它的工作流程為3 個(gè)階段,分別為輸入采樣、用戶程序執(zhí)行和輸出刷新, 上面的3 部完成后稱為一個(gè)掃描周期[2]。 可編程邏輯控制器之所以被過程工業(yè)所廣泛應(yīng)用,是因?yàn)樗泻芏嘧陨淼奶攸c(diǎn)和優(yōu)勢,如操作簡單,使用方便,功能性強(qiáng),性價(jià)比大大超過同類型產(chǎn)品,產(chǎn)品自身配套齊全,用戶不需要在購入其他裝置,穩(wěn)定性強(qiáng),受到外界其他因素影響較小,有著很強(qiáng)的自我保護(hù)能力,系統(tǒng)的設(shè)計(jì)、安裝、調(diào)試工作量少,為工作前的準(zhǔn)備工作節(jié)省了很多時(shí)間,最后就是維修量非常小,這跟系統(tǒng)自身的穩(wěn)定性有很大的關(guān)系,所以事故率很低。 隨著PLC 的產(chǎn)生到如今的大規(guī)模使用,其控制功能以及各個(gè)方面特點(diǎn)也在隨著時(shí)間不斷地進(jìn)步,而各個(gè)PLC廠商也都在大力研發(fā)更加完滿的技術(shù), 而要想提高其性價(jià)比,就主要需要改良兩方面的內(nèi)容,即運(yùn)算和處理數(shù)據(jù)能力以及特殊功能模塊。 豐富的功能指令和多種配套模塊,以及一些PLC 增加的適應(yīng)控制、參數(shù)自整定、模糊控制等功能,使PLC 更加自如地應(yīng)用在模擬控制系統(tǒng)中,并且可以實(shí)現(xiàn)良好的控制效果[3]。
PLC 標(biāo)準(zhǔn)模擬控制系統(tǒng)結(jié)構(gòu)如圖1 所示,它的具體控制過程為,模擬的結(jié)果先生成反饋信號(hào),經(jīng)過測量元器件后,元件將信號(hào)進(jìn)行處理,再交由A/D 模塊進(jìn)行處理使之變?yōu)閿?shù)字信號(hào), 再將得到的數(shù)字值與事先得知的給定值進(jìn)行比較,可以得出系統(tǒng)偏差,隨即將偏差值進(jìn)行分析,這就需要進(jìn)行PID算法處理,將得出的值再用D/A 模塊進(jìn)行最后處理,使其變回模擬信號(hào),再返回輸入端的控制系統(tǒng),這個(gè)循環(huán)就實(shí)現(xiàn)了對控制系統(tǒng)的循環(huán)控制。 下面以宏光TB3C 系列PLC 組成的一個(gè)可編程邏輯控制系統(tǒng)為例,首先系統(tǒng)包括最基本的數(shù)模和模數(shù)轉(zhuǎn)換模塊,系統(tǒng)使用TB3C-5AD 和TB3C-5DA 作為控制系統(tǒng)的輸出模塊,然后使用控制系統(tǒng)的功能模塊對信號(hào)進(jìn)行處理后,對數(shù)據(jù)進(jìn)行讀寫操作以及對指令進(jìn)行編寫,從而達(dá)到對模擬量的采集和控制[4]。

圖1 PLC 標(biāo)準(zhǔn)模擬控制系統(tǒng)總體結(jié)構(gòu)圖Fig. 1 PLC standard analog control system overall structure
模糊控制系統(tǒng)中最重要的部分就是模糊控制器,其原理就是通常所說的模糊控制原理。圖2 位模糊控制器的整體結(jié)構(gòu)圖, 模糊控制器中最核心的3 個(gè)操作如圖所示,分別為:模糊化、知識(shí)庫及推理、解模糊。 控制器在進(jìn)行運(yùn)作時(shí)選擇的輸入值就是系統(tǒng)模數(shù)轉(zhuǎn)換后得到的與原值比較后的偏差值,輸入值確定后在進(jìn)行模糊化,模糊化就是將精確地輸入值轉(zhuǎn)變?yōu)槟:Z言來表達(dá),這首先就運(yùn)用到了模糊集合論,輸入值進(jìn)入系統(tǒng)后,系統(tǒng)自動(dòng)在集合中尋找與其對應(yīng)的模糊量,將準(zhǔn)確地?cái)?shù)字信號(hào)轉(zhuǎn)化為與之對應(yīng)的模糊量,再按照事先確定的標(biāo)準(zhǔn),對此輸入量進(jìn)行運(yùn)算和推理[5-6]。 運(yùn)算得出結(jié)果后就要進(jìn)行解模糊過程,其是將模糊值重新轉(zhuǎn)化實(shí)際準(zhǔn)確的數(shù)字控制量。 流程中,第一步就是對輸入變量的選擇,應(yīng)該依照具體的情況即控制系統(tǒng)的需求來選取輸出量的取值范圍,然后通過計(jì)算得出轉(zhuǎn)移系數(shù),轉(zhuǎn)移系數(shù)連接的是模糊控制器的端口,通過轉(zhuǎn)移系數(shù)將原本準(zhǔn)確地輸入值轉(zhuǎn)變?yōu)槟:齾^(qū)域所需要的模糊值,然后要對所有模糊子集的數(shù)量進(jìn)行確定,以及每個(gè)子集所對對應(yīng)的系統(tǒng)函數(shù),這就是整個(gè)模糊化過程。 設(shè)計(jì)出一個(gè)模糊PID 控制器需要四步,第一步就是要對輸入輸出的函數(shù)變量進(jìn)行確定,找出最符合設(shè)計(jì)要求的初始值,第二部就是對變量進(jìn)行模糊化,這是進(jìn)行模糊控制的基礎(chǔ),只有模糊化后得出的模糊量才能在算法中被運(yùn)用,第三步是建立模糊化分析處理準(zhǔn)則,這是最關(guān)鍵的一步,是對結(jié)果起決定作用的一步,準(zhǔn)則不同輸出值也就不同,所以要根據(jù)具體需求設(shè)計(jì)不同準(zhǔn)則, 最后一步就是輸出量街模糊化,得到最終準(zhǔn)確的輸出值。 需要注意的是,雖然模糊PID 控制器的分析運(yùn)算和處理能利用計(jì)算機(jī)操作或者人工手動(dòng)操作來實(shí)現(xiàn),但這些操作由于前期準(zhǔn)備工作比較繁瑣,運(yùn)算時(shí)的過程比較復(fù)雜,人工處理起來效率很低,還容易出錯(cuò),所以我們選用MATLAB 軟件的模糊邏輯工具箱來進(jìn)行分析處理和運(yùn)算, 它也是PID 中最為常見的是一種推理工具,不僅操作簡單,且效率及準(zhǔn)確性都很高。

圖2 模糊控制器的整體結(jié)構(gòu)Fig. 2 The overall structure of the fuzzy controller
下面進(jìn)行算法的具體設(shè)計(jì),首先要進(jìn)行編程就需要對輸入量進(jìn)行模糊處理,然后將模糊處理的結(jié)果用作算法中的必要對比參數(shù),然后才能進(jìn)行計(jì)算和推理[7]。 設(shè)計(jì)若直接采用PLC 的基本功能指令完成,進(jìn)行在線推理,實(shí)現(xiàn)起來難度較大又十分耗時(shí),為了增強(qiáng)系統(tǒng)的實(shí)時(shí)性,采用離線計(jì)算查詢表的方法實(shí)現(xiàn)PLC 的模糊PID 控制。 首先將輸入量依據(jù)系統(tǒng)需求進(jìn)行調(diào)整和選擇,并將輸入量的范圍作出確定,于此同時(shí)利用MATLAB 模糊工具箱對輸入量進(jìn)行數(shù)模轉(zhuǎn)換后再進(jìn)行模糊處理,得到模糊控制表,將處理后得到的數(shù)據(jù)表格依照系統(tǒng)涉及的順序放入到按數(shù)據(jù)寄存器中,觀察數(shù)模轉(zhuǎn)換以及模糊處理后的實(shí)時(shí)變化數(shù)據(jù), 主要確定變化出的迷糊量,在表中找出對應(yīng)的數(shù)據(jù)寄存器,這就得到了準(zhǔn)確地的PID整定參數(shù), 再利用這個(gè)準(zhǔn)確地參數(shù)在系統(tǒng)中進(jìn)行運(yùn)算和處理, 最終獲得對緩慢大滯后性被控量的有效控制。 具體的PLC 程序的設(shè)計(jì)過程包括3 個(gè)部分: 輸入量的模糊化程序、模糊控制查詢表程序和PID 參數(shù)輸出程序。 圖3 所示為模糊控制查詢表程序。

圖3 模糊控制查詢表程序Fig. 3 Fuzzy control query table
為了驗(yàn)證所設(shè)計(jì)的PLC 模擬控制系統(tǒng)的合理性和實(shí)用性,將其應(yīng)用于鍋爐過程控制系統(tǒng)的實(shí)際操作中。 以鍋爐過程控制系統(tǒng)為實(shí)驗(yàn)測試對象,按照本文論述的PLC 模擬控制系統(tǒng)的算法, 針對鍋爐液位控制和溫度控制的特點(diǎn), 采用PLC 編程實(shí)現(xiàn)不同的控制方法,并采用易控組態(tài)軟件實(shí)現(xiàn)上位監(jiān)控和遠(yuǎn)程功能,最終對整個(gè)鍋爐過程控制系統(tǒng)進(jìn)行調(diào)試來實(shí)現(xiàn)測試要求。 鍋爐過程控制系統(tǒng)的結(jié)構(gòu)設(shè)計(jì)如圖4 所示。 實(shí)驗(yàn)前做的主要準(zhǔn)備有,在保證原始裝置中被控單元的前提下,使用一個(gè)附加的PLC 控制系統(tǒng),并加入與之同型號(hào)的數(shù)模轉(zhuǎn)換功能模塊,可以進(jìn)行模糊處理,并將得到的信號(hào)連入預(yù)先設(shè)定好的輸出端,這就實(shí)現(xiàn)了單元與單元之間的聯(lián)通,再對程序進(jìn)行編譯,使用我們論述的算法鍋爐液位進(jìn)行控制, 并針對鍋爐溫度的大滯后性, 自行研發(fā)先進(jìn)模糊PID算法實(shí)現(xiàn)有效控制。 對鍋爐的液位和溫度進(jìn)行控制主要是通過PLC 控制程序設(shè)計(jì)實(shí)現(xiàn)的, 通過PLC 對模擬量的讀寫和PID 運(yùn)算[8-9]。為了使控制的效果達(dá)到最理想的狀態(tài),依據(jù)誤差的產(chǎn)生范圍分別運(yùn)用PD 和PID 控制,即PLC 編程實(shí)現(xiàn)積分分離PID 控制,溫度控制就是使用本文所論述的 PID 控制算法,對鍋爐的溫度進(jìn)行實(shí)時(shí)監(jiān)控,并將監(jiān)控得到的數(shù)據(jù)及時(shí)傳入到PLC 中,使用測試比較的偏差量作為模糊PID 控制器的輸入, 利用模糊控制原理得到在線整定的PID 控制參數(shù),PID 輸出的控制量對電加熱絲的功率大小進(jìn)行控制,從而實(shí)現(xiàn)了對鍋爐溫度的控制,將鍋爐整體溫度提升緩慢這一問題得到了很好解決,提高了使用效率,對控制的精度也得到了提高,通過實(shí)際應(yīng)用的測試數(shù)據(jù)發(fā)現(xiàn),該模擬控制系統(tǒng)達(dá)到了預(yù)期的設(shè)計(jì)要求,有很大的使用價(jià)值。

圖4 鍋爐過程控制系統(tǒng)結(jié)構(gòu)Fig. 4 Boiler Process Control System structure
文中基于PLC 技術(shù)的模糊PID 控制程序設(shè)計(jì)與開發(fā),對標(biāo)準(zhǔn)PLC 模擬閉環(huán)控制系統(tǒng)、PLC 的PID 控制算法展開分析和研究。 在原有PLC 理論的基礎(chǔ)上,設(shè)計(jì)開發(fā)了一個(gè)全新的框架,并且優(yōu)化了PID 的控制算法,對之前工程應(yīng)用中出現(xiàn)的問題進(jìn)行了分析,得出了解決方案,并將方案在鍋爐過程控制系統(tǒng)中進(jìn)行驗(yàn)證,實(shí)驗(yàn)結(jié)果表明,我們的設(shè)計(jì)思路完全達(dá)到了預(yù)期的效果,將鍋爐整體溫度提升緩慢這一問題得到了很好解決,提高了使用效率,對控制的精度也得到了提高,對其他工業(yè)生產(chǎn)過程也起著很好地借鑒意義。 實(shí)際測試結(jié)果表明, 該控制程序可以有效提高控制準(zhǔn)確度和生產(chǎn)效率,節(jié)約成本,達(dá)到了設(shè)計(jì)要求。
[1] 陳立定. 電氣控制與可編程序控制器的原理及應(yīng)用[M]. 北京:機(jī)械工業(yè)出版社,2004.
[2] 王兆義. 可編程控制器教程[M]. 北京: 機(jī)械工業(yè)出版社,2004.
[3] 王仁祥,王小曼. 現(xiàn)代可編程序控制器網(wǎng)絡(luò)通信技術(shù)[M]. 北京:中國電力出版社,2006.
[4] 侯華發(fā). DCS 與PLC 的區(qū)別及DCS 在電力領(lǐng)域的應(yīng)用[J].工程與建設(shè),2006,20(1):79-80.
[5] 廖常初. FX 系列PLC 編程及應(yīng)用[M]. 北京:機(jī)械工業(yè)出版社,2005.
[6] 高欽和. 可編程控制器應(yīng)用技術(shù)與設(shè)計(jì)實(shí)例[M]. 北京:人民郵電出版社,2004.
[7] 史東曉. 垃圾滲濾液處理控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D]. 成都:電子科技大學(xué),2010.
[8] 黃有銳,曲立國. PID 控制器參數(shù)整定與實(shí)現(xiàn)[M]. 北京:科學(xué)出版社,2010.
[9] 張鶴鳴,劉耀元. 可編程控制器原理及應(yīng)用教程[M]. 北京:北京大學(xué)出版社,2007.