控制算法手記 ——先學習系統動力學建模和分析
文:李磊2021年第三期
項目初期的方向不明、迷茫或者焦慮雖然難以避免,但可以通過科學、系統的思維方式可以盡量降低其對項目執行的影響。回到控制算法設計的問題上,這些問題一方面是因為我們首先沒有對自己面臨的主要問題進行認真分析,對控制系統語境下控制算法的本質、各種控制算法的基本思想和原理沒有深入理解;另一方面,我們總是傾向于認為存在著某種標準/參考的控值算法,一定能夠很好地解決我的問題,靜靜地躺在文獻海洋中,只是等待著去發現,于是盲目去學習相關資料。
圖 1 控制算法和被控對象的動力學系統相互作用后,使得整個被控系統動力學行為表現符合要求
應該意識到的是,控制算法雖然種類繁多,但各種控制算法具有很強的問題針對性、具體被控對象指向性,即各種控制算法提出之初,都是針對某一類問題或者某類被控對象(這類被控對象中都體現了某一種/多種主要動力學特性/問題)。“控制算法”本質是一種人為設計的 “動力學系統”。人們設計這種動力學系統,目的在于和“被控對象”這一“動力學系統”相互作用后,包含控制算法的“整個被控系統”的“動力學行為”符合目標性能要求(比如穩態精度、帶寬/上升時間、跟蹤性能、抗干擾能力等),如圖1所示。如果人們對整體被控系統的動力學性能要求大體一致的話,那么顯然是被控對象的表現出來的主要動力學特性/問題決定了最終控制算法的設計。
圖 2 龐雜的控制理論和算法(來源:https://engineeringmedia.com)
圖1對控制算法設計的啟發是深刻的:一方面是控制目標和被控對象的主要動力學特性(參見控制算法手記——什么讓控制算法復雜化?),而不是這種控制算法是否熱門,是否“先進”決定了我們該選用哪種控制算法。不同領域(如機電、電力電子、電網、化工過程等)的被控對象體現出來的主要動態特性/面臨的主要問題不同,必須要深入了解實際工藝/工作過程以及所關聯的動力學行為,不能輕易將一個領域好用的算法隨便套用到另一個領域中去。另一方面:控制算法和被控對象的(工藝/工作過程,結構)設計、分析和實施要放在整個控制系統的架構下進行,因為最終目的是使整個被控系統的
性能滿足預期。這就要求控制、機械、電氣等工程師在整個系統層面的協同設計,并能從系統動力學(SystemDynamics)的視角發展出各個子系統/部件之于整體系統性能的直覺和洞察力(如每個子系統/部件的動力學是
如何影響了最終的動力學性能,是否占據了主導地位,如何通過設計提前改善動力學特性以避免不利影響)。因此,在控制算法設計、學習以至控制系統設計、開發過程中,必須十分重視系統動力學建模和分析的地位。然而遺憾的是,這一塊在國內的控制理論課程教育體系中長久以來都被輕視。初學者只記住了傳遞函數/狀態空間表達式等概念,記住了一堆以此為基礎的設計方法,卻不知這些式子實際中如何得來,為什么要寫成這些形式,這些公式的解又怎樣和系統動力學性能所關聯,如何根據自己所面臨的問題將所學到的知識有效運用,更不用說去研發新的控制算法以更有針對性地解決這個問題。不合理的課程設置體系、缺少和現實物理世界的關聯,控制理論的學習/設計顯得“云里霧里”,那么,系統動力學
建模和分析是否能夠解決控制算法設計/學習過程中這些問題呢?
圖 3 先學習系統動力學建模與分析
系統動力學建模和分析
在回答上面這個問題之前,應該注意到控制算法始終是和動力學/動態變化關聯起來的:控制算法的對象是實際的動力學系統。這些動力學系統或是機械、電力、溫度、磁、光、聲、流體等物理領域或是涉及化學反應過程,體現出極其豐富/復雜的動力學行為。如何馴服這些豐富/復雜的動力學行為,有賴于對動力學行為的深刻認識和分析。控制算法的目標在于使得最終的整個被控系統的動力學行為符合預期要求(這些要求一般可以從穩定性、控制精度、動態響應性三個維度進行描述),以實現動力學系統脫離人為干預的自動運行(注意不是自主運行)。
控制算法的實施一般依賴于各種能夠進行數值計算的硬件平臺上,這些硬件平臺以信號采樣的形式實時收集所需要的信息并進行處理、運算,然后將動態運算結果/控制指令作用于被控對象。
因此,控制算法看似龐雜,但想深入學習卻是有跡可循的,即一定要抓住動力學系統這個核心。那么,旨在研究對實際動力學系統進行建模和分析的“系統動力學建模和分析”就格外重要了。一方面,它為整個控制系統(圖1)的分析、設計、實施提供了一個一以貫之的分析性框架,勾連起現實物理世界和數學世界(控制算法手記——建模重要嚒)。另一個方面對被控對象的動力學特性分析結果,為控制算法的設計提供了前提和動機。
在控制算法的學習中,作者認為應該按照‘’系統 力學建模及分析-基本控制理論和控制算法設計方法-控制算法實施‘’的思路,如圖3所示,其中:“系統動力學建模及分析”即以實際的動力學系統為研究對象,研究如何建立起合乎需要的數學模型(包含機理模型和數據模型)以描述動態變化,又如何依據這些模型得到典型系統動力學行為(模型的解和動力學行為直接關聯),這些典型的動力學行為又如何影響了最終的控制性能等;“基本控制理論和控制算法設計方法”回應了對于給定的實際動力學系統及其典型的動力學行為表現,如何通過對控制算法的設計以馴服豐富/復雜的動力學行為,使其滿足人類預期,實現控制目標;“控制算法實施”則關照到了在數字計算時代,如何將在數學世界中的控制算法在現實物理世界中有效落地,這一落地過程是否又對系統動力學行為施加了影響(如采樣-計算延遲,離散化影響等)。
圖3中,必備知識體系只是給出了學習控制算法必須掌握的基本控制理論、概念、框架和體系,為“選擇性模塊知識體系(即可以根據自己的具體領域和應用場景有選擇性地學習)”奠定了扎實和確切的基礎。控制算法的學習應該循序漸進,在對典型的動力學系統以及其行為表現、分析方法、基本控制理論、概念、框架和體系(圖3中的必備知識體系)確切掌握的基礎上,再學習一些“先進控制算法”(很多“先進控制算法”并沒有逃出這些基本概念和框架)。切忌貪多求全,忽視對現實動力學行為的深刻理解和深入分析,只身投入控制理論的浩瀚海洋中。
總結
在控制算法學習和實踐中,先不要著急學習/運用“先進控制算法”,反倒要注重對系統動力學建模和分析方法體系的掌握,對自己的控制對象動力學特性和主要問題的分析,任何控制算法的設計和深入理解,無論是基于機理模型還是數據驅動,這都是十分必要的一步。
【作者簡介】李磊,浙江大學機電博士,佐治亞理工學院訪問學者(2016-2017),目前從事自動化控制算法研發工作。博士期間在IEEE TMech、TIE等期刊發表多篇文章,目前擔任TMech,IJIRA(International Journal of Intelligent Robotics and Applications)等機電國際期刊審稿人。
中傳動網版權與免責聲明:
凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.hysjfh.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。
本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。
如涉及作品內容、版權等問題,請在作品發表之日起一周內與本網聯系,否則視為放棄相關權利。

關注伺服與運動控制公眾號獲取更多資訊

關注直驅與傳動公眾號獲取更多資訊

關注中國傳動網公眾號獲取更多資訊
- 運動控制
- 伺服系統
- 機器視覺
- 機械傳動
- 編碼器
- 直驅系統
- 工業電源
- 電力電子
- 工業互聯
- 高壓變頻器
- 中低壓變頻器
- 傳感器
- 人機界面
- PLC
- 電氣聯接
- 工業機器人
- 低壓電器
- 機柜