65
ROBOT MÓVIL DIFUSO INSTITUTO POLITÉCNICO NACIONAL UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERÍA Y TECNOLOGÍAS AVANZADAS PROYECTO A ROBOT MÓVIL DIFUSO SEGUNDA ENTREGA PARCIAL ALUMNOS: VICTOR ARRIAGA BARRERA CITLALLI BARRERA RIVERA FERNANDO RUBÉN GONZÁLEZ HERNÁNDEZ JONATHAN JOSUÉ RODRÍGUEZ PÉREZ 5BM2 PROFESORES: JARAMILLO GÓMEZ JUAN ANTONIO RODRÍGUEZ FUENTES MIGUEL ÁNGEL SÁNCHEZ DOMÍNGUEZ HERMILIO MANUEL Página 1

REPORTE fINAlMOVIL DIFUSO

Embed Size (px)

Citation preview

ROBOT MVIL DIFUSO

INSTITUTO POLITCNICO NACIONAL UNIDAD PROFESIONAL INTERDISCIPLINARIA EN INGENIERA Y TECNOLOGAS AVANZADAS

PROYECTO A ROBOT MVIL DIFUSO SEGUNDA ENTREGA PARCIAL

ALUMNOS: VICTOR ARRIAGA BARRERA CITLALLI BARRERA RIVERA FERNANDO RUBN GONZLEZ HERNNDEZ JONATHAN JOSU RODRGUEZ PREZ 5BM2

PROFESORES: JARAMILLO GMEZ JUAN ANTONIO RODRGUEZ FUENTES MIGUEL NGEL SNCHEZ DOMNGUEZ HERMILIO MANUEL ZAMORA GMEZ ERIK

2010 NOVIEMBRE 23Pgina 1

ROBOT MVIL DIFUSO

NDICE Pgina 1. 2. 3. 4. 5. 6. 7. 8. Lista de tablas Lista de figuras Resumen Abstrac Introduccin 5.1. 6.1. 7.1 8.1. 8.2. 8.3. 8.4. 8.5. Qu es un robot mvil difuso? Por qu un robot mvil difuso? Sensores a utilizar Estructura Mecanismo de desplazamiento 8.2.1 Control de velocidad y direccin del mvil Mecanismo recolector de objetos Especificacin de los objetos a recolectar Mecanismo de sensado 8.5.1 8.5.2 8.6. 8.7. 8.8. 9. 9.1 Justificacin de los sensores Acondicionamiento de los sensores 1 2 3 4 7 7 8 9 10 11 12 13 13 14 15 15 16 16 16 17 Justificacin Antecedentes Descripcin del trabajo ii ii vi vi

Justificacin del uso de los motores Fuentes de alimentacin rea de trabajo Controlador difuso 9.1.1 Identificacin de las variables de entrada y salida del sistema 9.1.2 Caracterizacin de universos para las variables difusas

Resultados

Pgina 2

ROBOT MVIL DIFUSO

9.1.3 Programacin de la etapa de fusificacin de valores 9.2 9.3 Caracterizacin elctrica de los motores Caracterizacin elctrica de los sensores 9.3.1 Sensores SHARP 9.3.2 Sensor de encendido y apagado del robot 10. 11. 12. Conclusiones Aprendices o anexos Referencias

18 22 23 23 27 27 28 48

5. LISTA DE TABLAS Nmero de tabla 1. Tabla 1: Caractersticas de los GP2D 2. Tabla 2: Reglas difusas Si hay objeto 3. Tabla 3: Reglas difusas No hay objeto 4. Tabla 4: Caracteres del motor A 5. Tabla 5: Caracteres del motor B 6. Tabla 6: Caracteres del motor C 7. Tabla 6: Caracteres del motor D 8. Tabla 8: Parmetros del SHARP GP2Y0A21YK0F Pgina 6 24 24 25 25 25 25 26

Pgina 3

ROBOT MVIL DIFUSO

6. LISTA DE FIGURASNmero de figura 1. Figura 1: Robot mvil 2. Figura 2: Tecnologa 3. Figura 3: Lotfi A. Zadeh 4. Figura 4: Sensor SHARP 5. Figura 5: Funcionamiento 6. Figura 6: Fotomodulo 7. Figura 7: Cuerpo del robot 8. Figura 8: Mecanismo de desplazamiento 9. Figura 9: Control de velocidad y direccin 10. Figura 10: Etapa de potencia 11. Figura 11: Mecanismo recolector de objetos 12. Figura 12: Secuencia para la pala 13. Figura 13: Mecanismo de sensado 14. Figura 14: Servoradar 15. Figura 15: Acondicionamiento GP2Y0A21YK 16. Figura 16: Giro del servomotor 17. Figura 17: Amplificador no inversor 18. Figura 18: Diagrama a bloques SHARP 19. Grfica 1 20. Grfica 2 21. Grfica 3 22. Grfica 4 23. Grfica 5 24. Grfica 6 25. Grfica 7 26. Grfica 8 27. Grfica 9

