Está en la página 1de 19

TEMA Robots Móviles

OBJETIVOS

General: Consultar acerca de robots móviles, su funcionamiento y formas de trabajo

Específicos

 Investigar acerca de la arquitectura de los robots móviles


 Consultar acerca de sus métodos de localización, slam y odometría
 Investigar cómo funcionan y en qué pueden ser aplicados
 Consultar acerca de sus configuraciones y morfología

MARCO TEORICO

Robots Móviles
Un robot móvil es una máquina automática capaz de trasladarse en cualquier ambiente dado.
Los robots móviles tienen la capacidad de moverse en su entorno y no se fijan a una ubicación
física.
Los robots móviles son un foco importante de la investigación actual y casi de cada universidad
importante que tenga uno o más laboratorios que se centran en la investigación de robots
móviles. Los robots móviles se encuentran también en la industria y los servicios.
Esquema general
El esquema general de un sistema robot se resume en lo siguiente:

 Sensores externos que captan una percepción del entorno: Visión, tacto, audición,
proximidad, etc.
 Sensores internos que miden el estado de la estructura mecánica: giros,
desplazamientos, velocidades, etc.
 Actuadores: Sistemas electromecánicos que generan fuerza y par para el movimiento:
Sistemas eléctricos, mecánicos o neumáticos.
 Sistemas de control que aseguran el funcionamiento correcto de los movimientos
(bucles de control), planificiación (trayectorias), etc.

Morfología

La mayoría de los robots móviles poseen características particulares que los hacen aptos para una
determinada tarea. Es la tarea misma la que determina en una primera etapa las particularidades
estructurales del robot que van desde el tipo de rueda, el sistema de tracción y dirección y la forma
física del robot. En una segunda etapa la tarea determinará las características sensoriales del robot.
En general los robots móviles distribuyen sus sistemas de tracción y dirección sobre los ejes de sus
ruedas de acuerdo con las exigencias de velocidad, maniobrabilidad y características del terreno. La
precisión y rapidez con que el robot móvil debe alcanzar su destino implica tener un sistema de
tracción confiable y un sistema de dirección que dé maniobrabilidad al robot.
Tipos de entornos en los que opera el robot móvil

Es esta característica la que fija mayores restricciones sobre el robot móvil y se agrupan según el
área de trabajo y según los objetos presentes en el entorno. Según el área de trabajo el entorno del
robot puede ser interior o exterior. Es interior cuando el área de trabajo está claramente definida
por paredes y cielorrasos. Además, la iluminación es principalmente artificial. Por el contrario, es
exterior cuando el área de trabajo no está claramente delimitada y el tipo de iluminación es
principalmente natural.

Según los objetos presentes el entorno del robot puede ser estructurado o no estructurado. Es
estructurado cuando los objetos presentes en el entorno son estáticos (no cambian de forma ni de
posición) y poseen características físicas particulares (forma, color, etc.) que permiten asociarlos
con figuras geométricas conocidas como prismas o cilindros o permiten distinguir unos objetos de
otros (puertas abiertas, mesas de trabajo, etc.). En el otro sentido el entorno es no estructurado
cuando la asociación entre los objetos del entorno y determinadas características físicas no es
viable, cuando el entorno es dinámico (que cambia con el transcurrir del tiempo) y estos cambios,
además, pueden ser impredecible.

Tipos de sistemas de locomoción


La locomoción es el proceso por el cual un robot autónomo puede desplazarse.

El sistema de locomoción es una de las primeras características de un robot que está condicionada
por su entorno. De acuerdo a las características del mismo el robot puede ser terrestre:

 Con patas
 Con ruedas
 Con cadenas

O también:

 acuático (UWV)
o flotante
o submarino
 aéreo (UAV)

Diseño de ruedas

La precisión de las medidas de odometría para posicionar el robot es en gran manera una
función directa del diseño cinemático del vehículo. A causa de esta cercana relación entre
el diseño cinemático y la precisión de la posición, uno debe considerar el diseño
cinemático atentamente antes de intentar mejorar la precisión de posicionamiento.

 Configuración Ackerman
Es la configuración que estamos habituados a ver en los vehículos convencionales, y
por lo tanto es una configuración muy probada y estable. Se basa en una estructura de
cuatro ruedas colocadas en dos ejes, donde sólo las dos ruedas delanteras permiten
un giro sobre el eje.

 Configuración triciclo
Posee un gran parecido a la configuración anterior, pero aporta una mayor simplicidad
en la construcción, ya que sólo son necesarias 3 ruedas. No obstante, aporta una
menor estabilidad al sistema.

 Skid Steer
Se disponen varias ruedas en cada lado del vehículo que actúan de forma simultánea.
El movimiento es el resultado de combinar las velocidades de las ruedas de la izquierda
con las de la derecha (figura 4 ). Estos robots se han usado para la inspección y
obtención de mapas de tuberías enterradas empleando para ello sistemas de radar
("Groud Penetraining Radar").
 Pistas de deslizamiento
Pueden considerarse funcionalmente análogas al skid steer. De forma más precisa, las
pistas actúan de forma análoga a ruedas de gran diámetro. La locomoción mediante
pistas de deslizamiento es útil en navegación "campo a través" o en terrenos irregulares,
en los cuales presenta un buen rendimiento. En este caso, la impulsión está menos
limitada por el deslizamiento y la resistencia al desgaste es mayor.

 Síncronos
Consiste en la actuación simultánea de todas las ruedas, que giran de forma síncrona.
La transmisión se consigue mediante coronas de engranajes ("syncro drive") o con
correas concéntricas. En una conducción sincrónica del robot, cada rueda es capaz de
ser conducida y dirigida.
Las configuraciones típicas son:
 Tres ruedas directrices se montan acopladas en los vértices de un triángulo equilátero
muchas veces debajo en una plataforma cilíndrica (figura 7).
 Todas las ruedas propulsan y giran al unísono.

Representación como diagramas de estados


Los autómatas finitos se pueden representar mediante grafos particulares, también
llamados diagramas de estados finitos, de la siguiente manera:

 Los estados Q se representan como vértices, etiquetados con su nombre en el interior.


 Una transición δ desde un estado a otro, dependiente de un símbolo del alfabeto, se
representa mediante una arista dirigida que une a estos vértices, y que está etiquetada
con dicho símbolo.
 El estado inicial q0 se caracteriza por tener una arista que llega a él, proveniente de
ningún otro vértice.
 El o los estados finales F se representan mediante vértices que están encerrados a su vez
por otra circunferencia.
Representación como tabla de transiciones
Dos posibles tablas para el ejemplo de la imagen anterior podrían ser las siguientes:

salida símbolo llegada


q∈Q σ∈Σ δ(q,σ) ∈ Q

0 1
s1 0 s2

→*s1 s2 s1
s1 1 s1

s2 0 s1 s2 s1 s2

s2 1 s2

La primera representa explícitamente los parámetros y el valor que toma cada ocurrencia de la
función de transición. La segunda es más compacta, y marca con una flecha el estado inicial,
y con un asterisco los estados finales.

Funcionamiento
En el comienzo del proceso de reconocimiento de una cadena de entrada, el autómata finito
se encuentra en el estado inicial y a medida que procesa cada símbolo de la cadena va
cambiando de estado de acuerdo a lo determinado por la función de transición. Cuando se ha
procesado el último de los símbolos de la cadena de entrada, el autómata se detiene en el
estado final del proceso. Si el estado final en el que se detuvo es un estado de aceptación,
entonces la cadena pertenece al lenguaje reconocido por el autómata; en caso contrario, la
cadena no pertenece a dicho lenguaje.
Note que el estado inicial q0 de un autómata finito siempre es único, en tanto que los estados
finales pueden ser más de uno, es decir, el conjunto F puede contener más de un elemento.
También puede darse el caso de que un estado final corresponda al mismo estado inicial.

El esquema general es el de una cinta lectora que avanza sólo hacia delante y de a una celda, según
la función de transición.

Clasificación
Es posible clasificar las máquinas de estados en aceptoras o transductoras:

 Aceptoras (también llamadas reconocedoras o discriminadoras): Son aquellas en


donde la salida es binaria (sí/no), depende únicamente del estado y existe un estado
inicial. Puede decirse, entonces, que cuando la máquina produce una salida "positiva" (es
decir, un "si"), es porque ha "reconocido" o "aceptado" la secuencia de entrada. En las
máquinas de estados aceptoras, los estados con salida "positiva" se denominan estados
finales.

 Transductoras: Son las más generales, que convierten una secuencia de señales de
entrada en una secuencia de salida, pudiendo ésta ser binaria o más compleja,
dependiendo de la entrada actual (no sólo del estado) y pudiendo también prescindirse de
un estado inicial.

La bibliografía a veces llama autómata finito a las aceptoras, mientras que en otros casos se
emplea autómata como sinónimo de máquina de estados sin importar su tipo.
Las aceptoras son los de mayor interés en la Teoría de la Computación, más precisamente en
la Teoría de autómatas, siendo éstas ramas de la matemática. Las transductoras, en cambio,
lo son en la electrónica digital y la computación práctica. Es por eso que, por lo general, en los
textos sobre matemática y ciencias de la computación se suele hablar de autómatas (y se
refieren a las aceptoras) mientras que los de electrónica y computación práctica hablan
de máquinas de estados (y se refieren a los transductoras).
En UML (Lenguaje Unificado de Modelado), dice que una máquina de estado es aquel
comportamiento que permite hacer un seguimiento de la vida de un objeto en el transcurso de
un tiempo finito.
Tipos

Autómata finito determinista

Un autómata finito determinista (abreviado AFD) es un autómata finito que además es un sistema
determinista; es decir, para cada estado q ∈ Q en que se encuentre el autómata, y con cualquier
símbolo a ∈ Σ del alfabeto leído, existe siempre a lo más una transición posible δ(q,a).

En un AFD no pueden darse ninguno de estos dos casos:

 Que existan dos transiciones del tipo δ(q,a)=q1 y δ(q,a)=q2, siendo q1 ≠ q2;
 Que existan transiciones del tipo δ(q, ε), salvo que q sea un estado final, sin transiciones
hacia otros estados.

Un tipo interesante de autómatas finitos deterministas son los llamados acíclicos y un ejemplo de
éstos son los tries.

AFD que reconoce el lenguaje regularconformado exclusivamente por las cadenas con un número par
de ceros y par de unos.

Autómata finito no determinista


Un autómata finito no determinista (abreviado AFND) es aquel que, a diferencia de los
autómatas finitos deterministas, posee al menos un estado q ∈ Q, tal que para un símbolo a ∈
Σ del alfabeto, existe más de una transición δ(q,a) posible.
Haciendo la analogía con los AFDs, en un AFND puede darse cualquiera de estos dos casos:

 Que existan transiciones del tipo δ(q,a)=q1 y δ(q,a)=q2, siendo q1 ≠ q2;


 Que existan transiciones del tipo δ(q, ε), siendo q un estado no-final, o bien un estado final
pero con transiciones hacia otros estados.
Cuando se cumple el segundo caso, se dice que el autómata es un autómata finito no
determinista con transiciones vacías o transiciones ε(abreviado AFND-ε). Estas
transiciones permiten al autómata cambiar de estado sin procesar ningún símbolo de entrada.
Formalmente, se distingue de la 5-tupla que define a un autómata finito determinista en
su función de transición. Mientras en un AFD esta función se define de la siguiente manera:
Esto significa que los autómatas finitos deterministas son un caso particular de los no
deterministas, puesto que Q pertenece al conjunto P(Q).
La interpretación que se suele hacer en el cómputo de un AFND es que el automáta puede
estar en varios estados a la vez, generándose una ramificación de
las configuraciones existentes en un momento dado. Otra interpretación puede ser imaginar
que la máquina "adivina" a qué estado debe ir, eligiendo una transición entre varias posibles.
Note finalmente que en un autómata finito no determinista podemos aceptar la existencia de
más de un nodo inicial, relajando aún más la definición original.

