Ros2 操作指令记录

目录

[1. 创建功能包](#1. 创建功能包)

[2. 列出可执行文件](#2. 列出可执行文件)

3.列出所有的包

[4. 输出某个包所在路径的前缀](#4. 输出某个包所在路径的前缀)

[5. 通过更改src下的部分文件来改变install,修改 python 脚本时不必重新build](#5. 通过更改src下的部分文件来改变install,修改 python 脚本时不必重新build)

[7. 返回话题列表 和 接口类型](#7. 返回话题列表 和 接口类型)

[8. 打开小海龟](#8. 打开小海龟)


Topic_ws工作空间下进行colcon build编译,产生build、install、log3个文件夹

1. 创建功能包

复制代码
ros2 pkg create <package-name> --build-type {cmake,ament_cmake,ament_python} --dependencies <依赖名字>

2. 列出可执行文件

复制代码
ros2 pkg executables
# 列出turtlesim功能包的所有可执行文件
ros2 pkg executables turtlesim

3.列出所有的包

复制代码
ros2 pkg list

4. 输出某个包所在路径的前缀

复制代码
ros2 pkg prefix  <package-name>

ros2 pkg prefix turtlesim

5. 通过更改src下的部分文件来改变install,修改 python 脚本时不必重新build

复制代码
colcon build --symlink-install

6. 创建CPP功能包

cpp 复制代码
1.创建软件包
ros2 pkg create example_cpp --build-type ament_cmake --dependencies rclcpp
--pkg create 是创建包的意思
--build-type 用来指定该包的编译类型,一共有三个可选项ament_python、ament_cmake、cmake
--dependencies 指的是这个功能包的依赖,这里小鱼给了一个ros2的C++客户端接口rclcpp
2.修改cmakelist
add_executable(node_01 src/node_01.cpp)
ament_target_dependencies(node_01 rclcpp)
install(TARGETS
  node_01
  DESTINATION lib/${PROJECT_NAME}
)

7. 返回话题列表 和 接口类型

复制代码
 ros2 topic list -t

8. 打开小海龟

复制代码
ros2 run turtlesim turtlesim_node

9. 查看节点和话题

复制代码
ros2 topic list
ros2 node list
ros2 node echo 节点名称,查看话题接口
ros2 topic encho 话题接口

10. 查看话题的具体数据结构

复制代码
ros2 interface show <topic_name>
相关推荐
ZhengEnCi3 小时前
08c. 检索算法与策略-混合检索
后端·python·算法
不想写代码的星星7 小时前
C++继承、组合、聚合:选错了是屎山,选对了是神器
c++
明月_清风8 小时前
Python 内存手术刀:sys.getrefcount 与引用计数的生死时速
后端·python
明月_清风9 小时前
Python 消失的内存:为什么 list=[] 是新手最容易踩的“毒苹果”?
后端·python
Flittly1 天前
【从零手写 ClaudeCode:learn-claude-code 项目实战笔记】(3)TodoWrite (待办写入)
python·agent
千寻girling1 天前
一份不可多得的 《 Django 》 零基础入门教程
后端·python·面试
databook1 天前
探索视觉的边界:用 Manim 重现有趣的知觉错觉
python·动效
不想写代码的星星1 天前
std::function 详解:用法、原理与现代 C++ 最佳实践
c++
明月_清风1 天前
Python 性能微观世界:列表推导式 vs for 循环
后端·python
明月_清风1 天前
Python 性能翻身仗:从 O(n) 到 O(1) 的工程实践
后端·python