0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

自动驾驶系统安全分析逻辑的五大因素

ml8z_IV_Technol 来源:YXQ 2019-06-10 14:46 次阅读

目前在自动驾驶系统供应商(除Bosch和AVL外)的开发流程中很少由见到STPA应用的痕迹,但对于自动驾驶系统来说,STPA对于三级自动化以上系统级工程的帮助是巨大的,这种源自于航天工程的系统分析工具将在很大程度上帮助完成Costdown的工作。

Cost during development

本文依据Nancy教授的系统安全分析逻辑分为以下五个部分:

Whydoweneedsomethingelse?

WhatisSTAMPandhowdoesitdifferfromwhatpeopledonow?

Whatkindsoftoolsareavailable?

Howisitbeingused?

Doesitwork?

Whydoweneedsomethingelse?

在系统安全的领域,产品开发现有的安全措施已经存在了近70年,相关思想和工具并没有太多的改变,但相关系统中的软件比例却开始大幅提升,如下图:

从1970年开始,人们开始使用计算机设备用于控制系统,增加了系统复杂性和新技术的冗杂度,也改变了人们控制系统的方式,人们开始扩展原有的工具应用于新的系统安全领域,但收效甚微,其原因在于原有老旧的安全工具著重于传统控制模型下失效事件的发生原因,而新的控制模型已经到来。对于马车的分析方法很难应用于对导弹的分析中来。

对于现代的系统工程而言,计算机软件对于系统的影响分为四个方面:

由于系统的控制模型随着计算机控制系统的到来而发生的变化,其本质原因在于软件带给系统的变化,但这里并不意味着软件的失效,大部分的软件本身是不会失效的,软件只是在一个目标平台上实现功能的工具。Softwareispuredesignanddesigndonot"fail".所以在系统工程的定义中,软件并不会出现如硬件一般的RandomFailure.

2.在足够成熟的但出现问题的系统中,软件的问题最后总会映射到系统设计的不足,在系统设计中可能会出现的两个问题为:

对于被控系统或计算机错误或不完整的需求

不能被解决的系统状态和环境因素

对于自动驾驶系统来说,系统工程由系统架构师发起,确定系统需求,由软件工程师理解系统需求后设计软件系统,人们的眼光往往更多的聚焦于软件工程师的Coding的实施,而忽视了系统工程中重要的系统需求的过程,而往往软件工程的质量并不能完全覆盖系统工程的质量。

3.软件几乎允许无限制的系统复杂度,这意味着:

无法计划、理解、预测和对抗不期的系统行为,传统的纯硬件行为意味着可预测的控制,但软件带来的控制的新方式带来了新的风险。

需要使用足够详尽的测试以解决所有的系统设计错误。

波音747的软件在其平台上是安全的,但并不意味着在波音737的平台上同样安全,也就是说独立的软件安全并不会决定系统的安全,人们可以说系统在某目标平台上在某种情况下是安全的,但无法认为系统是安全的。辅助驾驶系统往往要求驾驶员的双手放在方向盘上,但如果在方向盘上用其他的方式施加同样的力矩辅助驾驶系统便无法检测,导致系统错误的感知到人的决策,极易导致交通风险。而这一切的本质就在于软件带来的控制思维的变化。

事故的发生存在于以下方面:

模块失效事故

单点或多点模块失效

随机失效

以上的失效事件均可以通过同质或异质冗余的方式解决。

模块交互失效

模块间的复杂交互失效

模块间的交互失效往往不但关系到接口的失效,还关系到系统设计框架的缺陷,这些问题是最难以发现并解决的。

4. 软件的存在改变了人们在系统中的定义

系统的使用者或者交互人员往往难以做到对于系统的全面了解,可以使用以下的方式解决这个问题:

训练系统的操作者等措施使系统操作者更加了解系统。

提高系统的自动化以代替操作者,或对于系统操作者提出操作的限制。

从系统设计自身的角度上看,操作者的错误是一种症结,而不是一种病因,在高复杂度的系统工作中操作者的角色与传统系统存在不一致的情况,与此同时系统的设计本身也存在着允许操作者进行误操作的接口,这就要求在系统设计的过程中注意设备的设计以及无意义操作的减少。

Thatiswhyweneedsomethingnew!

2.WhatisSTAMPandhowdoesitdifferfromwhatpeopledonow?

STAMP(System-TheoreticAccidentModelandProcesses)是一种用来描述事故是如何发生的模型,它将安全定义为一个控制问题,用于巨型复杂的系统,包含软件,硬件,人类,运行,管理等多个方面。STAMP认为危害来自于对于系统设计和运行缺少安全限制的原因,STAMP的目的是控制系统的行为以限制系统的安全。

并不使用预防危害的方式保证系统的安全,而使用安全限制的方式来控制系统表现

系统安全的工作过程践行了STAMP的核心思想,WaystoCopewithcomplexity:

Analytic reduction

System theory and system engineering

什么是Analyticreduction?

