Using Simulink | ![]() ![]() |
ライブラリ
詳細
Transport Delayブロックは、指定した時間分だけ入力を遅らせます。これは、時間遅れをシミュレーションするために使用することができます。
シミュレーションの開始時に、シミュレーション時間が Time delay パラメータを超えるまで、ブロックは Initial input パラメータを出力し、その後遅れた入力を出力します。Time delay パラメータは非負でなければなりません。
ブロックは、シミュレーション中に、入力点とシミュレーション時間を、初期サイズが Initial buffer size パラメータで定義されるバッファに格納します。点数がバッファサイズを超える場合、ブロックは追加メモリを割り当て、シミュレーションの後で、Simulinkは必要なバッファサイズの合計を示すメッセージを表示します。メモリの割り当てによりシミュレーションが減速するので、シミュレーション速度が問題になる場合は、このパラメータ値を慎重に定義してください。遅れ時間が長い場合、このブロックは、特にベクトル化した入力に対して大量のメモリを使用する可能性があります。
格納された入力値の時間に対応しない時間での出力が要求されると、ブロックはデータ点の間を線形補間します。遅れがステップサイズより小さい場合、ブロックは最後の出力点から外挿するため、不正確な結果を生じることがあります。ブロックには直接フィードスルーがないので、現在の入力を用いてその出力値を計算することはできません。この点を説明するために、ステップサイズが1で現在時間がt = 5の固定ステップシミュレーションを考えます。遅れが0.5の場合、ブロックはt = 4.5でデータ点を生成する必要があります。最後に格納した時間はt=4なので、ブロックは前進外挿を行います。
Transport Delayブロックは、離散信号の補間は行わず、t - tdelay で離散値を出力します。
このブロックは、サンプルヒットのみで出力を遅らせ、保持するUnit Delayブロックとは異なります。
linmod
を使って、Transport Delayブロックを含むモデルを線形化することには問題があります。この問題を回避する方法の詳細については、第5章の "線形化" を参照してください。
サポートされているデータタイプ
Transport Delayブロックは、double
タイプの実数信号を受け入れ、出力します。
パラメータとダイアログボックス
特性
直接フィードスルー |
なし |
サンプル時間 |
連続 |
スカラ拡張 |
入力と Initial buffer size を除くすべてのパラメータについて |
ベクトル化 |
可 |
ゼロクロッシング |
なし |
![]() | Transfer Fcn | Trigger | ![]() |