(57)【特許請求の範囲】
【請求項１】
データチャネル（２）を介して少なくとも１つの電子的な制御システム（１）に接続されたテスト装置（３）を用いて前記制御システム（１）をテストする方法であって、
前記テスト装置（３）上に、前記制御システム（１）によって影響される周辺環境をシミュレートする少なくとも１つの環境モデル（４）と、前記環境モデル（４）および前記制御システム（１）に影響するための少なくとも１つのテストモデル（５）と、が設けられており、
前記環境モデル（４）および前記テストモデル（５）は、ソフトウェアであり、
前記テストモデル（５）は前記環境モデル（４）および／または前記制御システム（１）の挙動を判定し、
前記環境モデル（４）は前記制御システム（１）からデータチャネル（２）を介して前記環境モデル（４）の挙動に影響する前記制御システム（１）の制御システムデータを取得し、前記環境モデル（４）は前記テスト装置（３）を介して、前記環境モデル（４）の挙動を表す環境モデルデータを前記制御システム（１）へ出力する形式の方法において、
前記制御システム（１）をテストするために、前記少なくとも１つのテストモデル（５）を、前記環境モデル（４）に機能的に依存せずに、かつ前記環境モデル（４）に同期して、前記テスト装置（３）上で実行し、
前記テストモデル（５）は、前記環境モデル（４）のモデルパラメータの記憶位置を把握した上で前記記憶位置に書き込みおよび／または前記記憶位置を読み出すことにより、前記テストモデル（５）は、前記環境モデル（４）に影響し、
前記環境モデル（４）の実行時間に、実行されるテストモデル（５ａ，５ｂ）のうち少なくとも１つのテストモデルの同時の実行を停止し、および／または、択一的または付加的に少なくとも１つのテストモデル（５ａ，５ｂ）を前記テスト装置（３）上にロードし、前記テスト装置（３）で実行する、
ことを特徴とする方法。
【請求項２】
別のデータチャネル（７）を介してコンフィギュレーション装置（６）を前記テスト装置（３）に接続し、その後、前記別のデータチャネル（７）を介して、前記テストモデル（５）および／または環境モデル（４）を前記コンフィギュレーション装置（６）から前記テスト装置（３）へ伝送する、
請求項１記載の方法。
【請求項３】
前記テストモデル（５）を、前記テスト装置（３）上でインタプリタによって実行される実行フォーマットに変換し、とりわけ前記テストモデル（５）を、リアルタイムインタプリタによって前記テスト装置上で実行されるバイトコードに変換する、
請求項１または２記載の方法。
【請求項４】
前記環境モデル（４）は前記テストモデル（５）の同期のために、前記テストモデル（５）を間接的または直接的にアクティベートするためのアクティベート信号（８）を生成し、
とりわけ前記環境モデル（４）の計算インターバル（９）ごとに、または前記環境モデル（４）の整数倍の計算インターバル（９）ごとに前記アクティベート信号（８）を生成する、
請求項１から３までのいずれか１項記載の方法。
【請求項５】
前記アクティベート信号（８）に基づいて第１のスケジューラ（１０）をアクティベートし、
前記第１のスケジューラ（１０）は前記テストモデル（５）を実行するか、ないしは、所定の計算インターバル（９）に相応するテストモデル（５）の所定の部分を実行し、
前記テストモデル（５）ないしは前記テストモデル（５）の所定の部分の実行終了後、前記第１のスケジューラ（１０）は終了信号によって計算の終了を示すことを特徴とする、
請求項４記載の方法。
【請求項６】
前記テストモデル（５）が、同時処理すべき複数のテスト系統（１１ａ，１１ｂ；１１ｃ，１１ｄ）を有する場合、前記第１のスケジューラ（１０）は、前記同時処理すべきテスト系統（１１ａ，１１ｂ；１１ｃ，１１ｄ）を指示することによって第２のスケジューラ（１２）を呼び出し、
前記第２のスケジューラ（１２）は、前記同時処理すべきテスト系統（１１ａ，１１ｂ；１１ｃ，１１ｄ）の実行を連続的に行い、前記同時処理すべきテスト系統（１１ａ，１１ｂ；１１ｃ，１１ｄ）すべてが終了した後、前記第２のスケジューラ（１２）は前記第１のスケジューラ（１０）に対し、前記同時処理すべきテスト系統（１１ａ，１１ｂ；１１ｃ，１１ｄ）の実行終了を示し、
前記第１のスケジューラ（１０）は計算の終了を終了信号によって示す、
請求項５記載の方法。
【請求項７】
複数のテストモデル（５ａ，５ｂ）ないしは複数のテストモデル（５ａ，５ｂ）の一部分を同時に計算すべき場合、前記第１のスケジューラ（１０）は、常に１つの第２のスケジューラ（１２ａ，１２ｂ）のみがアクティブ状態になるように、各テストモデル（５ａ，５ｂ）に１つずつ割り当てられた前記第２のスケジューラ（１２ａ，１２ｂ）を呼び出し、
その時点でアクティブ状態の第２のスケジューラ（１２ａ，１２ｂ）は前記第１のスケジューラ（１０）に対し、前記第２のスケジューラ（１２ａ，１２ｂ）に割り当てられたテストモデル（５ａ，５ｂ）の実行の終了を示し、
前記第１のスケジューラ（１０）は、その時点まで非アクティブ状態であった別の第２のスケジューラ（１２ａ，１２ｂ）をアクティベートし、このことを、すべてのテストモデル（５ａ，５ｂ）ないしはテストモデル（５ａ，５ｂ）の一部分が計算完了するまで継続した後、前記第１のスケジューラ（１０）は計算の終了を終了信号によって示す、
請求項５または６記載の方法。
【請求項８】
制御システム（１）をテストするためのテスト装置（３）を動作させるための方法であって、
前記制御システム（１）はデータチャネル（２）を介して前記テスト装置（３）に接続されており、
前記テスト装置（３）上に、前記制御システム（１）によって影響される周辺環境をシミュレートする少なくとも１つの環境モデル（４）と、前記環境モデル（４）および前記制御システム（１）に影響するための少なくとも１つのテストモデル（５）と、が設けられており、
前記環境モデル（４）および前記テストモデル（５）は、ソフトウェアであり、
前記テストモデル（５）は前記環境モデル（４）および／または前記制御システム（１）の挙動を判定し、
前記環境モデル（４）は前記制御システム（１）からデータチャネル（２）を介して前記環境モデル（４）の挙動に影響する前記制御システム（１）の制御システムデータを取得し、前記環境モデル（４）は前記テスト装置（３）を介して、前記環境モデル（４）の挙動を表す環境モデルデータを前記制御システム（１）へ出力し、
前記制御システム（１）のテスト時には、前記少なくとも１つのテストモデル（５）を、前記環境モデル（４）に機能的に依存せずに、かつ前記環境モデル（４）に同期して、前記テスト装置（３）上で実行し、
前記テストモデル（５）は、前記環境モデル（４）のモデルパラメータの記憶位置を把握した上で前記記憶位置に書き込みおよび／または前記記憶位置を読み出すことにより、前記テストモデル（５）は、前記環境モデル（４）に影響し、
前記テストモデル（５）が前記テスト装置（３）にロードされた場合、初期化のために、前記環境モデル（４）に対して非同期動作モードで前記テストモデル（５）を実行する、
ことを特徴とする方法。
【請求項９】
少なくとも１つの電子的な制御システム（１）をテストするためのテスト装置（３）であって、
前記テスト装置（３）は、データチャネル（２）を介して前記電子制御システム（１）に接続可能であり、
前記テスト装置（３）は、前記制御システム（１）によって影響される周辺環境をシミュレートする少なくとも１つの環境モデル（４）と、前記環境モデル（４）および前記制御システム（１）に影響するための少なくとも１つのテストモデル（５）と、を有し、
前記環境モデル（４）および前記テストモデル（５）は、ソフトウェアであり、
前記テストモデル（５）は前記環境モデル（４）および／または前記制御システム（１）の挙動を判定し、
前記環境モデル（４）は前記制御システム（１）から前記データチャネル（２）を介して前記環境モデル（４）の挙動に影響する前記制御システム（１）の制御システムデータを取得し、前記環境モデル（４）の挙動を表す環境モデルデータを前記制御システム（１）へ出力する形式のテスト装置において、
前記制御システム（１）をテストするために、前記少なくとも１つのテストモデル（５）が、前記環境モデル（４）に機能的に依存せずに、かつ前記環境モデル（４）に同期して、前記テスト装置（３）上で実行され、
前記テストモデル（５）は、前記環境モデル（４）のモデルパラメータの記憶位置を把握した上で前記記憶位置に書き込みおよび／または前記記憶位置を読み出すことにより、前記テストモデル（５）は、前記環境モデル（４）に影響するように構成されている、
ことを特徴とするテスト装置。
【請求項１０】
請求項１から８までのいずれか１項記載の方法が実施されるように構成されている、請求項９記載のテスト装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、少なくとも１つの電子制御システムをテストする次のような形式の方法に関する。すなわち、制御システムはデータチャネルを介してテスト装置に接続されており、テスト装置上で少なくとも１つの環境モデルを計算し、該テスト装置を介して該制御システムへ環境モデルデータを出力し、かつ該制御システムから該データチャネルを介して制御システムデータを取得することにより、該環境モデルは該制御システムと相互的に機能する形式の方法に関する。
【０００２】
さらに本発明は、少なくとも１つのテストモデルをシミュレーションコンピュータ上で実行するためのスケジューリング方法にも関し、ここでは、外部のアクティベート信号に基づいて第１のスケジューラをアクティベートする。最後に本発明は、少なくとも１つの電子制御システムをテストするための次のような形式のテスト装置に関する。すなわち、データチャネルを介して制御システムに接続可能であり、前記テスト装置によって少なくとも１つの環境モデルが計算され、該テスト装置を介して該制御システムへ環境モデルデータを出力し、かつ該制御システムから該データチャネルを介して制御システムデータを取得することにより、該環境モデルは該制御システムと相互的に機能するように構成された形式のテスト装置に関する。
【背景技術】
【０００３】
電子制御システムをテストするための方法および装置は実用的に、種々の形態で公知になっており、とりわけ応用的研究および産業的開発では幅広い分野で、電子制御システムの開発および使用のために使用される。すなわち最も広い意味では、プロセス制御タスクを実行しなければならないすべての場所で使用される。「制御システム」という概念は以下では、基本的に測定タスク、制御タスク、調整タスク、較正タスクに使用される技術的な装置を表す総称として使用する。最も広い意味では、一般的に電子プログラマブルシステムを指す。電子プログラマブルシステムは自動車アプリケーションの領域では、通常は制御回路と称される。「制御システム」という概念は、システム理論上の意味で狭義に開ループ制御として定義されるものには限定されず、通常は閉ループ制御が制御システム上で実施される。
【０００４】
最終的に大量生産で使用される制御システムの開発は、たいていは以下のステップで行われる。機能開発では、数学的なモデリングツールを使用してまずは、抽象的な制御回路構想の時期的に後のターゲットハードウェアおよびターゲット環境に取り組む。ここでは、開発される制御回路は、同様に数学的モデルとして存在するだけのプロセスイメージによるシミュレーションでのみ検査される。
【０００５】
いわゆるラピッドコントロールプロトタイピング（ＲＣＰ）である次のステップでは、抽象的な前記制御回路構想は符号発生器によって、実行可能なプログラムに変換される。この実行可能なプログラムは、通常は非常に高性能であり、最終的に使用されるシリアル制御システムとは比較できないほどであるリアルタイム可能な制御システム上で動作する。このようなＲＣＰ制御システムは、適切なＩ／Ｏインタフェースを介して、影響すべき対象である実際のプロセスと相互作用する。この結果が十分である場合、適切に構成された符号発生器を介して、制御回路の数学的モデルから、シリアル制御システムに対する実行可能な符号が発生され、シリアルアプリケーションで実際に使用される制御システムには、シリアルアプリケーションで備えなければならない機能を設けることができる。
【０００６】
しかし、シリアル制御システムを実際のプロセスに関連して検査する前に、いわゆるハードウェア・イン・ループテスト（ＨＩＬ）である詳細なテストをシリアル制御システムに施す。ＨＩＬテストでは、（シリアル）制御システムをテスト装置に接続し、該テスト装置上で環境モデルを使用して、テストすべき制御システムの周辺機能をシミュレートする。すなわち、テスト装置を介して環境モデルデータを制御システムへ出力し、該制御システムからデータチャネルを介して制御システムデータを取り込むことによって、環境モデルとテスト装置とを接続することにより、制御システムは仮想的な環境モデルと相互作用する。
【０００７】
このようなＨＩＬテストを例として、本発明を説明する。しかし本発明は、概念的にこのようなテストシチュエーションには限定されず、むしろ、制御システムがテスト装置に接続されており、かつ該テスト装置上で動作する環境モデルによって検査される限りは、任意の制御システムのテストに本発明を適用することができる。
【０００８】
制御システムは、たとえば自動車アプリケーションの領域ではエンジン制御回路とすることができる。その際にはエンジン制御回路の環境モデルは、テスト装置上でリアルタイム可能なエンジンモデルである。また、仮想的な環境で移動される車両全体の走行ダイナミクスモデルおよびエンジンダイナミクスモデルとすることができる。環境モデルは基本的に、テストすべき制御システムのすべてのインタフェースをカバーする必要はなく、むしろ、実際の構成要素によって具現化すべき環境の部分は任意の部分とすることもできる。前記の例ではこのことは、テストすべき制御システムは実際には、実際の内燃機関に接続されるのに対し、エンジンの環境（たとえば伝動装置、駆動系統、シャシおよび道路）は、テスト装置上で動作する環境モデルによってシミュレートされることを意味する。すなわち、環境モデルは完全な環境モデルである必要はなく、テストすべき制御システムに直接接続および／または間接接続することができる。
【０００９】
制御システムの本来のテストは、制御システムの環境モデルに所期のように影響すること、すなわち環境モデルに影響するためのテストモデルによって影響することである。このように所期のように影響することは、たとえば制動系用の制御システムのテストの場合には、背景を表すパラメータを広い限界で変化し、制動制御システムがそのつど完全に制動するようにすることである。その際には、制御システムの判定を行うためにはたいてい、環境モデルの挙動が使用される。この挙動はこの例では、システム全体すなわち車両の減速の検出とすることができる。また、状態変数を制御システムから直接読み出し、制御システムの判定に使用することもできる。
【００１０】
従来技術から、制御システムのテストを前記の意図で行うための種々の方法および装置が公知である。たとえば、環境モデルが動作するテスト装置に影響するために、該テスト装置の他にさらに実験装置も設けることが公知であり、この実験装置はテスト装置に接続される。通常は標準的なＰＣである実験装置上では、次のようなテストモデルが実行される。すなわち、実験装置とテスト装置との間のデータ接続部を介して、該テスト装置上の環境モデルに所望のように影響するテストモデルが実行される。その際には実験装置は、テストモデルをグラフィックモデリング環境によって作成し、時間と環境モデルのモデルパラメータとに依存して特定のテスト機能を設定することができる（『AutomationDesk: Test and Experiment Software』（dSPACE GmbH社、製品説明書、２００６年２月）。このような手法の欠点は、テスト装置上の環境モデルと実験装置上のテストモデルとの間の厳密な同期を保証できないことである。というのも両装置間の結合には、通信関連の無駄時間が付随するからである。さらに、リアルタイム不可能な標準的なオペレーティングシステムを実験装置上で使用する場合、場合によっては厳密なリアルタイム性が保証されない可能性もある。このことは、環境モデルの所定の計算インターバルでプランニングされた該環境モデルへの影響が、該計算インターバル内で実行されるとは限らないことを意味し、このことは場合によっては、テストの実行エラーおよび解釈エラーを引き起こす。
【００１１】
リアルタイム性とは本発明では、実行が所定の時点まで予定および設定されているプロセスを、厳密に該時点までに実行および完了しなければならないことを意味する。したがって、リアルタイム性のこのような問題は、絶対的な計算速度に関連するものではなく、次のような条件、すなわち時間インターバル内にプランニングされたアクションを該時間インターバル内に実行できるという条件を満たすことにのみ関連するものである。したがって、リアルタイム性とは必ずしも、要求されたアクションを可能な限り高速に実行することではなく、要求されたアクションに対して設けられた時間内に該アクションを確実に実行することである。
【００１２】
たいていは固定的である所定の計算周波数およびサンプリング周波数で動作する時間分散型のシステムでは、最短の時間単位は、制御システムの固定的なサンプリング間隔の長さに相応する。制御システムがたとえば１ミリ秒でサンプリングおよび計算される場合、環境モデルは通常、少なくとも該サンプリングレートで動作する。このことは、環境モデルのモデルパラメータ、すなわち、システム理論上の意味では環境モデルの状態パラメータが１ｋＨｚの周波数で計算され、これに基づいて１ｋＨｚの周波数で、環境モデルの出力パラメータも計算され、制御システムに影響するために出力されることを意味する。
【００１３】
サンプリング間隔ないしは計算インターバル内に‐上記例では１ミリ秒以内に‐実行されるすべてのアクションは、時間分散型のサンプリングシステムでは同時に行われ、これらのアクションは時間的には相互に異ならない。したがって、リアルタイム性および同時性の上記定義に基づくと、指示を厳密にシーケンシャル処理することのみが可能である電子制御システムないしはテスト装置を使用する場合でも、複数のアクションを同一のサンプリング間隔ないしは計算インターバルで実行する限りは、同時に実行することができる。
【００１４】
上記のテスト手法の利点は、テストを実施するために環境モデルを停止する必要も変更する必要もないことである。しかし、サンプリングレートが小さい場合には、リアルタイム条件を確実には遵守できない。というのも、通常の実験装置はリアルタイム可能でないオペレーティングシステムを基礎としており、時間的に予測できる実行を保証できないからである。
【００１５】
従来技術から公知である電子制御システムのテスト手法では、環境モデルはテスト機能の呼び出しによって作成される。したがってこのような環境モデルは、実行すべきテストに依存し、テストが変更されると常に、環境モデルを適合しなければならない。このような手法の欠点は、テストモデルおよび環境モデルは機能的に非常に相互に依存していることである。というのも環境モデルは、テストモデルに該当する特別な関数呼び出しによって作成しなければならないからである（『RT-LAB, Product Description, Feature Details, Typical Applications』OPAL-RT TECHNOLOGIES INC.、２００５年）。このことにより、環境モデル内のオーバーヘッドが著しく大きくなるので、テストモデルの機能が「ゼロ機能」であっても、場合によっては著しく大きな動作時間問題が生じる。
【発明の開示】
【発明が解決しようとする課題】
【００１６】
したがって本発明の基礎となる課題は、上記の欠点を少なくとも部分的に回避する電子制御システムのテスト方法およびテスト装置を提供することである。
【課題を解決するための手段】
【００１７】
本発明において上記で提起した課題は、少なくとも１つの電子制御システムをテスト装置と該テスト装置上で計算された環境モデルとによってテストする方法の場合、本発明の第１の思想によれば、該制御システムはデータチャネルを介して該テスト装置に接続されており、該環境モデルは該テスト装置を介して該環境モデルデータを制御システムへ出力し、該制御システムから該データチャネルを介して制御システムデータを取得することにより、該環境モデルは該制御装置と相互作用し、該テスト装置上で、環境モデルへおよび／または環境モデルの計算および／または電子制御システムに影響するための少なくとも１つのテストモデルを実行し、１つないしは複数の該テストモデルは該環境モデルに依存せず、テスト動作時には該環境モデルと同時に実行する方法によって解決される。
【発明を実施するための最良の形態】
【００１８】
このような本発明による方法は、従来技術から公知の方法と比較して、様々な観点で有利である。テストモデルを環境モデルに機能的に依存せずに実行することにより、テストモデルを基準として所期のように位置決めされた関数呼び出しによって、環境モデルを作成しなくてもよくなる。このことは、環境モデルを汎用的に使用し、実行すべきテストに依存せずに実行することができるという利点を有し、さらにこのようなプロセスは、テストモデルへ使用されない関数呼び出しが行われることで環境モデルの動作時間に負荷がかかることがなくなるという利点ももたらす。さらに本発明による方法では、テスト装置と別個のハードウェアであるコンフィギュレーション装置ないしは該コンフィギュレーション装置上で動作するテストモデルによって該テスト装置の環境モデルに影響する方法と比較して、環境モデルの実行とテストモデルの実行との間の無駄時間と非同期性とが回避される。
【００１９】
本発明の第１の有利な構成では、テストモデルは環境モデルのモデルパラメータの記憶位置を把握した上で該記憶位置に書き込みかつ／または該記憶位置を読み出すことにより、該テストモデルは環境モデルに影響する。テストモデルが環境モデルのモデルパラメータに直接アクセスすることにより、両モデル間のソフトウェアインタフェースを省略することができ、このことは、動作時間に関して著しく有利である。
【００２０】
本発明による方法の有利な構成では、別のデータチャネルを介してコンフィギュレーション装置とテスト装置とを接続し、その後、該別のデータチャネルを介してテストモデルおよび／または環境モデルを該コンフィギュレーション装置から該テスト装置へ伝送する。本方法のこのような構成により、たとえば特に有利には、たとえば適切なモデリングソフトウェアを有する市販のＰＣから成るコンフィギュレーション装置を介してテストモデルおよび／または環境モデルを作成または変更するか、または単に検出して、所期のようにテスト装置に伝送することもできる。本発明のこの構成ではコンフィギュレーション装置は、ユーザがターゲットハードウェアすなわちテスト装置にアクセスするのに使用するユーザインタフェースとして使用される。
【００２１】
本発明による方法の別の構成は、環境モデルの動作時間に、実施されるテストモデルのうち少なくとも１つのテストモデルの同時の実施を停止することにより、幅広い領域における複数のテストモデルから成る全体テストを変化できるようにする。さらに本発明による方法では、少なくとも１つのテストモデルを択一的または付加的に、テスト動作中にもテスト装置にロードし、該テスト装置で実行する構成もある。もちろん、テスト装置上にすでに存在するテストモデルを任意の時点でテスト装置上で実行することも可能であり、こうすることは、テストモデルが直前にテスト装置にロード完了されたか否か、またはスタートすべきテストモデルがすでに比較的長い時間、テスト装置上に存在しているか否かには依存しない。本方法の特に有利な構成では、必要な場合には、テストモデルを環境モデルに対して非同期の動作モードで実行し、その後で該環境モデルに同期して実行する。このことはとりわけ、テストモデルをスタートし、このスタートの枠内でたとえば大規模な初期化を行わなければならない場合に有利である。このような初期化過程は、サンプリング間隔以内に実行できないために、テストモデルと環境モデルとの間でリアルタイム要件ないしは同期性の要件の違反が引き起こされるほど大規模になる可能性がある。このような場合、本発明による方法は、テストモデルを環境モデルと再び同期で実行でき、ひいてはリアルタイム要件を遵守して再び実行できるようになる程度に計算オーバーハングが解消されるまで、一時的にリアルタイム要件および同期要件を猶予する。このような状況はとりわけ、新規にテストモデルをテスト装置にロードし、電子制御システムのすでに実行中のテストに組み込まねばならない場合に生じる。
【００２２】
別の有利な実施例では本発明による方法は、このテストモデルを、テスト装置上でインタプリタによって実行される実行フォーマットに変換する。特に有利な構成では前記実行フォーマットは、テスト装置上でリアルタイムインタプリタによって実行されるバイトコードで形成される。マシンに依存しないバイトコードをこのようなインタプリタによって実行することは基本的に、時間的な欠点を伴う。というのも、仮想マシンと称されることも多いこのようなインタプリタはバイトコードを直接実行することができず、予め翻訳しなければならないからである。そのため、リアルタイムインタプリタは有利には、テストモデルの実行時間の開始時にバイトコードをマシン依存のマシンコードに１回翻訳するジャストインタイムコンパイラとともに使用される。とりわけこの場合には、たとえばテストモデルの初期化の例ですでに説明したように、テストモデルを翻訳フェーズ中は、環境モデルに対して非同期モードで動作するのが有利である。
【００２３】
本発明の別の有利な構成では、テストモデルを環境モデルに同期するために、該環境モデルによって、該テストモデルをアクティベートするためのアクティベート信号を生成する。このようなアクティベート信号を環境モデルによって生成することは、環境モデルとテストモデルとが機能的に独立しなければならないという要求と調和している。というのも環境モデルからは、従来技術から公知であるように、テストモデルに直接関係する関数呼び出しは行われないからである。このアクティベート信号はテストモデルを実行するためのクロック発生器として使用されるだけであるが、環境モデルから完全に独立して構成することができる。
【００２４】
とりわけ、アクティベート信号を環境モデルの計算インターバルごとに生成するか、または整数倍の計算インターバルごとに生成することにより、テストモデルを時間分散的なサンプリングシステムとしても計算できるようにする。有利な構成ではアクティベート信号は、モデル計算ないしはモデル処理の特徴的なフェーズが終了したことが確認された場合に、環境モデルによって生成される。このようなフェーズにはたとえば、環境モデルのすべての入力量の検出、環境モデルのその時点の入力量および過去の状態量からの環境モデルの状態量の計算、または環境モデルからの出力量の出力が挙げられる。本発明による方法のこのような処理により、環境モデルは時間的に一貫した状態になり、その結果、テストモデルがアクセスする環境モデルのモデルパラメータのセットが一貫したセットになることが保証される。
【００２５】
本発明による方法の別の有利な構成では、前記アクティベート信号により、テストモデルの実行をコーディネートするスケジューリング手法をアクティベートする。このような構成から、アクティベート信号によって環境モデルとテストモデルとの機能的な分離が保証されるのが明らかである。というのも、テストモデルはその後、環境モデルに依存せずに、上位のコーディネートユニットにより、上記のスケジューリング手法によってコーディネートされるからである。
【００２６】
本発明の第２の思想は、外部のアクティベート信号によって第１のスケジューラをアクティベートするスケジューリング方法の構成を対象とする。本発明において、このようなスケジューリング手法によって上記の課題を解決するためには、第１のスケジューラがテストモデルを実行するか、ないしは所定の計算インターバルに相応する該テストモデルの一部分を実行し、該テストモデルないしは該テストモデルの所定の部分の実行終了後、該第１のスケジューラは計算の終了を終了信号によって通知する。
【００２７】
第１のスケジューラが動作開始するためには、たとえば割り込みによって形成されるアクティベート信号が必要である。このようにしてアクティベートされた第１のスケジューラは、テストモデルないしはテストモデルの所定の部分の実行を別のパラメータに依存させることができる。このことにより、第１のスケジューラに引継パラメータによって呼び出し時に値を引き継ぐか、または、第１のスケジューラはアクティベート時に、そのために設けられたメモリセルから相応のパラメータを読み出すことができる。この相応のパラメータは第１のスケジューラに対し、どのテストモデルないしはテストモデルのどの部分を計算すべきか、どの計算インターバルでこのテストモデルないしはテストモデルの部分を実行すべきかを通知するパラメータである。第１のスケジューラがテストモデルないしはテストモデルの所定の部分の実行終了後に計算の終了を終了信号によって通知することにより、上位ないしは下位のシステム、たとえば環境モデルに対して可能な限り即時に応答し、たとえばフローを継続することができる。
【００２８】
本発明によるスケジューリング方法の特に有利な構成では、テストモデルの同時処理すべきテスト系統（Teststrang）が複数存在する場合、該テストモデルは、同時処理すべきテスト系統を指示することによる第２のスケジューラを呼び出し、これに基づいて第２のスケジューラは、同時処理すべきテスト系統の実行を連続的に行い、同時処理すべき系統がすべて終了した後、実行終了を第１のスケジューラに指示し、これに基づいて第１のスケジューラは計算の終了を終了信号によって指示する。
【００２９】
同時という概念はここでは、上記でリアルタイムシミュレーションに関して説明したのとちょうど同じであると解釈すべきである。この第２の思想でも、同時であると見なされるのは、テスト装置の予め決定された最小時間分解能以内で処理されるすべての過程である。したがって、物理的な時間でも実際に連続的に行われる計算も、ここで示された定義では同時であると解釈できる。その点では、テストモデルの同時処理すべきテスト系統の処理を担当する第２のスケジューラが、同時処理すべきテスト系統の実行を連続的に行っても、何ら矛盾はない。テストモデル内の同時処理すべきテスト系統は、たとえば単に、制御システムに供給すべき２つの異なる信号の生成とすることができる。
【００３０】
本発明によるスケジューリング方法の特に有利な構成では、複数のテストモデルないしは複数のテストモデルの一部分を同時に計算すべき場合、第１のスケジューラは、常に１つの第２のスケジューラのみがアクティブ状態になるように、各テストモデルに１つずつ割り当てられた第２のスケジューラを呼び出し、その時点でアクティブ状態の第２のスケジューラは第１のスケジューラに対し、該第２のスケジューラに割り当てられたテストモデルの実行の終了を指示し、これに基づいて第１のスケジューラは、その時点まで非アクティブ状態であった別の第２のスケジューラをアクティベートし、このことを、すべてのテストモデルないしはテストモデルの一部分が計算完了するまで継続し、その後に第１のスケジューラは計算の終了を終了信号によって指示する。ここに記載された本発明による方法は特に明快であり、非常に簡単に実施でき、複数のテストモデルの完全な処理を特に容易に検査することができる。もちろん、テストモデルに含まれる同時処理すべき複数のテスト系統の処理と複数のテストモデルの同時処理とに関する本発明によるスケジューリング方法の種々の構成は、容易に相互に組み合わせることができる。
【００３１】
本発明において、本発明の最後の思想によれば上記の課題は、少なくとも１つの電子制御システムをテストするためのテスト装置の場合、環境モデルおよび／または環境モデルの計算および／または電子制御システムに影響するための少なくとも１つのテストモデルが該テスト装置上に構成され、該テストモデルは環境モデルに機能的に依存せずに、テスト動作中には該環境モデルに同期して実行されるように構成されることによって解決される。
【００３２】
別の有利な実施例では、本発明によるテスト装置はさらに、本発明の枠内で少なくとも１つの電子制御システムのテストに関して記載された方法が実施されるように構成されている。
【００３３】
詳細には、電子制御システムをテストする本発明の方法、本発明によるスケジューリング方法および本発明によるテスト装置を構成および発展するためには、多数の手段が存在する。これらの手段に関しては、請求項１，９および１２の従属請求項と、図面に示された本発明によるテスト方法および本発明によるスケジューリング方法の実施例の説明を参照されたい。
【実施例】
【００３４】
図１〜６は種々の実施例に基づいてそれぞれ、本発明のテスト方法、本発明のスケジューリング方法および本発明のテスト装置の特定の側面を示す。
【００３５】
図１は、本発明による方法を実施するのに適した電子制御システム１をテストするためのテスト環境の典型的な構成を示す。テストすべき電子制御システム１はここでは、データチャネル２を介してテスト装置３に接続されている。テスト装置３上において環境モデル４が計算され、この環境モデル４は、テスト装置３を介して制御システム１へ環境モデルデータを出力し、制御システムデータを制御システム１からデータチャネル２を介して取得することにより、該制御システム１と相互作用する。
【００３６】
テスト装置３を介して行われる制御システム１のテストは基本的に、テスト装置３上で実行される環境モデル４に影響することによって実施される。このことを実施するためにはテスト装置３上で、環境モデル４および／または環境モデル４の計算および／または電子制御システム１に影響するためのテストモデル５が実行される。テストモデル５ないしはテストモデル５，５ａ，５ｂは環境モデル４に機能的に依存せず、テスト動作時には環境モデル４に同期して実行される。環境モデル４自体ないしは環境モデル４の計算はたとえば、環境モデル４のパラメータを変化することによって影響される。しかし、テスト装置３上で実施される方法では、テストモデル５によってデータチャネル２を介して、テストすべき制御システム１に直接影響することもでき、たとえばテスト信号を供給することもできる。
【００３７】
図１に示されたテスト装置３ないしは該テスト装置３上で実施されるテスト方法の実施例の利点は、テストモデル５が環境モデル４に機能的に依存せずに実行されるので、テストモデル５が変更しても、環境モデル４を変化または適合する必要はない。
【００３８】
図１〜４に示されたテスト装置３では、テストモデル５が環境モデル４のモデルパラメータの記憶位置の知識を有することにより、該記憶位置に書き込みかつ／または該記憶位置を読み出すことによって、該環境モデル４とテストモデル５とは機能的に独立する。テストモデル５は任意に変化することができ、環境モデル４の実行時間であっても、該環境モデル４の何らかの適合を行う必要なく、任意に変化することができる。テストモデル５が環境モデル４のモデルパラメータへの直接的なアクセスをこのように実施することにより、環境モデル４のモデルパラメータをまずはアクセス可能にするためのインタフェースを省略することができ、ここに図示された方法によって著しく大きな実行時間上の利点が得られる。
【００３９】
図１にはさらに、テスト装置３が別のデータチャネル７を介してコンフィギュレーション装置６に接続されているのが示されている。この構成により、テストモデル５および環境モデル４はその後、この別のデータチャネル７を介してコンフィギュレーション装置６からテスト装置３へ伝送することができる。コンフィギュレーション装置は、図１に示された実施例では、ユーザがテスト装置３に所望のように影響するために使用されるユーザインタフェースとして使用される。
【００４０】
環境モデル４とテストモデル５とは機能的に独立しているので、環境モデル４の実行時間にテストモデル５の実行ないしはテスト装置３上で実行されているテストモデル５ａ，５ｂ（図４）を容易に停止することができ、また、テストモデル５をテスト装置３にロードして該テスト装置３で実行することもできる。図示された実施例におけるテストモデル５，５ａ，５ｂのアクティベートは、テストモデル５，５ａ，５ｂのロード過程に依存せずに停止することができ、たとえばすべてのテストモデル５，５ａ，５ｂが制御システム１のテストの開始時にすでにテスト装置３上に存在するが、同時には存在せず、時間的にずれて実行すべき場合に、前記アクティベートを停止することができる。
【００４１】
図１〜６に示された実施例では、各テストモデル５，５ａ，５ｂは実行時間開始時には、環境モデル４に対して非同期の動作モードで実行される。このことは、テスト動作をリアルタイムで実行するのを阻止してしまうテストモデル５，５ａ，５ｂの初期化過程すべてが終了するまで実行される。テスト方法のこのような構成により、リアルタイム要件および同期要件を一時的に猶予して、初期化完了されたテストモデル５，５ａ，５ｂは前記要件を満たすことでテスト装置３上で容易に実行できるにもかかわらず、テスト過程が前記要件の違反によって中断される危険性が生じないようにすることができる。
【００４２】
図１〜６に示されたテスト装置ないしは該図に示されたテスト方法は、各テストモデル５，５ａ，５ｂがテスト装置上３において、該テスト装置３上に実装されたインタプリタによって実行される実行フォーマットであるか、ないしは該実行フォーマットに変換されるように構成されている。これらの実施例では、バイトコードで構成されたテストモデル５，５ａ，５ｂを変換して実行するリアルタイムインタプリタである。
【００４３】
図中の実施例では、テストモデル５，５ａ，５ｂを環境モデル４に同期するために、該環境モデル４によって、該テストモデル５，５ａ，５ｂをアクティベートするためのアクティベート信号が生成される。アクティベート信号８はテストモデル５，５ａ，５ｂを実行するためのクロック発生器の機能を果たし、これによってさらに、環境モデル４とテストモデル５，５ａ，５ｂとが機能的に独立するという要求が遵守される。アクティベート信号８の生成はとりわけ図２〜４および図６に示されている。これらの実施例では、アクティベート信号８は環境モデル４の各計算インターバル９で生成されるので、テストモデル５，５ａ，５ｂはクロック精度で環境モデル４に同期して実行される。
【００４４】
これらの実施例ではアクティベート信号８はそのつど、環境モデル４のすべての入力パラメータが読み出され、かつ該環境モデル４のすべてのモデルパラメータが、場合によってはこれらの入力パラメータを使用して計算された後に出力される。このようにして、環境モデルのデータ状態が一貫している場合には、環境モデル４はテストモデル５，５ａ，５ｂによって影響されることが保証される。
【００４５】
図２〜４および図６に示されているように、アクティベート信号８によって、テストモデル５の実行をコーディネートするスケジューリング方法がアクティベートされ、これによっても、環境モデル４とテストモデル５とが機能的に独立することの遵守が維持される。
【００４６】
スケジューリング方法は図１〜６の実施例では、リアルタイム要件および同期要件を有利に満たすことができるように所定の構成で構成されている。そのためにはアクティベート信号８に基づいて、まず第１のスケジューラ１０がアクティベートされ、該第１のスケジューラ１０はテストモデル５を実行する（図２）。この実行は上記実施例では、所定の計算インターバル９に相応するテストモデル５，５ａ，５ｂの一部分のみを対象とすることができる。テストモデル５，５ａ，５ｂないしは該テストモデル５，５ａ，５ｂの所定の一部分の実行が終了した後、第１のスケジューラ１０は計算の終了を、ここでは図示されていない終了信号によって示す。これによって、第１のスケジューラ１０はテストモデル５，５ａ，５ｂの実行を別のパラメータに依存させることができ、たとえばシステム時間またはその時点の計算インターバル９に依存させることができる。このようなパラメータは、ここに図示された実施例では呼び出しパラメータとして第１のスケジューラ１０に引き継がれる。
【００４７】
ここに図示されていない別の実施例では、第１のスケジューラ１０は、前記パラメータおよび別のパラメータに対して設けられたパラメータ記憶領域を読み出すことにより、該パラメータを受け取る。これらのパラメータはごく一般的には、テストモデル５，５ａ，５ｂのうちどのテストモデルを実行または停止すべきかの情報も含むことができる。
【００４８】
テストモデル５，５ａ，５ｂは複数のテスト系統１１ａ，１１ｂないしは１１ｃ，１１ｄを有することができる。テスト系統１１ａ，１１ｂ，１１ｃ，１１ｄとはテストモデル５，５ａ，５ｂのうちで、同時すなわち１つの計算インターバル９以内で実行すべき部分を指す。テストモデル５，５ａ，５ｂが複数の同時に処理すべきテスト系統１１ａ，１１ｂ，１１ｃ，１１ｄを有する場合、第１のスケジューラ１０は、場合によっては同時に処理すべきテスト系統を指示して、第２のスケジューラ１２，１２ａ，１２ｂを呼び出し、これに応答して第２のスケジューラ１２，１２ａ，１２ｂは、同時に処理すべきテスト系統１１ａ，１１ｂ，１１ｃ，１１ｄの実行を連続的に行い、同時に処理すべきテスト系統１１ａ，１１ｂ，１１ｃ，１１ｄがすべて終了した後、実行終了を第１のスケジューラ１０に示す。第１のスケジューラ１０はこれに応答して、前記計算終了を終了信号によって示す。図３は、１つのテストモデル５が複数のテスト系統１１ａ，１１ｂを有し、これらのテスト系統１１ａ，１１ｂは、ここに開示された方法によって体系的に処理されるのを示している。
【００４９】
複数のテストモデル５，５ａ，５ｂないしは複数のテストモデル５，５ａ，５ｂの一部分を同時に計算すべき場合、図４に示された実施例では、第１のスケジューラ１０は各テストモデル５，５ａ，５ｂに対してそれぞれ１つの第２のスケジューラ１２ａ，１２ｂを割り当て、各テストモデル５，５ａ，５ｂにそれぞれ１つ割り当てられた第２のスケジューラ１２ａ，１２ｂのうち常に１つのみがアクティブ状態になるように該第２のスケジューラ１２ａ，１２ｂを呼び出し、その時点でアクティブ状態の第２のスケジューラ１２ａ，１２ｂは第１のスケジューラ１０に対し、該第２のスケジューラ１２ａ，１２ｂに割り当てられたテストモデル５，５ａ，５ｂの実行終了を示し、これに応答して第１のスケジューラ１０は、その時点まで非アクティブ状態であった別の第２のスケジューラ１２ａ，１２ｂをアクティベートし、該別の第２のスケジューラ１２ａ，１２ｂを、すべてのテストモデル５，５ａ，５ｂないしはテストモデル５，５ａ，５ｂの一部分が計算終了するまでアクティベートし、この計算終了に基づいて第１のスケジューラ１０は計算終了を終了信号によって示す。このような方法は特に分かりやすく簡単に実施することができ、複数のテストモデル５，５ａ，５ｂの処理の完全性を容易に検査することができる。
【００５０】
図４に示された実施例はさらに、たとえば、テストモデル５，５ａ，５ｂのうち複数のテストモデルが並列なテスト系統１１ａ，１１ｂ，１１ｃ，１１ｄを有する場合、スケジューリング方法の上記の構成を組み合わせて使用することも可能であることを示している。
【００５１】
図５および６に示された実施例は、テスト装置３によって正弦波信号がテスト信号として出力される実用例に基づいて、テスト方法、スケジューリング方法およびテスト装置の動作を説明する。図５は、連続的な正弦波信号１４と、環境モデル４の計算インターバル９を考慮してテスト装置３ないしはテストモデル５によって生成される時間離散的な信号１５とを示しており、信号１５は、連続的な信号１４の時間的に離散化したものに相応する。
【００５２】
ステップ６では観察開始点は、時間単位「３」によって示された計算インターバルの開始時点での離散的な信号値１５ａの計算終了である。ここでは簡略化するため、テストモデルは常に各計算インターバル９の開始時に実行されると仮定する。この計算は、時点「３」付近でテストモデル５を実行することによって行われる。信号値１５ａの計算が完了した後、第１のスケジューラ１０は終了信号を出力することにより、環境モデル４を再び参照する（図６では、垂直方向に下方向を指す破線の矢印）。
【００５３】
「４」時間単位の時点で次の計算インターバル９に達すると、環境モデル４はアクティベート信号８によって第１のスケジューラ１０を再び生成し、その後、該第１のスケジューラ１０はテストモデル５の計算を、その時点で目下の計算インターバル９にわたって停止し、この計算インターバル９は信号値１５ｂの計算で終了する（図６では、垂直方向に下方向を指す破線の矢印）。上記の過程は、次の計算インターバル９でも同様に継続される。
【図面の簡単な説明】
【００５４】
【図１】電子制御システムとテスト装置とコンフィギュレーション装置とから成るシステムの実施例を概略的に示す図である。
【図２】本発明によるテスト方法、本発明によるスケジューリング方法および本発明によるテスト装置の実施例を概略的に示す図である。
【図３】本発明によるテスト方法、本発明によるスケジューリング方法および本発明によるテスト装置の別の実施例を概略的に示す図である。
【図４】本発明によるテスト方法、本発明によるスケジューリング方法および本発明によるテスト装置の別の実施例を概略的に示す図である。
【図５】本発明によるテスト方法、本発明によるスケジューリング方法および本発明によるテスト装置の実施例によって生成された正弦曲線を示す図である。
【図６】図５に示された正弦曲線が生成される場合の本発明のテスト方法、本発明のスケジューリング方法および本発明のテスト装置の構成要素の本発明における共働を示す図である。
【符号の説明】
【００５５】
１    電子制御システム
２    データチャネル
３    テスト装置
４    環境モデル
５，５ａ，５ｂ  テストモデル
６    コンフィギュレーション装置
７    別のデータチャネル
８    アクティベート信号
９    計算インターバル
１０  第１のスケジューラ
１１ａ，１１ｂ，１１ｃ，１１ｄ  テスト系統
１２，１２ａ，１２ｂ  第２のスケジューラ
【図１】
0005495480.tif 000002
【図２】
0005495480.tif 000003
【図３】
0005495480.tif 000004
【図４】
0005495480.tif 000005
【図５】
0005495480.tif 000006
【図６】
0005495480.tif 000007