Simulink.Bus.save
関数で Simulink.Bus
オブジェクト定義を保存する
構文
説明
Simulink.Bus.save(
は、file
,fileFormat
)fileFormat
が "object"
の場合、配列を使用して Simulink.Bus
オブジェクトの定義を保存します。"object"
形式を使用すると、関数が読みやすくなります。fileFormat
の既定の設定は cell 配列を使用する "cell"
であり、こちらの方がコンパクトになります。
Simulink.Bus.save(
は、file
,fileFormat
,busNames
)busNames
で指定された Simulink.Bus
オブジェクトの定義のみを保存します。
Simulink.Bus.save(
は、file
,fileFormat
,busNames
,scope
)scope
で指定されたデータ ディクショナリの Simulink.Bus
オブジェクト定義を保存します。
例
Simulink.Bus
オブジェクト定義の保存
Simulink.Bus
オブジェクトを作成した場合、将来使用できるように Simulink.Bus
オブジェクト定義を保存します。ベース ワークスペースで Simulink.Bus
オブジェクトを再作成する関数を作成するには、関数 Simulink.Bus.save
を使用します。
BusHierarchy
という名前のモデル内の Bus Creator1
という名前の Bus Creator ブロックから Simulink.Bus
オブジェクトを作成するとします。
mdl = "BusHierarchy"; block = "BusHierarchy/Bus Creator1"; load_system(mdl) busInfo = Simulink.Bus.createObject(mdl,block);
TopBus
および NestedBus
という名前のオブジェクトがベース ワークスペース内にあります。
将来使用できるようにオブジェクト定義を関数に保存するには、関数 Simulink.Bus.save
を使用します。
file1 = "DefaultFunction";
Simulink.Bus.save(file1);
既定では、"cell"
形式が関数で使用されます。たとえば、cell 配列で Chirp
要素が定義されています。
{'Chirp', 1, 'double', 'real', 'Sample', 'Fixed', [], [], '', ''};
読みやすさを考慮して書式設定された関数では、関数の形式を "object"
として指定します。
file2 = "FormattedFunction"; Simulink.Bus.save(file2,"object");
"object"
形式では、ドット表記を使用してプロパティ値を割り当てる配列によって Chirp
要素が定義されています。
elems(1) = Simulink.BusElement; elems(1).Name = 'Chirp'; elems(1).Dimensions = 1; elems(1).DimensionsMode = 'Fixed'; elems(1).DataType = 'double'; elems(1).Complexity = 'real'; elems(1).Min = []; elems(1).Max = []; elems(1).DocUnits = ''; elems(1).Description = '';
Simulink.Bus
オブジェクトを 1 つのみ関数内に保存するには、オブジェクト名を指定します。
file3 = "PartialSaveFunction"; Simulink.Bus.save(file3,"object",{'NestedBus'});
この関数は NestedBus
オブジェクトのみを定義します。
入力引数
file
— 生成する関数の名前
文字ベクトル | string スカラー
生成する関数の名前。文字ベクトルとして指定します。ファイル名は一意でなければなりません。
例: Simulink.Bus.save('BusObjectFunction');
fileFormat
— 生成する関数の形式
'cell'
(既定値) | 'object'
生成する関数の形式。'cell'
または 'object'
のいずれかとして指定します。'cell'
形式の方がコンパクトですが、'object'
形式の方が読みやすくなります。
'cell'
形式では、Simulink.Bus
オブジェクト定義を cell 配列の cell 配列に保存し、Simulink.Bus.cellToObject
を呼び出して Simulink.Bus
オブジェクトを作成します。後続のそれぞれの cell 配列は Simulink.Bus
オブジェクトを表しており、次のプロパティを含んでいます。
バス名
ヘッダー ファイル
説明
データ スコープ
配置
要素の次元を保持
要素
要素フィールドは、Simulink.Bus
オブジェクトが参照するそれぞれの Simulink.BusElement
オブジェクトについてのこの情報を含む cell 配列です。
要素名
次元
データ型
サンプル時間 — サンプル時間が継承されていないと、cell 配列にこのフィールドが含まれます。サンプル時間が継承されていないと、モデルのコンパイル中にエラーが発生します。詳細については、Simulink.BusElement オブジェクトで SampleTime プロパティはサポートされなくなるを参照してください。
実数/複素数
サンプリング モード
次元モード
最小値
最大値
単位
説明
'object'
形式では、Simulink.Bus
オブジェクト定義は配列として保存されます。関数は、配列インデックス付けを使用して配列の要素にアクセスし、ドット表記を使用してプロパティ値を割り当てます。
例: Simulink.Bus.save('BusObjectFunction','object');
busNames
— 保存する Simulink.Bus
オブジェクト
空の cell 配列 | バス オブジェクトの cell 配列
保存する Simulink.Bus
オブジェクト。空の cell 配列 ({}
) または Simulink.Bus
オブジェクト名の cell 配列として指定します。
Simulink.Bus
オブジェクト名の cell 配列を指定すると、指定されたオブジェクトのみが保存されます。空の cell 配列を指定すると、すべての
Simulink.Bus
オブジェクトが保存されます。
空の cell 配列を使用して、scope
によって指定したデータ ディクショナリ内の Simulink.Bus
オブジェクトをすべて保存します。
例: Simulink.Bus.save('BusObjectFunction','cell',{'myBusObj'});
scope
— データ ディクショナリ
Simulink.data.Dictionary
オブジェクト
データ ディクショナリ。Simulink.data.Dictionary
オブジェクトとして指定します。この引数を使用する前に、関数 Simulink.data.dictionary.create
や関数 Simulink.data.dictionary.open
を使用してディクショナリを Simulink.data.Dictionary
オブジェクトで表しておきます。
scope
が空の場合、関数は Simulink.Bus
オブジェクトのソースとして MATLAB ベース ワークスペースを使用します。
例: Simulink.Bus.save('BusObjectFunction','cell',{},dataDictionaryObject);
バージョン履歴
R2006a より前に導入R2020b: Simulink.BusElement
オブジェクトで SampleTime
プロパティはサポートされなくなる
Simulink.BusElement
オブジェクトの SampleTime
プロパティはサポートされなくなりました。
サンプル時間を指定する BusElement
オブジェクトが原因でコンパイル中にエラーが発生します。サンプル時間の指定を BusElement
オブジェクトから削除するには、SampleTime
を -1
に設定します。
Simulink.Bus.cellToObject
は、バス要素のサンプル時間を指定する cell 配列を引き続き受け入れます。Simulink.Bus.objectToCell
、Simulink.Bus.save
、および Simulink.Bus.createObject
は、サンプル時間が継承されない場合に、サンプル時間を含む cell 配列または配列を引き続き返します。サンプル時間が継承される場合 (-1
)、そのサンプル時間は省略されます。同様に、型エディターとモデル エクスプローラーは、継承時にサンプル時間を省略します。
バスの要素のサンプル時間を指定するには、対応するブロックの SampleTime
ブロック パラメーターを使用する。たとえば、In Bus Element、Out Bus Element、および Signal Specification ブロックを使用してサンプル時間を指定できます。
R2016b: Simulink.BusElement
オブジェクトで SamplingMode
プロパティはサポートされなくなりました。
Simulink.BusElement
オブジェクトの SamplingMode
プロパティは削除されました。Simulink.BusElement
オブジェクトの SamplingMode
プロパティを使用するスクリプトは引き続き機能します。関数 Simulink.Bus.cellToObject
は SamplingMode
フィールドを引き続き必要とします。関数 Simulink.Bus.objectToCell
では引き続き出力 cell 配列にサンプリング モードが含まれます。cell 配列を使用する関数に Simulink.Bus
オブジェクトの定義を保存すると、引き続き cell 配列にサンプリング モードが含まれます。
将来のリリースでは、SamplingMode
プロパティのサポートは削除される予定です。
信号がサンプルベースとフレームベースのどちらかであるか指定するには、信号レベルではなく、ブロック レベルで入力信号のサンプリング モードを定義してください。
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)