主要内容

このペ,ジの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

金宝appSimulink.SimulationData.createStructOfTimeseries

timeseriesデ,タの構造体を作成して,バスのシミュレ,ション入力として読み込む

説明

tsStruct= 金宝appSimulink.SimulationData.createStructOfTimeseries (busObjtsStructInは,金宝app仿真软件。公共汽车オブジェクトbusObjによって指定された属性に一致する属性と,timeseriesオブジェクトtsStructInの構造体によって指定されたデ,タを使用して,構造体を作成します。

入力構造体に含まれる名前がバスオブジェクトによって指定された名前と一致しない場合,関数はバスオブジェクトの仕様と一致するように出力構造体のフィールド名を変更します。デ,タ型や実数/複素数といったその他の属性が一致しない場合,関数はエラ,を返します。

この構文を使用して,バスのデ,タを完全もしくは部分的に指定するシミュレ,ション入力を作成できます。この構文を使用して,金宝app仿真软件。公共汽车オブジェクトの名前と一致するように構造体要素の名前を変更することもできます。

tsStruct= 金宝appSimulink.SimulationData.createStructOfTimeseries (busObjtsCellArrayは,金宝app仿真软件。公共汽车オブジェクトbusObjによって指定された属性と一致する属性と,timeseriesオブジェクトtsCellArrayのcell配列によって指定されたデタを使用して,timeseriesオブジェクトの構造体を作成します。

入力構造体に含まれる名前がバスオブジェクトによって指定された名前と一致しない場合,関数はバスオブジェクトの仕様と一致するように出力構造体のフィールド名を変更します。デ,タ型や実数/複素数といったその他の属性が一致しない場合,関数はエラ,を返します。

この構文によって,timeseriesオブジェクトのフラットリストを使用してバスのデータを完全もしくは部分的に指定するシミュレーション入力を作成できます。関数は,深さ優先探索を使用して金宝app仿真软件。公共汽车オブジェクトによって指定された階層にtimeseriesオブジェクトをマッピングします。

tsStructArray= 金宝appSimulink.SimulationData.createStructOfTimeseries (busObjtsCellArray会变暗は,各構造体の属性が金宝app仿真软件。公共汽车オブジェクトbusObjによって定義された属性に一致するtimeseries構造体の配列を,timeseriesオブジェクトtsCellArrayのcell配列によって指定されたデ,タを使用して作成します。入力会变暗は,配列の次元を指定します。

tsStruct= 金宝appSimulink.SimulationData.createStructOfTimeseries (tsArrayは,金宝app仿真软件。TsArrayオブジェクトtsArrayに格納されているバスデ,タからtimeseriesオブジェクトの構造体を作成します。R2016aより前のバ、ジョンでは,信号ログによって,ログ記録されたバス データを保存するための金宝app仿真软件。TsArrayオブジェクトが作成されます。R2016aより前のリリ、スでModelDataLogs形式を使用してログ記録されたバスデータをシミュレーション入力として使用する場合は,この構文を使用します。

すべて折りたたむ

関数金宝appSimulink.Simulationdata.createStructOfTimeseriesを使用して,timeseriesオブジェクトの構造体を作成し,バス信号のシミュレ,ション入力として使用することができます。この例では,異なるシミュレーションでログ記録された時系列データを使用して、モデルに読み込む時系列構造体を作成する方法を示します。

時系列構造体の作成

ex_log_structtimeseriesモデルを開きます。

open_system (“ex_log_structtimeseries”

モデルは常量ブロックと总线创建者ブロックを使用して,信号一个bc,およびdをも2のバスbus1bus2をビルドします。モデルは信号ログを使用してバス データをログ記録します。モデルをシミュレートしてバス データを作成します。

Out = sim(“ex_log_structtimeseries”);

ログ変数logsoutのデ,タを表示します。信号ログによって,金宝appSimulink.SimulationData.Signalオブジェクトを要素としても金宝appSimulink.SimulationData.Datasetオブジェクトが作成されます。

Logsout = out.logsout
logsout = 金宝appSimulink.SimulationData.Dataset 'logsout' with 2个元素名称BlockPath ____ ____________________________________ 1 [1x1 Signal] bus1 ex_log_structtimeseries/Bus Creator 2 [1x1 Signal] bus2 ex_log_structtimeseries/Bus creat1 -使用花括号{}访问,修改或使用索引添加元素。

関数得到を使用して,bus2金宝appSimulink.SimulationData.Signalオブジェクトを選択できます。バスデ,タは金宝appSimulink.SimulationData.Signalオブジェクトのプロパティにあります。bus2を表すデ,タは,cおよびdという名前のtimeseriesオブジェクトを含む構造体にログ記録されます。

logsout.get (2) . values
Ans = struct with fields: c: [1x1 timeseries] d: [1x1 timeseries]

モデルコンフィギュレ,ションを読み込む

ログに記録されたシミュレ,ションデ,タを入力として使用するex_load_structtimeseriesモデルを開きます。

open_system (“ex_load_structtimeseries”

モデルはInBus导入ブロックを使用して入力バスデ,タを読み込みます。公共汽车选择or ブロックはバスから信号を選択して、Display ブロック上に表示します。

InBusブロックをダブルクリックして,ダ[信号属性]タブでその[デ,タ型]をチェックします。デ,タ型は公共汽车と呼ばれる金宝app仿真软件。公共汽车オブジェクトによって指定されます。

ダアログを閉じて,モデルエクスプロラを開きます。[コ,ルバック]タブでは,モデルがPreLoadFcnを使用して,输入ブロックのデ,タ型を定義する金宝app仿真软件。公共汽车オブジェクトを定義していることがわかります。

コンフィギュレ,ションパラメ,タ,を開き,[デタのンポト/エクスポト]ペereplicationンの[入力]パラメ,タ,の指定を表示します。モデルは[入力]に変数inputBusを使用します。

timeseriesデ,タの構造体からシミュレ,ション入力を作成

bus1に関してログ記録されたデ,タを読み込むには,構造体デ,タをモデルの入力変数に割り当てるだけです。

inputBus = logsout.get(1).Values
inputBus = struct with字段:a: [1x1 timeseries] b: [1x1 timeseries]

モデルをシミュレ,トするときに,显示ブロックには,bus1にログ記録され,モデルに読み込まれた値12が表示されます。

bus2に関してログ記録されたデ,タを読み込むには,输入ブロックのデ,タ型を定義する金宝app仿真软件。公共汽车オブジェクトと金宝appSimulink.SimulationData.createStructOfTimeseriesを使用して,金宝app仿真软件。公共汽车オブジェクトで指定された名前をもtimeseriesの構造体を作成する必要があります。

inputBus = 金宝appSimulink.SimulationData.createStructOfTimeseries(“公共汽车”...logsout.get (2) . values)
inputBus = struct with字段:a: [1x1 timeseries] b: [1x1 timeseries]

モデルをシミュレ,トするときに,显示ブロックには,bus2にログ記録され,モデルに読み込まれた値3.4が表示されます。

この例では,関数金宝appSimulink.SimulationData.createStructOfTimeseriesを使用してバスに対する部分的に指定されたシミュレ,ション入力を作成する方法を示します。この例では,ex_log_structtimeseriesからのデ,タをログ記録してから,そのデ,タをex_load_structtimeseriesに読み込みます。

timeseriesデ,タの作成

最初にex_log_structtimeseriesモデルを開いてシミュレ,トします。モデルは、Constant ブロックと Bus Creator ブロックを使用して作成された 2 つのバス信号bus1bus2をログ記録します。金宝app仿真软件。SimulationOutputオブジェクトlogsout数据集にアクセスします。

open_system (“ex_log_structtimeseries”) out = sim(“ex_log_structtimeseries”);Logsout = out.logsout;

timeseriesデ,タの構造体またはtimeseriesデ,タのcell配列を使用して,バスのシミュレ,ション入力を部分的に指定できます。

timeseriesデ,タの構造体を使用したバスデ,タの部分指定

前のセクションでログ記録したデ,タの一部を読み込むモデルex_load_structtimeseriesを開きます。

open_system (“ex_load_structtimeseries”

関数得到を使用してbus1に対してログ記録されたtimeseriesデ,タの構造体にアクセスします。

bus1 = logsout.get(1).Values;

次に,bデタを[]で置き換えます。

bus1。b= [];

ex_load_structtimeseriesモデルは変数inputBusをその[入力]として使用します。轮廓尺寸ブロックのデータ型を定義する金宝app仿真软件。公共汽车オブジェクト公共汽车ex_load_structtimeseriesモデルのPreLoadFcnコ,ルバックで定義されます。bus1の信号名はex_load_structtimeseriesモデルの导入ブロックに対する金宝app仿真软件。公共汽车オブジェクトの指定と一致するため,変更せずにログ記録した構造体を使用できます。bus1のデ,タを読み込むには,bus1を変数inputBusに割り当てます。

inputBus = bus1;

モデルのシミュレ,ションを実行します。显示ブロックに、ログ記録された値(一个に対する1bに対する0)が表示されます。シミュレ,ションは,信号のデタを指定しない場合、グラウンド値を使用します。

loadOut = sim(“ex_load_structtimeseries”);

次に,bus2に対してログ記録されたデ,タを読み込みます。bus2の信号名はex_load_structtimeseriesモデルの导入ブロックに対する金宝app仿真软件。公共汽车オブジェクトの指定と一致しません。構造体内のデ,タを変更して,バスの入力デ,タを部分的に指定します。次に,関数金宝appSimulink.SimulationData.createStructOfTimeseriesを使用して,バスの指定と一致するように構造体内の名前を変更します。

bus2 = logsout.get(2).Values;bus2。d= []; inputBus = bus2; inputBus = Simulink.SimulationData.createStructOfTimeseries(“公共汽车”, inputBus);

モデルのシミュレ,ションを実行します。显示ブロックに、ログ記録された値(一个に対する3.bに対する0)が表示されます。

loadOut = sim(“ex_load_structtimeseries”);

時系列デ,タのcell配列を使用したバスデ,タの部分指定

timeseriesデ,タがある場合,金宝appSimulink.SimulationData.createStructOfTimeseriesを使用してtimeseriesデ,タのcell配列を使用するバスのシミュレ,ション入力を部分的に指定できます。ex_load_structtimeseriesモデルの输入ブロックに対するバスの部分指定の一部として,bus2の信号dtimeseriesデ,タを読み込みます。ex_load_structtimeseriesモデルのPreLoadFcnコ,ルバックは输入ブロックのデ,タ型を定義する金宝app仿真软件。公共汽车オブジェクト公共汽车を定義します。

d = logsout.get(2).Values.d;inputBus = 金宝appSimulink.SimulationData.createStructOfTimeseries(“公共汽车”...{d, []});

モデルのシミュレ,ションを実行します。ex_load_structtimeseriesモデルの信号一个の显示ブロックに,ex_log_structtimeseriesモデルから信号dにログ記録されたデ,タが表示されます。信号bの显示ブロックに0が表示されます。

loadOut = sim(“ex_load_structtimeseries”);

この例では,関数金宝appSimulink.SimulationData.createStructOfTimeseriesを使用してバスの配列に対するシミュレ,ション入力を生成する方法を示します。1のモデルをシミュレトしてtimeseriesを作成します。次に,ログ記録されたデータを使用して入力構造体を作成し、別のモデルのバスの配列に読み込みます。

timeseriesデ,タの作成

開始するには,ex_log_structtimeseriesモデルを開きます。

open_system (“ex_log_structtimeseries”

モデルは常量ブロックと总线创建者ブロックを使用して,bus1bus2の2のバスを作成します。信号には一个bcdという名前が付けられます。モデルをシミュレ,トしてログ記録されたバスデ,タを作成します。

Out = sim(“ex_log_structtimeseries”);

出力には,ログ記録されたデ,タをも金宝appSimulink.SimulationData.Datasetオブジェクトlogsoutが含まれます。関数得到を使用してbus1信号とbus2信号にアクセスできます。各信号のデ,タは金宝appSimulink.SimulationData.Signalオブジェクトのパラメ,タ,にあります。ドットの後に続けて信号名を使用することで,バス要素にアクセスできます。bus1数据集オブジェクトの最初の信号であり,信号一个bが含まれます。bus2には信号cdが含まれます。

Logsout = out.logsout;a = logsout.get(1).Values.a;b = logsout.get(1).Values.b;c = logsout.get(2).Values.c;d = logsout.get(2).Values.d;

モデルコンフィギュレ,ションを読み込む

バスの配列を入力として使用するモデルex_structtimeseries_aobを開きます。

open_system (“ex_load_structtimeseries_aob”

モデルはInAoB输入ブロックを使用して,シミュレ,ション入力を読み込みます。选择or ブロックはバスの配列からバスを選択し、Bus Selector ブロックは信号を選択し、Display ブロックに表示します。

InAoBブロックをダブルクリックして,ダ[信号属性]ペ@ @ンを確認します。ブロックの[デ,タ型]金宝app仿真软件。公共汽车オブジェクト公共汽车で定義された型をも[バス]に設定されます。[端子の次元]パラメ,タ,は(2 - 1)に設定されます。

金宝app仿真软件。公共汽车オブジェクト公共汽车の定義は,モデルエクスプロ,ラ,で[コ,ルバック]タブに表示できます。このモデルはPreLoadFcnを使用してバスオブジェクトを定義します。

コンフィギュレ,ションパラメ,タ,を開いて,[入力]パラメ,タ,を確認します。このモデルは変数inputAoBを入力として使用します。

バスの配列のシミュレ,ション入力の作成

金宝appSimulink.SimulationData.createStructOfTimeseriesおよび最初のセクションでログ記録したデータを使用して,バスの配列に対するシミュレーション入力として読み込む構造体を作成します。次元をInAoBブロックの次元と一致する(2 - 1)として指定します。

inputAoB = 金宝appSimulink.SimulationData.createStructOfTimeseries(“公共汽车”...} {a, b, c, d, 1 [2]);

モデルをシミュレ,トすると,ex_log_structtimeseriesモデルからログ記録された信号一个bcdが显示ブロックに表示されます。バスの配列には信号一个bをも2のバスが含まれます。金宝appSimulink.SimulationData.createStructOfTimeseriesによって,信号cdの名前がバスの配列で使用される金宝app仿真软件。公共汽车の指定と一致するように変更されます。

inputAoB (2)
Ans = struct with fields: a: [1x1 timeseries] b: [1x1 timeseries]

モデルのシミュレ,ションを実行します。显示ブロックにログ記録された値が表示されます。

Aob_out = sim(“ex_load_structtimeseries_aob”);

R2016aより前のリリ、スでは、ModelDataLogs形式を使用してシミュレ,ションデ,タをログに記録する場合,バスデ,タは金宝app仿真软件。TSArrayオブジェクトとして格納されます。R2016aより後のリリ、スを使用するModelDataLogs形式を使用してデ,タをログ記録することはできません。この例のログ記録されたデ,タlogsoutは,R2016aより前のリリ,スを使用してModelDataLogs形式でログ記録されました。変数logsoutには信号バスbus1に対するデ,タが含まれます。

logsout
logsout = 金宝appSimulink。ModelDataLogs(log_modeldatalogs): Name Elements Simulink Class bus1 2 TsArray

ログ記録されたデ,タをバスのシミュレ,ション入力として読み込むには,bus1内のデ,タからtimeseriesオブジェクトの構造体を作成します。

struct_of_ts =...金宝appSimulink.SimulationData.createStructOfTimeseries (logsout.bus1)
Struct_of_ts = const1_sig: [1x1 timeseries] const2_sig: [1x1 timeseries]

入力引数

すべて折りたたむ

timeseriesオブジェクトの出力構造体でデ,タの属性を指定する金宝app仿真软件。公共汽车オブジェクトの名前。timeseriesオブジェクトの構造体をバスのシミュレ,ション入力として読み込む場合,busObjはル,トレベルの轮廓尺寸ブロックのデ,タ型を定義するバスです。

金宝appSimulink.SimulationData.createStructOfTimeseriesは,金宝app仿真软件。公共汽车オブジェクトの指定に対するデタ型と実数/複素数を含めて入力timeseries属性を検証します。要素名が金宝app仿真软件。公共汽车の指定と入力timeseriesデ,タ間で一致しない場合,金宝appSimulink.SimulationData.createStructOfTimeseriesはバスの指定と一致するようにtimeseriesデ,タの名前を変更します。その他の属性が一致しない場合,関数はエラ,を返します。

例:“MyInputBus”

金宝app仿真软件。公共汽车オブジェクトに従ってtimeseriesオブジェクトの出力構造体の作成に使用されるtimeseriesデ,タの構造体。この構造体は,金宝app仿真软件。公共汽车オブジェクトと同じ階層をもたなければなりません。

バスのデ,タを部分的に指定するには,グラウンド値を使用するバス要素の代わりに[]を使用します。

timeseriesオブジェクトの出力構造体のデ,タを指定するtimeseriesオブジェクトのcell配列。

バスのデ,タを部分的に指定するには,グラウンド値を使用するバス要素の代わりに[]を使用します。

関数金宝appSimulink.SimulationData.createStructOfTimeseriesは深さ優先検索を使用してcell配列のtimeseries要素を金宝app仿真软件。公共汽车オブジェクトで指定した階層にマッピングします。

例:{ts1, ts2, ts3}

例:{ts1, [], ts3}

依存関係

会变暗引数を指定する場合,细胞配列の细胞数は,指定した次元の積で乗算した金宝app仿真软件。公共汽车オブジェクトの個々の信号要素の数と一致しなければなりません。

timeseries構造体の配列の次元。ベクトルとして指定します。

次元をスカラnとして指定する場合,関数は1n列の配列を作成します。

例:(2, 1)

依存関係

会变暗引数を指定する場合,细胞配列の细胞数は,指定した次元の積で乗算した金宝app仿真软件。公共汽车オブジェクトの個々の信号要素の数と一致しなければなりません。

デ,タ型:

金宝app仿真软件。TsArrayオブジェクト。

R2016aより前のバ,ジョンでは,信号をログ記録すると,ログ記録されたバスデ,タを格納する金宝app仿真软件。TsArrayオブジェクトが作成されます。R2016aより前のバ、ジョンでModelDataLogs形式を使用してログ記録されたデータを使用する場合は,この構文を使用してバスのシミュレーション入力を作成します。

例:myTsArrayObj

出力引数

すべて折りたたむ

金宝app仿真软件。TsArrayまたは金宝app仿真软件。公共汽车入力で指定された属性をもtimeseriesオブジェクトの構造体。timeseriesオブジェクトの構造体をバスのシミュレ,ション入力として読み込むことができます。

会变暗入力で指定された次元をもtimeseriesオブジェクトの構造体の配列。

R2013aで導入