Pgina1 3 4 5 5 7 7 8 10 11 11 12 13 14 15 20 28 29 22 22 22 23 23 23 27 27 29

Pgina 4

ROBOT MVIL DIFUSO

3. RESUMENEsta entrega parcial del proyecto A: Robot mvil difuso trata acerca de la justificacin, caracterizacin, implementacin y acoplamiento de los sensores a utilizar en el proyecto antes mencionado, tambin se explica el funcionamiento y las caractersticas de las fuentes utilizadas y de los componentes electrnicos, esto con base a los clculos realizados para cumplir con los requerimientos de nuestro sistema. Otro punto importante tratado dentro de esta entrega parcial es el diseo de los circuitos de control para los actuadores as como el diseo de la interfaz para la comunicacin de los sistemas neurodifusos, tambin se incluye la programacin y el diseo en Matlab para el sistema de control de velocidad. A lo largo de esta entrega parcial se intenta brindar al lector toda la informacin necesaria para la comprensin del proyecto a entregar, brindndole los esquemas y clculos de los circuitos para la caracterizacin y acoplamiento, as como las caractersticas de los sensores a utilizar y los programas a implementar dentro de esta entrega.

4. ABSTRACTThis partial report of project A: Diffuse movable Robot talks about the justification, characterization, implementation and connection of the sensors to use in the project indicated above, also explains the operation and the characteristics of the used sources and the electronic components, this with base to the realised calculations to fulfill the requirements of our system. Another treated important point within this partial delivery is the design of the control loops for the actuators as well as the design of the interface for the communication of the neurodifusos systems, also includes the programming and the design in Matlab for the control system of speed. Throughout this partial delivery it is tried to offer to the reader all the information necessary for the understanding of the project to give, offering him to the schemes and calculations of the circuits for the characterization and connection, as well as the characteristics of the sensors to use and the programs to implement within this delivery.

Pgina 5

ROBOT MVIL DIFUSO

5. INTRODUCCIN a. Qu es un Robot Mvil Difuso?Un Robot Mvil es aquel capaz de desplazarse dentro de un rea de trabajo siguiendo trayectorias rectas y/o curvas. Lo que hace difuso a ste robot mvil es su capacidad de evadir obstculos y la recoleccin de objetos, ya que el continuo desarrollo de nuevos robots mviles para propsitos cientficos y de aplicaciones diversas, exige algoritmos y tcnicas de control eficiente para su desempeo, una de las tcnicas ms utilizadas en este sentido es la Lgica Difusa. El Robot Mvil Difuso que se describe en este reporte fue diseado de manera tal que cumpla con los objetivos requeridos y a su vez pueda extenderse en un futuro a un Robot que sea capaz de recoger la basura de algn rea determinada, figura 1. Por ahora nuestro Robot Mvil Difuso est limitado por el tamao de los objetos que pueda entrar por la ranura de su depsito y porque solo es capaz de distinguir dos colores (blanco y negro).

Figura 1 Robot mvil capaz de evadir obstculos y recoger objetos

Pgina 6

ROBOT MVIL DIFUSO

El proyecto del Robot mvil difuso comprende el diseo de un mvil capaz de localizar objetos a recoger dejando as limpia el rea de trabajo de basuras, e identificar a qu distancia se encuentra de la pared obteniendo una velocidad proporcional a sta. Este proyecto debe de sensar la distancia a la pared y la distancia a las basuras y a partir de este dato lanzar una velocidad que fue obtenida a travs de caracterizacin de universos difusos previamente. El comportamiento de los motores de las llantas ser dado a travs del acoplamiento de las seales enviadas por los sensores, ya que se estar sensando la distancia a la pared de derecha, izquierda y en frente, estas seales pasaran el proceso de conversin analgico digital y una vez obtenidos los valores de las distancias se proceder a una etapa de control la cual ser a travs de un Microcontrolador ( C). Dentro del C se colocar la programacin de la unidad de inferencia difusa, la cual C saldr el control de la velocidad a partir del sensado

representa nuestra etapa de control digital, que acta como la interaccin entre los sensores y la etapa de potencia, de este previo, y tambin se obtendr el dato acerca de la basura que activar el mando a la pala que proceder a recogerla, esto a travs del clculo de la distancia de la basura. El C enva datos a los diferentes circuitos de control de los motores que realizarn la accin necesaria, giro o cambio de velocidad, tambin enviar el dato de la distancia a la que se encuentren las basuras para mover el mvil hasta ellas y activar el mando para mover la pala y recogerlas, dejando as el rea de trabajo libre.

