Robotics I Kinematics, Dynamics and Control of Robotic Manipulators Velocity Kinematics Dr. Christopher Kitts Director Robotic Systems Laboratory Santa Clara University
Velocity Kinematics So far, we ve studied: Forward position kinematics: = Θ = (Θ) Inverse position kinematics: Θ=g = = ( ) where = Cartesian pose variables Θ = Joint pose variables
Velocity Kinematics Now, we want to know about the relationships between joint and endpoint velocities Forward velocity kinematics: Given joint velocities, Θ, what are the end effector velocities, Inverse velocity kinematics: Given the end effector velocities,, what are the joint velocities, Θ Will lead to what we call the Jacobian matrix, which relates not only joint/endpoint velocities but also joint/endpoint forces and torques
Position and Velocity of an Object in Different Frames The position of a point can be considered wrt different frames; we often want to know how these different expressions of position are related. Similarly, the velocity of a position vector can be: Computed as a derivative wrt different frames; and we will want to know how these different expressions relate Expressed wrt different frames in terms of its components; we note that a velocity vector can be expressed in a frame different than the one used for computing the derivative!
Velocity of point P in the B frame In the B frame, the derivative of rho (e.g., the velocity of the point in the B frame) is as shown.
Velocity of point P in the G frame In the G frame, the derivative of r (r=r+rho), depends on 3 things: the translational velocity of the B frame the rotational velocity of the B frame the velocity of the point in the B frame.
Velocity of point P in the G frame In the G frame, the derivative of r (r=r+rho), depends on 3 things: the translational velocity of the B frame the rotational velocity of the B frame the velocity of the point in the B frame.
Velocity of point P in the G frame In the G frame, the derivative of r (r=r+rho), depends on 3 things: the translational velocity of the B frame the rotational velocity of the B frame the velocity of the point in the B frame.
Velocity of point P in the G frame In the G frame, the derivative of r (r=r+rho), depends on 3 things: the translational velocity of the B frame the rotational velocity of the B frame the velocity of the point in the B frame.
The Jacobian Matrix In general, consider a set of equations: =( ) We can take the partial derivatives: =()
The Jacobian Matrix Given the multidimensional derivative: Divide by the differential time element gives: = =() J is the Jacobian : A function of A linear transform Time varying since ()
The Jacobian for SCM One way to determine the Jacobian is to compute the matrix of partial derivatives Forward velocity kinematics: =(Θ)Θ Inverse velocity kinematics: # rows = # endpoint DOFs # columns = # joint variables Θ = ()
The Jacobian for SCM This matrix of partial derivatives can be difficult to compute in general Fortunately, other techniques exist, and some are far more easily computed through iterative algorithms (that can be automated) Velocity propagation Static force propagation
Jacobian Singularities If the Jacobian is invertible: Θ = () Most SCM have values of θ for which the Jacobian is singular meaning non-invertible Workspace boundary: when endpoint is at the edge of the workspace Workspace interior: inside workspace, often when axes line up with each other
Jacobian Singularities Mathematical condition: DET (Θ) =0 Physical meaning: endpoint has lost an instantaneous degree of freedom Practical Challenge: Desired endpoint motion in the direction of the lost DOF results in one or more very high joint rates Not only do they go to infinity at the singularity, but they computationally explode near the singularity
Jacobian Singularities Example RR arm: When sinθ 2 = 0 When θ 2 = 0 or π Boundary singularities Looses ability to move in ee direction
Jacobian Singularities Example RR arm: For a G = 1 m/sec command and L 1 =L 2 =1 m Explosions!
Link Velocity Propagation Given the velocities of a link, compute the velocities for the next link
Link Velocity Propagation Revolute joint:
Link Velocity Propagation Prismatic joint:
Link Velocity Propagation Jacobian computation method: Start at base frame w/0 velocities Propagate velocities link by link Finish with velocity expressions for the end effector velocities Factor the joint velocities out of these expressions obtain the Jacobian matrix form of the equations
Jacobian for Forces/Torques Work is the same in both spaces So: given Ƭ is the vector of joint torques and forces F is the vector of endpoint torques and forces
Jacobian Frame Jacobian matrices are expressed wrt a frame (although sometimes the notation is dropped) To change the frame of a Jacobian matrix:
Link Velocity Propagation Revolute joint:
Link Velocity Propagation Revolute joint:
Link Velocity Propagation Revolute joint: V i V i+1
Link Velocity Propagation Revolute joint: V i+1 w i
Link Velocity Propagation Revolute joint: w i w i+1
Link Velocity Propagation Revolute joint: θ i w i+1
Link Velocity Propagation Prismatic joint:
Link Velocity Propagation Prismatic joint: V i V i+1
Link Velocity Propagation Prismatic joint: w i V i+1
Link Velocity Propagation Prismatic joint: V i+1
Link Velocity Propagation Prismatic joint: w i+1 w i
Static Force/Torque Propagation Given the forces/torques on a link, compute the forces/torques for the next link f i, n i are the force, torque on link i by link i-1 Consider static equilibrium with all of the joints locked Start at free end with no endpoint load
Static Force/Torque Propagation Propagation equations from endpoint in: Use these for both revolute and prismatic joints
Static Force/Torque Propagation Propagation gives full 3 dimensional force and torque vectors. We are only interested in the torques about and the forces along the z axes For revolute torques: For prismatic forces: Other dimensions borne by the SCM structure