Posts Tagged with "ISO 26262"

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

Fault treeの自動生成

posted by sakurai on December 18, 2024 #911

はじめに

過去記事の再トライアルとなります。なぜ再トライアルかというと、4年が経ちSAPHIREの版数も上がったので、ファイルに互換性が無くなったようです。そのためFault Treeを外部から生成する方法を本記事で確立します。

過去記事で「MAR-D(各種データ)の一括インポートにより、完全なFTが構成できるようです。」と書きましたが、これは変わりません。また対象FTも同一のもの(図911.1)とします。

図%%.1
図911.1 ターゲットのFT

図911.1のFTをテキストファイルで入力するためには

  • .BED --- Basic Eventの説明等の記述
  • .BEI --- Basic Eventの情報、故障率やミッション時間等
  • .FTD --- Fault Treeの説明等の記述
  • .FTL --- 木の構造
  • .GTD --- Top Event、中間ゲートの説明等の記述
  • .MARD --- 上記5種のリストを記述

の6種のファイルが必要です。図911.2~911.6に示すファイルを用意し、そのリストを図911.7のMARDファイルとしてMARDをloadすると、図911.1のFTが生成されました。以下に一つずつ文法例を解説します。先頭に*がある行はコメント行を表します。

BED

図911.2のBEDは基事象の定義で、3種類の基事象の名前と説明を記述します。

*Saphire 8.2.9
TEST =
* Name , Descriptions , Project
BE01 , Failure of 01 , TEST
BE02 , Failure of 02 , TEST
BE03 , Failure of 03 , TEST
TOP , PVSG of top , TEST

図911.2 ターゲットFT用BED

BEI

図911.3のBEIは基事象の故障モデル、故障率、ミッション時間を記述します。赤字は故障率、青字はミッション時間です。

*Saphire 8.2.9
TEST =
* Name ,FdT,UdC ,UdT, UdValue, Prob, Lambda, Tau, Mission, Init,PF, UdValue2, Calc. Prob, Freq, Analysis Type , Phase Type , Project
BE01 , 3, , , 0.000E+000, 0.000E+000, 1.234E-009, 0.000E+000, 1.000E+005, , , 0.000E+000, 1.234E-004, , RANDOM , CD , TEST
BE02 , 3, , , 0.000E+000, 0.000E+000, 2.345E-009, 0.000E+000, 1.000E+005, , , 0.000E+000, 2.345E-004, , RANDOM , CD , TEST
BE03 , 3, , , 0.000E+000, 0.000E+000, 3.457E-009, 0.000E+000, 1.000E+005, , , 0.000E+000, 3.456E-004, , RANDOM , CD , TEST
TOP , 1, , , 0.000E+000, 1.000E+000, 0.000E+000, 0.000E+000, 0.000E+000, , , 0.000E+000, 1.000E+000, , RANDOM , CD , TEST

図911.3 ターゲットFT用BEI

ここで、図911.3中のFdtは、表911.1(一部のみ)により規定される故障計算タイプです。

表911.1
故障計算タイプ記号 故障計算タイプ説明 数値説明
1 確率 DC等の確率
3 指数分布($1-e^{^-\lambda t}$) 故障率$\lambda$、ミッション時間$T_\text{lifetime}$

図911.4はFT全体の定義を示すFTDファイルで、FTの名前と説明を記述します。

TEST =
* Name , Description, SubTree, Alternate, Project
TOP , PVSG of top , , , TEST

図911.4 ターゲットFT用FTD

FTL

図911.5にFTの木構造であるFTLを記述します。

TEST, TOP =
TOP OR TOP0 BE03
TOP0 AND BE01 BE02
^EOS

図911.5 ターゲットFT用FTL

GTD

図911.6のGTDにゲートの名前と説明を記述します。

TEST=
* Name , Description, Project
TOP, PVSG of top, ,TEST
TOP0, DPF of 01 and 02, ,TEST
TOP01, DPF of 01 and 02, ,TEST

図911.6 ターゲットFT用GTD

MARD

最後のMARDを図911.7に示します。前述のように、TESTフォルダのSubsフォルダに各種ファイルをまとめ、一括ロードするためのリストです。

TEST_Subs\TEST.BED
TEST_Subs\TEST.BEI
TEST_Subs\TEST.FTD
TEST_Subs\TEST.FTL
TEST_Subs\TEST.GTD

図911.7 ターゲットFT用MARD

おわりに

