Posts Tagged with "ISO 26262"

既に発行済みのブログであっても適宜修正・追加することがあります。
Even in the already published blog, we may modify and add appropriately.
posted by sakurai on October 10, 2019
  • 前稿の菱形の続きです。安全機構(SM)を取り去った場合に安全目標侵害(VSG)を侵害するかどうかを判定する菱形と説明しました。VSGとなる場合(yes)は下に移動します。VSGとならない場合(No)は右横に移動します。言い換えると、ここでは主機能(IF)かSMかを判定しています。故障してVSGとなる可能性のある(yes)部品はIFです。可能性の無い(no)部品はSMです。

  • 下に来た場合(yes, IF)は、先ほど取り去ったSMを戻して、それに着目します。SMがあるかどうかを判定している菱形なので、SMがあれば(yes)下に移動します。SMが無い場合は(no)左下に行き、$\lambda_\text{SPF}$と判定されます。ここはこれで終了です。単にSPFであると定性的に判定されるのではなく、定量的に$\lambda_\text{SPF}$と判定されます。

  • その下の円形では、SMによってVSGを抑止しているかどうかを判定します。要はSMが安全目標侵害を防止している割合を聞いています。ここで注意するのはあくまで「抑止」$\dagger$であって「検出」ではないことです。原文に抑止が無いのでわかりにくいのですが、どのくらい抑止されるかのカバレージを聞いています。本来定量的にするべきですが、カバーされない分は下に移動し、その故障率を$\lambda_\text{RF}$と判定します。一方、カバーされる分は故障があるが発現していない状態であるので、レイテント故障の候補として、上に移動します。

図%%.1
図166.1 Part 5故障分類フロチャート

判定ボックスに菱形と円形とがありますが、菱形はYes/Noでいずれかを選択するのに比べて、円形は確率的な判断であり、Yesにx%、Noに1-x%となります。

$\dagger$ちなみに「抑止」は「検出」を含む広い概念です。逆に1st SMの機能を「検出」と言ってしまうと「抑止」を含まないので、ある記事のように誤りとなります。一般にはSMの機能は検出である場合が多いのですが、例えば冗長回路の場合は検出にはなりません。冗長回路は故障を全く検出しませんが、一方、単一故障によるVSGを抑止します。


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

posted by sakurai on October 8, 2019

まず、ECUのPCB上の部品を全てリストアップします。FMEAの考え方により、抜け漏れを防止するため、全ての部品を検討する必要があります。

  • ISO 26262の入り口は、他の規格、例えばIEC TR 62380やSN29500等の故障率データベース、ないしは信頼性試験から算出された、部品の要素故障率です。この故障率を$\lambda$とし、左上の入り口から入ります。

図%%.1
図165.1 Part 5故障分類フロチャート

  • 最初の菱形の判断は、この部品が安全関連であるかどうかです。Noの場合は「非安全関連」に分類され、分析から除かれます。最初に全ての部品を検討する理由は、抜け漏れの防止となるためですが、一方、無関係な部品はここでふるい落とされます。ちなみに、無関係な部品は実務上はあまり存在せず、例えばデバッグ回路等のように運転中に全く動作しない回路が相当します。他はたいていの場合安全関連です。Yesの場合は右に行き、「安全関連」と分類されます。言葉として紛らわしいのは、安全関連=危険側、非安全関連=安全側ということです。従って、安全関連と分類された部品は危険側を意味します。

  • 次にこの部品に関して全ての故障モードを検討します。以下のフローは全ての故障モードに対して通ります。

  • 次の菱形の判断は、安全機構(SM)を取り去った場合に安全目標侵害(VSG)を侵害するかどうかです。SMが無い場合はもちろん取り去るSMはありません。なぜ仮定の話を考えるかというと、ある部品の故障がVSGにつながるかどうかを考えるのがFMEAですが、一般的にSMが入っているので、ほとんどの部品はVSGとならないと判定されてしまうためです。それでは意味がないので、まずSMを除いて考えるわけです。

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

posted by sakurai on October 4, 2019

機能安全のハードウェア編の最初の山場が故障分類です。

特に、故障分類フローチャートは大変重要なトピックスです。規格では、Part 5のFigure B.2に簡略化された故障分類フローが掲載されています。さらにPart10のFigure 10では重要なKパラメータである$K_\text{FMC,RF}$と、$K_\text{FMC,MPF}$、加えてそれらの計算式が掲載されています。従って、簡略化されたPart 5 Figure B.2を解説し、概要を述べた後にPart 10のFigure 10を解説します。さらに、本ブログでは、分かりにくいと思われている理由を挙げ、理解するノウハウを解説します。

以下はPart 5の簡略化された故障分類フロチャートです。

図%%.1
図164.1 Part 5故障分類フロチャート


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

2nd EditionのPMHF方程式

