在Jetson Nano上使用LiDAR和ROS Melodic構建地圖

2021-03-02 GPUS開發者

本教程來自:

原文轉自:

https://www.hackster.io/shahizat005/building-a-map-using-lidar-with-ros-melodic-on-jetson-nano-2f92dd

這個教程裡,作者介紹如何在Jetson Nano上安裝ROS Melodic,以及如何使用LiDAR和Hector SLAM繪製環境圖。

背景

機器人作業系統(ROS)是流行的基於開源的機器人技術項目之一。最新和當前的ROS1發行版是ROS Noetic,具有Ubuntu 20.04 LTS Focal Fossa支持。如您所知,ROS Noetic不支持Ubuntu 18.04 Bionic隨附的JetPack 4.4。因此,此處不會執行sudo apt-get install ros-noetic命令。您可以根據需要從Ubuntu 18.04的原始碼安裝和構建ROS Noetic,但這可能是一個令人沮喪且耗時的過程。

因此,ROS Melodic Morenia主要針對Ubuntu 18.04,這就是我們在18.04上擁有此安裝教程的原因。在本教程中,我將向您展示如何在NVIDIA Jetson Nano上使用Hector SLAM,ROS Melodic Morenia中間件和RPLidar A1M8來構建地圖。

項目材料:

硬體

在開始學習本教程之前,您需要滿足以下條件:

NVIDIA Jetson Nano開發人員套件

帶有連接器的RPLidar A1M8。該連接器用於充電,數據傳輸和控制設備。

5V 4A DC電源

SD卡(64GB或128GB)

USB轉Micro-USB電纜

具備網際網路連接能力並且可以刷microSD卡的計算機。在這裡,我們將使用筆記本電腦。

Jetson Nano Developer Kit不包含WiFi模塊,因此您有兩個選擇。您可以使用乙太網電纜將Jetson Nano直接連接到筆記本電腦,然後設置靜態IP並共享您的網絡,也可以添加USB WiFi適配器,然後將Nano連接到筆記本電腦使用的同一WiFi網絡。在這裡,我們將使用USB WiFi適配器。

其他要求

ROS構建系統的一些經驗是有幫助的,但不是必需的。

熟悉Linux命令行,像bash這樣的shell和像nano這樣的編輯器。

ROS應用程式使用大量的計算資源,並且散熱器可能不足以產生熱量。考慮添加冷卻風扇。我建議您使用Nvidia Jetson Nano的ICE Tower CPU冷卻風扇。

RPLidar A1M8-360度雷射掃描儀

LiDAR是用於檢測物體的存在,指定其位置和測量距離的光學設備。

RPLIDAR是一款低成本LIDAR傳感器,適用於室內機器人SLAM(同時定位和地圖繪製)應用。可以在其他應用程式中使用,例如:

步驟

第1步-將映像刷新到SD卡並啟動第2步-Jetson Nano –通過串行USB埠進行無頭設置第3步-如何從命令行連接到WiFi網絡?步驟4-升級Jetson上所有已安裝的軟體包第5步-打開風扇並最大化頻率第6步-創建SWAP文件(可選)步驟7-ROS Melodic軟體包安裝和設置步驟8-RPLiDAR傳感器的連接

使用Micro USB電纜將RPLiDAR連接到Jetson Nano。

第9步-配置Catkin工作區並為RPlidar安裝ROS軟體包步驟10-安裝VNC伺服器步驟11-在Linux和macOS上設置SSH隧道(可選)步驟12-使用VNC客戶端連接到VNC伺服器步驟13-在遠程計算機上使用VNC運行rviz步驟14-如何使用Hector SLAM構建地圖

現在,您應該可以在rviz中看到如下所示的地圖:

具體教程閱讀原文

更多Jetson NANO項目

用Jetson NANO做一個防疲勞駕駛的神器

初中生用Jetson NX做AI視力檢查儀

在NANO識別路標這個項目中,我們是這麼做的...

做個JetBot小車有啥意思,用樂高積木做一個才有趣....

用Jetson NANO做個智能電視機,這個操作有點意思

外國小哥用Jetson NANO做了一個漫遊車,看著好簡單...

多麼孤獨的靈魂,才能用Jetson NANO做個象棋機器人

看這個天才老爸如何用Jetson NANO做一個帶娃機器人

【Jetson開發項目展示】利用AI巧妙地拉開社交距離

【Jetson開發項目展示】利用開放顯微鏡和深度學習進行瘧疾檢測

【Jetson開發項目展示】自適應交通控制系統

【Jetson開發項目展示】Simto - Real:用於機器人導航的虛擬制導

【Jetson開發項目展示】用Jetson NANO作一個盲人閱讀器

【Jetson開發項目展示】用Jetson NANO檢測植物病害

邁向精準農業第一步:用Jetson NANO做一個智能農業機器人

【Jetson開發項目展示】用 Jetson Nano打造水下航行器

不要問我星星有幾顆,Jetson NANO告訴你有很多....

利用Jetson NANO,做一棵可以拯救蜜蜂的聖誕樹

Jetson NANO應用案例展示 | 打造智能商業化門店

Jetson NANO應用案例展示 | 無人機在黑暗場景中的定位飛行

【Jetson開發項目展示】利用Jetson NANO和TensorRT做一個道路智能坑洞檢測器

【Jetson開發項目展示】用Jetson NANO做一個智能快遞櫃原型

【Jetson開發項目展示】敢跟NVIDIA JetBot小車玩石頭剪刀布麼?

【Jetson 開發項目展示】利用Jetson NANO實現人臉識別考勤

相關焦點

  • 在Jetson產品上裝ROS遇到的坑
    昨天有個用戶在我們VIP技術群裡求救:求助一下,我刷了impack4.2.3,然後安裝ros-kinetic-desktop-full
  • ROS Melodic的網絡控制
    使用這種作業系統的機器人項目有很多,比較有名的有PX4、Paparazzi UAV等。因為屬於嵌入式作業系統,這種作業系統的使用和開發的難度都是很大的。今天我們來聊聊另一個更偏應用層的「作業系統」——ROS。ROS(Robot Operating System)是一個機器人用的「作業系統」。ROS是個軟體系統(相當於嵌入式系統的應用層),它需要在Linux系統上跑。
  • 當ROS2遇到NVIDIA Jetson平臺,這些開原始碼你必須要知道的.
    它可以在您的終端上運行,並提供Python包,可輕鬆集成到Python腳本中。利用ros2_jetson_stats庫並構建ROS 2診斷消息和服務。DeepStream SDK提供了一個完整的流分析工具包,可使用多傳感器處理,視頻和圖像理解來構建端到端基於AI的解決方案。它支持流行的對象檢測和分割模型,例如最先進的SSD,YOLO,FasterRCN和MaskRCNN。
  • SAST Weekly | ROS入門(上篇)
    ROS框架可以簡單地使用Python,C++和 Lisp實現。同時,ROS也擁有Java 和 Lua版本的實驗庫。ROS目前只能在基於Unix的平臺上運行。ROS的軟體主要在Ubuntu和Mac OS X 系統上測試,同時ROS社區仍持續支持Fedora,Gentoo,Arch Linux和其它Linux平臺。
  • 如何使用 NVIDIA Jetson 和 Amazon SageMaker 結合打造智能邊緣
    就導致了如果沒有一個好的工具,構建一個邊緣推理的環境極其複雜。所以就有了JetPack和SDK Manager。鏡像燒錄參考:https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit#writeNIVIDA JetPack 可以實現在 Jetson 平臺上快速構建機器學習環境,JetPack 包括系統鏡像、TensorRT、CUDA、各種庫和 API、開發工具
  • Jetson nano - USB攝像頭使用
    #當你跨過思想上的障礙,餘下的路你走的會順風順水。
  • 發布基於UbuntuMate18.04的樹莓派ROS Melodic V1.0桌面完整版鏡像
    所以這裡的鏡像只能在樹莓派4以下的各樹莓派板上運行,例如樹莓派3B+,樹莓派3等。不過不用擔心在樹莓派3B+/3上運行會卡,因為這是64位的系統,自我感覺運行ROS還是很流暢的。基本上跟樹莓派4運行效果是一樣的,甚至可能感覺更好點(樹莓派4上運行的是32位系統)。
  • jetson nano -燒錄系統,從頭配置
    貼網址:系統鏡像地址https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit#write安裝參考資料http://spotpear.cn/public/index/study/detail/id/172.html
  • Jetson Nano 上安裝 OctoPrint
    使用硬體:Jetson Nano 2G系統信息:# R32 (release), REVISION: 6.1, GCID:
  • ros安裝教程
    #基礎版安裝(包含ROS核心軟體包、構建工具以及通信相關的程序庫,無GUI工具)單獨軟體包安裝(這種安裝方式在運行ROS缺少某些package依賴時會經常用到。出現上述問題,有可能是自己的版本不合適不兼容造成,也可能是鏡像源沒有更新,具體的設置參考軟體和更新的截圖。當然也有可能是其他原因,比如更新了忘記刷新環境source一下,重開一個終端等等。具體的問題原因可以去搜尋引擎上嘗試求助解決,或者登陸ROS Wiki(ROS的百科全書)去查詢解決自己的具體問題。
  • Jetson Nano日記4:Achiconda和PyTorch安裝配置
    核心思路是,在Nano板子上配置好python,Anaconda和PyTorch環境。如無特別指明,以下命令都是在ssh登錄到jetson nano後遠程執行。需要注意的是,Jetson Nano的CPU是aarch64架構,對應地,Anaconda有針對aarch64架構的發行版,叫做Archiconda,這是github上的Archiconda主頁,網址在https://github.com/Archiconda/build-tools,感興趣的不妨上去看看。
  • ROS安裝詳細教程+問題解決
    那麼學習ros最開始的就是ros作業系統的安裝了,第一篇博文就從ros安裝好了。這裡要注意一下,安裝的ros版本一定要和你的ubuntu系統做對應,比如14.04對應indigo,16.04對應kinetic,18.04對應melodic.20.04對應noetic,具體修改方式就是把上述代碼中的「medolic」換成你系統對應的版本就行了)這樣就是安裝完成了(我這個是kinetic的截圖,不過不影響,終端沒報錯就行)然後我們查看一下是否安裝成功了
  • ROS Windows 人機互動軟體開發探索與總結
    3,編譯ROS功能包4,添加ROS工作空間到環境變量5,安裝ROS軟體包三,ROS Qt功能包模板的編譯與使用參考資料:ROS wiki目標Windows ROS 支持kinetic,melodic,noetic,這裡主要演示melodic版本的,其他版本大同小異,可參考wiki教程,確保c盤有10g以上的安裝空間。
  • Jetson Nano 夜用超長評測
    (注:適配器標定5V 8A) 另外,如果使用DC供電,則必須禁用USB電源.(短路帽插上)串口和音頻口在不是很顯眼的位置出現.測試軟體:系統鏡像:jetson-nano-sd-r32.1-2019-03-18.zip (你猜哪裡下載?不知道?
  • 使用Python+Dlib構建人臉識別系統(在Nvidia Jetson Nano 2GB開發板上)
    安裝Linux和Python庫來進行人臉識別一旦完成了Linux的初始設置,就需要安裝幾個我們將在人臉識別系統中使用的庫。在Jetson Nano桌面上,打開一個LXTerminal窗口並運行以下命令。
  • 英偉達NVIDIA Jetson Nano 2GB點亮篇
    考試前的最後一篇文章https://developer.download.nvidia.com/assets/embedded/downloads/jetson-nano-2gb-jp441-sd-card-image/jetson-nano-2gb-jp441-sd-card-image.zip?
  • 如何在Arduino開發板上使用機器人作業系統(ROS)
    Arduino可能是最常用的開源微控制器開發板,它提供了易於使用的軟體-硬體界面以及不斷擴展的用戶社區。Arduino幾乎與所有數字和模擬電路以及支持串行通信接口(如SPI、I2C和UART)的外部設備兼容。基於ROS的軟體框架運行高級算法和流程,例如機器人模型的推理、過濾、運動策略生成、控制器算法等。安裝在機器人上的Arduino控制器用於執行低級/嵌入式控制和傳感。
  • 15分鐘連接Jetson Nano與K8S,輕鬆搭建機器學習集群
    /embedded/learn/get-started-jetson-nano-devkit#writeK3sup15分鐘的時間設置NVIDIA docker添加Jetson Nano到K3s集群運行一個簡單的MNIST例子來展示Kubernetes pod內GPU的使用在我們配置Docker以使用nvidia-docker
  • NVIDIA Jetson Nano 2GB 系列文章(2):安裝系統
    記住位置如下:Jetson Nano 2GB:https://developer.nvidia.com/jetson-nano-2gb-sd-card-image下載會消耗較多時間,需要一些耐性。點選上圖「Flash from files」後,選擇要安裝的鏡像文件,這裡選擇 Jetson Nano 2GB 的鏡像文件「jetson-nano-jp441-2gb-sd-card-image.zip」,然後選項的圖標會產生變化(如下圖)。其中「sd-blod.img」是 jetson-nano-jp441-2gb-sd-card-image.zip 解壓縮之後的文件。