You are on page 1of 80

2 forros.

qxd:Maquetacin 1 15/01/14 12:46 Pgina 1

N 124
Director de la Coleccin Club Saber Electrnica
Ing. Horacio D. Vallejo
Jefe de Redaccin
Pablo M. Dodero
Club Saber Electrnica es una publicacin de Saber
Internacional SA de CV de Mxico y
Editorial Quark SRL de Argentina
Editor Responsable en Argentina y Mxico: Ing.
Horacio D. Vallejo
Administracin Mxico:
Patricia Rivero Rivero
Comercio Exterior Mxico:
Margarita Rivero Rivero
Director Club Saber Electrnica:
Jos Mara Nieves
Responsable de Atencin al Lector:
Alejandro A. Vallejo
Coordinador Internacional
Luis Alberto Castro Regalado
Publicidad
Argentina: 4301-8804 Mxico: 5839-5277

Internet: www.webelectronica.com.ar
Web Manager: Pablo balos

Club Saber Electrnica. Fecha de publicacin: julio 2014. Publicacin


mensual editada y publicada por Editorial Quark, Herrera 761 (1295)
Capital Federal, Argentina (005411-43018804), en conjunto con Saber
Internacional SA de CV, Av. Moctezuma N 2, Col. Sta. Agueda, Ecatepec de Morelos, Mxico (005255-58395277), con Certificado de Licitud del ttulo (en trmite). Distribucin en Mxico: REI SA de CV.
Distribucin en Argentina: Capital: Carlos Cancellaro e Hijos SH,
Gutenberg 3258 - Cap. 4301-4942 - Interior: Distribuidora Bertrn
S.A.C. Av. Vlez Srsfield 1950 - Cap. Distribucin en Uruguay:
Rodesol SA Ciudadela 1416 Montevideo, 901-1184 La Editorial
no se responsabiliza por el contenido de las notas firmadas. Todos
los productos o marcas que se mencionan son a los efectos de prestar un servicio al lector, y no entraan responsabilidad de nuestra
parte. Est prohibida la reproduccin total o parcial del material
contenido en esta revista, as como la industrializacin y/o comercializacin de los aparatos o ideas que aparecen en los mencionados
textos, bajo pena de sanciones legales, salvo mediante autorizacin
por escrito de la Editorial.
Revista Club Saber Electrnica, ISSN: 1668-6004

Introduccin: Qu es PICAXE . . . . . . . . . . . . . . . . . . . . . . . . . .3
Conociendo los microcontroladores de este sistema . . . . . . . . . .4
Utilitario gratuito para hacer programas . . . . . . . . . . . . . . . . . 6
Leccin 1: Primeras Experiencias con los PICAXE . . . . . . . .
Uso y prueba de leds: primeros programas en BASIC . . . . .
Uso y prueba de timbres y zumbadores . . . . . . . . . . . . . . .
Prueba y uso de sensores digitales . . . . . . . . . . . . . . . . . .
Prueba y uso de fotorresistencias . . . . . . . . . . . . . . . . . . . .
Ms sobre el sistema PICAXE . . . . . . . . . . . . . . . . . . . . . .
Entrenador PICAXE-18 . . . . . . . . . . . . . . . . . . . . . . . . . . .
Preparando el tablero tutorial . . . . . . . . . . . . . . . . . . . . . .
El software gratuito para trabajar con PICAXE . . . . . . . . . .
Ejecutando un programa de muestra . . . . . . . . . . . . . . . . .
Instrucciones para uso en Windows . . . . . . . . . . . . . . . . . .
Aprendiendo a hacer programas en BASIC . . . . . . . . . . . .
Utilizando el comando Symbol . . . . . . . . . . . . . . . . . . . . .
El circuito del entrenador PICAXE-18 . . . . . . . . . . . . . . .
Utilizando Bucles For...Next . . . . . . . . . . . . . . . . . . . . . . .
Controlando la velocidad de un motor . . . . . . . . . . . . . . . .
Uso de timbres y zumbadores electrnicos en
el sistema PICAXE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Uso de entradas con sensores digitales . . . . . . . . . . . . . . .
Uso de entradas con sensores analgicos . . . . . . . . . . . . .
Cmo se leen las entradas analgicas . . . . . . . . . . . . . . . .
Programacin por organigramas o diagramas de flujo . . . .
Dibujando organigramas . . . . . . . . . . . . . . . . . . . . . . . . .
Uniendo bloques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Simulacin de pantalla . . . . . . . . . . . . . . . . . . . . . . . . . . .
Convirtiendo organigramas . . . . . . . . . . . . . . . . . . . . . . .
Utilizando smbolos . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Guardando e imprimiendo organigramas . . . . . . . . . . . . .
Sistemas de nmeros . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Visualizando cifras analgicas en el display de 7 segmentos
Controlando motores paso a paso . . . . . . . . . . . . . . . . . . .
Subrutinas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
El circuito del entrenador . . . . . . . . . . . . . . . . . . . . . . . . .
Examen Mltiple choisse Leccin 1 . . . . . . . . . . . . . . . . . .
Leccin 2: Diseo y Construccin
de Proyectos con PICAXE . . . . . . . . . . . . . . . . . .
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . .
Kit entrenador para PICAXE 08 . . . . . . . . . . . . . .
Aprendiendo a programar la tarjeta
entrenadora 08 . . . . . . . . . . . . . . . . . . . . . . . . .
Juego de luces tipo auto fantstico . . . . . . . . . . .
Alarma para puertas y ventanas empleando
la tarjeta entrenadora PICAXE 08 . . . . . . . . . . . .
La Tarjeta entrenadora PICAXE 18 . . . . . . . . . . .
Aprendiendo a utilizar el ADC en la tarjeta
entrenadora del PICAXE 18 . . . . . . . . . . . . . . . .
Control de temperatura con la tarjeta entrenadora
PICAXE 18 . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Programa para desplegar nmeros BCD con la
tarjeta entrenadora del PICAXE 18 . . . . . . . . . . .
Cerradura electrnica empleando la tarjeta
entrenadora PICAXE 18 . . . . . . . . . . . . . . . . . . .
Examen Multiple choisse Leccin 2 . . . . . . . . . . .

. . . .9
. . . .9
. . .12
. . .13
. . .14
. . .16
. . .18
. . .18
. . .18
. . .19
. . .19
. . .20
. . .20
. . .21
. . .22
. . .22
. . .23
. . .23
. . .24
. . .25
. . .25
. . .27
. . .27
. . .27
. . .27
. . .28
. . .28
. . .28
. . .29
. . .29
. . .32
. . .32
. . .33

. . . . . . . . . .35
. . . . . . . . . .35
. . . . . . . . . .39
. . . . . . . . . .41
. . . . . . . . . .44
. . . . . . . . . .47
. . . . . . . . . .51
. . . . . . . . . .53
. . . . . . . . . .59
. . . . . . . . . .63
. . . . . .........68
. . . . . .........75

PRIMERAS EXPERIENCIAS CON PICAXE

l campo de accin de los microcontroladores ha rebasado sus expectativas originales de aplicacin,


ya que en la actua-lidad los podemos encontrar no slo en aplicaciones industriales (dentro de los
PLCs por ejemplo), sino dentro de nuestras mismas casas. A lo mejor no lo sabemos, pero para precisar este comentario basta con sealar un aparato electrodomstico como es una lavadora automtica,
que para controlar sus procesos de lavado, secado y pre - planchado, requiere de un microcontrolador.
Y as podemos continuar con ms ejemplos, tales como las TV, las consolas de video juego, las PCs, el
refrigerador, etc.
Si los microcontroladores los tenemos en nuestras casas, imaginen en un vehculo, en los aviones, en los
celulares, en resumen, se encuentran en todos aquellos aparatos o juguetes que se controlan por s mismos.
En un futuro no sera extrao encontrar microcontroladores hasta dentro de nuestros cuerpos, controlando algn rgano o miembro artificial.
Con el transcurso del tiempo los microcontroladores van ganando terreno, y se van incorporando a ms
aplicaciones, tanto para el rea de diseo como para el de mantenimiento, lo que requiere de ms personas que tengan conocimientos sobre la programacin de microcontroladores.
Si buscamos en el mercado microcontroladores de diferentes marcas, vamos a encontrar una gran cantidad de fabricantes, adems de muchas versiones que nos ofrecen, lo que nos da un volumen de matrculas enorme, dndonos alternativas muy diversas en cuanto a la eleccin de algn microcontrolador en particular.
Del universo existente de microcontroladores, vamos a enfocarnos en los PICAXE, porque cuentan con
una herramienta de programacin que nos facilita el aprendizaje, y una vez que tengamos la prctica y
habilidad en la programacin, podremos emigrar a otro tipo de microcontroladores, porque con los PICAXE
aprendemos a realizar diagramas de flujo, que es una herramienta indispensable en la programacin.
Los conocimientos sobre programacin, normalmente se adquieren a travs de un curso formal ya sea
en universidades o escuelas tcnicas, pero qu sucede con aquellas personas que no pueden, por
cualquier razn, incorporarse a estudiar microcontroladores?
Lo importante es que si alguien est interesado(a) en aprender a programar microcontroladores, y no
puede llevar un curso formal, tenga una alternativa de estudio que pueda administrar la misma persona.
El enfoque que tiene la presente obra, es la de llevar un curso comenzando en la primera parte con las
caractersticas bsicas de los microcontroladores PICAXE, para que de manera genrica el lector pueda
ingresar de forma fcil a la programacin de los microcontroladores.
En la segunda parte de la obra, el lector podr adquirir conocimientos ms avanzados en cuanto a tcnicas de programacin, para ello se abordan los temas nuevamente explicando aspectos bsicos para
reafirmar los conocimientos, y adems sobre distintos ejemplos se van explicando diferentes situaciones
para ir incorporando diversas herramientas de programacin.
Al finalizar cada una de las partes que conforman al libro, el lector se encontrar con un examen, que
le permitir ir evaluando su nivel de conocimientos, y as pueda reforzar aquellas partes en donde se
encuentre dbil.
Pues bien querido lector, en general esta obra es el resultado del impulso que en Club Saber Electrnica,
queremos darles a todas aquellas personas que tengan ganas de aprender, y por lo tanto, esperamos
que este libro sea de su total agrado y utilidad, muchas gracias por elegirnos y hasta la prxima.

Agradezco las facilidades prestadas por el Instituto Politcnico Nacional y en especial a la Escuela
Superior de Cmputo, para la realizacin de la presente obra,la cual es el resultado de la comprobacin
de diversos experimentos en sus laboratorios
ISBN N: 978-987-1116-91-1
CDD 621.381

PICAXE: La Nueva Forma de Programar un PIC


Desde que el primer microprocesador vio la luz
del mundo (el 4004), y cuya nica y principal operacin era una suma de 1 bit, se comenz con una carrera tecnolgica en la cual lejos de ver el fin, da
tras da se van logrando cosas inimaginables. Tal es
el caso de los microcontroladores que vendran a ser
el ejemplo resumido y en pequeo de una computadora personal (PC).

Un microcontrolador, que puede ser de 8, 18, 28, 40 terminales o ms, internamente dentro de su encapsulado posee
como equipamiento mnimo un microprocesador, memoria
RAM, y distintas versiones de memoria ROM. Los microcontroladores ms avanzados, aparte de lo mencionado anteriormente, tambin llegan a poseer temporizadores, ADC, DAC, Comunicacin en paralelo, USAR, etc. En la figura 1 vemos todo lo
necesario para programar un PICAXE.
Un microcontrolador, desde el punto de vista de operacin,
puede considerarse como si fuera una PC, ya que cuenta con
el conjunto bsico de implementos que necesita realizar sus funciones, esto es, microprocesador, disco duro, memoria RAM,
etc. Clsicamente, cuando programamos un microcontrolador,

Figura 1

CLUB SABER ELECTRONICA 3

Figura 2

de forma implcita se tiene que desarrollar un programa que


trabaja a manera del BIOS de una PC, ya que lo primero que
debemos tomar en cuenta es la configuracin de sus puertos ya
sea como de entrada o de salida, configurar sus dems herramientas como pueden ser los temporizadores, los ACD, etc.
Han aparecido en el mercado sistemas de desarrollo que
permiten la programacin del microcontrolador de una manera
relativamente fcil, en la cual se puede emular el proceso que
nos interesa desarrollar. Para la mayora de estos sistemas de
desarrollo, una vez que se tiene terminada la aplicacin, el paso siguiente es armar el prototipo e insertar el microcontrolador
debidamente programado.
Recientemente ha sido lanzado al mercado un sistema de
desarrollo para programar microcontroladores PIC llamado PICAXE, que de por s quien ha utilizado estos microcontroladores puede constatar lo sencillo que resulta su programacin. El
sistema de desarrollo PICAXE hace las cosas todava ms sencillas para el programador, ya que se cuenta con dos opciones para disear una aplicacin, una por medio de diagramas
de flujo y otra es por medio de BASIC, y aunque esto no es
ninguna novedad, ya que estas herramientas existan con anterioridad, lo ventajoso del PICAXE radica en el hecho de que se
trata de un microcontrolador PIC el que en un segmento de memoria ROM interna le ha sido grabado, desde su fabricacin,

un firmware a manera de BIOS que simplifica la forma de programarlo. Al igual que en todos los sistemas de desarrollo, existen ya predefinidas toda una serie de tarjetas de prcticas sobre las cuales podemos emular las aplicaciones que hemos diseado, pero gracias al firmware que poseen los microcontroladores PICAXE se puede armar la aplicacin completa incluyendo al microcontrolador, y sobre la aplicacin programarlo
sin necesidad del sistema de desarrollo, ni del circuito programador de microcontroladores. Ver figura 2.
De hecho, el sistema PICAXE hace ms accesible la programacin de microcontroladores a todas aquellas personas que
tan slo cumplan con el nico e indispensable requisito que es
el de querer aprender. Vea en la figura 3 una pantalla de la
aplicacin que nos permitir realizar el programa que vamos a
cargar dentro del PIC. Aqu no vamos a mencionar las ventajas
y desventajas del sistema PICAXE con respecto a otros; lo nico que podemos agregar es que se trata de otra manera de
programar microcontroladores PIC, empleando diagramas de
flujo y/o lenguaje BASIC, (figura 4) los cuales ya sea de manera consiente o totalmente implcita recurrimos a ellos para
elaborar un programa.
A lo largo de este libro iremos aprendiendo paso a paso la
forma de cmo programar los microcontroladores bajo el sistema PICAXE. Para ello, como primer paso, emplearemos una tarjeta de desarrollo de la cual proporcionaremos su circuitera
para que ustedes la puedan armar. Posteriormente, despus de
realizar algunas prcticas, avanzaremos ya sobre aplicaciones
en donde se tenga al microcontrolador como elemento principal y al cual programaremos en sitio. Pues bien, los invitamos
a que exploren esta nueva forma de programar microcontroladores que, estamos seguros, les ser de gran utilidad.

Conociendo los Microcontroladores


de este Sistema
El PICAXE es un sistema de microcontroladores PIC muy fcil de programar ya que utiliza un lenguaje BASIC muy senci-

Figura 3

Figura 4

4 CLUB SABER ELECTRONICA

Figura 5

identificadas como Serial En y Serial Sal, se


utilizan para programar al microcontrolador
a travs del puerto serie de una PC, para lo
cual las terminales del conector identificado
como CON1 se hacen llegar al conector
DB9 de la PC tal como se muestra en la figura 4. Por otra parte, de la misma figura 1 se
observa que la terminal identificada como
Serial Sal, cumple con una doble funcin, y
dependiendo de dnde se ubique un jumper
selector en el conector CON2, se podr programar al PIC o esa misma terminal. Una
vez programado el PIC, tendr la funcin de
una terminal de salida de datos.
Del circuito esquemtico de la figura 6
Figura 6 se observa la forma en que estn dispuestas
las terminales de un PICAXE de 18 terminales, de las cuales las que se encuentran identificadas como En 0, En 1, En 2, En 6 y En 7 son dedicadas exclusivamente a adquirir datos del exterior hacia el microcontrolador. Las terminales que se encuentran identificadas de la Sal
0 a Sal 7 son exclusivamente para enviar datos hacia afuera
del microcontrolador, mientras que las terminales identificadas

llo, adems de contar tambin con la posibilidad de programarlos con diagramas de flujo. El sistema PICAXE aprovecha
todas las caractersticas de los microcontroladores de bajo costo que incorporan memoria FLASH.
El sistema PICAXE est disponible en tres versiones que son
el de 8 terminales (PICAXE-08), 18 terminales (PICAXE-18) y 28 terminales (PICAXE-28). En estos microcontroladores ya se tienen definidas las terminaFigura 7
les que tienen la funcin de entrada y salida de datos, adems de las terminales que sirven para programar al PICAXE en sitio, o en otras palabras, sobre la misma aplicacin. En las figuras 5, 6 y 7 se
muestran los circuitos esquemticos de la disposicin de cada uno de los microcontroladores PICAXE.
En la figura 5 se muestra el circuito esquemtico para un PICAXE de 8 terminales, de las cuales
las que estn identificadas como Pin1 E/S, Pin2
E/S, Pin3 E/S y Pin4 E/S, son terminales que pueden funcionar como entradas o salidas de datos del
exterior hacia el microcontrolador. Las terminales

CLUB SABER ELECTRONICA 5

como Serial Sal y Serial En se utilizan para programar al microcontrolador.


En el circuito de la figura 7 se muestra la forma de conectar a un PICAXE de 28 terminales, en donde aparte de las terminales de entrada que se encuentran definidas como En 0 a
En 7, tambin se cuenta con las terminales de salida identificadas como Sal 0 a Sal 7, adems de 4 terminales para entrada
de datos analgicos, y por ltimo las terminales de programacin del microcontrolador.
Ya se ha mencionado que el sistema PICAXE no requiere de
programador o borrador, ya que utiliza nicamente tres alambres conectados al puerto serie de una computadora, tal como
se describe en la figura 8.
Una vez que han sido identificadas las terminales a utilizar
en el conector del puerto serie de la PC, ahora lo que sigue es
Figura 8

preparar la conexin hacia el PIC, tomando en cuenta las terminales tal como se observa en la figura 9.
Como se puede apreciar de la figura 9, se puede emplear
(es recomendable) un plug de los utilizados para conectar los
audfonos a la salida de audio de un walkman o discman, y tener un cable con un conector DB9 en un extremo y un plug de
audio en el otro, tal como se ilustra en la figura 10.
Por ltimo, diremos que para armar el cable de programacin, tal como se muestra en la figura 10, en las figuras 8 y 9
se muestra la configuracin de las terminales tanto del conector
DB9 como el plug de audio.

Utilitario Gratuito para Hacer Programas


Lo diferente del sistema de microcontroladores PICAXE, con
respecto a la programacin tradicional de los microcontroladores PIC, radica en la programacin basada en un lenguaje BASIC y diagramas de flujo. Esto hace que los microcontroladores
del sistema PICAXE sean muy fciles de programar, en un ambiente amigable.
Para programar los microcontroladores PICAXE debemos,
en primera instancia, instalar el software que contiene el am-

Figura 9

Figura 11 - Carpeta progedit.

Figura 10

6 CLUB SABER ELECTRONICA

Figura 12 - Software de instalacin Programming Editor.

biente de programacin, por lo que describiremos paso a paso la forma de hacerlo.


El software lo puede bajar de nuestra pgina de internet
que usted ya conoce www.webelectronica.com.ar; debe hacer
click en el cono password e ingresar la clave PICAXEPRO. Recuerde que para bajar cualquier informacin, debe ser socio
del club SE, lo cual es gratuito y puede inscribirse por Internet
en slo un par de minutos (siga las instrucciones que dimos para bajar el programa PICAXEPRO y encontrar cmo hacerse
socio si an no lo es).
Una vez que se tenga el software, se encontrar con una
carpeta con el nombre de progedit, a la cual debemos acceder (observe la figura 11).
Luego debemos ingresar a la carpeta progedit y tenemos
que ubicar el programa identificado como Programming Editor, al cual debemos de hacerle un doble click con el ratn de
la PC para que ste se ejecute y se pueda instalar el programa
de los PICAXE, tal como se muestra en la figura 12.
Una vez que ejecutamos el programa de instalacin Programming Editor aparecer la ventana que se muestra en la figura 13, sobre la cual debemos oprimir con el ratn el cuadro

Figura 13 - Ventana de bienvenida para la instalacin del software de los PICAXE.

Figura 14 - Acuerdo de licencia.

identificado como next para que contine la instalacin.


Posteriormente ser desplegada la ventana donde se muestra la licencia que debemos aceptar, porque de otra manera no
podremos continuar con la instalacin del software, por lo que
nuevamente oprimiremos el cuadro identificado como next;
esta accin se indica en la figura 14.
Como paso siguiente, pregunta por el nombre del usuario
que normalmente utilizar el software; aqu podemos instalar la
aplicacin para que pueda ser utilizada por todas las personas
que utilicen la computadora, y despus de seleccionar esta accin tenemos que oprimir el cuadro identificado como next,
tal como se muestra en la figura 15.
Posteriormente debemos decir en dnde se guardar el
software de programacin, que por lo general, aqu no tenemos que modificar dato alguno, a menos de que querramos
asignar otra localidad, tal como se ilustra en la figura 16. Una
vez seleccionada la opcin correspondiente, procederemos a
hacer click sobre el cuadro identificado como next.
Por ltimo, aparecer una ventana de confirmacin para
estar seguros de que los datos que introdujimos se encuentran
correctos; si es as, debemos oprimir el cuadro identificado como next para que contine la instalacin, tal como se aprecia en la figura 17.

Figura 15 - Informacin del usuario.

Figura 16 - Destino del software.

CLUB SABER ELECTRONICA 7

Cuando se est instalando el software, se indica grficamente tal como se ilustra en la figura 18; aqu debemos esperar hasta que se terminen de instalar, tanto el software de programacin como todas las utileras que sern empleadas por
los PICAXE. En la figura 19 se muestra la ventana que nos indica que ya se ha concluido con la instalacin, por lo que debemos oprimir el cuadro identificado como finish.
Una vez instalado el software de programacin de los PICAXE, en el escritorio de nuestra PC encontraremos un cono
de acceso directo identificado como PICAXE Programming

Editor, al cual, para comenzar a programar los microcontroladores, debemos hacer un doble click con el mouse para que se
ejecute el programa, tal como se muestra en la figura 20. En la
figura 21 y 22 se observa un ejemplo del ambiente grfico,
tanto en lenguaje BASIC como en diagrama de flujo. ******

Figura 20 - Icono de acceso rpido en el escritorio


de la PC.
Figura 17 - Ventana de confirmacin de datos.

Figura 18 - Ventana de instalacin del software.

Figura 19 - Ventana final.

8 CLUB SABER ELECTRONICA

Figura 21 - Lenguaje BASIC para programar los


PICAXE.

Figura 22 - Diagrama de flujo para programar los PICAXE.

Uso y Prueba de Leds:


Primeros Programas en BASIC

algunas consideraciones generales sobre las fuentes de energa


que usaremos para alimentar a nuestro circuito.

Para que un microcontrolador desarrolle una tarea mediante la ejecucin del programa que tiene grabado en su memoria, es preciso que el mismo est alimentado y posea componentes externos que permitan su funcionamiento. Normalmente
se emplean resistencias, diodos emisores de luz, capacitores,
buzzers piezoelctricos (zumbadores), interruptores, etc.

Qu es una batera?
Una batera es una fuente de energa elctrica (es una fuente de potencia porttil). Las bateras estn constituidas por elementos qumicos que almacenan energa. Al conectarlas a un
circuito, esta energa qumica se convierte en energa elctrica
que puede luego alimentar al circuito.

El objetivo de este texto es que Ud. utilice al microcontrolador PICAXE como un elemento multipropsito y le saque el mayor jugo posible.

Qu tamao de batera se utilizan en electrnica?


Las bateras vienen en todo clase de tipos y tamaos. La
mayora de las bateras consisten en un grupo de pilas, en donde cada pila provee cerca de 1.5V (figura 1). Por lo tanto 4 pilas crean una batera de 6V y 3 pilas una de 4.5V. Como regla general, mientras ms grande es la batera, ms tiempo du-

Antes de explicar cmo se puede realizar la prueba de los


componentes que trabajan con el microcontrolador, daremos

CLUB SABER ELECTRONICA 9

Figura 1

rar (ya que contiene ms qumicos y por lo tanto ser capaz


de convertir ms energa). Una batera de mayor voltaje no dura ms que una batera de menor voltaje. Por lo tanto, una batera de 6V formada por 4 pilas AA dura mucho ms que una
batera PP3 de 9V (batera de 9V comn), ya que por ser fsicamente ms grande contiene una mayor cantidad total de
energa qumica. Por lo tanto, aquellos equipos que requieren
mucha potencia para operar (por ejemplo un reproductor porttil de CDs, el cual tiene un motor y un lser para leer los CDs)
siempre utilizarn pilas AA y no bateras PP3.
Los microcontroladores PICAXE generalmente requieren entre 3 a 6V para operar, y por lo tanto es mejor utilizar una batera formada por tres a cuatro pilas AA. Nunca utilice una batera PP3 de 9V ya que la alimentacin de 9V puede daar el
microcontrolador.
Qu tipo de batera debo utilizar?
Los distintos tipos de bateras contienen diferentes qumicos. Las bateras de carbn-zinc son las ms baratas, y son
adecuadas para utilizarse en muchos circuitos de microcontroladores. Las bateras alcalinas son ms costosas, pero tienen
una vida mucho ms larga y se las debe emplear cuando se necesita alimentar dispositivos que requieren mucha corriente tales como motores. Las bateras de litio son mucho ms costosas
pero tienen una larga vida, y por lo tanto se utilizan comnmente en circuitos de computadoras, videocaseteras, etc. Otro tipo
de bateras son las bateras recargables, las cuales pueden recargarse cuando se agotan. Estas estn hechas, usualmente, de
nquel y cadmio (Ni-cad) de hidrxido de metal cadmio
(NiMH).
Atencin: Nunca haga corto-circuito en los terminales de

10 CLUB SABER ELECTRONICA

una pila o una batera. Las bateras alcalinas y las recargables


