Software:
Robot Operating System (ROS)
RoboStudio ABB
Automation Studio B&R
Linux Ubuntu (16.04 or 18.04)
Unity3D and Vuforia
Programming Language:
Python and/or C/C++, C#
Other:
Algorithmization, Programming, Mathematics and Optimization
The VRM (Programming for Robots and Manipulators) course enables students to acquire skills and knowledge in programming industrial / mobile robots and manipulators. This course also expands skills in advanced system integration and deployment in real-world robotic applications. The aim of the VRM course is to introduce students to modern approaches to robotic technology with a focus on programming, kinematics / dynamics solutions, motion planning, Industry 4.0 and the use of artificial intelligence (AI).
The main focus is on students practical skills in laboratory exercises, which include several blocks:
- RobotStudio ABB
- Forward/Inverse kinematics
- Robotic operating system (ROS) extended by advanced industrial capabilities ROS-Industrial (ROS-I)
- Virtual / digital twin using Unity3D extended by system integration with B&R Automation PLC via OPC UA
- A simple demonstration of augmented reality based on robotics
These few blocks are extended by theoretical knowledge, which students acquire in the form of lectures.
Link: Detailed description of the Syllabus (Czech)
Link: Course descrition - FME, BUT
Week 1 (8. 2. 2021):
- Introduction to the course, main goals, methods and evaluation criteria, etc.
- Introduction to the issue, development and definition of robots, manipulators.
- Introduction of an advanced robotic production line called Industry 4.0 (i4C).
Link: Lecture 1
Week 2 (14. 2. 2021):
- Stationary industrial robots and single-purpose manipulators. Specific constructions of industrial robots, parallel structures. Programmable logic controllers (PLC) and use in robotics.
- Control and programming of industrial robots. Introduction of basic tools for creating robotic simulations.
- Assignment of seminar paper.
Link: Lecture 2
Week 3 (22. 2. 2021):
- End-effectors and their adaptability.
- ABB RobotStudio - Workshop (Part 1: Introduction, Create tool, Simple task with an industrial robot, etc.)
- Assignment of project.
Link: Lecture 3
Link: Laboratory 1
Week 4 (1. 3. 2021):
- ABB RobotStudio - Workshop (Part 2: Simple task with an collaborative robot, Conveyor control, Smart gripper, Sync., etc.)
Link: Laboratory 2
Week 5 (8. 3. 2021):
- Forward / Inverse Kinematics.
- Demonstration of Forward / Inverse kinematics on a two-link simple manipulator. Creation of a working envelope of a specified robotic construction.
Link: Lecture 4
Link: Laboratory 3
Week 6 (15. 3. 2021):
- Differential Kinematics and Robotic Dynamics.
- BRNO INDUSTRY 4.0 | 2021 (online): 5th International B2B Conference about Production Digitization and Smart Technologies for Industry
- Demonstration of Differential Kinematics on a two-link simple manipulator. Example of dynamics calculation using Euler-Lagrange equation.
Link: Lecture 5
Link: Laboratory 4
Week 7 (22. 3. 2021):
- Motion planning in robotics (mobile, industrial robots) using classical Joint / Cartesian interpolation and other planning methods such as RRT (Rapidly-exploring random tree), PRM (Probabilistic roadmap) and Reinforcement / Deep-Reinforcement learning.
- Bezier curves (Linear, Quadratic, Cubic).
- Demonstration of simple motion planning using Joint / Cartesian interpolation on a two-link manipulator. Trajectory smoothing using Bézier curves. Animation of the resulting trajectory, check of reachable points, etc.
Link: Lecture 6
Link: Laboratory 5
Week 8 (29. 3. 2021):
- ROS (Robot Operating System), ROS-I (Industrial) Introduction.
- ROS installation (melodic distribution), package configuration, explanation of basic concepts (topics, services, messages, etc.)
- A simple example of TurtleSim motion control and working with a terminal.
- Creating a ROS workspace for simple control of TurtleSim motion using the Python programming language (catkin, rospy, launch file, etc.)
Link: Laboratory 6
Week 9 (5. 4. 2021):
- National Holiday (Easter Monday)
Week 10 (12. 4. 2021):
- Simple demonstration of robot motion control and trajectory planning via the ROS system using several simulation tools (RVIZ, gazebo, etc.)
- Controlling the movement of multiple industrial robots (ABB, Fanuc, Universal Robots, etc.) using the Python programming language (catkin, rospy, launch file, etc.)
- Presentation of students' Bachelor's theses (ROS, robotics, system integration, etc.)
Link: Laboratory 7
Week 11 (19. 4. 2021):
- Unity3D as a tool for creating digital / virtual twins, connection with B&R Automation Studio (follow-up project from the VPL course).
- Introduction to augmented reality and a simple demonstration of the application in the real world.
Link: Laboratory 8
Week 12 (26. 4. 2021):
- Introduction to the concept of Industry 4.0.
- Industry 5.0, 6.0 and automation a few years later.
Week 13 (3. 5. 2021):
- Presentation of team projects.
Description:
- Active participation in laboratory exercises and lectures: 10 points
- Seminar paper: 20 points [Link]
- Project no. 1: 30 points [Link]
- Project no. 2 (Team project): 40 points [Link]
The condition for writing a seminar paper is the use of LaTex (e.g., Overleaf -> Online LaTeX Editor). Projects are submitted via GitHub, which will contain a folder of all relevant files for each project and a short description in English.
The penalty equation for late submission of a project is defined as:
where
The maximum possible score is defined as:
where
The script for the calculation can be found at [Link].
Textbooks:
- Introduction to AI Robotics, Robin R. Murphy
- Roboty a robotizované výrobní technologie, Zdeněk Kolíbal
- Handbook of Robotics, Bruno Siciliano
- Modern Robotics: Mechanics, Planning, and Control, Kevin M. Lynch and Frank C. Park
- Robotics, Vision and Control, Peter Corke
- Planning Algorithms, Steven M. LaValle
- Industrial Robotics: Theory, Modelling and Control, Sam Cubero
- Mathematics for Computer Graphics, John Vince
Other:
[email protected] or Microsoft Teams (recommended)