Diseño y construcción de un robot móvil controlado con técnicas de lógica difusa implementadas en un FPGA

137  19  Descargar (0)

Texto completo

(1)

INSTITUTO POLITÉCNICO NACIONAL

ESCUELA SUPERIOR DE INGENERÍA MECÁNICA Y ELÉCTRICA

UNIDAD ZACATENCO

SECCIÓN DE ESTUDIOS DE POSGRADO E INVESTIGACIÓN

Diseño y o stru ió de u ro ot óvil o trolado o té i as

de lógica difusa implementadas en un

FPGA

TESIS

Que para obtener el grado de

MAESTRO EN CIENCIAS EN INGENIERÍA ELECTRÓNICA

Presenta

Ing. Belmar García García

Directores de Tesis

Dr. Alberto Jorge Rosales Silva

Dra. Ivonne Bazán Trujillo

(2)
(3)
(4)

RESUMEN

El presente trabajo presenta la construcción de un robot móvil de configuración guia do diferencial. La configuración elegida es la más simple mecánicamente, pero presenta el inconveniente de no poder desplazarse en línea recta, haciéndose necesario igualar la velocidad de rotación de las llantas que proporcionan movimiento al robot móvil. La técnica de control utilizada en este prototipo para resolver este problema es un FLC (Controlador Lógico Difuso), el cual a través de un DAC (Convertidor digital-analógico) y una etapa de amplificación se controla la potencia necesaria para cada motor de CD. Finalmente dicho robot móvil es manipulado de manera inalámbrica por medio de una interfaz gráfica por computadora por un usuario.

ABSTRACT

(5)

AGRADECIMIENTOS

Agradezco de manera sincera a todas las personas que sin dudar me proporcionaron su ayuda en todo momento para la realización de este proyecto de tesis.

Agradezco a Dios por haberme permitido llegar hasta este punto y haberme dado salud para lograr mis objetivos.

Agradezco a mis padres María Natividad García Ríos y Jorge García Hernández que sin su apoyo no hubiese podido realizar todo lo que está dentro de este trabajo, gracias por su ayuda,

comprensión, por sus consejos y los ánimos que me dieron de siempre seguir adelante.

A mi casa de estudios, el Instituto Politécnico Nacional por la formación académica y profesional que me ha brindado en estos últimos años, en los cuales me ha visto crecer como ingeniero y ahora como maestro en ciencias.

Agradezco a mis asesores, el Dr. Alberto Jorge Rosales Silva y la Dra. Ivonne Bazán Trujillo por sus ideas, sugerencias, apoyos en la realización del trabajo, y a quienes admiro por su dedicación y empeño en lograr sus proyectos.

Agradezco al Dr. Francisco Javier Gallegos Funes que siempre estuvo al pendiente del avance y progreso de este proyecto en conjunto con mis asesores.

(6)

ÍNDICE GENERAL

ACTA DE REVISIÓN DE TESIS I

CARTA CESIÓN DE DERECHOS II

RESUMEN III

ABSTRACT III

AGRADECIMIENTOS IV

ÍNDICE GENERAL V

ÍNDICE DE FIGURAS VIII

ÍNDICE DE TABLAS X

ACRÓNIMOS Y ABREVIATURAS XI

OBJETIVO GENERAL XII

OBJETIVOS PARTICULARES XII

JUSTIFICACIÓN XIII

CAPÍTULO 1. ESTADO DEL ARTE DE LOS ROBOTS MÓVILES

1.1 INTRODUCCIÓN--- 1

1.2 CONFIGURACIONES DE ROBOTS MÓVILES CON RUEDAS--- 2

1.2.1 Configuración Triciclo básico con conducción sincronizada--- 2

1.2.2 Configuración Guiado diferencial con llantas y orugas--- 3

1.2.3 Configuración Direccionamiento Ackermann--- 5

1.2.4 Configuración Guiado Omnidireccional--- 6

1.3 SENSORES Y ACTUADORES UTILIZADOS EN ROBÓTICA MÓVIL--- 7

1.3.1 Motores de CD (corriente directa) --- 7

1.3.1.1 Motores de CD con encoder--- 8

1.3.2 Características de los motores de CD utilizados en el robot móvil--- 10

1.3.2.1 Encoder utilizado en los motores de CD del robot móvil--- 11

1.3.3 Servomotores--- 12

1.3.4 Motores a pasos--- 14

1.3.4.1 Tipos de motores a pasos--- 15

1.3.4.2 Secuencias para motores a pasos tipo unipolar y bipolar--- 16

CONCLUSIÓN--- 18

REFERENCIAS--- 19

CAPÍTULO 2. TÉCNICAS DE CONTROL UTILIZADAS EN LOS ROBOTS MÓVILES 2.1 INTRODUCCIÓN--- 21

2.2 GENERALIDADES DE UN SISTEMA DE CONTROL--- 21

2.2.1 Dinámica de un sistema de control--- 22

2.2.2 Sistema de control en lazo abierto--- 23

2.2.3 Sistema de control en lazo cerrado--- 23

2.3 TÉCNICAS DE CONTROL CLÁSICO--- 24

2.3.1 Controlador Proporcional (P) --- 24

2.3.2 Controlador Proporcional Integral (PI) --- 24

2.3.3 Controlador Proporcional Derivativo (PD) --- 25

2.3.4 Controlador Proporcional Integral Derivativo (PID) --- 26

2.4 LÓGICA DIFUSA--- 26

2.4.1 Conjuntos difusos--- 27

2.4.2 Sistemas Expertos Difusos--- 30

2.4.3 Controlador Lógico Difuso (FLC) --- 31

(7)

2.4.4.1 Elección de las variables de estado y variables de control--- 33

2.4.4.2 Interfaz de fusificación--- 33

2.4.4.3 Base de conocimiento--- 34

2.4.4.4 Inferencia (Toma de decisión lógica) --- 38

2.4.4.5 Interfaz de defusificación--- 40

2.4.5 Tabla de búsqueda--- 41

2.4.6 Procedimiento de diseño de un Controlador Lógico Difuso--- 42

2.4.7 Diseño de aplicación de un FLC--- 43

2.5 CONTROL CLÁSICO COMO CONTROL DIFUSO--- 46

2.5.1 Control P como un control difuso--- 47

2.5.2 Control PD como un control difuso--- 47

2.5.3 Control PI como un control difuso--- 48

2.5.4 Control PID como un control difuso--- 48

2.6 COMPARACIÓN ENTRE UN CONTROL CLÁSICO Y UN CONTROL DIFUSO--- 49

CONCLUSIÓN--- 52

REFERENCIAS--- 53

CAPÍTULO 3. IMPLEMENTACIÓN DEL CONTROL DIFUSO EN EL FPGA PARA EL ROBOT MÓVIL 3.1 INTRODUCCIÓN--- 54

3.2 CARACTERIZACIÓN DE LOS MOTORES DE CD--- 55

3.2.1 Respuesta a la entrada escalón de los motores de CD--- 55

3.2.2 Obtención de la función de transferencia de los motores de CD--- 57

3.2.3 Validación de las funciones de transferencia de los motores de CD--- 61

3.3 METODOLOGÍA DE DISEÑO DEL FLC--- 62

3.3.1 Definir los parámetros a controlar del motor de CD--- 62

3.3.2 Descripción general del sistema de control difuso para el motor de CD--- 63

3.3.3 Definir el número de funciones de membresía por cada entrada y salida--- 63

3.3.4 Establecer la configuración del FLC mediante las reglas de inferencia difusa de acuerdo a la forma deseada de operación y basado en el conocimiento que se tiene acerca de los motores de CD 66 3.3.5 Simulación del FLC usando Simulink--- 68

3.4 IMPLEMENTACIÓN DEL FLC EN EL FPGA--- 69

CONCLUSIÓN--- 72

REFERENCIAS--- 73

CAPÍTULO 4. CONSTRUCCIÓN DEL ROBOT MÓVIL CONTROLADO CON TÉCNICAS DE LÓGICA DIFUSA 4.1 INTRODUCCIÓN--- 74

4.2 IMPLEMENTACIÓN DEL SISTEMA DE CONTROL DIFUSO EN EL FPGA--- 75

4.3 DIAGRAMA DE BLOQUES DEL PROYECTO--- 80

4.4 CÁLCULOS PARA LA ELECCIÓN DE LOS MOTORES DE CD--- 82

4.5 ESTRUCTURA MECÁNICA DEL ROBOT MÓVIL--- 84

CONCLUSIÓN--- 86

REFERENCIAS--- 87

CAPÍTULO 5. RESULTADOS 5.1 INTRODUCCIÓN--- 88

5.2 DESCRIPCIÓN DE LAS PRUEBAS DEL ROBOT MÓVIL--- 89

CONCLUSIÓN--- 95

