MSc in Automation and Control Engineering
MSc in Computer Science and Engineering
MSc in Electronics Engineering
MSc in Engineering Physics
Prof. Paolo Rocco
11:15-13:15 room 5.03
13:15-15:15 room 26.11
The course can be taken as a standalone 5 credits course or as a module of the integrated course Control of industrial and mobile robots.
Information on the other module (Control of mobile robots) is available at this link:
The goal of this course is to present current and advanced methodologies for the control of robotic manipulators. The course covers selected topics ranging from kinematic and dynamic modelling of an industrial robot, to motion planning and control, to control of the interaction of the robot with the environment. The goal of the course is fully aligned with the overall goals of the Automation and Control Engineering Program, while being an excellent complement for students enrolled in other Programs (Computer Science and Engineering, Electronics Engineering, Engineering Physics, and others).
A mix of theoretical and industrially relevant topics characterizes the course, where extensive use of software for simulation and offline programming of robots will be made.
The expected learning outcomes of the course belong to the technological and design area of the expected learning outcomes of the Program.
Specifically, at the end of the course, the student is expected to be able to:
-understand the role of industrial robots in the factory, why and where they should be used in the production systems;
-use mathematics to describe the motion of a robot;
-plan a suitable motion for the robot both in free environment and in presence of obstacles;
-tune an industrial motion control system and understand the rationale and potentialities of advanced nonlinear model based control strategies;
-manage the control of the interaction of the robot with the environment, either with force or with vision sensors;
-understand and master the new trends in industrial robotics, like collaborative robotics;
-use software programs to simulate and to offline program the robots.
Course syllabus is as follows:
Industrial robots: basic concepts and examples. Market of industrial robotics. Trends in industrial robotics.
Review of direct, inverse and differential kinematics. Kinematics of redundant manipulators. Inverse differential kinematics.
Dynamic models of robot manipulators. Euler-Lagrange and Newton-Euler formulations. Main properties. Identification of dynamic parameters. Direct and inverse dynamics.
Path planning and trajectory planning. Trajectories in the joint space: point to point motion and interpolation of points (splines). Kinematic and dynamic scaling of trajectories. Trajectories in the operational space : position and orientation trajectories. Robot programming languages: examples. Path planning with obstacle avoidance.
Control of robot manipulators
Approximate decentralized model of the robot. Review of independent joint control methods. Centralized model-based controllers. Computed torque feedforward control. PD control with gravity compensation. Inverse dynamics control. Robust and adaptive control. Operational space control.
Interaction with the environment
Force sensors. Impedance and admittance control. Hybrid position/force control.
Control with vision sensors
Components of a visual system. Image processing. Image-based and position-based visual servoing.
Human-robot interaction. Safety standards. Collaborative robots (cobots): advantages and examples of use.
Some of the practice sessions will make use of computer simulation tools and of commercial tools for robot offline programming.
Basics in Automatic Control and Mechanics.
B. Siciliano, L. Sciavicco, L. Villani, G. Oriolo: Robotics: Modelling, Planning and Control, 3rd Ed., Springer, 2009 (in English)
B. Siciliano, L. Sciavicco, L. Villani, G. Oriolo: Robotica: modellistica, pianificazione e controllo 3a ed., McGraw Hill, 2008 (in Italian)
G. Magnani, G. Ferretti, P. Rocco Tecnologie dei sistemi di controllo, 2a ed., McGraw Hill, 2007 (in Italian)
Review of Robot Kinematics
Proofs of stability of robust and adaptive control have not been discussed in class and will not be requested at the exam
Control of the Interaction
Control with Vision Sensors
In order to participate in the lab
activities, students need to bring their own laptop with them.
You need to install your own copy of MATLAB/Simulink. Instructions how to download and install your free copy of MATLAB are available here:
You also need to install an
additional toolbox, the Robotics Toolbox by Peter Corke. The instructions to
download and install the toolbox (latest release is 10.4) are available at:
Please notice that this is not the toolbox on robotics delivered by The MathWorks. Functionalities of the toolbox have been checked with success with recent versions of MATLAB until R2019b.
of the toolbox is available.
Depending on the way you installed the toolbox, in order to run the toolbox you may need to issue the initialization command:
Students will take a written examination, integrated by an oral one at the instructor's discretion. Text of the exam will be in English, solutions should preferably be given in English.
Texts of exams are published here.
Exams made in written form
Links to the online exams made on the Moodle platform
Exams made in written form
Students may also refer to the exams of the previously offered course Controllo del moto e robotica industriale (in Italian).
Results of the exams will be notified to the students through the online services.