自動(dòng)控制的故事
R% h0 Y2 h0 u. a8 h0 p 說明:轉(zhuǎn)載文章,一直想找出原作者,可惜網(wǎng)上搜索不到,應(yīng)該是一位大師級人物
# j3 H( g, \" n9 V0 W1 P/ O6 F! f
3 L8 e: g' e0 y+ N% t
! J \+ Q% J+ V. |; d9 \5 w! _ 自動(dòng)控制的科普綜述文章少之又少,這一篇是難得好文章。甚至高于科普了。自動(dòng)化專業(yè)的學(xué)生,能夠把自己學(xué)的道理理解到這種程度的,又能占到多少比例呢?2 s$ t: f: c0 R3 N3 E; k7 d
; P# n z( I+ n! o " n! l, k" Q( X0 ~! e j0 \, t. W1 e
寫完聚乙烯的故事,就有寫自動(dòng)控制的故事的念頭,但一直沒有動(dòng)筆。這個(gè)題目太大了,大得都不知道從何說起。既然大家看聚乙烯的故事還有一點(diǎn)意思,四一在催,馬鹿要“一”什么的,那就接著寫自動(dòng)控制的故事吧。反正是故事,別太當(dāng)真,看著好玩就接著看,看著枯燥就拍桌子,看著有錯(cuò)就提個(gè)醒,看著糊涂的盡管問,看著不耐煩了呢,也言語一聲,我好閉上嘴不再煩人。哈哈。4 u& {+ J! _) p( N
3 f. g+ {: o u( C* L Z3 f
' N. e# d- u( ^0 l" k* F$ V* J, i, c8 M (一)6 f" t6 ?# }" |0 Q9 u! e) n- \
5 v4 d( m- I5 D' k/ I 8 {. |6 B. n2 o; H1 }$ ^
小時(shí)候喜歡看雜書,沒什么東西看,不正在文化大革命嘛?不過看進(jìn)去了兩個(gè)“化”:機(jī)械化和自動(dòng)化。打小就沒有弄明白,這機(jī)械化和自動(dòng)化到底有什么差別,機(jī)器不是自己就會動(dòng)的嗎?長大了,總算稍微明白了一點(diǎn),這機(jī)械化是力氣活,用機(jī)器代替人的體力勞動(dòng),但還是要人管著的,不然機(jī)器是不知道該干什么不該干什么的;這自動(dòng)化嘛,就是代替人的重復(fù)腦力勞動(dòng),是用來管機(jī)器的。也就是說,自動(dòng)化是管著機(jī)械化的,或者說學(xué)自動(dòng)化的是管著學(xué)機(jī)械的……啊,不對,不對,哪是哪啊!4 a, `. R" B" c" n G
% ]4 m$ E0 V' N3 h! @
0 Q$ D) ]# ]1 u6 J1 b# M 有人考證古代就有自動(dòng)化的實(shí)例,但現(xiàn)代意義上的自動(dòng)控制開始于瓦特的蒸汽機(jī)。據(jù)說紐考門比瓦特先發(fā)明蒸汽機(jī),但是蒸汽機(jī)的轉(zhuǎn)速控制問題沒有解決,弄不好轉(zhuǎn)速飛升,機(jī)器損壞不說,還可能說大事故。瓦特在蒸汽機(jī)的轉(zhuǎn)軸上安了一個(gè)小棍,棍的一端和放汽閥連著,放氣閥松開來就關(guān)閉,轉(zhuǎn)速增加;按下去閥就打開,轉(zhuǎn)速降低;棍的另一端是一個(gè)小重錘,棍中間某個(gè)地方通過支點(diǎn)和轉(zhuǎn)軸連接。轉(zhuǎn)軸轉(zhuǎn)起來的時(shí)候,小棍由于離心力的緣故揮起來。轉(zhuǎn)速太高了,小棍揮會揮得很高,放汽閥就被按下去打開,轉(zhuǎn)速下降;轉(zhuǎn)速太低了,小棍揮不起來,放汽閥就被松開來關(guān)閉,轉(zhuǎn)速回升。這樣,蒸汽機(jī)可以自動(dòng)保持穩(wěn)定的轉(zhuǎn)速,即保證安全,又方便使用。也就是因?yàn)檫@個(gè)小小的轉(zhuǎn)速調(diào)節(jié)器,瓦特的名字和工業(yè)革命連在一起,而紐考門的名字就要到歷史書里去找了。
2 U0 i9 b' [. @, g- f& ~ z% T: Y0 r, y% x
' b- T8 i$ m m; { X* J& T9 o
類似的例子在機(jī)械系統(tǒng)里很多,家居必備的抽水馬桶是另一個(gè)例子。放水沖刷后,水箱里水位降低,浮子隨水面下降,進(jìn)水閥打開。隨著水位的升高,進(jìn)水閥逐漸關(guān)閉,直到水位達(dá)到規(guī)定高度,進(jìn)水閥完全關(guān)閉,水箱的水正好準(zhǔn)備下一次使用。這是一個(gè)非常簡單但非常巧妙的水位控制系統(tǒng),是一個(gè)經(jīng)典的設(shè)計(jì),但不容易用經(jīng)典的控制理論來分析,不過這是題外話了。7 W& {" B) \. t3 v
8 U8 ?- H' }+ B
! E- \8 O3 D# G8 ?* p0 M6 N& g 這些機(jī)械系統(tǒng)設(shè)計(jì)巧妙,工作可靠,實(shí)在是巧奪天工。但是在實(shí)用中,如果每次都需要這樣的創(chuàng)造性思維,那太累,最好有一個(gè)系統(tǒng)的方法,可以解決“所有”的自動(dòng)控制問題,這就是控制理論的由來。' e' y9 R v6 h( r5 X0 a3 g
! x/ ~7 @- ?4 }, e9 w
: M% B+ u& m: Q* C
從小大人就教我們,走路要看路。為什么呢?要是不看著路,走路走歪了也不知道,結(jié)果就是東撞西撞的。要是看著路呢?走歪了,馬上就看到,趕緊調(diào)整腳步,走回到正道上來。這里有自動(dòng)控制里的第一個(gè)重要概念:反饋(feedback)。
2 c9 p3 C# B( |6 C+ A9 {2 {$ E
& R9 n7 y3 B9 W0 ^' W* j + p! _+ ?& D8 X
反饋是一個(gè)過程:
& ]& G4 d" E2 E/ U: N
9 v* c" g% g' V- X; A
" x4 x6 y( i" j 1、設(shè)定目標(biāo),對小朋友走路的例子來說,就是前進(jìn)的路線。 1 `# U1 v6 E0 M7 |; l, @
2、測量狀態(tài),小朋友的眼睛看著路,就是在測量自己的前進(jìn)方向。 6 {$ Q& f5 f5 P
3、將測量到的狀態(tài)和設(shè)定的目標(biāo)比較,把眼睛看到的前進(jìn)方向和心里想的前進(jìn)方向作比較,判斷前進(jìn)方向是否正確;如果不正確,相差有多少。 # x4 a+ Q0 n- p- h W- n" p' K7 ~
4、調(diào)整行動(dòng),在心里根據(jù)實(shí)際前進(jìn)方向和設(shè)定目標(biāo)的偏差,決定調(diào)整的量。
# e5 G- I0 Y, J7 Y2 U2 d$ f& H 5、實(shí)際執(zhí)行,也就是實(shí)際挪動(dòng)腳步,重回正確的前進(jìn)方向。0 d6 x% |9 T+ G7 X5 o1 O$ [8 n9 M
* K8 j; Y0 L* {
P3 J# `' r/ x+ N/ N. F! C" n
+ G; b! j7 s( D 在整個(gè)走路的過程中,這個(gè)反饋過程周而復(fù)始,不斷進(jìn)行,這樣,小朋友就不會走得東倒西歪了。但是,這里有一個(gè)問題:如果所有的事情都是在瞬時(shí)里同時(shí)發(fā)生的,那這個(gè)反饋過程就無法工作。要使反饋工作,一定要有一定的反應(yīng)時(shí)間。還好,世上之事,都有一個(gè)過程,這就為反饋贏得了所需要的時(shí)間。1 L4 b% b6 t# K- J" r
7 f8 d! G! |% B% a
! O: M$ U3 W8 z# ]- u, r' p% H, n
小時(shí)候,媽媽在鍋里蒸東西,蒸好了,從鍋里拿出來總是一個(gè)麻煩,需要抹布什么的墊著,免得燙手。但是碗和鍋的間隙不大,連手帶抹布伸進(jìn)去頗麻煩,我常常不知天高地厚,自告奮勇地徒手把熱的碗拿出來。只要?jiǎng)幼骺?,手起碗落,可以不燙手。當(dāng)然嘍,要是捧著熱碗再東晃晃,西蕩蕩,那手上感覺的溫度最終會和熱碗一樣,肯定要把手心、手指燙熟不可的。在從接觸碗到皮膚溫度和碗表面一樣,這里面有一個(gè)逐漸升溫的過程,這就是動(dòng)態(tài)過程(dynamic process)。這里面有兩個(gè)東西要注意:一個(gè)是升溫的過程有多快,另一個(gè)是最終的溫度可以升到多少。要是知道了這兩個(gè)參數(shù),同時(shí)知道自己的手可以耐受多少溫度,理論上可以計(jì)算出熱的碗在手里可以停留多少時(shí)間而不至于燙手。
9 Z0 ]5 j* s: r% t9 _/ Z3 O- l/ R( U d( i k) t
' _; |0 F t' z+ N5 r
反饋過程也叫閉環(huán)(closed loop)過程。既然有閉環(huán),那就有開環(huán)(open loop)。開環(huán)就是沒有反饋的控制過程,設(shè)定一個(gè)控制作用,然后就執(zhí)行,不根據(jù)實(shí)際測量值進(jìn)行校正。開環(huán)控制只有對簡單的過程有效,比如洗衣機(jī)和烘干機(jī)按定時(shí)控制,到底衣服洗得怎么樣,烘得干不干,完全取決于開始時(shí)的設(shè)定。對于洗衣機(jī)、烘干機(jī)這樣的問題,多設(shè)一點(diǎn)時(shí)間就是了,稍微浪費(fèi)一點(diǎn),但可以保證效果。對于空調(diào)機(jī),就不能不顧房間溫度,簡單地設(shè)一個(gè)開10分鐘、關(guān)5分鐘的循環(huán),而應(yīng)該根據(jù)實(shí)際溫度作閉環(huán)控制,否則房間里的溫度天知道到底會達(dá)到多少。記得80年代時(shí),報(bào)告文學(xué)很流行。徐遲寫了一個(gè)《哥德巴赫猜想》,于是全國人民都爭當(dāng)科學(xué)家。小說家也爭著寫科學(xué)家,成就太小不行,所以來一個(gè)語不驚人死不休,某大家寫了一個(gè)《無反饋快速跟蹤》。那時(shí)正在大學(xué)啃磚頭,對這個(gè)科學(xué)新發(fā)現(xiàn)大感興趣,從頭看到尾,也沒有看明白到底是怎么無反饋快速跟蹤的?,F(xiàn)在想想,小說就是小說,不過這無良作家也太扯,無反饋還要跟蹤,不看著目標(biāo),不看著自己跑哪了,這跟的什么蹤啊,這和永動(dòng)機(jī)差不多了,怎么不挑一個(gè)好一點(diǎn)的題目,冷聚變什么的,至少在理論上還是可能的。題外話了。! f# V4 ]8 @- [/ ^
- g! E/ h( t& ?" h0 c c- B- z, v" ~+ |0 ?' a i, m
& C, s4 s' s H! w
在數(shù)學(xué)上,動(dòng)態(tài)過程用微分方程描述,反饋過程就是在描述動(dòng)態(tài)過程的微分方程的輸入項(xiàng)和輸出項(xiàng)之間建立一個(gè)關(guān)聯(lián),這樣改變了微分方程本來的性質(zhì)。自動(dòng)控制就是在這個(gè)反饋和動(dòng)態(tài)過程里做文章的。
) w2 n# X" _( |- v i+ m; I6 a4 p+ r# f- }" i: f: D
" t5 q5 Z9 t! n O: K( ]; \4 `
' Y7 \ u. q2 X/ x1 ?' ] 房間內(nèi)的空調(diào)是一個(gè)簡單的控制問題。不過這只是指單一房間,整個(gè)高層大樓所有房間的中央空調(diào)問題實(shí)際上是一個(gè)相當(dāng)復(fù)雜的問題,不在這里討論的范圍。夏天了,室內(nèi)溫度設(shè)在28度,實(shí)際溫度高于28度了,空調(diào)機(jī)啟動(dòng)致冷,把房間的溫度降下來;實(shí)際溫度低于28度了,空調(diào)機(jī)關(guān)閉,讓房間溫度受環(huán)境氣溫自然升上去。通過這樣簡單的開關(guān)控制,室內(nèi)溫度應(yīng)該就控制在28度。不過這里有一個(gè)問題,如果溫度高于28度一點(diǎn)點(diǎn),空調(diào)機(jī)就啟動(dòng);低于28度一點(diǎn)點(diǎn),空調(diào)機(jī)就關(guān)閉;那如果溫度傳感器和空調(diào)機(jī)的開關(guān)足夠靈敏的話,空調(diào)機(jī)的開關(guān)頻率可以無窮高,空調(diào)機(jī)不斷地開開關(guān)關(guān),要發(fā)神經(jīng)病了,這對機(jī)器不好,在實(shí)際上也沒有必要。解決的辦法是設(shè)立一個(gè)“死區(qū)”(dead band),溫度高于29度時(shí)開機(jī),低于27度時(shí)關(guān)機(jī)。注意不要搞反了,否則控制單元要發(fā)神經(jīng)了。
- T. I* T ]* ?, I3 y! P9 v( F7 ~- A9 q1 o5 v
1 J7 n6 A0 o0 A& u1 ^0 B
5 V9 }/ d: h+ Z+ a' ?; P0 b4 z 有了一個(gè)死區(qū)后,室內(nèi)溫度不再可能嚴(yán)格控制在28度,而是在27到29度之間“晃蕩”。如果環(huán)境溫度一定,空調(diào)機(jī)的制冷量一定,室內(nèi)的升溫/降溫動(dòng)態(tài)模型已知,可以計(jì)算溫度“晃蕩”的周期。不過既然是講故事,我們就不去費(fèi)那個(gè)事了。
6 D& G# U" Z% G/ k3 n" c& Q+ ~4 m' G+ F0 A
: G( [2 e- v0 Z, j/ a: z" t6 a* U
這種開關(guān)控制看起來“土”,其實(shí)好處不少。對于大部分過程來說,開關(guān)控制的精度不高但可以保證穩(wěn)定,或者說系統(tǒng)輸出是“有界”的,也就是說實(shí)際測量值一定會被限制在一定的范圍,而不可能無限制地發(fā)散出去。這種穩(wěn)定性和一般控制理論里強(qiáng)調(diào)的所謂漸進(jìn)穩(wěn)定性不同,而是所謂BIBO穩(wěn)定性,前者要求輸出最終趨向設(shè)定值,后者只要求在有界的輸入作用下輸出是有界的,BIBO指bounded input bounded output。
4 L9 z3 }; d" G( U
' H* y; M2 j) {7 t7 o; s3 l @7 F3 L9 K, T0 P% M& ~3 e& o" b
對于簡單的精 度要求不高的過程,這種開關(guān)控制(或者稱繼電器控制,relay control,因?yàn)樽钤邕@種控制方式是用繼電器或電磁開關(guān)來實(shí)現(xiàn)的)就足夠了。但是很多時(shí)候,這種“毛估估”的控制滿足不了要求。汽車在高速公路上行駛,速度設(shè)在定速巡航控制,速度飄下去幾公里,心里覺得吃虧了,但要是飄上去幾公里,被警察抓下來吃一個(gè)罰單,這算誰的?
+ _: c) u) P7 @# ]9 m6 C
/ C6 U: d: v. U 7 s. |0 I- }+ H1 O$ |+ u/ ^6 U
開關(guān)控制是不連續(xù)控制,控制作用一加就是“全劑量”的,一減也是“全劑量”的,沒有中間的過渡。如果空調(diào)機(jī)的制冷量有三個(gè)設(shè)定,:小、中、大,根據(jù)室溫和設(shè)定的差別來決定到底是用小還是中還是大,那室溫的控制精度就可以大大提高,換句話說,溫度的“晃蕩”幅度將大幅度減小。那么,如果空調(diào)機(jī)有更多的設(shè)定,從小小到小中到……到大大,那控制精度是不是更高呢?是的。既然如此,何不用無級可調(diào)的空調(diào)機(jī)呢?那豈不可以更精確地控制室溫了嗎?是的。) n1 v9 F( T) h8 i d* h
; m) ]6 B* h, ?! D- w. L
) O' k* ^ K' x( k8 k
無級可調(diào)或連續(xù)可調(diào)的空調(diào)機(jī)可以精確控制溫度,但開關(guān)控制不能再用了。家用空調(diào)機(jī)中,連續(xù)可調(diào)的不占多數(shù),但沖熱水淋浴是一個(gè)典型的連續(xù)控制問題,因?yàn)樗堫^可以連續(xù)調(diào)節(jié)水的流量。沖淋浴時(shí),假定冷水龍頭不變,只調(diào)節(jié)熱水。那溫度高了,熱水關(guān)小一點(diǎn);溫度低了,熱水開打一點(diǎn)。換句話說,控制作用應(yīng)該向減少控制偏差的方向變化,也就是所謂負(fù)負(fù)反饋??刂品较?qū)α?,還有一個(gè)控制量的問題。溫度高了1度,熱水該關(guān)小多少呢?
. V8 `% ^7 x( j+ p. J N
( b0 P' [+ }2 `5 n ) A3 y/ j6 Z; _4 K- T( q+ M8 k) Q
經(jīng)驗(yàn)告訴我們,根據(jù)具體的龍頭和水壓,溫度高1度,熱水需要關(guān)小一定的量,比如說,關(guān)小一格。換句話說,控制量和控制偏差成比例關(guān)系,這就是經(jīng)典的比例控制規(guī)律:控制量=比例控制增益* 控制偏差,偏差越大,控制量越大??刂破罹褪菍?shí)際測量值和設(shè)定值或目標(biāo)值之差。在比例控制規(guī)律下,偏差反向,控制量也反向。也就是說,如果淋浴水溫要求為40度,實(shí)際水溫高于40度時(shí),熱水龍頭向關(guān)閉的方向變化;實(shí)際水溫低于40度時(shí),熱水龍頭向開啟的方向變化。
6 q5 t8 ?- q. L4 k/ K0 I
^! p6 O7 G& T; z$ M
7 j G. M# R6 U; a$ b# V # F" ^, u; E& U; B0 T8 @
但是比例控制規(guī)律并不能 保證水溫能夠精確達(dá)到 40度。在實(shí)際生活中,人們這時(shí)對熱水龍頭作微調(diào),只要水溫還不合適,就一點(diǎn)一點(diǎn)地調(diào)節(jié),直到水溫合適為止。這種只要控制偏差不消失就漸進(jìn)微調(diào)的控制規(guī)律,在控制里叫積分控制規(guī)律,因?yàn)榭刂屏亢涂刂破钤跁r(shí)間上的累積成正比,其比例因子就稱為積分控制增益。工業(yè)上常用積分控制增益的倒數(shù),稱其為積分時(shí)間常數(shù),其物理意義是偏差恒定時(shí),控制量加倍所需的時(shí)間。這里要注意的是,控制偏差有正有負(fù),全看實(shí)際測量值是大于還是小于設(shè)定值,所以只要控制系統(tǒng)是穩(wěn)定的,也就是實(shí)際測量值最終會穩(wěn)定在設(shè)定值上,控制偏差的累積不會是無窮大的。這里再啰嗦一遍,積分控制的基本作用是消除控制偏差的余差(也叫殘差)。# P( d8 Y) `1 E1 l: f8 o
; {- n9 z A* M/ J
- I& B* {4 H, ]
比例和積分控制規(guī)律可以應(yīng)付很大一類控制問題,但不是沒有改進(jìn)余地的。如果水管水溫快速變化,人們會根據(jù)水溫的變化調(diào)節(jié)熱水龍頭:水溫升高,熱水龍頭向關(guān)閉方向變化,升溫越快,開啟越多;水溫降低,熱水龍頭向開啟方向變化,降溫越快,關(guān)閉越多。這就是所謂的微分控制規(guī)律,因?yàn)榭刂屏亢蛯?shí)際測量值的變化率成正比,其比例因子就稱為比例控制增益,工業(yè)上也稱微分時(shí)間常數(shù)。微分時(shí)間常數(shù)沒有太特定的物理意義,只是積分叫時(shí)間常數(shù),微分也跟著叫了。微分控制的重點(diǎn)不在實(shí)際測量值的具體數(shù)值,而在其變化方向和變化速度。微分控制在理論上和實(shí)用中有很多優(yōu)越性,但局限也是明顯的。如果測量信號不是很“干凈”,時(shí)不時(shí)有那么一點(diǎn)不大不小的“毛刺”或擾動(dòng),微分控制就會被這些風(fēng)吹草動(dòng)搞得方寸大亂,產(chǎn)生很多不必要甚至錯(cuò)誤的控制信號。所以工業(yè)上對微分控制的使用是很謹(jǐn)慎的。1 R6 H8 O9 Q* G: d
6 U. r% v1 l$ ?! {8 [+ F
2 h8 S* [( k& |- O k9 r: o : J% C a1 h) r# V# n2 E
比例-積分-微分控制規(guī)律是工業(yè)上最常用的控制規(guī)律。人們一般根據(jù)比例-積分-微分的英文縮寫,將其簡稱為PID控制。即使在更為先進(jìn)的控制規(guī)律廣泛應(yīng)用的今天,各種形式的PID控制仍然在所有控制回路中占85%以上。, f% ~9 w% c) u' F/ ~- X! R
{: o# r: a) ]" a+ Z. R5 F( k8 G # L8 w" B( {! Q# k# e; g; a
在PID 控制中,積分控制的特點(diǎn)是:只要還有余差(即殘余的控制偏差)存在,積分控制就按部就班地逐漸增加控制作用,直到余差消失。所以積分的效果比較緩慢,除特殊情況外,作為基本控制作用,緩不救急。微分控制的特點(diǎn)是:盡管實(shí)際測量值還比設(shè)定值低,但其快速上揚(yáng)的沖勢需要及早加以抑制,否則,等到實(shí)際值超過設(shè)定值再作反應(yīng)就晚了,這就是微分控制施展身手的地方了。作為基本控制使用,微分控制只看趨勢,不看具體數(shù)值所在,所以最理想的情況也就是把實(shí)際值穩(wěn)定下來,但穩(wěn)定在什么地方就要看你的運(yùn)氣了,所以微分控制也不能作為基本控制作用。比例控制沒有這些問題,比例控制的反應(yīng)快,穩(wěn)定性好,是最基本的控制作用,是“皮”,積分、微分控制是對比例控制起增強(qiáng)作用的,極少單獨(dú)使用,所以是“毛”。在實(shí)際使用中比例和積分一般一起使用,比例承擔(dān)主要的控制作用,積分幫助消除余差。微分只有在被控對象反應(yīng)遲緩,需要在開始有所反應(yīng)時(shí),及早補(bǔ)償,才予以采用。只用比例和微分的情況很少見。& o# z% [! O, M9 o! M! p% ?
7 J Y7 a; ~4 L8 l0 r# U) ~
3 S' o# |- m( O, b" t r3 @
連續(xù)控制的精度是開關(guān)控制所不可比擬的,但連續(xù)控制的高精度也是有代價(jià)的,這就是穩(wěn)定性問題。控制增益決定了控制作用對偏差的靈敏度。既然增益決定了控制的靈敏度,那么越靈敏豈不越好?非也。還是用汽車的定速巡航控制做例子。速度低一點(diǎn),油門加一點(diǎn),速度低更多,油門加更多,速度高上去當(dāng)然就反過來。但是如果速度低一點(diǎn),油門就加很多,速度更低,油門狂加,這樣速度不但不能穩(wěn)定在要求的設(shè)定值上,還可能失控。這就是不穩(wěn)定。所以控制增益的設(shè)定是有講究的。在生活中也有類似的例子。國民經(jīng)濟(jì)過熱,需要經(jīng)濟(jì)調(diào)整,但調(diào)整過火,就要造成“硬著陸”,引起衰退;衰退時(shí)需要刺激,同樣,刺激過火,會造成“虛假繁榮”。要達(dá)成“軟著陸”,經(jīng)濟(jì)調(diào)整的措施需要恰到好處。這也是一個(gè)經(jīng)濟(jì)動(dòng)態(tài)系統(tǒng)的穩(wěn)定性問題。
) n% M" [' n. Q4 {" Z
" |& i# _9 u3 s/ ?& W& i1 o+ h
2 y5 o" D. G# q5 I; N 實(shí)際中到底多少增益才是最合適的,理論上有很多計(jì)算方法,但實(shí)用中一般是靠經(jīng)驗(yàn)和調(diào)試來摸索最佳增益,業(yè)內(nèi)行話叫參數(shù)整定。如果系統(tǒng)響應(yīng)在控制作用后面拖拖沓沓,大幅度振蕩的話,那一般是積分太過;如果系統(tǒng)響應(yīng)非常神經(jīng)質(zhì),動(dòng)不動(dòng)就打擺子,呈現(xiàn)高頻小幅度振蕩的話,那一般是微分有點(diǎn)過分。中頻振蕩當(dāng)然就是比例的問題了。不過各個(gè)系統(tǒng)的頻率都是不一樣的,到底什么算高頻,什么算低頻,這個(gè)幾句話說不清楚,應(yīng)了毛主席那句話:“具體情況具體分析”,所以就打一個(gè)哈哈了。7 ?+ H+ J$ K$ C6 h. K8 R {
4 Q" I% W2 M% B8 I9 u
r" Y' }5 @ q3 `0 x) \ 再具體說起來,參數(shù)整定有兩個(gè)路子。一是首先調(diào)試比例增益以保證基本的穩(wěn)定性,然后加必要的積分以消除余差,只有在最必要的情況下,比如反映遲緩的溫度過程或容量極大的液位過程,測量噪聲很低,才加一點(diǎn)微分。這是“學(xué)院派”的路子,在大部分情況下很有效。但是工業(yè)界有一個(gè)“歪路子”:用非常小的比例作用,但大大強(qiáng)化積分作用。這個(gè)方法是完全違背控制理論的分析的,但在實(shí)際中卻是行之有效,原因在于測量噪聲嚴(yán)重,或系統(tǒng)反應(yīng)過敏時(shí),積分為主的控制規(guī)律動(dòng)作比較緩和,不易激勵(lì)出不穩(wěn)定的因素,尤其是不確定性比較高的高頻部分,這也是鄧小平“穩(wěn)定壓倒一切”的初衷吧。/ R' u% ]* j9 i$ A# p& Z5 {
2 W4 O( Q: l; D" _8 }" ~/ K! m* ?9 y( i/ @ p/ l$ h
! m' {1 C$ F! K5 E6 n
在很多情況下,在初始PID參數(shù)整定之后,只要系統(tǒng)沒有出現(xiàn)不穩(wěn)定或性能顯著退化,一般不會去重新整定。但是要是系統(tǒng)不穩(wěn)定了怎么辦呢?由于大部分實(shí)際系統(tǒng)都是開環(huán)穩(wěn)定的,也就是說,只要控制作用恒定不變,系統(tǒng)響應(yīng)最終應(yīng)該穩(wěn)定在一個(gè)數(shù)值,盡管可能不是設(shè)定值,所以對付不穩(wěn)定的第一個(gè)動(dòng)作都是把比例增益減小,根據(jù)實(shí)際情況,減小1/3、1/2甚至更多,同時(shí)加大積分時(shí)間常數(shù),常常成倍地加,再就是減小甚至取消微分控制作用。如果有前饋控制,適當(dāng)減小前饋增益也是有用的。在實(shí)際中,系統(tǒng)性能不會莫名其妙地突然變壞,上述“救火”式重新整定常常是臨時(shí)性的,等生產(chǎn)過程中的機(jī)械或原料問題消除后,參數(shù)還是要設(shè)回原來的數(shù)值,否則系統(tǒng)性能會太過“懶散”。
9 g$ [, e7 U4 u, o5 E/ F+ h9 ~0 _9 K$ k c! e
* k* _2 U6 X* e) Z 對于新工廠,系統(tǒng)還沒有投運(yùn),沒法根據(jù)實(shí)際響應(yīng)來整定,一般先估計(jì)一個(gè)初始參數(shù),在系統(tǒng)投運(yùn)的過程中,對控制回路逐個(gè)整定。我自己的經(jīng)驗(yàn)是,對于一般的流量回路,比例定在 0.5左右,積分大約1分鐘,微分為0,這個(gè)組合一般不致于一上來就出大問題。溫度回路可以從2、5、0.05開始,液位回路從5、10、0開始,氣相壓力回路從10、20、0開始。既然這些都是憑經(jīng)驗(yàn)的估計(jì),那當(dāng)然要具體情況具體分析,不可能“放之四海而皆準(zhǔn)”。
! L1 h. ^$ @8 ^
) S% J" I; P" P, A; X) M9 m& }% E9 q8 J) `
, k0 f% z* Z% Y* Z 微分一般用于反應(yīng)遲緩的系統(tǒng),但是事情總有一些例外。我就遇到過一個(gè)小小的冷凝液罐,直徑才兩英尺,長不過5英尺,但是流量倒要8-12噸/小時(shí),一有風(fēng)吹草動(dòng),液位變化非常迅速,不管比例、積分怎么調(diào),液位很難穩(wěn)定下來,常常是控制閥剛開始反應(yīng),液位已經(jīng)到頂或到底了。最后加了0.05的微分,液位一開始變化,控制閥就開始抑制,反而穩(wěn)定下來了。這和常規(guī)的參數(shù)整定的路子背道而馳,但在這個(gè)情況下,反而是“唯一”的選擇,因?yàn)闇y量值和控制閥的飽和變成穩(wěn)定性主要的問題了。
- }3 C1 w" M) \0 b
0 U L3 o0 t% Z* C0 `" W . d4 D) `" t. [( A6 d
對工業(yè)界以積分為主導(dǎo)控制作用的做法再啰嗦幾句。學(xué)術(shù)上,控制的穩(wěn)定性基本就是漸近穩(wěn)定性,BIBO穩(wěn)定性是沒有辦法證明漸近穩(wěn)定性時(shí)的“退而求其次”的東西,不怎么上臺面的。但是工業(yè)界里的穩(wěn)定性有兩個(gè)看起來相似、實(shí)質(zhì)上不盡相同的方面:一個(gè)當(dāng)然是漸近穩(wěn)定性,另一個(gè)則是穩(wěn)定性,但不一定向設(shè)定值收斂,或者說穩(wěn)定性比收斂性優(yōu)先這樣一個(gè)情況。具體來說,就是需要系統(tǒng)穩(wěn)定在一個(gè)值上,不要?jiǎng)觼韯?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è)大氣壓,并沒有太大的關(guān)系,只要慢慢地但是穩(wěn)定地向設(shè)定值移動(dòng)就足夠了。這是控制理論里比較少涉及的一個(gè)情況,這也是工業(yè)上時(shí)常采用積分主導(dǎo)的控制的一個(gè)重要原因。: n$ ^: T8 h/ f
4 S( d7 `1 ` F
5 U- c- c- U1 }' n& d$ f
# v! a6 L W9 c& s: [ 前面說到系統(tǒng)的頻率,本來也就是系統(tǒng)響應(yīng)持續(xù)振蕩時(shí)的頻率,但是控制領(lǐng)域里有三撥人在搗騰:一撥是以機(jī)電類動(dòng)力學(xué)系統(tǒng)為特色的電工出身,包括航空、機(jī)器人等,一撥是以連續(xù)過程為特色的化工出身的,包冶金、造紙等,還有一撥是以微分方程穩(wěn)定性為特色的應(yīng)用數(shù)學(xué)出身的。在瓦特和抽水馬桶的年代里,各打各的山頭,井水不犯河水,倒也太平。但控制從藝術(shù)上升為理論后,總有人喜歡“統(tǒng)一”,電工幫搶了先,好端端的控制理論里被塞進(jìn)了電工里的頻率。童子們哪,那哪是頻率啊,那是……復(fù)頻率。既然那些變態(tài)的電工幫(啊耶,這下鹿踹真的要來了)能折騰出虛功率,那他們也能折騰出復(fù)頻率來,他們自虐倒也算了,只是苦了我等無辜之眾,被迫受此精神折磨。4 l0 A0 r2 O+ H u5 q# \" l
5 J, j% a/ t! \/ C
6 I6 H# K* Y) s4 [! [+ f( H, V
) d8 i' m% Q* L 事情的緣由是系統(tǒng)的穩(wěn)定性。前面提到,PID的參數(shù)如果設(shè)得不好,系統(tǒng)可能不穩(wěn)定。除了摸索,有沒有辦法從理論上計(jì)算出合適的PID參數(shù)呢?前面也提到,動(dòng)態(tài)過程可以用微分方程描述,其實(shí)在PID的階段,這只是微分方程中很狹窄的一支:單變量線性常微分方程。要是還記得大一高數(shù),一定還記得線形常微的解,除了分離變量法什么的,如果自變量時(shí)間用t表示的話,最常用的求解還是把 exp(λt)代入微分方程,然后解已經(jīng)變成λ的代數(shù)方程的特征方程,解出來的解可以是實(shí)數(shù),也可以是復(fù)數(shù),是復(fù)數(shù)的話,就要用三角函數(shù)展開了(怎么樣,大一噩夢的感覺找回來一點(diǎn)沒有?)。只要實(shí)根為負(fù),那微分方程就是穩(wěn)定的,因?yàn)樨?fù)的指數(shù)項(xiàng)最終向零收斂,復(fù)根到底多少就無所謂了,對穩(wěn)定性沒有影響。但是,這么求解分析起來還是不容易,還是超不出“具體情況具體分析”,難以得出一般的結(jié)論。
. K8 I/ A) E4 ?2 P- D% @! }5 B. O, H
2 p1 n- ~6 V# g% ]+ m! M0 Y , O, o( Z! g8 v9 O& G
法國人以好色、好吃出名,但是他們食色性也之后,還不老實(shí),其中一個(gè)叫拉普拉斯的家伙,搗鼓出什么拉普拉斯變換,把常微分方程變成s的多項(xiàng)式。然后那幫電工的家伙們,喜歡自虐,往s里塞jω,就是那個(gè)復(fù)頻率,整出一個(gè)變態(tài)的頻率分析,用來分析系統(tǒng)的穩(wěn)定性。不過說變態(tài),也不完全公平,在沒有計(jì)算機(jī)的年代,各種圖表是最有效的分析方法,還美其名曰“幾何分析”。頻率分析也不例外。美國佬Evans搞出一個(gè)根軌跡(root locus),思路倒是滿有意思的。他用增益作自變量,將系統(tǒng)的根(不管實(shí)的虛的)在復(fù)平面上畫出軌跡來,要是軌跡在左半平面打轉(zhuǎn)轉(zhuǎn),那就是實(shí)根為負(fù),就是穩(wěn)定的。再深究下去,系統(tǒng)響應(yīng)的臨界頻率之類也可以計(jì)算出來。最大的好處是,對于常見的系統(tǒng),可以給出一套作圖規(guī)則來,熟練的大牛、小牛、公牛、母牛們,眼睛一瞄,隨手就可以畫出根軌跡來,然后就可以告訴你,增益變化多多少,系統(tǒng)開始振蕩,再增加多少,系統(tǒng)會不穩(wěn)定,云云。 3 s: F( M' H4 [6 E
: b0 K% Y4 M3 ~& _; K' e- {根軌跡還是比較客氣的,還有更變態(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)性能變化。咦,剛才還不是在說人家變態(tài)嗎?呃,變態(tài)也有變態(tài)的魅力不是?哈哈。
& |" i* s7 H, z+ b; }/ T5 Y, o# d8 B2 V: d6 n0 l
6 U# m0 E3 }. F7 ~2 i 以頻率分析(也稱頻域分析)為特色的控制理論稱為經(jīng)典控制理論。經(jīng)典控制理論可以把系統(tǒng)的穩(wěn)定性分析得天花亂墜,但有兩個(gè)前提:一、要已知被控對象的數(shù)學(xué)模型,這在實(shí)際中不容易得到;二、被控對象的數(shù)學(xué)模型不會改變或漂移,這在實(shí)際中更難做到。對簡單過程建立微分方程是可能的,但簡單過程的控制不麻煩,經(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án)境參數(shù)都可以測量,但是經(jīng)典控制理論至少在化工控制中實(shí)用成功的例子實(shí)在是鳳毛麟角,給你一個(gè)50塊塔板的精餾塔,一個(gè)氣相進(jìn)料,一個(gè)液相進(jìn)料,塔頂、塔底出料加一個(gè)側(cè)線出料,塔頂風(fēng)冷冷凝器,塔底再沸器加一個(gè)中間再沸器,你就慢慢建模去吧,等九牛二虎把模型建立起來了,風(fēng)冷冷凝器受風(fēng)霜雨雪的影響,再沸器的高壓蒸汽的壓力受友鄰裝置的影響,氣相進(jìn)料的溫度和飽和度受上游裝置的影響而改變,液相進(jìn)料的混合組分受上游裝置的影響而改變,但組分無法及時(shí)測量(在線氣相色譜分析結(jié)果要45 分鐘才能出來),動(dòng)態(tài)特性全變了。
% H) f7 O& m( q7 n2 F) @: t
* @; d5 L4 Y G3 h T, s% Y' d
0 b! q! u) x8 }
老家伙歌德兩百年前就說了,理論是灰色的,生命之樹常青。我們知道馬鹿喜歡金光的或者銀光的,至少也要紅的,不過只好將就啦,青綠地干活。在實(shí)用中,PID有很多表兄弟,幫著大表哥一塊打天下。
+ z8 `) \- N3 I) i2 b, }9 t0 v$ t: _* y' _0 p
m' k8 F: j' O; W4 k3 [
比例控制的特點(diǎn)是:偏差大,控制作用就大。但在實(shí)際中有時(shí)還嫌不夠,最好偏差大的時(shí)候,比例增益也大,進(jìn)一步加強(qiáng)對大偏差的矯正作用,及早把系統(tǒng)拉回到設(shè)定值附近;偏差小的時(shí)候,當(dāng)然就不用那么急吼吼,慢慢來就行,所以增益小一點(diǎn),加強(qiáng)穩(wěn)定性。這就是雙增益PID(也叫雙模式PID)的起源。想想也對,高射炮瞄準(zhǔn)敵機(jī)是一個(gè)控制問題。如果炮管還指向離目標(biāo)很遠(yuǎn)的角度,那應(yīng)該先盡快地把炮管轉(zhuǎn)到目標(biāo)角度附近,動(dòng)作猛一點(diǎn)才好;但炮管指向已經(jīng)目標(biāo)很近了,就要再慢慢地精細(xì)瞄準(zhǔn)。工業(yè)上也有很多類似的問題。雙增益PID的一個(gè)特例是死區(qū)PID(PIDwith dead band),小偏差時(shí)的增益為零,也就是說,測量值和設(shè)定值相差不大的時(shí)候,就隨他去,不用控制。這在大型緩沖容器的液位控制里用得很多。本來緩沖容器就是緩沖流量變化的,液位到底控制在什么地方并不緊要,只要不是太高或太低就行。但是,從緩沖容器流向下游裝置的流量要盡可能穩(wěn)定,否則下游裝置會受到不必要的擾動(dòng)。死區(qū)PID對這樣的控制問題是最合適的。但是天下沒有免費(fèi)的午餐。死區(qū)PID的前提是液位在一般情況下會“自動(dòng)”穩(wěn)定在死區(qū)內(nèi),如果死區(qū)設(shè)置不當(dāng),或系統(tǒng)經(jīng)常受到大幅度的擾動(dòng),死區(qū)內(nèi)的“無控”狀態(tài)會導(dǎo)致液位不受限制地向死區(qū)邊界“挺進(jìn)”,最后進(jìn)入“受控”區(qū)時(shí),控制作用過火,液位向相反方向不受限制地“挺進(jìn)”,最后的結(jié)果是液位永遠(yuǎn)在死區(qū)的兩端振蕩,而永遠(yuǎn)不會穩(wěn)定下來,業(yè)內(nèi)叫hunting(打獵?打什么?打鹿?)。雙增益PID也有同樣的問題,只是比死區(qū)PID好一些,畢竟只有“強(qiáng)控制”和“弱控制”的差別,而沒有“無控區(qū)”。在實(shí)用中,雙增益的內(nèi)外增益差別小于2:1沒有多大意義,大于 5:1就要注意上述的持續(xù)振蕩或hunting的問題。: b( I( N& u$ M1 ^' R
; g3 c$ d8 r) E1 r5 O# U( s" H- U6 ^1 @3 A1 F9 w
1 @* D9 ], Q9 M5 ~8 |
雙增益或死區(qū)PID的問題在于增益的變化是不連續(xù)的,控制作用在死區(qū)邊界上有一個(gè)突然的變化,容易誘發(fā)系統(tǒng)的不利響應(yīng),平方誤差PID就沒有這個(gè)問題。誤差一經(jīng)平方,控制量對誤差的曲線就成了拋物線,同樣達(dá)到“小偏差小增益、大偏差大增益”的效果,還沒有和突然的不連續(xù)的增益變化。但是誤差平方有兩個(gè)問題:一是誤差接近于零的時(shí)候,增益也接近于零,回到上面死區(qū)PID的問題;二是很難控制拋物線的具體形狀,或者說,很難制定增益在什么地方拐彎。對于第一個(gè)問題,可以在誤差平方PID上加一個(gè)基本的線性PID,是零誤差是增益不為零;對于后一個(gè)問題,就要用另外的模塊計(jì)算一個(gè)連續(xù)變化的增益了。具體細(xì)節(jié)比較瑣碎,將偏差送入一個(gè)分段線性化(也就是折線啦)的計(jì)算單元,然后將計(jì)算結(jié)果作為比例增益輸出到PID控制器,折線的水平段就對應(yīng)予不同的增益,而連接不同的水平段的斜線就對應(yīng)于增益的連續(xù)變化。通過設(shè)置水平段和斜線段的折點(diǎn),可以任意調(diào)整變增益的曲線。要是“野心”大一點(diǎn),再加幾個(gè)計(jì)算單元,可以做出不對稱的增益,也就是升溫時(shí)增益低一點(diǎn),降溫時(shí)增益高一點(diǎn),以處理加熱過程中常見的升溫快、降溫慢的問題。
- Q& u* @" |+ g6 l" D/ r! \) R* |4 ^( f m3 A) b5 c, h
# \4 L' _ Z- f. L3 I" m
) }4 E+ _2 j6 w 雙增益或誤差平方都是在比例增益上作文章,同樣的勾當(dāng)也可以用在積分和微分上。更極端的一種PID規(guī)律叫積分分離 PID,其思路是這樣的:比例控制的穩(wěn)定性好,響應(yīng)快,所以偏差大的時(shí)候,把PID中的積分關(guān)閉掉;偏差小的時(shí)候,精細(xì)調(diào)整、消除余差是主要問題,所以減弱甚至關(guān)閉比例作用,而積分作用切入控制。概念是好的,但具體實(shí)施的時(shí)候,有很多無擾動(dòng)切換的問題。
2 t+ L% g* L X7 y9 |
2 a- W8 p6 D0 _
4 ^6 H9 F( l9 i5 s 這些變態(tài)的PID在理論上很難分析系統(tǒng)的穩(wěn)定性,但在實(shí)用中解決了很多困難的問題。大言不慚一句,這些PID本人在實(shí)際中都用過。
9 a2 H! l7 p2 e$ j& I# b- u* J0 z! ]( g! e! u0 x4 }2 ?" N% a
+ B5 C0 f9 ?. e- \ f Y2 T6 r
復(fù)雜結(jié)構(gòu)PID: q. w) D5 m) s0 p# \) I ?$ F
( {# {+ _5 z/ m/ C+ J
' D9 d" E! @+ _! C) p( s# Z D 打仗時(shí),如果敵人太頑固,要么換更大的炮,把敵人轟倒;要么采用更巧妙的戰(zhàn)術(shù),把敵人暈倒??刂埔彩且粯?,單回路PID難以解決的問題,常??梢酝ㄟ^更巧妙的回路結(jié)構(gòu)來解決。
0 B, \( f$ F9 W6 z$ w0 `
' X( ?, l R+ d5 l, o# t 2 p& n+ \: d5 Y5 v9 v, `0 W
單一的PID回路當(dāng)然可以實(shí)現(xiàn)擾動(dòng)抑制,但要是主要擾動(dòng)在回路中,而且是明確的,加一個(gè)內(nèi)回路作幫手是一個(gè)很不錯(cuò)的主意。還記得洗熱水澡的例子嗎?要是熱水壓力不穩(wěn)定,老是要為這個(gè)而調(diào)整熱水龍頭,那很麻煩。要是有一個(gè)人專門負(fù)責(zé)根據(jù)熱水壓力調(diào)節(jié)熱水流量,把熱水壓力穩(wěn)定下來,而且穩(wěn)定在標(biāo)定值,那洗澡的時(shí)候,水溫就容易控制多了,只要告訴那個(gè)人現(xiàn)在需要多少熱水流量,而不必?zé)┬臒崴畨毫崴髁康挠绊?。這個(gè)負(fù)責(zé)熱水流量的控制回路就是內(nèi)回路,也叫副回路,而洗澡的溫度就是外回路,也叫主回路,當(dāng)然是主回路指揮副回路,就像自動(dòng)化指揮機(jī)械化、學(xué)自控的人指揮學(xué)機(jī)電的人……打住打住,再扯遠(yuǎn)了要挨鹿踹了,或者馬踹、牛踹、驢踹……。這種主回路套副回路的結(jié)構(gòu)叫串級控制(cascade control),曾經(jīng)是單回路PID后工業(yè)上第一種“先進(jìn)過程控制”,現(xiàn)在串級已經(jīng)用得很多了,也不再有人叫它“先進(jìn)過程控制”了。串級控制最主要的功用是抑制回路內(nèi)的擾動(dòng),增強(qiáng)總體控制性能。不過串級也不能亂用。如果主回路和副回路的相應(yīng)速度差不多,或者主回路的相應(yīng)速度甚至慢于副回路(通過變態(tài)的調(diào)試是可以做到的),這樣的串級要出問題。理論上可以用共振頻率什么的分析,但是不用費(fèi)那個(gè)事,用膝蓋想想就知道,一個(gè)急性子的頭兒把一個(gè)溫吞水的下屬指揮得團(tuán)團(tuán)轉(zhuǎn),結(jié)果只能是大家都精疲力竭,事情還辦砸了。相反,一個(gè)鎮(zhèn)定自若的頭兒指揮一個(gè)手腳麻利的下屬,那事情肯定辦得好。9 b& O) Y; y5 t0 U' l
: {* J* @$ D- F4 n
/ ~& r2 i v1 {) T- j* b , o' F2 Q; G$ M
如果主要擾動(dòng)在回路以外,但是可以預(yù)知,那就要用另一個(gè)辦法,就是馬鹿前面說到的前饋了。還是用洗熱水澡的例子。如果冷水管和同一個(gè)水房的抽水馬桶功用,你在洗澡,別人一抽水,那你就變煮熟的龍蝦了(本想說猴子PP的,但是那個(gè)不雅,我們要五講四美不是?)。這個(gè)時(shí)候,要使那個(gè)人在抽水的同時(shí)告訴你一聲,你算好時(shí)間,算好量,猛減熱水,那溫度還是可以大體不變的。這就是所謂前饋控制(feed-forward control)。前饋控制有兩個(gè)要緊的東西:一是定量的擾動(dòng)對被控變量的影響,也就是所謂前饋增益;二是擾動(dòng)的動(dòng)態(tài),別人抽水到洗澡龍頭的水溫變熱,這里面有一個(gè)過程,不是立時(shí)三刻的。如果可以精確知道這兩樣?xùn)|西,那前饋補(bǔ)償可以把可測擾動(dòng)完全補(bǔ)償?shù)?。但?shí)際上沒有精確知道的事情,要是指望前饋來完全補(bǔ)償,弄巧成拙是肯定的。所以前饋通常和反饋一起用,也就是在PID回路上再加一個(gè)前饋。一般也只用靜態(tài)前饋,也就是只補(bǔ)償擾動(dòng)對被控變量的靜態(tài)影響,而忽略擾動(dòng)的動(dòng)態(tài)因素,主要是為了靜態(tài)前饋已經(jīng)把前饋80%的好處發(fā)掘出來了,動(dòng)態(tài)前饋既復(fù)雜又不可靠,在PID回路里很少有人用。理論上的前饋都是在PID 的控制作用上再加一個(gè)前饋?zhàn)饔?,?shí)際上也可以乘一個(gè)控制作用。乘法前饋的作用太猛,我從來沒有用過,一般都是用加法。在實(shí)施中,前饋是和擾動(dòng)的變化(也就是增量)成比例的,所以擾動(dòng)變量不變了,前饋?zhàn)饔镁拖В駝t,整定前饋控制增益會對PID主回路造成擾動(dòng)。前饋增益可以根據(jù)粗略計(jì)算得到,比如說,抽水的量會造成溫度下降多少、需要調(diào)整多少熱水流量才能維持溫度,這不難從熱量平衡算出來。不想費(fèi)這個(gè)事的話,也可以從歷史數(shù)據(jù)中推算。一般算出來一個(gè)前饋增益后,打上7折甚至5折再用,保險(xiǎn)一點(diǎn),不要矯枉過正。
- @$ u5 T6 Z; p& B
; |. g3 h3 q) p; ^
; J& |, {* [/ w7 r( g
( P0 R# L) o4 B* a4 L0 D) H( F 前饋?zhàn)饔靡话闶怯米鬏o助控制作用的,但是在特殊情況下,前饋也可以作為“預(yù)加載” (pre-loading)作為基準(zhǔn)控制作用。比如說,在一個(gè)高壓系統(tǒng)的啟動(dòng)過程中,壓力可以從靜止?fàn)顟B(tài)的常壓很快地什到很高的壓力。高壓系統(tǒng)不容許閥門大幅度運(yùn)動(dòng),所以控制增益都比較低,但是這樣一來,啟動(dòng)升壓過程中,壓力控制的反應(yīng)就十分遲緩,容易造成壓力過高。這時(shí)用壓縮機(jī)的轉(zhuǎn)速或高壓進(jìn)料的流量作前饋,將壓力控制閥“預(yù)先”放到大概的位置,然后再用反饋慢慢調(diào)節(jié),就可以解決這個(gè)問題。0 G2 h$ _' n" @$ [
# o1 V8 l; C; z H0 H
' V: F- v5 B4 M$ M# N6 R. Z
# n. G* J. p0 s" _, x
有點(diǎn)搞笑兄在前面提到用單個(gè)閥門有時(shí)難以控制大 范圍變化的流量,這是一個(gè)很實(shí)際的問題。工業(yè)閥門一般turndown只有10:1,也就是說,如果這個(gè)閥門的最大流量是100噸/小時(shí)的話,低于10噸/小時(shí)就難以控制了,當(dāng)然,高于90噸/小時(shí)也幾近失去控制。所以,要真的保證0-100的精確控制,需要將一個(gè)大閥和一個(gè)小閥并列,小閥負(fù)責(zé)小流量時(shí)的精確控制,大閥負(fù)責(zé)大流量時(shí)的精確控制,這就是所謂的分程控制(split range control)。分程控制時(shí),小閥首先打開,超過小閥最大流量是小閥就固定在全開位置,大閥開始打開,接過控制。這是開-開型分程控制。也有關(guān)-開型分程控制,比如反應(yīng)器夾套溫度控制,隨溫度逐漸上升,冷卻水逐漸關(guān)閉,直到冷卻水全關(guān),加熱蒸氣開始打開。分程控制當(dāng)然不一定只有兩截,三截甚至更多都是可以的,道理都一樣。分程控制的問題在于不同閥門的交接點(diǎn)。閥門在特別小的開度時(shí),控制非常不靈敏,前面說到的10:1也是這個(gè)道理。所以實(shí)用中,開-開型分程控制常常在交接點(diǎn)附近有一段重疊,也就是小閥快要全開但還沒有全開時(shí),大閥已經(jīng)開始動(dòng)作,這樣,到小閥全開、不能再動(dòng)彈時(shí),大閥已經(jīng)進(jìn)入有效控制范圍。關(guān)-開型分程控制常常在交接點(diǎn)設(shè)置一個(gè)死區(qū),避免出現(xiàn)兩個(gè)閥都有一點(diǎn)點(diǎn)開度的情況。分程控制的交接點(diǎn)的設(shè)置有一點(diǎn)講究,應(yīng)該根據(jù)閥的大小。比如A閥比 B閥大一倍,那分程點(diǎn)應(yīng)該設(shè)在1/3先開B閥,而不是懶漢做法的1/2。
4 x- B" d& G# i8 z+ a9 }
3 k ^9 f) W+ W+ T& n. P; Q( i+ N' h) u
8 c8 f- s: y3 U
很多過程參數(shù)都是可以測量的,但也有很多參數(shù)是沒法直接測量的,這時(shí),如果能夠通過別的可以測量的過程參數(shù)來間接計(jì)算真正需要控制的參數(shù),這就是所謂的推斷控制(inferential control)。比如精餾塔頂?shù)漠a(chǎn)品純度可以用氣相色譜(gaschromatograph,GC)來測量,但結(jié)果要等40分鐘才能出來,用來做實(shí)時(shí)控制,黃花菜都涼了。推斷控制是和“軟傳感器”(soft sensor)的概念緊密相連的。對精餾塔塔頂純度這個(gè)例子來說,可以用純度和塔頂溫度、壓力作一個(gè)數(shù)學(xué)模型,用可以測量的溫度和壓力,間接計(jì)算出純度。在計(jì)算機(jī)控制普及的今天,這是很容易實(shí)現(xiàn)的,但是在很多地方,推斷控制仍然被看成很神秘的東西,悲哀。
9 W! {- m% H) |8 ]: U' J! a0 \0 {3 n
) E4 ~5 c, q8 Z7 V0 {' m* m 有的時(shí)候,對同一個(gè)變量有不止一個(gè)控制手段。比如說,風(fēng)冷器有風(fēng)扇的轉(zhuǎn)速可以調(diào)節(jié),也有百葉窗的開度可以調(diào)節(jié)。風(fēng)扇轉(zhuǎn)速的效果快,控制精確;百葉窗開度的效果猛,不容易掌握,但有利于節(jié)能。所以,可以用風(fēng)扇的快速響應(yīng)來控制溫度,但是用百葉窗開度來通過溫度間接地緩慢地影響風(fēng)扇的轉(zhuǎn)速,使風(fēng)扇轉(zhuǎn)速回到最經(jīng)濟(jì)的設(shè)定。當(dāng)然百葉窗開度的控制回路必須要比風(fēng)扇轉(zhuǎn)速的控制回路整定得慢得多,一般是緩慢的純積分控制,否則兩人要打架。由于這相當(dāng)于控制風(fēng)扇轉(zhuǎn)速的“閥位”,工業(yè)上稱其為閥位控制(valve position control)。這個(gè)閥位控制也可以變一變,風(fēng)扇轉(zhuǎn)速高于某一數(shù)值(比如80%的最大轉(zhuǎn)速)時(shí),把百葉窗開大一格,還是高就繼續(xù)開大;風(fēng)扇轉(zhuǎn)速低于某一數(shù)值(比如低于20%最大轉(zhuǎn)速)時(shí),把百葉窗關(guān)小一格。這實(shí)際上是一個(gè)單向的積分作用,不同的地方有兩點(diǎn):; J D1 C4 \1 ^$ f. o( D
! R3 e8 q' v# p7 z2 C& x + B/ r: m% u6 @8 p4 s; h* p
一、有兩個(gè)設(shè)定值,由風(fēng)扇轉(zhuǎn)速是高還是低而定
: M2 `8 o8 B& ]+ s+ e
" G$ m! B# d6 A) B 8 B' f6 J" W0 |+ W _' |2 ]
二、積分作用只有在風(fēng)扇轉(zhuǎn)速在這兩個(gè)“極限”的外面起作用,在里面時(shí),百葉窗的開度不變。
, w- y! f8 z! a& D5 I
, `/ D8 {* q; _4 U: I2 M 7 t. x: t) L w, h
這樣,風(fēng)扇轉(zhuǎn)速不必回到一個(gè)特定值,而是可以在一個(gè)范圍內(nèi)浮動(dòng)。
$ V9 S1 X, e) F. w1 K8 q+ p
) j3 X6 K3 s7 S+ A0 _ 1 v& x" J }9 E: b0 H/ T
另 外一個(gè)兩個(gè)控制器“競爭”一個(gè)控制閥的情況是選擇性控制(override control或selective control)。舉個(gè)例子,鍋爐的溫度由燃料流量控制,溫度高了,燃料流量就減下來,但是燃料流量低到燃料管路壓力低于爐膛壓力,那要出現(xiàn)危險(xiǎn)的回火,所以,這時(shí),燃料管路壓力就要接管控制,而犧牲爐膛溫度。換句話說,正常時(shí)候,爐膛溫度控制起作用,燃料管路壓力低于一定數(shù)值時(shí),燃料管路壓力控制器作用。在實(shí)施時(shí),就是爐膛溫度控制器和燃料管路壓力控制器的輸出都接到一個(gè)高選器,然后搞選器的輸出接到實(shí)際的燃料閥。這個(gè)概念很清楚,但是初次接觸選擇性控制的人,常常容易被高選還是低選搞糊涂,明明是壓力太低,怎么是高選呢?其實(shí),只要記住高選還是低選是從閥門這一頭看的,和溫度、壓力的高度沒有關(guān)系。如果“非?!弊兞砍^界限了,你要閥門打開,那就是高選;你要閥門關(guān)閉,那就是低選。% m2 {) e6 N) w8 y) W4 ]' B) s
' w" }; N; r) x! N5 i
0 r, ]) i- g9 z/ T2 K } u
PID從二、三十年到開始在工業(yè)界廣泛應(yīng)用,戲法變了幾十年,也該換換花樣了。PID說一千道一萬,還是經(jīng)典控制理論的產(chǎn)物。50-60年代時(shí),什么都要現(xiàn)代派,建筑從經(jīng)典的柱式、比例、細(xì)節(jié)的象征意義,變到“形式服從功能”的鋼架玻璃盒子;汽車從用機(jī)器牽引的馬車,變到流線型的鋼鐵的藝術(shù);控制理論也要緊跟形勢,要現(xiàn)代化。這不,美國佬卡爾曼隆重推出……現(xiàn)代控制理論。 q3 @9 _8 a$ E- S- \, b
|