Vous êtes sur la page 1sur 17

Diseo de sistemas basados en microprocesador n

Librer de Control de Motores a

Anil Motilal Mahtani Mirchandani Jonathan Rodr guez Surez a

Universidad de Las Palmas de Gran Canaria

Indice de contenidos
1 Introduccin o 2 Marco terico o 2.1 Microcontrolador PIC16F84 . . 2.2 Controladora MSx84 . . . . . . 2.2.1 Introduccin . . . . . . . o 2.2.2 Caracter sticas generales 2.2.3 Fuente de alimentacin . o 2.2.4 El Microcontrolador . . 2.2.5 Driver L293B . . . . . . 2.2.6 Motores . . . . . . . . . 2.2.7 Sensores . . . . . . . . . 2 2 2 4 4 4 6 6 7 9 11 11 11 12 12 12 12 14 14 15 15 15 16 16

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

3 Desarrollo 3.1 Introduccin . . . . . . . . . . . . . . . . . . . . o 3.2 Funcin de Conguracin . . . . . . . . . . . . o o 3.3 Funcin de control del veh o culo . . . . . . . . . 3.3.1 Funcionamiento principal . . . . . . . . . 3.3.2 Decodicacin del parmetro de entrada o a 3.3.3 Control de velocidad y tiempo . . . . . . 3.4 Funcion principal de seguimiento de linea . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

4 Descripcin de resultados o 4.1 Pruebas realizadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.1 Secuencia de pasos . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.2 Seguimiento de linea . . . . . . . . . . . . . . . . . . . . . . . . . 5 Conclusiones

Librer de Control de Motores a 1 Introduccin o

El trabajo desarrollado consiste en la programacin y prueba de una librer para el o a uso de motores en la controladora MSx84, para el funcionamiento de la misma ha sido necesario el uso de un microcontrolador PIC16F84 en el cual reside la librer a. El desarrollo de la librer permite controlar de manera funcional dos motores paso a a paso de forma que el programador no necesite tener ningn tipo de conocimiento u acerca del dispositivo. Una vez desarrollado el trabajo se realizaron una serie de pruebas mediante la inclusin de sensores de linea en el veh o culo. Una vez concluido el trabajo desarrollado podemos decir que contamos ya con una librer que permite el uso del a veh culo de un modo sencillo y amigable para el programador. En este documento se explica el funcionamiento bsico del microcontrolador PIC16F84, tambin se explican a e en detalle las caracter sticas de la controladora MSx84 adems de su funcionamiento a bsico. Posteriormente desarrollamos la solucin adoptada y explicamos los algoritmos a o utilizados. Finalmente hablaremos de las pruebas realizadas.

2
2.1

Marco terico o
Microcontrolador PIC16F84

El microcontrolador PIC16F84 es un microcontrolador de 8 bits. Dispone de 18 pines y un repertorio de instrucciones RISC. Su estructura interna consta de: Memoria Flash de programa (1K x 14). Memoria EEPROM de datos (64 x 8). Memoria RAM (68 registros x 8). Un temporizador/contador (timer de 8 bits). Un divisor de frecuencia. Varios puertos de entrada-salida (13 pines en dos puertos, 5 pines el puerto A y 8 pines el puerto B). Manejo de interrupciones (de 4 fuentes). Perro guardin (watchdog). a Bajo consumo. Frecuencia de reloj externa mxima 10MHz. (Hasta 20MHz en nuevas versiones). a La frecuencia de reloj interna es un cuarto de la externa, lo que signica que con un reloj de 20Mhz, el reloj interno ser de 5Mhz y as pues se ejecutan 5 Millones a de Instrucciones por Segundo (5 MIPS) 2

No posee conversores analgicos-digital ni digital-analgicos. o o Pipe-line de 2 etapas, 1 para bsqueda de instruccin y otra para la ejecucin de u o o la instruccin (los saltos ocupan un ciclo ms). o a Repertorio de instrucciones reducido (RISC), con tan solo 30 instrucciones distintas. 4 tipos distintos de instrucciones, orientadas a byte, orientadas a bit, operacin o entre registros, de salto.

