(57)【特許請求の範囲】
【請求項１】
ＥＣＵプロセスと故障素子を含む回路プロセスからなるシミュレーション部と、
予め設定された故障条件に基づいてシミュレーション部に故障注入指令を送るシミュレーション制御部と、
前記シミュレーション制御部からの故障注入指令に基づいて、前記ＥＣＵプロセスへのデータ送受信の有無を切り替えるデータ管理部と、
を備え、
前記データ管理部は、
真値及び検出値を保持し、
前記シミュレーション制御部からの故障注入指令がない場合には、前記ＥＣＵプロセスにより検出値に基づき算出される推定電流値を真値で上書きし、
前記シミュレーション制御部からの故障注入指令がある場合には、前記推定電流値を真値で上書きしない
ことを特徴とする、故障シミュレーション装置。
【請求項２】
ＥＣＵプロセスと故障素子を含む回路プロセスからなるシミュレーション部と、
予め設定された故障条件に基づいてシミュレーション部に故障注入指令を送るシミュレーション制御部と、
前記シミュレーション制御部からの故障注入指令に基づいて、前記ＥＣＵプロセスへのデータ送受信の有無を切り替えるデータ管理部と、
を備え、
前記データ管理部は、
真値及び検出値を保持し、
前記シミュレーション制御部からの故障注入指令がない場合には、前記ＥＣＵプロセス内のＡ／Ｄ変換器から取り込み可能なように、真値をスケーリングした信号を生成して前記Ａ／Ｄ変換器に送信し、
前記シミュレーション制御部からの故障注入指令がある場合には、電流モニタ回路プロセスで計算される検出値を前記Ａ／Ｄ変換器に送信して、
前記ＥＣＵプロセスへのデータ送信を故障注入前後で切り替える
ことを特徴とする、故障シミュレーション装置。
【請求項３】
前記データ管理部は、
真値と検出値の差分からシミュレーション誤差量を算出してモニタへ出力し、
誤差が一定量を超えた場合にアラートを出力する
ことを特徴とする、請求項２に記載の故障シミュレーション装置。
【請求項４】
前記シミュレーション制御部は、
車両の挙動と対応付けられた故障素子が所定の故障条件を満たした場合に、前記故障注入指令を前記シミュレーション部に送る
ことを特徴とする、請求項１〜３のいずれか１項に記載の故障シミュレーション装置。
【請求項５】
前記シミュレーション部は、
制御プログラムに基づいてＰＷＭ信号を生成するＥＣＵプロセスと、
前記ＰＷＭ信号からモータの駆動信号を生成するインバータプロセスと、
前記モータのトルクや回転速度及び駆動電流を算出するモータプロセスと、
前記モータの駆動電流を検出する電流モニタ回路プロセスと、
を有し、
前記ＥＣＵプロセスが前記電流モニタ回路プロセスの検出値をＡ／Ｄ変換器から取り込んで、前記制御プログラム内で相電流を推定し、前記ＰＷＭ信号を生成することで、電動パワーステアリングシステムの動作をシミュレーションする
ことを特徴とする、請求項１〜４のいずれか１項に記載の故障シミュレーション装置。
【請求項６】
ＥＣＵプロセスと故障素子を含む回路プロセスからなるシミュレーション部と、前記シミュレーション部を制御するシミュレーション制御部と、前記ＥＣＵプロセスへのデータ送受信の有無を切り替えるデータ管理部と、を備える故障シミュレーション装置における故障シミュレーション方法であって、
前記データ管理部は、真値及び検出値を保持し、
前記シミュレーション制御部が、予め設定された故障条件に基づいてシミュレーション部に故障注入指令を送るステップと、
前記データ管理部が、前記シミュレーション制御部からの故障注入指令に基づいて、前記ＥＣＵプロセスへのデータ送受信の有無を切り替えるステップと、
を含み、
前記切り替えるステップにおいて、前記データ管理部が、前記シミュレーション制御部からの故障注入指令がない場合には、前記ＥＣＵプロセスにより検出値に基づき算出される推定電流値を真値で上書きし、前記シミュレーション制御部からの故障注入指令がある場合には、前記推定電流値を真値で上書きしない
ことを特徴とする、故障シミュレーション方法。
【請求項７】
ＥＣＵプロセスと故障素子を含む回路プロセスからなるシミュレーション部と、前記シミュレーション部を制御するシミュレーション制御部と、前記ＥＣＵプロセスへのデータ送受信の有無を切り替えるデータ管理部と、を備える故障シミュレーション装置における故障シミュレーション方法であって、
前記データ管理部は、真値及び検出値を保持し、
前記シミュレーション制御部が、予め設定された故障条件に基づいてシミュレーション部に故障注入指令を送るステップと、
前記データ管理部が、前記シミュレーション制御部からの故障注入指令に基づいて、前記ＥＣＵプロセスへのデータ送受信の有無を切り替えるステップと、
を含み、
前記切り替えるステップにおいて、前記データ管理部が、前記シミュレーション制御部からの故障注入指令がない場合には、前記ＥＣＵプロセス内のＡ／Ｄ変換器から取り込み可能なように、真値をスケーリングした信号を生成して前記Ａ／Ｄ変換器に送信し、前記シミュレーション制御部からの故障注入指令がある場合には、電流モニタ回路プロセスで計算される検出値を前記Ａ／Ｄ変換器に送信して、前記ＥＣＵプロセスへのデータ送信を故障注入前後で切り替える
ことを特徴とする、故障シミュレーション方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、故障シミュレーション装置及び故障シミュレーション方法に関し、制御対象への故障影響を評価する故障シミュレーション装置及び故障シミュレーション方法に適用して好適なるものである。
【背景技術】
【０００２】
自動車業界では、電気／電子部品及びこれらに搭載されるマイコンのソフトウェア開発において、機能安全規格ＩＳＯ２６２６２の適用と規格準拠が必須となりつつある。そこで、自動車メーカおよびサプライヤでは、この規格の要件を満たすための開発環境の整備が進められている。
【０００３】
例えば、ハードウェアとソフトウェア統合とテストの規格ＩＳＯ２６２６２  Ｐａｒｔ４  ８．４．２では、プリント基板に実装される全素子の全故障を対象に、原則実機またはシミュレーションでの検証が要件となっている。実機による故障注入テストでは、ＥＣＵ（Electric Control Unit）が１回で破損するモードや電気的ダメージの蓄積で再現性がなくなるモード等への対応が容易ではない。また、１０００項目を超えるような実験となるため、工数・期間・コストに与える影響は少なくない。このような状況において、シミュレーションをベースとしたバーチャルＥＣＵによる故障注入テスト方法が検討されるようになってきている。
【０００４】
例えば特許文献１には、電子部品の開放および短絡故障を対象として、シミュレーションによる故障解析の方法（Method for Fault Analysis Using Simulation）が開示されている。特許文献１のシミュレーション手法では、直列または並列に可変抵抗器を接続することにより、故障したＥＣＵ回路のモデルを作成する。そして、故障ごとに回路トポロジーを変更し、故障したＥＣＵ回路のシミュレーションを実行する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】米国特許出願公開第２００６／００４１４１７号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記特許文献１に記載の故障シミュレーション方法では、センサ情報のフィードバックがない開ループの回路シミュレーションにおいては、一定の誤差範囲内で故障影響を再現することができる。しかし、閉ループの制御システムにおいては、時間経過に応じて、センサ情報のフィードバックの誤差が累積してしまう問題が知られている。特に、自動車の走行シミュレーションでは数秒から数十秒といった時間単位で評価する必要があり、電子回路にとって膨大な実行ステップ（数億ステップ）が必要となるため、誤差の累積がシステム誤動作にまで至ることもある。このため、故障注入の条件が成立する前に誤フェールしてしまい、故障時のシステム動作を検証できないという問題があった。
【０００７】
本発明は以上の点を考慮してなされたもので、制御系の閉ループシステムを対象とした長時間のシミュレーションにおいて、誤差累積を排除して素子故障時のシステム動作を評価することが可能な故障シミュレーション装置及び故障シミュレーション方法を提案しようとするものである。
【課題を解決するための手段】
【０００８】
かかる課題を解決するために本発明においては、ＥＣＵプロセスと故障素子を含む回路プロセスからなるシミュレーション部と、予め設定された故障条件に基づいてシミュレーション部に故障注入指令を送るシミュレーション制御部と、前記シミュレーション制御部からの故障注入指令に基づいて、前記ＥＣＵプロセスへのデータ送受信の有無を切り替えるデータ管理部と、備えることを特徴とする、故障シミュレーション装置が提供される。
【０００９】
かかる課題を解決するために本発明においては、ＥＣＵプロセスと故障素子を含む回路プロセスからなるシミュレーション部と、前記シミュレーション部を制御するシミュレーション制御部と、前記ＥＣＵプロセスへのデータ送受信の有無を切り替えるデータ管理部と、を備える故障シミュレーション装置における故障シミュレーション方法であって、前記シミュレーション制御部が、予め設定された故障条件に基づいてシミュレーション部に故障注入指令を送るステップと、前記データ管理部が、前記シミュレーション制御部からの故障注入指令に基づいて、前記ＥＣＵプロセスへのデータ送受信の有無を切り替えるステップと、を含むことを特徴とする、故障シミュレーション方法が提供される。
【発明の効果】
【００１０】
本発明によれば、制御系の閉ループシステムを対象とした長時間のシミュレーションにおいて、誤差累積を排除して素子故障時のシステム動作を評価できる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第１の実施形態に係る故障シミュレーションシステムの構成を示すブロック図である。
【図２】同実施形態にかかるデータ管理部の設定を行うユーザーインターフェースの一例である。
【図３】同実施形態にかかる故障注入に用いる素子の作成例を示す概念図である。
【図４】同実施形態にかかる故障注入条件の一例を示す図表である。
【図５】同実施形態にかかる故障シミュレーション処理を示すフローチャートの一例である。
【図６】同実施形態にかかるデータ管理部におけるデータの流れを示すフローチャートの一例である。
【図７】本発明の第２の実施形態に係るデータ管理部におけるデータの流れを示すフローチャートの一例である。
【図８】同実施形態にかかるシミュレーション誤差をスクリーン画面の表示例である。
【発明を実施するための形態】
【００１２】
以下図面について、本発明の一実施の形態を詳述する。
【００１３】
（１）第１の実施の形態
図１は、本実施の形態にかかる故障シミュレーションシステムの構成を示すブロック図である。以下では、車載電子制御ユニット（以下、ＥＣＵ：Electric Control Unit）を構成する電子部品に開放・短絡・ドリフト等の電気的故障を注入し、制御対象である車両プラントへの故障影響を評価するシミュレーション方法に本発明を適用するが、かかる例に限定されず、車両プラント以外の制御対象にも適用可能である。
【００１４】
図１に示すように、故障シミュレーションシステムは、主に、主記憶部１００、ＣＰＵ１１５、外部記憶装置１１６及び入出力装置１１８などから構成される。
【００１５】
入出力装置１１８は、シミュレーション条件の入力やシミュレーション結果のスクリーン出力を行う。外部記憶装置１１６は、入出力装置１１８から入力される故障条件１１７を格納する。ＣＰＵ１１５は、シミュレーションに必要な演算を実行する。
【００１６】
主記憶部１００には、シミュレーション部１０１、シミュレーション制御部１１４及びデータ管理部１１３が記憶されている。
【００１７】
シミュレーション部１０１は、ＥＣＵ（Engine Control Unit）プロセス１０２と、インバータプロセス１０７と、モータプロセス１０９と、電流モニタ回路プロセス１１０と、シミュレーション制御部１１４とを含む。
【００１８】
ＥＣＵプロセス１０２は、制御プログラム１０４を実行して、インバータを駆動するＰＷＭ（Pulse Width Modulation）信号を生成する。インバータプロセス１０７は、ＰＷＭ信号に基づいてＦＥＴ（Field Effect Transistor：電界効果トランジスタ）をオン・オフして、モータを駆動する電圧信号を生成する。モータプロセス１０９は、駆動信号に基づいて、発生トルクや回転角度を計算する。電流モニタ回路プロセス１１０は、モータ駆動電流をシャント抵抗から検出してスケーリングする。電流モニタ回路プロセス１１０には、開放／短絡故障を注入できる故障素子１１２が内蔵されている。これらの各プロセスにより、電動パワーステアリングシステム（ＥＰＳ）の故障注入シミュレーションを実行することができる。シミュレーション制御部１１４は、シミュレーション部の一連の処理を制御する。
【００１９】
図２は、データ格納部の設定をおこなうユーザーインターフェースの例である。ユーザは、まず素子間の配線が規定された回路図２００を入力する。そして、故障注入トリガ信号及びデータの置き換えをおこなう信号を定義したテーブル２０１を作成する。ユーザは、テーブル２０１を作成した後、ＳＥＴ２０２を選択する。
【００２０】
テーブル２０１において、故障注入トリガ信号（Ｔｙｐｅ：Ｔｒｉｇｇｅｒ）を回路図上に存在するＦＬＴ−ＴＲＧと設定し、データを置き換える信号（Ｔｙｐｅ：Ｒｅｐｌａｃｅ）とし、３相電流推定値（Ｉ−Ｕ／Ｉ−Ｖ／Ｉ−Ｗ）を設定し、置き換え後の値は、３相電流の真値（Ｉｄｅａｌ−ＩＵ／Ｉｄｅａｌ−ＩＶ／Ｉｄｅａｌ−ＩＷ）としている。
【００２１】
なお、３相電流推定値は、ＥＣＵプロセス１０２内の制御プログラム１０４で計算される値である。このため、制御プログラム１０４の外部からアクセス可能な環境を構築しておく必要がある。
【００２２】
テーブル２０１の作成後、ユーザがＲＵＮ２０３を選択することにより、シミュレーションを開始することができる。
【００２３】
図３は、故障注入に用いる素子の作成例である。故障注入用の素子モデルは、ハードウェア記述言語によって動作を定義する。ここではＶＨＤＬ−ＡＭＳ言語での記述例３００を示す。
【００２４】
図３に示す故障注入に用いる素子は、外部の制御入力（Ｓ＿ＩＮ）により抵抗値を変数Ｒｏｎと変数Ｒｏｆｆとに切り替えることができるように記述されている。この素子を通常の回路素子に直列に接続することで開放故障用の素子モデル３０１、また、並列に接続することで短絡故障用の素子モデル３０２を作成することができる。このとき、変数Ｒｏｎを０Ω付近の微小値、変数Ｒｏｆｆを数ＭΩと大きな値に設定しておく必要がある。なお、開放故障用の素子モデルはＳ＿ＩＮ＝ＯＦＦのとき、短絡故障用の素子モデルはＳ＿ＩＮ＝ＯＮのときに、それぞれ故障の発生を模擬できる。
【００２５】
図４に、故障注入条件の一例である車両挙動条件４００を示す。図４に示すように、故障素子４０１は、故障注入に用いる素子であり、例えば、Ｒ（抵抗）、Ｌ（コイル）、Ｃ（コンデンサ）などを例示できる。これらの故障素子が、対応する車両挙動条件である、速度４０２、ヨーレート４０３及びブレーキ４０４の各条件を満たす場合に、故障素子に故障を注入して故障を発生させる。
【００２６】
図４では、車両の速度４０Km/h、ヨーレート１０deg/s、ブレーキ0.2Gに達した場合に、故障素子R001に故障が注入される。また、車両の速度１０Km/h、ヨーレート５deg/s、ブレーキ0.1Gに達した場合に、故障素子L001に故障が注入される。また、車両の速度４０Km/h、ヨーレート１deg/s、ブレーキ0.3Gに達した場合に、故障素子C200に故障が注入される。
【００２７】
図４では、故障注入条件を車両の挙動としたが、かかる例に限定されず、ステアリング、アクセル、ブレーキなどのドライバ操作が所定の挙動に達した場合や、他社との距離や相対速度など周辺環境が所定の条件となった場合に故障を注入してもよい。
【００２８】
図５は、故障シミュレーション処理を示すフローチャートの一例である。上記したように、ユーザによりシミュレーション開始を指示するＲＵＮ２０３が選択されると、シミュレーション制御部１１４によりシミュレーション制御が実施される。
【００２９】
図５に示すように、シミュレーション制御部１１４は、まず、ユーザにより設定された故障条件を読み込み（Ｓ１０１）、シミュレーションを開始させる（Ｓ１０２）。
【００３０】
シミュレーション制御部１１４は、シミュレーション部１０１へ１ステップの実行指令を送信する（Ｓ１０３）。
【００３１】
シミュレーション部１０１は、シミュレーション制御部１１４から実行指令を受信し（Ｓ１０７）、１ステップのシミュレーションを実行して（Ｓ１０８）、実行結果をシミュレーション制御部１１４へ返信する（Ｓ１０９）。
【００３２】
シミュレーション制御部１１４は、シミュレーション部１０１から実行結果を受信し（Ｓ１０４）、ユーザにより設定された故障条件と比較して（Ｓ１０５）、故障条件の成立可否を判定する（Ｓ１０６）。
【００３３】
ステップＳ１０６において、故障条件が成立したと判定されるまで、ステップＳ１０３〜ステップＳ１０５を繰り返し、故障条件が成立した判定された場合には、ステップＳ１１０以降の故障注入処理を実行する。
【００３４】
故障注入処理において、シミュレーション制御部１１４は、故障情報を故障注入素子に設定し（Ｓ１１０）、同時に、データ管理部１１３へデータ送信有無の切り替え指令を送信する（Ｓ１１１）。
【００３５】
そして、データ管理部１１３は、ステップＳ１１１で送信された切り替え指令を受信し（Ｓ１１５）、データ送信を停止し（Ｓ１１６）、切り替え処理の完了通知をシミュレーション制御部１１４へ送り返す（Ｓ１１７）。
【００３６】
シミュレーション制御部１１４は、データ送信停止の完了を確認すると、以降の全ステップのシミュレーションを実行する（Ｓ１１２）。そして、シミュレーション制御部１１４は、シミュレーション終了後（Ｓ１１３）、シミュレーション結果をスクリーンに出力して（Ｓ１１４）、一連の故障シミュレーション処理を終了する。
【００３７】
図６は、本実施の形態におけるデータ管理部１１３におけるデータの流れを示すフローチャートの一例である。
【００３８】
図６に示すように、シミュレーション部１０１がシミュレーションを開始すると、まず、ＥＣＵプロセス１０２によって、制御プログラム１０４に基づいたＰＷＭ信号を生成する（Ｓ２０１）。
【００３９】
次に、シミュレーション部１０１は、インバータプロセス１０７によって、ステップＳ２０１で生成されたＰＷＭ信号から、モータを駆動するモータ駆動信号を生成する（Ｓ２０２）。ステップＳ２０２で、シミュレーション部１０１は、データ管理部１１３に３相電流の真値データを送信する。
【００４０】
そして、シミュレーション部１０１は、モータプロセス１０９によって、ステップＳ２０２で生成されたモータ駆動信号から発生トルクや回転角などのモータ動作を計算し（Ｓ２０３）、電流モニタ回路プロセス１１０によって、モータからシャント抵抗に流れる電流を検出する（Ｓ２０４）。
【００４１】
そして、ＥＣＵプロセス１０２が、電流モニタ回路プロセス１１０で検出した電流値をＡ／Ｄ変換器で取り込み（Ｓ２０５）、制御プログラム１０４の実行により３相電流値の推定処理を行う（Ｓ２０６）。
【００４２】
ここで、データ管理部１１３は、インバータプロセスによって生成された３相電流の真値データを受信すると（Ｓ２０８）、故障注入トリガの有無を判定する（Ｓ２０９）。
【００４３】
ステップＳ２０９において、故障注入トリガがないと判定された場合には、データ管理部１１３は、ＥＣＵプロセス１０２へ真値データを送信して上書きする（Ｓ２１０）。一方、故障注入トリガがあると判定された場合には、データ管理部１１３は、真値データを送信せずに処理を終了する。そして、シミュレーション部１０１は、全体のシミュレーションが終了したかを判定し（Ｓ２０７）、シミュレーションが終了するまで上記の一連の処理を実行する。
【００４４】
本実施の形態によれば、センサ情報のフィードバックとそれに基づくアクチュエーションといった相互作用を含む制御系の閉ループシステムを対象とした長時間のシミュレーションにおいて、誤差累積を排除して素子故障時のシステム動作を評価できる。
【００４５】
（２）第２の実施の形態
第１の実施の形態では、データ管理部１１３は、故障注入トリガがあるまで制御プログラム１０４内の３相電流推定値にアクセスし、真値を上書きする方法をとっていた。ここで、真値からは誤差のない理論検出値を計算することができるため、制御プログラム１０４の３相電流推定値を上書きするのではなく、Ａ／Ｄ変換器１０６で取り込むデータを理論検出値に置換えることで誤差累積を防ぐことも可能である。この場合、理論検出値は電流モニタ回路の検出値と直接比較できる。このため、データ管理部１１３は、シミュレーション実行中に、随時、両者の差分を計算することで、瞬間的な誤差量や累積誤差量を計算することができる。
【００４６】
図７は、本実施の形態におけるデータ管理部１１３のデータの流れを示すフローチャートの一例である。図７を参照し、第１の実施の形態から変更されるステップについて特に詳細に説明する。
【００４７】
図７に示すように、シミュレーション部１０１がシミュレーションを開始すると、まず、ＥＣＵプロセス１０２によって、制御プログラム１０４に基づいたＰＷＭ信号を生成する（Ｓ３０１）。
【００４８】
次に、シミュレーション部１０１は、インバータプロセス１０７によって、ステップＳ２０１で生成されたＰＷＭ信号から、モータを駆動するモータ駆動信号を生成する（Ｓ３０２）。ステップＳ３０２で、シミュレーション部１０１は、データ管理部１１３に３相電流の真値データを送信する。
【００４９】
そして、シミュレーション部１０１は、モータプロセス１０９によって、ステップＳ２０２で生成されたモータ駆動信号から発生トルクや回転角などのモータ動作を計算し（Ｓ３０３）、電流モニタ回路プロセス１１０によって、モータからシャント抵抗に流れる電流を検出する（Ｓ３０４）。
【００５０】
そして、ＥＣＵプロセス１０２が、電流モニタ回路プロセス１１０で検出した電流値をＡ／Ｄ変換器で取り込み（Ｓ３０５）、制御プログラム１０４の実行により３相電流値の推定処理を行う（Ｓ３０６）。
【００５１】
ここで、データ管理部１１３は、インバータプロセスによって生成された３相電流の真値データを受信して、３相電流の真値から理論検出値を計算する（Ｓ３０８）。
【００５２】
また、電流モニタ回路プロセス１１０は、検出値をＥＣＵプロセス１０２へ直接送信せず、データ管理部１１３へ送信する（Ｓ３０９）。
【００５３】
そして、データ管理部１１３からＥＣＵプロセス１０２のＡ／Ｄ変換器１０６へ電流値データを送信する（Ｓ３１０）。このとき、故障注入指令がない場合（故障トリガなし）は理論検出値を送信し、故障注入指令があった場合（故障トリガあり）は電流モニタ回路の検出値を送信する。
【００５４】
そして、シミュレーション部１０１は、全体のシミュレーションが終了したかを判定し（Ｓ３０７）、シミュレーションが終了するまで上記の一連の処理を実行する。
【００５５】
図８に、図７に示す処理を実行することにより得られる誤差情報のディスプレイ表示例を示す。本実施の形態では、誤差のない理論検出値と、回路の誤差を含む検出値の両方についてシミュレーションを実行することができる。このため、ユーザにより例えばモータトルク等の所望のパラメータ７０２が選択されると、その瞬間誤差量７０３と累積誤差量７０４、また、事前に設定した許容誤差量７０５を示すグラフ７０１を表示する。ユーザは、グラフ７０１により、誤差低減の効果を容易に確認することができる。
【符号の説明】
【００５６】
１００    主記憶部
１０１    シミュレーション部
１０２    ＥＣＵプロセス
１０４    制御プログラム
１０６    Ａ／Ｄ変換器
１０７    インバータプロセス
１０９    モータプロセス
１１０    電流モニタ回路プロセス
１１２    故障素子
１１３    データ管理部
１１４    シミュレーション制御部
１１６    外部記憶装置
１１７    故障条件
１１８    入出力装置
【図１】
0006449723.tif 000002
【図２】
0006449723.tif 000003
【図３】
0006449723.tif 000004
【図４】
0006449723.tif 000005
【図５】
0006449723.tif 000006
【図６】
0006449723.tif 000007
【図７】
0006449723.tif 000008
【図８】
0006449723.tif 000009