RAS455
Watch on YouTube →
Overview
The lecture develops robot kinematics from basic revolute and prismatic joints through coordinate-frame transformations and homogeneous matrices. It derives forward and inverse kinematics for a planar robot, explains right-hand rotation matrices and their orthonormal properties, then builds a two-revolute-joint robot model whose end-effector position is computed from chained 4×4 transformations.
Key takeaways
- A planar robot with one revolute joint and one prismatic joint has forward kinematics px = d cos θ and py = d sin θ; for a target (3, 4), inverse kinematics gives d = 5 and θ ≈ 53.13 degrees.
- A pure rotation matrix is orthonormal and has determinant 1, so it preserves vector lengths; its inverse is simply its transpose.
- Robot frame assignment determines transformation signs: revolute-joint axes define Z directions, and each Xn axis must intersect the preceding joint axis Zn−1.
- A 4×4 homogeneous transformation combines orientation in its upper-left 3×3 block with translation in its final column, expressed relative to the old frame.
- For the two-link robot, chaining transforms yields px = A2 cos θ1 + A4 cos(θ1 + θ2), py = A2 sin θ1 + A4 sin(θ1 + θ2), and pz = A1 + A3.
- Robots with many degrees of freedom, such as the cited 15-to-16-DoF worm robot, often require numerical inverse kinematics and efficient algorithms for real-time obstacle response.
Chapters
0:00
Robot Joints and Kinematic Diagrams
- The two basic robot joint types are revolute joints, which rotate, and prismatic joints, which translate.
- A spherical shoulder joint can be modeled as three perpendicular revolute joints.
- A kinematic diagram simplifies a physical robot while retaining its major dimensions for deriving forward and inverse kinematics.
2:00
Planar Robot Forward Kinematics
- A planar robot with one revolute joint and one prismatic joint has two degrees of freedom: angle θ and extension d.
- With a fixed X-Y coordinate frame, the end-effector coordinates are px = d cos θ and py = d sin θ.
- Forward kinematics maps joint variables to end-effector position.
6:30
Inverse Kinematics for a 3-4-5 Example
- For px = 3 and py = 4, the Pythagorean theorem gives d = 5.
- The angle follows from θ = atan2(py, px), approximately 53.13 degrees for the 3-4-5 example.
- Inverse kinematics starts with a target position and solves for the required joint variables.
10:43
Why 3D Inverse Kinematics Gets Harder
- Three-dimensional targets provide position equations for px, py, and pz, but robots can have more joint variables than those equations determine.
- Multiple sine and cosine terms produce nonlinear, often transcendental equations that are harder to solve algebraically.
- Geometric reasoning can solve simple cases, while larger systems may require numerical methods.
14:36
Numerical Inverse Kinematics and High-DoF Robots
- MATLAB inverse-kinematics tools can solve complicated joint configurations numerically.
- A cited worm-robot project had roughly 15 or 16 degrees of freedom and needed fast IK calculations to react to obstacles and update its path.
- Geometric algebra and other advanced formulations can help compute solutions quickly enough for real-time control.
16:26
Right-Hand Coordinate Frames and Positive Rotation
- Robot coordinate frames use the right-hand convention: X points along the thumb, Y along the first finger, and Z along the second finger.
- A rotation is positive when curled fingers follow its direction and the thumb points along the positive axis.
- The convention avoids ambiguity in calling a rotation clockwise or counterclockwise, since that appearance changes with viewpoint.
19:28
The Z-Axis Rotation Matrix
- A rotation about Z uses the matrix [[cos θ, −sin θ, 0], [sin θ, cos θ, 0], [0, 0, 1]].
- The unchanged third axis appears as the final row and column, with a 1 in the Z-Z position.
- Multiplying a vector by this matrix changes its direction without changing its length.
21:58
Rotation-Matrix Determinant and Length Preservation
- The determinant of the Z-rotation matrix is cos² θ + sin² θ = 1.
- A determinant of 1 is consistent with a pure rotation: the transformation preserves scale and vector magnitude.
- For example, a vector with components (1, 1, 0) is rotated by substituting those components and the chosen angle into the matrix.
25:55
Orthogonality of Rotation-Matrix Rows and Columns
- The rows and columns of a rotation matrix are mutually perpendicular and have unit length.
- Perpendicular vectors have a dot product of zero; the lecture demonstrates this with vectors (2, 0, 0) and (0, 1, 0).
- These properties make rotation matrices orthonormal and distinguish rotations from transformations that stretch or skew vectors.
29:45
Using the Transpose to Reverse a Rotation
- For an orthonormal rotation matrix R, the inverse is its transpose: R⁻¹ = Rᵀ.
- Given x = R y, the original coordinates can be recovered as y = Rᵀ x.
- Transposing swaps rows and columns, providing a simpler inverse than computing an adjugate and determinant.
38:38
Matrix Inversion Through a Cost Example
- The burger-price example explains inversion: if total cost equals price per burger times burger count, divide by the price to recover the count.
- For vectors, the same principle becomes multiplication by the inverse matrix on both sides of the equation.
- The rotation-matrix transpose shortcut is useful because a general 3×3 matrix inverse is more involved.
43:47
Changing Coordinates Between Rotated Frames
- A vector may have coordinates such as (3, 4) in one frame and different coordinates after the axes rotate by 25 degrees.
- Coordinate transformations express the same geometric vector in a new frame; they do not move the vector itself.
- The direction of the transformation matters: reversing between frames uses the inverse rotation, equivalent to reversing the rotation angle.
53:18
Recovering Rotation from Two Vector Coordinates
- The lecture sets up a Z-axis rotation by relating vector coordinates in two frames through the rotation matrix.
- Two component equations can sometimes simplify when added or subtracted, allowing sine or cosine terms to cancel.
- A rotation must preserve vector magnitude, so the input and output coordinate vectors must have equal norms.
57:55
Solving Trigonometric Rotation Equations
- When equations contain mixed sine and cosine terms, half-angle substitutions can rewrite them using tan(θ/2).
- Squaring and adding component equations can sometimes use sin² θ + cos² θ = 1 to eliminate terms.
- MATLAB's solve function is an alternative for symbolic equations, while numerical IK methods handle larger robot systems.
1:12:07
Building a Two-Revolute-Joint Robot Model
- The lecture shifts to a three-dimensional robot with two revolute joints, two links, and a tool at the end-effector.
- The kinematic diagram replaces the physical assembly with joints, links, and major dimensions labeled A1 through A4.
- Forward kinematics will map θ1 and θ2 to the end-effector position px, py, and pz.
1:16:05
Assigning Robot Frames with Joint-Axis Rules
- Each revolute-joint axis is assigned as a Z-axis, such as Z0 and Z1 through the joint centers.
- The end-effector receives a final frame, even if it does not contain another revolute joint.
- The second frame-placement rule is to choose Xn so it intersects the preceding joint axis Zn−1.
1:23:53
Choosing X-Axes and Completing Right-Hand Triads
- Where several X-axis directions satisfy the intersection rule, the diagram chooses consistent directions for X0, X1, and X2.
- The Y-axes follow from the right-hand rule once each X and Z direction is selected.
- Joint rotations θ1 and θ2 are measured about their assigned Z-axes.
1:25:47
Link Dimensions and the First Rotation Matrix
- The robot's major offsets are labeled A1 through A4, with vertical and horizontal distances assigned between successive frames.
- The first relative rotation, from frame 0 to frame 1, is a Z-axis rotation by θ1.
- Forward kinematics targets the coordinates of frame 2 in the fixed frame 0.
1:37:09
Projection Matrices Between Adjacent Frames
- The rotation matrix is formed by projecting the new frame's X, Y, and Z axes onto the old frame's axes.
- Because the selected axes are aligned before rotation, the projection matrix is the identity and leaves the Z-rotation matrix unchanged.
- If an axis were drawn in the opposite direction, its projection would be negative and the corresponding matrix signs would change.
1:40:00
Homogeneous Transformations Combine Rotation and Translation
- A homogeneous transformation is a 4×4 matrix that stores a 3×3 rotation matrix and a translation vector.
- The final row is [0, 0, 0, 1], while the top-right column contains frame displacement.
- Translation components are expressed in the old frame, allowing the transform to describe the relative pose between frames.
1:44:01
Expressing the First Link Offset in Frame 0
- The first frame offset includes a fixed vertical distance A1 along Z0, which does not change with θ1.
- The horizontal distance A2 rotates with the first joint, so its frame-0 components are A2 cos θ1 and A2 sin θ1.
- The resulting 0H1 matrix captures both the θ1 rotation and the A1/A2 translation.
1:48:30
Constructing the Second Link Transform
- The relative rotation from frame 1 to frame 2 is a Z-axis rotation by θ2.
- The second translation contains a fixed vertical offset A3 and a horizontal link A4.
- When θ2 changes, A4 contributes components A4 cos θ2 and A4 sin θ2 in frame 1.
1:55:22
Chaining the Two 4×4 Transformations
- The overall transform is 0H2 = 0H1 × 1H2, combining both joint rotations and all link offsets.
- The product's upper-left 3×3 block gives the orientation of frame 2 relative to frame 0.
- The product's final translation column gives the end-effector position in frame 0.
1:57:57
Expanding the Homogeneous Matrix Product
- The 4×4 multiplication is expanded row by row, with the lecture emphasizing the first row and the translation column.
- The rotation terms combine using sine and cosine angle-addition identities.
- The final orientation matrix represents a total rotation of θ1 + θ2 about Z.
2:03:28
Simplifying the End-Effector Position
- The horizontal position simplifies to px = A2 cos θ1 + A4 cos(θ1 + θ2).
- The second horizontal coordinate is py = A2 sin θ1 + A4 sin(θ1 + θ2).
- The vertical coordinate combines the fixed offsets A1 and A3.
2:07:09
Checking Forward Kinematics with Planar Geometry
- Viewed from above, the two horizontal links have lengths A2 and A4 and orientations θ1 and θ1 + θ2.
- Resolving each link into X and Y components reproduces the matrix-derived px and py equations.
- This geometric check confirms that the end-effector orientation accumulates as θ1 + θ2.
2:10:34
Take-Home Kinematics Problem for a Revolute-Prismatic Robot
- The assigned three-dimensional example combines a revolute joint with a prismatic cylinder whose extension is d.
- Students must draw the kinematic diagram, determine 0R1 and 1R2, construct 0H1 and 1H2, and calculate 0H2.
- The final deliverables are px, py, and pz, with the assignment due the following Wednesday at 11:59 p.m.
2:12:30
Completing the Coordinate Frames for the Assignment
- The partial diagram identifies the fixed offset A1, the cylinder offset A2, the variable extension d, and the revolute angle θ.
- The frame assignment is intentionally incomplete, so students must apply the joint-axis and axis-intersection rules.
- The goal is to reproduce the end-effector coordinates using the homogeneous-transformation method rather than relying only on a known answer.
Summary, takeaways, and chapters were generated by AI from the video's transcript and may contain errors. The video belongs to its creator, ssredkar.