ros2有兩個(gè)啟動(dòng)程序的選項(xiàng):
直接運(yùn)行可執(zhí)行文件,啟動(dòng) ROS2 程序。
啟動(dòng)啟動(dòng)文件,啟動(dòng) ROS2 程序。
#直接運(yùn)行可執(zhí)行文件。命令結(jié)構(gòu)如下 ros2 run 第一個(gè)參數(shù)是包含可執(zhí)行文件的軟件包名稱(chēng)。 第二個(gè)參數(shù)是(該軟件包內(nèi)的)可執(zhí)行文件的名稱(chēng)。 使用啟動(dòng)文件時(shí),命令結(jié)構(gòu)如下: ros2 launch 第一個(gè)參數(shù)是包含啟動(dòng)文件的軟件包名稱(chēng)。 第二個(gè)參數(shù)是啟動(dòng)文件的名稱(chēng)(在該軟件包內(nèi))。
在 ROS2 中,您可以創(chuàng)建兩種類(lèi)型的軟件包: Python 軟件包 CMake (C++) 軟件包 在本課程中,我們將重點(diǎn)討論第一種類(lèi)型。Python 包將包含 Python 可執(zhí)行文件。 每個(gè) Python 軟件包都會(huì)有如下的文件和文件夾結(jié)構(gòu): package.xml- 包含軟件包元信息(軟件包維護(hù)者、依賴(lài)關(guān)系等)的文件。 setup.py- 文件,其中包含如何編譯軟件包的說(shuō)明。 setup.cfg- 包含如何安裝軟件包的說(shuō)明。 src/- 該目錄以您的軟件包命名。您將把所有 Python 腳本放在該文件夾中。默認(rèn)情況下,它已經(jīng)包含了一個(gè)空的__init__.py 文件。
source /opt/ros/humble/setup.bash
ros2 pkg create --build-type ament_python --dependencies
編譯colcon build
colcon build --packages-select
source install/setup.bash
列出所有包
ros2 pkg list ros2 pkg list | grep
ros2的程序編寫(xiě)
#!/usr/bin/env python 在 Python 文件的第一行放置shebang (或hashbang),指示應(yīng)使用哪個(gè)解釋器來(lái)執(zhí)行腳本。 rclcpp:用于C++ 的 ROS2 客戶(hù)端庫(kù)。 rclpy:Python 的 ROS2 客戶(hù)端庫(kù)。 有一個(gè)RUST ros2_client 正在受到越來(lái)越多的關(guān)注 ,ROS2 客戶(hù)端庫(kù),類(lèi)似于原生 Rust 中的 rclcpp 或 rclpy 庫(kù)。底層 DDS 實(shí)現(xiàn),RustDDS,也是原生的 Rust。
import rclpy
def main(args=None):
rclpy.init(args=args)
使用ROS2 的 Python 客戶(hù)端庫(kù)來(lái)初始化程序所需的ROS2 通信和系統(tǒng)。
rclpy.shutdown()
關(guān)閉所有通過(guò)rclpy.init(args=args) 啟動(dòng)的與 ROS2 相關(guān)的系統(tǒng)連接。
審核編輯 黃宇
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
-
C++
+關(guān)注
關(guān)注
22文章
2123瀏覽量
77110 -
python
+關(guān)注
關(guān)注
57文章
4876瀏覽量
90022 -
ROS
+關(guān)注
關(guān)注
1文章
293瀏覽量
18722 -
CMake
+關(guān)注
關(guān)注
0文章
29瀏覽量
1796
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
熱點(diǎn)推薦
飛凌嵌入式ElfBoard-進(jìn)程之什么是進(jìn)程
會(huì)解析命令并查找對(duì)應(yīng)的可執(zhí)行文件位置,通常在系統(tǒng)的 PATH 環(huán)境變量中指定的目錄中。2.Shell 使用 fork() 函數(shù)創(chuàng)建一個(gè)新進(jìn)程。操作系統(tǒng)在內(nèi)核中為新進(jìn)程分配一個(gè)唯一的進(jìn)程 ID,并復(fù)制父
發(fā)表于 01-26 08:42
米爾RK3576成功上車(chē)!ROS2 Humble生態(tài)系統(tǒng)體驗(yàn)
可控
多媒體
VPU硬解視頻播放
流暢支持
AI能力
NPU推理,支持RKNN模型
默認(rèn)支持
容器化
Docker引擎
開(kāi)箱即用
二、ROS2核心功能測(cè)試1. 環(huán)境驗(yàn)證ROS_VERSION=
發(fā)表于 01-15 18:30
如何將Python GUI程序打包成EXE可執(zhí)行文件
如果我們給同事展示一個(gè)命令行,他們可能會(huì)有點(diǎn)“嚇人”的感覺(jué),擔(dān)心忘記或輸錯(cuò)參數(shù)。而一個(gè) UI 界面則是一目了然,“選擇固件→點(diǎn)擊下載”這樣的流程幾乎零學(xué)習(xí)成本。
求助,關(guān)于置頂?shù)膃clipse調(diào)試問(wèn)題求解
我剛從官網(wǎng)下載的NucleiStudioIde,下載的壓縮包里面自帶toolchain,并且包括 openocd ,gcc,buildtool,而且可執(zhí)行文件是riscv-none-embed開(kāi)頭
發(fā)表于 11-10 06:34
創(chuàng)龍 瑞芯微 RK3588 國(guó)產(chǎn)2.4GHz八核 工業(yè)開(kāi)發(fā)板—ROS2系統(tǒng)使用說(shuō)明
本文圍繞創(chuàng)龍科技研發(fā)的評(píng)估板,詳解 ROS2 系統(tǒng)使用方法。涵蓋 ROS2 環(huán)境搭建、核心概念講解、節(jié)點(diǎn)通信測(cè)試、功能包創(chuàng)建與編譯,以及可視化工具 RViz 的使用,還包括基于評(píng)估板的
飛凌嵌入式ElfBoard-Vim編輯器之GCC的基本使用
:~/work/example/hello$ gcc hello.c -o hello_ubuntu可以看到,hello.c文件被編譯成功,生成可執(zhí)行文件hello_ubuntu,我們?cè)诮K端運(yùn)行
發(fā)表于 10-16 09:05
如何使用menuconfig添加配置micro-ros軟件包?
請(qǐng)問(wèn)有沒(méi)有最新的rtthread移植micro-ros移植使用教程,使用menuconfig添加配置micro-ros軟件包?
發(fā)表于 09-25 06:37
請(qǐng)問(wèn)mirco ros2的lib庫(kù)怎么生成?
想使用MDK開(kāi)發(fā)mirco_ros2,但是網(wǎng)上怎么找都沒(méi)有相應(yīng)的lib庫(kù)及生成教程,想問(wèn)下有沒(méi)有人能解決這個(gè)問(wèn)題,因?yàn)轫?xiàng)目開(kāi)始就用MDK開(kāi)發(fā),也習(xí)慣了,改用其他功能可能會(huì)很費(fèi)時(shí)。
發(fā)表于 09-22 07:28
【Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】移植lrzsz方便使用zmodem進(jìn)行文件傳輸
生成的可執(zhí)行文件位于src下三. 測(cè)試導(dǎo)出文件到開(kāi)發(fā)板scp src/lrz root@192.168.42.1:/root
需要輸入密碼milkv
scp src/lsz
發(fā)表于 07-08 15:01
硬核上車(chē)!RK3576基于Ubuntu部署ROS機(jī)器人系統(tǒng)詳細(xì)攻略(上)
的具體版本版本說(shuō)明RockchipLinuxSDK基于Buildroot系統(tǒng)構(gòu)建,并持續(xù)在更新升級(jí)工具鏈、軟件包到較新的版本。因此最新的SDK在編譯ROS2時(shí),可能會(huì)
【「# ROS 2智能機(jī)器人開(kāi)發(fā)實(shí)踐」閱讀體驗(yàn)】視覺(jué)實(shí)現(xiàn)的基礎(chǔ)算法的應(yīng)用
閱讀心得體會(huì):ROS2機(jī)器人視覺(jué)與地圖構(gòu)建技術(shù)
通過(guò)對(duì)本書(shū)第7章(ROS2視覺(jué)應(yīng)用)和第8章(ROS2地圖構(gòu)建)的學(xué)習(xí),我對(duì)機(jī)器人視覺(jué)感知和自主導(dǎo)航的核心技術(shù)有了更深入的理解。以下是我的心得體會(huì)
發(fā)表于 05-03 19:41
【「# ROS 2智能機(jī)器人開(kāi)發(fā)實(shí)踐」閱讀體驗(yàn)】機(jī)器人入門(mén)的引路書(shū)
的非常好的,特別是一些流程圖,很清晰的闡釋了概念
很適合作為初學(xué)者入門(mén)的引路書(shū)
還能了解很多技術(shù)和框架,破除初學(xué)者的自負(fù)困境,讓初學(xué)者知道功能是由很多開(kāi)發(fā)者維護(hù)的,前人已經(jīng)為各種產(chǎn)品搭建了完善的框架。避免陷入得一個(gè)人單打獨(dú)斗的錯(cuò)覺(jué)
一直蠢蠢欲動(dòng)ros2和機(jī)器人的同學(xué),有了
發(fā)表于 04-30 01:05
【「# ROS 2智能機(jī)器人開(kāi)發(fā)實(shí)踐」閱讀體驗(yàn)】+ROS2應(yīng)用案例
地圖構(gòu)建,包括算法原理介紹、安裝與配置方法、仿真環(huán)境中的SLAM以及真實(shí)機(jī)器人上的SLAM。
這一過(guò)程不僅涉及到計(jì)算機(jī)視覺(jué)和機(jī)器人學(xué)的知識(shí),還需要對(duì)ROS 2的節(jié)點(diǎn)管理和數(shù)據(jù)處理有一定的了解。通過(guò)實(shí)踐
發(fā)表于 04-27 11:42
PADS導(dǎo)出.318文件遺漏器件
使用PADS LAYOUT的CAM PLUS功能導(dǎo)出貼片機(jī)可執(zhí)行文件的時(shí)候會(huì)忽略這個(gè)器件的坐標(biāo),因?yàn)檐浖R(shí)別為NO SMD了,這怎么解決,我需要的是 YES SMND
發(fā)表于 04-12 14:14
初識(shí)ros2 功能包建立與可執(zhí)行文件的配置
評(píng)論