Posts Tagged with "PMHF"

既に発行済みのブログであっても適宜修正・追加することがあります。
We may make changes and additions to blogs already published.
posted by sakurai on February 11, 2020 #201

ISO 26262のFTA関連の2つの論文を紹介します。

最初に紹介するのは"ISO 26262 ASIL-Oriented Hardware Design Framework for Safety-Critical Automotive Systems"という論文$\dagger$で、 PMHFターゲットに対してシステムをFTAを用いて分析し、弱い部分を定量的に抽出し、そこにSMを追加し、最終的にPMHF目標を満たす設計手法を提案するという、大変興味深いものです。ただ、残念ながらこの論文にはランダムハードウェア故障の確率の評価値(いわゆるPMHF)について問題があるため、それを取り上げます。

この論文(以下参照論文と言う)は以下のところから取得できます。

この論文ではAEB(autonomous emergency braking system)を題材としています。以下にAEBシステムのFT(Fault Tree)を示します。

図%%.1
図201.1 AEBシステム

AEBはかなり大規模なシステムであるため、FTの一部を抜き出します。図201.2がその一部で、これにEBDサブシステムと名付けます。

図%%.2
図201.2 AEBシステムの一部(EBDサブシステム)

EBDサブシステムは図201.2のように、EBDノード4冗長で構成されます。参照論文では図201.3のように、EBDノード1チャネルのEBM(Electronic Brake Module)に対してOn-line Monitorを付加してPMHFを下げたと主張しています。

図%%.3
図201.3 EBDノード1チャネル

$\dagger$Chen, Yung-Yuan & Lu, Kuen-Long. (2019). ISO 26262 ASIL-Oriented Hardware Design Framework for Safety-Critical Automotive Systems. 10.1109/ICCVE45908.2019.8965235.


左矢前のブログ 次のブログ右矢

posted by sakurai on February 5, 2020 #109

1st EditionのPMHF式

以下に1st EditionのPMHF第1式及び第3式を示します。第1式はIFによりSPFもしくはDPFが発生する場合のみを数え上げた式であり、第3式はそれに加えてSM1によるDPFも加えた式です。従って、全ての場合を考えるならば第3式を使うのが正しいと考えます。

図%%.1
図109.1 1st EditionのPMHF第1式

図%%.2
図109.2 1st EditionのPMHF第3式

1st EditionにおいてはIFがアンリペアラブル、SM1がリペアラブルという前提での計算に基づいていると考えらえます。その理由は、この前提で、前稿のCTMCから平均PUDを求めると、正確に上2式と一致するためです。

2nd EditionのPMHF式

以下に2nd EditionのPMHF式を示します。

図%%.3
図109.3 2nd EditionのPMHF式

ISO 26262の2nd EditionのPMHF式は、1st Editionとpattern3、4が異なっており、対称性からみて前提が追加されていると考えます。2nd Editionでは1st Editionの前提(pattern 1, 2)に加えて、その反対の状態(pattern 3, 4)つまりIFがリペアラブル、SM1がアンリペアラブルの場合の両側についてPMHFを求めていると推測します。ただし、$T_{\mathrm{lifetime}}$項と$T_{\mathrm{service}}$項がなぜ2倍異なるのかの理由は判明していません。追記:2年後に判明したのでこの記事に記載しました。

しかしながら、弊社ではこの前提は誤りではないかと思います。初期状態、つまりフォールトが起きていない状態においては、IF、SM1の両方ともがリペアラブルが正しく、上記の仮定においては故障確率を過大に見積もりすぎています。

例えば、SM1がフォールトし、そのフォールトがSM2により検出され、検出周期の最後でリペアされる場合(pattern 2)を考えます。規格ではこの場合は最初にSM1がフォールトしてしまうと、最終的にはIFのフォールトによりDPFとなる場合のみがカウントされます。なぜなら、どちらかがリペアラブルだと他方はアンリペアラブルだからです。つまりこの場合、SM1がリペアラブルの場合は自動的にIFはアンリペアラブルという前提です。

