以下为ROS(Robot Operating System)常用命令及其详细介绍,按功能分类整理:
ROS核心命令
roscore
启动ROS主节点,必须在其他命令前运行。初始化节点通信所需的参数服务器、日志系统和节点管理器。
roscore
rosrun
运行指定功能包中的节点。需提供功能包名和节点名。
rosrun package_name node_name
节点管理
rosnode list
列出当前活跃的所有ROS节点。
rosnode info /node_name
查看特定节点的详细信息(如订阅/发布的主题、服务等)。
rosnode kill /node_name
终止指定节点。
rosnode kill /tf_listener
主题操作
rostopic list
显示当前所有活跃的主题。
rostopic echo /topic_name
实时打印指定主题的消息内容。
rostopic echo /scan
rostopic pub
向主题发布消息。需指定消息类型和内容。
rostopic pub /cmd_vel geometry_msgs/Twist "linear:
x: 0.1
y: 0.0
z: 0.0
angular:
x: 0.0
y: 0.0
z: 0.2"
服务调用
rosservice list
列出所有可用服务。
rosservice call /service_name args
调用指定服务并传递参数。
rosservice call /gazebo/reset_world "{}"
参数服务器
rosparam list
列出当前所有参数。
rosparam get /param_name
获取参数值。
rosparam get /rosdistro
rosparam set /param_name value
设置参数值。
rosparam set /max_velocity 1.5
功能包操作
catkin_create_pkg
创建新ROS功能包,需指定依赖项。
catkin_create_pkg my_pkg roscpp std_msgs
roscd package_name
切换到功能包目录。
rosdep install
安装功能包的依赖项。
rosdep install --from-paths src --ignore-src -y
构建与编译
catkin_make
编译工作空间中的所有功能包。
cd ~/catkin_ws && catkin_make
catkin build
(适用于catkin_tools
)模块化编译。
catkin build
消息与服务检查
rosmsg show
显示消息类型的定义。
rosmsg show sensor_msgs/LaserScan
rossrv show
显示服务类型的定义。
rossrv show nav_msgs/GetMap
调试工具
rqt_graph
可视化节点与主题的通信关系。
roslaunch
启动配置好的多个节点(通过.launch
文件)。
roslaunch package_name file.launch
这些命令覆盖了ROS开发中的核心操作,适用于系统管理、调试和日常开发任务。根据具体场景选择合适命令组合使用。