韓政霖
【摘 要】本文介紹了基于STM32的滾球裝置的總體結(jié)構(gòu)和控制原理,根據(jù)小球的位置信息控制小球到達指定點。
【關(guān)鍵詞】STM32;滾球系統(tǒng);圖像處理;定位控制
整個系統(tǒng)的難點在于小球運動位置檢測與處理,這里使用open MV攝像頭采集圖像信息。將攝像頭懸掛于球板的正上方,連續(xù)采集球和板的圖像,控制系統(tǒng)通過圖像采集和圖像分析操作得到小球在板上的位置信息。同時控制系統(tǒng)得到舵機編碼器反饋的兩個舵機轉(zhuǎn)角,并根據(jù)舵機轉(zhuǎn)角的換算關(guān)系計算出平板相對于水平位置的轉(zhuǎn)角,求得小球質(zhì)心在球盤坐標系的實際位置,進而對小球進行定位控制。本次設(shè)計硬件結(jié)構(gòu)穩(wěn)定,可控性強。
一、系統(tǒng)方案
系統(tǒng)包含電機模塊、驅(qū)動模塊、主控、電源、攝像頭、安裝支架及其他硬件結(jié)構(gòu)。
二、電機
舵機,舵機是一種位置伺服的驅(qū)動器,適用于那些需要角度不斷變化并可以保持的控制系統(tǒng)。其工作原理是:控制信號由接收機的通道進入信號調(diào)制芯片,獲得直流偏置電壓。它內(nèi)部有一個基準電路,產(chǎn)生周期為20ms,寬度為1.5ms的基準信號,將獲得的直流偏置電壓與電位器的電壓比較,獲得電壓差輸出。最后,電壓差的正負輸出到電機驅(qū)動芯片決定電機的正反轉(zhuǎn)。當電機轉(zhuǎn)速一定時,通過級聯(lián)減速齒輪帶動電位器旋轉(zhuǎn),使得電壓差為0,電機停止轉(zhuǎn)動。
三、驅(qū)動電路
在常見的驅(qū)動電路設(shè)計中,LM系列和W系列的芯片都可以供其使用。LM2941,LM2941芯片不但可在低輸入輸出壓差下工作,而且輸出可調(diào)。且LM2941還具有短路保護、熱過載保護和自我保護功能
四、主控芯片
本次設(shè)計主控芯片使用STM32103ZET6。ARM32位 Cortex-M3內(nèi)核,最高工作頻率72MHz,1.25MIPS/MHz.片上集成32-512KB的FLASH存儲器。6-64KB的SRAM存儲器。2.0-3.6V的電源供電和I/O借口的驅(qū)動電壓。上電復(fù)位,掉電復(fù)位和可編程的電壓探測器。3種低功耗模式:休眠、停止、待機模式。
五、傳感方式
即位置傳感方案和視覺傳感方案。視覺傳感方式,視覺反饋和編碼器反饋相結(jié)合得到系統(tǒng)的反饋并以此為依據(jù)進行控制。即攝像頭懸掛于球板的正上方,連續(xù)采集求和板的圖像,控制系統(tǒng)通過圖像采集和圖像分析操作得到小球在板上的位置信息。
六、系統(tǒng)理論分析與計算
(一)小球的檢測
對于球的檢測,所用的基本工具是Hough變換,Hough變換的基本思想是:利用圖像的全局特征將圖像的邊緣像素連接起來構(gòu)成封閉的邊界,將圖像空間變換成參數(shù)空間,并對空間的點進行描述,達到檢測邊緣的目的,該方案把可能落在邊緣的點進行統(tǒng)計,根據(jù)統(tǒng)計的結(jié)果確定屬于邊緣的程度。其優(yōu)點就是對于隨機噪聲的魯棒性,局部殘損的不敏感性以及適用于并行處理等優(yōu)良特性,可以將圖像中較為困難全局檢測問題轉(zhuǎn)換為空間中響度容易解決的問題。
小球檢測的步驟:1.將采集的彩色圖像轉(zhuǎn)換為灰度圖像;2.對圖像進行預(yù)處理,及高斯濾波和Canny算子的邊緣檢測;3.在預(yù)處理的圖像中應(yīng)用改進的霍夫圓檢測算法,獲取圓的位置信息。
(二)控制方法分析
控制系統(tǒng)的位置信息由視覺系統(tǒng)得到。攝像頭采集到小球和平板的圖像并經(jīng)過圖像處理和圖像識別后得到小球的質(zhì)心位置,同時控制系統(tǒng)得到舵機編碼器反饋的兩個舵機轉(zhuǎn)角,并根據(jù)舵機轉(zhuǎn)角的換算關(guān)系計算出球盤相對于水平位置的轉(zhuǎn)角,求得小球質(zhì)心在球盤坐標系的實際位置。
為了使運動的小球穩(wěn)定在平板上一個特定的位置,首先定義幾個坐標系和變量:圖像坐標系I(u,v),攝像機坐標系C(X ,Y,Z),世界坐標系W(r,p,q)。其中,圖像坐標系I以像素為單位,攝像機坐標系C與世界坐標系以物理尺寸為單位。
板球系統(tǒng)控制流程思想如下:
1.系統(tǒng)初始化,首先進行視覺系統(tǒng)標定,機械系統(tǒng)標定以及各變量初始化以及運動控制系統(tǒng)初始化;2.控制系統(tǒng)開始工作,每隔控制周期到來時采集一幀圖像,通過對圖像進行圖像處理操作得到小球質(zhì)心在圖像中的坐標;3.根據(jù)攝像機標定得到的攝像機參數(shù)矩陣,通過坐標映射得到小球在世界坐標系中的真實位置;4.根據(jù)3的結(jié)果和控制策略,計算舵機轉(zhuǎn)角,控制系統(tǒng)根據(jù)計算結(jié)果向執(zhí)行機構(gòu)下發(fā)控制指令。
舵機驅(qū)動電路及其參數(shù)計算
V0計算公式: V0=(1+R2/R1)×VREF
穩(wěn)壓電路及其參數(shù)計算 V0=(1+R3/R4)×VREF+IADJ
其中VREF為1.25V,IADJ為R2的參考電流。
小球運動檢測與處理
閾值分割是根據(jù)圖像的某些特征或特征集合的相似性準則,對圖像像素進行分組聚類,把圖像平面劃分為一系列有意義的區(qū)域,便后續(xù)的分析、識別等高級處理階段需要處理的數(shù)據(jù)量大大減少,同時又保留有關(guān)圖像結(jié)構(gòu)特征的信息。
對圖像進行閾值分割后得到二值圖像,就可以提取小球的位置信息了。首先計算小球質(zhì)心的圖像坐標,再對圖像坐標進行坐標變換,從而的到小球在世界坐標系的真實坐標。每個控制周期來臨時,攝像機會采集一幀圖像,運動物體的實時質(zhì)心提取過程,就是在進入每個控制周期的時候?qū)z像機采集的這一幀圖像進行二值化操作和質(zhì)心提取操作,程序會用一個紅色“+”標識質(zhì)心所在,質(zhì)心的圖像坐標(u,v),小球在滾動時質(zhì)心的跟蹤性良好,能夠滿足控制系統(tǒng)的實時性要求。每個控制周期的實時質(zhì)心提取過程完成后,程序通過實時質(zhì)心提取過程得到的小球質(zhì)心的圖像坐標數(shù)據(jù),經(jīng)過坐標變換計算得到小球在世界坐標系中的真實坐標平板上的坐標。
七、執(zhí)行機構(gòu)控制算法
每個控制周期得到小球真實位置后,控制程序就可以對小球驚醒位置控制了。本程序采用最簡單的PID控制算法實現(xiàn)這一過程。Kp,Ki,Kd分別為控制參數(shù)P,I和D。PID控制參數(shù)可由用戶在控制開始之前設(shè)置。
八、結(jié)論
板球設(shè)計系統(tǒng)相對穩(wěn)定,可以實現(xiàn)小球走固定軌跡,也可實現(xiàn)小球在木板上相對穩(wěn)定。endprint