Skip to content
AL-604 (C) · Intelligent Systems for Robotics/Quick Revision Short Notes

Intelligent Systems for Robotics (AL-604 (C)) - Unit 3 Short Notes

Unit 3: Intelligent Systems for Robotics


I. Fundamentals of Robotics

A. Definition and Basic Aspects of Robotics

  • Robotics is the science and technology of designing, constructing, operating, and applying robots. It integrates mechanics, electronics, control theory, and computer science.

  • Basic Aspects include:

    • Physical Structure: The mechanical body (links, joints).

    • Sensing & Perception: Using sensors (vision, force, proximity) to gather environmental data.

    • Control & Action: Processing information and generating motion/force via actuators.

    • Intelligence & Decision Making: Using algorithms (often AI) for autonomy, planning, and adaptation.

B. Mechanical Components

1. Robot Joints and Links

  • Link: A rigid body connecting joints.

  • Joint: A connection allowing relative motion between links. Classified by DOF (Degrees of Freedom).

    • Revolute (R): Rotational motion (like a hinge).

    • Prismatic (P): Linear sliding motion.

    • A robot's kinematic structure is described by a sequence of joint types (e.g., RRR for a 3-DOF arm).

2. Drive Systems: Electric, Hydraulic, and Pneumatic

Feature Electric Hydraulic Pneumatic
Power Source Electric motors (DC, AC, Servo) Pressurized fluid (oil) Pressurized air
Precision High (good for precise positioning) Moderate Low (compressibility)
Force/ Torque Moderate to High Very High Moderate
Speed High Moderate Very High
Cleanliness Clean Can leak, messy Clean (exhausts air)
Cost & Maintenance Moderate High (pumps, leaks) Low (simple)
Typical Use Assembly, welding, precision tasks Heavy lifting, construction, earth-moving Pick-and-place, clamping, simple handling

[!TIP] Exam Focus: Be prepared to compare these three systems in a table format, highlighting precision (Electric wins), force (Hydraulic wins), and cleanliness (Electric/Pneumatic).

C. Performance Metrics

1. Accuracy

  • Definition: The ability of the robot's end-effector to reach a commanded (taught) position in space. It is a measure of absolute error.

$$ \text{Accuracy} = \| \text{Commanded Position} - \text{Actual Achieved Position} \| $$

  • Factors: Control resolution, calibration errors, backlash.

2. Repeatability

  • Definition: The ability of the robot to return to the same position multiple times when commanded to go to a specific point. It is a measure of consistency/precision.

  • Typically better than accuracy (e.g., a robot can be very repeatable but consistently off-target due to poor calibration).

  • Factors: Control resolution, system stiffness, friction.

[!TIP] Common Pitfall: Do not confuse Accuracy (correctness to target) with Repeatability (consistency of repeated moves). A high-precision (repeatable) robot can still be inaccurate.


II. Robot Kinematics

A. Kinematic Representations

  • Forward Kinematics (FK): Computes the end-effector pose (position & orientation) given all joint variables ($$\displaystyle \theta_1, \theta_2... $$ or $$\displaystyle d_1, d_2... $$).

    • Solution: Unique and straightforward via Denavit-Hartenberg (D-H) parameters or direct geometry.
  • Inverse Kinematics (IK): Computes the joint variables required to achieve a desired end-effector pose.

    • Solution: Often multiple solutions (elbow-up/down), may have no solution (point outside workspace), or infinite solutions (redundant robots). Computationally harder.

B. Coordinate Transformations

Purpose: Describe the pose of one coordinate frame relative to another using a 4x4 homogeneous transformation matrix $$\displaystyle ^{A}T_{B} $$.

$$ ^{A}T_{B} = \begin{bmatrix} ^{A}R_{B} & ^{A}P_{B} \\ 0 & 1 \end{bmatrix} $$

where $$\displaystyle ^{A}R_{B} $$ is a 3x3 rotation matrix and $$\displaystyle ^{A}P_{B} $$ is a 3x1 position vector.

1. Line Coordinate Transformations

  • A method to define coordinate frames along a common line (often the joint axis) for serial manipulators. Simplifies the derivation of transformation matrices between consecutive frames.

2. Hayati-Roberts Coordinates

  • An alternative to D-H parameters, particularly useful for parallel manipulators or when joint axes are not intersecting.

  • Defines frames using S (approach), N (normal), and O (orthogonal) vectors, constructing a right-handed system directly from the geometry.

C. Composition of Rotations about Moving Axes

  • When rotating coordinate frames sequentially, the order of rotations is critical (non-commutative).

  • For rotations about moving axes (intrinsic rotations), the transformation matrix is built by pre-multiplying the current frame by the next rotation.

    • Example: Rotate frame B by $\phi$ about its current x-axis, then by $\theta$ about its new y-axis.

    • $$\displaystyle ^{A}T = ^{A}T_{B} \cdot Rot(x,\phi) \cdot Rot(y,\theta) $$

  • This contrasts with rotations about fixed axes (extrinsic), where matrices are post-multiplied.

D. Kinematic Chain Topologies

  • Describes the connectivity of joints and links.

    • Serial Chain: Links connected in an open loop (e.g., typical industrial arm). Advantage: Large workspace. Disadvantage: Low stiffness, cumulative errors.

    • Parallel Chain: End-effector connected to base via multiple independent serial chains (e.g., Stewart platform). Advantage: High stiffness, accuracy, load capacity. Disadvantage: Small workspace, complex IK.

    • Hybrid: Combination of serial and parallel (e.g., a serial arm with a parallel wrist).

E. Inverse Kinematics

General Approach: Solve the set of non-linear equations derived from the forward kinematics equations.

1. For Manipulators with Two Degrees of Freedom (2-DOF)

  • Typical Case: Planar 2R arm (two revolute joints).

    • Forward Kinematics:

$$ x = l_1 \cos\theta_1 + l_2 \cos(\theta_1+\theta_2) $$

$$ y = l_1 \sin\theta_1 + l_2 \sin(\theta_1+\theta_2) $$

*   **Inverse Kinematics Solution**:

    1. Compute $$\displaystyle r^2 = x^2 + y^2 $$.

    2. Use Law of Cosines to find $$\displaystyle \theta_2 $$:

$$ \cos\theta_2 = \frac{x^2 + y^2 - l_1^2 - l_2^2}{2 l_1 l_2} \quad \Rightarrow \quad \theta_2 = \text{atan2}(\pm\sqrt{1-\cos^2\theta_2}, \cos\theta_2) $$

        (Two solutions: elbow-up, elbow-down).

    3. Find $$\displaystyle \theta_1 $$:

$$ \theta_1 = \text{atan2}(y,x) - \text{atan2}\left(l_2 \sin\theta_2, l_1 + l_2 \cos\theta_2\right) $$

2. For Manipulators with Three Degrees of Freedom (3-DOF)

  • Often solved by decoupling.

    • Wrist-Partitioned Arm: First 3 joints position the wrist center (point where wrist axes intersect). Last 3 joints orient the end-effector.

    • Step 1 (Position): Solve the IK for the first 3 joints to place the wrist center at a point $$\displaystyle P_w $$. This reduces to a 3-DOF position problem (often a 3R spherical wrist or RPP).

    • Step 2 (Orientation): Solve the last 3 joints (usually a spherical wrist: RRR) to achieve the desired orientation $$\displaystyle R_{desired} $$.

      • Compute the required rotation matrix for the wrist: $$\displaystyle R_{3}^{6} = (^{0}R_{3})^{-1} \cdot R_{desired} $$.

      • Extract Euler angles (or use standard formulas) to find $$\displaystyle \theta_4, \theta_5, \theta_6 $$.

    • Result: Up to 8 solutions (2 for position x 4 for wrist orientation).

[!TIP] Exam Strategy: For IK problems, always check workspace limits (can the point be reached?) and singularities (loss of DOF). For 3-DOF, explicitly state the decoupling approach.


III. Robot Dynamics and Trajectory Planning

A. Rigid Body Dynamics

