張占勝 王寧佳 李峰 李嘯林
摘要:本文設(shè)計(jì)適合復(fù)雜環(huán)境的移動(dòng)機(jī)器人定位系統(tǒng),機(jī)器人采用STM32F103單片機(jī)為主控芯片,使用以慣性傳感器MPU6050為主的定位模塊,完成機(jī)器人硬件系統(tǒng)的設(shè)計(jì)和硬件電路的搭建,并結(jié)合硬件部分完成機(jī)器人算法設(shè)計(jì),建立機(jī)器人的實(shí)時(shí)行進(jìn)狀態(tài)控制模型。最終機(jī)器人可在復(fù)雜環(huán)境下的進(jìn)行平面定位導(dǎo)航,很好的解決地面上工作的機(jī)器人對(duì)位置精度要求較高的問題。
關(guān)鍵詞:慣性傳感器;復(fù)雜環(huán)境;STM32F103;平面定位
0 ?引言
近年來,隨著工業(yè)的不斷發(fā)展,移動(dòng)機(jī)器人已經(jīng)在工業(yè)、軍事、生活等各方面得到廣泛的運(yùn)用。尤其是在一些不適宜人類進(jìn)入的復(fù)雜環(huán)境下需求很大,同時(shí)對(duì)機(jī)器人位置的檢測(cè)精度,以及行走的航線精度也有了進(jìn)一步的要求,因此研究適合復(fù)雜環(huán)境的移動(dòng)定位機(jī)器人很有應(yīng)用價(jià)值。
本文研究的機(jī)器人具有定位準(zhǔn)確,成本低廉的優(yōu)點(diǎn)。本研究利用慣性傳感器采用主動(dòng)控制技術(shù),通過對(duì)機(jī)器人建立坐標(biāo)系運(yùn)動(dòng)加速度和角度采集和計(jì)算來確定移動(dòng)機(jī)器人的位置,能夠滿足在一系列有范圍的場(chǎng)地內(nèi)或者一些具有潛在危險(xiǎn)而不適合人類親自進(jìn)入的環(huán)境中的工作需求。
1 ?硬件設(shè)計(jì)
本設(shè)計(jì)主要的控制系統(tǒng)主要包括供電模塊,主控模塊,平面定位模塊,電機(jī)驅(qū)動(dòng)模塊以及和上位機(jī)相連接的串口模塊,整體設(shè)計(jì)結(jié)構(gòu)如圖1所示。
主控模塊使用意法半導(dǎo)體(ST)公司出品的STM32F103系列單片機(jī),其內(nèi)核是Cortex-M3,該內(nèi)核的優(yōu)點(diǎn)是高性能、低功耗、低價(jià)格。
供電模塊主要服務(wù)于三個(gè)部分——主控模塊3.3V,定位系統(tǒng)5V,電機(jī)驅(qū)動(dòng)12V。在這里我們?cè)O(shè)計(jì)了一個(gè)穩(wěn)壓電源電路(如圖2),用到的是LM1117芯片,LM1117是一個(gè)低壓差電壓調(diào)節(jié)器系列,可通過2個(gè)外部電阻可實(shí)現(xiàn)1.25~13.8V輸出電壓范圍。
平面定位模塊主要用于慣性導(dǎo)航,平面定位,集成了慣性傳感器(MPU6050)——陀螺儀、加速度計(jì)、編碼器等多種傳感器(如圖3)。通過濾波、融合等方法,可以解算出定位系統(tǒng)中心在其坐標(biāo)系中的位置姿態(tài)信息。
MPU6050為全球首例整合性6軸運(yùn)動(dòng)處理組件,相較于多組件方案,免除了組合陀螺儀與加速器時(shí)間軸之差的問題,減少了大量的封裝空間。
2 ?軟件設(shè)計(jì)
軟件部分是基于FreeRTOS嵌入式實(shí)時(shí)操作系統(tǒng)的三層結(jié)構(gòu)——硬件驅(qū)動(dòng)層、操作系統(tǒng)層和應(yīng)用功能層。硬件驅(qū)動(dòng)層,其主要負(fù)責(zé)各個(gè)硬件模塊和通信接口的配置與讀寫程序。操作系統(tǒng)層為開源的機(jī)器人操作系統(tǒng)(FreeRTOS)。FreeRTOS系統(tǒng)可以提供任務(wù)管理、時(shí)間管理、信號(hào)量、消息隊(duì)列、內(nèi)存管理等功能,可滿足本研究的需要。應(yīng)用功能層,機(jī)器人的所有基礎(chǔ)功能都在這一層實(shí)現(xiàn),負(fù)責(zé)調(diào)用驅(qū)動(dòng)層程序和操作系統(tǒng)接口完成外設(shè)數(shù)據(jù)讀取,進(jìn)而實(shí)現(xiàn)數(shù)據(jù)濾波、地圖構(gòu)建、機(jī)器人導(dǎo)航、機(jī)器人定位等。軟件流程圖如圖4所示。
3 ?慣性導(dǎo)航定位的實(shí)現(xiàn)
適合復(fù)雜環(huán)境的移動(dòng)機(jī)器人的研究采用慣性導(dǎo)航的定位方式實(shí)現(xiàn)準(zhǔn)確的二維平面空間機(jī)器人相對(duì)定位。實(shí)現(xiàn)步驟如下:
①系統(tǒng)初始化。
②初始化完成后,采集用于運(yùn)動(dòng)控制器件定位原始數(shù)據(jù);進(jìn)行原始數(shù)據(jù)的穩(wěn)定性處理,主要包含有濾波處理、多軸之間去交叉干擾處理、溫度補(bǔ)償處理等。
③進(jìn)行定位算法,根據(jù)三軸陀螺儀原始數(shù)據(jù)以及上一定位點(diǎn)位置數(shù)據(jù)計(jì)算出運(yùn)動(dòng)控制器件目前定位點(diǎn)相對(duì)于上一定位點(diǎn)的相對(duì)位移。
④利用加速度計(jì)的得到的數(shù)據(jù),計(jì)算目前運(yùn)動(dòng)控制器件的姿態(tài)角,獲得運(yùn)動(dòng)控制器件當(dāng)前定位點(diǎn)絕對(duì)位置的相對(duì)位移誤差補(bǔ)償量。
⑤根據(jù)計(jì)算獲得的相對(duì)位移誤差補(bǔ)償量,補(bǔ)償步驟③得到的運(yùn)動(dòng)控制器件目前定位點(diǎn)相對(duì)于上一定位點(diǎn)的相對(duì)位移,獲得運(yùn)動(dòng)控制器件當(dāng)前定位點(diǎn)絕對(duì)位置數(shù)據(jù)。
4 ?結(jié)束語
本文是在基于STM32單片機(jī)的開發(fā)平臺(tái)上對(duì)適合復(fù)雜環(huán)境的移動(dòng)定位機(jī)器人進(jìn)行了硬件設(shè)計(jì)和軟件調(diào)試。在現(xiàn)場(chǎng)實(shí)驗(yàn)中,本機(jī)器人能夠反饋精確的位置信息,實(shí)現(xiàn)有效安全的路徑規(guī)劃,具有良好的應(yīng)用前景。
參考文獻(xiàn):
[1]郭振昊.室內(nèi)服務(wù)機(jī)器人定位和導(dǎo)航方案設(shè)計(jì)與實(shí)現(xiàn)[D].電子科技大學(xué),2018.
[2]陳延國,于澎,高振東,張仁彥,王啟龍.自主移動(dòng)機(jī)器人定位方法的研究現(xiàn)狀[J].應(yīng)用科技,2002(11):41-43.
[3]徐勝生.室內(nèi)服務(wù)機(jī)器人定位與導(dǎo)航的研究和實(shí)現(xiàn)[D].合肥工業(yè)大學(xué),2012.
[4]陳贏峰.大規(guī)模復(fù)雜場(chǎng)景下室內(nèi)服務(wù)機(jī)器人導(dǎo)航的研究[D].中國科學(xué)技術(shù)大學(xué),2017.
[5]閆冬.基于加速度計(jì)的無陀螺慣性導(dǎo)航系統(tǒng)的研究[D].吉林大學(xué)碩士學(xué)位論文,2002.
[6]王志文,郭戈.移動(dòng)機(jī)器人導(dǎo)航技術(shù)現(xiàn)狀與展望[J].機(jī)器人,2003,25(5):470-474.
基金項(xiàng)目:“2019年遼寧省大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃”資助項(xiàng)目, 項(xiàng)目編號(hào):201910149015。