日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

RK3576單板機玩轉(zhuǎn)ROS2:通信測試+編譯部署全流程詳解

Tronlong創(chuàng)龍科技 ? 來源:Tronlong創(chuàng)龍科技 ? 2026-05-16 13:49 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前 言

本文是創(chuàng)龍科技針對 RK3576 單板機編寫的 ROS2 開發(fā)手冊,基于 ROS2 Humble 版本提供完整的機器人操作系統(tǒng)開發(fā)與測試指引。文檔詳細講解 ROS2 環(huán)境配置、Python/C++ 通信測試、小海龜仿真演示,以及 ROS2 軟件包交叉編譯、部署與運行流程。

開發(fā)環(huán)境

Windows開發(fā)環(huán)境:Windows764bit、Windows1064bit

Linux開發(fā)環(huán)境:VMware16.2.5、Ubuntu22.04.564bit

sysroot:rk3576-Tronlong-Desktop-22.04-sysroot-[版本號].tar.gz

系統(tǒng)版本:Tronlong-Desktop22.04(類Ubuntu)、Linux-6.1.115、U-Boot-2017.09

ROS:ROS2 Humble

備注:本文基于2GByte LPDDR4X、16GByte eMMC配置單板機進行演示。

術(shù)語表

為便于閱讀,下表對文中出現(xiàn)的關(guān)鍵術(shù)語進行解釋;對于廣泛認同釋義的術(shù)語,在此不做注釋。

wKgZO2oCnWqAHxYtAAArB1eur-k053.png

1ROS系統(tǒng)測試

執(zhí)行如下命令,配置單板機測試環(huán)境。

Target# export COLCON_CURRENT_PREFIX=/opt/ros/humble //設(shè)置COLCON_CURRENT_PREFIX環(huán)境變量,并將其值指向ROS2 Humble的安裝目錄

Target# source /opt/ros/humble/local_setup.sh //執(zhí)行ROS2 Humble的環(huán)境設(shè)置腳本,從而將ROS2的命令、庫路徑、功能包信息等加載到當前的Shell會話中

wKgZO2oCnbKAcE1QAAAKnarI10Q480.png

1.1基于Python的通信功能測試

執(zhí)行如下命令,創(chuàng)建Log目錄,用于保存ROS程序運行的Log。

Target# mkdir -p /root/.ros/log

wKgZO2oCnbuAVkjXAAAFC8CqeKs243.png

執(zhí)行如下命令,啟動ROS節(jié)點訂閱消息。

Target# ros2 run demo_nodes_py listener &

wKgZO2oCncCADlYfAAAHVsiPuVg323.png

執(zhí)行如下命令,啟動ROS節(jié)點發(fā)布消息,實現(xiàn)訂閱消息節(jié)點與發(fā)布消息節(jié)點之間的通信。此時單板機串口調(diào)試終端將會打印兩節(jié)點間通信的信息,如下圖所示。按"Ctrl + C"可退出測試程序,即讓發(fā)布消息的節(jié)點退出。

Target# ros2 run demo_nodes_py talker

wKgZPGoCncWAH51DAAA_Q39xaOc863.png

執(zhí)行如下命令,查看并根據(jù)系統(tǒng)進程號關(guān)閉所有ROS節(jié)點。進程號請以實際情況為準。

Target# ps -a

Target# kill 1569

Target# kill 1570

wKgZO2oCncuAfWCRAAAXW5GW9Kw057.png

1.2基于C++的通信功能測試

執(zhí)行如下命令,創(chuàng)建Log目錄,用于保存ROS程序運行的Log。

備注:若已創(chuàng)建Log目錄,可跳過此步驟。

Target# mkdir -p /root/.ros/log

wKgZPGoCndKAOZpqAAAFCf0VH8k412.png

執(zhí)行如下命令,啟動ROS節(jié)點訂閱消息。

Target# ros2 run demo_nodes_cpp listener &

wKgZO2oCndeACfR3AAAHVU9dsBU723.png

執(zhí)行如下命令,啟動ROS節(jié)點發(fā)布消息,實現(xiàn)訂閱消息節(jié)點與發(fā)布消息節(jié)點之間的通信。此時單板機串口調(diào)試終端將會打印兩節(jié)點間通信的信息,如下圖所示。按"Ctrl + C"可退出測試程序,即讓發(fā)布消息的節(jié)點退出。

Target# ros2 run demo_nodes_cpp talker

wKgZO2oCndyAYfXjAAA_-y5BAbo525.png

