袁玲
《自動控制原理》是控制類學(xué)科的一門重要專業(yè)基礎(chǔ)理論課,也是其它相關(guān)專業(yè)的基礎(chǔ)課[1,2];同樣,《自動控制原理實驗》亦是自動化專業(yè)的一門主要實踐課。而傳統(tǒng)的自動控制原理實驗,很多都是模擬性實驗或仿真性實驗,內(nèi)容單調(diào)而乏味。因此如何在實驗中引入一些實際系統(tǒng)的實驗,讓學(xué)生對自控知識在日常生活中的應(yīng)用有一個感性上的認(rèn)識,一直是該實驗課值得深入探索的問題。
倒立擺是機(jī)器人技術(shù)、控制理論、計算機(jī)控制等多個領(lǐng)域、多種技術(shù)的有機(jī)結(jié)合,其被控系統(tǒng)本身又是一個絕對不穩(wěn)定、高階次、多變量、強(qiáng)耦合的非線性系統(tǒng),因此控制工程學(xué)科很多研究生都把它作為一個典型的控制對象進(jìn)行研究。由于倒立擺系統(tǒng)的控制策略和雜技運動員頂桿平衡表演的技巧有異曲同工之處,極富趣味性,而且許多抽象的控制理論概念如系統(tǒng)穩(wěn)定性、可控性和系統(tǒng)抗干擾能力等等,都可以通過倒立擺系統(tǒng)實驗直觀的表現(xiàn)出來,因此在歐美等發(fā)達(dá)國家的高等院校,它已成為必備的控制理論教學(xué)實驗設(shè)備[3~6]。
在國內(nèi)的大部分高校里,還很少有把倒立擺系統(tǒng)作為本科教學(xué)的一個實驗設(shè)備。其實,學(xué)習(xí)控制理論的學(xué)生通過倒立擺系統(tǒng)實驗來驗證所學(xué)的控制理論和算法,非常的直觀、簡便、有趣,能在輕松的實驗中加深對所學(xué)課程的理解[7]。
我們可以通過倒立擺實驗,讓學(xué)生對一個實際系統(tǒng)的控制過程有一個比較清晰的認(rèn)識。比如要實現(xiàn)對倒立擺系統(tǒng)的控制,首先要對倒立擺系統(tǒng)進(jìn)行建模。由于建模的過程比較復(fù)雜,而且主要涉及到受力分析等,這部分知識可以讓學(xué)生在課余時間自己進(jìn)行,在實驗中也可以忽略分析過程,直接給出分析后所得系統(tǒng)的傳遞函數(shù)。模型建好之后,運用MATLAB軟件先對系統(tǒng)進(jìn)行仿真控制,觀察控制效果如何。在不斷修改控制參數(shù)使仿真效果達(dá)到所設(shè)定的要求后,再將該控制算法應(yīng)用到實際系統(tǒng)中,檢驗算法對實際系統(tǒng)的控制效果,并針對實際控制效果適當(dāng)修改相應(yīng)參數(shù),使控制效果更為理想。
這里舉一個自控知識里最基本的內(nèi)容:直線一級倒立擺的PID控制。通過這個實驗可以讓學(xué)生對控制理論有一個非常直觀的感受。
首先根據(jù)分析得到倒立擺系統(tǒng)的傳遞函數(shù),可在MATLAB下打開 Simulink仿真,建立如圖1所示的仿真模型。

圖1 直線一級倒立擺 PID 控制 MATLAB 仿真模型
其中“transter fon1”模塊是擺桿角度和小車位移之間的傳遞函數(shù), PID Controller 為封裝(Mask)后的 PID 控制器,雙擊該模塊打開參數(shù)設(shè)置窗口,如圖 2所示。在這里可以任意設(shè)置其中的參數(shù),雙擊“scope”后會出現(xiàn)不同參數(shù)的仿真結(jié)果圖,如圖3、4所示。通過不斷修改其中的參數(shù),使輸出曲線最終達(dá)到要求的設(shè)計指標(biāo)。

圖2 參數(shù)設(shè)置窗口

圖3 直線一級倒立擺 PD 控制仿真結(jié)果圖(Kp=40,Kd=10)

