ROS入门之package

本文详细介绍ROS功能包(package)的概念,包括其基本组成如CMakeLists.txt和package.xml的作用,自定义通信内容的方法,以及launch和config文件的使用。同时,文章提供了创建和管理ROS包的实用指令和实践步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

什么是package

package:功能包,是ros软件的基本组成形式,是catkin编译的基本单元。一个package可以包含多个可执行文件。
在这里插入图片描述
package只有有这两个文件,才能被编译系统认为是package。

CmakeList.txt

CmakeList.txt规定编译规则。源文件,依赖,目标文件等。。。
在这里插入图片描述

在创建package时候,会生成模板,然后来改就好。

package.xml

package.xml文件定义package的属性信息,作者,维护者等。只需要改划横线的地方就好。
在这里插入图片描述
老版本叫manifest.xml

代码文件

在这里插入图片描述
scripts:脚本文件
include:头文件
scr:python或者cpp

自定义通信内容(消息,服务,动作)

在这里插入图片描述

launch文件、配置文件

将可执行文件组织起来
launch一次运行多个可执行文件
config:参数,设置
在这里插入图片描述

总结

在这里插入图片描述

常用包管理指令

在这里插入图片描述

比如用rosed命令。

rosed test1 CMakeLists.txt 

可以直接打开这个CMakeLists.txt 文件,因为这个文件是编译规则的模板,生成message就只需要将注释去掉,等。
在这里插入图片描述
第六个用在github上clone的package

实践

tree软件可以查看结构
在这里插入图片描述
创建package且自动添加依赖进CMakeLists.txt和package.xml

catkin_create_pkg test1 roscpp rospy std_msgs nav_msgs#c++,py编成API,通信,导航

clone的文件放在src中,然后回到工作空间安装依赖,最后编译。

下面的代码是将这个命令放在这个环境变量文件中,这样每开一个终端就可以自动执行source。这样才能用之前讲的命令去操作。

echo "source ~/ros_test/devel/setup.bash">> ~/.bashrc
rospack profile#刷新环境命令
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值