异构无人平台软件框架的研究综述

2024-04-23 04:35李墈婧叶亚峰
计算机工程与设计 2024年4期
关键词:异构云端无人

李墈婧,叶亚峰,张 宁

(中国航天科工集团第二研究院 七〇六所,北京 100854)

0 引 言

由于无人技术的发展,涌现出了无人机[1,2]、无人车[3,4]、机器人[5,6]等种类繁多、功能复杂的无人平台,针对无人搜索跟踪目标[7]、灾难救援[8-11]等复杂任务场景,单一平台获取信息量有限且发生故障影响较大,需要多源异构无人平台实时交互,共享侦测数据和状态,完成任务的协同规划。因此需要研究异构平台框架,从而实现不同平台之间的互联互通、智能协同。

智能汽车作为机器人时代的技术旗舰,对无人平台的发展提供了牵引性思考,在“智能化、网联化”的变革趋势下,已经逐步达成了“软件定义汽车”的共识。传统的基于分布式的电子电气架构[12],使得各系统软硬件之间高度嵌套,系统升级难度较大。在集中式电子电气架构[13]下,设计面向服务的软件架构,服务的部署不再依赖于特定平台,通过标准化接口设计,实现软件的松耦合、易于扩展。

对无人平台的设计,目前以硬件为主,按需求定制设计的研发模式,在架构灵活性、系统资源共享性、功能域融合性等方面存在不足,难以实现异构无人智能平台的统一升级、统一控制、统一管理。因此本文以开放式、综合集成的无人平台通用软件框架为出发点,对无人平台软件框架的当前研究情况进行了深入的回顾,归纳总结各种智能汽车领域软件框架的特点及关键技术,并给出发展建议。

1 无人平台软件框架的研究现状

1.1 云端架构赋能机器人

国外对于云端架构赋能机器人的研究比较早,并提出机器人云平台概念,将机器人数据处理、智能计算等复杂的任务交给云平台,从而完成复杂的任务。

文献[14]针对配送机器人在对复杂环境和临时任务,超出自身计算能力的问题,提出了一种基于微服务的快递机器人云平台,其架构如图1所示,该平台将复杂的任务拆分成多个服务,并基于Kubernetes、Docker、Jenkins等组件在云平台实现自动编排和部署,将传统机器人应用云迁移,并对新型app的开发,提升了机器人的服务能力。文中搭建了实际的交付环境,将泊车任务拆分成车道检测,标志识别和运动控制等多个微服务,在实际的场景中验证架构的可行性,与其它平台相比,该平台可实现应用程序的快速开发和部署。

图1 基于微服务的机器人云平台架构

除此之外,还有开源云机器人平台Rapyuta,该框架通过在云中提供安全的可定制的计算环境来减轻机器人的计算负担;Cloud Networked Robotics云平台通过抽象机器人设备并利用这些设备以连续、无缝的方式解决了支持各地日常活动的问题,方便机器人系统的开发,使机器人获得更丰富的功能等。

文献[15]提出了一种基于ROS的机器人云平台架构,如图2所示,该架构在现有的机器人云平台架构的基础上进行优化,按功能划分了基础层、平台层和服务层,基于ROS进行二次开发部署机器人通用组件,利用OpenStack将机器人云平台虚拟化,根据微服务结构特点将复杂的任务拆分成一系列微小的服务实现平台云服务的封装,该框架避免重复构建开发环境、部署机器人软件的问题,具有松耦合的特点。

图2 基于ROS的机器人云服务平台架构

文献[16]提出了一种基于微服务的服务机器人云服务设计方法,该方法主要设计了服务机器人虚拟模型、微服务库、用于交互的接口协议,其框架如图3所示。该框架中将服务型机器人运动学模型、动力学模型、传感器模型、环境模型等虚拟模型到云端的映射,解决了异构兼容性问题;微服务库采用Docker容器,将复杂的服务功能封装为微小的服务,当服务机器人调用云端服务时,云服务根据云端微服务列表,进行串行服务,链接成功能应用;接口协议实现服务机器人与云平台之间数据交互,根据云服务的需求动态的构建服务实例,为云服务的高效运行提供了支撑。

图3 基于微服务的云服务架构

