Está en la página 1de 73

Introducción: Qué es PICAXE . . . . . . . . . . . . . . . . . . . .3 Convirtiendo organigramas . . . . . . . . . . . . . . . . . . . . . . . . .

27
Conociendo los microcontroladores de este sistema . . . . . . . . . .4 Utilizando símbolos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
Utilitario gratuito para hacer programas . . . . . . . . . . . . . . . . . 6 Guardando e imprimiendo organigramas . . . . . . . . . . . . . . . .28
Sistemas de números . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
Lección 1: Primeras Experiencias con los PICAXE . . . . .9 Visualizando cifras analógicas en el display de 7 segmentos . . .29
Uso y prueba de leds: primeros programas en BASIC . . . . . . . . .9 Controlando motores paso a paso . . . . . . . . . . . . . . . . . . . . .29
Uso y prueba de timbres y zumbadores . . . . . . . . . . . . . . . . .12 Subrutinas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32
Prueba y uso de sensores digitales . . . . . . . . . . . . . . . . . . . . .13 El circuito del entrenador . . . . . . . . . . . . . . . . . . . . . . . . . . .32
Prueba y uso de fotorresistencias . . . . . . . . . . . . . . . . . . . . . .14 Examen Múltiple choisse Lección 1 . . . . . . . . . . . . . . . . . . . .33
Más sobre el sistema PICAXE . . . . . . . . . . . . . . . . . . . . . . . .16
Entrenador PICAXE-18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18 Lección 2: Diseño y Construcción
Preparando el tablero tutorial . . . . . . . . . . . . . . . . . . . . . . . .18 de Proyectos con PICAXE . . . . . . . . . . . . . . . . . . . . .35
El software gratuito para trabajar con PICAXE . . . . . . . . . . . . .18 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
Ejecutando un programa de muestra . . . . . . . . . . . . . . . . . . .19 Kit entrenador para PICAXE 08 . . . . . . . . . . . . . . . . . . . . . . .39
Instrucciones para uso en Windows . . . . . . . . . . . . . . . . . . . .19 Aprendiendo a programar la tarjeta
Aprendiendo a hacer programas en BASIC . . . . . . . . . . . . . . .20 entrenadora 08 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
Utilizando el comando Symbol . . . . . . . . . . . . . . . . . . . . . . .20 Juego de luces tipo auto fantástico . . . . . . . . . . . . . . . . . . . . .44
El circuito del “entrenador” PICAXE-18 . . . . . . . . . . . . . . . . . .21 Alarma para puertas y ventanas empleando
Utilizando Bucles For...Next . . . . . . . . . . . . . . . . . . . . . . . . .22 la tarjeta entrenadora PICAXE 08 . . . . . . . . . . . . . . . . . . . . .47
Controlando la velocidad de un motor . . . . . . . . . . . . . . . . . .22 La Tarjeta entrenadora PICAXE 18 . . . . . . . . . . . . . . . . . . . . .51
Uso de timbres y zumbadores electrónicos en Aprendiendo a utilizar el ADC en la tarjeta
el sistema PICAXE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23 entrenadora del PICAXE 18 . . . . . . . . . . . . . . . . . . . . . . . . .53
Uso de entradas con sensores digitales . . . . . . . . . . . . . . . . . .23 Control de temperatura con la tarjeta entrenadora
Uso de entradas con sensores analógicos . . . . . . . . . . . . . . .24 PICAXE 18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59
Cómo se leen las entradas analógicas . . . . . . . . . . . . . . . . . .25 Programa para desplegar números BCD con la
Programación por organigramas o diagramas de flujo . . . . . . .25 tarjeta entrenadora del PICAXE 18 . . . . . . . . . . . . . . . . . . . .63
Dibujando organigramas . . . . . . . . . . . . . . . . . . . . . . . . . . .27 Cerradura electrónica empleando la tarjeta
Uniendo bloques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27 entrenadora PICAXE 18 . . . . . . . . . . . . . . . . . . . . . . . .........68
Simulación de pantalla . . . . . . . . . . . . . . . . . . . . . . . . . . . .27 Examen Multiple choisse Lección 2 . . . . . . . . . . . . . . . . .........75

Director de la Colección Club SE Administración México: Olga Vargas


Ing. Horacio D. Vallejo Patricia Rivero Rivero Liliana Vallejo
Jefe de Redacción Comercio Exterior Argentina: Mariela Vallejo
Pablo M. Dodero Hilda Jara Javier Isasmendi
Autor de esta edición: Comercio Exterior México: Ramón Miño
Ismael Cervantes de Anda, Docente de la Margarita Rivero Rivero Fernando Ducach
Escuela de Cómputo (ESCOM) e Instituto Director Club Saber Electrónica:
Politécnico Nacional (IPN). México DF. Luis Leguizamón Areas de Apoyo
Responsable de Atención al Lector: Teresa Ducach
Club Saber Electrónica es una publicación Alejandro A. Vallejo Disprof
de Saber Internacional SA de CV de México Coordinador Internacional Fernando Flores
y Editorial Quark SRL de Argentina José María Nieves Claudio Gorgoretti
Publicidad Paula Vidal
Editor Responsable en Argentina y México: Argentina: 4301-8804 - México: 5839-5277 Raúl Romero
Ing. Horacio D. Vallejo
Administración Argentina: Staff Internet: www.webelectronica.com.ar
Teresa C. Jara Víctor Ramón Rivero Rivero Web Manager: Luis Leguizamón

Club Saber Electrónica Nº 29. Fecha de publicación: Mayo de 2007. Publicación mensual editada y publicada por Editorial Quark, Herrera 761 (1295) Capi-
tal Federal, Argentina (005411-43018804), en conjunto con Saber Internacional SA de CV, Av. Moctezuma Nº 2, Col. Sta. Agueda, Ecatepec de Morelos, Mé-
xico (005255-58395277), con Certificado de Licitud del título (en trámite). Distribución en México: REI SA de CV. Distribución en Argentina: Capital: Car-
los Cancellaro e Hijos SH, Gutenberg 3258 - Cap. 4301-4942 - Interior: Distribuidora Bertrán S.A.C. Av. Vélez Sársfield 1950 - Cap. – Distribución en Uru-
guay: 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 entrañan responsabilidad de nuestra parte. Está prohibida la reproducción
total o parcial del material contenido en esta revista, así como la industrialización y/o comercialización de los aparatos o ideas que aparecen en los mencio-
nados textos, bajo pena de sanciones legales, salvo mediante autorización por escrito de la Editorial.
Revista Club Saber Electrónica, ISSN: 1668-6004
E
l campo de acción de los microcontroladores ha rebasado sus expectativas originales de aplicación, ya que en la actua-
lidad los podemos encontrar no sólo 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 señalar un aparato elec-
trodoméstico como es una lavadora automática, que para controlar sus procesos de lavado, secado y pre - planchado, requiere
de un microcontrolador.
Y así podemos continuar con más 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 vehículo, 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 sería extraño encontrar microcontroladores hasta dentro de nuestros cuerpos, controlando algún órgano o miem-
bro artificial.
Con el transcurso del tiempo los microcontroladores van ganando terreno, y se van incorporando a más aplicaciones, tanto
para el área de diseño como para el de mantenimiento, lo que requiere de más personas que tengan conocimientos sobre la pro-
gramación de microcontroladores.
Si buscamos en el mercado microcontroladores de diferentes marcas, vamos a encontrar una gran cantidad de fabricantes,
además de muchas versiones que nos ofrecen, lo que nos da un volumen de matrículas enorme, dándonos alternativas muy diver-
sas en cuanto a la elección de algún microcontrolador en particular.
Del universo existente de microcontroladores, vamos a enfocarnos en los PICAXE, porque cuentan con una herramienta de pro-
gramación que nos facilita el aprendizaje, y una vez que tengamos la práctica y habilidad en la programación, podremos emi-
grar a otro tipo de microcontroladores, porque con los PICAXE aprendemos a realizar diagramas de flujo, que es una herramienta
indispensable en la programación.
Los conocimientos sobre programación, normalmente se adquieren a través de un curso formal ya sea en universidades o escue-
las técnicas, pero ¿qué sucede con aquellas personas que no pueden, por cualquier razón, incorporarse a estudiar microcontro-
ladores?
Lo importante es que si alguien está interesado(a) en aprender a programar microcontroladores, y no puede llevar un curso for-
mal, 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 características básicas
de los microcontroladores PICAXE, para que de manera genérica el lector pueda ingresar de forma fácil a la programación de
los microcontroladores.
En la segunda parte de la obra, el lector podrá adquirir conocimientos más avanzados en cuanto a técnicas de programación,
para ello se abordan los temas nuevamente explicando aspectos básicos para reafirmar los conocimientos, y además sobre dis-
tintos ejemplos se van explicando diferentes situaciones para ir incorporando diversas herramientas de programación.
Al finalizar cada una de las partes que conforman al libro, el lector se encontrará con un examen, que le permitirá ir evaluan-
do su nivel de conocimientos, y así pueda reforzar aquellas partes en donde se encuentre débil.
Pues bien querido lector, en general esta obra es el resultado del impulso que en Club Saber Electrónica, 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 utili-
dad, muchas gracias por elegirnos y hasta la próxima.

“Agradezco las facilidades prestadas por el Instituto Politécnico Nacional y en especial a la Escuela Superior de Cómputo, para
la realización de la presente obra,la cual es el resultado de la comprobación 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 opera-
ción era una suma de 1 bit, se comenzó con una ca-
rrera tecnológica en la cual lejos de ver el fin, día
tras día se van logrando cosas inimaginables. Tal es
el caso de los microcontroladores que vendrían a ser
el ejemplo resumido y en pequeño de una compu-
tadora personal (PC).

Un microcontrolador, que puede ser de 8, 18, 28, 40 ter-


minales o más, internamente dentro de su encapsulado posee
como equipamiento mínimo un microprocesador, memoria
RAM, y distintas versiones de memoria ROM. Los microcontro-
ladores más avanzados, aparte de lo mencionado anteriormen-
te, también llegan a poseer temporizadores, ADC, DAC, Comu-
nicación en paralelo, USAR, etc. En la figura 1 vemos todo lo
necesario para programar un PICAXE.
Un microcontrolador, desde el punto de vista de operación,
puede considerarse como si fuera una PC, ya que cuenta con
el conjunto básico de implementos que necesita realizar sus fun-
ciones, esto es, microprocesador, disco duro, memoria RAM,
etc. Clásicamente, cuando programamos un microcontrolador,

Figura 1

CLUB SABER ELECTRONICA 3


un firmware a manera de BIOS que simplifica la forma de pro-
Figura 2
gramarlo. Al igual que en todos los sistemas de desarrollo, exis-
ten ya predefinidas toda una serie de tarjetas de prácticas so-
bre las cuales podemos emular las aplicaciones que hemos di-
señado, pero gracias al firmware que poseen los microcontro-
ladores PICAXE “se puede armar la aplicación completa inclu-
yendo al microcontrolador”, y sobre la aplicación programarlo
sin necesidad del sistema de desarrollo, ni del circuito progra-
mador de microcontroladores. Ver figura 2.
De hecho, el sistema PICAXE hace más accesible la progra-
mación de microcontroladores a todas aquellas personas que
tan sólo cumplan con el único e indispensable requisito que es
el de querer aprender. Vea en la figura 3 una pantalla de la
aplicación que nos permitirá realizar el programa que vamos a
de forma implícita se tiene que desarrollar un programa que cargar dentro del PIC. Aquí no vamos a mencionar las ventajas
trabaja a manera del BIOS de una PC, ya que lo primero que y desventajas del sistema PICAXE con respecto a otros; lo úni-
debemos tomar en cuenta es la configuración de sus puertos ya co que podemos agregar es que se trata de otra manera de
sea como de entrada o de salida, configurar sus demás herra- programar microcontroladores PIC, empleando diagramas de
mientas como pueden ser los temporizadores, los ACD, etc. flujo y/o lenguaje BASIC, (figura 4) los cuales ya sea de ma-
Han aparecido en el mercado sistemas de desarrollo que nera consciente o totalmente implícita recurrimos a ellos para
permiten la programación del microcontrolador de una manera elaborar un programa.
relativamente fácil, en la cual se puede emular el proceso que A lo largo de este libro iremos aprendiendo paso a paso la
nos interesa desarrollar. Para la mayoría de estos sistemas de forma de cómo programar los microcontroladores bajo el siste-
desarrollo, una vez que se tiene terminada la aplicación, el pa- ma PICAXE. Para ello, como primer paso, emplearemos una tar-
so siguiente es armar el prototipo e insertar el microcontrolador jeta de desarrollo de la cual proporcionaremos su circuitería
debidamente programado. para que ustedes la puedan armar. Posteriormente, después de
Recientemente ha sido lanzado al mercado un sistema de realizar algunas prácticas, avanzaremos ya sobre aplicaciones
desarrollo para programar microcontroladores PIC llamado PI- en donde se tenga al microcontrolador como elemento princi-
CAXE, que de por sí quien ha utilizado estos microcontrolado- pal y al cual programaremos en sitio. Pues bien, los invitamos
res puede constatar lo sencillo que resulta su programación. El a que exploren esta nueva forma de programar microcontrola-
sistema de desarrollo PICAXE hace las cosas todavía más sen- dores que, estamos seguros, les será de gran utilidad.
cillas para el programador, ya que se cuenta con dos opcio-
nes para diseñar una aplicación, una por medio de diagramas
de flujo y otra es por medio de “BASIC”, y aunque esto no es Conociendo los Microcontroladores
ninguna novedad, ya que estas herramientas existían con ante- de este Sistema
rioridad, lo ventajoso del PICAXE radica en el hecho de que se
trata de un microcontrolador PIC el que en un segmento de me- El PICAXE es un sistema de microcontroladores PIC muy fá-
moria ROM interna le ha sido grabado, desde su fabricación, cil 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 través 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 figu-
ra 4. Por otra parte, de la misma figura 1 se
observa que la terminal identificada como
Serial Sal, cumple con una doble función, y
dependiendo de dónde se ubique un jumper
selector en el conector CON2, se podrá pro-
gramar al PIC o esa misma terminal. Una
vez programado el PIC, tendrá la función de
una terminal de salida de datos.
Del circuito esquemático de la figura 6
Figura 6 se observa la forma en que están dispuestas
las terminales de un PICAXE de 18 termina-
les, de las cuales las que se encuentran iden-
llo, además de contar también con la posibilidad de progra- tificadas como En 0, En 1, En 2, En 6 y En 7 son dedicadas ex-
marlos con diagramas de flujo. El sistema PICAXE aprovecha clusivamente a adquirir datos del exterior hacia el microcontro-
todas las características de los microcontroladores de bajo cos- lador. Las terminales que se encuentran identificadas de la Sal
to que incorporan memoria FLASH. 0 a Sal 7 son exclusivamente para enviar datos hacia afuera
El sistema PICAXE está disponible en tres versiones que son del microcontrolador, mientras que las terminales identificadas
el de 8 terminales (PICAXE-08), 18 terminales (PI-
CAXE-18) y 28 terminales (PICAXE-28). En estos mi-
crocontroladores ya se tienen definidas las termina-
les que tienen la función de entrada y salida de da- Figura 7
tos, además de las terminales que sirven para pro-
gramar al PICAXE en sitio, o en otras palabras, so-
bre la misma aplicación. En las figuras 5, 6 y 7 se
muestran los circuitos esquemáticos de la disposi-
ción de cada uno de los microcontroladores PICA-
XE.
En la figura 5 se muestra el circuito esquemáti-
co para un PICAXE de 8 terminales, de las cuales
las que están identificadas como Pin1 E/S, Pin2
E/S, Pin3 E/S y Pin4 E/S, son terminales que pue-
den 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 mi- preparar la conexión hacia el PIC, tomando en cuenta las ter-
crocontrolador. minales tal como se observa en la figura 9.
En el circuito de la figura 7 se muestra la forma de conec- Como se puede apreciar de la figura 9, se puede emplear
tar a un PICAXE de 28 terminales, en donde aparte de las ter- (es recomendable) un plug de los utilizados para conectar los
minales de entrada que se encuentran definidas como En 0 a audífonos a la salida de audio de un walkman o discman, y te-
En 7, también se cuenta con las terminales de salida identifica- ner un cable con un conector DB9 en un extremo y un plug de
das como Sal 0 a Sal 7, además de 4 terminales para entrada audio en el otro, tal como se ilustra en la figura 10.
de datos analógicos, y por último las terminales de programa- Por último, diremos que para armar el cable de programa-
ción del microcontrolador. ción, tal como se muestra en la figura 10, en las figuras 8 y 9
Ya se ha mencionado que el sistema PICAXE no requiere de se muestra la configuración de las terminales tanto del conector
programador o borrador, ya que utiliza únicamente tres alam- DB9 como el plug de audio.
bres 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 Utilitario Gratuito para Hacer Programas
en el conector del puerto serie de la PC, ahora lo que sigue es
Lo diferente del sistema de microcontroladores PICAXE, con
Figura 8 respecto a la programación tradicional de los microcontrolado-
res PIC, radica en la programación basada en un lenguaje BA-
SIC y diagramas de flujo. Esto hace que los microcontroladores
del sistema PICAXE sean muy fáciles de programar, en un am-
biente 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 Figura 12 - Software de instalación “Programming Editor”.

6 CLUB SABER ELECTRONICA


biente de programación, por lo que describiremos paso a pa- identificado como “next” para que continúe la instalación.
so la forma de hacerlo. Posteriormente será desplegada la ventana donde se mues-
El software lo puede bajar de nuestra página de internet tra la licencia que debemos aceptar, porque de otra manera no
que usted ya conoce www.webelectronica.com.ar; debe hacer podremos continuar con la instalación del software, por lo que
click en el ícono password e ingresar la clave PICAXEPRO. Re- nuevamente oprimiremos el cuadro identificado como “next”;
cuerde que para bajar cualquier información, debe ser socio esta acción se indica en la figura 14.
del club SE, lo cual es gratuito y puede inscribirse por Internet Como paso siguiente, pregunta por el nombre del usuario
en sólo un par de minutos (siga las instrucciones que dimos pa- que normalmente utilizará el software; aquí podemos instalar la
ra bajar el programa PICAXEPRO y encontrará cómo hacerse aplicación para que pueda ser utilizada por todas las personas
socio si aún no lo es). que utilicen la computadora, y después de seleccionar esta ac-
Una vez que se tenga el software, se encontrará con una ción tenemos que oprimir el cuadro identificado como “next”,
carpeta con el nombre de “progedit”, a la cual debemos acce- tal como se muestra en la figura 15.
der (observe la figura 11). Posteriormente debemos decir en dónde se guardará el
Luego debemos ingresar a la carpeta progedit y tenemos software de programación, que por lo general, aquí no tene-
que ubicar el programa identificado como “Programming Edi- mos que modificar dato alguno, a menos de que querramos
tor”, al cual debemos de hacerle un doble click con el ratón de asignar otra localidad, tal como se ilustra en la figura 16. Una
la PC para que éste se ejecute y se pueda instalar el programa vez seleccionada la opción correspondiente, procederemos a
de los PICAXE, tal como se muestra en la figura 12. hacer click sobre el cuadro identificado como “next”.
Una vez que ejecutamos el programa de instalación Pro- Por último, aparecerá una ventana de confirmación para
gramming Editor aparecerá la ventana que se muestra en la fi- estar seguros de que los datos que introdujimos se encuentran
gura 13, sobre la cual debemos oprimir con el ratón el cuadro correctos; si es así, debemos oprimir el cuadro identificado co-
mo “next” para que continúe la instalación, tal como se apre-
cia en la figura 17.

Figura 13 - Ventana de bienvenida para la insta-


lación del software de los PICAXE.
Figura 15 - Información del usuario.

Figura 14 - Acuerdo de licencia. Figura 16 - Destino del software.

CLUB SABER ELECTRONICA 7


Cuando se está instalando el software, se indica gráfica- Editor”, al cual, para comenzar a programar los microcontrola-
mente tal como se ilustra en la figura 18; aquí debemos espe- dores, debemos hacer un doble click con el mouse para que se
rar hasta que se terminen de instalar, tanto el software de pro- ejecute el programa, tal como se muestra en la figura 20. En la
gramación como todas las utilerías que serán empleadas por figura 21 y 22 se observa un ejemplo del ambiente gráfico,
los PICAXE. En la figura 19 se muestra la ventana que nos in- tanto en lenguaje BASIC como en diagrama de flujo. ******
dica que ya se ha concluido con la instalación, por lo que de-
bemos oprimir el cuadro identificado como “finish”.
Una vez instalado el software de programación de los PI-
CAXE, en el escritorio de nuestra PC encontraremos un ícono
de acceso directo identificado como “PICAXE Programming

Figura 20 - Icono de acceso rápido en el escritorio


de la PC.

Figura 17 - Ventana de confirmación de datos.

Figura 21 - Lenguaje BASIC para programar los


Figura 18 - Ventana de instalación del software. PICAXE.

Figura 19 - Ventana final. Figura 22 - Diagrama de flujo para programar los PICAXE.

8 CLUB SABER ELECTRONICA


Uso y Prueba de Leds: algunas consideraciones generales sobre las fuentes de energía
Primeros Programas en BASIC que usaremos para alimentar a nuestro circuito.

Para que un microcontrolador desarrolle una tarea median- ¿Qué es una batería?
te la ejecución del programa que tiene grabado en su memo- Una batería es una fuente de energía eléctrica (es una fuen-
ria, es preciso que el mismo esté alimentado y posea compo- te de potencia portátil). Las baterías están constituidas por ele-
nentes externos que permitan su funcionamiento. Normalmente mentos químicos que almacenan energía. Al conectarlas a un
se emplean resistencias, diodos emisores de luz, capacitores, circuito, esta energía química se convierte en energía eléctrica
buzzers piezoeléctricos (zumbadores), interruptores, etc. que puede luego alimentar al circuito.

El objetivo de este texto es que Ud. utilice al mi- ¿Qué tamaño de batería se utilizan en electrónica?
crocontrolador PICAXE como un elemento multipro- Las baterías vienen en todo clase de tipos y tamaños. La
pósito y le saque “el mayor jugo posible”. mayoría de las baterías consisten en un grupo de pilas, en don-
de cada pila provee cerca de 1.5V (figura 1). Por lo tanto 4 pi-
Antes de explicar cómo se puede realizar la prueba de los las crean una batería de 6V y 3 pilas una de 4.5V. Como re-
componentes que trabajan con el microcontrolador, daremos gla general, mientras más grande es la batería, más tiempo du-

CLUB SABER ELECTRONICA 9


una pila o una batería. Las baterías alcalinas y las recargables
Figura 1
pueden suministrar corrientes muy grandes, y pueden calentar-
se tanto que pueden llegar a “explotar” o derretir la carcasa.
Siempre asegúrese de conectar la batería en el sentido correc-
to (rojo positivo (V+) y negro negativo -0V ó tierra-). Si las ba-
terías se conectan al revés, el microcontrolador corre peligro de
calentarse y dañarse.
Los paquetes de baterías se conectan a menudo, al circui-
to integrado mediante cables con conectores adecuados. Ase-
gúrese siempre que los cables rojo y negro estén conectados en
la dirección correcta. También es de mucha utilidad pasar los
cables de la batería a través de los agujeros del tablero antes
de soldarlos en su lugar (esto proveerá una unión mucho más
fuerte, la cual será mucho menos propensa a soltarse).
Nunca use una batería PP3 de 9V para alimentar directa-
mente a un microcontrolador, ya que el mismo sólo trabaja con
voltajes entre 3 y 6V.
Algunos soportes de baterías pequeñas requieren la solda-
dura de cables a contactos metálicos en la caja. En este caso
debe ser muy cuidadoso de no sobrecalentar los contactos me-
tálicos. Si los contactos se calientan mucho, derretirán el plásti-
rará (ya que contiene más químicos y por lo tanto será capaz co que los rodea y por lo tanto se caerán. Una buena manera
de convertir más energía). Una batería de mayor voltaje no du- de prevenir esto es pedirle a un amigo que sostenga los contac-
ra más que una batería de menor voltaje. Por lo tanto, una ba- tos metálicos con una pinza pequeña. Las pinzas actuarán co-
tería de 6V formada por 4 pilas AA dura mucho más que una mo un disipador de calor y ayudarán a evitar que el plástico se
batería PP3 de 9V (batería de 9V común), ya que por ser físi- derrita.
camente más grande contiene una mayor cantidad total de
energía química. Por lo tanto, aquellos equipos que requieren ¿Qué es un LED?
mucha potencia para operar (por ejemplo un reproductor por- Un Diodo Emisor de Luz (LED) es un componente electróni-
tátil de CDs, el cual tiene un motor y un láser para leer los CDs) co que emite luz cuando la corriente pasa a través de él. Un
siempre utilizarán pilas AA y no baterías PP3. LED es un tipo de diodo especial.
Los microcontroladores PICAXE generalmente requieren en- Un diodo es un componente que sólo permite el flujo de co-
tre 3 a 6V para operar, y por lo tanto es mejor utilizar una ba- rriente en una dirección. Por lo tanto al utilizar un diodo, el mis-
tería formada por tres a cuatro pilas AA. Nunca utilice una ba- mo debe estar conectado en la dirección correcta. La pata po-
tería PP3 de 9V ya que la alimentación de 9V puede dañar el sitiva (ánodo) de un LED es más larga que la pata negativa
microcontrolador. (mostrada por una barra en el símbolo). La pata negativa tam-
bién posee un extremo plano en la cubierta plástica del LED. En
¿Qué tipo de batería debo utilizar? la figura 2 se puede observar el aspecto y el símbolo de un led.
Los distintos tipos de baterías contienen diferentes quími-
cos. Las baterías de carbón-zinc son las más baratas, y son ¿Para qué se utilizan los LEDs?
adecuadas para utilizarse en muchos circuitos de microcontro- Los LEDs se utilizan principalmente como luces indicadoras.
ladores. Las baterías alcalinas son más costosas, pero tienen Los LEDs rojos y verdes se utilizan, comúnmente, en artefactos
una vida mucho más larga y se las debe emplear cuando se ne- electrónicos tales como televisores para mostrar si el televisor
cesita alimentar dispositivos que requieren mucha corriente ta-
les como motores. Las baterías de litio son mucho más costosas
pero tienen una larga vida, y por lo tanto se utilizan comúnmen-
te en circuitos de computadoras, videocaseteras, etc. Otro tipo
de baterías son las baterías recargables, las cuales pueden re- Figura 2 Figura 3
cargarse cuando se agotan. Estas están hechas, usualmente, de
níquel y cadmio (Ni-cad) ó de hidróxido de metal cadmio
(NiMH).
Atención: Nunca haga corto-circuito en los terminales de