ツールの入力としてはDescriptionに日本語が入るようになって便利にはなりました。一方でimportにおいては日本語が化けるため、自動生成の場合、Descriptionに日本語が使用できません。4年前に日本語入力を依頼した時点では、日本語の入力の改修に対してネガティブな返答でしたが、機会があれば要求したいと思います。


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

SAPHIREの入手

posted by sakurai on December 11, 2024 #910

以下はSAPHIREユーザーズグループのページです。

図%%.1
図910.1 SAPHIREユーザーズグループ

以下にFAQからの抜粋を示します。ユーザ登録やライセンス費用支払いに関するものです。

Q: SAPHIREソフトウェアのコピーを入手するにはどうすればよいですか?
A:

  • SAPHIREの最新バージョンは通常、SAPHIREユーザーグループを通じて配布されます。
  • SAPHIREユーザーグループへの参加承認を受ける前に、記入・署名済みの非開示契約(NDA)を米国原子力規制委員会(USNRC)に送付し、承認を得る必要があります。
  • NRCの公開ウェブサイトにあるObtaining NRC CodesページからSAPHIRE NDAフォームのコピーを入手してください。
  • NRCにNDCを提出すると、INLがSAPHIREユーザーグループのメンバーシップを確立します。メンバーにはSAPHIREユーザーグループのウェブサイトへのアクセスが許可され、SAPHIRE 8の最新実行ファイルをダウンロードしたり、カスタマーサポートを受けることができます。カスタマーサポートおよびSAPHIREの最新リリースへのアクセスは、会員期間中継続されます。

Q: 企業が1人のメンバーに支払うが、2人または3人がソフトウェアを使用することは可能でしょうか?
A:

  • はい。会員はカスタマーサポートの費用を負担しますので、1つのウェブサイトへのアクセスと1人へのオンコールサポートのみとなります。一部の組織(企業、大学など)では、カスタマーサポートに関する質問をすべて1人の担当者に集約することを選択しています。
  • SAPHIREの利用人数は、USNRCとのNDAによって管理されており、SAPHIREユーザーグループの会員数によって管理されているわけではありません。

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

FTAのtree logic (6)

posted by sakurai on December 10, 2024 #909

以下に

  • 原始の木
  • MCS後の木
  • MCS及び因数分解した木

の3つの木のレビューロジック図を示します。原始の木は過去記事に詳細が書かれています。

図29.1
図29.1 3つの木のレビューロジック
  • 原始の木 --- これは元々のPart4から作成した木であり、制御のフロー(RBD)を出力から入力まで辿って作成した木です。
  • MCS後の木 --- これは原始の木に対してSAPHIREでMCSをとったものです。OR-ANDの2段論理に圧縮されていることがわかります。積項数は当初110でしたが、それを65に枝刈りしました。
  • MCS及び因数分解した木 --- 原始の木のMCSを取ってから3次以上のフォールトを枝刈りし、さらに因数分解を行ったものです。これによりAND-ORの形になるように(なるべくANDを上に上げるように)したところ、メインマイコン各部のフォールトとサブマイコン各部のフォールトの組み合わせということがはっきりし、その他PCB上の共通の電源部は一点故障点として表れています。

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

FTAのtree logic (5)

posted by sakurai on December 9, 2024 #908

図903.1のTreeをFault Tree Logic構文で記述したものが以下の表です。

