新聞中心

EEPW首頁 > 機(jī)器人 > 設(shè)計應(yīng)用 > 基于Jetson TX2視覺識別的取放一體平衡機(jī)器人

基于Jetson TX2視覺識別的取放一體平衡機(jī)器人

作者:王錦璟1,武志濤1*,馬雨楊2(1.遼寧科技大學(xué)電子與信息工程學(xué)院,遼寧鞍山 114000;2.遼寧科技大學(xué)機(jī)械工程與自動化學(xué)院,遼寧鞍山 114000) 時間:2023-08-20 來源:電子產(chǎn)品世界 收藏
編者按:為了解決在復(fù)雜環(huán)境下人工操作難以實現(xiàn)自動化、智能化和精確性的問題,設(shè)計了一種具有自平衡功能的取放一體平衡機(jī)器人,并開發(fā)了其軟硬件系統(tǒng)。該機(jī)器人利用OpenCV在NVIDIA Jetson TX2平臺上進(jìn)行圖像處理,從而能夠識別其周圍的環(huán)境,并根據(jù)目標(biāo)參數(shù)實現(xiàn)自動控制平衡機(jī)器人的運動。機(jī)器人的底盤采用STM32F4系列作為主控芯片,能夠快速地獲取電機(jī)等數(shù)據(jù),并進(jìn)行實時的PID控制等處理。

基金項目:*遼寧科技大學(xué)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計劃專項經(jīng)費資助

本文引用地址:http://www.butianyuan.cn/article/202308/449751.htm

技術(shù)是當(dāng)前發(fā)展最快的領(lǐng)域之一,已經(jīng)廣泛應(yīng)用于物流、制造、醫(yī)療衛(wèi)生和社會服務(wù)等多個領(lǐng)域。針對在復(fù)雜環(huán)境下人工操作難以實現(xiàn)自動化、智能化和精確性的問題,本項目開發(fā)了一款基于Jetson TX2的取放一體。該采用高性能的Jetson TX2作為硬件平臺,可實現(xiàn)高速圖像處理和計算。機(jī)器人采用現(xiàn)代機(jī)器人技術(shù)的機(jī)械結(jié)構(gòu)和電氣控制,包括兩輪和機(jī)械臂等。軟件系統(tǒng)包括圖像處理、運動控制和用戶界面等模塊,通過自主感知、控制和運動規(guī)劃等功能,該機(jī)器人能夠精準(zhǔn)地捕獲并放置物品。本項目在Jetson TX2平臺上搭建了機(jī)器視覺開發(fā)環(huán)境,并利用等技術(shù)實現(xiàn)了本地端圖形方式的信息傳遞功能。針對機(jī)器人運動過程中的控制,采用了PID 控制算法。

1 系統(tǒng)設(shè)計

1.1 系統(tǒng)框架

本機(jī)器人的運動控制系統(tǒng)采用F407IGH6 作為主控,該主控采用高性能的ARM Cortex-M4 處理器,能夠有效地處理高速數(shù)據(jù)和復(fù)雜算法。該主控存儲容量可擴(kuò)展,可儲存大量程序代碼和數(shù)據(jù),確保系統(tǒng)具有快速響應(yīng)和高效性能。此外,該主控還擁有多種外設(shè)和通信接口,支持機(jī)器人系統(tǒng)的多樣化和復(fù)雜功能。該系列主控還具有低功耗特性和較高性價比,易于獲取開發(fā)工具。

另外,機(jī)器人的系統(tǒng)采用Jetson TX2,該系統(tǒng)采用基于Pascal 的多處理器GPU 架構(gòu)和8 核ARM64 CPU,可提供超過1TFLOPS 的高性能計算能力,支持多種編程模型,包括神經(jīng)網(wǎng)絡(luò)、圖像處理和流媒體編碼等,還支持多種傳感器、控制器和執(zhí)行器的連接,并配備了豐富的開發(fā)工具和樣例,方便開發(fā)人員進(jìn)行機(jī)器人應(yīng)用的復(fù)雜開發(fā)。綜上所述,Jetson TX2 在本項目中發(fā)揮了至關(guān)重要的作用,特別是在實現(xiàn)物體識別和信息獲取方面。