10 CLUB SABER ELECTRONICA


está encendido o si está en el modo stand-by (en espera). Los descargue el programa (asegúrese que el entrenador esté bien
LEDs están disponibles en una variedad de colores diferentes, conectado por medio del cable al puerto serial de la PC), lue-
incluyendo rojo, amarillo, verde y azul. Existen también LEDs ul- go corra el jumper a la posición salida y vea si obtiene el fun-
tra-brillantes, los cuales se utilizan en luces de seguridad tales cionamiento deseado.
como las luces intermitentes utilizadas en bicicletas. Los LEDs in- Si el LED no funciona verifique:
frarrojos producen una luz infrarroja que no es visible al ojo hu-
mano, pero que puede utilizarse en dispositivos tales como 1. que el LED esté conectado en la salida “0” (por medio
mandos a distancia de equipo de video. de un simple cablecito).
2. que se esté utilizando la resistencia correcta en la placa
¿Cómo se usan los LEDs? entrenadora y que el LED esté en el sentido correcto.
Los LEDs sólo necesitan una pequeña cantidad de corrien- 3. que se esté utilizando el número de pin correcto dentro
te para operar; esto los hace mucho más eficientes que las lam- del programa.
paritas eléctricas (esto significa, por ejemplo, que si se tuviera 4. que todos los componentes estén bien soldados.
una alimentación por baterías un LED alumbraría por mucho
más tiempo que una bombilla eléctrica). Si se pasa demasiada Para la prueba, se puede emplear también el circuito de
corriente por un LED el mismo se puede dañar; es por esto que una mascota virtual (figura 4) dado que será uno de los proyec-
los LEDs normalmente se utilizan junto con una resistencia en se- tos que presentaremos más adelante.
rie para protegerlos de corrientes excesivas. El programa de la tabla 1 enciende y apaga 15 veces al
El valor de la resistencia requerida depende del voltaje de LED conectado al pin de salida 0 utilizando una técnica de pro-
la batería utilizada. Para una batería de 4.5V se puede utilizar gramación BASIC llamada “bucle for...next” (esta técnica no
una resistencia de 330Ω o 330R que es lo mismo (fig. 3), y pa- puede utilizarse con organigramas).
ra una batería de 3V lo apropiado es una resistencia de 120Ω. _________________________________________
Tabla 1: Programa para encender y apagar un led
¿Cómo se conecta un LED a un microcontrolador? 15 veces
Debido a que el LED sólo requiere una pequeña cantidad
de corriente para operar, el mismo se puede conectar directa- Main:
mente entre un pin de salida del microcontrolador y 0V (sin ol- For b1 = 1 to 15 ;inicio de un bucle
vidar incluir la resistencia en serie para protección). High 0 ;se pone en alto la salida “0”
Pause 500 ;se hace una pausa de 1/2 seg.
¿Cómo se prueba el LED con el microcontrolador? Low 0 ;se pone en estado bajo la salida “0”
Después de conectar el LED, el mismo puede probarse uti- Pause 500 ;se hace una pausa de 1/2 seg.
lizando un simple programa tal como el siguiente: Next b1 ;se continúa con el bucle hasta que termine
End ; fin del programa
Main: _____________________________________________________
High 0
Wait 1
Low 0 Figura 4
Wait 1
Goto main

Este programa debe encender y


apagar el LED (conectado al pin de sa-
lida 0) una vez por segundo.
Para realizar esta primera práctica,
ejecute el utilitario “Editor de Programa”
según lo descrito (descripto) en este mis-
mo capítulo; luego, escriba el programa
anterior, conecte la placa entrenadora
con el PICAXE colocado, asegúrese que
el jumper correspondiente esté en el la-
do de programación, conecte uno de
los leds de la placa en la salida “0”,

CLUB SABER ELECTRONICA 11


¿Cómo se usan los zumbadores?
La conexión de los zumbadores a un PICAXE es muy senci-
lla. Simplemente conecte el cable rojo al pin de salida del mi-
crocontrolador y el cable negro a 0V (tierra), figura 5. Tome en
cuenta que los zumbadores más económicos no tienen cubier-
ta plástica exterior. En estos casos es necesario montar el zum-
bador sobre una sección del circuito impreso (con cinta adhe-
siva de doble contacto) para crear un sonido que se pueda es-
Figura 5 cuchar. El circuito impreso actúa como una “caja de sonido”
(baffle) y amplifica el sonido emitido por el zumbador. Asegú-
rese de pegar la cinta adhesiva al lado correcto del zumbador
El número de veces que el código debe repetirse se alma- (¡el lado de bronce que no tiene los cables!).
cena en la memoria del chip PICAXE utilizando una “variable” En algunas ocasiones puede que desee emitir sonidos más
llamada b1 (el PICAXE tiene 14 variables nombradas de b0 a fuertes. En este caso lo adecuado es utilizar un parlante (boci-
b13). Una variable es un “registro de almacenamiento de nú- na) en vez de un zumbador. Al utilizar parlantes es necesario
meros” dentro del microcontrolador, que el mismo puede utili- conectar un condensador (por ejemplo un capacitor electrolíti-
zar para almacenar números a medida que el programa se eje- co de 10µF) al circuito del microcontrolador para evitar causar-
cuta. le daños al chip. Recuerde que, al igual que el zumbador, los
Le aconsejamos que lea o repase todo lo anterior nueva- parlantes sólo operan correctamente si están montados en una
mente, que baje de Internet el programa para trabajar con PI- “caja de sonido”.
CAXE y practique con el ejercicio que acabamos de dar y con Después de conectar el zumbador, el mismo puede probar-
los que seguimos: se utilizando un simple programa tal como el siguiente:

Main:
Uso y Prueba de Timbres y Zumbadores Sound 2, (65,100)
Sound 2, (78,100)
¿Qué es un zumbador electrónico? Sound 2, (88, 100)
Un zumbador electrónico es un “miniparlante” (minibocina) Sound 2, (119, 100)
de bajo costo que se utiliza para hacer sonidos. El sonido ge- Go to main
nerado por el zumbador puede cambiarse alterando las seña-
les electrónicas suministradas por el microcontrolador. Este programa hará que el zumbador (conectado al pin de
salida 2) haga 4 sonidos diferentes (valores 65, 78, 88, 119),
¿Para qué se utilizan los zumbadores? siguiendo el diagrama de flujo de la figura 6.
Los zumbadores se utilizan en una gran variedad de dife- Vea qué sencillo es programar…
rentes productos para dar “retroalimentación” al usuario. Un Figura 6
buen ejemplo de esto es una máquina expendedora, la cual “main” (del inglés “principal),
emite un sonido cada vez que se presiona un botón para esco- es una etiqueta que dice que está
ger un refresco o algo para comer. Este sonido da retroalimen- por empezar el programa.
tación al usuario para indicarle que se recibió la señal del bo- “sound 2” es una instrucción
tón presionado. Otros tipos de zumbadores se utilizan a menu- que dice que el PICAXE genere un
do en tarjetas musicales de cumpleaños, para tocar una melo- sonido y lo emita por la salida 2, cu-
día cuando se abre la tarjeta. ya frecuencia dependerá del primer
número que está entre paréntesis en
¿Cuál es la diferencia entre un zumbador y un timbre ? la instrucción y su valor puede ser
El timbre (o sirena) contiene un pequeño circuito electróni- cualquiera entre 0 y 127.
co, el cual genera la señal electrónica necesaria para emitir un De la misma mamera que antes,
sonido. Por lo tanto, cuando el timbre se conecta a una batería podemos probar este programa, uti-
siempre emitirá el mismo sonido. El zumbador no tiene este cir- lizando el entrenador propuesto en
cuito y por ende necesita una señal externa. Esta señal puede este capítulo y conectando el zumba-
suministrarla un pin de salida del microcontrolador. El zumba- dor en la salida 2. Ejecute el utilita-
dor también requiere menos corriente para operar y por lo tan- rio “Editor de Programa”; luego, es-
to durará más en circuitos alimentados por baterías. criba el programa anterior, conecte

12 CLUB SABER ELECTRONICA


la placa entrenadora con el PICAXE colocado, asegúrese que Le aconsejamos que baje de Internet el programa para tra-
el jumper correspondiente esté en el lado de programación, co- bajar con PICAXE y realice sus propios “ejemplos”. Si no tiene
necte el zumbador en la salida “2”, descargue el programa los programas para trabajar con los microcontroladores PICA-
(asegúrese que el entrenador esté bien conectado por medio XE, puede bajarlos sin cargo de nuestra web: www.webelectro-
del cable al puerto serial de la PC), luego corra el jumper a la nica.com.ar, haciendo click en el ícono password e ingresando
posición salida y vea si obtiene el funcionamiento deseado. la clave: “picaxe212”.
Si el zumbador no funciona verifique:

1. Que el valor del sonido (primer número en el paréntesis) Prueba y Uso de Sensores Digitales
esté entre 0 y 127.
2. Que se esté utilizando el número de pin correcto dentro ¿Qué son los interruptores digitales?
del programa. Un sensor digital es simplemente un componente del tipo
3. Que todas las conexiones estén bien soldadas. “interruptor”, el cual sólo puede estar en dos posiciones: en-
cendido ó apagado. Si dibujáramos una gráfica de las señales
Para probar este elemento también puede utilizar el circui- de encendido-apagado del interruptor a medida que se opri-
to de la mascota virtual. En síntesis, al utilizar el comando me, el mismo se vería como se muestra en la figura 7. Los inte-
sound, el primer número indica el número de pin (en los proyec- rruptores son componentes electrónicos que detectan movimien-
tos el pin 2 es utilizado frecuentemente). El siguiente número es tos. Existe una gran variedad de interruptores diferentes, por
el tono, seguido por la duración. Mientras más alto es el tono, ejemplo:
mayor será la altura tonal del sonido (tome en cuenta que algu- 1) interruptores de botón de presión que detectan cuando
nos zumbadores no pueden emitir tonos muy altos y; por lo tan- el botón ha sido oprimido
to, valores mayores de 127 puede que no se escuchen). 2) micro-interruptores con palanquitas largas que detectan
Al utilizar sonidos múltiples puede incluirlos todos en la mis- pequeños movimientos
ma línea. Por ejemplo: 3) interruptores de nivel que detectan sacudidas
4) interruptores de lengüeta (reed switches) que detectan el
Sound 2, (65,100, 78, 100, 88, 100, 119, 100) movimiento de un imán

El programa BASIC mostrado en la tabla 2 utiliza un bucle ¿Para qué se utilizan los Interruptores?
for...next para emitir 120 sonidos diferentes, utilizando la va- Los interruptores de botón de presión se utilizan comúnmen-
riable b1 para almacenar el valor (tono) del comando sound. te en dispositivos tales como teclados. Los micro-interruptores se
El número almacenado en la variable b1 aumenta 1 en ca- utilizan en alarmas contra robos, para detectar si se ha quita-
da bucle (1-2-3-etc.); por lo tanto, al utilizar la variable b1 en do la cubierta de la caja de la alarma. Los interruptores de len-
la posición del tono, la nota se cambia en cada bucle. El pro- güeta (reed switches) se utilizan para detectar la apertura de
grama de la tabla 3 realiza la misma tarea, pero en orden in- puertas y ventanas, y los interruptores de nivel se utilizan a me-
verso (contando el tono en cuenta regresiva). nudo para detectar movimiento en dispositivos tales como ju-
___________________________________________________ guetes, secadores y alarmas. Los símbolos
Tabla 2 para un interruptor deslizante y para un
Main: interruptor de presión, se muestran en la fi-
For b1 = 1 to 120 step-1 ,iniciar un bucle for … next gura 8.
Sound 2, (b1, 50) ,emita un sonido con el tono b1 Los interruptores se instalan en los cir-
Next b1 , siguiente b1 cuitos junto a una resistencia como se Figura 8
End ,fin del programa
___________________________________________________ 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 figu- Tabla 4
ra 9. El valor de la resistencia no es
importante, pero a menudo se utili-
za una resistencia de 10kΩ. Cuan-
do el interruptor está “abierto”, la
resistencia de 10kΩ conecta el pin
de entrada del microcontrolador a
0V, lo cual da una señal de apaga-
do (nivel lógico 0) al pin de entra-
da del microcontrolador.
Cuando el interruptor se activa,
el pin de entrada se conecta al ter-
minal positivo de la batería (V+).
Esto da una señal de encendido (nivel lógico 1) al microcontro- Para realizar la prueba del interruptor con este programa,
lador. deberá conectar el interruptor en la entrada 3 del entrenador y
El interruptor puede probarse utilizando un simple progra- en la salida deberemos conectar un led. Luego, una vez descar-
ma tal como el mostrado en la ta- gado el programa siguiendo el procedimiento que explicamos
bla 4. Este programa encenderá para otros ejemplos, cada vez que presione el pulsador y lo
o apagará una salida depen- mantenga presionado, se encenderá el led conectado en la sa-
diendo de si el interruptor es pre- lida “0” durante 2 segundos. Recuerde que para programar el
sionado o no. En este programa jumper de la pata 7 debe estar del lado de programación y lue-
las tres primeras líneas constitu- go del lado de salida “0” para que el circuito trabaje según lo
yen un bucle continuo. Mientras programado.
la entrada esté apagada, el pro-
grama seguirá reiniciándose una
y otra vez. Si la entrada está en- Prueba y Uso de Fotorresistencias
cendida, el programa salta a la
Figura 9 etiqueta llamada “flash”. El ¿Qué es una fotorresistencia?
programa luego enciende por 2 Una fotorresistencia es un tipo especial de resistencia, la
Figura 10 cual reacciona a cambios en el nivel de luz. La resistencia de
segundos la salida 0 antes de regresar
al bucle principal. Note cuidadosa- la fotorresistencia cambia a medida que varía la cantidad de
mente la ortografía de la línea: “if...t- luz que incide sobre la “ventana” del dispositivo. Esto permite
hen – input3” (entrada 3) es una so- a los circuitos electrónicos medir cambios en el nivel de luz.
la palabra (sin espacios en blanco). Es Vea en el capítulo siguiente a la explicación del funcionamien-
permitido utilizar tanto pin3 como in- to de los PICAXE-18 la curva de respuesta y otros datos relevan-
put3, ambas significan lo mismo. No- tes sobre las fotorresistencias.
te también que después del comando
then, únicamente está la etiqueta “–“ ¿Para qué se utilizan las fotorresistencias?
en este punto no se permite ninguna Las fotorresistencias se utilizan en las lámparas automáticas
otra palabra aparte de la etiqueta. de las rutas para encenderlas durante la noche y apagarlas du-
rante el día. También se utili-
Figura 11 zan en muchas alarmas y ju-
guetes para medir niveles de
luz.
La fotorresistencia es un
sensor del tipo analógico.
Un sensor analógico mide
una señal continua tal como
luz, temperatura o posición
(en vez de una señal digital
de encendido/apagado co-
mo es el caso de un interrup-

14 CLUB SABER ELECTRONICA


tor). El sensor analógico provee
Figura 12
como señal un voltaje variable.
Esta señal de voltaje puede re-
presentarse mediante un número
entre el 0 al 255 (Por ejemplo:
muy oscuro = 0, luz brillante =
255).
Las fotorresistencias se pue-
den utilizar de dos maneras. La
manera más simple de utilizar
una fotorresistencia es como un
simple interruptor de encendi-
do/apagado (digital) – cuando
el nivel de luz sube por arriba de
cierto valor (llamado el valor de
“umbral”), la fotorresistencia en-
viará una señal de encendido;
cuando el nivel de luz está deba-
jo de cierto nivel, la fotorresisten-
cia enviará una señal de apaga-
do.
En este caso, la fotorresisten-
cia se coloca en una configura-
ción de divisor de voltaje con Figura 13
una resistencia estándar. El valor
de la resistencia estándar define
el “valor de umbral”. Para foto-
rresistencias miniatura el valor
adecuado es 1kΩ, para fotorre-
sistencias más grandes del tipo
ORP12 una resistencia de 10kΩ
es más adecuada. Si se desea la
resistencia fija puede reempla-
zarse por una resistencia varia-
ble de manera que el valor de
umbral se pueda ajustar para di-
ferentes valores del nivel de luz
(figura 10).
Una manera más versátil de
utilizar la fotorresistencia es mi-
diendo un cierto número de valo-
res de luz diferentes, de manera
que las decisiones se puedan to-
mar para niveles de luz cambian- En el microcontrolador de 8 patas sólo uno de los
tes en vez de un solo nivel de umbral fijo. Un valor cambiante pines puede utilizarse.
se conoce como un valor “analógico”. El circuito electrónico que utiliza el convertidor a-d es un cir-
Para medir valores analógicos el microcontrolador debe te- cuito divisor de voltaje idéntico al mostrado en la figura 10. Las
ner un convertidor analógico/ digital y además el software uti- “mediciones” analógicas se realizan dentro del microcontrola-
lizado debe ser capaz de soportar el uso de este convertidor. dor mismo.
La mayoría de los microcontroladores sólo tienen convertidores Para realizar una prueba, conecte la fotorresistencia, la
a-d en algunos de sus pines de entrada; por lo tanto, el pin de misma se puede probar como un interruptor digital utilizando
entrada se debe seleccionar cuidadosamente. un simple programa tal como se ve en el diagrama de la figu-

CLUB SABER ELECTRONICA 15


ra 11 (que también muestra el diagrama de flujo que dá origen A manera
Figura 15
al programa). de ejemplo, un
Este programa encenderá y apagará la “salida 0” de horno de mi-
acuerdo al nivel de luz. croondas (figu-
Para probar la fotorresistencia, conéctela al entrenador de ra 15) puede
la figura 13 y siga los procedimientos que hemos utilizado pa- utilizar un solo
ra la prueba de otros componentes. La misma se puede probar microcontrola-
como un sensor analógico utilizando un simple programa, tal dor para proce-
como se ve en la figura 12. sar información
El comando “readadc” se utiliza para leer el valor ana- proveniente del
lógico (un número entre 0 y 255) dentro de la variable b1. Una teclado numéri-
vez que este número está en la variable b1, el mismo se puede co, mostrar in-
probar para ver si es mayor que 100 ó mayor que 50. Si es formación para
mayor que 100 la salida 4 se enciende, si está entre 50 y 100 el usuario en la
se enciende la salida 0, y si es menor de 50 ambas salidas se pantalla y controlar los dispositivos de salida (motor de la me-
apagan. sa giratoria, luz, timbre y magnetrón).
De esta manera culminamos este capítulo “presentación” Un microcontrolador puede, a menudo, reemplazar a un
de los microcontroladores PICAXE. Veamos ahora cómo traba- gran número de partes separadas, o incluso a un circuito elec-
jar con los PICAXE-18. trónico completo. Algunas de las ventajas obtenidas con el uso
de microcontroladores en el diseño de productos son:

Recordemos: El microcontrolador PICAXE es un


Recordemos: · Aumento en la confiabilidad debido al menor número de
PIC al que se le graba un pequeño programita inter- partes.
no (firmware) para que pueda ser programado di- · Reducción en los niveles de existencia ya que un micro-
rectamente sin la necesidad de un cargador y los controlador reemplaza varias partes.
programas se pueden hacer en BASIC y en otros en- · Simplificación del ensamblaje del producto y productos fi-
tornos muy amigables. En síntesis, tiene todas las nales más pequeños.
bondades del PIC, pero son mucho más fáciles de · Gran flexibilidad y adaptabilidad del producto, ya que
usar. las funciones del producto están programadas en el microcon-
trolador y no incorporadas en el hardware electrónico.
A modo de síntesis, por si Ud. ha comenzado la lectura por · Rapidez en modificaciones y desarrollo del producto me-
esta sección, digamos que el microcontrolador PIC (microcon- diante cambios en el programa del microcontrolador, y no en
trolador programable, figura 14) es a menudo descrito como el hardware electrónico.
una “computadora en un chip”. Es un circuito integrado que
contiene memoria, unidades procesadoras y circuitos de entra- Algunas de las aplicaciones que utilizan microcontrolado-
da/salida, en una sola unidad. res incluyen artefactos domésticos, sistemas de alarma, equipo
Estos microcontroladores son comprados en “blanco” y lue- médico, subsistemas de automóviles y equipo electrónico de
go programados con un programa específico de control. Una instrumentación.
vez programado, este microcontrolador es introducido en algún Algunos automóviles modernos contienen más de treinta mi-
producto para hacerlo más inteligente y fácil de usar. crocontroladores, utilizados en una amplia variedad de subsiste-
mas desde el control del motor hasta el cierre a control remoto.
En la Industria, los microcontroladores son usualmente pro-
Figura 14 gramados utilizando programación en lenguaje C. Sin embar-
go, debido a la complejidad de este lenguaje, es muy difícil,
para estudiantes muy jóvenes de bachillerato, el uso adecuado
de dicho lenguaje.

Más Sobre el Sistema PICAXE

El sistema “PICAXE” es un sistema de microcontrolador fá-


cil de programar que utiliza un lenguaje BASIC muy simple, el

16 CLUB SABER ELECTRONICA


Figura 16 Figura 17

cual la mayoría de los estudiantes pueden aprender rápida-


mente. El sistema PICAXE explota las características únicas de
la nueva generación 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 ne- ponde a la empresa Revolution Education. Son PICs comunes
cesita de ningún programador, borrador o complejo sistema (de la empresa Microchip) que poseen un pequeño programita
electrónico. interno que los hace más fáciles de operar. De esta manera, un
El programa puede escribirse en BASIC o por medio de un PICAXE puede reemplazar a un PIC, pero un PIC no puede
diagrama de flujo y se carga mediante una conexión de tres ca- reemplazar a un PICAXE (dado que el PIC no tiene ese progra-
bles conectada al puerto serie de la computadora. mita).
El circuito microcontrolador PICAXE utiliza únicamente tres
componentes y puede ser ensamblado en un tablero experimen- Si Ud. compra un PICAXE, verá que tiene la ma-
tal para componentes electrónicos (protoboard), en una placa trícula de un PIC, sin embargo NO ES UN PIC común,
universal (de las que se venden en casas de electrónica) o en es un PIC que ha sido programado y así se ha con-
una placa PCB (vea la figura 16). vertido en un PICAXE.
EL sistema PICAXE está disponible en distintas variedades:
8 pines, 18 pines y 28 pines. El controlador PICAXE-28 provee El sistema PICAXE consiste en tres componentes principa-
22 pines de entrada/salida (8 salidas digitales, 8 entradas di- les:
gitales y 4 entradas analógicas).
El sistema PICAXE-18 provee 8 salidas y 5 entradas y el si- 1) El Software “Editor de Programación”: Este soft-
stema PICAXE-08 provee 5 terminales para ser usados como ware debe ser ejecutado en una computadora y permite utilizar
entradas o salidas (con algunas restricciones). el teclado de la PC para escribir programas en un simple len-
Las principales características de los microcontroladores PI- guaje BASIC. Los programas también pueden generarse dibu-
CAXE son: jando diagramas de flujo. Alternativamente, el software “Cro-
codile Technology” puede ser utilizado para simular circuitos
· Bajo costo, circuito de fácil construcción. electrónicos completos, programándolos con diagramas de flu-
· Hasta 8 entradas, 8 salidas y 4 canales analógicos. jo. Por favor, vea el apéndice de “Crocodile Technology” para
· Rápida operación de descarga del programa a la memo- mayor información.
ria del PICAXE mediante el cable serial.
· Software “Editor de Programación” gratuito y de fácil uso. 2) El cable serie: Este es el cable que conecta el sistema
· Lenguaje BASIC simple y fácil de aprender. PICAXE a la computadora. El cable sólo necesita ser conecta-
· Editor de diagramas de flujo incluido. do durante la descarga de programas. No debe ser conectado
· Puede ser programado, también, mediante el software cuando el PICAXE está siendo ejecutado debido a que el pro-
“Crocodile Technology”. grama está permanentemente almacenado en el chip PICAXE,
· Extenso número de manuales gratuitos y foro de apoyo en aun cuando la fuente de alimentación haya sido desconectada.
línea. Hay dos tipos de cables para descarga disponibles (al usar
· Tablero experimental y tutoriales disponibles. el tablero experimental tutorial cualquiera de los dos cables
· Paquete de control remoto infrarrojo disponible. puede ser utilizado), los cuales se conectan ya sea a un conec-
· Paquete de servocontrolador disponible. tor cabecera de tres pines o a un conector hembra estéreo pe-
Los PICAXE son microcontroladores cuya licencia corres- queño (J35), figura 17.

CLUB SABER ELECTRONICA 17


Entrenador PICAXE-18

Vamos a explicar cómo se utiliza un “entrenador” para PI-


CAXE-18. Para ello, se supone que Ud. posee un tablero (pla-
ca de circuito impreso) ya montado. Si no lo tiene, no se preo-
cupe, en este libro explicaremos cómo puede hacerlo Ud. mis-
mo.
Hay tres tipos de tableros electrónicos de tutoriales/proyec-
tos disponibles:

Figura 18a 1) Tablero electrónico tutorial: Este es un tablero tuto-


