草庐IT

【BMS软开系列】1、 ISO 26262功能安全标准 (一)

瑾怀轩 2023-07-20 原文

这是第一篇关于BMS相关的文章,也是记录和加深自己对知识的一个掌握程度,如果您也是研究这一方面的可以关注公众号加我好友,一起学习交流。进入正题

红色:重点

粉色:次重点

绿色:了解

黄色:专业名词

紫色:可探究点

一、BMS和ISO26262简介

BMS(Battery Management System),也叫电池管理系统。按照新能源汽车对电池管理的需求,BMS具备的功能包括电压、温度、电流采样及相应的过压欠压过温、过流保护,SOC/SOH估算、SOP预测、故障诊断、均衡控制、热管理和充电管理等。

ISO26262 正式版于1011年11月发布,通过增加安全机制使系统达到可接受安全程度(目的)

ISO26262 适用于包含一个或多个电子电气系统的安全相关系统,并且这个系统安装在总量不超过3.5吨的量产乘用车上

2018年发布第二版本,更新点,①摩托车,商用车列入适用范围之内。②将强化和细化对硬件设计部分的要求。

ISO26262不考虑标称特性。

ISO26262标准并不能帮助功能、性能、质量和安全这个标准只是一个故障处理标准,它只是关心这个系统出现故障时候,对故障的检测、诊断的策略的一个标准,指导开发故障诊断策略

指定特殊的风险分类等级:ASIL A~D

ASIL (Automotive Safety Integrity Level)汽车安全完整性等级

通常四个等级  ABCD,越往后风险越高,对于的应对策略越多

ASIL D 表示系统可能存在的风险最高。ASIL 标准前面还有一个等级QM

等级划分和对应策略

QM-->A   : 产品不需要参考ISO26262安全标准,如果一个点在标准内,会根据标准生成对应的文档。

ASIL A --->B  : 说明产品汇总需要做量化指标计算,有三个量化指标,针对硬件工程师要求比较高。

ASIL C --->D :  在设计实现时要考虑功能冗余概念,功能冗余通常实现手段是硬件冗余。通常使用双通道硬件的芯片才能达到ASIL D的设计目标。ASIL B 通常采用单核芯片配合外部诊断措施(看门狗)

二、ISO2626应用范围

ISO26262需求主要注重过程和概念问题。

其中有,FSM(Function Safety Management)功能安全管理 、QM(传统质量体系包括ISO9001、SPICE、CMMI、TS16949)在传统的QM之上增加安全需求是它达到符合ISO26262标准。2/3和产品设计相关 包括 诊断措施、信号量检查、边界检查等。流程体系标准中,有800条需求,其中1/3种和流程有关系,类似:正向指定客户开发处理故障的指导手册。

标准可以分为两类服务

1、功能安全认证的角度

功能安全流程体系认证,对象为公司,做流程认证,做一次就行。流程体系的目标为了消除系统失效情形。

2、产品认证服务

对每一块产品去评估对ISO26262合规性,对象为产品,每一款产品、每一款型号去做产品认证。

两种服务的区别:流程认证关注公司级和安全相关的流程,产品认证关注的是每一款产品设计内容的对错。

三、功能安全第一版

 1        --->   功能安全术语

2和8  --->   功能安全管理

3~7      --->    功能安全生命周期 

3、概念阶段,4、系统设计阶段【ECU系统里面结构设计】5、ECU硬件开发阶段 6、ECU软件开发阶段7、生产和运维

9、功能安全分析

