Robot Programming and Simulation

Learning Outcomes

  1. describe and apply the basics of the ROS system
  2. demonstrate basic skills of programming ROS nodes
  3. describe and apply basics of robot and environment modelling for simulations
  4. demonstrate understanding of RTOS concepts and intraprocess communication
  5. demonstrate an ability of developing interface and control of robotic systems using ROS

Forms of Teaching

Lectures

Lectures will be interactive where students will follow the lecturer step-by-step in solving simple examples.

Laboratory

In laboratory exercises students will solve more complex examples from the materials covered by lectures.

Grading Method

   
By decision of the Faculty Council, in the academic year 2019/2020. the midterm exams are cancelled and the points assigned to that component are transferred to the final exam, unless the teachers have reassigned the points and the grading components differently. See the news for each course for information on knowledge rating.
   
Continuous Assessment Exam
Type Threshold Percent of Grade Threshold Percent of Grade
Laboratory Exercises 50 % 40 % 50 % 40 %
Mid Term Exam: Written 50 % 30 % 0 %
Final Exam: Written 50 % 30 %
Exam: Written 50 % 60 %

Week by Week Schedule

  1. Basic ROS concepts (packages, nodes, messages and topics).
  2. Basic ROS concepts (packages, nodes, messages and topics); Programming ROS nodes.
  3. Programming ROS nodes; Configuring the ROS navigation stack.
  4. The ROS transform tree.
  5. The ROS transform tree; Recording and playing back data.
  6. Simulation tool requirements; Robot modelling for simulation.
  7. Environment modelling; Modelling and simulating physical interactions.
  8. Midterm exam.
  9. RTOS concepts; Real-time scheduling.
  10. Synchronization services; Real-time interprocess communication.
  11. Distributed robotic system architecture.
  12. User interface design basics.
  13. Interface usability and efficiency.
  14. Programming haptic interfaces; Programming voice control.
  15. Final exam.

Study Programmes

University undergraduate
Computing (study)
Elective Courses (6. semester)
Electrical Engineering and Information Technology (study)
Elective Courses (6. semester)

Literature

J. M. O'Kane (2013.), A Gentle Introduction to ROS, CreateSpace
R. P. Goebel (2013.), ROS by Example, Lulu
A. Martinez, E. Fernandez (2013.), Learning ROS for Robotics Programming, Packt
M. Lutz (2013.), Learning Python, 5th Edtion, O'Reilley
P. Sheer (2001.), LINUX: Rute User's Tutorial and Exposition, Prentice Hall

General

ID 183472
  Summer semester
5 ECTS
L3 English Level
L1 e-Learning
15 Lectures
15 Exercises
20 Laboratory exercises
0 Project laboratory

Grading System

87,5 Excellent
75 Very Good
62,5 Good
50 Acceptable