連續(xù)控制的精度是開(kāi)關(guān)控制所不可比擬的,但連續(xù)控制的高精度也是有代價(jià)的,這就是穩(wěn)定性問(wèn)題。控制增益決定了控制作用對(duì)偏差的靈敏度。既然增益決定了控制的靈敏度,那么越靈敏豈不越好?非也。 還是用汽車(chē)的定速巡航控制做例子。速度低一點(diǎn),油門(mén)加一點(diǎn),速度低更多,油門(mén)加更多,速度高上去當(dāng)然就反過(guò)來(lái)。但是如果速度低一點(diǎn),油門(mén)就加很多,速度更低,油門(mén)狂加,這樣速度不但不能穩(wěn)定在要求的設(shè)定值上,還可能失控。這就是不穩(wěn)定。所以控制增益的設(shè)定是有講究的。在生活中也有類(lèi)似的例子。國(guó)民經(jīng)濟(jì)過(guò)熱,需要經(jīng)濟(jì)調(diào)整,但調(diào)整過(guò)火,就要造成“硬著陸”,引起衰退;衰退時(shí)需要刺激,同樣,刺激過(guò)火,會(huì)造成“虛假繁榮”。要達(dá)成“軟著陸”,經(jīng)濟(jì)調(diào)整的措施需要恰到好處。這也是一個(gè)經(jīng)濟(jì)動(dòng)態(tài)系統(tǒng)的穩(wěn)定性問(wèn)題。 實(shí)際中到底多少增益才是最合適的,理論上有很多計(jì)算方法,但實(shí)用中一般是靠經(jīng)驗(yàn)和調(diào)試來(lái)摸索最佳增益,業(yè)內(nèi)行話叫參數(shù)整定。如果系統(tǒng)響應(yīng)在控制作用后面拖拖沓沓,大幅度振蕩的話,那一般是積分太過(guò);如果系統(tǒng)響應(yīng)非常神經(jīng)質(zhì),動(dòng)不動(dòng)就打擺子,呈現(xiàn)高頻小幅度振蕩的話,那一般是微分有點(diǎn)過(guò)分。中頻振蕩當(dāng)然就是比例的問(wèn)題了。不過(guò)各個(gè)系統(tǒng)的頻率都是不一樣的,到底什么算高頻,什么算低頻,這個(gè)幾句話說(shuō)不清楚,應(yīng)了毛主席那句話:“具體情況具體分析”,所以就打一個(gè)哈哈了。 再具體說(shuō)起來(lái),參數(shù)整定有兩個(gè)路子。一是首先調(diào)試比例增益以保證基本的穩(wěn)定性,然后加必要的積分以消除余差,只有在最必要的情況下,比如反映遲緩的溫度過(guò)程或容量極大的液位過(guò)程,測(cè)量噪聲很低,才加一點(diǎn)微分。這是“學(xué)院派”的路子,在大部分情況下很有效。但是工業(yè)界有一個(gè)“歪路子”:用非常小的比例作用,但大大強(qiáng)化積分作用。這個(gè)方法是完全違背控制理論的分析的,但在實(shí)際中卻是行之有效,原因在于測(cè)量噪聲嚴(yán)重,或系統(tǒng)反應(yīng)過(guò)敏時(shí),積分為主的控制規(guī)律動(dòng)作比較緩和,不易激勵(lì)出不穩(wěn)定的因素,尤其是不確定性比較高的高頻部分,這也是***“穩(wěn)定壓倒一切”的初衷吧。 在很多情況下,在初始PID參數(shù)整定之后,只要系統(tǒng)沒(méi)有出現(xiàn)不穩(wěn)定或性能顯著退化,一般不會(huì)去重新整定。但是要是系統(tǒng)不穩(wěn)定了怎么辦呢?由于大部分實(shí)際系統(tǒng)都是開(kāi)環(huán)穩(wěn)定的,也就是說(shuō),只要控制作用恒定不變,系統(tǒng)響應(yīng)最終應(yīng)該穩(wěn)定在一個(gè)數(shù)值,盡管可能不是設(shè)定值,所以對(duì)付不穩(wěn)定的第一個(gè)動(dòng)作都是把比例增益減小,根據(jù)實(shí)際情況,減小1/3、1/2甚至更多,同時(shí)加大積分時(shí)間常數(shù),常常成倍地加,再就是減小甚至取消微分控制作用。如果有前饋控制,適當(dāng)減小前饋增益也是有用的。在實(shí)際中,系統(tǒng)性能不會(huì)莫名其妙地突然變壞,上述“救火”式重新整定常常是臨時(shí)性的,等生產(chǎn)過(guò)程中的機(jī)械或原料問(wèn)題消除后,參數(shù)還是要設(shè)回原來(lái)的數(shù)值,否則系統(tǒng)性能會(huì)太過(guò)“懶散”。 對(duì)于新工廠,系統(tǒng)還沒(méi)有投運(yùn),沒(méi)法根據(jù)實(shí)際響應(yīng)來(lái)整定,一般先估計(jì)一個(gè)初始參數(shù),在系統(tǒng)投運(yùn)的過(guò)程中,對(duì)控制回路逐個(gè)整定。我自己的經(jīng)驗(yàn)是,對(duì)于一般的流量回路,比例定在0.5左右,積分大約1分鐘,微分為0,這個(gè)組合一般不致于一上來(lái)就出大問(wèn)題。溫度回路可以從2、5、0.05開(kāi)始,液位回路從5、10、0開(kāi)始,氣相壓力回路從10、20、0開(kāi)始。既然這些都是憑經(jīng)驗(yàn)的估計(jì),那當(dāng)然要具體情況具體分析,不可能“放之四海而皆準(zhǔn)”。 微分一般用于反應(yīng)遲緩的系統(tǒng),但是事情總有一些例外。我就遇到過(guò)一個(gè)小小的冷凝液罐,直徑才兩英尺,長(zhǎng)不過(guò)5英尺,但是流量倒要8-12噸/小時(shí),一有風(fēng)吹草動(dòng),液位變化非常迅速,不管比例、積分怎么調(diào),液位很難穩(wěn)定下來(lái),常常是控制閥剛開(kāi)始反應(yīng),液位已經(jīng)到頂或到底了。最后加了0.05的微分,液位一開(kāi)始變化,控制閥就開(kāi)始抑制,反而穩(wěn)定下來(lái)了。這和常規(guī)的參數(shù)整定的路子背道而馳,但在這個(gè)情況下,反而是“唯一”的選擇,因?yàn)闇y(cè)量值和控制閥的飽和變成穩(wěn)定性主要的問(wèn)題了。 對(duì)工業(yè)界以積分為主導(dǎo)控制作用的做法再啰嗦幾句。學(xué)術(shù)上,控制的穩(wěn)定性基本就是漸近穩(wěn)定性,BIBO穩(wěn)定性是沒(méi)有辦法證明漸近穩(wěn)定性時(shí)的“退而求其次”的東西,不怎么上臺(tái)面的。但是工業(yè)界里的穩(wěn)定性有兩個(gè)看起來(lái)相似、實(shí)質(zhì)上不盡相同的方面:一個(gè)當(dāng)然是漸近穩(wěn)定性,另一個(gè)則是穩(wěn)定性,但不一定向設(shè)定值收斂,或者說(shuō)穩(wěn)定性比收斂性?xún)?yōu)先這樣一個(gè)情況。具體來(lái)說(shuō),就是需要系統(tǒng)穩(wěn)定在一個(gè)值上,不要?jiǎng)觼?lái)動(dòng)去,但是不是在設(shè)定值并不是太重要,只要不是太離譜就行。例子有很多,比如反應(yīng)器的壓力是一個(gè)重要參數(shù),反應(yīng)器不穩(wěn)定,原料進(jìn)料比例就亂套,催化劑進(jìn)料也不穩(wěn)定,反應(yīng)就不穩(wěn)定,但是反應(yīng)器的壓力到底是10個(gè)大氣壓還是12個(gè)大氣壓,并沒(méi)有太大的關(guān)系,只要慢慢地但是穩(wěn)定地向設(shè)定值移動(dòng)就足夠了。這是控制理論里比較少涉及的一個(gè)情況,這也是工業(yè)上時(shí)常采用積分主導(dǎo)的控制的一個(gè)重要原因。 前面說(shuō)到系統(tǒng)的頻率,本來(lái)也就是系統(tǒng)響應(yīng)持續(xù)振蕩時(shí)的頻率,但是控制領(lǐng)域里有三撥人在搗騰:一撥是以機(jī)電類(lèi)動(dòng)力學(xué)系統(tǒng)為特色的電工出身,包括航空、機(jī)器人等,一撥是以連續(xù)過(guò)程為特色的化工出身的,包冶金、造紙等,還有一撥是以微分方程穩(wěn)定性為特色的應(yīng)用數(shù)學(xué)出身的。在瓦特和抽水馬桶的年代里,各打各的山頭,井水不犯河水,倒也太平。但控制從藝術(shù)上升為理論后,總有人喜歡“統(tǒng)一”,電工幫搶了先,好端端的控制理論里被塞進(jìn)了電工里的頻率。童子們哪,那哪是頻率啊,那是……復(fù)頻率。既然那些**的電工幫(啊耶,這下鹿踹真的要來(lái)了)能折騰出虛功率,那他們也能折騰出復(fù)頻率來(lái),他們自虐倒也算了,只是苦了我等無(wú)辜之眾,被迫受此精神折磨。 事情的緣由是系統(tǒng)的穩(wěn)定性。前面提到,PID的參數(shù)如果設(shè)得不好,系統(tǒng)可能不穩(wěn)定。除了摸索,有沒(méi)有辦法從理論上計(jì)算出合適的PID參數(shù)呢?前面也提到,動(dòng)態(tài)過(guò)程可以用微分方程描述,其實(shí)在PID的階段,這只是微分方程中很狹窄的一支:?jiǎn)巫兞烤性常微分方程。要是還記得大一高數(shù),一定還記得線形常微的解,除了分離變量法什么的,如果自變量時(shí)間用t表示的話,最常用的求解還是把exp(λt)代入微分方程,然后解已經(jīng)變成λ的代數(shù)方程的特征方程,解出來(lái)的解可以是實(shí)數(shù),也可以是復(fù)數(shù),是復(fù)數(shù)的話,就要用三角函數(shù)展開(kāi)了(怎么樣,大一噩夢(mèng)的感覺(jué)找回來(lái)一點(diǎn)沒(méi)有?)。只要實(shí)根為負(fù),那微分方程就是穩(wěn)定的,因?yàn)樨?fù)的指數(shù)項(xiàng)最終向零收斂,復(fù)根到底多少就無(wú)所謂了,對(duì)穩(wěn)定性沒(méi)有影響。但是,這么求解分析起來(lái)還是不容易,還是超不出“具體情況具體分析”,難以得出一般的結(jié)論。 法國(guó)人以好色、好吃出名,但是他們食色性也之后,還不老實(shí),其中一個(gè)叫拉普拉斯的家伙,搗鼓出什么拉普拉斯變換,把常微分方程變成s的多項(xiàng)式。然后那幫電工的家伙們,喜歡自虐,往s里塞jω,就是那個(gè)復(fù)頻率,整出一個(gè)**的頻率分析,用來(lái)分析系統(tǒng)的穩(wěn)定性。不過(guò)說(shuō)**,也不完全公平,在沒(méi)有計(jì)算機(jī)的年代,各種圖表是最有效的分析方法,還美其名曰“幾何分析”。頻率分析也不例外。 美國(guó)佬Evans搞出一個(gè)根軌跡(root locus),思路倒是滿(mǎn)有意思的。他用增益作自變量,將系統(tǒng)的根(不管實(shí)的虛的)在復(fù)平面上畫(huà)出軌跡來(lái),要是軌跡在左半平面打轉(zhuǎn)轉(zhuǎn),那就是實(shí)根為負(fù),就是穩(wěn)定的。再深究下去,系統(tǒng)響應(yīng)的臨界頻率之類(lèi)也可以計(jì)算出來(lái)。最大的好處是,對(duì)于常見(jiàn)的系統(tǒng),可以給出一套作圖規(guī)則來(lái),熟練的大牛、小牛、公牛、母牛們,眼睛一瞄,隨手就可以畫(huà)出根軌跡來(lái),然后就可以告訴你,增益變化多多少,系統(tǒng)開(kāi)始振蕩,再增加多少,系統(tǒng)會(huì)不穩(wěn)定,云云。 根軌跡還是比較客氣的,還有更**的奈奎斯特、伯德和尼科爾斯法,想想腦子都大。都是叫那幫電工分子害的。時(shí)至今日,計(jì)算機(jī)分析已經(jīng)很普及了,但是古典的圖示分析還是有經(jīng)久不衰的魅力,就是因?yàn)閳D示分析不光告訴你系統(tǒng)是穩(wěn)定還是不穩(wěn)定,以及其他一些動(dòng)態(tài)響應(yīng)的參數(shù),圖示分析還可以定性地告訴你增益變化甚至系統(tǒng)參數(shù)變化引起的閉環(huán)性能變化。咦,剛才還不是在說(shuō)人家**嗎?呃,**也有**的魅力不是?哈哈。 以頻率分析(也稱(chēng)頻域分析)為特色的控制理論稱(chēng)為經(jīng)典控制理論。經(jīng)典控制理論可以把系統(tǒng)的穩(wěn)定性分析得天花亂墜,但有兩個(gè)前提:一、要已知被控對(duì)象的數(shù)學(xué)模型,這在實(shí)際中不容易得到;二、被控對(duì)象的數(shù)學(xué)模型不會(huì)改變或漂移,這在實(shí)際中更難做到。對(duì)簡(jiǎn)單過(guò)程建立微分方程是可能的,但簡(jiǎn)單過(guò)程的控制不麻煩,經(jīng)驗(yàn)法參數(shù)整定就搞定了,不需要費(fèi)那個(gè)麻煩,而真正需要理論計(jì)算幫忙的回路,建立模型太困難,或者模型本身的不確定性很高,使得理論分析失去意義。經(jīng)典控制理論在機(jī)械、航空、電機(jī)中還是有成功的應(yīng)用,畢竟從F=ma出發(fā),可以建立“所有”的機(jī)械系統(tǒng)的動(dòng)力學(xué)模型,鐵疙瘩的重量又不會(huì)莫名其妙地改變,主要環(huán)境參數(shù)都可以測(cè)量,但是經(jīng)典控制理論至少在化工控制中實(shí)用成功的例子實(shí)在是鳳毛麟角,給你一個(gè)50塊塔板的精餾塔,一個(gè)氣相進(jìn)料,一個(gè)液相進(jìn)料,塔頂、塔底出料加一個(gè)側(cè)線出料,塔頂風(fēng)冷冷凝器,塔底再沸器加一個(gè)中間再沸器,你就慢慢建模去吧,等九牛二虎把模型建立起來(lái)了,風(fēng)冷冷凝器受風(fēng)霜雨雪的影響,再沸器的高壓蒸汽的壓力受友鄰裝置的影響,氣相進(jìn)料的溫度和飽和度受上游裝置的影響而改變,液相進(jìn)料的混合組分受上游裝置的影響而改變,但組分無(wú)法及時(shí)測(cè)量(在線氣相色譜分析結(jié)果要45分鐘才能出來(lái)),動(dòng)態(tài)特性全變了。 老家伙歌德兩百年前就說(shuō)了,理論是灰色的,生命之樹(shù)常青。我們知道馬鹿喜歡金光的或者銀光的,至少也要紅的,不過(guò)只好將就啦,青綠地干活。在實(shí)用中,PID有很多表兄弟,幫著大表哥一塊打天下。 比例控制的特點(diǎn)是:偏差大,控制作用就大。但在實(shí)際中有時(shí)還嫌不夠,最好偏差大的時(shí)候,比例增益也大,進(jìn)一步加強(qiáng)對(duì)大偏差的矯正作用,及早把系統(tǒng)拉回到設(shè)定值附近;偏差小的時(shí)候,當(dāng)然就不用那么急吼吼,慢慢來(lái)就行,所以增益小一點(diǎn),加強(qiáng)穩(wěn)定性。這就是雙增益PID(也叫雙模式PID)的起源。 想想也對(duì),高射炮瞄準(zhǔn)敵機(jī)是一個(gè)控制問(wèn)題。如果炮管還指向離目標(biāo)很遠(yuǎn)的角度,那應(yīng)該先盡快地把炮管轉(zhuǎn)到目標(biāo)角度附近,動(dòng)作猛一點(diǎn)才好;但炮管指向已經(jīng)目標(biāo)很近了,就要再慢慢地精細(xì)瞄準(zhǔn)。工業(yè)上也有很多類(lèi)似的問(wèn)題。雙增益PID的一個(gè)特例是死區(qū)PID(PID with dead band),小偏差時(shí)的增益為零,也就是說(shuō),測(cè)量值和設(shè)定值相差不大的時(shí)候,就隨他去,不用控制。這在大型緩沖容器的液位控制里用得很多。本來(lái)緩沖容器就是緩沖流量變化的,液位到底控制在什么地方并不緊要,只要不是太高或太低就行。但是,從緩沖容器流向下游裝置的流量要盡可能穩(wěn)定,否則下游裝置會(huì)受到不必要的擾動(dòng)。死區(qū)PID對(duì)這樣的控制問(wèn)題是最合適的。但是天下沒(méi)有免費(fèi)的午餐。死區(qū)PID的前提是液位在一般情況下會(huì)“自動(dòng)”穩(wěn)定在死區(qū)內(nèi),如果死區(qū)設(shè)置不當(dāng),或系統(tǒng)經(jīng)常受到大幅度的擾動(dòng),死區(qū)內(nèi)的“無(wú)控”狀態(tài)會(huì)導(dǎo)致液位不受限制地向死區(qū)邊界“挺進(jìn)”,最后進(jìn)入“受控”區(qū)時(shí),控制作用過(guò)火,液位向相反方向不受限制地“挺進(jìn)”,最后的結(jié)果是液位永遠(yuǎn)在死區(qū)的兩端振蕩,而永遠(yuǎn)不會(huì)穩(wěn)定下來(lái),業(yè)內(nèi)叫hunting(打獵?打什么?打鹿?)。雙增益PID也有同樣的問(wèn)題,只是比死區(qū)PID好一些,畢竟只有“強(qiáng)控制”和“弱控制”的差別,而沒(méi)有“無(wú)控區(qū)”。在實(shí)用中,雙增益的內(nèi)外增益差別小于2:1沒(méi)有多大意義,大于5:1就要注意上述的持續(xù)振蕩或hunting的問(wèn)題。 雙增益或死區(qū)PID的問(wèn)題在于增益的變化是不連續(xù)的,控制作用在死區(qū)邊界上有一個(gè)突然的變化,容易誘發(fā)系統(tǒng)的不利響應(yīng),平方誤差PID就沒(méi)有這個(gè)問(wèn)題。誤差一經(jīng)平方,控制量對(duì)誤差的曲線就成了拋物線,同樣達(dá)到“小偏差小增益、大偏差大增益”的效果,還沒(méi)有和突然的不連續(xù)的增益變化。但是誤差平方有兩個(gè)問(wèn)題:一是誤差接近于零的時(shí)候,增益也接近于零,回到上面死區(qū)PID的問(wèn)題;二是很難控制拋物線的具體形狀,或者說(shuō),很難制定增益在什么地方拐彎。對(duì)于第一個(gè)問(wèn)題,可以在誤差平方PID上加一個(gè)基本的線性PID,是零誤差是增益不為零;對(duì)于后一個(gè)問(wèn)題,就要用另外的模塊計(jì)算一個(gè)連續(xù)變化的增益了。具體細(xì)節(jié)比較瑣碎,將偏差送入一個(gè)分段線性化(也就是折線啦)的計(jì)算單元,然后將計(jì)算結(jié)果作為比例增益輸出到PID控制器,折線的水平段就對(duì)應(yīng)予不同的增益,而連接不同的水平段的斜線就對(duì)應(yīng)于增益的連續(xù)變化。通過(guò)設(shè)置水平段和斜線段的折點(diǎn),可以任意調(diào)整變?cè)鲆娴那。要是“野心”大一點(diǎn),再加幾個(gè)計(jì)算單元,可以做出不對(duì)稱(chēng)的增益,也就是升溫時(shí)增益低一點(diǎn),降溫時(shí)增益高一點(diǎn),以處理加熱過(guò)程中常見(jiàn)的升溫快、降溫慢的問(wèn)題。 雙增益或誤差平方都是在比例增益上作文章,同樣的勾當(dāng)也可以用在積分和微分上。更極端的一種PID規(guī)律叫積分分離PID,其思路是這樣的:比例控制的穩(wěn)定性好,響應(yīng)快,所以偏差大的時(shí)候,把PID中的積分關(guān)閉掉;偏差小的時(shí)候,精細(xì)調(diào)整、消除余差是主要問(wèn)題,所以減弱甚至關(guān)閉比例作用,而積分作用切入控制。概念是好的,但具體實(shí)施的時(shí)候,有很多無(wú)擾動(dòng)切換的問(wèn)題。 這些**的PID在理論上很難分析系統(tǒng)的穩(wěn)定性,但在實(shí)用中解決了很多困難的問(wèn)題。大言不慚一句,這些PID本人在實(shí)際中都用過(guò)。打仗時(shí),如果敵人太頑固,要么換更大的炮,把敵人轟倒;要么采用更巧妙的戰(zhàn)術(shù),把敵人暈倒。控制也是一樣,單回路PID難以解決的問(wèn)題,常常可以通過(guò)更巧妙的回路結(jié)構(gòu)來(lái)解決。 單一的PID回路當(dāng)然可以實(shí)現(xiàn)擾動(dòng)抑制,但要是主要擾動(dòng)在回路中,而且是明確的,加一個(gè)內(nèi)回路作幫手是一個(gè)很不錯(cuò)的主意。還記得洗熱水澡的例子嗎?要是熱水壓力不穩(wěn)定,老是要為這個(gè)而調(diào)整熱水龍頭,那很麻煩。要是有一個(gè)人專(zhuān)門(mén)負(fù)責(zé)根據(jù)熱水壓力調(diào)節(jié)熱水流量,把熱水壓力穩(wěn)定下來(lái),而且穩(wěn)定在標(biāo)定值,那洗澡的時(shí)候,水溫就容易控制多了,只要告訴那個(gè)人現(xiàn)在需要多少熱水流量,而不必?zé)┬臒崴畨毫?duì)熱水流量的影響。這個(gè)負(fù)責(zé)熱水流量的控制回路就是內(nèi)回路,也叫副回路,而洗澡的溫度就是外回路,也叫主回路,當(dāng)然是主回路指揮副回路,就像自動(dòng)化指揮機(jī)械化、學(xué)自控的人指揮學(xué)機(jī)電的人……打住打住,再扯遠(yuǎn)了要挨鹿踹了,或者馬踹、牛踹、驢踹……。這種主回路套副回路的結(jié)構(gòu)叫串級(jí)控制(cascade control),曾經(jīng)是單回路PID后工業(yè)上第一種“先進(jìn)過(guò)程控制”,現(xiàn)在串級(jí)已經(jīng)用得很多了,也不再有人叫它“先進(jìn)過(guò)程控制”了。串級(jí)控制最主要的功用是抑制回路內(nèi)的擾動(dòng),增強(qiáng)總體控制性能。不過(guò)串級(jí)也不能亂用。如果主回路和副回路的相應(yīng)速度差不多,或者主回路的相應(yīng)速度甚至慢于副回路(通過(guò)**的調(diào)試是可以做到的),這樣的串級(jí)要出問(wèn)題。理論上可以用共振頻率什么的分析,但是不用費(fèi)那個(gè)事,用膝蓋想想就知道,一個(gè)急性子的頭兒把一個(gè)溫吞水的下屬指揮得團(tuán)團(tuán)轉(zhuǎn),結(jié)果只能是大家都精疲力竭,事情還辦砸了。相反,一個(gè)鎮(zhèn)定自若的頭兒指揮一個(gè)手腳麻利的下屬,那事情肯定辦得好。 如果主要擾動(dòng)在回路以外,但是可以預(yù)知,那就要用另一個(gè)辦法,就是馬鹿前面說(shuō)到的前饋了。還是用洗熱水澡的例子。如果冷水管和同一個(gè)水房的抽水馬桶功用,你在洗澡,別人一抽水,那你就變煮熟的龍蝦了(本想說(shuō)猴子PP的,但是那個(gè)不雅,我們要五講四美不是?)。這個(gè)時(shí)候,要使那個(gè)人在抽水的同時(shí)告訴你一聲 ,你算好時(shí)間,算好量,猛減熱水,那溫度還是可以大體不變的。這就是所謂前饋控制(feedforward control)。前饋控制有兩個(gè)要緊的東西:一是定量的擾動(dòng)對(duì)被控變量的影響,也就是所謂前饋增益;二是擾動(dòng)的動(dòng)態(tài),別人抽水到洗澡龍頭的水溫變熱,這里面有一個(gè)過(guò)程,不是立時(shí)三刻的。如果可以精確知道這兩樣?xùn)|西,那前饋補(bǔ)償可以把可測(cè)擾動(dòng)完全補(bǔ)償?shù)簟5珜?shí)際上沒(méi)有精確知道的事情,要是指望前饋來(lái)完全補(bǔ)償,弄巧成拙是肯定的。所以前饋通常和反饋一起用,也就是在PID回路上再加一個(gè)前饋。一般也只用靜態(tài)前饋,也就是只補(bǔ)償擾動(dòng)對(duì)被控變量的靜態(tài)影響,而忽略擾動(dòng)的動(dòng)態(tài)因素,主要是為了靜態(tài)前饋已經(jīng)把前饋80%的好處發(fā)掘出來(lái)了,動(dòng)態(tài)前饋既復(fù)雜又不可靠,在PID回路里很少有人用。理論上的前饋都是在PID的控制作用上再加一個(gè)前饋?zhàn)饔茫瑢?shí)際上也可以乘一個(gè)控制作用。乘法前饋的作用太猛,我從來(lái)沒(méi)有用過(guò),一般都是用加法。在實(shí)施中,前饋是和擾動(dòng)的變化(也就是增量)成比例的,所以擾動(dòng)變量不變了,前饋?zhàn)饔镁拖В駝t,整定前饋控制增益會(huì)對(duì)PID主回路造成擾動(dòng)。前饋增益可以根據(jù)粗略計(jì)算得到,比如說(shuō),抽水的量會(huì)造成溫度下降多少、需要調(diào)整多少熱水流量才能維持溫度,這不難從熱量平衡算出來(lái)。不想費(fèi)這個(gè)事的話,也可以從歷史數(shù)據(jù)中推算。一般算出來(lái)一個(gè)前饋增益后,打上7折甚至5折再用,保險(xiǎn)一點(diǎn),不要矯枉過(guò)正。 前饋?zhàn)饔靡话闶怯米鬏o助控制作用的,但是在特殊情況下,前饋也可以作為“預(yù)加載”(pre-loading)作為基準(zhǔn)控制作用。比如說(shuō),在一個(gè)高壓系統(tǒng)的啟動(dòng)過(guò)程中,壓力可以從靜止?fàn)顟B(tài)的常壓很快地什到很高的壓力。高壓系統(tǒng)不容許閥門(mén)大幅度運(yùn)動(dòng),所以控制增益都比較低,但是這樣一來(lái),啟動(dòng)升壓過(guò)程中,壓力控制的反應(yīng)就十分遲緩,容易造成壓力過(guò)高。這時(shí)用壓縮機(jī)的轉(zhuǎn)速或高壓進(jìn)料的流量作前饋,將壓力控制閥“預(yù)先”放到大概的位置,然后再用反饋慢慢調(diào)節(jié),就可以解決這個(gè)問(wèn)題。 有點(diǎn)搞笑兄在前面提到用單個(gè)閥門(mén)有時(shí)難以控制大范圍變化的流量,這是一個(gè)很實(shí)際的問(wèn)題。工業(yè)閥門(mén)一般turn down只有10:1,也就是說(shuō),如果這個(gè)閥門(mén)的最大流量是100噸/小時(shí)的話,低于10噸/小時(shí)就難以控制了,當(dāng)然,高于90噸/小時(shí)也幾近失去控制。所以,要真的保證0-100的精確控制,需要將一個(gè)大閥和一個(gè)小閥并列,小閥負(fù)責(zé)小流量時(shí)的精確控制,大閥負(fù)責(zé)大流量時(shí)的精確控制,這就是所謂的分程控制(split range control)。分程控制時(shí),小閥首先打開(kāi),超過(guò)小閥最大流量是小閥就固定在全開(kāi)位置,大閥開(kāi)始打開(kāi),接過(guò)控制。這是開(kāi)-開(kāi)型分程控制。也有關(guān)-開(kāi)型分程控制,比如反應(yīng)器夾套溫度控制,隨溫度逐漸上升,冷卻水逐漸關(guān)閉,直到冷卻水全關(guān),加熱蒸氣開(kāi)始打開(kāi)。分程控制當(dāng)然不一定只有兩截,三截甚至更多都是可以的,道理都一樣。分程控制的問(wèn)題在于不同閥門(mén)的交接點(diǎn)。閥門(mén)在特別小的開(kāi)度時(shí),控制非常不靈敏,前面說(shuō)到的10:1也是這個(gè)道理。所以實(shí)用中,開(kāi)-開(kāi)型分程控制常常在交接點(diǎn)附近有一段重疊,也就是小閥快要全開(kāi)但還沒(méi)有全開(kāi)時(shí),大閥已經(jīng)開(kāi)始動(dòng)作,這樣,到小閥全開(kāi)、不能再動(dòng)彈時(shí),大閥已經(jīng)進(jìn)入有效控制范圍。關(guān)-開(kāi)型分程控制常常在交接點(diǎn)設(shè)置一個(gè)死區(qū),避免出現(xiàn)兩個(gè)閥都有一點(diǎn)點(diǎn)開(kāi)度的情況。分程控制的交接點(diǎn)的設(shè)置有一點(diǎn)講究,應(yīng)該根據(jù)閥的大小。比如A閥比B閥大一倍,那分程點(diǎn)應(yīng)該設(shè)在1/3先開(kāi)B閥,而不是懶漢做法的1/2。 很多過(guò)程參數(shù)都是可以測(cè)量的,但也有很多參數(shù)是沒(méi)法直接測(cè)量的,這時(shí),如果能夠通過(guò)別的可以測(cè)量的過(guò)程參數(shù)來(lái)間接計(jì)算真正需要控制的參數(shù),這就是所謂的推斷控制(inferential control)。比如精餾塔頂?shù)漠a(chǎn)品純度可以用氣相色譜(gas chromatograph,GC)來(lái)測(cè)量,但結(jié)果要等40分鐘才能出來(lái),用來(lái)做實(shí)時(shí)控制,黃花菜都涼了。推斷控制是和“軟傳感器”(soft sensor)的概念緊密相連的。 對(duì)精餾塔塔頂純度這個(gè)例子來(lái)說(shuō),可以用純度和塔頂溫度、壓力作一個(gè)數(shù)學(xué)模型,用可以測(cè)量的溫度和壓力,間接計(jì)算出純度。在計(jì)算機(jī)控制普及的今天,這是很容易實(shí)現(xiàn)的,但是在很多地方,推斷控制仍然被看成很神秘的東西,悲哀。 有的時(shí)候,對(duì)同一個(gè)變量有不止一個(gè)控制手段。比如說(shuō),風(fēng)冷器有風(fēng)扇的轉(zhuǎn)速可以調(diào)節(jié),也有百葉窗的開(kāi)度可以調(diào)節(jié)。風(fēng)扇轉(zhuǎn)速的效果快,控制精確;百葉窗開(kāi)度的效果猛,不容易掌握,但有利于節(jié)能。所以,可以用風(fēng)扇的快速響應(yīng)來(lái)控制溫度,但是用百葉窗開(kāi)度來(lái)通過(guò)溫度間接地緩慢地影響風(fēng)扇的轉(zhuǎn)速,使風(fēng)扇轉(zhuǎn)速回到最經(jīng)濟(jì)的設(shè)定。當(dāng)然百葉窗開(kāi)度的控制回路必須要比風(fēng)扇轉(zhuǎn)速的控制回路整定得慢得多,一般是緩慢的純積分控制,否則兩人要打架。由于這相當(dāng)于控制風(fēng)扇轉(zhuǎn)速的“閥位”,工業(yè)上稱(chēng)其為閥位控制(valve position control)。這個(gè)閥位控制也可以變一變,風(fēng)扇轉(zhuǎn)速高于某一數(shù)值(比如80%的最大轉(zhuǎn)速)時(shí),把百葉窗開(kāi)大一格,還是高就繼續(xù)開(kāi)大;風(fēng)扇轉(zhuǎn)速低于某一數(shù)值(比如低于20%最大轉(zhuǎn)速)時(shí),把百葉窗關(guān)小一格。這實(shí)際上是一個(gè)單向的積分作用,不同的地方有兩點(diǎn): 一、有兩個(gè)設(shè)定值,由風(fēng)扇轉(zhuǎn)速是高還是低而定 二、積分作用只有在風(fēng)扇轉(zhuǎn)速在這兩個(gè)“極限”的外面起作用,在里面時(shí),百葉窗的開(kāi)度不變 這樣,風(fēng)扇轉(zhuǎn)速不必回到一個(gè)特定值,而是可以在一個(gè)范圍內(nèi)浮動(dòng)。 另外一個(gè),兩個(gè)控制器“競(jìng)爭(zhēng)”一個(gè)控制閥的情況是選擇性控制(override control或selective control)。舉個(gè)例子,鍋爐的溫度由燃料流量控制,溫度高了,燃料流量就減下來(lái),但是燃料流量低到燃料管路壓力低于爐膛壓力,那要出現(xiàn)危險(xiǎn)的回火,所以,這時(shí),燃料管路壓力就要接管控制,而犧牲爐膛溫度。換句話說(shuō),正常時(shí)候,爐膛溫度控制起作用,燃料管路壓力低于一定數(shù)值時(shí),燃料管路壓力控制器作用。在實(shí)施時(shí),就是爐膛溫度控制器和燃料管路壓力控制器的輸出都接到一個(gè)高選器,然后高選器的輸出接到實(shí)際的燃料閥。這個(gè)概念很清楚,但是初次接觸選擇性控制的人,常常容易被高選還是低選搞糊涂,明明是壓力太低,怎么是高選呢?其實(shí),只要記住高選還是低選是從閥門(mén)這一頭看的,和溫度、壓力的高度沒(méi)有關(guān)系。如果“非常”變量超過(guò)界限了,你要閥門(mén)打開(kāi),那就是高選;你要閥門(mén)關(guān)閉,那就是低選。 PID從二、三十年到開(kāi)始在工業(yè)界廣泛應(yīng)用,戲法變了幾十年,也該換換花樣了。PID說(shuō)一千道一萬(wàn),還是經(jīng)典控制理論的產(chǎn)物。50-60年代時(shí),什么都要現(xiàn)代派,建筑從經(jīng)典的柱式、比例、細(xì)節(jié)的象征意義,變到“形式服從功能”的鋼架玻璃盒子;汽車(chē)從用機(jī)器牽引的馬車(chē),變到流線型的鋼鐵的藝術(shù);控制理論也要緊跟形勢(shì),要現(xiàn)代化。這不,美國(guó)佬卡爾曼隆重推出……現(xiàn)代控制理論。 都看過(guò)舞龍吧?一個(gè)張牙舞爪的龍頭氣咻咻地追逐著一個(gè)大繡球,龍身子扭來(lái)扭去,還時(shí)不時(shí)跳躍那么一兩下。中國(guó)春節(jié)沒(méi)有舞龍,就和洋人的圣誕節(jié)沒(méi)有圣誕老人一樣不可思議。想象一下,如果這是一條看不見(jiàn)的盲龍,只能通過(guò)一個(gè)人在龍尾巴后面指揮龍尾巴,然后再通過(guò)龍身體里的人一個(gè)接一個(gè)地傳遞控制指令,最后使龍頭咬住繡球。這顯然是一個(gè)動(dòng)態(tài)系統(tǒng),龍身越長(zhǎng),人越多,動(dòng)態(tài)響應(yīng)越遲緩。如果只看龍頭的位置,只操控龍尾巴,而忽略龍身子的動(dòng)態(tài),那就是所謂的輸入-輸出系統(tǒng)。經(jīng)典控制理論就是建立在輸入-輸出系統(tǒng)的基礎(chǔ)上的。對(duì)于很多常見(jiàn)的應(yīng)用,這就足夠了。 但是卡爾曼不滿(mǎn)足于“足夠”。龍頭當(dāng)然要看住,龍尾巴當(dāng)然要捏住,但龍身體為什么就要忽略呢?要是能夠看住龍身體,甚至操縱龍身體,也就是說(shuō),不光要控制龍尾巴,控制指令還要直接傳到龍身體里的那些人,那豈不更好?這就是狀態(tài)空間的概念:將一個(gè)系統(tǒng)分解為輸入、輸出和狀態(tài)。輸出本身也是一個(gè)狀態(tài),或者是狀態(tài)的一個(gè)組合。在數(shù)學(xué)上,卡爾曼的狀態(tài)空間方法就是將一個(gè)高階微分方程分解成一個(gè)聯(lián)立的一階微分方程組,這樣可以使用很多線形代數(shù)的工具,在表述上也比較簡(jiǎn)潔、明了。 卡爾曼是一個(gè)數(shù)學(xué)家。數(shù)學(xué)家的想法就是和工程師不一樣。工程師腦子里轉(zhuǎn)的第一個(gè)念頭就是“我怎么控制這勞什子?增益多少?控制器結(jié)構(gòu)是什么樣的?”數(shù)學(xué)家想的卻是什么解的存在性、唯一性之類(lèi)虛頭八腦的東西。不過(guò)呢,這么說(shuō)數(shù)學(xué)家也不公平。好多時(shí)候,工程師憑想象和“實(shí)干”,辛苦了半天,發(fā)現(xiàn)得出的結(jié)果完全不合情理,這時(shí)才想起那些“性”(不要想歪了啊,嘿嘿),原來(lái)那些存在性、唯一性什么的還是有用的。 還是回過(guò)來(lái)看這條龍。現(xiàn)在,龍頭、龍尾巴、龍身體都要看,不光要看,還要直接操控龍頭到龍尾的每一個(gè)人。但是,這龍不是想看就看得的,不是想舞就舞得的。說(shuō)到“看”,直接能夠測(cè)量/觀測(cè)的狀態(tài)在實(shí)際上是不多的,所謂看,實(shí)際上是估算。要是知道龍身體有多少節(jié)(就是有多少個(gè)人在下面撐著啦),龍身體的彈性/韌性有多少,那么捏住龍尾巴抖一抖,再看看龍頭在哪里,是可以估算出龍身體每一節(jié)的位置的,這叫狀態(tài)觀測(cè)。那么,要是這龍中間有幾位童子開(kāi)小差,手不好好拉住,那再捏住龍尾巴亂抖也沒(méi)用,這時(shí)系統(tǒng)中的部分狀態(tài)就是不可觀測(cè)的。如果你一聲令下,部分童子充耳不聞,那這些狀態(tài)就是不可控制的。卡爾曼從數(shù)學(xué)上推導(dǎo)出不可控和不可觀的條件,在根本上解決了什么時(shí)候才不是瞎耽誤工夫的問(wèn)題。這是控制理論的一個(gè)重要里程碑。 再來(lái)看這條龍。如果要看這條龍整齊不整齊,排成縱列的容易看清楚;如果要清點(diǎn)人數(shù),看每一個(gè)人的動(dòng)作,排成橫列的容易看清楚。但是不管怎么排,這條龍還是這條龍,只是看的角度不同。那時(shí)候中國(guó)人的春節(jié)舞龍還沒(méi)有在美國(guó)的中國(guó)城里鬧騰起來(lái),不知道卡爾曼有沒(méi)有看到過(guò)舞龍,反正他把數(shù)學(xué)上的線性變換和線性空間的理論搬到控制里面,從此,搞控制的人有了工具,一個(gè)系統(tǒng)橫著看不順眼的話,可以豎著看,因?yàn)椴还茉趺纯矗到y(tǒng)的本質(zhì)是一樣的。但是不同的角度有不同的用處,有的角度設(shè)計(jì)控制器容易一點(diǎn),有的角度分析系統(tǒng)的穩(wěn)定性容易一點(diǎn),諸如此類(lèi),在控制理論里就叫這個(gè)那個(gè)“標(biāo)準(zhǔn)型”。這是控制理論的又一個(gè)里程碑。 觀測(cè)狀態(tài)的目的最終還是控制。只用輸出的反饋叫輸出反饋,經(jīng)典控制理論里的反饋都可以歸到輸出反饋里,但是用狀態(tài)進(jìn)行反饋的就叫狀態(tài)反饋了。輸出反饋對(duì)常見(jiàn)系統(tǒng)已經(jīng)很有效了,但狀態(tài)反饋要猛得多。你想想,一個(gè)系統(tǒng)的所有狀態(tài)都被牢牢地瞄住,所有狀態(tài)都乖乖地聽(tīng)從調(diào)遣,那是何等的威風(fēng)?臺(tái)商的大奶們的最高境界呀。 盡管學(xué)控制的人都要學(xué)現(xiàn)代控制理論,但大多數(shù)人記得卡爾曼還是因?yàn)槟莻(gè)卡爾曼濾波器(Kalman Filter)。說(shuō)它是濾波器,其實(shí)是一個(gè)狀態(tài)觀測(cè)器(state observer),用來(lái)從輸入和輸出“重構(gòu)”系統(tǒng)的狀態(tài)。這重構(gòu)聽(tīng)著玄妙,其實(shí)不復(fù)雜。不是有系統(tǒng)的數(shù)學(xué)模型嗎?只要模型精確,給它和真實(shí)系統(tǒng)一樣的輸入,它不就乖乖地把系統(tǒng)狀態(tài)給計(jì)算出來(lái)了嗎?且慢:微分方程的解不光由微分方程本身決定,還有一個(gè)初始條件,要是初始條件不對(duì),微分方程的解的形式是正確的,但是數(shù)值永遠(yuǎn)差一拍。卡爾曼在系統(tǒng)模型的微分方程后再加了一個(gè)尾巴,把實(shí)際系統(tǒng)輸出和模型計(jì)算的理論輸出相比較,再乘上一個(gè)比例因子,形成一個(gè)實(shí)際上的狀態(tài)反饋,把狀態(tài)重構(gòu)的偏差漸進(jìn)地消除,解決了初始條件和其他的系統(tǒng)誤差問(wèn)題。卡爾曼濾波器最精妙之處,在于卡爾曼推導(dǎo)出一個(gè)系統(tǒng)的方法,可以考慮進(jìn)測(cè)量噪聲和系統(tǒng)本身的隨機(jī)噪聲,根據(jù)信噪比來(lái)決定上述比例因子的大小。這個(gè)構(gòu)型其實(shí)不是卡爾曼的獨(dú)創(chuàng),隆伯格(Luenburg)也得出了類(lèi)似的結(jié)構(gòu),但是從系統(tǒng)穩(wěn)定性角度出發(fā),來(lái)決定比例因子。同樣的結(jié)構(gòu)大量用于各種“預(yù)測(cè)-校正”模型結(jié)構(gòu),在工業(yè)上也得到很多應(yīng)用,比如聚合反應(yīng)器的分子重量分布可以用反應(yīng)器的溫度、進(jìn)料配比、催化劑等來(lái)間接計(jì)算,但不夠精確,也無(wú)法把林林總總的無(wú)法測(cè)量的干擾因素統(tǒng)統(tǒng)包括進(jìn)數(shù)學(xué)模型里,這時(shí)用實(shí)驗(yàn)室測(cè)定的真實(shí)值來(lái)定期校正,就可以結(jié)合數(shù)學(xué)模型及時(shí)的特點(diǎn)和實(shí)驗(yàn)室結(jié)果精確的特點(diǎn),滿(mǎn)足實(shí)時(shí)控制的要求,這或許可以算靜態(tài)的卡爾曼濾波器吧。卡爾曼濾波器最早的應(yīng)用還是在雷達(dá)上。所謂邊掃描邊跟蹤,就是用卡爾曼濾波器估計(jì)敵機(jī)的位置,再由雷達(dá)的間隙掃描結(jié)果來(lái)實(shí)際校正。實(shí)際應(yīng)用中還有一個(gè)典型的問(wèn)題:有時(shí)候,對(duì)同一個(gè)變量可以有好幾個(gè)測(cè)量值可用,比如有的比較直接但不精確,有的是間接的估算,有很大的滯后但精確度高,這時(shí)可以用卡爾曼濾波器把不同來(lái)源的數(shù)據(jù)按不同的信噪比加權(quán)“整合”起來(lái),也算是民用版的“傳感器融合”(sensor fusion)吧。 除了卡爾曼濾波器外,卡爾曼的理論在實(shí)際中用得不多,但是卡爾曼的理論在理論上建立了一個(gè)出色的框架,對(duì)理解和研究控制問(wèn)題有極大的作用。順便說(shuō)一句,卡爾曼的理論基本局限于線形系統(tǒng),也就是說(shuō),十塊大洋買(mǎi)一袋米,二十塊大洋就買(mǎi)兩袋米,都是成比例的。實(shí)際系統(tǒng)中有很多非線性的,兩千塊大洋還能買(mǎi)兩百袋米,但兩千萬(wàn)大洋就要看米倉(cāng)有沒(méi)有貨了,市場(chǎng)漲不漲價(jià)了,不是錢(qián)越多,買(mǎi)的米越多,有一個(gè)非線性的問(wèn)題。非線性的問(wèn)題研究起來(lái)要復(fù)雜得多。實(shí)際系統(tǒng)還有其他特性,有的是所謂時(shí)變系統(tǒng),像宇宙火箭,其質(zhì)量隨時(shí)間和燃料的消耗而變,系統(tǒng)特性當(dāng)然也就變了。很多問(wèn)題都是多變量的,像汽車(chē)轉(zhuǎn)彎,不光方向盤(pán)是一個(gè)輸入,油門(mén)和剎車(chē)也是輸入變量。但是,狀態(tài)空間的理論在數(shù)學(xué)表述上為線性、非線性、單變量、多變量、時(shí)變、時(shí)不變系統(tǒng)提供了一個(gè)統(tǒng)一的框架,這是卡爾曼最大的貢獻(xiàn)。 前面說(shuō)到,搞控制有三撥人:電工出身的,化工出身的,和應(yīng)用數(shù)學(xué)出身的。在卡爾曼之前,電工出身的占主導(dǎo)地位,數(shù)學(xué)家們好在象牙塔里打轉(zhuǎn)轉(zhuǎn),化工出身則還對(duì)控制理論懵里懵懂,還在“實(shí)干”呢。卡爾曼之后,一大批數(shù)學(xué)出身的人,利用對(duì)數(shù)學(xué)工具的熟悉,轉(zhuǎn)攻控制理論。一時(shí)間,控制理論的數(shù)學(xué)化似乎成了“天下大勢(shì),順我者昌,逆我者亡”了。在狀態(tài)空間的框架下,多變量沒(méi)有太多的問(wèn)題好研究,于是最優(yōu)化成為控制理論的新時(shí)尚。 對(duì)于一根給定的曲線,求一階導(dǎo)數(shù)為零的點(diǎn),就是這個(gè)曲線的極點(diǎn);在對(duì)這一極點(diǎn)求二階導(dǎo)數(shù),大于零就是最小點(diǎn),小于零就是最大點(diǎn)。這時(shí)牛頓老爺子就整明白的東東,現(xiàn)在高中或大一人人都學(xué)過(guò)的東西。但是動(dòng)態(tài)系統(tǒng)是一個(gè)微分方程,對(duì)微分方程求一階導(dǎo)數(shù)為零,就導(dǎo)致變分法和所謂歐拉方程。但這個(gè)東西用起來(lái)不方便。實(shí)際的最優(yōu)控制不大直接使用變分。 俄羅斯是一個(gè)奇怪的地方。老毛子們要么蔫蔫的,要么瘋狂的。俄羅斯的悲劇電影看得你也郁悶得想去自殺。但是老毛子要是搭錯(cuò)筋整出一個(gè)喜劇呢?那你要么跟著瘋狂,要么被逼瘋狂。就是這么一個(gè)地方,除了無(wú)數(shù)托爾斯泰、柴可夫斯基、普希金、屠格涅夫等文藝巨璧外,俄羅斯也盛產(chǎn)數(shù)學(xué)家,其中兩個(gè)是龐特里亞京和河里學(xué)控制的人老惦記著的李亞普諾夫。 龐特里亞京的極大值原理聽(tīng)起來(lái)嚇人,其實(shí)說(shuō)白了很簡(jiǎn)單。看見(jiàn)那山嗎?山頂就是最高點(diǎn)(切,這還用你說(shuō)嗎?);看見(jiàn)那山坡嗎?要是在山腰劃一道線,從山下往上爬,盡管山坡還在繼續(xù)往上延伸,但是到線為止,不得逾越,那山腰上那道三八線就是最高點(diǎn)(切,這還用說(shuō)?)。這就是龐特里亞京的極大值原理。當(dāng)然啦,龐特里亞京是用精巧、深?yuàn)W的數(shù)學(xué)語(yǔ)言表述的,要不然他在數(shù)學(xué)界里也別混了。不過(guò)呢,意思就是這么一個(gè)意思。 龐特里亞京極大值原理的一個(gè)典型應(yīng)用就是所謂最速控制問(wèn)題,或者叫時(shí)間最優(yōu)控制(time optimal control)問(wèn)題,簡(jiǎn)單地說(shuō),就是給定最大馬力和最大剎車(chē)功率,怎么開(kāi)汽車(chē)能夠最快地從A點(diǎn)開(kāi)到B點(diǎn)(什么轉(zhuǎn)彎、上下坡、紅綠燈,這種瑣碎的事情也要拿來(lái)煩人?一點(diǎn)品味都沒(méi)有!)。你可以用優(yōu)美但繁瑣的數(shù)學(xué)求證,或者用膝蓋想想,最快的方法,就是一上來(lái)就加足馬力,全速前進(jìn);然后在不到終點(diǎn)的某一地點(diǎn),全力剎車(chē),使慢下來(lái)的汽車(chē)在到達(dá)終點(diǎn)時(shí)正好停下來(lái)。這時(shí)最快的方法,不可能比這更快了。稍微發(fā)揮一點(diǎn)想象力,可以想象“梆”的一下,控制量的油門(mén)板一腳到底,再是“梆”的一下,剎車(chē)板一腳到底,控制任務(wù)就完成了。所以最速控制也叫“梆-梆”控制(bang bang control)。 最速控制在理論上是一個(gè)很有趣的問(wèn)題,解法也是簡(jiǎn)潔、優(yōu)美,但在實(shí)際中直接使用的例子實(shí)在是鳳毛麟角,一般都是開(kāi)始時(shí)用“梆-梆”,或者勻速上升到最大控制,以緩和控制的沖擊力;到終點(diǎn)附近時(shí),改用PID作閉環(huán)微調(diào),以克服“梆-梆”的系統(tǒng)模型誤差十分敏感的缺點(diǎn)。電梯控制就是這樣一個(gè)例子。從一樓到四樓,電動(dòng)機(jī)很快勻速上升到最高轉(zhuǎn)速,一過(guò)三樓,電動(dòng)機(jī)就勻速下降到較低的轉(zhuǎn)速,然后根據(jù)電梯實(shí)際位置和樓面之差,有控制地減速,直至停下來(lái)。要是控制參數(shù)調(diào)得好的話,一下子就穩(wěn)穩(wěn)當(dāng)當(dāng)?shù)赝O聛?lái);要是調(diào)的不夠好,會(huì)在停下來(lái)之前上下晃蕩幾下。 |