Nombre Pin Tipo Descripcin o OSC1/CLKIN I Entrada del cristal oscilador/Entrada de reloj externo OSC2/CLKOUT O Salida del reloj oscilador MCLR I/P RA0 I/O El PORTA es un puerto bidireccional RA1 I/O Puede ser utilizado como entrada de reloj para el Timer RA2 I/O RA3 I/O RA4/T0CKI I/O RB0/INT I/O RB0/INT permite interrupcion externa RB1 I/O RB2 I/O RB3 I/O RB4 I/O El PORTB es un puerto bidireccional RB5 I/O RB6 I/O RB7 I/O VSS P Tierra VDD P Positivo Legend: I= input O = output I/O = Input/Output P = power

A continuacin se muestra un diagrama con la conguracin interna del microcontroo o lador:

2.2
2.2.1

Controladora MSx84
Introduccin o

La tarjeta de control MSx84 de Microsystems Engineering es una tarjeta autnoma de o propsito general y bajo coste que, controlada por un PIC 16x84, es capaz de controlar o el estado de cinco sensores de entrada y gobernar dos motores DC o uno paso a paso (PAP) de salida, en funcin del software de aplicacin grabado en el microcontrolado o o 2.2.2 Caracter sticas generales

Las caracter sticas ms notables acerca de la controladora MSx84 son las siguientes: a Tarjeta autnoma de bajo coste y dimensiones reducidas (80 x 100 mm). o Alimentacin de 15VAC mediante transformador de red o bien mediante bater o as de 6, 9 o 12VDC, pudiendo en este ultimo caso utilizarse una bater de 12VDC de a plomo recargable. Circuitos de recticacin, ltrado y estabilizacin de alimentacin incluidos en la o o o tarjeta. 4

Incluye circuito de carga para bater de 12VDC de plomo cido. as a Zcalo para microcontrolador PIC 16x84, circuito oscilador y pulsador de RESET o incluido en la tarjeta. Conectores y circuitos para adaptacin de hasta 5 sensores o dispositivos de entrada. o Driver para el accionamiento de dos motores DC o uno paso a paso (PAP). Tarjeta autnoma de bajo coste y dimensiones reducidas (80 x 100 mm). o Alimentacin de 15VAC mediante transformador de red o bien mediante bater o as de 6, 9 o 12VDC, pudiendo en este ultimo caso utilizarse una bater de 12VDC de a plomo recargable. Circuitos de recticacin, ltrado y estabilizacin de alimentacin incluidos en la o o o tarjeta. Incluye circuito de carga para bater de 12VDC de plomo cido. as a Zcalo para microcontrolador PIC 16x84, circuito oscilador y pulsador de RESET o incluido en la tarjeta. Conectores y circuitos para adaptacin de hasta 5 sensores o dispositivos de entrada. o Driver para el accionamiento de dos motores DC o uno paso a paso (PAP). MSx84 Manual del Usuario Interruptor ON/OFF y bornas para la conexin tanto de los motores como para la o bater externa. a Mediante un jumper se puede seleccionar la tensin aplicada a los motores. Esta o puede ser de +5VDC o bien de +12VDC o la tensin de la bater externa. o a Conjunto de 9 DIP-SWITCH que permiten habilitar o no cada uno de los sensores de entrada as como las salidas a los motores. De esta forma se puede dejar libres aquellas l neas del PIC asociadas a los sensores y motores que no se vayan a utilizar. Conector de expansin PIC-BUS compatible con la tarjeta PIC Trainer de Microsyso tems Engineering. A travs de l se obtienen todas las seales del PIC, pudindose e e n e de esta forma modicar o aadir nuevos perifricos. n e El PIC insertado sobre la tarjeta MSx84 se puede grabar directamente con el sistema PIC Trainer mediante el cable de adaptacin al PIC- BUS incluido. o

2.2.3

Fuente de alimentacin o

