Main Content

コールバックを使用したモデル動作のカスタマイズ

コールバックはユーザーが定義できるコマンドであり、モデルを開く処理やシミュレーションの停止など、特定のモデリング アクションに応じて実行されます。コールバックでは、ブロック線図またはブロックが特定の方法で処理されたときに実行される MATLAB® 式を定義します。

Simulink® は、ある種のモデル アクションを識別するモデル、ブロックおよび端子のコールバック パラメーターを提供します。コールバック パラメーターには、コードを与えます。このコードは、関連するモデリング アクションが発生したときに、Simulink が実行します。

たとえば、PreLoadFcn モデルのコールバック パラメーターに指定したコードは、モデルの読み込み前に実行されます。PreLoadFcn にコードを与えて、モデルが使用する変数を MATLAB ワークスペースに読み込むことができます。

コールバックで可能な処理

コールバックは、Simulink モデルをカスタマイズするための強力な手段です。コールバックが実行されるのは、ブロックをダブルクリックしたときや、シミュレーションを開始したときなど、モデル上でアクションを実行したときです。コールバックを使用して、MATLAB コードを実行できます。モデル、ブロックまたは端子のコールバックを使用して、Automatically Initialize Variables and Load Dataのような一般的なタスクを実行できます。

コールバックのタイプ

Simulink には、次のようなさまざまなタイプのコールバックが用意されています。

  • モデルのコールバック — モデルのコールバックは、モデルを読み込んだ後や保存した後など、指定したアクション ポイントで実行されます。モデル コールバックを参照してください。

  • ブロックのコールバック — ブロックのコールバックは、ブロックが読み込まれるとき、開かれるとき、編集されるときなど、ブロック イベントに対して実行されます。ブロックのコールバックを参照してください。

  • ブロック マスク コールバック — ブロック マスク コールバックは、マスク パラメーターの値が変わったときに実行されます。を参照してください。

  • 端子のコールバック — 端子のコールバックは、対応する端子の接続が変更されるたびに実行されます。端子のコールバックを参照してください。

  • 注釈のコールバック — 注釈では、ユーザーがその注釈をクリックしたときにコールバックを実行できます。Simulink.Annotationを参照してください。

  • Callback Button ブロックのコールバック — Callback Button ブロックでは、ユーザーがそのブロックをクリックしたときにコールバックが実行されます。

コールバックの制限

run コマンドは、モデルまたはブロックのコールバック コード内から呼び出さないでください。これを行うと、Simulink モデルの読み込み、コンパイルまたはシミュレーションを実行した場合、エラーや不正確な結果などの予期しない動作が生じる場合があります。

特定のコールバックの制限については、そのドキュメンテーションを参照してください。

関連するトピック