メインコンテンツ

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

Rotation Angles to Rodrigues

回転角度をオイラー・ロドリゲスベクトルに変換する

  • Rotation Angles to Rodrigues block

ライブラリ:
Aerospace Blockset / Utilities / Axes Transformations

説明

Rotation Angles to Rodrigues ブロックは、3 つの回転角度 R1,R2,R3 によって記述される回転を 3 要素のオイラー・ロドリゲス ベクトルに変換します。このブロックで使用される回転は、2 つの座標系間の受動的な変換です。回転角度は、フレーム A からフレーム B への一連の右手固有の受動回転を表します。結果のオイラー・ロドリゲス ベクトルは、フレーム A からフレーム B への右手受動回転を表します。オイラー・ロドリゲス ベクトルの詳細については、アルゴリズム を参照してください。

端子

入力

すべて展開する

オイラー・ロドリゲス ベクトルを決定するための回転角度 (ラジアン単位)。値は double である必要があります。

出力

すべて展開する

回転角度から決定されるオイラー・ロドリゲス ベクトル。

データ型: double

パラメーター

すべて展開する

3 つの風の回転角度の回転順序。

'ZYX''ZXY''YXZ''YZX''XYZ'、および 'XZY' シーケンスのデフォルトの制限により、±pi/2 ラジアン (± 90 度) の範囲にある R2 角度と、±pi ラジアン (±180 度) の範囲にある R1 角度と R3 角度が生成されます。

'ZYZ''ZXZ''YXY''YZY''XYX'、および 'XZX' シーケンスのデフォルトの制限により、0 から pi ラジアン (180 度) の範囲の R2 角度と、±pi (±180 度) の範囲の R1 角度と R3 角度が生成されます。

ロドリゲス変換は、±π ラジアン (±180 度) に等しい回転角度に対しては定義されません。

プログラムでの使用

ブロック パラメーター: rotationOrder
: 文字ベクトル
: 'ZYX' | 'ZYZ' |'ZXY' | 'ZXZ' | 'YXZ' | 'YXY' | 'YZX' | 'YZY' | 'XYZ' | 'XYX' | 'XZY' | 'XZX'
既定の設定: 'ZYX'

アルゴリズム

オイラー・ロドリゲス ベクトル b は、回転軸の方向余弦と回転角度の半分の接線を積分することによって回転を表します。

b=[bxbybz]

ここで、

bx=tan(12θ)sx,by=tan(12θ)sy,bz=tan(12θ)sz

ロドリゲスパラメータです。ベクトル s は、回転が実行される単位ベクトルを表します。接線のため、回転角度が ±pi ラジアンまたは ±180 度に等しい場合、回転ベクトルは不確定になります。値は負または正になります。

参照

[1] Dai, J.S. "Euler-Rodrigues formula variations, quaternion conjugation and intrinsic connections." Mechanism and Machine Theory, 92, 144-152. Elsevier, 2015.

拡張機能

すべて展開する

C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2017a で導入