Esta integrada en la propia placa MSx84 y ofrece diferentes posibilidades de trabajo.

Toda la electrnica de control, incluido el propio microcontrolador PIC 16x84, trabao jan con una VCC de +5 V. Esta tensin se puede obtener a partir de una tensin alterna o o de 12VAC o bien de un conjunto de pilas o bater as. Mediante el conector J8 se introduce una tensin alterna de 12VAC procedente de o un transformador (no incluido). El puente recticador D1 junto con C1 se encarga de recticarla y ltrarla para obtener una tensin continua de unos 21VDC. Esta se estabiliza o a unos 13 VDC gracias al regulador U4 (7812) y los diodos D2-D5. El transformador puede ser el mismo que se emplea en la PIC Trainer. El interruptor SW3 de ON/OFF aplica esa tensin al controlador de motores (+VBAT) o y por otra parte al regulador U5 (7805). Por la patilla 3 de U5 se obtiene la tensin o +VCC de 5 VDC, que se aplica al resto del circuito. El led D6 pilota la presencia de dicha tensin. o Otra posibilidad es aplicar una tensin continua procedente de una bater a travs del o a e conector J5, prestando atencin a su polaridad. Al accionarse el interruptor ON/OFF o SW3 dicha tensin es la que se aplica al controlador de motores (+VBAT) y la que o permite obtener los +5VDC de VCC gracias al regulador U5. 2.2.4 El Microcontrolador

A continuacin se muestran las conexiones del microcontrolador PIC 16x84. Es el corazn o o de la tarjeta MSx84. Segn el software de aplicacin grabado en su interior por el usuario, u o se podrn gestionar los distintos sensores de entrada as como los dispositivos de salida a segn los distintos criterios o algoritmos de dicha aplicacin. u o

El cristal Y1 junto con los condensadores C7 y C8 generan la frecuencia de trabajo de 4MHz del microcontrolador PIC. Variando el valor de estos componentes se puede alterar dicha velocidad segn las necesidades del usuario. Consultar las especicaciones u tcnicas de Microchip para seleccionar las diferentes frecuencias. e El circuito de RESET est formado por el pulsador SW2 y la resistencia R11. Esto a permite la inicializacin manual del sistema por parte del usuario. o El conector PIC-BUS es compatible pin a pin con el del sistema PIC Trainer de Microsystems Engineering. A travs de l, todas las seales del PIC estn a disposicin e e n a o del usuario. Esto permitir conectar y/o aadir otro tipo de perifricos distintos a los a n e que soporta la tarjeta MSx84. Igual de importante es el echo de que gracias al PIC-BUS y el cable de conexin o incluido, es posible grabar el PIC 16x84 ubicado en la tarjeta MSx84 mediante el sistema PIC Trainer, as como aprovechar y hacer uso tanto de los perifricos de este ultimo como e de todo el software de grabacin. Todo ello sin necesidad de extraer el PIC 16x84 de la o tarjeta MSx84. 2.2.5 Driver L293B

La tarjeta MSx84 dispone de un driver del tipo push-pull de 4 canales integrados sobre el chip L293B de SGS-THOMSON y especialmente indicado para activar cargas de elevado consumo (p.e. motores de DC). Las caracter sticas ms relevantes son: a Corriente de salida de 1 A por canal. Corriente de salida de pico de 2 A por canal 7

Seal para la habilitacin de las salidas n o Alta inmunidad al ruido Alimentacin para las cargas separada de la alimentacin de control. o o Proteccin contra sobre temperaturas. o El L293B es un driver de 4 canales capaz de proporcionar una corriente de salida de hasta 1 A por canal. Cada canal es controlado por seales de entrada compatibles TTL n y cada pareja de canales dispone de una seal de habilitacin que desconecta las salidas n o de los mismos. Dispone de una patilla para la alimentacin de las cargas que se estn controlando, o a de forma que dicha alimentacin es independiente de la lgica de control. o o Esquema Pin N 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Nombre Descripcin o EN1 Habilitacin de los canales 1 y 2 o IN1 Entrada del canal 1 OUT Salida del canal 1 GND Tierra de alimentacin o GND Tierra de alimentacin o OUT2 Salida del canal 2 IN2 Entrada del canal 2 VDD Alimentacin de las cargas o EN2 Habilitacin de los canales 3 y 4 o IN3 Entrada del canal 3 OUT3 Salida del canal 3 GND Tierra de alimentacin o GND Tierra de alimentacin o OUT4 Salida del canal 4 IN4 Entrada del canal 4 VCC Alimentacin de +5VDC o