ところが、実際にはSM1がリペアされた場合は初期状態と同じ状態に戻るため、次にIFがフォールトし、SM1により検出されリペアされる場合(pattern 4)もありえます。典型的な例は、SM1がフォールトしリペアされ、次にIFがフォールトしリペアされるように、交互にリペアされる場合です。この場合はDPFが起きないにも関わらず、2nd EditionではSM1がフォールトから始まると、SM1はリペアラブルに固定されます。そしてIFはアンリペアラブルに固定されます。

従って、実際にはDPFは起きませんが、IFのフォールトでDPFとカウントされ、結論として過大にフォールト確率を見積もっています。

もしかすると、LAT2にいる状態ではSM1がフォールトしているので、IFはリペアされない(IFはアンリペアラブル)と考えたのではないでしょうか。ところが、IFのリペアラビリティはSM1ではなく、SM2にのみ依存し、かつSM2は故障しないため、IFはリペアラブルです。従って、本稿のほうが正しいと考えます。

RAMS 2020においてPMHF式の論文発表が終了したため、本記事を開示します。


左矢前のブログ 次のブログ右矢

posted by sakurai on October 28, 2019 #174
  • 箱(v)ではMPFの検出率を聞いています。これも条件付き確率$\Pr\{\text{fault detected}\ |\ \text{fault occured}\}$ではありません。故障率や故障数に依らない、アーキテクチャで決まった定数です。
  • 検出された部分(detected)は下左に移動し、箱(w)で検出率$K_{FMCi,MPF}$を掛けられ$\lambda_{FMCi,MPF,det}$と名付けられます。次に下に移動し、箱(x)でMPF detected故障率として分類されます。$\dagger$ $$ \lambda_{FMi,MPF,det}=K_{FMCi,MPF}\lambda_{FMi,MPF}\tag{w, x} $$

  • 一方、検出されない部分(not detected)は下に移動し、箱(y)で不検出率$1-K_{FMCi,MPF}$を掛けられ、$\lambda_{FMCi,MPF,pl}$と名付けられます。 $$ \lambda_{FMi,MPF,pl}=(1-K_{FMCi,MPF})\lambda_{FMi,MPF}\tag{y} $$

  • 次の箱(z)では、ドライバーに認識される率を聞いています。認識率を$F_{FMC,per}$とします。

図%%.1
図174.1 Part 10故障分類フローチャート
  • ドライバーに認識される場合は下に行き、箱(aa)により認識率$F_{FMC,per}$を掛けられ、その下の箱(ab)でMPF, perceived故障率として分類されます。 $$ \lambda_{FMi,MPF,p}=F_{FMC,per}\lambda_{FMi,MPF,pl}\tag{aa, ab} $$

  • ドライバーに認識されない場合は右下に行き、箱(ac)において、不認識率$1-F_{FMC,per}$を掛けられ、その下の箱(ad)でMPF, latent故障率として分類されます。 $$ \lambda_{FMi,MPF,l}=(1-F_{FMC,per})\lambda_{FMi,MPF,pl}\tag{ac, ad} $$

以上で全ての箱の説明が終了であり、以上による分類された故障率を用いて、SPFM、LFM、PMHFを計算することが可能です。

$\dagger$このMPF,detectedフォールトについてですが、1st Editionでは、MPF detectedフォールトがリペアされるのか、されないのか、レイテントなのか言及されていません。数学的な検証の結果、これはリペアされずLFになることが判明しています。一方、2nd Editionでは規格中にリペアされることが初めて言及されました(pattern 3)。これも数学的な検証の結果LFになることが判りました。このMPF detectedは、1st Edition、2nd Edition共LFになることが判明しているにも関わらず、LFMに含まれていないのは規格の矛盾と考えられます。