執(zhí)行如下命令,根據(jù)系統(tǒng)進程號關(guān)閉所有ROS節(jié)點。進程號請以實際情況為準。

Target# ps -a

Target# kill 1659

Target# kill 1660

wKgZPGoCnfKAQk9pAAAdOGDWyCo965.png

1.3turtlesim(小海龜)測試

執(zhí)行如下命令,配置單板機測試環(huán)境。

備注:若已配置單板機測試環(huán)境,可跳過此步驟。

Target# export COLCON_CURRENT_PREFIX=/opt/ros/humble //設(shè)置COLCON_CURRENT_PREFIX環(huán)境變量,并將其值指向ROS2 Humble的安裝目錄

Target# source /opt/ros/humble/local_setup.sh //執(zhí)行ROS2 Humble的環(huán)境設(shè)置腳本,從而將ROS2的命令、庫路徑、功能包信息等加載到當前的Shell會話中

wKgZO2oCnfiAeea2AAAKpAKdGeg012.png

執(zhí)行如下命令,創(chuàng)建Log目錄,用于保存ROS程序運行的Log。

備注:若已創(chuàng)建Log目錄,可跳過此步驟。

Target# mkdir -p /root/.ros/log

wKgZPGoCnf6Ae_aaAAAFDwxcYU4202.png

執(zhí)行如下命令,后臺運行小海龜程序。

Target# ros2 run turtlesim turtlesim_node &

wKgZO2oCngeAd3zrAAAcvra47sY919.pngwKgZO2oCngqAOXUOAIScQzVS3oA491.png

執(zhí)行如下命令,發(fā)布話題消息,使小海龜轉(zhuǎn)圈。

Target# ros2 topic pub --rate 1 /turtle1/cmd_vel geometry_msgs/msg/Twist "{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 1.8}}"

wKgZPGoCnoGARdCDAAA4wrEK6ao583.png

參數(shù)解析:

ros2 topic pub:發(fā)布消息到主題;

--rate 1:發(fā)布消息速率,設(shè)置為1次每秒;

/turtle1/cmd_vel:主題名稱;

geometry_msgs/msg/Twist:發(fā)布消息類型;

{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 1.8}}:發(fā)布消息的內(nèi)容,線速度(linear)為x方向上的2.0、角速度(angular)為z軸方向上的1.8。

wKgZPGoCnoiAXW0CAIh96zotECg599.png

2ROS開發(fā)

請先參考《開發(fā)環(huán)境搭建》文檔進行VMware虛擬機與Ubuntu安裝,并參考《應(yīng)用開發(fā)手冊》文檔正確安裝sysroot。本小節(jié)主要演示基于上位機Ubuntu的ROS系統(tǒng)編譯與鏡像制作方法。

2.1開發(fā)環(huán)境搭建

打開Ubuntu終端,執(zhí)行如下命令,安裝編譯所需的colcon工具。

Host# sudo apt install curl

Host# sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

wKgZO2oCnouARIkoAACXsEFAS3s997.png

因網(wǎng)絡(luò)問題,下載GPP密鑰可能會失敗,若無法下載,可將產(chǎn)品資料“4-軟件資料/Demo/other”目錄下的ros-archive-keyring.gpg文件拷貝到Ubuntu系統(tǒng)"/usr/share/keyrings/"目錄。執(zhí)行如下命令,安裝ros工具。

Host# sudo cp ros-archive-keyring.gpg /usr/share/keyrings/

Host# sudo echo "deb [arch=amd64 signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] https://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

Host# sudo apt update

Host# sudo apt install ros-humble-ros-base -y

wKgZPGoCnpSAbw0BAAGB0uJ6UTU242.png

wKgZO2oCnp6AdRc0AAE3sNj_OUI157.png

wKgZPGoCnpSAXRBDAAC44huTjFI366.png

執(zhí)行如下命令,安裝編譯所需的colcon工具。

Host# curl -s https://packagecloud.io/install/repositories/dirk-thomas/vcstool/script.deb.sh | sudo bash

Host# sudo apt update

Host# sudo apt-get install -y python3-pip python3-rosdep2 python3-rosinstall-generator python3-vcstool build-essential

Host# pip3 install -U colcon-common-extensions

Host# pip3 uninstall empy

Host# pip3 install empy==3.3.4

wKgZPGoCnrOAHfXYAAH8a_t_Bsc865.png

wKgZPGoCnrOAZGWjAAHYonyUjDk731.png

wKgZO2oCnrOAbQ1WAAJB2P7yqxU275.png