1.2 控制流程

機(jī)器人啟動后,機(jī)器人將開始采集環(huán)境圖像,并通過攝像頭將圖像傳遞給圖像處理模塊(TX2)。該模塊將使用圖像處理技術(shù)對圖像進(jìn)行處理,然后將處理后的數(shù)據(jù)傳遞給運動控制模塊。在數(shù)據(jù)處理過程中,運動控制模塊將使用PID 控制算法來監(jiān)控機(jī)器人的運動狀態(tài)。最終,在運動控制模塊的規(guī)劃和控制下,機(jī)器人將達(dá)到預(yù)定的目標(biāo)位置,并利用機(jī)械臂控制來抓取目標(biāo)物體并將其存儲??刂屏鞒倘鐖D1 所示。

image.png

圖1 控制流程

1.3 系統(tǒng)模塊

1.3.1 視覺模塊

為了處理視覺系統(tǒng)采集到的物體圖像和輸出檢測結(jié)果,本項目采用了Jetson TX2 和KS2A543 高速攝像頭。

1.3.2 平衡控制模塊

使用F407IGH6 作為主控,通過CAN 總線獲取電機(jī)信息和參數(shù),采用算法實現(xiàn)多重閉環(huán),以控制輪組電機(jī)、YAW 軸電機(jī)和PITCH 軸電機(jī)。

2 硬件設(shè)計

2.1 硬件選型

為了提高機(jī)器人的性能,本項目采用了不同的硬件模塊。其中,Jetson TX2 作為視覺系統(tǒng)的處理器,用于處理物體圖片并輸出檢測結(jié)果;F407IGH6 作為底盤和云臺的主控,負(fù)責(zé)底盤運動控制和云臺底盤信息傳遞;陀螺儀選用單片機(jī)內(nèi)置的BMI088。此外,為了實現(xiàn)高效穩(wěn)定的動力輸出,輪組電機(jī)和YAW 軸電機(jī)均采用大疆M3508 電機(jī),具備有感FOC 控制,可提供穩(wěn)定的扭矩,無論轉(zhuǎn)速高低都能保持平穩(wěn)的動力輸出,從而使得機(jī)器人具有快速響應(yīng)和穩(wěn)定性能。而根據(jù)實際需求,PITCH 軸電機(jī)則選用大疆M2006 電機(jī),以具備控制精度高、輸出功率大、體積小等特點。云臺除了部署Jetson TX2 以外,還有控制機(jī)械臂的PITCH 軸電機(jī)、YAW 軸電機(jī)和輪組電機(jī)以及放置于機(jī)器人底盤上的STM32 主控。底盤和云臺之間通過CAN 通信進(jìn)行交互。硬件整體連接框圖如圖2。

1692475838563684.png

圖2 硬件整體連接圖

3 軟件設(shè)計

3.1 軟件架構(gòu)

本項目選用了TX2 作為嵌入式平臺,搭載Ubuntu16.04 系統(tǒng)和3.4 等軟件構(gòu)建高效運算平臺。通過利用攝像頭和TX2 解算數(shù)據(jù)模型,本項目可獲取空間圖像信息,并通過UART 串口通信將信息傳輸至STM32 單片機(jī)。同時,利用TX2 進(jìn)行深度圖像的像素級評估,對目標(biāo)物體構(gòu)建物體模型并獲取其特征點。接著,通過TX2 進(jìn)行解算判斷,縮小機(jī)器人和目標(biāo)物體之間的距離。此外,在Jetson TX2 平臺上構(gòu)建了機(jī)器視覺開發(fā)環(huán)境,以實現(xiàn)基于 等技術(shù)的本地端圖形方式信息傳遞功能。

3.2 算法

