自動(dòng)控制的故事(上)

本文內(nèi)容來(lái)自“晨楓”的網(wǎng)文“自動(dòng)控制的故事”
自動(dòng)控制的故事?
晨?楓?
作者簡(jiǎn)介:晨楓,旅居加拿大,據(jù)說(shuō)是老三屆的。本文涉及自動(dòng)控制的方方面面,包括理論及應(yīng)用,很通俗,遠(yuǎn)比教科書(shū)清楚。本文揭開(kāi)了一些看似神秘的概念、掩蓋在復(fù)雜數(shù)學(xué)公式下的思想以及理論的實(shí)踐應(yīng)用,真是一篇自動(dòng)控制科普的雄文。???
寫(xiě)完聚乙烯的故事,就有寫(xiě)自動(dòng)控制的故事的念頭,但一直沒(méi)有動(dòng)筆。這個(gè)題目太大了,大得都不知道從何說(shuō)起。既然大家看聚乙烯的故事還有一點(diǎn)意思,四一在催,馬鹿要“一”什么的,那就接著寫(xiě)自動(dòng)控制的故事吧。反正是故事,別太當(dāng)真,看著好玩就接著看,看著枯燥就拍桌子,看著有錯(cuò)就提個(gè)醒,看著糊涂的盡管問(wèn),看著不耐煩了呢,也言語(yǔ)一聲,我好閉上嘴不再煩人。哈哈。
引子?
小時(shí)候喜歡看雜書(shū),沒(méi)什么東西看,不正在文化大革命嘛?不過(guò)看進(jìn)去了兩個(gè)“化”:機(jī)械化和自動(dòng)化。打小就沒(méi)有弄明白,這機(jī)械化和自動(dòng)化到底有什么差別,機(jī)器不是自己就會(huì)動(dòng)的嗎?長(zhǎng)大了,總算稍微明白了一點(diǎn),這機(jī)械化是力氣活,用機(jī)器代替人的體力勞動(dòng),但還是要人管著的,不然機(jī)器是不知道該干什么不該干什么的;這自動(dòng)化嘛,就是代替人的重復(fù)腦力勞動(dòng),是用來(lái)管機(jī)器的。也就是說(shuō),自動(dòng)化是管著機(jī)械化的,或者說(shuō)學(xué)自動(dòng)化的是管著學(xué)機(jī)械的……啊,不對(duì),不對(duì),哪是哪??!?
有人考證古代就有自動(dòng)化的實(shí)例,但現(xiàn)代意義上的自動(dòng)控制開(kāi)始于瓦特的蒸汽機(jī)。據(jù)說(shuō)紐考門(mén)比瓦特先發(fā)明蒸汽機(jī),但是蒸汽機(jī)的轉(zhuǎn)速控制問(wèn)題沒(méi)有解決,弄不好轉(zhuǎn)速飛升,機(jī)器損壞不說(shuō),還可能說(shuō)大事故。瓦特在蒸汽機(jī)的轉(zhuǎn)軸上安了一個(gè)小棍,棍的一端和放汽閥連著,棍的另一端是一個(gè)小重錘,棍中間某個(gè)地方通過(guò)支點(diǎn)和轉(zhuǎn)軸連接。轉(zhuǎn)軸轉(zhuǎn)起來(lái)的時(shí)候,重錘由于離心力的緣故揮起來(lái)。轉(zhuǎn)速太高了,重錘揮得很高,放汽閥就被按下去,轉(zhuǎn)速下降;轉(zhuǎn)速太低了,重錘不起來(lái),放汽閥就被松開(kāi),轉(zhuǎn)速回升。這樣,蒸汽機(jī)可以自動(dòng)保持穩(wěn)定的轉(zhuǎn)速,即保證安全,又方便使用。也就是因?yàn)檫@個(gè)小小的轉(zhuǎn)速調(diào)節(jié)器,瓦特的名字和工業(yè)革命連在一起,而紐考門(mén)的名字就要到歷史書(shū)里去找了。?
類(lèi)似的例子在機(jī)械系統(tǒng)里很多,家居必備的抽水馬桶是另一個(gè)例子。放水沖刷后,水箱里水位降低,浮子隨水面下降,進(jìn)水閥打開(kāi)。隨著水位的升高,進(jìn)水閥逐漸關(guān)閉,直到水位達(dá)到規(guī)定高度,進(jìn)水閥完全關(guān)閉,水箱的水正好準(zhǔn)備下一次使用。這是一個(gè)非常簡(jiǎn)單但非常巧妙的水位控制系統(tǒng),是一個(gè)經(jīng)典的設(shè)計(jì),但不容易用經(jīng)典的控制理論來(lái)分析,不過(guò)這是題外話了。?
這些機(jī)械系統(tǒng)設(shè)計(jì)巧妙,工作可靠,實(shí)在是巧奪天工。但是在實(shí)用中,如果每次都需要這樣的創(chuàng)造性思維,那太累,最好有一個(gè)系統(tǒng)的方法,可以解決“所有”的自動(dòng)控制問(wèn)題,這就是控制理論的由來(lái)。
反饋和動(dòng)態(tài)?
從小大人就教我們,走路要看路。為什么呢?要是不看著路,走路走歪了也不知道,結(jié)果就是東撞西撞的。要是看著路呢?走歪了,馬上就看到,趕緊調(diào)整腳步,走回到正道上來(lái)。這里有自動(dòng)控制里的第一個(gè)重要概念:反饋(feedback)。?反饋是一個(gè)過(guò)程:?
1、設(shè)定目標(biāo),對(duì)小朋友走路的例子來(lái)說(shuō),就是前進(jìn)的路線。?2、測(cè)量狀態(tài),小朋友的眼睛看著路,就是在測(cè)量自己的前進(jìn)方向。?
3、將測(cè)量到的狀態(tài)和設(shè)定的目標(biāo)比較,把眼睛看到的前進(jìn)方向和心里想的前進(jìn)方向作比較,判斷前進(jìn)方向是否正確;如果不正確,相差有多少。?
4、調(diào)整行動(dòng),在心里根據(jù)實(shí)際前進(jìn)方向和設(shè)定目標(biāo)的偏差,決定調(diào)整的量。?5、實(shí)際執(zhí)行,也就是實(shí)際挪動(dòng)腳步,重回正確的前進(jìn)方向。?
在整個(gè)走路的過(guò)程中,這個(gè)反饋過(guò)程周而復(fù)始,不斷進(jìn)行,這樣,小朋友就不會(huì)走得東倒西歪了。但是,這里有一個(gè)問(wèn)題:如果所有的事情都是在瞬時(shí)里同時(shí)發(fā)生的,那這個(gè)反饋過(guò)程就無(wú)法工作。要使反饋工作,一定要有一定的反應(yīng)時(shí)間。還好,世上之事,都有一個(gè)過(guò)程,這就為反饋贏得了所需要的時(shí)間。?
小時(shí)候,媽媽在鍋里蒸東西,蒸好了,從鍋里拿出來(lái)總是一個(gè)麻煩,需要抹布什么的墊著,免得燙手。但是碗和鍋的間隙不大,連手帶抹布伸進(jìn)去頗麻煩,我常常不知天高地厚,自告奮勇地徒手把熱的碗拿出來(lái),只要?jiǎng)幼骺?,手起碗落,可以不燙手,當(dāng)然嘍,要是捧著熱碗再東晃晃,西蕩蕩,那手上感覺(jué)的溫度最終會(huì)和熱碗一樣,肯定要把手心、手指燙熟不可的。在從接觸碗到皮膚溫度和碗表面一樣,這里面有一個(gè)逐漸升溫的過(guò)程,這就是動(dòng)態(tài)過(guò)程(dynamicprocess)。這里面有兩個(gè)東西要注意:一個(gè)是升溫的過(guò)程有多快,另一個(gè)是最終的溫度可以升到多少。要是知道了這兩個(gè)參數(shù),同時(shí)知道自己的手可以耐受多少溫度,理論上可以計(jì)算出熱的碗在手里可以停留多少時(shí)間而不至于燙手。?
反饋過(guò)程也叫閉環(huán)(closedloop)過(guò)程。既然有閉環(huán),那就有開(kāi)環(huán)(openloop)。開(kāi)環(huán)就是沒(méi)有反饋的控制過(guò)程,設(shè)定一個(gè)控制作用,然后就執(zhí)行,不根據(jù)實(shí)際測(cè)量值進(jìn)行校正。開(kāi)環(huán)控制只有對(duì)簡(jiǎn)單的過(guò)程有效,比如洗衣機(jī)和烘干機(jī)按定時(shí)控制,到底衣服洗得怎么樣,烘得干不干,完全取決于開(kāi)始時(shí)的設(shè)定。對(duì)于洗衣機(jī)、烘干機(jī)這樣的問(wèn)題,多設(shè)一點(diǎn)時(shí)間就是了,稍微浪費(fèi)一點(diǎn),但可以保證效果。對(duì)于空調(diào)機(jī),就不能不顧房間溫度,簡(jiǎn)單地設(shè)一個(gè)開(kāi)10分鐘、關(guān)5分鐘的循環(huán),而應(yīng)該根據(jù)實(shí)際溫度作閉環(huán)控制,否則房間里的溫度天知道到底會(huì)達(dá)到多少。對(duì)于政府官員,更不能只顧計(jì)劃不顧變化,盲目瞎指揮。記得80年代時(shí),報(bào)告文學(xué)很流行。徐遲寫(xiě)了一個(gè)《哥德巴赫猜想》,于是全國(guó)人民都爭(zhēng)當(dāng)科學(xué)家。小說(shuō)家也爭(zhēng)著寫(xiě)科學(xué)家,成就太小不行,所以來(lái)一個(gè)語(yǔ)不驚人死不休,某大家寫(xiě)了一個(gè)《無(wú)反饋快速跟蹤》。那時(shí)正在大學(xué)啃磚頭,對(duì)這個(gè)科學(xué)新發(fā)現(xiàn)大感興趣,從頭看到尾,也沒(méi)有看明白到底是怎么無(wú)反饋快速跟蹤的?,F(xiàn)在想想,小說(shuō)就是小說(shuō),不過(guò)這無(wú)良作家也太扯,無(wú)反饋還要跟蹤,不看著目標(biāo),不看著自己跑哪了,這跟的什么蹤啊,這和永動(dòng)機(jī)差不多了,怎么不挑一個(gè)好一點(diǎn)的題目,冷聚變什么的,至少在理論上還是可能的。題外話了。?
在數(shù)學(xué)上,動(dòng)態(tài)過(guò)程用微分方程描述,反饋過(guò)程就是在描述動(dòng)態(tài)過(guò)程的微分方程的輸入項(xiàng)和輸出項(xiàng)之間建立一個(gè)關(guān)聯(lián),這樣改變了微分方程本來(lái)的性質(zhì)。自動(dòng)控制就是在這個(gè)反饋和動(dòng)態(tài)過(guò)程里做文章的。
開(kāi)關(guān)控制?
房間內(nèi)的空調(diào)是一個(gè)簡(jiǎn)單的控制問(wèn)題。不過(guò)這只是指單一房間,整個(gè)高層大樓所有房間的中央空調(diào)問(wèn)題實(shí)際上是一個(gè)相當(dāng)復(fù)雜的問(wèn)題,不在這里討論的范圍。夏天了,室內(nèi)溫度設(shè)在28度,實(shí)際溫度高于28度了,空調(diào)機(jī)啟動(dòng)致冷,把房間的溫度降下來(lái);實(shí)際溫度低于28度了,空調(diào)機(jī)關(guān)閉,讓房間溫度受環(huán)境氣溫自然升上去。通過(guò)這樣簡(jiǎn)單的開(kāi)關(guān)控制,室內(nèi)溫度應(yīng)該就控制在28度。不過(guò)這里有一個(gè)問(wèn)題,如果溫度高于28度一點(diǎn)點(diǎn),空調(diào)機(jī)就啟動(dòng);低于28度一點(diǎn)點(diǎn),空調(diào)機(jī)就關(guān)閉;那如果溫度傳感器和空調(diào)機(jī)的開(kāi)關(guān)足夠靈敏的話,空調(diào)機(jī)的開(kāi)關(guān)頻率可以無(wú)窮高,空調(diào)機(jī)不斷地開(kāi)開(kāi)關(guān)關(guān),要發(fā)神經(jīng)病了,這對(duì)機(jī)器不好,在實(shí)際上也沒(méi)有必要。解決的辦法是設(shè)立一個(gè)“死區(qū)”(deadband),溫度高于29度時(shí)開(kāi)機(jī),低于27度時(shí)關(guān)機(jī)。注意不要搞反了,否則控制單元要發(fā)神經(jīng)了。?
有了一個(gè)死區(qū)后,室內(nèi)溫度不再可能?chē)?yán)格控制在28度,而是在27到29度之間“晃蕩”。如果環(huán)境溫度一定,空調(diào)機(jī)的制冷量一定,室內(nèi)的升溫/降溫動(dòng)態(tài)模型已知,可以計(jì)算溫度“晃蕩”的周期。不過(guò)既然是講故事,我們就不去費(fèi)那個(gè)事了。
這種開(kāi)關(guān)控制看起來(lái)“土”,其實(shí)好處不少。對(duì)于大部分過(guò)程來(lái)說(shuō),開(kāi)關(guān)控制的精度不高但可以保證穩(wěn)定,或者說(shuō)系統(tǒng)輸出是“有界”的,也就是說(shuō)實(shí)際測(cè)量值一定會(huì)被限制在一定的范圍,而不可能無(wú)限制地發(fā)散出去。這種穩(wěn)定性和一般控制理論里強(qiáng)調(diào)的所謂漸進(jìn)穩(wěn)定性不同,而是所謂BIBO穩(wěn)定性,前者要求輸出最終趨向設(shè)定值,后者只要求在有界的輸入作用下輸出是有界的,BIBO指boundedinputboundedoutput。?
對(duì)于簡(jiǎn)單的精度要求不高的過(guò)程,這種開(kāi)關(guān)控制(或者稱(chēng)繼電器控制,relaycontrol,因?yàn)樽钤邕@種控制方式是用繼電器或電磁開(kāi)關(guān)來(lái)實(shí)現(xiàn)的)就足夠了。但是很多時(shí)候,這種“毛估估”的控制滿(mǎn)足不了要求。汽車(chē)在高速公路上行駛,速度設(shè)在定速巡航控制,速度飄下去幾公里,心里覺(jué)得吃虧了,但要是飄上去幾公里,被警察抓下來(lái)吃一個(gè)罰單,這算誰(shuí)的?
開(kāi)關(guān)控制是不連續(xù)控制,控制作用一加就是“全劑量”的,一減也是“全劑量”的,沒(méi)有中間的過(guò)渡。如果空調(diào)機(jī)的制冷量有三個(gè)設(shè)定,:小、中、大,根據(jù)室溫和設(shè)定的差別來(lái)決定到底是用小還是中還是大,那室溫的控制精度就可以大大提高,換句話說(shuō),溫度的“晃蕩”幅度將大幅度減小。那么,如果空調(diào)機(jī)有更多的設(shè)定,從小小到小中到……到大大,那控制精度是不是更高呢?是的。既然如此,何不用無(wú)級(jí)可調(diào)的空調(diào)機(jī)呢?那豈不可以更精確地控制室溫了嗎?是的。
連續(xù)控制和PID?
無(wú)級(jí)可調(diào)或連續(xù)可調(diào)的空調(diào)機(jī)可以精確控制溫度,但開(kāi)關(guān)控制不能再用了。家用空調(diào)機(jī)中,連續(xù)可調(diào)的不占多數(shù),但沖熱水淋浴是一個(gè)典型的連續(xù)控制問(wèn)題,因?yàn)樗堫^可以連續(xù)調(diào)節(jié)水的流量。沖淋浴時(shí),假定冷水龍頭不變,只調(diào)節(jié)熱水。那溫度高了,熱水關(guān)小一點(diǎn);溫度低了,熱水開(kāi)打一點(diǎn)。換句話說(shuō),控制作用應(yīng)該向減少控制偏差的方向變化,也就是所謂負(fù)反饋??刂品较?qū)α?,還有一個(gè)控制量的問(wèn)題。溫度高了1度,熱水該關(guān)小多少呢??
經(jīng)驗(yàn)告訴我們,根據(jù)具體的龍頭和水壓,溫度高1度,熱水需要關(guān)小一定的量,比如說(shuō),關(guān)小一格。換句話說(shuō),控制量和控制偏差成比例關(guān)系,這就是經(jīng)典的比例控制規(guī)律:控制量=比例控制增益*控制偏差,偏差越大,控制量越大??刂破罹褪菍?shí)際測(cè)量值和設(shè)定值或目標(biāo)值之差。在比例控制規(guī)律下,偏差反向,控制量也反向。也就是說(shuō),如果淋浴水溫要求為40度,實(shí)際水溫高于40度時(shí),熱水龍頭向關(guān)閉的方向變化;實(shí)際水溫低于40度時(shí),熱水龍頭向開(kāi)啟的方向變化。?
但是比例控制規(guī)律并不能保證水溫能夠精確達(dá)到40度。在實(shí)際生活中,人們這時(shí)對(duì)熱水龍頭作微調(diào),只要水溫還不合適,就一點(diǎn)一點(diǎn)地調(diào)節(jié),直到水溫合適為止。這種只要控制偏差不消失就漸進(jìn)微調(diào)的控制規(guī)律,在控制里叫積分控制規(guī)律,因?yàn)榭刂屏亢涂刂破钤跁r(shí)間上的累積成正比,其比例因子就稱(chēng)為積分控制增益。工業(yè)上常用積分控制增益的倒數(shù),稱(chēng)其為積分時(shí)間常數(shù),其物理意義是偏差恒定時(shí),控制量加倍所需的時(shí)間。這里要注意的是,控制偏差有正有負(fù),全看實(shí)際測(cè)量值是大于還是小于設(shè)定值,所以只要控制系統(tǒng)是穩(wěn)定的,也就是實(shí)際測(cè)量值最終會(huì)穩(wěn)定在設(shè)定值上,控制偏差的累積不會(huì)是無(wú)窮大的。這里再啰嗦一遍,積分控制的基本作用是消除控制偏差的余差(也叫殘差)。?
比例和積分控制規(guī)律可以應(yīng)付很大一類(lèi)控制問(wèn)題,但不是沒(méi)有改進(jìn)余地的。如果水管水溫快速變化,人們會(huì)根據(jù)水溫的變化調(diào)節(jié)熱水龍頭:水溫升高,熱水龍頭向關(guān)閉方向變化,升溫越快,開(kāi)啟越多;水溫降低,熱水龍頭向開(kāi)啟方向變化,降溫越快,關(guān)閉越多。這就是所謂的微分控制規(guī)律,因?yàn)榭刂屏亢蛯?shí)際測(cè)量值的變化率成正比,其比例因子就稱(chēng)為比例控制增益,工業(yè)上也稱(chēng)微分時(shí)間常數(shù)。微分時(shí)間常數(shù)沒(méi)有太特定的物理意義,只是積分叫時(shí)間常數(shù),微分也跟著叫了。微分控制的重點(diǎn)不在實(shí)際測(cè)量值的具體數(shù)值,而在其變化方向和變化速度。微分控制在理論上和實(shí)用中有很多優(yōu)越性,但局限也是明顯的。如果測(cè)量信號(hào)不是很“干凈”,時(shí)不時(shí)有那么一點(diǎn)不大不小的“毛刺”或擾動(dòng),微分控制就會(huì)被這些風(fēng)吹草動(dòng)搞得方寸大亂,產(chǎn)生很多不必要甚至錯(cuò)誤的控制信號(hào)。所以工業(yè)上對(duì)微分控制的使用是很謹(jǐn)慎的。?
比例-積分-微分控制規(guī)律是工業(yè)上最常用的控制規(guī)律。人們一般根據(jù)比例-積分-微分的英文縮寫(xiě),將其簡(jiǎn)稱(chēng)為PID控制。即使在更為先進(jìn)的控制規(guī)律廣泛應(yīng)用的今天,各種形式的PID控制仍然在所有控制回路中占85%以上。
PID整定?
在PID控制中,積分控制的特點(diǎn)是:只要還有余差(即殘余的控制偏差)存在,積分控制就按部就班地逐漸增加控制作用,直到余差消失。所以積分的效果比較緩慢,除特殊情況外,作為基本控制作用,緩不救急。微分控制的特點(diǎn)是:盡管實(shí)際測(cè)量值還比設(shè)定值低,但其快速上揚(yáng)的沖勢(shì)需要及早加以抑制,否則,等到實(shí)際值超過(guò)設(shè)定值再作反應(yīng)就晚了,這就是微分控制施展身手的地方了。作為基本控制使用,微分控制只看趨勢(shì),不看具體數(shù)值所在,所以最理想的情況也就是把實(shí)際值穩(wěn)定下來(lái),但穩(wěn)定在什么地方就要看你的運(yùn)氣了,所以微分控制也不能作為基本控制作用。比例控制沒(méi)有這些問(wèn)題,比例控制的反應(yīng)快,穩(wěn)定性好,是最基本的控制作用,是“皮”,積分、微分控制是對(duì)比例控制起增強(qiáng)作用的,極少單獨(dú)使用,所以是“毛”。在實(shí)際使用中比例和積分一般一起使用,比例承擔(dān)主要的控制作用,積分幫助消除余差。微分只有在被控對(duì)象反應(yīng)遲緩,需要在開(kāi)始有所反應(yīng)時(shí),及早補(bǔ)償,才予以采用。只用比例和微分的情況很少見(jiàn)。?
連續(xù)控制的精度是開(kāi)關(guān)控制所不可比擬的,但連續(xù)控制的高精度也是有代價(jià)的,這就是穩(wěn)定性問(wèn)題??刂圃鲆鏇Q定了控制作用對(duì)偏差的靈敏度。既然增益決定了控制的靈敏度,那么越靈敏豈不越好?非也。還是用汽車(chē)的定速巡航控制做例子。速度低一點(diǎn),油門(mén)加一點(diǎn),速度低更多,油門(mén)加更多,速度高上去當(dāng)然就反過(guò)來(lái)。但是如果速度低一點(diǎn),油門(mén)就狂加,導(dǎo)致速度高一點(diǎ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ì)造成過(guò)熱。要達(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)題了。
經(jīng)典的系統(tǒng)穩(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ù)頻率。既然那些變態(tà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è)變態(tài)的頻率分析,用來(lái)分析系統(tǒng)的穩(wěn)定性。不過(guò)說(shuō)變態(tài),也不完全公平,在沒(méi)有計(jì)算機(jī)的年代,各種圖表是最有效的分析方法,還美其名曰“幾何分析”。頻率分析也不例外。美國(guó)佬Evans搞出一個(gè)根軌跡(rootlocus),思路倒是滿(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)定,云云。?
根軌跡還是比較客氣的,還有更變態(tài)的奈奎斯特、伯德和尼科爾斯法,想想腦子都大。都是叫那幫電工分子害的。時(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ō)人家變態(tài)嗎?呃,變態(tài)也有變態(tài)的魅力不是?哈哈。