16949质量管理体系五大工具分别是:测量系统分析(MSA);产品质量先期策划(APQP);潜在失效模式与后果分析(FMEA);统计过程控制(SPC);生产件批准(PPAP)
1、MSA 测量系统分析
测量系统必须处于统计控制中,这意味着测量系统中的变差只能是由于普通原因而不是由于特殊原因造成的。
2、APQP 产品质量先期策划
3、FMEA-潜在失效模式分析
FMEA是产品设计或生产早期阶段就开始进行的一组系列化活动。及早地指出根据经验判断出的弱点和可能产生的缺陷及其造成的后果和风险,并在决策中采取措施加以消除。
4、统计过程控制分析
生产过程的质量控制是保证产品质量的重要环节,稳定的生产过程会带来质量上的飞跃。统计过程控制图用于记录与质量有关的工序参数或不同时间的产品参数。
5、PPAP 生产件批准程序
PPAP的目的是用来确定供方是否已经正确理解了顾客工程设计记录和规范的所有要求,并且在执行所要求的生产节拍条件下的实际生产过程中,具有持续满足这些要求的潜能,是目前最完善的供应商选择与控制系统。

FMEA(Failure Mode and Effect Analysis,失效模式和影响分析)是一种用来确定潜在失效模式及其原因的分析方法。

FTA(Fault Tree Analysis),故障树分析,是一种自上向下的可靠性分析方法,从需要分析的事件(顶事件)开始,作为故障树的根,逐步向下追查导致事件发生的原因直到基本事件(底时间)。

10、功能安全导论

四、功能安全第二版

增加部分:

11、针对汽车半导体厂商功能安全提出许多需求和应用

12、针对摩托车的功能安全需求 

下一篇将详细介绍后续每一块内容,敬请期待~~~

有兴趣关注公众号“极智书僮” 回复“BMS” 加入学习社群。

