摘 要 針對(duì)自動(dòng)控制原理硬件實(shí)驗(yàn)安全性低、實(shí)驗(yàn)成本高的問題,提出一種虛擬仿真實(shí)驗(yàn)的方法,利用Simscape和Solidworks聯(lián)合搭建一個(gè)飛輪倒立擺系統(tǒng),并設(shè)計(jì)PID控制器,實(shí)現(xiàn)對(duì)飛輪倒立擺系統(tǒng)的控制,通過仿真可直接觀察飛輪倒立擺的運(yùn)動(dòng)情況。教學(xué)實(shí)踐表明,該虛擬仿真實(shí)驗(yàn)為學(xué)生提供了更好的學(xué)習(xí)體驗(yàn),改善了自動(dòng)控制原理課程的實(shí)驗(yàn)環(huán)境,提高了學(xué)生的學(xué)習(xí)興趣,對(duì)于提高教學(xué)質(zhì)量具有重要意義。
關(guān)鍵詞 自動(dòng)控制原理;Matlab/Simscape;Solidworks;飛輪倒立擺系統(tǒng);仿真實(shí)驗(yàn)
中圖分類號(hào):G642.423 文獻(xiàn)標(biāo)識(shí)碼:B
文章編號(hào):1671-489X(2024)20-0-05
DOI:10.3969/j.issn.1671-489X.2024.20.125
0 引言
自動(dòng)控制原理課程的單純硬件實(shí)驗(yàn)因外部環(huán)境多變,使得結(jié)果偏差增加,同時(shí)受限于設(shè)備和實(shí)驗(yàn)材料的成本,部分學(xué)校對(duì)實(shí)驗(yàn)的完成度不高。這兩個(gè)因素的共同作用限制了該課程單純硬件實(shí)驗(yàn)的精度和多樣性[1-2]。
基于以上問題,在現(xiàn)代化、信息化的大背景下,為提高自動(dòng)控制原理課程單純硬件實(shí)驗(yàn)的準(zhǔn)確性和多樣性,國內(nèi)眾多高校開始探索基于Matlab/Simscape的虛擬仿真實(shí)驗(yàn)在教學(xué)中的應(yīng)用[3]。Simscape利用基于數(shù)學(xué)方程的仿真方法,使得仿真過程更加高效,通過數(shù)值計(jì)算,還可以獲得更加準(zhǔn)確的仿真結(jié)果,并以此評(píng)估系統(tǒng)的性能。Simscape與Solidworks的聯(lián)合仿真可以實(shí)現(xiàn)更全面的系統(tǒng)級(jí)仿真和設(shè)計(jì)。用戶在Solidworks中建立機(jī)械系統(tǒng)的三維模型,可通過Simscape Multibody Link插件將該三維模型直接導(dǎo)入Matlab/Simulink進(jìn)行仿真和控制設(shè)計(jì),極大地提高了工作效率[4]。
飛輪倒立擺是一種由慣性飛輪作為驅(qū)動(dòng)裝置的一階倒立擺,其控制是一類經(jīng)典的非線性不穩(wěn)定系統(tǒng)的控制問題。在控制類課程中圍繞飛輪倒立擺開展教學(xué)實(shí)踐,有以下優(yōu)勢:
1)飛輪倒立擺常被用來驗(yàn)證控制算法的有效性和穩(wěn)定性,并且物理結(jié)構(gòu)簡單,易于仿真和物理實(shí)現(xiàn),是理論指導(dǎo)實(shí)踐,指導(dǎo)學(xué)生學(xué)以致用較好的教學(xué)平臺(tái);
2)飛輪倒立擺是一個(gè)具有明顯物理特征的實(shí)驗(yàn)對(duì)象,學(xué)生可以直接觀察其運(yùn)動(dòng)狀態(tài)和變化,有助于理解控制系統(tǒng)的工作原理。
本文基于Matlab/Simscape仿真平臺(tái),聯(lián)合Solidworks搭建飛輪倒立擺實(shí)驗(yàn)教學(xué)仿真系統(tǒng),同時(shí)開發(fā)PID控制器用以實(shí)現(xiàn)對(duì)倒立擺的仿真調(diào)控,仿真教學(xué)平臺(tái)可以為學(xué)生提供直觀的實(shí)驗(yàn)效果,從而提高教學(xué)質(zhì)量。設(shè)
1 飛輪倒立擺系統(tǒng)基本原理和
飛輪倒立擺系統(tǒng)是一種經(jīng)典的非線性控制系統(tǒng),常用于教育和研究領(lǐng)域。它由一個(gè)豎直安裝的飛輪、一個(gè)連接在飛輪上的倒立擺桿、底盤三部分組成。在飛輪倒立擺系統(tǒng)中,飛輪通過一個(gè)電機(jī)驅(qū)動(dòng),可以高速旋轉(zhuǎn)。倒立擺桿通過一個(gè)鉸鏈連接在飛輪上,可在豎直方向上旋轉(zhuǎn)。飛輪倒立擺系統(tǒng)是一種不穩(wěn)定的系統(tǒng),其控制的基本原理是依靠角動(dòng)量守恒定律,通過調(diào)控高速旋轉(zhuǎn)的飛輪在豎直平面內(nèi)形成的反力矩可使擺桿最終穩(wěn)定在期望輸出位置,從而達(dá)到系統(tǒng)的動(dòng)態(tài)平衡。飛輪倒立擺系統(tǒng)實(shí)物圖如圖1所示。
2 飛輪倒立擺的數(shù)學(xué)建模
為簡化數(shù)學(xué)模型,忽略飛輪倒立擺系統(tǒng)在運(yùn)動(dòng)過程中的空氣阻力,視擺桿為質(zhì)量均勻的細(xì)長桿,飛輪為質(zhì)量集中于邊緣的圓環(huán),擺桿、飛輪均為剛體,且兩者在同一平面內(nèi)。如圖2所示,在豎直平面上取直角坐標(biāo)系O-XY。飛輪的質(zhì)量為m1,重心為O1,位置坐標(biāo)為(a1,b1),飛輪的旋轉(zhuǎn)角度為φ,飛輪的轉(zhuǎn)動(dòng)角速度為ω,飛輪繞質(zhì)心O1點(diǎn)的轉(zhuǎn)動(dòng)慣量為P1。擺桿的質(zhì)量為m2,重心為O2,其位置坐標(biāo)為(a2,b2),擺桿可繞原點(diǎn)O進(jìn)行轉(zhuǎn)動(dòng),轉(zhuǎn)動(dòng)慣量為P2。擺桿與水平方向夾角為θ[5-6],原點(diǎn)O到原點(diǎn)O2的距離為x1,原點(diǎn)O2到原點(diǎn)O1的距離為x2。
利用拉格朗日方程推導(dǎo)運(yùn)動(dòng)學(xué)方程[7-8]:
(1)
其中L為拉格朗日算子,q為系統(tǒng)的廣義坐標(biāo),T為系統(tǒng)的動(dòng)能,V為系統(tǒng)的勢能。
系統(tǒng)的總動(dòng)能:
T=TO1+TO2 (2)
式中TO1和TO2分別為擺桿和飛輪的動(dòng)能。
飛輪的動(dòng)能:
(3)
擺桿的動(dòng)能:
(4)
飛輪的勢能:
VO1=m1g(x1+x2)cos θ (5)
擺桿的勢能:
VO2=m2gx1cos θ (6)
最終得出飛輪倒立擺系統(tǒng)的數(shù)學(xué)模型:
(7)
其中:a=m1x1+4m2x12+P2,b=(m1+2m2)gx1,c1為飛輪繞轉(zhuǎn)軸O1轉(zhuǎn)動(dòng)的摩擦阻力矩系數(shù),c2為擺桿繞轉(zhuǎn)軸O2轉(zhuǎn)動(dòng)的摩擦阻力矩系數(shù)。
3 基于Matlab/Simscape的物理仿真模型
建立
Solidworks與Simscape的聯(lián)合仿真:首先在
Solidworks中對(duì)飛輪倒立擺系統(tǒng)進(jìn)行三維建模,接
著在Solidworks中通過插件Simscape Multibody Link將飛輪倒立擺系統(tǒng)的三維模型導(dǎo)入Simscape,
建立物理仿真模型如圖3所示。
圖中RIGID模塊是一個(gè)用于剛體動(dòng)力學(xué)仿真的軟件模塊,可以模擬剛體在力的作用下的運(yùn)動(dòng)和相互作用。RIGID模塊可以用于模擬各種物理系統(tǒng),如機(jī)械系統(tǒng)、車輛運(yùn)動(dòng)、物體碰撞等。通過對(duì)剛體的運(yùn)動(dòng)和相互作用進(jìn)行建模和仿真,可以幫助學(xué)生更好地理解和預(yù)測物體的行為。
Revolute模塊是一個(gè)用于模擬旋轉(zhuǎn)關(guān)節(jié)的軟件模塊,可以模擬旋轉(zhuǎn)關(guān)節(jié)的運(yùn)動(dòng)和力學(xué)特性,以及與其他物體的相互作用。通過該模塊,可以對(duì)旋轉(zhuǎn)關(guān)節(jié)的運(yùn)動(dòng)進(jìn)行建模和仿真,以便更好地理解和預(yù)測機(jī)械系統(tǒng)的行為。Revolute模塊通常用于機(jī)械工程、機(jī)器人學(xué)和物理仿真等領(lǐng)域。
圖3中,x1_RIGID模塊、x1_RIGID1模塊、x2_RIGID模塊分別代表飛輪倒立擺系統(tǒng)的底座、擺桿、飛輪三部分,它們之間分別通過鉸鏈模塊Revolute1、Revolute連接。
模塊Mechanism Configuration表示飛輪倒立擺機(jī)構(gòu)配置僅受均勻引力,設(shè)置重力加速度為g=9.806 65 m/s2。
通過Simscape導(dǎo)入Solidworks制作的三維模型后生成的可視化仿真實(shí)驗(yàn)平臺(tái)如圖4所示,該模型可以動(dòng)態(tài)顯示倒立擺的姿態(tài)和飛輪的旋轉(zhuǎn)狀態(tài),并可與外界信號(hào)進(jìn)行交聯(lián)。
4 PID控制仿真實(shí)驗(yàn)
比例—積分—微分(PID)控制是一種經(jīng)典的自動(dòng)控制算法。PID控制理論簡單、穩(wěn)定性好、精確性高[9],它通過對(duì)系統(tǒng)的誤差信號(hào)進(jìn)行比例(P)、積分(I)和微分(D)的運(yùn)算,產(chǎn)生相應(yīng)的輸出,達(dá)到預(yù)期目標(biāo)。在PID控制中,比例項(xiàng)可以提供快速的響應(yīng)和較小的超調(diào)量,積分項(xiàng)能夠消除靜態(tài)誤差并增強(qiáng)系統(tǒng)的穩(wěn)定性,微分項(xiàng)則能夠抑制系統(tǒng)的振蕩并提高系統(tǒng)的響應(yīng)速度。PID控制器的輸出公式為:
(8)
其中:Kp是比例增益,Ki是積分增益,Kd是微分增益。e(t)是期望值與實(shí)際值之間的差異。
合理地調(diào)節(jié)Kp、Ki、Kd這三個(gè)參數(shù),可以實(shí)現(xiàn)對(duì)系統(tǒng)動(dòng)態(tài)特性的優(yōu)化,使得系統(tǒng)更好地滿足控制要求。在Matlab/Simulink環(huán)境下,搭建飛輪倒立擺系統(tǒng)PID平衡控制仿真模塊如圖5所示。
PID控制器根據(jù)系統(tǒng)的輸出值與期望值之間的誤差信號(hào),使用比例、積分和微分運(yùn)算產(chǎn)生控制輸出,作用于飛輪倒立擺系統(tǒng),進(jìn)而影響系統(tǒng)的行為,使系統(tǒng)的輸出角度逼近期望值。令飛輪倒立擺系統(tǒng)的輸出角度為δ,當(dāng)δ=90°時(shí)系統(tǒng)響應(yīng)曲線如圖6所示。
當(dāng)δ=95°時(shí)系統(tǒng)響應(yīng)曲線如圖7所示。
由以上仿真結(jié)果可知,基于PID控制能很好地實(shí)現(xiàn)飛輪倒立擺系統(tǒng)的平衡。且飛輪倒立擺輸出角度δ=95°相比于δ=90°,擺桿在迅速向平衡位置靠攏的過程中,最大超調(diào)量更小,峰值時(shí)間更短,即系統(tǒng)的響應(yīng)更加平穩(wěn)和快速。
PID控制器的設(shè)計(jì)和參數(shù)整定在自動(dòng)化類課程中一直是知識(shí)的重難點(diǎn)。通過本仿真系統(tǒng),學(xué)生可以自行調(diào)整控制參數(shù),并實(shí)時(shí)看到實(shí)際的控制效
果[10]。同時(shí),對(duì)于線性系統(tǒng)來說,需要輸入指令在小角度下才能滿足線性化要求,當(dāng)輸入指令超出可線性化范圍后,系統(tǒng)出現(xiàn)失穩(wěn)現(xiàn)象,因此該系統(tǒng)還能借助物理可視化效果幫助學(xué)生對(duì)線性系統(tǒng)產(chǎn)生直觀認(rèn)識(shí)。不同輸入指令下,飛輪倒立擺系統(tǒng)控制案例可視化效果如圖8所示。
5 結(jié)束語
為了提高自動(dòng)控制原理課程的教學(xué)質(zhì)量,將基于Matlab/Simscape的自動(dòng)控制虛擬實(shí)驗(yàn)系統(tǒng)應(yīng)用于教學(xué)實(shí)踐,利用Solidworks與Simscape的聯(lián)合仿真建立飛輪倒立擺物理仿真模型并向?qū)W生展示基于PID控制器的飛輪倒立擺系統(tǒng)在不同輸入指令下的實(shí)際控制效果。相比于傳統(tǒng)的圖解法,這種教學(xué)方式的可視化效果更好,學(xué)生可以直觀地觀察擺桿、飛輪的運(yùn)動(dòng)狀況,還可以改變仿真參數(shù)得到不同的運(yùn)動(dòng)參數(shù)變化,有利于學(xué)生對(duì)課程知識(shí)的理解和
掌握。
6 參考文獻(xiàn)
[1] 高興泉,王立國,劉廣平.基于Matlab/Simscape的自
動(dòng)控制原理虛擬實(shí)驗(yàn)平臺(tái)[J].實(shí)驗(yàn)室研究與探索,2013,
32(9):86-89.
[2] 強(qiáng)盛,史小平,何朕.基于項(xiàng)目的“自動(dòng)控制原理課程
設(shè)計(jì)”改革探索[J].實(shí)驗(yàn)室研究與探索,2013,32(11):
416-418.
[3] 秦志英,路子安,趙月靜,等.MATLAB/Simscape在風(fēng)力
機(jī)仿真實(shí)驗(yàn)系統(tǒng)教學(xué)中的應(yīng)用[J].中國教育技術(shù)裝備,
2022(6):36-39.
[4] 薛定宇,陳陽泉.基于MATLAB /Simulink 的系統(tǒng)仿真技術(shù)與應(yīng)用[M].2版.北京:清華大學(xué)出版社,2011.
[5] 秦志英,趙季福,趙月靜,等.MATLAB/Simscape在機(jī)械
手仿真教學(xué)中的應(yīng)用[J].中國教育技術(shù)裝備,2022(2):
41-43.
[6] 王昱峰.一個(gè)飛輪倒立擺系統(tǒng)的建模與平衡控制的研究
[D].北京:北京工業(yè)大學(xué),2011.
[7] 劉延柱.高等動(dòng)力學(xué)[M].北京:高等教育出版社,
2003:5-50.
[8] 李麗娟,以倒立擺為對(duì)象的智能控制算法的研究與應(yīng)用[D].南京:南京工業(yè)大學(xué),2004.
[9] 高晉,李暉,楊秀建.7自由度半主動(dòng)懸架整車模型PID
控制研究[J/OL].計(jì)算機(jī)仿真,1-6.[2024-10-28].http://kns.cnki.net/kcms/detail/11.3724.TP.2023
1108.1554.020.html.
[10] 金晶,梁宗輝,路登明.PID算法在電液執(zhí)行機(jī)構(gòu)中的應(yīng)用研究[J].液壓氣動(dòng)與密封,2023,43(10):50-54.
*項(xiàng)目來源:內(nèi)蒙古科技大學(xué)教學(xué)改革項(xiàng)目“‘一核兩課四融合’驅(qū)動(dòng)的機(jī)械類項(xiàng)目案例式‘結(jié)點(diǎn)課程’課程思政育人新范式研究”(JY2023020);第三期廣州中望龍騰軟件有限公司供需對(duì)接就業(yè)育人項(xiàng)目(2024010594552);內(nèi)蒙古自治區(qū)教育科學(xué)研究“十四五”規(guī)劃課題(NGJGH2022373);教育部產(chǎn)學(xué)合作協(xié)同育人項(xiàng)目“工程教育和新工科建設(shè)背景下機(jī)電液一體化教師能力培養(yǎng)計(jì)劃”(230803122172127)。
作者簡介:孫國鑫,博士,副教授。