万晓东 郑欢 孙涛 陈泓宇 李超
(中国第一汽车股份有限公司研发总院,长春 130013)
缩略语
ADAS Advanced Driver Assistant System
FAD Fully Automated Driving
ODD Operational Design Domain
MBSE Model-Based Software Engineering
SysML Systems Modeling Language
NDRT No-Driving-Related Task,NDRT
HUD Head Up Display
TOR Takeover Request
汽车智能化发展使得高级驾驶辅助系统(Advanced Driver Assistant System,ADAS)正向着完全自动驾驶(Fully Automated Driving,FAD)转变[1]。这个过渡阶段即是人机共驾阶段[2]。在可以预见的相当长一段时间内,智能驾驶汽车面向市场的主要研究仍会集中在人机共驾层面[3]。人机共驾概念指人类驾驶员和自动化系统对车辆分时、分权完成双方都能独立完成驾驶任务的技术架构[4]。在人机共驾的功能架构设计中,人机接管是技术关键点,也是高级自动驾驶技术的难点。
根据SAE International 于2021 年更新的自动驾驶车辆标准,将自动驾驶划分为6 个等级,其中2 级~3级自动驾驶车辆处于自动驾驶模式时,驾驶员只需要应对突发状况。4级自动驾驶车辆仅在遭遇到超过驾驶设计域(Operational Design Domain, ODD)情况下,如自动驾驶系统失效或遇到无法处理的交通状况时,需要驾驶员接管车辆,即人为地控制车辆以保证行驶安全,这种唤醒驾驶员认知和行为控制的过程被称为接管(Take-over)[5]。
在复杂场景下控制权交接是一个跨领域的复杂功能,实际设计与开发需要基于完整的人类驾驶员与自动化系统的协同框架[4]。本文深入分析了接管需求管理,建立了明确的需求管理模型,深入剖析应对不同场景下对自动化系统能力的有机调配与转换,从而确保接管任务达到预期目标。本文自动驾驶模式为机器人驾驶员(车辆自动行驶系统)掌握车辆控制权过程,人机接管过程是车辆控制权从机器人驾驶员切换至人类驾驶员的过程。
智能网联汽车属于智能交互产品,是包括机械、电子电气、系统控制、信息和认知多学科的复杂系统,具有多维度、强非线性、多过程与多界面耦合的特点[6]。智能网联汽车研发涉及到数以千计的用户感知功能、大量人与车之间的交互需求和相关技术集成。这使得智能网联汽车系统愈加复杂,如车辆碰到障碍物,需要向人类驾驶员发出接管提示报警音,或是人类驾驶员需要操作转向盘从而获得车辆驾驶权。
在数以千计的用例中,大量功能交叉验证需求人力几乎无法完成[7]。传统管理方式以系列文档为载体,在专业机构中传递技术信息,但是这种基于手工维护文档的方式,无论在项目初期还是项目后期的变更管理阶段都存在诸多缺陷,如需求捕捉不清晰,设计难以追溯等[8]。基于模型的系统软件工程(Model-Based Software Engineering,MBSE)是一种系统工程方法,将系统软件生成的模型作为数据交付媒介,具有很大优势[9]。
MBSE 需求管理工作内容主要是明确宗旨与范围,包括对系统设计的具体性能要求,由此即可建立起系统高层概念。首先,采用系统模型语言(Systems Modeling Language,SysML),建立由功能构成的黑盒操作场景[7],接管功能相关的黑盒场景指包含了人类驾驶员感知接管激活、执行接管、感知接管退出以及过程中与车辆交互的全部内容。其次,采用黑盒构造全局性功能结构图,最后使黑箱白化,得到白盒描述产品[10],白盒是指实现黑盒场景中感知与交互内容时序逻辑、软件算法以及相关控制器、执行部件的分配与部署。
广义控制权切换包括人类驾驶员发起的可选择切换、人类驾驶员发起的强制性切换和系统发起的强制性切换[11]。本文以人机接管功能框架中的一个功能点,即以特殊场景下人接管车为研究对象,阐述基于模型管理功能需求方法。其中,以车辆产品安全性行为和合适的人类驾驶员驾驶行为作为接管功能研究的主要内容[12]。例如人类驾驶员不会主动寻求碰撞并具备足够的反应力[13],以及车辆本身无设计因素或质量问题等导致的安全隐患。
本文所示例的黑盒操作场景表述为,车辆正处于自动驾驶模式,此时人类驾驶员并未关注行车状态,而车辆遭遇突发的、无法自行应对的行驶工况,此时需要人类驾驶员接管车辆控制权,由此会产生一些车辆和人类驾驶员相关的感知交互过程。
在对黑盒操作场景(即感知交互过程)分析后,可设计出相关交互逻辑与交互部件,由此可以建立黑盒模型,黑盒模型体现了人类驾驶员与车辆之间的交互过程。比如人类驾驶员通过车辆发出的报警信息感知到了车辆需要被接管。这种感知信息的播报方法与时机也构成了白盒模型需求。
综合这些需求,可以设计出接管相关的白盒模型,由白盒模型可以推导出车辆系统产品能力需求,如通过仪表显示屏、座椅控制器、座椅电机实现对白盒模型的支撑,由此可以建立车辆装备定义。
黑盒模型和白盒模型中的元素相互关联,特别是黑盒模型的用例图、活动图和时序图将在后续白盒设计过程中被重用[9]。
结合系统模型语言开展需求分析过程,通常以图形化方式表示系统内部的用例、系统外部的参与者以及二者之间的关系[14]。本文中,将接管过程作为人类驾驶员掌握车辆控制权的用例,即人机接管,人类驾驶员与人机接管用例之间的关系如图1所示。
图1 人机接管用例
2.1.1 人类驾驶员
人类驾驶员角色在接管用例中能够基于角色属性(包括视觉、听觉、嗅觉、触感、体感、知觉,这些是人类的主要感知能力,通过这些感知能力,人类可以与外界发生联系),感知到车辆发出的接管请求(Take-Over Request,TOR)即刻报警,感知到接管任务所需要的情境状态信息,执行必要的接管动作,感知到接管成功后车辆控制能力退出状态。
人类驾驶员参与接管过程的活动包括感知到接管请求、执行接管操作和识别接管成功,参与过程中的反应力可作为对接管系统设计输入的重要指标,这种反应力主要通过多种反应时间和接管时间来量化[13]。反应时间为从系统发出接管请求到人类驾驶员第一次注视前方或接触转向盘的时间,接管时间为从系统发出接管请求到人类驾驶员操作转向盘或踏板实现手动驾驶的时间。
2.1.2 接管主用例
本文主用例专注表述在特殊场景下产生的人接管车活动。该场景包括车辆周围动态环境的持续变化以及车辆在该环境中的行为[15]。经过用例细化生成用例规约,包括人接管车所经历的事件流程阐述,前置条件、后置条件和异常情况处理[16]。
本文示例的前置条件为车辆处于自动驾驶状态,且需要人类驾驶员接管同时,人类驾驶员可能未处于监控驾驶状态中。后置条件为人类驾驶员顺利获取驾驶车辆控制权。异常条件为接管任务失败,车辆进入自动避撞状态或接管请求终止,车辆可继续自动驾驶而无需接管,本文仅阐述顺利接管的需求分析过程,对异常条件不做进一步分析。
2.1.3 接管活动
在用例分析中,通常采用黑盒活动图对功能活动进行描述(图2)。黑盒活动图将系统(人类驾驶员和车辆以及二者的交互)看作一个整体,描述该系统在特定用例场景下的运作过程,并进一步将功能场景转化为功能链条[7]。
由图2 分析可知,人类驾驶员接管车主用例活动按顺序和主题可分为4项内容。
(1)接管激活:此时,车辆向人类驾驶员发出接管请求(接管报警信息),人类驾驶员感知该请求。
(2)接管信息:车辆提供具体车况、路况、接管原因(紧急避障、车辆故障或坏路况导致行驶失控),帮助人类驾驶员快速恢复情境意识。
(3)接管执行:在接收到人类驾驶员执行接管动作信号后,车辆将控制权移交人类驾驶员。
(4)接管退出:车辆完成控制权移交后,需要向人类驾驶员传递控制权移交完成状态信息。
2.1.4 接管子用例
为进一步明确系统设计内容,需要建立并分析人类驾驶员接管车的子用例。结合图2,从系统设计角度,可划分为两个2 级子用例,即接管激活与接管退出用例。接管激活用例又可进一步分为3 级子用例,即接管感知提醒与接管情境认知,具体如图3 所示[17]。
图3 人机接管子用例[17]
2.1.5 接管顺序
使用黑盒顺序图可更清晰地表达人类驾驶员与子用例之间的交互关系与边界条件,具体见图4。由此可进一步细化子用例规约,并推导出接管系统的交互能力。
图4 人机接管顺序
2.1.6 接管时序
车辆为能够及时唤醒或提醒人类驾驶员,需要具备图像、声音感知交互能力,通过调配这些能力,使人类驾驶员开始意识到周围发生的事情并能理解信息含义[18]。
此外,为确保接管速度与接管质量,这种提醒交互能力的系统调配需要有前置时间,即合适的接管时间预算(Time Budget),通常设定为8 s[13,19,20]。假设当接管请求发出之后,人类驾驶员视线从非驾驶相关任务转移到路面需要0.8 s,人类驾驶员准备接管与认知恢复需要4 s,行为反应用时约3.2 s(具体时间需要考虑人类驾驶员的自然因素如年龄,本文提供的时间仅作为示例)[21-23]。这些时间参数将成为子用例分析前置条件。
对人类驾驶员接管过程进行时间分配,其中感知接管报警信息与认知接管情境信息事件发生在接管激活用例中,行为接管事件发生在接管退出用例中(图5)。
图5 人机接管时序
车辆长期处于自动驾驶状态时,人类驾驶员会出现分心情况比如疲劳或执行驾驶次任务(No-Driving-Related Task,NDRT)[24],其中NDRT 严重影响接管时间和质量[25]。同时,对人类驾驶员接管任务影响因素主要有信任、疲劳、非驾驶相关任务[26]。接管激活用例任务是使人类驾驶员感知周边环境,包括接管感知与接管情境认知。通常人类驾驶员在感知到接管提醒后,才会迅速开始情境认知过程。
在接管激活整个过程中,依据视觉、听觉和触觉交互方式的协同机理以及接管请求方式提取系统交互能力,为确保安全需要控制展示信息量,以降低人类驾驶员认知负荷[4]。
2.2.1 接管激活前置条件
接管激活前置条件包括接管时机、接管感知与情境认知相关的交互元素。
按前所述,应在车辆强制自动避障前8 s 调配接管提醒能力,在接管提醒信息发出的同时,提供高效接管情境交互能力。
接管感知用例中车辆对人类驾驶员发出警觉唤醒,其中对于接管请求形式的选择是重点[26]。接管请求的提示信息通过交互能力体现,可结合车型已有的配置和需求紧急程度组合构建多通道交互能力[27-29]。因为接管提醒信息是与驾驶安全、接管效率直接相关的信息,接管提醒信息与其他感知信息具有更高的优先级[21]。
即使人类驾驶员感知到接管请求,但是较低的情境意识将直接影响接管质量[30,31]。在接管激活用例中,需要结合人类驾驶员的情境认知能力,提供充分的感知元素。在此,为具备向人类驾驶员提供合适的交互能力,需要兼顾接管原因的透明度与实时(动态)情境信息[21]。
这种感知元素需要紧密结合对应的场景[18,21,32]。常见的接管任务场景包括前车忽然停下、前方道路维修、出现障碍物、交通标记线消失[33,34]和恶劣天气或者紧急交通事故[35]。本文仅以出现障碍物为例进行论述。
2.2.2 接管激活过程
在接管激活过程中,对这些感知能力的准确提取需要对激活过程中人与车之间的元交互(与人的自然感知相关的单次交互)进行分析[17]。
如图6所示,通过视觉提醒、听觉提醒和触感提醒分别刺激人类驾驶员对应的视觉、听觉和触感感官。为实现这些提醒功能,需要建立对应的交互能力。
接管感知用例中的感知提醒时间与对NDRT 设备处理是接管感知用例的2 项需求。这2 项需求在黑盒阶段提出,并传递到系统白盒化过程中,即作为系统具体实现的约束条件。本文以感知提醒时间作为前置条件,即接管提醒时间作为接管感知用例被触发的条件。对NDRT 设备处理作为后置条件,即接管感知用例触发后,系统应自动设置NDRT 设备状态。
(1)视觉交互能力
可以利用仪表板上的图标或区域的点亮来发出接管请求[35],比如双手握转向盘图标。
可以通过环绕发光二极管(Light Emitling Diode,LED)氛围灯带发出接管请求[36],也可以通过实体按键背光灯提供操作指示,比如某公司产品位于转向盘轮辋的接管控制装置DRIVE PILOT,如果转向盘轮辋上的按钮变红,车辆会要求驾驶员在10 s 内接管车辆控制。
动画或界面变化也可作为有效的提醒元素,比如国外品牌产品通过中控屏亮度闪烁警示驾驶员接管车辆。
(2)听觉交互能力
听觉交互主要是通过发出报警音[37]与语音[38-39]实现人机交互,同时为使人类驾驶员迅速反应,在语音之前播报警报音[35],同时在语义上附加明确的指令信息[40]。
(3)触感交互能力
触感交互主要通过坐垫振动、靠背振动或安全带振动[41]实现人机交互,同时考虑结合车速设置不同的振幅和频率[42]以及带有方向信息的振动,警示驾驶员接管汽车控制[43]。在实际应用中需要注意,虽然触感不占用人类驾驶员的视觉认知,可以进行人性化警示[44],但是这种方式能够传递的信息量较小[19],比如仅通过触感难以传递方向、操作指示或是故障原因等类型信息。
为便于人类驾驶员尽快恢复驾驶情境认知,需要提供足够的状态信息,包括车速、挡位和接管原因,有利于人类驾驶员对未来环境状态和条件进行预测[45]。
图7 以障碍物导致车辆无法通行为例,进行情境认知交互能力提取。车辆提供障碍物在本车行进方向的位置(如左侧、右侧),障碍物与本车间距、障碍物是否正在移动或变形以及避免与障碍物碰撞的推荐信息,这些信息有助于人类驾驶员迅速决策。同时,考虑到为避免驾驶员分心,可将场景信息显示在平视显示器(Head Up Display,HUD)上,提高人类驾驶员获取信息的效率[46]。
图7 情境认知交互能力提取
2.2.3 接管激活后置条件
在接管激活情境下,为避免NDRT 对人类驾驶员感知能力与情境认知资源竞争[47-49],在强化接管任务信息的同时,应暂时弱化、屏蔽或中断其他任务交互,包括认知需求、视觉需求和身体需求,如观看视频或听新闻[50-51]。其中,身体需求包括通过恢复处于半躺或旋转状态的座椅帮助人类驾驶员恢复驾驶姿势,也包括停止座椅按摩触感以帮助减少驾驶员分心。
接管激活同时,可将车辆行驶状态提供到NDRT设备上,可增强接管过程的安全保障,并在人类驾驶员和车辆之间建立信任关系,提升接管效率[52]。
如图8,当导致接管任务激活的条件(如障碍物)消失时,或人类驾驶员接管成功,则触发接管退出用例[5,53]。其中,人类驾驶员接管成功是指接管过程中人类驾驶员将手和脚重新恢复至驾驶状态,恢复情景意识,并且对接管后的驾驶场景做出决策与反应[54,55]。人类驾驶员手动接管方式可以通过离手检测系统识别双手握转向盘状态,通过转向盘的转角传感器识别转动扭矩,通过制动开关状态识别人类驾驶员是否控制制动踏板。
图8 接管退出交互能力提取
人类驾驶员在接管过程中的行为主要表现为转向或制动,在人机交互研究工作中和对已有驾驶模型的数据优化中,可以通过稳定性指标(包括最大加速和减速度、横摆角速度、横向偏移量、转向盘反向操作频率和碰撞发生次数)对接管质量进行评价[5]。
基于用例分析获取的交互能力,在系统功能分析阶段将进行系统能力匹配。通过构建系统的状态图模型,将交互能力分配给对应的电气部件。
本文设定在接管系统中声音类交互能力通过蜂鸣器或扬声器实现,视觉类交互能力通过显示屏、投影设备以及灯光控制系统实现,触感类交互能力通过安全带、转向盘、座椅坐垫或座椅靠背振动实现。这种实现关系可通过矩阵方式配置(表1)接管能力,如坐垫振动能力通过座椅控制系统实现。配置之后,座椅控制系统即获得了具备驱动坐垫振动的能力。
表1 接管系统能力匹配
系统模型包含的黑盒时序图和黑盒活动图信息,后期均可测试验证[56]。
图9 描述了坐垫振动提醒的系统功能模型,从整体上描述了自动驾驶接管系统向座椅控制系统申请坐垫振动过程。接受到调用坐垫振动能力的信号后,座椅控制系统按照预定的算法与参数,调配坐垫电机或气泵执行调节动作,由此可向人类驾驶员传递振动触感。结合系统功能模型,再加入系统特殊特性需求,如坐垫振动的强度、频率和时长数据,此时会受到包括座椅电机、坐垫厚度、噪声以及电源模式多种因素影响。
图9 接管系统模型
接管功能应用场景突发几率小,但是安全性要求高。为进一步提高人机协作能力,推荐在接管系统设计过程中增加或应用图10 提供的3 种接管辅助功能,这些功能都与人类驾驶员角色相关,在开展其他系统设计中,也可复用。
图10 接管系统辅助需求
2.6.1 功能培训
人与机器自动化协作的2 个基本组成部分是信任(Trust)和透明度(Transparency)[57]。Payre 等[58]研究结论表明,提供自动驾驶培训可以有效提升人类驾驶员接管能力,尤其在紧急情况下。培训可以提高人类驾驶员对接管功能的熟悉程度,在培训过程中提供的接管体验和有效的接管请求也可以增进被培训人对车辆的信任[59-61]。通过培训,可以校准人类驾驶员与车辆的信任水平[21],避免由于信任不足或过度信任导致的事故[57]。
2.6.2 提前预警
系统可根据大数据或导航数据,在进入特殊路段即要求人类驾驶员提高注意力,可能面临接管场景,即系统在接管请求之前就发出监控提醒,要求人类驾驶员注意交通环境。试验表明,增加监控请求能有效提升人类驾驶员的接管绩效[62]。
2.6.3 人类驾驶员模型
如同人类驾驶员应该熟悉所驾驶的车辆,车辆也应该熟悉或自动适应人类驾驶员特性。可以考虑通过用户账号将人类驾驶员模型与车辆特性进行匹配。根据一些研究结果可以初步将人类驾驶员模型元素包括为风险等级[63]、经验[64,65]、年龄[66,67]、驾驶行为[68-70]和认知能力[64-66]。其中,驾驶特性的识别方法可以从人类驾驶员状态监测、驾驶员意图识别与预测和驾驶风格辨识3个方面进行展开[71]。
本文提出一种基于模型系统工程的人机接管功能架构设计方法,通过SysML 模型方法实现复杂功能需求管理。
以人机接管功能适用场景作为用例,将人类驾驶员与车辆视为共同完成任务的主要元素,结合人类驾驶员在接管任务中的心理、感知和行为特性推导建立交互能力,详细阐述建立活动图、顺序图的图形逻辑目的和方法,并将导出的系统能力进行分配,建立系统模型。
对于人机接管类似功能的复杂需求管理,基于模型管理需求方法为清晰传递产品能力、建立强大的技术信息关联性或追溯性带来很大的便利。
良好的功能设计与产品开发源于对体验的深入理解。接管是自动驾驶功能中相对复杂的子功能,经过模型推导后建立的交互逻辑和交互元素最终要在实车上体现,并经过人类驾驶员(实车测试人员)体验与评价。对于实际接管效能的评价需要兼顾不同人群特性、不同驾龄或年龄段的人群对于接管体验不同,如何实现个性化、高效接管已经逐步成为智能网联汽车研究人员关注的焦点。这需要车辆具备自主学习和快速适应人类驾驶员的行为习惯与能力。另一方面,如何体验所有接管场景,对于接管场景的聚类分析也是人机接管研究人员需要深入研究的课题。