左矢前のブログ 次のブログ右矢

posted by sakurai on October 25, 2019 #173

ニュースリリースでも明らかにしたように、このブログで研究してきたPMHFの一般式が、RAMS 2020に採択されました。ブログにおいて機能安全の知識は前提として良いので、注釈を取り除き、逆にブログとの関連の注釈☆をつけて再掲します。リリース文を茶色、注釈を青色で表示します。

なお、RAMS 2020に投稿中だったため、最新の研究#103~108を非開示としていましたが、今回採択が決定したので、RAMS 2020終了後(2020年2月頃)に公開予定です。


図%%.1

ISO 26262機能安全コンサルティングを提供するFSマイクロ株式会社(本社:名古屋市)代表取締役社長 桜井 厚の論文が、2019年10月19日、IEEE Reliability Society主催の国際学会である第66回RAMS(RAMS 2020)に採択されました。RAMS 2020は、2020年1月27日から30日まで、アメリカ・カリフォルニア州パームスプリングスのマリオット・ルネッサンスにて開催予定です。(☆1月30日最終日の12:15~14:15に開催されるコロキアムセッションにて発表します。)

図%%.2

論文の題名は「Generic Equations for a Probabilistic Metric for Random Hardware Failures According to ISO 26262」です。邦題は「ISO 26262に準拠したランダムハードウェア故障の確率的メトリクスの一般式」であり、ランダムハードウェア故障の確率的メトリクス(PMHF)を正確に評価することを可能にするものです。(☆上記にもあるように、本ブログでは#103~108で書きましたが、暫定非公開中です。⇒RAMS 2020が終了したので、当該記事を公開に変更しました。)

2011年に車載電子機器における機能安全の国際規格であるISO 26262の初版が、また、2018年には改訂版が発効されました。この規格改訂版においてはPMHF式が変更されていますが、PMHF値の数学的な定義や、エレメントの前提条件が明確ではありませんでした。(☆エレメントの前提条件とは具体的には修理可能性のことです。規格初版と規格改定版で、この修理可能性の前提を変えていると推測します。) 本論文ではこれらの点を明確にし、さらに規格に準拠した周期的な検査が行われるエレメントの不稼働確率式を初めて明らかにしました。 (☆不稼働確率については前記事に記載しています。)

これに基づき、一般的なサブシステムに関するPMHF式を新たに導出しました。本論文によりPMHF値を正確に評価できるため、広範な車載ECUにおいて、適正な安全設計を実施することが可能となります。また、緊急操作許容時間間隔(EOTTI)に関する過剰な設計制約を軽減できるため、自動運転システムに代表される耐故障システムにおいて、設計工期の短縮や製品コストの低減が可能となります。 (☆EOTTIの31倍の過剰見積もりについては前記事に記載しています。)

商号      FSマイクロ株式会社
代表者     桜井 厚
設立年月日   2013年8月21日
資本金     3,200万円
事業内容    ISO 26262車載電子機器の機能安全のコンサルティング及びセミナー
本店所在地   〒460-0011
        愛知県名古屋市中区大須4-1-57
電話      052-263-3099
メールアドレス info@fs-micro.com
URL      http://fs-micro.com


左矢前のブログ 次のブログ右矢

2nd EditionのPMHF方程式

posted by sakurai on July 17, 2019 #130

2nd EditionのPMHF方程式は前稿のように、

図109.3
図109.3 2nd Editionの規格式

となっており、Pattern 2及び4に関して、0.5がどこにいったかが謎でした。

ところが、2018年にヨーロッパで実施された機能安全ワークショップでのインテルの資料(恐らくDr. Riccard Marianiの資料)に

図%%.1
図130.1 Intelによる2nd Editionの規格式

という式が出ており、無くなったことが謎だった0.5が戻っています。どちらかと言えば、こちらのほうが(少しだけ)正しい式です。

結論としては両者とも誤っているのには違いないのですが、謎の部分が無くなったことで、規格式の誤りが明確になりました。誤りの原因は、初期状態において、IFまたはSMのいずれかがアンリペアラブルと固定している点です。実際にこの条件で計算すると、図130.1の式と一致します。

本来は初期状態においてIF、SMの両方ともリペアラブルとしなければなりません。つまり、図109.3の2nd Editionの規格式の誤りは以下の2か所あると思われます。

  • パターン2, 4で0.5が消えている件
  • こちらのほうが重大ですが、$\img[-1.35em]{/images/withinseminar.png}$

左矢前のブログ 次のブログ右矢

posted by sakurai on July 9, 2019 #126

さて、前稿平均PUD計算は簡易的に、冗長システムの確率の1/2として求めましたが、厳密には、

例えば全ての部品を二重化しておき、片方が壊れてももう片方がそれを引き継ぐことができる

という、スタンバイシステムについて平均PUD計算する必要があります。常に両方が稼働する冗長(2重化)と異なり、主系がフォールトしたときに初めて従系が稼働するものです。

IF、SM1からなるサブシステムがあり、IF、SM1の両方ともアンリペアラブルだとします。それぞれの故障率は、$\lambda_\text{IF}$及び$\lambda_\text{SM}$とします。上記のように、IFもSM1も$t=0$から同時に動作している冗長系ではなく、時刻$t$において主系であるIFがダウンし、即座にスタンバイ系であるSM1が引き続いて動作するものとします。

すると、車両寿命$T_\text{lifetime}$における稼働度(Availability)は、IFが$T_\text{lifetime}$までにダウンしないか、あるいは、途中の時刻$t$でダウンしたとしても、そこからSM1が$T_\text{lifetime}$までダウンせずに稼働する確率なので、

$$ A_\text{subsystem}(T_\text{lifetime})=\Pr\{\text{IF not failed at }T_\text{lifetime}\}\\ +\int_0^{T_\text{lifetime}}\Pr\{\text{IF fails in }(t + dt]\cap\text{IF not failed at }t\cap\text{SM not failed in }(T_\text{lifetime}-t]\}\\ =R_\text{IF}(T_\text{lifetime})+\int_0^{T_\text{lifetime}}R_\text{SM}(T_\text{lifetime}-t)F_\text{IF}(t)dt\\ =R_\text{IF}(T_\text{lifetime})+\int_0^{T_\text{lifetime}}e^{-\lambda_\text{SM}(T_\text{lifetime}-t)}\lambda_\text{IF}e^{-\lambda_\text{IF}t}dt\\ =R_\text{IF}(T_\text{lifetime})+\lambda_\text{IF}e^{-\lambda_\text{SM}T_\text{lifetime}}\int_0^{T_\text{lifetime}}e^{-(\lambda_\text{IF}-\lambda_\text{SM})t} dt\\ =R_\text{IF}(T_\text{lifetime})+\lambda_\text{IF}e^{-\lambda_\text{SM}T_\text{lifetime}}\left[\frac{e^{-(\lambda_\text{IF}-\lambda_\text{SM})t}}{-(\lambda_\text{IF}-\lambda_\text{SM})}\right]_0^{T_\text{lifetime}}\\ =R_\text{IF}(T_\text{lifetime})+\lambda_\text{IF}e^{-\lambda_\text{SM}T_\text{lifetime}}\left[\frac{1-e^{-(\lambda_\text{IF}-\lambda_\text{SM})T_\text{lifetime}}}{\lambda_\text{IF}-\lambda_\text{SM}}\right]\\ =R_\text{IF}(T_\text{lifetime})+\frac{\lambda_\text{IF}}{\lambda_\text{IF}-\lambda_\text{SM}}(e^{-\lambda_\text{SM}T_\text{lifetime}}-e^{-\lambda_\text{IF}T_\text{lifetime}})\\ =\img[-1.35em]{/images/withinseminar.png}, \text{ただし、}\lambda_\text{IF}\neq\lambda_\text{SM} \tag{126.1} $$

平均PUDを求めるには不稼働度(Unavailability)の時間平均が知りたいので、$\lambda t\ll 1$の前提で$R(t)=e^{-\lambda t}\approx1-\lambda t+\frac{1}{2}\lambda^2 t^2$と、2次項までMaclaurin展開し、平均PUDを求めると、 $$ \require{cancel} \overline{PUD}=\frac{1}{T_\text{lifetime}}Q_\text{subsystem}(T_\text{lifetime})=\frac{1}{T_\text{lifetime}}\left[1-A_\text{subsystem}(T_\text{lifetime})\right]\\ \approx\frac{1}{\bcancel{T_\text{lifetime}}}\left[\bcancel{1}-(\bcancel{1}-\lambda_\text{IF}\bcancel{T_\text{lifetime}}+\frac{1}{2}{\lambda_\text{IF}}^2 {T_\text{lifetime}}^\bcancel{2})\right]\\ -\frac{1}{\bcancel{T_\text{lifetime}}}\frac{\lambda_\text{IF}}{\lambda_\text{IF}-\lambda_\text{SM}}\left[ (\bcancel{1}-\lambda_\text{SM}\bcancel{T_\text{lifetime}}+\frac{1}{2}{\lambda_\text{SM}}^2 {T_\text{lifetime}}^\bcancel{2})\\ -(\bcancel{1}-\lambda_\text{IF}\bcancel{T_\text{lifetime}}+\frac{1}{2}{\lambda_\text{IF}}^2 {T_\text{lifetime}}^\bcancel{2})\right]\\ =(\lambda_\text{IF}-\frac{1}{2}{\lambda_\text{IF}}^2 T_\text{lifetime})-\frac{\lambda_\text{IF}}{\bcancel{\lambda_\text{IF}-\lambda_\text{SM}}}\left[(\bcancel{\lambda_\text{IF}-\lambda_\text{SM}})-\frac{1}{2}T_\text{lifetime}(\bcancel{\lambda_\text{IF}-\lambda_\text{SM}})(\lambda_\text{IF}+\lambda_\text{SM})\right]\\ =(\bcancel{\lambda_\text{IF}}-\bcancel{\frac{1}{2}{\lambda_\text{IF}}^2 T_\text{lifetime}})-\lambda_\text{IF}\left[\bcancel{1}-\frac{1}{2}T_\text{lifetime}(\bcancel{\lambda_\text{IF}}+\lambda_\text{SM})\right]\\ =\img[-1.35em]{/images/withinseminar.png} \tag{126.2} $$ 以上から、前稿の2重化での簡易計算と完全一致します。


左矢前のブログ 次のブログ右矢

あるWebの記事について (2)

posted by sakurai on July 8, 2019 #125

同じ記事のPMHFについても怪しいところがあります。

まずPMHFそのものは単純で故障する頻度そのものである。ただ実際には1億回あたり1回未満というのはかなり難しい。一般にエレクトロニクス業界で使われている故障頻度には「FIT」(Failure in Time:10億時間あたりに発生する故障回数)と呼ばれるものがあるが、自動車向けのMCUなどではどんなに少ないものでも20FIT(10億時間あたり20回)といわれており、このままでは10^-8/hを満たせない。 ただ、PMHFは、ある特定の回路そのものの故障頻度ではなく、システム全体の故障頻度と見なすこともできる。例えば全ての部品を二重化しておき、片方が壊れてももう片方がそれを引き継ぐことができるとすれば、トータルとしての故障頻度は10FITに減る計算になり、これでASIL DのPFHFの目標をクリアできることになるからだ。

要約すれば、主系とバックアップ系が、それぞれ20FITの故障率を持つ2重化システムがあるとき、「トータルとしての故障頻度」が10FITになるということのようです。

実際には「トータルとしての故障頻度」はDPF(Dual Point Failure)の時であるから、車両寿命を$T_\text{lifetime}$として単純な確率計算では、 $$ \Pr\{\text{DPF}\}=\Pr\{\text{Channel 1 failed}\cap\text{Channel 2 failed}\} =\Pr\{\text{Channel 1 failed}\}\Pr\{\text{Channel 2 failed}\}\\ =(\lambda_\text{IF}T_\text{lifetime})(\lambda_\text{SM}T_\text{lifetime}) =(10\times 10^{-9})^2{T_\text{lifetime}}^2=1\times 10^{-16}{T_\text{lifetime}}^2 $$ となります。

この確率には主系⇒バックアップ系のフェイルオーバーだけでなく、その逆の場合も含まれるので、フェイルオーバーの場合のPMHF、すなわち平均PUDを求めると、この1/2を$T_\text{lifetime}$で割った値となります。 $$ M_\text{PMHF}=\overline{PUD}=\frac{1}{2}\lambda_\text{IF}\lambda_\text{SM}T_\text{lifetime} $$

この値は、車両寿命がいくら大きくても10FITにはなりません。例えば車両寿命が10万時間の場合のPMHF、すなわち平均PUDは、 $$ M_\text{PMHF}=\overline{PUD}=\frac{1}{2}\lambda_\text{IF}\lambda_\text{SM}T_\text{lifetime}=0.5\times 10^{-16}\cdot 1\times 10^{5}=0.005[FIT] $$ となります。逆にこれが10FITだとすると、車両寿命は5,708年というあり得ない値となってしまいます。

誤りの原因は2重化の場合の確率計算を1/2にしてしまったところにあります。本来は2重化システムにおいては、主系に故障があっても、バックアップ系が動作するフォールトトレラント性があるため、引き続いてバックアップ系にもフォールトが起きないとシステムの故障とはなりません。従って、確率計算としては両方にフォールトが起こる場合の、確率の掛け算になります。

以前の記事のように、レアイベント近似を用いれば、直列系は確率の足し算、並列系は確率の掛け算となります。表記の記事は、並列系で確率の掛け算をするところを、2冗長だから単純に1/2をかけたのかもしれませんが、正しくは10[FIT]ではなく0.005[FIT]のような、非常に低い数字になります。

いずれにせよ、故障頻度は故障確率として計算することを理解していないと、このような誤りを引き起こします。


左矢前のブログ 次のブログ右矢

PMHFのバジェッティング

posted by sakurai on June 22, 2019 #116

Annex G

これも2nd Editionで新設されたAnnexですが、PMHFのバジェッティングについて記述されています。といっても従来からバジェッティングは現場では実施されていました。それと規格の意図するところは若干異なるようです。

従来のバジェッティング

まず1st Editionで実施されていたバジェッティングは、Part5 9.4.2.2 表6で規定される、PMHF目標値を分割するものでした。例えば、あるアイテムがASIL-Dの要求に基づき、アイテムにASIL-Dを割り当てます。ここで注意すべきは、エレメントには当初はASILは存在せず、あくまで要求の属性としてのASILが存在することです。エレメントには様々な安全目標によって、様々な要求が割り当てられますが、その中の最高レベルのASILにより、エレメントのASILが規定されます。

例えば、アイテムが3つのエレメントに分割され、それぞれ別のサプライヤによって開発される場合には、それぞれのサプライヤに対して、PMHF目標値を設定する必要があります。これを従来はバジェッティングと呼んでいました。アイテムで10FITの予算(バジェット)があり、それを配分するイメージとなります。例えば3つであれば、3.3FITずつ割り当てることができます。

図%%.1
図116.1 1st EditionのPMHFバジェッティング

2nd Editionのバジェッティング

規格でバジェットの単語が出てくるのはPart5 9.4.2.3の中です。9.4.2.3は上記の予算配分(分割)と言うよりも、多重割り当てと言ったほうがふさわしい節です。その理由は9.4.2.3は、上記のようにASIL-Dの目標をエレメントの数で分割するのではなく、比較的大きなシステム、例えばADASのように、物標認識システム、ブレーキ制御システム、エンジン制御システム等のように、それだけで従来はアイテムレベルであったシステムを複数組み合わせた場合のPMHFの考え方を表すものだからです。そしてその場合は、それぞれのシステムにASILを割り当て、10個までは組み合わせて良いと規定しています。例えばASIL-Dのシステムを10個までならぎりぎり目標が10倍となり10倍を超えませんが、10倍を超える目標値を設定することは許されていません。

図%%.2
図116.2 2nd EditionのPMHFバジェッティング

左矢前のブログ 次のブログ右矢

posted by sakurai on June 20, 2019 #115

2nd Edition Annex F.3,4,5

次にF.3を見てみます。F.3は「評価対象のフォールト又は故障モードの選択基準の決定」となっています。本来はFMEDAのフォールトイベントの評価として全ての故障モードを評価すべきでしょうが、それだと数千件も評価しなければならないため、本節で故障モードの絞り込みを行うのだと思われます。

ちなみに、PMHFへの寄与率を厳密に考えると、PMHFのSPF部分とDPF部分がありますが、DPF部分は故障モードの組み合わせであるため、以下は全てPMHFの値(SPF+DPF)への、故障モードのSPF部分の寄与率と言う意味となります。

  1. SPFまたはRFに関して、DCが90%以下の全てのフォールト又は故障モード
  2. PMHFの寄与率が2%以上の全てのフォールト又は故障モード
  3. PMHFの寄与率が上位20位以内の全てのフォールト又は故障モード

この選択基準で絞り込むと、本例ではたまたま以下の値になります。

  1. 2件の故障モード⇒PMHFへの寄与率は95.68%
  2. 2件の故障モード(上記と同じ)⇒PMHFへの寄与率は95.68%
  3. 20件の故障モード⇒PMHFへの寄与率は99.89%

F.5では、これらは全てPMHFへの寄与率が95%以上であるから問題無しとしています。逆にそうであるなら、直接的に

  1. PMHFへの寄与率が95%を超えるまでの上位からの全てのフォールト又は故障モード

とするほうが自然ではないでしょうか。ちなみにこのような絞り込み条件を設定すると、2件の故障モード⇒PMHFへの寄与率は95.68%となり、上記1.及び2.と同様2件の故障モードを分析すれば良いことになります。以下に故障モードに関してPMHFへの寄与率が大きい順にリストします。

コンポーネント名 故障率
[FIT]
SR? 故障モード 分布[%] SM DC[%] λRF PMHFへの
寄与率[%]
PMHFへの
寄与率累積[%]
1 μC 100 Yes all 50 SM4 90 5.000 91.13 91.13
2 T61 5 Yes short 50 SM2 90 0.250 4.56 95.68

従って、分析方法をまとめれば、「 PMHFへの寄与率が95%を超えるまでの上位からの全てのフォールト又は故障モード」について絞り込みを実施し、それぞれに故障モードについて、安全方策がとられているかどうかを確認することになります。このときなぜ95%以上としたのかを問われたら、2nd Edition規格Annex F.3を参照したとなります。


左矢前のブログ 次のブログ右矢

posted by sakurai on June 19, 2019 #114

2nd Edition Annex F

2nd Editionで新設されたAnnex F のFMEDAシートを図114.1に示します。

図%%.1
図114.1 2nd Edition, Annex F FMEDA

前稿と比較して、右端の欄が2つ増えており、重要なのはDPF_detです。Annex Fの「F.2 PMHF評価を提供する安全分析」において、 $$ PMHF_{\mathrm{est}}=\lambda_{\mathrm{SPF}}+\lambda_{\mathrm{RF}}+\color{red}{\lambda_{\mathrm{DPF,det}}}\color{green}{\lambda_{\mathrm{DPF,lat}}}T_{\mathrm{lifetime}}\tag{114.1} $$ でPMHFを近似していると書かれています。$\lambda_{\mathrm{SPF}}$、$\lambda_{\mathrm{RF}}$はSPFMを求めるため、$\color{green}{\lambda_{\mathrm{DPF,lat}}}$もLFMを求めるために既に表にあるため、$\color{red}{\lambda_{\mathrm{DPF,det}}}$が新たに表に必要となります。

ただし、弊社では(114.1)には異論があります。正しいPMHF式は、1st Editionの3番目の一般式を示すと、 $$ M_{\mathrm{PMHF}}=\lambda_{\mathrm{RF}}+\lambda_{\mathrm{IF,DPF}}\lambda_{\mathrm{SM,lat}}T_{\mathrm{lifetime}}\tag{114.2} $$ です。これは、1st Editionで述べられているとおり故障順序によらない式であり、$\lambda_{\mathrm{SM,lat}}T_{\mathrm{lifetime}}\gg\lambda_{\mathrm{SM,det}}T_{\mathrm{service}}$かつ、IFがアンリペアラブル、SMがリペアラブルの場合に成り立つことは検証済みです。

(114.2)と(114.1)を比較すると、DPFの項の2つの故障率が異なっています。(114.1)では主機能と安全機構の値を合わせた故障率$\color{red}{\lambda_{\mathrm{DPF,det}}}$及び$\color{green}{\lambda_{\mathrm{DPF,lat}}}$を使用しています。双方をIFとSMの和に分解すれば、 $$ \color{red}{\lambda_{\mathrm{DPF,det}}} =\lambda_{\mathrm{IF,DPF,det}}+\lambda_{\mathrm{SM,DPF,det}}=K_{\mathrm{IF,RF}}\lambda_{\mathrm{IF}}K_{\mathrm{IF,MPF}}+\lambda_{\mathrm{SM}}K_{\mathrm{SM,MPF}} \tag{114.3} $$ であり、たまたま$K_{\mathrm{SM,MPF}}=0$、$K_{\mathrm{IF,MPF}}=1$であることから、(114.3)は $$ \color{red}{\lambda_{\mathrm{DPF,det}}}=K_{\mathrm{IF,RF}}\lambda_{\mathrm{IF}}=\lambda_{\mathrm{IF,DPF}}\tag{114.4} $$ となります。本来はPMHF式(114.2)を鑑みると、これは$\lambda_{\mathrm{IF,DPF}}$とするべきです。また、同様に$\color{green}{\lambda_{\mathrm{DPF,lat}}}$もIFとSMの部分に分解すれば、 $$ \color{green}{\lambda_{\mathrm{DPF,lat}}} =\lambda_{\mathrm{IF,DPF,lat}}+\lambda_{\mathrm{SM,DPF,lat}}=K_{\mathrm{IF,RF}}\lambda_{\mathrm{IF}}(1-K_{\mathrm{IF,MPF}})+\lambda_{\mathrm{SM}}(1-K_{\mathrm{SM,MPF}}) \tag{114.5} $$ ですが、たまたま前述の$K_{\mathrm{SM,MPF}}=0$、$K_{\mathrm{IF,MPF}}=1$の条件から(114.5)は $$ \color{green}{\lambda_{\mathrm{DPF,lat}}}=\lambda_{\mathrm{SM}}=\lambda_{\mathrm{SM,lat}}\tag{114.6} $$ となり、値は結果的に正しくなります。しかしながら、この条件が常に成り立つとは言えないのと、より正確な値を$T_{\mathrm{service}}$を用いて算出するためには、IFとSMの値を合わせないほうが良く、結論として(114.2)を用いるべきと考えます。


左矢前のブログ 次のブログ右矢


ページ: