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

1、rosbag

对ros包进行操作的命令。

(1)录制包:

rosbag record -a //录制数据包,所有topic都录制
rosbag record /topic_name1 /topic_name2 /topic_name3  //只录制需要的topic
rosbag record -O filename.bag /topic_name1 //录制并命名数据包名称

如果在 launch 文件中使用 rosbag record 命令,如下:

<node pkg="rosbag" type="record" name="bag_record" args="/topic1 /topic2"/> 

默认存放路径是 ~/.ros 中。

(2)检查包

rosbag info filename.bag  //显示数据包信息,比如录制时间、话题、版本等等

(3)回放包

rosbag play <bagfile> //播放过程中,空格可以暂停播放

2、roscd

直接切换到ros包的位置。

roscd 包名[/子文件夹] 

3、rosrun

直接运行ros节点文件。

rosrun package名 executable文件

4、roslaunch

启动多个节点

roslaunch package_name file.launch

如果运行过程中系统发现没有开启roscore,会默认打开。

这个文件中可以写哪些东西?

官方文档写的非常清楚:

http://wiki.ros.org/roslaunch/Tutorials/Roslaunch%20tips%20for%20larger%20projects

5、rosmsg / rossrv

rosmsg 和 rossrv 用法完全一样。

(1)rosmsg show显示msg类型

rosmsg show sensor_msgs/CameraInfo

(2)rosmsg list 显示所有的msg文件

rosmsg list

(3)其他的不常用,想了解的话见官网 http://wiki.ros.org/rosmsg

6、rostopic

rostopic list  //查看ROS正在发布的话题
rostopic info /brov/thruster_command  //查看pub,sub,type
rostopic pub /brov/thruster_command sensor_msgs/JointState "header: /往话题发消息

//输出”header 后Tab键补全即可出现以下内容:
seq: 0
  stamp: {secs: 0, nsecs: 0}
  frame_id: ‘‘
name: [‘‘]
position: [0]
velocity: [0]
effort: [0]" 

//在这里,我发布两个数据,position(位置)和velocity(力度),添加参数,回车即可,如下:
  seq: 0
  stamp: {secs: 0, nsecs: 0}
  frame_id: ‘‘
name: [‘‘]
position: [200]
velocity: [12]
effort: [0]" 
rostopic echo /brov/thruster_command //打印话题发布的内容
//rostopic echo +话题
rostopic hz /topicname //获取话题发布频率

原文地址:https://www.cnblogs.com/JuiceCat/p/12173619.html

时间: 2024-07-30 04:16:07

ROS大型工程学习(三) ROS常用命令行的相关文章

Mysql常用命令行大全——转载

转载地址:http://www.blogjava.net/supperchen/archive/2012/10/11/389340.html 第一招.mysql服务的启动和停止 net stop mysql net start mysql 第二招.登陆mysql 语法如下: mysql -u用户名 -p用户密码 键入命令mysql -uroot -p, 回车后提示你输入密码,输入12345,然后回车即可进入到mysql中了,mysql的提示符是: mysql> 注意,如果是连接到另外的机器上,则

Docker 学习 (2): 常用命令

Docker 学习 (2): 常用命令 命令行操作前提: systemctl start docker 启动docker sudo -i 进去root模式 一.帮助命令 docker version 查看对应安装的版本号,可以用来检测docker是否安装c成功 docker info Docker容器安装之后,个人信息的描述,比version更加详细 docker --help docker的帮助命令 二.镜像命令 前提:在操作镜像的时候,如果镜像名称的后面没有加版本号,那默认就是操作的最高的版

Visual Stdio C++ 编译器、链接器常用命令行 (转)

以前使用 Visual Stdio 都是在 IDE 环境下.这两天编译 GSL 感觉用 IDE 环境特别不方便,所以就花了点时间简单学习了如何在命令行下使用 Visual Stdio C++ 编译器.连接器. 我个人对 gcc 还是比较熟悉的,所以这里的各种用法都做了 gcc 的类比,这样也便于记忆. 编译器 CL Visual Stdio 中的 C/C++ 编译器都是同一个,叫做 CL.下面表格列出了一些基本的命令行选项. CL gcc 说明 /E -E 输出预处理结果 /Fa -S 输出汇编

Linux - 常用命令行(一)

今天和大家分享一些最基本常用命令行:也是作为新手最应该了解掌握的 ls 命令:用来显示指定工作目录下内容 dir命令:与ls命令一致 cd  命令:变化工作目录 pwd命令:显示用户当前的工作路径,显示出完整的当前活动目录名称 clear 命令:清屏命令 man 命令:查看指定命令help信息 mkdir 命令:用来创建新目录 rmdir 命令: 用来删除已建立的目录 rm 命令:删除文档及目录 touch 命令: 创建一个空白的文件 或 改变一个文件的时间戳 cp 命令:复制文件(或目录) m

2015.11.06 学习Ubuntu下常用命令

2015.11.06 学习Ubuntu下常用命令 1.关闭防火墙:ufw disable 2.开启防火墙:ufw enable 3.防火墙状态:ufw status 4.查看占用的端口:#lsof -i 5.查看某一个端口:#lsof -i:8080  或者是: #netstat -apn|grep 8080————接着:#ps -aux|grep 进程号 6.结束占用端口的进程:#killall 进程名 7.自己写一遍,记得牢!

《学习bash》笔记--命令行处理

shell从标准输入或脚本中读取的每行称为一个管道行,它包含一或多个由0个或多个管道符分割的命令,对其读取的每个管道 行,执行下面的操作. 1.将命令分成由固定元字符集分隔的记号:SPACE.TAB.NEWLINE.;.(.).<.>.|和&.记号类型 包括单词.关键字.I/O重定向符和分号. 2.检测每个命令的第一个记号,查看为不带引号或反斜线的关键字.如果是一个开放的关键字,如if和 其他控制结构起始字符串.function.{或(,则命令实际上为一复合命令.shell在内部对复合

jdk自带常用命令行工具使用

下面是笔者整理的jdk自带的常用命令行工具的使用方法,全部原创,转载请注明出处,并贴上链接,谢谢! jps命令使用 jstat命令使用 jinfo命令使用 jmap命令使用 jhat命令使用 jstack命令使用 jcmd命令使用

Linux 操作MySQL常用命令行

Linux 操作MySQL常用命令行 注意:MySQL中每个命令后都要以分号:结尾. 1.显示数据库 mysql> show databases; +----------+ | Database | +----------+ | mysql | | test | +----------+ 2 rows in set (0.04 sec) Mysql刚安装完有两个数据库:mysql和test.mysql库非常重要,它里面有MySQL的系统信息,我们改密码和新增用户,实际上就是用这个库中的相关表进行

学习笔记 | sqlmap常用命令

请移步以下链接查看本文章 学习笔记 | sqlmap常用命令 http://www.lofter.com/lpost/1f350fa3_120429c7 原文地址:http://blog.51cto.com/1425831735/2059514

rabbitmq常用命令行汇总

最近处理openstack问题时,碰到了rabbitmq相关的问题,使用相关命令行时,经常去现找相关的帖子,感觉很麻烦,记录下自己定位问题时,用到的一些常用命令行,方便以后问题的查找 1)常用的一些查询和设置命令行 rabbitmqctl list_queues:查看所有队列信息 rabbitmqctl stop_app:关闭应用(关闭当前启动的节点) rabbitmqctl start_app:启动应用,和上述关闭命令配合使用,达到清空队列的目的 rabbitmqctl reset:从管理数据