陳新欣
摘? ?要:本文機(jī)器人為送餐而設(shè)計(jì),采用STM32F103RCT6為主控核心,采用藍(lán)牙通信技術(shù)實(shí)現(xiàn)示教遙控,利用超聲波實(shí)現(xiàn)避障。示教者教導(dǎo)機(jī)器人運(yùn)輸路線,然后系統(tǒng)通過(guò)電子羅盤記錄一維平面轉(zhuǎn)彎角度,再與動(dòng)力車輪反饋的脈沖數(shù)據(jù)相結(jié)合,傳輸路徑到ROM,達(dá)到斷電記憶路徑的目的,然后重復(fù)路徑,將菜肴送到餐桌,實(shí)現(xiàn)多菜肴運(yùn)輸功能。
關(guān)鍵詞:STM32? 記憶路徑? 示教功能
中圖分類號(hào):TP242? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A? ? ? ? ? ? ? ? ? ? ? ? 文章編號(hào):1674-098X(2019)05(c)-0013-03
1? 功能描述
本文為送餐而設(shè)計(jì),采用STM32F103RCT6為主控核心進(jìn)行智能控制;按照我們對(duì)相應(yīng)功能的計(jì)劃,首先設(shè)計(jì)出合理的送餐機(jī)器人的小車,采用特殊的塑料支架作為盛放餐點(diǎn)的托盤,然后在機(jī)身加上LN298電機(jī)驅(qū)動(dòng)模塊,采用藍(lán)牙通信技術(shù)實(shí)現(xiàn)遠(yuǎn)距離控制小車運(yùn)動(dòng);通過(guò)設(shè)計(jì)的微信小程序來(lái)實(shí)現(xiàn)手機(jī)界面操作;利用超聲波模塊,讓小車實(shí)現(xiàn)前方避障功能。使用人員操作教導(dǎo)機(jī)器人運(yùn)輸路線,然后機(jī)器人通過(guò)電子羅盤記錄一維平面轉(zhuǎn)彎角度,再與動(dòng)力車輪反饋的脈沖數(shù)據(jù)相結(jié)合,傳輸路徑到ROM,達(dá)到斷電記憶路徑的目的,然后重復(fù)路徑,將菜肴送到餐桌,實(shí)現(xiàn)多菜肴運(yùn)輸功能。該機(jī)器人通過(guò)設(shè)置按鍵設(shè)定送餐次數(shù),OLED顯示屏來(lái)進(jìn)行人機(jī)交互,將餐點(diǎn)溫度、機(jī)器運(yùn)行信息、時(shí)間等傳送至OLED顯示,防止人員拿取菜肴時(shí)溫度過(guò)高,實(shí)現(xiàn)良好的控制效果;系統(tǒng)通過(guò)A/D轉(zhuǎn)換電路采集電壓數(shù)據(jù),從而判斷電池電壓情況。
2? 系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)總體結(jié)構(gòu)如圖1所示。
系統(tǒng)原理圖如圖2所示。
根據(jù)STM32A/D轉(zhuǎn)換口,內(nèi)部下拉電阻大概10K,所以我們采用最簡(jiǎn)單的串聯(lián)分壓電路來(lái)采集電壓,然后通過(guò)A/D轉(zhuǎn)換為數(shù)字量。由于核心板電壓不能過(guò)高,也不能太低,我們采用MT3608升壓模塊,將電池的3.7V通過(guò)升壓達(dá)到穩(wěn)定的5V供給核心板,12V電壓連接開(kāi)關(guān)供給電機(jī)驅(qū)動(dòng)模塊L298N驅(qū)動(dòng)電機(jī)運(yùn)動(dòng),經(jīng)過(guò)實(shí)驗(yàn)證明該電路能穩(wěn)定輸出。該系統(tǒng)的最終PCB板圖如圖3所示,考慮到系統(tǒng)的簡(jiǎn)潔,外部擴(kuò)展電路不在該圖上顯示。
3? 系統(tǒng)軟件設(shè)計(jì)
在該機(jī)器人控制系統(tǒng)中,程序大體上可分為數(shù)據(jù)處理、過(guò)程控制兩個(gè)基本類型。數(shù)據(jù)處理包括數(shù)據(jù)的采集、數(shù)字濾波、標(biāo)度變換等;過(guò)程控制主要是使控制芯片按一定的方法進(jìn)行計(jì)算,然后再輸出,以便控制生產(chǎn)。
該機(jī)器人的程序運(yùn)行流程為:STM32開(kāi)始運(yùn)行時(shí),初始化系統(tǒng),通過(guò)A/D采集數(shù)據(jù),傳輸?shù)絆LED顯示電源電壓,通過(guò)操作者按鍵設(shè)置運(yùn)輸菜肴數(shù)目,并通過(guò)OLED顯示菜肴數(shù)據(jù),操作者開(kāi)始設(shè)置運(yùn)輸路線,“教導(dǎo)”送餐機(jī)器人送一遍,當(dāng)達(dá)到目的地,發(fā)送結(jié)束信號(hào),送餐機(jī)器人開(kāi)始重復(fù)剛才記憶的路線,達(dá)到重復(fù)運(yùn)輸菜肴的效果,如果途中有行人走過(guò),送餐機(jī)器人會(huì)停止運(yùn)輸,運(yùn)輸菜肴達(dá)到操作者設(shè)置的值,即送餐結(jié)束,其主程序流程圖如圖4所示。
電子羅盤在較高磁場(chǎng)的環(huán)境下,會(huì)出現(xiàn)角度較大誤差,導(dǎo)致復(fù)原路徑出現(xiàn)極大的誤差,導(dǎo)致送餐點(diǎn)不正確或者出現(xiàn)誤差,開(kāi)始運(yùn)行時(shí),進(jìn)行電子羅盤校準(zhǔn)來(lái)減少磁場(chǎng)帶來(lái)的干擾。我們?cè)O(shè)計(jì)一種運(yùn)輸方式,停止調(diào)整角度的方法來(lái)減少角度帶來(lái)的誤差,送餐機(jī)器人每一次停止,都會(huì)記錄停止角度,當(dāng)復(fù)原路徑時(shí),達(dá)到停止點(diǎn)都會(huì)調(diào)整角度,修正角度帶來(lái)的誤差。
由于送餐機(jī)器人的速度,或突然的停止或運(yùn)動(dòng),會(huì)導(dǎo)致菜肴搖動(dòng)或機(jī)器人出現(xiàn)摩擦位移,從而使機(jī)器人路徑出現(xiàn)錯(cuò)誤,為了減少轉(zhuǎn)彎摩擦力對(duì)機(jī)器人的影響,我們?cè)O(shè)計(jì)一種n形三段速度曲線,采用與電子羅盤角度相結(jié)合的減速方法,電子羅盤數(shù)據(jù)與記錄下的數(shù)據(jù)相差作為控制值,將小車速度降低,使得小車實(shí)現(xiàn)平穩(wěn)轉(zhuǎn)彎與平穩(wěn)啟動(dòng)/停止,從而達(dá)到穩(wěn)定運(yùn)行的效果。
4? 結(jié)語(yǔ)
針對(duì)循跡送餐機(jī)器人在送餐循跡過(guò)程中路徑偏差較大、修正時(shí)間比較長(zhǎng),不夠智能化,成本過(guò)高,在家庭布置循跡軌道過(guò)于麻煩、添加室內(nèi)定位系統(tǒng)價(jià)格過(guò)高、影響本來(lái)的家庭布局等問(wèn)題,我們提出一種基于STM32的示教型送餐機(jī)器人,是用“記憶”路線的方式來(lái)規(guī)劃路線,從而達(dá)到送餐的目的,我們的優(yōu)勢(shì)在于無(wú)需對(duì)環(huán)境進(jìn)行改變,送餐的路線隨時(shí)可以進(jìn)行修改,局限性大大減小。通過(guò)較高的精度來(lái)運(yùn)輸菜肴,檢測(cè)菜肴或環(huán)境的溫濕度,較好的人機(jī)交互界面等,使其成為家庭內(nèi)的好幫手,更加嵌入家庭生活,具有較好的推廣價(jià)值。
參考文獻(xiàn)
[1] 陳凱.智能送餐機(jī)器人控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].杭州電子科技大學(xué),2017.
[2] 朱彥.基于感性工學(xué)的家庭服務(wù)機(jī)器人外形設(shè)計(jì)研究[J].包裝工程,2015, 6(14):50-54.
[3] 付永忠.基于STM32的控制系統(tǒng)硬件與軟件設(shè)計(jì)[J]. 機(jī)械制造,2016(7):82-86.