6. JUSTIFICACIN a. Por qu un Robot Mvil Difuso?A travs de los aos la ciencia y tecnologa avanzan a pasos agigantados. A veces con mayor rapidez a veces con menos, sin embargo siempre sigue adelante. Y es con este avance que surgen nuevas ramas y espacios de aplicacin. Uno de ellos es la rama de control aplicado a robots mviles. Dada la especializacin de nuevos mecanismos, se exigen as tambin tcnicas de control capaces de ofrecer un trabajo satisfactorio en la realizacin de esta tarea. Es por ello que el comprender el funcionamiento de este tipo de sistemas es de suma importancia cuando se estudia alguna de las carreras impartidas en esta escuela. Pgina 7

ROBOT MVIL DIFUSO

Figura 2 La tecnologa est presente da con da y avanza a una gran velocidad

Para las carreras comprendidas dentro de las tecnologas avanzadas es muy importante la implementacin de los sensores comprendiendo el funcionamiento de estos mismos, as como conocer la utilizacin y composicin de los diferentes tipos de circuitos utilizados para el control de motores, acoplamiento de seales y adquisicin de datos de sensores. La construccin de un Robot mvil difuso desarrolla las capacidades de diseo de circuitos de los alumnos, as como la programacin e incrementa su conocimiento acerca de actuadores de diferentes tipos, sus diferentes aplicaciones y sus diferentes tipos de control. Todos estos puntos juntos conforman lo que ahora se desarrolla en muchas partes del mundo, ya que la tecnologa de punta se vale de componentes electrnicos que parten de estos como base, por lo que es de alta importancia comprender sus comportamientos y usos.

7. ANTECEDENTESLa Lgica Difusa se dio a conocer en los aos 60 (En 1965 por Lotfi A. Zadeh, profesor de la Universidad de Berkeley California) con el articulo Fuzzy Sets Information and Control, figura 3. La fama de esta tcnica, levant rpidamente el vuelo gracias al uso que le dio Japn en 1987. La produccin de un sinnmero de productos japoneses aplicaba esta tcnica obtenido resultados excelentes y superando claramente a sus contrincantes. Los productos que se producan y se siguen produciendo, y que utilizan esta tcnica no se encasillan en un solo tipo; lavadoras, cmaras digitales, planchas entre muchos otros ms, son los productos que hacen uso de ella. Pgina 8

ROBOT MVIL DIFUSO

Esta aplicacin le dio a Japn millones de ganancias anuales. Pero no solo en este ambiente se desarrolla la Lgica Difusa. Muchas son las puertas que se han abierto para su aplicacin. El mbito cientfico, de investigacin y de desarrollo son las principales reas donde se aplica esta tcnica con grandes resultados. La sencillez con que trabaja la lleva a ser una de las ms entendidas y utilizadas, ya que ofrece excelentes resultados si es bien utilizada.

Figura 3 Lotfi A. Zadeh lanzo el articulo Fuzzy Sets Information and Control

a. SENSORES A UTILIZARREFLEXIVO GP2D Descripcin: El sensor GP2DXX de sharp es un dispositivo de reflexin por infrarrojos con medidor de distancia proporcional al ngulo de recepcin del haz de luz que incide en un sensor lineal integrado, dependiendo del modelo utilizado, la salida puede ser analgica, digital o booleana.

Figura 4 Sensor SHARP

Pgina 9

ROBOT MVIL DIFUSO

Funcionamiento: El dispositivo emite luz infrarroja por medio de un led emisor de IR, esta luz pasa a travs de una lente que concentra los rayos de luz formando un nico rayo lo ms concentrado posible para as mejorar la directividad del sensor, la luz va recta hacia delante y cuando encuentra un obstculo reflectante rebota y retorna con cierto ngulo de inclinacin dependiendo de la distancia, la luz que retorna es concentrada por otra lente y as todos los rayos de luz inciden en un nico punto del sensor de luz infrarroja que contiene en la parte receptora del dispositivo. Este sensor es un CCD lineal y dependiendo del ngulo de recepcin de la luz incidir esta en un punto u otro del sensor pudiendo de esta manera

Figura 5 Funcionamiento

obtener un valor lineal y proporcional al ngulo de recepcin del haz de luz. Dependiendo del modelo elegido leeremos de una manera u otra la salida de este con lo cual tendremos que remitirnos al datasheet del modelo elegido para ver su funcionamiento interno.y

En los modelos analgicos la salida es una tensin proporcional a la distancia medida.

y

En los modelos digitales la lectura ser de 8 bits serie con reloj externo.

En los modelos Booleanos la salida ser de 1 bit y este marcara el paso por la zona de histresis del sensor con lo cual solo tendremos una medicin de una distancia fija.

Pgina 10

ROBOT MVIL DIFUSO

Tabla 1 Caractersticas de los GP2D

Datasheets GP2D-02 GP2D-05

Rango de medida

Tipo de salida

10 a 80 cm. 10 a 80 cm.(adj, micro pot.) 10 a 80 cm adj. a 24cm de fabrica

Digital 8 bits

Lgica 1 bit

