陸瀚元 李軍紅 劉景祺 周宇呈 賴(lài)建帆 鄧學(xué)智
摘要:隨著科技的飛速發(fā)展,機(jī)器人在人們的生產(chǎn)生活中是常見(jiàn)的,同樣在家政服務(wù)行業(yè)機(jī)器人的研究也很深入。目前,市場(chǎng)上的家政服務(wù)機(jī)器人功能較為基礎(chǔ),且傳感器的種類(lèi)較為單一?;诖?,本文提出了一款基于ROS操作系統(tǒng)的家政智能服務(wù)機(jī)器人,本機(jī)器人配有激光雷達(dá)和opencv深度攝像頭等傳感器,本機(jī)器人的操作系統(tǒng)是樹(shù)莓派主控板結(jié)合STM32單片機(jī),同時(shí)配有機(jī)械臂和吸塵風(fēng)扇等,在做到清潔灰塵的同時(shí),能對(duì)一些垃圾進(jìn)行識(shí)別并且撿取,有效為人們提供服務(wù)。
關(guān)鍵詞:ROS;激光雷達(dá);opencv深度攝像頭;樹(shù)莓派;STM32單片機(jī)
0引言
在經(jīng)濟(jì)和科技高速發(fā)展的今天,隨著機(jī)器人性能的不斷提高,移動(dòng)機(jī)器人應(yīng)用范圍逐漸擴(kuò)大。它不僅廣泛被應(yīng)用于工業(yè)、農(nóng)業(yè)、醫(yī)療、服務(wù)等行業(yè),還不斷地小型化、居家化、輕量化和物聯(lián)互聯(lián)化,逐漸走入普通消費(fèi)者市場(chǎng)?,F(xiàn)如今,為了提高人們生活的舒適度,家政機(jī)器人的興起為改善人們的家庭居住條件提供的有力的幫助。
1研究背景
家政機(jī)器人的相關(guān)概念2002年前后被提出,當(dāng)時(shí)iRobot公司發(fā)布了Roomba真空保潔機(jī)器人,這款造型類(lèi)似飛盤(pán)的產(chǎn)品售出了600多萬(wàn)臺(tái)??梢哉f(shuō)Roomba真空保潔機(jī)器人為當(dāng)下的掃地機(jī)器人等家政機(jī)器人的出現(xiàn)和發(fā)展奠定了基礎(chǔ)框架。直到2010年后,隨著各種高精度算法與傳感器的產(chǎn)業(yè)化,加之微型處理器的性能的迅速提升,使得家政機(jī)器人的發(fā)展速度迅速提高,形成了“產(chǎn)品更新+迭代”的產(chǎn)業(yè)模式。并且隨著互聯(lián)網(wǎng)與物聯(lián)網(wǎng)相關(guān)產(chǎn)業(yè)的發(fā)展,家政機(jī)器人在公眾面前的曝光度越高,以及產(chǎn)品的使用門(mén)檻逐漸降低,家政機(jī)器人的發(fā)展勢(shì)頭依然強(qiáng)勁。
2環(huán)境地圖構(gòu)建與系統(tǒng)識(shí)別
2.1基于柵格法的環(huán)境地圖構(gòu)建
對(duì)移動(dòng)機(jī)器人的工作環(huán)境進(jìn)行高精度的感知和建模,是有利于移動(dòng)機(jī)器人在工作環(huán)境中實(shí)現(xiàn)自主工作。本研究使用激光雷達(dá)作為采集環(huán)境信息和識(shí)別障礙物的傳感器,但是由于激光雷達(dá)傳感器在工作期間測(cè)量得到的數(shù)據(jù)會(huì)受到噪聲的影響,為了解決這一問(wèn)題,可以引入占據(jù)率(Occupancy)概念。在柵格地圖中,用P這個(gè)點(diǎn)表示占有狀態(tài)的概率,存在兩種情況:第一種是有障礙物的狀態(tài)P(s=1);另一種是空閑的狀態(tài)P(s=0)。因?yàn)榇嬖跀?shù)據(jù)的多樣性,所以使用兩個(gè)概率的比值Odd(s)作為該點(diǎn)的狀態(tài),即:
由上式(1.1)可以看出,Odd(s)的值越大,表示柵格占據(jù)率越大,即有障礙物的柵格更多。
2.2 OpenCV攝像頭系統(tǒng)識(shí)別研究
OpenCV是一個(gè)基于Apache2.0許可(開(kāi)源)發(fā)行的跨平臺(tái)計(jì)算機(jī)視覺(jué)和機(jī)器學(xué)習(xí)軟件庫(kù),可以運(yùn)行在Linux、Windows、Android和Mac OS操作系統(tǒng)上。它輕量級(jí)而且高效——由一系列 C 函數(shù)和少量 C++類(lèi)構(gòu)成,同時(shí)提供了Python、Ruby、MATLAB等語(yǔ)言的接口,實(shí)現(xiàn)了圖像處理和計(jì)算機(jī)視覺(jué)方面的很多通用算法。
OpenCV用C++語(yǔ)言編寫(xiě),它的主要接口也是C++語(yǔ)言,但是依然保留了大量的C語(yǔ)言接口。該庫(kù)也有大量的Python、Java and MATLAB/OCTAVE的接口。這些語(yǔ)言的API接口函數(shù)可以通過(guò)在線文檔獲得。如今也提供對(duì)于C#、Ch、Ruby的支持。
3路徑規(guī)劃
移動(dòng)機(jī)器人在進(jìn)行移動(dòng)的時(shí)候,光是有導(dǎo)航定位是遠(yuǎn)遠(yuǎn)不夠的,從起點(diǎn)到達(dá)終點(diǎn)這個(gè)過(guò)程需要規(guī)劃好一個(gè)好的路徑,它可以有效的幫助機(jī)器人減少在路徑上可能消耗的資源,讓機(jī)器人能夠安全穩(wěn)定的到達(dá)目的地。但是環(huán)境狀況出現(xiàn)一定的變化的話,機(jī)器人并不能對(duì)環(huán)境進(jìn)行相對(duì)于的調(diào)整,是一種離線式的路徑規(guī)劃方法。
A*算法能夠保證找到一條最短路徑,該算法可以在狀態(tài)空間中對(duì)可行位置進(jìn)行評(píng)估,從而得到最優(yōu)的位置,再如此反復(fù),以此下去直到搜索到目標(biāo)地點(diǎn)。這樣來(lái)說(shuō)可以節(jié)省大量的無(wú)謂的搜索路徑,提高了效率。A*算法的評(píng)價(jià)函數(shù)如下所示:
f(n)=g(n)+h(n)(3.2)
在公式(3.2)中,f(n)代表移動(dòng)機(jī)器人起始位置到目標(biāo)位置綜合預(yù)估的軌跡數(shù)值,g(n)代表起始位置到機(jī)器人所在位置的移動(dòng)距離,h(n)代表當(dāng)節(jié)點(diǎn)到目標(biāo)位置行走行走距離簡(jiǎn)單的數(shù)值。
4實(shí)驗(yàn)結(jié)果與分析
首先通過(guò)移動(dòng)機(jī)器人建立局部地圖,局部地圖的建立只需要讓移動(dòng)機(jī)器人在某一點(diǎn)進(jìn)行激光雷達(dá)掃描。其中,灰白色代表已知的安全區(qū)域,深綠色則代表未知的地圖,黑色代表掃描到的障礙物,紅色的點(diǎn)云代表實(shí)時(shí)掃描到的障礙物。
對(duì)移動(dòng)機(jī)器人進(jìn)行控制使其進(jìn)行移動(dòng)多方位移動(dòng),并且在移動(dòng)過(guò)程中還要伴隨著不斷地激光雷達(dá)掃描環(huán)境,掃描出來(lái)的全局地圖如圖6(a)所示:
由圖6(a)可以看出,灰白色則代表移動(dòng)機(jī)器人所掃描到的全局區(qū)域,對(duì)比圖6(b)可知,激光雷達(dá)建圖與真實(shí)實(shí)驗(yàn)室環(huán)境吻合。其中灰白色區(qū)域中黑色的區(qū)域則代表障礙物(即桌椅等物品),故機(jī)器人在移動(dòng)過(guò)程中需要避開(kāi)黑色區(qū)域。
5結(jié)語(yǔ)
近年來(lái),隨著我國(guó)的經(jīng)濟(jì)實(shí)力發(fā)展,以及人民群眾對(duì)美好生活的向往,家政機(jī)器人已經(jīng)成為智能家居中的熱門(mén)種類(lèi)。只需在客戶端上發(fā)出指令,就可以完成家中的打掃。而且在未來(lái)的智能化的潮流趨勢(shì)下,移動(dòng)機(jī)器人必然會(huì)成為解放人們雙手的主要選擇。038C597C-F774-40C1-9DC1-F6FE2E5B0876