wKgZO2oCnrOAQQSOAAGuSZ3WEz8940.png

執(zhí)行如下命令,配置環(huán)境變量。

Host# export PATH=${PATH}:/home/tronlong/.local/bin

wKgZO2oCnsGAAynwAAAnQZrPbtM902.png

2.2編譯ROS軟件包

請根據(jù)交叉編譯工具鏈實際解壓路徑,執(zhí)行如下命令,配置交叉編譯工具鏈。

Host# source /home/tronlong/RK3576/environment

Host# source /opt/ros/humble/local_setup.bash

wKgZO2oCnseAYlIaAAA8V6fF2Bk814.png

執(zhí)行如下命令,創(chuàng)建ROS軟件包的工作目錄,并進入該目錄,目錄可命名為任意名稱。

Host# mkdir ros2_project_test

Host# cd ros2_project_test

wKgZO2oCnsyAaCdYAAA59d9Mb0M786.png

執(zhí)行如下命令,創(chuàng)建ROS軟件包源碼目錄,并進入該目錄。

Host# mkdir src

Host# cd src

wKgZO2oCntGAUc0iAAA901P1tgU178.png

執(zhí)行如下命令,在源碼目錄下生成my_package包。本案例以構(gòu)建CPP功能包為例,如需構(gòu)建Python功能包可將參數(shù)ament_cmake改為ament_python。

Host# ros2 pkg create --build-type ament_cmake --node-name my_node my_package

wKgZPGoCnteAIusqAAFnJAULcCM731.png

參數(shù)解析:

--build-type ament_cmake :指定軟件包的構(gòu)建類型為ament_cmake;

--node-name my_node:為軟件包指定了一個my_node節(jié)點;

--my_package:軟件包的名稱為my_package。

完成構(gòu)建后,ROS軟件包源碼目錄結(jié)構(gòu)如下所示。可根據(jù)實際需要對"my_package/src/my_node.cpp"進行修改。

wKgZO2oCnt2AOJkTAABZ8jJ4Zms462.png

返回ROS軟件包工作目錄,編譯軟件包。

Host# cd ..

Host# colcon build

wKgZPGoCnueAQApiAABjHjrFg_M655.png

編譯完成后在當前目錄下生成如下目錄,目錄內(nèi)容如下表所示。

wKgZO2oCnvCAflLeAAAtSyIdlpE342.png