GP2D-12 GP2D-15

Analgica (0-3V) Lgica 1 bit Analgica (0-3V)

GP2D-120 4 a 30 cm.

Usos: Debido a su gran rango de medida este sensor es adecuado para detectar obstculos reflectantes como paredes. Usado en robots de exploradores para los de laberintos entre otros. Ideas y mejoras: Debido a su gran directividad se puede montar un sensor GPD2 en un servo y as tener un radar de IR cubriendo de esta manera un radio de 180 aproximadamente.

8. DESCRIPCIN DEL TRABAJO a. Estructura.

Pgina 11

ROBOT MVIL DIFUSO

Figura 6 Cuerpo del robot

Las caractersticas de nuestro robot, como se puede observar en la figura 4, son las siguientes: A. Base rectangular de 20x30 cm.* B. 2 paredes laterales de 20x30 cm.* C. Tapa trasera.* D. Tapa frontal.* E. Rampa.* F. Soporte para sensor.* G. Pala de hule. H. Tapa Motores.* I. Piso para circuitera.* J. Dos llantas con motores independientes, encargados de la traccin y la direccin. K. Dos llantas sin motor. L. Tapa superior.* *Lamina de aluminio calibre 18.

b. Mecanismo de desplazamiento.

Pgina 12

ROBOT MVIL DIFUSO

Figura 7 Mecanismo de desplazamiento

Este mecanismo es muy simple, consta de 4 llantas, las llantas C y D estn montadas sobre un eje y tienen rodamientos para asegurar su libertad de movimiento. Las llantas A y B estn fijas a los ejes de su respectivo motor, y a su vez los motores estn sujetados a la base del robot. Al tener este tipo de configuracin esperamos tres casos: Movimientos en lnea recta: aqu los motores A y B deben avanzar en el mismo sentido y a la misma velocidad y Vuelta a la derecha: cuando se necesita que el robot cambie de direccin hacia la derecha entonces el motor A debe girar en sentido horario y el motor B en sentido antihorario o permanecer detenido. y Vuelta a la izquierda: cuando se necesita que el robot cambie de direccin hacia la izquierda entonces el motor B debe girar en sentido horario y el motor A en sentido antihorario o permanecer detenido.

y

8.2.1. Control de velocidad y direccin del mvil

Pgina 13

ROBOT MVIL DIFUSO

Este control se implement mediante el uso de circuitos lgicos combinacionales y secuenciales, los cuales se disearon a base de los requerimientos de nuestro proyecto para obtener un control con respecto a las distancias sensadas. Nuestro circuito de control fue diseado de la siguiente manera:

Este circuito recibe la respuesta de los sensores obtenindolos como datos de 8 bits, recibindolos en el AVR, habiendo pasado anteriormente por los convertidores analgicodigital, con estos dos datos se realiza el control difuso obteniendo as del AVR la velocidad y direccin del carro, que se expresan en las variables: F, I, D, R y vel (para revisar el programa utilizado para este control difuso revisar el Apndice 1), estos datos se dirigen al CPLD que transforma le velocidad en PWM y la direccin se maneja con las variables w, x, y, z; para la realizacin del PWM se utiliza un integrado n555, estos procesos se realizan continuamente, al llegar la seal de los objetos el CPLD le manda al AVR un dato con la posicin en que se encuentra el servo para que se ubique el carro completo. Ya que se Pgina 14

ROBOT MVIL DIFUSO

ubic se inicia la secuencia para la recoleccin del objeto, seccin 8.3, que ya se encuentra precargada. Y as una vez recolectada la basura se reinicia el proceso. Para el movimiento del servo se utiliza el otro n555, del cual se genera otro PWM distinto al anterior con ayuda del CPLD.

c. Mecanismo recolector de objetos.

Figura 8 Mecanismo recolector de objetos

Es mecanismo fue diseado de tal forma que se pudiera transmitir un buen torque a la pala y de esta manera nuestro robot tenga la posibilidad de recolectar objetos de mayor peso. El funcionamiento es simple, se trata de un motor acoplado a un moto-reductor del tipo engrane-tornillo sin fin con una reduccin de 50 a 1, en el eje del engrane (eje conductor) se monto un mecanismo cadena-pin, donde el eje conducido es el eje donde est montada la pala que recolectara los objetos. Finalmente al activar el motor se transmite el movimiento a la pala y cuando hay un objeto debajo sta lo empuja por la rampa hasta una altura tal que el objeto cae en el depsito. La secuencia para recolectar el objeto y regresar a su posicin fue implementada en un C AVR y la conexin se hizo como se muestra en la siguiente figura

Pgina 15

ROBOT MVIL DIFUSO

+

220

220

GND

L2 3D

Figura 9 Secuencia para la pala

