本系列博客包括6个专栏,分别为:《自动驾驶技术概览》、《自动驾驶汽车平台技术基础》、《自动驾驶汽车定位技术》、《自动驾驶汽车环境感知》、《自动驾驶汽车决策与控制》、《自动驾驶系统设计及应用》。
此专栏是关于《自动驾驶系统设计及应用》书籍的笔记.



2.智能驾驶的功能安全设计

2.2 功能安全设计

功能安全的V模型左支上半部分,如下图所示:

  • 右侧描绘了汽车功能需求开发的过程,左侧描绘了对应的功能安全概念构建的过程;
  • 基于V模型,产品的开发过程遵循自顶而下的原则:从用户功能用例的角度,先确定产品的最顶层功能需求,通过逐层分解与提炼的方法,将系统功能需求先分解为若干功能模块及对应的功能需求,而功能的实现方法通过进一步的分解,以系统技术架构设计的形式完成;最后,基于系统技术架构,可提炼出每个系统部件的技术需求;
  • 针对功能与技术两个不同的抽象层次,相应的安全概念分为功能安全概念和技术安全概念两部分构建;最终,开发人员基于技术需求及技术安全需求进行软硬件的实现;

安全概念构建过程的各个组成部分:

  • 功能架构与功能描述:功能架构和功能描述以独立于技术的方式描述系统的功能。

    面向功能的设计将系统的整体功能划分为子功能,并可进一步细分,直至确定输入和输出数据;对于作用域的每个用户功能,可以根据需要创建功能体系结构,这种功能架构的划分是递归的;

    汽车功能架构分为三个子功能:动力功能系统、巡航控制功能系统、制动功能系统;巡航控制功能系统分为基本巡航控制功能、自适应巡航控制功能、自动巡航控制功能,如下图所示:

  • 项目定义:项目定义的目的是描述,定义或划分考虑单位。

    描述了它们与环境和其他对象的依赖关系和交互,项目定义描述了观察单元最重要的功能、用例、假设和边界条件,以便有助于全面了解系统或功能;安全概念最重要的产品是功能描述和功能架构,功能描述表示用户可以体验的项目的所有功能及它们如何在功能上实现,功能架构以图形方式描述了功能的实现;

  • 危害分析与风险评估(Hazard Analysis and Risk Assessment,HARA):风险和危害分析是产品研发人员与功能安全人员及其他领域专家之间合作的结果;

    其目标首先是要求识别所有因项目故障可能导致的危害,其次是要对所识别的危害大小进行评级,在ISO 26262中使用汽车安全完整性等级(ASIL)对危害进行评级分类,最后需针对危害级别制定安全目标,以预防危害发生或减轻危害的影响,从而避免不合理的风险;

    HARA整体流程如下图所示:

  • 危害识别(Hazard Identification):ISO 26262规定,应以使用适当的技术系统地确定危害。

    常用的系统级别危害识别方法:FMEA、HAZOP、清单、头脑风暴、实地研究、质量历史研究等;

    • FMEA:一种白盒方法,基于系统结构及其功能的描述,导出系统元件所有可能的失效模式并确认每个失效模式对系统的影响;
    • HAZOP:一种黑盒方法,基于系统接口的描述及其输出数据流的正确预期行为,通过使用关键字导出系统失效模式,常用关键字如过高、过低、过晚、方向等;
  • ASIL(汽车安全完整性等级):ISO 26262中使用汽车安全完整性等级对危害进行评级分类,并按程度高低分为5个等级(QM及ASIL A、ASIL B、ASIL C、ASIL D),危害越大,对应的ASIL级别越高;

    ASIL A为最低安全完整性级别,ASIL D为最高,QM(Quality Management)表示ISO 26262对其功能安全不做要求,从项目功能安全角度,ASIL级别代表了项目针对某安全目标或安全需求的可靠程度,ASIL级别越高,则项目满足安全目标或安全需求的能力越强;

    ASIL级别由危害的暴露程度、严重性及系统在危害发生时的可控性三个因素共同决定;通过暴露程度和可控性,可共同确定危害发生的概率,危害发生概率越大,且危害后果越严重,则危害的风险越不可接受;

    风险评估示意图如下图所示:
    ASIL计算方法如下表所示:

    其中:C、E、SC、E、SC、E、S分别代表可控性、暴露程度及严重性;
    典型汽车安全需求/危害的ASIL等级如下表所示:

    等级
    S0 S1 S2 S3
    描述 无伤亡(no injury) 轻微程度受伤(light and moderater) 严重或威胁生命的伤害(可能幸存)(severe and lift-threatening) 威胁生命的伤害(可能无法幸存)(life-threatening injuries),致命伤害(fatal injuries)
    C0 C1 C2 C3
    描述 一般可控(in general controllable) 简单可控(simply controllable) 通常可控(normally controllable) 难以控制或不可控(difficult to control or uncontrollable)
    E0 E1 E2 E3 E4
    描述 难以置信(incredible) 极低可能性(very low) 低可能性(low) 中度可能(medium) 高可能性(high)
    故障功能 情况 E 结果 S 可控性 C ASIL 危害
    制动失灵 停车 E4 撞到行人 S3 无控制,无反应 C3 D 制动失灵
    功能组件 故障 ASIL
    引擎管理 未许可的加速 ASIL C-D
    安全气囊 非意愿下释放 ASIL D
    仪表组 关键信息丢失 ASIL B
    后灯 两侧后灯失灵 ASIL A
    后置摄像头 无合法传感器数据 ASIL B
    制动灯 两侧制动灯失灵 ASIL B
    防抱死系统 未许可的全功率制动 ASIL D
    主动悬挂 悬架震荡 ASIL B-C
    视觉ADAS 错误的传感器反馈 ASIL B
    电动助力转向 未经许可的自动转向 ASIL D
    雷达巡航 非意愿下制动 ASIL C
    前灯 两盏前灯全部失灵 ASIL B
  • 确定安全目标:安全目标是项目的最高层级的安全需求,通过安全目标,可以导出为避免相应危害的不合理风向的所有功能安全需求;

  • 系统需求:系统需求描述了车辆级系统功能并对系统组件提出了要求;

  • 系统架构:将功能分配给系统各个组件;

    系统架构从系统要求出发,代表了系统在车辆层面的技术转换,在将功能分配给技术体系结构时,抽象功能被分配给技术系统组件;此分配必须是唯一的,代表了功能安全概念和技术安全概念之间转换的重要输入信息,以及技术安全概念本身;

    功能架构与软件技术架构如下图所示:

  • 安全概念:分为功能部分和技术部分,安全故障分析和安全策略构成了功能和技术安全概念的主要组成部分;

  • 构建功能安全概念:功能安全概念是车辆级安全概念的一部分,其目标是指定功能安全的需求,并作为技术安全概念的输入;

    安全目标是项目的最高安全需求,采用分治法的思路,为了达成安全目标,需要保证项目的各个组成部分都满足相关的安全需求;为满足所有安全目标的所有功能安全要求,必须处理所有可能的危害,为处理危害,必须首先找到危害的原因,危害的原因是系统中的各类失效行为;

    通过构建功能安全概念,将安全目标分级逐步分解为若干功能安全需求,并将各个安全需求分配给系统项目的相应组件或外部措施;

    功能安全概念的构建的三个阶段:安全分析(故障分析)、导出功能安全需求、分配功能安全需求;

  • 安全分析(故障分析):采用系统方法分析所有可能违反安全目标的功能故障模式,常用的分析方法有:FMEA、HAZOP、故障树分析、事件树分析等;

    • 事件树分析(ETA):以系统内部的单元模块事件为起点,自底而上按事件顺序逐层递推至危害事件的发生,从而将系统模块失效起源与系统失效的关系以树形结构表示;
    • 故障树分析(FTA):以系统失效模式为起点,自顶而下使用逻辑门分解,层层递推直到基本原因事件;

    故障树分析如下图所示:
    针对失效模式,我们设计相应的功能安全需求,每个失效模式至少需要对应一个安全需求,对于高ASIL级别的项目,需求可采用半形式化语言进行描述,并可使用树形结构描述需求分解过程,最后,基于此需求分析及系统技术架构图,可将各个层次的技术安全需求与系统架构图进行映射,并在必要的情况下对系统架构作修改,以支持安全需求所对应的安全策略方法;

  • 技术安全概念:车辆安全概念的另一组成部分是技术安全概念,通常称为系统安全概念,其目标是完成技术安全需求规范和技术解决方案;

    构建技术安全概念,需要考虑系统技术架构,功能需求到技术架构的分配,及功能安全需求;在构建过程中每个安全目标都被分解为相应的技术安全需求,这些技术安全需求的总和必须满足此安全目标;

