在本次技术研讨会上,来自汽车与科技领域的专家们围绕汽车软件定义及自动驾驶技术展开了深入交流与探讨。从 SOAFEE 蓝图计划的创新性理念,到 Autoware 开源项目及 Open AD Kit 在实际应用中的探索,再到 Edge Workload Abstraction and Orchestration Layer(EWAOL)的技术落地,为汽车行业迈向智能化、软件定义化的未来提供了宝贵的思路与方向。
SOAFEE 蓝图介绍
SOAFEE 蓝图计划
SOAFEE 蓝图是一项由成员共同推动的关键计划,其核心目标是将软件定义汽车这一前瞻性愿景背后的概念具象化。通过部署领域特定的应用程序,并充分利用容器化等先进技术,为软件定义汽车的实现奠定坚实基础。对于参与其中的用户而言,能够在自己的终端完整复现蓝图至关重要,这不仅依赖于成员之间的高效信息共享,更需要精心编写的详尽且清晰的文档支持。用户既可以直接参照蓝图步骤,从中获取灵感,了解行业内的先进实践,也能将其作为基础框架,依据自身独特需求进行灵活修改,使其完美适配不同的项目场景。
SOAFEE 蓝图架构
从高层次架构视角来看,SOAFEE 蓝图的最上层是特定领域应用程序。这些应用程序针对特定的汽车功能任务而编写,通过容器技术进行部署,以实现高效的运行与管理。应用程序运行于 SOAFEE 参考实现之上,该参考实现的关键要求是能够全面支持 SOAFEE 及其架构所规定的各项功能。采用标准空间固件,能有效实现不同硬件平台之间的一致性,使得用户在遵循相关固件标准的各类硬件上,都能轻松快速地启动操作系统。例如 Arm System Ready Program,作为基于一组硬件和固件标准的合规认证程序,为这种一致性提供了有力保障。
SOAFEE 的核心愿景是实现软件与硬件的深度解耦,从而为硬件带来更高的灵活性。在实际应用中,这种灵活性体现在多个方面。在边缘端,嵌入式设备可以灵活部署在桌面或汽车内部,满足不同场景下的功能需求;利用云服务,能够根据实际需求动态提供可用性和可扩展性,以满足高强度测试时的计算需求;虚拟硬件则为用户提供了在当前无法获取,甚至尚未实际存在的硬件上部署软件的可能性,极大地拓展了软件的应用范围与创新空间。
为了充分激发 SOAFEE 成员的创造力,蓝图的描述设计得简洁而通用,旨在避免任何不必要的限制,鼓励成员按照自己的想法自由创建蓝图。若想深入了解更多关于蓝图的详细信息,可访问 SOAFEE 的 GitLab 网站(gitlab.com/SOAFEE-blueprints)。
Autoware Open AD Kit 蓝图
Autoware Open AD Kit 介绍
Autoware Open AD Kit 蓝图作为首个落地的蓝图,其开发历程充满挑战,但如今已取得了显著的成果。Open AD Kit 由 Autoware Foundation 主导开发,相关工作在 Open ADKit 工作组中有序推进。该项目的核心目标是将软件定义的先进最佳实践引入开源自动驾驶软件栈 Autoware,具体措施包括引入云原生开发和现代化生产方法,以提升软件的性能与可靠性。
Open AD Kit 的部署模型采用先进的微服务架构,具备广泛的适应性,能够支持云、边缘和虚拟硬件等多种运行环境。Autoware Open AD Kit 蓝图将 Open ADKit 工作组的输出应用工作负载,以多样化的方式进行部署,通过丰富的实际示例,生动展示了如何将 SOAFEE 关于软件定义车辆的愿景转化为现实。在架构的右上角,通常可以看到第三方应用程序,例如数据收集节点或更新服务,这些应用程序为整个系统提供了额外的功能扩展。工作负载可以根据实际需求,灵活部署在 Linux 环境的容器中,或者其他适配的环境中,这种灵活性为用户提供了更多的选择与便利。
Autoware Open AD Kit 蓝图版本
目前,Autoware Open AD Kit 蓝图有多个版本正在同步开发中。其中 1.0 版本基于 Autoware Foundation 大约一年前发布的 Open ADKit 1.0 版本构建。自发布以来,该版本已经取得了许多重要进展,后续 Christian 将在研讨会上进一步详细介绍。Open AD Kit 1.0 版本基于 Autoware 的四个核心功能:地图、感知、规划和车辆接口,运行在 Ava 开发者平台的 ewo 上。通过以太网连接的 Linux 机器,运行着 Arvis(可视化工具)和 Scenario Simulator(模拟工具),用于全面测试 Open AD Kit 软件栈的性能与稳定性。同时,1.1 和 1.2 版本也在持续开发中,这两个版本对部署方式进行了优化改进,但都保留了容器技术,以确保软件的高效运行与灵活扩展。
Edge Workload Abstraction and Orchestration Layer(EWAOL)
EWAOL 概述
Edge Workload Abstraction and Orchestration Layer(缩写为 EWAOL)作为 SOAFEE Linux 参考实现,具备强大的功能,能够有效实现 SOAFEE 所设想的软件部署方式,即采用先进的容器化和虚拟化技术,提升软件部署的效率与灵活性。
EWAOL 组成部分
EWAOL 由多个关键部分协同组成。其中,Docker 作为用于运行容器的容器引擎,为容器的高效运行提供了基础支持;k3s 是用于容器编排的轻量级 Kubernetes 发行版,能够实现容器的智能调度与管理;Send 是用于硬件虚拟化的 1 型管理程序,为硬件资源的虚拟化提供了技术保障。EWAOL 是使用 Octo 项目精心构建的自定义 Linux 发行版,通过开源存储库 meta - ewall 提供。该存储库位于 SOAFEE GitLab 下,具体路径为gitlab.com/SOAFEE,其中有一个名为 ewall 的文件夹,meta - ewall 就托管在此处,方便用户获取与使用。
EWAOL 部署方式
EWAOL 提供了两种完全不同的构建与部署方式。一是裸机方式,即 EWAOL 直接在硬件上运行,应用工作负载以容器形式运行,这种方式能够充分发挥硬件的性能优势;二是虚拟化方式,即可以部署运行应用工作负载容器的虚拟机,为用户提供了更加灵活的部署选择。需要注意的是,这些容器化的应用工作负载不属于 EWAOL 本身,用户可以根据自身需求自行提供容器,实现个性化的应用部署。Octo 项目的优势之一是其独特的层模型开发方法,这是实现定制化的关键技术,使用户能够根据自身的具体需求,对 EWAOL 进行深度修改与优化。
EWAOL 在硬件上的部署
在当前的蓝图中,EWAOL 部署在边缘的 Ava 开发者平台上。此前,EWAOL 也已在云环境和 AWS Graviton 实例上进行过成功部署,但尚未在该蓝图中完全实现。通过在 Ava 开发者平台上部署 EWAOL,可以在云和边缘实现运行时的高度一致性,这一成果得益于 Octo 项目的先进技术,以及硬件供应商对标准空间固件的广泛认同和积极实施。我们选用 EWAOL 的裸机版本,因为它便于在 Ava 和云环境中进行部署,能够有效提升部署效率。AWS 拥有多种 Graviton 版本,如 C60(基于 Neoverse N1 核心,与 Ava 开发者平台的核心相同)、G5G(新版本,支持 GPU,为图形处理提供强大支持)和 C7G(最新版本,基于 Neoverse V1 核心,具有额外的向量能力,向量引擎比 N1 更大,计算性能更强劲)。在蓝图中使用的 Ava 开发者平台采用 Amper 的芯片,配备 Neoverse N1 CPU,类似桌面开发机器,带有用于加速的 PCIe 插槽,这种硬件配置非常适合进行原型开发,能够快速验证技术方案的可行性。
Autoware 项目
Autoware 项目概述
Autoware 是由 Autoware Foundation 管理的重要开源项目,它是基于 ROS2 构建的完整自动驾驶软件栈,采用 Apache 2.0 框架进行开源许可。其架构具有高度的模块化特点,自动驾驶栈的不同组件,如感知、规划、控制等,都是定义明确的独立模块,基于 ROS2 构建 API,这种架构设计使得 Autoware 非常适合采用微服务架构,便于进行功能扩展与优化。
Autoware 应用示例
Autoware 凭借其强大的功能和灵活的架构,已成功集成到多种类型的车辆中。目前,全球已有数百个项目在使用 Autoware,涵盖小型移动服务班车、全尺寸巴士、乘用车等各种车辆配置。Autoware 的显著优势在于其模块化、可适应性和可集成性。它能够根据车辆运行的特定环境,灵活修改不同模块的功能,以满足不同场景下的自动驾驶需求。这种强大的适应性使得 Autoware 能够被广泛应用到众多不同的车辆配置中,并在全球不同的运营设计领域进行部署,为自动驾驶技术的普及与发展做出了重要贡献。
Autoware - Open AD Kit 介绍
Open AD Kit 是 Autoware 开源项目的另一个重要组成部分,它汇聚了 Autoware Foundation 的多个联盟合作伙伴,包括 Autoware Foundation、SOAFEE、e - sync 和 mih。其基本思路是将 Autoware 栈部署在 SOAFEE EWAOL 框架之上,通过与 e - sync 合作,将其服务作为框架内的另一个工作负载应用程序,实现对 Autoware 应用的高效管理和更新。在 mih 方面,重点是定义开放 V 平台,明确 EEA(电子电气架构)的规范,以及 ADAS(高级驾驶辅助系统)应用软件与车辆其他组件,如传感器、中央网关、控制平面、数据平面功能、信息娱乐系统等的接口。这些 API 在 mih 工作组中经过深入研究与讨论后定义,并作为 Autoware 栈的一部分进行实现,使得公司可以将 Open AD Kit 作为现成的解决方案,用于快速实现 mih 规范,降低开发成本与周期。
Autoware - Open AD Kit 架构
当前,Open AD Kit 已发布 1.0 框架。在这个版本中,将 Autoware 实现为 EWAOL 之上的容器,并与 e - sync OTA 代理集成作为框架内的另一个应用程序。同时,成功展示了在 AWS Graviton 实例(云环境)和 Ava 开发者平台(边缘环境)上运行该框架的 ISO 级别一致性。然而,目前这还不是真正意义上的微服务架构,整个 Autoware 应用在一个容器中运行,在实现 SOAFEE 中汽车工作负载作为微服务应用的真正愿景方面,仍有大量的工作需要持续推进。
Autoware - Open AD Kit 未来发展
未来的工作重点是将 Autoware 的各个模块拆分成单独的容器,并在 EWAOL 框架上实现,以构建更加灵活、高效的微服务架构。同时,引入 SOAFEE 未来版本中关于管理程序和硬件抽象层的功能,以便在异构计算平台上进行构建。这些平台将包含安全岛,即安全能力的 MCU 与高计算解决方案,如 GPU、CPU 和用于感知和定位功能的专用加速逻辑集成在一起,使这一切成为 Open AD Kit 框架的有机组成部分。在未来几个月,Autoware Foundation 将展示更多关于在 SOAFEE 上实现这一目标的详细计划,为行业发展指明方向。
Autoware - Open AD Kit 云边架构
Open AD Kit 框架的另一个重要方面是云原生开发,即提供在云中使用该架构进行应用开发和验证的能力。为此,基金会正在全面研究所需的各种工具和能力,包括从车辆收集数据并上传到云,对数据进行机器学习操作和开发操作,如开发注释工具、构建各种模拟场景以验证应用栈及其功能。同时,提供各种模拟工具,如云或测试台上的硬件在环模拟工具,如场景模拟器、传感器模拟器套件、完整栈的端到端模拟器等。在云中完成验证后,通过添加 e - sync 客户端服务实现 OTA 能力,对车辆进行更新,然后开始新一轮的数据收集、上传和新功能验证,形成一个持续优化的闭环。
本次 SOAFEE 技术研讨会对汽车软件定义及自动驾驶技术的深入探讨,为行业发展提供了丰富的技术思路和实践方向。相信在这些先进技术的推动下,汽车行业将朝着智能化、软件定义化的方向加速迈进。 期待未来 Autoware Foundation 和相关合作伙伴能够在这些技术的基础上,不断创新和突破,为我们带来更加智能、安全、便捷的出行体验。