机器人技术从诞生之初就饱含了梦想与挑战。
一切始于斯坦福大学,Keenan Wyrobek和Eric Berger注意到机器人界的一个问题:开发人员花费大量时间重新实现软件基础设施,而不是开发基于该基础设施的智能机器人程序。为了解决这个问题,他们在2006年创建了斯坦福个人机器人项目,目标是建立一个通信框架,并在其上开发代码。
关于ROS的第一篇论文发表于2007年,ROS项目同时开源,向全世界共享。
用开源操作系统ROS开发的第一个机器人PR2(Personal Robotics 2),PR2展示的自主导航和处理复杂任务的能力可谓石破天惊,即便放在十几年后的今天来看都是非常先进的。
当时也有商业的机器人软件框架和系统,例如 URBI,功能也非常强大,但为什么ROS能够胜出呢?其中一个关键因素是:社区的力量。虽然URBI非常强大,但它的价格昂贵,并且没有建立起强大的用户社区,这限制了它的发展。
虽然ROS在PR2机器人上的得到成功应用,但是Keenan和Eric意识到,要构建一个真正的通用的机器人操作系统,他们需要更多资金和资源。最终,他们与Willow Garage的创始人Scott Hassan会面,Scott决定资助他们的项目,于是Robot Operating System和PR2机器人应运而生。
从2008年到2014年,ROS在Willow Garage的支持下得到了快速发展,在机器人开发者社区的欢迎度飙升。很多开发者开始认识到ROS的价值并开始使用。
但是,Willow Garage因为迟迟不能找到机器人成功的商业模式而被解散,ROS的开发被转移到新成立的Open Source Robotics Foundation (OSRF)。在这个开源基金会组织下,ROS获得一些公司的财务赞助,并对外ROS的咨询和集成服务,ROS项目得以继续发展,并不断推出新版本。随着ROS的发展,越来越多的机器人公司和研究者加入其中,但也带来了巨大的挑战:如何保持系统的稳定性和灵活性?
随着ROS的广泛应用,它的某些缺陷开始显现,包括稳定性不够,模块化也做的不够好这些致命性的系统架构问题。为了更好满足工业界的需求,OSRF决定重构ROS项目,使用了重新设计的系统架构,命名为ROS 2.0。
2015年很多科技大公司开始开发自动驾驶业务,起初ROS因为具备庞大的生态和方便的API,也被扩展,在自动驾驶领域使用,随着客户需求的猛增,ROS社区难以应对,很多公司选择fork ROS来构建他们自己的自动驾驶软件框架,例如百度开源的CyberRT,它对ROS做了剪裁、架构重构和性能优化,是百度Apollo开源自动驾驶软件的重要组成部分。
不仅如此,伯克利大学的ERDOS项目也应运而生,ERDOS是Elastic Robotics Dataflow Operating System的简称,试图通过新的架构方法来解决实时数据流的计算问题。
ERDOS使用Rust语言来描述数据流处理过程,把处理数据的节点作为独立封装的算子(operators),非常方便实现、扩展、移植,但是因为要求用户能够使用Rust语言编程局限了ERDOS的使用范围。
2022年DORA-RS开源项目被发布,它全称为Dataflow Oriented Robotics Architecture。它借鉴了ROS,CyberRT和ERDOS这些项目的优点,试图解决机器人和自动驾驶领域长久以来的一大难题:如何能把繁荣的基于Python的AI算法生态集成到机器人和自动驾驶的软件开发中,同时能够高效地处理数据流。它使用Rust语言做数据流的传输和调度管理,大大减少了数据的重复拷贝和传输。它提供了Rust语言和Python语言之间的无缝集成,减少了跨语言的性能代价。借助Python丰富的算法模块,开发者可以通过YAML蓝图脚本轻松设计出适用于各类机器人和自动驾驶场景的数据流。DORA为您提供与,实现数据流的零拷贝和高效IPC传输,极大提高性能。使得开发者可以专注于应用开发,而无需过多担心性能问题。
同时与Carla自动驾驶仿真系统完美结合,开发者可以使用DORA-RS提供的基线算法,开发先进的自动驾驶应用,并进行仿真测试。
不仅仅是仿真,DORA-RS同样支持真实的自动驾驶与控制器系统,无需更改代码,即可在仿真和现实环境中验证您的算法。
自动驾驶汽车的现实前景已不再是疑问。但如何确保它们安全、有效地运行?欢迎进入CARLA的世界,一个支持自动驾驶系统开发、培训和验证的免费开源模拟器。
起初,来自西班牙 久负盛名Computer Vision Center的Germán Ros博士和Antonio M. López教授开发了SYNTHIA项目,是自动驾驶仿真的一个突破。
但SYNTHIA使用的仿真引擎有严格的许可限制,使得它无法完全开源。
在2016 年的CVPR会议上,来自Intel的Vladlen Koltun与Ros German接触,希望资助他们构建一个完全开源的自动驾驶仿真项目。这就是CARLA的起源。
CARLA的核心理念是开源开放,它被捐献给Embodied AI Foundation。这意味着任何人都可以获得、修改、调整并完善其代码。
今天,全球有超过1,600名活跃用户在使用CARLA,包括学术界和行业界。几乎每家大学和大型公司的自动驾驶研究都与CARLA有关。CARLA的最新版本更加真实,增加了行人模型,包括儿童,并对每个模型的骨骼结构进行了精细的控制。CARLA的目标是使每一个团队,无论大小,都可以参与到自动驾驶的前沿研发中,它助各方在验证和验证自动驾驶系统时,提供一个共同、公平的标准。
CARLA还推出了自动驾驶挑战赛,为各方提供了一个公平的平台,进行自动驾驶软件堆栈的验证。
CARLA团队致力于为大家提供最好的模拟器,完全免费,让更多的人能够为自动驾驶的未来做出贡献。
接下来是CARLA的扩展——Oasis。它不仅增强了CARLA的易用性,提供了web UI界面,还能轻松地定义地图、加入车辆和传感器模型。更重要的是,Oasis支持基于opensceario 2.0的场景描述语言,使得定义驾驶场景变得非常方便。除此之外,它还支持CARLA leaderboard的评分功能,场景测试和测试回看功能。
从ROS到DORA-RS,从有限的实际路测到自由丰富的CARLA+OASIS仿真,这条开源之路承载了无数人的梦想和努力。每一个节点,都是对未来的一次想象和尝试。
全部0条评论
快来发表一下你的评论吧 !