文献[17]针对多机器人云平台在实际应用中存在的协议适配通用性差、硬件资源泛化程度低等问题,提出了一种基于微服务的智能云服务平台架构,其框架如图4所示。协议适配层利用数据交换协议实现多种机器人设备的快速接入,解决了异构平台兼容性问题;资源虚拟化层根据服务型机器人和工业机器人不同体系,定义机器人相应的信息模型,通过统一的本体建模描述机器人资源,实现各类机器人信息模型在云端的统一映射;智能服务层实现用户与多机器人云平台之间的友好交互;微服务层由多个轻量化、功能独立、可动态重组的多个服务单元组成,用于支撑构建业务应用。

图4 基于微服务的多机器人资源云服务平台架构

文献[18]针对异构无人平台协同作战场景、作战能力的差异和约束,搭载的传感系统、计算控制单元在复杂的任务中无法高效作战的问题,提出了一种基于异构平台适配器实现互操作协议,连接有人/无人平台,对于不具备自主分析和智能计算的边缘节点,可通过适配接口将数据传输到具有较强算力的云平台,其框架如图5所示,文中搭建了华为MDC300的云节点和瑞芯微RK3399的边缘节点的实验环境,验证了架构的可行性。

图5 多无人平台协同应用的计算架构

除此之外,国内达闼科技公司研发的云端机器人操作系统HARIX OS海睿,基于“云-网-端”协同技术,可以为人工智能行业和机器人行业从业者,开发应用提供训练实验平台;清华大学提出了一种机器人云中心(robot cloud center,RCC)框架和机器人即服务(robot as a service,RaaS)的概念等。

综上所述,云端机器人架构大概分为3类:第一类是专注于云端引擎,通过网络访问云端服务器获取机器人特定功能;第二类是专注于共享网络知识库,对客户端开放接口,增加了机器人之间的协同;第三类强调普适性,即采用容器化部署为机器人在云端创建计算环境。

1.2 云服务平台的优势

相对于机器人单体设计,构建机器人云服务平台的优势有:复杂计算和数据处理能力、快速部署能力、应用快速生成能力、屏蔽底层异构设备能力。

(1)复杂计算和数据处理能力

随着应用场景的不断复杂和数据的累计,对机器人本体的计算能力的要求不断提高,相对于CPU、NPU和FPGA有较强的并行计算和数据处理能力。机器人本体的计算能力有限,将复杂的智能计算和数据处理卸载到计算能力强大的云端,可以提高机器人系统的性能。

(2)快速部署能力

将复杂的单体任务拆分成一组支持独立开发、测试、运行的微服务,具有相互独立、松耦合的特点,避免了重复构建开发环境、应用部署的问题,提高机器人快速部署的能力。如地图构建服务可以拆分成数据传输、机器人模型、传感器模型、算法模型、数据转换等多个微服务;路径跟踪云服务可以拆分成航向控制、速度控制、加速度控制、机器人运动学模型等多个微服务。

(3)应用快速生成能力

以微服务的形式开发和测试应用程序,通过功能解耦的方式,将一个复杂的任务分解成一组微服务组件,是快速生成应用的关键。机器人通用组件包括自主建图与定位导航算法、轨迹生成算法、坐标转换算法、目标识别算法、图像检测算法、机器人控制、机器人运动学模型、机器人动力学模型等,可以实现目标检测、目标跟随等基本的应用。机器人云平台微服务池支持更新和扩充,通过添加服务组件,快速生成新的功能应用,以适应不同的应用场景和功能需求。

(4)屏蔽底层兼容异构设备能力

机器人云平台拥有强大的硬件资源,可以提供数据存储、智能计算和数据处理,但机器人的设备厂商和通信方式不尽相同,需要进行数据格式的统一或转换,从而实现机器人云服务平台的互联互通。

机器人操作系统(ROS)[19]提供一种机器人通信和消息传递的标准,可以实现节点之间的相互通信。随着机器人技术和人工智能的不断发展,针对“多域异构资源重生、杂乱机器人的自主行为控制、集群智能”等机器人操作系统所面临问题的分析,军事科学院团队结合技能趋势和实际需要基于多态智能集群机器人操作系统micROS[20]基础上,提出了面向群体智能的可持续的平行学习框架。与计算机操作系统不同的是,micROS可以实现资源和行为的重生,在互联互通的基础上,实现集体智能。通过设计角色抽象和语义情景抽象,从而解决了群体机器人自主协同的关键问题。