El funcionamiento es el siguiente: Cuando se detecta objeto y est en la posicin donde la pala lo pueda recoger entonces se activa el motor hacia un sentido aproximadamente 3 segundos con esto aseguramos que el objeto entra en el depsito; posteriormente el motor gira otros 3 segundos, en sentido opuesto colocando la pala en su posicin inicial.

d. Especificacin de los objetos a recolectar.Se tiene planeado que el Robot sea capaz de recolectar objetos hasta de un peso de 80 g. siempre y cuando su tamao no sea superior al de la ranura de entrada al depsito que es aproximadamente 3 cm. Los objetos elegidos son bolitas o cubos de unicel, color blanco, de 2 cm de dimetro.

e. Mecanismo para el sensado:

0

OUT3 GND OUT

Con o A R

EN2 N3 N

N N2 EN

SS

2

R

R

+

+

8 S OUT OUT2

U23

Pgina 16

ROBOT MVIL DIFUSO

Figura 10 Mecanismo de sensado

Se dise un mecanismo que se utilizar para detectar los objetos y las paredes, la finalidad de utilizar un servomotor es el control de la direccin hacia donde el robot debe avanzar. Con este mecanismo un sensor realizar la revisin del rea en busca de basura y otro detectar la distancia hacia la pared, movindose 180 de derecha a izquierda y viceversa, esto con el fin de obtener las lecturas necesarias para el control de direccin y velocidad. Para controlar la posicin del servoradar implementamos un PWM en un CPLD el cual trabaja con 4 datos: CLK: es una seal de reloj calculada a 6 KHz.. RESET: se encarga de poner el servomotor en la posicin inicial. DETECTA: mantiene al servomotor en la posicin donde el sensor ha detectado un objeto, este dato proviene del C. y POSICIN: es un vector de cuatro bits, el cual va cambiando su valor desde 0 hasta F y viceversa, con el cual se va modificando el ancho de pulso y en consecuencia permite tener las diferentes posiciones del servomotor.

y y y

8.5.1. Justificacin de los sensoresPgina 17

ROBOT MVIL DIFUSO

El robot emplea 3 sensores pticos, 2 sensores SHARP GP2Y0A21YK0F y un modulo de radiofrecuencia. Este ltimo sensor se encarga de activar la alimentacin de los circuitos con los que funciona el robot, teniendo su propio circuito de control por separado, consumiendo de esta forma una mnima cantidad de tensin hasta que se active el robot por control remoto. Se eligi el modulo de radiofrecuencia principalmente por su alcance que llega a una distancia de transmisin lo bastante amplia. Mientras que los sensores SHARP se usaran como sensores de distancia, la ventaja de este sensor de distancia tampoco se ve afectado de manera brusca por cambios en la luz ambiental, a diferencia de otros sensores de distancia, como los QRD; este sensor logra detectar objetos a una distancia de 80 cm, no importando si la superficie es de un color u otro. Dentro del robot un sensor SHARP se encargara de sensar la distancia que hay entre las paredes y el robot, mientras que el segundo sensor SHARP verificara si hay un cambio de distancia brusco al nivel del suelo, seal de que hay una pelota enfrente del robot.

8.5.2. Acondicionamiento de los sensoresPara acondicionar la seal del sensor GP2Y0A21YK, utilizamos un amplificador operacional en configuracin de Amplificador no inversor. El diagrama de conexin de la configuracin es el siguiente:

Figura 11 Acondicionamiento GP2Y0A21YK

La ganancia la calculamos de la siguiente manera:

Pgina 18

ROBOT MVIL DIFUSO

Sabemos que el rango de tensin de salida del sensor es de 0-3.3 V y lo queremos convertir a un rango de 0-5V para utilizar de manera ms eficiente el ADC, por lo que la ganancia del amplificador queda determinada por:

Y por otra parte tambin sabemos que:

Por lo que la relacin de

queda:

Usando RF=1K y R1 un potencimetro de 5K, ajustamos la ganancia del amplificador de tal forma que al tener Vi = 3.3V la tensin de salida fuera Vo= 5V.

f. Justificacin del uso de los motores.Los motores A y B se eligieron porque tienen un muy buen torque como para mover toda la estructura que aproximadamente pesar 5 Kg. El motor C se eligi porque se adecuaba perfectamente al espacio que se dispona y resulto tener el torque adecuado para levantar colocaran en el rea de trabajo. EL servomotor como ya fue mencionado, se utilizar para tener un control de la direccin hacia la cual debe dirigirse el robot para recolectar los objetos. Las especificaciones y mediciones de los motores elegidos se muestran posteriormente en los resultados. la pala junto con los objetos que se

Pgina 19

ROBOT MVIL DIFUSO

g. Fuentes de alimentacin.Las fuentes utilizadas se eligieron en base a los requerimientos mnimos de nuestros actuadores para romper inercia con y sin carga, y para lograr hacerlo ir hacia adelante el prototipo con un peso promedio de 4 Kg, que es lo estimado tomando en cuenta el chasis, circuitera, motores y bateras. Se utilizarn: 1 bateras de 12 V a 2 A, para motores A y B. 2 bateras de 5 V a 600 mA, para motor C, servomotor y C.

