First Order Hold
ライブラリ:
Simulink /
Continuous
説明
First Order Hold ブロックは、入力信号の連続的な区分的線形近似を生成します。First Order Hold ブロックを使用し、ソルバーのリセットをトリガーせずにサンプリングされた離散信号を連続信号に変換します。
First Order Hold ブロックを使用してモデルで代数ループを解除することもできます。
端子
入力
Port 1 — 入力信号
スカラー | ベクトル | 行列
入力信号。実数のスカラー、ベクトル、または行列として指定します。
データ型: double
出力
Port 1 — 線形近似された出力信号
スカラー | ベクトル | 行列
入力信号の区分的線形近似。
データ型: double
パラメーター
初期出力 — 初期出力
0
(既定値) | スカラー | ベクトル
シミュレーション時間が離散入力の最初のサンプル ヒット時間を超えるまで、ブロックが生成する出力を指定します。
依存関係
このブロックの初期出力を
inf
またはNaN
にはできません。実行ごとに調整可能なパラメーター
はシミュレーションの実行中は変更できません。ただし、シミュレーションの開始前に変更しても、アクセラレータまたはラピッド アクセラレータではコードの再生成は行われません。
プログラムでの使用
ブロック パラメーター: InitialOutput |
型: 文字ベクトル、string |
値: スカラー | ベクトル |
既定の設定: '0' |
出力アルゴリズム — 出力信号の近似方法
低速 (オーバーシュート回避)
(既定値) | 高速 (誤差最小化)
出力信号の生成に使用する近似方法を指定します。低速のローパス アルゴリズムでは、入力信号のオーバーシュートが回避されます。高速のハイパス アルゴリズムでは、近似された出力における誤差が最小限に抑えられますが、入力信号のオーバーシュートが発生する可能性があります。
プログラムでの使用
ブロック パラメーター: OutputAlgorithm |
型: 文字ベクトル、string |
値: Slow (Avoid Overshoot) | Fast (Minimize Error) |
既定の設定: 'Slow (Avoid Overshoot)' |
相対外挿誤差が超えた場合にリセット — ソルバーのリセットの許容誤差
inf
(既定値) | 非負の実数スカラー
出力アルゴリズムの外挿誤差に対する許容誤差レベルを指定します。外挿誤差が指定した値を超えると、Simulink® でモデルのソルバーがリセットされます。
ヒント
このパラメーターが inf
に設定されている場合に [連続入力を許可] パラメーターを有効にすると、シミュレーションが数値的に不正確になる場合があります。
プログラムでの使用
ブロック パラメーター: ErrorTolerance |
型: 文字ベクトル、string |
値: スカラー |
既定の設定: 'inf' |
連続入力を許可 — 連続信号に hold on を適用
off
(既定値) | on
このパラメーターを選択して、連続信号を入力として受け入れるようにブロックを有効にします。このパラメーターを有効にすると、入力連続信号と出力連続信号の間に遅延が生じます。
メモ
このブロックを使用して代数ループを解除する場合に、このパラメーターを有効にします。
プログラムでの使用
ブロック パラメーター: AllowContinuousInput |
型: 文字ベクトル、string |
値: 'off' | 'on' |
既定の設定: 'off' |
ブロックの特性
データ型 |
|
直達 |
|
多次元信号 |
|
可変サイズの信号 |
|
ゼロクロッシング検出 |
|
アルゴリズム
低速 (オーバーシュート回避)
低速またはローパス アルゴリズムで実行される線形外挿は、次のように表すことができます。
ここで、
Tk は k 番目のメジャー ステップの時刻です。
Uk は k 番目のメジャー ステップの入力です。
Ck および Mk は線形外挿係数です。
yk は Tk の時点の連続出力です。
係数、または勾配 Mk および y 切片 Ck は、次のように計算されます。
高速 (誤差最小化)
高速またはハイパス アルゴリズムで実行される線形外挿は次のように表すことができます。
ここで、
Tk は k 番目のメジャー ステップの時刻です。
Uk は k 番目のメジャー ステップの入力です。
は (k+1) 番目のメジャー ステップでの入力の予測値です。
(Ck および Nk は線形外挿係数です。
yk は Tk の時点の連続出力です。
係数、または勾配 Nk および y 切片 Ck は、次のように計算されます。
高速アルゴリズムは、ブロックの更新方法時に次の入力を予測しようとして誤差を最小限に抑えます。ブロックの予測された出力におけるこの誤差の削減は、入力信号をオーバーシュートする傾向に対してトレード オフされます。
拡張機能
C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。
量産コード生成には推奨しません。
モデルの離散化を検討します。
バージョン履歴
R2019b で導入
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)