|
En la figura 1 podemos apreciar el detalle de todos
los conectores de la TR-Brain, descripta en la edición
anterior. Si lo desea, puede bajar sin cargo de
nuestra web: www.webelectronica.com.ar, con la clave
brain, toda la información necesaria para
el montaje de esta controladora (circuito, lista
de materiales, diagrama de circuito impreso, modo
de uso, programas, etc.).
CN1 - Entrada de alimentación lógica
(VDD)
En este conector debe aplicarse una tensión
continua de entre 9 y 15V. La controladora consume
como máximo 140mA, pero debe tenerse en cuenta
que toda carga que sea alimentada desde la salida
VCC de CN4, estará agregando carga a la fuente
de alimentación VDD, por lo que deberá
tenerse en cuenta a la hora de seleccionar la fuente
de alimentación adecuada. En cualquier caso,
esta no debería superar 1A, ya que es la
corriente máxima tolerada por el regulador
de voltaje VR1.
CN2 - Entrada de alimentación de potencia
(VHH)
En este conector debe aplicarse una tensión
continua de entre 6 y 15V. Esta tensión es
quien alimentará los motores que se conecten
a las salidas MI (CN7) y MD (CN8) y a los dispositivos
(motores, relés, etc.) conectados a las salidas
HRxx (CN6). También se dispone de una salida
VHH en el conector CN4, esta salida se puede usar
en conjunto con las salidas HRxx o bien para alimentar
un circuito externo. La carga total que deberá
soportar la fuente de alimentación VHH está
dada por la suma de los dispositivos conectados
a MI , MD , HRxx y a VHH de CN4.
CN3 - Puerto de comunicación a PC
Este puerto permite conectarse a la PC mediante
el cable de comunicación adecuado (que también
se describió en la edición anterior
de Saber Electrónica). Una vez conectado
permite descargar los programas a la TR-Brain mediante
el software de programación ProgBrain del
cual hablaremos más adelante.
CN4 - Salida alimentación periféricos
En este conector se encuentran disponible salidas
para poder alimentar circuitos y dispositivos externos.
GND y VHH son salidas directas desde la entrada
de CN2, VHH sólo estará presente cuando
la controladora esté encendida (llave ON/OFF
en ON).
VCC es la salida regulada a 5v de la entrada VDD
de CN1. Esta salida se encuentra regulada mediante
VR1, el cual soporta una carga máxima de
1A. Cable aclarar que VR1 también provee
de alimentación a la lógica interna
de la TR-Brain, por lo que se recomienda no alimentar
cargas superiores a 800mA con esta salida.
CN5 - Puerto de Entrada/Salida TTL
En este puerto se encuentran presentes los pines
RB0 a RB5 y RA4 del PIC16F84A que posee incluido
en la TR-Brain.
La conexión entre el conector CN5 y el PIC
es directa, lo que significa que CN5 es una extensión
de las salidas RB0, RB1, RB2, RB3, RB4, RB5 y RA4
del PIC 16F84A.
Los pines de este puerto serán entradas o
salidas de acuerdo a cómo se programen los
mismos en el PIC.
RB0 a RB5 son entradas/salidas estándar TTL.
Cuando están configuradas como entradas,
éstas poseen la facilidad de habilitar vía
software una resistencia PullUp interna.
RA4 se comporta como un SmithTrigger al funcionar
como entrada y como Colector Abierto (open colector)
cuando se configura como salida. En este caso no
existe la posibilidad de habilitar un PullUp interno,
por lo cual se deberá tener en cuenta al
utilizar la misma.
CN6 - Puerto de Salida de Alta Potencia (500mA)
Este puerto permite el uso de los pines RB0, RB1,
RB2, RB3, RB4, RB5 y RA4 del PIC 16F84A para el
manejo de cargas de mayor consumo. Para esto se
vale del uso de un conjunto Darlington (ULN2003)
para amplificar las mismas.
El DipSwitch de 8 llaves ubicado justo arriba del
conector CN6 se utiliza para conectar o desconectar
las salidas del PIC mencionadas anteriormente al
conjunto Darlington.
De esta forma, si por ejemplo quisiéramos
utilizar RB0 y RB1 para manejar dos relés,
las llaves 1 y 2 del DipSwitc deberían ponerse
en posición ON, y las restantes en posición
OFF. Cabe aclarar que la llave 8 no tiene función
alguna y debe dejarse en OFF.
Es IMPORTANTE tener en cuenta que las salidas HRxx
del conector CN6 son el reflejo amplificado de las
salidas Rxx del conector CN5 (cuando la llave correspondiente
del DipSwitch está en ON). Asimismo, no sería
lógico ni recomendable que en el ejemplo
anterior, se intentase usar a RB0 como una entrada
si la llave 1 está en ON.
En la figura 2 se puede apreciar un ejemplo de conexión
de distintos dispositivos al conector CN6.
CN7 y CN8 - Salidas a Motor Izquierdo y Derecho
(MI y MD)
En CN7 y CN8 se pueden conectar motores de corriente
continua (Motor DC). Estos motores son controlados
mediante los H-Bridge BA6286 (IC4 - IC5 ), los cuales
permiten el manejo de motores de 3V a 15V con un
consumo máximo de 1A.
El arranque, parada y dirección de giro de
los motores MI y MD son controlados directamente
por el PIC 16F84A mediante RA0, RA1, RA2 y RA3.
La velocidad de giro de los motores puede ser regulada
independientemente mediante RV1 y RV2.
RV1 regula la velocidad del motor Izquierdo MI,
mientras que RV2 regula la velocidad del motor derecho
MD.
En la figura 3 podemos ver la forma correcta de
conectar un motor DC a los conectores CN7 y CN8.
CN9 - Entrada de sensores ópticos:
En esta entrada se conecta el sensor óptico
reflectivo doble provisto con la TR-Brain. Este
sensor es especialmente útil para diseñar
robots para seguimiento de líneas.
Botón de Reset:
En la figura 1 se puede ver la ubicación
correspondiente al botón de reset dentro
de la TR-Brain. El botón de reset se utiliza
para los casos en los que se desea reinicializar
la TR-Brain.
Esto puede ser debido a un error en el curso normal
del programa o bien simplemente porque el proyecto
así lo requiere. Al presionar y liberar el
botón de reset, la TR-Brain se comporta como
si hubiese sido apagada y vuelta a encender.
Cómo Programar la Controladora
Para programar la controladora que estamos describiendo,
es preciso contar con archivos expresados en lenguaje
hexadecimal, tal como estamos acostumbrados al trabajar
con microcontroladores PIC (si Ud. desea conocer
cómo se trabaja con los microcontroladores
PIC, puede bajar archivos sin cargo de nuestra web
con la clave aiwa15).
El archivo Hexadecimal (.hex) a grabar debe ser
formato Intel INHX8M. Este es el formato estándar
generado por la herramienta de desarrollo MPLAB
que puede descargarse gratis en el site de Microchip
(http://www.microchip.com)
Con el desarrollo de la controladora TR-Brain (vea
la edición anterior de Saber Electrónica)
hablamos del software de programación ProgBrain,
el cual le permitirá descargar sus programas
hacia el PIC de la controladora (sin quitarlo de
ella).
El programa puede bajarlo sin cargo, con la clave
dada al comienzo de esta nota.
En la figura 4 se puede observar la pantalla correspondiente
al ProgBrain.
ProgBrain le permitirá Programar, Verificar
y Borrar todos los programas que usted diseñe
dentro de la memoria flash del PIC16F84A, que es
parte de la controladora.
Para usar este programa, copie el archivo prograbrain.zip
en el disco rígido de su PC, descomprímalo
y luego ejecútelo.
Programar
ProgBrain verifica antes y después de grabar
cada dirección. De esta forma se evita grabar
el mismo dato ya grabado, prolongando la vida útil
de la Flash Memory. Y luego realiza la verificación
posterior al grabado para asegurarse que el dato
ha sido grabado adecuadamente.
Verificar
Como se dijo en el punto anterior, ProgBrain realiza
una verificación al grabar cada dirección,
por lo tanto no es necesario ejecutar este procedimiento
luego de cada programación. Esta función
es más bien útil cuando no se está
seguro de cuál es el programa que ha sido
o tiene cargado actualmente en el PIC.
Borrar
Esta función es solamente necesaria cuando
el PIC ha sido programado con código de protección
(CP). En estos casos la única forma de regrabar
el micro es efectuando un borrado general. Esta
función borra la memoria de programa y la
de datos.
Configurar
Esta opción le permite configurar las opciones
de trabajo del PIC, esta configuración es
grabada en el PIC al momento de la programación.
Las opciones posibles en el PIC16F84A son:
Tipo de oscilador: esta opción está
fija en XT (cristal) y no es posible modificarla,
debido a que la TR-Brain ha sido diseñada
utilizando como oscilador un cristal de 4MHz.
Power Up Timer: esta opción permite generar
un pequeño retraso cuando el PIC sale del
estado de reset. Es aconsejable poner esta opción
en ON para permitir estabilizar las tensiones antes
que el programa empiece a correr.
Watchdog Timer: Esta opción permite activar
el Watchdog Timer. Especialmente útil para
implementar sistemas de autoreset.
Code Protect: Esta opción permite activar
los bits de protección para evitar el copiado
del programa. Una vez que se han activado, el programa
grabado no puede ser leído y el PIC sólo
podrá ser regrabado si antes se ha efectuado
un borrado total. Esta opción no es muy útil
en la TR-Brain y es recomendable dejarla en OFF.
ProgBrain está preparado para leer la configuración
directamente desde el archivo Hexadecimal (.hex),
cuando ésta ha sido incluida en el código
fuente. Como estándar PicBrain está
seteado para tomar la configuración desde
el archivo. Es posible de seleccionar esta opción
para permitir establecer la configuración
manualmente.
Pasar a Modo RUN
Este comando pondrá a la controladora TR-Brain
en modo RUN, lo que hará que el programa
cargado en la TR-Brain comience a ejecutarse.
Esta funcionalidad es muy útil cuando se
desea verificar el programa sin tener que desconectar
la controladora del cable de comunicación.
Obviamente esta funcionalidad carece de sentido
cuando la controladora está instalada en
un robot que debe desplazarse.
Antes de utilizar esta opción asegúrese
que la llave RUN/PROG esté en modo RUN. Recuerde
apagar la controladora cada vez que cambie de posición
la llave RUN/PROG.
Programando Paso por Paso
A continuación se detalla paso a paso cómo
descargar el programa al PIC 16F84A de la TR-Brain:
1°) Seleccionar el puerto LPT a usar mediante
el menú desplegable correspondiente. Si por
algún motivo no se pudiese detectar el Hardware
de la controladora TR-Brain, aparecerá un
mensaje en rojo indicando el error y se bloquearán
todos los controles hasta tanto no se resuelva el
problema.
2°) Ingresar el archivo Hexadecimal (.hex) que
contiene el programa a descargar. Puede usarse el
botón BUSCAR para encontrar el archivo a
grabar o bien escribirlo directamente en la ventana.
3°) Pulsar el botón CONFIGURAR para establecer
la configuración deseada para el PIC (Watchdog,
Power Up Timer, etc). Todas las configuraciones
están por defecto, seteadas para detectar
estos parámetros directamente desde el archivo
hexadecimal (.hex), para que esto funcione se debieron
haber colocado previamente en el código fuente,
a fin de que el compilador genere el código
necesario en el archivo hexadecimal. En ese caso,
este punto puede ser salteado y pasar directamente
al punto siguiente.
La opción para seleccionar el tipo de oscilador
se encuentra deshabilitada debido a que la TR-Brain
utiliza un oscilador a cristal de 4MHz. Por lo tanto,
cualquier otra opción daría como resultado
un mal funcionamiento.
4°) Pulsar el botón PROGRAMAR para iniciar
la descarga hacia la controladora. Aparecerá
una ventana pidiendo confirmación de los
parámetros que se usarán en la programación
y, una vez aceptado, si todo ha funcionado correctamente,
aparecerá una ventana indicando la finalización
del proceso.
Durante la programación, los LED's verdes
correspondientes a RUN, Optico-I y Optico-D se encenderán
(algunos parpadeos son normales). La función
de estos LED's durante la programación es
la siguiente:
RUN = Indica VPP en alto (13,5V)
Optico-D = Indica señal DATA OK
Optico-I = Indica señal CLOCK OK
Creemos que con esta información ya está
en condiciones de realizar diferentes proyectos
con la controladora descripta. En este mismo número
damos como ejemplo, la predisposición (programación)
de esta controladora para el manejo de motores de
corriente continua, le recomendamos que realice
este proyecto. En próximas ediciones brindaremos
otros proyectos con el uso de esta controladora.
|