2.2.6

Motores

El esquema siguiente muestra el principio de funcionamiento de un circuito de control para motores DC conocido como puente en H

Los 5 interruptores emulan a sendos transistores de conmutacin o drivers. El de o ON/OFF se activa, cerrando circuito con tierra, mediante una seal que se puede conn siderar como seal de habilitacin. Estando desconectada, el motor queda sin tensin. n o o El motor puede girar libremente. El accionamiento del motor se realiza activando los interruptores por parejas. As al , activar I1 e I3, al motor le llega una tensin cuya polaridad estar a la derecha y Vdd a o a la izquierda. Esto producir el giro en un sentido. Activando la pareja de interruptores a I2 e I4, la tensin aplicada adquiere la polaridad opuesta por lo que el giro se realizar o a en sentido contrario. Naturalmente nunca debern estar ambas parejas activadas pues a se producir un cortocircuito en la alimentacin. a o Empleando dos de los cuatro drivers que posee el circuito L293B se puede realizar un sistema que accione el motor y lo haga girar en ambos sentidos. La gura siguiente muestra el empleo del circuito L293B en la tarjeta MSx84. Gracias a l se pueden gobernar dos motores de corriente continua (DC) o bien uno paso a paso e (PAP).

La seal RA0 del PIC va a parar, a travs del switch 6, a la seal IN1 y, mediante el n e n inversor U1F, a la seal IN2 del L293B. Esta seal gobierna las salidas OUT1 y OUT2 n n que controlan el motor M1. Segn su nivel lgico, las salidas OUT1 y OUT2 aplicarn u o a una determinada polaridad al motor, hacindolo girar en un sentido u otro. e La misma explicacin sirve respecto a la seal RA1 del PIC. En este caso van a parar o n a IN3 e IN4 que gobiernan OUT3 y OUT4 y estas a su vez al motor M2. as seales RA2 y RA3 del PIC quedan conectadas con las entradas de habilitacin n o EN1 y EN2 del circuito L293B. Con ellas se consigue habilitar o no a cualquiera de los dos motores M1 y M2. Mediante el Jumper JP1 se selecciona la tensin con la que funcionarn los motores. o a Esta puede ser +VCC de +5V que se obtienen del circuito de estabilizacin general del o sistema, o bien +VBAT, que es de +13V si se obtienen desde la fuente de alimentacin o o dependiente de la tensin externa aplicada mediante bater o as. La siguiente tabla de la verdad sintetiza las diferentes combinaciones que, un software de aplicacin, puede sacar por las l o neas RA0-RA3 del PIC. RA3 RA2 RA1 0 0 X 0 1 X 0 1 X 1 0 0 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 RA0 X 0 1 X X 0 1 0 1 Descripcion Ambos motores desconectados M1 en ON, giro horario. M2 en OFF M1 en ON, giro anti horario. M2 en OFF M1 en OFF. M2 en ON, giro horario M1 en OFF. M2 en ON, giro anti horario M1 en ON, giro horario. M2 en ON, giro horario M1 en ON, giro anti horario. M2 en ON, giro horario M1 en ON, giro horario. M2 en ON, giro anti horario M1 en ON, giro anti horario. M2 en ON, giro antihorario

Finalmente, los switches 6, 7, 8 y 9 de SW1 permiten, al igual que en el caso de los sensores de entrada ya estudiados, desconectar las seales RA0-RA3 del driver de n motores L293B. De esta forma, aquellas aplicaciones que no requieran el empleo de dicho driver, puede utilizar esas seales para controlar otro tipo de perifricos no contemplados n e 10

