目录
2 package相关命令
2.1 rospack
rospack是对package管理的工具,命令的用法如下:
- rospack help 显示rospack的用法
- rospack list 列出本机所有package
- rospack depends [package] 显示package的依赖包
- rospack find [package] 定位某个package
- rospack profile 刷新所有package的位置记录
以上命令如果package缺省,则默认为当前目录(如果当前目录包含package.xml)
2.2 roscd
roscd 命令类似与Linux系统的 cd ,改进之处在于 roscd 可以直接 cd 到ROS的软件包。
- roscd [pacakge] cd到ROS package所在路径
2.3 rosls
rosls 也可以视为Linux指令 ls 的改进版,可以直接 ls ROS软件包的内容。
- rosls [pacakge] 列出pacakge下的文件
2.4 rosdep
rosdep 是用于管理ROS package依赖项的命令行工具,用法如下:
- rosdep check [pacakge] 检查package的依赖是否满足
- rosdep install [pacakge] 安装pacakge的依赖
- rosdep db 生成和显示依赖数据库
- rosdep init 初始化/etc/ros/rosdep中的源
- rosdep keys 检查package的依赖是否满足
- rosdep update 更新本地的rosdep数据库
一个较常使用的命令是 rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y ,用于安装工作空间中 src 路径下所有package的依赖项(由pacakge.xml文件指定)。
3 Metapackage
metapackage指的是将多个功能接近、甚至相互依赖的软件包的放到一个集合中去。
ROS里常见的Metapacakge有:
Metapacakge名称 | 描述 | 链接 |
navigation | 导航相关的功能包集 | https://github.com/rosplanning/navigation |
moveit | 运动规划相关的(主要是机械臂)功能包集 | https://github.com/rosplanning/moveit |
image_pipeline | 图像获取、处理相关的功能包集 | https://github.com/rosperception/image_common |
vision_opencv | ROS与OpenCV交互的功能包集 | https://github.com/rosperception/vision_opencv |
turtlebot | Turtlebot机器人相关的功能包集 | https://github.com/turtlebot/turtlebot |
pr2_robot | pr2机器人驱动功能包集 | https://github.com/PR2/pr2_robot |
navigation有以下pacakge:
- amcl 定位
- fake_localization 定位
- map_server 提供地图
- move_base 路径规划节点
- nav_core 路径规划的接口类
- base_local_planner 局部规划
- dwa_local_planner 局部规划