控制系統(tǒng)設計人員始終追求的就是為應用找到最佳的控制方法。除了經(jīng)典的PID控制外,本文還探討了最優(yōu)控制、模糊控制和人工神經(jīng)網(wǎng)絡控制。
每一個控制系統(tǒng)的用戶/設計人員,都經(jīng)常會被問到同一個問題:哪種控制方法最好。現(xiàn)在,比幾十年前有了更多的選擇,控制方法的問題尤為重要。很久以前,“黃金”解決方案(實際上是唯一的)是比例-積分-微分(PID)控制器。雖然PID控制本身沒有什么問題,但實際存在的限制使其它控制方法在許多應用中更受歡迎?,F(xiàn)在,還有哪些控制方法可供選擇?
除了經(jīng)典的PID控制外,本文還研究了最優(yōu)控制、模糊控制和人工神經(jīng)網(wǎng)絡(或基于神經(jīng)網(wǎng)絡的控制)。在工廠應用的受控系統(tǒng)分析中,可以看到經(jīng)典PID控制器的局限性。雖然可以有很多應用領域,但本文分析聚焦于位置伺服機構,此類裝置廣泛應用于工業(yè)機器人、自動駕駛車輛和許多其它(不僅是在工業(yè)領域)應用。
01
位置伺服系統(tǒng)識別
如果受控系統(tǒng)是基于恒定勵磁(例如永磁體)的直流電機的伺服機構,則可以通過簡化的傳遞函數(shù)來描述,在s域中電壓的角位移為:
其中:K代表電機扭矩常數(shù);T代表電機的機械參數(shù):J/B,其中J是包括負載在內(nèi)的總慣性,B表示電機阻尼;Ti代表積分常數(shù)(由電機轉速和傳動比確定)。
上面的傳遞函數(shù)代表與積分器組合的一階系統(tǒng)。理論上,還有另一個一階、低通濾波器,其時間常數(shù)等于電機繞組電感和電阻的比值;這個時間常數(shù)明顯小于主時間常數(shù)T,因此不必考慮它。
如果您是電機用戶,而不是電機設計師,那么通過實驗測量其在開環(huán)中的響應來找到(主)時間常數(shù)可能會更簡單。為此,向伺服系統(tǒng)施加一定的驅動變量(電壓,VIN),例如,相當于最大伺服速度的50%。伺服系統(tǒng)負載必須是正常工作條件下的滿載。掃描伺服機構的位置響應,并在其到達最大位置之前將其關閉??赡墚a(chǎn)生的測量值如圖1所示。
▲圖1:控制系統(tǒng)設計圖展示了開環(huán)伺服系統(tǒng)的響應特性。
根據(jù)上述特性,并通過輸入值(例如,對應于最大伺服速度50%的階躍函數(shù)VIN),確定典型伺服系統(tǒng)的一階非靜態(tài)(積分器與一階滯后相結合)傳遞函數(shù)的T和Ti常數(shù)。伺服電機和伺服驅動運動控制系統(tǒng),可以使用下述的各種閉環(huán)控制,包括方程、案例、圖形、表格。
02
如何應用PID控制器?
PID補償是最常見的閉環(huán)控制形式之一。為什么它如此受歡迎?在大多數(shù)應用中,受控過程可以通過一階或二階傳遞函數(shù)進行建模。PID控制器可以消除或至少顯著補償傳遞函數(shù)的兩個極點。PID控制器在s域中的傳遞函數(shù)(U(s))/(E(s))可以表示如下:
現(xiàn)在,讓我們假設一個受控系統(tǒng),它可以用一階非靜態(tài)傳遞函數(shù)來近似表示:
控制系統(tǒng)的開環(huán)傳遞函數(shù)(Y(s))/(E(s)),等于
為什么使用PD而不是PID?首先,請注意,在完整的PID控制器中,積分部分是缺失的。為什么?因為積分器已經(jīng)存在于受控的伺服系統(tǒng)中。在最佳調諧的控制系統(tǒng)中,比率KD /KP必須與τ1時間常數(shù)相匹配,因此開環(huán)傳遞函數(shù)將減小到:(KPK)/(sτ2)。理想調諧PD控制系統(tǒng)的閉環(huán)傳遞函數(shù) (Y(s))/(R(s)),等于:
這對應于具有時間常數(shù)τ的單極傳遞函數(shù),相當于τ2 /(KP K),其中τ2是積分時間常數(shù),KP是控制器的比例常數(shù),K是受控系統(tǒng)的增益。然而,如果通過使用如圖1所示的響應特性找到時間常數(shù),則增益(即常數(shù)K)值變?yōu)?.0。則閉環(huán)傳遞函數(shù)時間常數(shù)τ等于τ2 /KP。這非常好,因為通過使ΚP足夠大,可以從閉環(huán)控制系統(tǒng)獲得更快的時間響應。實際上,“足夠大”可以提供5到10倍的響應速度。KP值越高,反應越不穩(wěn)定。記住,在近似的系統(tǒng)參數(shù)中,實際值肯定會不同。
然而,這種最佳調諧的P(I)D控制器有其缺點。觀察P(I)D控制器的輸出(驅動)變量:一開始它幾乎達到極限值,然后迅速下降,但在相當長的一段時間內(nèi),仍遠遠高于這種受控系統(tǒng)(伺服機構)所能承受的水平。想象一下,伺服電機的運行電壓為24V,最初獲得的電壓會高達數(shù)千伏,隨后穩(wěn)定在數(shù)百伏。沒有控制器能夠驅動如此高的電壓,即使能驅動,電機也無法承受如此高的壓力。因此,在控制器中添加限制器,可確保驅動變量不會超過受控系統(tǒng)(在這種情況下為直流電機)可接受的最大值。伺服機構的最終PID控制配置如圖2所示。
▲圖2:控制系統(tǒng)設計圖展示了位置伺服系統(tǒng)的 PID 控制。
在本文的最后,會比較PID控制器與其它控制器的性能。具有無限驅動變量的最佳調諧PD控制器(即理想控制器),其輸出特性如圖8中黃色線所示;實際輸出(驅動變量限于最大可接受值)則以紅色線表示。
03
應用時間最優(yōu)控制
幾十年來,最優(yōu)控制一直是廣泛研究的主題。關于最優(yōu)控制的一些基本觀點值得回顧,我們可以用一個例子來更好地理解時間最優(yōu)控制。
假設一個帶有直流電機的常用電動伺服機構。手頭的任務是控制伺服,使其在最短的時間內(nèi)到達新的參考點。如果必須應用實際驅動變量,優(yōu)化的PID控制器將無法實現(xiàn)這一目標。直覺反應是向直流電機施加最大可接受電壓,并讓電機全速前進。
然后,在某一時間點改變電壓極性,使電機開始以最大可能的速度減速。稍后,當電機速度為零時,關閉電壓。如果電壓極性在合適的時點改變,那么,在電機停止運行的瞬間,伺服將準確地停在所需的位置。這被稱為最優(yōu)控制。在這種情況下,因為時間是該最優(yōu)控制的標準,所以這種控制被稱為時間最優(yōu)控制。
04
查找開關曲線的形狀
圖3展示了在狀態(tài)空間中的時間最優(yōu)控制過程,在這種情況下,狀態(tài)空間是二維空間(區(qū)域);一個維度是輸出變量,另一個維度則是其(時間的)導數(shù)。在應用新參考值時,輸出變量沿水平軸移動,因此它代表調節(jié)誤差(err),即參考值與實際輸出值之間的差值。同時在t0時刻,向直流電機施加最大電壓。伺服離開其初始位置P0,并開始加速。在時間點t1,控制器改變電壓極性,電機速度很快開始下降。在時間點t2,電機速度變?yōu)榱悴⑶疫_到期望位置P2,驅動變量電壓被關閉。雖然這看起來很簡單,但獲得開關曲線的形狀并不是那么簡單。
▲圖3:控制系統(tǒng)設計圖展示了狀態(tài)空間中的時間最優(yōu)控制。
如果受控系統(tǒng)是具有簡化傳遞函數(shù)的伺服機構,則s域中電壓的角位移為:
那么一個完整的、時間最優(yōu)的控制系統(tǒng)可以用圖4所示的框圖表示。
該控制方案與PID控制完全不同。這是一種非線性控制,因為第二個非線性部分N2代表的是繼電器:提供驅動變量±U值,所以這種控制被稱為開關控制。N1是開關曲線的第一個非線性部分,調節(jié)誤差E的“sqrt”平方根函數(shù),提供了相當合理的結果。在實踐中,總是很難找到精確的開關曲線,因此,控制器可能一直在其最大值和最小值之間切換驅動電壓。為了避免這種情況的發(fā)生,需要為繼電器增加死區(qū)。
在本文的最后,讓我們看看與其它類型的控制器相比,這種時間最優(yōu)控制器的性能如何。其輸出變量函數(shù)以圖8中亮藍色線表示。
05
如何應用模糊控制?
模糊控制是另一種非線性控制方法,對于難以分析的受控系統(tǒng),或在設計時動態(tài)行為未知的受控系統(tǒng),它是非常好的解決方案。模糊控制可以與“次優(yōu)”時間最優(yōu)控制相比較(它可以提供比最優(yōu)結果較差的結果),盡管它們?nèi)匀豢梢允欠浅:玫?。在這種具有位置伺服機構控制的特殊情況下,可以采用圖5中的控制方案(圖5)進行模糊控制。
▲圖4:控制系統(tǒng)設計圖展示了伺服機構的時間最優(yōu)控制系統(tǒng)。
▲圖5:控制系統(tǒng)設計圖展示了伺服機構的模糊控制系統(tǒng)。
模糊控制可以看作是模糊邏輯的擴展或修改。第一階段,模糊邏輯(在一個被稱為模糊化的過程中)將“清晰”的輸入變量轉換為“模糊”的集合。第二階段,它處理這些模糊集。最后,在一個被稱為去模糊化的過程中,將處理后的模糊集轉換為清晰的輸出變量。
對于輸入變量的模糊化,例如,選擇一組lambda形狀_/_的5個成員函數(shù)。為了使控制過程更好(更精細),在本文案例中使用了7個成員函數(shù)。它們涵蓋了調節(jié)誤差、誤差及其導數(shù)和狀態(tài)變量,這些變量值處于-1000到+1000之間。它們可以被稱為:高負(HN),中等負(MN),低負(LN),?。⊿),低正(LP),中等正(MP)和高正(LP)。輸出(驅動)變量模糊化,使用了7個類似的級別:全負(FN),中等負(MN),低負(LN),零(Z),低正(LP),中等正(MP)和全正(FP)。
▲圖6:在控制系統(tǒng)設計中,參考模糊控制知識庫很有幫助。
處理模糊集是模糊控制最關鍵的階段。它由模糊控制知識庫“控制”。圖6展示了適用的知識庫。注意err和der輸入變量是如何量化的。它們的分布函數(shù)不是等距分布的;err成員函數(shù)被更多地“推向”中心(S),而der成員函數(shù)則被更多地推向最高值。為什么這種安排更好?檢查知識庫中的輸出變量分布提供了答案??疾炝悖╖)級。它們的配置為:緊密地跟隨誤差的平方根函數(shù)err的輸出,這是可能是對時間最優(yōu)控制中使用的開關曲線的最佳仿真。接下來,看看與其它控制器相比,模糊控制器的性能如何,其輸出變量的形狀以圖8中橙色線表示。
06
應用基于神經(jīng)網(wǎng)絡的控制
在控制系統(tǒng)中使用人工神經(jīng)網(wǎng)絡(ANN)有無數(shù)種可能性。其中,很多使用基于神經(jīng)網(wǎng)絡的受控系統(tǒng)(工廠)模型,或對其逆動態(tài)進行建模,與經(jīng)典PID控制器相結合,有助于創(chuàng)建自適應和其它更復雜的控制系統(tǒng)。
通過訓練這種神經(jīng)網(wǎng)絡,模擬位置伺服系統(tǒng)的開關曲線可以嘗試一種不同的方法。正如之前所了解的,通過使用時間最優(yōu)控制可以實現(xiàn)最快速的伺服機構運動。開關曲線最關鍵的一個方面,是使用調節(jié)誤差的平方根函數(shù)。甚至是模糊控制器,也被“調諧”以模擬該平方根函數(shù)。
然而,由于實際開關曲線仍然可以與sqrt()函數(shù)的近似值不同。有沒有辦法找到位置伺服機構的實際開關曲線?答案是肯定的??梢哉业轿恢盟欧C構的實際開關曲線,“訓練”ANN記住它并按需生成它。更進一步,可以訓練ANN來接管整個開關控制器。
開關曲線是關于[err,der]對值的序列,伺服電機驅動器對可施加到電機的額定(最大)電壓進行極性轉換。通過在開環(huán)中運行伺服機構(即無反饋),測量并記錄其位置(err)和速度(der)來查找相應的值。
首先,準備一系列預期的伺服機構速度(der)值,從最低值到最高值?,F(xiàn)在,將正的最大驅動變量(電壓+U)施加到電機上,并讓其運行,直到伺服機構達到該系列中的第一個預期der值。重要提示:記錄與P1相同時刻的伺服位置,同時將執(zhí)行變量轉換為-U值。當der降至零時,關閉電壓并將當前位置記錄為P2。該過程提供了第一個開關曲線點的第一對[err,der]坐標(其中err=P2–P1)。當然,伺服機構必須完全按照預期使用的方式滿載運行。
[err,der]坐標序列表示開關曲線點。為了獲得最佳結果,沿der軸均勻分布大約50個坐標(對)。然后訓練一個合適的神經(jīng)網(wǎng)絡,使用這些開關點將執(zhí)行變量傳送到伺服機構。即使是最簡單的具有一個隱藏層和大約12個節(jié)點的ANN也可以實現(xiàn)這種功能。
圖7展示了一個輸出值表,可用于訓練ANN控制器。在捕獲開關曲線點之后,需要離線訓練ANN控制器,即不直接在物理控制系統(tǒng)實體上進行訓練。從捕獲的坐標序列的底部(或頂部)開始,對于每個單獨的der輸入,您需要生成多個err值(從-max到+max),并向[err,der]坐標的每個組合提供(到ANN輸出)特定的輸出值。開關曲線的所有輸出值對應負的最大驅動值;開關曲線右側的所有輸出值對應為正的最大值。誤差坐標離開關曲線越遠,需要提供的±U值就越少,因為輸出曲線保持平坦。
▲圖7:這個簡單的人工神經(jīng)網(wǎng)絡訓練數(shù)據(jù)表,有助于 ANN 控制系統(tǒng)的設計。
此訓練數(shù)據(jù)表與模糊系統(tǒng)的知識庫非常相似。起初,只使用狀態(tài)空間的上半部分來訓練ANN控制器。當伺服必須沿相反方向移動時,ANN控制器將僅交換輸出值。然而,如果伺服系統(tǒng)在兩個運動方向上的行為不相同,則必須在整個狀態(tài)空間內(nèi),對ANN控制器進行行為訓練?;谏窠?jīng)網(wǎng)絡的控制系統(tǒng)如何與其它系統(tǒng)競爭?可查看其輸出變量的形狀,如圖8中白色線展示。
07
四種控制方法的比較
使用Python的屏幕截圖(圖8)展示了模擬伺服機構及其控制器的結果。伺服機構的傳遞函數(shù)近似為1/((1+s100)s200),其中時間常數(shù)以樣本數(shù)表示。階躍函數(shù)(期望的伺服系統(tǒng)位置)是從0到800(其中1000是期望位置和驅動變量的最大值)生成的,在1000個樣本之后,它從800下降到400。輸入階躍函數(shù)在圖8中以綠色線表示。
圖8還展示了各個控制系統(tǒng)的運行情況。第一個是最佳調諧的PD控制器,它對階躍函數(shù)做出即時反應。它的KP參數(shù)設置為5。但這實際上只是一個理想的PD控制。這些實際最佳調諧PD控制器具有有限驅動變量,其行為如紅色曲線所示。與其它控制器相比,它實際上是表現(xiàn)最差(最慢)的。然而,如果調整得當,它不會超調,這在某些應用中可能非常重要。
▲圖8:此圖比較了不同的控制方法,以幫助確定應用的最佳狀態(tài)。包括最優(yōu)控制(藍色線)、模糊控制(橙色線)、人工神經(jīng)網(wǎng)絡(白色線)和 PID 控制(黃色和紅色線)。
表現(xiàn)最好(最快)的控制器是基于ANN的控制器(如白色曲線所示)。這并不奇怪;神經(jīng)網(wǎng)絡經(jīng)過訓練,可以模擬精確的開關曲線,因此它表現(xiàn)為一個完美的、時間最優(yōu)的控制系統(tǒng)。
通過sqrt(e)函數(shù)來模擬開關曲線的經(jīng)典時間最優(yōu)控制器(藍色線)表現(xiàn)稍差(較慢)。不過,考慮到其實施非常簡單,因此不應對其性能有太多抱怨。
在這種特殊情況下,模糊控制器(橙色線)表現(xiàn)不佳。不過,它沒有調整到最佳性能(僅進行了初始調整以大致模擬開關曲線),因此其性能有進一步提高的空間。理論上,模糊控制器的性能不應比經(jīng)典的時間最優(yōu)控制器差。
這個特定案例驗證了神經(jīng)網(wǎng)絡在工業(yè)控制中的應用。然而,如果系統(tǒng)“在運行中”改變行為/參數(shù),則需要一個更能容忍這種變化的控制器。容差是模糊控制器的亮點。最令人驚訝的發(fā)現(xiàn)之一是:50多年前在大學里學習的經(jīng)典時間最優(yōu)控制器(基于sqrt()函數(shù)),仍然可以很好地運行。
審核編輯 :李倩
-
控制器
+關注
關注
114文章
17098瀏覽量
184201 -
神經(jīng)網(wǎng)絡
+關注
關注
42文章
4814瀏覽量
103562 -
PID
+關注
關注
37文章
1482瀏覽量
87995 -
PID控制
+關注
關注
10文章
461瀏覽量
41243 -
工業(yè)控制
+關注
關注
38文章
1543瀏覽量
87012
原文標題:最優(yōu)控制、模糊控制、神經(jīng)網(wǎng)絡和PID控制,哪種控制方法最好?
文章出處:【微信號:控制工程中文版,微信公眾號:控制工程中文版】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
請問有沒有編過模糊PID控制程序或神經(jīng)網(wǎng)絡控制程序?
求助基于labview的神經(jīng)網(wǎng)絡pid控制
基于BP神經(jīng)網(wǎng)絡的PID控制
基于不完全微分PID算法的神經(jīng)網(wǎng)絡控制
基于不完全微分PID算法的神經(jīng)網(wǎng)絡控制
仿人模糊神經(jīng)網(wǎng)絡控制器的設計和實現(xiàn)
基于模糊神經(jīng)網(wǎng)絡的雙吊點閘門同步控制的研究
基于CMAC 神經(jīng)網(wǎng)絡的PID 控制
模糊神經(jīng)網(wǎng)絡PID控制在焊縫跟蹤中的應用
基于PLC的神經(jīng)網(wǎng)絡PID控制器設計
基于BP神經(jīng)網(wǎng)絡PID的漂白溫度控制算法的研究
仿人模糊神經(jīng)網(wǎng)絡控制器的設計和實現(xiàn)
什么是機器人最優(yōu)控制和逆最優(yōu)控制

評論