Main Content

Bicycle Kinematic Model

二輪の運動学モデルを使用した乗用車型ビークルの動きの計算

  • ライブラリ:
  • Robotics System Toolbox / Mobile Robot Algorithms

  • Bicycle Kinematic Model block

説明

Bicycle Kinematic Model ブロックは、簡略化された乗用車型ビークルのダイナミクスをシミュレートする二輪のビークル モデルを作成します。このモデルは、車軸間の長さ Wheel base で定義された 2 本の車軸をもつビークルを表します。前輪はステアリング角度 psi で旋回できます。ビークルの向き theta は後車軸の中心で定義されます。

Bicycle kinematic model diagram with x, y, theta, psi, velocity, wheel base, and turning radius labeled

端子

入力

すべて展開する

ビークルの速度。メートル/秒単位で指定します。

ビークルのステアリング角度。ラジアン単位で指定します。

依存関係

この端子を有効にするには、Vehicle inputs パラメーターを Vehicle Speed & Steering Angle に設定します。

ビークルの角速度。ラジアン/秒単位で指定します。正の値はビークルを左にステアリングし、負の値はビークルを右にステアリングします。

依存関係

この端子を有効にするには、Vehicle inputs パラメーターを Vehicle Speed & Heading Angular Velocity に設定します。

出力

すべて展開する

ビークルの現在の xy 位置および向き。[[x y theta]] ベクトルとしてメートルおよびラジアン単位で指定します。

ビークルの線形速度および角速度。[xDot yDot thetaDot] ベクトルとしてメートル/秒単位およびラジアン/秒単位で指定します。線形速度および角速度は、state 出力の微分を取得することにより計算されます。

パラメーター

すべて展開する

プレースホルダー。

  • Vehicle Speed & Steering Angle — メートル/秒単位のビークルの速度。ラジアン単位のステアリング角度とともに指定します。

  • Vehicle Speed & Heading Angular Velocity — メートル/秒単位のビークルの速度。ラジアン/秒単位の向首角速度とともに指定します。

ホイール ベースは前後の車軸間の距離を示し、メートル単位で指定されます。

車輪速度範囲は、ビークルの最小車輪速度と最大車輪速度を指定する 2 要素ベクトル [MinSpeed MaxSpeed] です。ラジアン/秒単位で指定します。

最大ステアリング角度はビークルが左右にステアリングできる最大量を指し、ラジアン単位で指定します。既定値 pi/4 は最小回転半径 0 をビークルに指定します。このプロパティはユーザーが指定した状態入力の検証に使用されます。

ビークルの初期の x、y 位置と向き theta。

  • インタープリター型実行 — MATLAB® インタープリターを使用してモデルをシミュレートします。詳細については、シミュレーション モード (Simulink)を参照してください。

  • コード生成 — 生成される C コードを使用してモデルをシミュレートします。シミュレーションをはじめて実行すると、Simulink® によってブロック用の C コードが生成されます。モデルが変更されない限り、この C コードは後続のシミュレーションで再利用されます。

調整可能: No

参照

[1] Lynch, Kevin M., and Frank C. Park. Modern Robotics: Mechanics, Planning, and Control 1st ed. Cambridge, MA: Cambridge University Press, 2017.

[2] Corke, Peter I. Robotics, Vision and Control: Fundamental Algorithms in MATLAB. Springer, 2011.

拡張機能

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

バージョン履歴

R2019b で導入