Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

Backlash

遊びのあるシステムの動作のモデル作成

  • Backlash block

ライブラリ:
Simulink / Discontinuities
HDL Coder / Discontinuities

説明

Backlash ブロックは、入力と出力の変化を等価にするシステムを実現しますが、入力の方向が変化する場合を除きます。入力の方向が変化するときは、入力の初期変化は出力に影響を与えません。システムの端から端までの遊びの量は、"不感帯" と呼ばれます。不感帯は、出力の中央に位置します。次の図は、既定の不感帯幅が 1 で、初期出力が 0 の初期状態を示しています。

遊びをもつシステムは、次の 3 つのモードのいずれかの状態にあります。

モード入力出力
分離不感帯ゾーンの内側。一定。
正方向の結合不感帯ゾーンの外側および増加。入力から不感帯幅の半分を "差し引いた" ものに等しい。
負方向の結合不感帯ゾーンの外側および減少。入力に不感帯幅の半分を "加えた" ものに等しい。

[初期出力] パラメーター値は、不感帯ゾーンの初期の中心を定義します。

以下の表は、初期条件が次の場合の出力値を示しています。[不感帯幅] = 2 および [初期出力] = 5

出力値条件
5

4 <= 入力 <= 6

入力 + 1入力 < 4
入力 - 1入力 > 6

たとえば、Backlash ブロックを使用して、2 つのギアの噛み合わせをモデル化できます。入力と出力はいずれも一端にギアのあるシャフトであり、入力シャフトが出力シャフトを駆動します。ギアの歯間の余分な空間が "遊び" です。この空間の幅が [不感帯幅] パラメーターです。初期にシステムが分離されている場合、[初期出力] パラメーターが出力を定義します。

次の図は、初期入力が不感帯内にあり、システムが分離モードで開始するときの動作を示しています。

入力が増加して不感帯の端に達すると、出力と噛み合います。出力は、前の値のままになります。

入力が出力と噛み合うと、出力は入力と等しい量ずつ変化します。

入力の方向が反転すると、入力は出力から分離します。出力は、入力が不感帯の端に到達して再度噛み合うまで一定です。

すべて展開する

この例では、既定のパラメーターを使用した正弦波での Backlash ブロックの影響を示します。初期の [不感帯幅]1[初期出力]0 です。

初期の不感帯は 0 を中心とし、幅が 1 で、各方向に .5 拡張されます。Backlash ブロックの出力は 0 から始まり、入力が .5 の不感帯のエッジに到達するまで変更されません。次に、出力は正方向に移動し、入力と等しい量で変化します。入力が 1 の値に到達すると、負方向に移動を開始します。この時点で、出力は中断し、入力が 1 の不感帯幅を通過するまで変動しません。入力が 0 にある不感帯ゾーンの端に到達すると、出力が開始され、入力のある負方向に移動を始めます。

端子

入力

すべて展開する

バックラッシュ アルゴリズムへの入力信号。この信号の値は不感帯内にあるか、正方向または負方向で出力と噛み合います。

データ型: double | single | int8 | int16 | int32 | uint8 | uint16 | uint32

出力

すべて展開する

バックラッシュ アルゴリズムを入力信号に適用後の出力信号。入力が不感帯内にある場合、出力は変化しません。入力が出力と噛み合う場合、出力は入力と等しい量変化します。

データ型: double | single | int8 | int16 | int32 | uint8 | uint16 | uint32

パラメーター

すべて展開する

出力値の中心にある不感帯ゾーンのサイズを指定します。入力信号が不感帯の内側にある場合、入力の変化によって出力は変化しません。入力信号が不感帯の外側にある場合、出力は入力と等しい量変化します。

プログラムでの使用

ブロック パラメーター: BacklashWidth
: 文字ベクトル
: 実数のスカラーまたはベクトル
既定の設定: '1'

不感帯ゾーンの初期の中心を指定します。初期入力値が不感帯ゾーン内にある場合、出力値は [初期出力] と等しくなります。初期入力値が不感帯ゾーンの外側にある場合、出力値は [初期出力] に不感帯幅の半分を加えたものか差し引いたものになります。

プログラムでの使用

ブロック パラメーター: InitialOutput
: 文字ベクトル
: 実数のスカラーまたはベクトル
既定の設定: '0'

ブロックでサンプルベースかフレームベースのどちらの処理を実行するかを指定します。

  • チャネルとしての列 (フレーム ベース) — 入力の各列を独立したチャネルとして扱います (フレームベースの処理)。

    メモ

    フレームベースの処理には、DSP System Toolbox™ のライセンスが必要になります。

    詳細については、サンプルベースおよびフレームベースの概念 (DSP System Toolbox)を参照してください。

  • チャネルとしての要素 (サンプル ベース) — 入力の各要素を独立したチャネルとして扱います (サンプルベースの処理)。

[入力処理] を使って、ブロックでサンプルベースかフレームベースのどちらの処理を実行するかを指定します。これらの 2 つの処理モードの詳細については、サンプルベースおよびフレームベースの概念 (DSP System Toolbox)を参照してください。

プログラムでの使用

ブロック パラメーター: InputProcessing
: 文字ベクトル
: 'Columns as channels (frame based)' | 'Elements as channels (sample based)'
既定の設定: 'Elements as channels (sample based)'

ゼロクロッシング検出を有効にする場合は選択します。詳細については、ゼロクロッシング検出を参照してください。

このブロックでは、可変ステップ ソルバーを使用するシミュレーションでのみゼロクロッシング検出がサポートされます。シミュレーションに固定ステップ ソルバーを使用する場合、このブロックに対してゼロクロッシングの検出や特定は行われません。

プログラムでの使用

ブロック パラメーター: ZeroCross
: 文字ベクトル | string
: 'off' | 'on'
既定の設定: 'on'

ブロックの特性

データ型

double | integer | single

直達

はい

多次元信号

いいえ

可変サイズの信号

いいえ

ゼロクロッシング検出

はい

拡張機能

バージョン履歴

R2006a より前に導入

参考