AFND con transiciones δ(q0,b)=q0 y δ(q0,b)=q1, que acepta el lenguaje regularsobre el alfabeto {a,b}
conformado por todas las palabras que terminan en b; es decir, que equivale a la expresión
regular(a|b)*b+.

AFND-ε a cuyo estado 2 se puede acceder pasando por el estado 3, sin procesar símbolos de entrada.

Máquinas de Moore y Mealy


Ambos tipos de máquinas siguen las características de las máquinas de estado pero difieren en la
forma en que las salidas son producidas.

Máquina de Moore:

Las salidas son independientes de las entradas. Las salidas se producen efectivamente desde dentro
del estado de la máquina. Se define como maquina tipo Moore si sus salidas solo dependen del
estado de la máquina.

Máquina de Mealy:

las salidas pueden ser determinadas por el estado presente solamente, o por el estado presente y
las entradas presentes, es decir las salidas se producen dependiendo de cómo la máquina realiza
una transición de un estado a otro.

Diagrama de flujo

Diagrama general
Moore

Mealy

Diagrama de Máquina de estado de Moore


La salida en una Máquina de estado de Moore se muestra dentro de la burbuja de estado, debido a
que la salida se mantiene igual, mientras la máquina se mantenga en ese estado. La salida puede
ser arbitrariamente compleja pero debe ser la misma cada vez que la máquina entra a ese estado.

Diagrama de Máquina de estado de Mealy

La máquina de Mealy genera las salidas basada en:

• El estado presente.

• Las entradas a la máquina.

De modo de ser capaz de generar diversos patrones diferentes de señales de salida para el mismo
estado, dependiendo de las entradas presentes en el ciclo de reloj. Las salidas son mostradas sobre
las transiciones del momento que están determinadas de la misma manera que el estado siguiente.
Diferencias entre Mealy y Moore

Las FSM Mealy y Moore pueden ser funcionalmente equivalentes.

Las FSM Mealy tienen una mejor descripción y usualmente requieren de un número menor de
estados y menor área de circuito.

Mealy calcula las salidas tan pronto como se produce un cambio en las entradas.

Mealy responde un ciclo de reloj antes que el equivalente Moore.

Las FSM Moore no posee un camino de lógica combinacional entre entradas y salidas.

DESARROLLO

Ejemplo 1

Ejemplo de FSM Moore

Detección de la secuencia 10.

Significado de los estados:

S0: No se encuentra ningún elemento de la secuencia.

S1: aparece un “1”.

S2 Se detecta la secuencia “10”.

Ejemplo de FSM Mealy

Detección de la secuencia 10.


Significado de los estados:

S0: No se encuentra ningún elemento de la secuencia.

S1 Se detecta la secuencia “10”.

Diagrama de tiempos del ejemplo 1

Ejemplo 2

Máquina expendedora de gaseosa

• Toma solamente monedas de 25 centavos y $1.

• No retiene más de $1.

• La gaseosa cuesta $0.75.

• Posibles acciones(entradas):

- Depositar $0.25 (25)

- Depositar $1 ($).

- Presionar el botón para pedir gaseosa (gaseosa).

- Presionar el botón para pedir devolución del dinero (vuelto).

• Estado: descripción del seteo interno de la máquina, por ej. cuánto dinero ha sido depositado y
no gastado.

• Estados finitos: 0, 25, 50, 75, 100.


• Reglas: determinar cuántas entradas pueden cambiar el estado.
APLICACIONES

Una máquina de estados es una estructura de programa que nos


sirve para determinar el comportamiento de algo en base al estado
en el que se encuentre. Para cada estado por tanto se tendrá un
comportamiento.

Las máquinas de estados se pueden utilizar en muchos aspectos y