REFERENCIAS--- 96

(8)

TRABAJO A FUTURO--- 99

ANEXO 1 A1.1 CÓDIGO FUENTE PARA EL DISEÑO DE LA INTERFAZ GRÁFICA EN VISUAL BASIC--- 100

A1.2 CÓDIGO FUENTE DEL MICROCONTROLADOR ATMEGA8 PARA LA COMUNICACIÓN SERIAL--- 101

A1.3 CÓDIGO FUENTE EN VHDL--- 102

ANEXO 2 A2.1 DATASHEET DEL FPGA EPF10K70 DE LA FAMILIA FLEX 10K UTILIZADO EN EL ROBOT MÓVIL--- 108

A2.2 DATASHEET DEL MICROCONTROLADOR ATMEGA8--- 117

A2.3 DATASHEET DEL TRANSMISOR HMT--- 120

(9)

ÍNDICE DE FIGURAS

Fig. 1.1 Robot móvil con configuración triciclo--- 2

Fig. 1.2 Conducción y rotación de un robot con configuración triciclo--- 2

Fig. 1.3 Robots móviles con configuración diferencial--- 3

Fig. 1.4 Conducción y rotación de un robot con configuración diferencial--- 3

Fig. 1.5 Robot con orugas--- 4

Fig. 1.6 Trayectoria recorrida por un robot móvil con configuración diferencial--- 4

Fig. 1.7 Robot con configuración de direccionamiento Ackermann--- 6

Fig. 1.8 Llantas omnidireccionales--- 6

Fig. 1.9 Robot omnidireccional con tres llantas--- 6

Fig. 1.10 Robot omnidireccional con cuatro llantas--- 6

Fig. 1.11 Motor de CD--- 7

Fig. 1.12 Motorreductores, a) Reductor plástico; b) Reductor metálico--- 8

Fig. 1.13 Encoder Incremental, a) Esquema; b) Disco utilizado--- 8

Fig. 1.14 Esquema de un encoder absoluto--- 9

Fig. 1.15 Disco utilizado para un encoder absoluto, a) Disco codificado en código Gray; b) Código Gray de tres bits--- 9

Fig. 1.16 Motorreductor utilizado en el robot móvil--- 10

Fig. 1.17 Motorreductor con soporte para montaje--- 10

Fig. 1.18 Motorreductor con soporte para montaje y encoder, a) Encoder con dos pares de sensores, b) Encoder montado en los doce dientes, c) Encoder montado en los doce dientes y llanta del motor de CD junto con el soporte para montaje--- 11

Fig. 1.19 Captura en osciloscopio de la salida del encoder con la llanta girando a 630 rpm--- 11

Fig. 1.20 Control de posición de servomotores, a) 0°, b) 90°, c) 180°--- 12

Fig. 1.21 Control de velocidad de servomotores, a) Servomotor sin giro, b) Servomotor con giro en sentido de las manecillas del reloj, c) Servomotor con giro en sentido contrario de las manecillas del reloj--- 13

Fig. 1.22 Motor a pasos--- 14

Fig. 1.23 Tipos de motores a pasos, a) Motor a pasos unipolar, b) Motor a pasos bipolar --- 15

Fig. 2.1 Diagrama general de un sistema de control--- 22

Fig. 2.2 Modelo del sistema--- 23

Fig. 2.3 Diagrama de bloques de un sistema de control en lazo abierto--- 23

Fig. 2.4 Diagrama de bloques del sistema de control en lazo cerrado--- 23

Fig. 2.5 Diagrama de bloques de un controlador Proporcional--- 24

Fig. 2.6 Diagrama de bloques de un controlador Proporcional Integral--- 25

Fig. 2.7 Diagrama de bloques de un controlador Proporcional Derivativo--- 25

Fig. 2.8 Diagrama de bloques de un controlador Proporcional Integral Derivativo--- 26

Fig. 2.9 De a uerdo a la teoría de onjunto onven ional, el onjunto de pa ientes on fie re alta está definido exactamente por 39°C--- 27

Fig. 2.10 El conjunto difuso de pacientes con fiebre alta admiten elementos que son parcialmente pertenecientes a este conjunto--- 28

Fig. 2.11. El grado de membresía

CD

(

x

)

con temperatura xque pertenece por ejemplo al onjunto de pa ientes on fie re alta puede ser expresado con una función continua --- 29

Fig. 2.12 Representación gráfica de los conceptos básicos asociados con los conjuntos difusos--- 29

Fig. 2.13 Configuración de un sistema experto difuso--- 30

Fig. 2.14 Configuración del FLC--- 32

Fig. 2.15 a) Función de fusificación tipo singleton, b) Función de fusificación tipo triangular--- 34

Fig. 2.16 Funciones de membresía; a) Triangular, b) Trapezoidal y c) Gaussiana--- 35

(10)

Fig. 2.18 Media del máximo (MOM) --- 40

Fig. 2.19 Centro de área (COA) --- 41

Fig. 2.20 Bisector de área (BOA) --- 41

Fig. 2.21 Partición del espacio, NG = Negativo Grande, NM = Negativo Mediano, NP = Negativo Pequeño, CE = Cero, PP = Positivo Pequeño, PM = Positivo Mediano y PG = Positivo Grande --- 44

Fig. 2.22. Representación gráfica de los conjuntos difusos--- 45

Fig. 2.23 Representación de las reglas difusas--- 45

Fig. 2.24 PID contra control difuso--- 50

Fig. 2.25 Diferencias conceptuales entre el control clásico y difuso--- 50

Fig. 3.1 Representación de la entrada escalón del motor de CD--- 55

Fig. 3.2 Circuito empleado para la entrada escalón del motor de CD--- 55

Fig. 3.3 Respuesta a la entrada escalón de 4 V de los motores de CD, los motores no giran a las mismas rpm, de ahí que se obtenga un Vout distinto. a) Motor derecho, b) Motor izquierdo --- 57

Fig. 3.4 Análisis de la entrada escalón de los motores de CD: a) Motor derecho, b) Motor izquierdo-- 58

Fig. 3.5 Respuesta ante una entrada escalón de la función de transferencia: a) Motor derecho, b) Motor izquierdo- --- 61

Fig. 3.6 Validación de la función de transferencia: a) Motor derecho, b) Motor izquierdo--- 61

Fig. 3.7 Motor de CD utilizado en el robot móvil--- 62

Fig. 3.8 Sistema de control difuso para el motor de CD--- 63

Fig. 3.9 Funciones de membresía para la variable de entrada e--- 65

Fig. 3.10 Funciones de membresía para la variable de entrada e--- 65

Fig. 3.11 Funciones de membresía para la variable de salida v--- 66

Fig. 3.12 Funciones de membresía para la variable de salida v del motor de CD izquierdo--- 68

Fig. 3.13 Diagrama de bloques simulación del sistema de control difuso del motor derecho--- 68

Fig. 3.14 Resultado de la simulación del sistema de control difuso: a) Motor derecho, b) Motor izquierdo--- 69

Fig. 3.15 Visor de reglas de la herramienta Fuzzy Logic Toolbox para el motor derecho de CD--- 70

Fig. 4.1 Encoder utilizado para monitorear la velocidad de rotación del motor de CD--- 75

Fig. 4.2 Parte del contador de 1.258 kHz diseñado en el FPGA--- 76

Fig. 4.3 DAC de configuración escalera R-2R--- 78

Fig. 4.4 Circuito electrónico utilizado para la implementación del FLC a nivel hardware para un motor de CD y Receptor--- 79

Fig. 4.5 Diagrama de bloques del proyecto--- 80

Fig. 4.6 Interfaz gráfica por computadora para el envío de órdenes al robot móvil--- 81

Fig. 4.7 Circuito electrónico para la Tarjeta de adquisición de datos y Transmisor--- 81

Fig. 4.8 Estructura mecánica del robot móvil--- 84

Fig. 4.9 Dimensiones de las ruedas: a) Parlante y b) Traseras--- 84

Fig. 4.10 Prototipo final tomando las consideraciones estudiadas en el proyecto de investigación--- 85

Fig. 5.1 Distribución normal de las mediciones de la desviación del robot móvil de la recta con FLC sobre piso--- 91

Fig. 5.2 Distribución normal de las mediciones de la desviación del robot móvil de la recta sin FLC sobre piso--- 92

Fig. 5.3 Distribución normal de las mediciones de la desviación del robot móvil de la recta con FLC sobre mesa--- 93

(11)

ÍNDICE DE TABLAS

Tabla 1.1 Características del motorreductor utilizado--- 10

Tabla 1.2 Secuencia de un motor a pasos bipolar--- 16

Tabla 1.3 Secuencia Wave Drive de un motor unipolar--- 16

Tabla 1.4 Secuencia Normal de un motor unipolar--- 17