h. rea de trabajoPara el rea de trabajo de este proyecto se realiz una base de 1,5 x 1,5 m, dividido en 4 partes de 0,75 x 0,75 m, de madera de 6 mm de espesor, de color negro, para tener contraste con las bolitas de color blanco. El rea de trabajo incluye los rangos en los que el robot no trabajara, estos rangos son de 20 cm; esto nos da un rea lo suficientemente grande como para que el robot se desplace fcilmente tanto de frente como hacia los lados. Se eligi el color negro para el rea de trabajo debido a que el sensor detecta mejor el blanco, si es que hay una pelota, el sensor detectara un cambio ms grande entre uno y otro.

9. RESULTADOS a. .Controlador difusoPgina 20

ROBOT MVIL DIFUSO

El algoritmo de control fue diseado con la herramienta interna de MATLAB FIS editor, para poder observar la superficie de control con facilidad, sin embargo al tener varios estados indefinidos las superficies tomaron formas extraas en estas regiones.

9.1.1

Identificacin de las variables de entrada y salida del

sistemaEntrada. y y y y Salida. y y Sentido de giro de los motores Velocidad de los motores Posicin de la pared respecto al mvil Distancia a la pared Posicin del objeto respecto al mvil Distancia al objeto

Valores lingsticos de las variables de entrada. Posicin de la pared respeto al mvil. y y y Derecha Frente Izquierda

Distancia a la pared. y y y Cerca Medio Lejos

Posicin del objeto respecto al mvil. y y y Derecha Frente Izquierda

Distancia al objeto. Pgina 21

ROBOT MVIL DIFUSO

y y

Si hay No hay

Valores lingsticos de las variables de salida Sentido de giro de los motores. y y y y Frente Reversa Izquierda Derecha

Velocidad de los motores. y y y Low Media Fast

9.1.2

Caracterizacin de universo para las variables difusas. posicin de la pared

Estos nmeros simbolizan diferentes posiciones en las que se encuentra el sensor a lo largo de su trayectoria. La figura 16 muestra como se encuentran distribuidas las posiciones.

Figura 16 Giro del Servomotor

Pgina 22

ROBOT MVIL DIFUSO

Distancia a la pared Posicin del objeto Distancia al objeto Sentido de giro Velocidad de giro

9.2.2

Programacin de la etapa de fusificacin de valores

clear all; close all; clc %control del robot movil difuso paso=1; %--------- Entradas -----------------------------%POSICION PARED pp=0:paso:8; pd=trapmf(pp,[0 0 2 3]) 0.00001;%derecha pf=trapmf(pp,[2 3 5 6]) 0.00001;%frente pi=trapmf(pp,[5 6 8 8]) 0.00001;%izquierda %DISTANCIA PARED dp=0:paso:255; pl=trapmf(dp,[0 0 27 34]) 0.00001;%lejos pm=trapmf(dp,[27 34 75 110]) 0.00001;%media pc=trapmf(dp,[75 110 255 255]) 0.00001;%cerca %POSICION OBJETO po=0:paso:8; od=trapmf(po,[0 0 1 2]) 0.00001;%derecha of=trapmf(po,[1 2 6 7]) 0.00001;%frente oi=trapmf(po,[6 7 8 8]) 0.00001;%izquierda Pgina 23

ROBOT MVIL DIFUSO

%HAY/NO HAY do=0:paso:255; nohay=trapmf(do,[0 0 100 110]) 0.00001;%objeto lejos sihay=trapmf(do,[100 110 255 255]) 0.00001;%objeto cerca %------------------Salidas---------------------------%Direccion dm=1:paso:8; F=trimf(do,[1 1 1]);%frente R=trimf(do,[2 2 2]);%reversa I=trimf(do,[4 4 4]);%izquierda D=trimf(do,[8 8 8]);%derecha %velocidad v=0:paso:15; low=trapmf(v,[0 0 3 4]);%lento med=trapmf(v,[3 4 10 11]);%media fast=trapmf(v,[10 11 15 15]);%rapida

Grfica 1 Distancia a la pared

Pgina 24

ROBOT MVIL DIFUSO

Grfica 2 Posicin del objeto respecto al robot mvil

Grfica 3 Distancia al objeto

Grfica 4 Funciones de membreca de salida

Pgina 25

ROBOT MVIL DIFUSO

Grfica 5 Sentido de giro de los motores

Grfica 6 Velocidad de giro de los motores

Reglas Difusas.Tabla 2 Cuando Si Hay un objeto dentro del alcance del robot mvil.Sensor de distancia a los objetos. Izquierda Cerca Posicin Del objeto Derecha Frente Izquierda Izquierda, LOW Medio Izquierda, LOW Lejos Izquierda, LOW Derecha, LOW Derecha, LOW Derecha, LOW Frente, LOW Frente, LOW Frente, LOW Cerca Derecha Medio Lejos Cerca Frente Medio Lejos

