《学习篇》学会这18个常用ROS命令集合就能入门ROS了

2023-11-19

常用ROS命令概述

ROS常用命令可以按照其使用场景分为ROSshell命令、ROS执行命令、ROS信息命令、ROS catkin命令与ROS功能包命令。虽然很难从一开始就很熟练地使用所有的命令,但是随着使用的次数增多,你会发现常用的几个ROS命令就大概18个左右,你也会用得更加得心应手。

参考链接: ros重要命令.
参考书籍:《ROS_Robot_Programming》作者:表允晳 赵汉哲 郑黎蝹 林泰勋

本文只供大家学习相关知识使用,不以任何商业盈利为目的,转载或分享请注明相关来源。如涉及到相关侵权,请联系我删除。

1 ROS shell命令

ROS shell命令又被称为rosbash。这使我们可以在ROS开发环境中使用Linux中常用的bash shell命令。主要使用前缀是ros且带有多种后缀的命令,例如cd、pd、d、ls、ed、cp和run。相关命令如下:

命令 重要度 命令释义 详细说明 参考模板
roscd ★★★ ros+cd(changes directory) 移动到指定的ROS功能包目录 roscd [功能包名称]
rosls ★☆☆ ros+ls(lists files) 显示ROS功能包的文件和目录 rosls [功能包名称]
rosed ★☆☆ ros+ed(editor) 编辑ROS功能包的文件 rosed [功能包名称] [文件名称]
roscp ★☆☆ ros+cp(copies files) 复制ROS功能包的文件
rospd ☆☆☆ ros+pushd 添加目录至ROS目录索引
rosd ☆☆☆ ros+directory 显示ROS目录索引中的目录

相对常见的为roscdroslsrosed命令。

说明:
ROS shell命令的使用环境
想要使用ROS shell命令,需要用以下命令安装rosbash,并且只能在设置了source /opt/ros/<ros distribution>/setup.bash的终端窗口中可以使用。可通过下面命令进行安装:

sudo apt-get install ros-<ros distribution>-rosbash

2 ROS 执行命令

ROS 执行命令管理ROS节点的运行。最重要的是,roscore被用作节点之间的名称服务器。执行命令是rosrun和roslaunch。rosrun运行一个节点,当运行多个节点或设置各种选项时使用roslaunch。rosclean是删除节点执行时记录的日志的命令。

命令 重要度 命令释义 详细说明 参考模板
roscore ★★★ ros+core master(ROS名称服务) + rosout(日志记录) + parameter server(参数管理) roscore [选项]
rosrun ★★★ ros+run 运行单个节点 rosrun [功能包名称] [节点名称]
roslaunch ★★★ ros+launch 运行多个节点或设置运行选项 roslaunch [功能包名称] [launch文件名]
rosclean ★★☆ ros+clean 检查或删除ROS日志文件 rosclean [选项]

3 ROS 信息命令

ROS 信息命令ROS信息命令用于识别话题、服务、节点和参数等信息。尤其是rostopic、rosservice、rosnode和rosparam经常被使用,并且rosbag是ROS的主要特征之一,它具有记录数据和回放功能,大家一定要掌握。

命令 重要度 命令释义 详细说明 参考模板
rostopic ★★★ ros+topic 确认ROS话题信息 rostopic [选项]/[选项+话题/类型名称] 也可以通过pub指定话题发布消息
rosservice ★★★ ros+service 确认ROS服务信息 rosservice [选项]/[选项+服务/类型名称] 也可以通过call用输入的参数请求服务
rosnode ★★★ ros+node 确认ROS节点信息 rosnode [选项]/[选项+节点名称]
rosparam ★★★ ros+param(parameter) 确认和修改ROS参数信息 rosparam [选项]/[选项+参数/文件名称]
rosbag ★★★ ros+bag 记录和回放ROS消息 rosbag [选项]/[选项+文件名称]
rosmsg ★★☆ ros+msg 显示ROS消息类型 rosmsg [选项]/[选项+消息/功能包名称]
rossrv ★★☆ ros+srv 显示ROS服务类型 rossrv [选项]/[选项+服务/功能包名称]
rosversion ★☆☆ ros+version 显示ROS功能包的版本信息 ———
roswtf ☆☆☆ ros+wtf 检查ROS系统 ———