2 智能汽车领域软件框架

无人领域的重要发展节点出现在了智能汽车领域,尤其是针对无人驾驶应用场景,各车企(特斯拉、比亚迪等)以及主流高新技术企业(百度、华为等)纷纷开展针对智能汽车领域的软件框架设计,以软件为核心定义汽车的功能,通过规范化设计,来屏蔽各类底层平台、传感器差异性的影响,实现真正的软硬解耦。

2.1 软件定义汽车

特斯拉的自动驾驶Autopilot[21]软件架构如图6所示,主要特点有:①操作系统基于Linux内核进行研发,设计全栈AI架构,形成“感知-定位-融合-决策-规划-控制”整套方案;②电子电气架构从域控制逐步转向集中式架构,减少了ECU控制模块的数量,算力集中到中央单元,便于后续远程升级;③基于自研芯片FSD,充分利用云端算力及资源,收集用户数据进行软件的更新迭代,达到了功能集中、资源共享的目的。

图6 Autopilot软件架构

比亚迪的BYD OS软件架构如图7所示,主要特点有:①与英伟达合作,使用计算性能较强的DRIVE Orin车用处理器;②作为中国首个车用操作系统,硬件驱动层能够向上层提供一个标准化的接口,供上层服务调用,实现硬件的分层解耦;③电子电气架构采用智能域控制架构。通过智能动力域、智能车控域、智能座舱域、智能驾驶域等高集成的域控制,提升了算力和交互响应效率。

图7 BYD OS软件架构

百度的Apollo自动驾驶开放平台软件框架[22,23]如图8所示,主要特点有:①开放车辆硬件标准和接口标准,各车企可以通过标准认证接入平台;②易扩展的应用与软件场景应用。软件应用可以为开发者提供感知、预测、规划、控制、定位等常用应用扩展,以及基于场景的扩展应用;③提供易用的软件和云服务工具。提供地图引擎、感知、定位等最小软件服务,云端服务完成算法模型训练、实训、仿真、高精地图等功能。

图8 Apollo8.0自动驾驶开放平台软件架构

华为的MDC自动驾驶计算平台整体架构[24]如图9所示,主要特点有:①平台硬件集成具有鲲鹏CPU算力和昇腾AI算力的智能SOC芯片,大大提高了算力和处理能力;②MDC Core对外提供基于AUTOSAR规范的软件服务,提供标准的API和SDK开发包,便于智能应用的开发、测试与部署;③遵循平台化与标准化原则。包括平台物理特性标准化、平台硬件接口标准化、算法组件标准化,提升整体研发效率。

图9 MDC自动驾驶计算平台整体架构

2.2 各类架构层次特点

随着“软件定义汽车”的大背景下,国内外厂商纷纷开始投入自动驾驶平台的研发,除上节所提到的软件框架外,本文从主流车企和零部件、高新技术企业两个角度对各智能汽车领域框架进行综合分析[25],见表1。

表1 国内外智能汽车领域框架综合分析

经过综合分析,可以得出智能汽车领域软件框架的特点包括:

(1)在智能化电子电气架构的集中式发展趋势下,不同厂商不同操作系统如何实现高效集中式管理成为关键,中间件能够对软件提供标准化的接口、配置信息进行统一化管理,实现跨配置、跨平台调用。在所有中间件的方案中,目前车企主要采用基于AUTOSAR的标准规范[26]。

(2)目前汽车领域软件框架平台通过系统软件向下适配异构硬件架构,功能软件基本采用SOA松耦合的方式,将汽车平台和外围传感器等硬件作为底层,上层设计自动驾驶计算平台,通过服务组件和硬件的标准化接入,实现持续的升级更新。

(3)主流车企(如特斯拉、大众、比亚迪等)主要针对自身驾驶平台进行设计[27],并不考虑兼容其它类型的汽车平台。随着汽车智能化的发展,以NVIDIA、华为、百度为代表的高新技术企业在高效率软件开发方面有着得天独厚的优势,主要负责提供软件服务和接入平台,汽车硬件依赖车企,通过认证能够适配多款来自不同车企的车型,更能符合异构平台通用框架的设计需求。