有关【BMS软开系列】1、 ISO 26262功能安全标准 (一)的更多相关文章

  1. python - 如何使用 Ruby 或 Python 创建一系列高音调和低音调的蜂鸣声? - 2

    关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。

  2. ruby - 如何使用 Ruby aws/s3 Gem 生成安全 URL 以从 s3 下载文件 - 2

    我正在编写一个小脚本来定位aws存储桶中的特定文件,并创建一个临时验证的url以发送给同事。(理想情况下,这将创建类似于在控制台上右键单击存储桶中的文件并复制链接地址的结果)。我研究过回形针,它似乎不符合这个标准,但我可能只是不知道它的全部功能。我尝试了以下方法:defauthenticated_url(file_name,bucket)AWS::S3::S3Object.url_for(file_name,bucket,:secure=>true,:expires=>20*60)end产生这种类型的结果:...-1.amazonaws.com/file_path/file.zip.A

  3. ruby-on-rails - 使用一系列等级计算字母等级 - 2

    这里是Ruby新手。完成一些练习后碰壁了。练习:计算一系列成绩的字母等级创建一个方法get_grade来接受测试分数数组。数组中的每个分数应介于0和100之间,其中100是最大分数。计算平均分并将字母等级作为字符串返回,即“A”、“B”、“C”、“D”、“E”或“F”。我一直返回错误:avg.rb:1:syntaxerror,unexpectedtLBRACK,expecting')'defget_grade([100,90,80])^avg.rb:1:syntaxerror,unexpected')',expecting$end这是我目前所拥有的。我想坚持使用下面的方法或.join,

  4. ruby-on-rails - Ruby 检查日期时间是否为 iso8601 并保存 - 2

    我需要检查DateTime是否采用有效的ISO8601格式。喜欢:#iso8601?我检查了ruby​​是否有特定方法,但没有找到。目前我正在使用date.iso8601==date来检查这个。有什么好的方法吗?编辑解释我的环境,并改变问题的范围。因此,我的项目将使用jsapiFullCalendar,这就是我需要iso8601字符串格式的原因。我想知道更好或正确的方法是什么,以正确的格式将日期保存在数据库中,或者让ActiveRecord完成它们的工作并在我需要时间信息时对其进行操作。 最佳答案 我不太明白你的问题。我假设您想检查

  5. ruby-on-rails - Cucumber 是否只是 rspec 的包装器以帮助将测试组织成功能? - 2

    只是想确保我理解了事情。据我目前收集到的信息,Cucumber只是一个“包装器”,或者是一种通过将事物分类为功能和步骤来组织测试的好方法,其中实际的单元测试处于步骤阶段。它允许您根据事物的工作方式组织您的测试。对吗? 最佳答案 有点。它是一种组织测试的方式,但不仅如此。它的行为就像最初的Rails集成测试一样,但更易于使用。这里最大的好处是您的session在整个Scenario中保持透明。关于Cucumber的另一件事是您(应该)从使用您的代码的浏览器或客户端的角度进行测试。如果您愿意,您可以使用步骤来构建对象和设置状态,但通常您

  6. ruby - 如何安全地删除文件? - 2

    在Ruby中是否有Gem或安全删除文件的方法?我想避免系统上可能不存在的外部程序。“安全删除”指的是覆盖文件内容。 最佳答案 如果您使用的是*nix,一个很好的方法是使用exec/open3/open4调用shred:`shred-fxuz#{filename}`http://www.gnu.org/s/coreutils/manual/html_node/shred-invocation.html检查这个类似的帖子:Writingafileshredderinpythonorruby?

  7. ruby - 将 spawn() 的标准输出/标准错误重定向到 Ruby 中的字符串 - 2

    我想使用spawn(针对多个并发子进程)在Ruby中执行一个外部进程,并将标准输出或标准错误收集到一个字符串中,其方式类似于使用Python的子进程Popen.communicate()可以完成的操作。我尝试将:out/:err重定向到一个新的StringIO对象,但这会生成一个ArgumentError,并且临时重新定义$stdxxx会混淆子进程的输出。 最佳答案 如果你不喜欢popen,这是我的方法:r,w=IO.pipepid=Process.spawn(command,:out=>w,:err=>[:child,:out])

  8. ruby-on-rails - 标准化文件名的字符串,删除重音和特殊字符 - 2

    我正在尝试找到一种方法来规范化字符串以将其作为文件名传递。到目前为止我有这个:my_string.mb_chars.normalize(:kd).gsub(/[^\x00-\x7F]/n,'').downcase.gsub(/[^a-z]/,'_')但第一个问题:-字符。我猜这个方法还有更多问题。我不控制名称,名称字符串可以有重音符、空格和特殊字符。我想删除所有这些,用相应的字母('é'=>'e')替换重音符号,并将其余的替换为'_'字符。名字是这样的:“Prélèvements-常规”“健康证”...我希望它们像一个没有空格/特殊字符的文件名:“prelevements_routin

  9. 【鸿蒙应用开发系列】- 获取系统设备信息以及版本API兼容调用方式 - 2

    在应用开发中,有时候我们需要获取系统的设备信息,用于数据上报和行为分析。那在鸿蒙系统中,我们应该怎么去获取设备的系统信息呢,比如说获取手机的系统版本号、手机的制造商、手机型号等数据。1、获取方式这里分为两种情况,一种是设备信息的获取,一种是系统信息的获取。1.1、获取设备信息获取设备信息,鸿蒙的SDK包为我们提供了DeviceInfo类,通过该类的一些静态方法,可以获取设备信息,DeviceInfo类的包路径为:ohos.system.DeviceInfo.具体的方法如下:ModifierandTypeMethodDescriptionstatic StringgetAbiList​()Obt

  10. 阿里云RDS——产品系列概述 - 2

    基础版云数据库RDS的产品系列包括基础版、高可用版、集群版、三节点企业版,本文介绍基础版实例的相关信息。RDS基础版实例也称为单机版实例,只有单个数据库节点,计算与存储分离,性价比超高。说明RDS基础版实例只有一个数据库节点,没有备节点作为热备份,因此当该节点意外宕机或者执行重启实例、变更配置、版本升级等任务时,会出现较长时间的不可用。如果业务对数据库的可用性要求较高,不建议使用基础版实例,可选择其他系列(如高可用版),部分基础版实例也支持升级为高可用版。基础版与高可用版的对比拓扑图如下所示。优势 性能由于不提供备节点,主节点不会因为实时的数据库复制而产生额外的性能开销,因此基础版的性能相对于

随机推荐