Introduction to Robotics

Objectives and outcomes

Acquiring basic concepts of robotics from the standpoint of computer engineering and, more
specifically, artificial intelligence. Introduction to robotics and classification of robots. Development of
basic programming skills for an artificially intelligent robot. Analysis of basic, modern ideas in robotics in
the domain of applying artificial intelligence in robotics. Analysis of the role of robotics in the
development of modern computing.

Lectures

Classification of robots. Industrial, autonomous, and humanoid robots. Differential drive. Dedicated
computer. Sensors. Sensor classification. Distance sensors (ultrasound, optical), infrared, distance
sensors, laser triangulation sensors, laser scanners, cameras. Range, resolution, precision,
accuracy. Reactive behavior. Braitenberg vehicle. Reactions on object detection. Reaction and turning.
Line tracking using one or two ground sensors. Line tracking without gradient. Use of finite automata.
Reactive behavior with state. Implementation of finite-state automata. Robot movement. Distance, speed, time
and acceleration. Segmented and continuous movement. Navigation using odometer. Inertial and
navigational systems. Accelerometers and gyroscopes. Number of degrees of freedom and
actuators. Holonomic and non-holonomic movement. Control models. Control in open and closed loop.
Choice of period for the control algorithm. On-Off regulation. P, PI and PID regulation. Local navigation.
Avoiding obstacles. Wall following. Wall-following direction. Pledge algorithm (maze
solving). Following the marked line. Stochastic path finding. Finite automata and path finding. Kinematics
of a robotic manipulator: direct kinematics. Inverse kinematics Rotations. Vector rotation. Rotating the
coordinate frame. Transforming a vector from one coordinating vector into another. Rotation and
translation of a coordinating frame. Three-dimensional rotation. Rotation around three axes. Right-hand
rule. Matrices for three-dimensional rotation. Multiple rotations. Euler angles.

Practical classes

Implementation of the basic program for controlling a robot. Implementation of a program for sensor data processing. Implementation of a program for controlling actuators. Adding reasoning elements. Implementation of uncertain reasoning. Tracking, searching and controlling a robot.