Posts Tagged with "ISO 26262"

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

3. 稼働度の定義からの導出

ついでに既出ですが、リペアラブルエレメントの不稼働度$Q(t)$の数式的な求め方を示します。基本的にはブログ記事に示す導出方法です。

$$ Q_\text{SM}(t):=\Pr\{\text{(repairable)SM down at }t\}=1-A_\text{SM}(t)\tag{350.1} $$ 一方、稼働度は、 $$ A_\text{SM}(t):=\Pr\{\text{(repairable)SM up at }t\}\\ =R(t)+\int_0^t m(x)R(t-x)dx\tag{350.2} $$ ここで、$A(t)$は時刻tにおけるポイントアベイラビリティ、$R(t)$は時刻tにおけるリライアビリティ(信頼度)、$m(t)$は時刻tにおけるリニューアル密度(修理密度)です。

規格に従えば、修理周期は教科書一般にあるように指数関数分布はとらず、定期的に$\tau$毎に行われるため、稼働度として(350.2)は(350.3)と表せます。ここで、$i$は$i$番目の定期検査・修理を意味し、時刻$t$までに$n$回の定期検査・修理が行われるものとします。 $$ A_\text{SM}(t)=R_\text{SM}(t)+K_\text{SM,MPF}F_\text{SM}(\tau)\sum_{i=1}^n R_\text{SM}(t-i\tau)\tag{350.3} $$ ここで、$K_\text{SM,FMC,MPF}$は少々長いので、$K_\text{SM,MPF}$と省略しました。PMHFの議論中のKはFMC(Failure Mode Coverage)に決まっているためです。

修理分$K_\text{SM,MPF}F_\text{SM}(\tau)$が時刻$t$の関数でないのは、検出能力$K_\text{MPF}$は一定で、かつ毎回の故障確率も一定で、検出した分は全て修理されるため、修理分が一定となるためです。(350.3)式の総和を展開すれば、 $$ \require{cancel} A_\text{SM}(t)=R_\text{SM}(t)+K_\text{SM,MPF}\left[1-R_\text{SM}(\tau)\right]\cdot\\ \left[R_\text{SM}(t-\tau)+R_\text{SM}(t-2\tau)+...+R_\text{SM}(t-(n-1)\tau)\right]\\ =R_\text{SM}(t)+K_\text{SM,MPF}\left[\bcancel{R_\text{SM}(t-\tau)}-R_\text{SM}(t)\\ +\bcancel{R_\text{SM}(t-2\tau)}-\bcancel{R_\text{SM}(t-\tau)}\\ ...\\ +R_\text{SM}(t-n\tau)-\bcancel{R_\text{SM}(t-(n-1)\tau)}\right]\\ =R_\text{SM}(t)+K_\text{SM,MPF}\left[-R_\text{SM}(t)+R_\text{SM}(t-n\tau)\right] \tag{350.4} $$ ここで、$u:=t-n\tau$とパラメータ$u$を定義し、(350.1)に(350.4)を代入すれば、 $$ Q_\text{SM}(t)=1-A_\text{SM}(t)=F_\text{SM}(t)-K_\text{SM,MPF}\left[F_\text{SM}(t)\bcancel{-1}+\bcancel{1}-F_\text{SM}(u)\right]\\ =\img[-1.35em]{/images/withinseminar.png} \tag{350.5} $$ 以上から、(348.1)(349.3)、(350.5)で示されたように、導出手法は異なっても同一のPUA方程式が導出されることがわかります。

このリペアラブルエレメントの不稼働度$Q(t)$(350.5)及び、それを時間微分した不稼働密度$q(t)$の方程式(350.6)は、PMHF方程式の導出の根幹です。

$$ q_\text{SM}(t)=\frac{dQ_\text{SM}(t)}{dt}=(1-K_\text{SM,MPF})\frac{dF_\text{SM}(t)}{dt}+K_\text{SM,MPF}\frac{dF_\text{SM}(u)}{du}\frac{du}{dt}\\ =\img[-1.35em]{/images/withinseminar.png} \tag{350.6} $$

なお、本稿はRAMS 2025に投稿予定のため一部を秘匿しています。


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

posted by sakurai on January 22, 2021 #349

2. 愚直に場合分けする導出法

前稿のようにエレガントに導出するのではなく、全ての場合を愚直に場合分けすることを行います。そのほうが抜け漏れが防止でき、確実そうです。

図347.1
図347.1 定期検査と時刻$t$の関係

ただし、任意の検査時刻$\tau_i,\ i=1,...,n$で考えると、区間がn+1個、検査がn回であるため、区間$[\tau_{i-1}, \tau_i)$でのフォールトの生起有/無が$2^{(n+1)}$とおり、検査時点$\tau_i$でのフォールト検出可/不可が$2^n$とおりあるので、検討の組み合わせが$2^{(2n+1)}$とおりと膨大になります。

ところが幸いなことに、フォールト検出は確率的に行われるのではなく、アーキテクチャ的に行われる前提です(ブログ記事の前提の2項を参照)。従って、いつフォールトが起きてもその次の周期での検査(時刻=$\tau_i$)ではなく、最近の検査(時刻=$\tau_n$)まで です。

従って、フォールトの生起を単に「生起」、フォールトの検出を単に「検出」と省略して書けば、最近の検査までの生起の有/無最近の検査での検出の可/不可その後の生起の有/無の$2^3$とおりを考えれば良いわけです。この絞り込みは愚直とは言えず、むしろエレガントかもしれませんが。

この絞り込みを表現するために、3つ組記法を考え、

 (($0$から$\tau_n$までの生起の有/無),($\tau_n$での検出の可/不可),($\tau_n$からtまでの生起の有/無))

の全ての組み合わせを考えます。有/無や可/不可をYes(有)/No(無)で表せば、全ての場合は$2^3$とおりあり、

  1. (Yes, Yes, Yes)
  2. (Yes, No, Yes)
  3. (Yes, Yes, No)
  4. (Yes, No, No)
  5. (No, Yes, Yes)
  6. (No, No, Yes)
  7. (No, Yes, No)
  8. (No, No, No)

の8とおりです。このうち、時刻$t$でSMが不稼働状態になるのは、

  1. (Yes, Yes, Yes)⇒不稼働
  2. (Yes, No, Yes)⇒不稼働
  3. (Yes, Yes, No)
  4. (Yes, No, No)⇒不稼働
  5. (No, Yes, Yes)⇒不稼働
  6. (No, No, Yes)⇒不稼働
  7. (No, Yes, No)
  8. (No, No, No)

の1, 2, 4, 5, 6の5とおりです。これらの不稼働になる場合を、真ん中の検出可(=Yes)でまとめれば、

 1. (Yes, Yes, Yes)⇒不稼働
 5. (No, Yes, Yes)⇒不稼働

の2とおりとなります。検出可の条件で不稼働となる確率は、上記の2とおりです。従って、この条件での時刻$t$での不稼働確率は、次の確率式 $$ \Pr\{\text{fault detected at }\tau_n\ \cap\ \text{SM receives a fault in }(\tau_n, t]\}\tag{349.1} $$ で表されます。

一方、真ん中の検出不可(=No)でまとめれば、

 2. (Yes, No, Yes)⇒不稼働
 4. (Yes, No, No)⇒不稼働
 6. (No, No, Yes)⇒不稼働

の2, 4, 6の3とおりとなります。検出不可の条件で不稼働となる確率は、上記の3とおりです。従って、この条件での時刻$t$での不稼働確率は、次の確率式 $$ \Pr\{\text{fault not detected at }\tau_n\ \cap \text{SM receives a fault in }(0, t]\}\tag{349.2} $$ で表されます。

以上から、検出の可不可は排他であるため確率は足すことができます。また、生起と検出は独立事象であるため掛けることができます。従って、不稼働度は、(349.1)と(349.2)を用いて $$ Q_\text{SM}(t)\equiv\Pr\{\text{SM is down at }t\}\\ =\Pr\{\text{fault not detected at }\tau_n\ \cap \text{SM receives a fault in }(0, t]\ \cup\\ \text{fault detected at }\tau_n\ \cap\ \text{SM receives a fault in }(\tau_n, t]\}\\ =\Pr\{\text{fault not detected at }\tau_n\}\Pr\{\text{SM receives a fault in }(0, t]\}\\ +\Pr\{\text{fault detected at }\tau_n\}\Pr\{\text{SM receives a fault in }(\tau_n, t]\}\\ =\img[-1.35em]{/images/withinseminar.png} \tag{349.3} $$ と導出されます。

なお、本稿はRAMS 2025に投稿予定のため一部を秘匿しています。


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

posted by sakurai on January 21, 2021 #348

1. エレガントな導出法

図347.1を以下に再掲します。

図347.1
図347.1 定期検査と時刻$t$の関係

図347.1において、SMが$t$においてダウンしている確率を考えます。SMに起こったフォールトが、任意の$\tau_i$で2nd SMにより検出可能(=修理可能)か不可能かで分類します。

  • 検出可能な場合:時刻$0$から$\tau_n$未満の間にフォールトが起きる場合、次の定期検査$\tau_i\ (i=1,...,n)$の時点で検出され修理されるので、最近の検査時刻$\tau_n$でフォールトはありません。あるいは、フォールトが起きない場合も$\tau_n$の時点ではフォールトはありません。従って、時刻$t$でダウンしている確率は$\tau_n$直後から$t$までの間にフォールトが起きる場合に限られます。
  • 検出不可能な場合:2nd SMが無いのと同じことであるため、全ての時間、つまり時刻$0$から$t$までの間にフォールトが起きる確率、すなわち不信頼度$F(t)$が、時刻$t$でダウンしている確率となります。

以上を合わせ、SMが時刻$t$でダウンしている確率を求めます。

  1. 不稼働事象は上記事象のORであること
  2. 検出の可不可は排反であるため確率は足すことができること
  3. フォールトの生起と検出可不可は独立事象であること

上記から不稼働度は、

$$ Q_\text{SM}(t)\equiv\Pr\{\text{SM is down at }t\}\\ =\Pr\{\text{fault not detected at }\tau_n\ \cap \text{SM recieves a fault in }(0, t]\ \cup\\ \text{fault detected at }\tau_n\ \cap\ \text{SM recieves a fault in }(\tau_n, t]\}\\ =\Pr\{\text{fault not detected at }\tau_n\}\Pr\{\text{SM recieves a fault in }(0, t]\}\\ +\Pr\{\text{fault detected at }\tau_n\}\Pr\{\text{SM recieves a fault in }(\tau_n, t]\}\\ =\img[-1.35em]{/images/withinseminar.png} \tag{348.1} $$ と導出されます。

なお、本稿はRAMS 2025に投稿予定のため一部を秘匿しています。


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

不稼働度$Q(t)$について

posted by sakurai on January 20, 2021 #347

不稼働度$Q(t)$の導出準備

定期検査を持つリペアラブルエレメントの不稼働度(Unavailability, PUA)$Q(t)$の方程式は、世界で初めて弊社が導出したものです。このリペアラブルエレメントの不稼働度$Q(t)$の導出について解説します。

定義

不稼働度の定義は(66.10)に示します。

前提

一般にはSMにフォールトが起きても直ちにVSGとならないため、意図機能が動作している間に修理が可能であり、これをリペアラブルエレメントと言います。

図%%.1
図347.1 定期検査と時刻$t$の関係

図347.1のように、2nd SMによるSMに対する定期検査が、周期$\tau$で行われます。$i$番目の検査時刻は$\tau_i,\ i=1, ..., n$です。このときのSMの、時刻$t$での不稼働度を考えます。最近の検査時刻を$\tau_n$とすれば、 $$ \tau_n=n\tau=\lfloor\frac{t}{\tau}\rfloor\tau\tag{347.1} $$

前提をまとめると以下のようになります。

  • 定期検査・修理をと呼ぶ。
  • 2nd SMにはで表す。

なお、本稿はRAMS 2025に投稿予定のため一部を秘匿しています。


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

posted by sakurai on January 19, 2021 #346

第5節は、前節で求めたPMHFの評価です。図のレイアウト上、空白が多めになっています。

図%%.1

規格はケース見落としにより、過剰なPMHFの見積もりとなっています。ということは保守的な見積もりであるため、安全側ではありますが、EOTTIとしてはその過剰見積もりが厳しい設計制約として見えてきます。

上図左は弊社による、EOTTIの最大値を示す不等式です。一方、上図右は、2nd editionに掲載されているEOTTIの最大値を示す不等式です。表に示すように、規格自体に含まれている例で計算すると、規格がPMHFを過大に見積もっていることから、EOTTIも過小見積もりとなっています。正しくは965時間で良いのに、規格式では31時間となり、その倍率は31倍ともなります。

結論として、規格に従えば、PMHFが保守的な見積もりであることから、EOTTIに関して31倍も設計が厳しくなります。


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

RAMS 2021の延期

posted by sakurai on January 13, 2021 #345

RAMS委員会から本日(2021年1月13日)連絡があり、本年1月末にフロリダ州オーランドで開催予定だったRAMS 2021は約4か月延期され、5月末同場所で開催されることになりました。詳細は以下の通りです。

図%%.1

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

posted by sakurai on January 12, 2021 #344

第4節は弊社の導出したPMHF式を2つ示しています。IFU、IFRの2つのモデルを構築し、それぞれのモデルに基づいて確率微分方程式を立てます。それを解くことにより、PMHF方程式を求めます。

図%%.2

IFUモデルから求められたPMHF式は、1st editionの規格式とは完全に一致しました。一方、IFRモデルから求めると、2nd editionの規格式と一致しませんでした。その理由は、2nd editionの規格式は場合分けを行っており、それはIFもしくはSM1のいずれか(後からフォールトする方)がアンリペアラブルであるという前提になっているからです。