1. Decoupling about Center of Mass

  • The dynamics of a rigid body (link) can be separated into:

    1. Translational Motion of the Center of Mass (CoM): Governed by Newton's Second Law: $$\displaystyle \vec{F} = m \vec{a}_{cm} $$.

    2. Rotational Motion about the CoM: Governed by Euler's Equation: $$\displaystyle \vec{\tau} = I_{cm} \vec{\alpha} + \vec{\omega} \times (I_{cm} \vec{\omega}) $$.

  • Why Decouple? Simplifies the formulation of the equations of motion for each link in a manipulator, which are later coupled through joint constraints. The Lagrangian or Newton-Euler methods use this principle.

B. Trajectory Planning Fundamentals

  • Goal: Generate a time-parameterized path (position, velocity, acceleration vs. time) for each joint from an initial to a final configuration.

  • Key Requirements:

    • Geometric Path: The spatial curve the end-effector follows.

    • Time Law: How fast the path is traversed (must respect joint limits: $$\displaystyle \dot{q}_{max}, \ddot{q}_{max} $$).

    • Smoothness: Avoid infinite accelerations (jerks) to reduce vibrations and wear.

  • Common Trajectory Types:

    • Point-to-Point (PTP): Only start and end points matter (e.g., move joint from A to B). Simple, uses linear or cubic polynomials in joint space.

    • Continuous Path (CP): Path shape is critical (e.g., welding, painting). Requires interpolation along a spline (cubic, quintic) in Cartesian or joint space.

  • Quintic Polynomial (5th order) is common for PTP to ensure zero velocity & acceleration at endpoints:

$$ q(t) = a_0 + a_1 t + a_2 t^2 + a_3 t^3 + a_4 t^4 + a_5 t^5 $$

Coefficients $$\displaystyle a_i $$ determined by boundary conditions: $q(0), q(T), \dot{q}(0), \dot{q}(T), \ddot{q}(0), \ddot{q}(T)$.

[!TIP] Remember: Trajectory planning is done in joint space for independent joint control, but must be checked for Cartesian workspace constraints and singularities.


IV. Robot Programming

A. Programming Methods for Robots

Method Description Advantages Disadvantages
Lead-by-the-Nose / Teach Pendant Operator manually moves robot to points, which are recorded. Intuitive, simple for PTP tasks. Time-consuming, offline programming impossible.
Offline Programming (OLP) Program written on a computer using a simulation/cell model. No production downtime, complex paths, simulation for collision detection. Requires accurate cell model, initial setup cost.
Motion-Level Languages Textual commands for motion (e.g., MOVE P1, MOVES P2). Precise, reusable. Requires programming skill.
Task-Level Languages Specify the task goal (e.g., "weld seam S"). Robot figures out motions. High-level, close to human instruction. Very complex AI, limited use.
Robot Simulation Software (e.g., ROBOGUIDE, DELMIA) Part of OLP. Visualize, optimize, validate. Software cost.

B. Problems Peculiar to Robot Programming Languages

  1. Real-Time Constraints: Must guarantee motion commands execute within strict timing deadlines.

  2. Synchronization: Coordinating robot motion with external devices (conveyors, sensors, other robots).

  3. Sensory Integration: Incorporating sensor feedback (vision, force) into the program flow (IF force > limit THEN...).

  4. Error Handling & Recovery: Robustness to unexpected events (part missing, collision).

  5. Complex Data Structures: Handling paths (lists of points), frames (coordinate systems), and tool data.

  6. Lack of Standardization: Proprietary languages (KAREL, RAPID, VAL) vs. emerging standards (ROS).

[!TIP] Key Point: Robot languages are not general-purpose (like Python). They are domain-specific, optimized for real-time motion control and sensor integration.


V. Artificial Intelligence in Robotics

A. Need for AI in Robotics

  • To move beyond "repeatable, pre-programmed" tasks to "adaptive, intelligent" behavior.

  • Enables: Handling uncertainty (sensor noise, environment changes), learning from experience, high-level task decomposition, human-robot interaction, autonomous decision-making in unstructured environments.

B. Intelligent Agents in Robotics

1. Major Types of Intelligent Agents

Agent Type Knowledge Goals Utility
Simple Reflex Current percept only. Condition-action rules. No internal state, fails in partial observability.
Model-Based Current percept + internal state model of world. Can track unobserved aspects. Handles partial observability.
Goal-Based Model + explicit goal(s). Uses search/planning to achieve goals. More flexible, but computationally expensive.
Utility-Based Model + utility function (preferences). Maximizes expected utility. Handles conflicting goals, uncertainty (e.g., risk vs. reward).