4 ROS catkin命令

ROS catkin命令ROS的catkin命令用于使用catkin 构建系统来构建功能包。

命令 重要度 详细说明 参考模板
catkin_create_pkg ★★★ 自动生成功能包 catkin_create_pkg [功能包名称] [依赖性功能包1] [依赖性功能包2] …
catkin_make ★★★ 基于catkin 构建系统的构建 catkin_make --[选项]
catkin_eclipse ★★☆ 把用catkin 构建系统生成的功能包修改,使得可以在Eclipse 环境中使用 catkin_eclipse
catkin_prepare_release ★★☆ 发布时用到的日志整理和版本标记 catkin_prepare_release
catkin_generate_changelog ★★☆ 发布时生成或更新CHANGELOG.rst文件 catkin_generate_changelog
catkin_init_workspace ★★☆ 初始化catkin 构建系统的工作目录 catkin_init_workspace
catkin_find ★☆☆ 搜索catkin catkin_find [功能包名称]

5 ROS 功能包命令

ROS 功能包命令用于操作ROS功能包,比如显示功能包信息、安装相关功能包等。

命令 重要度 命令释义 详细说明 参考模板
rospack ★★★ ros+pack(age) 显示与ROS功能包相关的信息 rospack [选项] [功能包名称]
rosinstall ★★☆ ros+install 安装ROS附加功能包 ——
rosdep ★★☆ ros+dep(endencies) 安装该功能包的依赖性文件 rosdep [选项]
roslocate ☆☆☆ ros+locate 与ROS功能包信息有关的命令 roslocate [选项] [功能包名称]
roscreate-pkg ☆☆☆ ros+create-pkg 自动生成ROS功能包 (用于旧的rosbuild系统) ——
rosmake ☆☆☆ ros+make 构建ROS功能包(用于旧的rosbuild系统) ——

更多精彩内容,可以关注我的个人微信公众号

也欢迎志同道合者互相交流学习,微信:Zhihua_Steven

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

《学习篇》学会这18个常用ROS命令集合就能入门ROS了 的相关文章

随机推荐

  • 哈工大 csapp lab5

    实验报告 实 验 五 题 目 LinkLab 链接 专 业 计算机科学与技术 学 号 190110812 班 级 7 学 生 刘新晨 指 导 教 师 吴锐 实 验 地 点 G707 实 验 日 期 2021 5 16 计算机科学与技术学院
  • Linux 常用命令介绍

    文章目录 1 初级 1 pwd命令 2 cd命令 3 ls命令 实例练习 2 中级 1 Linux文件操作 1 创建文件 2 删除文件 2 Linux文件夹操作 1 创建文件夹 2 删除文件夹 3 Linux文件和文件夹拷贝 4 Linux
  • 使用 cloc 统计你的代码量

    转自 使用 cloc 统计你的代码量 今天发现一个特别好用的工具 cloc 可以用它统计代码的行数 它可以识别多种开发语言 并在计算的时候忽略掉注释和空行 我记得我上次申请软件著作权的时候 申请表格中要求提交代码量 当时为了计算行数 我写了
  • 51单片机——LED点阵屏

    51单片机 LED点阵屏 LED点阵屏 LED点阵屏原理 74HC595串转并芯片 源代码 例程一 静态笑脸 效果展示 例程二 笑脸 gt 平脸 gt 哭脸 效果展示 LED点阵屏 c51的LED点阵屏其实就是一个8 8像素的屏幕 一共有6
  • Qt程序的编译和发布(实验报告)

    实验 1 编译和发布 Qt 程序 目的与要求 掌握创建 Qt 程序的方法 掌握发布 Qt 程序的方法 学会为 Qt 程序添加应用程序图标 了解 Qt 发布需要的 DLL 动态库文 实验准备 搭建好 Qt 开发环境 了解 Qt Creator
  • 如何查看当前使用的Shell类型

    1 在终端输入命令 echo SHELL echo SHELL 2 在终端输入命令 echo 0 数字0 这个命令不是所有Shell都支持 echo 0 3 在终端输入命令ps 查看当前运行的shell是什么 如图1所示 有一个进程是bas
  • 【react】新旧生命周期对比

    componentWillUpdate componentWillReceiveProps componentWillMount 上述这三个生命周期在V18以上的版本中 使用时要加上UNSELF name
  • php正则表达式 验证密码,用于强密码验证的PHP正则表达式

    参见英文答案 gt Reference Password Validation 1个 我在网上看到了以下正则表达式 8 d W n A Z a z 它只在字符串中有效 contain at least 1 upper case letter
  • EF循环依赖

    1 项目场景 项目场景 1 本项目采用了EF架构来建立实体与实体之间的关联关系 2 一个部门对应多个摄像头 1 部门实体 public partial class DepartmentEntity 部门实体 public int Id ge
  • Netty中的零拷贝机制

    零拷贝机制 Zero Copy 是在操作数据时不需要将数据从一块内存区域复制到另一块内存区域的技术 这样就避免了内存的拷贝 使得可以提高CPU的 零拷贝机制是一种操作数据的优化方案 通过避免数据在内存中拷贝达到的提高CPU性能的方案 1 操
  • C++ 中的虚函数及虚函数表

    C 中的虚函数及虚函数表 一 虚函数及虚函数表的定义 二 虚函数表指针和虚函数表的创建时机 三 虚函数实现多态的原理 一 虚函数及虚函数表的定义 虚函数 虚函数就是在基类中定义一个未实现的函数名 使用虚函数的核心目的就是通过基类访问派生类定
  • MyBatis写入Json字段及Json字段转对象

    阅读本文章大概需要一分钟 一 背景 最近在设计表结构的时候 根据需求 将一个字段的类型设计为Json字段 而对于还没有操作过数据库Json字段的我就有点懵了 之前从未遇到这种情况 所以也是一步步研究一步步踩坑 最后终于是把Json字段读取的
  • 【css】overflow溢出隐藏

    overflow scroll 溢出部分显示滚动条 不溢出也显示滚动条 overflow auto 溢出的时候才显示滚动条 不溢出不显示滚动条
  • 二:云函数细则说明及部署流程

    目录 细则说明 代码结构 初始化及生成数据库管理工具 导出回调 完整示例 部署流程 本地云函数 云端云函数 细则说明 代码结构 通常一个云函数中 往往有着这样的代码结构 环境初始化 const cloud require wx server
  • C#软件开发实例.私人订制自己的屏幕截图工具(一)功能概览

    本实例全部文章目录 一 功能概览 二 创建项目 注册热键 显示截图主窗口 三 托盘图标及菜单的实现 四 基本截图功能实现 五 针对拖拽时闪烁卡顿现象的优化 六 添加配置管理功能 七 添加放大镜的功能 八 添加键盘操作截图的功能 九 使用自定
  • 在区块链世界中的token到底是什么?

    token的概念很广泛 在计算机领域中 无论是基础的网络架构还是服务系统的身份验证等 都有涉及到token的概念 然而在这里我想阐述的是在区块链世界中的token是什么 相信对区块链有些了解的朋友 都或多或少的听过或者看过关于token的描
  • C++——oo的魅力之多态

    文章目录 多态的概念 多态的定义和实现 多态的构成条件 虚函数重写的两个例外 协变 基类和派生类虚函数返回值类型不同 析构函数的重写 基类和派生类析构函数名字不同 c 11 override 和 final 关键字 重载 重写 覆盖 隐藏
  • 全国大学生信息安全竞赛真题(CTF)

    web篇 https blog csdn net csu vc article details 78011716 https www cnblogs com iamstudy articles 2017 quanguo ctf web wr
  • 查看Python之禅,使用的命令以及初级学习的简单那注意事项

    cmd终端进入Python的执行终端 输入import this就可以查看到Python代码编写的原则
  • 《学习篇》学会这18个常用ROS命令集合就能入门ROS了

    常用ROS命令概述 ROS常用命令可以按照其使用场景分为ROSshell命令 ROS执行命令 ROS信息命令 ROS catkin命令与ROS功能包命令 虽然很难从一开始就很熟练地使用所有的命令 但是随着使用的次数增多 你会发现常用的几个R