posted by sakurai on July 17, 2019

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が消えている件
  • 初期状態で、パターン1,2は初期状態でIFをリペアラブル、SMをアンリペアラブル固定、パターン3,4は初期状態でSMをリペアラブル、IFをアンリペアラブル固定と誤っている件 - 本来は、パターンに依らず、IFもSMもリペアラブルが正しい

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

posted by sakurai on July 9, 2019

さて、前稿平均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}$における信頼度は、IFが$T_\text{lifetime}$までにダウンしないか、あるいは、途中の時刻$t$でダウンしたとしても、そこからSM1が$T_\text{lifetime}$までダウンせずに稼働する確率なので、

$$ R_\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を求めるには不信頼度の時間平均が知りたいので、$\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}}F_\text{subsystem}(T_\text{lifetime})=\frac{1}{T_\text{lifetime}}\left[1-R_\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

同じ記事の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 $$ となります。

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

この値は、車両寿命がいくら大きくても10FITにはなりません。例えば車両寿命が10万時間の場合の平均PUDは、 $$ \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重化の場合の確率計算を引き算にしてしまったところにあります。本来は2重化システムにおいては、主系に故障があっても、バックアップ系が動作するフォールトトレラント性があるため、引き続いてバックアップ系にもフォールトが起きないとシステムの故障とはなりません。従って、確率計算としてはいずれかにフォールトが起こる足し算ではなく、両方にフォールトが起こる掛け算とすべきです。

以前の記事のように、レアイベント近似を用いれば、直列系は確率の足し算、並列系は確率の掛け算となります。従って、直列系であればむしろ、20FIT+20FIT=40FITと増えてしまうので、故障率低減効果がありません。従って表記の記事は2重に(並列系を直列系に、加算を減算に)誤っていることになります。


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

あるWebの記事について

posted by sakurai on July 5, 2019

ある記事に以下のような文章が載っていました。SPFM、LFMに関する説明文です。

冗長によるPMHFの低減を説明した後に、

 ただこの二重化の場合、ある部品が壊れたかどうかを確認するための仕組みが別途必要になる。また、この仕組みが確実に「その部品が壊れたかどうか」を判断できなければならない。これに関する数値がSPFMであって、要するに99%以上の確率で、その部品が正常か壊れたかを判断できるようにする必要があるわけだ。

 また、この「部品が壊れたかどうか」を判断する回路も、当然電子回路で構成される以上故障する可能性がある。そこで、この判断部そのものが故障していないかどうか、を90%以上の確率で判断できないといけない、というのがLFMというわけだ。

一見良さそうなこの説明文ですが、良く読むと誤りがあります。どこをどう直したら正しくなるか考えてみてください。

  • ヒント1: 二重化(冗長)の場合は互いに主機能と安全機構(1st SM)の働きを行います。
  • ヒント2: SPFMはこの場合、平均的な故障検出率ではありません。安全機構(1st SM)の持つ平均的な故障抑止率です。なぜなら最小限の二重化は、故障を検出しないためです。それにも関わらず、VSGをコントロールするので、SPFMはほぼ100%となります。
  • ヒント3: LFMの対象は「部品が壊れたかどうか」を判断する回路(=安全機構)だけではありません。この場合は故障抑止回路(1st SM)とするべきです。安全機構(2nd SM)の持つ平均的な故障検出率です。

2とおりの修正方法があります。引用した文章は2つに分かれており、それぞれSPFMとLFMについての説明とするならば、

セミナーにてご説明します。

となります。あるいは、それぞれLFMと2nd SMの故障検出についての説明とするならば、

セミナーにてご説明します。

となります。どうみても最初の解釈が良さそうですが、文章を大幅に修正しなければなりません。それは、元の文章が1st SMの機能である故障抑止と2nd SMの機能である故障検出について混同しているためです。

端的に言えば、著者は「部品の故障を検出するものが安全機構である」と思い込んでいます。最初から「二重化」で始めなければ、おおむね合っていたのですが。


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

LFMの導出

posted by sakurai on July 4, 2019

LFMの導出

LFM、$M_{\mathrm{LFM}}$に関する規格式を引用し、これを導出します。

図%%.1
図123.1 LFM規格式

前項と同様な論証を行います。まずレイテントフォールト(LF)の故障率の計算式を見てみます。

故障分類フローで説明したように、レイテントフォールトとなるのは2とおり存在します。

  • 主機能のフォールトのSG侵害が1st SMにより抑止されている場合に、2nd SMで検出できない場合
  • SMのフォールト(これはSG侵害が起こらない)が2nd SMで検出できない場合

よって、安全関連に関する故障モードが$n$個ある場合に、i番目のLFの故障率$\lambda_{\mathrm{LF,}i}$の定義式は、存在しない$\lambda_i$に対しては0を返すものとすれば、

$$ \lambda_{\mathrm{LF,}i}:=DC_i\lambda_{\mathrm{IF,}i}(1-DC2_i)+\lambda_{\mathrm{SM,}i}(1-DC2_i)=\{DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i}\}(1-DC2_i), \\ i=1, 2, ..., n\tag{123.1} $$ と表せます。この$DC2_i$はKパラメータで書けば、 $$ DC2_i=K_{\mathrm{IF,FMC,MPF,}i}, もしくは K_{\mathrm{SM,FMC,MPF,}i} $$ で、2nd SMがIFもしくはSMに対して、故障検出する割合を表します。(123.1)の両辺の総和を取れば、 $$ \sum_{i=1}^n\lambda_{\mathrm{LF,}i}=\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})(1-DC2_i)\\ =\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})-\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})DC2_i \tag{123.2} $$ よって、$\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})$及び$\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})DC2_i$を移項し、 $$ \sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})DC2_i=\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})-\sum_{i=1}^n\lambda_{\mathrm{LF,}i} \tag{123.3} $$ ここで、DC2の、各々の故障率による加重平均を(123.4)のように定義し、(123.3)を(123.4)の分子に代入すれば、 $$ \overline{DC2}:=\frac{\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})DC2_i}{\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})} =\frac{\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})-\sum_{i=1}^n\lambda_{\mathrm{LF,}i}}{\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})}\\ =1-\frac{\sum_{i=1}^n\lambda_{\mathrm{LF,}i}}{\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})} \tag{123.4} $$ ここで、$DC_i\lambda_{\mathrm{IF,}i}=\lambda_{\mathrm{IF,}i}-\lambda_{\mathrm{RF,}i}$を代入すれば、(123.4)は $$ (123.4)=1-\frac{\sum_{i=1}^n\lambda_{\mathrm{LF,}i}}{\sum_{i=1}^n(\lambda_{\mathrm{IF,}i}-\lambda_{\mathrm{RF,}i}+\lambda_{\mathrm{SM,}i})}=1-\frac{\sum_{i=1}^n\lambda_{\mathrm{LF,}i}}{\sum_{i=1}^n(\lambda_i-\lambda_{\mathrm{RF,}i})}\tag{123.5} $$

これと(C.8)を比較すれば、$\img[-1.35em]{/images/withinseminar.png}$


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

SPFMとLFMの導出

posted by sakurai on July 2, 2019

SPFMの導出

SPFM、$M_{\mathrm{SPFM}}$に関する規格式を引用し、これを導出します。

図%%.1
図122.1 SPFM規格式

まずレシデュアルフォールト(RF)の故障率の計算式を見てみます。ここでシングルポイントフォールト(SPF)を狭義に使えば、RFのうち、ダイアグノスティックカバレージ(DC)がゼロの時にSPFと等価であるため、SPFもRFも(広義の)RFとして表せることになります。つまり上式分子の$\lambda_{\mathrm{SPF}}+\lambda_{\mathrm{RF}}$は、DC=0の場合を含み、$\lambda_{\mathrm{RF}}$と簡単化できます。

さて、安全関連に関する故障モードが$n$個ある場合に、i番目の(広義の)RFの故障率$\lambda_{\mathrm{RF,}i}$式は、 $$ \lambda_{\mathrm{RF,}i}:=\lambda_{\mathrm{IF,}i}(1-DC_{i})\tag{122.1} $$ と定義されます。この$DC_i$はKパラメータで書けば、 $$ DC_i=K_{\mathrm{IF,FMC,RF,}i} $$ で、1st SMがIFに対して、SG侵害を抑止する割合を表します。(122.1)の両辺の総和を取れば、 $$ \sum_{i=1}^n\lambda_{\mathrm{RF,}i}=\sum_{i=1}^n\lambda_{\mathrm{IF,}i}(1-DC_{i}) =\sum_{i=1}^n\lambda_{\mathrm{IF,}i}-\sum_{i=1}^n\lambda_{\mathrm{IF,}i}DC_{i} \tag{122.2} $$ よって、 $$ \sum_{i=1}^n\lambda_{\mathrm{IF,}i}DC_{i}=\sum_{i=1}^n\lambda_{\mathrm{IF,}i}-\sum_{i=1}^n\lambda_{\mathrm{RF,}i} \tag{122.3} $$ ここで、DCの、各々の故障率による加重平均を(122.4)のように定義し、(122.3)を(122.4)の分子に代入すれば、 $$ \overline{DC}:=\frac{\sum_{i=1}^n\lambda_{\mathrm{IF,}i}DC_i}{\sum_{i=1}^n\lambda_{\mathrm{IF,}i}} =\frac{\sum_{i=1}^n\lambda_{\mathrm{IF,}i}-\sum_{i=1}^n\lambda_{\mathrm{RF,}i}}{\sum_{i=1}^n\lambda_{\mathrm{IF,}i}} =1-\frac{\sum_{i=1}^n\lambda_{\mathrm{RF,}i}}{\sum_{i=1}^n\lambda_{\mathrm{IF,}i}}\\ =1-\frac{\sum_{i=1}^n\lambda_{\mathrm{RF,}i}}{\sum_{i=1}^n(\lambda_i-\lambda_{\mathrm{SM,},i})} \tag{122.4} $$ これと(C.7)を比較すれば、$\lambda\gg\lambda_{\mathrm{SM}}$である場合は、 $$ M_{\mathrm{SPFM}}\approx\overline{DC} $$ となるため、SPFMは1st SMの平均のDCで近似されると考えられます。逆に、$\img[-1.35em]{/images/withinseminar.png}$


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