niveles. Podemos utilizarlas para controlar el estado de la aplicación
que estemos realizando, o utilizarlas sólo para controlar un clip de
película.

Ejemplos:
* Una instalación interactiva donde queremos controlar cuando
está el usuario interactuando de cuando no.

* Una aplicación web de vida artificial donde un individuo puede


pasar por varios estados: crecimiento, adulto, nutricion,
reproduccion...

De forma similar a la mayoría de los diagramas UML, los diagramas de estado tienen
varios usos diferentes. Las aplicaciones principales son las siguientes:

 Representar objetos basados en eventos en un sistema reactivo.


 Ilustrar escenarios de casos de uso en un contexto de negocios.
 Describir cómo se mueve un objeto a través de diversos estados a lo largo de su
existencia.
 Mostrar el comportamiento general de una máquina de estados o el comportamiento
de un conjunto relacionado de máquinas de estados.

APORTE PERSONAL

Ventajas de las Máquinas de Estado Finito


 Son intuitivas y fáciles de entender.
 Abstraen convenientemente detalles secundarios que no son necesarios para el análisis del
sistema a un alto nivel y se centran en aspectos claves del mismo.
 Aportan un componente visual que facilita el análisis y diseño del sistema.
 Son universalmente aplicables.
 Su uso es común un sistemas de transmisión de datos y el uso de protocolos de comunicación.
 En programación minimiza grandemente la tendencia a escribir "código espagueti" y puede
ayudar a reducir la cantidad de variable globales necesarias, aumentando al mismo tiempo la
confiabilidad del sistema.

Desventajas de las Máquinas de Estado Finito


 No son aplicables a todos los problemas de diseño.
 Funcionan bien en sistemas pequeños con una cantidad de estados en el orden de las decenas.
 No funcionan bien en sistemas con una cantidad de estados en el orden de las centenas o miles de
estados, aunque en estos casos es posible la estructuración mediante una combinación de MEFs
más pequeñas.
 La adición de funcionalidad es un poco inflexible.
 Son "planas" por naturaleza, no poseen estructura definida y no permiten una jerarquización de
los componentes que minimize la repetición innecesaria de ciertos estados. Una mejor alternativa
en este caso es el uso de las Cartillas de Estado (Statecharts) y el uso de UML (Unified Modelling
Language).
 Es fácil caer en el error de definir demasiados estados para el sistema, lo cual minimiza la
eficiencia, o de definir menos estados de lo que es necesario, lo cual contradice al propósito de las
MEFs de reducir la cantidad de código convolucionado (demasiadas sentencias condicionales del
tipo "if - then - else").
Codificación en Lenguaje C
Como ejemplo, consideremos un muy simplificado sistema de control de un ascensor:

El sistema de control del ascensor se puede codificar en Lenguaje C de la siguiente manera:


CONCLUSIONES Y RECOMENDACIONES

 Una máquina de estado finita o FSM representa un sistema como un conjunto de estados,
transiciones entre estos estados, que dependen de las entradas, conjuntamente con las
salidas y las entradas asociadas. De modo tal que una máquina de estado es una
representación, de un circuito secuencial particular.
 Cualquier circuito con memoria puede ser considerado como una FSM. Aún una
computadora puede ser considerada como una gran FSM.
 La representación de una máquina de estados se realiza mediante un Diagrama de
estados, sin embargo también es posible utilizar un Diagrama de flujo.
 La finalidad de los autómatas finitos es la de reconocer lenguajes regulares, que
corresponden a los lenguajes formales más simples según la Jerarquía de Chomsky.

 Siempre que pensemos utilizar una máquina de estados es muy


recomendable dibujar primero un diagrama de estados.

BIBLIOGRAFIA

M´aquinas de Estados Finitos Breve Introducci´on Jorge Alejandro Guti´errez Orozco Escuela
Superior de C´omputo 22 de agosto de 2008

http://uncomp.uwe.ac.uk/genaro/Papers/Veranos_McIntosh_files/alejandroFinal2008.pdf

También podría gustarte