博客
关于我
四. 创建工作空间与功能包
阅读量:511 次
发布时间:2019-03-07

本文共 1283 字,大约阅读时间需要 4 分钟。

ROS 工作空间与功能包配置指南

一、工作空间(workspace)概述

工作空间是ROS开发中的核心文件夹,用于存储项目相关文件,类似于IDE的工程文件夹。每个工作空间包含以下四个主要文件夹:

  • src(代码空间,Source Space)

    用于存放功能包(package),是功能包的主要开发目录。

  • build(编译空间,Build Space)

    存放编译过程中生成的中间文件,不需独立管理。

  • devel(开发空间,Development Space)

    包含编译生成的可执行文件、库文件及开发脚本(在ROS 1中使用,ROS 2则仅保留install)。

  • install(安装空间,Install Space)

    存放通过install命令安装的文件及可执行文件(ROS 1和ROS 2均使用)。

  • 注意事项:

    在ROS 2中,devel和install具有重复功能仅保留install,ROS 1仍维持devel和install.


    二、创建工作空间

    1. 创建工作空间

    新建工作空间:

    mkdir -p ~/catkin_ws/srccd ~/catkin_ws/srccatkin_init_workspace

    工作空间命名可自定义,src目录名不可更改。

    2. 编译工作空间

    进入根目录并编译:

    cd ~/catkin_ws/catkin_make

    catkin_make生成build和devel文件夹,catkin_make install可选用安装目标。

    3. 设置环境变量

    source devel/setup.bash

    添加ROS环境变量ROS_PACKAGE_PATH以让系统识别工作空间中的功能包。

    4. 检查环境变量

    执行以下命令验证:

    echo $ROS_PACKAGE_PATH

    三、创建功能包

    1. 创建步骤

    使用以下命令创建功能包(注意位置在src下):

    mkdir -p ~/catkin_ws/src/功能包名cd ~/catkin_ws/src/功能包名catkin_create_pkg 包名 [依赖1] [依赖2] ...

    2. 依赖管理

    依赖项可为ROS->{库名},如std_msgs, roscpp等标准库包裹功能包开发。

    3. 编译功能包

    进入工作空间根目录:

    cd ~/catkin_ws/catkin_make

    4. 设置环境变量

    运行以下命令后,可执行功能包程序:

    source ~/catkin_ws/devel/setup.bash

    5. 检查功能包

    运行以下命令查看功能包列表:

    rospack list

    四、功能包必备文件

    1. package.xml

    包含功能包信息,如名称、版本、维护人等,适用于ROS包管理器。

    2. CMakeLists.txt

    定义功能包的编译规则,指导CMake生成可执行目标文件。

    每个功能包需其它工具在ROS环境下可行,建议参考ROS公式项目结构。


    通过以上配置,您可以在终端轻松创建并管理ROSSYS工作空间和功能包。如需深入探讨某一部分,请参考ROS官方文档或社区资源。

    转载地址:http://ouunz.baihongyu.com/

    你可能感兴趣的文章
    php模板引擎smarty
    查看>>
    php没有解析是怎么回事,linux下php文件没有被剖析怎么办?_后端开发
    查看>>
    php注册页面实现注册后跳转页面
    查看>>
    PHP混合Go协程并发
    查看>>
    php源码中如何添加滚动公告,给WordPress网站添加滚动公告的方法
    查看>>
    php漏洞tips
    查看>>
    php版Zencoding之 phpstorm
    查看>>
    PHP版本升级5.4手记
    查看>>
    php版本微信公众号开发
    查看>>
    php生成二维码到图片上
    查看>>
    php生成二维码并下载图片(适应于框架)
    查看>>
    PHP线程安全和非线程安全
    查看>>
    php缃戠珯,www.wfzwz.com
    查看>>
    php编写TCP服务端和客户端程序
    查看>>
    php编码规范
    查看>>
    PHP编程效率的20个要点
    查看>>
    PHP网页缓存技术优点及代码
    查看>>
    php自定义函数: 文件大小转换成智能形式
    查看>>
    php英语单词,php常用英语单词,快速学习php编程英语(6)
    查看>>
    R3.4.0安装包时报错“需要TRUE/FALSE值的地方不可以用缺少值”,需升级到R3.5.0
    查看>>