(4)国外厂商(如特斯拉、英伟达等)基本采用自研芯片的方式,尤其是特斯拉的远程升级一直在行业处于引领地位。国内厂商(比亚迪、长城等)主要采用自研+合作并行的思路,计算芯片、底层操作系统、中间件等方面目前主要依赖国外供应商。华为依托自研昇腾、鲲鹏等硬件产品,以产品渠道拓展市场业务。百度自研CyberRT代替ROS实现高性能实时通信[28],借助百度地图、云服务等平台应用,且凭借在自动驾驶领域的技术优势,具有[车-路-云-图]的全栈基础能力。

3 异构无人平台软件框架关键性技术综述

3.1 软硬件平台协议标准定义

针对异构平台采用不同的物理接口和通信协议,其和上层平台之间的通信需要转换成统一的消息格式,目前主流方法是采用基于ROS/ROS2[29]的标准消息通信机制,其通信过程中需要对消息做MD5校验,当接口升级后,模块之间就会存在难以兼容的问题。百度的Apollo采用基于Protobuf的消息定义,解决了ROS协议存在的向后兼容问题。调试工具能够直接显示消息,序列化与反序列化的封装由对应工具完成,调试人员只需要关注业务数据即可,极大地降低了学习成本,此外基于ProtoBuf的消息传输机制能够跨平台、跨语言兼容、向后兼容性也更好。

3.2 工具链设计

工具链是通用软件开发平台的必要组成部分,平台工具链融合了数据采集、处理、挖掘分析、模型训练、仿真测试、部署等环节,能够开放各类应用场景库,通过快速原型配置、自动代码生成,兼容第三方产业开发,助力形成产业生态,能够极大地降低代码开发成本、统一软件风格、提高链路开发效率。目前不同公司开发工具链只关注自身部分功能,未考虑全生态产业链的设计,导致“数据孤岛”现象严重。在自动驾驶领域,以百度、华为为首的科技巨头瞄准仿真工具链的搭建为核心进行相关研发。百度Apollo平台借助PnC工具链和便捷的感知可视化工具,实现高保真仿真测试。华为MDC开发平台提供全套开发工具链,基于AUTOSAR规范的智能驾驶应用,实现一站式开发、测试以及可视化调试。

3.3 网络安全技术

网络安全技术是无人平台运行可靠的重要保障。网络安全的设计包括网络安全检测、网络安全隔离、安全认证、远程升级安全等方面。因此,亟需设计满足信息安全、功能安全、流程管控安全的标准规范体系,推动行业发展的标准化。加密和认证被广泛应用于大量车载网络环境,MAC技术也已经被纳入AUTOSAR规范,在与第三方系统对接时,主要通过IP白名单、SSL认证等方式来确保集成互访的合法性与安全性,通过安全服务加密、防护墙等措施确保数据传输的安全性。针对分布式无人机网络安全问题,文献[30]提出使用区块链技术和类似物联网和云服务器的网络拓扑结构,以确保数据收集和传输过程中的通信安全,并降低被恶意操纵的无人机攻击的可能性。此外,建立了一个独特的基于信誉的共识协议,以确保去中心化网络的可靠性。

3.4 远程升级(OTA)技术

OTA(over-the-air)技术[31]指远程升级技术,指通过4G/5G无线网络对车辆的数据、应用软件进行远程升级的技术。该技术能批量实现系统的远程升级、快速修复故障、提高用户的使用体验。在智能汽车领域,从特斯拉、蔚来、小鹏等新势力造车,以及大众、长城等传统汽车制造商,纷纷在新车中启动OTA升级技术。架构上分为OTA云端服务器和车辆两部分,OTA云端主要包括OTA管理平台、OTA升级服务、任务调度、文件服务和任务管理,升级流程主要包括“生成更新包—传输更新包—安装更新”。针对异构无人平台远程升级的需求,需要搭建OTA云服务平台,实现多种服务的综合管控,支持多无人平台、多类型设备的接入和软件升级。

3.5 集群协同控制技术

