ROS1.0版本 叫做Box Turtle http://www.ros.org/wiki/boxturtle/ 20103月2日发布
这个版本中有60多个stacks,分为三类(variants), 一类是基础stacks : base 一类是pr2中比较稳定的库和工具: pr2,还有一类是 pr2all,pr2上所有的库,有一些还处于unstable状态。
1.1-1.2 C Turtle http://www.ros.org/wiki/cturtle/ 2010年8月2日发布
这个时候的小海龟 已经开始成长很多了,我们也是从这个时候开始使用的。当时的wiki还很不完善,很多资料多而乱。安装的ros很大,会将很多package默认一起安装在你的硬盘中。
没有多久,我们就开始使用
1.3-1.4 Diamondback http://www.ros.org/wiki/diamondback 2011年3月2日发布
这个版本对整个ros进行了非常大的改动,首先,我们安装完之后,发现它变得非常的小,它被设计得smaller, lighter, and more configurable 。我们需要用到哪个package,然后再进行安装。它支持kinect 和 PCL库。
它提供三个 entry point ,安装的时候,就可以作出自己的选择。
它现在包含了120多个stack,然后将它们细分成了不同的variants
ROS variants : GUI无关,ros最核心的stacks
- ros-base:
stacks: [ros, ros_comm]
- ros-full:
extends: ros-base
stacks: [rx, documentation]
Robot variant 机器人上可用的核心的稳定的ROS库。是ROS的通用配置,包含了基本的驱动,通讯协议等。一般不依赖GUI
- robot:
extends: [ros-base]
stacks: [common_msgs, common, diagnostics, driver_common,
geometry, robot_model, executive_smach]
Capability variants 为机器人提供各种功能库,不建议存在GUI依赖。包括 移动部分,如导航,slam, 激光 pcl,图像传输,opencv,手臂导航,运动规划,仿真等,pr2相关的部分stack也会包含在其中。
- mobile:
extends: [robot]
stacks: [navigation, slam_gmapping, laser_pipeline,
perception_pcl]
- perception:
stacks: [image_common, image_transport_plugins, image_pipeline,
laser_pipeline, perception_pcl, vision_opencv]
- move-arm:
extends: [robot, viz]
stacks: [arm_navigation, kinematics, motion_planners,
motion_planning_common, physics_ode, trajectory_filters,
perception_pcl, pr2_controllers, control, pr2_mechanism,
pr2_common]
- simulators:
extends: [robot]
stacks: [simulator_stage, simulator_gazebo, physics_ode,
visualization_common, rx]
- viz:
extends: [robot]
stacks: [visualization_common, visualization, rx, image_common, laser_pipeline,
executive_smach_visualization, diagnostics_monitors]
Desktop variants 一般安装的主要variants 会将一般用户所要用到的stack都包含进来,提供安装。
extends: [ros-full, robot, viz]
stacks: [ros_tutorials, common_tutorials, geometry_tutorials,
visualization_tutorials]
- desktop-full:
extends: [desktop, mobile, perception, simulators]
然后会将一些stack进行特定的分类,如按照机构 进行的Institution-specific 或者按照机器人的 Robot-specific。 Robot-specific中就列举了如下的一些variants
- pr2-base:
extends: [mobile, perception, move-arm]
stacks: [control, object_manipulation, robot_calibration, point_cloud_perception,
pr2_common, pr2_controllers, pr2_mechanism, web_interface, pr2_calibration,
pr2_navigation, pr2_kinematics, pr2_arm_navigation, pr2_object_manipulation,
pr2_tabletop_manipulation_apps, ros_realtime, tabletop_object_perception, sql_database,
geometry_experimental]
- pr2:
extends: [pr2-base]
stacks: [pr2_robot, pr2_ethercat_drivers, pr2_power_drivers, camera_drivers, imu_drivers,
joystick_drivers, laser_drivers, linux_networking, sound_drivers, wifi_drivers]
- pr2-desktop:
extends: [desktop-full, pr2-base]
stacks: [pr2_gui, pr2_simulator, pr2_power_drivers, pr2_ethercat_drivers, geometry_visualization]
- pr2-applications:
extends: [pr2, viz]
stacks: [pr2_apps, pr2_common_actions, pr2_doors, pr2_navigation_apps, pr2_plugs,
pr2_self_test, navigation_experimental]
现在的版本是1.5-1.6 Electric http://www.ros.org/wiki/electric
在这个版本中,视觉,手臂导航如下部分变得更加稳定。其他的可仔细参见相应页面。
Arm navigation 1.0
PCL 1.1
OpenCV 2.3, standalone.
New image processing nodelets
image_pipeline has gained a nodelet for emulating ROI/binning. depth_image_proc introduces new nodelets for depth-RGB registration and working with depth images.
Improved camera_calibration and image_proc
camera_calibration is now faster, more robust, more configurable, and gives better feedback to the user. image_proc has gained new edge-aware and VNG debayering algorithms, dynamic_reconfigure support, and support for 16-bit encodings and YUV.
那么,现在哪些机器人用了ROS系统呢 ?
现在发表文章比较多的,是PR2, Herb ,其他可参见如下链接。
Part 6: Helicopters Using ROS
Part 5: Meka, Qbo, Mini-PR2, Lego NXT