ros2初理解——工作空间、功能包、节点

本文详细介绍了在ROS2中如何操作工作空间、创建和管理功能包(类似于Python包),以及创建、编译和运行节点的过程,包括使用`ros2pkg`,`cd`,`mkdir`,`tree`,`entry_points`等关键命令。
摘要由CSDN通过智能技术生成

1 层级关系

工作空间————功能包————节点

  • 工作空间相当于文件夹
  • 功能包相当于一个类
  • 节点相当于一个函数

2 对应指令

2.1 工作空间

创建工作空间

mkdir -p town_ws/src

查看工作空间下的架构

cd town_ws/src
tree

2.2 功能包

定位到工作空间下

cd town_ws/src

创建功能包

## ros2 pkg create <功能包名称>  --build-type  {cmake,ament_cmake,ament_python}  --dependencies <依赖名字>

## 比如
ros2 pkg create village_li --build-type ament_python --dependencies rclpy

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

ros2 pkg prefix  <功能包名>

列出所有可执行文件(格式是:功能包名 节点名)

ros2 pkg executables
ros2 pkg executables <功能包名>   # 指定功能包

包的清单描述文件(名字,构建工具,编译信息,拥有者,干啥用的等)

ros2 pkg xml turtlesim 

2.3 节点

创建节点

cd 工作空间
home ./                         #打开vscode
在src/village_li/village/li下(有_init_.py)同级目录下,创建一个.py的节点文件,在vscode下编辑
在setup.py下的目录“entry_points“里加入节点的入口
eg.    entry_points={
        'console_scripts': [
            "li4_node=village_li.li4:main"
        ],
    },

编译节点

cd 工作空间
colcon build
source install/setup.bash

打印存在节点的列表(检查节点是否编译成功)

ros2 pkg list | grep village    # grep是过滤

运行节点

ros2 run <功能包>  <节点>
eg. ros2 run village_li li4_node

查看正在运行的节点

ros2 node list

查看运行节点的信息(发布了什么等等)

ros2 info /<节点名>

列出所有可执行文件(格式是:功能包名 节点名)

ros2 pkg executables
ros2 pkg executables <功能包名>   # 指定功能包
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值