(57)【要約】【課題】検証結果に問題があるときに、問題の発生原因を効率的に特定し易くする。【解決手段】シミュレーション装置は、制御ソフトウェアの動作を、ソフトウェアを用いてシミュレートする第１装置と、制御ソフトウェアの動作を、制御ソフトウェアが実装されたハードウェアを用いてシミュレートする第２装置と、検査シナリオに従って第１装置で制御ソフトウェアの動作をシミュレートすることで得られる第１検証結果を取得する第１検証結果取得部と、第１検証結果が、予め用意された期待値に対して許容範囲内でない場合に、検査シナリオから第２装置でのシミュレーション用の第２検査シナリオを生成するシナリオ生成部と、第２検査シナリオを第２装置でシミュレートすることで得られる第２検証結果を取得する第２検証結果取得部と、第２検証結果に基づいて、第１装置及び制御ソフトウェアのいずれに問題があるかを判定する判定部とを含む。【選択図】図１
2017138911.tif 000002
【特許請求の範囲】
【請求項１】
制御ソフトウェアの動作を、前記制御ソフトウェアが実装されたハードウェアを用いずにソフトウェアを用いてシミュレートする第１シミュレーション装置と、
前記制御ソフトウェアの動作を、前記制御ソフトウェアが実装されたハードウェアを用いてシミュレートする第２シミュレーション装置と、
検査シナリオに従って前記第１シミュレーション装置で前記制御ソフトウェアの動作をシミュレートすることで得られる第１検証結果を取得する第１検証結果取得部と、
前記第１検証結果が、予め用意された期待値に対して所定の許容範囲内でない場合に、前記検査シナリオから前記第２シミュレーション装置でのシミュレーション用の第２検査シナリオを生成するシナリオ生成部と、
前記第２検査シナリオを前記第２シミュレーション装置でシミュレートすることで得られる第２検証結果を取得する第２検証結果取得部と、
前記第２検証結果に基づいて、前記第１シミュレーション装置の環境及び前記制御ソフトウェアのいずれに問題があるかを判定する判定部とを含む、シミュレーション装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シミュレーション装置に関する。
【背景技術】
【０００２】
仮想ＥＣＵ（Virtual ECU）を構成するＳＩＬＳ（Software In the Loop Simulator）と、HILS（Hardware In the Loop Simulator）とを用いて制御ソフトウェアの検証を行う技術が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開2008-269022号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の特許文献１に記載されるような従来の技術では、ＳＩＬＳによる検証結果に何らかの問題があるときに、ＳＩＬＳ（仮想ＥＣＵの環境）に問題があるのか制御ソフトウェアに問題があるのかを自動的に判別しないため、該問題の発生原因を効率的に特定することが難しい。
【０００５】
そこで、本発明は、検証結果に問題があるときに、問題の発生原因を効率的に特定し易くできるシミュレーション装置の提供を目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明によれば、制御ソフトウェアの動作を、前記制御ソフトウェアが実装されたハードウェアを用いずにソフトウェアを用いてシミュレートする第１シミュレーション装置と、
前記制御ソフトウェアの動作を、前記制御ソフトウェアが実装されたハードウェアを用いてシミュレートする第２シミュレーション装置と、
検査シナリオに従って前記第１シミュレーション装置で前記制御ソフトウェアの動作をシミュレートすることで得られる第１検証結果を取得する第１検証結果取得部と、
前記第１検証結果が、予め用意された期待値に対して所定の許容範囲内でない場合に、前記検査シナリオから前記第２シミュレーション装置でのシミュレーション用の第２検査シナリオを生成するシナリオ生成部と、
前記第２検査シナリオを前記第２シミュレーション装置でシミュレートすることで得られる第２検証結果を取得する第２検証結果取得部と、
前記第２検証結果に基づいて、前記第１シミュレーション装置の環境及び前記制御ソフトウェアのいずれに問題があるかを判定する判定部とを含む、シミュレーション装置が提供される。
【発明の効果】
【０００７】
本発明によれば、検証結果に問題があるときに、問題の発生原因を効率的に特定し易くできるシミュレーション装置が得られる。
【図面の簡単な説明】
【０００８】
【図１】一実施例によるシミュレーション装置１の構成と共に機能ブロックを示す図である。
【図２】シミュレーション装置１の処理の流れとデータの流れを示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、図面を参照して、本発明を実施するための最良の形態の説明を行う。
【００１０】
図１は、一実施例によるシミュレーション装置１の構成と共に機能ブロックを示す図である。図１において、データについては、参照符号４０〜５２が付されたブロックで示されている。
【００１１】
シミュレーション装置１は、第１シミュレーション装置１０と、第２シミュレーション装置２０と、処理装置３０とを含む。
【００１２】
第１シミュレーション装置１０は、制御ソフトウェアの検証を行うSILSである。第１シミュレーション装置１０は、制御ソフトウェアを形成する装置モデルを含む。SILSは、仮想ＥＣＵ（Virtual ECU）を構成する。SILSにより構成される仮想ＥＣＵの環境を「ＶＥＣＵ環境」と称する。
【００１３】
第２シミュレーション装置２０は、HILSを用いて制御ソフトウェアの検証を行うHILSである。HILSは、実装されたECUを用いて検証を行う。
【００１４】
処理装置３０は、コンピューター等により形成される。処理装置３０は、図１に示すように、第１判定部３２と、第２判定部３４と、実機向け検査シナリオ生成部３６とを含む。処理装置３０は、対話型のユーザインターフェースを備える。
【００１５】
図２は、シミュレーション装置１の処理の流れとデータの流れを示すフローチャートである。図２において、実線の矢印は、処理フローであり、点線の矢印はデータフローである。尚、以下の各種処理は、一部についての設計者の動作は、処理装置３０のユーザインターフェースを用いて実現できる。但し、設計者の動作は、処理装置３０等が自動的に実現することもできる。
【００１６】
ステップＳ１では、設計者は、SILSでの検証用の検査シナリオ４０を生成する（点線の矢印８００参照）。
【００１７】
ステップＳ２では、設計者は、検査シナリオに対して、確認ポイントとなる変数及び端子名（例えば制御対象に接続する端子）に対して期待値を付与する（点線の矢印８２０参照）。この際、設計者は、許容する誤差も指定する（点線の矢印８２０参照）。これにより、動作許容設定データ４６（図１参照）が生成される。
【００１８】
ステップＳ３では、設計者は、第１シミュレーション装置１０に検査シナリオ４０を与える（点線の矢印８４参照）。第１シミュレーション装置１０は、ＶＥＣＵ環境下で（点線の矢印８６参照）、検査シナリオ４０に従い制御ソフトウェア（制御ＳＷ）８０を動作させる（点線の矢印８６参照）。この結果、シミュレーション結果４２（図１参照）が得られる。
【００１９】
ステップＳ４では、設計者は、ステップＳ３で得られるシミュレーション結果４２及び動作許容設定データ４６（図１参照）を処理装置３０に与え、処理装置３０の第１判定部３２（図１）は、シミュレーション結果４２が、ステップＳ２で設定した期待値に対して、指定した誤差範囲内であるか否かを判定する。判定結果が"ＹＥＳ"の場合、第１判定部３２が第１結果レポートを出力して図２の処理が終了し、判定結果が"ＮＯ"の場合、図２の処理がステップＳ５に進む。第１結果レポートは、シミュレーション結果４２が、ステップＳ２で設定した期待値に対して、指定した誤差範囲内であることを示すレポートである。
【００２０】
ステップＳ５では、処理装置３０の実機向け検査シナリオ生成部３６は、検査シナリオ４０を取得し、検査シナリオ４０に基づいて、実機向けの検査シナリオ４４を生成する。実機向けの検査シナリオ４４は、検査シナリオ４０を実機向けに変換したものである。実機とは、第２シミュレーション装置２０の環境を指す。処理装置３０の実機向け検査シナリオ生成部３６は、生成した実機向けの検査シナリオ４４を第２シミュレーション装置２０に与える。
【００２１】
ステップＳ６では、第２シミュレーション装置２０は、実機向けの検査シナリオ４４に従いシミュレーションを行う。尚、第２シミュレーション装置２０は、制御ソフトウェア８０が実装されたＥＣＵを備えている。この結果、実機動作結果４８（図１参照）が得られる。第２シミュレーション装置２０は、実機動作結果４８を処理装置３０に与える。
【００２２】
ステップＳ７では、処理装置３０の第２判定部３４は、実機動作結果４８が、ステップＳ２で設定した期待値に対して、指定した誤差範囲内であるか否かを判定する。判定結果が"ＹＥＳ"の場合、ステップＳ９に進み、判定結果が"ＮＯ"の場合、ステップＳ８に進む。
【００２３】
ステップＳ８では、処理装置３０の第２判定部３４は、ＶＥＣＵ環境に問題が無いと判断して、制御ソフトウェア８０に問題があることを示唆する出力を生成する。この際、処理装置３０の第２判定部３４は、シミュレーション結果４２との間の差分（差分が発生した箇所、及びその差分の値等）を表す第２結果レポート５２（図１参照）を生成する。これを受けて、設計者は、制御ソフトウェア８０を修正できる。
【００２４】
ステップＳ９では、処理装置３０の第２判定部３４は、制御ソフトウェア８０に問題が無いと判断して、ＶＥＣＵ環境に問題があることを示唆する出力を生成する。これを受けて、設計者は、ＶＥＣＵ環境を修正できる。
【００２５】
尚、上述した実施例においては、第１判定部３２が、特許請求の範囲における「第１検証結果取得部」を形成し、実機向け検査シナリオ生成部３６が、特許請求の範囲における「シナリオ生成部」を形成し、第２判定部３４が、特許請求の範囲における「第２検証結果取得部」及び「判定部」を形成する。
【００２６】
以上、本発明の好ましい実施例について詳説したが、本発明は、上述した実施例に制限されることはなく、本発明の範囲を逸脱することなく、上述した実施例に種々の変形及び置換を加えることができる。
【符号の説明】
【００２７】
１  シミュレーション装置  
１０  第１シミュレーション装置
２０  第２シミュレーション装置
３２  第１判定部
３４  第２判定部
３６  実機向け検査シナリオ生成部
【図１】
2017138911.tif 000003
【図２】
2017138911.tif 000004