作者:
劉思宇北京理工大學(xué)
隨著智能機(jī)器人技術(shù)的快速發(fā)展,越來越多的研究者和開發(fā)者開始涉足這一充滿挑戰(zhàn)和機(jī)遇的領(lǐng)域。哪吒開發(fā)板,作為一款高性能的機(jī)器人開發(fā)平臺,憑借其強(qiáng)大的計(jì)算能力和豐富的接口,為機(jī)器人愛好者和專業(yè)人士提供了一個理想的實(shí)驗(yàn)和開發(fā)環(huán)境。
本文旨在為讀者提供一個全面的指南,從哪吒開發(fā)板的簡介開始,逐步引導(dǎo)讀者完成Ubuntu 20.04操作系統(tǒng)的安裝,ROS1(Robot Operating System)的部署,以及最終的ROS應(yīng)用開發(fā)和部署過程。
1哪吒開發(fā)板簡介
哪吒開發(fā)板以其信用卡大小的緊湊設(shè)計(jì)和強(qiáng)大的計(jì)算能力,成為了機(jī)器人開發(fā)領(lǐng)域的一大亮點(diǎn)。它搭載了高性能的處理器,配備了足夠的內(nèi)存和存儲空間,支持多種操作系統(tǒng),包括但不限于Windows和Linux。此外,哪吒開發(fā)板還提供了豐富的擴(kuò)展接口,包括GPIO、USB、HDMI等,使其能夠輕松連接各種傳感器和執(zhí)行器,滿足不同層次的開發(fā)需求。
以下是哪吒開發(fā)板的主要特點(diǎn):
1. 處理器:搭載Intel N97處理器(Alder Lake-N),提供高達(dá)3.6GHz的時鐘頻率和12W的TDP,確保了強(qiáng)大的處理能力。
2. 圖形處理:內(nèi)置Intel UHD Graphics Gen12 GPU,支持高分辨率顯示,為視覺處理和圖形應(yīng)用提供支持。
3. 內(nèi)存與存儲:
板載8GB LPDDR5內(nèi)存,提供高速的數(shù)據(jù)訪問能力。
64GB eMMC存儲,為操作系統(tǒng)和應(yīng)用程序提供足夠的存儲空間。
4. 接口豐富:
1個Gigabit LAN端口,用于有線網(wǎng)絡(luò)連接。
3個USB 3.2 Gen 2 Type-A端口,2個10針USB 2.0/UART端口,提供多種外設(shè)連接選項(xiàng)。
1個HDMI 1.4b端口,支持高清視頻輸出。
5. 擴(kuò)展能力:配備40針GPIO連接器,支持PWM、UART、I2C、I2S、SPI和ADC等多種功能,便于連接各種傳感器和執(zhí)行器。
6. 安全性:板載TPM 2.0,提供硬件級別的安全保障。
7. 電源設(shè)計(jì):支持12V直流輸入,5A電流,確保穩(wěn)定的電源供應(yīng)。
8. 操作系統(tǒng)支持:兼容Windows和Linux操作系統(tǒng),為開發(fā)者提供了靈活的選擇。
9. 尺寸:信用卡大小的尺寸(85 x 56mm),便于集成到各種設(shè)備中。
10. 散熱設(shè)計(jì):采用無風(fēng)扇散熱設(shè)計(jì),適合于對噪音敏感或空間受限的應(yīng)用場景。
哪吒開發(fā)板的這些特性使其成為教育、物聯(lián)網(wǎng)、數(shù)字標(biāo)牌和機(jī)器人等領(lǐng)域的理想選擇。它的高性能和靈活性為開發(fā)者提供了廣闊的創(chuàng)新空間。
2設(shè)備開箱
開發(fā)板以快遞形式發(fā)貨,很快就收到了。
打開之后,內(nèi)部包括一塊開發(fā)板、供電電源和無線網(wǎng)卡。
插上電源、顯示器、鼠標(biāo)鍵盤之后,系統(tǒng)直接開機(jī)。
開發(fā)板預(yù)裝了Win11系統(tǒng),賬號和密碼一致。
進(jìn)入系統(tǒng)之后,稍微體驗(yàn)了一下系統(tǒng),比較流暢。優(yōu)化做的還是比較好的。唯一不足的是,內(nèi)存空間比較小,必須搭配外置存儲設(shè)備使用。
3Unbutu20.04系統(tǒng)安裝
要在哪吒開發(fā)板上安裝Ubuntu 20.04系統(tǒng),請按照以下步驟操作:
1. 下載Ubuntu 20.04 ISO文件:
訪問Ubuntu官方下載頁面,選擇適合您設(shè)備的Ubuntu版本,點(diǎn)擊下載按鈕。下載完成后,保存ISO文件到您的電腦上。
2. 創(chuàng)建可啟動USB驅(qū)動器:
準(zhǔn)備一個4GB或更大的USB驅(qū)動器,并備份所有數(shù)據(jù),因?yàn)閯?chuàng)建啟動盤的過程中會清除USB上的所有數(shù)據(jù)。
可以使用第三方工具如Rufus來創(chuàng)建可啟動USB驅(qū)動器。
3. 啟動安裝程序:
將可啟動USB插入哪吒開發(fā)板,重啟設(shè)備,并進(jìn)入BIOS設(shè)置,將啟動順序更改為從USB設(shè)備啟動。
4. 開始安裝過程:
啟動后,您將看到“嘗試Ubuntu”和“安裝Ubuntu”的選項(xiàng)。選擇“安裝Ubuntu”開始安裝過程。
如果您的電腦使用Intel RST(快速存儲技術(shù)),您可能需要在BIOS菜單中禁用它才能繼續(xù)安裝。
5. 安裝設(shè)置:
選擇您的鍵盤布局,然后點(diǎn)擊“繼續(xù)”。
選擇您的安裝類型,可以選擇“正常安裝”或“最小安裝”,并決定是否在安裝過程中下載更新和第三方軟件。
6. 分區(qū):
選擇“擦除磁盤并安裝Ubuntu”以自動分區(qū),或選擇“其他選項(xiàng)”手動分區(qū)。
7. 位置和用戶設(shè)置:
選擇您的位置和時區(qū),然后為系統(tǒng)創(chuàng)建用戶賬戶和密碼。
8. 完成安裝:
確認(rèn)安裝設(shè)置無誤后,點(diǎn)擊“安裝”開始安裝過程。
安裝完成后,系統(tǒng)會提示您重啟設(shè)備。
4ROS1安裝
在Ubuntu 20.04上安裝ROS1(Noetic版本)的步驟如下:
1. 設(shè)置Ubuntu的軟件和更新:
打開軟件和更新設(shè)置,確保main、universe、restricted和multiverse選項(xiàng)被勾選,然后在下載源中選擇一個中國的服務(wù)器以加快下載速度。
2. 添加ROS軟件源:
使用以下命令添加ROS軟件源:
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
如果網(wǎng)速慢,可以使用國內(nèi)源,例如上海交大源:
sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.sjtug.sjtu.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'
3. 添加密鑰:
使用以下命令添加ROS密鑰:
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
4. 更新軟件包索引:
運(yùn)行以下命令更新軟件包列表:
sudo apt update
5. 安裝ROS:
安裝ROS Noetic桌面完整版:
sudo apt install ros-noetic-desktop-full
安裝過程可能需要一段時間,耐心等待安裝完成。
6. 設(shè)置環(huán)境變量:
將以下命令添加到~/.bashrc文件中,以便每次打開新的終端時自動加載ROS環(huán)境:
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc source ~/.bashrc
7. 安裝其他工具和依賴關(guān)系:
安裝python3-rosdep、python3-rosinstall、python3-wstool和build-essential:
sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential
8. 初始化rosdep:
初始化rosdep:
sudo rosdep init rosdep update
如果rosdep初始化失敗,可以嘗試使用國內(nèi)版的rosdepc。
9. 驗(yàn)證ROS安裝:
運(yùn)行roscore命令來驗(yàn)證ROS是否安裝成功:
roscore
如果沒有錯誤信息,表示ROS已成功安裝。
5測試ROS
1. 測試turtlesim用例:
打開新的終端,運(yùn)行turtlesim節(jié)點(diǎn):
rosrun turtlesim turtlesim_node
再打開一個終端,使用鍵盤控制turtlesim:
rosrun turtlesim turtle_teleop_key
2. 啟動roscore:
在一個新的終端中運(yùn)行roscore,這是ROS系統(tǒng)的中心節(jié)點(diǎn),必須運(yùn)行才能進(jìn)行其他操作。
roscore
3. 檢查ROS環(huán)境:
在另一個終端中,運(yùn)行printenv命令來查看當(dāng)前的ROS環(huán)境變量設(shè)置。
printenv | grep ROS
4. 列出ROS節(jié)點(diǎn):
使用rosnode命令列出當(dāng)前活躍的節(jié)點(diǎn)。
rosnode list
5. 查看節(jié)點(diǎn)信息:
查看特定節(jié)點(diǎn)的詳細(xì)信息,例如turtlesim_node。
rosnode info turtlesim_node
6. 檢查ROS主題:
使用rostopic命令列出當(dāng)前活躍的主題。
rostopic list
7. 查看主題消息:
訂閱并查看turtlesim節(jié)點(diǎn)發(fā)布的turtle1/cmd_vel主題的消息。
rostopic echo /turtle1/cmd_vel
8. 發(fā)布測試消息:
嘗試使用rostopic命令向turtle1/cmd_vel主題發(fā)布測試消息。
rostopic pub /turtle1/cmd_vel geometry_msgs/Twist -r 10 -- '[geometry_msgs/Twist]' '{linear: {x: 1.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.5}}'
9. 測試ROS服務(wù):
如果turtlesim提供了任何服務(wù),可以嘗試列出并調(diào)用這些服務(wù)。例如,列出所有服務(wù):
rosservice list
10. 測試ROS動作服務(wù)器:
如果turtlesim支持動作(actions),可以列出所有動作服務(wù)器并測試它們。首先,列出所有動作服務(wù)器:
rostopic list | grep '^/move'
然后,使用rostopic命令監(jiān)聽動作狀態(tài):
rostopic echo /turtle1/move_action/status
11. 使用RViz進(jìn)行3D可視化:
如果安裝了RViz,可以使用它來可視化ROS中的3D數(shù)據(jù)。啟動RViz并配置它以顯示turtlesim的3D模型。
rosrun rviz rviz
在RViz中,添加一個RobotModel顯示項(xiàng),并訂閱/tf主題來查看機(jī)器人的3D模型。
12. 測試ROS參數(shù):
檢查turtlesim_node的參數(shù):
rosparam list
獲取特定參數(shù)的詳細(xì)信息:
rosparam get /turtlesim_node/background_b
13. 測試ROS功能包:
安裝并測試其他ROS功能包,如rospy_tutorials,來驗(yàn)證ROS的安裝和功能。
rosrun rospy_tutorials rospy_tutorials.py
14. 測試網(wǎng)絡(luò)功能:
如果您有多個機(jī)器或需要通過網(wǎng)絡(luò)進(jìn)行通信,測試ROS的網(wǎng)絡(luò)功能,如使用roscd和roslaunch。
15. 查看系統(tǒng)日志:
使用dmesg或journalctl命令查看系統(tǒng)日志,以檢查是否有與ROS相關(guān)的錯誤或警告。
確保在測試過程中,如果遇到任何問題,查看ROS社區(qū)文檔或?qū)で蠹夹g(shù)支持。
6總結(jié)
在整個安裝和測試過程中,我們成功地在哪吒開發(fā)板上安裝了Ubuntu 20.04操作系統(tǒng),并順利安裝了ROS1(Noetic)版本。通過一系列的測試用例,我們驗(yàn)證了ROS環(huán)境的正確配置和功能,包括節(jié)點(diǎn)管理、主題通信、服務(wù)調(diào)用以及動作服務(wù)器的測試。
-
處理器
+關(guān)注
關(guān)注
68文章
19286瀏覽量
229807 -
英特爾
+關(guān)注
關(guān)注
61文章
9964瀏覽量
171763 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5050瀏覽量
97456 -
ROS
+關(guān)注
關(guān)注
1文章
278瀏覽量
17009
原文標(biāo)題:開發(fā)者實(shí)戰(zhàn)|基于英特爾開發(fā)板開發(fā)ROS應(yīng)用
文章出處:【微信號:英特爾物聯(lián)網(wǎng),微信公眾號:英特爾物聯(lián)網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論