Main Content

createSampleTime

クラス: matlab.System

サンプル時間指定オブジェクトの作成

構文

sts = createSampleTime(obj)
sts = createSampleTime(obj,'Type',Type)
sts = createSampleTime(obj,'Type',Type,Name,Value)

説明

sts = createSampleTime(obj) は、System object™ obj の継承するサンプル時間のサンプル時間指定オブジェクトを作成します。System object の getSampleTimeImpl メソッドで、このサンプル時間指定オブジェクトを使用します。System object が MATLAB System ブロックに含まれている場合、サンプル時間の指定はシミュレーション時間に影響します。このメソッドを System object 定義に含めない場合、サンプル時間が継承されます。

sts = createSampleTime(obj,'Type',Type) は、指定されたサンプル時間タイプのサンプル時間指定オブジェクトを作成します。

sts = createSampleTime(obj,'Type',Type,Name,Value) は、1 つ以上の Name,Value のペアの引数で指定された追加オプションを使用して、サンプル時間指定オブジェクトを作成します。Name はプロパティ名、Value はその対応する値です。Name は引用符で囲まなければなりません。Name1,Value1,...,NameN,ValueN のように、複数の名前と値のペアの引数を任意の順番で指定できます。

依存関係

createSampleTime は、System object の getSampleTimeImpl メソッドからのみ呼び出すことができます。

入力引数

すべて展開する

サンプル時間を指定する System object。

名前と値の引数

引数のオプションのペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は重要ではありません。

R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name を引用符で囲みます。

例: 'Type','Fixed In Minor Step'

System object が Simulink® で使用するサンプル時間のタイプ。さまざまなタイプのサンプル時間の詳細については、以下を参照してください。

例: createSampleTime('Type','Fixed In Minor Step')

Inherited サンプル時間の場合のみ。

使用をオブジェクトに許可する 1 つ以上のサンプル時間を指定します。サンプル時間タイプが Inherited に設定されている場合、指定したサンプル時間を MATLAB System ブロックが受信すると、このブロックによりサンプル時間の伝播が許可されます。複数のサンプル時間タイプを cell 配列または string 配列として指定できます。

例: createSampleTime('Type','Inherited','AllowPropagation',{'Controllable','Continuous'})

Inherited サンプル時間の場合のみ。

オブジェクトに使用を許可しない 1 つ以上のサンプル時間を指定します。サンプル時間タイプが Inherited に設定されている場合、指定した継承サンプル時間タイプの使用を MATLAB System ブロックに使用しないと、ブロックによって代わりのサンプル時間が使用されます。複数のサンプル時間タイプを指定できます。各サンプル時間タイプについて、Simulink は異なるサンプル時間タイプに置き換えます。

  • 'Controllable' — 制御サンプルのベース レートが代わりに伝播されます。System object が各サンプル時間のヒットの間が一定の時間であることに依存する場合、このオプションを使用します。

  • 'Constant' — モデルのベース レートが代わりに伝播されます (最速離散レート、またはマイナー ステップ固定のいずれか)。

  • 'Continuous' — 最速離散レートが代わりに伝播されます。

例: createSampleTime('Type','Inherited','AlternatePropagation','Controllable')

Inherited サンプル時間の場合のみ。

オブジェクトに使用を許可しない 1 つ以上のサンプル時間を指定します。サンプル時間タイプが Inherited に設定されている場合、指定したサンプル時間を MATLAB System ブロックが受信すると、Simulink はエラーをスローします。

例: createSampleTime('Type','Inherited','ErrorOnPropagation','Controllable')

Discrete サンプル時間の場合のみ。

Simulink のサンプル ヒット間の時間を指定します。

例: createSampleTime('Type','Discrete','SampleTime',1)

データ型: single | double

Discrete サンプル時間の場合のみ。

サンプル ヒットのオフセット時間を指定します。オフセットは、更新遅延を示す時間間隔です。ブロックはサンプル間隔内で更新されますが、同じサンプル レートで動作している他のブロックよりは遅れて更新されます。

オフセット時間は非負かつ SampleTime 未満でなければなりません。

例: createSampleTime('Type','Discrete','SampleTime',2,'OffsetTime',1)

データ型: single | double

Controllable サンプル時間の場合のみ必須。

制御可能なサンプル時間ヒット間の時間を指定します。目盛り時間は正のスカラーでなければなりません。

例: createSampleTime('Type','Controllable','TickTime',obj.TickTime)

データ型: single | double

出力引数

すべて展開する

サンプル時間指定オブジェクト。このオブジェクトには以下のプロパティがあります。

  • Type (Simulink) — サンプル時間のタイプ

  • SampleTime (Simulink) — サンプル間の時間

  • OffsetTime (Simulink) — サンプル時間からのオフセット

このオブジェクトを getSampleTimeImpl の戻り値として使用します。

すべて展開する

MATLAB System ブロックが上流ブロックからサンプルを継承することを指定します。継承されたサンプル時間は既定であるため、追加の引数は不要です。

function sts = getSampleTimeImpl(obj)
    sts = createSampleTime(obj);
end

オフセット時間およびサンプル時間を含めて、MATLAB System ブロックの離散サンプル時間指定を指定します。

function sts = getSampleTimeImpl(obj)
    sts = createSampleTime(obj,'Type','Discrete',...
      'SampleTime',10.2,'OffsetTime',0.5);
end

バージョン履歴

R2017b で導入