Tabla 1.5 Secuencia Medio Paso de un motor unipolar--- 17

Tabla 2.1. Nivel de pertenencia que se presenta cuando las temperaturas que están dentro de 35°C y 43°C --- 28

Tabla 2.2. Discretización y normalización--- 44

Tabla 2.3 Definición de los conjuntos difusos--- 44

Tabla 2.4 Tabla de búsqueda--- 46

Tabla 3.1 Tabla de búsqueda para el motor derecho de CD--- 70

Tabla 3.2 Tabla de búsqueda para el motor izquierdo de CD--- 71

Tabla 5.1 Resultados de las mediciones de la desviación de la recta seguida por el robot móvil sobre piso--- 89

Tabla 5.2 Resultados de las mediciones de la desviación de la recta seguida por el robot móvil sobre mesa--- 93

Tabla A1.1 Porción de la tabla de búsqueda para el motor derecho de CD--- 107

(12)

ACRÓNIMOS Y ABREVIATURAS

CD Corriente Directa

rpm Revoluciones por minuto

PWM Modulación por ancho de pulso

SLIT Sistema lineal invariante en el tiempo

TL Transformada de Laplace

CI Condiciones iniciales

P Proporcional

PI Proporcional Integral

PD Proporcional Derivativo

PID Proporcional Integral Derivativo

FLC Controlador Lógico Difuso

MISO Múltiples entradas, una salida

MOM Método de la media del máximo

COA Método del centro de área

BOA Bisector de área

NG Negativo Grande

NM Negativo Mediano

NP Negativo Pequeño

CE Cero

PP Positivo Pequeño

PM Positivo Mediano

PG Positivo Grande

MIMO Múltiples entradas, múltiples salidas

FPGA Arreglo de compuertas lógicas programables en campo VHDL Lenguaje para la descripción de hardware de alta velocidad

EN Error Negativo

EC Error Cero

EP Error Positivo

CN Cambio Negativo

CC Cambio Cero

CP Cambio Positivo

VN Voltaje Negativo

VC Voltaje Cero

VP Voltaje Positivo

RF Radiofrecuencia

FSK Modulación por desplazamiento de frecuencia

DAC Convertidor digital-analógico

(13)

OBJETIVO GENERAL

Diseñar y construir un robot móvil manipulado inalámbricamente mediante una interfaz de computadora utilizando un FPGA (Arreglo de Compuertas Programables en Campo) y la teoría de lógica difusa para navegación en lugares poco accesibles por el humano.

OBJETIVOS PARTICULARES

1.- Diseñar un algoritmo de control difuso para el control de los motores del robot móvil.

2.- Implementar en un FPGA el algoritmo de control difuso para el funcionamiento de los motores del robot móvil.

3.- Probar y validar el algoritmo de control difuso implementado en los motores del robot móvil realizando pruebas de laboratorio.

(14)

JUSTIFICACIÓN

Cada una de las configuraciones de los robots móviles presentan ventajas que los hacen idóneos para determinada aplicación pero también tienen desventajas particulares que no permiten un desempeño óptimo tales como la complejidad del diseño mecánico, problemas de maniobrabilidad para moverse en espacios reducidos, o dificultad para desplazarse describiendo trayectorias geométricas conocidas.

La onfigura ión del ro ot propuesto es el Guiado diferen ial on llantas , éste se sele ionó

(15)

CAPÍTULO 1

ESTADO DEL ARTE DE LOS ROBOTS MÓVILES

1.1

INTRODUCCIÓN

Los robots móviles brindan la posibilidad de desplazarse en distintos terrenos, en este sentido, tienen aplicaciones diversas como: exploración minera, exploración planetaria, misiones de búsqueda, rescate de personas, limpieza de desechos peligrosos, automatización de procesos, vigilancia, y reconocimiento de terreno, entre otros. En complemento y con el objetivo de conformar una herramienta más eficaz, también son utilizados como plataformas móviles en aplicaciones que requieren de la integración con otros tipos de robots, tal es el caso de los robots móviles que incorporan un brazo manipulador, utilizados como elementos de seguridad en la inspección y manejo de paquetes sospechosos, neutralización de dispositivos explosivos, manipulación de productos químicos peligrosos y materiales radioactivos.

Los robots móviles se pueden clasificar por el tipo de locomoción utilizado, en general, los tres medios de movimiento son: por ruedas [1] [2] [3] [4], por patas [5] y orugas [6] [7]. Cabe señalar que aunque la locomoción por patas y orugas han sido ampliamente estudiadas, el mayor desarrollo se presenta en los robots móviles con ruedas, esto debido a las ventajas que presentan las ruedas respecto a las patas y orugas. Dentro de los atributos más relevantes de los robots móviles con ruedas destacan su eficiencia en cuanto a la energía en superficies lisas y firmes, a la vez que no causan desgaste en la superficie donde se mueven y requieren un número menor de partes de baja complejidad en comparación con los robots de patas y de orugas, lo que permite que su construcción sea más sencilla. Son precisamente estos argumentos los que motivan el análisis de este tipo de robots, y surge la necesidad, en primera instancia, de tener una definición que satisfaga el contexto de los robots móviles con ruedas. De esta manera, se puede definir un

robot móvil con ruedas como un sistema electromecánico controlado, que utiliza como locomoción

ruedas de algún tipo (para el prototipo serán llantas convencionales y de bola), y que es capaz de

trasladarse de forma autónoma o teleoperado (para el prototipo será teleoperado) a distancia a