en la tarjeta MSx84. Se recuerda que todas las seales del PIC estn disponibles en el n a conector PIC-BUS. 2.2.7 Sensores

Los sensores consisten en dispositivos que contiene un diodo emisor de infrarrojos y un foto transistor que detecta la presencia o ausencia de los mismos.

Este tipo de sensores es especialmente util para la deteccin de objetos a distancia, o distincin de tonos y colores, encoders para motores, etc., sin que haya rozamientos ni o desgastes mecnicos. Presentan una notable velocidad de respuesta que permite medir a seales de entrada de transiciones rpidas y de frecuencias elevadas as como un total n a aislamiento elctrico entre el perifrico y el circuito de control (el microcontrolador). De e e esta forma, dicho circuito queda protegido contra picos de sobre tensin provocados por o un defectuoso funcionamiento del perifrico controlado. e El uso que le hemos dado a estos sensores en nuestro trabajo consiste en la integracin o de dos en la parte delantera del veh culo con el objetivo de seguir una linea negra sobre un fondo blanco.Cuando la luz del emisor coincida con el tono negro, ser absorbida por a ste. De esta forma el foto transistor receptor no recibe luz y dar un nivel lgico 0. Por e a o otra parte, cuando la luz del led emisor incida sobre las marcas blancas, ser reejada y a detectada por el receptor, generndose un nivel lgico 1. Se obtiene as una seal digital a o n que transita de nivel 0 a nivel 1 segn los tonos negros y blancos que pasen frente al u sensor conforme se va desplazando.

3
3.1

Desarrollo
Introduccin o

El trabajo desarrollado a partir de los conocimientos adquiridos consiste en una librer a para el correcto manejo de los motores . La librer comprende dos funcionalidad a bsicas, en primera instancia permite preparar el veh a culo con la funcin de conguo racin, lo segunda funcionalidad consiste en, mediante un parmetro de entrada, generar o a un movimiento efectivo a una cierta velocidad durante un tiempo nito.

11

3.2

Funcin de Conguracin o o

La funcin de conguracin prepara los puertos de modo que el puerto A se convierte o o en el puerto de salida y el puerto B en el puerto principal de entrada. El cdigo de la o funcin es el siguiente: o GLOBAL C o n f i g u r a c i o n movlw 0 movwf PORTA ; D e s a c t i v a l a t c h de s a l i d a de PORTA b s f STATUS, RP0 ; S e l e c c i o n a p \ a g i n a 1 movlw 0 movwf PORTA ; Puerta A como s a l i d a movlw 0 x f f movwf PORTB ; Puerta B como e n t r a d a b c f STATUS, RP0 ; S e l e c c i o n a p \ a g i n a 0 return END

3.3
3.3.1

Funcin de control del veh o culo


Funcionamiento principal

La funcin principal tiene como objetivo producir un movimiento a una velocidad cono stante durante un tiempo nito. Todos estos datos son pasados a la funcin mediante el o registro W. Una vez hecha la llamada a la funcin, se decodicar el parmetro pasado o a a en el W y se proceder a ejecutar la accin requerida. El parmetro de entrada tendr a o a a el siguiente formato: Bits 0-1 Velocidad Bits 2-4 Movimiento Bits 4-7 Tiempo

Por tanto tenemos 4 velocidades distintas, 8 movimientos distintos y nalmente 8 tiempos. El tiempo obtenido a travs del parmetro de entrada se corresponde con e a octavos de segundo, por tanto una entrada de 111 en los bits de tiempo implicar la a ejecucin de la funcin durante un segundo completo y la entrada 000 implicar un octavo o o a de segundo. Los movimientos que se obtienen mediante el parmetro se corresponden a con las posibles combinaciones de movimientos entre los motores. 3.3.2 Decodicacin del parmetro de entrada o a