Pgina 26

ROBOT MVIL DIFUSO

Tabla 3 Cuando No Hay un objeto dentro del alcance del robot mvil.Sensor de distancia a la pared. Izquierda Cerca Posicin De la pared Derecha Frente Izquierda Derecha, Media Medio Frente, Media Lejos Frente, Fast Izquierda, Media Frente, Media Frente, Fast Izquierda, Media Frente, Media Frente, Fast Cerca Derecha Medio Lejos Cerca Frente Medio Lejos

Los recuadros que aparecen ms oscuros son estados imposibles, ya que los sensores se mueven al mismo tiempo y siempre apuntan en la misma direccin.

9.3

Caracterizacin elctrica de

los motores

Tabla 4 Motor A (llanta) R=1,8

Tensin 5V 7,5 V 9V

Corriente sin carga 1,3 A 1,35 A 1,16 A

Corriente con carga 1,5 A 1,6 A 1,9 A

Potencia 6,5 W 10,1 W 10,4 W

RPM 230 357 390

Torque 0,39 Kg 0,96 Kg 1,08 Kg

Tabla 5 Motor B (llanta) R=0,8

Tensin 5V 7,5 V 9V

Corriente sin carga 1,6 A 1,7 A 1,8 A

Corriente con carga 1,6 A 1,8 A 1,9 A Corriente sin carga

Potencia 8W 12,7 W 16,2 W Corriente con carga

RPM 229 360 437

Torque 0,48 Kg 1,22 Kg 1,88 Kg

Tabla 6 Motor C (pala) R=35

Tensin

Potencia

Pgina 27

ROBOT MVIL DIFUSO

5V 7,5 V 10 V 12 V

7,5 mA 9 mA 12,6 mA 16,2 mA

8,1 mA 10 mA 12,6 mA 16,3 mA

37,5 mW 67,5 mW 126 mW 194,4 mW

Tabla 7 Motor D (sensor) Servomotor

Tensin 4,8 V 6V

Velocidad 0,23 s/60 0,18 s/60

Torque 3,6 Kg 4 Kg

Clculos del Torque:

9.4

Caracterizacin elctrica de 9.4.1 Sensores SHARP

los sensores

A excepcin del rango de distancia y la tensin de salida, los cuales obtendremos en base a mediciones posteriores. El fabricante nos muestra los valores de operacin, los cuales no podemos comprobar nosotros con instrumentos comunes. SHARP GP2Y0A21YK0FTabla 8 Parmetros del SHARP GP2Y0A21YK0F

Parmetro Tensin de alimentacin Corriente de alimentacin Tensin de salida

Valor 4.5 V a 5.5 V 30 mA -0.3 V a 3.3 V

Nota rango recomendado corriente tpica

Temperatura de operacin -10 C a 60 C

Pgina 28

ROBOT MVIL DIFUSO

Rango de distancia

10 cm a 80 cm

Realizando mediciones con el sensor de distancia (GP2Y0A21YK0F) de 0 hasta 94 cm, obtuvimos la siguiente curva

Cdigo

dist=0:2:94; vo=[.03 2.16 2.81 3.32 3.29 2.72 2.28 1.97 1.73 1.55 1.42 1.3 1.21 1.11 1.03 0.97 0.91 0.85 0.8 0.76 0.72 0.68 0.64 0.61 0.58 0.56 0.54 0.52 0.49 0.47 0.44 .42 .41 .39 .37 .35 .31 .33 .29 .26 .24 .21 .18 .16 .11 .07 .05 .03]; plot(dist,vo),title('Caracterizacin de Sharp'),grid on xlabel('Distancia (cm)'),ylabel('Tensin (V)')

Caracteriz acin de S harp 3.5

3

2.5

V oltaje (V )

2

1.5

Grfica 71 0.5

Grfica 8

0

0

10

20

30

40 50 60 Distancia (cm )

70

80

90

100

Pgina 29

ROBOT MVIL DIFUSO

Comparndola con la curva que viene en el datasheet de este sensor, vemos que presenta el mismo comportamiento, pero esta curva nos permite obtener los rangos de tensin con cada valor de distancia. Como se vio en la curva del sensor nuestra tensin mxima solo llega a 3.3 V, si no se amplifica esta tensin, nuestro rango salida viene dado por: de variacin sera muy corto y desperdiciaramos varios bits del ADC, para corregir esto usamos un amplificador no inversor, cuya tensin de

Figura 17 Amplificador no inversor

Para tener a la salida una tensin de 5 V con una entrada de 3.3 V, tenemos que

Escogiendo valores comerciales

De esta manera la curva del sensor queda de la siguiente forma

