Course details

Na ovoj stranici koristimo kolačiće kako bi korisnici mogli pristupati svojim korisničkim računima te za potrebe analize pristupa fakultetskim stranicama. Nastavljanjem korištenja ove stranice pristajete na kolačiće.


International Exchange
Student Mobility
Study programmes
Courses in English (2026/2027)
Course details
International Exchange

Course details

Robot Programming

Teaching: Completely taught in English
ECTS: 4
Level: Graduate
Semester: Summer
Prerequisites:
Load:
Lectures Exercises Laboratory exercises Project laboratory Physical education excercises Field exercises Seminar Design exercises Practicum
20 25 0 0 0 0 0 0
Course objectives:
Mastering the knowledge of advanced programming of industrial robots and robotic systems. Implement and validate written robot programs on real robots.
Student responsibilities:
Regular attendance at lectures and exercises. Consultations as needed.
Grading and evaluation of student work over the course of instruction and at a final exam:
Grading is done through continuous assessment during the semester by submitting and defending independent and practical tasks.
Upon successful completion of the course, students will be able to (learning outcomes):
1 . Design a motion plan for a robotic work object handling task.
2 . Write a motion-oriented robot program in simulation software.
3 . Calculate the absolute and relative spatial transformations of coordinate systems.
4 . Implement a motion-oriented robotic program.
5 . Apply basic and advanced commands in robot programming.
6 . Control the movement of two or more robots in a synchronized manner.
7 . Apply advanced roboti programming language commands.
Lectures
1. Introduction to robot programming methods, robotic programming languages. Specifics of robot programming.
2. Syntax and examples of different robotic programming languages.
3. Syntax and examples of different robotic programming languages. Robot programming in simulation software.
4. Motion-oriented robot programming: joint level, trajectory level, object level (relative programming). Task-oriented programming. Paths and trajectories.
5. Basic program elements. Application of numerical registers, position registers, palletizing registers. Calibration of coordinate systems.
6. Program flow elements. Execution of commands in parallel. Advanced program elements.
7. Working with files and applying communication protocols.
8. Development of software for network communication with control computers and other robots.
9. Object-oriented robot programming in an offline simulation software package. Motion parameters. Relative transformations.
10. Object-oriented robot programming in an offline simulation software package. Basic motion programming. Collision check, position reachability check.
11. Development and programming of palletizing algorithms.
12. Development and programming of synchronized operation of multiple robots and positioners.
13. Programming advanced motions, creating programs for tracking 3D geometry.
14. Integration and programming of additional equipment into the robot station - proximity sensors, laser sensors, conveyor belts and other peripherals.
15. Case studies. Examples of real robot programming projects. Demonstrations.
Exercises
1. Introduction and basics of a robotic simulation environment.
2. Calibration of coordinate systems. Development of simulation and motion-oriented programs.
3. Development of a robotic program for handling work pieces.
4. Generation of robotic trajectories and simulation of robot operation for objects of complex geometry: curve tracking from 3D CAD models.
5. Programming and validation of workpiece handling and palletizing processes on robots in the laboratory. Programming and validation of curve tracking programs on robots in the laboratory.
6. Basic commands of the selected procedural robotic programming language. Examples. Program execution in simulation and execution on the robot in the laboratory.
7. Advanced commands of the selected procedural robotic programming language. Examples. Program execution in simulation and execution on the robot in the laboratory.
8. Reading data from a file. Interpreting the read data. Programming robot movement based on the read data. Automatic generation of palletizing points. Checking the accessibility of all points in the robot program. Execution and adjustment.
9. Object-oriented robot programming in a free offline simulation software package. Motion parameters. Relative transformations. Collision checking, position reachability checking.
10. Working with homogeneous transformation matrices on a computer: generating a coordinate system from three points, calculating the rotation matrix, calculating the complete homogeneous transformation matrix, programming relative transformations, programming absolute transformations, spatial transformations of coordinate systems, switching and changing active coordinate systems, changing rotation conventions (Euler, rotation vector, etc.).
11. Development and programming of palletizing algorithms.
12. Development and programming of synchronized operation of multiple robots and positioners.
13. Programming advanced motions, creating programs for tracking 3D geometry.
14. Computer simulations of multi-robot systems in manipulation, assembly and process tasks. Synchronization of multiple robots. Synchronization of input-output signals (handshaking) of multiple robots.
15. Case study and demonstration of low-level robot programming.
Compulsory literature:
1. Robot programming: a guide to controlling autonomous robots, C. Hughes and T. Hughes, , Que, 2016, p. 0-0
2. Robotics, vision and control: fundamental algorithms in MATLAB, P. I. Corke, Springer, 2011, p. 0-0
Recommended literature:
3. Programming robots with ROS, M. Quigley, B. Gerkey, and W. D. Smart, O'Reilly & Associates , 2015, p. 0-0
4. Handbook of Robotics, B. Siciliano and O. Khatib, Eds., , Springer International Publishing, 2016, p. 0-0

University of Zagreb
Faculty of Mechanical Engineering
and Naval Architecture
Ivana Lučića 5
10002 Zagreb, p.p. 102
Croatia
MB 3276546
OIB 22910368449
PIC 996827485
IBAN HR4723600001101346933

University of Zagreb
Ministry of Science and Education