robots autónomos - rua: principal · • medir variables internas del robot (sensores internos)...

29
Robots aut Robots aut ó ó nomos nomos Miguel A. Cazorla, Otto Colomina Miguel A. Cazorla, Otto Colomina Robots Autónomos Miguel Cazorla, Otto Colomina Depto. Ciencia de la Computación e I.A. Universidad de Alicante Robots Aut Robots Aut ó ó nomos nomos Miguel Miguel Cazorla Cazorla , Otto Colomina , Otto Colomina Depto Depto . Ciencia de la Computaci . Ciencia de la Computaci ó ó n e n e I.A I.A . . Universidad de Alicante Universidad de Alicante Este ítem está licenciado bajo Licencia Creative Commons

Upload: others

Post on 12-Jul-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

Ro b

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Robots AutónomosMiguel Cazorla, Otto Colomina

Depto. Ciencia de la Computación e I.A. Universidad de Alicante

Robots AutRobots AutóónomosnomosMiguel Miguel CazorlaCazorla, Otto Colomina, Otto Colomina

DeptoDepto. Ciencia de la Computaci. Ciencia de la Computacióón e n e I.AI.A. . Universidad de AlicanteUniversidad de Alicante

Este ítem está licenciado bajo Licencia Creative Commons

Page 2: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

Ro b

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

RobóticaRobRobRobóóóticaticatica

Sensores

Page 3: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

3

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

IntroducciónIntroducciIntroducciIntroduccióóónnn

• Sistema robótico: percepción-acción• Necesitamos obtener información (percibir) el

mundo que nos rodea (y datos propios)• Este conocimiento se obtiene mediante

sensores• Sensor: aparato que transforma variables

físicas en señales eléctricas

Page 4: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

4

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Ejemplos de sensoresEjemplos de sensoresEjemplos de sensoresEjemplos de sensores

Page 5: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

5

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

¿Para qué se usan?¿¿¿Para quPara quPara quééé se usan?se usan?se usan?

• Medir variables internas del robot (sensores internos)– Velocidad, posición, orientación

• Percibir el mundo exterior (sensores externos)– Distancia a obstáculos, posición absoluta en un

entorno, temperatura, humedad, visión, etc.

Page 6: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

6

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Sensores activos y pasivosSensores activos y pasivosSensores activos y pasivosSensores activos y pasivos

• Sensores activos: emiten energía o cambian el entorno (toque, sonar).– Errores al interactuar con el entorno y/o con otros

sensores

• Sensores pasivos: reciben energía (visión, temperatura). – Mayor error asociado, necesitan de más energía.

Page 7: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

7

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Problemas de los sensoresProblemas de los sensoresProblemas de los sensoresProblemas de los sensores

• Los sensores reales son ruidosos

• Proporcionan una descripción incompleta del entorno

• No pueden ser modelados completamente: problema simulación-realidad

• Necesitan un algoritmo para realizar inferencia sobre la información proporcionada (problema de reconstruir el entorno)

Page 8: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

8

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Propiedades de los sensoresPropiedades de los sensoresPropiedades de los sensoresPropiedades de los sensores

• Las siguientes propiedades nos servirán a la hora de seleccionar un determinado sensor:– Velocidad de operación– Coste– Errores asumidos– Robustez frente a agentes externos– Requerimientos computacionales– Voltaje, peso, tamaño

Page 9: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

9

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

SensoresSensoresSensoresSensores

• Sensores de toque• Sensores para cálculo de posición

– Sensores internos: odometría– Sensores externos: GPS, beacons

• Sensores de rango– Sonar– Laser

• Visión: cámaras CCD

Page 10: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

10

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Sensores de toqueSensores de toqueSensores de toqueSensores de toque

• Uno de los sensores más sencillos• Proporciona 1 (pulsado) 0 (no pulsado)• Utilidad: control de choque, control de

presencia de objeto

Page 11: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

11

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

GiroscopiosGiroscopiosGiroscopiosGiroscopios

• Mide la orientación relativa: puede actuar de brújula

• Muy ruidoso

Page 12: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

12

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Otros sensores internosOtros sensores internosOtros sensores internosOtros sensores internos

• Inclinómetros: péndulo de plomo

• Brújulas: miden orientación con respecto al campo magnético de la tierra. Muy sensibles a variaciones del flujo magnético: necesita calibración

Page 13: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

13

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

OdometríaOdometrOdometrOdometríííaaa

• Dead reckoning: cálculo de la posición basándose en los sensores internos

• Integrar las distancias recorridas (∆s) y ángulos girados (∆θ) en cortos periodos (en Pioneer, cada 20 ms)

θθθθθ

∆+=′∆+=∆+=

sin'cos'

syysxx

Page 14: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

14

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Sensores externos de posiciónSensores externos de posiciSensores externos de posiciSensores externos de posicióóónnn

• Permiten obtener las coordenadas del robot con respecto a un sistema de referencia externo

• GPS: Global Positioning Systems– Obtiene x,y,z

