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