首先,需要使用標(biāo)注工具對圖像中的目標(biāo)物體進(jìn)行標(biāo)記,并將其轉(zhuǎn)換為YOLO 模型所需的格式,包括圖片和標(biāo)注文件。由于Jetson TX2 的硬件資源有限,因此可以使用預(yù)訓(xùn)練的模型(如COCO、VOC 等)進(jìn)行微調(diào)訓(xùn)練,逐漸增加Batch Size 以提高性能和收斂速度。同時,采用數(shù)據(jù)增強(qiáng)方法可以增加訓(xùn)練數(shù)據(jù),提高模型的準(zhǔn)確性。訓(xùn)練完成后,需要對其進(jìn)行測試以評估其準(zhǔn)確性和性能??梢酝ㄟ^使用測試集對YOLO 模型進(jìn)行測試,并觀察其輸出結(jié)果,從而檢查YOLO 算法是否能夠準(zhǔn)確地檢測目標(biāo)物體。最后,將訓(xùn)練好的YOLO模型部署到Jetson TX2 上,并使用YOLO 提供的API進(jìn)行目標(biāo)檢測。為了檢測圖像中的目標(biāo)物體,本項目可以使用OpenCV 對圖像文件進(jìn)行讀取和檢測結(jié)果的顯示。一旦檢測到目標(biāo)物體,可以獲取其位置、類別等信息。在確定目標(biāo)物體后,可以利用OpenCV 庫進(jìn)一步處理物體,如確定其顏色和尺寸等信息。

3.3 平衡控制算法

為了實現(xiàn)垂直方向上的平衡控制并生成程序骨架,可以使用STM32CubeMX工具并添加相關(guān)庫和驅(qū)動程序,包括陀螺儀、CAN 和PID。利用CAN 總線獲取電機(jī)參數(shù)和信息,并讀取陀螺儀測量值,以實現(xiàn)平衡控制。在PID 控制算法中,P(比例)、I(積分)和D(微分)系數(shù)的選擇非常重要。P 系數(shù)影響響應(yīng)速度和穩(wěn)定性,I 系數(shù)用于消除靜態(tài)誤差,D系數(shù)減小震蕩。可以通過實驗和仿真等方法來尋找最佳PID 系數(shù)值以實現(xiàn)更為穩(wěn)定的平衡控制。在程序中,計算PID 控制器的輸出并根據(jù)輸出來控制電機(jī)的速度或位置等參數(shù),以實現(xiàn)平衡控制。同時,需要對PID 控制器進(jìn)行限幅以防止電機(jī)失控,并不斷調(diào)整PID 系數(shù)以使平衡控制更加穩(wěn)定和快速。

3.4 軟件總體實現(xiàn)

所有嵌入式算法基于HAL 庫通過freeRTOS 分任務(wù)執(zhí)行。其中Chassis Task 任務(wù)負(fù)責(zé)獲取底盤控制等信息;Gimbal Task 任務(wù)負(fù)責(zé)獲取云臺等信息;Imu Task 任務(wù)負(fù)責(zé)解算板載陀螺儀;Annex Task 任務(wù)負(fù)責(zé)控制一些附件,例如舵機(jī)等;最后System Inform Task 任務(wù)負(fù)責(zé)進(jìn)行數(shù)據(jù)更新、交互及數(shù)據(jù)加載。軟件總體實現(xiàn)框圖如圖3。

1692475970600880.png

圖3 軟件總體實現(xiàn)框圖

4 系統(tǒng)測試

4.1 物體目標(biāo)檢測算法

首先,加載預(yù)先訓(xùn)練好的YOLO 權(quán)重文件,獲取網(wǎng)絡(luò)結(jié)構(gòu)的相關(guān)參數(shù),以及包含了YOLO 所需的目標(biāo)類別名稱的文本文件。接著,使用函數(shù)提供的接口加載輸入的權(quán)重參數(shù)和YOLO 配置文件。這兩個文件應(yīng)包含了模型的結(jié)構(gòu)細(xì)節(jié)、輸入/ 輸出層名稱和類別標(biāo)簽等信息。其次,加載需要檢測的圖像,并對其進(jìn)行預(yù)處理操作。這些操作包括:將像素值的范圍縮放到0~1 之間、調(diào)整其大小、重新排序,并添加1 個新的維度來拓展輸出數(shù)組形狀。將經(jīng)過預(yù)處理的圖像輸入到預(yù)訓(xùn)練的物體檢測算法中,輸出檢測結(jié)果。為了剔除概率小的或者IoU 值大于設(shè)定閾值的重疊框,可以采用非極大值抑制(NMS)算法對輸出結(jié)果進(jìn)行后處理。接著,對于檢測到的目標(biāo),進(jìn)行分類、位置定位以及預(yù)測置信度的解碼,將算法的輸出轉(zhuǎn)換為邊框、概率和類別ID。物體目標(biāo)檢測算法的部分代碼展示如圖4 所示。