Cdigo dist=0:2:94; vo=[.03 2.16 2.81 3.32 3.29 2.72 2.28 1.97 1.73 1.55 1.42 1.3 1.21 1.11 1.03 0.97 0.91 0.85 0.8 0.76 0.72 0.68 0.64 0.61 0.58 0.56 0.54 0.52 0.49 0.47 0.44 .42 .41 .39 .37 .35 .31 .33 .29 .26 .24 .21 .18 .16 .11 .07 .05 .03];

Pgina 30

ROBOT MVIL DIFUSO

vo=vo*(1 17.2/33); plot(dist,vo),title('Caracterizacin de Sharp'),grid on xlabel('Distancia (cm)'),ylabel('Tensin (V)')

6

5

4 ta e ( )$

3

2

1

0

0

10

20

30

40"

50 60 sta c a (c )#

Grfica 9

Como a la salida solo manejamos valores positivos, podemos usar el amplificador LM358, el cual puede operar con una sola fuente positiva. Esto nos conviene ya que no tendremos que usar fuentes negativas y solo empleamos un amplificador operacional. Para la conversin de analgico a digital usamos un ADC0804 el cual tiene una resolucin de 8 bits, con un tiempo de conversin de 100 s, suficiente para nuestra aplicacin. Las salidas del ADC van directo al C que contiene el controlador difuso, aunque la tensin analgica no est linealizado, dentro del C se definen rangos de operacin, de esta forma si el ADC muestra una salida de 8 bits que se encuentra dentro de alguno de los rangos del C, este podr determinar la accin a tomar.

Figura 18 Diagrama a bloques para el sensor SHARP

!

aracter z ac

e

% & ' $

ar

70

80

90

100

Pgina 31

ROBOT MVIL DIFUSO

9.4.2 Sensor de encendido y apagado del robotEl sistema de encendido de este proyecto es a distancia, utilizando un modulo de radiofrecuencia, donde un receptor recibe un pulso enviando al AVR un pulso que hace que se encienda el sistema completo. El sistema de encendido es simple ya que slo est conformado por un emisor y un receptor.

10

CONCLUSIONES

A lo largo del desarrollo de esta etapa del proyecto se lograron observar las caractersticas necesarias para el correcto funcionamiento de este, del mismo modo que es indispensable el conocimiento de las caractersticas de los actuadores, resistencias, corrientes y tensiones necesarias para romper la inercia y para lograr el movimiento con carga. Otro de los puntos que es importante tener en cuenta es el conocimiento de los dispositivos que se utilizaran y desarrollaran en las etapas posteriores, para hacer un correcto acondicionamiento de las estructuras, es decir, el espacio necesario para los circuitos, las caractersticas que debe cumplir el espacio de trabajo para el optimo funcionamiento de los sensores y para que este no intervenga con las caractersticas de los objetos a recolectar. La caracterizacin de los universos de discurso deben de lograr describir todos los posibles comportamientos que adoptara el mvil en cada situacin que se pueda presentar, as pues el correcto anlisis de las variables entrada salida es indispensable para el buen desarrollo de este proyecto.

11

APNDICES

1. Programa en VHDL para control del servomotor, velocidad y sentido de giro del mvil.-----------------------------------------------------------------------------------Programa que controla la velocidad y el sentido de giro de los motores --y la pocision del servoradar library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL;

Pgina 32

ROBOT MVIL DIFUSOuse IEEE.STD_LOGIC_UNSIGNED.ALL; entity control is Port ( clk : in STD_LOGIC;--6 KHz, generado con un NE555 astable clk1 : in STD_LOGIC;-- 1.5Hz clk2 : in STD_LOGIC;--6 KHz detecta : in STD_LOGIC;--indica si se detecto objeto o pared vel : in STD_LOGIC_VECTOR (1 downto 0);--velocidad del movil F: in std_logic;--avance hacia adelante R: in std_logic;--avance hacia atras I: in std_logic;--avanza a la izquierda D: in std_logic;--avanza a la derecha x : out std_logic;--x&y-- controlan la velocidad y sentido de un motor y : out std_logic; z : out std_logic;--z&w-- controlan la velocidad y sentido de un motor w : out std_logic; s : inout STD_LOGIC;--cambia el sentido de scaneo del servoradar q : inout STD_LOGIC_VECTOR (3 downto 0);--contador q1 : inout STD_LOGIC_VECTOR (3 downto 0);--contador ap : inout STD_LOGIC_VECTOR (3 downto 0);--manda el ancho de pulso, --interpretado como pocision del servoradar pwm : out STD_LOGIC;--PWM que controla al servoradar pwm1 : inout STD_LOGIC;--PWM para la velocidad de los motores reset : in STD_LOGIC);-- manda a 0 todas las salidas end control; architecture Behavioral of control is type estados is (s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,sA,sB,sD); signal presente, siguiente: estados; begin process(clk2) begin if (clk2'event and clk2 = '1') then presente ap