? ? ? ?工業(yè)實(shí)踐中,一般希望所設計的控制算法盡可能地簡(jiǎn)單,直觀(guān),需要調節整定的參數盡可能的少。這一方面縮短了控制算法設計、調試時(shí)間,另一方面也保證了控制算法的可靠性(復雜往往帶來(lái)可靠性的下降),降低了應用和維護門(mén)檻。因此,長(cháng)期以來(lái),PID控制器在工業(yè)自動(dòng)化中得到了廣泛應用。然而,無(wú)論在學(xué)術(shù)研究還是工業(yè)中高端應用場(chǎng)合,控制算法復雜化是一個(gè)十分明顯的趨勢??刂扑惴ǖ倪@種復雜化趨勢,使得工程師在面臨此類(lèi)情境時(shí),通常會(huì )在心里暗自發(fā)問(wèn):控制算法,有必要這么復雜嚒,會(huì )不會(huì )把簡(jiǎn)單問(wèn)題復雜化?
? ? ? ?控制算法的復雜化趨勢是對控制系統性能要求逐漸提高的必然結果。一方面,隨著(zhù)對控制系統性能要求的不斷提高,在控制算法設計過(guò)程中,需要考慮的能夠影響控制系統性能的因素不斷增多(性能要求較低時(shí),這些因素對最終性能的影響可以忽略不計),勢必要求對控制算法的結構做出合理安排以容納、處理這些因素;另一方面,影響控制系統性能提高的因素大多來(lái)自被控系統的物理/硬件層面(具體工藝/工作過(guò)程、執行器的工作特性等),如果無(wú)法在物理/硬件層面避免一些非理想因素(如精密運動(dòng)平臺中壓電晶體、磁滯伸縮材料的滯回特性,傳動(dòng)系統中的柔性和摩檫力矩,液壓閥口壓降-流量非線(xiàn)性、溫度控制系統中的死區時(shí)間等),那么提高控制系統性能的要求勢必全部由控制算法來(lái)實(shí)現;
? ? ? ?事實(shí)上,控制系統的設計和控制性能的提升應該放在整個(gè)系統或者產(chǎn)品設計的框架下進(jìn)行,控制算法工程師應該和機械工程師、電氣/儀表工程師、工藝工程師等人員進(jìn)行有效協(xié)同,首先在系統的層面規避問(wèn)題/非理想因素。如果能夠通過(guò)改進(jìn)結構設計/工藝流程,來(lái)規避掉影響控制系統性能的主要因素/改進(jìn)控制系統性能,控制算法需要處理的因素變少,那么即使是相對簡(jiǎn)單的控制算法,也能實(shí)現高性能的控制指標。反之,如果物理/硬件層面的設計不合理,那么在控制算法設計上花費再多的精力,可能也無(wú)法滿(mǎn)足性能要求(被控系統特性決定了被控系統性能的上限);
? ? ? ?因此,應理性對待控制算法的復雜化趨勢:在能夠解決問(wèn)題的基礎上,不刻意追求控制算法的復雜化(如果能用PID控制器/改進(jìn)設計實(shí)現性能目標,沒(méi)必要用其他控制算法);在需要精巧、復雜的控制算法時(shí),也能夠認真分析被控系統(參見(jiàn)控制算法手記—認識你的被控系統),總結影響控制系統性能的主導因素,并建立合乎需要的數學(xué)模型(參見(jiàn)控制算法手記—建模重要?。?,選擇合適的控制算法結構,有針對性地去處理各個(gè)層面上的非理想因素,使得問(wèn)題的結構和控制算法結構相匹配。
? ? ? ?控制算法的復雜化體現在控制算法的結構、(穩定性)分析及設計、調試維護三個(gè)方面:為匹配現實(shí)問(wèn)題的結構,控制算法本身需要在結構上進(jìn)行一定調整;控制算法在結構上的復雜性,不僅使得設計參數變多,而且也使得包含控制算法的整個(gè)控制系統動(dòng)力學(xué)行為豐富/復雜起來(lái),控制系統穩定性分析及控制算法設計也變得復雜起來(lái);控制算法結構和設計的復雜性,大大提高了控制算法的應用門(mén)檻,系統調試時(shí)間變長(cháng)、維護成本也相應增加。
控制算法的結構復雜化
如圖1所示,為應對被控系統中存在的諸多非理想因素,控制算法的設計可以從工業(yè)中最常用最簡(jiǎn)單的PID控制器逐步演化到(前饋+反饋+狀態(tài)觀(guān)測/濾波+系數/參數辨識)的復雜結構。實(shí)際應用中,控制算法的結構并不一定需要同時(shí)具備這些模塊,而是根據所面臨的問(wèn)題結構有針對性的選用或組合這些模塊。

圖1. 控制算法的結構復雜化
? ? ? ?結合圖1中所示的非理想因素,對控制算法結構的選擇說(shuō)明如下:
? ? ? ?觀(guān)測/濾波器模塊一般用于處理感知系統中存在的非理想因素,同時(shí)還可以通過(guò)構建合適的干擾感測器(參見(jiàn)控制算法手記-二自由度控制器)對無(wú)法測量的外界干擾(如負載力矩,如協(xié)作機器人中的無(wú)力矩傳感器的負載感知功能)或者參數變化進(jìn)行補償。取決于非理想因素的形式,觀(guān)測/濾波器模塊可以表現為不同算法:如Kalman濾波器通常在運動(dòng)控制系統中實(shí)現用于實(shí)現從位置信號生成速度/加速度信號,實(shí)現無(wú)相位延遲的濾波;Luenberger/Kalman觀(guān)測器則對工業(yè)中大量存在的部分狀態(tài)不可測量/無(wú)法安裝傳感器的場(chǎng)合特別適用(如果系統機理明確,能夠建立相對準確的系統模型,那么通過(guò)觀(guān)測器則相當于構建了一個(gè)虛擬傳感器,實(shí)現對不可測量的準確估計),使得全狀態(tài)反饋成為可能;同時(shí),其他類(lèi)型的觀(guān)測器,如滑膜觀(guān)測器/高增益觀(guān)測器則可對非線(xiàn)性動(dòng)態(tài)系統進(jìn)行狀態(tài)觀(guān)測/干擾補償;
? ? ? ?與觀(guān)測/濾波模塊類(lèi)似的是參數辨識模塊,該模塊接受被控對象輸入/輸出數據,并基于機理模型對系統參數變化/外部干擾參數進(jìn)行辨識,并將辨識出來(lái)的信息送入反饋控制器,使得控制輸入能夠適應參數變化。另外,參數辨識模塊辨識出來(lái)的信息還可以送入前饋控制器中,用于實(shí)現對未知干擾(如非線(xiàn)性摩檫力)的理想補償;
? ? ? ?軌跡規劃+前饋控制通常實(shí)現對已知或者能夠辨識的外部干擾(包含輸入指令)進(jìn)行提前因應,改善系統的動(dòng)態(tài)跟蹤性能。對于一些欠驅動(dòng)場(chǎng)合(即控制輸入的自由度小于輸出的自由度)或者臨界阻尼的動(dòng)態(tài)系統,還可以通過(guò)有效的軌跡規劃(或者輸入整形),抑制系統振蕩,保證系統控制性能;
? ? ? ?自動(dòng)控制的核心機制在于反饋,反饋控制器本身能夠有效處理絕大多數非理想因素。如果系統機理不明/無(wú)法準確建模/模型過(guò)于復雜(如化工過(guò)程控制/渦流場(chǎng)控制),可以采集足夠的數據,則采用數據驅動(dòng)控制方法;如果系統能夠相對準確建模,但存在模型不確定性/參數變化/未知外界干擾,則可以采用魯棒(H無(wú)窮/滑膜控制等);其余控制算法,如自適應控制、模型預測控制、反饋線(xiàn)性化等算法以及之間不同的組合則針對不同的非理想因素進(jìn)行針對性地設計。
? ?控制系統穩定性分析及控制算法設計復雜化
? ? ? ?自動(dòng)化控制系統的核心特征在于在機器/設備運行過(guò)程中不需要人工手動(dòng)干預,依靠自身采集到的實(shí)時(shí)信號和相應控制算法,給出動(dòng)態(tài)控制指令,讓機器/設備自動(dòng)運行并滿(mǎn)足預期性能要求。放心讓機器自動(dòng)運行的前提是由被控對象-控制算法組成的被控系統必須穩定(系統不會(huì )跑飛),如果無(wú)法保證控制系統穩定性,機器/設備就無(wú)法正常運行,嚴重時(shí)甚至會(huì )導致機器/設備損壞,人員傷亡等后果??刂扑惴ㄔ诮Y構上的復雜性,使得包含控制算法的整個(gè)控制系統動(dòng)力學(xué)行為豐富/復雜起來(lái)(取決于具體情況,整個(gè)被控系統可能會(huì )從線(xiàn)性系統轉變?yōu)榉蔷€(xiàn)性時(shí)變系統,出現多個(gè)平衡點(diǎn)/吸引區域/有限逃逸時(shí)間等非線(xiàn)性動(dòng)力學(xué)行為,系統失穩風(fēng)險增加),穩定性分析以及以穩定性分析依托的控制算法設計變得尤為重要。
? ? ? ?被控系統之所以存在穩定性的問(wèn)題,在于被控系統本身是一個(gè)動(dòng)態(tài)變化的系統,表征系統動(dòng)態(tài)的所有變量都在實(shí)時(shí)發(fā)生變化,并最終使系統到達預期工作點(diǎn)/工作區間。如果給出的控制輸入不合適(控制算法設計不合適)和被控對象本身的動(dòng)態(tài)特性結合后,很有可能會(huì )出現某些變量的動(dòng)態(tài)變化遠遠超出預期/合理范圍,并進(jìn)入到不可逆的過(guò)程(系統失去穩定性,無(wú)法恢復到平衡狀態(tài)或者預期狀態(tài))。以新冠疫情在人群中的傳播為例,如果不做及時(shí)檢測追蹤(測量反饋)并采取相應的強制、治療措施(控制輸入),感染人數就會(huì )呈現指數極增長(cháng),醫療系統崩潰,疫情發(fā)展就會(huì )失控(系統失穩);相反地,如果及時(shí)采集檢測追蹤,并配合相應的強制措施,就可以使得疫情傳播在相當小的范圍內(系統保持穩定),并最終控制住疫情。
? ? ? ? 事實(shí)上,取決于研究對象(線(xiàn)性/非線(xiàn)性)和場(chǎng)景(系統受到外部干擾/初始狀態(tài)變化/參數變化/不確定性等),穩定性的意涵以及相應的判斷依據是多種多樣的。這些穩定性的定義在于描述了隨著(zhù)時(shí)間的變化,在不同初始狀態(tài)和時(shí)刻下,表征系統運行狀態(tài)的變量是否能夠收斂、以什么樣的速度收斂,能在多大范圍內收斂于在一個(gè)什么樣的區間內。穩定性的各種定義并不是只為了理論分析而提出的虛幻概念,是和系統實(shí)際能達到的控制性能是緊密相關(guān)的:如果能夠保證某一被控系統是全局指數穩定的(Globally exponentially stable),那么不論系統初始狀態(tài)如何,系統控制誤差(或者其他變量)能在相當短時(shí)間內減小為零,并能夠長(cháng)期保持在零;如果只能保證某一被控系統是局部漸近穩定(Locally asymptotically stable),那么在一個(gè)較窄的工作范圍內,系統的控制誤差隨著(zhù)時(shí)間增長(cháng)慢慢減小到零;如果無(wú)法保證系統指數/漸近穩定性,只能保證輸入輸出有界(Bounded Input Bounded Output),那么只能預期,系統控制誤差會(huì )在收斂在某一范圍內;從這個(gè)意義上來(lái)說(shuō),從穩定性展開(kāi)的分析,能夠清楚定義控制系統所能達到的性能上限,并以此為基礎能夠合理地設計控制器。
? ? ? ?因此,翻開(kāi)各種先進(jìn)控制算法(如非線(xiàn)性控制、基于模型的自適應控制、滑膜控制或一些數據驅動(dòng)控制方法)的教科書(shū),往往前面會(huì )涉及大量的穩定性概念/繁瑣的穩定性分析章節,后面才涉及到控制算法的具體設計。這一方面說(shuō)明控制算法結構的復雜化,大大增加了控制系統的穩定性分析和設計,另一方面也成為想學(xué)習先進(jìn)控制算法的同學(xué)或者工程師的一個(gè)主要障礙。這些穩定性分析過(guò)于強調各種數學(xué)概念,而缺少對這些概念和現實(shí)物理世界的關(guān)聯(lián)等方面的論述;同時(shí)初學(xué)者往往都是從經(jīng)典控制理論(以傳遞函數為基礎,單輸入、單輸出的線(xiàn)性定常系統,只有單個(gè)平衡點(diǎn),而且系統穩定性一般直接對應著(zhù)全局漸近穩定性)過(guò)渡到來(lái)先進(jìn)控制算法的學(xué)習中,對穩定性分析在先進(jìn)控制算法設計中所起到的基礎性作用缺少認知。實(shí)際上,即使被控對象是單輸入、單輸出的線(xiàn)性定常系統,由于自適應、參數辨識等環(huán)節的運用,使得整體的閉環(huán)系統仍然表現出時(shí)變非線(xiàn)性特性,系統的穩定性也會(huì )發(fā)生變化(即使原有的控制系統能夠保證穩定性)。了解這些穩定性分析和設計方法,對于先進(jìn)控制算法的成功落地是十分必要的。
總結
? ? ? ? 控制算法的復雜化是為因應控制系統性能指標不斷提高的趨勢而出現的,是為了能夠有針對性地處理(處理方式包含識別/辨識、適應、消除、補償、抑制影響等方法)各種影響控制系統性能提高的非理想因素。
? ? ? ?應該客觀(guān)理性對待控制算法的復雜化趨勢,不應刻意追求算法復雜性(在能夠保證控制系統性能的前提下,控制算法越簡(jiǎn)單越好),也不應回避實(shí)際問(wèn)題對控制算法復雜化的需求,認真分析被控系統(參見(jiàn)控制算法手記—認識你的被控系統),總結影響控制系統性能的主導因素,并建立合乎需要的數學(xué)模型(控制算法手記—建模重要?。?,選擇合適的控制算法結構,有針對性地去處理各個(gè)層面上的非理想因素,使得問(wèn)題的結構和控制算法結構相匹配。
? ? ? ?應該從整個(gè)系統/產(chǎn)品的層面,去處理控制系統和控制算法的設計,注重各個(gè)子系統工程師之間的協(xié)同,能在系統/設計層面解決的問(wèn)題,可以?xún)?yōu)先考慮在系統層面解決。這也要求主管/系統工程師應該具備各個(gè)專(zhuān)業(yè)領(lǐng)域的基本概念和學(xué)習、溝通能力,在系統層面上協(xié)調優(yōu)化整體被控系統性能。