大家要想成為過程控制的高手,總少不了去學(xué)習(xí)控制理論,昌暉儀表網(wǎng)技術(shù)文庫欄目以大話形式推出一系列介紹控制理論的文章,分別介紹線性控制、最優(yōu)控制、離散控制模型與辨識(shí)、自適應(yīng)控制模型預(yù)估控制方面的內(nèi)容。
都說瓦特的蒸汽機(jī)后,計(jì)算機(jī)是影響人類進(jìn)程最大的發(fā)明,計(jì)算機(jī)當(dāng)然也對自動(dòng)控制帶來了深刻的影響。前面說到,控制理論基本上都是圍繞著微分方程轉(zhuǎn)的,所以在“本質(zhì)”上是連續(xù)的。但是數(shù)字計(jì)算機(jī)是離散的,也就是說,數(shù)字控制系統(tǒng)的眼睛不是一直盯著被控對象看的,而是一眨一眨的,只是眨得飛快而已。數(shù)字控制系統(tǒng)的“手腳”也不是一刻不停地連續(xù)動(dòng)作的,而是一頓一頓的,這是數(shù)字計(jì)算機(jī)的天性使然。只是數(shù)字計(jì)算機(jī)的眨眼和頓挫非常短暫,在實(shí)際上和連續(xù)動(dòng)作無異。不過在數(shù)學(xué)上,這眨眼和頓挫帶來很多有趣、有用的性質(zhì)。
馮·諾依曼奠定現(xiàn)代計(jì)算機(jī)理論基礎(chǔ)時(shí),最關(guān)鍵的法寶就是二進(jìn)制。二進(jìn)制可以用0和1表述所有數(shù)值數(shù)據(jù),同時(shí)還可以表示“是”“非”或者“好”“壞”這樣的邏輯數(shù)據(jù),有機(jī)地把數(shù)值計(jì)算和邏輯判斷整合在同一個(gè)運(yùn)算框架下,這是現(xiàn)代計(jì)算機(jī)無限神通的理論基礎(chǔ)。0和1的計(jì)算還可以用邏輯電路(各種門電路,如與門、非門、或門等)實(shí)現(xiàn),這是現(xiàn)代數(shù)字計(jì)算機(jī)的物理基礎(chǔ)。但這也帶來了新的問題:數(shù)字計(jì)算機(jī)在本質(zhì)上是斷續(xù)(數(shù)學(xué)上稱為離散)的,盡管間隙非常短暫。這樣,傳統(tǒng)的控制理論需要全部“翻譯”到離散時(shí)間領(lǐng)域,微分方程變成了差分方程,所有方法、結(jié)論都有了連續(xù)、離散兩套,不盡相同,但是對線性系統(tǒng)來說都大同小異。
要是數(shù)字控制就是簡單的連續(xù)系統(tǒng)離散化,計(jì)算機(jī)控制也就沒有什么了不起了。但差分方程用清晰標(biāo)定的時(shí)刻之間的關(guān)系來描述動(dòng)態(tài)過程,這給離散控制帶來了一些連續(xù)控制所不可能具備的新特點(diǎn)。回到洗熱水澡的例子,如果熱水龍頭不在跟前,而是在村頭的小鍋爐房里,你不能霸著電話線煲電話粥,只能每分鐘用電話遙控一次,那水溫或許可以表示為
下一分鐘水溫=0.7×現(xiàn)在水溫+0.2×上一分鐘水溫+0.1×再上一分鐘水溫+0.4×(5min前鍋爐房水龍頭開度-6min前鍋爐房水龍頭開度)
顯然,下一分鐘的水溫受現(xiàn)在水溫的影響比上一分鐘水溫的影響要大,受上一分鐘的水溫影響比再上一分鐘水溫的影響更大。不考慮管路散熱的話,鍋爐房水龍頭開度要是不變,再過上幾分鐘,下一分鐘的水溫應(yīng)該和現(xiàn)在的水溫一樣了。事實(shí)上,上一分鐘和再上一分鐘的水溫也一樣了。為什么用5min前鍋爐房的水龍頭開度呢?那是因?yàn)闊崴畯拇孱^的鍋爐房流到洗澡房需要5min時(shí)間,這個(gè)時(shí)間就是滯后。
在連續(xù)時(shí)間域里,滯后是一個(gè)很難處理的事情。反饋控制是根據(jù)當(dāng)前測量值做出反應(yīng)的。過程滯后意味著當(dāng)前的測量值實(shí)際上是滯后時(shí)間之前控制動(dòng)作的結(jié)果,如果盲目地用當(dāng)前的控制動(dòng)作試圖影響下一步的過程,就會(huì)出問題。以村頭鍋爐房為例,現(xiàn)在感覺水涼了,這是5min前熱水不足的結(jié)果,要是現(xiàn)在加大熱水,至少要5min后才顯示出結(jié)果。要時(shí)刻記住這個(gè)時(shí)間差。要是不考慮這個(gè)滯后,性急地不斷加大熱水,5min后水就要太燙了。但連續(xù)控制律在設(shè)計(jì)和實(shí)施中都不容易考慮這5min的滯后問題,在離散時(shí)間域里,這個(gè)問題就好解決了。
還是用要是上述離散模型:
未來第6min水溫=0.7×未來第5min水溫+0.2×未來第4min水溫+0.1×未來第3min水溫+0.4×(當(dāng)前鍋爐房水龍頭開度-1min 前鍋爐房水龍頭開度)
未來第5min水溫=0.7×未來第4min水溫+0.2×未來第3min水溫+0.1×未來第2min水溫+0.4×(1min前鍋爐房水龍頭開度-2min前鍋爐房水龍頭開度)
未來第4min水溫=0.7×未來第3min水溫+0.2×未來第2min水溫+0.1×未來1min水溫+0.4×(2min前鍋爐房水龍頭開度-3min前鍋爐房水龍頭開度)
......
未來1min 水溫=0.7×當(dāng)前水溫+0.2×1min 前水溫+0.1×2min 前水溫+0.4×(5min前鍋爐房水龍頭開度-6min前鍋爐房水龍頭開度)
依次迭代進(jìn)去,就可以得出未來第6min水溫與當(dāng)前和過去的水溫及鍋爐房水龍頭開度的關(guān)系。當(dāng)前與過去的水溫和過去的鍋爐房水龍頭開度是已知的,把預(yù)估第6min的水溫定為要求的溫度,也就是設(shè)定值,就可以此為基礎(chǔ),解算當(dāng)前所需的鍋爐房水龍頭開度,這就是以模型為基礎(chǔ)的預(yù)估控制器(Model Predictive Control)的基本設(shè)計(jì)思路。
離散模型的預(yù)估作用是非常重要的特質(zhì),所有預(yù)報(bào)模型都是建立在離散模型的這個(gè)預(yù)估能力上的,無論是天氣預(yù)報(bào),還是經(jīng)濟(jì)預(yù)測,還是自動(dòng)控制里對有滯后過程的控制。
數(shù)字控制的另一特質(zhì)是可以實(shí)施一些不可能在連續(xù)時(shí)間實(shí)現(xiàn)的控制規(guī)律。航天飛機(jī)的末段速度控制很重要,在著陸進(jìn)近時(shí),速度變化超過預(yù)定要求達(dá)到 20km/h以上的話,就可能會(huì)對著陸接地造成問題,不是沖出跑道終點(diǎn),就是還沒有到達(dá)跑道起點(diǎn)就觸地。航天飛機(jī)是無動(dòng)力滑翔著陸,是一錘子買賣,不能出差錯(cuò),必須精細(xì)控制。但在再入大氣層初期,速度控制也很重要,太快了要造成過度氣動(dòng)加熱,或者導(dǎo)致著陸速度太高造成危險(xiǎn);太慢了當(dāng)然也不行,飛不到著陸跑道就壞事了,航天飛機(jī)可不是什么地方都能著陸的。但是在速度高達(dá)25馬赫的再入大氣層初期,20km/h的速度差別根本可以忽略不計(jì),200km/h的速度差別才值得引起注意。換句話說,設(shè)定值與實(shí)際值之差為20km/h并不一定很重要,但設(shè)定值與實(shí)際值相差10%,那就需要強(qiáng)有力的控制校正。換句話說,控制誤差由通常的差值變?yōu)楸戎担瑯樱刂屏恳矐?yīng)該由從當(dāng)前值開始的增量改變?yōu)榘俜?/span>比式的相對變化。這樣,控制律就可以表示為:
當(dāng)前的控制量=上一步的控制量×(設(shè)定值/當(dāng)前的測量值)
也就是說,在被控變量高于設(shè)定值10%的情況下,控制量也增加10%;測量值和設(shè)定值一樣時(shí),控制量不再變化。實(shí)際使用時(shí),誰除以誰要根據(jù)控制器的正反作用來決定,上面是正作用的情況,反作用的話,控制律把分子分母顛倒一下。這個(gè)控制律還可以進(jìn)一步修改成為:
當(dāng)前的控制量=上一步的控制量×(當(dāng)前的測量值/設(shè)定值)k
k次方是用來調(diào)整控制律對“偏差”(這時(shí)已經(jīng)不是差值,而是比值了,嚴(yán)格地說,應(yīng)該叫作“偏比”)的靈敏度,相當(dāng)于控制增益。這個(gè)控制律實(shí)際上相當(dāng)于對數(shù)空間的純積分控制,對很多常見的非線性過程有不錯(cuò)的效果,實(shí)現(xiàn)也簡單。要是有興趣,這還可以進(jìn)一步擴(kuò)展為對數(shù)空間的PID控制律。然而,這是一個(gè)本質(zhì)離散的控制律,在連續(xù)時(shí)間里無法實(shí)現(xiàn)。
另一個(gè)巧妙的“數(shù)字專用”控制律牽涉到系統(tǒng)平均停留時(shí)間。反應(yīng)器的容積是固定的,但通過反應(yīng)器的總流量隨產(chǎn)量甚至產(chǎn)品而變。有時(shí)工藝條件可以解放出一點(diǎn)增產(chǎn)空間,有時(shí)因?yàn)槭袌鲫P(guān)系而需要限產(chǎn),這樣通過的流量就不固定了。這可以用自適應(yīng)增益來解決,但也可以換一個(gè)路子,用可變采樣頻率來解決。反應(yīng)器容積除以通過的體積流量(也就是L/h而不是kg/h)就是反應(yīng)器內(nèi)平均停留時(shí)間,這相當(dāng)于(但不一定等于)反應(yīng)器內(nèi)的時(shí)間常數(shù)。數(shù)字控制通常使用固定的采樣頻率,但如果針對某一通過流量(基準(zhǔn)通過流量)下某一采樣頻率(基準(zhǔn)采樣頻率)整定PID參數(shù),但采樣頻率與通過流量(或者平均停留時(shí)間)的比值保持固定,那按照基準(zhǔn)情況整定的PID參數(shù)就可以繼續(xù)使用了,而不必求助于自適應(yīng)增益。這也是一個(gè)本質(zhì)離散的控制律,在連續(xù)時(shí)間里無法實(shí)現(xiàn)。
離散控制“看一步、走一步”的特性,是連續(xù)控制很難模仿的,也是實(shí)際中極其有用的。
大話現(xiàn)代控制理論之離散控制篇的內(nèi)容到此就結(jié)束了,歡迎大家繼續(xù)關(guān)注《大話現(xiàn)代控制理論之模型與辨識(shí)》。
