Robot Dynamics

Main content

Abstract: We will provide an overview on how to kinematically and dynamically model typical robotic systems such as robot arms, legged robots, rotary wing systems, or fixed wing.

Objective: The primary objective of this course is that the student deepens an applied understanding of how to model the most common robotic systems. The student receives a solid background in kinematics, dynamics, and rotations of multi-body systems. On the basis of state of the art applications, he/she will learn all necessary tools to work in the field of design or control of robotic systems.

Content: The course consists of three parts: First, we will refresh and deepen the student's knowledge in kinematics, dynamics, and rotations of multi-body systems. In this context, the learning material will build upon the courses for mechanics and dynamics available at ETH, with the particular focus on their application to robotic systems. The goal is to foster the conceptual understanding of similarities and differences among the various types of robots. In the second part, we will apply the learned material to classical robotic arms as well as legged systems and discuss kinematic constraints and interaction forces. In the third part, focus is put on modeling fixed wing aircraft, along with related design and control concepts. In this context, we also touch aerodynamics and flight mechanics to an extent typically required in robotics. The last part finally covers different helicopter types, with a focus on quadrotors and the coaxial configuration which we see today in many UAV applications. Case studies on all main topics provide the link to real applications and to the state of the art in robotics.

Schedule and Slides

Program overview of Robot Dynamics (PDF, 84 KB)


Lecture: Tuesday 10.15 - 12.00, CAB G11 - weekly

Exercise: Wednesday 8.15 - 10.00, HG E1.2 - according to program below

  Topic Title
20.09. Introduction

Course Introduction; Recapitulation Position, Linear Velocity; 

Script (PDF, 1.2 MB)


Introduction (PDF, 2.4 MB)

Kinematics Recap (solution) (PDF, 1.3 MB)

27.09. Kinematics 1

Rotations; Parameterization; Introduction to Multi-body Kinematics

Script (PDF, 1.2 MB)


Rotation (PDF, 2.1 MB)

Additional material:

Quaternion Kinematics by Sola (PDF, 785 KB)


28.09. Exercise 1a

Kinematics Modeling the ABB arm

Exercise (PDF, 387 KB)

ExerciseMatlabFiles (ZIP, 446 KB)

Solution (PDF, 426 KB)

SolutionMatlabFiles (ZIP, 448 KB)

04.10. Kinematics 2

Kinematics of Systems of Bodies; Jacobians; Floating base Systems

Script (PDF, 1.2 MB)


Multi-body and floating base kinematics (PDF, 3.2 MB)

05.10 Exercise 1b

Differential Kinematics of the ABB Arm

Exercise (PDF, 360 KB)

ExerciseMatlabFiles (ZIP, 451 KB)

Solution (PDF, 434 KB)

11.10. Kinematics 3

Kinematic Control Methods: Inverse Differential Kinematics, Inverse Kinematics; Rotation Error; Multi-task Control

Script (PDF, 1.2 MB)


Kinematics 3 (PDF, 2.1 MB)

12.10. Exercise 1c

Kinematic Control of the ABB Arm





18.10. Dynamics L1

Multi-body Dynamics

Script (PDF, 1.2 MB)


Dynamics 1 (PDF, 1.5 MB)

19.10. Exercise 2a

Dynamic Modeling of the ABB Arm

Exercise (PDF, 261 KB)

ExerciseMatlabFiles (ZIP, 94 KB)

Solution (PDF, 302 KB)

SolutionMatlabFiles (ZIP, 117 KB)

25.10. Dynamics L2

Dynamic Model Based Control Methods

Script (PDF, 1.2 MB)


Dynamics 2 (PDF, 3.5 MB)

26.10. Exercise 2b

Dynamic Control Methods Applied to the ABB arm

Exercise (PDF, 1.3 MB)

ExerciseMatlabFiles (ZIP, 195 KB)

Solution (PDF, 1.3 MB)

SolutionMatlabFiles (ZIP, 198 KB)

01.11. Legged Robots

Case Study and Application of Control Methods

Legged Robots (PDF, 10.3 MB)

08.11. Rotorcraft 1

Dynamic Modeling of Rotorcraft I

Rotorcraft Introduction (PDF, 1.6 MB)

Propeller Analysis and Dynamic Modeling (PDF, 1.2 MB)

15.11. Rotorcraft 2

Dynamic Modeling of Rotorcraft II & Control

Quadrotor Control (PDF, 547 KB)

16.11. Exercise 3

Modeling and Control of Multicopter

Multicopter Exercise (ZIP, 164 KB)

Multicopter Solution (ZIP, 433 KB)

22.11. Case Studies 2

Rotor Craft Case Study

Multicopter Case Study (PDF, 17.4 MB)

29.11. Fixed-wing 1

Flight Dynamics; Basics of Aerodynamics; Modeling of Fixed-wing Aircraft

Aerodynamics Basics (PDF, 2.7 MB)

30.11. Exercise 4

Aircraft Aerodynamics / Flight performance / Model derivation

Aerodynamics Exercise 1 (PDF, 2.5 MB)

Aerodynamics Solution 1 (PDF, 2.5 MB)

06.12. Fixed-wing 2

Stability, Control and Derivation of a Dynamic Model

Aerodynamics Stability and Dynamics (PDF, 1.6 MB)

07.12. Exercise 5

Fixed-wing Control and Simulation

Aerodynamics Exercise 2 (PDF, 494 KB)

Aerodynamics Solution 2 (PDF, 228 KB)

Skysailor Matlab (ZIP, 7 MB)

13.12. Case Studies 3

Fixed-wing Case Study (Solar-powered UAVs - AtlantikSolar, Vertical Take-off and Landing UAVs – Wingtra)

Control and Case Study (PDF, 3.8 MB)

Wingtra Case Study (PDF, 3.7 MB)

20.12. Summery

Summery; Wrap-up; Exam

Summary Kinematics Dynamics (PDF, 1.4 MB)

Summary Rotary Wing (PDF, 986 KB)

Summary Fixed Wing (PDF, 1.2 MB)

Exercise Exam 2016 (PDF, 3 MB)


Script Errata

This is a list of errors that were corrected in the updated script (online version) compared to the initial uploads:

  • Figure 2.1: Wrong arrow for phi angle (spherical coordinates)
  • Example 2.5.1, eq 2.70: angular velocity in x (instead of z) direction
  • Inconsistency in E matrix is fixed
  • Wrong index in pNE mass matrix fixed
  • Eq 2.66: missing 1/2
  • Eq 2.77 and FF: wrong unitary rotation 
  • Eq 2.211 wrong sign of sqrts
  • Eq 2.214 typo in Jacobian
  • Eq 2.186 copy past error 
  • Eq 2.218 wrong sign
  • Eq 2.207 missing index  (also the N definition had a wrong index)

Lecture Slides Errata

This is a list of errors that were corrected in the updated slides (online version) compared to the initial uploads:

  • 1-kinematics, S3: wrong arrow for phi angle (spherical coordinates)
  • 2-kinematics, S21: wrong numerical evaluation of left and right matrix
  • corrected E matrix in 1,2,and 3 kinematics

Additional Material

Additional material will be provided during the course

Page URL:
© 2017 Eidgenössische Technische Hochschule Zürich