1 引言
溫度的測(cè)量和控制在工業(yè)生產(chǎn)中獲得了廣泛的應(yīng)用,尤其在石油、化工、電力、冶金等重要工業(yè)領(lǐng)域中,擔(dān)負(fù)著很重要的測(cè)控任務(wù)[1]。但是由于被控對(duì)象隨負(fù)荷變化或受干擾因素的影響,對(duì)象特性參數(shù)或結(jié)構(gòu)經(jīng)常發(fā)生變化,因此需要實(shí)時(shí)改變控制策略使得控制系統(tǒng)的品質(zhì)指標(biāo)保持在最佳范圍內(nèi),顯然普通的PID控制難以勝任。本文采用在線實(shí)時(shí)模糊自整定PID控制策略,實(shí)現(xiàn)了對(duì)PID參數(shù)的最優(yōu)調(diào)整。
2 溫度采集與A/D轉(zhuǎn)換
溫度采集與A/D轉(zhuǎn)換電路如圖1所示。熱電偶采用鎳鉻-鎳硅熱電偶,分度號(hào)為EU,對(duì)0~1 000℃的溫度為:0~41.32mV。實(shí)際系統(tǒng)要求測(cè)溫范圍為400~1 000℃,熱電偶輸出16.4~41.32mV,經(jīng)毫伏變送器處理,輸出0~10mV然后經(jīng)過I/V變換電路轉(zhuǎn)換出0~5V電壓信號(hào)。采用8位A/D轉(zhuǎn)換器MAX118使量化誤差達(dá)到±2.34℃[2]。選用通道1作為模擬量輸入,工作在MODE0方式。即A/D芯片的啟動(dòng)、轉(zhuǎn)換、讀數(shù)均由RD控制,INT為A/D轉(zhuǎn)換結(jié)束信號(hào),當(dāng)A/D轉(zhuǎn)換結(jié)束后INT變?yōu)楦唠娖健纹瑱C(jī)通過查詢P1.2引腳狀態(tài)判斷A/D轉(zhuǎn)換是否結(jié)束并通過P0口將轉(zhuǎn)換結(jié)果讀入AT89S52單片機(jī)中。
圖1 溫度采集與A/D轉(zhuǎn)換
3 模糊PID控制方案
控制方案原理圖如圖2所示。
圖2 模糊PID控制原理
模糊自整定PID是在PID算法的基礎(chǔ)上,計(jì)算當(dāng)前系統(tǒng)誤差e和誤差的變化率ė并利用模糊規(guī)則進(jìn)行模糊推理,查詢模糊矩陣表進(jìn)行參數(shù)調(diào)整[3]。模糊控制設(shè)計(jì)的核心是總結(jié)工程設(shè)計(jì)人員的技術(shù)知識(shí)和實(shí)際操作經(jīng)驗(yàn),建立合適的模糊規(guī)則表,得到針對(duì)KP、KI、KD三個(gè)參數(shù)分別整定的模糊規(guī)則表。KP、KI、KD的模糊規(guī)則表如表1、表2、表3所示。
表1 KP的模糊規(guī)則表
表2 KI的模糊規(guī)則表
表3 KD的模糊規(guī)則表
其中,NB為負(fù)大,NM為負(fù)中,NS為負(fù)小,ZO為零,PS為正小,PM為正中,PB為正大。
KP、KI、KD的模糊規(guī)則表建立好后,可根據(jù)如下方法進(jìn)行KP、KI、KD的自適應(yīng)校正,將系統(tǒng)誤差量E和誤差變化量EC變化范圍定義為模糊集上的論域:E,EC=-5,-4,-3,-2,-1,0,1,2,3,4,5。
其模糊子集為:E,EC=NB,NM,NS,ZO,PS,PM,PB。設(shè)E,EC和KP、KI、KD均服從正態(tài)分布,因此可得出各模糊子集的隸屬度,根據(jù)各模糊子集的隸屬度賦值表和各參數(shù)模糊控制模型,應(yīng)用模糊合成推理設(shè)計(jì)PID參數(shù)的模糊矩陣表,查出修正參數(shù)帶入下式計(jì)算[4]。
KP=KP’+{Ei,ECi}p;KI=KI’+{Ei,ECi}I;KD=KD’+{Ei,ECi}D。
至于PID的初始化參數(shù)采用Ziegler-Nichols設(shè)定方法調(diào)整。令TP=0.1TU;TI=0.5TU;TD=0.125TU。
式中TU稱為臨界周期,在單純比例作用下(比例增益由小到大),使系統(tǒng)產(chǎn)生等幅振蕩的比例增益,稱為臨界比例增益KU,這時(shí)的工作周期為臨界周期TU,則KP=0.6KU;KI=0.2KP;KD=1.25KP。
在線運(yùn)行過程中,AT89S52通過對(duì)模糊邏輯規(guī)則的結(jié)果處理,查表和運(yùn)算,完成對(duì)PID參數(shù)的在線自校正。
4 溫度控制電路和人機(jī)接口
溫度控制是通過對(duì)加熱電阻絲的電源通斷來實(shí)現(xiàn)的。本系統(tǒng)采用晶閘管調(diào)功方式,通過MOC3061光耦過零觸發(fā)驅(qū)動(dòng)器實(shí)現(xiàn)晶閘管過零觸發(fā)。晶閘管串接在50Hz交流電源和加熱絲中,只要在給定周期內(nèi)改變晶閘管的接通時(shí)間,就能達(dá)到加熱功率可調(diào)的目的[5],從而實(shí)現(xiàn)溫度調(diào)節(jié)。電路圖如圖3所示。單片機(jī)P1.3口輸出能控制晶閘管通斷時(shí)間的脈沖信號(hào)。P1.3=1時(shí)關(guān)斷晶閘管,P1.3=0時(shí)開啟晶閘管。
圖3 溫度控制電路
控制器人機(jī)接口由數(shù)碼管和按鈕組成。12只LED數(shù)碼管分成兩組顯示溫度測(cè)量值和設(shè)定值。3只按鈕用于溫度設(shè)定和PID參數(shù)設(shè)定。控制器的程序分初始化設(shè)置態(tài)和運(yùn)行態(tài)兩種模式。通過按動(dòng)面板上的“SET”,“▲”,“