El parmetro de entrada es obtenido por la funcin de la librer atravs del registro W, el a o a e usuario debe seguir el protocolo indicado para el correcto funcionamiento del dispositivo. El formato que ha de tener, como ya dijimos, es el siguiente: Bits 0-1 Velocidad Bits 2-4 Movimiento Bits 4-7 Tiempo

12

Decodicacin de la velocidad o La velocidad viene dada por los dos bits ms signcativos del parmetro de entrada. a a Las posibles velocidades que se derivan de este protocolo son las siguientes: Clave Velocidad 00 Parado 01 Lento 10 Medio 11 Alto El valor de la velocidad obtenido mediante el parmetro de entrada ser utilizado a a para determinar el funcionamiento interno de una serie de bucles que controlan el movimiento de los motores. Decodicacin del tiempo o El tiempo se obtiene mediante la decodicacin de los 3 bits menos signicativos o del parmetro de entrada. a El tiempo en nuestra funcin corresponde unicamente con octavos de segundo, esto o quiere decir que podemos ejecutar desde 1 octavo de segundo hasta 1 segundo un movimiento dado a una cierta velocidad. La decisin de la ejecucin en octavos de o o segundo viene dada por la necesidad, en ciertos casos, de obtener movimientos lo ms precisos posibles para llegar a grados con un error aceptable. a La cadena de bits de tiempo en el parmetro adopta valores entre 0 y 7, a este valor a se le suma 1 y se convierte en una variable de bucle, donde el interior del bucle se ejecutar un octavo de segundo durante el nmero de octavos de segundos dado a u por el usuario. Decodicacin del movimiento o Los 3 bits de movimiento correspondientes del parmetro deben seguir un verdadero a proceso de decodicacin debido a que el control del veh o culo necesita una entrada de 4 bits. La decodicacin sigue la siguiente tabla: o Movimiento 000 001 010 011 100 101 110 111 Port A 0100 0101 1000 1010 1100 1101 1110 1111 Descripcin o M1 en ON, giro horario. M2 en OFF M1 en ON, giro anti horario. M2 en OFF M1 en OFF. M2 en ON, giro horario M1 en OFF. M2 en ON, giro anti horario M1 en ON, giro horario. M2 en ON, giro horario M1 en ON, giro anti horario. M2 en ON, giro horario M1 en ON, giro horario. M2 en ON, giro anti horario M1 en ON, giro anti horario. M2 en ON, giro antihorario

Para este decodicado hay una funcin espec o ca llamada Dec dentro de la librer que se encarga de realizar las transformaciones necesarias de los 3 bits de a movimiento. 13

3.3.3

Control de velocidad y tiempo

El control de velocidad y tiempo es la base de todo el algoritmo. Su funcionamiento sigue el siguiente diagrama:

Primero se inicializan las variables del bucle exterior (T3) y posteriormente las variables de bucle interior(T1,T2). La variable T1 corresponder a un bucle en el que el a movimiento del coche ser el que el usuario ha asignado. La variable T2 corresponder a a a un bucle en el que el coche est parado. Las variables T1 y T2 corresponden en general a a un bucle de duracin muy corta en el que el veh o culo se mueve y se para de forma tan continua que es imperceptible pero tan discreta que permite una variacin en la velocidad. o La variable T3 corresponde a un bucle que se ejecuta tantas veces como haga falta para que multiplicado con el nmero de instrucciones del bucle interno llegue a 125000, lo cual u corresponder con un octavo de segundo. Finalmente el bucle ms externo ejecutar N a a a octavos de segundo segn haya denido el usuario. u La variacin en la velocidad se consigue mediante valores mayores o menores de o las variables T1 y T2 de modo que se ejecute mayor o menor tiempo la parada y el movimiento, la variable T3 es irrelevante puesto que su valor ser el necesario para que a junto con los valores de T1 y T2 se llegue a un octavo de segundo.

3.4

Funcion principal de seguimiento de linea

