廈門(mén)工學(xué)院 高麗貞 陳俊秀
滾球控制系統(tǒng)是一個(gè)多變量、非線性控制系統(tǒng),是球桿系統(tǒng)的二維擴(kuò)展。本文概述了滾球系統(tǒng)硬件組成及數(shù)學(xué)模型,基于PSO優(yōu)化神經(jīng)網(wǎng)絡(luò)算法對(duì)滾球系統(tǒng)PID控制器參數(shù)進(jìn)行整定,并在滾球系統(tǒng)上驗(yàn)證了控制參數(shù),說(shuō)明了參數(shù)的可靠性。
自控類(lèi)題目是電子設(shè)計(jì)競(jìng)賽四大類(lèi)型之一。近年來(lái),自控類(lèi)題目越來(lái)越重視多學(xué)科的交叉融合,從自平衡車(chē)系統(tǒng)到旋轉(zhuǎn)倒立擺系統(tǒng),再到風(fēng)力擺系統(tǒng),最后滾球控制系統(tǒng),都體現(xiàn)了新技術(shù)與傳統(tǒng)工業(yè)技術(shù)的緊密結(jié)合。以2017年全國(guó)電子設(shè)計(jì)競(jìng)賽B題——滾球控制系統(tǒng)為例,要求通過(guò)設(shè)計(jì)一控制系統(tǒng),在指定邊長(zhǎng)為65cm光滑的正方形內(nèi),通過(guò)控制平板的傾斜,使直徑不大于2.5cm的小球能夠按照指定的要求在平板上且在指定時(shí)間內(nèi)完成各種動(dòng)作。滾球控制系統(tǒng)是一個(gè)非常典型的結(jié)合視覺(jué)、運(yùn)動(dòng)控制和自動(dòng)控制技術(shù)的系統(tǒng),也是一個(gè)典型的非線性控制系統(tǒng),需要對(duì)控制系統(tǒng)的參數(shù)整定。但通過(guò)傳統(tǒng)的人工調(diào)整試湊法整定優(yōu)化PID控制器中的比例、積分、微分三個(gè)控制參數(shù),耗時(shí)耗力,且隨著滾球系統(tǒng)機(jī)械結(jié)構(gòu)變化,需重新整定優(yōu)化三個(gè)控制參數(shù),不能保證控制器獲得最佳的性能。因此,本文針對(duì)使用改進(jìn)粒子群算法對(duì)滾球體統(tǒng)的PID控制器中三個(gè)參數(shù)進(jìn)行整定優(yōu)化方法的研究,具有很重要的實(shí)際意義。
本系統(tǒng)主要由單片機(jī)控制模塊、攝像頭模塊、LCD顯示屏模塊、電源模塊、舵機(jī)及平板機(jī)械支架等組成。STM32作為滾球系統(tǒng)的控制核心,利用攝像頭采集過(guò)來(lái)的數(shù)據(jù)通過(guò)黑白二值化,以此判別平板和黑色球并顯示在LCD 上。攝像頭對(duì)滾球準(zhǔn)確定位,確定其坐標(biāo)位置,同時(shí)記錄平板規(guī)定的9個(gè)區(qū)域坐標(biāo),單片機(jī)通過(guò)返回的坐標(biāo)位置結(jié)合PID算法,通過(guò)輸出PWM對(duì)舵機(jī)進(jìn)行角度調(diào)節(jié),驅(qū)動(dòng)舵機(jī)調(diào)節(jié)平板的偏角,使小球在平板上穩(wěn)定或做相應(yīng)運(yùn)動(dòng),形成一閉環(huán)控制系統(tǒng),從而對(duì)小球進(jìn)行實(shí)時(shí)控制。系統(tǒng)的總體方案框圖如圖1所示。
圖1 系統(tǒng)總體方案框圖
滾球系統(tǒng)通過(guò)X、Y方向各有舵機(jī)帶動(dòng)連桿運(yùn)動(dòng),從而讓小球運(yùn)動(dòng)。小球在X、Y方向上的運(yùn)動(dòng)與該方向的舵機(jī)密切相關(guān),X方向的連桿運(yùn)動(dòng)如圖2所示。滾球系統(tǒng)的輸出是小球在X軸方向上和Y軸方向上的位移,輸入是X軸和Y軸舵機(jī)的轉(zhuǎn)角。滾球系統(tǒng)的數(shù)學(xué)模型參考板球系統(tǒng),簡(jiǎn)化的滾球系統(tǒng)數(shù)學(xué)模型公式見(jiàn)式(1)。簡(jiǎn)化建模是在一定客觀假設(shè)及理想的前提條件下所得,可得小球在X軸方向上和Y軸方向上的位移和X軸和Y軸舵機(jī)的轉(zhuǎn)角成近似成線性關(guān)系。
圖2 X方向的連桿運(yùn)動(dòng)
式(1)中,m為小球質(zhì)量,取0.26kg;r為小球半徑,取0.02m;Ib為小球的轉(zhuǎn)動(dòng)慣量,取0.0000416kg.m2;Lx為平板X(qián)方向上的半長(zhǎng),取0.65/2 m;Ly為平板Y方向上的半長(zhǎng),取0.65/2 m;x為小球在X軸方向上的位移,y為小球在Y軸方向上的位移。Lm為舵機(jī)力臂長(zhǎng)度。
所要求設(shè)計(jì)的滾球系統(tǒng),當(dāng)滾球到達(dá)指定位置后需能保持相對(duì)穩(wěn)定狀態(tài)。而滾球系統(tǒng)本身具有不穩(wěn)定的系統(tǒng)特性,因此需加控制器將滾球系統(tǒng)設(shè)計(jì)成一閉環(huán)系統(tǒng)。本文采用PID控制器,系統(tǒng)設(shè)定輸入的小球位置和攝像頭的實(shí)際小球位置的偏差信號(hào)經(jīng)過(guò)控制器處理,轉(zhuǎn)化成為角度信息傳遞給被控對(duì)象。通過(guò)整定PID控制器的比例、積分、微分三個(gè)控制參數(shù)使?jié)L球系統(tǒng)達(dá)到穩(wěn)定。
粒子群算法(PSO算法)是計(jì)算機(jī)智能控制領(lǐng)域的一種基于群體協(xié)作的全局隨機(jī)搜索尋優(yōu)算法。其中的每個(gè)粒子都代表了一個(gè)潛在的解,粒子的好壞由一個(gè)事先設(shè)定的適應(yīng)度函數(shù)來(lái)確定。通過(guò)粒子間的協(xié)作與競(jìng)爭(zhēng),粒子群算法實(shí)現(xiàn)了對(duì)復(fù)雜空間中最優(yōu)解的搜索。但因粒子群算法函數(shù)尋優(yōu)過(guò)程中存在易陷入局部最優(yōu)解的問(wèn)題,在粒子群算法中引入了神經(jīng)網(wǎng)絡(luò),提高了算法的尋優(yōu)收斂精度和效率。
PSO對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化訓(xùn)練的流程圖如圖3所示。將神經(jīng)網(wǎng)絡(luò)中需要訓(xùn)練的參數(shù)(PID控制器為比例、積分、微分三個(gè)控制參數(shù))算作PSO算法中的一個(gè)粒子集,粒子集的數(shù)量是神經(jīng)網(wǎng)絡(luò)中需要訓(xùn)練的參數(shù)個(gè)數(shù)。首先對(duì)這些粒子的位置與速度進(jìn)行隨機(jī)初始化,然后根據(jù)實(shí)際輸出與期望輸出間的誤差計(jì)算適應(yīng)度,并重新迭代求解每個(gè)粒子的全局最優(yōu)位置與當(dāng)前速度,即得到了更新后的網(wǎng)絡(luò)權(quán)值。隨后代入新的權(quán)值參數(shù)再重新訓(xùn)練,以此迭代下去,直到適應(yīng)度收斂到一定閾值范圍內(nèi),停止算法。
圖3 PSO對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化訓(xùn)練的流程圖
PID參數(shù)整定過(guò)程原理示意圖如圖4所示。所求的最優(yōu)解是PID控制器比例、積分、微分三個(gè)參數(shù)的系數(shù)。
圖4 參數(shù)整定優(yōu)化原理圖
將通過(guò)參數(shù)整定優(yōu)化得到的PID控制器應(yīng)用到實(shí)際滾球系統(tǒng)實(shí)驗(yàn)臺(tái)上,系統(tǒng)的階躍響應(yīng)具有較快的響應(yīng)速度,不到1s系統(tǒng)即可達(dá)到穩(wěn)態(tài),具有較小的振蕩。
結(jié)論:本文完成了滾球系統(tǒng)的硬件搭建,且針對(duì)PID算法不容易調(diào)節(jié)的問(wèn)題,提出PSO算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò),通過(guò)分析系統(tǒng)的控制效果,驗(yàn)證所求得的控制器參數(shù)在實(shí)際滾球系統(tǒng)控制器上的魯棒性。