フォールトトレラントタイム

posted by sakurai on July 1, 2019

車両寿命間のダウン確率は、次の式のようにPMHFに車両寿命をかけたものです。 $$ M_\mathrm{PMHF}:=\frac{1}{T_\mathrm{lifetime}}\Pr\{\text{item down at }T_\mathrm{lifetime}\}\\ \therefore \Pr\{\text{item down at }T_\mathrm{lifetime}\}=M_\mathrm{PMHF}T_\mathrm{lifetime} \tag{121.1} $$ バックアップ系(SM1)に切り替わった後で、EOTTI期間走行する間のダウン確率が(121.1)以下であればよいとすれば、 $$ \Pr\{\text{backup down at }T_\mathrm{eotti}\}=\lambda_\mathrm{SM1, DPF}T_\mathrm{eotti}\le\Pr\{\text{item down at }T_\mathrm{lifetime}\}=M_\mathrm{PMHF}T_\mathrm{lifetime}\tag{121.2} $$ となり、EOTTIの範囲は前項の規格式(3)で表されます。しかしながら、恐らくワーストケース(最短EOTTI)を求めるための条件と思われますが、厳しすぎに見えます。$t=0$でIFのフォールトが起きた前提での、バックアップ系による走行条件の計算となっています。DPFの確率ではなく、SPFの確率となるため、何桁も厳しくなります。

次に規格式(2)ですが、誤ったPMHF式がベースであるため、以下の例では誤ったEOTTIが得られています。表121.1でケース2の「(2)式の結果」が、上記のワーストと思われる「(3)式の結果」を下回っている(より厳しくなっている)こともこれを裏付けます。

まず正しいEOTTI式を(121.3)に示します。これは、2nd Editionの条件(IF/SM1共にリペアラブル)を前提としてPMHF式を求め(69.1)、その暴露時間の最大値をEOTTIとし、EOTTIについて解いた式です。 $$ T_\text{eotti}\le\frac{M_\text{PMHF}-\left[\lambda_\text{SPF}+\lambda_\text{RF}+\lambda_\text{IF,DPF}\lambda_\text{SM,DPF}(1-K_\text{MPF})T_\text{lifetime}\right]}{\lambda_\text{IF,DPF}\lambda_\text{SM,DPF}K_\text{MPF}}\\ =\frac{M_\text{PMHF}-\left[\lambda_\text{SPF}+\lambda_\text{RF}+\lambda_\text{IF,DPF}\lambda_\text{SM,DPF}(1-K_\text{IF,MPF})(1-K_\text{SM,MPF})T_\text{lifetime}\right]}{\lambda_\text{IF,DPF}\lambda_\text{SM,DPF}\left[1-(1-K_\text{IF,MPF})(1-K_\text{SM,MPF})\right]}\\ =\frac{M_\text{PMHF}-(\lambda_\text{SPF}+\lambda_\text{RF}+\lambda_\text{IF,DPF,lat}\lambda_\text{SM,DPF,lat}T_\text{lifetime})}{\lambda_\text{IF,DPF}\lambda_\text{SM,DPF}-\lambda_\text{IF,DPF,lat}\lambda_\text{SM,DPF,lat}} \tag{121.3} $$ 次に規格中の例題を(121.3)で計算し直した結果、表121.1の最下段のようになります。

表121.1
EOTTI ケース1[H] ケース2[H]
(2)式の結果 772 31
(3)式の結果 167 167
(2)式の修正結果 2,312 965

規格の2例で総合的な$K_\text{MPF}$を求めると、ケース1, 2において0.99と変わりませんが、これを振ってみた、$T_\text{eotti}$に関するグラフを図121.3に示します。(121.3)が不等式であるため、解の存在領域は曲線の下側となります。

図%%.3
図121.3 ケース1とケース2での$K_\text{MPF}$に対する$T_\text{eotti}$

ケース2では、本来965Hで良いのに31Hと厳しくなっているので、$\img[-1.35em]{/images/withinseminar.png}$


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


ページ: