Estratto del documento

Robotics

Daniele Parozzi

Prof. Alessandro Rizzo

Lez 24/02/2026

A mobile robot is a structure capable to move and act (autonomously or remotely operated) in terrestrial, underwater or aerial environments.

Structured environment = Type and the geometric characteristics of the environment are known (space, obstacles…).

Environments can be assumed to be:

  • Totally structured, partially structured or unstructured.
  • Totally known, partially known or unknown.

To move autonomously a robot needs:

  • Intelligence, i.e. (onboard CPU, algorithms, or even cloud database).
  • Sensors (for perceiving the environment).
  • Actuators (for motion and manipulation, wheels, arms, propellers).
  • Energy source (onboard generated like battery or solar energy or supplied by an “umbilical cord”).

Fundamental problems in robotics: things that are given for granted in our brain are not so trivial from an algorithmic point of view.

  • Locomotion: how robots move in the environment.
  • Perception: how robots perceive the environment.
  • Representation: how robots organize knowledge about the environment (how we algorithmically represent the environment).
  • Mapping: how to build a map of the environment.
  • Localization: where is the robot in the map (combination of the estimation of the motion and the sensing of the environment).
  • Path planning/action planning: what the robot shall do to go from here to there; what are the actions to be performed to complete a specified task (group of robots that have to extinguish a fire).
  • Supervision and control: Usually things don’t go as planned, I have to correct in real time. How are the commands to actuators generated to perform simple or complex tasks. How to generate tasks.

Starting from locomotion types 1

Sometimes robots are inspired by nature.

Longitudinal waves means contract and extend like a millepiedi and transversal means to undulate like a snake.

This lesson now will focus on wheeled robots.

Wheel types

  • Simple non steering wheels.
  • Simple steering wheels.
  • Castor wheel.
  • Omniwheel (omnidirectional wheel) or Swedish wheel.
  • Spherical omniwheel.

Wheel may be active (actuated by a motor) or passive.

Simple non steering wheels

It is the simplest kind of wheel we can use.

The wheel spins with an angular velocity omega, it has two components of the velocity one is v = longitudinal velocity, we assume the transversal velocity is 0, the wheel doesn’t slip on the side. Also, the angle fi doesn’t change. 2

This is the simplest and most common form of mobile robot we have, it is called differential drive. (the rumba) To turn the robot spins the wheels in different velocities.

The simple steering wheel can change angle fi. The robot is like the ape car.

Castor wheels are the ones of supermarket karts or office chairs. They are steerable but they orient themselves after a push. The axis of steering is not in the geometric center of the wheel.

Omniwheel is used in production sites on industrial platforms, is the only one that by design move sideways, can slip. Can be active or passive. 3

Omnidirectional spherical wheel. The robot has spherical wheels, robot moves because of the difference of velocity of rotation of the three wheels.

Typical structures

End of general introduction.

Every wheeled vehicle is subject to constraints = forcing a relationship between variables (Think about parking your car: you can’t move sideways, but you can do parallel parking with a suitable sequence of maneuvers!) 4

Introducing some notations: we will use vector q which contains generalized coordinates (the minimum number of variables necessary to describe the configuration of the robot.

Easiest example of a unicycle: Constraints can be expressed by:

  • Equalities so bilateral constraints.
  • Inequalities so unilateral constraints.

We will only deal with constraints bilateral and scleronomic (independent from time).

Another definition is we call holonomic (or integrable) those constraints that can be written as h (q) = 0. In the example above the only holonomic constraint is X=Y because h=X-Y=0.

The effect of holonomic constraints is to reduce the space of the accessible configurations.

In this case q= [x, x, ]

This procedure may lead to singularities: But Y cannot be equal to zero. This can be fixed by switching to polar coordinates.

Then, it’s also possible to have constraints which have both generalized coordinates and velocities (their derivatives). They are called kinematic constraints: q dot is the vector of velocities.

These constraints don’t reduce the space of the accessible configurations.

These constraints can be written in this very important form: this is called Pfaffian form.

For example, if I have three constraints I can pile up them, expressing them in the Pfaffian form: 5

This form is important because it can give us a solution for the velocities. To satisfy our constraints our velocity q dot must belong to the null space matrix A. We will see this is important.

Is there any equivalence between holonomic and kinematic constraints? If we have k holonomic constraints, then we can derive kinematic constraints. Indeed, starting from h(q) if we do the derivative, we obtain a kinematic constraint:

The contrary is not always true, we have to integrate, and sometimes the integral has no solution. In this case the constraint is called nonholonomic or non-integrable.

A system with at least a nonholonomic constraint is called nonholonomic system.

Nonholonomic constraints do not reduce the space of the accessible configurations (the number of generalized coordinates cannot be reduced) but they reduce the space of velocities.

Quindi se eliminano variabile e riducono spazio sono holonomic, se hanno anche vincoli cinematici sono kinematic e possono essere scritti in forma pfaffian. Se i kinematic non sono integrabili (non possono diventare holonomic) si chiamano nonholonomic or non-integrable e non riducono coordinate generalizzate ma riducono le velocità. 6

Lez 2/03/2026

Most common sensors for mobile robotics

Sensors are devices used to measure quantities. Measure is conversion.

The transducer is a device able to transform one form of energy to another one. In a scale to measure the weight, the transducer is the spring which converts potential energy (weight) into displacement.

There are transducers that emit energy and others that receive energy. In robotic transducers are typically receivers and they convert a physical quantity to an electric signal; these are called sensors. (every sensor is a transducer but not every transducer is a sensor). In robotic sensors are usually packed in groups, and we still call them a single sensor.

Passive sensors measure energy in environment without injecting energy into environment (thermometer, camera, scale) an active sensor inject energy in environment (radar, sonar, lidar, thermal camera).

In robotics there is another distinction. Proprioceptive sensors measure internal variable of the robot. Exteroceptive measure external variables of the environment.

Then, the physical quantity, so the type (position, velocity, contact).

Then linearity and nonlinearity: a sensor is linear if its response to a stimulus is linear. Linear sensors are highly desirable, as their model is simpler and the effect of noise is uniform in the whole sensor range. 7

Other definitions

Measurement range: is interval between the smallest and largest values of the sensed signal that can be measured by the sensor.

Dynamic range: another way to look at the measurement range, the ratio between the two values (max and min), often represented by its base-10 logarithm multiplied by 20. Basically, similar to how we measure amplification in dB.

Sensitivity is the slope dy/dx of the sensor response y, as a function of the measured quantity x. With high sensitivity we can discriminate more, small variations in the input lead to high variations in the output. The drawback is noise, we have to use noise filtering.

In the characteristic of a sensor after the increasing, there is typically a maximum where we have a saturation state of the sensor.

Resolution: the minimum variation of the measured signal that can produce a detectable change in the sensor output. (salire su una bilancia con una penna non cambia niente)

It may depend on physical limitations (spring coefficient) or on the digitization process.

Precision (has always to do with repeatability): it describes the reproducibility of the sensor measurements given a steady sensed signal. Ideally, a sensor with infinite precision should provide the same measured output over time. Real sensors provide instead a range of values over time, statistically distributed according to some distributions (typically Gaussian).

Accuracy quantifies the correctness of output provided by a sensor compared with the real value of the measured signal.

For example, taking a histogram of the measurements and watching the different distributions:

The green one sensor is as accurate as the red one, but the red one is more precise.

The orange is less accurate but is precise. 8

Other specifications

Bandwidth measures the maximum frequency at which the sensor provides reliable measurements. If the frequency of the variation of the value is too high, the sensor can’t measure it. We want large bandwidth to measure fast changes, but not too large to avoid measuring noise (low-pass filters are often used).

Response time: the duration of the period of time that elapses between a change in the input measured signal and when the sensor output changes accordingly. In robotics we are in order to milliseconds or fraction of milliseconds.

Common sensors: Proximity and contact sensors

Proximity (little distance) and contact sensors (zero distance) are used for sensing objects in front of them or nearby, at a fixed or a parametrizable distance. If such a distance is zero. Applications are usually safety functions, like emergency stops or simple navigation.

Types of sensors

Photoelectric proximity: LED (light emitting diode) + Photoresistor, the photoresistor senses the reflected light (the resistance of the sensor is inversely proportional to the quantity of light it receives) that is proportional to the distance: high light means the object is near so the photoresistor decrease the resistance and this increase the circuit current. (they have a very narrow tube to not get environment light)

Bumpers: Microswitch attached to a protective case designed to receive shocks. They touch the obstacle and the circuit closes or opens. We have a spring with a switch and when the bumper touch the obstacle the circuit closes or opens. 9

Lez 09/03/2026

Encoders are proprioceptive used to convert a linear or an angular position into digital code. Are based on an optical concept or hall effect concept.

The core is a wheel subdivided in full and empty sectors, the size of sectors influence resolution. Besides the wheel there is a LED, on the other side a phototransistor or photoresistor. Since the sensor has full and empty area, the sensor is going to have a square wave output. Being able to count the number of steps in the output, we obtain the angle, and then dividing by time, the velocity. It is a very simple, cheap and robust sensor.

There are features to make it work better, the first is placing two pairs of detectors and LED typically at 90 degrees each other. This allow to know the direction of motion by using also two detectors to understand which one comes first. (the image is a bit different, the detectors have a lower distance, but 90 degrees is better) This is called two channels encoder or quadrature encoder.

But this is a relative encoder, we don’t know the absolute position.

There are two technics to know the absolute position:

  • The encoder chooses an arbitrary position as reference (homing procedure). Using a manual button or putting another circle around and we only mark one position (the only point open, everything else is closed).
  • Another way is a absolute optical encoder, it has a certain number of concentric windows, with different configuration of full and empty sectors, each slice numerically code the position of the encoder (0000, 0001, 0011….in reality we adopt a coding where only one bit changes for each sectors, this is called hamming code so we don’t do binary) We have the exact number of each position. This is more complicated in terms of hardware, the manufacturing is more complex and expensive. (having like five concentric sectors it needs 5 LED and five photoresistors) in reality, to have a decent resolution we need a high number of bits so like 9 sectors = 9 bits. (29 =512 numbers; 360/512= 0,7 degrees of resolution)

10

Another encoder is based on Hall effect, which is an electromagnetic effect, as an output we have the same square wave, the wheel is made with electromagnetic material, we measure the current.

Global positioning system

There are different types of GPS (GPS is generic global positioning system, GNSS is the specific one based on satellites). The idea is that if a robot can talk to the satellite, measuring the time between the emission on info and receive, If I know the time in different positions I can do a triangulation, finding the exact point where I am.

There are ways to enhance the GNSS system:

For example using a base station which helps to correct the position sending some correcting data, (we know with precision the position of the base station) is like having another satellite.

RTK (Real Time Kinematics) is a variant used in robotics using also a reference station which has a complex software that adjusts the measurements from the satellites by also analyzing the phase difference between the wave that typically is not measured by the robot. For the GNSS the precision is in meters, even 10 meters of error sometimes. With an RTK the error is centimeters. 11

From an indoor point of view a way is UWB (ultra-wide band) anchors, the anchors have the same role of satellites but for internal place in buildings where GNSS has problems. UWB is typically used indoors. It works exactly as GNSS but with radio waves. Furthermore, instead of just receiving packets from satellites the communication is bidirectional with the anchors and we measure the time to return.

Talking about the algorithms that govern UWB, one is Time Difference of Arrival (TDOA) in which the tag on the top of the robot constantly broadcast a message to the anchors which receive it at different times, synchronizing the clocks we use the time difference to evaluate the position. If we don’t have a global clock we use a two way protocol which is the second algorithm called Time of Flight (TOF). In this case the robot sends the message to the anchor which reply so I measure the two way time and apply trilateration.

Distance of satellite= light speed * time (the satellite send a packet which contains also the time)

We need at least four satellites to do trilateration, the more I have the more the measure will be accurate.

It is called trilateration not fourlateration because comes from nautical tradition (ancient traditions) (they needed only 3 because the sea is like a plane) A 3d world, having to consider also the elevation, we need at least four satellites.

The existing ones are GPS (USA), Glonass (Russia), Galileo (EU).

Note: Trilateration means measure the distance, triangulation is based on angles. 12

Inertial and heading sensors

Two sensors based on inertia are accelerometers (linear acceleration) and gyroscopes which are often combined in groups to form Inertial Measurement Units (IMU).

Accelerometers

  • Measure the linear acceleration along a defined axis. The acceleration is typically converted into either a force or a deformation.
  • Based on a mass-spring system.
  • Gravity is preponderant and must be filtered out.
  • To measure the displacement, we can use piezoelectric or capacitive.

To measure angular acceleration we use Gyroscope:

  • It is based on the conservation of the angular moment.

Combining 3 accelerometers, 3 Gyroscopes and a magnetic compass we obtain an IMU. 13

Another possibility is Vibrating Structure Gyroscope, the difference is that in the rotating gyroscope need to be powered to rotate, this one is all made in silicon and can be putted in an electrical circuit.

Then there are compasses which measure the direction of the Earth’s magnetic field (approximately N-S).

Can be based on two principles:

  • Hall Effect: a conductor is traversed by a current. When subject to a magnetic field, the conductor exhibits a voltage in the direction orthogonal to the current traversing it.
  • Fluxgate: based on the measurement of magnetic flux in saturated or unsaturated conditions, in presence of the Earth’s magnetic field.

Then there are Digital cameras in which the light enters and is projected in a surface, going from 3d to 2d we are going to lose one direction. The sensor is a plate of semiconductors, in front of which there is an optical system (lens) and a hole that conveys the light. Then we need an analogue to digital system. The sensor is divided into squares called pixels, ADC to convert each pixel measurement into digital value. 14

This is why the image is upside down.

This is the pinhole model, each point in 3d world is projected in a straight light in my sensor.

Cameras for robotics can work in gray levels (measure the intensity of radiation without carrying about the color) or RGB (have a sensor sensitive to three different wavelengths).

Other common cameras in robotics are Omnidirectional cameras they provide a wide view using fisheye lens or mirrors. Pinhole models don’t apply, use a spherical projection model instead.

Event cameras are new in robotics. Event cameras acquire the image only if an event happens (and put a timestep). They generate a stream of timestamped events, corresponding to changes in brightness. These cameras have high performances, like low latency, high speed, high dynamic range, and reduced notion blur.

Combining fast event cameras and artificial intelligence is possible to win against a expert in drone racing.

Then, rangin

Anteprima
Vedrai una selezione di 10 pagine su 167
Appunti Robotica Pag. 1 Appunti Robotica Pag. 2
Anteprima di 10 pagg. su 167.
Scarica il documento per vederlo tutto.
Appunti Robotica Pag. 6
Anteprima di 10 pagg. su 167.
Scarica il documento per vederlo tutto.
Appunti Robotica Pag. 11
Anteprima di 10 pagg. su 167.
Scarica il documento per vederlo tutto.
Appunti Robotica Pag. 16
Anteprima di 10 pagg. su 167.
Scarica il documento per vederlo tutto.
Appunti Robotica Pag. 21
Anteprima di 10 pagg. su 167.
Scarica il documento per vederlo tutto.
Appunti Robotica Pag. 26
Anteprima di 10 pagg. su 167.
Scarica il documento per vederlo tutto.
Appunti Robotica Pag. 31
Anteprima di 10 pagg. su 167.
Scarica il documento per vederlo tutto.
Appunti Robotica Pag. 36
Anteprima di 10 pagg. su 167.
Scarica il documento per vederlo tutto.
Appunti Robotica Pag. 41
1 su 167
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Ingegneria industriale e dell'informazione ING-INF/04 Automatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher danieleparozzi di informazioni apprese con la frequenza delle lezioni di Robotica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Politecnico di Torino o del prof Rizzo Alessandro.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community