AddRobotArm:

Path: SCPro/Systems

% 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

--------------------------------------------------------------------------

Children:

AerospaceUtils: CAD/BuildCADModel
AerospaceUtils: CAD/CreateBody
AerospaceUtils: CAD/CreateComponent
Common: Quaternion/AU2Q
Common: Quaternion/Q2Mat
Common: Quaternion/QMult
Math: Linear/Mag

Back to the SCPro Module page