• Active Beacons– Obtiene x,y,θ

Page 15: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

15

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

GPS: Global Positioning SystemGPS: Global GPS: Global GPS: Global PositioningPositioningPositioning SystemSystemSystem

• Permite, mediante un receptor, conocer nuestras coordenadas 3D (latitud, longitud y altitud)

• Un GPS no es sólo el receptor• Sistema compuesto por:

– Segmento espacial: 24 satélites orbitando alrededor de la tierra

– Segmento de usuario: receptor GPS– Segmento de control: estaciones de control repartidas por

todo el mundo

• En cualquier punto del mundo podemos “ver”mínimo 5 satélites y máximo 8

Page 16: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

16

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Sistema completoSistema completoSistema completoSistema completo

Page 17: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

17

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

HistoriaHistoriaHistoriaHistoria

• Surge como proyecto del DARPA• Se abre a aplicaciones civiles, añadiendo un

ruido que provoca un error de 100 metros• Se elimina el error añadido: errores de menos

de 5 metros• Desarrollo del DGPS (GPS diferencial): base

cercana con posición exacta: cuanto más cerca nos encontremos de esta base menor será nuestro error (errores de menos de medio metro)

Page 18: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

18

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Funcionamiento del GPSFuncionamiento del GPSFuncionamiento del GPSFuncionamiento del GPS

• Cada satélite emite una señal codificada con información de identificación

• El receptor recibe señales de los distintos satélites

• Conociendo las posiciones de los satélites y midiendo el tiempo que ha tardado la señal en llegar, se realiza una triangulación para obtener nuestra posición

Page 19: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

19

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Problema del GPSProblema del GPSProblema del GPSProblema del GPS

• Poca precisión, aunque se puede usar DGPS

• No es posible usarlo en edificios, subsuelo y bajo el agua. Tampoco en bosques densos ni entre edificios altos. En este tipo de entornos podemos utilizar los Active Beacons

Page 20: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

20

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Sensores de rangoSensores de rangoSensores de rangoSensores de rango

• Rango: distancia del sensor al objetivo (profundidad)

• Se suelen utilizar para obtener la distancia a los objetos

• Se pueden utilizar como complemento de otros métodos: visión

Page 21: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

21

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Sensores de rango: principio básicoSensores de rango: principio bSensores de rango: principio bSensores de rango: principio bááásicosicosico

• Sensores Time-of-flight:

distancia = Vel. Medio x Tiempo2

Vel. Medio=340m/s en el aire

Page 22: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

22

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

InfrarrojosInfrarrojosInfrarrojosInfrarrojos

Page 23: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

23

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Sensores de rangoSonar

Sensores de rangoSensores de rangoSensores de rangoSonarSonarSonar

SONAR: SOund NAvigation and Ranging

Page 24: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

24

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Sensores de rangoSonar

Sensores de rangoSensores de rangoSensores de rangoSonarSonarSonar

• El sensor actúa de emisor y receptor

• Funcionamiento:– Emite un tren de ultrasonidos de 50kHz– Emite formando un haz en forma de cono con una

extensión de ±15º– Duración del haz 1ms aprox.– Pasa a modo receptor

Page 25: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

25

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Sensores de rangoSonar

Sensores de rangoSensores de rangoSensores de rangoSonarSonarSonar

Page 26: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

26

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Problemas con el sonarProblemas con el sonarProblemas con el sonarProblemas con el sonar

a) Ángulo de incidencia

b) Amplitud del cono

c) Dobles rebotes

Page 27: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

27

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

SickSickSickSick

• Devuelve un grupo de lecturas de 180º, con una lectura por cada grado

Page 28: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

28

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Uso de sonar con Player/StageUso de sonar con Uso de sonar con Uso de sonar con PlayerPlayerPlayer///StageStageStage

• Clase SonarProxy

• Lecturas de sonar– range_count: número de lecturas de sonar– Array ranges[]: distancias detectadas por los

sonares (en metros)• Posición de los sensores en el robot

– Antes hay que llamar a GetSonarGeom()

– pose_count: número de sonares– Array poses[][3]: posición de los sensores (x

en metros, y en metros, ángulo en rads).

Page 29: Robots Autónomos - RUA: Principal · • Medir variables internas del robot (sensores internos) – Velocidad, posición, orientación • Percibir el mundo exterior (sensores externos)

29

Rob

ots a

utR

o bot

s aut

óó no m

os

nom

os

Mi g

uel A

. Caz

orla

, Otto

Col

omin

aM

i gue

l A. C

azor

la, O

tto C

olom

ina

Uso de laser con Player/StageUso de Uso de Uso de laserlaserlaser con con con PlayerPlayerPlayer///StageStageStage

• Clase LaserProxy

• Lecturas– scan_count: número de lecturas– scan[][2]: array con las lecturas en formato

distancia/ángulo (metros y radianes)– point[][2]: array con las posiciones x,y de los

obstáculos detectados (en metros). Las posiciones son relativas al robot.