SCARA robot

From SoftMC-Wiki
Revision as of 03:50, 13 April 2022 by Hallel (talk | contribs) (Corrected the definition of a3 and a4)
Jump to: navigation, search
Language: English  • 中文(简体)‎

SCARA robot

Kinematics setup

The kinematics parameters of SCARA robot are defined by:

  • L1 – length of the first link (See Link[1][1]).
  • L2 – length of the second link (See Link[2][1]).


SCARA DH

World coordinates are defined according to the following picture:
SCARA top view

 

Z coordinate

The Z coordinate starts from the upper z-shaft position and increases downwards. This means it is an up-side-down XYZ system. Direction is determined by Axis[3][3]
SCARA workspace

Tool, configuration

  • The SCARA configuration (LEFTY/RIGHTY) is defined as a group’s property (See: ACMD and it is outside the point data structure.
  • The roll axis is defined as the rotation angle (around Z-axis) of the end-effector frame (Xee, Yee, Zee) relative to the base frame.
    So there is a difference between world-frame roll axis and the joint-frame roll axis. This feature actually enables keeping constant orientation angles during straight-line motions.
  • Zero values of J1 and J2 give the place of X axis. (e.g. cartesina coordinates of the tool-tip will be #{L1 + L2, 0}


SCARA configurations


Axis setup

The SCARA robot is modeled as a group of four axes: a1- first rotary axis, a2 – second rotary axis, a3 – third linear motor axis (the Z axis), a4 – fourth rotary motor axis (the roll axis). The third and fourth axes are coupled together. This means that a movement of the fourth motor axis results in a movement of the physical Z axis according to the following relation: positive rotation = Z moves UP, negative rotation = z moves DOWN.

Motion commands

There are three motion commands incorporating SCARA kinematics:


All of them implement trajectories in world space coordinates (XYZR). The roll axis is proportionally interpolated with the XYZ motion, this means the roll motion starts and ends at the same time as XYZ motion.
There are two sets of properties one for translation and one for rotation. Command kinematics parameters as velocity, jerk, acceleration can be defined separately for rotation and translation. These specify the kinematics parameters of the generated motion. Also there is a maximum property of each value. Maximums limit the possible excessive motion definitions and are determined by the user or automatically using the axis limits of each motor. The command values define the motion property of each movement and can be given nodal or modal. To summarize we have the following table of properties:

 

  Maximum(Modal) Command (Modal/Nodal)
Rotary VelocityMaxRot, AccelerationMaxRot, JerkMaxRot

Units: deg/sec deg/sec2deg/sec3

VelocityRot, VelocityFinalRot, AccelerationRot, DecelerationRot, JerkRot

Units: mm/sec mm/sec2 mm/sec3

Translation VelocityMaxTrans, AccelerationMaxTrans, JerkMaxTrans

Units: deg/sec deg/sec2deg/sec3

VelocityTrans, VelocityFinalTrans, AccelerationTans, DecelerationTrans, JerkTrans

Units: mm/sec mm/sec2 mm/sec3

Initially (using the ConfigGroup command) maximum motion parameters are set to theoretically maximum values:

 

  • For translation component (VelocityMaxRot, AccelerationMaxRot, JerkMaxRot):

 

  • For rotational component (VelocityMaxTrans, AccelerationMaxTrans, JerkMaxTrans):