隨著自主性提升、傳感器數(shù)量與種類以及傳感器融合算法的日益增加,機(jī)器人正變得越來越復(fù)雜。為了運(yùn)行這些日益復(fù)雜的工作負(fù)載,必須利用硬件加速,使機(jī)器人應(yīng)用能夠以更快的速度和更高的效率運(yùn)行更大規(guī)模的工作負(fù)載。
NVIDIA Isaac ROS始終致力于為 ROS 開發(fā)者提供加速計(jì)算軟件包和工具,用以開發(fā)高性能且節(jié)能的機(jī)器人應(yīng)用。
NVIDIA 率先將加速計(jì)算納入了 ROS 2,并不斷改進(jìn)更新版本。在過去的兩年中,NVIDIA 已增加了 20 多個(gè)硬件加速 ROS 軟件包,支持最新發(fā)行的 ROS 2。
團(tuán)隊(duì)去年與 Open Robotics 一起,在提供硬件加速器的計(jì)算平臺上加入了適應(yīng)和類型協(xié)商以提高 ROS 的性能。他們還實(shí)現(xiàn)了用于 Isaac ROS 的適應(yīng)和類型協(xié)商——NITROS(NVIDIA Isaac Transport for ROS)。
最新發(fā)布的NVIDIA Isaac ROS Developer Preview 3(DP3)包括重要功能的更新和提升。
NVIDIA Isaac ROS Developer Preview 3
NVIDIA Isaac ROS DP3 加入了許多新的功能,讓 ROS 社區(qū)能夠從硬件加速中獲益,主要包括:用于自動定位機(jī)器人的新地圖定位器,帶有人類檢測功能的更新版 NvBlox、用于對 ROS 2 圖像進(jìn)行實(shí)際基準(zhǔn)測試的全新 ROS 2 基準(zhǔn)測試工具,以及開源 NITROS 軟件包。
不到半秒就能在地圖中自動定位
移動機(jī)器人(比如用于倉庫或服務(wù)的機(jī)器人等)在開始進(jìn)入空間之前,需要知道它們在地圖中的初始位姿。向機(jī)器人提供這種初始位姿信息的最常見方法是手動設(shè)置,不過這種方法不僅要在整個(gè)過程中增加人工干預(yù),還可能需要 30 秒以上的時(shí)間。
使用新的 Isaac ROS 地圖定位 ROS 軟件包,就不需要手動設(shè)置機(jī)器人的初始位置和方向。該軟件包使用激光雷達(dá)測距掃描,可在不到半秒的時(shí)間內(nèi)自動估計(jì)在所占網(wǎng)格地圖中的位姿。定位器可以與平面激光雷達(dá)或 3D 激光雷達(dá)同時(shí)工作,并且可用于初始化移動機(jī)器人的導(dǎo)航。
這個(gè) ROS 軟件包通過 GPU 加速并利用 NITROS 創(chuàng)建沒有通信開銷的高效 ROS 流程,已經(jīng)與 Nav2 集成。
圖 NVIDIA Isaac ROS 地圖定位軟件包
在不到半秒的時(shí)間內(nèi)自動計(jì)算出初始全局位姿
移除三維重建中的人類
Isaac ROS NvBlox提供了一個(gè)用于三維重建的 GPU 加速軟件包,并利用傳感器觀測數(shù)據(jù)繪制了機(jī)器人周邊環(huán)境的代價(jià)地圖。這些都對路徑規(guī)劃器生成無碰撞路徑十分有用。
在人群中移動的機(jī)器人需要首先檢測到人類,然后根據(jù)與他們的接近程度選擇不同的路線。盡管人類應(yīng)該成為代價(jià)地圖的一部分(用來計(jì)算無碰撞路徑),但不應(yīng)該成為三維重建的一部分。三維重建應(yīng)該只包含靜態(tài)障礙物。
Isaac ROS DP3 版本所包含的 Isaac ROS NvBlox 軟件包更新版本可以檢測和劃分人類,并提供人類的代價(jià)地圖以避免發(fā)生碰撞。同樣,它還提供用于三維重建的靜態(tài)代價(jià)地圖,以避免與靜態(tài)物體發(fā)生碰撞。
圖 2Isaac ROS NvBlox 軟件包
在三維重建過程中檢測并移除人類
對 ROS 圖像進(jìn)行標(biāo)準(zhǔn)的基準(zhǔn)測試
對 ROS 圖像進(jìn)行的基準(zhǔn)測試應(yīng)反映出在實(shí)際工作負(fù)載下的性能。對整個(gè) ROS 圖像(而不是一個(gè)特定的 ROS 節(jié)點(diǎn))進(jìn)行基準(zhǔn)測試十分重要,該測試將包含 RCL 中指示實(shí)際性能的消息傳輸成本。
Isaac ROS DP3 包含 ROS 2 的開源基準(zhǔn)測試工具。該工具不需要通過修改節(jié)點(diǎn)來度量結(jié)果,而且可以將輸入的 rosbag 數(shù)據(jù)集標(biāo)準(zhǔn)化,以便對基準(zhǔn)結(jié)果進(jìn)行獨(dú)立驗(yàn)證。
該基準(zhǔn)測試工具采用行業(yè)最佳實(shí)踐,并專門為了測量實(shí)時(shí)機(jī)器人應(yīng)用中的節(jié)點(diǎn)圖吞吐量和延遲而進(jìn)行了專業(yè)強(qiáng)化。亮點(diǎn)包括:
可靠的結(jié)果:在多秒內(nèi)進(jìn)行 N 次(默認(rèn) N=5 )自動性能測試,舍棄結(jié)果的最小和最大值以減少誤差?;鶞?zhǔn)結(jié)果在日志文件中報(bào)告,以便導(dǎo)入用戶所選擇的可視化工具中。
輸入數(shù)據(jù)集:可在 CCv4.0 歸屬許可證下從NGC下載,r2b data set 2023為 rosbag 的圖像提供一致的輸入,并且用戶可根據(jù)需要添加額外的輸入數(shù)據(jù)。
輸入圖像分辨率:各種計(jì)算硬件可根據(jù)機(jī)器人應(yīng)用的不同以合適的分辨率處理圖像。
輸入和輸出傳輸時(shí)間:RCL 發(fā)布和接收進(jìn)程間和進(jìn)程內(nèi)消息的時(shí)間包含在測量結(jié)果中,能夠準(zhǔn)確表示機(jī)器人應(yīng)用中的預(yù)期情況,避免了去除消息傳遞成本后的夸大結(jié)果。
輸入和輸出類型自適應(yīng):使用標(biāo)準(zhǔn) ROS 類型輸入數(shù)據(jù)或者使用類型適應(yīng)和類型協(xié)商。
基準(zhǔn)參數(shù):用于測試的參數(shù)包括數(shù)據(jù)輸入長度、發(fā)布速率和輸入數(shù)據(jù)大小,并且可通過配置文件自定義。
吞吐量自動查找器:測量圖像的峰值吞吐量,在 topic 下降到 <1% 的情況下,要求自動找到圖像的峰值吞吐量。吞吐量自動查找器能夠高效查找峰值吞吐量的輸入數(shù)據(jù)發(fā)布速率。
實(shí)時(shí)延遲:根據(jù)固定的 topic 發(fā)布速率實(shí)時(shí)測量延遲。該數(shù)據(jù)顯示以預(yù)期的固定發(fā)布速率向?qū)崟r(shí)系統(tǒng)傳輸內(nèi)容,吞吐量會顯示機(jī)器人應(yīng)用可能的峰值性能。
云原生:測試可以作為自動化測試的一部分在 Kubernetes 上執(zhí)行,也可以作為現(xiàn)代軟件開發(fā)的一部分在 CI/CD 每日夜間測試中執(zhí)行。也可以在本地開發(fā)者系統(tǒng)上進(jìn)行測試。
黑盒測試:在基準(zhǔn)測試中直接使用所有性能測量工具,將節(jié)點(diǎn)圖像作為二進(jìn)制文件進(jìn)行測試。這期間不會修改被測試的圖像中的代碼,并且可以用相同的工具以一種自然的方式進(jìn)行包含從開源到專有解決方案的性能測試。
透明性:JSON 中的結(jié)果包含用于運(yùn)行基準(zhǔn)測試的參數(shù),包括用于獨(dú)立結(jié)果驗(yàn)證的輸入 rosbag 的 MD5 算法的數(shù)據(jù)。
支持 NVIDIA Jetson 新增平臺
Isaac ROS DP3 增加了對 NVIDIA Jetson 系列最新產(chǎn)品NVIDIA Jetson Orin Nano和NVIDIA Jetson Orin NX的支持。它還支持新發(fā)布的NVIDIA Jetson Orin Nano 開發(fā)者套件。所有 Jetson Orin 和Xavier系列的模塊和開發(fā)者套件均支持 Isaac ROS。
支持 Jetson Orin 系列的模塊和開發(fā)者套件
新版本還增加了對新發(fā)布的NVIDIA Ada Lovelacearchitecture和NVIDIA GeForce RTX 40 GPU的支持。
從此更新版本開始,NITROS 加速的 Isaac ROS 軟件包中的大部分內(nèi)容均已開源。作為 ROS 開發(fā)者,您現(xiàn)在可以擴(kuò)展這些軟件包、解決您遇到的任何問題并向 Isaac ROS 社區(qū)投稿。
總結(jié)
NVIDIA Isaac ROS Developer Preview 3 是一項(xiàng)重大更新,讓 ROS 社區(qū)能夠從硬件加速中獲益,從而更輕松地構(gòu)建高性能節(jié)能機(jī)器人應(yīng)用。該版本的亮點(diǎn)主要包括:可對 ROS 2 圖像進(jìn)行實(shí)際基準(zhǔn)測試的全新 ROS 2 基準(zhǔn)測試工具;可對機(jī)器人進(jìn)行自動定位的全新地圖定位器;開源的 NITROS 軟件包;以及帶有人類檢測功能的更新版 NvBlox。
審核編輯:湯梓紅
-
傳感器
+關(guān)注
關(guān)注
2545文章
50453瀏覽量
751100 -
機(jī)器人
+關(guān)注
關(guān)注
210文章
28108瀏覽量
205860 -
NVIDIA
+關(guān)注
關(guān)注
14文章
4856瀏覽量
102711 -
ROS
+關(guān)注
關(guān)注
1文章
276瀏覽量
16942
原文標(biāo)題:使用 NVIDIA Isaac ROS Developer Preview 3 構(gòu)建高性能機(jī)器人應(yīng)用
文章出處:【微信號:NVIDIA_China,微信公眾號:NVIDIA英偉達(dá)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論