2. Structure of Agents

The classic Agent Function:

$$ f: P^* \rightarrow A $$

Maps percept histories ($$\displaystyle P^* $$) to actions ($A$).

  • Architecture: Perception → State Update → Decision/Planning → Action.

  • In robotics, this is implemented as:

    • Perception Module: Sensor processing (vision, SLAM).

    • World Model / State Estimator: Maintains internal belief state (e.g., particle filter).

    • Deliberative Layer: Planning, reasoning, problem-solving (e.g., task planner).

    • Reactive Layer: Fast, reflexive responses (e.g., obstacle avoidance).

    • Action Executive: Converts decisions into motor commands.

C. Game Playing Programs

1. Components of Game Playing Programs

  • State Representation: How to model the board/game state (e.g., 8x8 grid for chess).

  • Move Generator: Function to list all legal moves from a state.

  • Terminal Test: Detects end of game (win/lose/draw).

  • Utility/Evaluation Function $eval(s)$: Assigns a numerical score to a non-terminal state (e.g., material balance in chess).

  • Search Algorithm: Explores the game tree (e.g., Minimax, Alpha-Beta).

  • Time Management: Decides how deep to search given time constraints.

2. Basic Strategy in Game Playing

  • Minimax Algorithm: Assumes perfect play from both players.

    • MAX (our agent) tries to maximize the utility.

    • MIN (opponent) tries to minimize it.

    • Recursively evaluates game tree to a fixed depth $d$.

    • Backs up values: MAX node takes max of children, MIN node takes min.

    • Complexity: $$\displaystyle O(b^d) $$ where $b$ = branching factor, $d$ = depth. Often infeasible.

  • Alpha-Beta Pruning: Optimizes Minimax by pruning branches that cannot affect the final decision.

    • Maintains two values: $\alpha$ (best value for MAX so far), $\beta$ (best for MIN).

    • If $\alpha \geq \beta$ at any node, prune remaining siblings.

    • Effect: Can reduce effective branching factor to $\sqrt{b}$, doubling search depth for same time.

  • Iterative Deepening Search (IDS): Repeatedly run depth-limited search with increasing depth limits. Useful for time-constrained games.

[!TIP] Formula to Remember: The Minimax value of a node $n$:

$$ v(n) = \begin{cases} eval(n) & \text{if } n \text{ is terminal} \\ \max_{a \in actions(n)} v(result(n,a)) & \text{if } n \text{ is MAX node} \\ \min_{a \in actions(n)} v(result(n,a)) & \text{if } n \text{ is MIN node} \end{cases} $$


VI. Robotic System Architecture

A. Architecture of Robotic Systems

  • Definition: The organizational structure of hardware and software components and their interconnections.

  • Common Architectural Paradigms:

    • Hierarchical (Deliberative): Top-down, sense-model-plan-act. Each layer waits for completion of lower layer. Pros: Systematic, provable. Cons: Slow, brittle.

    • Reactive (Subsumption): Bottom-up, behavior-based. Simple behaviors (avoid-obstacle, wander) run in parallel, higher layers can subsume lower ones. Pros: Fast, robust. Cons: Hard to design complex sequences.

    • Hybrid (Three-Layer): Combines both.

      1. Reactive Layer: Real-time control, reflexes (milliseconds).

      2. Executive Layer: Sequencing, task execution (seconds).

      3. Deliberative Layer: Long-term planning, learning (minutes/hours).

    • Sense-Plan-Act (SPA): Classic pipeline. Often a bottleneck.

  • Modern Trend: Component-Based (e.g., ROS - Robot Operating System). Provides a flexible, middleware-based framework with nodes, topics, services, and packages for modularity and code reuse across different hardware.

[!TIP] Exam Answer: When asked for "Architecture," describe the Hybrid/Three-Layer model as it's the most comprehensive and widely accepted in intelligent robotics. Mention ROS as a practical implementation framework.

Go to where you left off?

Quick Add to Notes

Save questions, your own notes and screenshots into notes filed by unit. It takes a free account.

Create free account

Have an account? Log in