Main Content

テスト ポイントとしての信号の設定

テスト ポイントとは

"テスト ポイント" は、モデル内で Floating Scope ブロックを使用する場合に観測可能であることを Simulink® が保証している信号です。Simulink では、モデル内の任意の信号をテスト ポイントとして指定できます。

信号をテスト ポイントとして指定すると、その信号は、信号ストレージの再利用 (信号ストレージの再利用 (Simulink Coder)を参照)、ブロック削減 (boolean データ (対 double) として論理信号を処理を参照) などのモデルの最適化から除外されます。このような最適化機能によって、信号がアクセス不可能になり、シミュレーション中は観察できなくなります。

テスト ポイントとして指定された信号では、[代数ループの発生の最小化] が選択されている場合でも代数ループが最小化されません (代数ループの詳細は、代数ループの概念を参照)。

テスト ポイントは、主として Simulink Coder™ を使用してモデルからコードを生成する際に使用するためのものです。コード生成におけるテスト ポイントの詳細は、生成コードでのテスト ポイントの外観 (Simulink Coder)を参照してください。

信号をテスト ポイントとしてマークしても、Dataset ログ形式を使用する信号ログには影響しません。信号ログの詳細は、信号ログを使用した信号データの保存を参照してください。

以下のいずれかの方法を使用して、信号をテスト ポイントとして指定します。

  • 信号の [信号プロパティ] ダイアログを開き、[ログとユーザー補助機能] セクションの [テスト ポイント] をオンにします。

  • バッチ構成や、大規模モデルまたはサブシステムの階層に配置することが困難な信号に対しては、モデル データ エディターを使用します。[信号] タブで、[ビューの変更] ドロップダウン リストを [インストルメンテーション] に設定し、[テスト ポイント] 列を使用します。詳細については、モデル データ エディターを参照してください。

  • チャートで Stateflow® データをテスト ポイントとして構成するには、Stateflow チャートのテスト ポイントの監視 (Stateflow)を参照してください。

信号をプログラムによってテスト ポイントとして構成するには、以下を実行します。

  1. ブロックの端子へのハンドルを取得します。

    portHandles = get_param('myModel/myBlock','portHandles');

    portHandles は構造体です。各フィールドにはブロック端子へのハンドルが保存されます。

  2. ターゲットの信号線を作成する出力端子へのハンドルを抽出します。

    outportHandle = portHandles.Outport;

  3. 端子のパラメーター TestPoint'on' に設定します。

    set_param(outportHandle,'TestPoint','on')

テスト ポイントアイコンを表示する

既定の設定では、Simulink は、[信号プロパティ]、[テスト ポイント] オプションが有効な信号ごとにインジケーターを表示します。たとえば、次のモデルでは、信号 s2 および s3 はテスト ポイントです。

メモ

Simulink では、Simulink.Signal オブジェクトを使用してテスト ポイントとして指定された信号はグラフィカル モデルに含まれないため、インジケーターは表示されません。

テスト ポイントとして指定された信号は、ログが記録される場合があります。信号のログの詳細は、信号ログを使用した信号データの保存を参照してください。ログが有効になっている信号がわかるように、インジケーターの外観が変わります。

テスト ポイントのインジケーターをオンまたはオフにするには、Simulink エディターの [デバッグ] タブで [情報のオーバーレイ][ログおよびテストポイント] を選択して、オプションを有効または無効にします。

参考

関連するトピック