ROS常用命令

打印ros环境变量

$ echo $ROS_PACKAGE_PATH

确认环境变量已经设置正确

export | grep ROS

环境变量设置文件 sudo gedit ./.bashrc

包含: source /opt/ros/indigo/setup.bash

source ~/catkin_ws/devel/setup.bash

查看软件包列表和定位软件包

rospack list , rospack find
package-name

输出当前运行的topic列表:

rostopic list

查看节点、终止节点

rosnode info node-name

rosnode kill node-name

查看节点构成的计算图rqt_graph

查看在一个话题上发布的数据rostopic echo [topic] 
(用--分割两个相邻的消息)

查看topic的类型、发布者、订阅者

rostopic info topic-name

测量发布频率

rostopic hz topic-name (每秒发布的消息数量)

rostopic bw topic-name
(每秒发布信息所占的字节量)

用命令行发布消息

rostopic pub -r rate-in-hz
topic-name message-type message-content

rostopic pub -r 1 /turtle1/cmd_vel
geometry_msgs/Twist '[2,0,0]''[0,0,0]'

查看消息类型rosmsg
show message-type-name

查看参数列表

rosparam list

查询参数

rosparam get parameter_name

设置参数

rosparam set parameter_name
parameter_value (rosservice call/clear之后起作用)

创建和加载参数文件

rosparam dump/load filename
namespace

在启动文件中设置参数

<param name="param-name"
value="param-value" /> (可在node标签中设置私有化参数)

从文件中读取参数

<rosparam command="load"
file="$(find package-name)/param-file" />

列出所有服务

rosservice list

查看某一特定节点提供的服务
rosnode info node-name

查找提供特定服务的节点
rosservice node service-name

查看服务的数据类型

rosservice info service-name

查看服务类型的详情

rossrv show
service-data-type-name(--之前是请求项,之后是响应项)

从命令行调用服务

rosservice call service-name
request-content

录制包文件

rosbag record -O filename.bag
topic-names

回放包文件(参数:-d选项让重放延时一定时间;-r就是rate可以加快速度播放;-s让它从某个时间点开始;-u持续时间)

rosbag play filename.bag

rosbag play -r 2 -s 120 -u 60 <bagfile_name>   #以两倍的速度发布记录的消息,120s后开始播放,持续60s。

检查文件包

rosbag info filename.bag

查看image:

rosrun image_view image_view image:=/cam0/image_raw 

查看rostopic中的图像大小:

rostopic echo /camera/rgb/image_raw/width -n1
rostopic echo /camera/rgb/image_raw/height -n1

提取bag文件中的数据并保存为csv格式(也可以为txt,但是格式比较混乱)

对于非图片数据,大部分情况下都可用csv文件存储。将file_name.bag文件中topic_name话题的消息转换到Txt_name.csv文件中:

rostopic echo -b file_name.bag -p /topic_name > Txt_name.csv

stop here.

ROS常用命令的更多相关文章

  1. ROS常用命令或经常碰到的问题

    本篇博客会随时更新. 一.常用命令 1.添加环境变量 gedit ~/.bashrc 2.ubuntu系统监视器 gnome-system-monitor 二.问题 1.sudo apt-get up ...

  2. ROS大型工程学习(三) ROS常用命令行

    1.rosbag 对ros包进行操作的命令. (1)录制包: rosbag record -a //录制数据包,所有topic都录制 rosbag record /topic_name1 /topic ...

  3. ROS常用命令汇总

    ROS系统也是通过命令行操作,总结了下平时工作中使用的命令工具,以后使用多会陆续添加. 查看ROS_PACKAGE_PATH环境变量 $ echo $ROS_PACKAGE_PATH /home/sa ...

  4. 【笔记】ROS常用命令

    环境相关 查看当前环境下包含的包路径echo $ROS_PACKAGE_PATH查看包含的包的路径roscd package TF树相关 查看所有坐标系的状态rosrun tf tf_monitor ...

  5. ROS 常用命令字典

    版权声明:本文为博主原创文章,转载请标明出处: http://www.cnblogs.com/liu-fa/p/5761448.html 该博文适合已经具备一定的ROS编程基础的人,快速查看ROS相关 ...

  6. ROS 常用命令

    1.查看网卡接口: /interface  print 2.给网口添加IP地址: /ip address add address=192.168.1.254/24 interface=ether1 3 ...

  7. ROS 的一些常用命令行功能

    1.安装并添加源sudo gedit /etc/apt/sources.list更新下sudo apt-get update添加 sources.list,如sudo sh -c '. /etc/ls ...

  8. ros中关于节点、话题、服务以及自定义消息等在终端中的常用命令

    以下面的计算力图说明 节点相关常用命令 在终端中查看项目中有哪些节点命令:rosnode list 有了节点信息想要查看节点中到底发布订阅了哪些话题,作为服务端服务类型或者作为客户端需要的服务类型以上 ...

  9. linux rhel unix centos FreeBSD 常用命令

    一:使用CentOS常用命令查看cpu more /proc/cpuinfo | grep "model name" grep "model name" /pr ...

随机推荐

  1. Python初识对象

    一 楔子 你现在是一家游戏公司的开发人员,现在需要你开发一款叫做<人狗大战>的游戏,你就思考呀,人狗作战,那至少需要2个角色,一个是人, 一个是狗,且人和狗都有不同的技能,比如人拿棍打狗, ...

  2. 基于【 责任链模式】二 || 网关zuul过滤器封装

    一.基于责任链模式封装网关拦截 上一篇文章中已经使用建造者模式对网关拦截进行封装,存在一个问题,在连接器build中,每一个拦截都要进行true判断,代码看起来冗余,下面使用责任链模式封装 1.基于责 ...

  3. 基于【 SpringBoot】一 || QQ授权流程

    一.准备工作 1.qq开放平台应用申请,获取APP ID和APP Key 2.qq开放平台配置回调地址 二.服务器端生成授权链接 1.请求地址 https://graph.qq.com/oauth2. ...

  4. python OpenCV使用

    关于OpenCV简介  OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux.Windows.Android和Mac OS操作系统上.它轻量级而且高效——由一系列 C ...

  5. springboot系列(九)springboot使用druid数据源

    Druid是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0.DBCP.PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生的DB ...

  6. 用python代码编写象棋界面,棋盘覆盖问题

    编写象棋界面 import turtle t=turtle.Pen() t.speed(100) def angle(x,y): t.penup() t.goto(x+3,y+3) t.pendown ...

  7. DHCP服务——服务端 和 客户端 配置

    转载注明出处:https://www.cnblogs.com/kelamoyujuzhen/p/9520341.html  实验环境 rhel-server-6.4-x86_64-dvd(ED2000 ...

  8. Notes for <<Thinking In Java>>

    String   Thus, when you create a toString( ) method, if the operations are simple ones that the comp ...

  9. Java关键字—final

    final—不可变的,用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变. 修饰范围: 1.修饰类,被final关键字修饰的类无法被继承: 2.修饰方法,被f ...

  10. 开源框架---tensorflow c++ API 一个卡了很久的问题

    <开源框架---tensorflow c++ API 运行第一个“手写字的例子”> 中可以说明tensorflow c++ API是好用的,.......