Main Content

open_system

モデル、ライブラリ、サブシステム、ブロックのダイアログ ボックスを開く

説明

open_system(obj) は、指定したモデル、ライブラリ、サブシステム、またはブロックを開きます。関数 open_system を呼び出すことは、現在のフォルダー ブラウザーでモデル ファイルやライブラリ ファイルをダブルクリックするか、Simulink® エディターでサブシステムやブロックをダブルクリックすることに相当します。

モデルとライブラリは新しいウィンドウで開きます。モデル内のサブシステムまたはブロックの動作はブロックのタイプおよびそのプロパティによって異なります。

  • ブロックやモデルに OpenFcn コールバックがある場合は、そのコールバックが評価されます。

  • ブロックやモデルに OpenFcn コールバックがなく、マスクが定義されている場合は、マスク パラメーターのダイアログ ボックスが開きます。

  • OpenFcn コールバックもマスク パラメーターもない場合は、オブジェクトが開きます。

    • 参照モデルは新しいウィンドウで開きます。

      ヒント

      参照モデルをモデルの階層構造のコンテキストで開くには、Simulink.BlockPath オブジェクトとともに関数 open を使用します。

    • サブシステムは同じウィンドウの新しいタブで開きます。

    • ブロックの場合は、ブロックの [ブロック パラメーター] ダイアログ ボックスが開きます。

特定のサブシステムまたはブロックを開くには、そのブロックを含むモデルまたはライブラリを読み込んでおかなければなりません。これを行わないと、エラーが発行されます。

2 番目の入力引数を指定することで、既定の動作をオーバーライドできます。

open_system(sys,"loadonly") は、指定したモデルまたはライブラリを Simulink エディターを開かずに読み込みます。この構文を使用することは、関数 load_system を呼び出すことに相当します。

open_system(sbsys,"window") は、サブシステム sbsys を Simulink エディターの新しいウィンドウで開きます。特定のサブシステムまたはブロックを開く前に、そのサブシステムまたはブロックを含むモデルまたはライブラリを読み込んでおきます。これを行わないと、エラーが発行されます。

open_system(sbsys,"tab") は、サブシステムを同じ Simulink エディター ウィンドウの新しいタブで開きます。特定のサブシステムまたはブロックを開く前に、そのサブシステムまたはブロックを含むモデルまたはライブラリを読み込んでおきます。これを行わないと、エラーが発行されます。

open_system(blk,"mask") は、blk で指定したブロックまたはサブシステムのマスクのダイアログ ボックスを開きます。開く前に blk を含むモデルまたはライブラリを読み込んでおきます。

open_system(blk,"force") は、マスク ブロックまたはマスク サブシステムのマスクの中を調べます。この構文は、そのマスク内のブロックのダイアログ ボックスまたはマスク サブシステムを Simulink エディターの新しいタブで開きます。この構文を使用することは、[マスク内を表示] メニュー項目に相当します。特定のサブシステムまたはブロックを開く前に、そのサブシステムまたはブロックを含むモデルまたはライブラリを読み込んでおきます。これを行わないと、エラーが発行されます。

open_system(blk,"parameter") は、[ブロック パラメーター] ダイアログ ボックスを開きます。

open_system(blk,"OpenFcn") は、ブロック blkOpenFcn コールバックを実行します。

すべて折りたたむ

myModel という名前のモデルがあると仮定します。

モデルを開きます。

open_system("myModel")

myModel という名前のモデルがあると仮定します。

モデルを開かずに読み込みます。

load_system("myModel")

myModel という名前のモデルがあると仮定します。モデルには、mySubsystem という名前のサブシステムが含まれています。

サブシステムを開きます。

load_system("myModel")
open_system("myModel/mySubsystem")

myModel という名前のモデルがあると仮定します。モデルには、mySubsystem という名前のサブシステムが含まれています。

サブシステムを新しいタブで開きます。

load_system("myModel")
open_system("myModel/mySubsystem","tab")

myModel という名前のモデルがあると仮定します。モデルには、mySubsystem という名前のサブシステムが含まれています。

サブシステムを独自の Simulink エディター ウィンドウで開きます。

load_system("myModel")
open_system("myModel/mySubsystem","window")

myRefModelBlock という名前の Model ブロックを使用して別のモデルを参照する myModel という名前のモデルがあると仮定します。

参照モデルを開きます。

load_system("myModel")
open_system("myModel/myRefModelBlock")

参照モデルは別の Simulink エディター ウィンドウで最上位モデルとして開かれます。

ヒント

参照モデルをモデルの階層構造のコンテキストで開くには、Simulink.BlockPath オブジェクトとともに関数 open を使用します。

myModel という名前のモデルがあると仮定します。モデルには、複数の Gain ブロックを含む mySubsystem という名前のサブシステムが含まれています。

サブシステム内にある最初の Gain ブロックの [ブロック パラメーター] ダイアログ ボックスを開きます。

load_system("myModel")
open_system("myModel/mySubsystem/Gain")

K という名前の Constant ブロックを含む myModel という名前のモデルがあるとします。

Constant ブロックの OpenFcn コールバックを定義します。

load_system("myModel")
set_param("myModel/K",OpenFcn="disp(''Hello World!'')")

ブロックのコールバックを実行します。

open_system("myModel/K","OpenFcn")

MATLAB® コマンド ウィンドウに Hello World という単語が表示されます。

myModel という名前のモデルがあると仮定します。モデルには、myMaskedSubsystem という名前のマスク サブシステムが含まれています。

マスク サブシステムの内容を開きます。

load_system("myModel")
open_system("myModel/myMaskedSubsystem","force")

2 つのモデル myModel1 および myModel2 があるとします。単一のコマンドで両方のモデルを開くことができます。

モデル名の cell 配列を作成します。

models = {'myModel1','myModel2'}

モデルを開きます。

open_system(models)

入力引数

すべて折りたたむ

モデル、参照モデル、ライブラリ、サブシステム、またはブロックのパス。string または文字ベクトルとして指定します。モデルが MATLAB パス上にない場合は、モデル ファイルの絶対パスを指定します。開いているか読み込まれているモデルに含まれているブロックまたはサブシステムを完全な名前で指定します (例: f14/Controller/Gain)。UNIX® システムでは、モデルの完全修飾パス名の先頭に、ユーザーのホーム ディレクトリを示すチルダ (~) を付けることができます。

データ型: string | char

モデルまたはライブラリの完全な名前またはパス。string または文字ベクトルとして指定します。

データ型: string | char

開いているか読み込まれているモデルに含まれているサブシステムの完全な名前またはパス。string または文字ベクトルとして指定します。

データ型: string | char

開いているか読み込まれているモデルに含まれているブロックまたはサブシステムの完全な名前またはパス。string または文字ベクトルとして指定します。

データ型: string | char

ヒント

参照モデルをモデルの階層構造のコンテキストで開くには、Simulink.BlockPath オブジェクトとともに関数 open を使用します。

バージョン履歴

R2006a より前に導入