una meta en un determinado espacio de trabajo (para el prototipo se usará el suelo debiendo ser

(16)

1.2

CONFIGURACIONES DE ROBOTS MÓVILES CON RUEDAS

En el presente trabajo nos enfocaremos en los robots móviles con ruedas y para aplicaciones en ambientes controlados, es decir, aquellos ambientes completamente conocidos y manipulables por el diseñador de modo que éste proporciona una descripción formal cuantitativa exenta de ambigüedad. A continuación se presentan los tipos y características más importantes que rigen el comportamiento de tales robots [8].

1.2.1

Configuración Triciclo básico con conducción sincronizada

El concepto de diseño más simple se basa en una llanta que tiene la capacidad de impulsar y direccionar. Esta configuración requiere dos ruedas pasivas en la parte posterior, dado que siempre son requeridos por lo menos tres puntos de contacto para estabilizar una plataforma [9]. Dicha configuración se presenta en la Figura 1.1.

La velocidad lineal y angular de este tipo de robots están completamente desacopladas, así que para impulsarlo en línea recta, la llanta frontal debe estar posicionada en el centro y debe ser impulsado a la velocidad deseada. En la Figura 1.2 se muestra el guiado para algunas configuraciones de direccionamiento. Este tipo de diseño no tiene la capacidad de girar sobre su centro de gravedad, con la llanta delantera puesta a 90° por el motor que proporciona direccionamiento, el robot girará cerca del punto medio entre las dos llantas posteriores, así que el radio mínimo de giro es la distancia entre la llanta delantera y el punto medio de las llantas de atrás.

Fig. 1.1 Robot móvil con configuración triciclo

(17)

1.2.2

Configuración Guiado diferencial con llantas y orugas

Este diseño tiene dos motores fijos, uno sobre el lado derecho y otro en el izquierdo del robot y ambos tienen la capacidad de impulsarlo [9]. Puesto que siempre es necesario contar con tres puntos de soporte, este diseño requiere una o dos llantas pasivas adicionales, dependiendo de la localización de los motores (ver Figura 1.3). El guiado diferencial es mecánicamente más simple que un robot configurado como triciclo, porque no se requiere que una de sus llantas tenga la capacidad de impulsar y direccionar a la vez, sino sólo la función de impulsar. Sin embargo, el control del desplazamiento es más complejo que la configuración de triciclo, debido a que se requiere siempre de la coordinación de ambos motores.

La configuración con una sola rueda pasiva no puede disponer de una llanta con motor en el centro del robot por razones de estabilidad, así que cuando se hace girar, el robot rotará en el punto medio donde están los motores. El diseño con dos ruedas pasivas, una en la parte frontal y otra en la posterior permite que el robot gire sobre su centro de gravedad. Sin embargo, este diseño puede introducir problemas de direccionamiento debido a que el contacto con la superficie tiene cuatro puntos de soporte. En la Figura 1.4 se muestra la trayectoria del robot en función de la velocidad de sus motores. Si ambos motores tienen la misma velocidad, el robot se desplazará en línea recta ya sea hacia adelante o hacia atrás, si uno de los motores tiene una mayor velocidad que el otro, el robot se desplazará en una trayectoria tipo arco, si ambos motores giran a la misma velocidad pero en dirección opuesta, el robot girará sobre su centro de gravedad.

Fig. 1.3 Robots móviles con configuración diferencial

(18)

Un caso especial de robots con guiado diferencial son los que emplean orugas en lugar de llantas, la única diferencia que presentan, es una mejor maniobrabilidad en terrenos rugosos y alta fricción al girar, debido a sus múltiples puntos de contacto con la superficie. En la Figura 1.5 se muestra un robot de este tipo [9].

Para este tipo de robots móviles existen ecuaciones que se pueden utilizar para estimar la posición relativa de un robot, dado que es el tipo de robot que vamos a utilizar, damos una descripción de estas ecuaciones. La odometría es uno de los métodos más usados para estimar la posición relativa de un robot móvil con respecto a un punto de partida conocido (ver Figura 1.6). Se basa en ecuaciones simples que pueden implementarse fácilmente y utilizan la información generada por encoders colocados generalmente en los motores de los robots [10]. Dependiendo de la configuración de los robots móviles estas expresiones pueden variar considerablemente. Las ecuaciones que rigen a un robot móvil con configuración diferencial son las siguientes:

Fig. 1.5 Robot con orugas

(19)

(1.2)

2

I D Robot

D

D

D

(1.4)

2

 

r

L

D

D

(1.5)

L

D

D

I

D

(1.6)

L

D

D

I

D

(1.3)

2

 

r

L

D

I

) (1.1 revoluciones de Número DR D

DDI  

donde DRobot es el desplazamiento del robot, DD es el desplazamiento del motor derecho, DI es

el desplazamiento del motor izquierdo, DRes el diámetro de las llantas. Tomando como referencia el desplazamiento del robot, el desplazamiento de cada llanta puede expresarse de la siguiente forma:

donde

L

es la separación entre el punto medio de las llantas. Restando ambas ecuaciones se elimina la variable rque es el radio de cada llanta.

Despejando

podemos conocer la orientación del robot en radianes:

Aunque dentro de los alcances del presente trabajo no se contempla determinar la posición de un robot móvil configuración guiado diferencial sino sólo corregir el problema que presenta éste cuando se desplaza en línea recta, se mostraron las ecuaciones básicas para determinar su posición para trabajos a futuro que se pudieran hacer debido a que el robot móvil cuenta con el hardware necesario para lograr este alcance no contemplado ya que el prototipo será manipulado por un usuario a distancia.

1.2.3

Configuración Direccionamiento Ackermann

(20)

1.2.4

Configuración Guiado Omnidireccional

Hasta el momento las plataformas móviles presentan la misma deficiencia, no poder desplazarse en cualquier dirección. En contraste a esto, el robot con guiado omnidireccional es capaz de moverse en todas direcciones, esta propiedad está relacionada con el tipo de llantas que utiliza (ver Figura 1.8) [9]. Dichas llantas están cubiertas con cilindros que rotan libremente; es importante indicar que las llantas son manipuladas por los motores, pero los cilindros no. Un robot de este tipo puede ser construido ya sea con tres o cuatro llantas, sin embargo la orientación de los cilindros en las llantas difiere, en el caso de un robot con tres llantas (ver Figura 1.9) los cilindros deben estar a 90° con respecto al eje de la llanta, en cambio en un modelo con cuatro llantas (ver Figura 1.10) se requiere que los cilindros estén a 45°. A pesar de las grandes ventajas de esta configuración tiene dificultades para seguir líneas rectas y su implementación es muy complicada.

Fig. 1.7 Robot con configuración de direccionamiento Ackermann

Fig. 1.8 Llantas omnidireccionales

(21)

1.3

SENSORES Y ACTUADORES UTILIZADOS EN ROBÓTICA MÓVIL

Los robots cuentan con una serie de dispositivos que los dotan de movilidad para realizar las tareas asignadas por su diseñador; los actuadores son los músculos de un robot, son los elementos que convierten la energía de alimentación en movimiento (por ejemplo pistones o motores). En la robótica móvil existen básicamente tres tipos de motores de uso común: los

motores de corriente directa, los motores a pasos y los servomotores. Los seres vivos cuentan con

una serie de sentidos que les sirven para obtener información del ambiente; de manera similar un robot debe contar con sentidos que le permitan conocer su entorno, para ello debe estar provisto de una serie de sensores cuya información será utilizada por un sistema de control. En el caso de este prototipo es necesario conocer la velocidad angular de cada llanta del robot. Para esta tarea los sensores de posición son uno de los más empleados en robótica pudiendo ser de tipo óptico o magnético utilizándose para este proyecto los de tipo óptico debido a que permiten tener una

mejor resolución (número de pulsos) por vuelta al utilizar un haz de luz infrarroja en la mayoría de los casos.

1.3.1

Motores de CD (Corriente Directa)

Dentro de la gran variedad de tipos existentes en el mercado, los más económicos son los que se utilizan en algunos juguetes, pero tienen el inconveniente de que su número de revoluciones por minuto (rpm) es muy elevado, lo que no los hace muy apropiados para la construcción de un robot móvil que por ejemplo, siga una línea, si no se utilizan reductores adicionales (caja de engranaje reductora de velocidad colocada en el rotor del motor) o un sistema de regulación electrónico (sistema de control electrónico para monitorear la velocidad de rotación del motor y controlarla). En la Figura 1.11 se muestra una fotografía de un motor de CD.

En los juguetes del tipo Mecano o Lego, podemos encontrar motores con reductores o sistemas reductores para acoplar a los motores. Ésta es una buena opción si se dispone de ellos. Además de disminuir la velocidad, le dan más torque al robot móvil para mover su estructura y la batería (que generalmente su peso es de los más grandes respecto a los componentes que conforman el robot móvil) y otros objetos para lo cual se necesita disponer de motores con torque de arranque capaz de desplazar una masa considerable (piezas que conforman al robot móvil).

(22)

Los reductores o motorreductores son apropiados para el accionamiento de toda clase de máquinas y aparatos de uso industrial, que necesitan reducir su velocidad en una forma segura y eficiente.

Algunos de los beneficios de los reductores son:

· Una regularidad tanto en la velocidad como en la potencia transmitida.

· Una mayor eficiencia en la transmisión de la potencia suministrada por el motor. · Mayor seguridad en la transmisión, reduciendo los costos en el mantenimiento. · Menor espacio requerido y mayor rigidez en el montaje.

· Menor tiempo requerido para su instalación.

En robótica es muy común encontrar este tipo de motores (ver Figura 1.12) ya que tienen la versatilidad de ser bidireccionales (funcionan en sentido horario o en sentido anti-horario) dependiendo de la polarización en la que esté funcionando [11].

1.3.1.1

Motores de CD con encoder

El principio de funcionamiento de un encoder consiste en que un disco gira, con zonas transparentes y opacas que interrumpen un haz de luz captado por foto-receptores, luego estos transforman los impulsos luminosos en impulsos eléctricos los cuales son tratados y transmitidos por la electrónica de salida.

Encoder Incremental: En la Figura 1.13 se muestra un esquema de este tipo de encoder que se caracteriza porque determina su posición contando el número de impulsos que se generan cuando un rayo de luz es atravesado por marcas opacas en la superficie de un disco unido al eje (ver Figura 1.13a).

Fig. 1.12 Motorreductores, a) Reductor plástico; b) Reductor metálico a) b)

(23)

En el estator hay como mínimo dos pares de foto-receptores ópticos, escalados un número entero de pasos más ¼ de paso. Al girar el rotor genera una señal cuadrada, el escalado hace que las señales tengan desfase de ¼ de periodo si el rotor gira en un sentido y de ¾ si gira en el sentido contrario, lo que se utiliza para discriminar el sentido de giro (ver Figura 1.13b).

Un simple sistema lógico permite determinar desplazamientos a partir de su origen, a base de contar impulsos de un canal y determinar el sentido de giro a partir del desfase entre los dos canales. Algunos encoders pueden disponer de un canal adicional que genere un pulso por vuelta y la lógica puede dar número de vueltas más fracción de vuelta. La resolución del encoder depende del número de impulsos por revolución [12].

Encoder Absoluto: En el encoder absoluto, el disco contiene varias bandas dispuestas en forma de coronas circulares concéntricas, dispuestas de tal forma que en sentido radial el rotor queda dividido en sectores, con marcas opacas y transparentes codificadas en código Gray.

El estator tiene un foto-receptor por cada bit representado en el disco. El valor binario obtenido de los foto-receptores es único para cada posición del rotor y representa su posición absoluta. Se utiliza el código Gray en lugar de un binario clásico porque en cada cambio de sector sólo cambia el estado de una de las bandas, evitando errores por falta de alineación de los captadores [13].

En la Figura 1.15a se ilustra un disco codificado en código Gray con su respectiva tabla de conversión a decimal (Figura 1.15b), el valor señalado en el disco es 001 correspondiente a uno decimal.

