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>
相关推荐
OOJO43 分钟前
c++---list介绍
c语言·开发语言·数据结构·c++·算法·list
派大星~课堂2 小时前
【力扣-142. 环形链表2 ✨】Python笔记
python·leetcode·链表
Thomas.Sir2 小时前
第一章:Agent智能体开发实战之【初步认识 LlamaIndex:从入门到实操】
人工智能·python·ai·检索增强·llama·llamaindex
笨笨饿2 小时前
29_Z变换在工程中的实际意义
c语言·开发语言·人工智能·单片机·mcu·算法·机器人
kobesdu3 小时前
综合强度信息的激光雷达去拖尾算法解析和源码实现
算法·机器人·ros·slam·激光雷达
ZTL-NPU3 小时前
Jetbrains开发ros
ide·python·pycharm·编辑器·ros·clion
会编程的土豆3 小时前
【数据结构与算法】动态规划
数据结构·c++·算法·leetcode·代理模式
环黄金线HHJX.4 小时前
TSE框架配置与部署详解
开发语言·python
前端摸鱼匠4 小时前
YOLOv11与OpenCV 联动实战:读取摄像头实时视频流并用 YOLOv11 进行检测(三)
人工智能·python·opencv·yolo·目标检测·计算机视觉·目标跟踪
Pyeako4 小时前
PyQt5 + PaddleOCR实战:打造桌面级实时文字识别工具
开发语言·人工智能·python·qt·paddleocr·pyqt5