1692476034306298.png

圖4 物體目標(biāo)檢測算法部分代碼展示

4.2 測試結(jié)果

將處理好的目標(biāo)物體檢測結(jié)果通過在原圖上畫出邊界框的方式展示出來。不同的目標(biāo)物體可以用不同的顏色來代表它們所屬的不同識別類別,并在標(biāo)簽上顯示其對應(yīng)的類別名稱。測試結(jié)果如圖5。

image.png

圖5 測試結(jié)果

4.3 測試結(jié)果分析

盡管PID 算法是一種常用的控制算法,但通過改進(jìn)PID 算法以提高系統(tǒng)穩(wěn)定性和精度,或采用其他控制算法,如模糊控制、LQR 控制器等,可能會進(jìn)一步提高控制系統(tǒng)性能。需要注意的是,實驗結(jié)果僅基于特定場景,應(yīng)進(jìn)一步探索該在實際日常條件下的表現(xiàn),例如在不同表面的摩擦系數(shù)和坡度變化的情況下運動、在不同亮度的日照下進(jìn)行等。

5 結(jié)束語

本文介紹了一種基于Jetson TX2 平臺的平衡機(jī)器人,該機(jī)器人采用了視覺識別技術(shù)并使用STM32 作為主控芯片,能夠?qū)崟r獲取各種傳感器數(shù)據(jù),并對周圍環(huán)境進(jìn)行識別和控制。實驗結(jié)果表明,該機(jī)器人實現(xiàn)了優(yōu)秀的自平衡和控制功能,并表現(xiàn)出魯棒性和可靠性。未來的研究方向包括進(jìn)一步優(yōu)化控制算法、提高系統(tǒng)的穩(wěn)定性和精度,以及在實際工作場景中進(jìn)行測試。此外,機(jī)械結(jié)構(gòu)的設(shè)計和控制策略研究也是一個重要的方向,以進(jìn)一步提高機(jī)器人的準(zhǔn)確性和穩(wěn)定性。這些方面的改進(jìn)和優(yōu)化將有助于更好地應(yīng)用平衡機(jī)器人在物流、醫(yī)療器械、環(huán)境衛(wèi)生和其他服務(wù)領(lǐng)域??傊撈胶鈾C(jī)器人的設(shè)計和實現(xiàn)為機(jī)器人技術(shù)的發(fā)展提供了新的思路和方向,并在自動化、智能化和精準(zhǔn)化作業(yè)的領(lǐng)域具有廣泛的應(yīng)用前景。

參考文獻(xiàn):

[1] 劉愛東,郭智超,徐君明,等.基于改進(jìn)YOLOv4與JetsonTX2的無人機(jī)實時目標(biāo)檢測方法[J].兵器裝備工程學(xué)報,2022,43(4):204-210.

[2] 梁赟. 基于機(jī)器視覺的產(chǎn)品識別與定位方法研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2020.

[3] 阮激揚. 基于YOLO的目標(biāo)檢測算法設(shè)計與實現(xiàn)[D].北京:北京郵電大學(xué),2019.

[4] 王偉,張晶濤,柴天佑. PID參數(shù)先進(jìn)整定方法綜述[J].自動化學(xué)報,2000,38(3):347-355.

[5] 路成強(qiáng),曾潔,李千振.基于卡爾曼濾波的兩輪自平衡遙控小車設(shè)計[J].自動化儀表,2017,38(9):44-47.

(本文來源于《電子產(chǎn)品世界》雜志2023年8月期)



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