實(shí)現ARM+ROS(機器人操作系統)之環(huán)境搭建!

發(fā)布時(shí)間:2022-9-28 11:26    發(fā)布者:武漢萬(wàn)象奧科
關(guān)鍵詞: ARM , ROS , 開(kāi)發(fā)板 , G2L
    如何低成本搭建ARM+ROS的硬件載體?上文為大家介紹了實(shí)現的思路及原理,本文將為讀者實(shí)際操作,展示ROS部署前的籌備工作及步驟分解。

1. 方案概述
本文重點(diǎn)介紹低成本搭建ARM+ROS的硬件及底層實(shí)現。開(kāi)發(fā)板選用HDG2L-IoT評估套件,默認配置為2G內存、8G存儲,搭載可玩性極高的Ubuntu系統。


開(kāi)發(fā)套件默認的Ubuntu系統大概占用3.1G空間,剩余3.2G空間,在構建docker+ROS環(huán)境時(shí)可能會(huì )報eMMC空間不足的錯誤,所以需要調整HDG2L-IoT的啟動(dòng)參數,將啟動(dòng)參數改為引導到TF空間中。市面上常見(jiàn)的樹(shù)莓派部署ROS方案也是如此操作。

2. 方案準備
首先,需要用到的硬件如下所示。



3. TF卡掛載Ubuntu固件修改
本小節將介紹如何實(shí)現HDG2L-IoT掛載TF卡內的文件系統,步驟如下:
1)制作啟動(dòng)卡;
2)解壓目標文件系統到TF卡內;
3)修改uboot啟動(dòng)參數;

3.1制作啟動(dòng)卡
首先制作啟動(dòng)卡,格式化TF卡的操作可通過(guò)瑞薩提供的shell腳本實(shí)現,在PC端的Ubuntu開(kāi)發(fā)環(huán)境下,執行以下命令來(lái)下載操作腳本。


將需要被用作啟動(dòng)卡的TF卡插入到PC機內,用虛擬機來(lái)操作,調整步驟如下。首先打開(kāi)虛擬機的USB 3.1功能,以免TF卡讀取失敗。


然后將TF卡導入Ubuntu虛擬機中,如下所示。


系統能識別后,執行剛才下載的usb_sd_partition.sh腳本,如下所示。


腳本執行成功后,TF卡將分為兩個(gè)分區,分區1為fat32,分區2為ext4。


(注:當前新版本的Windows系統比較少支持ext4格式的TF卡,所以在Windows環(huán)境下一般只看到分區1,分區2會(huì )提示需要格式才能識別,請忽略。)

3.2拷貝目標文件到TF中
將HDG2L-IoT配套的Ubuntu壓縮包解壓到ext4分區中,虛擬機內自動(dòng)掛載到/media/${USER}/sdb2內。本機的解壓命令如下所示。


將HDG2L-IoT配套的內核鏡像拷貝到Windows下識別的TF分區中(FAT32系統允許被Windows系統識別,ext4系統不被識別),拷貝后如下所示。



3.3修改uboot啟動(dòng)參數
最后需要調整HDG2L-IoT的uboot啟動(dòng)啟動(dòng)參數,引導其使用TF卡內的內核與文件系統,首先上電,在倒計時(shí)前進(jìn)入uboot菜單,如下所示。


將上一步中制作好的TF卡插入HDG2L-IoT板卡的TF卡槽中,在U-Boot提示符下設定以下變量,bootargs變量用于指定文件系統的載體,在系統內,TF卡槽占用的設備名為/dev/mmcblk1p2。


然后設置從TF的分區1內獲取內核鏡像和內核設備樹(shù),命令如下所示。


設置完成后,通過(guò)以下命令保存uboot的環(huán)境變量,命令如下所示。
重新啟動(dòng)后,若TF卡正常,整體存儲空間情況如下所示。


若TF卡沒(méi)插入,uboot的啟動(dòng)會(huì )報錯誤信息,錯誤信息如下所示。



4. 安裝docker環(huán)境
正常啟動(dòng)之后,開(kāi)始搭建docker環(huán)境。

4.1安裝docker軟件
首先,燒錄后的第一次上電的板卡需要更新內部的軟件版本,命令如下所示。update更新失敗注意檢測網(wǎng)絡(luò )狀態(tài)和date日期。部分軟件可能體積過(guò)大,需要耐心等待。


然后清除舊版本的docker軟件,再重新安裝docker.io。


啟動(dòng)docker。


使能docker開(kāi)機自啟動(dòng)。


檢查docker運行狀態(tài)。




4.2獲取鏡像
運行此命令可以從Docker Hub上下載現成鏡像。


查看本地的鏡像文件命令如下所示。



4.3創(chuàng )建容器
容器就是加載模板后運行的沙盒環(huán)境,具有運行時(shí)所需的可寫(xiě)文件層、應用程序也處于運行狀態(tài)。概念上可能會(huì )與PC端常用的虛擬機混淆,虛擬機是包括內核、應用運行環(huán)境和其他系統環(huán)境的,而Docker容器就是獨立運行的一個(gè)或一組應用以及他們必須的運行環(huán)境。
創(chuàng )建容器時(shí),需要指定使用的鏡像文件,這里使用上面用pull指令下載下來(lái)的鏡像文件,創(chuàng )建命令如下所示。


查看容器狀態(tài),命令如下所示,每個(gè)容器都有自己的CONTAINER_ID與NAMES,供后面的命令操作使用(可使用docker rename命令修改容器名,便于簡(jiǎn)便使用)。



4.4啟動(dòng)容器
容器創(chuàng )建后,通過(guò)CONTAINER_ID與NAMES來(lái)操作容器,啟動(dòng)命令如下所示。


上文所說(shuō),容器是運行一個(gè)或一組進(jìn)程,docker ps命令里的COMMAND即為容器運行的進(jìn)程,當前顯示bash,即進(jìn)入命令交互進(jìn)程。通過(guò)以下命令進(jìn)入容器內部。


進(jìn)入后,可以操作容器內的命令,如下所示。


通過(guò)exit命令,可退出容器,退出后容器就處于停止狀態(tài),如下所示。


通過(guò)以上操作,我們就完成了硬件與底層的搭建,為ROS運行在這套開(kāi)發(fā)板上做好了準備,下一章節將為大家帶來(lái)ROS的部署方法。


本文地址:http://selenalain.com/thread-802256-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页