创建ROS工作空间

  1. 启动 ROS
    roscore

  2. 创建工作环境
    $ mkdir -p ~/catkin_ws/src
    $ cd ~/catkin_ws/src
    $ catkin_init_workspace

  3. 编译ROS程序
    $ cd ~/catkin_ws
    $ catkin_make

  4. 添加程序包到全局路径
    $ echo "source catkin_ws/devel/setup.bash" >> ~/.bashrc
    $ source ~/.bashrc

功能包/软件包

  1. 查看软件包列表和定位软件包
    rospack list

  2. 寻找一个软件包的目录
    rospack find package-name

  3. 查看软件包
    rosls package-name

  4. 切换至软件包目录
    roscd package-name

  5. 使用rosed编辑ROS中的文件
    rosed [package_name] [filename]

示例:
切换目录并查看图片,eog是图像查看器
roscd turtlesim/images
eog box-turtle.png

节点管理器

启动节点管理器
roscore

节点

  1. 启动节点
    rosrun package-name executable-name

  2. 查看节点列表
    rosnode list

  3. 查看特定节点的信息
    rosnode info node-name

  4. 终止节点
    rosnode kill node-name

Package 相关操作

  1. 创建 Package 并编译
    $ cd ~/catkin_ws/src
    $ catkin_create_pkg <package_name> [depend1] [depend2] [depend3]
    $ cd ~/catkin_ws
    $ catkin_make

  2. 查找 Package
    $ rospack find [package name]

  3. 查看 Package 依赖
    $ rospack depends <package_name>
    $ rospack depends1 <package_name>

Topic 相关操作

  1. 查看 rostopic 所有操作
    $ rostopic -h

  2. 查看所有 Topic 列表
    $ rostopic list

  3. 图形化显示 topic
    $ rosrun rqt_graph rqt_graph
    $ rosrun rqt_plot rqt_plot

  4. 查看某个 Topic 信息
    $ rostopic echo [topic]

  5. 查看 Topic 消息格式
    $ rostopic type [topic]
    $ rosmsg show [msg_type]
    6.向topic发布消息
    $ rostopic pub [-1] <topic> <msg_type> [-r 1] -- [args] [args]

Service 相关操作

  1. 查看所以service操作
    $ rosservice -h
  2. 查看 service 列表
    $ rosservice list
  3. 调用 service
    $ rosservice call [service] [args]
  4. 查看 service 格式并显示数据
    $ rosservice type [service] | rossrv show
  5. 设置service parameter
    $ rosparam set [parame_name] [args] + rosservice call clear
  6. 获得parameter
    $ rosparam get [parame_name]
  7. 加载parameter
    $ rosparam load [file_name] [namespace]
  8. 删除parameter
    $ rosparam delete

Bag 相关操作

  1. 录制所有topic变化
    $ rosbag record -a
  2. 记录某些topic
    $ rosbag record -O subset <topic1> <topic2>
  3. 查看bag信息
    $ rosbag info <bagfile_name>
  4. 回放
    $ rosbag play (-r 2) <bagfile_name>

TF相关:

  1. 查看TF树:
    rosrun rqt_tf_tree rqt_tf_tree
  2. 使用tf包内工具观察TF相关变换:
    rosrun tf tf_echo odom map

ROS 常用命令汇总(不定期更新)相关推荐

  1. Linux常用命令(不定期更新)

    Linux常用命令   山定子  整理 帮助# touch --help //显示touch帮助信息 # man 命令 //显示相应命令的帮助内容 # info 命令 //显示相应命令info内容 系 ...

  2. linux更新项目常用命令汇总

    linux服务器线上更新项目常用命令汇总 因为之前nginx和uwsgi已经配好了要运行的项目位置,所以服务器上的项目文件夹建议不要变动,要变动的只是项目文件夹下的所有文件,用新的所有文件直接覆盖,可 ...

  3. Docker常用命令汇总

    Docker常用命令汇总 帮助命令 docker version docker info docker --help 镜像命令 docker images 列出本地主机上的镜像,各个选项说明如下: R ...

  4. 史上最全的Linux常用命令汇总①收藏这一篇就够了!(超全,超详细)

    史上最全的Linux常用命令汇总①(超全面!超详细!)收藏这一篇就够了! Linux命令基础 Shell Linux命令分类 Linux命令行的格式 编辑Linux命令行的辅助操作 获取命令帮助的方法 ...

  5. 【思科交换机常用命令汇总】

    思科交换机常用命令汇总 show version show running-config show vlan brief show ip interface brief show running-co ...

  6. 【ROS】ROS常用命令

    [ROS]ROS常用命令 一.前言 二.常用命令 2.1 ROS shell 命令 2.2 ROS执行命令 2.2.1 `roscore` [选项] 2.2.2 rosrun:运行ROS节点 2.2. ...

  7. Java常用命令汇总(笔记)

    Java常用命令汇总 文章目录 Java常用命令汇总 1.javac 将文件编译成.class文件 2.java 执行 .class文件,若类中没有main函数,则不能执行. 3.jar 主要用于打包 ...

  8. Linux常用命令汇总【思维导图】

    Linux常用命令汇总[文章末尾附有完整常用命令的思维导图,建议收藏] 文章大致分为以下小节 Linux入门 Linux目录结构 VI/VIM编辑器(重点) 网络配置 常用基本命令(重点) 常用命令思 ...

  9. linux 常用命令汇总(面向面试)

    linux 常用命令汇总 个人认为先掌握一些比较常用的,剩下的需要再学 总结了一些面试比较可能会问道的命令 文章目录 linux 常用命令汇总 基础命令 ulimit dos2unix和unix2do ...

最新文章

  1. mysql事务实战_mysql事务隔离级别详解和实战
  2. First C program
  3. 看看老外的智慧城市都是咋样的
  4. 《天天数学》连载05:一月五日
  5. python实现面部特效_Python实现在线批量美颜功能过程解析
  6. gbdt算法_GBDT算法原理及应用
  7. Java之mybatis详解(非原创)
  8. 自然语言处理----词干提取器
  9. sqlmap使用教程
  10. nutch2.3 mysql教程_nutch2.2.1+mysql集成教程
  11. c语言函数平方根公式,c语言求平方根公式
  12. 哈德森喜迎万分夜 CBA“第一外援”就此易主?
  13. 静态网页项目开发基础
  14. java 合并图片:将多个图片竖向合并在一起
  15. Android 关于图片的压缩
  16. Three.js盖房子 点击开关门
  17. 移动端事件--touch事件的分类、touch事件的event对象、 其他触摸事件
  18. 倒排索引c语言,Inverted Index(倒排索引)
  19. Jenkins部署spring boot项目
  20. 黑苹果双系统时间不一致_解决 Windows/macOS 双系统时间不同步问题

热门文章

  1. “天昌”的挽歌——逝去的背影(一)
  2. J2ME下访问.net的webservice
  3. 用PHP实现丢手帕问题(约瑟夫问题)
  4. [LeetCode] Move Zeroes - 整数数组处理问题
  5. 用几十行代码实现python中英文分词
  6. 信息学奥赛一本通(C++)在线评测系统——基础(一)C++语言—— 1066:满足条件的数累加
  7. java中if判断季节_Java判断用户输入月份的季节
  8. axios get传参_axios 传数组或对象格式的参数用GET和POST的区别
  9. rj45接口线序_水晶头中的RJ45、RJ11、8P8C、6P4C有些什么学问?
  10. 树莓派 QT 编程下的硬件中断