Decimal Gray 0 000 1 001 2 011 3 010 4 110 5 111 6 101 7 100

Fig. 1.14 Esquema de un encoder absoluto

Fig. 1.15 Disco utilizado para un encoder absoluto, a) Disco codificado en código Gray, b) Código Gray de tres bits

(24)

1.3.2

Características de los motores de CD utilizados en el robot móvil

Se utilizan dos motorreductores metálicos de CD, cada uno es de tipo miniatura de dimensiones (24 mm x 10 mm x 12 mm), con escobillas y utiliza una caja reductora de velocidad con relación de transmisión 250:1. La caja reductora de velocidad tiene una longitud de 9.27 mm, 3 mm de diámetro del eje de salida con forma de D. En la Figura 1.16 se muestra una fotografía de este motorreductor.

El voltaje nominal del motorreductor es de 6 V, aunque en general este tipo de motor puede trabajar con tensiones por encima o por debajo de este voltaje nominal; el motor comienza a rotar a partir de 0.5 V, y tensiones por encima de 9 V podrían dañarlo y acortar su vida útil [14]. En la Tabla 1.1 se muestran algunas características adicionales a las ya mencionadas:

Característica a 6 V

Revoluciones por minuto (sin carga) 120 rpm

Consumo de corriente (sin carga) 70 mA

Corriente de arranque 1.6 A

Torque 4.3 kg-cm

Estos motorreductores cuentan con soporte para montaje tal como se aprecia en la Figura 1.17, de tal manera que pueda montarse de forma segura sobre alguna plataforma y a la vez cubre los engranes metálicos expuestos de la caja reductora de velocidad.

Fig. 1.16 Motorreductor utilizado en el robot móvil

Tabla 1.1 Características del motorreductor utilizado

(25)

1.3.2.1

Encoder utilizado en los motores de CD del robot móvil

Consiste de un encoder de tipo incremental utilizado para medir la velocidad de rotación de la llanta, se tienen 12 dientes con los cuales se obtiene una resolución de 48 conteos por revolución, lo que corresponde a una resolución lineal de 3 mm. La tarjeta está diseñada para trabajar con dos pares de sensores de tipo infrarrojo mediante la reflectancia en el interior de la llanta; esto quiere decir que se alternan zonas claras (correspondiente al color blanco de los dientes) que es cuando hay reflexión y zonas oscuras (correspondientes al color negro de la llanta) cuando no la hay y de esta manera medir el movimiento de los 12 dientes que se encuentran en el borde de la rueda [15]. Estas características mencionadas se ilustran mejor en la Figura 1.18.

Los dos sensores están espaciados para proporcionar formas de onda cuadrada con 900 de desfase (Figura 1.19), determinándose así la dirección de rotación de la llanta y proporcionando cuatro conteos por diente para una resolución de 48 conteos por revolución. El diseño compacto de la tarjeta permite introducirla dentro de la llanta, permitiéndose que la tarjeta pueda ser montada entre el motor y la plataforma del robot móvil donde estará sujeto el motor. El encoder está calibrado de fábrica para una operación de 5 V con un consumo de corriente de 14 mA.

Fig. 1.18 Motorreductor con soporte para montaje y encoder, a) Encoder con dos pares de sensores, b) Encoder montado en los doce dientes, c) Encoder montado en los doce dientes y llanta del motor de CD junto con el soporte para montaje

(26)

1.3.3

Servomotores

Un servomotor (también llamado servo) es un dispositivo que tiene la capacidad de ser ubicado en cualquier posición dentro de su intervalo de operación y mantenerse en dicha posición. Conformado por un motor de corriente directa muy pequeño, un tren de engranaje reductor que permite incrementar su torque, una tarjeta controladora que convierte la señal PWM (Modulación por Ancho de Pulso) recibida, en movimiento del eje de salida y un potenciómetro que mide la posición de salida del eje. La tarjeta controladora dispone de retroalimentación y monitorea constantemente la información generada por el resistor variable, de tal forma que permite posicionar y mantener el eje del motor [16]. Por ejemplo para el Servomotor Hitec HS22 la señal PWM utilizada para manipularlo tiene una frecuencia de 50 Hz, así que los pulsos son generados cada 20 ms. El ancho del pulso especifica la posición deseada en el eje del motor (Figura 1.20). Por ejemplo, una señal con un ancho de 1.1 ms llevará el motor a 0° (Figura 1.20a), una de 1.5 ms lo pondrá a 90° (Figura 1.20b) y con una de 1.9 ms hará que el motor esté en 180° (Figura 1.20c).

Es posible modificar un servomotor para eliminar su restricción de giro y permitirle una rotación continua [17], sin embargo, es posible adquirir servos modificados por el fabricante tal es el caso del servomotor Parallax #900-00008 mostrado en la Figura 1.21. Estos dispositivos alterados permiten incrementar la velocidad de rotación del motor dependiendo del pulso en su entrada PWM. Al aplicar un pulso de 1.5 ms hará que el motor se detenga (Figura 1.21a). Un pulso menor a

Fig. 1.20 Control de posición de servomotores, a) 0°, b) 90°, c) 180° a)

b)

(27)

1.5 ms provocará que el motor gire en sentido de las manecillas del reloj (Figura 1.21b), por ende cuando el pulso es mayor a 1.5 ms girará en sentido contrario de las manecillas del reloj (Figura 1.21c). Los servomotores modificados pueden ser analógicos o digitales. En el caso de los analógicos, ofrecen la ventaja de poderse calibrar (llevándolo al punto de reposo) utilizando un potenciómetro. En el caso de los digitales, cuentan con un circuito integrado el cual ya no permite hacer modificaciones, sin embargo no requieren de calibración puesto que el ajuste es preciso.

Fig. 1.21 Control de velocidad de servomotores, a) Servomotor sin giro, b) Servomotor con giro en sentido de las manecillas del reloj, c) Servomotor con giro en sentido contrario de las manecillas del reloj

a)

b)

(28)

(1.7)

60

n

f

N

1.3.4

Motores a pasos

Un motor a pasos, es una máquina eléctrica en la que sus devanados se energizan uno después del otro, estas excitaciones provocan un giro discontinuo en un ángulo que se determina por la posición que toma el eje. Éste es capaz de transformar información digital, en movimientos mecánicos, el eje del motor gira un determinado ángulo por cada impulso de entrada, el resultado final del movimiento es fijo y repetible, produce un posicionamiento preciso y fiable, el sentido de rotación del motor se define con el sentido de excitación de las bobinas que al ser excitadas con impulsos, actúan sobre un núcleo de hierro dulce o imán permanente y lo hacen girar un ángulo determinado, la velocidad de rotación del eje del motor (N) en revoluciones por minuto es:

Dondef frecuencia de los impulsos[Hz] y nnúmero de espiras

El desplazamiento angular al pasar de una bobina a otra es

2

/

n

, lo que representa una conversión de señales digitales de excitación a una posición angular discontinua definida sobre el eje del motor. Al desplazamiento angular se le denomina paso angular y es precisamente lo que caracteriza a este tipo de motores, ya que funcionan en pasos con un ángulo determinado.

La frecuencia se varía desde cero hasta la frecuencia máxima que permita el motor. Un motor a pasos es capaz de girar en ambos sentidos un número exacto de grados con incrementos mínimos que se determinan por el diseño de su construcción, este incremento está comprendido entre 0.72 y 90, correspondientes a 500 pasos y 4 pasos por revolución respectivamente, aunque el motor a pasos es de concepción antigua, sólo se emplea en la práctica a partir de la aparición de los modernos semiconductores, con los cuales se implementan los circuitos para la regulación y el control del motor [18]. En la Figura 1.22 se ilustra un motor a pasos.

(29)

1.3.4.1

Tipos de motores a pasos

En los motores a pasos tenemos los unipolares y los bipolares. Los motores unipolares se llaman así porque la corriente que circula por las diferentes bobinas siempre circulan en el mismo sentido (Figura 1.23a); en los bipolares, para que estos funcionen, la corriente que circula por las bobinas cambia de sentido en función de la tensión que se aplica (Figura 1.23b) por lo que una misma bobina puede tener en uno de sus extremos distinta polaridad (bipolar). Algunos motores tienen las bobinas de tal manera que en función de los puentes pueden convertirse en unipolares o bipolares.

Con respecto a los motores bipolares la dificultad está en controlar la alimentación, cambiar la polaridad y el ritmo necesario los cuales permitirán que éste funcione correctamente siguiendo una secuencia de pasos [18].

Fig. 1.23 Tipos de motores a pasos, a) Motor a pasos unipolar, b) Motor a pasos bipolar a)

(30)

1.3.4.2

Secuencias para motores a pasos tipo unipolar y bipolar

Como se dijo anteriormente, los motores bipolares necesitan la inversión de la corriente que circula en sus bobinas en una secuencia determinada. Cada inversión de la polaridad provoca el movimiento del eje en un paso, cuyo sentido de giro está determinado por la secuencia seguida. A continuación en la Tabla 1.2 se muestra la secuencia necesaria para controlar motores paso a paso del tipo Bipolares para una vuelta completa en sentido contrario a las manecillas del reloj:

PASO Bobina A Bobina B Bobina C Bobina D

1 VCC VCC GND GND

2 GND VCC VCC GND

3 GND GND VCC VCC

4 VCC GND GND VCC

Es importante mencionar que las bobinas A y C son una misma correspondiente a la Bobina 1 y que las bobinas B y D conforman la Bobina 2 esquematizadas en la Figura 1.23b.

Existen tres secuencias posibles para el tipo de motor unipolar. Todas las secuencias comienzan nuevamente por el paso 1 una vez alcanzado el paso final (4 u 8). Para revertir el sentido de giro, simplemente se deben ejecutar las secuencias en modo inverso. En la Tabla 1.3 se muestra la secuencia para una vuelta de 360° para una secuencia Wave drive en sentido anti horario. En la Tabla 1.4 la secuencia correspondiente a la de tipo Normal y en la Tabla 1.5 la de Medio Paso

[19].

PASO Bobina A Bobina B Bobina C Bobina D

1 ON OFF OFF OFF

2 OFF ON OFF OFF

3 OFF OFF ON OFF

4 OFF OFF OFF ON

Paso 1 Paso 2 Paso 3 Paso 4

Paso 1 Paso 2 Paso 3 Paso 4 Tabla 1.2 Secuencia de un motor a pasos bipolar

(31)

PASO Bobina A Bobina B Bobina C Bobina D

1 ON OFF OFF OFF

2 ON ON OFF OFF

3 OFF ON OFF OFF

4 OFF ON ON OFF

5 OFF OFF ON OFF

6 OFF OFF ON ON

7 OFF OFF OFF ON

8 ON OFF OFF ON

Para este trabajo se utilizaron motores de CD con caja reductora con encoder principalmente por las siguientes consideraciones: poder operar a altas revoluciones por minuto (rpm) y además la posibilidad de modificar la velocidad de rotación de referencia a la cual se desee trabajar por parte del diseñador del algoritmo de control difuso.

Un servomotor nos restringiría elegir la velocidad de rotación de referencia hasta determinados márgenes debido a que el circuito de control que tiene integrado viene adaptado específicamente para el motor de CD que tiene integrado el servomotor. Por otro lado un motor a pasos presentaría inconvenientes si se quisiera operar a altas revoluciones por minuto debido a que si la frecuencia de los impulsos es muy elevada el motor a pasos podría girar erráticamente, comenzar a vibrar o incluso girar en sentido opuesto.

PASO Bobina A Bobina B Bobina C Bobina D

1 ON ON OFF OFF

2 OFF ON ON OFF

3 OFF OFF ON ON

4 ON OFF OFF ON

Tabla 1.4 Secuencia Normal de un motor unipolar

(32)

CONCLUSIÓN

La variedad de aplicaciones que se les ha dado a los robots móviles los convierte en una

herramienta complementaria en actividades que serían difíciles de realizar o pondrían en riesgo la

integridad del hombre; dependiendo del problema o la tarea a resolver se puede elegir una de las

distintas configuraciones de robots móviles descritas en este capítulo, aprovechando las

particularidades que los hacen ventajosos para determinado propósito.

El desempeño del robot móvil y los resultados para alguna tarea asignada para determinada

configuración, dependerá en gran medida de los materiales empleados durante su diseño y

construcción, es decir, una elección acertada de los sensores, actuadores y el tipo de llantas

empleadas para su manufactura. Durante el desarrollo de este capítulo se presentaron los

actuadores (motores) más empleados en robótica móvil haciendo un análisis de su

funcionamiento y parámetros a tomar en cuenta durante el diseño de alguna de las

configuraciones de robots móviles y de esta manera elegir el motor que más de adecúe a las

necesidades de la tarea a realizar. También se describieron los sensores asociados al

funcionamiento de los actuadores, específicamente a los motores de CD, los cuales brindan la

posibilidad de tener un control sobre éstos pudiendo cuantificar su velocidad de rotación y

posicionamiento angular. Al igual que en los actuadores, la elección del tipo de sensor estará

determinada por las necesidades de la problemática a resolver así como su resolución y material

de construcción.

Es así como de esta manera se tiene un panorama general de la robótica móvil en nuestros días y

de los sensores y actuadores más utilizados para su construcción. A lo largo de los capítulos

(33)

REFERENCIAS

[1] P.F. Muir and C.P.à Neu a ,à Ki e ati à odeling of wheeled mobile robots , Robotics Institute, Carnegie Mellon University, Pittsburgh, PA, Tech. Rep. CMU-RI-TR-86-12, 1992.

[2] P.F. Muir and C.P.à Neu a ,à Ki e ati à odeling of wheeled mobile robots , Journal of Robotics Systems, vol. 3, 1987.

[3] J. C. Alexander and J. H. Maddo ks,à O à theà ki e ati sà ofà heeledà o ileà o ots, à

International Journal Robotics Research, vol. 8, 1989.

[4]à G.à Ca pio ,à G.à Basti à a dà B.à D’á d ea-No el,à “t u tu alà p ope tiesà a dà lassifi atio à ofà

kinematic and dynamic models of wheeled mobile robots , IEEE Transactions on Robotics and Automation, vol. 12, 1996.

[5] M. H. Raibert, H. Brown, M. Chepponis, E. Hastings, J. Koechling, K. N. Murphy, S. S. Murthy and

á.à“te tz,à D a i all àsta leàleggedàlo o otio , àRo oti sàI titute,àCa egieàMello àU i ersity, Pittsburgh, P.A. Tech. Rep. CMU-RI-TR-83-20, 1983.

[6]àT.àI a oto.àH.àYa otoàa dàK.àHo a,à T a sfo a leà a le à e ha is à ithàadapta ilit àtoà te ai à a iatio s, à i àProc. 1983 International Conference on Advanced Robotics Conf., Tokyo, Japan.

[7] G.à G a osikà a dà J.à Bo e stei ,à I teg atedà joi tà a tuato à fo à se pe ti eà o ots, à IEEE/á“MEà

Transactions on Mechatronics, vol. 10, 2005.

[8]àTho asàB äu l.à E eddedàRo oti s:àMo ileàRo otàDesig àa dàápplications with Embedded

“ ste s ,àSchool of Electrical, Electronic and Computer Engineering, University of Western Australia, 2006.

[ ]à O a à “ hezà Pé ez.à Ci e ti aà deà Ro otsà Mó iles .à Depa ta e toà deà I ge ie íaà

Electrónica, Sistemas Informáticos y Automática. Universidad de Huelva. España. 2007.

[ ]à Da idà P.à á de so .à IMUà Odo et .à .à .geolog .s u.edu/~dpa

-www/robo/Encoder/limu_odo.

[11] http://www.webelectronica.com.ar/news29/nota05.htm, 2011

[12] Encoder incremental descripción general , Eltra, Silge Electrónica, S.A. , 2011

[13] Encoder absoluto descripción general , Eltra, Silge Electrónica, S.A., 2011

[14] http://www.pololu.com/catalog/product/995, 2012

(34)

[16] Dennis Clark and Michael Owings, Buildi gàRo otàD i eàT ai s ,àTáB Robotics, 2003.

[17] Seattle Robotics Society. http://www.seattlerobotics.org/guide/servohack.html

[18] José Beristain López, Pedro D. Espinos Vázquez, “iste aàdeà o t olàpa aà oto esàaàpasosàdeà

tipoàu ipola ,ààESIME IPN, México D.F.

(35)

CAPÍTULO 2

TÉCNICAS DE CONTROL UTILIZADAS EN LOS

ROBOTS MÓVILES

2.1

INTRODUCCIÓN

Existen dos métodos para el análisis y diseño de sistemas de control realimentados. El primer método conocido como técnica en el dominio de la frecuencia se basa en la conversión de la

ecuación diferencial de un sistema en una función de transferencia, generando así un modelo matemático del sistema que algebraicamente relaciona una representación de la salida con una representación de la entrada. La sustitución de una ecuación diferencial con una ecuación algebraica simplifica la representación del sistema. Por este motivo, para este trabajo de investigación se hará uso de este método, además, es aplicable a sistemas lineales invariantes en el tiempo (SLIT) o a sistemas que se puedan aproximar como tales como lo es nuestro caso. El segundo método llamado espacio de estados, es utilizado frecuentemente para sistemas no

lineales y variantes con el tiempo. Con este método el diseñador tiene que ocuparse de varios cálculos antes de que pueda obtener la interpretación física del modelo, mientras que con la técnica del domino de la frecuencia sólo son necesarios unos cuantos y rápidos cálculos o una representación grafica de datos, tal como se demuestra posteriormente en el capitulo 3 para nuestra aplicación [1].

Una vez obtenido el modelo matemático del sistema, es necesario aplicar alguna técnica que permita controlarlo, es por eso que también a lo largo de este capitulo, se dará un panorama general de las técnicas de control más utilizadas en el área de ingeniería; por un lado se describirán las técnicas de control clásico (P, PI, PD, PID) y por otro la técnica de control haciendo uso de lógica difusa. Posteriormente se describirá la analogía que existe entre estas dos metodologías y finalmente una comparación para resaltar sus diferencias, ventajas, desventajas, y en qué tipo de situaciones conviene aplicar una u otra, utilizándose para este proyecto la técnica de control con lógica difusa debido a que exige un análisis matemático menos riguroso para su implementación.

2.2

GENERALIDADES DE UN SISTEMA DE CONTROL

(36)

SISTEMA DE CONTROL

Objetivos Resultados

Entradas, referencias o señales de control

Salidas, variables o señales controladas

sí los diversos elementos para caracterizar el sistema; para eso, únicamente es necesario conocer las relaciones entrada/salida del proceso. El aspecto más importante de un sistema es el conocimiento de su dinámica, es decir, cómo responde un sistema frente a una señal de entrada

determinada o cómo varía la señal de salida ante una variación de la señal de entrada. Un conocimiento preciso de la relación entrada/salida permite predecir la dinámica del sistema y

seleccionar la acción de control adecuada para mejorarla. De esta manera, conociendo la dinámica deseada, se podrá ajustar la acción de control para conseguir el objetivo final. Un sistema de control es el conjunto de elementos que interaccionan para conseguir que la salida de un proceso se comporte tal como se quiere que lo haga mediante una acción de control. La Figura 2.1 muestra el diagrama general de un sistema de control [2].

2.2.1

Dinámica de un sistema de control

Un sistema físico puede caracterizarse dinámicamente mediante el conjunto de ecuaciones diferenciales que describen las leyes físicas que determinan el comportamiento del sistema. Se debe tener en cuenta que una descripción completa y precisa del sistema físico puede resultar demasiado compleja y laboriosa; por eso tiene que modelarse el sistema y llegar a un compromiso entre la exactitud y la sencillez requeridas. En general, un sistema lineal invariante en el tiempo (SLIT) puede modelarse mediante una ecuación diferencial:

(2.1)

.

x

b

x

b

x

b

x

b

y

a

y

a

y

a

y

a

0 (n)

1 (n1)

2 (n2)

....

n

0 (m)

1 (m1)

2 (m2)

....

m

