Path: SC/SystemDesign
% Add a multi-element arm to a CAD models.
Adds one body per linke an one cylinder per link. Each joint may
have multiple one degree of freedom joints represented by unit vectors
and angles
As an example
link(k).u = [1;0;0];
link(k).r = [0;0;0.02];
link(k).angle = pi/4;
link(k).mass = 0.02;
link(k).radius = 0.01;
link(k).b = eye(3);
link(k).power = 1;
link(k).name = 'wrist';
AddRobotArm( 'add bodies', 1, 4, [0;0;zBox], link );
BuildCADModel( 'compute paths' );
AddRobotArm( 'add components', 1, 4, [0;0;zBox/2], link );
Since version 10.
--------------------------------------------------------------------------
Form:
AddRobotArm( action, previousBody, firstBody, rBase, link )
--------------------------------------------------------------------------
------
Inputs
------
action (1,:) 'initialize' or 'update'
previousBody (1,1) Body to which the arm is attached
firstBody (1,1) First body in the robot chain
rBase (3,1) Location of the base on the previous body
link (:) Data structure
.u (3,:) Joint unit vectors
.r (3,1) Vector from the joint to the link end
.angle (1,:) Joint angles = pi/4;
.mass (1,1) Link mass
.radius (1,1) Link radius
.power (1,1) Link motor power consumption
.name (1,:) Link name
-------
Outputs
-------
None
--------------------------------------------------------------------------
AerospaceUtils: CAD/BuildCADModel AerospaceUtils: CAD/CreateBody AerospaceUtils: CAD/CreateComponent Common: Quaternion/AU2Q Common: Quaternion/Q2Mat Common: Quaternion/QMult Math: Linear/Mag
Back to the SC Module page