pueden suministrar corrientes muy grandes, y pueden calentarse tanto que pueden llegar a explotar o derretir la carcasa.
Siempre asegrese de conectar la batera en el sentido correcto (rojo positivo (V+) y negro negativo -0V tierra-). Si las bateras se conectan al revs, el microcontrolador corre peligro de
calentarse y daarse.
Los paquetes de bateras se conectan a menudo, al circuito integrado mediante cables con conectores adecuados. Asegrese siempre que los cables rojo y negro estn conectados en
la direccin correcta. Tambin es de mucha utilidad pasar los
cables de la batera a travs de los agujeros del tablero antes
de soldarlos en su lugar (esto proveer una unin mucho ms
fuerte, la cual ser mucho menos propensa a soltarse).
Nunca use una batera PP3 de 9V para alimentar directamente a un microcontrolador, ya que el mismo slo trabaja con
voltajes entre 3 y 6V.
Algunos soportes de bateras pequeas requieren la soldadura de cables a contactos metlicos en la caja. En este caso
debe ser muy cuidadoso de no sobrecalentar los contactos metlicos. Si los contactos se calientan mucho, derretirn el plstico que los rodea y por lo tanto se caern. Una buena manera
de prevenir esto es pedirle a un amigo que sostenga los contactos metlicos con una pinza pequea. Las pinzas actuarn como un disipador de calor y ayudarn a evitar que el plstico se
derrita.
Qu es un LED?
Un Diodo Emisor de Luz (LED) es un componente electrnico que emite luz cuando la corriente pasa a travs de l. Un
LED es un tipo de diodo especial.
Un diodo es un componente que slo permite el flujo de corriente en una direccin. Por lo tanto al utilizar un diodo, el mismo debe estar conectado en la direccin correcta. La pata positiva (nodo) de un LED es ms larga que la pata negativa
(mostrada por una barra en el smbolo). La pata negativa tambin posee un extremo plano en la cubierta plstica del LED. En
la figura 2 se puede observar el aspecto y el smbolo de un led.
Para qu se utilizan los LEDs?
Los LEDs se utilizan principalmente como luces indicadoras.
Los LEDs rojos y verdes se utilizan, comnmente, en artefactos
electrnicos tales como televisores para mostrar si el televisor

Figura 2

Figura 3

est encendido o si est en el modo stand-by (en espera). Los


LEDs estn disponibles en una variedad de colores diferentes,
incluyendo rojo, amarillo, verde y azul. Existen tambin LEDs ultra-brillantes, los cuales se utilizan en luces de seguridad tales
como las luces intermitentes utilizadas en bicicletas. Los LEDs infrarrojos producen una luz infrarroja que no es visible al ojo humano, pero que puede utilizarse en dispositivos tales como
mandos a distancia de equipo de video.
Cmo se usan los LEDs?
Los LEDs slo necesitan una pequea cantidad de corriente para operar; esto los hace mucho ms eficientes que las lamparitas elctricas (esto significa, por ejemplo, que si se tuviera
una alimentacin por bateras un LED alumbrara por mucho
ms tiempo que una bombilla elctrica). Si se pasa demasiada
corriente por un LED el mismo se puede daar; es por esto que
los LEDs normalmente se utilizan junto con una resistencia en serie para protegerlos de corrientes excesivas.
El valor de la resistencia requerida depende del voltaje de
la batera utilizada. Para una batera de 4.5V se puede utilizar
una resistencia de 330 o 330R que es lo mismo (fig. 3), y para una batera de 3V lo apropiado es una resistencia de 120.
Cmo se conecta un LED a un microcontrolador?
Debido a que el LED slo requiere una pequea cantidad
de corriente para operar, el mismo se puede conectar directamente entre un pin de salida del microcontrolador y 0V (sin olvidar incluir la resistencia en serie para proteccin).
Cmo se prueba el LED con el microcontrolador?
Despus de conectar el LED, el mismo puede probarse utilizando un simple programa tal como el siguiente:
Main:
High
Wait
Low
Wait
Goto

0
1
0
1
main

descargue el programa (asegrese que el entrenador est bien


conectado por medio del cable al puerto serial de la PC), luego corra el jumper a la posicin salida y vea si obtiene el funcionamiento deseado.
Si el LED no funciona verifique:
1. que el LED est conectado en la salida 0 (por medio
de un simple cablecito).
2. que se est utilizando la resistencia correcta en la placa
entrenadora y que el LED est en el sentido correcto.
3. que se est utilizando el nmero de pin correcto dentro
del programa.
4. que todos los componentes estn bien soldados.
Para la prueba, se puede emplear tambin el circuito de
una mascota virtual (figura 4) dado que ser uno de los proyectos que presentaremos ms adelante.
El programa de la tabla 1 enciende y apaga 15 veces al
LED conectado al pin de salida 0 utilizando una tcnica de programacin BASIC llamada bucle for...next (esta tcnica no
puede utilizarse con organigramas).
_________________________________________
Tabla 1: Programa para encender y apagar un led
15 veces
Main:
For b1 = 1 to 15 ;inicio de un bucle
High 0
;se pone en alto la salida 0
Pause 500
;se hace una pausa de 1/2 seg.
Low 0
;se pone en estado bajo la salida 0
Pause 500
;se hace una pausa de 1/2 seg.
Next b1
;se contina con el bucle hasta que termine
End
; fin del programa
_____________________________________________________

Figura 4

Este programa debe encender y


apagar el LED (conectado al pin de salida 0) una vez por segundo.
Para realizar esta primera prctica,
ejecute el utilitario Editor de Programa
segn lo descrito (descripto) en este mismo captulo; luego, escriba el programa
anterior, conecte la placa entrenadora
con el PICAXE colocado, asegrese que
el jumper correspondiente est en el lado de programacin, conecte uno de
los leds de la placa en la salida 0,

CLUB SABER ELECTRONICA 11

Figura 5

El nmero de veces que el cdigo debe repetirse se almacena en la memoria del chip PICAXE utilizando una variable
llamada b1 (el PICAXE tiene 14 variables nombradas de b0 a
b13). Una variable es un registro de almacenamiento de nmeros dentro del microcontrolador, que el mismo puede utilizar para almacenar nmeros a medida que el programa se ejecuta.
Le aconsejamos que lea o repase todo lo anterior nuevamente, que baje de Internet el programa para trabajar con PICAXE y practique con el ejercicio que acabamos de dar y con
los que seguimos:

Cmo se usan los zumbadores?


La conexin de los zumbadores a un PICAXE es muy sencilla. Simplemente conecte el cable rojo al pin de salida del microcontrolador y el cable negro a 0V (tierra), figura 5. Tome en
cuenta que los zumbadores ms econmicos no tienen cubierta plstica exterior. En estos casos es necesario montar el zumbador sobre una seccin del circuito impreso (con cinta adhesiva de doble contacto) para crear un sonido que se pueda escuchar. El circuito impreso acta como una caja de sonido
(baffle) y amplifica el sonido emitido por el zumbador. Asegrese de pegar la cinta adhesiva al lado correcto del zumbador
(el lado de bronce que no tiene los cables!).
En algunas ocasiones puede que desee emitir sonidos ms
fuertes. En este caso lo adecuado es utilizar un parlante (bocina) en vez de un zumbador. Al utilizar parlantes es necesario
conectar un condensador (por ejemplo un capacitor electroltico de 10F) al circuito del microcontrolador para evitar causarle daos al chip. Recuerde que, al igual que el zumbador, los
parlantes slo operan correctamente si estn montados en una
caja de sonido.
Despus de conectar el zumbador, el mismo puede probarse utilizando un simple programa tal como el siguiente:
Main:

Uso y Prueba de Timbres y Zumbadores


Qu es un zumbador electrnico?
Un zumbador electrnico es un miniparlante (minibocina)
de bajo costo que se utiliza para hacer sonidos. El sonido generado por el zumbador puede cambiarse alterando las seales electrnicas suministradas por el microcontrolador.
Para qu se utilizan los zumbadores?
Los zumbadores se utilizan en una gran variedad de diferentes productos para dar retroalimentacin al usuario. Un
buen ejemplo de esto es una mquina expendedora, la cual
emite un sonido cada vez que se presiona un botn para escoger un refresco o algo para comer. Este sonido da retroalimentacin al usuario para indicarle que se recibi la seal del botn presionado. Otros tipos de zumbadores se utilizan a menudo en tarjetas musicales de cumpleaos, para tocar una meloda cuando se abre la tarjeta.
Cul es la diferencia entre un zumbador y un timbre ?
El timbre (o sirena) contiene un pequeo circuito electrnico, el cual genera la seal electrnica necesaria para emitir un
sonido. Por lo tanto, cuando el timbre se conecta a una batera
siempre emitir el mismo sonido. El zumbador no tiene este circuito y por ende necesita una seal externa. Esta seal puede
suministrarla un pin de salida del microcontrolador. El zumbador tambin requiere menos corriente para operar y por lo tanto durar ms en circuitos alimentados por bateras.

12 CLUB SABER ELECTRONICA

Sound 2, (65,100)
Sound 2, (78,100)
Sound 2, (88, 100)
Sound 2, (119, 100)
Go to main
Este programa har que el zumbador (conectado al pin de
salida 2) haga 4 sonidos diferentes (valores 65, 78, 88, 119),
siguiendo el diagrama de flujo de la figura 6.
Vea qu sencillo es programar
Figura 6
main (del ingls principal),
es una etiqueta que dice que est
por empezar el programa.
sound 2 es una instruccin
que dice que el PICAXE genere un
sonido y lo emita por la salida 2, cuya frecuencia depender del primer
nmero que est entre parntesis en
la instruccin y su valor puede ser
cualquiera entre 0 y 127.
De la misma mamera que antes,
podemos probar este programa, utilizando el entrenador propuesto en
este captulo y conectando el zumbador en la salida 2. Ejecute el utilitario Editor de Programa; luego, escriba el programa anterior, conecte

la placa entrenadora con el PICAXE colocado, asegrese que


el jumper correspondiente est en el lado de programacin, conecte el zumbador en la salida 2, descargue el programa
(asegrese que el entrenador est bien conectado por medio
del cable al puerto serial de la PC), luego corra el jumper a la
posicin salida y vea si obtiene el funcionamiento deseado.
Si el zumbador no funciona verifique:
1. Que el valor del sonido (primer nmero en el parntesis)
est entre 0 y 127.
2. Que se est utilizando el nmero de pin correcto dentro
del programa.
3. Que todas las conexiones estn bien soldadas.
Para probar este elemento tambin puede utilizar el circuito de la mascota virtual. En sntesis, al utilizar el comando
sound, el primer nmero indica el nmero de pin (en los proyectos el pin 2 es utilizado frecuentemente). El siguiente nmero es
el tono, seguido por la duracin. Mientras ms alto es el tono,
mayor ser la altura tonal del sonido (tome en cuenta que algunos zumbadores no pueden emitir tonos muy altos y; por lo tanto, valores mayores de 127 puede que no se escuchen).
Al utilizar sonidos mltiples puede incluirlos todos en la misma lnea. Por ejemplo:
Sound 2, (65,100, 78, 100, 88, 100, 119, 100)
El programa BASIC mostrado en la tabla 2 utiliza un bucle
for...next para emitir 120 sonidos diferentes, utilizando la variable b1 para almacenar el valor (tono) del comando sound.
El nmero almacenado en la variable b1 aumenta 1 en cada bucle (1-2-3-etc.); por lo tanto, al utilizar la variable b1 en
la posicin del tono, la nota se cambia en cada bucle. El programa de la tabla 3 realiza la misma tarea, pero en orden inverso (contando el tono en cuenta regresiva).
___________________________________________________
Tabla 2
Main:
For b1 = 1 to 120 step-1 ,iniciar un bucle for next
Sound 2, (b1, 50)
,emita un sonido con el tono b1
Next b1
, siguiente b1
End
,fin del programa
___________________________________________________

Le aconsejamos que baje de Internet el programa para trabajar con PICAXE y realice sus propios ejemplos. Si no tiene
los programas para trabajar con los microcontroladores PICAXE, puede bajarlos sin cargo de nuestra web: www.webelectronica.com.ar, haciendo click en el cono password e ingresando
la clave: picaxe212.

Prueba y Uso de Sensores Digitales


Qu son los interruptores digitales?
Un sensor digital es simplemente un componente del tipo
interruptor, el cual slo puede estar en dos posiciones: encendido apagado. Si dibujramos una grfica de las seales
de encendido-apagado del interruptor a medida que se oprime, el mismo se vera como se muestra en la figura 7. Los interruptores son componentes electrnicos que detectan movimientos. Existe una gran variedad de interruptores diferentes, por
ejemplo:
1) interruptores de botn de presin que detectan cuando
el botn ha sido oprimido
2) micro-interruptores con palanquitas largas que detectan
pequeos movimientos
3) interruptores de nivel que detectan sacudidas
4) interruptores de lengeta (reed switches) que detectan el
movimiento de un imn
Para qu se utilizan los Interruptores?
Los interruptores de botn de presin se utilizan comnmente en dispositivos tales como teclados. Los micro-interruptores se
utilizan en alarmas contra robos, para detectar si se ha quitado la cubierta de la caja de la alarma. Los interruptores de lengeta (reed switches) se utilizan para detectar la apertura de
puertas y ventanas, y los interruptores de nivel se utilizan a menudo para detectar movimiento en dispositivos tales como juguetes, secadores y alarmas. Los smbolos
para un interruptor deslizante y para un
interruptor de presin, se muestran en la figura 8.
Los interruptores se instalan en los circuitos junto a una resistencia como se
Figura 8
Figura 7

Tabla 3
Main:
For b1 = 120 to 1 step-1
,iniciar un bucle for next
Sound 2, (b1, 50)
,emita un sonido con el tono b1
Next b1
,siguiente b1
End
,fin del programa
___________________________________________________

CLUB SABER ELECTRONICA 13

muestra en el diagrama de la figuTabla 4


ra 9. El valor de la resistencia no es
importante, pero a menudo se utiliza una resistencia de 10k. Cuando el interruptor est abierto, la
resistencia de 10k conecta el pin
de entrada del microcontrolador a
0V, lo cual da una seal de apagado (nivel lgico 0) al pin de entrada del microcontrolador.
Cuando el interruptor se activa,
el pin de entrada se conecta al terminal positivo de la batera (V+).
Esto da una seal de encendido (nivel lgico 1) al microcontrolador.
El interruptor puede probarse utilizando un simple programa tal como el mostrado en la tabla 4. Este programa encender
o apagar una salida dependiendo de si el interruptor es presionado o no. En este programa
las tres primeras lneas constituyen un bucle continuo. Mientras
la entrada est apagada, el programa seguir reinicindose una
y otra vez. Si la entrada est encendida, el programa salta a la
Figura 9
etiqueta llamada flash. El
programa luego enciende por 2
Figura 10
segundos la salida 0 antes de regresar
al bucle principal. Note cuidadosamente la ortografa de la lnea: if...then input3 (entrada 3) es una sola palabra (sin espacios en blanco). Es
permitido utilizar tanto pin3 como input3, ambas significan lo mismo. Note tambin que despus del comando
then, nicamente est la etiqueta
en este punto no se permite ninguna
otra palabra aparte de la etiqueta.
Figura 11

14 CLUB SABER ELECTRONICA

Para realizar la prueba del interruptor con este programa,


deber conectar el interruptor en la entrada 3 del entrenador y
en la salida deberemos conectar un led. Luego, una vez descargado el programa siguiendo el procedimiento que explicamos
para otros ejemplos, cada vez que presione el pulsador y lo
mantenga presionado, se encender el led conectado en la salida 0 durante 2 segundos. Recuerde que para programar el
jumper de la pata 7 debe estar del lado de programacin y luego del lado de salida 0 para que el circuito trabaje segn lo
programado.

Prueba y Uso de Fotorresistencias


Qu es una fotorresistencia?
Una fotorresistencia es un tipo especial de resistencia, la
cual reacciona a cambios en el nivel de luz. La resistencia de
la fotorresistencia cambia a medida que vara la cantidad de
luz que incide sobre la ventana del dispositivo. Esto permite
a los circuitos electrnicos medir cambios en el nivel de luz.
Vea en el captulo siguiente a la explicacin del funcionamiento de los PICAXE-18 la curva de respuesta y otros datos relevantes sobre las fotorresistencias.
Para qu se utilizan las fotorresistencias?
Las fotorresistencias se utilizan en las lmparas automticas
de las rutas para encenderlas durante la noche y apagarlas durante el da. Tambin se utilizan en muchas alarmas y juguetes para medir niveles de
luz.
La fotorresistencia es un
sensor del tipo analgico.
Un sensor analgico mide
una seal continua tal como
luz, temperatura o posicin
(en vez de una seal digital
de encendido/apagado como es el caso de un interrup-

tor). El sensor analgico provee


como seal un voltaje variable.
Esta seal de voltaje puede representarse mediante un nmero
entre el 0 al 255 (Por ejemplo:
muy oscuro = 0, luz brillante =
255).
Las fotorresistencias se pueden utilizar en dos maneras. La
manera ms simple de utilizar
una fotorresistencia es como un
simple interruptor de encendido/apagado (digital) cuando
el nivel de luz sube por arriba de
cierto valor (llamado el valor de
umbral), la fotorresistencia enviar una seal de encendido;
cuando el nivel de luz est debajo de cierto nivel, la fotorresistencia enviar una seal de apagado.
En este caso, la fotorresistencia se coloca en una configuracin de divisor de voltaje con Figura 13
una resistencia estndar. El valor
de la resistencia estndar define
el valor de umbral. Para fotorresistencias miniatura el valor
adecuado es 1k, para fotorresistencias ms grandes del tipo
ORP12 una resistencia de 10k
es ms adecuada. Si se desea la
resistencia fija puede reemplazarse por una resistencia variable de manera que el valor de
umbral se pueda ajustar para diferentes valores del nivel de luz
(figura 10).
Una manera ms verstil de
utilizar la fotorresistencia es midiendo un cierto nmero de valores de luz diferentes, de manera
que las decisiones se puedan tomar para niveles de luz cambiantes en vez de un solo nivel de umbral fijo. Un valor cambiante
se conoce como un valor analgico.
Para medir valores analgicos el microcontrolador debe tener un convertidor analgico/ digital y adems el software utilizado debe ser capaz de soportar el uso de este convertidor.
La mayora de los microcontroladores slo tienen convertidores
a-d en algunos de sus pines de entrada; por lo tanto, el pin de
entrada se debe seleccionar cuidadosamente.

Figura 12

En el microcontrolador de 8 patas slo uno de los


pines puede utilizarse.
El circuito electrnico que utiliza el convertidor a-d es un circuito divisor de voltaje idntico al mostrado en la figura 10. Las
mediciones analgicas se realizan dentro del microcontrolador mismo.
Para realizar una prueba, conecte la fotorresistencia, la
misma se puede probar como un interruptor digital utilizando
un simple programa tal como se ve en el diagrama de la figu-

CLUB SABER ELECTRONICA 15

ra 11 (que tambin muestra el diagrama de flujo que d origen


al programa).
Este programa encender y apagar la salida 0 de
acuerdo al nivel de luz.
Para probar la fotorresistencia, conctela al entrenador de
la figura 13 y siga los procedimientos que hemos utilizado para la prueba de otros componentes. La misma se puede probar
como un sensor analgico utilizando un simple programa, tal
como se ve en la figura 12.
El comando readadc se utiliza para leer el valor analgico (un nmero entre 0 y 255) dentro de la variable b1. Una
vez que este nmero est en la variable b1, el mismo se puede
probar para ver si es mayor que 100 mayor que 50. Si es
mayor que 100 la salida 4 se enciende, si est entre 50 y 100
se enciende la salida 0, y si es menor de 50 ambas salidas se
apagan.
De esta manera culminamos este captulo presentacin
de los microcontroladores PICAXE. Veamos ahora cmo trabajar con los PICAXE-18.

A manera
Figura 15
de ejemplo, un
horno de microondas (figura 15) puede
utilizar un solo
microcontrolador para procesar informacin
proveniente del
teclado numrico, mostrar informacin para
el usuario en la
pantalla y controlar los dispositivos de salida (motor de la mesa giratoria, luz, timbre y magnetrn).
Un microcontrolador puede, a menudo, reemplazar a un
gran nmero de partes separadas, o incluso a un circuito electrnico completo. Algunas de las ventajas obtenidas con el uso
de microcontroladores en el diseo de productos son:

Recor demos: El microcontrolador PICAXE es un


PIC al que se le graba un pequeo programita interno (firmware) para que pueda ser programado directamente sin la necesidad de un cargador y los
programas se pueden hacer en BASIC y en otros entornos muy amigables. En sntesis, tiene todas las
bondades del PIC, pero son mucho ms fciles de
usar.

Aumento en la confiabilidad debido al menor nmero de


partes.
Reduccin en los niveles de existencia ya que un microcontrolador reemplaza varias partes.
Simplificacin del ensamblaje del producto y productos finales ms pequeos.
Gran flexibilidad y adaptabilidad del producto, ya que
las funciones del producto estn programadas en el microcontrolador y no incorporadas en el hardware electrnico.
Rapidez en modificaciones y desarrollo del producto mediante cambios en el programa del microcontrolador, y no en
el hardware electrnico.

A modo de sntesis, por si Ud. ha comenzado la lectura por


esta seccin, digamos que el microcontrolador PIC (microcontrolador programable, figura 14) es a menudo descrito como
una computadora en un chip. Es un circuito integrado que
contiene memoria, unidades procesadoras y circuitos de entrada/salida, en una sola unidad.
Estos microcontroladores son comprados en blanco y luego programados con un programa especfico de control. Una
vez programado, este microcontrolador es introducido en algn
producto para hacerlo ms inteligente y fcil de usar.

Figura 14

Algunas de las aplicaciones que utilizan microcontroladores incluyen artefactos domsticos, sistemas de alarma, equipo
mdico, subsistemas de automviles y equipo electrnico de
instrumentacin.
Algunos automviles modernos contienen ms de treinta microcontroladores, utilizados en una amplia variedad de subsistemas desde el control del motor hasta el cierre a control remoto.
En la Industria, los microcontroladores son usualmente programados utilizando programacin en lenguaje C. Sin embargo, debido a la complejidad de este lenguaje, es muy difcil,
para estudiantes muy jvenes de bachillerato, el uso adecuado
de dicho lenguaje.

Ms Sobre el Sistema PICAXE


El sistema PICAXE es un sistema de microcontrolador fcil de programar que utiliza un lenguaje BASIC muy simple, el

16 CLUB SABER ELECTRONICA

Figura 16

cual la mayora de los estudiantes pueden aprender rpidamente. El sistema PICAXE explota las caractersticas nicas de
la nueva generacin de microcontroladores de bajo costo
FLASH. Estos microcontroladores pueden ser programados una
y otra vez sin la necesidad de un costoso programador PIC.
El poder del sistema PICAXE radica en su sencillez. No necesita de ningn programador, borrador o complejo sistema
electrnico.
El programa puede escribirse en BASIC o por medio de un
diagrama de flujo y se carga mediante una conexin de tres cables conectada al puerto serie de la computadora.
El circuito microcontrolador PICAXE utiliza nicamente tres
componentes y puede ser ensamblado en un tablero experimental para componentes electrnicos (protoboard), en una placa
universal (de las que se venden en casas de electrnica) o en
una placa PCB (vea la figura 16).
EL sistema PICAXE est disponible en distintas variedades:
8 pines, 18 pines y 28 pines. El controlador PICAXE-28 provee
22 pines de entrada/salida (8 salidas digitales, 8 entradas digitales y 4 entradas analgicas).
El sistema PICAXE-18 provee 8 salidas y 5 entradas y el sistema PICAXE-08 provee 5 terminales para ser usados como
entradas o salidas (con algunas restricciones).
Las principales caractersticas de los microcontroladores PICAXE son:
Bajo costo, circuito de fcil construccin.
Hasta 8 entradas, 8 salidas y 4 canales analgicos.
Rpida operacin de descarga del programa a la memoria del PICAXE mediante el cable serial.
Software Editor de Programacin gratuito y de fcil uso.
Lenguaje BASIC simple y fcil de aprender.
Editor de diagramas de flujo incluido.
Puede ser programado, tambin, mediante el software
Crocodile Technology.
Extenso nmero de manuales gratuitos y foro de apoyo en
lnea.
Tablero experimental y tutoriales disponibles.
Paquete de control remoto infrarrojo disponible.
Paquete de servocontrolador disponible.
Los PICAXE son microcontroladores cuya licencia corres-

Figura 17

ponde a la empresa Revolution Education. Son PICs comunes


(de la empresa Microchip) que poseen un pequeo programita
interno que los hace ms fciles de operar. De esta manera, un
PICAXE puede reemplazar a un PIC, pero un PIC no puede
reemplazar a un PICAXE (dado que el PIC no tiene ese programita).
Si Ud. compra un PICAXE, ver que tiene la matrcula de un PIC, sin embargo NO ES UN PIC comn,
es un PIC que ha sido programado y as se ha convertido en un PICAXE.
El sistema PICAXE consiste en tres componentes principales:
1) El Software Editor de Programacin: Este software debe ser ejecutado en una computadora y permite utilizar
el teclado de la PC para escribir programas en un simple lenguaje BASIC. Los programas tambin pueden generarse dibujando diagramas de flujo. Alternativamente, el software Crocodile Technology puede ser utilizado para simular circuitos
electrnicos completos, programndolos con diagramas de flujo. Por favor, vea el apndice de Crocodile Technology para
mayor informacin.
2) El cable serie: Este es el cable que conecta el sistema
PICAXE a la computadora. El cable slo necesita ser conectado durante la descarga de programas. No debe ser conectado
cuando el PICAXE est siendo ejecutado debido a que el programa est permanentemente almacenado en el chip PICAXE,
aun cuando la fuente de alimentacin haya sido desconectada.
Hay dos tipos de cables para descarga disponibles (al usar
el tablero experimental tutorial cualquiera de los dos cables
puede ser utilizado), los cuales se conectan ya sea a un conector cabecera de tres pines o a un conector hembra estreo pequeo (J35), figura 17.

CLUB SABER ELECTRONICA 17

Entrenador PICAXE-18
Vamos a explicar cmo se utiliza un entrenador para PICAXE-18. Para ello, se supone que Ud. posee un tablero (placa de circuito impreso) ya montado. Si no lo tiene, no se preocupe, en este libro explicaremos cmo puede hacerlo Ud. mismo.
Hay tres tipos de tableros electrnicos de tutoriales/proyectos disponibles:
Figura 18a
3) El chip PICAXE y el tablero electrnico: El microcontrolador PICAXE ejecuta programas que han sido descargados al mismo. Sin embargo, para operar, el chip debe ser montado en un tablero electrnico que provea una conexin al chip
microcontrolador.
El tablero electrnico puede ser diseado por el usuario en
un circuito impreso, en una interfaz prefabricada o, para ahorrar tiempo y por conveniencia, utilizar el tablero electrnico tutorial includo. Tanto en la figura 17 como en la figura 18, se
pueden ver tableros que asumen el uso del microcontrolador PICAXE-18 (18 pines) montado en el tablero electrnico tutorial.
A modo de ejemplo, y antes de continuar con la descripcin de los microcontroladores PICAXE, damos a continuacin
el procedimento que suele ser empleado para trabajar con este sistema:
1. Escriba el programa en la computadora utilizando el
software Programming Editor.
2. Conecte el cable de descarga desde la computadora al
PICAXE.
3. Conecte el acumulador elctrico (batera) al PICAXE.
4. Utilice el software Editor de Programacin para descargar el programa. El cable de descarga puede ser removido
posteriormente a la descarga.
El programa comenzar a ejecutarse en el PICAXE automticamente. Sin embargo, el programa puede ser reiniciado en
cualquier momento presionando el interruptor de reinicio.
Figura 18b

1) Tablero electrnico tutorial: Este es un tablero tutorial que contiene interruptores, sensores, una pantalla de siete
segmentos y conexiones para dispositivos de salida (es el tablero de la figura 17).
2) Tablero de Proyecto Estndar: Este es un tablero
de proyecto que provee de 8 salidas (encendido / apagado
on/off) digitales mediante un controlador Darlington (figura
18a).
3) Tablero para Proyecto de Alta Potencia: Este es
un tablero que provee de 4 salidas digitales (mediante controladores FET) y dos salidas para motores reversibles (figura 18b).

Preparando el Tablero Tutorial


Antes de usar el tablero tutorial, el mismo debe ser conectado a las bateras elctricas.
La figura 19 nos muestra el enchufe hembra para caja de
bateras.
Localice los cables de la caja de bateras y doble el cable
desnudo sobre el aislante en ambos cables. Coloque el cable
rojo en el conector hembra marcado V+ y el negro en el conector marcado O V.
Apriete los tornillos de manera que tanto el cable desnudo
como el aislante queden atrapados en el enchufe, esto provee
una conexin ms fuerte que simplemente prensando el cable
desnudo. Utilice siempre la caja de bateras elctricas de 6V
(se requiere de 4 pilas AA) suministrada. NO use una batera
PP3 de 9V.

El Software Gratuito para Trabajar con PICAXE


Requerimientos:
Windows 95/98/ME/NT/2000/XP
El software puede bajarlo de la
pgina del fabricante (www.rev-ed.co.uk) o de nuestra web: www.webelectronica.com.ar (con la clave picaxe) y debe instalarse haciendo un
click en el ejecutable, es decir, debe

18 CLUB SABER ELECTRONICA

Figura 19

instalar el software Editor de Programacin siguiendo las instrucciones en su pantalla. Si no lo tiene en su computadora, deber tambin instalar el software Adobe Acrobat Reader, ya
que lo necesitar para poder leer los manuales de ayuda.
Ejecutando un Programa de Muestra
El siguiente programa enciende y apaga la salida 7 cada
segundo. Cuando usted descarga este programa sobre el PICAXE del tablero (entrenador), el punto decimal del display de siete segmentos debe encenderse y apagarse cada segundo.
main:
high 7
pause 1000
low 7
pause 1000
goto main
Este programa utiliza los comandos high y low para controlar el pin de salida 7, y utiliza el comando de pause para
causar un retardo (1000 ms = 1 segundo).
El ltimo comando, el comando goto hace que el programa salte a la etiqueta main, que es el comienzo del programa. Esto significa que el programa es un bucle perpetuo (lazo
cerrado).
Note que la primera vez que la etiqueta es utilizada, debe
estar seguida por un smbolo de dos puntos (:). Este smbolo indica a la computadora que la palabra es una nueva etiqueta.
A continuacin explicamos, paso a paso, cmo realizar este primer ejercicio de prueba:
1. Conecte el cable PICAXE a un puerto serie de la computadora y preste atencin a cul de los puertos lo conecta (normalmente COM1 COM2).
2. Ejecute el Software Programming Editor.
3. En el men desplegable escoja Ver -> Opciones para acceder a la pantalla de opciones (sta puede que aparezca automticamente).
4. Haga click en Modo y seleccione PICAXE-18
5. Haga click en Puerto Serie y seleccione el puerto serie
al cual el cable PICAXE est conectado, luego haga click en
OK.
6. Escriba el siguiente programa:
main:
high 7
pause 1000
low 7
pause 1000
goto main
(Tome en cuenta el smbolo (:) directamente despus de la

Figura 20
etiqueta main y los espacios entre los comandos y los nmeros).
7. Asegrese que el circuito PICAXE est conectado al cable serie y a las bateras.
8. Seleccione PICAXE -> Ejecutar. Una barra de descarga
de programa debe aparecer mientras el programa es descargado. Al terminar la descarga, el programa debe comenzar a
ejecutarse automticamente. El punto decimal LED -Light Emitting Diode: Diodo Emisor de Luz- en la salida 7, deber encenderse y apagarse una vez por segundo.

Instrucciones para Uso en Windows


Damos, a continuacin, un listado de botones correspondientes a la barra del men (figura 20):
Open = Abrir
Save = Guardar o Salvar
Cut = Cortar
Copy = Copiar
Paste = Pegar
Print = Imprimir
Run = Ejecutar
a) Para descargar y ejecutar un programa:
1. Verifique que el cable de descarga est conectado tanto al PICAXE como al puerto serie de la computadora.
2. Verifique que las bateras estn conectadas al PICAXE.
3. Asegrese que el software Programming Editor
est en el modo correcto (La palabra PICAXE-18 debe aparecer
en la barra de estado en la esquina inferior izquierda de la
pantalla).
4. Haga click en Ejecutar (o en el respectivo botn de la
barra de herramientas)
b) Para salvar un programa:
1. Haga click en Archivo -> Guardar como( en el respectivo botn de la barra de herramientas)
2. Escriba el nombre bajo el cual quiere guardar el archivo
3. Haga click en <OK>
c) Para abrir un programa guardado:
1. Haga click en Archivo -> Abrir (o en el respectivo botn
de la barra de herramientas)

CLUB SABER ELECTRONICA 19

Este programa utiliza el comando wait. Los comandos


wait y pause se utilizan para crear retardos o tiempos muertos. Sin embargo, el comando wait puede ser utilizado nicamente con segundos enteros mientras que pause se puede utilizar para retardos ms cortos (el mismo se asigna en milsimas
d) Para iniciar un nuevo programa:
de segundo). Al comando wait se le pueden asignar nmeros
1. Haga click en Archivo- Nuevo
del 1 al 65, los cuales deben escribirse despus del comando.
Al comando pause se le pueden asignar nmeros entre 1 y
e) Para imprimir un programa:
65535.
1. Haga click en Archivo -> Imprimir (o en el respectivo
Es una buena tcnica de programacin usar tabulaciones
botn de la barra de herramientas)
(o espacios) al inicio de lneas sin etiquetas de manera que los
2. Si desea que a cada lnea del programa se le asigne un ncomandos estn alineados. El trmino espacios en blanco es
mero, asegrese de marcar la casilla Imprimir nmeros de lnea.
utilizado por programadores para definir tabulaciones, espa3. Haga click en <OK>
cios y lneas en blanco. Dichos espacios en blanco, utilizados
correctamente, hacen al programa mucho ms fcil de leer y
entender (vea las tabulaciones que hemos hecho en el prograAprendiendo a
ma de la tabla5; en la primera columna ponemos etiquetas o
Hacer Programas en Basic
definimos variables, en la segunda columna colocamos las instrucciones y en la tercera columna estn los comentarios que faUtilizando el Comando Symbol
cilitan la comprensin del programa).
Nota: Algunas versiones antiguas de lenguaje BASIC utiliAlgunas veces es difcil recordar cules pines estn coneczan nmeros de lnea en vez de etiquetas para trabajar con
tados a cules dispositivos. El comando symbol puede, en eslos comandos goto. Desafortunadamente, este sistema puede
tos casos, ser utilizado al inicio del programa para renombrar
ser muy inconveniente ya que si el programa es modificado poslas entradas y salidas. Note que este programa asume la coneteriormente agregando o eliminando lneas, todos los nmeros
xin de un timbre externo al pin de salida 7. Ver tabla 5.
de lnea posteriores deben ser modificados. El sistema de etiqueRecuerde que los comentarios [explicaciones posteriores al
tas, utilizado en la mayor parte de las versiones modernas de
smbolo de apstrofe ()] facilitan mucho la comprensin de calenguaje BASIC, supera este problema automticamente.
da lnea del programa. Estos comentarios son ignorados por la
computadora al descargar un programa al PICAXE. Todo lo
El cerebro del sistema PICAXE es el microcontrolador de
que en una lnea est despus de () es ignorado por
18 pines PIC16F627. Este PIC posee un programa que ha sido
el programa.
grabado para convertirlo en un elemento del sistema PICAXE
Las etiquetas (main: en el programa de la tabla 5) pue(se llama PICAXE-18).
den ser cualquier palabra (con la excepcin de palabras claAunque los microcontroladores son relativamente baratos
ves como por ejemplo switch) pero DEBEN empezar con una
(algunos microcontroladores cuestan menos de 2 dlares), los
letra. Cuando la etiqueta es definida por primera vez debe llemismos son dispositivos muy complejos que contienen miles de
var al final el smbolo de dos puntos (:). Esto indica a la comtransistores, resistencias y otros componentes electrnicos.
putadora que la palabra es una nueva etiqueta.
El microcontrolador PICAXE almacena sus programas (firmware) en su memoria FLASH no voltil. La ventaja de esta memoria es que
TABLA 5
no pierde el programa descargado
cuando la fuente de alimentacin (basymbol dp = 7
renombrar salida 7 dp (punto deci- teras) es desconectada del circuito
mal)
(cuando las bateras son reconectadas
symbol buzzer = 1
renombrar salida 1 buzzer (timbre)
el programa se inicia nuevamente). Sin
embargo, cuando desee reprogramar
main:
hacer una etiqueta llamada main
el PICAXE, puede descargar un nuevo
high dp
LED encendido
programa; esta accin borra el viejo
low buzzer
timbre apagado
programa almacenado en la memoria
wait 1
esperar un segundo
y almacena el nuevo programa en la
low dp
LED apagado
memoria de programa. La memoria shigh buzze
timbre encendido
wait 1
esperar 1 segundo
lo permite el almacenamiento de un
goto main
regresar al inicio (main)
programa a la vez.
2. Seleccione el archivo deseado de la lista haciendo click
en el mismo.
Haga click en <OK>

20 CLUB SABER ELECTRONICA

Tome en cuenta que no es posible sacar el programa fuera de


la memoria del PICAXE para
leerlo; por ende, si desea guardar el cdigo de un programa para utilizarlo posteriormente debe
guardarlo en su computadora antes de descargarlo al PICAXE. Esto
es una restriccin que el operador
debe tener en cuenta, dado que
en un PIC s es posible leer el programa grabado en la memoria.

TABLA 6
symbol counter = b0
symbol dp = 7
main:

El microcontrolador contiene adems de la memoria ROM


(Read Only Memory - Memoria de slo lectura), memoria temporal RAM (Random Access Memory - Memoria de Acceso
Aleatorio).
La memoria RAM es una memoria temporal utilizada para almacenar informacin mientras el programa es ejecutado.
La misma es utilizada normalmente para almacenar respuestas
de sumas matemticas que el microcontrolador hace mientras
est trabajando. Esta memoria es voltil, lo cual significa que
tan pronto las bateras son desconectadas, la informacin almacenada en la misma se pierde.
Hay 14 bytes de memoria temporal disponibles y los mismos son denominados desde b0 a b13 dentro de los programas.

El Circuito del Entrenador PICAXE-18


La figura 21 muestra el circuito bsico PICAXE-18. El resistor de 4k7 (4700), conectado en el pin 4, se usa como resistencia de pull-up para quitar al micro
del estado de reset. Si desea colocar
un sistema de reset, debe conectar un
interruptor o pulsador entre el pin 4 y
masa (tierra, gnd) de modo que al ser
presionado se produzca el estado de
reset del micro.

definir la variable counter como b0


asignar al pin 7 con el dp
for counter = 1 to 15
high dp
pause 500
next counter
end

iniciar un bucle for.....next


encender pin 7
esperar 0,5 segundos
siguiente counter (b0)
fin del programa

do de slo tres terminales. Los microcontroladores PIC comunes


no tienen este programa y por ende no pueden ser programados mediante el sistema PICAXE.
El microcontrolador PICAXE-18A es casi idntico al microcontrolador PICAXE-18 estndar, pero es ligeramente ms costoso ya que tiene el doble de capacidad de memoria (aproximadamente 80 lneas de programacin BASIC en vez de 40) y
salidas analgicas de alta resolucin (en vez de baja resolucin).
El sistema PICAXE utiliza una interfaz al puerto serie de la
computadora muy simple (es un cable de tres hilos). Aunque esta interfaz no utiliza verdaderos voltajes RS232, es de muy bajo costo y ha tenido un desempeo confiable en casi todas las
computadoras modernas. Vea en la figura 22 cmo se conecta
este cable en la placa del entrenador.
Es altamente recomendable utilizar esta interfaz, ya que cada vez que quiera programar el chip no debe quitarlo de la
placa de circuito impreso, slo debe conectar el cable entre la
placa y la computadora, ejecutar el programa Editor Programming y hacer la descarga correspondiente... as de simple!
Nota: La mayor parte de las computadoras modernas tienen dos puertos serie, normalmente denominados COM1 y
COM2. El software Editor de Programacin (Programming

Tome en cuenta que el microcontrolador PICAXE no es un


microcontrolador en blanco... ya
tiene un programa interno para
que pueda ser usado con el utilitario Programming Editor!
El microcontrolador PICAXE est
preprogramado con un firmware de
carga que permite la descarga directa
de programas con el cable suministra-

Figura 21

CLUB SABER ELECTRONICA 21

Figura 22 Editor) debe ser configurado con el puerto al cual el microcontrolador est conectado. Para ello, en el men desplegable
seleccione Ver -> Opciones -> Puerto
Serie, para elegir el puerto serie correspondiente en su computadora.
Si ya compr un cable de sistema PICAXE armado y utiliza una computadora
que posee el antiguo conectador de puerto serie de 25 pines, utilice un adaptador
9-25 para poder conectar el cable PICAXE
de 9 pines. Estos adaptadores pueden ser
comprados en cualquier tienda (casa) especializada en computadoras. Pero tambin, Ud. puede armar
el cable siguiendo las instrucciones que le daremos oportunamente.

Utilizando Bucles ForNext

symbol mark1 = b6
symbol space1 = b7
symbol mark2 = b8
symbol space2 = b9
let mark1 = 2
let space1 = 10
let mark2 = 20
let space2 = 10
main:

for b2 = 1 to 200
high 0
pause mark1
low 0
pause space1
next b2
pause 2000
for b2 = 1 to 200
high 0
pause mark2
low 0
pause space 2
next b2
pause 2000
goto main

22 CLUB SABER ELECTRONICA

Con frecuencia, es til repetir una parte de un programa


varias veces, por ejemplo al encender/apagar sucesivamente
un diodo LED (Light Emitting Diode, Diodo emisor de luz). En estos casos un bucle fornext puede ser utilizado.
Figura 23
El programa de la tabla 6 enciende y apaga 15 veces el
diodo LED conectado al pin de salida 7. El nmero de veces que el
TABLA 7
cdigo debe ser repetido es almarenombrar variables
cenado usando la variable b0 (el
PICAXE tiene 14 variables de 1
byte para uso general, nombradas de b0 a b13 en la memoria
RAM del chip PICAXE). Estas vaprecargar mark1/space1 con relacin de 2:10 (1:5)
riables pueden ser renombradas
usando el comando symbol con
el fin de hacerlas ms fcil de reprecargar mark2/space2 con relacin de 20:10 (2:1)
cordar.
Note nuevamente cmo los espacios en blanco han sido utilizainiciar un bucle for...next
dos para mostrar claramente toencender motor
dos los comandos contenidos enesperar tiempo indicado por mark1
tre los comandos for y next.
apagar motor

esperar tiempo indicado por space1


siguiente b2
detener motor por 2 segundos
iniciar un bucle for.....next
encender motor
esperar tiempo indicado por mark2
apagar motor
esperar tiempo indicado por space1
siguiente b2
detener motor por 2 segundos

Controlando la
Velocidad de un Motor
Debido a que el sistema PICAXE opera muy rpidamente, es posible controlar la velocidad de motores, encendindolos y apagndolos muy rpidamente. Este tipo

de control se conoce como PWM (Pulse


TABLA 8
Width Modulation, Modulacin por anmain:
cho del impulso). La PWM es una buena
sound 6, (50,100)
emitir un sonido en salida 6 con frecuencia 50 y longitud 100
tcnica de control ya que permite a los
sound 6, (100,100)
emitir un sonido en salida 6
motores operar a bajas velocidades mansound 6, (120,100)
emitir un sonido en salida 6
teniendo un alto torque (fuerza de giro).
pause 1000
esperar 1 segundo
La PWM es utilizada frecuentemente en
goto main
saltar al inicio del programa (main)
muchas aplicaciones, por ejemplo, para
controlar la velocidad de taladros y destornilladores elctricos. Para que la PWM funcione correctaFigura 24
mente, se necesitan motores de alta calidad. Los programas
aqu mostrados estn diseados para motores solares y puede que no funcionen correctamente si se utilizan motores de juguete baratos. Para la conexin del motor en nuestro entrenador, vea la figura 23.
El programa se muestra en la tabla 7.
Intente seguir el programa para ver si puede comprenderble b0 aumenta 1
lo; si no lo logra.... no se preocupe, recin estamos empezanunidad en cada Figura 25
do.
bucle (1-2-3, etc.).
Por consiguiente,
al utilizar la variaUso de Timbres y Zumbadores Electrnicos en el
ble b0 para asigSistema PICAXE
nar el tono, el mismo puede ser
Los timbres emiten un sonido cuando estn conectados a
cambiado en cauna fuente de alimentacin.
da bucle.
Este sonido, usualmente, est fijo a una frecuencia deterEn la tabla 10
minada; as, los timbres pueden emitir un solo tono. Los zumse ve el programa
badores electrnicos usan un tipo de sistema y pueden ser utilique realiza la miszados para emitir sonidos en diferentes tonos al proveerlos con
ma funcin pero cambiando el tono en orden descendente, es
una salida de diferentes frecuencias.
decir de 120 a 1.
El sistema PICAXE puede crear automticamente sonidos
En la tabla 11 vemos el programa que emite todos los 256
de diferentes frecuencias utilizando el comando sound (ver tasonidos posibles.
bla 8).
En este ltimo caso el programa es ejecutado indefinidaPara probar este programa se debe instalar un zumbador
mente. Sin embargo, es importante comprender cmo el PICAelectrnico en el tablero tutorial (entrenador). Para hacer esto,
XE ejecuta las operaciones matemticas.
ubique los conectores del zumbador, marcados con la palabra
PIEZO (figuras 24 y 25). Luego suelde el cable roTABLA 9
jo al agujero marcado + y el cable negro al agumain:
jero marcado -.
En el programa, el primer nmero indica el nfor b0 = 1 to 120 iniciar un bucle for....next
mero de pin (en el tablero tutorial el pin de salida
sound 6, (b0,50) emitir sonido en salida 6 con frecuencia b0 y longitud 50
6 es utilizado). El siguiente nmero es el tono, seNext b0
siguiente b0
guido por la duracin del sonido (longitud). Mienend
tras ms alto sea el nmero de tono, mayor ser la
altura tonal del sonido (frecuencia, note que algunos zumbadores no pueden producir tonos muy
TABLA 10
altos y por lo tanto nmeros de tono mayores de main:
for b0 = 120 to 1 step -1 iniciar un bucle for.....next (en cuenta regresiva)
127 puede que no sean escuchados).
sound 6, (b0, 50)
emitir sonido en salida 6 con frec. b0 y longitud 50
El siguiente programa que vemos en la tabla 9
next b0
siguiente b0
utiliza un bucle fornext para producir 120 soniend
dos diferentes. El nmero almacenado en la varia-

CLUB SABER ELECTRONICA 23

El PICAXE slo interpreta nmeros en byte, o sea nmeros enteros del 0 al 255. No puede interpretar fracciones, ni
Figura 26

nmeros negativos, ni nmeros mayores de 255. As, si se trata de sumar 1 a 255, el PICAXE saltar de nuevo a 0. Por consiguiente, en el programa anterior, el valor de la variable b0 se
comportar de la siguiente manera mientras el programa se
ejecuta:
252-253-254-255-0-1-2- etc.

Uso de Entradas con Sensores Digitales


Un sensor digital es un simple sensor del tipo interruptor
que slo puede estar en dos posiciones: encendido apagado.
Algunos ejemplos de sensores digitales comunes son:

TABLA 11
main:
sound 6, (b0, 50)
let b0 = b0 + 1
goto main

emitir sonido en salida 6


sumar 1 al valor de la variable b0
ir a inicio del programa (main)

TABLA 12
hacer etiqueta llamada main
if input6 is on then flash si la entrada 6 (Input 6) est encendida ir
a flash sino ir a main
goto main
flash:
hacer etiqueta llamada flash
high 7
encender salida 7 (output 7)
pause 2000
esperar 2 segundos
low 7
apagar salida7
goto main
ir a main
main:

TABLA 13
main:
readadc 2,b0
if b0 > 120 then stop
if b0 < 70 the bot
low 1
low 2
goto main

hacer etiqueta llamada main


leer seal de canal 2 en variables b0
si b0 >120 ir a stop
si b0 <70 ir a bot
sino apagar 1
y apagar 2
ir a main

high 1
low 2
goto main

hacer una etiqueta llamada top


encender 1
apagar 2
ir a main

high 2
low 1
goto main

hacer una etiqueta llamado bot


encender 2
apagar 1
ir a main

top:

bot:

24 CLUB SABER ELECTRONICA

microinterruptores
interruptores de botn de presin e interruptores oscilantes
interruptores de lengeta
El tablero del entrenador propuesto tiene dos
interruptores de botn de presin conectados a las
entradas 6 y 7 (figura 26). Adicionalmente se pueden conectar otros dos interruptores a las entradas
0 y 1.
En la tabla 12 vemos el programa que indica
al PICAXE cmo reaccionar cuando los interruptores de botn de presin son presionados. En el
programa el pin de salida 7 se ilumina cada vez
que el interruptor de botn de la entrada 6 es presionado.
En este programa las tres primeras lneas forman un bucle continuo. Si la entrada est apagada el programa se reiniciar una y otra vez.
Una vez que el interruptor es presionado, el
programa salta a la etiqueta llamada flash. El
programa luego activa la salida 7 por dos segundos antes de regresar nuevamente a main.
Note cuidadosamente la ortografa en la lnea
del comando ifthen entrada6 (input6) es una
sola palabra (sin espacios en blanco). Note tambin que nicamente se debe escribir la etiqueta
posterior al comando then no se permite ninguna otra palabra aparte de la etiqueta.

Uso de Entradas con Sensores Analgicos


Los sensores analgicos miden seales continuas tales como luz, temperatura o posicin.
El sensor analgico provee una seal que consiste en un voltaje variable (figura 27). Este voltaje puede luego ser representado con un nmero
del 0 al 255 (Por ejemplo muy oscuro = 0, luz muy

brillante = 255). Ejemplos tpicos de sensores analgicos son:

Figura 27

Fotorresistencias LDRs (Light Dependent Resistors - Resistencias variables con la luz ).


Termistores
Resistencias variables (potencimetros)
El tablero tutorial (entrenador) posee una fotorresistencia
montada en el mismo, la cual est conectada a la entrada 2 (input2).
La fotorresistencia es un compoFigura 28
nente cuya resistencia cambia al variar la intensidad de luz que incide sobre la misma, es decir, su resistencia
cambia segn el nivel de luz.
Bajo luz brillante su resistencia es
baja (tpicamente alrededor de 1k)
mientras que en la oscuridad, su resistencia es muy alta (tpicamente alrededor de 1M).
En la figura 28 se muestra el smbolo y la curva tpica de resistencia
contra intensidad de luz para la fotorresistencia. La fotorresistencia est
conectada a la entrada 2 en configuracin de divisor de voltaje. Tal como se muestra en la figura
29.

Cmo se Leen las Entradas Analgicas

70 y 120 en el programa anterior). El comando debug permite ver fcilmente el valor en tiempo real de un sensor, permitiendo calcular el valor umbral experimentalmente.
Al ejecutar el programa de la tabla 14 aparecer una ventana de depuracin (debug) en la pantalla de la computadora,
indicando el valor de la variable b0. A medida que el sensor
es probado con la variable, la ventana va indicando la lectura
actual del sensor.

