MATLAB でのロボット グリッパー マルチボディの作成
この例では、MATLAB® でロボット グリッパー マルチボディを作成します。これは、"simscape.multibody.*" パッケージの下のさまざまなクラスを使用して、階層的なマルチボディ システムを構築する方法を示します。
グリッパーには、"RigidBody" コンポーネントである手のひらと、それ自体が "Multibody" コンポーネントである指があります。関節のある指の各マルチボディは、回転ジョイント ナックルで接続された硬い指セグメントで構成されます。
グリッパーを作成するには、MATLAB で次のコードを実行します。
import simscape.Value; % Number of fingers numFingers = 5; % Palm dimensions palmDims = Value([8 40], 'mm'); % Finger segment number and dimensions segmentDims = Value([30 8; ... % Proximal segment 30 6; ... % Middle segment 40 5], ... % Distal segment 'mm'); % Finger tip dimensions tipRad = Value(9, 'mm'); % Finger bend angles bendAngles = Value([-30, +30, +25], 'deg'); % Finger segment colors colors = [0 0 .7; ... % Palm .5 .4 0; ... % Proximal segment .8 .6 0; ... % Middle segment 1 .9 0; ... % Distal segment 1 1 1]; % Tip % Construct the gripper [gripper, gripper_op] = robotGripper(numFingers, palmDims, segmentDims, tipRad, bendAngles, colors); % Visualize the gripper cmb = compile(gripper); visualize(cmb,computeState(cmb,gripper_op),'vizGripper');
シミュレーション ワークフローを実行するために、グリッパー マルチボディ オブジェクトから makeBlockDiagram メソッドを使用して Simulink モデルを作成できます。
makeBlockDiagram(gripper,gripper_op,'gripperModel');