一般情况下,若需要设计一个高复杂度的系统,第一件事情就是把高复杂度的系统分为小的部分,我们可以将系统认为物理层面和功能层面的存在,那么就可以将系统进行物理划分和功能划分后进行独立的分析和设计。这一切的工作建立在子系统间足够独立、子系统间不会出现非线性的交互,和子系统均能在母系统中协同工作的基础上。

在当下的自动驾驶系统中这些情况显然难以满足,只进行FMEA,FTA此类工作工具对于系统安全显然已经无法满足需要,在当下的复杂系统的系统安全设计思想中,冗余和隔离,高集成度,Fail-safe的系统策略需要被考虑,对于操作者来说,操作空间、操作流程、Checklist,培训的方法也同样被列为重要的手段。

什么是Systemtheoryandsystemengineering?

系统工程作用在复杂系统的完整分析上,专注于完整的系统而非独立的子系统,包括所有的社会因素以及技术因素

STAMP架构下的系统模型就是下图中大环套小环的存在,假设最底层的控制逻辑是辅助驾驶功能ACC最基本的逻辑,包括感知决策和执行三个层面,那么还会由最底层的功能系统延伸到上层的操作域,到公司管理、相关法律法规以及国会:

在模型开发的基础上,控制模型对于系统工作Process的控制理论上可以在早期更好地控制被控对象的风险。

3.Whatkindsoftoolsareavailable?

STAMP只是一种理论,理论中包含许多过程与工具:

STPA是一种从上至下的系统分析工具,它可以用来分析系统中任何因素的安全限制,用于生成安全需求,它可以用来分析违反相关安全限制的场景用来提高系统的稳健性,它可以用来做技术的设计以及组织的设计,它可以帮助早期的设计工作和中后期的设计迭代和进化。

4.Howthetoolsbeingused?

上图是在工业界的一个经典的控制回路,计算机控制CATALYST和COOLINGWATER的阀门,软件工程师收到的需求往往是当有任何的错误发生时,停止控制链中的任何工作并发出警报提醒操作者。看上去毫无问题的一条需求却有着致命的缺陷,但当GEARBOX中的油位很低时,计算机停止工作,一切停止,操作工加满GEARBOX的油量后重启的时候计算机先打开了CATALYST的阀门,后打开了COOLINGWATER的阀门,导致REACTOR过热出现危险。在完整的控制链中软件按照需求没有出现任何问题,其问题源于早期系统设计的不足。

我们通常会使用物理模型的方式作为软件需求的输入,但当功能模型被生成时,其中往往会出现未形成闭环的情况,导致系统控制策略的缺失。

可以使用表格的方式,对于Process做出定性的控制,以分析在不同的情况下,CATALYST与COOLWATER对于系统的影响,通过这种方式,可以得到早期的HighLevelRequirement:

Water valve shall always be fully open before catalyst valve is opened

Water valve shall not be opened more than X seconds after catalyst valve open

Catalyst valve shall always be fully closed before water valve is closed

Catalyst valve shall not be closed more than X seconds after water valve has fully closed

当我们得到了HighLevelRequirement的时候我们需要分析不安全的控制行为并避免或减弱其影响,如:

分析若CATALYST打开而COOLING WATER没有打开的原因

打开COOLING WATER的指令被发出,但没有执行的原因

Etc...

通过在系统工程中对于Process的定性安全分析来确定安全危害的来源并添加新的需求:

Software shall check for feedback after issuing an Open/Close command. If not received in a specified time period, then assume valve not opened or closed

There must be feedback to controller to determine that water is actually flowing through pipe before issuing an Open Catalyst command

Full control loop example

5.Doesitwork?

STPA已经被用于太空、国防、汽车、核电等重要领域,相比FTA,HAZOP,FMEA,ETA来说,STPA同样分析危险的来源,并可以更好的发现与软件和人类相关的危害原因。正是因为STPA可以在早期确认风险的存在,在Top-Down系统开发的流程中相比于使用传统安全分析工具的系统开发的成本将被进一步的降低。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 自动驾驶
    +关注

    关注

    773

    文章

    13000

    浏览量

    163134

原文标题:自动驾驶路线图:基于STPA的系统分析