La funcin de seguimiento de linea no es ms que una funcin de prueba de las librer o a o as. Para esta prueba utilizamos dos sensores de linea que detectan las variaciones de blanco a negro. Cada sensor indica por donde se ha salido el coche de la linea poniendo su entrada a 0. Mediante cada uno de los dos sensores controlamos si se ha salido por la izquierda o por la derecha. Cuando el coche se sale por la izquierda se hace un giro anti-horario con el modor izquierda, cuando se sale por la derecha se hace un giro horario con el motor derecho. Cuando detecta que ambos sensores estn fuera de linea se para y nalmente a cuando detecta que ambos estn en linea sigue recto. a

14

El cdigo que realiza este pequeo procedimiento es el siguiente: o n P r i n c i p a l CODE inicio : arriba : c a l l Configuracion b t f s c PORTB, 0 goto xx1 goto xx0 b t f s c PORTB, 1 goto x11 goto x01 b t f s c PORTB, 1 goto x10 goto x00 movlw b 1 1 1 0 1 0 0 0 ; r e c t o goto Funcion movlw b 1 0 0 0 1 0 0 0 ; S e n s o r i z q u i e r d o Motor i z q u i e r d o goto Funcion movlw b 1 0 0 1 0 0 0 0 ; S e n s o r Derecho Motor Derecho goto Funcion movlw b 0 0 0 0 0 0 0 0 ; Parado c a l l Func goto a r r i b a

xx1 :

xx0 :

x11 : x10 : x01 : x00 : Funcion :

Descripcin de resultados o

Tanto la librer como las pruebas fueron realizadas para funcionar con 5 voltios, sin a embargo funciona perfectamente con un voltaje externo mayor, en tal caso las diferencias entre velocidades son menos notables.

4.1
4.1.1

Pruebas realizadas
Secuencia de pasos

La primera de las pruebas consiste en una secuencia de pasos en un determinado tiempo, el veh culo deb seguir esa secuencia dada y nalizar en el tiempo estimado. Los resula tados demostraron que la precisin alcanzada en el tiempo asociado a cada uno de las o velocidades era bastante alta y casi imperceptible. Velocidad 00 01 01 10 10 11 11 Movimiento 000 101 110 101 110 101 110 15 Tiempo 111 001 110 011 010 010 111

El tiempo estimado para esta prueba era de 4 segundos y efectivamente tras 16 ciclos el tiempo obtenido fueron exactamente 64 segundos. Podemos concluir pues que la precisin o en tiempo es real hasta los 64 segundos, ms all todo es un enigma. Las velocidades son a a notables y no crean ningn tipo de confusin. u o 4.1.2 Seguimiento de linea

La prueba de seguimiento de linea consist sencillamente en el seguimiento de una linea a negra sobre un fondo blanco, el resultado fue un correcto seguimiento de linea con una precisin aceptable y sin fallos en el recorrido. El resultado del seguimiento de linea o puede ser visto en la siguiente direccin: o http : / / e s . youtube . com/ u s e r / Anilm3

Conclusiones

Una vez terminado el trabajo y realizados los experimentos podemos conrmar que el uso de los microcontroladores pic16f84 para la realizacin y control de tareas sencillas con o una serie de entradas y salidas es ideal puesto que su repertorio de instrucciones permite una programacin sin demasiada dicultad. Adems los microcontroladores utilizados o a demostraron tener una gran abilidad puesto que en ningn caso hubo problemas. u Otro de los factores a destacar sobre el microcontrolador utilizado son las herramientas internas disponibles, tal como el perro guardin o el temporizador, que aun no habiendo a sido usadas para esta librer son herramientas que permiten la realizacin de un gran a o nmero de tareas de diferente ambito. u Otro de los aspectos destacables en la realizacin de este trabajo fue la aplicacin o o prctica de los conocimientos adquiridos a lo largo de la carrera en un objetivo f a sico, tangible y adems con un resultado util a largo plazo, adems de la posibilidad de su a a reutilizacin para le mejora, en un futuro, de las aplicaciones del veh o culo.

16

Vous aimerez peut-être aussi