ROS常用命令行总结

Posted NodYoung

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ROS常用命令行总结相关的知识,希望对你有一定的参考价值。

Filesystem Management Tools

rospack

获取程序包的有关信息。
rospack find [package] 返回程序包的路径。
rospack list 获取所有的程序包。

roscd

切换(cd)工作目录到某个程序包(或其子目录)。
roscd [package[/subdir]]

rosls

直接按程序包的名称执行ls命令。
rosls [package[/subdir]]

catkin_create_pkg

创建包

catkin_make

编译ros工作空间

rosdep

一个能够下载并安装ROS packages所需要的系统依赖项的工具。
rosdep install [package]

roswtf

可以检查你的ROS系统并尝试发现问题。
roswtf or roswtf [file]
参考:roswtf入门

Start-up and Process Launch Tools

roscore

rosrun

运行ros包中的一个可执行文件
rosrun package_name executable_name

ruslaunch

启动roscore,本地节点,远程节点(通过ssh),设置参数服务器参数。
roslaunch package_name file_name.launch启动包中的一个文件。
roslaunch -p 1234 package_name file_name.launch
roslaunch --local package_name file_name.launch

Logging Tools

记录和回放ROS topic数据。
rosbag record -a 记录所有topic数据。
rosbag record topic1 topic2
rosbag record -O subset /turtle1/command_velocity /turtle1/pose命令中的-O参数告诉rosbag record将数据记录保存到名为subset.bag的文件中,同时后面的话题参数告诉rosbag record只能录制这两个指定的话题。
rosbag play <your bagfile>回放bag文件以再现系统运行过程
rosbag info <your bagfile>查看bag文件中的内容而无需回放出来

rqt_console

rqt_console过滤和显示发布在rosout上的信息。

rqt_bag

可视化、检查和重放bag文件。
rqt_bag bag_file.bag 可视化bag。

rqt_logger_level

改变ros节点的logger等级。

Introspection Command Tools

rosmsg/rossrv

显示msg/srv数据相关信息。
rosmsg show [msg/srv] 查看msg/srv的详细内容。
rosmsg list显示所有的msg/srv
rosmsg package [package_name] 列出某个包下所有的msg/srv
rosmsg packages [msg] 列出所有使用msg/srv的程序包。

rosnode

显示当前运行的节点信息。
rosnode ping测试到某个节点的连通性。
rosnode list:列出活跃的节点。
rosnode info [node_name]:返回一个特定节点的信息。
rosnode kill -a杀死所有的节点。

rostopic

获取topic的相关信息, 包括发布者、订阅者、发布频率和messages。
rostopic pub [topic] [msg_type] [args] 发布数据到topic。参见:http://wiki.ros.org/rostopic#rostopic_pub
rostopic echo [topic]显示在某个话题上发布的数据
rostopic findrostopic bw
rostopic hz [topic]查看数据发布的频率。
rostopic info [topic]返回一个特定节点的信息。
rostopic list列出所有当前订阅和发布的话题。
rostopic type [topic]查看发布在某个话题上的消息类型。

rosparam

获取和设定ros参数服务器(Parameter Server)上的数据。
rosparam set 设置参数
rosparam get 获取参数
rosparam get /:显示参数服务器上的所有内容。
rosparam load [file_name] [namespace] 从文件读取参数
rosparam dump [file_name] 向文件中写入参数
rosparam delete 删除参数
rosparam list 列出参数名

rosservice

rosservice list 输出可用服务的信息
rosservice call [service] [args] 调用带参数的服务
rosservice type [service] 输出服务类型
rosservice find [srv] 列出一个srv类型的所有服务
rosservice uri 输出服务的ROSRPC uri
rosservice node 打印服务的节点名
rosservice args 列出服务的参数。

rqt_topic

rqt_msg, rqt_srv and rqt_action

rqt_publisher and rqt_service_caller

rqt_graph and rqt_dep

rqt_graph
rqt_dep

rqt_top

rqt_reconfigure

Development Environment

rqt_shell and rqt_py_console

Data Visualization Tools

tf Tree

rosrun rqt_tf_tree rqt_tf_tree:查看frame树
rosrun tf tf_echo [reference_frame] [target_frame]:得到两个坐标系之间的转换。失败参见:http://answers.ros.org/question/188023/tf-lookup-would-require-extrapolation-into-the-past/

参考:http://wiki.ros.org/tf ; http://wiki.ros.org/cn/navigation/Tutorials/RobotSetup/TF

tf_echo

rosrun tf tf_echo <source_frame> <target_frame>

view_frames

rqt_plot

可视化topic数据。

rqt_image_view

rqt_image_view

ROS Catkin Workspaces

Create a catkin workspace

source /opt/ros/kinetic/setup.bash
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace

Checkout an existing ROS package

cd ~/catkin ws/src
wstool init
wstool set tutorials --git git://github.com/ros/ros tutorials.git
wstool update

Create a new catkin ROS package

catkin create pkg <package name> [depend1] [depend2]

Build all packageds in a workspace

$ cd ~/catkin_ws
$ catkin_make
$ source devel/setup.bash

原文下载地址:http://www.ros.org/news/2015/05/ros-cheatsheet-updated-for-indigo-igloo.html

以上是关于ROS常用命令行总结的主要内容,如果未能解决你的问题,请参考以下文章

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

ROS系统 常用命令行工具的使用

ROS2极简总结-命令行接口基础

ROS2极简总结-新增概念

Kafka常用命令行总结

ros命令汇聚