Main Content

リンク付きブロック

マスク ライブラリ ブロックまたは Subsystem ブロックをライブラリから Simulink® モデルに追加すると、ライブラリ ブロックの参照インスタンスが作成されます。このようなライブラリ ブロックの参照インスタンスは "リンク付きブロック" と呼ばれ、このブロックには親ライブラリ ブロックへのリンクまたはパスが含まれています。このリンクまたはパスにより、ライブラリ ブロックの更新時にリンク付きブロックを更新できます。

パフォーマンスを最適化するため、リンク付きブロックの子ブロック (およびパラメーター) は Simulink モデルに保存されません。そのようなモデルを読み込んで表示すると、親ライブラリから子ブロックが参照されます。このようなリンク付きブロックの子ブロックのパラメーター値を変更した場合、変更した情報はリンクされたデータとしてモデルに保存されます。

リンク付きブロックの親ライブラリ ブロックを検索するには、そのブロックを右クリックして [ライブラリ リンク][ライブラリ ブロックに移動] (Ctrl + L) を選択します。このオプションが利用できるのはリンクされているブロックについてのみであり、Simulink 組み込みブロックについては利用できません。ライブラリ リンクが意図せず無効化されたり、ライブラリ ブロックが誤って変更されたりするのを防ぐには、ライブラリでリンクのロック オプションを使用します。詳細については、ライブラリ内のブロックへのリンクのロックを参照してください。

メモ

リンク付きブロックのツールヒントは、参照ライブラリ ブロックの名前を示します。

A linked block with tooltip.

ライブラリ ブロックを (Simulink エディターまたはコマンド ラインで) 編集すると、Simulink によってその変更内容がリンク付きブロックで更新されます。古くなったリンクは以下の場合に更新されます。

  • モデルのシミュレーションまたは更新を行う。

  • find_system コマンドを使用する。

  • [モデル化] タブで、[モデルの更新][ブロックの更新] を選択します (または、Ctrl+K キーを押します)。

  • モデルまたはライブラリを読み込む (表示されているリンクのみが更新されます)。

  • get_param を使用して、ブロックのリンク ステータスを照会する (リンク付きブロックのプログラムによる制御を参照)。

    LinkStatus パラメーターまたは StaticLinkStatus パラメーターを使用してリンク ステータスを照会できます。

    • LinkStatus:まずリンク付きブロックを更新してからリンク ステータスを返します。

    • StaticLinkStatus:リンク付きブロックを更新せずにリンク ステータスを返します。

    LinkStatus ではなく StaticLinkStatus を選択して使用すると、Simulink のパフォーマンスが向上します。StaticLinkStatusLinkStatus の詳細については、リンク付きブロックのプログラムによる制御を参照してください。

リンク付きブロックのルール

  • リンク付きブロック パラメーター (既存のマスクを含む) の値をマスク ダイアログ ボックスで変更できます。

  • ライブラリ ブロックの初期化コードがリンク付きブロック パラメーターの値を変更できるようにするには、ライブラリ ブロックの [初期化] ペインで [ライブラリ ブロックで内容を変更することを許可] チェック ボックスをオンにします。

  • リンク付きブロックにコールバック パラメーターを設定することは推奨されません。

  • リンク付きブロックの参照ライブラリ ブロックがサブシステムである場合、リンク付きサブシステムのパラメーター値の変更など、非構造的な変更を行うことができます。リンク付きブロックに対する構造的な変更を行う場合、リンク付きブロックのそのライブラリ ブロックからのリンクを無効にします (ライブラリ ブロックへのリンクの無効化または解除を参照)。

  • モデルのコンパイル時に、モデルを完全にインスタンス化したり読み込んだりするために、一部のライブラリが Simulink で暗黙的に開くことがあります。ただし、メモリ使用量を最適化するために、それらのライブラリはコンパイル後に Simulink で閉じられます。コンパイル後にライブラリが閉じないことを確実にするには、Simulink で暗黙的に開くことに頼らず、明示的にライブラリを開く必要があります。

リンク付きブロックに関する用語

用語定義

親ライブラリ ブロック

リンク付きブロックの参照元のライブラリ ブロック。

リンク付きブロック

親ライブラリ ブロックへのリンクまたはパスを含むライブラリ ブロックの参照インスタンス。

ロックされたリンク

リンク付きブロックが意図せずに変更されるのを防ぎます。詳細については、ライブラリ内のブロックへのリンクのロックを参照してください。

無効なリンク

親ライブラリ ブロックから一時的に切断されているライブラリ リンク。詳細については、ライブラリ ブロックへのリンクの無効化または解除を参照してください。

リンクの復元

親ライブラリ ブロックへのリンク付きブロックの無効なリンクを復元します。詳細については、無効なリンクの復元を参照してください。

リンクの解除

リンク付きブロックのリンクを、親ライブラリ ブロックから完全に解除します。詳細については、ライブラリ ブロックへのリンクの無効化または解除を参照してください。

自己修正可能なリンク

リンク付き Subsystem ブロックで構造的な変更を行う機能をもつリンク付きブロック。詳細については、自己修正可能なリンク付きサブシステムを参照してください。

パラメーター付きリンク

リンク付き Subsystem ブロックのパラメーター値を変更すると作成されます。詳細については、パラメーター付きリンクと自己修正可能なリンク付きサブシステムを参照してください。

転送テーブル

古いライブラリ ブロック パスを新しいライブラリ ブロック パスにマッピングします。詳細については、転送テーブルを使用したライブラリ ブロックの互換性の維持を参照してください。

変換関数

ライブラリ リンクが必ず引き続き動作するよう、新しいライブラリ リンクと古いライブラリ リンクの InstanceData でパラメーターの不一致を修正します。詳細については、転送テーブルを使用したライブラリ ブロックの互換性の維持を参照してください。

参考

関連するトピック