rial que contiene interruptores, sensores, una pantalla de siete
3) El chip PICAXE y el tablero electrónico: El micro- segmentos y conexiones para dispositivos de salida (es el table-
controlador PICAXE ejecuta programas que han sido descarga- ro de la figura 17).
dos al mismo. Sin embargo, para operar, el chip debe ser mon-
tado en un tablero electrónico que provea una conexión al chip 2) Tablero de Proyecto Estándar: Este es un tablero
microcontrolador. de proyecto que provee de 8 salidas (encendido / apagado ó
El tablero electrónico puede ser diseñado por el usuario en on/off) digitales mediante un controlador Darlington (figura
un circuito impreso, en una interfaz prefabricada o, para aho- 18a).
rrar tiempo y por conveniencia, utilizar el tablero electrónico tu- 3) Tablero para Proyecto de Alta Potencia: Este es
torial incluído. Tanto en la figura 17 como en la figura 18, se un tablero que provee de 4 salidas digitales (mediante controla-
pueden ver tableros que asumen el uso del microcontrolador PI- dores FET) y dos salidas para motores reversibles (figura 18b).
CAXE-18 (18 pines) montado en el tablero electrónico tutorial.
A modo de ejemplo, y antes de continuar con la descrip-
ción de los microcontroladores PICAXE, damos a continuación Preparando el Tablero Tutorial
el procedimento que suele ser empleado para trabajar con es-
te sistema: Antes de usar el tablero tutorial, el mismo debe ser conec-
tado a las baterías eléctricas.
1. Escriba el programa en la computadora utilizando el La figura 19 nos muestra el enchufe hembra para caja de
software “Programming Editor”. baterías.
2. Conecte el cable de descarga desde la computadora al Localice los cables de la caja de baterías y doble el cable
PICAXE. desnudo sobre el aislante en ambos cables. Coloque el cable
3. Conecte el acumulador eléctrico (batería) al PICAXE. rojo en el conector hembra marcado “V+” y el negro en el co-
4. Utilice el software “Editor de Programación” para des- nector marcado “O V”.
cargar el programa. El cable de descarga puede ser removido Apriete los tornillos de manera que tanto el cable desnudo
posteriormente a la descarga. como el aislante queden atrapados en el enchufe, esto provee
una conexión más fuerte que simplemente prensando el cable
El programa comenzará a ejecutarse en el PICAXE automá- desnudo. Utilice siempre la caja de baterías eléctricas de 6V
ticamente. Sin embargo, el programa puede ser reiniciado en (se requiere de 4 pilas AA) suministrada. NO use una batería
cualquier momento presionando el interruptor de reinicio. PP3 de 9V.

Figura 18b
El Software Gratuito para Trabajar con PICAXE

Requerimientos:
Windows 95/98/ME/NT/2000/XP
El software puede bajarlo de la
Figura 19
página del fabricante (www.rev-ed-
.co.uk) o de nuestra web: www.we-
belectronica.com.ar (con la clave pi-
caxe) y debe instalarse haciendo un
click en el ejecutable, es decir, debe

18 CLUB SABER ELECTRONICA


instalar el software “Editor de Programación” siguiendo las ins-
trucciones en su pantalla. Si no lo tiene en su computadora, de-
berá también instalar el software “Adobe Acrobat Reader”, ya
que lo necesitará para poder leer los manuales de ayuda.

Ejecutando un Programa de Muestra Figura 20


El siguiente programa enciende y apaga la salida 7 cada
segundo. Cuando usted descarga este programa sobre el PICA- etiqueta “main” y los espacios entre los comandos y los núme-
XE del tablero (entrenador), el punto decimal del display de sie- ros).
te segmentos debe encenderse y apagarse cada segundo. 7. Asegúrese que el circuito PICAXE esté conectado al ca-
ble serie y a las baterías.
main: 8. Seleccione PICAXE -> Ejecutar. Una barra de descarga
high 7 de programa debe aparecer mientras el programa es descar-
pause 1000 gado. Al terminar la descarga, el programa debe comenzar a
low 7 ejecutarse automáticamente. El punto decimal LED -Light Emit-
pause 1000 ting Diode: Diodo Emisor de Luz- en la salida 7, deberá encen-
goto main derse y apagarse una vez por segundo.

Este programa utiliza los comandos high y low para con-


trolar el pin de salida 7, y utiliza el comando de pause para Instrucciones para Uso en Windows
causar un retardo (1000 ms = 1 segundo).
El último comando, el comando goto hace que el progra- Damos, a continuación, un listado de botones correspon-
ma salte a la etiqueta main, que es el comienzo del progra- dientes a la barra del menú (figura 20):
ma. Esto significa que el programa es un bucle perpetuo (lazo
cerrado). Open = Abrir
Note que la primera vez que la etiqueta es utilizada, debe Save = Guardar o Salvar
estar seguida por un símbolo de dos puntos (:). Este símbolo in- Cut = Cortar
dica a la computadora que la palabra es una nueva etiqueta. Copy = Copiar
A continuación explicamos, paso a paso, cómo realizar es- Paste = Pegar
te primer ejercicio de prueba: Print = Imprimir
Run = Ejecutar
1. Conecte el cable PICAXE a un puerto serie de la compu-
tadora y preste atención a cuál de los puertos lo conecta (nor- a) Para descargar y ejecutar un programa:
malmente COM1 ó COM2). 1. Verifique que el cable de descarga esté conectado tan-
2. Ejecute el Software “Programming Editor”. to al PICAXE como al puerto serie de la computadora.
3. En el menú desplegable escoja Ver -> Opciones para ac- 2. Verifique que las baterías estén conectadas al PICAXE.
ceder a la pantalla de opciones (ésta puede que aparezca au- 3. Asegúrese que el software “Programming Editor”
tomáticamente). esté en el modo correcto (La palabra PICAXE-18 debe aparecer
4. Haga click en “Modo” y seleccione PICAXE-18 en la barra de estado en la esquina inferior izquierda de la
5. Haga click en “Puerto Serie” y seleccione el puerto serie pantalla).
al cual el cable PICAXE está conectado, luego haga click en 4. Haga click en Ejecutar (o en el respectivo botón de la
OK. barra de herramientas)
6. Escriba el siguiente programa:
b) Para salvar un programa:
main: 1. Haga click en Archivo -> Guardar como…(ó en el res-
high 7 pectivo botón de la barra de herramientas)
pause 1000 2. Escriba el nombre bajo el cual quiere guardar el archivo
low 7 3. Haga click en <OK>
pause 1000
goto main c) Para abrir un programa guardado:
1. Haga click en Archivo -> Abrir (o en el respectivo botón
(Tome en cuenta el símbolo (:) directamente después de la de la barra de herramientas)

CLUB SABER ELECTRONICA 19


2. Seleccione el archivo deseado de la lista haciendo click Este programa utiliza el comando wait. Los comandos
en el mismo. wait y pause se utilizan para crear retardos o tiempos muer-
Haga click en <OK> tos. Sin embargo, el comando wait puede ser utilizado única-
mente con segundos enteros mientras que pause se puede uti-
d) Para iniciar un nuevo programa: lizar para retardos más cortos (el mismo se asigna en milésimas
1. Haga click en Archivo- Nuevo de segundo). Al comando wait se le pueden asignar números
del 1 al 65, los cuales deben escribirse después del comando.
e) Para imprimir un programa: Al comando pause se le pueden asignar números entre 1 y
1. Haga click en Archivo -> Imprimir… (o en el respectivo 65535.
botón de la barra de herramientas) Es una buena técnica de programación usar tabulaciones
2. Si desea que a cada línea del programa se le asigne un nú- (o espacios) al inicio de líneas sin etiquetas de manera que los
mero, asegúrese de marcar la casilla “Imprimir números de línea”. comandos estén alineados. El término “espacios en blanco” es
3. Haga click en <OK> utilizado por programadores para definir tabulaciones, espa-
cios y líneas en blanco. Dichos “espacios en blanco”, utilizados
correctamente, hacen al programa mucho más fácil de leer y
Aprendiendo a entender (vea las tabulaciones que hemos hecho en el progra-
Hacer Programas en Basic ma de la tabla5; en la primera columna ponemos etiquetas o
definimos variables, en la segunda columna colocamos las ins-
Utilizando el Comando Symbol trucciones y en la tercera columna están los comentarios que fa-
cilitan la comprensión del programa).
Algunas veces es difícil recordar cuáles pines están conec- Nota: Algunas versiones antiguas de lenguaje BASIC utili-
tados a cuáles dispositivos. El comando symbol puede, en es- zan “números de línea” en vez de etiquetas para trabajar con
tos casos, ser utilizado al inicio del programa para renombrar los comandos goto. Desafortunadamente, este sistema puede
las entradas y salidas. Note que este programa asume la cone- ser muy inconveniente ya que si el programa es modificado pos-
xión de un timbre externo al pin de salida 7. Ver tabla 5. teriormente agregando o eliminando líneas, todos los números
Recuerde que los comentarios [explicaciones posteriores al de línea posteriores deben ser modificados. El sistema de etique-
símbolo de apóstrofe (‘)] facilitan mucho la comprensión de ca- tas, utilizado en la mayor parte de las versiones modernas de
da línea del programa. Estos comentarios son ignorados por la lenguaje BASIC, supera este problema automáticamente.
computadora al descargar un programa al PICAXE. “Todo lo El “cerebro” del sistema PICAXE es el microcontrolador de
que en una línea está después 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 excepción de palabras cla- Aunque los microcontroladores son relativamente baratos
ves como por ejemplo “switch”) pero DEBEN empezar con una (algunos microcontroladores cuestan menos de 2 dólares), los
letra. Cuando la etiqueta es definida por primera vez debe lle- mismos son dispositivos muy complejos que contienen miles de
var al final el símbolo de dos puntos (:). Esto indica a la com- transistores, resistencias y otros componentes electrónicos.
putadora que la palabra es una nueva etiqueta. El microcontrolador PICAXE almacena sus programas (firm-
ware) en su memoria FLASH “no volá-
til”. La ventaja de esta memoria es que
TABLA 5 no pierde el programa descargado
cuando la fuente de alimentación (ba-
symbol dp = 7 ‘renombrar salida 7 “dp” (punto deci- terías) es desconectada del circuito
mal) (cuando las baterías 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”
high dp ‘LED encendido el PICAXE, puede descargar un nuevo
low buzzer ‘timbre apagado programa; esta acción borra el viejo
wait 1 ‘ esperar un segundo programa almacenado en la memoria
low dp ‘ LED apagado y almacena el nuevo programa en la
high buzze ‘ timbre encendido memoria de programa. La memoria só-
wait 1 ‘esperar 1 segundo lo permite el almacenamiento de un
goto main ‘regresar al inicio (“main”) programa a la vez.

20 CLUB SABER ELECTRONICA


Tome en cuenta que no es po-
sible sacar el programa fuera de
TABLA 6
la memoria del PICAXE para symbol counter = b0 ‘definir la variable “counter” como b0
“leerlo”; por ende, si desea guar- symbol dp = 7 ‘asignar al pin 7 con el “dp”
dar el código de un programa pa-
ra utilizarlo posteriormente debe main: for counter = 1 to 15 ‘iniciar un bucle for.....next
guardarlo en su computadora an- high dp ‘encender pin 7
pause 500 ‘esperar 0,5 segundos
tes de descargarlo al PICAXE. Esto next counter ‘siguiente counter (b0)
es una restricción que el operador end ‘fin del programa
debe tener en cuenta, dado que
en un PIC sí es posible leer el pro- do de sólo tres terminales. Los microcontroladores PIC comunes
grama grabado en la memoria. no tienen este programa y por ende no pueden ser programa-
dos mediante el sistema PICAXE.
El microcontrolador contiene además de la memoria ROM El microcontrolador PICAXE-18A es casi idéntico al micro-
(Read Only Memory - Memoria de sólo lectura), memoria tem- controlador PICAXE-18 estándar, pero es ligeramente más cos-
poral RAM (Random Access Memory - Memoria de Acceso toso ya que tiene el doble de capacidad de memoria (aproxi-
Aleatorio). madamente 80 líneas de programación BASIC en vez de 40) y
La memoria RAM es una memoria “temporal” utilizada pa- salidas analógicas de alta resolución (en vez de baja resolu-
ra almacenar información mientras el programa es ejecutado. ción).
La misma es utilizada normalmente para almacenar respuestas El sistema PICAXE utiliza una interfaz al puerto serie de la
de sumas matemáticas que el microcontrolador hace mientras computadora muy simple (es un cable de tres hilos). Aunque es-
está trabajando. Esta memoria es “volátil”, lo cual significa que ta interfaz no utiliza verdaderos voltajes RS232, es de muy ba-
tan pronto las baterías son desconectadas, la información al- jo costo y ha tenido un desempeño confiable en casi todas las
macenada en la misma se pierde. computadoras modernas. Vea en la figura 22 cómo se conecta
Hay 14 bytes de memoria temporal disponibles y los mis- este cable en la placa del entrenador.
mos son denominados desde b0 a b13 dentro de los progra- Es altamente recomendable utilizar esta interfaz, ya que ca-
mas. da vez que quiera programar el chip no debe quitarlo de la
placa de circuito impreso, sólo debe conectar el cable entre la
placa y la computadora, ejecutar el programa “Editor Progra-
El Circuito del “Entrenador” PICAXE-18 mming” y hacer la descarga correspondiente... ¡así de simple!
Nota: La mayor parte de las computadoras modernas tie-
La figura 21 muestra el circuito básico PICAXE-18. El resis- nen dos puertos serie, normalmente denominados COM1 y
tor de 4k7 (4700Ω), conectado en el pin 4, se usa como resis- COM2. El software “Editor de Programación (Programming
tencia 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.

¡Tome en cuenta que el mi-


crocontrolador PICAXE no es un
microcontrolador en blanco... ya
tiene un programa interno para
que pueda ser usado con el uti-
litario Programming Editor!

El microcontrolador PICAXE está


preprogramado con un firmware de
carga que permite la descarga directa Figura 21
de programas con el cable suministra-

CLUB SABER ELECTRONICA 21


Figura 22 Editor)” debe ser configurado con el puer-
to al cual el microcontrolador está conec-
tado. Para ello, en el menú desplegable
seleccione Ver -> Opciones -> Puerto
Serie, para elegir el puerto serie corres-
pondiente en su computadora.
Si ya compró un cable de sistema PI-
CAXE armado y utiliza una computadora
que posee el antiguo conectador de puer-
to 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) es-
pecializada en computadoras. Pero también, Ud. puede armar
el cable siguiendo las instrucciones que le daremos oportuna-
mente.

Utilizando Bucles For…Next

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 es-
Figura 23 tos casos un bucle for…next puede ser utilizado.
El programa de la tabla 6 enciende y apaga 15 veces el
diodo LED conectado al pin de sa-
TABLA 7 lida 7. El número de veces que el
código debe ser repetido es alma-
symbol mark1 = b6 ‘renombrar variables cenado usando la variable b0 (el
symbol space1 = b7 PICAXE tiene 14 variables de 1
symbol mark2 = b8 byte para uso general, nombra-
symbol space2 = b9 das de b0 a b13 en la memoria
RAM del chip PICAXE). Estas va-
let mark1 = 2 ‘precargar mark1/space1 con relación de 2:10 (1:5)
let space1 = 10 riables pueden ser renombradas
usando el comando symbol con
let mark2 = 20 ‘precargar mark2/space2 con relación de 20:10 (2:1) el fin de hacerlas más fácil de re-
let space2 = 10 cordar.
Note nuevamente cómo los es-
main: pacios en blanco han sido utiliza-
for b2 = 1 to 200 ‘iniciar un bucle for...next dos para mostrar claramente to-
high 0 ‘encender motor
dos los comandos contenidos en-
pause mark1 ‘esperar tiempo indicado por mark1
low 0 ‘apagar motor tre los comandos for y next.
pause space1 ‘esperar tiempo indicado por space1
next b2 ‘siguiente b2
pause 2000 ‘detener motor por 2 segundos Controlando la
for b2 = 1 to 200 ‘iniciar un bucle for.....next Velocidad de un Motor
high 0 ‘encender motor
pause mark2 ‘esperar tiempo indicado por mark2 Debido a que el sistema PICA-
low 0 ‘apagar motor
XE opera muy rápidamente, es po-
pause space 2 ‘esperar tiempo indicado por space1
next b2 ‘siguiente b2 sible controlar la velocidad de mo-
pause 2000 ‘detener motor por 2 segundos tores, encendiéndolos y apagán-
goto main dolos muy rápidamente. Este tipo

22 CLUB SABER ELECTRONICA


de control se conoce como PWM (Pulse TABLA 8
Width Modulation, Modulación por an-
main:
cho del impulso). La PWM es una buena
sound 6, (50,100) ‘emitir un sonido en salida 6 con frecuencia 50 y longitud 100
técnica de control ya que permite a los
sound 6, (100,100) ‘emitir un sonido en salida 6
motores operar a bajas velocidades man-
sound 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 des-
tornilladores eléctricos. Para que la PWM funcione correcta-
Figura 24
mente, se necesitan motores de alta calidad. Los programas
aquí mostrados están diseñados para motores “solares” y pue-
de que no funcionen correctamente si se utilizan motores de ju-
guete baratos. Para la conexión del motor en nuestro entrena-
dor, vea la figura 23.
El programa se muestra en la tabla 7.
Intente seguir el programa para ver si puede comprender-
lo; si no lo logra.... no se preocupe, recién estamos empezan- ble b0 aumenta 1
do. unidad en cada Figura 25
bucle (1-2-3, etc.).
Por consiguiente,
Uso de Timbres y Zumbadores Electrónicos en el al utilizar la varia-
Sistema PICAXE ble b0 para asig-
nar el tono, el mis-
Los timbres emiten un sonido cuando están conectados a mo puede ser
una fuente de alimentación. cambiado en ca-
Este sonido, usualmente, está “fijo” a una frecuencia deter- da bucle.
minada; así, los timbres pueden emitir un solo “tono”. Los zum- En la tabla 10
badores electrónicos usan un tipo de sistema y pueden ser utili- se ve el programa
zados para emitir sonidos en diferentes tonos al proveerlos con que realiza la mis-
una salida de diferentes frecuencias. ma función pero cambiando el tono en orden descendente, es
El sistema PICAXE puede crear automáticamente sonidos decir de 120 a 1.
de diferentes frecuencias utilizando el comando sound (ver ta- En la tabla 11 vemos el programa que emite todos los 256
bla 8). sonidos posibles.
Para probar este programa se debe instalar un zumbador En este último caso el programa es ejecutado indefinida-
electrónico en el tablero tutorial (entrenador). Para hacer esto, mente. Sin embargo, es importante comprender cómo el PICA-
ubique los conectores del zumbador, marcados con la palabra XE ejecuta las operaciones matemáticas.
PIEZO (figuras 24 y 25). Luego suelde el cable ro-
jo al agujero marcado “+” y el cable negro al agu- TABLA 9
jero marcado “-”. main:
En el programa, el primer número indica el nú- for 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 número es el tono, se-
Next b0 ‘siguiente b0
guido por la duración del sonido (longitud). Mien-
tras más alto sea el número de tono, mayor será la end
“altura tonal” del sonido (frecuencia, note que al-
gunos zumbadores no pueden producir tonos muy TABLA 10
altos y por lo tanto números de tono mayores de main:
127 puede que no sean escuchados). for b0 = 120 to 1 step -1 ‘iniciar un bucle for.....next (en cuenta regresiva)
El siguiente programa que vemos en la tabla 9 sound 6, (b0, 50) ‘emitir sonido en salida 6 con frec. b0 y longitud 50
utiliza un bucle for…next para producir 120 soni- next b0 ‘siguiente b0
dos diferentes. El número almacenado en la varia- end

CLUB SABER ELECTRONICA 23


El PICAXE sólo interpreta números en “byte”, o sea núme- números negativos, ni números mayores de 255. Así, si se tra-
ros enteros del 0 al 255. No puede interpretar fracciones, ni ta de sumar 1 a 255, el PICAXE saltará de nuevo a 0. Por con-
siguiente, en el programa anterior, el valor de la variable b0 se
Figura 26 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 sólo puede estar en dos posiciones: encendido ó apagado.
Algunos ejemplos de sensores digitales comunes son:

· microinterruptores
TABLA 11 · interruptores de botón de presión e interrup-
main: tores oscilantes
sound 6, (b0, 50) ‘emitir sonido en salida 6 · interruptores de lengüeta
let b0 = b0 + 1 ‘sumar 1 al valor de la variable b0
El tablero del entrenador propuesto tiene dos
goto main ‘ir a inicio del programa (main)
interruptores de botón de presión conectados a las
entradas 6 y 7 (figura 26). Adicionalmente se pue-
TABLA 12 den conectar otros dos interruptores a las entradas
main: ‘hacer etiqueta llamada “main” 0 y 1.
if input6 is on then flash ‘si la entrada 6 (Input 6) está encendida ir En la tabla 12 vemos el programa que indica
‘a “flash” sino ir a “main” al PICAXE cómo reaccionar cuando los interrupto-
goto main res de botón de presión son presionados. En el
flash: ‘hacer etiqueta llamada “flash” programa el pin de salida 7 se ilumina cada vez
high 7 ‘encender salida 7 (output 7) que el interruptor de botón de la entrada 6 es pre-
pause 2000 ‘esperar 2 segundos sionado.
low 7 ‘apagar salida7 En este programa las tres primeras líneas for-
goto main ‘ir a “main” man un bucle continuo. Si la entrada está apaga-
da el programa se reiniciará una y otra vez.
Una vez que el interruptor es presionado, el
TABLA 13
programa salta a la etiqueta llamada “flash”. El
programa luego activa la “salida 7” por dos se-
main: ‘hacer etiqueta llamada “main”
gundos antes de regresar nuevamente a “main”.
readadc 2,b0 ‘leer señal de canal 2 en variables b0
Note cuidadosamente la ortografía en la línea
if b0 > 120 then stop ‘si b0 >120 ir a “stop”
del comando if…then – entrada6 (input6) es una
if b0 < 70 the bot ‘si b0 <70 ir a “bot”
sola palabra (sin espacios en blanco). Note tam-
low 1 ‘sino apagar 1
bién que únicamente se debe escribir la etiqueta
low 2 ‘y apagar 2
posterior al comando then – no se permite ningu-
goto main ‘ir a “main”
na otra palabra aparte de la etiqueta.

top: ‘hacer una etiqueta llamada “top”


high 1 ‘encender 1 Uso de Entradas con Sensores Analógicos
low 2 ‘apagar 2
goto main ‘ir a “main” Los sensores analógicos miden señales conti-
nuas tales como luz, temperatura o posición.
bot: ‘hacer una etiqueta llamado “bot” El sensor analógico provee una señal que con-
high 2 ‘encender 2 siste en un voltaje variable (figura 27). Este volta-
low 1 ‘apagar 1 je puede luego ser representado con un número
goto main ‘ir a “main” del 0 al 255 (Por ejemplo muy oscuro = 0, luz muy

24 CLUB SABER ELECTRONICA


brillante = 255). Ejemplos típicos de sensores analógicos son: Figura 27

· Fotorresistencias ó LDRs (Light Dependent Resistors - Resis-


tencias variables con la luz ).
· Termistores
· Resistencias variables (potenciómetros)

El tablero tutorial (entrenador) posee una fotorresistencia


