交流群 | 加入“功能安全社群”,请加微信NewCarRen,备注功能安全
如今,CASE(Connected, Autonomous, Shared &services, Electric)相关技术迅速发展,汽车实现自动驾驶带来的好处越来越多,举个例子,减少交通事故就是其中一个。我们期望将来可以让自动驾驶系统主导驾驶权,减少以往因人类驾驶员的错误操作等引发的事故。但是,自动驾驶系统(尤其是电子电气系统)发生故障时,如果难以维持自动驾驶的运行状态,就会存在发生新事故的危险性,这点也是令我们忧虑的。于是,建立保证安全的设计技术(Fail operation、Fail operation),让自动驾驶系统失效时仍能维持功能,是实现自动驾驶的重要课题。
牛喀网的资深功能安全专家在自动驾驶的转向系统安全设计这个课题上,也做了深入研究。本项目基于道路车辆功能安全国际标准ISO26262,在明确安全设计/测试评估课题的基础上,以探明实现该课题的“思维方式、方法”案例,希望运用于“讨论标准化”及“各家企业开发”及“验证”项目中。
这里以自动驾驶的转向系统为例,阐述依ISO 26262开发而得的具有代表性的安全设计及课题。首先,本主题中实施的ISO26262中Part.3至Part.6的相关开发流程如图1所示。
1. FTTI的设定方法
就图1的Part.3,由自动驾驶车辆的动态出发,将转向系统所需的安全目标(SafetyGoal: SG)制定如下:·防止自动驾驶中缺失转向操作导致车道偏离
·防止自动驾驶中多余转向操作导致车道偏离
此处所示的缺失转向,指自动转向功能停止。而多余转向,指正常自动转向时出现了超出必要程度的转向。为实现以上SG,必须制定功能安全要求(Functional Safety Requirement:FSR)及技术安全要求(Technical Safety Requirement: TSR),以在发生失效时也能维持转向功能。制定时,应定量表示SG。重点是计算出“自动驾驶车辆发生失效起至车道偏离为止的时间(FTTI)”以及“为维持功能应遵守的时间”。我们以缺失转向为例,指出该课题实施案例的思路及设定内容。
首先,行驶场景为“高速公路维持转向时”。这是考虑在高速公路上发生失效导致车道偏离时,事故导致的危害程度极大。此时车辆状态设定为“维持转向时发生失效,自回正力矩(Self Aligning Torque: SAT)使轮胎及方向盘回中,使车辆变为直线行驶,导致车道偏离”。基于以上,图2表示出从发生失效起至车道偏离为止的时间,以及由此推测得出的转向系统维持功能以避免车道偏离所需的时间。
图2的Tr由普通两轮模型的车辆运动方程式计算得出,Ta基于图3所示思路计算得出。且图3中以曲线半径380m、设计车速100km/h的高速公路上的转向为例。此外,避免车道偏离所需的时间Tc,为FTTI(Tr与Ta之和)减去从转向输入起至车辆姿态稳定所需的时间Tb得到的数值。模拟依公路建设法修建的高速公路以及首都高速公路的行驶条件,分别计算其时间,结果如表1所示。各条件中Tc最短的时间,设定为本主题下安全设计目标值之一(曲线半径88m的首都高速公路条件下,Tc=240ms)。此外,计算时采用定圆转向行驶模型。如此一来,不仅是转向系统,在对自动驾驶车辆配备的系统进行安全设计时,都可通过事先明确SG,推进符合SG的详细设计。
2. 运算功能故障时的失效安全运转
本文主题制定的转向系统架构如图4所示。以实现安全目标(SG)所需的车辆等级中的功能安全要求(FSR)为基础。例如,对于转向系统架构的预期功能(Intended Functionality: IF),将“设定转向角控制功能(主系统)故障检测功能”、“设计转向角控制功能的冗余系统维持设定功能”等FSR作为安全机制(Safety Mechanism: SM),以求发生失效时能维持系统功能。对FSR内容的说明在这里略去。
图4的转向系统架构支持自动驾驶的课题案例如下所示。如前项所述,自动驾驶系统故障时,为保证安全性,需要在车辆车道偏离前维持转向系统功能(本主题为240ms以内:参照表1)
例如,图4内的运算功能(主)故障导致功能停止时,运算功能(副)代替运算功能(主)进行控制,可维持转向系统功能,防止车道偏离。但是,为了避免运算功能(副)代替控制时,“车道偏离后切换”、“切换瞬间车辆动态急剧改变,导致车道偏离”等情况违反SG,还需制定必要方针。在本主题中,为了防止此类情况违反SG,正常时运算功能(副)的待机状态为热备份。图5为应用运算功能的热备份概念。
如图5所示,运算功能(副)即使在待机状态,也与运算功能(主)在同一时间使用同一控制参数进行运算。即,主副运算功能随时处在相同控制状态,所以从运算功能(主)切换到运算功能(副)时可以安全快速,将对车辆的影响控制在最小限度。运算功能的实际设计方面,基于这一思路,能实现10ms内从检测故障到切换完毕。类似这样运算功能热备份的思路在自动驾驶系统中尤其是驱动电机控制系统及转向系统,以及检测、认知、判断系统等需要高速切换的系统中是有效的。
对于前一章所述课题,制成如图4所示带有转向系统架构的试制品(转向系统试制控制器),运用台架、模拟器及实车分别试验。本章参考ISO 26262-4: 2011第8部分实施。表2中为本主题搭建的测试环境。
1. 转向角控制系统台架试验
台架试验的目的是针对转向系统试制控制器中的安全机制(SM)进行应用评估及性能评估。使用表2的转向角控制系统台架。在转向系统试制控制器内注入故障模拟失效,评估故障检测及切换处理的动作是否能按设计进行。评估所需的测试案例参考ISO 26262-4: 2011的8.4.1及8.4.3编写而成。关于本报在2.2节阐述的课题,即运算功能故障时的失效运行,其注入故障的方法及确认结果以图6、图7为例。
从图7中可知,向运算功能(主)中注入模拟故障后,可确认:避免车道偏离所需的维持功能时间Tc(240ms)以内检测到故障,运算功能(主)停止输出;以及切换为运算功能(副)向电机输出(PWM信号)。这表明基于各安全要求应用的SM按要求实现了功能。
2. 自动驾驶模拟器测试
模拟器测试的目的是:确认2.1节计算得出的从发生故障起至车道偏离为止的理论时间(FTTI)的可靠性。以及为实现失效安全运转的安全机制(SM)对自动驾驶车辆动态的影响评估。这些细节在次项3.2.1及3.2.2中阐述。首先,图8为自动驾驶模拟器的构成图。
由图8可知,场景生成工具对生成行驶场景及车辆动态进行描述,车辆运动仿真工具从所给的车辆控制数据与车辆规格、路面状况计算车辆动态。与集成环境外部(转向系统硬件)通信,持续模拟自动驾驶行驶场景。
下面阐述自动驾驶车辆检测车道偏离的方法。在场景生成工具内的车辆的左前、右前、左后、右后、车辆重心这5处安装传感器,其结构可以测量本车道的车道线(下称“白线中央”)以及到目标轨迹的最短距离(参照图9、图10)。安装在车辆右侧的传感器检测右侧白线中央的距离,安装在车辆左侧的传感器检测左侧白线中央的距离。检测对象(白线中央或目标路线)在车辆前方时,在左侧时传感器输出为+(正),在右侧时传感器输出为-(负)。且转向角逆时针为+(正)。
(1)FTTI可靠性测试
在本项中,使用自动驾驶模拟器,确认2.1节计算得出的从发生故障起至车道偏离为止的理论时间(FTTI)的可靠性。缺失转向时的FTTI如2.1节所示,是维持转向时输入模拟故障起,至车辆偏离白线中央为止的时间。模拟器引发缺失转向的机制是从外部向转向系统控制器发出停止运转指令。接收到停止运转指令的转向系统控制器会停止向电机输出驱动电流,因此不产生电机力矩,结果导致行驶中缺失转向状态的发生。在这里,除表1的高速公路条件外,也在同一模型下模拟了可验证的普通公路左转条件,作为参考评估。
将2.1节的理论计算值以及本节的模拟器确认结果进行比较,如表4所示。并将其部分结果画在同一曲线图内,如图11所示。
根据表4,比较理论计算值与模拟结果,已确认对FTTI贡献较高的Ta(自动驾驶车辆脱离正常轨迹开始,到车体与白线中央重合为止的时间:参照图2)展现出的特性与假想高速公路行驶条件类似。由于Ta表示假设直线行驶的车辆静态,可从简易车辆运动方程式中算出。而高速公路的曲线半径更大,在其圆弧部分行驶时,维持方向状态的转向角比普通公路更小,SAT导致转向角回中时间更短,也是其与Ta相关的原因之一。另一方面,如图11所示,假设在曲线半径15m的普通公路上模拟自动驾驶,其结果是转向角回中前,自动驾驶车辆已经偏离车道。因此,在低速转向缺失前的大转向角条件下,有必要在理论计算值中定为0秒的区间(维持方向状态下,因自回正力矩(SAT)导致转向角回中的时间)。随着车速降低,转向角增加,理论计算值与自动驾驶模拟结果的FTTI之差也增加。
由以上结果可知,在假设高速公路条件下,使用简易式计算得出的理论FTTI值也可作为参考。但是扩展到假设普通公路低速行驶条件下,应采用模拟器加以确认。
(2)确认失效运行对自动驾驶车辆动态的影响
在本项中,运用自动驾驶模拟器,对从输入模拟故障导致的失效运行动作起,至自动驾驶车辆姿态稳定为止时间,是否违反安全目标(SG)(车道偏离)的测试结果进行阐述。测试的行驶场景选择与3.2.1项之表3相同,在各场景维持转向时输入模拟故障。其部分确认结果如图12所示。模拟故障向运算功能(主)注入,其他注入结果略。
由图12可确认运算功能故障导致的失效运行时的车辆动态,其输入模拟故障前后的行驶轨迹(车辆四角与白线中央的最短距离)没有变动,不会导致车道偏离。这与3.1节的转向角控制系统台架测试结果相同,从运算功能(主)切换到运算功能(副)在10ms内完成,所以认为其不会影响车辆动态。
如此,运用模拟器可以容易模拟自动驾驶的行驶场景,能一并确认故障发生时的失效运行及自动驾驶车辆的动态等,也能良好重现高危的极端条件。今后,自动驾驶开发将继续加速,如本章所示的课题测试案例将持续带来益处。
3. 实车测试
实车测试中,处于ISO 26262 V模型的最终确认位置。目的是将各节所述理论计算结果与自动驾驶模拟器测试结果进行比较,确认各测试方法的有效性。
实车装载的自动驾驶系统运用了以实时OS(Operating System)为基础的开源自动驾驶控制软件,装载的环境感知传感器为LiDAR(Light Detection and Ranging),以掌握本车位置。而转向系统则装有带失效运行功能的转向系统试制控制器及包括电机在内的电动动力转向系统。图13中为测试所用的自动驾驶车辆。
测量自动驾驶车辆与白线中央的距离,使用三维地图,按图9进行测量,且行驶条件与图3相同为普通公路。图14是向运算功能(主)输入模拟故障时,实车动态的确认结果。图15是对于从发生故障起至车道偏离为止的时间(FTTI),理论计算值与自动驾驶模拟值、实车测量值的比较结果。
在图14中,运算功能(主)故障导致失效运行时,车辆动态在输入模拟故障前后的行驶轨迹无变化,未导致车道偏离。这与3.2.2项的自动驾驶模拟器测试结果基本一致,从运算功能(主)切换到运算功能(副)在实车上也在10ms以内完成,不影响车辆动态。
图15的(a)为转向指令值与转向角。(b)是车辆右前与右侧白线中央的距离,(c)是车辆重心与目标轨迹距离的比较结果。此外,从发生转向缺失起至车道偏离为止的时间FTTI显示出与实车评估与自动驾驶模拟器结果相近的值。但是,观察转向缺失前0秒的数据发现车辆右前与右侧白线中央的距离根据评估环境不同而不同。这是在圆弧部分行驶的车辆滑移角不同而导致的。在提高精度时,有必要校准自动驾驶模拟器的参数。
此外,图15(c)是对图15(b)去除车辆滑移角的影响后的车辆动态。从图15(c)可知,实车在转向缺失前的车辆重心与目标轨迹的距离不一致,具有改善余地。不过发生转向缺失后的车辆动态与自动驾驶模拟器上的车辆动态具有同一特性。也就是说,车辆轨迹在模拟器和实车上可能取得同样特性。因此,在运用模拟器和实车时,希望根据测试用途选择不同的测试方式。理论计算值与模拟结果的比较则请参照3.2节。
本文以转向系统为例题,阐述了ISO 26262提的自动驾驶系统相关安全设计及课题,讨论安全机制(SM)所需要的从发生故障到车道偏离为止的时间(FTTI)的计算思路,进行了理论计算,对自动驾驶系统的课题,分别构建了台架、自动驾驶模拟器、实车的测试环境,确认了安全设计及各测试方式的有效性。