El valor de una entrada analgica puede ser fcilmente copiado dentro de una variable utilizando el comando readadc.
Luego, se puede probar el valor de la variable (0 a 160). El
programa de la tabla 13 enciende un diodo LED si el valor es
Programacin por Organigramas
mayor que 120 y otro diodo LED, si el valor es menor de 70.
o Diagramas de Flujo
Si el valor est entre 70 y 120, ambos diodos LED permanecen
apagados.
Los diagramas de flujo u organigramas son herramientas
Note que el microcontrolador PICAXE-18 tiene tres canales
muy tiles que permiten representar programas grficamente,
o entradas analgicas nombradas del
para hacerlos ms fciles de entender. El software Program0 al 2. En el tablero de nuestro entreFigura 29
ming Editor incluye un editor de organigramas que permite dinador la fotorresistencia est conectabujar los mismos en la pantalla de la computadora. Estos orgada permanentemente al pin 2, pero los
otros dos canales (0 y 1)
estn libres para conecTABLA 14
tar otros sensores.
Frecuentemente, al
main:
hacer etiqueta llamada main
utilizar sensores anloreadadc 2,b0
leer seal de canal 2 en variable b0
gos es necesario calcular
debug b0
transmitir valor a la pantalla del ordenador
el valor de umbral nepause 100
pausa corta
cesario para el programa (esto es, los valores
goto main
ir a main

CLUB SABER ELECTRONICA 25

nigramas pueden luego ser convertidos en cdigo BASIC para


descargarlos en el PICAXE. Los organigramas pueden tambin
ser impresos o exportados (enviados) como figuras para incluirlos en reportes de proyectos.
A continuacin damos las instrucciones detalladas para la
construccin de organigaramas:

Figura 30

Figura 31

1. Conecte el cable PICAXE a uno de los puertos serie de


la computadora. Recuerde tomar nota del puerto serie al cual
conecta el cable (normalmente COM1 COM2).
2. Inicie el software Editor de Programacin
3. En el men desplegable seleccione Ver -> Opciones para acceder a la pantalla de opciones (sta puede que aparezca automticamente).
4. Haga click en la lengeta Modo y seleccione PICAXE-18.
5. Haga click en la lengeta Puerto Serie y seleccione el puerto serie al cual ha conectado el cable PICAXE. Haga click en OK
6. Cree un nuevo organigrama haciendo click
en el men Archivo -> Nuevo Organigrama.
7. Dibuje el organigrama mostrado abajo arrastrando los bloques requeridos a la pantalla y luego
utilizando el ratn para dibujar las flechas para conectar los bloques.
8. Cuando termine de dibujar el organigrama,
puede convertirlo en un programa BASIC seleccionando el men Organigrama -> Convertir Organigrama a BASIC. Luego el programa BASIC puede
ser descargado al PICAXE de la manera usual.
9. Para imprimir o salvar el organigrama, use el
men de Archivo. Para exportar el organigrama como una figura, utilice el men Archivo -> Exportar.
Para exportar la imagen a un documento de Word
seleccione el archivo tipo EMF. Para exportar el organigrama a una pgina web use el archivo tipo
GIF.
El Editor de Organigramas permite dibujar y simular organigramas en la pantalla. El organigrama
puede luego ser convertido automticamente en un
programa BASIC para ser descargado en el microcontrolador (vea la figura 30).
Los comandos de la pantalla de Editor de Organigramas son los siguientes (figura 31):
Select = Seleccionar
Zoom = Zoom
Zoom In/Out = Acercar/Alejar
Pan = Mover
Line = Lnea
Edit bar = barra editora
Seleccionar
Utilice este comando para seleccionar y mover
bloques. Cuando un slo bloque es seleccionado, su
cdigo BASIC puede ser editado en la barra editora
en la parte inferior de la ventana.

26 CLUB SABER ELECTRONICA

Figura 32

donde desea ubicarlo y luego use el comando Seleccionar para mover el bloque a la posicin correcta.
Una vez que el bloque est en posicin, haga click en l de
manera que sea resaltado. El cdigo BASIC del objeto aparecer en la barra editora en la parte inferior de la pantalla. Edite el cdigo si lo requiere y luego presione el botn de tic para salvar los cambios. Para informacin adicional acerca de
cada comando vea los archivos de ayuda Comandos BASIC. Note que algunos comandos nicos (por ejemplo servo
para el PICAXE28) slo aparecern cuando el software est en
el modo apropiado (men Ver -> Opciones).

Uniendo Bloques

Zoom
Utilice para acercar una parte del diagrama. Use el click
derecho para alejar.
Acercar/Alejar
Para acercar haga click y mueva el ratn hacia arriba. Para alejar haga click y mueva el ratn hacia abajo.
Mover
Utilice este comando para mover el organigrama completo
alrededor de la pantalla.
Lnea
Utilice este comando para dibujar lneas entre los bloques.
Se pueden hacer quiebres en las lneas haciendo click una vez.
Cuando la lnea est cerca de un bloque, sta se pegar al
punto de conexin del mismo.
Etiqueta
Utilice este comando para aadirle etiquetas o ttulos a los
elementos del organigrama.
Out / If / Delay / Sub / Other
Haga click en estos botones para ir al submen de estos comandos y seleccionar el comando deseado.

Dibujando Organigramas
Para dibujar un organigrama haga click en uno de los botones de menes de comandos (Salida/Si/ Retardo/Sub/Otro)
de la barra de herramientas para ir al submen de comandos
requerido. Seleccione el comando deseado y luego haga click
en la pantalla, en el lugar donde desea situar al comando. No
trate de colocar el bloque exactamente en posicin en primera
instancia pngalo en la pantalla en las cercanas del rea

Para unir bloques, debe acercarlos uno al otro hasta que


se junten. Alternativamente, se pueden dibujar lneas entre los
mismos usando el comando lnea en la barra de herramientas.
Note que slo es posible unir la parte inferior de un bloque nicamente con la parte superior de otro. Adems, slo se permite sacar una lnea de la parte inferior de conexin de cada bloque. Para hacer diagramas ordenados, se pueden agregar
quiebres a las lneas haciendo click en las mismas. Cuando una
lnea es movida cerca de un punto de conexin, la misma se
pegar a ste; para terminar la lnea, haga click una vez ms
y la misma quedar en posicin.
Las lneas no pueden ser movidas. Si trata de mover una lnea la misma ser borrada y tendr que crear una nueva lnea.

Simulacin de Pantalla
Para simular el organigrama, haga click en Simular en el
men Organigrama. El programa comenzar a ejecutarse en
pantalla (figura 32). Mientras el programa se ejecuta, los bloques cuyos comandos estn siendo ejecutados se irn resaltando en rojo. Las ventanas de Entradas/Salidas y Variables
tambin aparecern mientras se ejecuta la simulacin. Para
cambiar los valores de las entradas, haga click en el respectivo interruptor en pantalla o utilice la barra deslizadora de entradas analgicas. El tiempo de retardo entre un objeto y otro
puede ser ajustado en las Opciones del Organigrama (men
Ver -> Opciones -> Organigrama).
Note que algunos comandos representan acciones que no
pueden ser simuladas en pantalla. En estos casos el comando
es simplemente ignorado al ejecutar el organigrama.

Convirtiendo Organigramas
Los organigramas no son descargados directamente al microcontrolador. Primero el organigrama es convertido en un

CLUB SABER ELECTRONICA 27

TABLA 16

TABLA 15
main:

main:
let pins = %00111111
pause 250
let pins = %00000110
pause 250
let pins = %01011011
pause 250
let pins = %01001111
pause 250
let pins = %01100110
pause 250
let pins = %01101101
pause 250
let pins = %01111101
pause 250
let pins = %00000111
pause 250
let pins = %01111111
pause 250
let pins = %01101111
pause 250
goto main

dgito 0
esperar 0,25 segundos
dgito 1
esperar 0,25 segundos
dgito 2
esperar 0,25 segundos
dgito 3
esperar 0,25 segundos
dgito 4
esperar 0,25 segundos
dgito 5
esperar 0,25 segundos
dgito 6
esperar 0,25 segundos
dgito 7
esperar 0,25 segundos
dgito 8
esperar 0,25 segundos
dgito 9
esperar 0,25 segundos

programa BASIC, el cual luego es descargado. Para convertir


un organigrama seleccione Convertir en el men Organigrama y ser creado el programa BASIC del organigrama.
Aquellos bloques que no estn conectados a los bloques
inicio sub en el organigrama, sern ignorados al momento de hacer la conversin. La conversin se detendr si se encuentra un bloque no conectado; por lo tanto, utilice siempre un
bloque detener para terminar el diagrama antes de iniciar
una simulacin o de convertir el diagrama.
Note que es posible convertir y descargar un organigrama
presionando dos veces la tecla F5.

Utilizando Smbolos
Las Entradas, Salidas y Variables pueden ser renombradas
utilizando la Tabla de Smbolos del men Organigrama.
Cuando un smbolo es renombrado, el nuevo nombre aparecer en los menes desplegables en la barra editora. No deben
utilizarse nombres de comandos (por ejemplo switch o sound)
como smbolos, ya que esto puede generar errores en el programa BASIC convertido.

readadc 2,b1
if b1 > 150 then show9

leer seal analgica de


canal 2 en variable b1
probar variable b1 y
saltar al respectivo

comando
if b1 > 130 then show8
if b1 > 110 then show7
if b1 > 90 then show6
if b1 > 70 then show5
if b1 > 50 then show4
if b1 > 30 then show3
if b1 > 20 then show2
if b1 > 10 then show1
show0:
let pins = %00111111
goto main

dgito 0

let pins = %00000110


goto main

dgito 1

let pins = %01011011


goto main

dgito 2

let pins = %01001111


goto main

dgito 3

let pins = %01100110


goto main

dgito 4

let pins = %01101101


goto main

dgito 5

let pins = %01111101


goto main

dgito 6

let pins = %00000111


goto main

dgito 7

let pins = %01111111


goto main

dgito 8

let pins = %01101111


goto main

dgito 9

show1:
show2:
show3:
show4:
show5:
show6:
show7:
show8:
show9:

ganigramas tambin pueden ser copiados al portapapeles de


Windows (para pegarlos luego a otras aplicaciones) mediante
el men Editar.

Guardando e Imprimiendo Organigramas


Sistemas de Nmeros
Los organigramas pueden ser guardados, impresos y exportados como figuras (para ser insertados en documentos de
procesadores de palabras) utilizando el men Archivo. Los or-

28 CLUB SABER ELECTRONICA

Los microcontroladores operan usando un gran nmero de


comandos en un espacio de tiempo muy corto y procesando se-

ales electrnicas. Estas seales estn codificadas en sistema


binario; la seal puede ser high (1) o low (0).
El sistema numrico utilizado diariamente es el sistema decimal. Este sistema numrico utiliza diez dgitos (del 0 al 9) para explicar qu tan grande o pequeo es el nmero. Sin embargo, al trabajar con microcontroladores muchas veces es ms fcil trabajar en cdigo binario, especialmente al tratar de controlar mltiples salidas al mismo tiempo. Un slo dgito binario
es conocido como un bit (binary digit dgito binario). El sistema PICAXE utiliza 8 bits (1 byte) por cada palabra de datos,
teniendo al dgito menos significativo en el extremo derecho y
al dgito ms significativo en el extremo izquierdo. Por consiguiente, el nmero binario %11001000 pone a los bits 7,6,3
en high (1) y al resto en low (0). El smbolo % indica a la computadora que est trabajando en sistema binario y no en decimal.
La utilizacin del cdigo binario permite controlar las ocho
salidas al mismo tiempo, en vez de slo utilizar los comandos
high y low. El programa que vemos en la tabla 15 demuestra
cmo hacer que la pantalla de siete barras del tablero tutorial
cuente del 0 al 9.
Cada lnea let pins = cambia el nmero de barras encendidas en la pantalla de siete segmentos. Esto es mucho ms rpido que utilizar, muchsimas veces, los comandos high y low
para hacer lo mismo.

Figura 33
Figura 34

Visualizando Cifras Analgicas en el


Display de 7 Segmentos
Figura 35

El programa de la tabla 16 lee la cantidad de luz detectada por la fotorresistencia en la entrada 2 y luego visualiza
una cifra asignada a dicha cantidad de luz en la pantalla de
siete segmentos.

Controlando Motores Paso a Paso


Los motores paso a paso son motores de alta precisin comnmente utilizados en unidades de disco, impresoras, plotters
y relojes de computadoras. A diferencia de los motores de CC,

TABLA 17
Paso
1
2
3
4
1

Bobina 4
(Output 3)
1
1
0
0
1

Bobina 3
(Output 2)
0
0
1
1
0

Bobina 2
(Output 1)
1
0
0
1
1

Bobina 1
(Output 0)
0
1
1
0
0

CLUB SABER ELECTRONICA 29

Los motores paso a paso tienen algunas limitaciones. Primero, el consumo de potencia es mayor cuando el motor est detenido (debido a que todas las bobinas requieren estar energizadas). Segundo, la velocidad de operacin est limitada a
aproximadamente 100 pasos por segundo, lo cual equivale
a 2 revoluciones por segundo 120 RPM.
El motor paso a paso contiene una
serie de electroimanes fijos a la armaduTABLA 18
ra central y cuatro bobinas ubicadas alrededor de la carcasa del motor. Cuando pasa corriente elctrica por estas bodefinir variable
binas, las mismas generan un campo
fijar el retardo (delay) en 0,1 segundos
magntico el cual atrae o repele a los
electroimanes permanentes en la armaprimer paso
dura, provocando que la armadura gire
pausa de 0,1 segundos (valor asignado al retardo)
un paso hasta que los campos magnsiguiente paso
ticos estn alineados.
pausa de 0,1 seg.
Luego, las bobinas son energizadas
con un patrn diferente para crear un
siguiente paso
campo magntico diferente y provocar
pausa de 0,1 seg.
que la armadura gire otro paso, figura
siguiente paso
34.
pausa de 0,1 seg.
Para hacer que la armadura gire
ir a main (bucle perpetuo)
continuamente, las cuatro bobinas internas del motor paso a paso deben ser encendidas y apagadas continuamente en
TABLA 19
cierto orden. El chip controlador ULN2003A del tablero tutorial (nuestro enrenombrar salida7 dp
trenador) provee el mtodo necesario
renombrar salida6 buzzer
para interrelacionar a estas cuatro bobidefinir a la variable counter como b0
nas (figura 35).
El motor paso a paso debe ser cohacer etiqueta llamada main
nectado
a los agujeros en el tablero tutoir al sub-procedimiento flash
rial
de
la
siguiente manera:
ir al sub-procedimiento noise

los cuales giran libremente al aplicarles potencia, los motores


paso a paso requieren que su fuente de alimentacin sea continuamente impulsada en cuatro patrones diferentes. Por cada impulso, el motor se mueve un paso, tpicamente 7.5 (requiriendo por lo tanto 48 pasos para una revolucin completa),
figura 33.

symbol delay = b0
let delay = 100
main:

let pins = %00001010


pause delay
let pins = %00001001
pause delay
let pins = %00000101
pause delay
let pins = %00000110
pause delay
goto main

symbol dp = 7
symbol buzzer = 6
symbol counter = b0
main:
gosub flash
gosub noise
goto main
end

ir a main
fin del programa principal

flash
for counter = 1 to 25
high dp
pause 50
low dp
pause 50
next counter
return

hacer un sub-procedimiento llamado flash


iniciar un bucle for....next
encender diodo LED
esperar 0,05 segundos
apagar diodo LED
esperar 0,05 segundos
siguiente counter (b0)
retornar del sub-procedimiento

high buzzer
pause 2000
low buzzer
return

hacer un sub-procedimiento llamado noise


encender timbre
esperar 2 segundos
apagar timbre
retornar del sub-procedimiento

noise:

30 CLUB SABER ELECTRONICA

Cable Negro: 2 +
Cable Blanco: 3 +
Cable Amarillo: 0
Cable Rojo:1
Cable Naranja: 2
Cable Marrn:3
La tabla 17 muestra los cuatro pasos distintos requeridos para hacer girar el motor. Para hacer girar al motor
en direccin contraria, los pasos deben
ser invertidos (4-3-2-1-4-etc. en vez de 12-3-4-1-etc.)
Nota: La configuracin del alambrado de los motores paso a paso puede variar segn el fabricante. Por lo tan-

Figura 36

to, puede que sea necesario reorganizar las conexiones de las


bobinas para que la secuencia mostrada arriba opere correctamente. Un arreglo incorrecto de las bobinas puede causar
que el motor vibre en una direccin y otra, en vez de girar continuamente. La mayora de los motores paso a paso estn dise-

ados para trabajar con 12V, pero generalmente pueden trabajar sin problemas (aunque con un torque reducido) con 6V.
El siguiente programa tambin puede utilizar un nmero binario para encender y apagar todas las lneas de salida al mismo tiempo. La siguiente tabla muestra el nmero binario de salida para cada paso:

Fig. 37
Paso
1
2
3
4
1

Salida
binaria
%00001010
%00001001
%00000101
%00000110
%00001010

Intente cambiar
la velocidad de giro
alterando el valor
del retardo (delay)
en el programa que
vemos en la tabla
18.

CLUB SABER ELECTRONICA 31

Fig. 38

Subrutinas

jimos que hay varios circuitos (de hecho


mencionamos tres). La empresa Revolution Education ofrece cada uno de estos
circuitos en forma de kits; sin embargo,
Ud. puede armar su propio entrenador.
En la figura 36 se brinda el circuito
de un entrenador para que Ud. realice
sus propias experiencias.
El entrenador incluye un circuito integrado ULN2803A para que pueda manejar pequeos motores, pero no se ha
incluido la fotorresistencia y el display
de 7 segmentos; sin embargo, no tendr
problemas en conectarlos si sigue las instrucciones que se brindan en la explicacin de cada programa. LK es un puente
de conexin (un jumper o simplemente
un cable).
Hemos hecho referencia al PICAXE18 porque en otras secciones trabajaremos con el PICAXE-08. En la figura 37 se
reproduce el esquema de circuito impreso para que monte su propio entrenador.
En la figura 38 se muestra el detalle de armado del cable
que sirve como interfaz entre el entrenador y la computadora.
*****************

Una subrutina es un sub-procedimiento o mini-programa


separado, el cual puede ser llamado desde el programa principal. Una vez que se ejecuta la subrutina, el
programa principal contina. Las subrutinas
son frecuentemente utilizadas para separar el
programa principal en pequeas secciones,
symbol dp = 7
para hacerlo ms fcil de comprender las susymbol counter = b0
brutinas que realizan tareas comunes, tambin pueden ser copiadas de programa a
main:
programa para ahorrar tiempo.
let b2 = 5
El programa de la tabla 19de la pgina
gosub flash
anterior utiliza dos subrutinas para separar
pause 500
las dos secciones principales del programa
let b2 = 15
(flash y noise).
gosub flash
El programa que podemos ver en la tabla
pause 500
20, muestra como una variable puede ser utigoto main
lizada para transferir informacin hacia una
subrutina. En este caso, la variable b2 es utiend
lizada para indicar al controlador que debe
ejecutar la subrutina flash, primero cinco y
flash:
luego quince veces.

El Circuito del Entrenador


En este captulo hemos mencionado que
precisamos un entrenador para corroborar
los diferentes conceptos que presentamos. Di-

32 CLUB SABER ELECTRONICA

for counter = 1 to b2
high dp
pause 250
low dp
pause 250
next counter
return

TABLA 20
renombrar salida7 dp
definir a la variable counter como b0
hacer una etiqueta llamada main
precargar a b2 con el nmero 5
ir al sub-procedimiento flash
esperar 0,5 segundos
precargar a b2 con el nmero 5
ir al sub-procedimiento flash
esperar 0,5 segundos
ir a main
fin del programa principal
hacer un sub-procedimiento llamado flash
iniciar un bucle for....next
encender diodo LED
esperar 0,25 segundos
apagar diodo LED
esperar 0,25 segundos
siguiente counter
retornar al sub-procedimiento

Art Tapa - ECU.qxd

4/12/12

9:11 AM

Pgina 7

Tec Repa - vibra iPhione 4.qxd

4/12/12

9:01 AM

Pgina 75

INTRODUCCIN
Comenzaremos con una aplicacin muy sencilla, por lo
que en primera instancia nos dedicaremos a encender y apagar leds, de acuerdo al estado que guarden las terminales de
entrada de datos del microcontrolador. Cabe aclarar que conforme se avance en los temas de PICAXE podremos incorporar
controles para motores, utilizacin de convertidores analgico
- digital (ADC), etc. Recordemos que el sistema PICAXE est disponible en tres versiones que son el de 8 terminales (PICAXE08), 18 terminales (PICAXE-18) y 28 terminales (PICAXE-28), y
en funcin de las terminales que tienen disponibles para la entrada y salida de datos, sern las que ocuparemos para comunicar al microcontrolador con el exterior.
Para visualizar datos usamos un circuito
muy sencillo para encender leds, el cual se
muestra en la figura 1. Este circuito lo podemos
reproducir tantas veces como terminales de salida se tengan disponibles.
El primer circuito que se recomienda para
ingresar datos discretos (digitales) al microcontrolador es un interruptor con reposicin automtica (push-button), el cual se muestra en el
circuito de la figura 2. De igual manera que en
el caso del circuito de la figura 1, se puede reproducir el circuito de la figura 2 tantas veces
como entradas tenga disponible el microcontrolador. Para realizar el primer ejercicio, vamos
a elegir uno de los tres tipos de microcontroladores PICAXE que se tienen disponibles, que en

este primer ejercicio se trata del PICAXE-18; pero, posteriormente, se realizarn ejercicios con todos los tipos de microcon-

Figura 1

Figura 2

Figura 3

CLUB SABER ELECTRONICA 35

troladores PICAXE. El circuito propuesto para esta


primera experiencia se muestra en
la figura 3, en la
Figura 4
cual se tiene 1 entrada y 1 salida.
Para programar el microcontrolador PICAXE la
primer accin que
tenemos que realiFigura 5
zar es abrir el software de programacin llamado
PICAXE Programming Editor y que previamente tuvo que ser
instalado. Una vez que hacemos doble click sobre el cono del
software de programacin y accedemos al ambiente de programacin, aparece una ventana en donde se configuran las opciones con las cuales trabajaremos.
Como primer paso, ya que es la primera vez que utilizamos este software, es conveniente seleccionar el men identificado como Language, ya que aqu es donde se configura el
lenguaje con el cual estaremos interactuando. Si desea ms detalles sobre esta parte del programa, puede bajarlo de Internet
o adquirir la revista Saber Electrnica N 215. De internet, puede bajarlo desde nuestra web con la clave progpicaxe.
Para empezar a trabajar, debemos configuar el programa
(es muy sencillo, si lo desea, baje el tema completo desde nuestra web), seleccionando la opcin Modo del men para elegir el PICAXE que vamos a emplear en nuestro proyecto, qu
frecuencia de operacin tendremos (generalmente 4MHz), etc.
Luego, debemos elegir la opcin modo del men para indicar en qu puerto tendremos el circuito para descargar el programa. De la figura 4 observamos el ambiente de trabajo que
presenta el software de programacin de los microcontroladores PICAXE, en el cual se aprecia un espacio en blanco que es
donde se ingresan las instrucciones en forma de BASIC.
Qu instrucciones son las que utilizaremos?
Si no sabemos, no es el fin del mundo y vamos paso a paso. Para comenzar utilizaremos una opcin que se cuenta en

Figura 6

36 CLUB SABER ELECTRONICA

este software para programar a los microcontroladores que son


los diagramas de flujo, por lo que como se indica en la figura
4, seleccionamos de la barra de herramientas la opcin Archivo, posteriormente Nuevo y por ltimo Nuevo Organigrama, y lo que aparecer ser el ambiente de trabajo para ingresar el diagrama de flujo de nuestro programa.
Para comenzar, ste va a ser nuestro campo de trabajo ya
que de forma intuitiva todos sabemos hacer diagramas de flujo. Pues bien, antes de seleccionar los bloques que lo constituirn, vamos a describir cul es el algoritmo del programa que
queremos desarrollar:
Cuando se oprima un pulsador se encienda un
led, y cuando se suelte el pulsador se apague el led.
Existen bloques prediseados que nos auxilian en el manejo del estado que guardan las terminales de entrada del microcontrolador de manera independiente, por lo que como se
muestra en la figura 5 seleccionamos el recuadro que tiene indicado un rombo y dentro de ste la palabra if.
Ahora lo que tenemos que hacer es seleccionar qu condicin es la que utilizaremos, que para este ejercicio ser la que
se encuentra dentro del recuadro que tiene una figura de un rombo y dentro de ste la palabra Pin (observe la figura 6), esto
es, estaremos leyendo la condicin de una terminal de entrada
que, por defecto cuando lo ubicamos sobre nuestra rea de trabajo, siempre se coloca la entrada 0 (terminal 17 del microcontrolador, figura 3). Este bloque tiene la tarea de leer el estado lgico de la terminal de entrada y la compara con un 1 lgico y
dependiendo de si la entrada es igual o no, tiene dos posibles
salidas Y por si es igual a 1 lgico y N por si la entrada es
0 lgico. Y por ltimo, oprimimos el recuadro que tiene una flecha en forma de U para regresar al men principal.
De acuerdo al algoritmo que planteamos lneas atrs, lo que
tenemos que hacer es que se encienda un led cuando en la terminal de entrada se encuentre un 1 lgico, o que el led se apague cuando en la entrada se encuentra un 0 lgico. Para esta actividad recurrimos al recuadro identificado con la palabra Out,
ya que es ah donde se encuentran los bloques que actan sobre
las terminales de salida del microcontrolador. Una vez en el interior del men de bloques de salida, tenemos que seleccionar la
accin que har que el led se encienda o se apague, por lo que
en primer instancia seleccionamos el bloque identificado con la
palabra High, el cual quiere decir que la salida se encender.
Por cierto, cuando seleccionaFigura 7 mos este bloque, por defecto se
ubica la salida 0 (terminal 6 del
microcontrolador, figura 3), tal
como se ilustra en la figura 7.
Ya se tiene entonces el bloque que encender el led, por
lo que ahora requerimos la accin correspondiente con su
apagado, y sta corresponde

al recuadro identificado con la palabra Low, que es precisamente el bloque que realizar la tarea de apagar el led, y tambin por defecto, al seleccionarlo por primera vez, se ubica en
la salida 0.
Una vez que ya tenemos los bloques que necesitamos para ingresarle o sacarle datos al microcontrolador PICAXE, procedemos ahora a unir los bloques para que realicen el algoritmo que fue planteado lneas atrs. Para ello existe una herramienta que se encuentra en un recuadro identificado con una
lnea vertical que en sus extremos tiene un *.
Cuando seleccionamos esta herramienta y acercamos el
puntero del ratn sobre alguno de los bloques que ya se encuentran en el rea de trabajo, se les aparece un crculo de color rojo en aquel punto que requiere una conexin, tal como se
ilustra en la figura 8. Ya seleccionado el punto de conexin, trazamos la lnea hasta el siguiente punto de conexin de un bloque para realizar la unin lgica del flujo de datos. Cabe aclarar que para cada unin que se necesite realizar, se tiene que
volver a seleccionar la herramienta de conexin. En la figura 9
podemos apreciar la conexin completa de todos los bloques.
Si ya terminamos de disear nuestro diagrama de flujo y antes
de programar el microcontrolador, es importante saber si el
programa va a funcionar, porque recuerden que no es lo mismo desear que el microcontrolador haga lo que segn nosotros programamos, que lo que realmente hace en funcin del
programa que ingresamos. Existe en el software de los PICAXE
la posibilidad de simular el programa, y eso es lo que vamos a
hacer, por lo que seleccionamos el recuadro que tiene el smbolo de una punta de flecha tal como se ilustra en la figura 9,
lo seleccionamos y enseguida aparecern 2 ventanas. Una de
ellas indica el estado lgico que guardan las salidas y entradas
del microcontrolador; esta ventana aparece en la parte inferior
de la imagen de la figura 10.
Los recuadros verdes que se iluminan indican qu salidas
estn siendo activas con un 1 lgico, mientras que los que aparecen debajo de los cuadros verdes, indican la posicin de las
seales de entrada al microcontrolador, los cuales cuando se
encuentran en la posicin inferior significa que la entrada se
encuentra en 0 lgico, y si estn en la posicin superior la entrada se encuentra en 1 lgico. Por otra parte tambin se observa que, dependiendo de dnde se encuentre la posicin del
switch, se iluminar en color rojo la lnea que une los diferentes bloques que son afectados por la respuesta del estado lgico de entrada, y de esta manera podemos visualizar qu es lo
que est sucediendo con nuestro programa.
Una vez que simulamos nuestro programa y observamos
que las condiciones del algoritmo se cumplen (encender un led
cuando se tiene un 1 lgico en la entrada y apagar el led cuando se tiene un 0 lgico en la misma entrada), ya estamos listos
para dar el siguiente paso, que es convertir el diagrama de flujo a instrucciones de BASIC, para lo cual en la barra de herramientas seleccionamos el men identificado como Organigra-

Figura 8

Figura 9

Figura 10

Figura 11

CLUB SABER ELECTRONICA 37

ma y despus la opcin Convertir el Organigrama a Basic


(de manera rpida pudimos presionar la tecla F5), tema que

Figura 12

Figura 14

38 CLUB SABER ELECTRONICA

Ud. puede bajar sin cargo de nuestra web (www.webelectronica.com.ar).


Ahora lo que tenemos que hacer es conectar el cable, tanto al puerto serie de la PC como a las terminales del microcontrolador que se indican en el diagrama de la figura 3 para programar al PICAXE. Anteriormente propusimos la manera en cmo se debe construir el cable de programacin, tomando en
cuenta las terminales que se deben ocupar.
Para grabarle el programa al microcontrolador debemos
dirigir la flecha del ratn a la barra de herramientas y seleccionar el men PICAXE, despus la instruccin Ejecutar (o de
manera rpida F5), tal como se muestra en la figura 11. En ese
mismo instante aparecer una ventana indicando que se est
llevando a cabo la programacin del microcontrolador PICAXE. Cuando se encuentra en la fase de proFigura 13 gramacin, una barra que ir creciendo nos
dir la cantidad de cdigo que est siendo
descargado hacia el microcontrolador.
Cuando se termina de grabar el microcontrolador aparecer una ventana que nos
indica la finalizacin del proceso de programacin, figura 12.
Ahora podemos verificar en el microcontrolador que el programa que diseamos se

encuentra perfectamente bien, por


lo que tenemos que oprimir el pulsador y esta accin debe encender el led, y cuando lo soltemos, el
led se deber apagar. Cualquier
otro funcionamiento nos quiere decir que debemos revisar nuestro
programa y tenemos que regresarnos hasta la etapa en donde diseamos el diagrama de flujo, ya
que algo se encuentra mal.

Figura 15

Figura 16
KIT ENTRENADOR

PARA

PICAXE 08

En esta oportunidad disearemos nuestra primera tarjeta de entrenamiento universal para programar microcontroladores PICAXE, y como en todo comienzo, daremos inicio por lo ms
sencillo y ms pequeo, esto es, los microcontroladores de 8
terminales denominados PICAXE 08.
En primera instancia recordemos cul es la configuracin
de un PICAXE08, para en funcin de ello, tomar en cuenta de
cuntas entradas y cuntas salidas podemos echar mano y
aprovecharlas al mximo (figura 13).
Tenemos la oportunidad de disponer de un total de 4 E/S
(4 entradas y 4 salidas), pero no nos confundamos, si sumamos
el nmero de salidas con el nmero de entradas tendremos un
total de 8 y el PICAXE08 que manejaremos tiene solamente 8
terminales.
Esto quiere decir que las terminales de salida y de entrada ocupan todas las que posee?
La respuesta es no, ya que en esas 8 terminales deben
estar las 4 entradas, las 4 salidas adems de las 2 terminales
de alimentacin y 2 para programarlo. Especficamente para
los PICAXE08 las terminales 3, 5, 6 y 7 cumplen con una doble funcin, por lo que debemos tener cuidado cuando los programemos, porque, por ejemplo, la terminal 3 puede comportarse como una terminal de entrada o una terminal de salida,
todo depende de cmo la contemplemos cuando realicemos el
programa del PICAXE08.
La tarjeta entrenadora que proponemos tiene la posibilidad
de explotar al mximo las propiedades del PICAXE08, y ser
por medio de jumpers como se podr configurar la circuitera,
tanto para programar como para fijar entradas o salidas de datos. En la figura 14 se muestra el circuito esquemtico de la tarjeta entrenadora completa.
A continuacin describiremos cada parte de esta tarjeta entrenadora para que podamos sacarle el mximo provecho.
En primer trmino identificaremos la ubicacin de dnde
instalar el microcontrolador PICAXE08; ste debe encontrarse
en la base identificada como IC1 respetando la identificacin

de las terminales (figura 15). Los conectores identificados como


ES1, ES2 y ES4 tienen 3 terminales, de las cuales, la del medio
de cada uno de ellos se hace llegar hacia la correspondiente
terminal del microcontrolador PICAXE. Con rerspecto a las 2
terminales restantes de cada conector (ES1, ES2 y ES4), una va
hacia el bloque destinado para conectar las entradas de datos,
y la segunda se dirige hacia el bloque de terminales de salida
de datos. Pues bien, para seleccionar si la terminal del microcontrolador ser configurada como salida o entrada, ser a travs de un jumper que, dependiendo de cmo se conecte, unir
la terminal del medio del conector, ya sea ES1 ES2 ES4,
con el bloque de terminales de entradas o al bloque de terminales de salida, y de esta forma quedar configurada la circuitera del microcontrolador PICAXE para que est listo a recibir
el programa con el cual trabajar el microcontrolador.
El conector identificado como PROG/SAL0 posee 3 terminales, de las cuales la del medio se hace llegar a la terminal 7
del microcontrolador PICAXE. Esta terminal cumple con la doble funcin tanto de programar al microcontrolador, como la de
funcionar como terminal de salida de datos si as se requiere;
esta seleccin se lleva a cabo mediante la conexin de un jumper hacia la ubicacin que se requiera.
Cuando se va a
programar un microcontrolador
PICAXE08, es necesario
que el jumper est
ubicado hacia la posicin Prog en el conector PROG/SAL0,
porque de otra manera la programacin
ser imposible, ya
que no se tendr comunicacin entre la
PC y el microcontrolaFigura 17
dor.
Cuando el jumper

CLUB SABER ELECTRONICA 39

se encuentra ubicado hacia la posicin Sal0 en el mismo conector PROG/SAL0, se tendr configurada la terminal del microcontrolador como salida. La disposicin de componentes sobre la placa se muestra en la figura 16.
Por lo descrito lneas atrs se deduce que el procedimiento
para ubicar el jumper del conector PROG/SAL0 ser de acuerdo a lo siguiente:
1 paso.- Ubicar el jumper hacia la posicin Prog en el
conector PROG/SAL0 para programar al microcontrolador PICAXE08.
2 paso.- Cambiar el jumper hacia la posicin Sal0 en el
conector PROG/SAL0 si se va a utilizar esa terminal del microcontrolador PICAXE08 como salida.
En el conector identificado como Entradas se tiene la posibilidad de hacerle llegar al microcontrolador PICAXE08 el
estado lgico de 4 diferentes entradas digitales, las cuales pueden ser insertadas mediante circuitos externos o bien utilizar
cualquiera de los 2 circuitos con pulsador que se tienen en el
rea de experimentos. Estos circuitos se muestran en la figura
17 y lo nico que se tiene que hacer es conectar el borne correspondiente, ya sea E1 E2, a cualquiera de las terminales
de entrada, que son
Ent1 Ent2 Ent3
Ent4 del conector
Entradas.
En el conector
identificado como
Salidas se encuentra el reflejo de las 4
salidas
digitales
que posee el microcontrolador PICAXE08, las cuales
pueden hacerse llegar a circuitos externos en donde se refleje la actividad del
microcontrolador, o
pueden ser utilizaFigura 18

das los 2 circuitos con leds que se encuentran en el rea de experimentos; estos circuitos se muestran en la figura 18. Para utilizar estos circuitos lo que tiene que hacerse es conectar el borne correspondiente, ya sea S1 o S2, a cualquiera de las terminales de salida, que son Sal0 Sal1 Sal2 Sal3 del conector Salidas.
El espacio identificado como PROGRA se encuentra ocupado por un conector de audio estreo tipo mini Jack, el cual puede tener formas diferentes. El conector de audio estreo tan slo tiene 3 terminales, las cuales sern utilizadas para comunicar al microcontrolador con una PC a travs del puerto serie.
En la figura 19, como ya lo vimos anteriormente, se muestra el
diagrama de cmo se deben identificar las terminales tanto en
la tarjeta de entrenamiento como en el conector DB9 que se conecta al puerto serie de una PC.
Las terminales del conector de audio realizarn las siguientes actividades:
La lnea identificada con el nmero 1 sirve para verificar
que el microcontrolador PICAXE se encuentra conectado al
puerto serie de la PC.
La lnea identificada con el nmero 2 sirve para programar
al microcontrolador PICAXE.
La lnea identificada con el nmero 3 es la referencia GND
o tambin conocida como tierra elctrica.
Por ltimo, la tarjeta entrenadora tiene incorporado un regulador de voltaje identificado como IC2 que posee el cdigo
LM7805, y cuya misin es la de mantener un voltaje de 5V para energizar al microcontrolador PICAXE y toda su circuitera;
por lo tanto, podemos energizar nuestra tarjeta de entrenamiento con una pila de 9 VCD.
La lista de componentes se muestra a continuacin.
Lista de componentes para armar la
tarjeta controladora
IC1 ................Base de 8 terminales
IC2..................................LM7805
D1, D ..........................Leds Verdes
D3...................................Led Rojo
S1, S2.......Interruptores Push button

Figura 19

40 CLUB SABER ELECTRONICA

R1, R3, R4.............10k 1/4 Watt


R2 ........................22k 1/4 Watt
R5, R6, R7 ...........390 1/4 Watt
Varios:
Conector mini jack de audio, conector mini plug de audio, alambres de conexin, broche para pila de 9 VCD y circuito impreso.

Aprendiendo a Programar
la Tarjeta Entrenadora 08
En esta oportunidad, emplearemos la tarjeta
entrenadora para implementar en ella la funcin lgica Y (AND). El motivo de programar al PICAXE con esta funcin lgica es un
pretexto para que se tenga en cuenta que si
podemos utilizar las funciones lgicas, entonFigura 10 - Diagrama esquemtico de la tarjeta entrenadora.
ces podemos darle cualquier aplicacin a
nuestra tarjeta, esto es, en otras palabras poasignadas a la entrada son las denominadas como E3 y E4. Esdemos desarrollar, por ejemplo, lo que se conoce con el nomtas entradas se configuran empleando el jumper ES4 hacia la
bre de unidad central de proceso de un PLC.
posicin E4, mientras que la entrada E3 no tiene que configuPara cada una de las funciones lgicas necesitamos la utirarse ya que est directamente conectada al borne de entralizacin de 2 entradas, por lo que en total requeriramos de 4,
das. En cuanto a las salidas, emplearemos la que est identifipero recordemos que el microcontrolador PICAXE 08 es tan
cada como S1. La salida S0 se configuran empleando el jumslo de 8 terminales; por lo tanto, se tiene la limitante de que
per PROG/SAL0 en la posicin de Sal0; esto es porque la terla mayora de las entradas y salidas estn compartidas. En conminal 7 del microcontrolador PICAXE 08 se comparte tanto
secuencia tan slo utilizaremos 2 entradas para implementar
con la salida 0 como con una terminal de programacin del PIlas 2 funciones lgicas.
CAXE. La salida S1 requiere que el jumper ES1 se coloque en
En el diagrama de la figura 20, se observa la manera en
la posicin Sal1. La forma en cmo se deben colocar los jumque estn asignadas tanto las terminales de entrada como las
pers tambin se ilustra en la figura 21, que es una imagen de
de salida; por otra parte tambin tomemos en cuenta que la tarla tarjeta entrenadora.
jeta entrenadora posee 2 pulsadores para generar los estados
Una vez que hemos configurado la parte electrnica de la
lgicos con los cuales trabajar el PICAXE, y tambin cuenta
con 2 leds para mostrar el estado de las salidas.
El ejercicio que desarrollaremos ser el siguiente. Los pulsadores denominados S1 y S2
generan las combinaciones con las cuales se
encender el led D1 para la funcin lgica
Y, de acuerdo a la tabla lgica siguiente:
S1
0
0
1
1

S2
0
1
0
1

Funcin Y
0
0
0
1

Ahora hacemos referencia al diagrama de


identificacin de los componentes de la figura
21 para observar que las terminales que estn

Figura 21 - Identificacin de componentes y colocacin de jumper.

CLUB SABER ELECTRONICA 41

tarjeta entrenadora, pasamos a elaborar el programa para


controlar la tarjeta.
Como lo hemos mencionado antes, es necesario abrir el
cono cuyo nombre es PICAXE Programming Editor, el cual
obviamente tuvieron que instalar con antelacin, pero si ustedes an no poseen el programa, lo pueden descargar de nuestra pgina de internet: www.webelectronica.com.ar.

Figura 22

Figura 23

Despus de la ventana de bienvenida nos aparecer la


ventana que se muestra en la figura 22, que es en donde se
configuran las opciones y por lo tanto el tipo de microcontrolador que emplearemos. En esta oportunidad estaremos utilizando un microcontrolador PICAXE 08, por lo que seleccionamos
esa opcin. Si la ventana de opciones no aparece al abrir el
programa, nosotros podemos abrirla desde el men Ver y despus con el comando Opciones.
Hasta este momento no hemos realizado programa alguno
con el Basic, que es una forma de programar a los PICAXE,
porque en el desarrollo de esta serie vamos a comenzar aprendiendo a programar a los microcontroladores del sistema PICAXE. Por esta situacin, nuevamente recurriremos a programar al
microcontrolador a travs de diagramas de flujo, por lo que
oprimimos el botn de acceso rpido para abrir el ambiente de
trabajo en diagramas de flujo, tal como se muestra en la figura 23.
Dentro del entorno grfico para generar el diagrama de
flujo seleccionaremos, del men de comandos, el correspondiente al que pregunta por el estado de las entradas, tal como
se ilustra en la figura 24.
Posteriormente, tal como se muestra en la figura 25, se pueden seleccionar los bloques que preguntan por el estado de las
entradas. Todo depende de nuestro diagrama, sern los bloques que dentro del rombo tienen la palabra pin. Por defecto, siempre pregunta por el pin 1, por lo que debemos editar
los bloques que sean necesarios para preguntar por la terminal

Figura 26

Figura 24

Figura 25
Figura 27

42 CLUB SABER ELECTRONICA

que corresponde a la entrada E3 y E4. Para ello nos basamos,


tal como muestra la figura 26, en seleccionar el bloque que nos
interese y despus seleccionar la entrada correspondiente. Una
vez que el primer bloque tenga asignada la entrada E3 y los
dos inferiores la entrada E4, ahora procedemos a seleccionar
el men de los bloques que manipulan las salidas; por lo tanto,
oprimimos sobre el cuadro que tiene una flecha en forma de U
para regresar al men principal. Estando en el men principal,
seleccionamos el que hace referencia al control de las salidas,
de acuerdo a como se aprecia en la figura 27.
Dependiendo de cul sea la funcin lgica que implementemos ser la activacin de las salidas que usaremos, ya sea
un 0 lgico o un 1 lgico; por lo tanto, seleccionaremos el
cuadro con la palabra low o high, respectivamente, tal como
se aprecia en la figura 28.
Como en el caso de las entradas, cuando elegimos una salida, por defecto se coloca la salida 0; por lo tanto, tenemos que
evaluar qu salida es la que emplearemos para colocar la que
nos interesa, y tal como se ilustra en la figura 29, seleccionamos
la salida 1 porque la funcin lgica que implementaremos es la
denominada Y (AND). Como ya habamos designado que sera a travs del led D1 de la tarjeta entrenadora donde se visualizara su respuesta, es el motivo de la seleccin ya que el led
D1 est conectado a la salida 1 del microcontrolador.
Ya que tenemos todos los bloques correspondientes a la implementacin de la funcin lgica, ahora pasaremos a conectarlos para que se obtenga el resultado de la tabla de verdad
de la funcin lgica Y.
Tenemos que regresar una vez ms al men principal para
realizar la unin de los diferentes bloques, en funcin de la lgica de operacin que hemos desarrollado. Para esta accin,
elegimos la herramienta de conexin tantas veces como bloques se tengan que unir, tal como se muestra en la figura 30.
Cuando se realiza la actividad de unir los diferentes bloques, se ilumina en color rojo un crculo que se hace presente
en el punto de conexin del bloque cuando acercamos el puntero del ratn, y ah hacemos click con el botn izquierdo para fijar la lnea de conexin, y la arrastramos hasta el siguiente punto de conexin del bloque con el que uniremos el anterior, y as continuamos hasta unir todos los bloques que tengamos, tal como se aprecia en la figura 31.
El paso siguiente, para verificar que realmente funciona
nuestro programa, es simularlo, por lo que seleccionamos la herramienta de simulacin tal como nos lo indica la figura 31, y
cuando la oprimimos, aparecern dos ventanas: en una observaremos las variables, y en la otra, que es la que nos interesa
en este momento, se observar cmo se comportan las salidas
en funcin de las entradas.
En la figura 32 se muestra que cuando sta activa la funcin de simulacin, las lneas que unen los distintos bloques se
iluminan en color rojo indicando el camino por donde se cumplen las condiciones lgicas, facilitando de esta manera la ob-

Figura 28

Figura 29

Figura 30

Figura 31

CLUB SABER ELECTRONICA 43

Figura 32

Figura 33

servacin de cmo se va generando la respuesta que finalmente ser visualizada a travs de una salida. Y para comprobar
que en la salida se tiene como resultante la funcin lgica
Y, se tienen que realizar las distintas combinaciones de 0
lgico y 1 lgico en las terminales de entrada, a travs de
los interruptores que se visualizan en la ventana inferior de la
figura 32.
Una vez que hemos superado la etapa de la simulacin,

nuestro siguiente paso es la programacin del PICAXE a travs


de la tarjeta entrenadora, por lo que conectamos el cable al
puerto serie de la PC y el otro extremo al conector minijack de
la tarjeta entrenadora anterormentes se explic cmo se debe
armar el cable de programacin, colocar tambin el jumper del
conector PROG/SAL0 en la posicin de Prog para que sea descargado el cdigo al PICAXE.
El paso siguiente es detener la simulacin e ir al men de
herramientas organigrama y seleccionar el mando convertir organigrama a Basic. Como resultado, el diagrama de flujo ser
convertido a Basic y el resumen de estas acciones se observa
en las figuras 33 y 34.
De la figura 34 se observa que para descargar el programa en el microcontrolador PICAXE a travs de la tarjeta entrenadora, se oprime el botn que se refiere a la herramienta de
programacin, y como consecuencia se despliega una ventana
que nos va indicando el avance de la programacin, tal como
se ilustra en la figura 35.
Una vez programado el PICAXE, lo que sigue es probar el
programa sobre la tarjeta entrenadora, por lo que presionaremos los pulsadores de acuerdo a la tabla de verdad correspondiente, por lo que si el led no enciende con respecto a la respuesta de la tabla de verdad de la funcin lgica Y, algo anda mal y tenemos que pasar a revisar desde el circuito de la
tarjeta entrenadora hasta revisar nuevamente el programa y la
fase de grabacin en el microcontrolador.
LISTA DE COMPONENTES PARA REALIZAR EL EJERCICIO.
Tarjeta entrenadora del PICAXE 08 y su cable de programacin.

Juego de Luces Tipo Auto Fantstico


(Empleando la Tarjeta Entrenadora)
Figura 34

Figura 35

44 CLUB SABER ELECTRONICA

Vamos a implementar, a travs de una tarjeta entrenadora, un juego de luces que funcione de la misma manera que lo hacan las
luces del auto fantstico. Est claro que para
el microcontrolador PICAXE 08 que posee la
tarjeta entrenadora, slo se tiene posibilidad
de contar con 4 salidas a las cuales les podemos colocar leds para visualizar el efecto de
las luces.
Cabe sealar que si usted desea bajar los
archivos para ejecutar el programa, puede
obtenerlos gratuitamente de nuestra web en
www.webelectronica.com.ar, digitando la clave kit.
En la figura 36 se muestra el diagrama es-

quemtico de la tarjeta entrenadora, de


la cual emplearemos nicamente el borne de salidas, por lo que en los bornes
identificados como ES1, ES2 y ES4 se
colocar el jumper correspondiente, de
tal forma que se seleccionen las salidas.
Nota: La tarjeta entrenadora, su implementacin, armado y programacin
se public en el tomo N 7 de la coleccin Club Saber Electrnica. Ud. puede bajar el artculo completo de la web
con la clave dada ms arriba.
Siguiendo con nuestro montaje, en
el borne identificado como PROG/SAL0, una vez que se descargue el programa sobre el PICAXE, debe colocarse
el jumper en la posicin correspondiente a la salida 0 (Sal0). Una vez predispuesta la tarjeta entrenadora tal como
se muestra en la figura 37, pasamos a
desarrollar el programa.
Recordemos que lo primero que tenemos que hacer es abrir el programa
PICAXE Programming Editor, tal como se ilustra en la figura
38. Una vez dentro del ambiente de programacin del PICAXE, seleccionamos la opcin de trabajar con diagramas de
flujo, por lo menos hasta que adquiramos la experiencia necesaria para desarrollar nuestros programas directamente bajo BASIC.
Se ha explicado, minuciosamente, lo que significan los conos que aparecen cuando trabajamos con diagramas de flujo,
por lo que ahora avanzaremos un poco ms rpido en la construccin de nuestro programa. Ya dentro del ambiente de pro-

Figura 36
gramacin, lo primero que tenemos que hacer es inicializar las
salidas que utilizaremos, que por disposicin del PICAXE 08
se tienen dispuestas las salidas 0, 1, 2 y 4. Para no afectar el
desempeo de nuestra aplicacin, la inicializacin de las salidas las realizamos por medio del comando low tal como se
ilustra en la figura 39, una para cada una de las salidas; si no
colocramos estos comandos, simplemente las salidas no se activarn. Posteriormente colocamos lneas de conexin para unir
los comandos de activacin en estado bajo de las 4 salidas seleccionadas. Ahora se colocan los comandos para generar el
efecto de luces del auto increble, para lo cual nos basamos en
un algoritmo muy simple y que a continuacin explicamos:
Encendemos el led colocado en la salida 0 y mantenemos

Figura 37
Figura 38

CLUB SABER ELECTRONICA 45

este estado durante 1 segundo para que sea perfectamente visible, posteriormente encendemos el led colocado en la salida
1 e inmediatamente apagamos el led de la salida 0; una vez
realizado esto, fijamos esta condicin durante 1 segundo. En
general, vamos encendiendo el led siguiente y al mismo tiempo
apagando el anterior y manteniendo el estado durante algn
tiempo, y as sucesivamente hasta llegar al ltimo led. Posteriormente hacemos que se invierta el encendido y apagado de los
leds, causando con esto el efecto luminoso de las luces del auto increble.
De la figura 40 se puede observar el diagrama de flujo
que se emplea para controlar el juego de luces, y a travs de
los bloques low apagamos las salidas (las colocamos en 0
lgico), y con los bloques high encendemos las salidas (las
colocamos en 1 lgico). Pues bien, hasta aqu hemos manejado bloques que con anterioridad habamos utilizado y que no
causan problemas al momento de seguir la ejecucin del programa, pero ahora aparecen 2 nuevos bloques que estn iden-

Figura 39

Figura 40 - Diagrama a bloques completo.

46 CLUB SABER ELECTRONICA

tificados como wait y como pause, los cuales describiremos


a continuacin.
El bloque wait se emplea para generar una base de tiempo durante la cual el microcontrolador PICAXE estar ocupado
sin realizar ninguna otra actividad, tan slo se dedica a contabilizar el tiempo que va transcurriendo hasta que llegue al conteo mximo que le hemos fijado. Esta actividad es muy til, sobre todo cuando se requiere el empleo de un temporizador, o
de un delay. La caracterstica que tiene el bloque wait es que
el conteo lo realiza de una forma ya establecida y est en segundos, los cuales pueden tener valor desde 1 hasta 255 segundos.
En este caso estamos empleando el bloque wait para generar una temporizacin, de manera que los datos que son enviados a las salidas del PICAXE se mantengan durante 1 segundo.
Si omitimos la colocacin del bloque wait, provocaramos que
con la simple operacin del microcontrolador, que es muy rpida, tan slo observemos un destello en los leds pero no veramos cul se enciende y cul se apaga con detalle. El nmero
que tiene por delante el comando wait es el nmero de segundos que dura la temporizacin.
El segundo bloque que observamos en el diagrama de flujo de la figura 41, y que no conocamos, est identificado como pause.
El bloque pause trabaja de la misma manera que lo hace el bloque wait, y substantivamente se emplean para lo mismo, pero la principal diferencia radica en los tiempos destinados a la temporizacin de cada uno de los bloques. Para el bloque wait la temporizacin se encuentra en segundos, mientras
que para el bloque pause la temporizacin se contabiliza en milisegundos. Por lo tanto, como se
muestra en la figura 40, si colocamos el bloque wait 1 equivale a
un tiempo de 1 segundo, y si empleamos el bloque pause 1000
equivale a un tiempo de 1000 milisegundos, o sea tambin 1 segundo.
Despus de que hemos colocado tanto los bloques como las
uniones entre stos, procedemos a
simular nuestro diagrama de flujo
como se ilustra en la figura 41.
Como paso siguiente a la simulacin, procedemos a convertir
nuestro diagrama de flujo en cdigo BASIC, por lo que recurrimos
al men Organigrama y dentro de
ste al comando Convertir Organigrama en BASIC, por lo que

vamos a generar un cdigo como el ilustrado en la figura 42.


Por ltimo, tenemos que programar al microcontrolador PICAXE, por lo que estando
en el ambiente de cdigo BASIC nos dirigimos al men PICAXE y despus al comando
Ejecutar. En ese mismo instante se abre una
ventana que nos indica el progreso de la programacin del PICAXE (figura 43), y una vez
que ste termina de programarse, nos muestra una ventana pequea en donde nos comunica que se program perfectamente; en caso contrario, tambin nos reporta las posibles
causantes del fallo. Como lo hemos mencionado en anteriores entregas, es necesario
abrir el cono cuyo nombre es PICAXE Programming Editor, el cual obviamente tuvieron que instalar con antelacin, pero si ustedes an no poseen el programa lo pueden
descargar de nuestra pgina de internet:
www.webelectronica.com.ar. A lo largo de Figura 41 - Simulacin.
esta obra iremos desarrollando ejemplos de
Alarma para Puertas y Ventanas
programacin, en los cuales aplicaremos los bloques de los diaEmpleando la Tarjeta Entrenadora PICAXE 08
gramas de flujo vistos hasta ahora, y la meta es llegar a realizar
programas con mayor grado de complejidad, para lo cual se tiePara continuar con la utilizacin de nuestra tarjeta entrenane contemplado mostrar proyectos con aplicaciones reales.
dora tal como un mdulo de uso general, nuevamente hacemos
referencia a ella y por lo tanto volvemos a colocar su diagraLista de Materiales
ma esquemtico se ilustra en la figura 44. De la tarjeta entrenadora sabemos que se cuenta con un total de 4 Entradas/SaTarjeta entrenadora del PICAXE 08 (el diagrama y deslidas, las cuales las tenemos que distribuir adecuadamente encripcin de sta se vi anteriormente), su cable de programatre el sensor, el habilitador de la alarma, la salida a un buzzer
cin,
(zumbador) y a un contacto que nos representar una seal re4 Leds
mota. De acuerdo a lo anterior necesitamos de, por lo menos,
4 Resistores de 390

Figura 42 - Cdigo en BASIC.

CLUB SABER ELECTRONICA 47

2 entradas y 2 salidas, pero recuerden que en el PICAXE08 algunas


Figura 44
terminales son compartidas y cumplen con una doble funcin; dicho
en otras palabras, tanto se pueden
configurar como terminales de salida o como de entrada de datos,
pero una vez configuradas, trabajar as el PICAXE todo el tiempo.
En la figura 45 se ilustra la propuesta de cmo se asignarn las
terminales de entrada y salida de
datos, en las cuales se sugiere que
para proteger a las puertas y ventanas de un hogar se utilicen sensores magnticos llamados reed switches, en los cuales, cuando se les
acerca un imn, su contacto se cierra, provocando la generacin de
los estados lgicos que vemos en la
tabla 1.
La disposicin de los sensores
magnticos, tal como se ilustra en
el diagrama esquemtico de la figura 45, estn conectados de tal
forma que se cumplan las condiciones de la tabla 1, y estos estados lgicos se hacen llegar a la
terminal de entrada del PICAXE (Ent3) destinada a detectar si
una puerta o ventana fue abierta sin autorizacin, por lo que
tenemos que seleccionar qu puerta o ventana de nuestra casa tendremos que proteger, colocando el sensor magntico en
el marco de la puerta o ventana mientras que el imn lo fijaremos sobre la puerta o ventana.
De acuerdo a lo que se observa de la figura 45, las terminales destinadas a las entradas de datos sern las denomina-

das Ent3 y Ent4, mientras que las terminales designadas para


las salidas sern las marcadas como Sal0 y Sal1.
Una vez que se han destinado las entradas y salidas que
sern empleadas, ahora procederemos a explicar el diseo del
programa con el cual se gobernar el microcontrolador PICAXE, para lo cual partiremos del hecho de que ya tenemos instalado el programa llamado PICAXE Programming Editor, y si
an no lo tienen pueden descargarlo de nuestra pgina www.webelectronica.com.ar con la clave picaxe, o directamente
de la pgina www.picaxe.co.uk
En la figura 46 observamos la ventana de bienvenida al
PICAXE Programming Editor.
Consideramos que an no tenemos la experiencia necesaria para comenzar a programar un PICAXE por medio del lenguaje BASIC, por lo que una vez ms seleccionamos la opcin
de trabajar con diagramas de flujo, por lo menos hasta que
contemos con la experiencia necesaria para desarrollar nuestros programas directamente bajo ambiente BASIC.
Debido a que ya hemos explicado paso a paso cmo trabajar con diagramas de flujo, ya no expondremos lo que signiFigura 43 - Ventana que muestra el avance de la programacin. fican los conos que aparecen cuando trabajamos con estos
diagramas, por lo que slo nos abocaremos a
desarrollar el programa con el cual operar
TABLA 1 COMPORTAMIENTO DEL SENSOR MAGNETICO
nuestro programa.
Presencia del imn
Contacto del Reed Switch Estado lgico
Si
Cerrado
1
Para comenzar con el programa, primero
No
Abierto
0
sern definidas las terminales de entrada a

48 CLUB SABER ELECTRONICA

Figura 45

travs de las cuales se estar habilitando la


alarma Ent4 (pin4) y lectura del sensor Ent3
(pin3). De acuerdo a la manera de cmo pretendemos que sea la operacin de nuestra
alarma, sta comenzar a funcionar a partir
de que la habilitemos por medio del pin4, esto es, que en esta terminal est presente un
1 lgico, y mientras esta condicin no est
presente, la alarma nunca indicar si una
puerta o ventana fue abierta sin autorizacin,
por lo que podemos considerar que la alarma
est desactivada para que contemos con la
posibilidad de abrir cualquier puerta o ventana.
Despus de que la alarma fue activada, el
paso siguiente es el revisar que ninguna puerta o ventana sea
abierta sin autorizacin, por lo que a travs del pin3 se debe
leer un 1 lgico para que se cumpla dicha condicin.
La figura 47 muestra la activacin de la alarma y lectura
del sensor. De acuerdo con la figura 47, los primeros bloques
que deben colocarse corresponden a los que realizan la revisin de los estados lgicos que guardan tanto el switch que activa deshabilita la alarma, como con el que corresponde con
la lectura del estado en que se encuentra el sensor magntico.
El primer bloque tiene la tarea de preguntar si la alarma ya fue
activada, por lo que se comparar el estado lgico de la terminal de entrada 4 con un 1 lgico. Si la alarma an no ha sido activada, no tiene caso seguir con el desarrollo del programa, por lo que constantemente se estar revisando el estado lgico de la terminal de entrada 4 hasta que la alarma sea activada, esto es, sea colocado en 1 lgico el estado de la ter-

Figura 46

minal 4. Si la alarma ya fue activada el paso siguiente ser leer el estado lgico del sensor magntico, por
lo que siempre estaremos comparando el estado lgico de la terminal
de entrada 3 con
el estado lgico
0. Recordemos
que el estado lgico 0 en el sensor
magntico signifi-

Figura 47

CLUB SABER ELECTRONICA 49

Figura 48

ca que alguna puerta o ventana fue abierta y si esto sucedi


sin autorizacin, por medio del comando high estaremos enviando, a travs de la terminal de salida 1, una seal a la bobina de un relevador para que sea generada una seal de alarma remota.
En la figura 48 se ilustran los bloques correspondientes al
establecimiento de una seal audible para avisar del evento de
apertura de una puerta o ventana sin autorizacin.
En el desarrollo de esta parte del diagrama de bloques, encontraremos dos nuevos, que se describen a continuacin:

Figura 49

50 CLUB SABER ELECTRONICA

let.- Este bloque es empleado para asignar un valor en


cualquiera de las variables con que cuenta el microcontrolador
PICAXE, adems de permitir la realizacin de operaciones entre las variables y valores constantes.
sound.- Este bloque contiene los parmetros necesarios
para generar una nota musical a travs de una terminal de salida del microcontrolador, por lo que la sintaxis es sound terminal de salida (nota, duracin).
Pues bien, una vez que hayamos revisado el potencial de
los bloques que a continuacin utilizaremos, procedemos a explicar la operacin de esta segunda parte del diagrama de bloques.
De la figura 48 se observa que primero se asigna un 0 a
la variable b0; posteriormente, se incrementa en una unidad la
variable b0 por medio de la utilizacin de bloques con el comando let. El valor de esta variable funcionar como la nota
musical que ser interpretada por medio del bloque identificado como sound.
El bloque sound tiene la propiedad de generar una nota
musical con tan slo indicrselo por medio de los parmetros
que se encuentran dentro del parntesis. De acuerdo con nuestro ejemplo, la variable b0 nos generar la nota que ser expresada hacia el exterior del PICAXE a travs de la terminal 0
y los valores que puede aceptar la variable b0 van desde 0 (silencio) hasta 127 notas ascendentes, y de 128 a 255 notas ascendentes de ruido. Para nuestro ejercicio, emplearemos las notas que van de 0 a 127 para dar vida a la alarma sonora, y
para obtener el efecto de una seal audible ruidosa, tendremos
que ir incrementando la variable b0 partiendo de 0 hasta 127,
por lo que utilizaremos un bloque comparador, y cuando la variable b0 llegue a 127, nuevamente se iniciar la variable con
el valor de 0, y nuevamente comenzar el conteo ascendente
de la variable. Esta actividad mostrar el efecto de notas musicales ascendentes. El dato correspondiente a la duracin de la
nota dentro del parntesis del bloque sound se puede expresar
con valores que van
Figura 50
desde 0 a 255, pero
debemos tomar en
cuenta que este valor
tiene que ser multiplicado por una constante de aproximadamente 1mseg.
La variable b0 se
incrementar desde 0
a 127 cuando se abra
una puerta o ventana,
y este lazo continuar
hasta que una persona autorizada y con
una llave pueda restablecer la alarma, por

lo que existir un bloque en donde se est revisando la condicin lgica de la seal de entrada en el pin4, y cuando lea el
estado lgico 0 significa que ya fue desactivada la alarma,
por lo que se tiene que revisar la condicin del sensor magntico, ya que si se deja la puerta o ventana abierta y se vuelve
a restablecer la alarma, sta se volver a disparar generando
nuevamente la seal audible y enviando la seal de alarma remota. En la figura 49 vemos el diagrama de bloques completo. Como paso siguiente, deberemos simular la operacin del
diagrama de bloques para estar completamente seguros de
que el programa va a funcionar correctamente. Despus de la
simulacin, procedemos a convertir nuestro diagrama de flujo
en cdigo BASIC, por lo que recurrimos al men Organigrama
y, dentro de ste, al comando Convertir Organigrama en BASIC, por lo que vamos a generar un cdigo como el ilustrado
en la figura 50.
Por ltimo, para programar al microcontrolador PICAXE, se
tiene que estar dentro del ambiente de cdigo BASIC, y de ah
nos dirigimos al men PICAXE y despus al comando Ejecutar. De esta accin se provoca que se abra una ventana que
nos va indicando el progreso de la programacin del PICAXE.
Una vez que ste termine de programarse, nos muestra una
ventana pequea en donde nos comunica que se program
perfectamente; caso contrario, tambin nos reporta las posibles
causantes del fallo.
La tarjeta entrenadora cuya imagen se observa en la figura 51 es el cerebro de las actividades de nuestra alarma, por
lo que en este caso se le tienen que agregar los componentes
ilustrados en la figura 45, pero claro est que por el tamao en
cuestin del nmero de terminales que posee un PICAXE-08, a
nuestra alarma le est destinado el proteger slo una puerta o
ventana. Si queremos una alarma con mayor nmero de sensores, tendremos que utilizar un PICAXE con mayor cantidad de
terminales y agregar, en el programa, la
lectura del estado que tengan dichos sensores.
Continuaremos desarrollando ejemplos prcticos de programacin, ya que
nuestra meta es llegar a realizar diseos
de aplicaciones sin importar el nivel de
complejidad.
LISTA DE MATERIALES
Tarjeta entrenadora del PICAXE 08
El cable de programacin
3 Resistores de 390 1/8Watt
1 Transistor 2N2222
1 Diodo 1N4001
1 Relevador para 5 V
1 Reed switch
1 Botn con seguro
1 Zumbador (buzzer)

Tarjeta Entrenadora PICAXE 18

A lo largo de estas lneas iremos describiendo todo lo que


corresponde a una nueva tarjeta entrenadora, que en esta
oportunidad alojar al microcontrolador PICAXE18, por lo
que como primer paso recordaremos cul es el diagrama del
circuito bsico de conexin de este PICAXE, para de ah llegar
al diagrama esquemtico de la nueva tarjeta entrenadora. En
la figura 52, se muestra el circuito bsico del cual se tiene que
tomar en cuenta el nmero total de entradas y salidas que podemos manipular para aprovecharlas al mximo.
Para el PICAXE18 se tiene la oportunidad de disponer de
8 terminales de salida y 5 terminales de entrada; de estas ltimas y dependiendo del tipo de microcontrolador PICAXE (PICAXE18 18A
18X), se pueden co- Figura 51
locar hasta tres entradas como entradas analgicas.
La tarjeta entrenadora que se propone en esta oportunidad tiene la posibilidad de explotar al mximo todas
las propiedades de
un PICAXE18. En
la figura 53 se
muestra el circuito
esquemtico de la
tarjeta entrenadora
completa.

Figura 52 - Circuito bsico de un PICAXE-18.

CLUB SABER ELECTRONICA 51

ra general, pueden clasificarse como discretos


o analgicos, entendindose como discretos
todas aquellas seales que trabajan mediante
la lgica binaria, 0 lgico y 1 lgico,
mientras que las seales analgicas, son aquellas, como la temperatura, que estn variando
con el tiempo y puede adquirir un nmero infinito de valores dentro de un intervalo bien establecido.
Para esta tarjeta controladora no se necesita configurar alguna forma especial de trabajo sobre su circuitera, por lo que sus aplicaciones son inmediatas, ya que posee terminales dedicadas tanto para ingresarle como para extraerle datos, siendo el microcontrolador
PICAXE el elemento indispensable que realiza
todas las acciones de control. Una vez identificadas las terminales de entrada y salida de
datos de la tarjeta entrenadora, como paso siguiente se tienen que identificar los mdulos
de apoyo para construir, implementar y/o simular alguna aplicacin.
El primer mdulo de apoyo que describireFigura 53 - Diagrama esquemtico de la tarjeta entrenadora PICAXE18.
mos es el relacionado con la actividad de representar alguna accin del microcontrolador,
A continuacin describiremos cada bloque de esta tarjeta
esto es, el poder sealar por medio de un indicador luminoso
entrenadora para que se le pueda sacar el mximo provecho.
alguna respuesta. Para ello se cuenta con 2 circuitos basados
Como primer paso ser identificada la ubicacin de dnde
en leds que se encuentran en el rea de experimentos de la prose encuentra el microcontrolador PICAXE18, el cual justamenpia tarjeta entrenadora. Estos circuitos se muestran en las figute debe encontrarse sobre la base identificada como IC1, resras 54 y 55. Para hacer uso de estos circuitos, lo que tiene que
petando en todo momento la distribucin de las terminales.
hacerse es conectar, mediante un pequeo cable, el borne coSobre el conector identificado como salidas, se encuentran
rrespondiente, ya sea de S1 o S2, con cualquiera de las termiconcentradas las 8 de que dispone el microcontrolador PICAnales de salida del microcontrolador, que pueden ser S0 S1
XE, las cuales se encuentran identificadas desde S0 hasta S7.
S2 S3 S4 S5 S6 S7 del conector Salidas. De esEste conjunto de salidas pueden emplearse de manera indistinta forma, si la salida registra un 1 lgico, se encender el led
ta para controlar algn elemento externo que bien puede ser un
al cual fue conectado, y por lo contrario, si la salida reporta un
actuador (elemento de potencia); todo depende de su naturale0 lgico, el led se apagar.
za para, en funcin de ella, conectar en la salida un optoacoEl segundo mdulo de apoyo es el que genera estados displador para encender o apagar un motor de CA, por ejemplo,
cretos para poder hacerlos llegar al microcontrolador. Estos mas como encender una lmpara incandescente o un simple diodulos pueden simular la activacin o desactivacin de determido led.
nados sensores o botones que se requieren en algn proceso.
Sobre el conector denominado entradas, se tiene el reflejo
Para este requerimiento, sobre la tarjeta entrenadora se cuenta
precisamente de las terminales de entrada al microcontrolador
con 2 circuitos basados en pulsadores que se encuentran sobre
PICAXE. Las terminales de entrada se encuentran identificadas
el rea de experimentos. Estos circuitos se muestran en la placa
como E0, E1, E2, E6 y E7; de estas ltimas, dependiendo del
de la figura 55 y lo nico que se tiene que hacer es conectar el
tipo de PICAXE (PICAXE18 18A 18X), las terminales E0,
borne correspondiente, ya sea E1 E2, a cualquiera de las terE1 y E2 pueden comportarse como terminales de entrada anaminales de entrada, que pueden ser E0 E1 E2 E6 E7 del
lgica, esto es, tienen un convertidor analgico digital. En las
conector Entradas. Esto ltimo da posibilidad a que durante la
terminales de entrada de datos se tienen que conectar aquellos
fase de pruebas del programa del microcontrolador se pueda
circuitos externos que generen algn estado lgico y que refleevaluar si la secuencia con que se tienen que activar los sensojen fielmente el estado de la actividad que estn leyendo los
res es la correcta o no, para poder estar seguros de que nuessensores bajo algn proceso. Estos datos de entrada, de manetro programa operar completamente sobre nuestra aplicacin.

52 CLUB SABER ELECTRONICA

dor que, dependiendo del tipo de PICAXE; stas pueden ser E0


E1 E2 del conector Entradas. Ahora bien, lo que se quiere es utilizar en la tarjeta programadora un sensor real, por
ejemplo un LDR (resistencia variable con la luz) o una galga extensiomtrica (resistencia variable con la deformacin), etc. En
el mdulo de seales analgicas, a travs del conector identificado como SENSOR, se puede conectar un determinado sensor que, en combinacin con el resistor R8, se genera el voltaje cuyo valor responder de acuerdo a la variable fsica que
lea el sensor.
Cabe aclarar que
el tipo de sensor que
se tiene que utilizar en
esta parte de la tarjeta
entrenadora debe presentar un cambio en su
valor de resistencia para que, en funcin de
esto, se modifique el
valor de voltaje que es
lo que lee el PICAXE
en las entradas analgicas. Las terminales
Figura 55 - Disposicin de los compodonde se refleja el esnentes sobre la tarjeta entrenadora.
tado del mdulo que

El tercer mdulo de apoyo es el que genera seales analgicas para que puedan emplearse con aquel PICAXE que internamente posee un convertidor analgico digital. Este mdulo
puede realizar el trabajo de simulacin, por ejemplo, de un
sensor de temperatura, de un sensor de presin, de humedad,
etc. Para esta parte, la tarjeta entrenadora cuenta con un resistor variable identificado como POT1, por medio del cual se
puede cambiar el valor de voltaje que se hace llegar a la terminal correspondiente de entrada analgica del microcontrola-

Figura 54 - Circuito Impreso


de la tarjeta entrenadora.

Figura 56 - Conector mini Jack de audio.

Figura 58 - Cable de programacin.

Figura 57 - Identificacin de terminales en los


conectores mini jack y DB9.

Figura 59 - Adaptador para programacin.

CLUB SABER ELECTRONICA 53

genera las seales analgicas se identifican como AN1 y AN2.


El espacio identificado como PROGRA se encuentra ocupado
por un conector de audio estreo tipo mini Jack, el cual puede
tener cualquiera forma, tal como se ilustra en la figura 56.
El conector de audio estreo tan slo tiene 3 terminales
que sern utilizadas para comunicar al microcontrolador con
una PC a travs del puerto serie. En la figura 57 se muestra el
diagrama de cmo se deben identificar las terminales, tanto en
la tarjeta entrenadora como en el conector DB9 que se conecta al puerto serie de una PC.
Las terminales del conector de audio y DB9 realizarn las
siguientes actividades:
La lnea identificada con el nmero 1 en el conector de
audio sirve para verificar que el microcontrolador PICAXE se
encuentra conectado al puerto serie de la PC.
La lnea identificada con el nmero 2 en el conector de
audio sirve para programar al microcontrolador PICAXE.
La lnea identificada con el nmero 3 en el conector de
audio es la referencia GND tambin conocida como tierra
elctrica.
En la figura 58 se muestra la imagen de un cable de programacin. De lo contrario puede emplearse un adaptador (figura 59) que realiza la misma funcin y con ste puede emplearse cualquier cable serie que se disponga.
Por ltimo, sobre la tarjeta entrenadora se tiene incorporado un regulador de voltaje identificado como IC2 que posee el
cdigo LM7805, y cuyo cometido es el de proporcionar un voltaje constante de 5V para alimentar al microcontrolador PICAXE y los mdulos auxiliares que tiene incorporados la tarjeta
programadora. Por medio de la utilizacin del regulador de
voltaje es posible que podamos emplear para energizar a nuestra tarjeta de entrenamiento una pila de 9V.
LISTA

DE COMPONENTES PARA LA TARJETA

CONTROLADORA

PICAXE18

IC1 Base de 18 terminales


IC2 LM7805
D1, D2 Leds Verdes
D3 Led Rojo
S1, S2, RESET Interruptores Push button
R1, R4, R5: 10k 1/8Watt
R2: 22k 1/8Watt
R3: 1k 1/8Watt
R6, R7,R9: 39k 1/8Watt
R8: 100k 1/8Watt
Pot. 1: Preset 100
Sensor: Bloque de terminales
Varios: Conector mini jack de audio, conector mini plug
de audio, alambres de conexin, broche para pila de 9V y circuito impreso.

54 CLUB SABER ELECTRONICA

Aprendiendo a Utilizar el ADC en la


Tarjeta Entrenadora del Picaxe-18
Con el PICAXE08 se tiene la posibilidad de utilizar el convertidor analgico a digital (ADC), la forma de utilizarlo bajo
el sistema PICAXE es lo mismo para cualquiera de las versiones
de microcontroladores, ya sea PICAXE08, PICAXE18 PICAXE28. El empleo de un ADC es muy til e inclusive necesario,
sobre todo cuando tenemos que utilizar un sensor que nos reporta una variable cuyos valores cambian dentro de un rango
establecido con el transcurso del tiempo. A estas variables se
les conoce con el nombre de analgicas, ya que tienen un comportamiento como el ilustrado en la figura 60.
Dependiendo de la variable fsica que se tenga que medir
(para, con su informacin, controlar determinado proceso), es
el sensor que emplearemos.
Existen sensores para medir la temperatura, humedad, intensidad luminosa, presin ejercida a una superficie, aceleracin, deformacin de materiales. Estas variables fsicas son las
ms comunes de medir ya que existen sensores comerciales
muy econmicos para estas variables.
El aspecto comn de todos los sensores, no importando a
qu variable fsica responden, es que convierten la variable fsica a una seal elctrica cuyo valor correspondiente de forma
directa a la variable. Para el caso particular de la tarjeta entrenadora del PICAXE18, se requieren sensores que cuenten,
preferentemente, con una variacin de resistencia al cambiar el
valor de la variable fsica, ya que sobre la tarjeta entrenadora
se tiene implementado un circuito resistivo que, en combinacin
con el sensor se genera un divisor de voltaje, el cual se encuentra conectado a un potencial de 5V. Las variaciones de ste, de
acuerdo a lo que mida el sensor, que es lo que se hace llegar
al ADC del PICAXE.
En la figura 61 se ilustra el diagrama esquemtico de la
tarjeta entrenadora PICAXE18, de la cual nos interesan, en esta ocasin, las terminales identificadas como AN1 y AN2. Si
analizamos con detalle la terminal que corresponde al borne
AN1, es all donde se encuentra un conector con tornillos que
sirven para sujetar al sensor que utilicemos, recordando que
debe generar una variacin resistiva a los cambios que presente la variable fsica. El sensor que utilicemos estar conectndose en serie con un resistor identificado como R8 y cuyo valor es
de 100k. Este circuito serie tiene, en uno de sus extremos, el
valor positivo de 5V, y el otro GND; por lo tanto, al cambiar el
valor de la variable fsica se tendr una repercusin sobre el
sensor, ya que ste cambiar su valor resistivo. Al modificarse
el valor de resistencia del sensor, se tendr una mayor o menor
circulacin de corriente, recordando que todo depende de la
ley de Ohm, que dice:
El valor de la corriente es inversamente proporcional al valor de la resistencia, y directamente proporcional al valor del
voltaje (la frmula matemtica es: I = V/R).

Si cambia el valor de la corriente


en el circuito serie y nuevamente aplicamos la ley de Ohm, entonces se
tendrn variaciones de voltaje, ya
que la informacin del valor de voltaje la estaremos obteniendo de la conexin del sensor con R8.
El borne, identificado como
AN2, es ms sencillo de utilizar, ya
que ah se tiene un preset identificado
como POT1, del cual una de sus 2 terminales de los extremos se hace llegar al potencial de 5V y el otro a
GND. Es a travs de su terminal del
medio de donde se obtiene el valor
de voltaje que se dirigir posteriorFigura 60 - Diferentes tipos de seales analgicas
mente al ADC del PICAXE. Observando con detalle este circuito simple,
nos daremos cuenta de que se trata
trada que ser utilizada con el valor analgico de la intensidad
de 2 resistores conectados en serie, y que al modificar el valor
luminosa est en el borne de entradas de la tarjeta entrenadodel preset, le estaremos agregando resistencia a uno de estos
ra, y se trata de la entrada E0. El LDR, prcticamente, es una
resistores y quitndole al otro. El propsito de utilizar este cirresistencia variable que est constituida por un material fotosencuito es nicamente para cuestiones didcticas, ya que estaresible; por lo tanto, la intensidad luminosa provocar que dismimos simulando la operacin de un sensor an sin tenerlo, pero
nuya su valor de resistencia, mientras que la oscuridad o ausenestaremos en absolutas posibilidades de comprobar nuestro
cia de luz ocasionar que tenga su mxima resistencia, y deprograma ya colocado en el PICAXE. La informacin contenida
pendiendo del tipo de LDR puede tener valores de resistencia
en los bornes AN1 y AN2, que es el reflejo de un sensor (paque son de 2M, 10M en la oscuridad. Para controlar el
ra el caso de AN1) y la variacin de un potencimetro (para el caso de AN2) se tiene que
conectar a la entrada analgica del PICAXE.
Para ello, dependiendo del tipo de microcontrolador PICAXE (PICAXE18 18A 18X), se
puede disponer de hasta tres entradas del tipo
analgicas. Los bornes de las entradas analgicas al PICAXE estn identificados como E0,
E1 y E2, por lo que para hacer llegar la informacin de los bornes AN1 AN2 a E0 E1
E2, ser mediante pequeos cablecillos de
conexin, tal como se muestra en la figura 62.
Para ilustrar de mejor manera la utilizacin del
ADC del PICAXE vamos a recurrir al empleo de
un ejemplo prctico. Este ejemplo consistir en
encender o apagar una lmpara de alterna del
mismo tipo que utilizamos para iluminar nuestra casa. El circuito al que estamos haciendo referencia es el de un control automtico de luces. Este control automtico detectar, a travs
del LDR, cundo se oculte nuestro astro rey
(Sol) y se comiencen a oscurecer las calles, y
viceversa, cuando empiece a amanecer, de
igual manera la luminosidad producida ser
Figura 61 - Diagrama esquemtico de la tarjeta entrenadora PICAXE18.
detectada a travs del LDR (figura 63). La en-

CLUB SABER ELECTRONICA 55

cuentra identificado como RL1. Todo esto se ubica en el diagrama de la figura 62. La salida que se utilizar se encuentra en
el borne de salidas de la tarjeta entrenadora y se trata de la salida S0. En la salida S0 se tendr un 0 lgico si la intensidad luminosa detectada es suficiente como para que se apague la lmpara; por otra parte, si la intensidad luminosa es
muy baja o se tiene oscuridad total, en
la salida S0 se tendr un 1 lgico,
provocando que se encienda la lmpara correspondiente. Esta informacin se
hace llegar al transistor Q1, que a su
vez, dependiendo de la informacin
que tenga en su base, energizar o no
la bobina del relevador RL1, siendo los
contactos de este relevador quienes manejen la tensin alterna de lnea y sern
ellos quienes enciendan o apaguen, finalmente, la lmpara. Una vez explicaFigura 64 - Icono del programa
da la parte que corresponde a la electrFigura 65 - Ventana de Opciones.
PICAXE Programming Editor
nica de la tarjeta entrenadora, as como
los dispositivos y circuitos que se le agregarn para su funcionamiento, ahora
procederemos a explicar cmo se elabora el programa con el cual controlaremos
el encendido o apagado de una lmpara de corriente alterna, as que prosigaFigura 66 - Barra de comandos con el men Other.
mos adelante.

apagado o encendido de la lmpara de alterna, se requiere un


circuito que maneje la potencia, o dicho con otras palabras, se
necesita que la cantidad de corriente que consuma la lmpara
no la suministre directamente el PICAXE, por lo que se emplea
una interfaz implementada a base de un transistor identificado
como Q1, adems de utilizar tambin un relevador que se en-

Figura 62 - Conexiones sobre la tarjeta


entrenadora PICAXE-18.

56 CLUB SABER ELECTRONICA

Figura 63 - Imagen
de un LDR.

co que est leyendo


Lo primero que tenemos que hacer es abrir nuestro prograel PICAXE.
ma llamado PICAXE Programming Editor (figura 64) y que
El paso siguienpreviamente tuvimos que instalar, y si an no se tiene, lo puete es verificar qu
den descargar de nuestra pgina de internet www.webelectrovalor tiene la varianica.com.ar con la clave picaxe, o en su defecto tambin lo
ble b0 (Fig. 69) papueden adquirir en la pgina www.picaxe.uk.co.
ra que cuando se
Una vez dentro del programa editor de los PICAXE, se
compare este valor
abrir una ventana en donde se muestran las distintas opciones
se sepa si existe lumipara utilizar los PICAXE, y en esta ocasin, tenemos que elegir
nosidad u oscuridad
alguno de los PICAXE18; todo depende de cul de ellos sea
en el medio ambiencon el que contemos.
te. En este caso, teComenzaremos programando con diagramas de flujo para
nemos que seleccioaprender a utilizar los distintos comandos, y posteriormente los
nar el men if para
convertiremos en cdigo Basic. As es que tenemos que selecubicar los comandos
cionar el comando que abre la plantilla de trabajo con diagrade verificacin de
mas de flujo. Observe la figura 65.
valores; posteriorYa en el ambiente de programacin con diagramas de flumente, seleccionarejo, lo primero que tenemos que seleccionar en la barra de comos el comando que
mandos es el que est identificado con la palabra other (fig.
est identificado co66) ya que ah es en donde se encuentra la herramienta para
mo var, ya que es
utilizar el comando de lectura del convertidor ADC del PICAXE.
con ste con el que
El comando del ADC est identificado como readadc y
compararemos los
lo nico que tenemos que hacer es seleccionarlo para poderlo
valores de las variacolocar en el rea de trabajo, y con el comando de seleccin
bles con las que
que est identificado con una flecha, le indicaremos en qu encuenta el microcontrada estar ubicada la de valores analgicos. Normalmente,
trolador PICAXE.
cuando seleccionamos el comando readadc, por defecto se
selecciona la entrada E0, pero recordemos que
podemos seleccionar cualquiera de las entradas E0 E1 E2 las tres al mismo tiempo,
ya que slo tenemos que conectarles el corresFigura 69 Copondiente circuito con el sensor analgico. Remando que comcuerden tambin que dependiendo del tipo de
para el valor de
PICAXE18 (PICAXE 18 18A 18X) sern
la variable b0.
las entradas analgicas que emplearemos. (Figura 67).
Para colocar el comando readadc, lo
podemos hacer directamente uniendo el extremo superior del bloque del comando readadc (Fig. 68) con el del bloque start; esta
accin la llevamos a cabo para optimizar espacio en el diagrama de flujo, y ahorrarnos la
utilizacin de la herramienta wire.
El comando readadc tiene la tarea de
leer el valor de la variable analgica que en
esta etapa se encuentra en su correspondiente
valor de voltaje, y tal como se encuentra expresado en la figura 68, el 0 que se encuentra
despus de la palabra readadc indica qu terminal de entrada es la que se est utilizando
con el ADC, y despus se encuentra la variable b0, que es donde se aloja el valor analgi-

Figura 67 - Comando
readadc.

Figura 68 - Colocacin del


comando readadc.

Figura 70
Diagrama
de flujo
completo.

Figura 71 - Programa
completo y ventanas
del simulador.

CLUB SABER ELECTRONICA 57

Figura 72 - Programa en cdigo Basic.

Figura 73 - Identificacin de terminales en los conectores mini jack y DB9.

Figura 74
Cable de
programacin.

Para configurar el comando var, tenemos que seleccionar en qu variable se est guardando el dato que ser digitalizado, y que en esta ocasin se trata de la variable b0. Ahora seleccionaremos el operando mayor que para indicarle al
PICAXE que para todos los valores analgicos mayores que determinado valor nos debe reportar una salida verdadera y entonces el flujo lgico se dirigir a travs de la salida identificada como Y. El valor que fijaremos es el de 125, que prcticamente representa la mitad del rango total que puede ser digitalizado y cuyo valor mximo es de 255. Para nuestro programa,
cuando se tienen valores por debajo de 124, indicar que se
tiene suficiente luminosidad; por lo tanto, al salir la informacin
por la salida N del bloque var, mandar apagar la lmpara.
Cuando se tienen valores mayores a 125, indicar que la luminosidad es muy baja, por lo que mandar encender la lmpara. A la salida identificada como N se le conectar el bloque
low, cuya funcin ser la de apagar la salida S0 que es en
donde se encuentra conectado el circuito externo que controla
la lmpara, mientras que a travs de la salida identificada como Y se encuentra el bloque high que ser la encargada de
activar la salida S0 y de esta manera encender la lmpara. El
diagrama de flujo completo se muestra en la figura 70.
En la figura 71 se observa la simulacin del ADC; para
ello, se tiene la ventana donde se muestran las entradas y las
salidas y en la parte derecha se muestra el rea en donde se
puede manipular la entrada correspondiente al ADC. Al mover
la barra correspondiente de la entrada analgica, observaremos cmo en la ventana correspondiente a las variables se ir
modificando la variable b0, que es donde guardaremos el dato originado en el ADC. Cuando hemos visto que nuestro diagrama de flujo realiza las funciones lgicas que esperamos, entonces estamos en posibilidad de convertir el cdigo a Basic
(Fig. 72), para posteriormente descargarlo a nuestro PICAXE
por medio de la tarjeta programadora.
En la figura 73 y 74 se muestra la manera de cmo podemos armar nuestro cable de programacin o, en su defecto, utilizar un cable serie comn y un adaptador como el que se
muestra en la figura 75.
Por ltimo, sobre la tarjeta entrenadora se tiene incorporado un regulador de voltaje identificado como IC2 que posee el
cdigo LM7805, y cuyo cometido es la de proporcionar un voltaje constante de 5V para alimentar al microcontrolador PICA-

Figura 75 - Adaptador para


programacin.

58 CLUB SABER ELECTRONICA

XE y los mdulos auxiliares que tiene incorporados la tarjeta


programadora. Por medio de la utilizacin del regulador de
voltaje, es posible emplear para energizar a nuestra tarjeta de
entrenamiento una pila de 9V.
LISTA DE COMPONENTES PARA ARMAR LA
PICAXE18.

TARJETA CONTROLADORA

Tarjeta entrenadora PICAXE18.


D1 -Diodo 1N4001
Rext1 -1 k 1/8 Watt
RL1 -Relevador 5V
Q1 - BC548
LDR
Varios: Cable de programacin o Cable serie y adaptador, cables de conexin, batera de 9V.

Control de Temperatura con la Tarjeta


Entrenadora del Picaxe-18
La temperatura es uno de los parmetros que ms se controla, ya que desde una simple casa, hasta algn proceso industrial de una empresa cuenta con este tipo de dispositivos, los
cuales pueden ser muy simples o inclusive llegan a ser elementos muy complejos y avanzados.
En la figura 76 vemos el diagrama esquemtico de la tarjeta entrenadora PICAXE-18, con el sensor LM35 integrado a
ella.
Comercialmente existen medidores de temperatura cuya
funcin es slo, mostrar el valor de temperatura, y por otra parte tambin estn presentes los controles de algn proceso que
actan en funcin del valor de la temperatura. Estos ltimos
controles basan su forma de operar en un convertidor analgico - digital, si es que el control es electrnico y digitalizado, y
ms que mostrar el valor de temperatura, su utilidad principal

Figura 76

CLUB SABER ELECTRONICA 59

Figura 77

radica en el hecho de realizar tareas como la de controlar de


manera autnoma la temperatura de una caldera, de una habitacin, de un invernadero, etc.
En la figura 77 podemos observar las conexiones sobre la
tarjeta entrenadora PICAXE-18.
La temperatura es una de las variables fsicas ms fciles y
econmicas de controlar. En casi cualquier negocio de productos electrnicos encontraremos, por ejemplo, un simple circuito
integrado identificado como LM35, que es un sensor electrnico de temperatura.
En esta oportunidad vamos a implementar un algoritmo paFigura 78

60 CLUB SABER ELECTRONICA

ra disear un control automtico de


temperatura basndonos en nuestro
microcontrolador PICAXE, en el cual fijaremos un valor que servir de referencia para saber en qu momento se
deber activar desactivar un equipo
de aire acondicionado, un ventilador
un calefactor, etc.
Aqu lo ms importante es que debemos seleccionar un sensor que nos
entregue un valor de voltaje que tenga
una correspondencia con el valor de
temperatura que est midiendo, que
en este caso puede ser el LM35, que
ya se encuentra calibrado en grados
centgrados (C). Otro tipo de sensor
que se puede emplear para leer la
temperatura, sera un termistor que, a
diferencia del LM35, basa su operacin en cambios de valores de resistencia de acuerdo a la variacin de tem-

peratura.
Sea para un sensor que entrega voltaje o para un sensor
que cambia su valor resistivo, la tarjeta entrenadora del PICAXE - 18 contempla la utilizacin de ambos, y para ello se cuenta con un espacio reservado a cada uno de los sensores. Si se
trata del sensor LM35 que entrega voltaje, se tendr que conectar en el espacio que se encuentra sobre la tarjeta entrenadora
y que se identifica como Pot1. Para ello, se tendr que retirar
el preset si es que ya haba sido colocado, para colocar el sensor LM35 en su lugar, respetando la ubicacin de las terminales del voltaje de alimentacin (Vcc y GND). El terminal que entrega el nivel de voltaje de acuerdo con la temperatura presente, es el AN2, que se tiene que conectar por medio de un pequeo cablecillo a cualquiera de las entradas E0 E1 E2 que
tiene el microcontrolador PICAXE.
Por otra parte, si se emplea un termistor, slo tendr que
colocarse en el conector identificado como sensor y en el
cual se tiene contemplado que se utilice un bloque conector con
tornillo. Aqu ya est preparado el circuito que complementar
al termistor (divisor de voltaje) para que de esta manera las variaciones de temperatura se conviertan en valores de voltaje en
el terminal AN1, y de igual manera, por medio de un cablecillo, se puede conectar esta informacin a cualquiera de las tres
entradas que posee el convertidor analgico digital del microcontrolador PICAXE.
En esta ocasin y para este proyecto, utilizaremos el sensor
LM35 para medir la temperatura, y con esta variable fsica estaremos en posibilidad de controlar la temperatura de un recinto cerrado, como ser una habitacin el interior de un vehculo. Ya vimos en la figura 77 el diagrama del circuito que ser
adecuado para complementar la operacin de la tarjeta entre-

nadora del PICAXE - 18, como circuitera complementaria a la


tarjeta entrenadora, se observa la conexin del sensor de temperatura, que en esta ocasin se trata del circuito integrado
LM35. Por otra parte, tambin se observa el circuito externo
que activa el ventilador, el cual se encuentra implementado a
travs de un amplificador operacional, un transistor y un relevador, principalmente.
En la figura 78 se ve el diagrama de flujo del programa del
PICAXE. El sensor de temperatura LM35 proporciona un valor
de voltaje que est de acuerdo con la magnitud de temperatura que se encuentre en el recinto donde est instalado. De
acuerdo con el fabricante, su rango de operacin va de 0V a
1.5V, que equivale a 0C y 150 C, respectivamente, y a cada cambio de 1 C, el valor de voltaje cambia en 10mV. Por
lo tanto, es muy fcil saber qu valor de temperatura est midiendo al saber el valor de voltaje que entrega el sensor. Por
ejemplo, cuando se tenga un valor de 35 C, se tendr un valor de 350mV.
La forma de emplear el sensor LM35 y el circuito exterior
se ilustra puede verlo nuevamente en la figura 77. En ella se
aprecia que se puede utilizar un ventilador que puede poseer
un motor tanto de CA como de CD. Esto es posible, ya que estamos empleando un relevador como elemento de interfaz entre la etapa de control y la de potencia. La bobina del relevador est siendo controlada por un amplificador operacional,
que es el dispositivo que servir de proteccin entre la salida
del microcontrolador PICAXE y la bobina del relevador. El amplificador operacional, entre otras cosas, tiene la propiedad de
no demandar corriente del terminal de salida del PICAXE, y por
ello no se sobrecargue. La configuracin en la que se encuentra el amplificador operacional se llama seguidor de voltaje, y
en ella el voltaje de entrada es exactamente igual al que est
entregando. Por lo tanto, como el PICAXE le entrega 5V al seguidor de voltaje cuando su salida est activada, la salida del
amplificador operacional tambin ser de 5V pero casi sin demandarle corriente al PICAXE. Posteriormente, la salida del seguidor de voltaje se hace llegar a un transistor 2N2222 (de
propsito general), que es el que se encarga de manejar toda
la corriente que demandar la bobina del
relevador cuando ste necesite ser activado. El transistor le ayuda al amplificador
operacional a que no se caliente cuando
circule una corriente muy alta. Es recomendable que la fuente que energice la bobina
del relevador sea independiente de la que
energiza a la tarjeta entrenadora del PICAXE - 18, ya que cuando el relevador se activa, ste demanda una corriente muy grande, y si empleamos el mismo regulador de
voltaje que posee la tarjeta entrenadora, ste podra sobrecalentarse demasiado, hasta
tal punto que puede llegar a bloquearse y

toda la circuitera comenzar a trabajar de una forma muy deficiente y podra, entre otras cosas, comenzar a encenderse y
apagarse continuamente, provocando que el ventilador se encienda y apague a cada rato.
El valor de voltaje correspondiente con la magnitud de la
temperatura estar en el borne del terminal AN2, y de ah, por
medio de un cablecillo, haremos llegar esta informacin al terminal de entrada E0 que configuraremos como entrada para el
convertidor analgico - digital del microcontrolador PICAXE.
Para controlar el encendido o apagado del ventilador, utilizaremos el terminal S0 de la tarjeta entrenadora, que tambin corresponde a un terminal de salida del PICAXE.
En la figura 79 se ve la simulacin del programa.
Para comenzar a programar al microcontrolador PICAXE,
primero describiremos qu es lo que pretendemos en cuanto a
la forma de operacin de esta aplicacin, o sea:
El sensor de temperatura se encontrar leyendo de manera
continua la magnitud de la temperatura, que se har llegar a
un canal del convertidor analgico - digital del microcontrolador PICAXE. Este ltimo, de acuerdo con el programa (es lo que
vamos a realizar a continuacin), activar una de sus salidas
para controlar la bobina de un relevador.
Para controlar el apagado o encendido de la bobina del
relevador, se requiere lo siguiente: por medio de un 0 lgico
se apagar la salida S0; por lo tanto, la bobina del relevador
se desenergizar, mientras que un 1 lgico en la misma salida S0 provocar que la bobina del relevador se energice. Una
vez que ya sabemos de qu manera tiene que operar el microcontrolador PICAXE, procedemos a explicar la realizacin del
programa.
En desarrollos anteriores hemos comenzado esta parte de la
aplicacin con las siguientes palabras, lo primero que tenemos
que hacer es abrir nuestro programa llamado PICAXE Programming Editor. Por lo tanto, nuevamente hacemos la indicacin
de que pueden descargar el software de nuestra pgina de internet si es que an no lo tienen, la pgina es www.webelectronica.com.ar y empleen la clave picaxe, en su defecto, tambin
lo pueden adquirir en la pgina www.picaxe.uk.co.

Figura 79

CLUB SABER ELECTRONICA 61

Recuerden que al ingresar en el programa lo primero que


se abrir ser una ventana, de la cual, en la pestaa opciones,
seleccionarn el PICAXE que ser utilizado para el proyecto, se
puede emplear cualquier microcontrolador PICAXE, ya que la
estructura del programa es vlido para cualquiera de ellos, pero recuerden que tenemos microcontroladores de 8, 18, 28 y
40 terminales; por lo tanto, las terminales de salida y de entrada cambian de posicin y cantidad de acuerdo al PICAXE que
se vaya a utilizar. Cuando empleamos un convertidor analgico - digital (ADC), lo primero que tenemos que hacer es calcular su resolucin y para ellos nos basamos en la frmula N1.
Resolucin =

Valor del rango


---------------------------------2N - 1

En este caso el valor del rango es el que tiene la entrada


del ADC del PICAXE, que es de 5V. La variable N representa
la cantidad de bits que posee el ADC, que en este caso es de
8; por lo tanto, la expresin anterior queda como sigue:
5
5
Resolucin = --------------------- = ----------------------- =
28 - 1
256 - 1
= 0.0196V = 19.6mV
Con este dato ya sabemos que con cada cambio de
0.0196V que exista en el ADC, se tendr el incremento de un
bit en un conteo a base de 8 bits. Por otra parte, y recordando
que el sensor LM35 trabaja en el rango de 0 C a 150 C cuyos valores equivalen a 0V y 1.5V, respectivamente, por razones obvias no ser empleado todo el rango de trabajo del ADC
del PICAXE, ya que la temperatura ambiente, por ejemplo en
un lugar extremo, es de hasta 55 C, y ya estamos hablando
de un desierto. Para este desarrollo el valor de temperatura que
nos interesa es el de 25 C, ya que por debajo de este valor podemos considerar que la temperatura es agradable, pero por
encima de este valor consideraremos que hace demasiado calor, por lo que tenemos que encender el ventilador (este nivel de
temperatura se puede ajustar a las preferencias de las personas
o los lugares). Para la temperatura de 25 C se tiene un valor
de voltaje equivalente a 250mV; por lo tanto, tenemos que saber qu nmero binario ser el resultante una vez que es ingresado al ADC del PICAXE. Para ello, emplearemos el valor de la
resolucin y el del valor analgico (Va) que tendremos que digitalizar. Por lo tanto, Va = 250mV, y para calcular la combinacin binaria tenemos la siguiente expresin matemtica:
Comb. binaria = Valor Analgico (Va)
-------------------------------------
Resolucin

62 CLUB SABER ELECTRONICA

Por lo tanto:
250mV
Comb. binaria = ----------------------- = 12.75 13
19,6mV
El valor de 13 ahora lo tenemos que convertir a su correspondiente valor binario de 8 bits, quedando como sigue:
00001101.
Este ltimo valor binario es el que tomaremos como base
para realizar la comparacin de los diferentes valores de voltaje que tienen una correspondencia directa con el valor de
temperatura, y entonces, para cualquier valor por debajo de
00001101 (13), se desactivar el ventilador, mientras que para cualquier valor por arriba de 00001101 se tendr que encender el ventilador. Por lo tanto, de la figura 78 observe que
despus de tomar un dato, digitalizarlo y almacenarlo de manera temporal en la variable b0, se realiza una comparacin
del valor guardado en b0 con el valor de referencia que es 13,
siendo el operador empleado en esta comparacin el de un
(mayor que), para saber en qu momento el valor de la temperatura sobrepasa la magnitud de 25 C, tal como se encuentra
expresado en el diagrama de flujo de la figura 78.
El programa es muy simple ya que tan slo se trata de leer
un dato analgico y guardarlo en una localidad de memoria
RAM. El comando para realizar la lectura del dato analgico
es el que est identificado como readadc y se encuentra en
el bloque identificado como other en la pgina principal del
programa Programming Editor.
Para configurar este comando se le tiene que asignar en
cul de las entradas que posee el microcontrolador PICAXE se
estar empleando el ADC, adems de indicarle en cul variable (localidad de memoria RAM) se alojar el dato digitalizado. Posteriormente, para comparar el dato que se obtiene despus de la digitalizacin se toma de la localidad de memoria
este valor y se compara con el valor 13 (00001101) que ya
fue explicado anteriormente.
El comando para realizar la comparacin es un rombo y se
encuentran en la pgina principal dentro del bloque if. De
aqu, si el valor de la variable es mayor que el dato 13, entonces se interpretar como que la temperatura se encuentra por
arriba de 25 C, y; por lo tanto, encenderemos la salida S0 del
PICAXE para que se observe esta accin mediante la activacin del ventilador.
En la figura 79 se muestra la simulacin del ADC, observndose en ella las ventanas donde se muestra el estado de las
entradas, las salidas y las variables temporales.
En la figura 80 publicamos el programa en cdigo Basic.
Una vez que el diagrama de flujo ya se encuentra operando completamente, el paso siguiente ser el de convertir el cdigo a basic, y posteriormente descargarlo al PICAXE instalado
en la tarjeta programadora.

Aunque ya lo hemos mostrado anteriormente, en la figura 81 nuevamente mostramos la manera de cmo podemos armar el
cable de programacin con la identificacin
de terminales en los conectores mini jack y
DB9.
An nos falta desarrollar una gran cantidad de ejercicios, razn por la cual los invitamos a que sigan esta serie de ejemplos
de utilizacin y consejos de programacin.

LISTA

Figura 80

DE COMPONENTES PARA ARMAR LA

TARJETA CONTROLADORA

PICAXE-18

Tarjeta entrenadora PICAXE-18.


D1 - Diodo 1N4001
Rext1 - 5.6k 1/8W
Rext2 - 390 1/8W
RL1 Relevador
Q1 - 2N2222
Sensor LM35
Varios: Cable de programacin, Cable serie y adaptador, cables de conexin, batera de 9V.

Programa para Desplegar Nmeros BCD


con la Tarjeta Entrenadora del Picaxe-18
En muchas ocasiones y para la mayora de las aplicaciones que desarrollamos sobre un microcontrolador, tenemos que
mostrar algn resultado sobre un display, que bien puede ser
de segmentos o de LCD, por lo que es necesario saber de qu manera se desplegar la
informacin sobre las salidas que se tienen Figura 81
reservadas en un microcontrolador PICAXE.
Si nos ponemos a contabilizar todo el
conjunto de informacin que tiene que salir
por el puerto correspondiente de algn microcontrolador para manipular un display, necesitaramos de una gran cantidad de lneas que
se reserven para ese uso exclusivo. De hecho,
no alcanzaran todas las lneas que tuviera
disponible el microcontrolador, razn por la
cual tenemos que emplear una tcnica que
nos ayude a solucionar este problema.
En este ejemplo haremos uso de displays
de 7 segmentos, para as aprender a enviarles la informacin a stos.
La tcnica que emplearemos es la de multiplexacin de la informacin, por lo que pro-

cederemos a explicar en primera instancia el circuito que se


emplear con los displays de 7 segmentos, el cual incluye un
total de 3 displays de ctodo comn.
El circuito de los displays recibe el nombre de Display de
3 dgitos cuya publicacin complementaria se realiz en la revista Saber Electrnica N 220 Edicin Argentina. El principio
de operacin es muy bsico: se le hacen llegar 4 bits que son
los que generan el cdigo BCD, adems de 3 bits que son los
que indican qu nmero es el que se estar desplegando, esto
es, se controla el encendido del display correspondiente con las
unidades, decenas o centenas.
Si se requiere mostrar el valor 578 entonces se requiere
enviarle al circuito del Display de 3 dgitos la combinacin
1000 (8) y despus el bit que enciende el display de la unidades, despus se tiene que enviar el 0111 (7) posteriormente el bit que enciende el display de las decenas y por ltimo el
0101 (5) y como paso siguiente se tiene que enviar el bit que
enciende el display de las centenas. Este proceso se tendr que
repetir muchas veces, dando la impresin de que siempre estn
encendidos los displays.

CLUB SABER ELECTRONICA 63

Lo que se pretende con estas instrucciones es adquirir el conocimiento de cmo se tiene que generar la informacin en un
microcontrolador PICAXE, para que, posteriormente, sta sea
enviada a las terminales de su puerto de salida. Por lo tanto, y
de acuerdo a la descripcin anterior, que se hizo de la manera cmo funciona el circuito auxiliar denominado Display de
3 dgitos, se tiene lo siguiente:
De alguna manera, ya debemos contar con datos, que tuvieron que ser adquiridos previamente por algn proceso por
el microcontrolador PICAXE (por ejemplo la lectura a travs del
convertidor ADC descrito anteriormente en esta serie). Una vez
procesados estos datos, de acuerdo con nuestra aplicacin,
puede ser muy importante desplegar un dato numrico, porque
a lo mejor estamos diseando un voltmetro digital, por ejemplo.
En la figura 82 vemos la tarjeta entrenadora PICAXE-18 y
la tarjeta del Display de 3 dgitos. Se muestra la manera de conectar el circuito auxiliar Display de 3 dgitos a la tarjeta entrenadora, por lo que ah se observan las lneas de conexin
entre los terminales de salida del puerto de la tarjeta entrenadora que van hacia las terminales de entrada del circuito auxiliar. Cabe aclarar que sta es tan slo una sugerencia de cmo hacerlo, ya que cada uno puede realizar las conexiones de
la mejor manera posible y as optimizar los recursos de la tarjeta entrenadora.
Sobre la misma figura 82 no se hace mencin de la conexin de la energa al display de 3 dgitos, pero sta se puede tomar de los terminales disponibles sobre la tarjeta entrenadora que tienen la identificacin de +5V, y hacer llegar este voltaje al borne identificado como +Bat. Una vez descrita
la disposicin de la circuitera, procedemos a explicar el desarrollo del programa del microcontrolador PICAXE. Para esta explicacin, como ya se haba establecido en lneas ante-

riores, la informacin que ser desplegada de alguna manera ya fue adquirida o procesada por el microcontrolador, por
lo que la nica tarea que se tiene es la de mostrarla a travs
del display.
Supongamos que se requiere desplegar la informacin
246 a travs del display; por lo tanto, en primera instancia
se tiene que leer el dato de una localidad de memoria temporal donde fue alojado para su posterior utilizacin. El dato a
ser desplegado lo debemos seccionar en tres partes, para su
mejor manejo; por ello, se tiene que el nmero cuenta con las
siguientes partes: unidades, decenas y centenas, por ser 3 las
cifras que componen al nmero total. En esta ocasin y como
sugerencia, el dato de las unidades se encontrar ubicado en
la localidad de memoria temporal representada por el registro
del microcontrolador PICAXE b0, el dato de las decenas se encontrar en el registro b1 y las centenas en el registro b2.
En el programa que se va a describir, observe la figura 83.
Los primeros bloques muestran la manera de cmo se guarda
un dato en los registros antes mencionados (b0, b1 y b2). Este
fragmento del programa puede omitirse o reemplazarse totalmente, dependiendo de la aplicacin, y nuevamente recordamos que esta parte del programa es para uso especfico de esta aplicacin. En la figura 83 vemos los bloques de asignacin
de valores a los registros b0, b1 y b2.
El comando let permite la asignacin de valores a variables. Esta asignacin se puede dar de una forma directa como
est expresado en esta aplicacin, o tambin se puede efectuar
la asignacin del resultado de una operacin aritmtica (+, -,
*, /) por el resultado de una operacin lgica (and, or, negacin, etc.). En este ejercicio se est empleando el comando
de asignacin de manera directa sobre los registros para alojar los valores que corresponden a las unidades, decenas y
centenas en b0, b1 y b2, respectivamente.

Figura 82

64 CLUB SABER ELECTRONICA

Se mencion en lneas anteriores que en


esta aplicacin solamente se desplegar la informacin que se encuentre contenida en los
registros b0, b1 y b2. Para un programa de un
proceso completo, de alguna manera estos registros tendrn que ser manipulados; por lo
tanto, consideramos que esa actividad ya se
realiz y los datos ya se encuentran en los registros antes mencionados. Como siguiente paso, procedemos a la accin de enviar cada
una de las cifras del nmero completo a los displays y que en esta ocasin se trata del valor
246, por lo que comenzamos con el armado
de la informacin que ser enviada al puerto
de salida del microcontrolador PICAXE. La primera cifra que sufrir la manipulacin es la correspondiente a la de las unidades, razn por
la cual, en primera instancia, emplearemos un
nuevo registro, el b3. Ah alojaremos un dato de manera directa a travs del comando de
asignacin let, tal como se ilustra en la figura 84. El valor que
se est guardando en
el registro b3 es el
TABLA 2
16(10) que equivale a
Nmero BCD Nmero
la combinacin bina(S3,S2,S1,S0) Decimal
ria 0010000(2), que
es precisamente la que
0000
0
controla el encendido
0001
1
del display de la uni0010
2
dades. Posteriormente,
0011
3
para enviar la informacin completa al puer0100
4
to de salida del PICA0101
5
XE, se hace uso nueva0110
6
mente del comando de
0111
7
asignacin let, pero
en esta ocasin el re1000
8
sultado de esta asigna-

Figura 86

Figura 83

Figura 84

Figura 85

Antes de continuar con la explicacin del desarrollo del


programa, regresemos por un instante al circuito de la figura
82 para saber de qu manera estn organizados los datos que
salen por el puerto de salida del microcontrolador PICAXE, ya
que as ser ms sencillo seguir el desarrollo del programa.
En la figura 82 tambin se muestra la forma de conectar el
display a la tarjeta entrenadora y del circuito se observa lo siguiente: las terminales de salida S0, S1, S2 y S3 representan
los 4 bits que generan las diferentes combinaciones BCD (Binary Code Decimal o en espaol Cdigo Binario Decimal) de
acuerdo con la tabla 2. De sta, que contiene los nmeros BCD
y su equivalente decimal, podemos obtener el peso especfico
de cada uno de los bits que generan el valor numrico BCD,
siendo S0 el bit menos significativo (bms), mientras que S3 representa el bit ms significativo (BMS). Esta informacin BCD
se hace llegar a los 3 displays al mismo tiempo, razn por la
cual se tiene que indicar cul de estos displays estar activo de
acuerdo con la cifra que se quiere desplegar, ya que de otra
1001
9
manera los 3 se encendern con la misma informacin. La solucin a lo anteriormente
Tabla 3 - Activacin y desactivacin de los displays.
descrito se encuentra en el circuito de la figu(S6,S5,S4)
Display Centenas
Display Decenas
Display Unidades
ra 82, en donde se observa que las terminaApagado
Apagado
Apagado
les S4, S5 y S6 corresponden al control de 000
001
Apagado
Apagado
Encendido
las cifras de las unidades, decenas y cente010
Apagado
Encendido
Apagado
nas respectivamente, de acuerdo con la in100
Encendido
Apagado
Apagado
formacin que se encuentra en la tabla 3.
Una vez que hemos visualizado la manera en cmo se encuentra ordenada la in- Tabla 4 - Resultado de la operacin lgica OR entre los registros b0 y b3.
formacin del puerto de salida del microconS7
S6
S5
S4
S3
S2
S1
S0
trolador PICAXE, ahora procederemos a ex- b0
0
0
0
0
0
1
1
0
plicar la manera en que se envan los datos b3
0
0
0
1
0
0
0
0
al circuito del display de 3 dgitos.
pins 0
0
0
1
0
1
1
0

CLUB SABER ELECTRONICA 65

b3, adems de los terminales de salida del PICAXE. Estos son


los bloques que se han implementado hasta este momento, y
que controlan el encendido del display de las unidades.
Como paso siguiente al envo de la informacin para encender el display de las unidades, ahora se tiene que proseguir
con el dato correspondiente a la siguiente cifra significativa,
que es la decena, recordando que el valor numrico que se
quiere desplegar es el 246. Por tanto, contina el turno del
valor 4. Para ello, a travs del registro temporal b3, almacenaremos la informacin correspondiente al encendido del display
de las decenas. En este registro alojaremos nuevamente un dato de manera directa, utilizando el comando de asignacin
let, tal como se ilustra en la figura 86. El valor que se estar
guardando en el registro b3 es el 32(10) que equivale a la
combinacin binaria 00100000(2), que es precisamente la
que controla el encendido del display de las decenas.
En la figura 86 vemos el bloque de control de los displays
de las unidades, y decenas. Para complementar la informacin
que ser enviada al puerto de salida del microcontrolador PICAXE, hacemos uso, una vez ms, del comando de asignacin
let, dirigiendo el resultado directamente a las terminales de
salida del PICAXE, por lo que en el comando let marcamos
el destino a donde dirigiremos la informacin: los terminales
denominados pins. Posteriormente, para unir el dato que se
encuentra en el registro b1 (decenas cuyo valor es 4) con el que
se encuentra en el registro b3 (control del
encendido del display de las decenas),
nuevamente empleamos el operador lgico conocido como OR (O en espaol), cuyo smbolo ya lo habamos expresado y es
|.
El resultado de la operacin lgica se
ilustra en la tabla 5.
En la figura 86 se muestran los bloques correspondientes al control de los displays de las unidades y las decenas, lo
que nos da la posibilidad de mostrar el dato 46, faltando tan slo el control del disFigura 87 - Diagrama de flujo completo.
play de las centenas. A continuacin lo explicamos.
Por ltimo, corresponde controlar la
Tabla 5 - Resultado de la operacin lgica OR entre los registros b1 y b3.
tercera cifra significativa que es la centeS7
S6
S5
S4
S3
S2
S1
S0
na. El valor numrico que falta por despleb1
0
0
0
0
0
1
0
0
gar es el 2. Para ello, en el registro temB3
0
0
1
0
0
0
0
0
poral b3 almacenaremos la informacin
pins 0
0
1
0
0
1
0
0
correspondiente al encendido del display
de las centenas. Utilizando el comando
Tabla 6 - Resultado de la operacin lgica OR entre los registros b2 y b3.
de asignacin let, guardamos el valor
S7
S6
S5
S4
S3
S2
S1
S0
64(10) en el registro b3 que equivale a
B2
0
0
0
0
0
0
1
0
la combinacin binaria 01000000(2), la
B3
0
1
0
0
0
0
0
0
cual controla el encendido del display de
pins 0
1
0
0
0
0
1
0
las centenas.

cin la enfocaremos directamente a los terminales de salida,


por lo que se selecciona, despus del comando let, el destino pins, ahora tenemos que unir el dato que se encuentra en
el registro b0 (unidad cuyo valor es 6) con el que se encuentra
en el registro b3 (control del encendido del display de la unidad), por lo que empleamos el operador lgico conocido como
OR, cuyo smbolo es |. El resultado de la operacin lgica
se da de la manera como se ilustra en la tabla 4.
En la figura 84 se muestra el bloque que genera la operacin lgica OR y cmo el resultado es enviado a los terminales
de salida del microcontrolador PICAXE. De esta forma, aunque
el valor numrico 6 est llegando al mismo tiempo a los 3 displays, slo se encender el que tiene la cifra significativa de las
unidades, mientras que los otros 2 displays (decenas y centenas) permanecern apagados.
En la figura 84
vemos los bloques de
asignacin de valores
al registro b3 y terminales de salida del PICAXE.
En la figura 85
vemos los bloques de
asignacin a los registros b0, b1, b2 y

66 CLUB SABER ELECTRONICA

Figura 88

Como ya se ha explicado detalladamente la forma de cmo se arma el dato que ser enviado al puerto de salida del PICAXE, procederemos a controlar el display de las centenas de
una manera ms simplificada que las anteriores cifras significativas.
Por medio del comando let uniremos el dato que se encuentra en el registro b2 (centenas cuyo valor es 2) con el que
se encuentra en el registro b3 (control del encendido del display de las centenas), empleando el operador lgico OR. El resultado de la operacin lgica se ilustra en la tabla 6.
En la figura 87 se muestran los bloques completos del control de los 3 displays que corresponden al de las unidades, decenas y centenas, por lo que ahora s contamos con el poder
de mostrar cualquier nmero completo de 3 cifras.
Con lo expuesto anteriormente, ya estamos en posibilidad
de disear una aplicacin en la que est involucrado un teclado y un display para desplegar los datos que se van generando. Tambin ya hemos revisado cmo trabaja el convertidor
analgico a digital (ADC).
Slo nos falta procesar la informacin para mostrarla en
los displays, para que de esta manera diseemos, por ejemplo,
un voltmetro digital, proyecto que en breve publicaremos. Recuerden que necesitamos del programa llamado PICAXE Programming Editor, por lo que nuevamente hacemos la invitacin de que lo descarguen de nuestra pgina de internet, que
es www.webelectronica.com.ar y empleen la clave picaxe;
en su defecto, tambin lo pueden adquirir en la pgina www.picaxe.uk.co.
Una vez que ya se tiene el programa en Basic (figura 88),
descargamos el programa al microcontrolador PICAXE que se
encuentra instalado en la tarjeta programadora. Aunque ya lo

Figura 89 - Identificacin de terminales en


los conectores mini jack y DB9.
hemos publicado en reiteradas ocasiones, nuevamente mostramos la manera de armar el cable de programacin, o en su defecto, utilizar un cable serie comn y un adaptador que ya hemos descrito varias veces y que volvemos a mostrar en la figura 89. Sobre esta tarjeta entrenadora para un PICAXE - 18 se
tiene la posibilidad de desarrollar un sinnmero de proyectos,
los cuales iremos abordando poco a poco.
LISTA

DE COMPONENTES PARA UTILIZAR

LA TARJETA CONTROLADORA

PICAXE-18.

Tarjeta entrenadora PICAXE-18.


Mdulo Display de 3 dgitos
Varios: Cable de programacin, cable serie y adaptador, cables de conexin, batera de 9V.

CLUB SABER ELECTRONICA 67

der acceder, y el actuador, que es un solenoide que funciona a


manera de pasador y que es el que atora una puerta.
En esta ocasin emplearemos la tarjeta entrenadora del microcontrolador PICAXE-18, ya que a su vez utilizaremos un teExisten diversas maneras de disear una cerradura electrclado matricial de 4 X 4, y el PICAXE-08 no tiene el suficiente
nica, pero la constante que es comn en todas es que deben
nmero de terminales de entrada y salida.
asegurarnos la seguridad de ya sea un cuarto cerrado, una bEl aspecto ms importante que debemos tomar en cuenta y
veda, una zona un rea completa; por lo tanto la cerradura
que emplearemos en este proyecto es principalmente la de leer
se puede colocar desde una casa habitacin, hasta un banco,
el teclado matricial, ya que es por medio de este que ingresaun negocio, empresa o un centro comercial (figura 90).
remos uno a uno los caracteres que conforman la clave de acLos elementos importantes de toda cerradura electrnica
ceso de la alarma.
son el teclado, que es por donde se le ingresa la clave para poEl teclado ser como el que se
muestra en el diagrama esquemtico
de la figura 91.
De hecho, por obvias razones es
lo nico que ser visible de la cerradura electrnica, ya que lo dems, la
tarjeta entrenadora PICAXE-18 y el solenoide deben permanecer ocultos.
Realmente el circuito que se propone es muy simple, y esto se debe a
que la cerradura electrnica es un
bloque muy compacto, que inclusive
puede ser instalando dentro de una
caja del mismo tipo que las empleadas para colocar los apagadores de
los focos de las casas.
En el esquema de la figura 92, se
muestra la manera en que tiene que
conectarse tanto la tarjeta entrenadora del PICAXE-18, como el teclado
matricial, adems de los dispositivos
Figura 90 - Puerta protegida por una cerradura electrnica
electrnicos complementarios.
La forma de operar de la cerradura electrnica es la siguiente: La cerradura se basa principalmente en la lectura del
teclado matricial, por lo que se emplean 4 salidas del microcontrolador PICAXE-18 para tal efecto, las salidas empleadas
se encuentran identificadas como S0, S1, S2 y S3. Por otra
parte para completar la lectura del teclado es necesario el empleo de otras 4 terminales del PICAXE, pero ahora sern terminales de entrada siendo las terminales E0, E1, E2 y E6 las que
se dedican a dicha labor.
Para que se tenga una buena referencia elctrica de la informacin que se hace llegar a las terminales de entrada del
microcontrolador PICAXE, se utilizan los resistores identificados
como Rext4, Rext5, Rext6 y Rext7.
Una vez que se ingrese la clave adecuada a la cerradura
electrnica, ser necesario enviar una seal que active un solenoide para que abra (desatore) el cerrojo de una puerta, para
ello se emplea la salida S4 del microcontrolador PICAXE-18, y
Figura 91 - Diagrama esquemtico de la tarjeta entrepara activar al solenoide se hace por medio de los contactos
nadora PICAXE-18.
de un relevador, que a su vez la bobina del relevador tiene que
CERRADURA ELECTRNICA EMPLEANDO LA
TARJETA ENTRENADORA PICAXE-18

68 CLUB SABER ELECTRONICA

Figura 92 - Conexin de la cerradura electrnica


ser energizada por medio de la salida antes mencionada (S4).
Como se sabe, la bobina de un relevador es clasificado como
elemento de potencia, y ninguno de stos (aunque se trate de
un led) debe ser alimentado directamente por la salida de un
microcontrolador cualquiera que este sea. Por lo tanto para
activar la bobina del relevador se emplea un amplificador operacional, en la configuracin de seguidor de voltaje, el resistor
identificado como Rext2 tiene la tarea de colocar una referencia de voltaje a GND en la entrada del seguidor de voltaje, y
para manejar la corriente que demanda la bobina finalmente
se tiene un transistor (Q1), y por ltimo un diodo identificado
como D1 cuya funcin es la de eliminar la fuerza contra-electromotriz que produce la bobina del relevador.
Las terminales del contacto del relevador que ser empleado para activar
desactivar al solenoide se identifican como TerSol1 y TerSol2,
entre estas terminales puede utilizarse un solenoide ya sea para voltaje de corriente directa (CD) como para voltaje de corriente alterna (CA), por lo que dependiendo del tipo de energa se tiene que hacer llegar sta al contacto del relevador.
Despus de explicar cul es el circuito que ser empleado
para nuestra cerradura electrnica, ahora procederemos a desarrollar el programa para que el microcontrolador PICAXE-18
realice la funcin de la cerradura.
Para comenzar con el programa en primera instancia explicaremos cul es el algoritmo sobre el que trabaja la lectura del
teclado matricial, para ello se emplean las salidas S0, S1, S2
y S3 y a cada una de las salidas se tendr que enviar un 1
lgico a la vez, mientras las 3 restantes se fijan con un 0 lgico.
Esos 1's lgicos se hacen llegar al teclado matricial,
y en l se van activando cada una de sus filas, y as tenemos
que para activar la fila F0 se tiene que enviar un 1 lgico a
travs de la salida S0, posteriormente tenemos que enviar un
1 lgico por la salida S1 para que sea activada la fila F1, y
as sucesivamente hasta llegar a la fila F3 que corresponde con

Figura 93 - Teclado matrical y la definicin de sus teclas


para la cerradura electrnica
la salida S3. Lo que es importante tomar en cuenta es que si en
una salida se tiene un 1 lgico, las 3 terminales restantes se
fijarn con un 0 lgico. El 1 lgico tiene que ser enviado
slo uno a la vez, para que de esa manera se sepa que fila es
la que se est activando.
Una vez que el 1 lgico se encuentra en el teclado matricial, ahora slo tenemos que esperar a que sea presionada
una tecla y dependiendo de la que sea oprimida, se regresara
a una de las terminales de entrada el 1 lgico que previamente se envi a travs de una salida del PICAXE (S0, S1, S2
S3).
Recordemos que las terminales de entrada que se utilizarn
son E0, E1, E2 y E6, que respectivamente corresponden a las
columnas 0, 1, 2 y 3.
En el teclado matricial cuando es presionada una tecla, se
cierra un interruptor que interconecta una fila con una columna,
es por ello que solo se enva un 1 lgico a la vez a la fila correspondiente, porque ese 1 lgico se reflejara en una columna que es en donde se oprime el botn del teclado matricial.
Si fueran enviados mas de 1 lgico a la vez, no se tendra
control de que botn fue el que se oprimi.
En la figura 93 se muestra el teclado matricial y la identificacin de sus teclas, para poder ingresar los datos que se requieren y se pueda validar alguna clave de acceso. En esta
ocasin del teclado matricial de 4X4 solo sern empleadas 3
de sus 4 columnas, pero eso no quiere decir que no se pueden
utilizar todas sus teclas, ya que aparte de los nmeros se pueden implementar las funciones de borrar, validar, etc.
En la tabla 7 se muestra cul es la combinacin de fila y
columna que se presenta cuando una tecla es oprimida.

CLUB SABER ELECTRONICA 69

Tabla 7 - Combinacin de filas y columnas


C0 = E0
FO=S0
1
F1=S1
4
F2=S2
7
F3=S3
*

C1 = E1
2
5
8
0

C1 = E1
3
6
9
#

C3 = E6
NI
NI
NI
NI

NI - No Implementado.
A continuacin vamos a explicar el programa con el que se
hace trabajar al microcontrolador PICAXE, teniendo el programa la misma base de operacin que la propuesta para controlar al teclado matricial.

que genere el interruptor que se oprima del teclado, una vez


que termina el tiempo de 10 mseg, podemos dar por hecho
que si fue oprimida una tecla, esta ya se estabilizo y por lo tanto ahora se puede saber que tecla fue la que se acciono, porque como ya se explico en la parte de la electrnica del circuito de la cerradura electrnica, una vez que se activa una fila
del teclado matricial, es a travs de la columna que sabemos
que tecla se oprimi.
Es por ello que se pregunta por cual terminal de entrada se
recibe un 1 lgico (si es que se oprimi una tecla). Recordemos que pueden ser posibilidades las que nos reporten la posible identificacin de una tecla, porque si se activa la fila 0 se

Figura 94 - Fragmento del diagrama de flujo que activa


la fila 0 del teclado matricial.
Tal como se explico en lneas anteriores que lo que se tiene que ir haciendo es activar cada fila una por una, por lo tanto, se tiene que comenzar de la primera, o sea la fila 0.
Para ello a travs del comando let pins=1 se enva un 1 lgico a la salida S0 del microcontrolador PICAXE y que corresponde con la fila 0. Como paso siguiente se produce un retardo o
espera de 10 mseg, tiempo suficiente para eliminar el rebote

70 CLUB SABER ELECTRONICA

Figura 95 - Fragmento del diagrama de flujo que activa


la fila 1 del teclado matricial.

guardando, se emplea la variable b13 que se es quien a travs de un contador se lleva el control de la posicin del digito
que integra la clave de la cerradura electrnica.
En este
ejemplo se tiene una clave de 4 dgitos, por lo tanto dependiendo del digito que se este buscando, ser el valor de la variable
b13, y por lo tanto llegara hasta mximo un valor de 4.
Bsicamente cuando se pasa a la activacin de la fila 1, el
proceso es el mismo que para la fila 0, solo que en esta oportunidad, la salida que se activar ser la identificada en el microcontrolador PICAXE como S1 y que corresponde con la fila
1, hacindose esta operacin por medio del comando let
pins=2.
De igual manera para evitar los rebotes mecnicos de los interruptores del teclado matricial, es empleado un
retardo (comando pause 10) de 10 mseg. Acto seguido dependiendo en que columna se encuentra la tecla que se oprima, ser por donde se reciba el correspondiente 1 lgico a
travs de la terminal de entrada, solo que en esta ocasin las
posibles teclas que pueden ser activadas con las identificadas
como 4, 5, 6.
Que corresponden con las entradas E0, E1

Figura 96 - Fragmento del diagrama de flujo que activa


la fila 2 del teclado matricial.
tiene abierta la identificacin de las teclas 1, 2 y 3 que
corresponden con las columnas 0, 1 y 2, y que a su vez se recibe la informacin a travs de las entradas 0, 1 2.
Es
por ello que si una condicin es valida en los comandos if del
fragmento del diagrama de flujo de la figura 94, dependiendo
cul entrada se est comparando se le asignar a la variable
b0 el valor correspondiente con la tecla que ha sido identificada (si es que sta fue presionada). Una vez que fue presionada una tecla entonces se procede a guardar el valor de la tecla en la localidad que le corresponde, esto es, si la clave para abrir la cerradura es de 4 dgitos, se guardara el valor de
la tecla en la posicin correspondiente, digito 1 digito 2 o digito 3 digito 4, esto se hace en un paso posterior empleando el salto identificado como un 1 encerrado en un circulo.
Si ninguna tecla de la fila 0 es accionada, entonces el resultado de los comandos if de la figura 94 darn como resultado una accin no valida, y por lo tanto ahora se tiene que
activar la fila siguiente que en este caso se refiere a la fila 1,
para esto se emplea el salto identificado con el valor 2 encerrado en un circulo, y por lo tanto ahora se estar activando la
fila 1, tal como se ilustra en la figura 95.
Para llevar un control sobre que digito de la clave se esta

Figura 97 - Fragmento del diagrama de flujo que activa la


fila 3 del teclado matricial.

CLUB SABER ELECTRONICA 71

E2. Si fue presionada una tecla de la fila 1, se proceder a


guardarla en el registro correspondiente dependiendo de la posicin del dgito que se esta buscando. En caso de que no se
oprima tecla alguna de la fila 1, entonces se pasara a buscar
si en la fila 2 es en donde se presione una tecla.
La operacin que se realiza para las filas 0 y 1 es la misma que se utiliza para las filas 2 y 3, pero buscando que se
oprima cualquiera de las teclas 7, 8 9 para la fila 2, las teclas *, 0 # para la fila 3, de acuerdo a como se observa en
las figuras 96 y 97 correspondientemente.
En la fila 3 las teclas * y # las relacionamos con un valor
digital que son el 255 para * y 254 para #, por lo tanto aunque no se trate de un valor numrico, podemos relacionar cualquier accin que queremos que haga una tecla con un identificador para que al final se tenga la posibilidad de tener varias
opciones para fijar en un teclado matricial.
Por ltimo en la figura 98 se muestra que dependiendo del
valor que tenga la variable b13, ser alojado el valor de la

tecla que fue encontrado previamente, el dato antes de ser alojado adecuadamente se encuentra en una variable temporal y
se trata de la variable b0. Si el digito que se esta buscando
es el primero, entonces su valor ser alojado en la variable
b1, o en la variable b2 si se trata del segundo digito, y as
sucesivamente hasta completar los 4 dgitos.
Si el valor de b13 es menor que 4, entonces una vez que
se ha guardado el valor de la tecla, se incrementa en una unidad el valor de b13, mientras que si despus de guardar el valor del cuarto digito (recordemos que la clave propuesta es de
4 dgitos), entonces el paso siguiente es el de corroborar que
la clave es valida, por lo tanto se compara digito por digito con
respecto a un valor previo que fue almacenado. En caso de que
la clave no sea la buena, entonces se limpian los registros de
los dgitos de la clave y nuevamente nos vamos a recorrer la fila 0 del programa. En esta ocasin la clave preestablecida es
la dada por la siguiente secuencia de dgitos4321.
Una vez que se observa que la clave es la misma que la

Figura 98- Fragmento del diagrama de flujo que valida la clave del teclado matricial.

72 CLUB SABER ELECTRONICA

Figura 99 - Diagrama de flujo completo.


let pins = 2
' %00000010
pause 10
if pin0=1 then label_A3
if pin1=1 then label_9C
if pin2=1 then label_95

preestablecida, entonces como paso siguiente se procede a recorrer el cerrojo de la puerta, hacindose esta accin por medio de la salida 4 que es por medio de esta que se activa al
solenoide. La salida 5 tambin es activada para que un indicador luminoso nos avise que la cerradura electrnica nos permite ingresar a una determinada zona.
La activacin del solenoide no ser permanente, y es por
ello que se dispone de un temporizador para que esta accin
dure tal solo 3 segundos, tiempo suficiente para empujar o jalar la puerta que acaba de abrirse a travs de la cerradura
electrnica. Cuando se cumple el tiempo de 3 segundos, se desactivan las salidas 4 y 5, y tambin se limpian los registros de
los dgitos de la clave de la cerradura electrnica
En la figura 99 se muestra el diagrama de flujo completo
del programa que controla la cerradura electrnica.
A continuacin se encuentra el cdigo del programa del
microcontrolador PICAXE en basic, que es la conversin del
diagrama de flujo.

let pins = 4
' %00000100
pause 10
if pin0=1 then label_154
if pin1=1 then label_14D
if pin2=1 then label_146
let pins = 8
' %00001000
pause 10
if pin0=1 then label_1B0
if pin1=1 then label_1A9
if pin2=1 then label_1A2
goto label_3C

Programa en Basic del Diagrama


de Flujo de la figura 99
main:
label_35:
let b13= 1
label_3C:
let pins = 1
' %00000001
pause 10
if pin0=1 then label_5B
if pin1=1 then label_54
label_23:
if pin2=1 then label_4D

label_4D:
label_43:
label_B6:

label_230:

let b0= 3
if b13= 1 then label_F7
if b13= 2 then label_F0
if b13= 3 then label_E9
if b13= 4 then label_E2
let b1= 0
let b2= 0
let b3= 0
let b4= 0

CLUB SABER ELECTRONICA 73

goto label_35
let b0= 2
goto label_43

label_1A2:
label_1B9:

label_5B:

let b0= 1
goto label_43

label_1A9:

let b0= 0
goto label_1B9

label_95:
label_101:

let b0= 6

label_1B0:

let b0= 254


goto label_1B9

label_1EB:

if pin1=0 then label_1F6


goto label_1EB

label_1F6:

if pin2=0 then label_1D2


goto label_1F6

label_54:

let b0= 255


goto label_B6

goto label_B6
label_9C:

let b0= 5
goto label_101

label_A3:

let b0= 4
goto label_101

label_E2:

let b4=b0
if b1= 1 then label_20F
goto label_230

label_1D2:
goto label_3C
label_20F:

if b2= 2 then label_21A


goto label_230

label_21A:

if b3= 3 then label_225


goto label_230

label_225:

if b4= 4 then label_25E


goto label_230

label_25E:

label_E9:
label_2E:
label_1E0:

let b3=b0
let b13=b13+ 1
if pin0=0 then label_1EB
goto label_1E0

label_F0:

let b2=b0
goto label_2E

label_F7:

let b1=b0
goto label_2E

label_146:
label_15D:

let b0= 9

high 4
high 5
wait 3
low 4
low 5

goto label_B6

goto label_230

label_14D:

let b0= 8
goto label_15D

label_154:

let b0= 7
goto label_15D

74 CLUB SABER ELECTRONICA

Recuerden que a travs de nuestra pgina de internet


www.webelectronica.com.ar pueden descargar tanto el programa Programming Editor como los cdigos tanto en diagrama
de flujo como en basic del presente ejemplo, tan solo utilicen la
clave picaxe. ************

marketplace 261.qxd

4/10/12

4:30 PM

Pgina 79

marketplace 261.qxd

4/10/12

4:30 PM

Pgina 78

4 forros.qxd:Maquetacin 1 15/01/14 12:45 Pgina 1

3 forros.qxd:Maquetacin 1 15/01/14 12:46 Pgina 1

You might also like