覃嘉恒
(南通開放大學,江蘇 南通 226006)
基于STM32的視覺追蹤控制運動平臺的實現(xiàn)
覃嘉恒
(南通開放大學,江蘇 南通 226006)
文章提出了一種基于STM32F4芯片的自動及運動控制的交互平臺,系統(tǒng)通過攝像頭采集到跟蹤物體的圖像,并對其影像進行圖像處理,計算出目標物體的實時坐標,控制運動平臺移動。利用USB或藍牙接口和手機連接,實現(xiàn)人機交互。該系統(tǒng)具備低成本、靈活定制,能快速跟蹤物體,實現(xiàn)運動控制。
運動控制;STM32;視覺追蹤;姿態(tài)解算
傳統(tǒng)的視覺跟蹤的硬件實現(xiàn)常采用基于DSP、FPGA為核心的系統(tǒng)平臺,此類平臺能快速跟蹤物體,但成本上相當高。文章介紹了一種基于單片機STM32F4芯片實現(xiàn)自動視覺追蹤及運動控制的交互平臺,通過算法實現(xiàn)自身姿態(tài)的解算,完成高實時性和高準確性的視覺追蹤和運動控制。與傳統(tǒng)的工業(yè)控制器相比,本系統(tǒng)使用了基于安卓系統(tǒng)的軟件平臺??伸`活方便的實現(xiàn)用戶界面、數(shù)據(jù)分析、報表顯示等功能,且能通過簡單修改實現(xiàn)不同用途,兼容性好同時可大大降低平臺成本。
(1)系統(tǒng)簡介,整個系統(tǒng)由兩個子系統(tǒng)構(gòu)成:運動系統(tǒng)和視覺追蹤系統(tǒng)。 運動系統(tǒng)包括了安卓設(shè)備、擴展板和執(zhí)行機構(gòu)等主要部份。其中,執(zhí)行機構(gòu)由電機驅(qū)動、電機、機架等構(gòu)成的全方位移動平臺。另外,視覺追蹤系統(tǒng)由視覺輸入設(shè)備(攝像頭)、核心控制板和液晶顯示(LCD)組成。這兩個子系統(tǒng)中的控制部分均由同一塊STM32F4 Discovery來實現(xiàn)。
(2)系統(tǒng)算法分析。①視覺算法。在視覺追蹤上本系統(tǒng)用STM32F4驅(qū)動攝像頭,實時采集圖像,進行顏色識別,由于STM32F4平臺具有較為優(yōu)良的運算性能,能實現(xiàn)較為復雜的視覺算法,所以在本系統(tǒng)中采用了一種實時性較高的HSL色域shift算法。與經(jīng)典的圖像SHIFT算法相比,因為只跟蹤顏色,每幀需要的計算時間大約為2至5ms。實時性提高不少。本算法的關(guān)鍵點是首先要進行RGB到HSL色域的轉(zhuǎn)換。HSL是一種色彩模式,H代表色相,S代表飽和度,L代表亮度,這種色彩模式是基于人對色彩的心理感受的一種色彩模式。它的優(yōu)勢在于,在不同的光照條件下,不同的亮度只會影響HSL的H分量,而在RGB模式下,亮度的不同會同時影響三個分量,所以大大降低系統(tǒng)精度。在特定色調(diào)色塊的定位上采用的是腐蝕算法,原理很簡單:先遍歷尋找腐蝕中心,然后在腐蝕中心處進行迭代。具體算法如下所述:首先搜索第一個腐蝕中心,從該點出發(fā),分別向上、下、左、右四個方向進行讀點,若點的顏色符合條件則往外讀,等四個方向都結(jié)束后得到四個邊緣點的坐標,記左邊緣點的x軸坐標為left,右邊緣點的x軸坐標為right,上邊緣點的y軸坐標為up,下邊緣點的y軸坐標為bottom,那么坐標((right-left)/2,(up-bottom)/2)即為新的腐蝕中心。通過在腐蝕中心處進行迭代,完成了對特定色調(diào)的色塊捕捉,最終實現(xiàn)了視覺追蹤。本算法的整個運算過程耗時僅僅2m/s左右,視頻流暢度非常好。②手機端姿態(tài)解算。在實際應用中,手機設(shè)備控制所需要的角度值一般是通過對陀螺儀所得到的角速度信號進行積分而得到。就陀螺儀本身而言,其輸出的是四軸角速度,不受設(shè)備振動等外界因素影響,噪聲低,實時性好,但因受溫漂、零漂及非線性等因素的影響,使得角速度信號產(chǎn)生微小的偏差,經(jīng)過積分運算之后,變化形成累積誤差。這個誤差會隨著時間延長逐步增加,最終導致電路飽和,無法形成正確的角度信號。
因本系統(tǒng)硬件電路設(shè)計部分較為復雜,最終要實現(xiàn)傳感器的采集、姿態(tài)的解算、控制邏輯的生成和控制等任務,為了縮減開發(fā)周期,使用比較常見的LG Nexus 4手機作為Android平臺,擴展板使用意法官方的低成本評估板STM32F4 Discovery。
在本系統(tǒng)中,軟件設(shè)計包括三大模塊:
(1)Android軟件設(shè)計。實際就是做一個手機APP,在其中可實現(xiàn)傳感器數(shù)據(jù)的采集,手機姿態(tài)的計算,按鍵狀態(tài)的判斷,指令的傳送,圖形界面的建立和刷新。
(2)擴展板軟件設(shè)計。主要為建立USB口的通信,實現(xiàn)數(shù)據(jù)的讀取,并將其轉(zhuǎn)化成電機速度的設(shè)定目標值。
(3)驅(qū)動板軟件設(shè)計。主要實現(xiàn)了串行異步通信、脈沖寬度調(diào)制波的生成及正交編碼器的讀取等函數(shù)。
本系統(tǒng)利用STM32F4芯片實現(xiàn)自動視覺追蹤及運動控制的交互平臺。該系統(tǒng)具備成本低、擴展性強、實時性好等特點,如充分利用了硬件平臺及軟件平臺的優(yōu)勢,后期可擴展更多外部傳感器的,實現(xiàn)更加復雜的控制邏輯。
[1]鄭培秋.基于DSP和FPGA的嵌入式紅外圖像處理系統(tǒng)研究[D].沈陽理工大學,2010.
[2]劉祺,王銀玲,吳林恒.基于STM32的圖像采集與顯示系統(tǒng)的研究與設(shè)計[J].數(shù)字技術(shù)與應用,2012,(2).
[3]孫書鷹,陳志佳,寇超.新一代嵌入式微處理器STM32F103開發(fā)與應用[J].微計算機應用,2010,(12).
[4]盧闖,王春萌,彭秀媛,等.基于 STM32 的溫室監(jiān)控系統(tǒng)[J].北京農(nóng)業(yè),2013,(15).
覃嘉恒(1978-),男,碩士,講師,主要從事檢測技術(shù)與自動化裝置的研究工作。