montada en el mismo, la cual está conectada a la entrada 2 (in-
put2).
La fotorresistencia es un compo-
Figura 28
nente cuya resistencia cambia al va-
riar la intensidad de luz que incide so-
bre la misma, es decir, su resistencia
cambia según el nivel de luz.
Bajo luz brillante su resistencia es
baja (típicamente alrededor de 1kΩ)
mientras que en la oscuridad, su resis-
tencia es muy alta (típicamente alrede-
dor de 1MΩ).
En la figura 28 se muestra el sím-
bolo y la curva típica de resistencia
contra intensidad de luz para la foto-
rresistencia. La fotorresistencia está
conectada a la entrada 2 en configu-
ración de divisor de voltaje. Tal como se muestra en la figura 70 y 120 en el programa anterior). El comando debug permi-
29. te ver fácilmente el valor en “tiempo real” de un sensor, permi-
tiendo calcular el valor umbral experimentalmente.
Al ejecutar el programa de la tabla 14 aparecerá una ven-
Cómo se Leen las Entradas Analógicas tana de depuración (debug) en la pantalla de la computadora,
indicando el valor de la variable b0. A medida que el sensor
El valor de una entrada analógica puede ser fácilmente co- es probado con la variable, la ventana va indicando la lectura
piado dentro de una variable utilizando el comando readadc. actual del sensor.
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
mayor que 120 y otro diodo LED, si el valor es menor de 70. Programación por Organigramas
Si el valor está entre 70 y 120, ambos diodos LED permanecen o Diagramas de Flujo
apagados.
Note que el microcontrolador PICAXE-18 tiene tres canales Los diagramas de flujo u organigramas son herramientas
o entradas analógicas nombradas del muy útiles que permiten representar programas gráficamente,
0 al 2. En el tablero de nuestro entre- para hacerlos más fáciles de entender. El software “Program-
Figura 29
nador la fotorresistencia está conecta- ming Editor” incluye un editor de organigramas que permite di-
da permanentemente al pin 2, pero los bujar los mismos en la pantalla de la computadora. Estos orga-
otros dos canales (0 y 1)
están libres para conec- TABLA 14
tar otros sensores.
Frecuentemente, al
utilizar sensores análo-
main: ‘hacer etiqueta llamada “main”
gos es necesario calcular readadc 2,b0 ‘leer señal de canal 2 en variable b0
el valor de “umbral” ne- debug b0 ‘transmitir valor a la pantalla del ordenador
cesario para el progra- pause 100 ‘pausa corta
ma (esto es, los valores goto main ‘ir a “main”

CLUB SABER ELECTRONICA 25


nigramas pueden luego ser convertidos en código BASIC para 1. Conecte el cable PICAXE a uno de los puertos serie de
descargarlos en el PICAXE. Los organigramas pueden también la computadora. Recuerde tomar nota del puerto serie al cual
ser impresos o exportados (enviados) como figuras para incluir- conecta el cable (normalmente COM1 ó COM2).
los en reportes de proyectos. 2. Inicie el software “Editor de Programación”
A continuación damos las instrucciones detalladas para la 3. En el menú desplegable seleccione Ver -> Opciones pa-
construcción de organigaramas: ra acceder a la pantalla de opciones (ésta puede que aparez-
ca automáticamente).
4. Haga click en la lengüeta “Modo” y seleccio-
ne PICAXE-18.
5. Haga click en la lengüeta “Puerto Serie” y se-
leccione el puerto serie al cual ha conectado el ca-
ble PICAXE. Haga click en “OK”
6. Cree un nuevo organigrama haciendo click
en el menú Archivo -> Nuevo Organigrama.
7. Dibuje el organigrama mostrado abajo arras-
trando los bloques requeridos a la pantalla y luego
utilizando el ratón para dibujar las flechas para co-
nectar los bloques.
8. Cuando termine de dibujar el organigrama,
puede convertirlo en un programa BASIC seleccio-
nando el menú Organigrama -> Convertir Organi-
Figura 30
grama 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 co-
mo una figura, utilice el menú Archivo -> Exportar.
Para exportar la imagen a un documento de Word
seleccione el archivo tipo EMF. Para exportar el or-
ganigrama a una página web use el archivo tipo
GIF.

El Editor de Organigramas permite dibujar y si-


mular organigramas en la pantalla. El organigrama
puede luego ser convertido automáticamente en un
Figura 31
programa BASIC para ser descargado en el micro-
controlador (vea la figura 30).

Los comandos de la pantalla de Editor de Orga-


nigramas son los siguientes (figura 31):

Select = Seleccionar
Zoom = Zoom
Zoom In/Out = Acercar/Alejar
Pan = Mover
Line = Línea
Edit bar = barra editora

Seleccionar
Utilice este comando para seleccionar y mover
bloques. Cuando un sólo bloque es seleccionado, su
código BASIC puede ser editado en la barra editora
en la parte inferior de la ventana.

26 CLUB SABER ELECTRONICA


donde desea ubicarlo y luego use el comando Seleccionar pa-
ra mover el bloque a la posición correcta.
Una vez que el bloque esté en posición, haga click en él de
manera que sea resaltado. El código BASIC del objeto apare-
cerá en la barra editora en la parte inferior de la pantalla. Edi-
te el código si lo requiere y luego presione el botón de tic pa-
ra salvar los cambios. Para información adicional acerca de
cada comando vea los archivos de ayuda “Comandos BA-
SIC”. Note que algunos comandos únicos (por ejemplo servo
para el PICAXE28) sólo aparecerán cuando el software esté en
el modo apropiado (menú Ver -> Opciones).
Figura 32

Uniendo Bloques

Para unir bloques, debe acercarlos uno al otro hasta que


Zoom se junten. Alternativamente, se pueden dibujar líneas entre los
Utilice para acercar una parte del diagrama. Use el click mismos usando el comando línea en la barra de herramientas.
derecho para alejar. Note que sólo es posible unir la parte inferior de un bloque úni-
camente con la parte superior de otro. Además, sólo se permi-
Acercar/Alejar te sacar una línea de la parte inferior de conexión de cada blo-
Para acercar haga click y mueva el ratón hacia arriba. Pa- que. Para hacer diagramas ordenados, se pueden agregar
ra alejar haga click y mueva el ratón hacia abajo. quiebres a las líneas haciendo click en las mismas. Cuando una
línea es movida cerca de un punto de conexión, la misma se
Mover pegará a éste; para terminar la línea, haga click una vez más
Utilice este comando para mover el organigrama completo y la misma quedará en posición.
alrededor de la pantalla. Las líneas no pueden ser movidas. Si trata de mover una lí-
nea la misma será borrada y tendrá que crear una nueva línea.
Línea
Utilice este comando para dibujar líneas entre los bloques.
Se pueden hacer quiebres en las líneas haciendo click una vez. Simulación de Pantalla
Cuando la línea está cerca de un bloque, ésta se pegará al
punto de conexión del mismo. Para simular el organigrama, haga click en “Simular” en el
menú Organigrama. El programa comenzará a ejecutarse en
Etiqueta pantalla (figura 32). Mientras el programa se ejecuta, los blo-
Utilice este comando para añadirle etiquetas o títulos a los ques cuyos comandos están siendo ejecutados se irán resaltan-
elementos del organigrama. do en rojo. Las ventanas de “Entradas/Salidas” y “Variables”
también aparecerán mientras se ejecuta la simulación. Para
Out / If / Delay / Sub / Other cambiar los valores de las entradas, haga click en el respecti-
Haga click en estos botones para ir al submenú de estos co- vo interruptor en pantalla o utilice la barra deslizadora de en-
mandos y seleccionar el comando deseado. tradas analógicas. El tiempo de retardo entre un objeto y otro
puede ser ajustado en las Opciones del Organigrama (menú
Ver -> Opciones -> Organigrama).
Dibujando Organigramas Note que algunos comandos representan acciones que no
pueden ser simuladas en pantalla. En estos casos el comando
Para dibujar un organigrama haga click en uno de los bo- es simplemente ignorado al ejecutar el organigrama.
tones de menúes 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 Convirtiendo Organigramas
en la pantalla, en el lugar donde desea situar al comando. No
trate de colocar el bloque exactamente en posición en primera Los organigramas no son descargados directamente al mi-
instancia – póngalo en la pantalla en las cercanías del área crocontrolador. Primero el organigrama es convertido en un

CLUB SABER ELECTRONICA 27


TABLA 15 TABLA 16

main: main: readadc 2,b1 ‘leer señal analógica de


let pins = %00111111 ‘dígito 0 ‘canal 2 en variable b1
pause 250 ‘esperar 0,25 segundos if b1 > 150 then show9 ‘probar variable b1 y
let pins = %00000110 ‘dígito 1 ‘saltar al respectivo
pause 250 ‘esperar 0,25 segundos comando
let pins = %01011011 ‘dígito 2 if b1 > 130 then show8
pause 250 ‘esperar 0,25 segundos if b1 > 110 then show7
let pins = %01001111 ‘dígito 3 if b1 > 90 then show6
pause 250 ‘esperar 0,25 segundos if b1 > 70 then show5
let pins = %01100110 ‘dígito 4 if b1 > 50 then show4
pause 250 ‘esperar 0,25 segundos if b1 > 30 then show3
let pins = %01101101 ‘dígito 5 if b1 > 20 then show2
pause 250 ‘esperar 0,25 segundos if b1 > 10 then show1
let pins = %01111101 ‘dígito 6 show0:
pause 250 ‘esperar 0,25 segundos
let pins = %00111111 ‘dígito 0
let pins = %00000111 ‘dígito 7
pause 250 ‘esperar 0,25 segundos goto main
let pins = %01111111 ‘dígito 8 show1:
pause 250 ‘esperar 0,25 segundos let pins = %00000110 ‘dígito 1
let pins = %01101111 ‘dígito 9 goto main
pause 250 ‘esperar 0,25 segundos show2:
goto main let pins = %01011011 ‘dígito 2
goto main
programa BASIC, el cual luego es descargado. Para convertir show3:
let pins = %01001111 ‘dígito 3
un organigrama seleccione “Convertir” en el menú Organigra-
goto main
ma y será creado el programa BASIC del organigrama.
show4:
Aquellos bloques que no estén conectados a los bloques let pins = %01100110 ‘dígito 4
“inicio” ó “sub” en el organigrama, serán ignorados al momen- goto main
to de hacer la conversión. La conversión se detendrá si se en- show5:
cuentra un bloque no conectado; por lo tanto, utilice siempre un let pins = %01101101 ‘dígito 5
bloque “detener” para terminar el diagrama antes de iniciar goto main
una simulación o de convertir el diagrama. show6:
Note que es posible convertir y descargar un organigrama let pins = %01111101 ‘dígito 6
presionando dos veces la tecla F5. goto main
show7:
let pins = %00000111 ‘dígito 7
Utilizando Símbolos goto main
show8:
let pins = %01111111 ‘dígito 8
Las Entradas, Salidas y Variables pueden ser renombradas
goto main
utilizando la “Tabla de Símbolos” del menú Organigrama.
show9:
Cuando un símbolo es renombrado, el nuevo nombre aparece- let pins = %01101111 ‘dígito 9
rá en los menúes desplegables en la barra editora. No deben goto main
utilizarse nombres de comandos (por ejemplo switch o sound)
como símbolos, ya que esto puede generar errores en el pro- ganigramas también pueden ser copiados al portapapeles de
grama BASIC convertido. Windows (para pegarlos luego a otras aplicaciones) mediante
el menú Editar.

Guardando e Imprimiendo Organigramas


Sistemas de Números
Los organigramas pueden ser guardados, impresos y ex-
portados como figuras (para ser insertados en documentos de Los microcontroladores operan usando un gran número de
procesadores de palabras) utilizando el menú Archivo. Los or- comandos en un espacio de tiempo muy corto y procesando se-

28 CLUB SABER ELECTRONICA


ñales electrónicas. Estas señales están codificadas en sistema
binario; la señal puede ser high (1) o low (0).
El sistema numérico utilizado diariamente es el sistema de-
cimal. Este sistema numérico utiliza diez dígitos (del 0 al 9) pa-
ra explicar qué tan grande o pequeño es el número. Sin embar-
go, al trabajar con microcontroladores muchas veces es más fá-
cil trabajar en código binario, especialmente al tratar de con-
trolar múltiples salidas al mismo tiempo. Un sólo dígito binario
es conocido como un “bit” (binary digit – dígito binario). El sis-
tema PICAXE utiliza 8 bits (1 byte) por cada palabra de datos,
teniendo al dígito menos significativo en el extremo derecho y
al dígito más significativo en el extremo izquierdo. Por consi-
guiente, el número binario %11001000 pone a los bits 7,6,3
en high (1) y al resto en low (0). El símbolo % indica a la com-
Figura 33
putadora que está trabajando en sistema binario y no en deci-
mal.
La utilización del código binario permite controlar las ocho Figura 34
salidas al mismo tiempo, en vez de sólo utilizar los comandos
high y low. El programa que vemos en la tabla 15 demuestra
cómo hacer que la pantalla de siete barras del tablero tutorial
cuente del 0 al 9.
Cada línea “let pins =” cambia el número de barras encen-
didas en la pantalla de siete segmentos. Esto es mucho más rá-
pido que utilizar, muchísimas veces, los comandos high y low
para hacer lo mismo.

Visualizando Cifras Analógicas en el


Display de 7 Segmentos

El programa de la tabla 16 “lee” la cantidad de luz detec- Figura 35


tada 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 precisión co-


múnmente utilizados en unidades de disco, impresoras, plotters
y relojes de computadoras. A diferencia de los motores de CC,

TABLA 17

Paso Bobina 4 Bobina 3 Bobina 2 Bobina 1


(Output 3) (Output 2) (Output 1) (Output 0)
1 1 0 1 0
2 1 0 0 1
3 0 1 0 1
4 0 1 1 0
1 1 0 1 0

CLUB SABER ELECTRONICA 29


los cuales giran libremente al aplicarles potencia, los motores Los motores paso a paso tienen algunas limitaciones. Prime-
paso a paso requieren que su fuente de alimentación sea con- ro, el consumo de potencia es mayor cuando el motor está de-
tinuamente “impulsada” en cuatro patrones diferentes. Por ca- tenido (debido a que todas las bobinas requieren estar energi-
da impulso, el motor se mueve un “paso”, típicamente 7.5° (re- zadas). Segundo, la velocidad de operación está limitada a
quiriendo por lo tanto 48 pasos para una revolución completa), aproximadamente 100 “pasos” por segundo, lo cual equivale
figura 33. a 2 revoluciones por segundo ó 120 RPM.
El motor paso a paso contiene una
serie de electroimanes fijos a la armadu-
TABLA 18
ra central y cuatro bobinas ubicadas al-
rededor de la carcasa del motor. Cuan-
do pasa corriente eléctrica por estas bo-
symbol delay = b0 ‘definir variable binas, las mismas generan un campo
let delay = 100 ‘fijar el retardo (delay) en 0,1 segundos magnético el cual atrae o repele a los
electroimanes permanentes en la arma-
main: let pins = %00001010 ‘primer paso dura, provocando que la armadura gire
pause delay ‘pausa de 0,1 segundos (valor asignado al retardo) un “paso” hasta que los campos magné-
let pins = %00001001 ‘siguiente paso ticos estén alineados.
pause delay ‘pausa de 0,1 seg. Luego, las bobinas son energizadas
let pins = %00000101 ‘siguiente paso con un patrón diferente para crear un
pause delay ‘pausa de 0,1 seg. campo magnético diferente y provocar
let pins = %00000110 ‘siguiente paso que la armadura gire otro “paso”, figura
pause delay ‘pausa de 0,1 seg. 34.
Para hacer que la armadura gire
goto main ‘ir a “main (bucle perpetuo)
continuamente, las cuatro bobinas inter-
nas del motor paso a paso deben ser en-
TABLA 19 cendidas y apagadas continuamente en
cierto orden. El chip controlador UL-
symbol dp = 7 ‘renombrar salida7 “dp” N2003A del tablero tutorial (nuestro en-
symbol buzzer = 6 ‘renombrar salida6 “buzzer” trenador) provee el método necesario
symbol counter = b0 ‘definir a la variable “counter” como b0 para interrelacionar a estas cuatro bobi-
nas (figura 35).
main: ‘hacer etiqueta llamada “main” El motor paso a paso debe ser co-
gosub flash ‘ir al sub-procedimiento “flash” nectado a los agujeros en el tablero tuto-
gosub noise ‘ir al sub-procedimiento “noise” rial de la siguiente manera:
goto main ‘ir a “main”
end ‘fin del programa principal Cable Negro: 2 +
Cable Blanco: 3 +
Cable Amarillo: 0 –
flash ‘hacer un sub-procedimiento llamado “flash”
Cable Rojo:1 –
for counter = 1 to 25 ‘iniciar un bucle for....next
Cable Naranja: 2 –
high dp ‘encender diodo LED
Cable Marrón:3 –
pause 50 ‘esperar 0,05 segundos
low dp ‘apagar diodo LED
La tabla 17 muestra los cuatro “pa-
pause 50 ‘esperar 0,05 segundos
sos” distintos requeridos para hacer gi-
next counter ‘siguiente counter (b0)
rar el motor. Para hacer girar al motor
return ‘retornar del sub-procedimiento
en dirección contraria, los pasos deben
ser invertidos (4-3-2-1-4-etc. en vez de 1-
noise: ‘hacer un sub-procedimiento llamado “noise
2-3-4-1-etc.)
high buzzer ‘encender timbre
pause 2000 ‘esperar 2 segundos Nota: La configuración del alam-
low buzzer ‘apagar timbre brado de los motores paso a paso pue-
return ‘retornar del sub-procedimiento de variar según el fabricante. Por lo tan-

30 CLUB SABER ELECTRONICA


Figura 36

to, puede que sea necesario reorganizar las conexiones de las ñados para trabajar con 12V, pero generalmente pueden tra-
bobinas para que la secuencia mostrada arriba opere correc- bajar sin problemas (aunque con un torque reducido) con 6V.
tamente. Un arreglo incorrecto de las bobinas puede causar El siguiente programa también puede utilizar un número bi-
que el motor vibre en una dirección y otra, en vez de girar con- nario para encender y apagar todas las líneas de salida al mis-
tinuamente. La mayoría de los motores paso a paso están dise- mo tiempo. La siguiente tabla muestra el número binario de sa-
lida para cada paso:
Fig. 37
Paso Salida
binaria
1 %00001010
2 %00001001
3 %00000101
4 %00000110
1 %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 jimos que hay varios circuitos (de hecho
mencionamos tres). La empresa Revolu-
tion 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 inte-
grado ULN2803A para que pueda ma-
nejar pequeños motores, pero no se ha
incluido la fotorresistencia y el display
de 7 segmentos; sin embargo, no tendrá
problemas en conectarlos si sigue las ins-
trucciones que se brindan en la explica-
ción de cada programa. LK es un puente
de conexión (un jumper o simplemente
un cable).
Hemos hecho referencia al PICAXE-
18 porque en otras secciones trabajare-
mos con el PICAXE-08. En la figura 37 se
reproduce el esquema de circuito impre-
Subrutinas so para que monte su propio entrenador.
En la figura 38 se muestra el detalle de armado del cable
Una subrutina es un sub-procedimiento o “mini-programa” que sirve como interfaz entre el entrenador y la computadora.
separado, el cual puede ser llamado desde el programa princi- *****************
pal. Una vez que se ejecuta la subrutina, el
programa principal continúa. Las subrutinas
TABLA 20
son frecuentemente utilizadas para separar el
programa principal en pequeñas secciones,
symbol dp = 7 ‘renombrar salida7 “dp”
para hacerlo más fácil de comprender las su-
symbol counter = b0 ‘definir a la variable “counter” como b0
brutinas que realizan tareas comunes, tam-
bién pueden ser copiadas de programa a
main: ‘hacer una etiqueta llamada “main”
programa para ahorrar tiempo.
El programa de la tabla 19de la página
let b2 = 5 ‘precargar a b2 con el número 5
anterior utiliza dos subrutinas para separar
gosub flash ‘ir al sub-procedimiento “flash”
las dos secciones principales del programa pause 500 ‘esperar 0,5 segundos
(“flash” y “noise”). let b2 = 15 ‘precargar a b2 con el número 5
El programa que podemos ver en la tabla gosub flash ‘ir al sub-procedimiento “flash”
20, muestra como una variable puede ser uti- pause 500 ‘esperar 0,5 segundos
lizada para transferir información hacia una goto main ‘ir a “main”
subrutina. En este caso, la variable b2 es uti-
lizada para indicar al controlador que debe end ‘fin del programa principal
ejecutar la subrutina flash, primero cinco y
luego quince veces. flash: ‘hacer un sub-procedimiento llamado “flash”
for counter = 1 to b2 ‘iniciar un bucle for....next
high dp ‘encender diodo LED
El Circuito del Entrenador pause 250 ‘esperar 0,25 segundos
low dp ‘apagar diodo LED
En este capítulo hemos mencionado que pause 250 ‘esperar 0,25 segundos
precisamos un entrenador para corroborar next counter ‘siguiente counter
los diferentes conceptos que presentamos. Di- return ‘retornar al sub-procedimiento

32 CLUB SABER ELECTRONICA


Introducción este primer ejercicio se trata del PICAXE-18; pero, posterior-
mente, se realizarán ejercicios con todos los tipos de microcon-
Comenzaremos con una aplicación muy sencilla, por lo
que en primera instancia nos dedicaremos a encender y apa-
gar leds, de acuerdo al estado que guarden las terminales de
entrada de datos del microcontrolador. Cabe aclarar que con-
forme se avance en los temas de PICAXE podremos incorporar
controles para motores, utilización de convertidores analógico
- digital (ADC), etc. Recordemos que el sistema PICAXE está dis-
ponible en tres versiones que son el de 8 terminales (PICAXE-
08), 18 terminales (PICAXE-18) y 28 terminales (PICAXE-28), y
en función de las terminales que tienen disponibles para la en-
trada y salida de datos, serán las que ocuparemos para comu-
nicar al microcontrolador con el exterior. Figura 1 Figura 2
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 sa-
lida se tengan disponibles.
El primer circuito que se recomienda para
ingresar datos discretos (digitales) al microcon-
trolador es un interruptor con reposición auto-
mática (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 re-
producir el circuito de la figura 2 tantas veces
como entradas tenga disponible el microcontro-
lador. Para realizar el primer ejercicio, vamos
a elegir uno de los tres tipos de microcontrola-
Figura 3
dores PICAXE que se tienen disponibles, que en

CLUB SABER ELECTRONICA 35


troladores PICA- este software para programar a los microcontroladores que son
XE. El circuito pro- los diagramas de flujo, por lo que como se indica en la figura
puesto para esta 4, seleccionamos de la barra de herramientas la opción “Archi-
primera experien- vo”, posteriormente “Nuevo” y por último “Nuevo Organigra-
cia se muestra en ma”, y lo que aparecerá será el ambiente de trabajo para in-
la figura 3, en la gresar el diagrama de flujo de nuestro programa.
Figura 4
cual se tiene 1 en- Para comenzar, éste va a ser nuestro campo de trabajo ya
trada y 1 salida. que de forma intuitiva todos sabemos hacer diagramas de flu-
Para progra- jo. Pues bien, antes de seleccionar los bloques que lo constitui-
mar el microcon- rán, vamos a describir cuál es el algoritmo del programa que
trolador PICAXE la queremos desarrollar:
primer acción que “Cuando se oprima un pulsador se encienda un
tenemos que reali- led, y cuando se suelte el pulsador se apague el led”.
Figura 5
zar es abrir el soft- Existen bloques prediseñados que nos auxilian en el mane-
ware de progra- jo del estado que guardan las terminales de entrada del micro-
mación llamado controlador de manera independiente, por lo que como se
“PICAXE Programming Editor” y que previamente tuvo que ser muestra en la figura 5 seleccionamos el recuadro que tiene in-
instalado. Una vez que hacemos doble click sobre el ícono del dicado un rombo y dentro de éste la palabra “if”.
software de programación y accedemos al ambiente de progra- Ahora lo que tenemos que hacer es seleccionar qué condi-
mación, aparece una ventana en donde se configuran las op- ción es la que utilizaremos, que para este ejercicio será la que
ciones con las cuales trabajaremos. se encuentra dentro del recuadro que tiene una figura de un rom-
Como primer paso, ya que es la primera vez que utiliza- bo y dentro de éste la palabra “Pin” (observe la figura 6), esto
mos este software, es conveniente seleccionar el menú identifi- es, estaremos leyendo la condición de una terminal de entrada
cado como “Language”, ya que aquí es donde se configura el que, por defecto cuando lo ubicamos sobre nuestra área de tra-
lenguaje con el cual estaremos interactuando. Si desea más de- bajo, siempre se coloca la entrada 0 (terminal 17 del microcon-
talles sobre esta parte del programa, puede bajarlo de Internet trolador, figura 3). Este bloque tiene la tarea de leer el estado ló-
o adquirir la revista Saber Electrónica Nº 215. De internet, pue- gico de la terminal de entrada y la compara con un 1 lógico y
de bajarlo desde nuestra web con la clave “progpicaxe”. dependiendo de si la entrada es igual o no, tiene dos posibles
Para empezar a trabajar, debemos configuar el programa salidas “Y” por si es igual a 1 lógico y “N” por si la entrada es
(es muy sencillo, si lo desea, baje el tema completo desde nues- 0 lógico. Y por último, oprimimos el recuadro que tiene una fle-
tra web), seleccionando la opción “Modo” del menú para ele- cha en forma de U para regresar al menú principal.
gir el PICAXE que vamos a emplear en nuestro proyecto, qué De acuerdo al algoritmo que planteamos líneas atrás, lo que
frecuencia de operación tendremos (generalmente 4MHz), etc. tenemos que hacer es que se encienda un led cuando en la ter-
Luego, debemos elegir la opción “modo” del menú para indi- minal de entrada se encuentre un 1 lógico, o que el led se apa-
car en qué puerto tendremos el circuito para descargar el pro- gue cuando en la entrada se encuentra un 0 lógico. Para esta ac-
grama. De la figura 4 observamos el ambiente de trabajo que tividad recurrimos al recuadro identificado con la palabra “Out”,
presenta el software de programación de los microcontrolado- ya que es ahí donde se encuentran los bloques que actúan sobre
res PICAXE, en el cual se aprecia un espacio en blanco que es las terminales de salida del microcontrolador. Una vez en el in-
donde se ingresan las instrucciones en forma de “BASIC”. terior del menú de bloques de salida, tenemos que seleccionar la
¿Qué instrucciones son las que utilizaremos? acción que hará que el led se encienda o se apague, por lo que
Si no sabemos, no es el fin del mundo y vamos paso a pa- en primer instancia seleccionamos el bloque identificado con la
so. Para comenzar utilizaremos una opción que se cuenta en palabra “High”, el cual quiere decir que la salida se encenderá.
Por cierto, cuando selecciona-
Figura 7 mos este bloque, por defecto se
ubica la salida 0 (terminal 6 del
Figura 6
microcontrolador, figura 3), tal
como se ilustra en la figura 7.
Ya se tiene entonces el blo-
que que encenderá el led, por
lo que ahora requerimos la ac-
ción correspondiente con su
apagado, y ésta corresponde

36 CLUB SABER ELECTRONICA


al recuadro identificado con la palabra “Low”, que es precisa- Figura 8
mente el bloque que realizará la tarea de apagar el led, y tam-
bién por defecto, al seleccionarlo por primera vez, se ubica en
la salida 0.
Una vez que ya tenemos los bloques que necesitamos pa-
ra ingresarle o sacarle datos al microcontrolador PICAXE, pro-
cedemos ahora a unir los bloques para que realicen el algorit-
mo que fue planteado líneas atrás. Para ello existe una herra-
mienta que se encuentra en un recuadro identificado con una
línea vertical que en sus extremos tiene un “*”.
Cuando seleccionamos esta herramienta y acercamos el
puntero del ratón sobre alguno de los bloques que ya se en-
cuentran en el área de trabajo, se les aparece un círculo de co-
lor rojo en aquel punto que requiere una conexión, tal como se Figura 9
ilustra en la figura 8. Ya seleccionado el punto de conexión, tra-
zamos la línea hasta el siguiente punto de conexión de un blo-
que para realizar la unión lógica del flujo de datos. Cabe acla-
rar que para cada unión que se necesite realizar, se tiene que
volver a seleccionar la herramienta de conexión. En la figura 9
podemos apreciar la conexión completa de todos los bloques.
Si ya terminamos de diseñar 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 mis-
mo “desear” que el microcontrolador haga lo que según noso-
tros programamos, que lo que realmente hace en función del
programa que ingresamos. Existe en el software de los PICAXE
la posibilidad de simular el programa, y eso es lo que vamos a
Figura 10
hacer, por lo que seleccionamos el recuadro que tiene el sím-
bolo de una punta de flecha tal como se ilustra en la figura 9,
lo seleccionamos y enseguida aparecerán 2 ventanas. Una de
ellas indica el estado lógico 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
están siendo activas con un 1 lógico, mientras que los que apa-
recen debajo de los cuadros verdes, indican la posición de las
señales de entrada al microcontrolador, los cuales cuando se
encuentran en la posición inferior significa que la entrada se
encuentra en 0 lógico, y si están en la posición superior la en-
trada se encuentra en 1 lógico. Por otra parte también se ob-
serva que, dependiendo de dónde se encuentre la posición del
switch, se iluminará en color rojo la línea que une los diferen-
tes bloques que son afectados por la respuesta del estado lógi-
co 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 lógico en la entrada y apagar el led cuan-
do se tiene un 0 lógico en la misma entrada), ya estamos listos
para dar el siguiente paso, que es convertir el diagrama de flu-
jo a instrucciones de BASIC, para lo cual en la barra de herra- Figura 11
mientas seleccionamos el menú identificado como “Organigra-

CLUB SABER ELECTRONICA 37


ma” y después la opción “Convertir el Organigrama a Basic” Ud. puede bajar sin cargo de nuestra web (www.webelectroni-
(de manera rápida pudimos presionar la tecla F5), tema que ca.com.ar).
Ahora lo que tenemos que hacer es conectar el cable, tan-
to al puerto serie de la PC como a las terminales del microcon-
trolador que se indican en el diagrama de la figura 3 para pro-
gramar al PICAXE. Anteriormente propusimos la manera en có-
mo se debe construir el cable de programación, tomando en
Figura 12 cuenta las terminales que se deben ocupar.
Para grabarle el programa al microcontrolador debemos
dirigir la flecha del ratón a la barra de herramientas y seleccio-
nar el menú “PICAXE”, después la instrucción “Ejecutar” (o de
manera rápida F5), tal como se muestra en la figura 11. En ese
mismo instante aparecerá una ventana indicando que se está
llevando a cabo la programación del microcontrolador PICA-
XE. Cuando se encuentra en la fase de pro-
Figura 13 gramación, una barra que irá creciendo nos
dirá la cantidad de código que está siendo
descargado hacia el microcontrolador.
Cuando se termina de grabar el micro-
controlador aparecerá una ventana que nos
indica la finalización del proceso de progra-
mación, figura 12.
Ahora podemos verificar en el microcon-
trolador que el programa que diseñamos se

Figura 14

38 CLUB SABER ELECTRONICA


encuentra perfectamente bien, por Figura 15
lo que tenemos que oprimir el pul-
sador y esta acción debe encen-
der el led, y cuando lo soltemos, el
led se deberá apagar. Cualquier
otro funcionamiento nos quiere de-
cir que debemos revisar nuestro
programa y tenemos que regresar-
nos hasta la etapa en donde dise-
ñamos el diagrama de flujo, ya
que algo se encuentra mal.

Figura 16

Kit Entrenador para PICAXE 08 de las terminales (figura 15). Los conectores identificados como
ES1, ES2 y ES4 tienen 3 terminales, de las cuales, la del medio
En esta oportunidad diseñaremos nuestra primera tarjeta de en- de cada uno de ellos se hace llegar hacia la correspondiente
trenamiento universal para programar microcontroladores PI- terminal del microcontrolador PICAXE. Con rerspecto a las 2
CAXE, y como en todo comienzo, daremos inicio por lo más terminales restantes de cada conector (ES1, ES2 y ES4), una va
sencillo y más pequeño, esto es, los microcontroladores de 8 hacia el bloque destinado para conectar las entradas de datos,
terminales denominados PICAXE – 08. y la segunda se dirige hacia el bloque de terminales de salida
En primera instancia recordemos cuál es la configuración de datos. Pues bien, para seleccionar si la terminal del micro-
de un PICAXE–08, para en función de ello, tomar en cuenta de controlador será configurada como salida o entrada, será a tra-
cuántas entradas y cuántas salidas podemos echar mano y vés de un jumper que, dependiendo de cómo se conecte, unirá
aprovecharlas al máximo (figura 13). la terminal del medio del conector, ya sea ES1 ó ES2 ó ES4,
Tenemos la oportunidad de disponer de un total de 4 E/S con el bloque de terminales de entradas o al bloque de termi-
(4 entradas y 4 salidas), pero no nos confundamos, si sumamos nales de salida, y de esta forma quedará configurada la circui-
el número de salidas con el número de entradas tendremos un tería del microcontrolador PICAXE para que esté listo a recibir
total de 8 y el PICAXE–08 que manejaremos tiene solamente 8 el programa con el cual trabajará el microcontrolador.
terminales. El conector identificado como PROG/SAL0 posee 3 termi-
¿Esto quiere decir que las terminales de salida y de entra- nales, de las cuales la del medio se hace llegar a la terminal 7
da ocupan todas las que posee? del microcontrolador PICAXE. Esta terminal cumple con la do-
La respuesta es “no”, ya que en esas 8 terminales deben ble función tanto de programar al microcontrolador, como la de
estar las 4 entradas, las 4 salidas además de las 2 terminales funcionar como terminal de salida de datos si así se requiere;
de alimentación y 2 para programarlo. Específicamente para esta selección se lleva a cabo mediante la conexión de un jum-
los PICAXE–08 las terminales 3, 5, 6 y 7 cumplen con una do- per hacia la ubicación que se requiera.
ble función, por lo que debemos tener cuidado cuando los pro- Cuando se va a
gramemos, porque, por ejemplo, la terminal 3 puede compor- programar un micro-
tarse como una terminal de entrada o una terminal de salida, controlador PICA-
todo depende de cómo la contemplemos cuando realicemos el XE–08, es necesario
programa del PICAXE–08. que el jumper esté
La tarjeta entrenadora que proponemos tiene la posibilidad ubicado hacia la po-
de explotar al máximo las propiedades del PICAXE–08, y será sición “Prog” en el co-
por medio de jumpers como se podrá configurar la circuitería, nector PROG/SAL0,
tanto para programar como para fijar entradas o salidas de da- porque de otra mane-
tos. En la figura 14 se muestra el circuito esquemático de la tar- ra la programación
jeta entrenadora completa. será imposible, ya
A continuación describiremos cada parte de esta tarjeta en- que no se tendrá co-
trenadora para que podamos sacarle el máximo provecho. municación entre la
En primer término identificaremos la ubicación de dónde PC y el microcontrola-
instalar el microcontrolador PICAXE–08; éste debe encontrarse dor. Figura 17
en la base identificada como IC1 respetando la identificación Cuando el jumper

CLUB SABER ELECTRONICA 39


se encuentra ubicado hacia la posición “Sal0” en el mismo co- das los 2 circuitos con leds que se encuentran en el área de ex-
nector PROG/SAL0, se tendrá configurada la terminal del mi- perimentos; estos circuitos se muestran en la figura 18. Para uti-
crocontrolador como salida. La disposición de componentes so- lizar estos circuitos lo que tiene que hacerse es conectar el bor-
bre la placa se muestra en la figura 16. ne correspondiente, ya sea S1 o S2, a cualquiera de las termi-
Por lo descrito líneas atrás se deduce que el procedimiento nales de salida, que son Sal0 ó Sal1 ó Sal2 ó Sal3 del conec-
para ubicar el jumper del conector PROG/SAL0 será de acuer- tor “Salidas”.
do a lo siguiente: El espacio identificado como PROGRA se encuentra ocupa-
1º paso.- Ubicar el jumper hacia la posición “Prog” en el do por un conector de audio estéreo tipo mini Jack, el cual pue-
conector PROG/SAL0 para programar al microcontrolador PI- de tener formas diferentes. El conector de audio estéreo tan só-
CAXE–08. lo tiene 3 terminales, las cuales serán utilizadas para comuni-
2º paso.- Cambiar el jumper hacia la posición Sal0 en el car al microcontrolador con una PC a través del puerto serie.
conector PROG/SAL0 si se va a utilizar esa terminal del micro- En la figura 19, como ya lo vimos anteriormente, se muestra el
controlador PICAXE–08 como salida. diagrama de cómo se deben identificar las terminales tanto en
En el conector identificado como “Entradas” se tiene la po- la tarjeta de entrenamiento como en el conector DB9 que se co-
sibilidad de hacerle llegar al microcontrolador PICAXE–08 el necta al puerto serie de una PC.
estado lógico de 4 diferentes entradas digitales, las cuales pue- Las terminales del conector de audio realizarán las siguien-
den ser insertadas mediante circuitos externos o bien utilizar tes actividades:
cualquiera de los 2 circuitos con pulsador que se tienen en el La línea identificada con el número 1 sirve para verificar
área de experimentos. Estos circuitos se muestran en la figura que el microcontrolador PICAXE se encuentra conectado al
17 y lo único que se tiene que hacer es conectar el borne co- puerto serie de la PC.
rrespondiente, ya sea E1 ó E2, a cualquiera de las terminales La línea identificada con el número 2 sirve para programar
de entrada, que son al microcontrolador PICAXE.
Ent1 ó Ent2 ó Ent3 ó La línea identificada con el número 3 es la referencia GND
Ent4 del conector o también conocida como tierra eléctrica.
“Entradas”. Por último, la tarjeta entrenadora tiene incorporado un re-
En el conector gulador de voltaje identificado como IC2 que posee el código
identificado como LM7805, y cuya misión es la de mantener un voltaje de 5V pa-
“Salidas” se encuen- ra energizar al microcontrolador PICAXE y toda su circuitería;
tra el reflejo de las 4 por lo tanto, podemos energizar nuestra tarjeta de entrenamien-
salidas digitales to con una pila de 9 VCD.
que posee el micro- La lista de componentes se muestra a continuación.
controlador PICA-
XE–08, las cuales Lista de componentes para armar la
pueden hacerse lle- tarjeta controladora
gar a circuitos exter- IC1 ................Base de 8 terminales
nos en donde se re- IC2..................................LM7805
fleje la actividad del D1, D ..........................Leds Verdes
microcontrolador, o D3...................................Led Rojo
Figura 18 pueden ser utiliza- 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 mi-
ni plug de audio, alambres de conexión, bro-
che 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 fun-
ción lógica “Y” (AND). El motivo de progra-
mar al PICAXE con esta función lógica es un
pretexto para que se tenga en cuenta que si
podemos utilizar las funciones lógicas, enton-
Figura 20 - Diagrama esquemático de la tarjeta entrenadora.
ces podemos darle cualquier aplicación a
nuestra tarjeta, esto es, en otras palabras po-
demos desarrollar, por ejemplo, lo que se conoce con el nom- asignadas a la entrada son las denominadas como E3 y E4. Es-
bre de unidad central de proceso de un PLC. tas entradas se configuran empleando el jumper ES4 hacia la
Para cada una de las funciones lógicas necesitamos la uti- posición E4, mientras que la entrada E3 no tiene que configu-
lización de 2 entradas, por lo que en total requeriríamos de 4, rarse ya que está directamente conectada al borne de entra-
pero recordemos que el microcontrolador PICAXE – 08 es tan das. En cuanto a las salidas, emplearemos la que está identifi-
sólo de 8 terminales; por lo tanto, se tiene la limitante de que cada como S1. La salida S0 se configuran empleando el jum-
la mayoría de las entradas y salidas están compartidas. En con- per PROG/SAL0 en la posición de Sal0; esto es porque la ter-
secuencia tan sólo utilizaremos 2 entradas para implementar minal 7 del microcontrolador PICAXE – 08 se comparte tanto
las 2 funciones lógicas. con la salida 0 como con una terminal de programación del PI-
En el diagrama de la figura 20, se observa la manera en CAXE. La salida S1 requiere que el jumper ES1 se coloque en
que están asignadas tanto las terminales de entrada como las la posición Sal1. La forma en cómo se deben colocar los jum-
de salida; por otra parte también tomemos en cuenta que la tar- pers también se ilustra en la figura 21, que es una imagen de
jeta entrenadora posee 2 pulsadores para generar los estados la tarjeta entrenadora.
lógicos con los cuales trabajará el PICAXE, y también cuenta Una vez que hemos configurado la parte electrónica de la
con 2 leds para mostrar el estado de las sali-
das.
El ejercicio que desarrollaremos será el si-
guiente. Los pulsadores denominados S1 y S2
generan las combinaciones con las cuales se
encenderá el led D1 para la función lógica
“Y”, de acuerdo a la tabla lógica siguiente:

S1 S2 Función “Y”
0 0 0
0 1 0
1 0 0
1 1 1

Ahora hacemos referencia al diagrama de


identificación de los componentes de la figura
21 para observar que las terminales que están Figura 21 - Identificación de componentes y colocación de jumper.

CLUB SABER ELECTRONICA 41


tarjeta entrenadora, pasamos a elaborar el programa para Después de la ventana de bienvenida nos aparecerá la
controlar la tarjeta. ventana que se muestra en la figura 22, que es en donde se
Como lo hemos mencionado antes, es necesario abrir el configuran las opciones y por lo tanto el tipo de microcontrola-
ícono cuyo nombre es “PICAXE Programming Editor”, el cual dor que emplearemos. En esta oportunidad estaremos utilizan-
obviamente tuvieron que instalar con antelación, pero si uste- do un microcontrolador PICAXE – 08, por lo que seleccionamos
des aún no poseen el programa, lo pueden descargar de nues- esa opción. Si la ventana de opciones no aparece al abrir el
tra página de internet: www.webelectronica.com.ar. programa, nosotros podemos abrirla desde el menú Ver y des-
pués 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 apren-
diendo a programar a los microcontroladores del sistema PICA-
XE. Por esta situación, nuevamente recurriremos a programar al
microcontrolador a través de diagramas de flujo, por lo que
oprimimos el botón de acceso rápido para abrir el ambiente de
trabajo en diagramas de flujo, tal como se muestra en la figu-
Figura 22 ra 23.
Dentro del entorno gráfico para generar el diagrama de
flujo seleccionaremos, del menú de comandos, el correspon-
diente al que pregunta por el estado de las entradas, tal como
Figura 23 se ilustra en la figura 24.
Posteriormente, tal como se muestra en la figura 25, se pue-
den seleccionar los bloques que preguntan por el estado de las
entradas. Todo depende de nuestro diagrama, serán los blo-
ques que dentro del rombo tienen la palabra “pin”. Por defec-
to, 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 después 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 Figura 28
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 cuál sea la función lógica que implemen-
temos será la activación de las salidas que usaremos, ya sea
un “0” lógico o un “1” lógico; por lo tanto, seleccionaremos el
cuadro con la palabra low o high, respectivamente, tal como
Figura 29
se aprecia en la figura 28.
Como en el caso de las entradas, cuando elegimos una sa-
lida, 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 función lógica que implementaremos es la
denominada “Y” (AND). Como ya habíamos designado que se-
ría a través del led D1 de la tarjeta entrenadora donde se visua-
lizaría su respuesta, es el motivo de la selección ya que el led
D1 está conectado a la salida 1 del microcontrolador.
Ya que tenemos todos los bloques correspondientes a la im-
plementación de la función lógica, ahora pasaremos a conec-
tarlos para que se obtenga el resultado de la tabla de verdad
de la función lógica “Y”.
Tenemos que regresar una vez más al menú principal para
realizar la unión de los diferentes bloques, en función de la ló-
gica de operación que hemos desarrollado. Para esta acción,
elegimos la herramienta de conexión tantas veces como blo- Figura 30
ques se tengan que unir, tal como se muestra en la figura 30.
Cuando se realiza la actividad de unir los diferentes blo-
ques, se ilumina en color rojo un círculo que se hace presente
en el punto de conexión del bloque cuando acercamos el pun-
tero del ratón, y ahí hacemos click con el botón izquierdo pa-
ra fijar la línea de conexión, y la arrastramos hasta el siguien-
te punto de conexión del bloque con el que uniremos el ante-
rior, y así continuamos hasta unir todos los bloques que tenga-
mos, 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 he-
rramienta de simulación tal como nos lo indica la figura 31, y Figura 31
cuando la oprimimos, aparecerán dos ventanas: en una obser-
varemos las variables, y en la otra, que es la que nos interesa
en este momento, se observará cómo se comportan las salidas
en función de las entradas.
En la figura 32 se muestra que cuando ésta activa la fun-
ción de simulación, las líneas que unen los distintos bloques se
iluminan en color rojo indicando el camino por donde se cum-
plen las condiciones lógicas, facilitando de esta manera la ob-

CLUB SABER ELECTRONICA 43


nuestro siguiente paso es la programación del PICAXE a través
Figura 32 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ó cómo se debe
armar el cable de programación, colocar también el jumper del
conector PROG/SAL0 en la posición de Prog para que sea des-
cargado el código al PICAXE.
El paso siguiente es detener la simulación e ir al menú de
herramientas organigrama y seleccionar el mando convertir or-
ganigrama 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 progra-
ma en el microcontrolador PICAXE a través de la tarjeta entre-
nadora, se oprime el botón que se refiere a la herramienta de
programación, y como consecuencia se despliega una ventana
que nos va indicando el avance de la programación, 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 presionare-
mos los pulsadores de acuerdo a la tabla de verdad correspon-
Figura 33 diente, por lo que si el led no enciende con respecto a la res-
puesta de la tabla de verdad de la función lógica “Y”, algo an-
da mal y tenemos que pasar a revisar desde el circuito de la
servación de cómo se va generando la respuesta que finalmen- tarjeta entrenadora hasta revisar nuevamente el programa y la
te será visualizada a través de una salida. Y para comprobar fase de grabación en el microcontrolador.
que en la salida se tiene como resultante la función lógica
“Y”, se tienen que realizar las distintas combinaciones de “0” LISTA DE COMPONENTES PARA REALIZAR EL EJERCICIO.
lógico y “1” lógico en las terminales de entrada, a través de Tarjeta entrenadora del PICAXE – 08 y su cable de progra-
los interruptores que se visualizan en la ventana inferior de la mación.
figura 32.
Una vez que hemos superado la etapa de la simulación,

Juego de Luces Tipo “Auto Fantástico”


(Empleando la Tarjeta Entrenadora)

Figura 34
Vamos a implementar, a través de una tar-
jeta entrenadora, un juego de luces que fun-
cione de la misma manera que lo hacían las
luces del auto fantástico. Está claro que para
el microcontrolador PICAXE – 08 que posee la
tarjeta entrenadora, sólo se tiene posibilidad
de contar con 4 salidas a las cuales les pode-
mos colocar leds para visualizar el efecto de
Figura 35 las luces.
Cabe señalar que si usted desea bajar los
archivos para ejecutar el programa, puede
obtenerlos gratuitamente de nuestra web en
www.webelectronica.com.ar, digitando la cla-
ve “kit”.
En la figura 36 se muestra el diagrama es-

44 CLUB SABER ELECTRONICA


quemático de la tarjeta entrenadora, de
la cual emplearemos únicamente el bor-
ne 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 im-
plementación, armado y programación
se publicó en el tomo Nº 7 de la colec-
ción “Club Saber Electrónica”. Ud. pue-
de bajar el artículo completo de la web
con la clave dada más arriba.
Siguiendo con nuestro montaje, en
el borne identificado como PROG-
/SAL0, una vez que se descargue el pro-
grama sobre el PICAXE, debe colocarse
el jumper en la posición correspondien-
te a la salida 0 (Sal0). Una vez predis-
puesta la tarjeta entrenadora tal como
se muestra en la figura 37, pasamos a
desarrollar el programa.
Recordemos que lo primero que te- Figura 36
nemos que hacer es abrir el programa
“PICAXE Programming Editor”, tal como se ilustra en la figura gramación, lo primero que tenemos que hacer es inicializar las
38. Una vez dentro del ambiente de programación del PICA- salidas que utilizaremos, que por disposición del PICAXE – 08
XE, seleccionamos la opción de trabajar con diagramas de se tienen dispuestas las salidas 0, 1, 2 y 4. Para no afectar el
flujo, por lo menos hasta que adquiramos la experiencia ne- desempeño de nuestra aplicación, la inicialización de las sali-
cesaria para desarrollar nuestros programas directamente ba- das las realizamos por medio del comando “low” tal como se
jo BASIC. ilustra en la figura 39, una para cada una de las salidas; si no
Se ha explicado, minuciosamente, lo que significan los íco- colocáramos estos comandos, simplemente las salidas no se ac-
nos que aparecen cuando trabajamos con diagramas de flujo, tivarán. Posteriormente colocamos líneas de conexión para unir
por lo que ahora avanzaremos un poco más rápido en la cons- los comandos de activación en estado bajo de las 4 salidas se-
trucción de nuestro programa. Ya dentro del ambiente de pro- leccionadas. Ahora se colocan los comandos para generar el
efecto de luces del auto increíble, para lo cual nos basamos en
un algoritmo muy simple y que a continuación 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 vi- tificados como “wait” y como “pause”, los cuales describiremos
sible, posteriormente encendemos el led colocado en la salida a continuación.
1 e inmediatamente apagamos el led de la salida 0; una vez El bloque wait se emplea para generar una base de tiem-
realizado esto, fijamos esta condición durante 1 segundo. En po durante la cual el microcontrolador PICAXE estará ocupado
general, vamos encendiendo el led siguiente y al mismo tiempo sin realizar ninguna otra actividad, tan sólo se dedica a conta-
apagando el anterior y manteniendo el estado durante algún bilizar el tiempo que va transcurriendo hasta que llegue al con-
tiempo, y así sucesivamente hasta llegar al último led. Posterior- teo máximo que le hemos fijado. Esta actividad es muy útil, so-
mente hacemos que se invierta el encendido y apagado de los bre todo cuando se requiere el empleo de un temporizador, o
leds, causando con esto el efecto luminoso de las luces del au- de un delay. La característica que tiene el bloque wait es que
to increíble. el conteo lo realiza de una forma ya establecida y está en se-
De la figura 40 se puede observar el diagrama de flujo gundos, los cuales pueden tener valor desde 1 hasta 255 se-
que se emplea para controlar el juego de luces, y a través de gundos.
los bloques “low” apagamos las salidas (las colocamos en “0” En este caso estamos empleando el bloque wait para gene-
lógico), y con los bloques “high” encendemos las salidas (las rar una temporización, de manera que los datos que son envia-
colocamos en “1” lógico). Pues bien, hasta aquí hemos mane- dos a las salidas del PICAXE se mantengan durante 1 segundo.
jado bloques que con anterioridad habíamos utilizado y que no Si omitimos la colocación del bloque wait, provocaríamos que
causan problemas al momento de seguir la ejecución del pro- con la simple operación del microcontrolador, que es muy rápi-
grama, pero ahora aparecen 2 nuevos bloques que están iden- da, tan sólo observemos un destello en los leds pero no vería-
mos cuál se enciende y cuál se apaga con detalle. El número
que tiene por delante el comando wait es el número de segun-
Figura 39 dos que dura la temporización.
El segundo bloque que observamos en el diagrama de flu-
jo de la figura 41, y que no conocíamos, está identificado co-
mo “pause”.
El bloque “pause” trabaja de la misma manera que lo ha-
ce el bloque wait, y substantivamente se emplean para lo mis-
mo, pero la principal diferencia radica en los tiempos destina-
dos a la temporización de cada uno de los bloques. Para el blo-
que wait la temporización se en-
cuentra en segundos, mientras
que para el bloque pause la tem-
porización se contabiliza en mili-
segundos. Por lo tanto, como se
muestra en la figura 40, si coloca-
mos el bloque “wait 1” equivale a
un tiempo de 1 segundo, y si em-
pleamos el bloque “pause 1000”
equivale a un tiempo de 1000 mi-
lisegundos, o sea también 1 se-
gundo.
Después de que hemos colo-
cado 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 si-
mulación, procedemos a convertir
nuestro diagrama de flujo en códi-
go BASIC, por lo que recurrimos
al menú Organigrama y dentro de
éste al comando “Convertir Orga-
Figura 40 - Diagrama a bloques completo. nigrama en BASIC”, por lo que

46 CLUB SABER ELECTRONICA


vamos a generar un código como el ilustra-
do en la figura 42.
Por último, tenemos que programar al mi-
crocontrolador PICAXE, por lo que estando
en el ambiente de código BASIC nos dirigi-
mos al menú PICAXE y después al comando
“Ejecutar”. En ese mismo instante se abre una
ventana que nos indica el progreso de la pro-
gramación del PICAXE (figura 43), y una vez
que éste termina de programarse, nos mues-
tra una ventana pequeña en donde nos comu-
nica que se programó perfectamente; en ca-
so contrario, también nos reporta las posibles
causantes del fallo. Como lo hemos mencio-
nado en anteriores entregas, es necesario
abrir el ícono cuyo nombre es “PICAXE Pro-
gramming Editor”, el cual obviamente tuvie-
ron que instalar con antelación, pero si uste-
des aún no poseen el programa lo pueden
descargar de nuestra página de internet:
www.webelectronica.com.ar. A lo largo de Figura 41 - Simulación.
esta obra iremos desarrollando ejemplos de
programación, en los cuales aplicaremos los bloques de los dia- Alarma para Puertas y Ventanas
gramas de flujo vistos hasta ahora, y la meta es llegar a realizar Empleando la Tarjeta Entrenadora PICAXE 08
programas con mayor grado de complejidad, para lo cual se tie-
ne contemplado mostrar proyectos con aplicaciones reales. Para continuar con la utilización de nuestra tarjeta entrena-
dora tal como un módulo de uso general, nuevamente hacemos
Lista de Materiales referencia a ella y por lo tanto volvemos a colocar su diagra-
ma esquemático se ilustra en la figura 44. De la tarjeta entre-
Tarjeta entrenadora del PICAXE – 08 (el diagrama y des- nadora sabemos que se cuenta con un total de 4 Entradas/Sa-
cripción de ésta se vió anteriormente), su cable de programa- lidas, las cuales las tenemos que distribuir adecuadamente en-
ción, tre el sensor, el habilitador de la alarma, la salida a un buzzer
4 Leds (zumbador) y a un contacto que nos representará una señal re-
4 Resistores de 390Ω mota. De acuerdo a lo anterior necesitamos de, por lo menos,

Figura 42 - Código en BASIC.

CLUB SABER ELECTRONICA 47


2 entradas y 2 salidas, pero recuer-
den que en el PICAXE–08 algunas
Figura 44
terminales son compartidas y cum-
plen con una doble función; dicho
en otras palabras, tanto se pueden
configurar como terminales de sali-
da o como de entrada de datos,
pero una vez configuradas, traba-
jará así el PICAXE todo el tiempo.
En la figura 45 se ilustra la pro-
puesta de cómo se asignarán las
terminales de entrada y salida de
datos, en las cuales se sugiere que
para proteger a las puertas y ven-
tanas de un hogar se utilicen senso-
res magnéticos llamados reed swit-
ches, en los cuales, cuando se les
acerca un imán, su contacto se cie-
rra, provocando la generación de
los estados lógicos que vemos en la
tabla 1.
La disposición de los sensores
magnéticos, tal como se ilustra en
el diagrama esquemático de la fi-
gura 45, están conectados de tal
forma que se cumplan las condicio-
das Ent3 y Ent4, mientras que las terminales designadas para
nes de la tabla 1, y estos estados lógicos se hacen llegar a la
las salidas serán las marcadas como Sal0 y Sal1.
terminal de entrada del PICAXE (Ent3) destinada a detectar si
una puerta o ventana fue abierta sin autorización, por lo que Una vez que se han destinado las entradas y salidas que
tenemos que seleccionar qué puerta o ventana de nuestra ca- serán empleadas, ahora procederemos a explicar el diseño del
sa tendremos que proteger, colocando el sensor magnético en programa con el cual se gobernará el microcontrolador PICA-
XE, para lo cual partiremos del hecho de que ya tenemos insta-
el marco de la puerta o ventana mientras que el imán lo fijare-
mos sobre la puerta o ventana. lado el programa llamado “PICAXE Programming Editor”, y si
aún no lo tienen pueden descargarlo de nuestra página www-
De acuerdo a lo que se observa de la figura 45, las termi-
nales destinadas a las entradas de datos serán las denomina-.webelectronica.com.ar con la clave “picaxe”, o directamente
de la página www.picaxe.co.uk
En la figura 46 observamos la ventana de bienvenida al
“PICAXE Programming Editor”.
Consideramos que aún no tenemos la experiencia necesa-
ria para comenzar a programar un PICAXE por medio del len-
guaje BASIC, por lo que una vez más seleccionamos la opción
de trabajar con diagramas de flujo, por lo menos hasta que
contemos con la experiencia necesaria para desarrollar nues-
tros programas directamente bajo ambiente BASIC.
Debido a que ya hemos explicado paso a paso cómo tra-
bajar con diagramas de flujo, ya no expondremos lo que signi-
Figura 43 - Ventana que muestra el avance de la programación. fican los íconos que aparecen cuando trabajamos con estos
diagramas, por lo que sólo nos abocaremos a
TABLA 1 COMPORTAMIENTO DEL SENSOR MAGNETICO desarrollar el programa con el cual operará
Presencia del imán Contacto del Reed Switch Estado lógico nuestro programa.
Si Cerrado 1 Para comenzar con el programa, primero
No Abierto 0 serán definidas las terminales de entrada a

48 CLUB SABER ELECTRONICA


Figura 45

través de las cuales se estará habilitando la


alarma Ent4 (pin4) y lectura del sensor Ent3
(pin3). De acuerdo a la manera de cómo pre- Figura 46
tendemos que sea la operación de nuestra
alarma, ésta comenzará a funcionar a partir
de que la habilitemos por medio del pin4, es-
to es, que en esta terminal esté presente un
“1” lógico, y mientras esta condición no esté
presente, la alarma nunca indicará si una
puerta o ventana fue abierta sin autorización,
por lo que podemos considerar que la alarma
está desactivada para que contemos con la
posibilidad de abrir cualquier puerta o venta-
na.
Después de que la alarma fue activada, el
paso siguiente es el revisar que ninguna puerta o ventana sea minal 4. Si la alar-
abierta sin autorización, por lo que a través del pin3 se debe ma ya fue activa-
leer un “1” lógico para que se cumpla dicha condición. da el paso siguien- Figura 47
La figura 47 muestra la activación de la alarma y lectura te será leer el esta-
del sensor. De acuerdo con la figura 47, los primeros bloques do lógico del sen-
que deben colocarse corresponden a los que realizan la revi- sor magnético, por
sión de los estados lógicos que guardan tanto el switch que ac- lo que siempre es-
tiva ó deshabilita la alarma, como con el que corresponde con taremos compa-
la lectura del estado en que se encuentra el sensor magnético. rando el estado ló-
El primer bloque tiene la tarea de preguntar si la alarma ya fue gico de la terminal
activada, por lo que se comparará el estado lógico de la termi- de entrada 3 con
nal de entrada 4 con un “1” lógico. Si la alarma aún no ha si- el estado lógico
do activada, no tiene caso seguir con el desarrollo del progra- “0”. Recordemos
ma, por lo que constantemente se estará revisando el estado ló- que el estado lógi-
gico de la terminal de entrada 4 hasta que la alarma sea acti- co “0” en el sensor
vada, esto es, sea colocado en “1” lógico el estado de la ter- magnético signifi-

CLUB SABER ELECTRONICA 49


“let”.- Este bloque es empleado para asignar un valor en
cualquiera de las variables con que cuenta el microcontrolador
Figura 48 PICAXE, además de permitir la realización de operaciones en-
tre las variables y valores constantes.
“sound”.- Este bloque contiene los parámetros necesarios
para generar una nota musical a través de una terminal de sa-
lida del microcontrolador, por lo que la sintaxis es sound termi-
nal de salida (nota, duración).
Pues bien, una vez que hayamos revisado el potencial de
los bloques que a continuación utilizaremos, procedemos a ex-
plicar la operación de esta segunda parte del diagrama de blo-
ques.
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 utilización de bloques con el co-
mando “let”. El valor de esta variable funcionará como la nota
musical que será interpretada por medio del bloque identifica-
do como “sound”.
El bloque sound tiene la propiedad de generar una nota
musical con tan sólo indicárselo por medio de los parámetros
que se encuentran dentro del paréntesis. De acuerdo con nues-
tro ejemplo, la variable b0 nos generará la nota que será ex-
presada hacia el exterior del PICAXE a través de la terminal 0
ca que alguna puerta o ventana fue abierta y si esto sucedió y los valores que puede aceptar la variable b0 van desde 0 (si-
sin autorización, por medio del comando “high” estaremos en- lencio) hasta 127 notas ascendentes, y de 128 a 255 notas as-
viando, a través de la terminal de salida 1, una señal a la bo- cendentes de ruido. Para nuestro ejercicio, emplearemos las no-
bina de un relevador para que sea generada una señal de alar- tas que van de 0 a 127 para dar vida a la alarma sonora, y
ma remota. para obtener el efecto de una señal audible ruidosa, tendremos
En la figura 48 se ilustran los bloques correspondientes al que ir incrementando la variable b0 partiendo de 0 hasta 127,
establecimiento de una señal audible para avisar del evento de por lo que utilizaremos un bloque comparador, y cuando la va-
apertura de una puerta o ventana sin autorización. riable b0 llegue a 127, nuevamente se iniciará la variable con
En el desarrollo de esta parte del diagrama de bloques, en- el valor de 0, y nuevamente comenzará el conteo ascendente
contraremos dos nuevos, que se describen a continuación: de la variable. Esta actividad mostrará el efecto de notas musi-
cales ascendentes. El dato correspondiente a la duración de la
nota dentro del paréntesis del bloque sound se puede expresar
con valores que van
Figura 50
Figura 49 desde 0 a 255, pero
debemos tomar en
cuenta que este valor
tiene que ser multipli-
cado por una constan-
te de aproximadamen-
te 1mseg.
La variable b0 se
incrementará desde 0
a 127 cuando se abra
una puerta o ventana,
y este lazo continuará
hasta que una perso-
na autorizada y con
una llave pueda resta-
blecer la alarma, por

50 CLUB SABER ELECTRONICA


lo que existirá un bloque en donde se esté revisando la condi- Tarjeta Entrenadora PICAXE 18
ción lógica de la señal de entrada en el pin4, y cuando lea el
estado lógico “0” significa que ya fue desactivada la alarma,
por lo que se tiene que revisar la condición del sensor magné- A lo largo de estas líneas iremos describiendo todo lo que
tico, ya que si se deja la puerta o ventana abierta y se vuelve corresponde a una nueva tarjeta entrenadora, que en esta
a restablecer la alarma, ésta se volverá a disparar generando oportunidad alojará al microcontrolador PICAXE–18, por lo
nuevamente la señal audible y enviando la señal de alarma re- que como primer paso recordaremos cuál es el diagrama del
mota. En la figura 49 vemos el diagrama de bloques comple- circuito básico de conexión de este PICAXE, para de ahí llegar
to. Como paso siguiente, deberemos simular la operación del al diagrama esquemático de la nueva tarjeta entrenadora. En
diagrama de bloques para estar completamente seguros de la figura 52, se muestra el circuito básico del cual se tiene que
que el programa va a funcionar correctamente. Después de la tomar en cuenta el número total de entradas y salidas que po-
simulación, procedemos a convertir nuestro diagrama de flujo demos manipular para aprovecharlas al máximo.
en código BASIC, por lo que recurrimos al menú Organigrama Para el PICAXE–18 se tiene la oportunidad de disponer de
y, dentro de éste, al comando “Convertir Organigrama en BA- 8 terminales de salida y 5 terminales de entrada; de estas últi-
SIC”, por lo que vamos a generar un código como el ilustrado mas y dependiendo del tipo de microcontrolador PICAXE (PICA-
en la figura 50. XE–18 ó 18A ó
Por último, para programar al microcontrolador PICAXE, se 18X), se pueden co- Figura 51
tiene que estar dentro del ambiente de código BASIC, y de ahí locar hasta tres en-
nos dirigimos al menú PICAXE y después al comando “Ejecu- tradas como entra-
tar”. De esta acción se provoca que se abra una ventana que das analógicas.
nos va indicando el progreso de la programación del PICAXE. La tarjeta entre-
Una vez que éste termine de programarse, nos muestra una nadora que se pro-
ventana pequeña en donde nos comunica que se programó pone en esta opor-
perfectamente; caso contrario, también nos reporta las posibles tunidad tiene la po-
causantes del fallo. sibilidad de explo-
La tarjeta entrenadora cuya imagen se observa en la figu- tar al máximo todas
ra 51 es el cerebro de las actividades de nuestra alarma, por las propiedades de
lo que en este caso se le tienen que agregar los componentes un PICAXE–18. En
ilustrados en la figura 45, pero claro está que por el tamaño en la figura 53 se
cuestión del número de terminales que posee un PICAXE-08, a muestra el circuito
nuestra alarma le está destinado el proteger sólo una puerta o esquemático de la
ventana. Si queremos una alarma con mayor número de senso- tarjeta entrenadora
res, tendremos que utilizar un PICAXE con mayor cantidad de completa.
terminales y agregar, en el programa, la
lectura del estado que tengan dichos sen-
sores.
Continuaremos desarrollando ejem-
plos prácticos de programación, ya que
nuestra meta es llegar a realizar diseños
de aplicaciones sin importar el nivel de
complejidad.

LISTA DE MATERIALES
Tarjeta entrenadora del PICAXE – 08
El cable de programación
3 Resistores de 390Ω 1/8Watt
1 Transistor 2N2222
1 Diodo 1N4001
1 Relevador para 5 V
1 Reed switch
1 Botón con seguro
1 Zumbador (buzzer) Figura 52 - Circuito básico de un PICAXE-18.

CLUB SABER ELECTRONICA 51


ra general, pueden clasificarse como discretos
o analógicos, entendiéndose como discretos
todas aquellas señales que trabajan mediante
la lógica binaria, “0” lógico y “1” lógico,
mientras que las señales analógicas, son aque-
llas, como la temperatura, que están variando
con el tiempo y puede adquirir un número infi-
nito de valores dentro de un intervalo bien es-
tablecido.
Para esta tarjeta controladora no se nece-
sita configurar alguna forma especial de tra-
bajo sobre su circuitería, por lo que sus aplica-
ciones son inmediatas, ya que posee termina-
les dedicadas tanto para ingresarle como pa-
ra extraerle datos, siendo el microcontrolador
PICAXE el elemento indispensable que realiza
todas las acciones de control. Una vez identi-
ficadas las terminales de entrada y salida de
datos de la tarjeta entrenadora, como paso si-
guiente se tienen que identificar los módulos
de apoyo para construir, implementar y/o si-
mular alguna aplicación.
El primer módulo de apoyo que describire-
Figura 53 - Diagrama esquemático de la tarjeta entrenadora PICAXE–18.
mos es el relacionado con la actividad de re-
presentar alguna acción del microcontrolador,
A continuación describiremos cada bloque de esta tarjeta esto es, el poder señalar por medio de un indicador luminoso
entrenadora para que se le pueda sacar el máximo provecho. alguna respuesta. Para ello se cuenta con 2 circuitos basados
Como primer paso será identificada la ubicación de dónde en leds que se encuentran en el área de experimentos de la pro-
se encuentra el microcontrolador PICAXE–18, el cual justamen- pia tarjeta entrenadora. Estos circuitos se muestran en las figu-
te debe encontrarse sobre la base identificada como IC1, res- ras 54 y 55. Para hacer uso de estos circuitos, lo que tiene que
petando en todo momento la distribución de las terminales. hacerse es conectar, mediante un pequeño cable, el borne co-
Sobre el conector identificado como salidas, se encuentran rrespondiente, ya sea de S1 o S2, con cualquiera de las termi-
concentradas las 8 de que dispone el microcontrolador PICA- nales 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 es-
Este conjunto de salidas pueden emplearse de manera indistin- ta forma, si la salida registra un “1” lógico, se encenderá el led
ta para controlar algún 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 naturale- “0” lógico, el led se apagará.
za para, en función de ella, conectar en la salida un optoaco- El segundo módulo de apoyo es el que genera estados dis-
plador para encender o apagar un motor de CA, por ejemplo, cretos para poder hacerlos llegar al microcontrolador. Estos mó-
así como encender una lámpara incandescente o un simple dio- dulos pueden simular la activación o desactivación de determi-
do led. nados sensores o botones que se requieren en algún 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 (PICAXE–18 ó 18A ó 18X), las terminales E0, borne correspondiente, ya sea E1 ó E2, a cualquiera de las ter-
E1 y E2 pueden comportarse como terminales de entrada ana- minales de entrada, que pueden ser E0 ó E1 ó E2 ó E6 ó E7 del
lógica, esto es, tienen un convertidor analógico – 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 algún estado lógico y que refle- evaluar si la secuencia con que se tienen que activar los senso-
jen fielmente el estado de la actividad que están leyendo los res es la correcta o no, para poder estar seguros de que nues-
sensores bajo algún proceso. Estos datos de entrada, de mane- tro programa operará completamente sobre nuestra aplicación.

52 CLUB SABER ELECTRONICA


El tercer módulo de apoyo es el que genera señales analó- dor que, dependiendo del tipo de PICAXE; éstas pueden ser E0
gicas para que puedan emplearse con aquel PICAXE que inter- ó E1 ó E2 del conector “Entradas”. Ahora bien, lo que se quie-
namente posee un convertidor analógico – digital. Este módulo re es utilizar en la tarjeta programadora un sensor real, por
puede realizar el trabajo de simulación, por ejemplo, de un ejemplo un LDR (resistencia variable con la luz) o una galga ex-
sensor de temperatura, de un sensor de presión, de humedad, tensiométrica (resistencia variable con la deformación), etc. En
etc. Para esta parte, la tarjeta entrenadora cuenta con un resis- el módulo de señales analógicas, a través del conector identifi-
tor variable identificado como POT1, por medio del cual se cado como “SENSOR”, se puede conectar un determinado sen-
puede cambiar el valor de voltaje que se hace llegar a la ter- sor que, en combinación con el resistor R8, se genera el volta-
minal correspondiente de entrada analógica del microcontrola- je cuyo valor responderá de acuerdo a la variable física que
lea el sensor.
Cabe aclarar que
el tipo de sensor que
se tiene que utilizar en
esta parte de la tarjeta
entrenadora debe pre-
sentar un cambio en su
valor de resistencia pa-
ra que, en función de
esto, se modifique el
valor de voltaje que es
lo que lee el PICAXE
en las entradas analó-
gicas. Las terminales
Figura 54 - Circuito Impreso Figura 55 - Disposición de los compo-
nentes sobre la tarjeta entrenadora. donde se refleja el es-
de la tarjeta entrenadora.
tado del módulo que

Figura 56 - Conector mini Jack de audio.

Figura 58 - Cable de programación.

Figura 57 - Identificación de terminales en los


conectores mini jack y DB9. Figura 59 - Adaptador para programación.

CLUB SABER ELECTRONICA 53


genera las señales analógicas se identifican como AN1 y AN2. Aprendiendo a Utilizar el ADC en la
El espacio identificado como PROGRA se encuentra ocupado Tarjeta Entrenadora del Picaxe-18
por un conector de audio estéreo tipo mini Jack, el cual puede
tener cualquiera forma, tal como se ilustra en la figura 56. Con el PICAXE–08 se tiene la posibilidad de utilizar el con-
El conector de audio estéreo tan sólo tiene 3 terminales vertidor analógico a digital (ADC), la forma de utilizarlo bajo
que serán utilizadas para comunicar al microcontrolador con el sistema PICAXE es lo mismo para cualquiera de las versiones
una PC a través del puerto serie. En la figura 57 se muestra el de microcontroladores, ya sea PICAXE–08, PICAXE–18 ó PICA-
diagrama de cómo se deben identificar las terminales, tanto en XE–28. El empleo de un ADC es muy útil e inclusive necesario,
la tarjeta entrenadora como en el conector DB9 que se conec- sobre todo cuando tenemos que utilizar un sensor que nos re-
ta al puerto serie de una PC. porta una variable cuyos valores cambian dentro de un rango
Las terminales del conector de audio y DB9 realizarán las establecido con el transcurso del tiempo. A estas variables se
siguientes actividades: les conoce con el nombre de analógicas, ya que tienen un com-
• La línea identificada con el número 1 en el conector de portamiento como el ilustrado en la figura 60.
audio sirve para verificar que el microcontrolador PICAXE se Dependiendo de la variable física que se tenga que medir
encuentra conectado al puerto serie de la PC. (para, con su información, controlar determinado proceso), es
• La línea identificada con el número 2 en el conector de el sensor que emplearemos.
audio sirve para programar al microcontrolador PICAXE. Existen sensores para medir la temperatura, humedad, in-
• La línea identificada con el número 3 en el conector de tensidad luminosa, presión ejercida a una superficie, acelera-
audio es la referencia GND ó también conocida como tierra ción, deformación de materiales. Estas variables físicas son las
eléctrica. más comunes de medir ya que existen sensores comerciales
En la figura 58 se muestra la imagen de un cable de pro- muy económicos para estas variables.
gramación. De lo contrario puede emplearse un adaptador (fi- El aspecto común de todos los sensores, no importando a
gura 59) que realiza la misma función y con éste puede em- qué variable física responden, es que convierten la variable fí-
plearse cualquier cable serie que se disponga. sica a una señal eléctrica cuyo valor correspondiente de forma
Por último, sobre la tarjeta entrenadora se tiene incorpora- directa a la variable. Para el caso particular de la tarjeta entre-
do un regulador de voltaje identificado como IC2 que posee el nadora del PICAXE–18, se requieren sensores que cuenten,
código LM7805, y cuyo cometido es el de proporcionar un vol- preferentemente, con una variación de resistencia al cambiar el
taje constante de 5V para alimentar al microcontrolador PICA- valor de la variable física, ya que sobre la tarjeta entrenadora
XE y los módulos auxiliares que tiene incorporados la tarjeta se tiene implementado un circuito resistivo que, en combinación
programadora. Por medio de la utilización del regulador de con el sensor se genera un divisor de voltaje, el cual se encuen-
voltaje es posible que podamos emplear para energizar a nues- tra conectado a un potencial de 5V. Las variaciones de éste, de
tra tarjeta de entrenamiento una pila de 9V. acuerdo a lo que mida el sensor, que es lo que se hace llegar
al ADC del PICAXE.
LISTA DE COMPONENTES PARA LA TARJETA En la figura 61 se ilustra el diagrama esquemático de la
CONTROLADORA PICAXE–18 tarjeta entrenadora PICAXE–18, de la cual nos interesan, en es-
ta ocasión, las terminales identificadas como AN1 y AN2. Si
IC1 Base de 18 terminales analizamos con detalle la terminal que corresponde al borne
IC2 LM7805 AN1, es allí donde se encuentra un conector con tornillos que
D1, D2 Leds Verdes sirven para sujetar al sensor que utilicemos, recordando que
D3 Led Rojo debe generar una variación resistiva a los cambios que presen-
S1, S2, RESET Interruptores Push button te la variable física. El sensor que utilicemos estará conectándo-
R1, R4, R5: 10kΩ 1/8Watt se en serie con un resistor identificado como R8 y cuyo valor es
R2: 22kΩ 1/8Watt de 100kΩ. Este circuito serie tiene, en uno de sus extremos, el
R3: 1kΩ 1/8Watt valor positivo de 5V, y el otro GND; por lo tanto, al cambiar el
R6, R7,R9: 39kΩ 1/8Watt valor de la variable física se tendrá una repercusión sobre el
R8: 100kΩ 1/8Watt sensor, ya que éste cambiará su valor resistivo. Al modificarse
Pot. 1: Preset 100 el valor de resistencia del sensor, se tendrá una mayor o menor
Sensor: Bloque de terminales circulación de corriente, recordando que todo depende de la
ley de Ohm, que dice:
Varios: Conector mini jack de audio, conector mini plug “El valor de la corriente es inversamente proporcional al va-
de audio, alambres de conexión, broche para pila de 9V y cir- lor de la resistencia, y directamente proporcional al valor del
cuito impreso. voltaje” (la fórmula matemática es: I = V/R).

54 CLUB SABER ELECTRONICA


Si cambia el valor de la corriente
en el circuito serie y nuevamente apli-
camos la ley de Ohm, entonces se
tendrán variaciones de voltaje, ya
que la información del valor de volta-
je la estaremos obteniendo de la co-
nexión del sensor con R8.
El borne, identificado como
AN2, es más sencillo de utilizar, ya
que ahí se tiene un preset identificado
como POT1, del cual una de sus 2 ter-
minales de los extremos se hace lle-
gar al potencial de 5V y el otro a
GND. Es a través de su terminal del
medio de donde se obtiene el valor
de voltaje que se dirigirá posterior-
mente al ADC del PICAXE. Observan- Figura 60 - Diferentes tipos de señales analógicas
do con detalle este circuito simple,
nos daremos cuenta de que se trata trada que será utilizada con el valor analógico 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 entrenado-
del preset, le estaremos agregando resistencia a uno de estos ra, y se trata de la entrada E0. El LDR, prácticamente, es una
resistores y quitándole al otro. El propósito de utilizar este cir- resistencia variable que está constituida por un material fotosen-
cuito es únicamente para cuestiones didácticas, ya que estare- sible; por lo tanto, la intensidad luminosa provocará que dismi-
mos simulando la operación de un sensor aún sin tenerlo, pero nuya su valor de resistencia, mientras que la oscuridad o ausen-
estaremos en absolutas posibilidades de comprobar nuestro cia de luz ocasionará que tenga su máxima resistencia, y de-
programa ya colocado en el PICAXE. La información contenida pendiendo del tipo de LDR puede tener valores de resistencia
en los bornes AN1 y AN2, que es el reflejo de un sensor (pa- que son de 2MΩ, ó 10MΩ en la oscuridad. Para controlar el
ra el caso de AN1) y la variación de un poten-
ciómetro (para el caso de AN2) se tiene que
conectar a la entrada analógica del PICAXE.
Para ello, dependiendo del tipo de microcon-
trolador PICAXE (PICAXE–18 ó 18A ó 18X), se
puede disponer de hasta tres entradas del tipo
analógicas. Los bornes de las entradas analó-
gicas al PICAXE están identificados como E0,
E1 y E2, por lo que para hacer llegar la infor-
mación de los bornes AN1 ó AN2 a E0 ó E1
ó E2, será mediante pequeños cablecillos de
conexión, tal como se muestra en la figura 62.
Para ilustrar de mejor manera la utilización del
ADC del PICAXE vamos a recurrir al empleo de
un ejemplo práctico. Este ejemplo consistirá en
encender o apagar una lámpara de alterna del
mismo tipo que utilizamos para iluminar nues-
tra casa. El circuito al que estamos haciendo re-
ferencia es el de un control automático de lu-
ces. Este control automático detectará, a través
del LDR, cuándo 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á
detectada a través del LDR (figura 63). La en- Figura 61 - Diagrama esquemático de la tarjeta entrenadora PICAXE–18.

CLUB SABER ELECTRONICA 55


apagado o encendido de la lámpara de alterna, se requiere un cuentra identificado como RL1. Todo esto se ubica en el diagra-
circuito que maneje la potencia, o dicho con otras palabras, se ma de la figura 62. La salida que se utilizará se encuentra en
necesita que la cantidad de corriente que consuma la lámpara el borne de salidas de la tarjeta entrenadora y se trata de la sa-
no la suministre directamente el PICAXE, por lo que se emplea lida S0. En la salida S0 se tendrá un “0” lógico si la intensi-
una interfaz implementada a base de un transistor identificado dad luminosa detectada es suficiente como para que se apa-
como Q1, además de utilizar también un relevador que se en- gue la lámpara; por otra parte, si la intensidad luminosa es
muy baja o se tiene oscuridad total, en
la salida S0 se tendrá un “1” lógico,
provocando que se encienda la lámpa-
ra correspondiente. Esta información se
hace llegar al transistor Q1, que a su
vez, dependiendo de la información
que tenga en su base, energizará o no
la bobina del relevador RL1, siendo los
contactos de este relevador quienes ma-
nejen la tensión alterna de línea y serán
ellos quienes enciendan o apaguen, fi-
nalmente, la lámpara. Una vez explica-
Figura 64 - Icono del programa da la parte que corresponde a la electró-
“PICAXE Programming Editor” Figura 65 - Ventana de Opciones.
nica de la tarjeta entrenadora, así como
los dispositivos y circuitos que se le agre-
garán para su funcionamiento, ahora
procederemos a explicar cómo se elabo-
ra el programa con el cual controlaremos
el encendido o apagado de una lámpa-
ra de corriente alterna, así que prosiga-
Figura 66 - Barra de comandos con el menú “Other”. mos adelante.

Figura 63 - Imagen
Figura 62 - Conexiones sobre la tarjeta
de un LDR.
entrenadora PICAXE-18.

56 CLUB SABER ELECTRONICA


Lo primero que tenemos que hacer es abrir nuestro progra- co que está leyendo
ma llamado “PICAXE Programming Editor” (figura 64) y que el PICAXE.
previamente tuvimos que instalar, y si aún no se tiene, lo pue- El paso siguien-
den descargar de nuestra página de internet www.webelectro- te es verificar qué
nica.com.ar con la clave “picaxe”, o en su defecto también lo valor tiene la varia-
pueden adquirir en la página www.picaxe.uk.co. ble b0 (Fig. 69) pa- Figura 67 - Comando
Una vez dentro del programa editor de los PICAXE, se ra que cuando se “readadc”.
abrirá una ventana en donde se muestran las distintas opciones compare este valor
para utilizar los PICAXE, y en esta ocasión, tenemos que elegir se sepa si existe lumi-
alguno de los PICAXE–18; todo depende de cuál de ellos sea nosidad u oscuridad
con el que contemos. en el medio ambien-
Comenzaremos programando con diagramas de flujo para te. En este caso, te-
aprender a utilizar los distintos comandos, y posteriormente los nemos que seleccio-
convertiremos en código Basic. Así es que tenemos que selec- nar el menú “if” para
cionar el comando que abre la plantilla de trabajo con diagra- ubicar los comandos
mas de flujo. Observe la figura 65. de verificación de
Ya en el ambiente de programación con diagramas de flu- valores; posterior-
jo, lo primero que tenemos que seleccionar en la barra de co- mente, seleccionare-
mandos es el que está identificado con la palabra “other” (fig. mos el comando que
66) ya que ahí es en donde se encuentra la herramienta para está identificado co-
utilizar el comando de lectura del convertidor ADC del PICAXE. mo “var”, ya que es
El comando del ADC está identificado como “readadc” y con éste con el que Figura 68 - Colocación del
lo único que tenemos que hacer es seleccionarlo para poderlo compararemos los comando “readadc”.
colocar en el área de trabajo, y con el comando de selección valores de las varia-
que está identificado con una flecha, le indicaremos en qué en- bles con las que
trada estará ubicada la de valores analógicos. Normalmente, cuenta el microcon-
cuando seleccionamos el comando “readadc”, por defecto se trolador PICAXE.
selecciona la entrada E0, pero recordemos que Figura 70
podemos seleccionar cualquiera de las entra- Diagrama
das E0 ó E1 ó E2 ó las tres al mismo tiempo, de flujo
ya que sólo tenemos que conectarles el corres- completo.
pondiente circuito con el sensor analógico. Re- Figura 69 Co-
cuerden también que dependiendo del tipo de mando que com-
PICAXE–18 (PICAXE – 18 ó 18A ó 18X) serán para el valor de
las entradas analógicas que emplearemos. (Fi- la variable b0.
gura 67).
Para colocar el comando “readadc”, lo
podemos hacer directamente uniendo el extre-
mo superior del bloque del comando “rea-
Figura 71 - Programa
dadc” (Fig. 68) con el del bloque “start”; esta
completo y ventanas
acción la llevamos a cabo para optimizar es-
del simulador.
pacio en el diagrama de flujo, y ahorrarnos la
utilización de la herramienta “wire”.
El comando “readadc” tiene la tarea de
leer el valor de la variable analógica que en
esta etapa se encuentra en su correspondiente
valor de voltaje, y tal como se encuentra expre-
sado en la figura 68, el 0 que se encuentra
después de la palabra readadc indica qué ter-
minal de entrada es la que se está utilizando
con el ADC, y después se encuentra la varia-
ble b0, que es donde se aloja el valor analógi-

CLUB SABER ELECTRONICA 57


Para configurar el comando “var”, tenemos que seleccio-
nar en qué variable se está guardando el dato que será digita-
lizado, y que en esta ocasión se trata de la variable b0. Aho-
ra seleccionaremos el operando “mayor que” para indicarle al
PICAXE que para todos los valores analógicos mayores que de-
terminado valor nos debe reportar una salida verdadera y en-
tonces el flujo lógico se dirigirá a través de la salida identifica-
da como Y. El valor que fijaremos es el de 125, que práctica-
mente representa la mitad del rango total que puede ser digita-
lizado y cuyo valor máximo 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 información
por la salida N del bloque “var”, mandará apagar la lámpara.
Cuando se tienen valores mayores a 125, indicará que la lumi-
nosidad es muy baja, por lo que mandará encender la lámpa-
ra. A la salida identificada como N se le conectará el bloque
“low”, cuya función será la de apagar la salida S0 que es en
Figura 72 - Programa en código Basic.
donde se encuentra conectado el circuito externo que controla
la lámpara, mientras que a través de la salida identificada co-
mo Y se encuentra el bloque “high” que será la encargada de
activar la salida S0 y de esta manera encender la lámpara. El
diagrama de flujo completo se muestra en la figura 70.
En la figura 71 se observa la simulación 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 analógica, observare-
mos cómo en la ventana correspondiente a las variables se irá
modificando la variable b0, que es donde guardaremos el da-
to originado en el ADC. Cuando hemos visto que nuestro dia-
grama de flujo realiza las funciones lógicas que esperamos, en-
tonces estamos en posibilidad de convertir el código a Basic
Figura 73 - Identificación de terminales en los co- (Fig. 72), para posteriormente descargarlo a nuestro PICAXE
nectores mini jack y DB9. por medio de la tarjeta programadora.
En la figura 73 y 74 se muestra la manera de cómo pode-
mos armar nuestro cable de programación o, en su defecto, uti-
lizar un cable serie común y un adaptador como el que se
muestra en la figura 75.
Por último, sobre la tarjeta entrenadora se tiene incorpora-
do un regulador de voltaje identificado como IC2 que posee el
código LM7805, y cuyo cometido es la de proporcionar un vol-
Figura 74 taje constante de 5V para alimentar al microcontrolador PICA-
Cable de
programación.

Figura 75 - Adaptador para


programación.

58 CLUB SABER ELECTRONICA


XE y los módulos auxiliares que tiene incorporados la tarjeta Control de Temperatura con la Tarjeta
programadora. Por medio de la utilización del regulador de Entrenadora del Picaxe-18
voltaje, es posible emplear para energizar a nuestra tarjeta de La temperatura es uno de los parámetros que más se con-
entrenamiento una pila de 9V. trola, ya que desde una simple casa, hasta algún proceso in-
dustrial de una empresa cuenta con este tipo de dispositivos, los
LISTA DE COMPONENTES PARA ARMAR LA cuales pueden ser muy simples o inclusive llegan a ser elemen-
TARJETA CONTROLADORA PICAXE–18. tos muy complejos y avanzados.
En la figura 76 vemos el diagrama esquemático de la tar-
Tarjeta entrenadora PICAXE–18. jeta entrenadora PICAXE-18, con el sensor LM35 integrado a
D1 -Diodo 1N4001 ella.
Rext1 -1 kΩ 1/8 Watt Comercialmente existen medidores de temperatura cuya
RL1 -Relevador 5V función es sólo, mostrar el valor de temperatura, y por otra par-
Q1 - BC548 te también están presentes los controles de algún proceso que
LDR actúan en función del valor de la temperatura. Estos últimos
controles basan su forma de operar en un convertidor analógi-
Varios: Cable de programación o Cable serie y adapta- co - digital, si es que el control es electrónico y digitalizado, y
dor, cables de conexión, batería de 9V. más que mostrar el valor de temperatura, su utilidad principal

Figura 76

CLUB SABER ELECTRONICA 59


Figura 77 ra diseñar un control automático de
temperatura basándonos en nuestro
microcontrolador PICAXE, en el cual fi-
jaremos un valor que servirá de refe-
rencia para saber en qué momento se
deberá activar ó desactivar un equipo
de aire acondicionado, un ventilador
ó un calefactor, etc.
Aquí lo más importante es que de-
bemos 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
centígrados (°C). Otro tipo de sensor
que se puede emplear para leer la
temperatura, sería un termistor que, a
diferencia del LM35, basa su opera-
ción en cambios de valores de resisten-
cia de acuerdo a la variación de tem-
radica en el hecho de realizar tareas como la de controlar de peratura.
manera autónoma la temperatura de una caldera, de una habi- Sea para un sensor que entrega voltaje o para un sensor
tación, de un invernadero, etc. que cambia su valor resistivo, la tarjeta entrenadora del PICA-
En la figura 77 podemos observar las conexiones sobre la XE - 18 contempla la utilización de ambos, y para ello se cuen-
tarjeta entrenadora PICAXE-18. ta con un espacio reservado a cada uno de los sensores. Si se
La temperatura es una de las variables físicas más fáciles y trata del sensor LM35 que entrega voltaje, se tendrá que conec-
económicas de controlar. En casi cualquier negocio de produc- tar en el espacio que se encuentra sobre la tarjeta entrenadora
tos electrónicos encontraremos, por ejemplo, un simple circuito y que se identifica como Pot1. Para ello, se tendrá que retirar
integrado identificado como LM35, que es un sensor electróni- el preset si es que ya había sido colocado, para colocar el sen-
co de temperatura. sor LM35 en su lugar, respetando la ubicación de las termina-
En esta oportunidad vamos a implementar un algoritmo pa- les del voltaje de alimentación (Vcc y GND). El terminal que en-
trega el nivel de voltaje de acuerdo con la temperatura presen-
te, es el AN2, que se tiene que conectar por medio de un pe-
Figura 78
queño cablecillo a cualquiera de las entradas E0 ó E1 ó E2 que
tiene el microcontrolador PICAXE.
Por otra parte, si se emplea un termistor, sólo 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 va-
riaciones de temperatura se conviertan en valores de voltaje en
el terminal AN1, y de igual manera, por medio de un cableci-
llo, se puede conectar esta información a cualquiera de las tres
entradas que posee el convertidor analógico digital del micro-
controlador PICAXE.
En esta ocasión y para este proyecto, utilizaremos el sensor
LM35 para medir la temperatura, y con esta variable física es-
taremos en posibilidad de controlar la temperatura de un recin-
to cerrado, como ser una habitación ó el interior de un vehícu-
lo. Ya vimos en la figura 77 el diagrama del circuito que será
adecuado para complementar la operación de la tarjeta entre-

60 CLUB SABER ELECTRONICA


nadora del PICAXE - 18, como circuitería complementaria a la toda la circuitería comenzará a trabajar de una forma muy de-
tarjeta entrenadora, se observa la conexión del sensor de tem- ficiente y podría, entre otras cosas, comenzar a encenderse y
peratura, que en esta ocasión se trata del circuito integrado apagarse continuamente, provocando que el ventilador se en-
LM35. Por otra parte, también se observa el circuito externo cienda y apague a cada rato.
que activa el ventilador, el cual se encuentra implementado a El valor de voltaje correspondiente con la magnitud de la
través de un amplificador operacional, un transistor y un rele- temperatura estará en el borne del terminal AN2, y de ahí, por
vador, principalmente. medio de un cablecillo, haremos llegar esta información al ter-
En la figura 78 se ve el diagrama de flujo del programa del minal de entrada E0 que configuraremos como entrada para el
PICAXE. El sensor de temperatura LM35 proporciona un valor convertidor analógico - digital del microcontrolador PICAXE.
de voltaje que está de acuerdo con la magnitud de temperatu- Para controlar el encendido o apagado del ventilador, utiliza-
ra que se encuentre en el recinto donde esté instalado. De remos el terminal S0 de la tarjeta entrenadora, que también co-
acuerdo con el fabricante, su rango de operación va de 0V a rresponde a un terminal de salida del PICAXE.
1.5V, que equivale a 0°C y 150 °C, respectivamente, y a ca- En la figura 79 se ve la simulación del programa.
da cambio de 1 °C, el valor de voltaje cambia en 10mV. Por Para comenzar a programar al microcontrolador PICAXE,
lo tanto, es muy fácil saber qué valor de temperatura está mi- primero describiremos qué es lo que pretendemos en cuanto a
diendo al saber el valor de voltaje que entrega el sensor. Por la forma de operación de esta aplicación, o sea:
ejemplo, cuando se tenga un valor de 35 °C, se tendrá un va- El sensor de temperatura se encontrará leyendo de manera
lor de 350mV. continua la magnitud de la temperatura, que se hará llegar a
La forma de emplear el sensor LM35 y el circuito exterior un canal del convertidor analógico - digital del microcontrola-
se ilustra puede verlo nuevamente en la figura 77. En ella se dor PICAXE. Este último, de acuerdo con el programa (es lo que
aprecia que se puede utilizar un ventilador que puede poseer vamos a realizar a continuación), activará una de sus salidas
un motor tanto de CA como de CD. Esto es posible, ya que es- para controlar la bobina de un relevador.
tamos empleando un relevador como elemento de interfaz en- Para controlar el apagado o encendido de la bobina del
tre la etapa de control y la de potencia. La bobina del releva- relevador, se requiere lo siguiente: por medio de un “0” lógico
dor está siendo controlada por un amplificador operacional, se apagará la salida S0; por lo tanto, la bobina del relevador
que es el dispositivo que servirá de protección entre la salida se desenergizará, mientras que un “1” lógico en la misma sali-
del microcontrolador PICAXE y la bobina del relevador. El am- da S0 provocará que la bobina del relevador se energice. Una
plificador operacional, entre otras cosas, tiene la propiedad de vez que ya sabemos de qué manera tiene que operar el micro-
no demandar corriente del terminal de salida del PICAXE, y por controlador PICAXE, procedemos a explicar la realización del
ello no se sobrecargue. La configuración en la que se encuen- programa.
tra el amplificador operacional se llama seguidor de voltaje, y En desarrollos anteriores hemos comenzado esta parte de la
en ella el voltaje de entrada es exactamente igual al que está aplicación con las siguientes palabras, “lo primero que tenemos
entregando. Por lo tanto, como el PICAXE le entrega 5V al se- que hacer es abrir nuestro programa llamado “PICAXE Program-
guidor de voltaje cuando su salida esté activada, la salida del ming Editor”. Por lo tanto, nuevamente hacemos la indicación
amplificador operacional también será de 5V pero casi sin de- de que pueden descargar el software de nuestra página de inter-
mandarle corriente al PICAXE. Posteriormente, la salida del se- net si es que aún no lo tienen, la página es www.webelectroni-
guidor de voltaje se hace llegar a un transistor 2N2222 (de ca.com.ar y empleen la clave “picaxe”, en su defecto, también
propósito general), que es el que se encarga de manejar toda lo pueden adquirir en la página www.picaxe.uk.co.
la corriente que demandará la bobina del
relevador cuando éste necesite ser activa-
do. El transistor le ayuda al amplificador Figura 79
operacional a que no se caliente cuando
circule una corriente muy alta. Es recomen-
dable que la fuente que energice la bobina
del relevador sea independiente de la que
energiza a la tarjeta entrenadora del PICA-
XE - 18, ya que cuando el relevador se ac-
tiva, éste demanda una corriente muy gran-
de, y si empleamos el mismo regulador de
voltaje que posee la tarjeta entrenadora, és-
te podría sobrecalentarse demasiado, hasta
tal punto que puede llegar a bloquearse y

CLUB SABER ELECTRONICA 61


Recuerden que al ingresar en el programa lo primero que Por lo tanto:
se abrirá será una ventana, de la cual, en la pestaña opciones,
seleccionarán el PICAXE que será utilizado para el proyecto, se 250mV
puede emplear cualquier microcontrolador PICAXE, ya que la Comb. binaria = ----------------------- = 12.75 ≈ 13
estructura del programa es válido para cualquiera de ellos, pe- 19,6mV
ro recuerden que tenemos microcontroladores de 8, 18, 28 y
40 terminales; por lo tanto, las terminales de salida y de entra- El valor de 13 ahora lo tenemos que convertir a su corres-
da cambian de posición y cantidad de acuerdo al PICAXE que pondiente valor binario de 8 bits, quedando como sigue:
se vaya a utilizar. Cuando empleamos un convertidor analógi- 00001101.
co - digital (ADC), lo primero que tenemos que hacer es calcu- Este último valor binario es el que tomaremos como base
lar su resolución y para ellos nos basamos en la fórmula Nº1. para realizar la comparación de los diferentes valores de vol-
taje que tienen una correspondencia directa con el valor de
Resolución = Valor del rango temperatura, y entonces, para cualquier valor por debajo de
---------------------------------- 00001101 (13), se desactivará el ventilador, mientras que pa-
2N - 1 ra cualquier valor por arriba de 00001101 se tendrá que en-
cender el ventilador. Por lo tanto, de la figura 78 observe que
En este caso el valor del rango es el que tiene la entrada después de tomar un dato, digitalizarlo y almacenarlo de ma-
del ADC del PICAXE, que es de 5V. La variable N representa nera temporal en la variable b0, se realiza una comparación
la cantidad de bits que posee el ADC, que en este caso es de del valor guardado en b0 con el valor de referencia que es 13,
8; por lo tanto, la expresión anterior queda como sigue: siendo el operador empleado en esta comparación el de un ›
(mayor que), para saber en qué momento el valor de la tempe-
5 5 ratura sobrepasa la magnitud de 25 °C, tal como se encuentra
Resolución = --------------------- = ----------------------- = expresado en el diagrama de flujo de la figura 78.
28 - 1 256 - 1 El programa es muy simple ya que tan sólo se trata de leer
un dato analógico y guardarlo en una localidad de memoria
= 0.0196V = 19.6mV RAM. El comando para realizar la lectura del dato analógico
es el que está identificado como “readadc” y se encuentra en
Con este dato ya sabemos que con cada cambio de el bloque identificado como “other” en la página principal del
0.0196V que exista en el ADC, se tendrá el incremento de un programa “Programming Editor”.
bit en un conteo a base de 8 bits. Por otra parte, y recordando Para configurar este comando se le tiene que asignar en
que el sensor LM35 trabaja en el rango de 0 °C a 150 °C cu- cuál de las entradas que posee el microcontrolador PICAXE se
yos valores equivalen a 0V y 1.5V, respectivamente, por razo- estará empleando el ADC, además de indicarle en cuál varia-
nes obvias no será empleado todo el rango de trabajo del ADC ble (localidad de memoria RAM) se alojará el dato digitaliza-
del PICAXE, ya que la temperatura ambiente, por ejemplo en do. Posteriormente, para comparar el dato que se obtiene des-
un lugar extremo, es de hasta 55 °C, y ya estamos hablando pués de la digitalización se toma de la localidad de memoria
de un desierto. Para este desarrollo el valor de temperatura que este valor y se compara con el valor 13 (00001101) que ya
nos interesa es el de 25 °C, ya que por debajo de este valor po- fue explicado anteriormente.
demos considerar que la temperatura es agradable, pero por El comando para realizar la comparación es un rombo y se
encima de este valor consideraremos que hace demasiado ca- encuentran en la página principal dentro del bloque “if”. De
lor, por lo que tenemos que encender el ventilador (este nivel de aquí, si el valor de la variable es mayor que el dato 13, enton-
temperatura se puede ajustar a las preferencias de las personas ces se interpretará como que la temperatura se encuentra por
o los lugares). Para la temperatura de 25 °C se tiene un valor arriba de 25 °C, y; por lo tanto, encenderemos la salida S0 del
de voltaje equivalente a 250mV; por lo tanto, tenemos que sa- PICAXE para que se observe esta acción mediante la activa-
ber qué número binario será el resultante una vez que es ingre- ción del ventilador.
sado al ADC del PICAXE. Para ello, emplearemos el valor de la En la figura 79 se muestra la simulación del ADC, obser-
resolución y el del valor analógico (Va) que tendremos que digi- vándose en ella las ventanas donde se muestra el estado de las
talizar. Por lo tanto, Va = 250mV, y para calcular la combina- entradas, las salidas y las variables temporales.
ción binaria tenemos la siguiente expresión matemática: En la figura 80 publicamos el programa en código Basic.
Una vez que el diagrama de flujo ya se encuentra operan-
Comb. binaria = Valor Analógico (Va) do completamente, el paso siguiente será el de convertir el có-
-------------------------------------––– digo a basic, y posteriormente descargarlo al PICAXE instalado
Resolución en la tarjeta programadora.

62 CLUB SABER ELECTRONICA


Aunque ya lo hemos mostrado anterior-
mente, en la figura 81 nuevamente mostra-
mos la manera de cómo podemos armar el Figura 80
cable de programación con la identificación
de terminales en los conectores mini jack y
DB9.
Aún nos falta desarrollar una gran can-
tidad de ejercicios, razón por la cual los in-
vitamos a que sigan esta serie de ejemplos
de utilización y consejos de programación.

LISTA DE COMPONENTES PARA ARMAR LA


TARJETA CONTROLADORA PICAXE-18 cederemos a explicar en primera instancia el circuito que se
empleará con los displays de 7 segmentos, el cual incluye un
Tarjeta entrenadora PICAXE-18. total de 3 displays de cátodo común.
D1 - Diodo 1N4001 El circuito de los displays recibe el nombre de “Display de
Rext1 - 5.6kΩ 1/8W 3 dígitos” cuya publicación complementaria se realizó en la re-
Rext2 - 390Ω 1/8W vista Saber Electrónica Nº 220 Edición Argentina. El principio
RL1 Relevador de operación es muy básico: se le hacen llegar 4 bits que son
Q1 - 2N2222 los que generan el código BCD, además de 3 bits que son los
Sensor LM35 que indican qué número es el que se estará desplegando, esto
es, se controla el encendido del display correspondiente con las
Varios: Cable de programación, ó Cable serie y adapta- unidades, decenas o centenas.
dor, cables de conexión, batería de 9V. Si se requiere mostrar el valor “578” entonces se requiere
enviarle al circuito del “Display de 3 dígitos” la combinación
“1000” (8) y después el bit que enciende el display de la uni-
Programa para Desplegar Números BCD dades, después se tiene que enviar el “0111” (7) posteriormen-
con la Tarjeta Entrenadora del Picaxe-18 te 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
En muchas ocasiones y para la mayoría de las aplicacio- enciende el display de las centenas. Este proceso se tendrá que
nes que desarrollamos sobre un microcontrolador, tenemos que repetir muchas veces, dando la impresión de que siempre están
mostrar algún resultado sobre un display, que bien puede ser encendidos los displays.
de segmentos o de LCD, por lo que es nece-
sario saber de qué manera se desplegará la
información sobre las salidas que se tienen Figura 81
reservadas en un microcontrolador PICAXE.
Si nos ponemos a contabilizar todo el
conjunto de información que tiene que salir
por el puerto correspondiente de algún micro-
controlador para manipular un display, nece-
sitaríamos de una gran cantidad de líneas que
se reserven para ese uso exclusivo. De hecho,
no alcanzarían todas las líneas que tuviera
disponible el microcontrolador, razón por la
cual tenemos que emplear una técnica que
nos ayude a solucionar este problema.
En este ejemplo haremos uso de displays
de 7 segmentos, para así aprender a enviar-
les la información a éstos.
La técnica que emplearemos es la de mul-
tiplexación de la información, por lo que pro-

CLUB SABER ELECTRONICA 63


Lo que se pretende con estas instrucciones es adquirir el co- riores, la información que será desplegada de alguna mane-
nocimiento de cómo se tiene que generar la información en un ra ya fue adquirida o procesada por el microcontrolador, por
microcontrolador PICAXE, para que, posteriormente, ésta sea lo que la única tarea que se tiene es la de mostrarla a través
enviada a las terminales de su puerto de salida. Por lo tanto, y del display.
de acuerdo a la descripción anterior, que se hizo de la mane- Supongamos que se requiere desplegar la información
ra cómo funciona el circuito auxiliar denominado “Display de “246” a través del display; por lo tanto, en primera instancia
3 dígitos”, se tiene lo siguiente: se tiene que leer el dato de una localidad de memoria tempo-
De alguna manera, ya debemos contar con datos, que tu- ral donde fue alojado para su posterior utilización. El dato a
vieron que ser adquiridos previamente por algún proceso por ser desplegado lo debemos seccionar en tres partes, para su
el microcontrolador PICAXE (por ejemplo la lectura a través del mejor manejo; por ello, se tiene que el número cuenta con las
convertidor ADC descrito anteriormente en esta serie). Una vez siguientes partes: unidades, decenas y centenas, por ser 3 las
procesados estos datos, de acuerdo con nuestra aplicación, cifras que componen al número total. En esta ocasión y como
puede ser muy importante desplegar un dato numérico, porque sugerencia, el dato de las unidades se encontrará ubicado en
a lo mejor estamos diseñando un voltímetro digital, por ejem- la localidad de memoria temporal representada por el registro
plo. del microcontrolador PICAXE b0, el dato de las decenas se en-
En la figura 82 vemos la tarjeta entrenadora PICAXE-18 y contrará en el registro b1 y las centenas en el registro b2.
la tarjeta del Display de 3 dígitos. Se muestra la manera de co- En el programa que se va a describir, observe la figura 83.
nectar el circuito auxiliar “Display de 3 dígitos” a la tarjeta en- Los primeros bloques muestran la manera de cómo se guarda
trenadora, por lo que ahí se observan las líneas de conexión un dato en los registros antes mencionados (b0, b1 y b2). Este
entre los terminales de salida del puerto de la tarjeta entrena- fragmento del programa puede omitirse o reemplazarse total-
dora que van hacia las terminales de entrada del circuito auxi- mente, dependiendo de la aplicación, y nuevamente recorda-
liar. Cabe aclarar que ésta es tan sólo una sugerencia de có- mos que esta parte del programa es para uso específico de es-
mo hacerlo, ya que cada uno puede realizar las conexiones de ta aplicación. En la figura 83 vemos los bloques de asignación
la mejor manera posible y así optimizar los recursos de la tar- de valores a los registros b0, b1 y b2.
jeta entrenadora. El comando “let” permite la asignación de valores a varia-
Sobre la misma figura 82 no se hace mención de la cone- bles. Esta asignación se puede dar de una forma directa como
xión de la energía al display de 3 dígitos, pero ésta se pue- está expresado en esta aplicación, o también se puede efectuar
de tomar de los terminales disponibles sobre la tarjeta entre- la asignación del resultado de una operación aritmética (+, -,
nadora que tienen la identificación de +5V, y hacer llegar es- *, /) ó por el resultado de una operación lógica (and, or, ne-
te voltaje al borne identificado como +Bat. Una vez descrita gación, etc.). En este ejercicio se está empleando el comando
la disposición de la circuitería, procedemos a explicar el de- de asignación de manera directa sobre los registros para alo-
sarrollo del programa del microcontrolador PICAXE. Para es- jar los valores que corresponden a las unidades, decenas y
ta explicación, como ya se había establecido en líneas ante- centenas en b0, b1 y b2, respectivamente.

Figura 82

64 CLUB SABER ELECTRONICA


Se mencionó en líneas anteriores que en
Figura 86 esta aplicación solamente se desplegará la in-
formación que se encuentre contenida en los
registros b0, b1 y b2. Para un programa de un
proceso completo, de alguna manera estos re-
gistros tendrán que ser manipulados; por lo
tanto, consideramos que esa actividad ya se
realizó y los datos ya se encuentran en los re-
gistros antes mencionados. Como siguiente pa-
so, procedemos a la acción de enviar cada
una de las cifras del número completo a los dis-
Figura 83 plays y que en esta ocasión se trata del valor
“246”, por lo que comenzamos con el armado
de la información que será enviada al puerto
de salida del microcontrolador PICAXE. La pri-
mera cifra que sufrirá la manipulación es la co-
rrespondiente a la de las unidades, razón por
la cual, en primera instancia, emplearemos un
nuevo registro, el “b3”. Ahí alojaremos un da-
Figura 84 Figura 85
to de manera directa a través del comando de
Antes de continuar con la explicación del desarrollo del asignación “let”, tal como se ilustra en la figura 84. El valor que
programa, regresemos por un instante al circuito de la figura se está guardando en
82 para saber de qué manera están organizados los datos que el registro b3 es el TABLA 2
salen por el puerto de salida del microcontrolador PICAXE, ya 16(10) que equivale a
Número BCD Número
que así será más sencillo seguir el desarrollo del programa. la combinación bina-
En la figura 82 también se muestra la forma de conectar el ria 0010000(2), que (S3,S2,S1,S0) Decimal
display a la tarjeta entrenadora y del circuito se observa lo si-es precisamente la que 0000 0
guiente: las terminales de salida S0, S1, S2 y S3 representan controla el encendido 0001 1
los 4 bits que generan las diferentes combinaciones BCD (Bi- del display de la uni-
0010 2
nary Code Decimal o en español Código Binario Decimal) de dades. Posteriormente,
acuerdo con la tabla 2. De ésta, que contiene los números BCD para enviar la informa- 0011 3
y su equivalente decimal, podemos obtener el peso específico ción completa al puer- 0100 4
de cada uno de los bits que generan el valor numérico BCD, to de salida del PICA- 0101 5
siendo S0 el bit menos significativo (bms), mientras que S3 re- XE, se hace uso nueva-
presenta el bit más significativo (BMS). Esta información BCD mente del comando de
0110 6
se hace llegar a los 3 displays al mismo tiempo, razón por la asignación “let”, pero 0111 7
cual se tiene que indicar cuál de estos displays estará activo deen esta ocasión el re- 1000 8
acuerdo con la cifra que se quiere desplegar, ya que de otra sultado de esta asigna-
1001 9
manera los 3 se encenderán con la misma in-
formación. La solución a lo anteriormente
Tabla 3 - Activación y desactivación 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 termina-
les S4, S5 y S6 corresponden al control de 000 Apagado Apagado Apagado
las cifras de las unidades, decenas y cente- 001 Apagado Apagado Encendido
nas respectivamente, de acuerdo con la in- 010 Apagado Encendido Apagado
formación que se encuentra en la tabla 3. 100 Encendido Apagado Apagado
Una vez que hemos visualizado la ma-
nera en cómo se encuentra ordenada la in- Tabla 4 - Resultado de la operación lógica OR entre los registros b0 y b3.
formación del puerto de salida del microcon- S7 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 envían los datos b3 0 0 0 1 0 0 0 0
al circuito del display de 3 dígitos. pins 0 0 0 1 0 1 1 0

CLUB SABER ELECTRONICA 65


ción la enfocaremos directamente a los terminales de salida, b3, además de los terminales de salida del PICAXE. Estos son
por lo que se selecciona, después del comando “let”, el desti- los bloques que se han implementado hasta este momento, y
no “pins”, ahora tenemos que unir el dato que se encuentra en que controlan el encendido del display de las unidades.
el registro b0 (unidad cuyo valor es 6) con el que se encuentra Como paso siguiente al envío de la información para en-
en el registro b3 (control del encendido del display de la uni- cender el display de las unidades, ahora se tiene que proseguir
dad), por lo que empleamos el operador lógico conocido como con el dato correspondiente a la siguiente cifra significativa,
OR, cuyo símbolo es “|”. El resultado de la operación lógica que es la decena, recordando que el valor numérico que se
se da de la manera como se ilustra en la tabla 4. quiere desplegar es el “246”. Por tanto, continúa el turno del
En la figura 84 se muestra el bloque que genera la opera- valor 4. Para ello, a través del registro temporal b3, almacena-
ción lógica OR y cómo el resultado es enviado a los terminales remos la información correspondiente al encendido del display
de salida del microcontrolador PICAXE. De esta forma, aunque de las decenas. En este registro alojaremos nuevamente un da-
el valor numérico 6 está llegando al mismo tiempo a los 3 dis- to de manera directa, utilizando el comando de asignación
plays, sólo se encenderá el que tiene la cifra significativa de las “let”, tal como se ilustra en la figura 86. El valor que se estará
unidades, mientras que los otros 2 displays (decenas y cente- guardando en el registro b3 es el 32(10) que equivale a la
nas) permanecerán apagados. combinación binaria 00100000(2), que es precisamente la
En la figura 84 que controla el encendido del display de las decenas.
vemos los bloques de En la figura 86 vemos el bloque de control de los displays
asignación de valores de las unidades, y decenas. Para complementar la información
al registro b3 y termi- que será enviada al puerto de salida del microcontrolador PI-
nales de salida del PI- CAXE, hacemos uso, una vez más, del comando de asignación
CAXE. “let”, dirigiendo el resultado directamente a las terminales de
En la figura 85 salida del PICAXE, por lo que en el comando “let” marcamos
vemos los bloques de el destino a donde dirigiremos la información: los terminales
asignación a los re- denominados “pins”. Posteriormente, para unir el dato que se
gistros b0, b1, b2 y 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 lógi-
co conocido como OR (O en español), cu-
yo símbolo ya lo habíamos expresado y es
“|”.
El resultado de la operación lógica se
ilustra en la tabla 5.
En la figura 86 se muestran los blo-
ques correspondientes al control de los dis-
plays de las unidades y las decenas, lo
que nos da la posibilidad de mostrar el da-
to “46”, faltando tan sólo el control del dis-
Figura 87 - Diagrama de flujo completo.
play de las centenas. A continuación lo ex-
plicamos.
Por último, corresponde controlar la
Tabla 5 - Resultado de la operación lógica OR entre los registros b1 y b3.
tercera cifra significativa que es la cente-
S7 S6 S5 S4 S3 S2 S1 S0
na. El valor numérico que falta por desple-
b1 0 0 0 0 0 1 0 0
gar es el “2”. Para ello, en el registro tem-
B3 0 0 1 0 0 0 0 0
poral b3 almacenaremos la información
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 operación lógica OR entre los registros b2 y b3. de asignación “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 combinación 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.

66 CLUB SABER ELECTRONICA


Figura 88

Como ya se ha explicado detalladamente la forma de có-


mo se arma el dato que será enviado al puerto de salida del PI-
CAXE, procederemos a controlar el display de las centenas de
una manera más simplificada que las anteriores cifras significa-
tivas.
Por medio del comando “let” uniremos el dato que se en-
cuentra en el registro b2 (centenas cuyo valor es 2) con el que
se encuentra en el registro b3 (control del encendido del dis-
play de las centenas), empleando el operador lógico OR. El re-
sultado de la operación lógica se ilustra en la tabla 6.
En la figura 87 se muestran los bloques completos del con-
trol de los 3 displays que corresponden al de las unidades, de-
cenas y centenas, por lo que ahora sí contamos con el poder Figura 89 - Identificación de terminales en
de mostrar cualquier número completo de 3 cifras. los conectores mini jack y DB9.
Con lo expuesto anteriormente, ya estamos en posibilidad
hemos publicado en reiteradas ocasiones, nuevamente mostra-
de diseñar una aplicación en la que esté involucrado un tecla-
mos la manera de armar el cable de programación, o en su de-
do y un display para desplegar los datos que se van generan-
fecto, utilizar un cable serie común y un adaptador que ya he-
do. También ya hemos revisado cómo trabaja el convertidor
mos descrito varias veces y que volvemos a mostrar en la figu-
analógico a digital (ADC).
ra 89. Sobre esta tarjeta entrenadora para un PICAXE - 18 se
Sólo nos falta procesar la información para mostrarla en
tiene la posibilidad de desarrollar un sinnúmero de proyectos,
los displays, para que de esta manera diseñemos, por ejemplo,
los cuales iremos abordando poco a poco.
un voltímetro digital, proyecto que en breve publicaremos. Re-
cuerden que necesitamos del programa llamado “PICAXE Pro-
gramming Editor”, por lo que nuevamente hacemos la invita- LISTA DE COMPONENTES PARA UTILIZAR
ción de que lo descarguen de nuestra página de internet, que LA TARJETA CONTROLADORA PICAXE-18.
es www.webelectronica.com.ar y empleen la clave “picaxe”;
en su defecto, también lo pueden adquirir en la página www- Tarjeta entrenadora PICAXE-18.
.picaxe.uk.co. Módulo Display de 3 dígitos
Una vez que ya se tiene el programa en Basic (figura 88),
descargamos el programa al microcontrolador PICAXE que se Varios: Cable de programación, ó cable serie y adapta-
encuentra instalado en la tarjeta programadora. Aunque ya lo dor, cables de conexión, batería de 9V.

CLUB SABER ELECTRONICA 67


Cerradura Electrónica empleando la Tarjeta der acceder, y el actuador, que es un solenoide que funciona a
Entrenadora PICAXE-18 manera de pasador y que es el que atora una puerta.
En esta ocasión emplearemos la tarjeta entrenadora del mi-
Existen diversas maneras de diseñar una cerradura electró- crocontrolador PICAXE-18, ya que a su vez utilizaremos un te-
nica, pero la constante que es común en todas es que deben clado matricial de 4 X 4, y el PICAXE-08 no tiene el suficiente
asegurarnos la seguridad de ya sea un cuarto cerrado, una bó- número de terminales de entrada y salida.
veda, una zona ó un área completa; por lo tanto la cerradura El aspecto más importante que debemos tomar en cuenta y
se puede colocar desde una casa habitación, hasta un banco, que emplearemos en este proyecto es principalmente la de leer
un negocio, empresa o un centro comercial (figura 90). el teclado matricial, ya que es por medio de este que ingresa-
Los elementos importantes de toda cerradura electrónica remos uno a uno los caracteres que conforman la clave de ac-
son el teclado, que es por donde se le ingresa la clave para po- ceso de la alarma.
El teclado será como el que se
muestra en el diagrama esquemático
de la figura 91.
De hecho, por obvias razones es
lo único que será visible de la cerra-
dura electrónica, ya que lo demás, la
tarjeta entrenadora PICAXE-18 y el so-
lenoide deben permanecer ocultos.
Realmente el circuito que se pro-
pone es muy simple, y esto se debe a
que la cerradura electrónica es un
bloque muy compacto, que inclusive
puede ser instalando dentro de una
caja del mismo tipo que las emplea-
das 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 entrenado-
ra del PICAXE-18, como el teclado
Figura 90 - Puerta protegida por una cerradura electrónica matricial, además de los dispositivos
electrónicos complementarios.
La forma de operar de la cerradura electrónica es la si-
guiente: La cerradura se basa principalmente en la lectura del
teclado matricial, por lo que se emplean 4 salidas del micro-
controlador 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 em-
pleo de otras 4 terminales del PICAXE, pero ahora serán termi-
nales de entrada siendo las terminales E0, E1, E2 y E6 las que
se dedican a dicha labor.
Para que se tenga una buena referencia eléctrica de la in-
formación 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
electrónica, será necesario enviar una señal que active un sole-
noide para que abra (desatore) el cerrojo de una puerta, para
ello se emplea la salida S4 del microcontrolador PICAXE-18, y
Figura 91 - Diagrama esquemático de la tarjeta entre- para 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

68 CLUB SABER ELECTRONICA


Figura 92 - Conexión de la cerradura electrónica

ser energizada por medio de la salida antes mencionada (S4).


Como se sabe, la bobina de un relevador es clasificado como
Figura 93 - Teclado matrical y la definición de sus teclas
elemento de potencia, y ninguno de éstos (aunque se trate de para la cerradura electrónica
un led) debe ser alimentado directamente por la salida de un
microcontrolador cualquiera que este sea. Por lo tanto para la salida S3. Lo que es importante tomar en cuenta es que si en
activar la bobina del relevador se emplea un amplificador ope- una salida se tiene un “1” lógico, las 3 terminales restantes se
racional, en la configuración de seguidor de voltaje, el resistor fijarán con un “0” lógico. El “1” lógico tiene que ser enviado
identificado como Rext2 tiene la tarea de colocar una referen- sólo uno a la vez, para que de esa manera se sepa que fila es
cia de voltaje a GND en la entrada del seguidor de voltaje, y la que se está activando.
para manejar la corriente que demanda la bobina finalmente Una vez que el “1” lógico se encuentra en el teclado ma-
se tiene un transistor (Q1), y por último un diodo identificado tricial, ahora sólo tenemos que esperar a que sea presionada
como D1 cuya función es la de eliminar la fuerza contra-elec- una tecla y dependiendo de la que sea oprimida, se regresara
tromotriz que produce la bobina del relevador. Las termina- a una de las terminales de entrada el “1” lógico que previa-
les del contacto del relevador que será empleado para activar mente se envió a través de una salida del PICAXE (S0, S1, S2
ó desactivar al solenoide se identifican como TerSol1 y TerSol2, ó S3).
entre estas terminales puede utilizarse un solenoide ya sea pa- Recordemos que las terminales de entrada que se utilizarán
ra voltaje de corriente directa (CD) como para voltaje de co- son E0, E1, E2 y E6, que respectivamente corresponden a las
rriente alterna (CA), por lo que dependiendo del tipo de ener- columnas 0, 1, 2 y 3.
gía se tiene que hacer llegar ésta al contacto del relevador. En el teclado matricial cuando es presionada una tecla, se
Después de explicar cuál es el circuito que será empleado cierra un interruptor que interconecta una fila con una columna,
para nuestra cerradura electrónica, ahora procederemos a de- es por ello que solo se envía un “1” lógico a la vez a la fila co-
sarrollar el programa para que el microcontrolador PICAXE-18 rrespondiente, porque ese “1” lógico se reflejara en una colum-
realice la función de la cerradura. na que es en donde se oprime el botón del teclado matricial.
Para comenzar con el programa en primera instancia expli- Si fueran enviados mas de “1” lógico a la vez, no se tendría
caremos cuál es el algoritmo sobre el que trabaja la lectura del control de que botón fue el que se oprimió.
teclado matricial, para ello se emplean las salidas S0, S1, S2 En la figura 93 se muestra el teclado matricial y la identifi-
y S3 y a cada una de las salidas se tendrá que enviar un “1” cación de sus teclas, para poder ingresar los datos que se re-
lógico a la vez, mientras las 3 restantes se fijan con un “0” ló- quieren y se pueda validar alguna clave de acceso. En esta
gico. Esos “1's” lógicos se hacen llegar al teclado matricial, ocasión del teclado matricial de 4X4 solo serán empleadas 3
y en él se van activando cada una de sus filas, y así tenemos de sus 4 columnas, pero eso no quiere decir que no se pueden
que para activar la fila F0 se tiene que enviar un “1” lógico a utilizar todas sus teclas, ya que aparte de los números se pue-
través de la salida S0, posteriormente tenemos que enviar un den implementar las funciones de “borrar”, “validar”, etc.
“1” lógico por la salida S1 para que sea activada la fila F1, y En la tabla 7 se muestra cuál es la combinación de fila y
así sucesivamente hasta llegar a la fila F3 que corresponde con columna que se presenta cuando una tecla es oprimida.

CLUB SABER ELECTRONICA 69


Tabla 7 - Combinación de filas y columnas
C0 = E0 C1 = E1 C1 = E1 C3 = E6
FO=S0 1 2 3 NI
F1=S1 4 5 6 NI
F2=S2 7 8 9 NI
F3=S3 * 0 # NI

NI - No Implementado.

A continuación vamos a explicar el programa con el que se que genere el interruptor que se oprima del teclado, una vez
hace trabajar al microcontrolador PICAXE, teniendo el progra- que termina el tiempo de 10 mseg, podemos dar por hecho
ma la misma base de operación que la propuesta para contro- que si fue oprimida una tecla, ésta ya se estabilizó y por lo tan-
lar al teclado matricial. to ahora se puede saber que tecla fue la que se acciono, por-
que como ya se explicó en la parte de la electrónica del circui-
to de la cerradura electrónica, una vez que se activa una fila
del teclado matricial, es a través de la columna que sabemos
qué tecla se oprimió.
Es por ello que se pregunta por cuál terminal de entrada se
recibe un “1” lógico (si es que se oprimió una tecla). Recorde-
mos que pueden ser posibilidades las que nos reporten la posi-
ble identificación 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 explicó en líneas anteriores que lo que se tie-


ne que ir haciendo es activar cada fila una por una, por lo tan-
to, se tiene que comenzar de la primera, o sea la fila 0. Pa-
ra ello a través del comando “let pins=1” se envía un “1” lógi-
co a la salida S0 del microcontrolador PICAXE y que correspon-
de con la fila 0. Como paso siguiente se produce un retardo o Figura 95 - Fragmento del diagrama de flujo que activa
espera de 10 mseg, tiempo suficiente para eliminar el rebote la fila 1 del teclado matricial.

70 CLUB SABER ELECTRONICA


guardando, se emplea la variable “b13” que se es quien a tra-
vés de un contador se lleva el control de la posición del dígito
que integra la clave de la cerradura electrónica. En este
ejemplo se tiene una clave de 4 dígitos, por lo tanto dependien-
do del dígito que se este buscando, será el valor de la variable
b13, y por lo tanto llegará hasta máximo un valor de 4.
Básicamente cuando se pasa a la activación de la fila 1, el
proceso es el mismo que para la fila 0, solo que en esta opor-
tunidad, la salida que se activará será la identificada en el mi-
crocontrolador PICAXE como S1 y que corresponde con la fila
1, haciéndose esta operación por medio del comando “let
pins=2”. De igual manera para evitar los rebotes mecáni-
cos de los interruptores del teclado matricial, es empleado un
retardo (comando “pause 10”) de 10 mseg. Acto seguido de-
pendiendo en que columna se encuentra la tecla que se opri-
ma, será por donde se reciba el correspondiente “1” lógico a
través de la terminal de entrada, solo que en esta ocasión 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 identificación de las teclas “1”, “2” y “3” que


corresponden con las columnas 0, 1 y 2, y que a su vez se re-
cibe la información a través de las entradas 0, 1 ó 2. Es
por ello que si una condición es valida en los comandos “if” del
fragmento del diagrama de flujo de la figura 94, dependiendo
cuál entrada se esté comparando se le asignará a la variable
“b0” el valor correspondiente con la tecla que ha sido identifi-
cada (si es que ésta fue presionada). Una vez que fue presio-
nada una tecla entonces se procede a guardar el valor de la te-
cla en la localidad que le corresponde, esto es, si la clave pa-
ra abrir la cerradura es de 4 dígitos, se guardara el valor de
la tecla en la posición correspondiente, digito 1 digito 2 o di-
gito 3 ó digito 4, esto se hace en un paso posterior emplean-
do el salto identificado como un 1 encerrado en un circulo.
Si ninguna tecla de la fila 0 es accionada, entonces el re-
sultado de los comandos “if” de la figura 94 darán como resul-
tado una acción 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 ence-
rrado en un circulo, y por lo tanto ahora se estará activando la
fila 1, tal como se ilustra en la figura 95. Figura 97 - Fragmento del diagrama de flujo que activa la
Para llevar un control sobre qué dígito de la clave se esta fila 3 del teclado matricial.

CLUB SABER ELECTRONICA 71


ó E2. Si fue presionada una tecla de la fila 1, se procederá a tecla que fue encontrado previamente, el dato antes de ser alo-
guardarla en el registro correspondiente dependiendo de la po- jado adecuadamente se encuentra en una variable temporal y
sición del dígito que se esta buscando. En caso de que no se se trata de la variable “b0”. Si el digito que se esta buscando
oprima tecla alguna de la fila 1, entonces se pasara a buscar es el primero, entonces su valor será alojado en la variable
si en la fila 2 es en donde se presione una tecla. “b1”, o en la variable “b2” si se trata del segundo dígito, y así
La operación que se realiza para las filas 0 y 1 es la mis- sucesivamente hasta completar los 4 dígitos.
ma que se utiliza para las filas 2 y 3, pero buscando que se Si el valor de b13 es menor que 4, entonces una vez que
oprima cualquiera de las teclas 7, 8 ó 9 para la fila 2, ó las te- se ha guardado el valor de la tecla, se incrementa en una uni-
clas *, 0 ó # para la fila 3, de acuerdo a como se observa en dad el valor de b13, mientras que si después de guardar el va-
las figuras 96 y 97 correspondientemente. lor del cuarto dígito (recordemos que la clave propuesta es de
En la fila 3 las teclas * y # las relacionamos con un valor 4 dígitos), entonces el paso siguiente es el de corroborar que
digital que son el 255 para * y 254 para #, por lo tanto aun- la clave es valida, por lo tanto se compara dígito por dígito con
que no se trate de un valor numérico, podemos relacionar cual- respecto a un valor previo que fue almacenado. En caso de que
quier acción que queremos que haga una tecla con un identifi- la clave no sea la “buena”, entonces se limpian los registros de
cador para que al final se tenga la posibilidad de tener varias los dígitos de la clave y nuevamente nos vamos a recorrer la fi-
opciones para fijar en un teclado matricial. la 0 del programa. En esta ocasión la clave preestablecida es
Por último, en la figura 98 se muestra que dependiendo del la dada por la siguiente secuencia de dígitos”4321”.
valor que tenga la variable “b13”, será alojado el valor de la 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.

preestablecida, entonces como paso siguiente se procede a re- let pins = 2 ' %00000010
correr el cerrojo de la puerta, haciéndose esta acción por me- pause 10
dio de la salida 4 que es por medio de ésta que se activa al if pin0=1 then label_A3
solenoide. La salida 5 también es activada para que un indi- if pin1=1 then label_9C
cador luminoso nos avise que la cerradura electrónica nos per- if pin2=1 then label_95
mite ingresar a una determinada zona.
La activación del solenoide no será permanente, y es por let pins = 4 ' %00000100
ello que se dispone de un temporizador para que esta acción pause 10
dure tal solo 3 segundos, tiempo suficiente para empujar o ja- if pin0=1 then label_154
lar la puerta que acaba de abrirse a través de la cerradura if pin1=1 then label_14D
electrónica. Cuando se cumple el tiempo de 3 segundos, se de- if pin2=1 then label_146
sactivan las salidas 4 y 5, y también se limpian los registros de
los dígitos de la clave de la cerradura electrónica let pins = 8 ' %00001000
En la figura 99 se muestra el diagrama de flujo completo pause 10
del programa que controla la cerradura electrónica. if pin0=1 then label_1B0
A continuación se encuentra el código del programa del if pin1=1 then label_1A9
microcontrolador PICAXE en basic, que es la conversión del if pin2=1 then label_1A2
diagrama de flujo.
goto label_3C

Programa en Basic del Diagrama label_4D: let b0= 3


de Flujo de la figura 99 label_43:
main: label_B6: if b13= 1 then label_F7
label_35: let b13= 1 if b13= 2 then label_F0
label_3C: let pins = 1 ' %00000001 if b13= 3 then label_E9
pause 10 if b13= 4 then label_E2
if pin0=1 then label_5B label_230: let b1= 0
if pin1=1 then label_54 let b2= 0
label_23: if pin2=1 then label_4D let b3= 0
let b4= 0

CLUB SABER ELECTRONICA 73


goto label_35 label_1A2: let b0= 255
label_54: let b0= 2 label_1B9:
goto label_43 goto label_B6

label_5B: let b0= 1 label_1A9: let b0= 0


goto label_43 goto label_1B9

label_95: let b0= 6 label_1B0: let b0= 254


label_101: goto label_1B9
goto label_B6
label_1EB: if pin1=0 then label_1F6
label_9C: let b0= 5 goto label_1EB
goto label_101
label_1F6: if pin2=0 then label_1D2
label_A3: let b0= 4 goto label_1F6
goto label_101
label_1D2:
label_E2: let b4=b0 goto label_3C
if b1= 1 then label_20F
goto label_230 label_20F: if b2= 2 then label_21A
goto label_230
label_E9: let b3=b0
label_2E: let b13=b13+ 1 label_21A: if b3= 3 then label_225
label_1E0: if pin0=0 then label_1EB goto label_230
goto label_1E0
label_225: if b4= 4 then label_25E
label_F0: let b2=b0 goto label_230
goto label_2E
label_25E: high 4
label_F7: let b1=b0 high 5
goto label_2E wait 3
low 4
label_146: let b0= 9 low 5
label_15D:
goto label_B6 goto label_230

label_14D: let b0= 8 Recuerden que a través de nuestra página de internet


goto label_15D www.webelectronica.com.ar pueden descargar el programa
“Programming Editor” los códigos, tanto en diagrama de flu-
label_154: let b0= 7 jo como en basic del presente ejemplo, tan sólo utilicen la cla-
goto label_15D ve “picaxe”. ************

74 CLUB SABER ELECTRONICA

También podría gustarte