Master of science-level of the Bologna process in Mechatronic Engineering (Ingegneria Meccatronica) - Torino Master of science-level of the Bologna process in Ingegneria Informatica (Computer Engineering) - Torino
The course is entirely taught in English.
The students who complete this course will gain knowledge on fundamental concepts in robotics, dealing with both industrial and mobile robots. Industrial robots will be studied both from a kinematic and dynamical point of view. Independent-joint and inverse-dynamics control algorithms will be introduced, as well as fundamental algorithms for the generation of reference trajectories. Mobile, wheeled robots will be studied from a kinematic point of view, and algorithms for locomotion control and path planning will be defined and studied. Elements of sensors and computer vision for robotics will complement the knowledge base of this course.
Robotics is nowadays ubiquitous, both in the traditional assembly and automation environments, and in emerging applications like assistance to humans, search and rescue, patrolling, companionship, to name a few. In this context, a solid background in robotics constitute a strategic asset for MSc students in Mechatronics.
The students who complete this course will gain knowledge on fundamental concepts in robotics, dealing with both industrial and mobile robots. Industrial robots will be studied both from a kinematic and dynamical point of view. Independent-joint and inverse-dynamics control algorithms will be introduced, as well as fundamental algorithms for the generation of reference trajectories. Mobile, wheeled robots will be studied from a kinematic point of view, and algorithms for locomotion control and path planning will be defined and studied. Elements of sensors and computer vision for robotics will complement the knowledge base of this course.
Risultati di apprendimento attesi
Students who complete this course will acquire the following knowledge:
- Classification of industrial robots according to their kinematic configuration
- Forward and inverse kinematics of industrial manipulators, in different formulations
- Velocity kinematics, Jacobian, kineto-static relationships
- Forward and inverse dynamical equations and their characterization and interpretation
- Decentralized and inverse-dynamics control of industrial robots
- Classification and characterization of mobile and wheeled robots
- Wheel characteristics and non-holonomic constraints
- Kinematics of wheeled robots, kinematic control
- Basic concepts on dead reckoning and path planning
- Sensors and computer vision for robotics
- Software simulation tools for robotics. Matlab/Simulink and the Robot Operating System (ROS)
Students who complete this course will acquire the following abilities:
- Analyze a kinematic chain, setting the body reference systems, and write the direct and inverse position kinematic equations
- Write the direct and inverse velocity kinematic equations of a given open chain structure; analytical and geometrical Jacobian; kineto-static relations
- Write and characterize the dynamical model of simple industrial manipulators using the Lagrange formulation, assessing the relative influence of the different terms in the dynamical equations
- Devise independent-joint and inverse-dynamics control architectures, and assess and compare their performance
- Write the kinematics of basic wheeled robotics structure
- Implement basic kinematic control schemes for mobile robots
- Operate a basic selection of onboard sensors, based on their characteristics and technical specifications
- Simulate industrial and mobile robot behavior using the software tools studied in the theoretical sections
Expected learning outcomes
Students who complete this course will acquire the following knowledge:
- Classification of industrial robots according to their kinematic configuration
- Forward and inverse kinematics of industrial manipulators, in different formulations
- Velocity kinematics, Jacobian, kineto-static relationships
- Forward and inverse dynamical equations and their characterization and interpretation
- Decentralized and inverse-dynamics control of industrial robots
- Classification and characterization of mobile and wheeled robots
- Wheel characteristics and non-holonomic constraints
- Kinematics of wheeled robots, kinematic control
- Basic concepts on dead reckoning and path planning
- Sensors and computer vision for robotics
- Grasping and manipulation
- Software simulation tools for robotics. Matlab/Simulink and the Robot Operating System (ROS)
Students who complete this course will acquire the following abilities:
- Analyze a kinematic chain, setting the body reference systems, and write the direct and inverse position kinematic equations
- Write the direct and inverse velocity kinematic equations of a given open chain structure; analytical and geometrical Jacobian; kineto-static relations
- Write and characterize the dynamical model of simple industrial manipulators using the Lagrange formulation, assessing the relative influence of the different terms in the dynamical equations
- Devise independent-joint and inverse-dynamics control architectures, and assess and compare their performance
- Write the kinematics of basic wheeled robotics structure
- Implement basic kinematic control schemes for mobile robots
- Operate a basic selection of onboard sensors, based on their characteristics and technical specifications
- Understand the main features of grasping and manipulation systems
- Simulate industrial and mobile robot behavior using the software tools studied in the theoretical sections
The course requires the knowledge of the basic elements of geometry in the Euclidean tri-dimensional space, the ability to use rigid roto-translations; knowledge of the different ways to represent the orientation/attitude of a rigid body; capacity to solve simple cases of roto-translations of rigid bodies in 3D. Also, knowledge on basic simulation techniques and software tools, such as Matlab/Simulink, is strongly suggested. A suitable background for all these topics is provided by the course 02PCYQW, "Modelling and simulation of mechatronic systems". Furthermore, the knowledge of elements of automatic control (linear control theory, PID schemes) is strongly suggested.
The instructor is available to provide students with material to make up missing background elements.
The course requires the knowledge of the basic elements of geometry in the Euclidean tri-dimensional space, the ability to use rigid roto-translations; knowledge of the different ways to represent the orientation/attitude of a rigid body; capacity to solve simple cases of roto-translations of rigid bodies in 3D. Also, knowledge on basic simulation techniques and software tools, such as Matlab/Simulink, is strongly suggested. A suitable background for all these topics is provided by the course 02PCYQW, "Modelling and simulation of mechatronic systems". Furthermore, the knowledge of elements of automatic control (linear control theory, PID schemes) is strongly suggested.
The instructor is available to provide students with material to make up missing background elements.
Programma
- Course introduction, history of robotics and milestones
- Definitions, kinematic chains, degrees of freedom, redundancy, robotics arms classification, robotic wrists classification
- Direct kinematic problem, Denavit-Hartenberg convention, inverse kinematic problem
- Velocity kinematics, geometrical and analytical Jacobians, statics, kineto-static dual relations
- Dynamics equations, structural properties, characteristics, interpretation
- Model of the motor-gearbox-arm chain, state variables, nonlinear state variable equations
- Trajectory planning, methods for attitude planning, attitude planning. Practical issues, motor constraints, micro-macro interpolation
- Control schemes for rigid manipulators: independent joint control and inverse-dynamics control, PD control with gravity compensation, computed torque control, interaction control
- Mobile robots, wheel and wheeled robot classifications, non-holonomic constraints
- Kinematics of simple wheeled structures: differential drive, unicycle, bicycle, kinematic control
- Sensors and computer vision for robotics
- Basic elements of dead reckoning and path planning
- Simulation tools for robotics: Matlab/Simulink and the Robot Operating System (ROS)
- Conclusive remarks and exam simulation
Syllabus
- Course introduction, history of robotics and milestones
- Definitions, kinematic chains, degrees of freedom, redundancy, robotics arms classification, robotic wrists classification
- Direct kinematic problem, Denavit-Hartenberg convention, inverse kinematic problem
- Velocity kinematics, geometrical and analytical Jacobians, statics, kineto-static dual relations
- Dynamics equations, structural properties, characteristics, interpretation
- Model of the motor-gearbox-arm chain, state variables, nonlinear state variable equations
- Trajectory planning, methods for attitude planning, attitude planning. Practical issues, motor constraints, micro-macro interpolation
- Control schemes for rigid manipulators: independent joint control and inverse-dynamics control, PD control with gravity compensation, computed torque control, interaction control
- Grasping and manipulation techniques
- Mobile robots, wheel and wheeled robot classifications, non-holonomic constraints
- Kinematics of simple wheeled structures: differential drive, unicycle, bicycle, kinematic control
- Sensors and computer vision for robotics
- Basic elements of dead reckoning and path planning
- Simulation tools for robotics: Matlab/Simulink and the Robot Operating System (ROS)
- Conclusive remarks and exam simulation
Theoretical foundations of each topic will be given in traditional in-class lectures. In-class lectures will be complemented by exercises and simulation examples, which will be partly solved in class and partly left to students for completion as homework.
Practical exercises in class and in the laboratory will be devoted to model simple robotic structures, using Matlab, Simulink and ROS.
Theoretical foundations of each topic will be given in traditional in-class lectures. In-class lectures will be complemented by exercises and simulation examples, which will be partly solved in class and partly left to students for completion as homework.
Practical exercises in class and in the laboratory will be devoted to model simple robotic structures, using Matlab, Simulink and ROS.
Handouts, notes, and program codes will be provided during the course. The instructor notes will include solved and unsolved exercises. Textbooks are not mandatory. Selected parts may be useful to understand more in-depth the concepts reported in handouts and notes.
1. B. Siciliano, L. Sciavicco, L. Villani, G. Oriolo, “Robotics: modelling, planning and control”, Springer
2. M.W. Spong, S. Hutchinson, M. Vidyasagar, “Robot Modeling and Control”, Wiley
3. R. Siegwart, I.R. Nourbakhsh, D. Scaramuzza, “Introduction to autonomous mobile robots”, The MIT Press
4. P. Corke, “Robotics, Vision, and Control – Fundamental algorithms in Matlab”, Springer
Handouts, notes, and program codes will be provided during the course. The instructor notes will include solved and unsolved exercises. Textbooks are not mandatory. Selected parts may be useful to understand more in-depth the concepts reported in handouts and notes. The following books are considered to be the most adherent to the course topics:
1. B. Siciliano, L. Sciavicco, L. Villani, G. Oriolo, “Robotics: modelling, planning and control”, Springer
2. M.W. Spong, S. Hutchinson, M. Vidyasagar, “Robot Modeling and Control”, Wiley
3. R. Siegwart, I.R. Nourbakhsh, D. Scaramuzza, “Introduction to autonomous mobile robots”, The MIT Press
4. P. Corke, “Robotics, Vision, and Control – Fundamental algorithms in Matlab”, Springer
Slides; Libro di testo; Esercizi; Esercizi risolti; Esercitazioni di laboratorio; Esercitazioni di laboratorio risolte; Video lezioni tratte da anni precedenti; Strumenti di simulazione;
Lecture slides; Text book; Exercises; Exercise with solutions ; Lab exercises; Lab exercises with solutions; Video lectures (previous years); Simulation tools;
Modalità di esame: Test informatizzato in laboratorio; Prova scritta (in aula); Elaborato progettuale in gruppo;
Exam: Computer lab-based test; Written test; Group project;
...
Specific learning outcomes are assessed through the administration of a final written exam. Knowledge items will be assessed through the administration of theoretical exercises and problems concerning the theoretical foundations of robotic systems. Abilities will be assessed through the administration of numerical exercises and problems, as well as through the design, analysis, or modification of software elements, written in the programming languages studied in class.
The exam consists of a written test, aimed at assessing the comprehension of the theoretical concepts and the ability to apply them to practical case studies.
The test consists of two sections:
- the first section comprises 10 to 15 multiple-choice questions;
- the second section comprises 3 to 5 problems. Such problems can be open-answer questions, numerical problems, coding problems.
Incentives and penalties on the final marks may be given to students, in an amount not greater than the +/-10% (+/-3 pts), based on the active participation to the laboratory activities. Students abroad for study reasons and other particular cases will be evaluated on a case-by-case basis.
The exam is closed-books, closed-notes. Students are allowed to take with them a single A4 sheet, compiled on both sides with notes and formulae at their wish.
The exam duration is 2 hours.
Students who would like to gain more practical insights on the topics covered in the course, may propose to the instructor the realization of a project. A project must be executed by a team of 3 to 5 students. Project topics will have to be agreed upon and approved by the instructor. The project outcomes must be presented to the instructor in the agreed form, generally through either a report or a presentation. Individual contributions must be clearly stated and identifiable. Projects are not mandatory, they do not substitute any part of the written test, and will be evaluated up to an additional 10% of the full marks (3 pts).
To pass the exam, students must attain a full sufficient mark (i.e. 18/30) at the written test. This implies that sufficiency cannot be achieved thanks to incentives for laboratory or projects.
To attain full grade with honors (lode), students must achieve a total of at least 33/30, including incentives.
An additional oral examination may only be requested by the instructor, in order to better assess the student’s preparation.
Gli studenti e le studentesse con disabilità o con Disturbi Specifici di Apprendimento (DSA), oltre alla segnalazione tramite procedura informatizzata, sono invitati a comunicare anche direttamente al/la docente titolare dell'insegnamento, con un preavviso non inferiore ad una settimana dall'avvio della sessione d'esame, gli strumenti compensativi concordati con l'Unità Special Needs, al fine di permettere al/la docente la declinazione più idonea in riferimento alla specifica tipologia di esame.
Exam: Computer lab-based test; Written test; Group project;
Specific learning outcomes are assessed through the administration of a final exam, executed onsite at Politecnico, either in a written form in the classroom, or using the moodle-based "exam" platform, according to the availability of the facilities. Knowledge items will be assessed through the administration of quizzes, theoretical exercises and problems concerning the theoretical foundations of robotic systems. Abilities will be assessed through the administration of numerical exercises and problems, as well as through the design, analysis, or modification of software elements, written in the programming languages studied in class.
The exam consists of a written/online test, aimed at assessing the comprehension of the theoretical concepts and the ability to apply them to practical case studies.
The test consists of two sections:
- the first section comprises 10 to 30 multiple-choice questions;
- the second section comprises 2 to 5 problems. Such problems can be open-answer questions, numerical problems, coding problems.
Students who do not attain a sufficient grade in the first section will not be admitted to the second section. Exact thresholds for passing the first section will be communicated during the first day of classes.
The exam duration is up to 2 hours. Fixed times may be allotted for the first and the second part, respectively (e.g., first part to be executed in 30 minutes, second part to be executed in 1h30 minutes). The exact duration of the exam will be communicated in advance before the first exam session and will remain constant for the whole academic year.
The exam is closed-books, closed-notes. Particularly hard-to-be-recalled formulas will be collected by the instructor in a cheat-sheet, which will be provided to students during the semester, at least two weeks before the first exam date. Alternatively, the instructor will give students detailed instructions on how to compile the cheat-sheet, at least two weeks before the exam. Such a cheat-sheet will be the only additional source of information that can be consulted during the exams. Simple calculators will be allowed. Tablets and cellular phones will be banned from exams.
Incentives and penalties on the final marks may be given to students, in an amount not greater than the +/-10% (+/-3 pts), based on the active participation to the laboratory activities. The active participation to laboratory activities may be measured with the administration of tests or exercises. Exact evaluation criteria will be communicated during the first day of classes.
Students who would like to gain more practical insight on the topics covered in the course, may propose to the instructor the realization of a project. A project must be executed by a team of 3 to 5 students. Project topics will have to be agreed upon and approved by the instructor. The project outcomes must be presented to the instructor in the agreed form, generally through either a report, a presentation, or a short video. Individual contributions must be clearly stated and identifiable. Projects are not mandatory, they do not substitute any part of the written test, and will be evaluated up to an additional 10% of the full marks (3 pts). Criteria for grading will be given during the first day of classes.
To pass the exam, students must attain a fully sufficient mark (i.e. 18/30) at the written test. This implies that sufficiency cannot be achieved thanks to incentives for laboratory or projects.
To attain full grade with honors (lode), students must achieve a total of at least 33/30, including incentives.
At least a full, real-time exam simulation will be carried out before the start of the exam session.
An additional oral examination may only be requested by the instructor, in order to better assess the student’s preparation.
In addition to the message sent by the online system, students with disabilities or Specific Learning Disorders (SLD) are invited to directly inform the professor in charge of the course about the special arrangements for the exam that have been agreed with the Special Needs Unit. The professor has to be informed at least one week before the beginning of the examination session in order to provide students with the most suitable arrangements for each specific type of exam.