学习笔记9--智能驾驶的功能安全设计之功能安全设计相关推荐

  1. 学习笔记8--智能驾驶的功能安全设计之功能安全与ISO 26262标准

    本系列博客包括6个专栏,分别为:<自动驾驶技术概览>.<自动驾驶汽车平台技术基础>.<自动驾驶汽车定位技术>.<自动驾驶汽车环境感知>.<自动驾驶 ...

  2. springmvc学习笔记(10)-springmvc注解开发之商品改动功能

    springmvc学习笔记(10)-springmvc注解开发之商品改动功能 springmvc学习笔记(10)-springmvc注解开发之商品改动功能 标签: springmvc springmv ...

  3. Vue + Spring Boot 学习笔记02:引入数据库实现用户登录功能

    Vue + Spring Boot 学习笔记02:引入数据库实现用户登录功能 在学习笔记01里,我们利用跨域打通了前端的Vue与后端的Spring Boot,实现了用户登录功能,但是后台的登录控制器在 ...

  4. 学习笔记1--自动驾驶系统架构

    本系列博客包括6个专栏,分别为:<自动驾驶技术概览>.<自动驾驶汽车平台技术基础>.<自动驾驶汽车定位技术>.<自动驾驶汽车环境感知>.<自动驾驶 ...

  5. 学习笔记1--自动驾驶汽车介绍

    本系列博客包括6个专栏,分别为:<自动驾驶技术概览>.<自动驾驶汽车平台技术基础>.<自动驾驶汽车定位技术>.<自动驾驶汽车环境感知>.<自动驾驶 ...

  6. 学习笔记1--自动驾驶环境感知概述

    本系列博客包括6个专栏,分别为:<自动驾驶技术概览>.<自动驾驶汽车平台技术基础>.<自动驾驶汽车定位技术>.<自动驾驶汽车环境感知>.<自动驾驶 ...

  7. 学习笔记1--自动驾驶汽车概念与分级

    本系列博客包括6个专栏,分别为:<自动驾驶技术概览>.<自动驾驶汽车平台技术基础>.<自动驾驶汽车定位技术>.<自动驾驶汽车环境感知>.<自动驾驶 ...

  8. shell脚本编程学习笔记1(xdl)——shell基础与Bash基本功能()

    shell脚本编程学习笔记1--shell基础与Bash基本功能 1,简介: 1,Shell就是一个命令行解释器,用以连接输入设别和内核. 2,Shell是解 释执行的脚本语言,在Shell中可以直接 ...

  9. 学习笔记14--自动驾驶域接口

    本系列博客包括6个专栏,分别为:<自动驾驶技术概览>.<自动驾驶汽车平台技术基础>.<自动驾驶汽车定位技术>.<自动驾驶汽车环境感知>.<自动驾驶 ...

