施琛琛,熊凱陽
(1.航空工業(yè)直升機(jī)設(shè)計(jì)研究所,江西景德鎮(zhèn),333001;2.航空工業(yè)直升機(jī)設(shè)計(jì)研究所,天津,300000)
移動(dòng)機(jī)器人是一種具有高度智能化和自主性的機(jī)器人系統(tǒng),可以在不同的環(huán)境中完成各種任務(wù)。隨著移動(dòng)機(jī)器人技術(shù)的不斷發(fā)展,它們被越來越廣泛地應(yīng)用于許多領(lǐng)域,如工業(yè)、醫(yī)療、農(nóng)業(yè)和家庭服務(wù)等[1~2]。然而,要使移動(dòng)機(jī)器人真正具備實(shí)用價(jià)值,需要使其能夠感知周圍環(huán)境并作出相應(yīng)的反應(yīng)。因此,對(duì)于移動(dòng)機(jī)器人來說,感知能力是至關(guān)重要的。在移動(dòng)機(jī)器人的發(fā)展過程中,各種不同的感知方法已經(jīng)被提出和應(yīng)用于移動(dòng)機(jī)器人系統(tǒng)中,其中超聲波測(cè)距[3]和單目視覺[4]技術(shù)已經(jīng)被廣泛使用。本文提出一種新的方法,結(jié)合超聲波測(cè)距和單目視覺技術(shù),實(shí)現(xiàn)對(duì)目標(biāo)物的安全跟蹤。該方法不僅可以使移動(dòng)機(jī)器人跟蹤目標(biāo),還可以使其與目標(biāo)保持設(shè)定的距離,從而在保證安全性的同時(shí)提高跟蹤效率。本文將介紹該方法的設(shè)計(jì)和實(shí)現(xiàn),并對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行分析和討論。我們通過實(shí)驗(yàn)驗(yàn)證了該方法的有效性,結(jié)果表明使用該方法的機(jī)器人系統(tǒng)可以安全迅速地對(duì)目標(biāo)進(jìn)行跟蹤。本文的主要貢獻(xiàn)在于提出了一種新的移動(dòng)機(jī)器人跟蹤目標(biāo)的方法,并證明了其有效性,為進(jìn)一步提高移動(dòng)機(jī)器人的感知能力和實(shí)用價(jià)值提供了參考和借鑒。
本移動(dòng)機(jī)器人系統(tǒng)硬件主要有樹莓派、超聲波測(cè)距模塊、攝像頭、舵機(jī)、電機(jī)。系統(tǒng)硬件設(shè)計(jì)結(jié)構(gòu)圖如圖1 所示。
樹莓派是一種非常流行的單板計(jì)算機(jī),通常被用于控制和管理各種類型的機(jī)器人。該移動(dòng)機(jī)器人系統(tǒng)采用的是樹莓派4,擁有足夠的計(jì)算能力和內(nèi)存,可以實(shí)現(xiàn)各種復(fù)雜的算法和計(jì)算任務(wù)。通過連接樹莓派的GPIO 接口,可以方便地與其他外圍設(shè)備進(jìn)行通信和控制。
超聲波測(cè)距模塊是一種常見的傳感器,可以測(cè)量物體與傳感器之間的距離。該移動(dòng)機(jī)器人系統(tǒng)采用的是超聲波測(cè)距模塊,它能夠在10cm~4.5m 的范圍內(nèi)進(jìn)行距離測(cè)量。通過超聲波發(fā)射器向目標(biāo)物體發(fā)射超聲波并測(cè)量其反射時(shí)間,可以計(jì)算出目標(biāo)物體與傳感器之間的距離。這種測(cè)距模塊可以廣泛應(yīng)用于機(jī)器人的障礙物避障、目標(biāo)跟蹤和定位等方面。超聲波測(cè)距原理如圖2 所示。
圖2 超聲波測(cè)距原理
單目視覺攝像頭是一種常見的機(jī)器人傳感器,可以實(shí)現(xiàn)對(duì)周圍環(huán)境的感知和目標(biāo)物體的跟蹤。該移動(dòng)機(jī)器人系統(tǒng)采用的是單目視覺攝像頭,可以捕捉圖像和視頻,并通過計(jì)算機(jī)視覺算法實(shí)現(xiàn)目標(biāo)物體的跟蹤和姿態(tài)估計(jì)。通過使用攝像頭和超聲波測(cè)距模塊,可以實(shí)現(xiàn)對(duì)目標(biāo)物體的位置、距離和方向的準(zhǔn)確感知,從而為機(jī)器人的運(yùn)動(dòng)控制和路徑規(guī)劃提供重要的信息。
舵機(jī)是一種能夠控制角度的電機(jī),通常用于機(jī)器人的運(yùn)動(dòng)控制和姿態(tài)調(diào)整。該移動(dòng)機(jī)器人系統(tǒng)使用的舵機(jī)可以實(shí)現(xiàn)水平方向上的旋轉(zhuǎn)和俯仰角度的調(diào)整,從而實(shí)現(xiàn)對(duì)攝像頭的方向控制。這種舵機(jī)可以廣泛應(yīng)用于機(jī)器人的目標(biāo)跟蹤和姿態(tài)調(diào)整等方面。
電機(jī)是一種將電能轉(zhuǎn)換為機(jī)械能的設(shè)備,通常用于機(jī)器人的運(yùn)動(dòng)控制。該移動(dòng)機(jī)器人系統(tǒng)使用的電機(jī)可以控制機(jī)器人的前進(jìn)、后退、轉(zhuǎn)向等運(yùn)動(dòng)。通過電機(jī)的控制,可以實(shí)現(xiàn)對(duì)機(jī)器人的位置和運(yùn)動(dòng)軌跡的精確控制,從而實(shí)現(xiàn)對(duì)目標(biāo)物體的跟蹤和路徑規(guī)劃等功能。
通過系統(tǒng)硬件設(shè)計(jì)結(jié)構(gòu)圖及各硬件模塊的特性,可以得到硬件模塊的連接示意圖,硬件模塊連接示意圖如圖3 所示。
圖3 硬件模塊連接示意圖
該移動(dòng)機(jī)器人系統(tǒng)的軟件架構(gòu)主要分為三個(gè)部分:感知、決策和控制。其中,感知部分負(fù)責(zé)通過傳感器感知機(jī)器人周圍的環(huán)境,包括目標(biāo)物體的位置、距離和方向等信息;決策部分負(fù)責(zé)根據(jù)感知到的信息做出運(yùn)動(dòng)控制決策,包括確定機(jī)器人的運(yùn)動(dòng)軌跡和速度等;控制部分負(fù)責(zé)將運(yùn)動(dòng)控制命令轉(zhuǎn)換為電機(jī)和舵機(jī)的控制信號(hào),實(shí)現(xiàn)對(duì)機(jī)器人的運(yùn)動(dòng)控制和目標(biāo)跟蹤。
具體來說,該移動(dòng)機(jī)器人系統(tǒng)的軟件設(shè)計(jì)主要包括以下幾個(gè)模塊:
(1)感知模塊:主要負(fù)責(zé)獲取機(jī)器人所處環(huán)境的信息和目標(biāo)物體的特征,并將其轉(zhuǎn)化為數(shù)字信號(hào),以便后續(xù)的處理和分析。在該系統(tǒng)中,使用單目視覺攝像頭作為主要感知傳感器,獲取目標(biāo)物體的圖像信息。該系統(tǒng)使用了OpenCV庫中的圖像處理算法,對(duì)攝像頭獲取的圖像進(jìn)行處理,提取目標(biāo)物體的特征,如顏色、形狀等,進(jìn)而實(shí)現(xiàn)目標(biāo)物體的識(shí)別和跟蹤。同時(shí),該系統(tǒng)還使用超聲波測(cè)距模塊獲取目標(biāo)物體與機(jī)器人之間的距離信息,以便后續(xù)的決策和控制。
(2)決策模塊:主要負(fù)責(zé)根據(jù)感知信息和運(yùn)動(dòng)控制目標(biāo)生成機(jī)器人的運(yùn)動(dòng)控制策略和路徑規(guī)劃方案。在該系統(tǒng)中,決策部分采用基于狀態(tài)機(jī)的控制策略,對(duì)機(jī)器人進(jìn)行控制和調(diào)度。該系統(tǒng)還采用了路徑規(guī)劃算法,對(duì)機(jī)器人的運(yùn)動(dòng)路徑進(jìn)行規(guī)劃和優(yōu)化,以保證機(jī)器人能夠以最短的路徑、最快的速度到達(dá)目標(biāo)物體。
(3)控制模塊:主要負(fù)責(zé)將決策部分生成的運(yùn)動(dòng)控制命令轉(zhuǎn)化為機(jī)器人實(shí)際運(yùn)動(dòng)的控制信號(hào),并通過舵機(jī)和電機(jī)控制機(jī)器人的運(yùn)動(dòng)。在該系統(tǒng)中,使用舵機(jī)控制攝像頭的方向和姿態(tài),以便獲取更好的圖像信息。同時(shí),使用電機(jī)控制機(jī)器人的運(yùn)動(dòng)方向和速度,以實(shí)現(xiàn)對(duì)目標(biāo)物體的跟蹤和路徑規(guī)劃等功能。此外,該系統(tǒng)還使用了PID 控制算法,對(duì)機(jī)器人的運(yùn)動(dòng)進(jìn)行精確的控制和調(diào)整,以保證機(jī)器人能夠安全地跟蹤目標(biāo)物體。
(4)通信模塊:該模塊負(fù)責(zé)實(shí)現(xiàn)機(jī)器人與外部設(shè)備的通信和數(shù)據(jù)傳輸,包括通過WiFi 或藍(lán)牙等無線通信方式與遠(yuǎn)程控制設(shè)備進(jìn)行通信,以及通過串口或GPIO 等有線通信方式與樹莓派等主控板進(jìn)行通信。
在實(shí)現(xiàn)上述模塊的基礎(chǔ)上,該移動(dòng)機(jī)器人系統(tǒng)的軟件設(shè)計(jì)還涉及算法實(shí)現(xiàn)、運(yùn)動(dòng)規(guī)劃。
綜上所述,感知、決策和控制三部分是該移動(dòng)機(jī)器人系統(tǒng)中非常重要的組成部分,它們協(xié)同工作,實(shí)現(xiàn)了對(duì)目標(biāo)物體的安全跟蹤和路徑規(guī)劃等功能。同時(shí),該系統(tǒng)采用了先進(jìn)的技術(shù)和算法,具有較高的實(shí)用價(jià)值和應(yīng)用前景。系統(tǒng)軟件設(shè)計(jì)的整體架構(gòu)圖如圖4 所示。
圖4 軟件架構(gòu)
要結(jié)合超聲波測(cè)距和單目視覺來讓移動(dòng)機(jī)器人在和目標(biāo)保持一定的距離下安全地跟蹤目標(biāo),需要一個(gè)算法設(shè)計(jì)。具體算法介紹如下:
首先我們需要設(shè)置一個(gè)移動(dòng)機(jī)器人和跟蹤目標(biāo)物之間需要保持的距離。超聲波測(cè)距模塊周期測(cè)量移動(dòng)機(jī)器人和跟蹤目標(biāo)物之間的距離,控制電機(jī)使移動(dòng)機(jī)器人和跟蹤目標(biāo)物之間的距離為前面設(shè)定的距離。
攝像頭通過視頻數(shù)據(jù)和目標(biāo)識(shí)別算法來識(shí)別目標(biāo)物在畫面中的位置,獲取到目標(biāo)物在畫面中的位置后,就可以控制舵機(jī)來旋轉(zhuǎn)攝像頭,使目標(biāo)物在畫面中的位置在正中央。
通過這樣一個(gè)算法設(shè)計(jì),我們就可以實(shí)現(xiàn)在跟蹤目標(biāo)物的同時(shí),和目標(biāo)物保持一個(gè)設(shè)定的距離。該算法設(shè)計(jì)的流程如圖5 所示。
圖5 算法設(shè)計(jì)流程
當(dāng)然,OpenCV 庫是一款非常強(qiáng)大的計(jì)算機(jī)視覺庫,提供了豐富的圖像處理和計(jì)算機(jī)視覺算法,包括圖像預(yù)處理、特征提取、目標(biāo)檢測(cè)、目標(biāo)跟蹤等。在該移動(dòng)機(jī)器人系統(tǒng)中,主要使用了OpenCV 庫中的圖像預(yù)處理和目標(biāo)跟蹤算法。
圖像預(yù)處理是計(jì)算機(jī)視覺領(lǐng)域中非常重要的一個(gè)環(huán)節(jié),其目的是對(duì)原始圖像進(jìn)行預(yù)處理和優(yōu)化,以便后續(xù)的特征提取和目標(biāo)識(shí)別。在該系統(tǒng)中,主要使用了OpenCV 庫中的色彩空間轉(zhuǎn)換、圖像濾波和二值化等圖像預(yù)處理算法。其中,色彩空間轉(zhuǎn)換算法可以將RGB 顏色空間轉(zhuǎn)換為HSV 顏色空間,以便更好地識(shí)別不同顏色的目標(biāo)物體;圖像濾波算法可以去除圖像中的噪聲和干擾,提高目標(biāo)識(shí)別的準(zhǔn)確性;二值化算法可以將圖像轉(zhuǎn)換為黑白二值圖像,方便后續(xù)的輪廓檢測(cè)和目標(biāo)跟蹤。
目標(biāo)跟蹤是該系統(tǒng)中非常重要的一個(gè)環(huán)節(jié),其目的是對(duì)目標(biāo)物體進(jìn)行跟蹤和定位,以便后續(xù)的決策和控制。在該系統(tǒng)中,主要使用了OpenCV 庫中的基于顏色和形狀的目標(biāo)跟蹤算法。其中,基于顏色的目標(biāo)跟蹤算法可以通過顏色空間轉(zhuǎn)換和色彩分割等技術(shù),實(shí)現(xiàn)對(duì)目標(biāo)物體的顏色識(shí)別和跟蹤;基于形狀的目標(biāo)跟蹤算法可以通過輪廓檢測(cè)和形狀匹配等技術(shù),實(shí)現(xiàn)對(duì)目標(biāo)物體的形狀識(shí)別和跟蹤。通過這些目標(biāo)跟蹤算法,可以實(shí)現(xiàn)對(duì)目標(biāo)物體的穩(wěn)定跟蹤和定位,為后續(xù)的決策和控制提供必要的信息。
綜上所述,OpenCV 庫是計(jì)算機(jī)視覺領(lǐng)域中非常重要的一款開源庫,提供了豐富的圖像處理和計(jì)算機(jī)視覺算法,可以實(shí)現(xiàn)對(duì)目標(biāo)物體的識(shí)別、跟蹤和定位等功能。在該移動(dòng)機(jī)器人系統(tǒng)中,OpenCV 庫的應(yīng)用為機(jī)器人的感知和控制提供了強(qiáng)大的技術(shù)支持。
在本次實(shí)驗(yàn)中,我們使用了樹莓派、超聲波測(cè)距模塊、攝像頭、舵機(jī)和電機(jī)等硬件,設(shè)計(jì)了一種移動(dòng)機(jī)器人系統(tǒng),旨在通過使用超聲波測(cè)距和單目視覺跟蹤,實(shí)現(xiàn)對(duì)目標(biāo)物的安全跟蹤。實(shí)驗(yàn)的目標(biāo)是驗(yàn)證該方法的有效性,同時(shí)評(píng)估系統(tǒng)在目標(biāo)跟蹤中的表現(xiàn)。
我們通過對(duì)機(jī)器人進(jìn)行調(diào)試和實(shí)驗(yàn),發(fā)現(xiàn)使用超聲波測(cè)距和單目視覺跟蹤的方法,能夠?qū)崿F(xiàn)對(duì)目標(biāo)物體的安全跟蹤。
基于超聲波測(cè)距和單目視覺跟蹤的移動(dòng)機(jī)器人系統(tǒng)在實(shí)際測(cè)試中的效果圖如圖6 和圖7 所示。
圖6 單目視覺跟蹤效果示意圖
圖7 超聲波測(cè)距和單目視覺跟蹤效果示意圖
在實(shí)驗(yàn)中,機(jī)器人能夠準(zhǔn)確測(cè)量目標(biāo)物體的距離,并能夠通過單目視覺跟蹤實(shí)現(xiàn)對(duì)目標(biāo)物體的追蹤。在跟蹤過程中,機(jī)器人能夠和目標(biāo)保持設(shè)定的距離,避免了碰撞和損壞的風(fēng)險(xiǎn)。此外,該系統(tǒng)還具有較高的穩(wěn)定性和精度,能夠在復(fù)雜的環(huán)境中穩(wěn)定運(yùn)行。
我們將使用超聲波測(cè)距和單目視覺跟蹤的方法與其他方法進(jìn)行了比較,發(fā)現(xiàn)該方法具有許多優(yōu)點(diǎn)。首先,使用超聲波測(cè)距和單目視覺跟蹤的方法可以在不需要復(fù)雜傳感器和算法的情況下,實(shí)現(xiàn)對(duì)目標(biāo)物體的追蹤。其次,該方法具有較高的穩(wěn)定性和精度,能夠適應(yīng)不同的環(huán)境和場(chǎng)景。最后,使用該方法可以避免機(jī)器人和目標(biāo)物體的碰撞和損壞的風(fēng)險(xiǎn),提高了系統(tǒng)的安全性和可靠性。
在實(shí)驗(yàn)過程中,我們遇到了一些問題,例如硬件故障、軟件問題等。通過對(duì)問題的分析和解決,我們最終解決了這些問題,并保證了實(shí)驗(yàn)的順利進(jìn)行。例如,在實(shí)驗(yàn)中發(fā)現(xiàn)攝像頭的圖像質(zhì)量不夠清晰,導(dǎo)致機(jī)器人不能夠準(zhǔn)確地跟蹤目標(biāo)物體。我們通過更換高質(zhì)量的攝像頭解決了這個(gè)問題,提高了系統(tǒng)的準(zhǔn)確性和穩(wěn)定性。
當(dāng)今社會(huì),機(jī)器人技術(shù)的應(yīng)用越來越廣泛,而機(jī)器人的目標(biāo)跟蹤技術(shù)是其中的重要研究領(lǐng)域之一。本次實(shí)驗(yàn)中,我們?cè)O(shè)計(jì)并實(shí)現(xiàn)了一種基于超聲波測(cè)距和單目視覺跟蹤的移動(dòng)機(jī)器人系統(tǒng),旨在實(shí)現(xiàn)對(duì)目標(biāo)物體的安全跟蹤。
通過對(duì)實(shí)驗(yàn)的調(diào)試和分析,我們發(fā)現(xiàn)使用超聲波測(cè)距和單目視覺跟蹤的方法能夠?qū)崿F(xiàn)對(duì)目標(biāo)物體的跟蹤,并具有較高的穩(wěn)定性和精度。在跟蹤過程中,機(jī)器人能夠準(zhǔn)確地測(cè)量目標(biāo)物體的距離,并通過單目視覺跟蹤實(shí)現(xiàn)對(duì)目標(biāo)物體的追蹤。此外,該系統(tǒng)還具有避免碰撞和損壞的風(fēng)險(xiǎn)的特點(diǎn),提高了系統(tǒng)的安全性和可靠性。
與其他方法相比,該方法具有簡(jiǎn)單、可靠、實(shí)用等優(yōu)點(diǎn),不需要復(fù)雜的傳感器和算法,適用于不同的環(huán)境和場(chǎng)景中的移動(dòng)機(jī)器人目標(biāo)跟蹤任務(wù)。在機(jī)器人導(dǎo)航、安防監(jiān)控、智能家居等領(lǐng)域,該方法都有著廣泛的應(yīng)用前景,能夠?qū)崿F(xiàn)人機(jī)交互、自主導(dǎo)航、智能化管理等目標(biāo),提高生產(chǎn)效率和生活質(zhì)量。因此,本次實(shí)驗(yàn)的結(jié)果具有實(shí)際應(yīng)用價(jià)值和推廣意義。