圖4 直線一級倒立擺 PID 控制仿真結(jié)果圖(Kp=40,Ki=20,Kd=4)
當(dāng)調(diào)整好模塊中的P、I、D參數(shù)后,就可以進(jìn)入實時控制界面,檢驗一下剛才所設(shè)參數(shù)的PID控制效果。建立如圖5所示控制界面。
其中,Initialization為倒擺系統(tǒng)的初始化模塊,Real Control為實時控制模塊。雙擊“PID”模塊進(jìn)入PID 參數(shù)設(shè)置,把仿真得到的參數(shù)輸入 PID 控制器,經(jīng)過編譯、連接和運行程序,打開控制箱電源使電機(jī)上伺服,緩慢提起倒立擺的擺桿到垂直向上的位置,在程序進(jìn)入自動控制后松開擺桿,當(dāng)小車運動到正負(fù)限位的位置時,用工具擋一下擺桿,使小車反向運動。實驗結(jié)果如圖6所示。

圖5 直線一級倒立擺 MATLAB 實時控制界面

圖6 直線一級倒立擺 PID 控制實驗結(jié)果 1
從圖中可以看出,倒立擺可以實現(xiàn)較好的穩(wěn)定性,擺桿的角度在3.14(弧度) 左右。與仿真結(jié)果相同,PID 控制器并不能對小車的位置進(jìn)行控制,小車會沿滑桿有稍微的移動。在給定干擾的情況下,小車位置和擺桿角度的變化曲線如圖7所示。
從實驗結(jié)果可以看出,系統(tǒng)可以較好的抵抗外界干擾,在干擾停止作用后,系統(tǒng)能很快回到平衡位置。
修改PID控制參數(shù)后,KP= 1 0 0,Ki= 2 0 ,Kd= 1 0 ,觀察控制結(jié)果的變化,期間系統(tǒng)的調(diào)整時間減少,但是在平衡的時候會出現(xiàn)小幅的振蕩。如圖8所示。
這個實驗,既用到了仿真,又讓學(xué)生對不同P、I、D參數(shù)的控制效果有了非常深刻的感性認(rèn)識。實驗中,可以讓同學(xué)們再看一下LQR算法控制下的自動起擺及控制效果,將兩種算法的控制效果進(jìn)行對比,這種生動有趣的實驗,將極大的激發(fā)學(xué)生對實驗課的興趣,增強(qiáng)學(xué)習(xí)理論知識的熱情。

圖7 直線一級倒立擺 PID 控制實驗結(jié)果 2(施加干擾)

圖8 直線一級倒立擺 PID 控制實驗結(jié)果 3(改變 PID 控制參數(shù))
以上介紹的整個實驗步驟,同樣可以用來做根軌跡控制的實驗、頻率響應(yīng)控制實驗、狀態(tài)空間極點配置實驗等,學(xué)生通過這樣形象的實驗,將會對相關(guān)知識掌握得更牢固。
倒立擺系統(tǒng)作為控制理論研究中的一種比較理想的實驗手段,為自動控制理論的教學(xué)、實驗和科研構(gòu)建了一個良好的實驗平臺,是用來檢驗?zāi)撤N控制理論或方法的典型方案,促進(jìn)了控制系統(tǒng)新理論、新思想的發(fā)展。在仿真過程中,幫助學(xué)生更好得掌握MATLAB這個現(xiàn)代社會最實用的軟件。而實時控制實驗部分又非常直觀、生動、有趣,不斷激發(fā)學(xué)生的學(xué)習(xí)熱情。可以說,倒立擺不僅僅是進(jìn)行控制理論研究的理想實驗平臺,同時也是一種優(yōu)秀的教學(xué)實驗儀器。將它應(yīng)用到自控實驗中,對理論與實際相結(jié)合的教學(xué)起到極大的促進(jìn)作用。
[1] 王沫然. MATLAB與科學(xué)計算(第2版)[M]. 電子工業(yè)出版社
[2] 高國鑫等. 自動控制原理[M].華南理工大學(xué)出版社
[3] 楊世勇,徐莉蘋等.單級倒立擺的 PID控制研究[J].控制工程,2007(5):23-25.
[4] 李明, 郭煥銀.基于MATLAB的倒立擺系統(tǒng)PID控制[J].宿州學(xué)院學(xué)報,2010(2):58-60.
[5] 白金,韓俊偉.基于MATLAB /Simulink環(huán)境下的PID參數(shù)整定[J].哈爾濱商業(yè)大學(xué)學(xué)報,2007(23):673-677.
[6] 張彩霞,張志飛.基于MATLABD “自動控制原理”實驗教學(xué)[J].實驗室科學(xué),2007(2):123-124.
[7] 梁莉.過程控制仿真實驗系統(tǒng)的開發(fā)[J].實驗技術(shù)與管理,2005.22(4):81-83.