wKgZO2oCnviAKgx5AAAbzZPri8Q224.png

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 機器人
    +關(guān)注

    關(guān)注

    214

    文章

    31585

    瀏覽量

    224183
  • 創(chuàng)龍科技
    +關(guān)注

    關(guān)注

    2

    文章

    141

    瀏覽量

    8653
  • rk3576
    +關(guān)注

    關(guān)注

    1

    文章

    313

    瀏覽量

    1705
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    RK3562 單板機嵌入式 ROS2 開發(fā)指南:環(huán)境搭建與工程編譯

    本文為創(chuàng)龍科技RK3562 單板機 ROS2 Foxy 開發(fā)指南,涵蓋系統(tǒng)測試與開發(fā)流程。詳細
    的頭像 發(fā)表于 03-27 11:26 ?7509次閱讀
    <b class='flag-5'>RK</b>3562 <b class='flag-5'>單板機</b>嵌入式 <b class='flag-5'>ROS2</b> 開發(fā)指南:環(huán)境搭建與工程<b class='flag-5'>編譯</b>

    米爾RK3576成功上車!ROS2 Humble生態(tài)系統(tǒng)體驗

    教育實驗與原型驗證 米爾基于RK3576開發(fā)板 核心優(yōu)勢 國產(chǎn)化價值:鏈路自主可控,助力機器人領(lǐng)域國產(chǎn)替代 成本優(yōu)勢:千元級開發(fā)板實現(xiàn)完整ROS2開發(fā)環(huán)境 功耗表現(xiàn):典型場景功耗優(yōu)于
    發(fā)表于 01-15 18:30

    開發(fā)必看,RK3576基于Ubuntu22.04安裝 測試ROS2機器人系統(tǒng)

    本文介紹基于Ubuntu22.04安裝ROS2機器人系統(tǒng)教程,并附帶詳細測試方法,基于觸覺智能RK3576核心板方案,使用配套開發(fā)板PurplePiOH2演示。
    的頭像 發(fā)表于 03-13 17:48 ?496次閱讀
    開發(fā)必看,<b class='flag-5'>RK3576</b>基于Ubuntu22.04安裝 <b class='flag-5'>測試</b><b class='flag-5'>ROS2</b>機器人系統(tǒng)

    RK3576 單板機系統(tǒng)使用手冊:配置、升級與組件安裝指南(一)

    本文為創(chuàng)龍科技RK3576 單板機系統(tǒng)使用指南,全面覆蓋系統(tǒng)基礎(chǔ)配置、升級流程與組件安裝。詳解內(nèi)存存儲分區(qū)、網(wǎng)絡(luò)靜態(tài) IP 配置、OTA/U 盤升級操作,以及常用開發(fā)組件
    的頭像 發(fā)表于 04-02 10:46 ?280次閱讀
    <b class='flag-5'>RK3576</b> <b class='flag-5'>單板機</b>系統(tǒng)使用手冊:配置、升級與組件安裝指南(一)

    RK3576 單板機系統(tǒng)使用手冊:配置、升級與組件安裝指南(二)

    本文為創(chuàng)龍科技RK3576 單板機系統(tǒng)使用指南,全面覆蓋系統(tǒng)基礎(chǔ)配置、升級流程與組件安裝。詳解內(nèi)存存儲分區(qū)、網(wǎng)絡(luò)靜態(tài) IP 配置、OTA/U 盤升級操作,以及常用開發(fā)組件
    的頭像 發(fā)表于 04-03 11:39 ?1112次閱讀
    <b class='flag-5'>RK3576</b> <b class='flag-5'>單板機</b>系統(tǒng)使用手冊:配置、升級與組件安裝指南(二)

    RK3576 單板機系統(tǒng)使用手冊:配置、升級與組件安裝指南(三)

    本文為創(chuàng)龍科技RK3576 單板機系統(tǒng)使用指南,全面覆蓋系統(tǒng)基礎(chǔ)配置、升級流程與組件安裝。詳解內(nèi)存存儲分區(qū)、網(wǎng)絡(luò)靜態(tài) IP 配置、OTA/U 盤升級操作,以及常用開發(fā)組件
    的頭像 發(fā)表于 04-07 11:40 ?211次閱讀
    <b class='flag-5'>RK3576</b> <b class='flag-5'>單板機</b>系統(tǒng)使用手冊:配置、升級與組件安裝指南(三)

    RK3576 單板機 LinuxSDK 開發(fā)與系統(tǒng)定制手冊(一)

    本文為創(chuàng)龍科技RK3576 單板機 Linux 系統(tǒng)開發(fā)指南,涵蓋 SDK 搭建、內(nèi)核與引導(dǎo)程序開發(fā)、根文件系統(tǒng)修改、鏡像打包、分區(qū)配置及硬件資源調(diào)優(yōu)等流程。提供命令實操、參數(shù)說明與
    的頭像 發(fā)表于 04-15 11:18 ?853次閱讀
    <b class='flag-5'>RK3576</b> <b class='flag-5'>單板機</b> LinuxSDK 開發(fā)與系統(tǒng)定制手冊(一)

    RK3576 單板機 LinuxSDK 開發(fā)與系統(tǒng)定制手冊(二)

    本文為創(chuàng)龍科技RK3576 單板機 Linux 系統(tǒng)開發(fā)指南,涵蓋 SDK 搭建、內(nèi)核與引導(dǎo)程序開發(fā)、根文件系統(tǒng)修改、鏡像打包、分區(qū)配置及硬件資源調(diào)優(yōu)等流程。提供命令實操、參數(shù)說明與
    的頭像 發(fā)表于 04-16 15:39 ?828次閱讀
    <b class='flag-5'>RK3576</b> <b class='flag-5'>單板機</b> LinuxSDK 開發(fā)與系統(tǒng)定制手冊(二)

    RK3576 單板機 C/Python/MQTT 應(yīng)用開發(fā)手冊(一)

    本文為創(chuàng)龍科技RK3576 單板機應(yīng)用開發(fā)指南,包含開發(fā)環(huán)境配置、GDB 調(diào)試、外設(shè)控制(LED/CAN/ 串口)、Python 開發(fā)及 MQTT 通信案例。提供完整編譯命令、代碼解析
    的頭像 發(fā)表于 04-20 13:55 ?589次閱讀
    <b class='flag-5'>RK3576</b> <b class='flag-5'>單板機</b> C/Python/MQTT 應(yīng)用開發(fā)手冊(一)

    RK3576 單板機 C/Python/MQTT 應(yīng)用開發(fā)手冊(二)

    本文為創(chuàng)龍科技RK3576 單板機應(yīng)用開發(fā)指南,包含開發(fā)環(huán)境配置、GDB 調(diào)試、外設(shè)控制(LED/CAN/ 串口)、Python 開發(fā)及 MQTT 通信案例。提供完整編譯命令、代碼解析
    的頭像 發(fā)表于 04-21 10:43 ?172次閱讀
    <b class='flag-5'>RK3576</b> <b class='flag-5'>單板機</b> C/Python/MQTT 應(yīng)用開發(fā)手冊(二)

    RK3576 單板機高清視頻圖像處理開發(fā)實戰(zhàn)手冊(一)

    本文為創(chuàng)龍科技RK3576 單板機視頻圖像處理開發(fā)指南,詳解視頻輸入輸出、編解碼、RGA2.5、GPU、NPU 等硬件架構(gòu)。包含 GStreamer 硬解碼 / 編碼、RTSP 網(wǎng)絡(luò)流、GigE
    的頭像 發(fā)表于 04-27 09:36 ?150次閱讀
    <b class='flag-5'>RK3576</b> <b class='flag-5'>單板機</b>高清視頻圖像處理開發(fā)實戰(zhàn)手冊(一)

    RK3576 單板機高清視頻圖像處理開發(fā)實戰(zhàn)手冊(二)

    本文為創(chuàng)龍科技RK3576 單板機視頻圖像處理開發(fā)指南,詳解視頻輸入輸出、編解碼、RGA2.5、GPU、NPU 等硬件架構(gòu)。包含 GStreamer 硬解碼 / 編碼、RTSP 網(wǎng)絡(luò)流、GigE
    的頭像 發(fā)表于 04-28 10:33 ?128次閱讀
    <b class='flag-5'>RK3576</b> <b class='flag-5'>單板機</b>高清視頻圖像處理開發(fā)實戰(zhàn)手冊(二)

    RK3576 單板機高清視頻圖像處理開發(fā)實戰(zhàn)手冊(三)

    本文為創(chuàng)龍科技RK3576 單板機視頻圖像處理開發(fā)指南,詳解視頻輸入輸出、編解碼、RGA2.5、GPU、NPU 等硬件架構(gòu)。包含 GStreamer 硬解碼 / 編碼、RTSP 網(wǎng)絡(luò)流、GigE
    的頭像 發(fā)表于 04-29 09:49 ?260次閱讀
    <b class='flag-5'>RK3576</b> <b class='flag-5'>單板機</b>高清視頻圖像處理開發(fā)實戰(zhàn)手冊(三)

    RK3576 單板機 NPU 邊緣 AI 開發(fā)手冊

    本文為創(chuàng)龍科技RK3576 單板機 NPU 開發(fā)指南,介紹 NPU 硬件特性、RKNN 開發(fā)流程,包含 YOLOv5 目標檢測與 DeepSeek LLM 大模型兩大案例。覆蓋模型加載、圖像預(yù)處理
    的頭像 發(fā)表于 05-09 10:50 ?80次閱讀
    <b class='flag-5'>RK3576</b> <b class='flag-5'>單板機</b> NPU 邊緣 AI 開發(fā)手冊

    基于RK3576單板機的Modbus數(shù)據(jù)采集開發(fā)指南

    本文為創(chuàng)龍科技RK3576 單板機 Modbus 開發(fā)指南,基于 Modbus RTU 協(xié)議實現(xiàn)溫濕度采集、數(shù)據(jù)打印與日志存儲。包含硬件連接、參數(shù)配置、程序編譯、板端運行與數(shù)據(jù)解析,支持一鍵采集、自動保存 CSV 文件。創(chuàng)龍科技
    的頭像 發(fā)表于 05-16 13:52 ?61次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>單板機</b>的Modbus數(shù)據(jù)采集開發(fā)指南
    南靖县| 嘉黎县| 深州市| 临安市| 阿勒泰市| 新乐市| 永嘉县| 武鸣县| 南江县| 上虞市| 湖北省| 山东省| 磐石市| 马关县| 龙泉市| 宁波市| 镇雄县| 惠安县| 从江县| 彩票| 睢宁县| 新宁县| 海林市| 区。| 岫岩| 乌兰浩特市| 昭通市| 贵港市| 湟源县| 鹤庆县| 宜宾县| 阜南县| 海林市| 浪卡子县| 泸定县| 清水河县| 尼玛县| 华亭县| 黑山县| 苍南县| 益阳市|