このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。
[入力]コンフィギュレーションパラメーターでデータを手動で指定するか,ルート尺寸マッパーツールを使用することで,バスデータを最上位の入力端子にインポートできます。ルート尺寸マッパーツールを使用したバスデータのインポートの詳細については,バスデータのインポートを参照してください。
バス(バーチャル,非バーチャル,バス配列)データをバスオブジェクトで定義した最上位レベルの入力端子にインポートできます(金宝app仿真软件。公共汽车
を参照)。最上位の轮廓尺寸ブロックで,[データ型)を[バス]
に設定し,バスオブジェクトの名前を指定します。バス信号のデータ値を指定するには,次の構造体を使用します。
MATLAB®timeseries
オブジェクト
MATLAB时间表
オブジェクト
timeseries
オブジェクトと时间表
オブジェクトの組み合わせ
構造体のフィールドに含めないバス要素は,グラウンド値を使用します。空行列を使用して,グラウンド値を使用するように指定できます。
メモ
読み込む时间表
データを指定するとき,时间表
には1つの信号のみのデータを含めなければなりません。
timeseries
オブジェクトまたは时间表
オブジェクト(または両方)の構造体は,以下についてバス要素と一致しなければなりません。
階層
構造体の名前は,バス要素名と一致しなければなりません。timeseries
オブジェクトの的名字
プロパティは,バス要素名と一致する必要はありません。
データ型
次元
実数/複素数
構造体フィールドの順序は,バス要素の順序と一致する必要はありません。
構造体を数据集
オブジェクトの要素として含めることができます。構造体はコンマ区切りのリストで使用できます。コンマ区切りのリストには空の行列を指定できます。空の行列は,バス信号にグラウンド値を使用します。
たとえば,入力端子三机一体
およびin3
のデータを読み込み,端子in2
にグラウンド値を使用して,[入力]パラメーターに次を入力します。
in3 in1, []
初期化データの部分仕様の使用を含む,バス信号を初期化できます。詳細については,バス要素の初期条件の指定を参照してください。
バス配列のデータをルートの轮廓尺寸ブロックにインポートする場合の詳細については,バス配列のデータのインポートを参照してください。
ルート尺寸マッパーツールを使用した最上位の轮廓尺寸ブロックへのインポートおよびマッピングを行う信号データには,バスデータを含めることができます。このツールを使用して,バス信号を最上位の启用ブロックまたは触发ブロックにマッピングすることはできません。
エクスターナルモードで入力端子を使用してバスをインポートすることはできません。ラピッドアクセラレータモードでバスデータをインポートするには,数据集
形式を使用します。
このモデルには,范围ブロックに接続された2つの轮廓尺寸ブロックがあります。三机一体
ブロックのデータ型は継承(非バスデータ)であり,In2
ブロックのデータ型はバスオブジェクトBusObject
によって定義されます。モデルにはBusObject
とそのサブバスBusObject1
を読み込むコールバックがあります。
BusObject
バスオブジェクトには以下の2つの要素があります。
c
s1
。2次のつの要素を含む入れ子にされたバスです。
一个
b
模型
を開きます。
非バスデータをインポートするための,三机一体
のMATLABtimeseries
オブジェクトを作成します。
次に例を示します。
t1 = (1:10) ';d1 =罪(t1);三机一体= timeseries (d1, t1);
MATLABtimeseries
オブジェクト,MATLAB时间表
オブジェクト,またはこれらのオブジェクトのタイプの組み合わせで構成できる入力構造体を作成します。グラウンド値を使用しないリーフバス要素ごとに1つのtimeseries
または时间表
オブジェクトを作成します。この例ではb
バス要素のグラウンド値を使用するため,この要素のtimeseries
または时间表
オブジェクトは必要ありません。
t2 = (1:5) ';d2 = cos (t2);in2.c = timeseries (d1, t1);in2.s1。一个= timetable(seconds(t2),d2);
作成したMATLABtimeseries
オブジェクトは,インポートされたバスデータの要件で説明されているように,対応するバス要素と一致しなければなりません。
数据集
オブジェクトを作成し,三机一体
およびin2
をデータセットに追加します。
ds = 金宝appSimulink.SimulationData.Dataset;ds = ds.addElement(三机一体,“in1_signal”);ds = ds.addElement (in2,“in2_signal”);
[コンフィギュレーションパラメーター]、[データのインポート/エクスポート]、[入力]パラメーターのエディットボックスに,数据集
オブジェクトds
を入力します。
モデルのシミュレーションを実行します。In2に接続された Scope ブロックは、インポートされたバス データを表示します。
バスからtimeseries
オブジェクトの構造体を作成するために必要なMATLABtimeseries
オブジェクトの数とデータ型,実数/複素数,次元を判断するには,以下のメソッドを使用します。
金宝appSimulink.Bus.getNumLeafBusElements
金宝appSimulink.Bus.getLeafBusElements
たとえば,バスオブジェクトBusObject
の場合,以下のようにします。
num_el = BusObject.getNumLeafBusElements
num_el = 3
el_list = BusObject.getLeafBusElements
el_list = 3x1 BusElement数组的属性:Min Max DimensionsMode SampleTime Description Units Name DataType Complexity Dimensions
el_list(1)。维
ans = 1
定義されたtimeseries
オブジェクトがある場合,これを使用して,バスオブジェクトに基づいてtimeseries
オブジェクトの構造体を作成できます。関数
を使用します。たとえば,金宝appSimulink.SimulationData.createStructOfTimeseries
timeseries
オブジェクト壹空间
、ts2
およびts3
を定義して,バスオブジェクトMyBusObject
を定義している場合,次のコマンドを使用して,timeseries
オブジェクトの構造体を作成できます。
输入= Simu金宝applink.SimulationData.createStructOfTimeseries (...“MyBusObject”, {ts1, ts2, ts3});
细胞配列内のtimeseries
オブジェクトの数は,バスオブジェクト内のリーフ要素の数と一致しなければなりません。各timeseries
オブジェクトのデータ型,次元および実数/複素数は,対応するバスオブジェクトのリーフノードの各属性と一致しなければなりません。
ルート轮廓尺寸ブロックを使用してバス配列のデータをインポート(読み込み)するには,MATLABtimeseries
オブジェクトの構造体の配列を使用します。
メモ
启用、触发、从工作空间または从文件ブロックを使用して,バス配列のデータをインポートすることはできません。
以前のシミュレーションで取得したバス配列の信号のログデータを後続のシミュレーション実行でルートレベルの尺寸へのラウンドトリップ入力として使用できます。ログデータは,轮廓尺寸ブロックのデータのフル仕様に該当します。
MATLABtimeseries
オブジェクトの構造体の配列を作成して,インポートするデータを完全に指定する場合,以下のようにします。
バス信号内の信号と同じ順序で構造体のフィールドを指定してください。
バス内の信号よりも多くのフィールドを構造体に含めないでください。
リーフフィールドについては,バス内の対応する信号のデータ型,次元および複雑度と正確に一致させてください。
バス配列の部分データを指定するには,リーフノードでMATLABtimeseries
オブジェクトを使用して構造体のMATLAB配列を作成します。
部分データを指定する目的で作成する構造体は,以下のルールに従わなければなりません。
リーフノードやサブ分岐など,フィールドを省略できます。次元も省略できます。フィールドを指定しない場合,金宝app仿真软件®はそのフィールドのグラウンド値を使用します。
入れ子にされたバスのノードについては,バス配列の対応するノードの次元以下に各フィールドの次元を設定します。
この例は,データ型がバスオブジェクトMyBus
として定義されたルート轮廓尺寸ブロックを使用して,インポート対象の部分データを指定する方法を示します。モデル(ex_partial_loading_aob_model
)とインポートするデータを定義するMATLABコード(ex_partial_loading_aob_data.m)を開くことができます。
ex_partial_loading_aob_model
のシミュレーションを実行すると,以下が表示されます。
输入
轮廓尺寸ブロックは,MyBus
バスオブジェクトをデータ型として使用します。
バスのMyBus
配列には,MyBus (1)
とMyBus (2)
が含まれます。バス配列に含まれる2つのバスを反映するため,端子の次元は2に設定されて,(非バーチャルバスとして出力)が有効になります。
MyBus (1)
とMyBus (2)
を含む,バス配列の要素を以下に示します。強調色は,データがインポートされるバス配列のノードを強調表示します。
インポートするデータを定義するMATLABコードを以下に示します。コードを強調表示する色は,バス配列の対応するノードの色と一致します。このモデルで使用されたコードを表示するには,MATLABコードファイルex_partial_loading_aob_data.mを開きます。
インポートデータを定義するコードは,以下のように規定されます。
timeseries
オブジェクトMyBusValue
は,強調表示されたノードのデータを指定します。
MyBus (2)
のtimeseries
オブジェクト英国电信
は,英国电信
がリーフノードに該当するので,対応するバス要素の次元,データ型および複雑度と正確に一致しなければなりません。
構造体は,Y (2)
のデータを指定します。Y
の入れ子にされた最初のバスと最後のバス(つまり,Y (1)
とY (3)
)は省略できます。
この例では,Y (2)
のデータを指定します。Y
の入れ子にされた最初のバスと最後のバス(つまり,Y (1)
とY (3)
)は省略できます。
インポートデータのMyBusValue
変数を指定したら,[コンフィギュレーションパラメーター]、[データのインポート/エクスポート]、[入力]パラメーターをMyBusValue
に設定します。