Fault TreeGateTypeInputs
ESL*ESLORGT1, EV2
GT1ANDC1, C2, C3
C1ORTRUE
C2ORGT12, EV166
GT12ORGT131, GT122, GT130
GT131ORGT31, GT32
GT31ANDC16, GT35, GT132
C16ORBE001_23, BE012
BE001_23ORGT121, GT1201, BE001_01, BE001_03, BE001_02, BE001_05
GT121ORBE001_09, BE028
GT1201ORBE027, BE025
GT35ORBE001_20, GT93
BE001_20ORGT121, GT1201, BE001_01, BE001_03, BE001_02, BE001_05
GT93ORC21, GT94
C21OREV162, BE008
EV162ORFALSE
GT94ORGT95, BE001_16
GT95ORGT97, BE011G, BE010_02
GT97ORBE002_18, BE002_16
BE002_18ORGT118, GT119, BE002_01, BE002_03, BE002_02, BE002_05
GT118ORBE025, BE030
GT119ORBE002_09, BE031
BE002_16ORGT118, GT119, BE002_01, BE002_03, BE002_02, BE002_05
BE011GOREV164, BE011
EV164ORFALSE
BE001_16ORGT121, GT1201, BE001_01, BE001_03, BE001_02, BE001_05
GT132ORGT117, GT123
GT117ORGT110, GT124, GT125, GT126
GT110ANDEV188, EV72
EV188ORFALSE
EV72ORFALSE
GT124ORBE005_02, BE005_01
BE005_02ORFALSE
GT125ORBE001_18_01, BE001_18_02, BE001_18_03
BE001_18_01ORGT121, GT1201, BE001_01, BE001_03, BE001_02, BE001_11
BE001_18_02ORFALSE
BE001_18_03ORFALSE
GT126ORBE005_02, BE005_03
GT123ORBE001_22_01, BE001_22_02, BE001_22_03
BE001_22_01ORGT121, GT1201, BE001_01, BE001_03, BE001_02
BE001_22_02ORFALSE
BE001_22_03ORFALSE
GT32ANDC16, GT37, GT38, GT133
GT37ORGT101, BE009
GT101ORGT121, GT1201, BE001_01, BE001_03, BE001_02, BE001_05
GT38ORBE001_19, GT103, GT104
BE001_19ORGT121, GT1201, BE001_01, BE001_03, BE001_02, BE001_05
GT103OREV182, BE006
EV182ORFALSE
GT104OREV183, BE007
EV183ORFALSE
GT133ORGT127, GT128
GT127ORBE013_02, BE013_01
BE013_02ORFALSE
GT128ORBE001_24_01, BE001_24_02, BE001_24_03
BE001_24_01ORGT121, GT1201, BE001_01, BE001_03, BE001_02, BE001_05
BE001_24_02ORFALSE
BE001_24_03ORFALSE
GT122ORBE001_25_01, BE001_25_02, BE001_25_03
BE001_25_01ORGT121, GT1201, BE001_01, BE001_03, BE001_02, BE001_05
BE001_25_02ORFALSE
BE001_25_03ORFALSE
GT130ORBE014_02, BE014_01
BE014_02ORFALSE
EV166ORFALSE
C3ORGT19, EV3, EV185
GT19ORGT107, GT134, GT135
GT107ANDC11, C13, C14
C11ORGT87, BE023
GT87ORGT118, GT119, BE002_01, BE002_03, BE002_02, BE002_05
C13ORBE002_18_01, GT91
BE002_18_01ORGT118, GT119, BE002_01, BE002_03, BE002_02, BE002_05
GT91ANDBE011G, BE189
C14ORGT111, GT136
GT111ANDGT109, GT113
GT109ORGT110, GT137, GT138, GT139
GT137ORBE002_17_01, BE002_17_02, BE002_17_03
BE002_17_01ORGT118, GT119, BE002_01, BE002_03, BE002_02, BE002_15
BE002_17_02ORFALSE
BE002_17_03ORFALSE
GT138ORBE005_02, BE005_01
GT139ORBE005_02, BE005_03
GT113ORGT132, BE002_16_01, BE001_16_01, BE010_01
BE002_16_01ORGT118, GT119, BE002_01, BE002_03, BE002_02, BE002_15
BE001_16_01ORGT121, GT1201, BE001_01, BE001_03, BE001_02, BE001_11
GT136ORBE002_20_01, BE002_20_02, BE002_20_03
BE002_20_01ORGT118, GT119, BE002_01, BE002_03, BE002_02
BE002_20_02ORFALSE
BE002_20_03ORFALSE
GT134ORBE015_02, BE015_01
BE015_02ORFALSE
GT135ORBE002_21_01, BE002_21_02, BE002_21_3
BE002_21_01ORGT118, GT119, BE002_01, BE002_03, BE002_02, BE002_15
BE002_21_02ORFALSE
BE002_21_3ORFALSE
EV3ORFALSE
EV185ORFALSE
EV2ORFALSE



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

FTAのtree logic (4)

posted by sakurai on December 6, 2024 #907

この65項の積項から成る論理式が簡単化できるか、ChatGPTに聞いてみます。


以下は与えられた論理式(縦方向がOR、行中のコンマでAND)の因数分解結果です。

(略)

集合Aを $$ A := \{BE001\_01, BE001\_02, BE001\_03, BE001\_05, BE001\_09, BE014\_01, BE027, BE028\} $$ とし、集合Bを $$ B := \{BE002\_01, BE002\_02, BE002\_03, BE002\_09, BE002\_15, BE015\_01, BE030, BE031\} $$ とすると、上記64行はすべて$(a \land b)$で$a \in A, b \in B$の組み合わせによる全ての直積を網羅しています(8×8=64)。

従って、64行分は以下のように因数分解できます。