本来両方がリペアラブルである必要があり、いずれか片方がアンリペアラブルというのは不当な制約です。実際にIFがフォールトしてLFとなり、2nd SMにより検出され修理され、次にSM1がフォールトしてLFとなり、2nd SMにより検出され、修理工場で修理されるというシーケンスがカバーされていません。


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

posted by sakurai on January 11, 2021 #343

第3節はモデルの構築です。ここで言うモデルは、構造動作の2つの側面を持ちます。

図%%.2

構造は、左端図に示すとおり規格第2版に掲載されているもので、一種類のみです。

  • 主機能であるIFと、
  • 主機能がVSGとなるフォールトを抑止するための1st SMで、かつ主機能がLFとなることを抑止するための2nd SMであるSM1と、
  • SM1がLFとなることを抑止するための2nd SMであるSM2

の3つのエレメントからなるものです。ここでは2つのモデルを構築しますが、構造は2つのモデルに共通です。

一方、動作は2とおりあります。その動作を連続時間系マルコフ連鎖で表したものが中及び右図です。SM2はフォールトしないので、フォールトの可能性は両方無し、IFのみ、SM1のみ、及びIF、SM1両方の4通りです。フォールト無しをグリーンのOPRステート、片方のみがフォールトしているのを黄色のLAT1またはLAT2ステート、両方がフォールトするDPFステートをDPF1またはDPF2ステートで表します。SPFステートは例外的に、IFに起きる単一フォールトがVSGとなるときに移行するステートです。

動作の違いは右図の赤丸で示した遷移のみであり、IFUモデルの動作が、IFがアンリペアラブルなのに比べてIFRモデルの動作は、IFはリペアラブルです。そのため、IFRモデルにおいては、IFのフォールトによりLAT1ステートに移行しても、2nd SMにより検出可能である場合は、修理によりOPRステートに戻ります。


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

posted by sakurai on December 29, 2020 #342

第2節では、数学的な定義式を説明します。規格には数学的な定義が無いため、弊社独自の定義を考案しました。とはいえ、結果が規格と一致している必要があります。

図%%.2

PMHFは規格の文字通りの定義である、アイテムが車両寿命においてダウンしている確率を時間平均したものと定義します。時刻$t$においてダウンしている確率は、不稼働度関数$Q(t)$で表します。不稼働度$Q(t)$は不稼働密度$q(t)$を時刻$0$から$t$まで積分したものであり、不稼働密度$q(t)$の車両寿命間での平均$\bar{q}$を意味します。

それぞれの関数の意味は、ISO 14289の信頼性各種関数の定義というブログ記事に記載しています。


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

posted by sakurai on December 25, 2020 #341

タイトルは論文と同じですが、Probabilistic Metric for Random Hardware Failuresの文字を赤く強調し、さらにカッコ書きでPMHFの注記を入れています。

図%%.2

論文の題名は、ISO 26262に適合したPMHFの一般式です。一般式の意味は、規格1st editionがSMのみがリペアラブルという特殊なサブシステムが対象だったのに対し、IFもSMもリペアラブルの場合という、冗長を含む一般的なサブシステムが対象であるという意味です。

第1節です。文字通り、PMHFとは何かを説明しています。

図%%.2

PMHFとは、自動車の機能安全設計において重要な目標数値で、おおよそシステム全体の故障率と言えます。車両サブシステムの設計者は、サブシステムの安全レベルに従った数値以下に減らさなければなりません。

図はヘッドライトにASIL-Aが、エンジン制御にASIL-Dが割り当てられている場合です。ヘッドライトは特に数値目標無し、エンジン制御はPMHFは10 FITで設計する必要があります。

PMHFの規格上の定義は、"車両寿命における単位時間当たりの平均(故障)確率"です。しかしながら、規格には数学的な定義がありません。

PMHF式は2011年発行の規格である1st editionから、2018年発行の2nd editionに改訂されました。図示するように、パターン3及び4の場合が追加されています。パターン1及び2が、SM1がリペアラブルなのに対して、パターン3及び4はIFがリペアラブルな場合です。IFがリペアラブルな場合は、SM1が代替しなければ直ちにVSGとなるため、実際には冗長構成となります。つまり、弊社のPMHF第1論文で2017年に指摘したとおり、1st editionで対応していない冗長サブシステムに対して、規格が2nd editionで対応したものと受け取ることができます。

しかしながら、その対応には問題がありました。その問題は、記事RAMS 2020ポスター解説 (5)により説明します。


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


ページ: