作者:徐厚華 何哲嘉 向穎鋒
直立平衡車因其動(dòng)力學(xué)系統(tǒng)同時(shí)具有多變量,非線性,不穩(wěn)定,強(qiáng)耦合等特性,傳統(tǒng)的單環(huán)PID控制平衡已經(jīng)略顯吃力。本文將采用內(nèi)環(huán)角速度PI控制、外環(huán)角度PD控制及最外環(huán)速度PI控制組成的串級(jí) PID算法來(lái)控制直立車的平衡及運(yùn)動(dòng),串級(jí)PID控制器比常規(guī)PID控制系統(tǒng)具有較強(qiáng)的穩(wěn)定性、抗干擾性。
▲ 制作的節(jié)能直立組車模
■ 前言
智能車是現(xiàn)代汽車工業(yè)和電子計(jì)算機(jī)等科技成果相結(jié)合的產(chǎn)物, 具有自動(dòng)識(shí)別道路的功能從而實(shí)現(xiàn)自動(dòng)駕駛。兩輪直立小車廣泛的應(yīng)用于倉(cāng)庫(kù)物流運(yùn)輸以及巡邏的代步工具等方面[1]。兩輪直立智能車賽題在大學(xué)生智能車競(jìng)賽中已經(jīng)出現(xiàn)快十年,直立車的控制算法也日趨多樣,兩輪直立智能車在賽道中,需同時(shí)兼顧速度、平衡與循跡,姿態(tài)與循跡控制效果的優(yōu)劣直接決定行駛平均速度的高低[2]。直立車模本身只具有一個(gè)執(zhí)行機(jī)構(gòu),即兩個(gè)主控馬達(dá)。對(duì)于傳統(tǒng)PID控制,涉及到平衡角度環(huán)和速度環(huán)控制輸出復(fù)用一個(gè)執(zhí)行機(jī)構(gòu)問(wèn)題,為提升在較高速度下的運(yùn)行性能,對(duì)傳統(tǒng)算法進(jìn)行了一定程度的改進(jìn),提出一種基于串級(jí)PID的直立車姿態(tài)控制算法。
01串激PID控制
直立車由雙電機(jī)驅(qū)動(dòng),左右電機(jī)為控制對(duì)象,控制器需具有直立、行駛同時(shí)兼顧轉(zhuǎn)向的功能。傳統(tǒng)直立車控制算法,大多采用角度環(huán)輸出與速度環(huán)輸出線性疊加,在高速行駛狀態(tài)時(shí)姿態(tài)的跟隨能力欠佳,在此在傳統(tǒng)算法基礎(chǔ)上將速度-角度進(jìn)行了串聯(lián),并增加了角速度為最內(nèi)環(huán)回路。串級(jí)PID 控制器輸出后經(jīng)過(guò)處理?yè)Q算為PWM,輸入驅(qū)動(dòng)板后可使直立車行駛。
▲ 系統(tǒng)總體框圖
1.1傳統(tǒng)直立車PID控制系統(tǒng)
直立車傳統(tǒng)控制系統(tǒng)如圖1所示。為使其具有速度控制與姿態(tài)平衡能力,利用2個(gè)單獨(dú)的閉環(huán)分別進(jìn)行控制,輸出電機(jī)控制信號(hào)為各環(huán)輸出的疊加。該控制方案雖簡(jiǎn)單但存在一定問(wèn)題,如:僅單獨(dú)施加直立控制,其車身平衡效果雖能滿足要求,但此時(shí)如果在該基礎(chǔ)上額外施加速度控制,速度控制勢(shì)必會(huì)打破直立車的平衡姿態(tài),使得速度與直立控制互相耦合,此時(shí)如果再施加轉(zhuǎn)向控制,就會(huì)導(dǎo)致高速時(shí)轉(zhuǎn)向控制實(shí)時(shí)性和姿態(tài)的平衡性欠佳。
▲ 圖1 直立車傳統(tǒng)控制框圖
傳統(tǒng)位置式PID控制算法公式[3]:
其中P(k)為調(diào)節(jié)器輸出,e(t)是當(dāng)前角度誤差,Kp比例系數(shù),Ki積分系數(shù),Kd微分系數(shù)。
1.2直立車串級(jí)PID 控制
串級(jí)PID控制系統(tǒng)結(jié)構(gòu)如圖2所示。
▲ 圖2 直立車串級(jí)控制系統(tǒng)框圖
串級(jí)PID外環(huán)控制算法如公式2:
式中ω ( k ) \omega \left( k \right)ω(k)為外環(huán)調(diào)節(jié)器輸出,θ ( k ) \theta \left( k \right)θ(k)是當(dāng)前角度誤差。
內(nèi)環(huán)PID控制算法公式:
式中p(k)為內(nèi)環(huán)調(diào)節(jié)器輸出,e(k)是當(dāng)前角速度誤差,ω ( t ) \omega \left( t \right)ω(t)為當(dāng)前角速度。
如圖2所示,行駛閉環(huán)控制車模的行駛姿態(tài)和運(yùn)行速度。在行駛速度閉環(huán)中,速度PID 計(jì)算輸出的值為直立車在機(jī)械零點(diǎn)角需要前傾或者后仰的角度,該輸出值需與機(jī)械零點(diǎn)角相加才能將速度控制轉(zhuǎn)化為角度控制,而角度的變化是要由角速度產(chǎn)生的俯仰角度PID 計(jì)算輸出值為直立車需要保持的角速度,俯仰角速度PID 計(jì)算結(jié)果即為串級(jí)行駛閉環(huán)的輸出值
直立車平衡控制使用串級(jí)PID,外環(huán)角度,內(nèi)環(huán)角速度,最外環(huán)速度,只需要通過(guò)姿態(tài)傳感器采集一個(gè)軸的數(shù)據(jù)即可。速度環(huán)100ms環(huán)控制一次,角度環(huán)10ms進(jìn)行一次控制,角速度環(huán)2ms控制一次,外環(huán)輸出先加一個(gè)限幅才傳給內(nèi)環(huán),實(shí)測(cè)效果非常穩(wěn)定,不會(huì)震蕩,也不會(huì)出現(xiàn)明顯的反應(yīng)滯后。速度控制和平衡控制,轉(zhuǎn)化為角度和角速度的控制,整個(gè)控制系統(tǒng)中僅僅有角速度環(huán)的輸出給電機(jī)控制,原理上可以有效地消除傳統(tǒng)速度PID 與直立平衡PID 并聯(lián)所產(chǎn)生的耦合。
1.3算法實(shí)現(xiàn)
串級(jí)PID算法的實(shí)現(xiàn)在于角速度環(huán)、角度環(huán)和速度環(huán)控制的不同周期。初始化程序完成之后,啟動(dòng)周期為2 ms的定時(shí)中斷。PIT 中斷要為循環(huán)中的算法提供程序執(zhí)行的時(shí)序標(biāo)志位控制,根據(jù)標(biāo)志位實(shí)現(xiàn)不同周期執(zhí)行不同控制環(huán)節(jié),這種程序結(jié)構(gòu)有助于提高算法的執(zhí)行效率以及實(shí)時(shí)性。中斷服務(wù)函數(shù)中具體控制的算法流程[4]如圖3所示。
▲ 圖3 中斷程序框圖
1.4串級(jí)PID參數(shù)整定
由于串級(jí)控制,速度環(huán)、角度環(huán)和角速度環(huán)會(huì)互相影響,所以調(diào)節(jié)參數(shù)時(shí)應(yīng)該從內(nèi)環(huán)開始整定。先令外環(huán)(角度環(huán)、速度環(huán))調(diào)節(jié)器目標(biāo)值為零,然后開始整定內(nèi)環(huán)(角速度)PID參數(shù),因?yàn)?a href="http://www.1cnz.cn/tags/陀螺儀/" target="_blank">陀螺儀在測(cè)量角速度過(guò)程中會(huì)不斷積累誤差以及各種噪聲的干擾,最終造成系統(tǒng)的穩(wěn)態(tài)誤差,所以角速度環(huán)采用PI控制來(lái)降低系統(tǒng)的穩(wěn)態(tài)誤差,調(diào)整參數(shù)至直立車能夠做緩慢的自由落體運(yùn)動(dòng),此時(shí)內(nèi)環(huán)參數(shù)整定完成。
調(diào)整好角速度環(huán)后就可以開始整定角度環(huán)PID參數(shù)了,角度環(huán)采用PD控制,調(diào)節(jié)到直立車能夠快速響應(yīng)在機(jī)械零點(diǎn)保持平衡,給一個(gè)干擾后能快速回到平衡位置且不發(fā)生震蕩就算調(diào)節(jié)好外環(huán)參數(shù)。
速度環(huán)采用PID調(diào)節(jié),速度環(huán)的參數(shù)整定最后來(lái)完成,先應(yīng)該通過(guò)設(shè)定目標(biāo)值為零來(lái)確定參數(shù)的極性,然后通過(guò)觀察車模實(shí)際運(yùn)行狀態(tài),通過(guò)上位機(jī)觀察各數(shù)據(jù)來(lái)給定參數(shù)。
02方案對(duì)比分析
當(dāng)系統(tǒng)受到多級(jí)噪聲時(shí),內(nèi)環(huán)會(huì)先進(jìn)行調(diào)整,再由外環(huán)進(jìn)行調(diào)整,所以控制的精度和穩(wěn)定性都優(yōu)于單極PID控制[5]。通過(guò)實(shí)際小車運(yùn)行狀態(tài)來(lái)看,如圖4所示。傳統(tǒng)算法圍繞中線產(chǎn)生了較大過(guò)調(diào);串級(jí)PID算法過(guò)調(diào)明顯較小,且跟隨能力遠(yuǎn)強(qiáng)于傳統(tǒng)算法,可以看出常規(guī)PID 的穩(wěn)定時(shí)間比串級(jí)控制短。串級(jí)PID控制器比常規(guī)PID 控制系統(tǒng)具響應(yīng)迅速,穩(wěn)定性高等優(yōu)點(diǎn)[6]。
▲ 圖4實(shí)驗(yàn)數(shù)據(jù)圖
03結(jié)論
串級(jí) PID 相比典型的 PID 算法控制更精準(zhǔn)、穩(wěn)定,系統(tǒng)內(nèi)環(huán)為角速度環(huán),外環(huán)為角度環(huán),經(jīng)過(guò)系統(tǒng)測(cè)試,能夠?qū)崿F(xiàn)良好的平衡控制效果。由于串級(jí)算法實(shí)現(xiàn)簡(jiǎn)單且實(shí)用,對(duì)傳統(tǒng)方案進(jìn)行改進(jìn)不需要額外的硬件要求,在直立車控制上具有一定的工程推廣和參考價(jià)值。
參考文獻(xiàn):
[1]潘飛。基于KEA128芯片的直立電磁小車設(shè)計(jì)[J]。電子技術(shù)與軟件工程,2019(10):98-99.
[2]王英杰,孟威李靈恩,姚曉晨,張寧博。改進(jìn)的兩輪直立車多回路控制[J]。自動(dòng)化與儀表,2019,34(12):39-44.
[3]徐涢基,肖城鋼,李婷,龔明,陳芳。串級(jí)PID算法在滾球控制系統(tǒng)中的應(yīng)用[J]。現(xiàn)代電子技術(shù),2020,43(09):122-125.
[4]謝丹妮。 直立智能車運(yùn)動(dòng)控制設(shè)計(jì)與實(shí)現(xiàn)[D]。湖南大學(xué),2017.
[5]喬緯國(guó)。 一種采用雙PID串級(jí)控制的雙輪自平衡車的研制[D]。吉林大學(xué),2017.
[6]周瓚,徐海榮。基于串級(jí)PID閉環(huán)控制的飛行控制原理仿真實(shí)驗(yàn)[J]。電子制作,2019(21):52-54.
編輯:hfy
-
PID算法
+關(guān)注
關(guān)注
2文章
172瀏覽量
24301 -
PID
+關(guān)注
關(guān)注
35文章
1472瀏覽量
85479 -
PID控制器
+關(guān)注
關(guān)注
2文章
173瀏覽量
18579
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論