Introduction to Robotics

ECE-DK703 · Winter semester
Electrical & Computer Engineering Dept., University of Patras
Undergraduate 10 lectures 5 lab sessions Instructor: Konstantinos Chatzilygeroudis

An introduction to the modern, geometric treatment of robot manipulators. The course starts from rigid-body motion — rotation matrices, homogeneous transformations, orientation representations and exponential coordinates — and builds up twists, wrenches and the product-of-exponentials formulation of forward kinematics.

From there it covers Jacobians, statics and singularities, analytical and numerical inverse kinematics, velocity control in joint and task space, trajectory generation over SO(3) and SE(3), the dynamics of single rigid bodies and open chains, and torque, force and impedance control. A sequence of assignments builds a complete pick-and-place pipeline for a 7-DoF manipulator in simulation, and a weekly laboratory teaches ROS 2, taking students from their first nodes to running code on real robots.

The laboratory teaches ROS 2, the middleware used on most research and industrial robots, from first principles up to running code on real hardware. Sessions run in two alternating teams, and each builds on the previous one: from nodes, topics and Raspberry Pi electronics, to visualizing, simulating and finally driving real robots.

Lab instructors: Lampros Printzios & Konstantinos Asimakopoulos (PhD students)

Lab 1
ROS 2 Basics
  • Nodes, topics, services and custom interfaces
  • Packages, parameters and launch files
  • Raspberry Pi LED circuits controlled from ROS 2
Slides Handout
Lab 2
Visualization: RViz, RQt & URDF
  • Describing robots with URDF/xacro
  • Publishing joint states and robot state
  • RViz displays and RQt plugins
  • Modeling the lab’s double pendulum
Slides Handout
Lab 3
Visualization in Practice: Sensors & Robot State
  • Streaming camera images into ROS 2
  • Reading the double pendulum’s joint encoders
  • Visualizing a real robot’s state and trajectory in RViz
Slides Handout
Lab 4
Simulation: Gazebo & MuJoCo
  • Simulating robot models in Gazebo and MuJoCo
  • Connecting simulators to ROS 2
Slides Handout
Lab 5
From Simulation to Real Robots
  • Running the same ROS 2 stack in simulation and on hardware
  • Deployment on the lab’s robots
Slides Handout

Slides for each lecture, grouped by teaching week.

Week 1
Lecture 1
Introduction
  • Introduction to Robotics
  • What is a robot?
  • Configuration space
  • Task space
Slides
Week 2
Lecture 2
Transformations and Orientation Representations
  • 2D Rigid Body Motion
  • 2D Rotation Matrices
  • 3D Rigid Body Motion
  • 3D Rotation Matrices
  • Homogeneous Transformations
  • Orientation Representations
  • Angular Velocity
  • Exponential Coordinates for Rotations
  • Examples
Slides
Week 3
Lecture 3
Twists, Exponential Coordinates and Wrenches
  • Twists
  • Screw Axes
  • Exponential Coordinates for full transformation matrices
  • Wrenches
Slides
Week 4
Lecture 4
Forward Kinematics & Introduction to Jacobians
  • Forward Kinematics
  • URDF
  • Product of Exponentials for FK
  • Intro to Jacobians
Slides
Week 5
Lecture 5
Differential and Inverse Kinematics
  • Jacobians
  • Statics
  • Singularity Analysis
  • Inverse Kinematics
  • Analytical Solutions (briefly)
  • Numerical Inverse Kinematics
  • Inverse Kinematics via Optimization
Slides
Week 6
Lecture 6
Velocity Control and Introduction to Trajectory Generation
  • Control in Velocity
  • Single Joint Control
  • Multiple Joint Control
  • Task-space Control
  • Jacobian Pseudo-inverse
Slides
Week 7
Lecture 7
Trajectory Generation
  • Trajectory Generation
  • Point-to-point motions
  • Trajectory Generation over SO(3)
  • Trajectory Generation over SE(3)
Slides
Week 8
Lecture 8
Dynamics of a Single Rigid Body
  • Dynamics of a single rigid body
  • Newton-Euler Dynamics
  • Inertia Matrix
  • Steiner's Theorem
  • Statics
  • Change of Frame
Slides
Week 9
Lecture 9
Dynamics of Open Chains
  • Dynamics of Open-Chain Robots
  • Lagrangian Formulation
  • Newton-Euler Dynamics
  • Forward Dynamics
  • Inverse Dynamics
  • Closed-form solutions
Slides
Week 10
Lecture 10
Dynamics in the Task Space and Force Control
  • Torque/Force Control
  • Single Joint Force Control
  • Multiple Joint Force Control
  • Task-space Force Control
  • Impedance Control
Slides