最新文章

  1. [译] iOS 开发之新版 APNs 搭建必备知识
  2. 10大NLP精选项目-涉及预训练Bert、知识图谱、智能问答、机器翻译、对话等
  3. android webview和浏览器显示不一样_早道柔性LED显示屏,不一样的视界
  4. 10大申请攻略+套磁技巧助你完胜美研申请
  5. oracle 11g-R2安装
  6. leetcode :数组和链表
  7. Please ensure that adb is correctly located at……问题解决方案
  8. Python+socket实现TCP套接字服务端自由限速
  9. 米线店结账程序 装饰着模式_真实数据:外卖销售9999+ 长沙米线万单店 它究竟是怎么做到的?...
  10. description方法 oc 就是NSLog使用
  11. Redhat注册方法
  12. 关于作虚拟软盘启动(转)
  13. Linux系统管理、系统安全命令概述
  14. 如果可以随意 Emoji 组合,你能让两个表情包碰撞出什么花样?
  15. 怎样用office Word2003打开docx格式文档???
  16. 苹果充电器怎么辨别真假_苹果MagSafe充电器怎么样?能搭配安卓机使用吗?
  17. Praat脚本-010 | 提取时长和共振峰
  18. 【数学建模】十二(最后一篇):MATLAB CUMCM真题求解实例三:机理建模型
  19. 【Vivado那些事】Xilinx的7系列的SRCC和MRCC
  20. 基于Docker的Hadoop完全分布式安装

热门文章

  1. 金融数据分析:股票日收益率5日均值【python】
  2. 2022-2028全球与中国头孢呋辛市场现状及未来发展趋势
  3. 2021年,吃瓜的打工人开始奋斗
  4. excel学习-roundbetween函数
  5. CR2032 电池放电曲线
  6. 南芯科技在科创板提交注册:业绩增速迅猛,股东包括红杉、顺为等
  7. SVPWM原理——基础补充(三)
  8. 使用js实现抽奖效果
  9. win10 回收站 右键属性 此项目的属性未知问题怎么解决?
  10. 电路理论基础学习笔记——置换定理、齐性定理、叠加定理