メインコンテンツ

Simulink でのマニピュレーター ボディの変換の取得

この例では、rigidBodyTreeロボット モデルでボディ間の変換を取得する方法を示します。この例では、MATLAB® でロボット モデルおよびロボット コンフィギュレーションを定義し、それらを Simulink® に渡してマニピュレーター アルゴリズム ブロックとともに使用します。

KUKA LBR ロボットのロボット モデルを RigidBodyTree オブジェクトとして読み込みます。関数 homeConfiguration を使用して、ロボットのジョイント位置としてホーム コンフィギュレーションを取得します。

load('exampleLBR.mat','lbr')
lbr.DataFormat = 'column';

homeConfig = homeConfiguration(lbr);
randomConfig = randomConfiguration(lbr);

モデルを開きます。必要に応じて、[ロボット モデルの読み込み] コールバック ボタンを使用して、ロボット モデルおよびコンフィギュレーション ベクトルを再度読み込みます。

Get Transform ブロックは、ソース ボディからターゲット ボディへの変換を計算します。この変換により、ソース ボディ座標系の座標が所定のターゲット ボディ座標系に変換されます。この例では、'iiwa_link_ee' エンドエフェクタからの座標を 'world' ベース座標に変換する変換を示します。

open_system('get_transform_example.slx')

モデルを実行して変換を取得します。

参考

ブロック

クラス

関数

トピック