Simulink.Bus.cellToObject
バス情報の cell 配列から Simulink.Bus
オブジェクトを作成
説明
例
バス情報の cell 配列からの Simulink.Bus
オブジェクトの作成
この例では、ベース ワークスペースで cell 配列を作成し使用して Simulink.Bus
オブジェクトを生成する方法を示します。
Simulink.Bus
オブジェクトに含まれる要素を定義するには、Simulink.BusElement
オブジェクトの配列、または Simulink.BusElement
オブジェクトのプロパティ値の cell 配列を作成します。
配列内の要素を定義するときは、既定とは異なる値を指定します。
elementsArray(1) = Simulink.BusElement; elementsArray(2) = Simulink.BusElement; elementsArray(2).Name = "b"; elementsArray(2).Min = -3; elementsArray(2).Max = 3; elementsArray(2).Unit = "m";
プロパティ値の cell 配列内の要素を定義するときは、要素名、次元、データ型、実数/複素数、およびサンプリング モードを指定します。オプションとして、次元モード、最小値、最大値、単位、および説明を指定します。
elementsCellArray = {{'a',1,'double','real','Sample'}; ... {'b',1,'double','real','Sample','Fixed',-3,3,'m',''}};
この例では、elementsArray
と elementsCellArray
で同一の Simulink.BusElement
オブジェクトが作成されます。
複数の Simulink.Bus
オブジェクトを一度に作成するには、Simulink.Bus
オブジェクトを定義する 2 つの下位 cell 配列をもつ cell 配列を作成します。それぞれの Simulink.Bus
オブジェクトについて、バス名、ヘッダー ファイル、説明、データ スコープ、アライメント、要素の次元の保持、および要素を指定します。
busCell = {{'BusObjArray','','','Auto','-1','0',elementsArray}, ... {'BusObjCellArray','','','Auto','-1','0',elementsCellArray}};
cell 配列の cell 配列から Simulink.Bus
オブジェクトをベース ワークスペース内に作成します。
Simulink.Bus.cellToObject(busCell)
Simulink.Bus
オブジェクトを比較するには、型エディターを開きます。
typeeditor
Simulink.Bus
オブジェクトは名前以外は同じです。
入力引数
C
— バス情報
cell 配列の cell 配列
バス情報。cell 配列の cell 配列として指定します。下位の各 cell 配列には以下の Simulink.Bus
オブジェクト情報を含めなければなりません。
バス名
ヘッダー ファイル
説明
データ スコープ
配置
要素の次元を保持
要素
要素フィールドには、Simulink.Bus
オブジェクトが参照するそれぞれの Simulink.BusElement
オブジェクトについての次の情報をもつ配列または cell 配列を含めなければなりません。
要素名
次元
データ型
サンプル時間 (オプション) — サンプル時間を指定する場合、継承されたサンプル時間 (
-1
) を指定します。サンプル時間が継承されていないと、モデルのコンパイル中にエラーが発生します。詳細については、Simulink.BusElement オブジェクトで SampleTime プロパティはサポートされなくなるを参照してください。実数/複素数
サンプリング モード
要素フィールド配列または cell 配列には次の情報を含めることもできます。
次元モード
最小値
最大値
単位
説明
scope
— データ ディクショナリ
Simulink.data.Dictionary
オブジェクト
データ ディクショナリ。Simulink.data.Dictionary
オブジェクトとして指定します。この引数を使用する前に、関数 Simulink.data.dictionary.create
や関数 Simulink.data.dictionary.open
を使用してディクショナリを Simulink.data.Dictionary
オブジェクトで表しておきます。
scope
が空の場合、関数は Simulink.Bus
オブジェクトのソースとして MATLAB ベース ワークスペースを使用します。
ヒント
逆関数は Simulink.Bus.objectToCell
です。
バージョン履歴
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)