吳立軍, 梁 偉, 李清波, 廟要要, 萬鸞飛, 段爭光
(1.蕪湖職業(yè)技術(shù)學(xué)院 電氣工程學(xué)院,安徽 蕪湖 241006;2.安徽工程大學(xué) 電氣工程學(xué)院,安徽 蕪湖 241000)
板球系統(tǒng)是一個典型的多變量、非線性控制系統(tǒng)[1-3].本文設(shè)計(jì)了一板球控制系統(tǒng),通過控制平板(65 cm*65 cm)的擺動,使直徑2 cm的硬質(zhì)小球按照指定要求(路徑)在平板上完成各種動作,并從動作開始時計(jì)時并實(shí)時顯示,單位為s.
本系統(tǒng)設(shè)計(jì)采用一對MG996R舵機(jī)作為動力源,通過控制舵機(jī)的轉(zhuǎn)角和轉(zhuǎn)速來控制平板的傾斜角度,進(jìn)而控制小球到達(dá)指定區(qū)域.平板擺動原理圖如圖1所示.在平板的上方合適位置安裝OV7670攝像頭,使其視野完全覆蓋平板.利用PID算法控制兩個舵機(jī)對平板x軸和y軸進(jìn)行調(diào)節(jié),改變小球加速度的方向,使小球進(jìn)行復(fù)雜的非線性運(yùn)動,系統(tǒng)框圖如圖2所示.
圖1 平板擺動原理圖
圖2 系統(tǒng)框圖
小球滾動原理分析見式(1):
(1)
圖3 小球受力分析圖
圖3為小球切面受力分析圖,小球滾至最高點(diǎn)B處,速度為0.理想情況下,小球的加速度由重力G的下滑分力產(chǎn)生,如式(1).質(zhì)量為m的小球處于最高點(diǎn),則角度α為最大值,加速度a最大.舵機(jī)對平板B處進(jìn)行下拉,使得A處升高,縮小擺動角度,即可達(dá)到制動目的;若此時等待小球到達(dá)A處再使舵機(jī)快速上升,則可以逐漸增大擺幅,使小球快速運(yùn)動到不同位置.
本系統(tǒng)主要采用了圖像二值化算法及PID控制算法.
圖像二值化算法是將圖像上的像素點(diǎn)的灰度值設(shè)置為0或255,整個圖像呈現(xiàn)出明顯的黑白效果,使得圖像變簡單,并且數(shù)據(jù)量減小,可以凸出感興趣的目標(biāo)的輪廓[4-5].本系統(tǒng)通過二值化算法處理之后,使得系統(tǒng)能夠快速識別目標(biāo)物——小球及其位置信息.
本系統(tǒng)采用PID算法來控制舵機(jī)帶動平板擺動,進(jìn)而控制小球在板上運(yùn)動,然后利用攝像頭實(shí)時采集小球位置信息,將采集的實(shí)時位置信息與設(shè)定位置進(jìn)行比較,若小球?qū)崟r位置偏離設(shè)定位置,則繼續(xù)調(diào)節(jié)舵機(jī),使小球運(yùn)動到指定位置并穩(wěn)定.PID算法公式如(2)所示:
(2)
比例P:對舵機(jī)的角度進(jìn)行比例調(diào)節(jié),調(diào)節(jié)舵機(jī)響應(yīng)速度.比例越大,舵機(jī)的響應(yīng)速度越快,平板的擺角越大.但是不能過大,否則會產(chǎn)生超調(diào)現(xiàn)象.
積分I:在小球到達(dá)指定位置時,系統(tǒng)穩(wěn)定性較強(qiáng),無需利用積分項(xiàng)對系統(tǒng)進(jìn)行補(bǔ)償,所以本系統(tǒng)設(shè)定KI為0.
微分D:微分調(diào)節(jié)反映舵機(jī)角度變化率,即角速度.微分調(diào)節(jié)具有預(yù)見性,可以預(yù)見偏差的變化趨勢,進(jìn)而進(jìn)行超前控制系統(tǒng),減少調(diào)節(jié)時間.
本設(shè)計(jì)采用了帶FIFO的OV7670攝像頭模塊對小球位置進(jìn)行捕捉.OV7670圖像傳感器體積較小,工作電壓低,且提供VGA攝像和影像處理器的所有功能[6].通過SCCB總線控制,能夠自行降噪調(diào)節(jié).OV7670攝像頭模塊內(nèi)部電路見圖4.
圖4 OV7670攝像頭模塊內(nèi)部電路
數(shù)字舵機(jī)結(jié)構(gòu)如圖5所示.數(shù)字舵機(jī)與傳統(tǒng)的模擬舵機(jī)相比具有以下兩個優(yōu)點(diǎn):(1)能夠在動力脈沖發(fā)送到舵機(jī)之前,對輸入信號根據(jù)設(shè)定的參數(shù)進(jìn)行處理,以適應(yīng)不同功能的要求,并優(yōu)化舵機(jī)性能;(2)可以以更高的頻率向馬達(dá)發(fā)送動力脈沖.
圖5 數(shù)字舵機(jī)結(jié)構(gòu)圖
圖6 TFT液晶連接電路圖
本設(shè)計(jì)采用TFT液晶實(shí)時比例顯示小球運(yùn)動軌跡,且觸摸按鍵選擇功能,界面簡潔、清晰、美觀.其與主控板的連接電路圖如圖6所示,界面如圖7所示.
(a)TFT主界面
(b)四區(qū)域選擇界面
本設(shè)計(jì)的主程序流程圖如圖8所示,本系統(tǒng)使用STM32單片機(jī)為主控核心,采用C語言編程,利用攝像頭獲取小球的位置、軌跡和狀態(tài)等信息.STM32單片機(jī)控制整個系統(tǒng)穩(wěn)定協(xié)調(diào)運(yùn)作,采用PID算法控制兩個舵機(jī)的PWM占空比,帶動平板運(yùn)動,實(shí)現(xiàn)了小球按指定路徑運(yùn)動并短暫穩(wěn)定和圍繞指定區(qū)域做環(huán)繞運(yùn)動等功能.本系統(tǒng)的兩個舵機(jī)采用相同的PID參數(shù),對于不同的要求我們設(shè)置了不同的PID參數(shù),具體參數(shù)設(shè)置如表1所示.
表1 PID參數(shù)
系統(tǒng)調(diào)試完成以后,根據(jù)系統(tǒng)設(shè)計(jì)目標(biāo),在平板上均勻分布著如圖9所示的9個區(qū)域,每個區(qū)域的外徑為3 cm,然后根據(jù)設(shè)定測試方案,對系統(tǒng)進(jìn)行性能測試.
圖8 主程序流程圖
圖9 平板區(qū)域分布
系統(tǒng)每次啟動時都會進(jìn)行初始化,板球控制系統(tǒng)的平板會在兩個舵機(jī)聯(lián)合作用下,處于水平狀態(tài).只有系統(tǒng)初始化完成之后,系統(tǒng)才能進(jìn)行相應(yīng)功能選擇.
表2 任意兩區(qū)域路徑測試
(1)控制小球從區(qū)域1出發(fā)到終點(diǎn)(1~9區(qū)域任選一個),設(shè)置終點(diǎn)區(qū)域穩(wěn)定停留時間為5 s,總時間不超過15 s,測試結(jié)果如表2所示.
(2)在1~9區(qū)域中任選4個區(qū)域,并記為A、B、C、D,控制小球按路徑A→B→C→D運(yùn)動,并最終穩(wěn)定停留在D區(qū)域5 s以上,總時間不超過40 s,測試結(jié)果如表3所示.
表3 任意四區(qū)域路徑測試
表4 環(huán)繞區(qū)域5運(yùn)動測試
(3)設(shè)置小球的出發(fā)點(diǎn)(區(qū)域4),作環(huán)繞區(qū)域5的運(yùn)動(不進(jìn)入),運(yùn)動3周后進(jìn)入終點(diǎn)區(qū)域(區(qū)域9),除設(shè)定區(qū)域外,不經(jīng)過其他區(qū)域,終點(diǎn)區(qū)域穩(wěn)定停留時間為5 s,總時間不超過40 s,測試結(jié)果如表4所示.
從測試結(jié)果分析知,本系統(tǒng)能夠快速準(zhǔn)確地控制小球按照測試要求(1~3)路徑運(yùn)動,最終使得小球穩(wěn)定停留在終點(diǎn)區(qū)域5 s以上,并且不進(jìn)入設(shè)置區(qū)域以外的其他區(qū)域.同時完成目標(biāo)所用的時間遠(yuǎn)遠(yuǎn)少于設(shè)定時間.
本系統(tǒng)采用STM32單片機(jī)作為主控單元,利用PID算法來控制舵機(jī)帶動平板擺動,進(jìn)而控制小球(20 mm)在平板上運(yùn)動,然后利用OV7670攝像頭實(shí)時采集小球位置信息經(jīng)圖像二值化算法處理后反饋給單片機(jī).單片機(jī)將采集的實(shí)時位置信息與設(shè)定位置進(jìn)行比較,若小球?qū)崟r位置偏離設(shè)定位置,則繼續(xù)調(diào)節(jié)舵機(jī),直至小球運(yùn)動到指定位置并穩(wěn)定.經(jīng)過實(shí)驗(yàn)證明本系統(tǒng)響應(yīng)速度快、調(diào)節(jié)時間短、控制精度高,具有較強(qiáng)的軌跡跟蹤能力和魯棒性.
[參 考 文 獻(xiàn)]
[1] 蘇信,孫政順,趙世敏.板球系統(tǒng)的模糊控制方法研究[J].計(jì)算機(jī)仿真,2006,23(9):165-167.
[2] 王紅睿,田彥濤.板球系統(tǒng)的參數(shù)自調(diào)整反步控制[J].控制與決策,2009,24(5):749-753.
[3] 韓京元,田彥濤,孔英秀,等.板球系統(tǒng)自適應(yīng)解耦滑??刂芠J].吉林大學(xué)學(xué)報(bào)(工學(xué)版),2014(3):718-725.
[4] 石恩強(qiáng).智能機(jī)器人的視頻處理與運(yùn)動物體跟蹤[D].西安:西安電子科技大學(xué),2012.
[5] 王顥瑾.在C++ Builder編程環(huán)境下實(shí)現(xiàn)基于閾值法的圖像分割技術(shù)[J].民營科技,2013(11):8.
[6] 徐潔瑩,劉云飛.基于STM32F107的圖像采集傳輸系統(tǒng)設(shè)計(jì)[J].山西電子技術(shù),2015(6):26-28.