文章出处:【微信号:IV_Technology,微信公众号:智车科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    未来已来,多传感器融合感知是自动驾驶破局的关键

    巨大的进展;自动驾驶开始摒弃手动编码规则和机器学习模型的方法,转向全面采用端到端的神经网络AI系统,它能模仿学习人类司机的驾驶,遇到场景直接输入传感器数据,再直接输出转向、制动和加速信号。模仿学习人类
    发表于 04-11 10:26

    LabVIEW开发自动驾驶的双目测距系统

    LabVIEW开发自动驾驶的双目测距系统 随着车辆驾驶技术的不断发展,自动驾驶技术正日益成为现实。从L2级别的辅助驾驶技术到L3级别的受条件
    发表于 12-19 18:02

    自动驾驶“十问十答”

    ? 很多人下意识的认为自动驾驶是为了提升大家日常出行的舒适度和便捷性,实际上,自动驾驶的推动最开始的主要原因之一是为了【安全】,据国外研究表明,其中95%事故与人的因素有关,近70%由
    的头像 发表于 11-29 07:40 282次阅读
    <b class='flag-5'>自动驾驶</b>“十问十答”

    如何保护自动驾驶系统的数据安全

    自动驾驶技术带来了许多便利,但也带来了数据隐私和安全挑战。保护自动驾驶系统中的数据安全和隐私性至关重要,需要综合采取技术和法规措施。这些措施
    发表于 10-18 11:10 297次阅读
    如何保护<b class='flag-5'>自动驾驶</b><b class='flag-5'>系统</b>的数据<b class='flag-5'>安全</b>?

    农机自动驾驶显示系统组成部分以及配置

    随着科技的发展,传统的农机行业正趋于饱和,新生事物层出不穷,无论是传统农机还是从业者都面临如何转型升级的问题。农机自动驾驶系统就是当下最热的概念之一。身为新时代农机人,作业的提质增效是无论如何也绕
    发表于 10-17 17:52

    基于点云标注的自动驾驶系统安全性与可靠性

    随着自动驾驶技术的不断发展,点云标注作为一种关键的技术手段,在自动驾驶系统中发挥着越来越重要的作用。然而,对于基于点云标注的自动驾驶系统来说
    的头像 发表于 09-13 18:29 538次阅读

    自动驾驶对动力系统的影响有哪些

    科技的快速进展使自动驾驶技术逐步渗入我们的日常生活,这给汽车动力系统带来了巨大的影响。自动驾驶技术的应用有着广泛而深远的目标,不仅极大提升了驾驶舒适度,使人们能够在车内更自由地休息和享
    发表于 08-08 11:28 167次阅读
    <b class='flag-5'>自动驾驶</b>对动力<b class='flag-5'>系统</b>的影响有哪些

    初识自动驾驶系统

    近几年自动驾驶技术越来越火,前沿的人工智能、机器学习、大数据等技术也被应用到自动驾驶领域中,各大主机厂、自动驾驶解决方案提供商在不断加入和努力,行业在将自动驾驶技术由学术探索向商业化落
    发表于 06-06 11:21 0次下载
    初识<b class='flag-5'>自动驾驶</b><b class='flag-5'>系统</b>

    车路协同式的自动驾驶(VICAD)

    自动驾驶技术是影响未来汽车产业发展的重要因素。随着自动驾驶技术的成熟和商业化的加速,汽车将不再是从属于人的驾驶工具,车的核心价值部件由体现 动力和操作
    发表于 06-06 10:56 0次下载
    车路协同式的<b class='flag-5'>自动驾驶</b>(VICAD)

    百度Apollo自动驾驶平台及自动驾驶等级

    阿波罗(Apollo)是百度发布的面向汽车行业及自动驾驶领域的合作伙伴提供的软件平台。发布时间是2017年4月19日,旨在向汽车行业及自动驾驶领域的合作伙伴提供一个开放、完整、安全的软件
    发表于 06-02 16:18 0次下载
    百度Apollo<b class='flag-5'>自动驾驶</b>平台及<b class='flag-5'>自动驾驶</b>等级

    自动驾驶如何落地 自动驾驶的商业模式与挑战

    系统仅有少量的控制,例如控制转向,控制油门或刹车。驾驶员对周边环境做监 控,出现安全事故后由驾驶员负责 L2:辅助驾驶(半
    发表于 06-02 15:23 0次下载
    <b class='flag-5'>自动驾驶</b>如何落地 <b class='flag-5'>自动驾驶</b>的商业模式与挑战

    自动驾驶技术概述

    自动驾驶汽车,通过技术实现车辆自动驾驶,目的是减少驾驶疲劳、增强驾驶安全自动驾驶汽车按
    发表于 06-01 14:50 1次下载
    <b class='flag-5'>自动驾驶</b>技术概述

    自动驾驶基础架构

    基础架构在互联网行业中,是一个相对比较成熟的领域。然而在自动驾驶领域,却是一个新鲜的话题。基础架构的工作包括硬 件、onboard(车载系统)、云端三大板块。在我们认为,自动驾驶领域中 “基础架构
    发表于 06-01 14:46 0次下载
    <b class='flag-5'>自动驾驶</b>基础架构

    探讨自动驾驶系统感知系统

    车辆自身信息与周围环境信息,经过处理器对采集到的数据信息进行分析计算和处理,从而做出决策控制执行系统实现车辆加减速和转向等动作。SAE将自动驾驶分为L0-L5共6个等级,L0为没有加入自动驾驶
    的头像 发表于 05-17 11:10 916次阅读
    探讨<b class='flag-5'>自动驾驶</b><b class='flag-5'>系统</b>感知<b class='flag-5'>系统</b>