ROS2与C++入门教程-新建ros2包
ROS2与C++入门教程-新建ros2包
说明:
- 介绍如何创建ros2的软件包
概念:
- 可以将包视为ROS 2代码的容器。
- 如果您希望能够安装代码或与他人共享代码,则需要将其组织在一个软件包中。
- 使用软件包,您可以发布ROS 2的工作,并允许其他人轻松构建和使用它。
- ROS 2中的软件包创建使用ament作为其构建系统,并使用colcon作为其构建工具。
- 您可以使用官方支持的CMake或Python创建软件包。
步骤:
- 进入工作空间
cd ~/dev_ws/src
- 创建ros2包
~/dev_ws/src$ ros2 pkg create --build-type ament_cmake --node-name my_node my_package
going to create a new package
package name: my_package
destination directory: /home/ubuntu/dev_ws/src
package format: 3
version: 0.0.0
description: TODO: Package description
maintainer: ['ubuntu <ubuntu@todo.todo>']
licenses: ['TODO: License declaration']
build type: ament_cmake
dependencies: []
node_name: my_node
creating folder ./my_package
creating ./my_package/package.xml
creating source and include folder
creating folder ./my_package/src
creating folder ./my_package/include/my_package
creating ./my_package/CMakeLists.txt
creating ./my_package/src/my_node.cpp
- 编译包
cd ~/dev_ws
~/dev_ws$ colcon build --symlink-install --packages-select my_package
Starting >>> my_package
Finished <<< my_package [1.03s]
Summary: 1 package finished [1.13s]
- 可以通过--packages-select指定编译的包
- 重新加载工作空间
cd ~/dev_ws
. install/setup.bash
- 运行包
~/dev_ws$ ros2 run my_package my_node
hello world my_package package
软件包解析:
- 包目录结构:
~/dev_ws/src/my_package$ tree
.
├── CMakeLists.txt #告诉编译器如何编译的文件
├── include
│ └── my_package #自定义的头文件
├── package.xml #包相关信息文件
└── src
└── my_node.cpp #源文件,具体实现功能的文件
3 directories, 3 files
获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号