Esta ecuación diferencial relaciona la señal de salida y(t) de un sistema con la señal de entrada

) (t

x , con coeficientes constantes a’s y b’s permite conocer la respuesta del sistema para una señal

de entrada determinada mediante su solución. Esta ecuación diferencial se llama ecuación característica del sistema. Sin embargo, en general, es complejo el tratamiento analítico del sistema mediante la ecuación característica diferencial, y para resolver este problema se utiliza la función de transferencia, que se obtiene realizando la TL/CI0 (Transformada de Laplace (TL) de la ecuación característica del sistema con Condiciones Iniciales (CI) nulas) dando como resultado la Ecuación 2.2 [2]:

(2.2) n n n m m m a s a s a b s b s b s G s X s Y          .... .... ) ( ) ( ) ( 1 1 0 1 1 0

donde n es el orden del sistema.

(37)

) (s

X Y(s)

Así, puede modelarse el sistema lineal invariante en el tiempo con su función de transferencia, como muestra la Figura 2.2. La función de trasferencia contiene toda la información con respecto a la dinámica del sistema.

2.2.2

Sistema de control en lazo abierto

Los sistemas de control en lazo abierto son aquellos en los cuales la salida no tiene efecto sobre la acción del controlador (Figura 2.3); por eso, cada entrada de referencia corresponde a una operación fija. En conclusión, la exactitud del sistema dependiente de la calibración, y la presencia de perturbaciones (señales no deseadas) puede provocar que el sistema incumpla la función asignada [2].

2.2.3

Sistema de control en lazo cerrado

Un sistema de control de lazo cerrado es aquel en el cual la señal de salida tiene efecto sobre la acción del controlador. Este efecto recibe el nombre de realimentación. La variable controlada

tiene que realimentar y compararse con la entrada de referencia, después el resultado se envía mediante una señal de control hacia la planta o proceso, proporcional a la señal de error

(diferencia entre la señal de entrada de referencia y la variable controlada), disminuyéndose esta

desviación, objetivo primordial de este sistema de control (Figura 2.4). La ventaja principal del sistema de control en lazo cerrado sobre el sistema en lazo abierto es que la utilización de la realimentación hace al sistema menos sensible a perturbaciones externas y variaciones de parámetros internos [2].

SLIT

Fig. 2.2 Modelo del sistema

CONTROLADOR

PLANTA O

PROCESO

Entrada de referencia

Señal de control

Variable controlada

Fig. 2.3 Diagrama de bloques de un sistema de control en lazo abierto

CONTROLADOR

PLANTA O

PROCESO

Entrada de referencia

Señal de control

Variable controlada Señal de

error

Fig. 2.4 Diagrama de bloques del sistema de control en lazo cerrado

(38)

2.3

TÉCNICAS DE CONTROL CLÁSICO

Los controladores convencionales (clásicos), como por ejemplo el controlador proporcional-integral-derivativo (PID), es uno de los más conocidos y más ampliamente usados en la industria moderna: las estadísticas han mostrado que más del 90% de los controladores usados en las industrias actuales son PID [3].

Al hablar de controladores PID, tratamos con controladores puramente reactivos, es decir,

responden solamente al error del sistema. Inicialmente fueron introducidos en controles de temperatura en lazo cerrado y fueron diseñados utilizando componentes analógicos [4].

2.3.1

Controlador Proporcional (P)

Este tipo de controlador es un amplificador lineal. Con la acción del controlador P, la señal de

control es proporcional a la señal de error presente de acuerdo a la Ecuación 2.3 donde KP es la

ganancia proporcional. Este proceso puede ser usado por si solo cuando se trata de un problema simple.

(2.3)

)), ( ) ( ( ) ( )

(t K et K r t y t uPP

donde u(t)es la señal de control,e(t)(r(t)y(t)) es la señal de error, conr(t)como la entrada de referencia, y y(t) como la variable controlada.

Este tipo de controlador implementa la operación de incrementar la señal de control cuando la señal de error aumenta (con el signo adecuado, dependiendo si la señal de error es positiva o

negativa) y decrementa la señal de control cuando la señal de error es pequeña. La principal

desventaja de usar un controlador puro proporcional es que éste produce un error de estado estacionario, es decir que la variable controlada nunca llega a ser igual a la entrada de referencia

teniendo como consecuencia la presencia de una señal de error distinta de cero. En la Figura 2.5 se

muestra el diagrama de bloques de un controlador puramente proporcional [5].

2.3.2

Controlador Proporcional Integral (PI)

Con la acción integral, la señal de control es proporcional a la integral de la señal de error presente,

está dada por la Ecuación 2.4 donde KI es la ganancia integral.

(2.4) .

K et K et dt

t

u() p ( ) I ()

(39)

El problema que existe con un controlador P es la presencia del error en estado estacionario; al colocar un integrador en el sistema de control en lazo cerrado, el sistema puede de manera lenta incrementar o decrementar continuamente la variable controlada hasta que la señal de error sea

cero. Cuando el error en estado estacionario se elimina, la parte integral deja de actuar. En estado estacionario o estable, el error se hace cero y el término integral es reemplazado por completo por el término proporcional. La ventaja del controlador PI está en que el error en estado estacionario adquiere un valor nulo, esto toma tiempo ya que incrementa o decrementa la variable controlada

continuamente.

Las aplicaciones para un controlador con acción integral son cuando se tiene una entrada de referencia por periodos prolongados; caso contrario es cuando la entrada de referencia cambia

constantemente por periodos cortos donde la parte integral permanece prácticamente constante. En la Figura 2.6 se muestra el diagrama de bloques de un controlador proporcional integral [4].

2.3.3

Controlador Proporcional Derivativo (PD)

Para la característica derivativa, ésta se obtiene directamente derivando la señal de error y se le

afecta por una constante a la que se denomina constante derivativa KD como lo expresa la

Ecuación 2.5.

(2.5) .

dt t de K t e K t

u() p () D ()

La parte derivativa tiene su mayor efecto en los transitorios y hace más estable al sistema. Este tipo de control responde a la velocidad de variación de la señal de error y puede producir una

corrección significativa antes de que la señal de error se haga excesiva, esto tiende a aumentar la

estabilidad del sistema. En la Figura 2.7 se muestra el diagrama de bloques de un controlador proporcional derivativo [6].

Fig. 2.6 Diagrama de bloques de un controlador Proporcional Integral

(40)

2.3.4

Controlador Proporcional Integral Derivativo (PID)

Este controlador incorpora las ventajas que proporcionan cada una de las tres acciones individuales descritas anteriormente. En el diseño se debe considerar no sólo el seguimiento de la

entrada de referencia sino también el rechazo de perturbaciones y ruido en la medida de lo

posible. Las tres acciones de control (proporcional, integral y derivativo) actúan directamente sobre la señal de error, cada acción de control puede ser variada por separado sin que ello pueda

inducir a cambios en las demás acciones de control. La Ecuación 2.6 describe este tipo de controlador [7].

(2.6) .

dt t de K dt t e K t e K t

u() p () I

()  D ()

En la Figura 2.8 se muestra el diagrama de bloques de un controlador PID también conocido como algoritmo paralelo de control PID.

2.4

LÓGICA DIFUSA

La lógica difusa ha cobrado una importancia grande por la variedad de sus aplicaciones, las cuales van desde el control de procesos industriales complejos, hasta el diseño de dispositivos artificiales de deducción automática, pasando por la construcción de artefactos electrónicos de uso doméstico y de entretenimiento, así como también de sistemas de diagnóstico. Se ha considerado de manera general que el concepto de lógica difusa apareció en 1965, en la Universidad de California en Berkeley, introducido por Lofti A. Zadeh. Los valores de tipo falso y verdadero han

odeladoà satisfa to ia e teà u aà g a à pa teà delà azo a ie toà atu al ,à esà ie toà ueà elà azo a ie toàhu a oàutilizaà alo esàdeà e dadà ueà oà e esa ia e teàso à ta àdete i istas .à

Po àeje plo,àalà alifi a à ueà elà ieloàesàazul àel hombre está te tadoàaàg adua à uéàta à azul es el cielo. La lógica difusa procura crear aproximaciones matemáticas en la resolución de ciertos tipos de problemas. Pretende producir resultados exactos a partir de datos imprecisos, por lo cual es particularmente útil en aplicaciones electrónicas o computacionales. El adjetivo difuso aplicado se debe a que los valores de verdad utilizados tienen, por lo general, una connotación de incertidumbre. Un vaso medio lleno, independientemente de que también esté medio vacío, no está lleno completamente ni está vacío completamente. Qué tan lleno puede estar es un elemento de incertidumbre, es decir, de imprecisión o aspecto difuso, entendido esto último como una propiedad de indeterminismo. Ahora bien, los valores de verdad asumidos por enunciados aunque no son deterministas, no necesariamente son desconocidos. La lógica difusa ha tenido

Figure

Tabla 1.1 Características del motorreductor utilizado--------------------------------------------------------------

Tabla 1.1

Características del motorreductor utilizado-------------------------------------------------------------- p.11
Fig. 1.6 Trayectoria recorrida por un robot móvil con configuración diferencial
Fig. 1.6 Trayectoria recorrida por un robot móvil con configuración diferencial p.18
Fig. 1.5 Robot con orugas
Fig. 1.5 Robot con orugas p.18
Fig. 1.9 Robot omnidireccional con tres llantas
Fig. 1.9 Robot omnidireccional con tres llantas p.20
Fig. 1.11 Motor de CD
Fig. 1.11 Motor de CD p.21
Fig. 1.17 Motorreductor con soporte para montaje
Fig. 1.17 Motorreductor con soporte para montaje p.24
Fig. 1.16 Motorreductor utilizado en el robot móvil
Fig. 1.16 Motorreductor utilizado en el robot móvil p.24
Fig. 1.20 Control de posición de servomotores, a) 0°, b) 90°, c) 180°
Fig. 1.20 Control de posición de servomotores, a) 0°, b) 90°, c) 180° p.26
Fig. 1.21 Control de velocidad de servomotores, a) Servomotor sin giro, b) Servomotor con giro en sentido de las manecillas del reloj, c) Servomotor con giro en sentido contrario de las manecillas del reloj
Fig. 1.21 Control de velocidad de servomotores, a) Servomotor sin giro, b) Servomotor con giro en sentido de las manecillas del reloj, c) Servomotor con giro en sentido contrario de las manecillas del reloj p.27
Fig. 1.22 Motor a pasos
Fig. 1.22 Motor a pasos p.28
Fig. 1.23 Tipos de motores a pasos, a) Motor a pasos unipolar, b) Motor a pasos bipolar
Fig. 1.23 Tipos de motores a pasos, a) Motor a pasos unipolar, b) Motor a pasos bipolar p.29
Fig. 2.16 Funciones de membresía; a) Triangular, b) Trapezoidal y c) Gaussiana.
Fig. 2.16 Funciones de membresía; a) Triangular, b) Trapezoidal y c) Gaussiana. p.49
Fig. 2.24. PID contra control difuso.
Fig. 2.24. PID contra control difuso. p.64
Fig. 3.3 Respuesta a la entrada escalón de 4 V de los motores de CD, los motores no giran a las mismas rpm, de ahí que
Fig. 3.3 Respuesta a la entrada escalón de 4 V de los motores de CD, los motores no giran a las mismas rpm, de ahí que p.71
Fig. 3.4 Análisis de la entrada escalón de los motores de CD: a) Motor derecho, b) Motor izquierdo
Fig. 3.4 Análisis de la entrada escalón de los motores de CD: a) Motor derecho, b) Motor izquierdo p.72
Fig. 3.5 Respuesta ante una entrada escalón de la función de transferencia: a)  Motor derecho, b) Motor izquierdo
Fig. 3.5 Respuesta ante una entrada escalón de la función de transferencia: a) Motor derecho, b) Motor izquierdo p.75
Fig. 3.6 Validación de la función de transferencia: a)  Motor derecho, b) Motor izquierdo
Fig. 3.6 Validación de la función de transferencia: a) Motor derecho, b) Motor izquierdo p.75
Tabla 3.1 Tabla de búsqueda para el motor derecho de CD

Tabla 3.1

Tabla de búsqueda para el motor derecho de CD p.84
Fig. 3.15  Visor de reglas de la herramienta Fuzzy Logic Toolbox para el motor derecho de CD
Fig. 3.15 Visor de reglas de la herramienta Fuzzy Logic Toolbox para el motor derecho de CD p.84
Tabla 3.2 Tabla de búsqueda para el motor izquierdo de CD

Tabla 3.2

Tabla de búsqueda para el motor izquierdo de CD p.85
Fig. 4.1 Encoder utilizado para monitorear la velocidad de rotación del motor de CD
Fig. 4.1 Encoder utilizado para monitorear la velocidad de rotación del motor de CD p.89
Fig. 4.3 DAC de configuración escalera R-2R
Fig. 4.3 DAC de configuración escalera R-2R p.92
Fig. 4.4 Circuito electrónico utilizado para la implementación del FLC a nivel hardware para un motor de CD y Receptor
Fig. 4.4 Circuito electrónico utilizado para la implementación del FLC a nivel hardware para un motor de CD y Receptor p.93
Fig. 4.5 Diagrama de bloques del proyecto.
Fig. 4.5 Diagrama de bloques del proyecto. p.94
Fig. 4.7 Circuito electrónico para la Tarjeta de adquisición de datos y Transmisor.
Fig. 4.7 Circuito electrónico para la Tarjeta de adquisición de datos y Transmisor. p.95
Fig. 4.6 Interfaz gráfica por computadora para el envío de órdenes al robot móvil.
Fig. 4.6 Interfaz gráfica por computadora para el envío de órdenes al robot móvil. p.95
Fig. 5.2 Distribución normal de las mediciones de la desviación del robot móvil de la recta sin FLC sobre piso
Fig. 5.2 Distribución normal de las mediciones de la desviación del robot móvil de la recta sin FLC sobre piso p.106
Fig. 5.3 Distribución normal de las mediciones de la desviación del robot móvil de la recta con FLC sobre mesa
Fig. 5.3 Distribución normal de las mediciones de la desviación del robot móvil de la recta con FLC sobre mesa p.107
Tabla 5.2 Resultados de las mediciones de la desviación de la recta seguida por el robot móvil sobre mesa

Tabla 5.2

Resultados de las mediciones de la desviación de la recta seguida por el robot móvil sobre mesa p.107
Fig. 5.4 Distribución normal de las mediciones de la desviación del robot móvil de la recta sin FLC sobre mesa
Fig. 5.4 Distribución normal de las mediciones de la desviación del robot móvil de la recta sin FLC sobre mesa p.108

Referencias

Actualización...