异构无人平台集群协同控制技术是完成作战方式转变的颠覆性技术,通过软件定义指控系统架构,以“群”的方式对目标实施侦察、攻击、防御等行动,能够很快形成态势优势。美国海军为加强海上防空作战能力研制了美军协同作战能力系统,该系统通过无线通信网络将航母上各作战平台的探测系统、指控系统和武器系统连接起来,共享各平台的雷达传感器探测数据,生成统一的态势图,使整个作战群能够高度协同作战。文献[32]针对典型的无人机协同对抗应用场景,构建了一个面向多智能体的集群协同智能系统架构,还构建了无人机集群协同对抗的仿真环境,完成了基于群智能的无人机集群协作对抗系统的设计与实现。

4 发展建议

单个机器人容易受到其机载硬件和计算约束的限制,随着无线网络、大数据技术、通信技术以及云平台技术的迅猛发展,为机器人提供了更快、更强大的计算能力和存储性能,从而赋予机器人新的能力。但针对异构无人平台的协同,如何实现云平台、操作端和设备之间的有机协同,达到系统的整体优化,仍然是该领域面临的重要挑战。下面对该领域未来的发展提出一些展望:

(1)云-边-端的架构成为发展的趋势。

云平台主要负责全局的管理和调度,包含数据的存储、数据挖掘分析、人工智能算法训练、仿真分析、智能操控等复杂服务、对计算资源要求较高的应用。

边缘层主要负责用户对局部进行管理、调度和控制,包含无人平台接入、终端设备状态的实时监控、数据采集、分析等实时性要求较高的应用,同时与云端实现资源、数据、服务的高效协同。

终端层主要包含各类异构无人平台,包含状态数据、载荷采集数据的采集上报、自主服务的运行,同步接收上层操控指令。

云-边-端的架构可以满足异构无人平台在复杂应用场景中执行任务的需求,根据实际应用需要,灵活部署硬件资源,可以实现功能的快速部署、快速响应。对于语音交互、协同操作等实时性要求较强的感知任务,采用能灵活组合CPU、FPGA和DSA等的异构计算平台,实现各无人平台硬件系统和边缘侧多传感器数据的同步和加速计算。对于处理敏感隐私数据(如视频、图像、对话等),云-边-端一体化架构需要构建数据的安全传输和存储机制,并且限定物理范围。对于可以进行物理操作的无人平台,要构建独立的安全监测机制,保证即使系统被远程攻击劫持后也不会造成物理安全损害。

(2)通用的协议标准规范及互操作机制。

针对各异的无人平台功能需求,研发集中式管理服务平台,在软件设计方面统一“指控端”和“平台端”系统架构,需要定义统一的硬件接口、软件协议标准,实现异构无人平台的接入,达到无人平台和服务的解耦。对于已有无人平台的接入,则需要设计互操作机制,实现通信链路的兼容,达到异构平台之间的通信和信息传输的目的。比如,达闼机器人公司提出的海睿操作系统,专门针对异构无人平台设计了机器人控制单元(RCU)实现不同无人平台之间的互操作。

(3)标准化的服务设计。

系统服务具有全局性,操控站对各无人平台的通用化功能进行协同管控和应用升级。

基础服务具有通用性,对基础软件开发平台提供的通用化功能具有抽象性。

动态服务具有动态配置性,应用服务在运行过程中可对服务进行配置,并执行动态服务。

原子服务具有独立性,设计应与硬件配置和实现无关,与上层功能服务层和下层的硬件驱动层解耦,完全独立。

5 结束语

文中对异构无人平台软件框架进行了研究、分析和总结。首先介绍了基于云端架构的无人平台设计。并以典型应用智能汽车领域为例,介绍了特斯拉、比亚迪、百度Apollo、华为MDC等软件架构的特点,“软件定义汽车”作为未来的发展趋势,对异构无人平台的框架设计具有一定的启发作用。然后提炼并总结了异构无人平台软件框架中软硬件平台协议标准定义、工具链、网络安全、OTA、集群协同控制5个关键技术。最后,对异构无人平台软件框架的未来发展趋势进行展望。本文为研究人员提供有关该领域最新研究的支持,并为后续研究提供帮助。

猜你喜欢
异构云端无人
试论同课异构之“同”与“异”
云端之城
无人战士无人车
反击无人机
诗到无人爱处工
美人如画隔云端
异构醇醚在超浓缩洗衣液中的应用探索
无人超市会流行起来吗?
行走在云端
云端创意