ROS2学习(4)------ROS2工作空间介绍

  • 操作系统:ubuntu22.04
  • IDE:Visual Studio Code
  • 编程语言:C++11
  • ROS版本:2

ROS 2(Robot Operating System 2)工作空间是开发和管理ROS 2软件包的主要方式。它提供了一个结构化的环境,使得开发者可以轻松地创建、修改、编译和运行他们的ROS 2项目。以下是关于ROS 2工作空间的详细介绍:

工作空间结构

一个典型的ROS 2工作空间目录结构如下所示:

ros2_ws/
├── src/         # 源代码目录
│   ├── package1/
│   │   ├── CMakeLists.txt
│   │   ├── package.xml
│   │   └── scripts/  # 或其他子目录存放源文件
│   └── package2/
│       └── ...
├── build/       # 编译生成的中间文件存放目录
├── install/     # 安装后的文件存放目录
└── log/         # 日志文件存放目录
  • src/:这是放置所有你的ROS 2软件包的地方。每个软件包通常包含package.xml(定义包的元信息)、CMakeLists.txt(构建配置文件),以及相关的源代码、资源和脚本。

  • build/:当你使用colcon工具来编译你的工作空间时,生成的中间文件会被放置在这个目录中。这些文件包括编译器输出的目标文件、库文件等。

  • install/:编译完成后,最终的可执行文件、库文件和其他资源将被安装到这个目录下。你可以通过source install/setup.bash(或其他shell对应的脚本)来设置当前shell会话中的环境变量,从而能够找到并运行你编译好的ROS 2节点。

  • log/:某些情况下,如使用ros2 launch命令启动多个节点时,日志信息可能会被保存在这个目录下。

创建一个新的工作空间

要开始一个新的ROS 2项目,你需要首先创建工作空间的根目录,并在其中创建src目录用于存放软件包:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src

然后,你可以根据需要添加自己的ROS 2软件包。例如,使用ros2 pkg create命令创建一个新的ROS 2包:

ros2 pkg create my_package --build-type ament_cmake --dependencies rclcpp std_msgs

这将在src目录下创建一个名为my_package的新包,并自动为你生成基本的CMakeLists.txt和package.xml文件。

编译工作空间

完成软件包的创建或修改后,你需要编译整个工作空间。使用colcon作为构建工具:

cd ~/ros2_ws
colcon build

如果只想编译特定的包,可以使用如下命令:

colcon build --packages-select my_package

设置环境

每次打开新的终端窗口时,都需要重新source你的工作空间的setup脚本,以便更新环境变量,使系统能够识别新安装的软件包。你可以这样做:

source ~/ros2_ws/install/setup.bash

为了简化这一过程,可以在你的.bashrc文件中添加上述命令,这样每次启动新的终端时都会自动执行。

运行节点

一旦完成了工作空间的编译和环境设置,就可以运行你的ROS 2节点了。例如,如果你有一个名为talker的节点,可以通过以下命令运行它:

ros2 run my_package talker
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

村北头的码农

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值