$$ \bigvee_{a \in A}\bigvee_{b \in B}(a \land b) \\ = (BE001\_01 \lor BE001\_02 \lor BE001\_03 \lor BE001\_05 \lor BE001\_09 \lor BE014\_01 \lor BE027 \lor BE028) \\ \land (BE002\_01 \lor BE002\_02 \lor BE002\_03 \lor BE002\_09 \lor BE002\_15 \lor BE015\_01 \lor BE030 \lor BE031) $$

さらに、元の式にはこれら64個のAND項に加えて1行目に単独のリテラル$BE025$で存在するので、全式は次のようになります。

$$ BE025\\ \bigl((BE001\_01 \lor BE001\_02 \lor BE001\_03 \lor BE001\_05 \lor BE001\_09 \lor BE014\_01 \lor BE027 \lor BE028)\\ \land (BE002\_01 \lor BE002\_02 \lor BE002\_03 \lor BE002\_09 \lor BE002\_15 \lor BE015\_01 \lor BE030 \lor BE031)\bigr) $$

これが要求された因数分解後の論理式です。


この論理式をFT図にすれば過去記事のとおり、次の図のようになります。

図29.1
図29.1 因数分解後のMCS

BE001はメインマイコンであり、BE001_*はメインマイコン各部のフォールトです。さらに、BE002はサブマイコンであり、BE002_*はサブマイコン各部のフォールトです。

従って、このFTはメインマイコン各部とサブマイコン各部のフォールトがいずれか一個の計2個起きるか、またはPCB上の電源ICがフォールト(BE025)するかのいずれかであり、マイコンとしては冗長構成をとる、安全性の高い回路となっていることがわかります。


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

11月の検索結果

posted by sakurai on December 4, 2024 #906

弊社コンテンツの11月の検索結果です。

表906.1 上昇率上位のページ(前月との比較)
タイトル クリック数
PMHFの意味 +53
レイテントフォールトのご質問 +29
SPFM, LFM, PMHFの計算法の例 +25

表906.2 パフォーマンス上位のページ
タイトル クリック数
機能安全用語集 203
1st Editionと2nd Editionとの相違点 (Part 10) 136
SPFM, LFM, PMHFの計算法の例 99

表906.3 上昇率上位のクエリ
クエリ クリック数
従属故障分析 +10
レイテントフォールトとは +8
ASIL Decomposition +6

表906.4 パフォーマンス上位のクエリ
クエリ クリック数
FTTI 62
レイテントフォールトとは 31
PMHF 23


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

FTAのtree logic (3)

posted by sakurai on December 3, 2024 #905

3項以上の積項をカットします。その理由は3つ以上のフォールトが重なる確率は非常に低いため、規格上は安全フォールトとなっているためです。カットするには図905.1のように、Size <= 2と入力します。

図%%.1
図905.1 スライス入力

すると、積項数は図905.2のように65個となります。頂上事象侵害確率は$6.543\times10^{-5}$で前ページと変わりません。

図%%.2
図905.2 枝刈り後のMCS

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

FTAのtree logic (2)

posted by sakurai on December 2, 2024 #904

前ページのロジックのMCSを取得したものを図904.1に示します。積項数は110個となりました。

図%%.1
図904.1 logic tree

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

FTAのtree logic

posted by sakurai on November 29, 2024 #903

前記事#28のFT図の論理を再構成しました。これはトランスファーゲートを多用したもので、具体的にはメインマイコン系とサブマイコン系の故障木が何回も現れるので、最初の木はそのまま構成し名前を付け、2度目以降は出てきた場合にはその名前の木に飛ばす機能を持つゲートを用います。

図903.1のうち赤上↑がトランスファーゲートで、既に出てきている同じ木であることを意味します。

図%%.1
図903.1 logic tree

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

10月の検索結果

posted by sakurai on November 6, 2024 #888

弊社コンテンツの10月の検索結果です。

表888.1 上昇率上位のページ(前月との比較)
タイトル クリック数
故障分類 +74
SPFM, LFM, PMHFの計算法の例 +72
レイテントフォールトの奥深さ +39

表888.2 パフォーマンス上位のページ
タイトル クリック数
1st Editionと2nd Editionとの相違点 (Part 10) 226
機能安全用語集 199
ASILデコンポジション 115

表888.3 上昇率上位のクエリ
クエリ クリック数
FTTI +27
レイテント +11
FTTI FHTI +9

表888.4 パフォーマンス上位のクエリ
クエリ クリック数
FTTI 107
PMHF 31
SPFM 23


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


ページ: