Sie sind auf Seite 1von 96

2 forros.

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

Editorial - Editorial - Editorial - Editorial

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

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

Club Saber Electrnica. Fecha de publicacin: julio 2014. Publicacin mensual editada y publicada por Editorial Quark,
He rre ra 761 (1295) Ca pi tal Fe de ral, Ar gen ti na (00541143018804), en conjunto con Saber Internacional SA de CV,
Av. Moctezuma N 2, Col. Sta. Agueda, Ecatepec de Morelos, Mxico (005255-58395277), con Certificado de Licitud del
ttulo (en trmite). Distribucin en Mxico: REI SA de CV.
Distribucin en Argentina: Capital: Carlos Cancellaro e Hijos SH, Gutenberg 3258 - Cap. 4301-4942 - Interior: Distribuidora Bertrn S.A.C. Av. Vlez Srsfield 1950 - Cap. Distribu cin en Uru guay: Ro de sol SA Ciu da de la 1416
Montevideo, 901-1184 La Editorial no se responsabiliza por
el contenido de las notas firmadas. Todos los productos o
marcas que se mencionan son a los efectos de prestar un servicio al lector, y no entraan responsabilidad de nuestra parte. Est prohibida la reproduccin total o parcial del material
contenido en esta revista, as como la industrializacin y/o
comercializacin de los aparatos o ideas que aparecen en los
mencionados textos, bajo pena de sanciones legales, salvo
mediante autorizacin por escrito de la Editorial.
Revista Club Saber Electrnica, ISSN: 1668-6004

Desdequeelprimermicrocontroladorvilaluzen
el mundo (el 4004), y cuya nica y principal operacineraunasumade1bit,secomenzconunacarreratecnolgicaquelejosdeverelfin,daadava
logrando cosas inimaginables, tal es el caso de los
microcontroladoresquevendranaserelejemploresumido y en miniatura de una computadora personal(PC).
Haceyaunosaosapareciunnuevosistemacon
todaslasventajasdeMicrochipymuchoms,nosreferimos a PICAXE, un chip especial que facilita an
ms la tarea del tcnico proyectista y armador. Los
microcontroladores PICAXE, son PICs comunes (Hechos por Microchip) a los que se les ha grabado un
peq ue o prog ram a int ern o den om in ad o firmw ar e
(firmware o programacin en firme, es un bloque de
instrucciones de programa para propsitos especficos,grabadoenunamemoriatipoROM,queestablecelalgicademsbajonivelquecontrolaloscircuitos electrnicos de un dispositivo de cualquier tipo)
para que no precise de un circuito externo para ser
grabadoyparaqueelprogramaagrabarpuedaser
escritoenBasicyhastaendiagramadeflujo.
Si todava no los conoce, d una mirada a esta
obra y verifique usted mismo las ventajas de estos
nuevosmicrocontroladores.

IngHoracioD.Vallejo
ISBN N: 987-1116-62-4

IndIce de la Obra
pIcaxe: la nueva fOrma de prOgramar un pIc.......................................................3
Conociendo los microcontroladores de este sistema ...........................................................................5
Utilitario gratuito para hacer programas..............................................................................................7
Trabajando con PICAXE - Paso a paso: uso de entradas y salidas .....................................................9
Kit entrenador para PICAXE 08........................................................................................................14
Aprendiendo a programar la tarjeta entrenadora 08 ..........................................................................17
Juego de luces tipo auto fanststico...................................................................................................21
Alarma para puertas y ventanas empleando la tarjeta entrenadora PICAXE 08 ...............................25
Tarjeta entrenadora PICAXE 18........................................................................................................29
Aprendiendo a utilizar el ADC en la tarjeta entrenadora del PICAXE 18 ........................................33
Control de temperatura con la tarjeta entrenadora PICAXE 18 ........................................................39
Programa para desplegar nmeros BCD con la tarjeta entrenadora del PICAXE 18........................45
PLC de 5 entradas y 8 salidas............................................................................................................50
Programacin combinacional del PLC - PICAXE 18 .......................................................................61
Sistema de alarma domiciliaria inteligente........................................................................................71
Alarma multipropsito con PICAXE para aprendizaje .....................................................................71
Algunos conceptos para recordar ......................................................................................................73
Prueba de funcionamiento del transistor ...........................................................................................74
Verificacin de las uniones soldadas .................................................................................................76
Verificacin de los componentes .......................................................................................................76
Conexin de la batera .......................................................................................................................77
Descarga de un programa para probar el LED ..................................................................................77
Prueba de la salida .............................................................................................................................77
Prueba del zumbador .........................................................................................................................78
Prueba del interruptor ........................................................................................................................78
Prueba de la fotorresistencia..............................................................................................................79
Ideas de programacin.......................................................................................................................79
Programa 1.........................................................................................................................................79
Programa 2.........................................................................................................................................81
Central de alarma inteligente.............................................................................................................82
Programacin de la central ................................................................................................................85
El programa inteligente .....................................................................................................................87
Fuente para sistema de alarma con control automtico de bateras...................................................88
Sirena para alarma con habilitacin lgica........................................................................................90

2 Club Saber eleCtrniCa

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

PICAXE:LaNuevaForma
deProgramarunPIC
Desdequeelprimermicroprocesadorviolaluzdelmundo(el4004),ycuyanicayprincipaloperacineraunasumade1bit,secomenzconunacarreratecnolgicaquelejosdever
elfin,dacondasevanlograndocosasinimaginables,taleselcasodelosmicrocontroladoresquevendranaserelejemploresumidoyenpequeodeunacomputadorapersonal(PC).

Un microcontrolador que puede ser de 8, 18, 28, 40 terminales o ms, internamente dentro de
su encapsulado posee como equipamiento mnimo un microprocesador, memoria RAM, y distintas versiones de memoria ROM. Los microcontroladores ms avanzados aparte de lo mencionado anteriormente tambin llegan a poseer temporizadores, ADC, DAC, Comunicacin en paralelo, USAR, etc. En la figura 1 vemos todo lo necesario para programar un PICAXE.
Un microcontrolador, desde el punto de vista de operacin, puede considerarse como si fuera
una PC, ya que cuenta con el conjunto bsico de implementos que necesita realizar sus funciones, esto es, microprocesador, disco duro, memoria RAM, etc. Clsicamente, cuando programamos un microcontrolador, de forma implcita se tiene que desarrollar un programa que trabaja a
manera del BIOS de una PC, ya que lo primero que debemos tomar en cuenta es la configuracin
de sus puertos ya sea como de entrada o de salida, configurar sus dems herramientas como pueden ser los temporizadores, los ACD, etc.
Han aparecido en el mercado sistemas de desarrollo que permiten la programacin del microcontrolador de una manera relativamente fcil, en la cual se puede emular el proceso que nos interesa desarrollar. Para la mayora de estos sistemas de desarrollo, una vez que se tiene terminada la aplicacin, el paso siguiente es armar el prototipo e insertar el microcontrolador debidamente programado.
Recientemente ha sido lanzado al mercado un sistema
de desarrollo para programar microcontroladores
PIC llamado PICAXE, que
de por s quien ha utilizado
estos microcontroladores
pueden constatar lo sencillo
que resulta su programacin, el sistema de desarrollo PICAXE hace las cosas
todava ms sencillas para
el programador, ya que se
cuenta con dos opciones de
disear una aplicacin, una
por medio de diagramas de
flujo y otra es por medio de
Figura 1
BASIC, y aunque esto no

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

es ninguna novedad, ya que estas herramientas existan con anterioridad,


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

Figura 2

Figura 3
Figura 4

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

ConociendolosMicrocontroladores
deesteSistema
El PICAXE es un sistema de microcontroladores PIC muy fcil de programar ya que utiliza
un lenguaje BASIC muy sencillo, adems de contar tambin con la posibilidad de programarlos
con diagramas de flujo. El sistema PICAXE aprovecha todas las caractersticas de los microcontroladores de bajo costo que incorporan memoria FLASH.
El sistema PICAXE est disponible en tres versiones que son el de 8 terminales (PICAXE08), 18 terminales (PICAXE-18) y 28 terminales (PICAXE-28). En estos microcontroladores ya
se tienen definidas las terminales que tienen la funcin de entrada y salida de datos, adems de
las terminales que sirven para programar al PICAXE en sitio, o en otras palabras sobre la misma
aplicacin. En las figuras 5, 6 y 7 se muestran los circuitos esquemticos de la disposicin de cada uno de los microcontroladores PICAXE.
En la figura 5 se muestra el circuito esquemtico para un PICAXE de 8 terminales, de las cuales las que estn identificadas como Pin1 E/S, Pin2 E/S, Pin3 E/S y Pin4 E/S, son terminales que
pueden funcionar como entradas o salidas de datos del exterior hacia el microcontrolador. Las terminales identificadas como Serial En y Serial Sal, se utilizan para programar al microcontrolador
a travs del puerto serie de una PC, para lo cual las terminales del conector identificado como
CON1 se hacen llegar al conector DB9 de la PC tal como se muestra en la figura 4. Por otra parte, de la misma figura 1 se
observa que la terminal identificada como Serial Sal,
cumple con una doble funcin, y dependiendo de donde se ubique un jumper selector en el conector CON2, se
podr programar al PIC o esa
misma terminal una vez programado el PIC tendr la funcin de una terminal de salida
de datos.
Del circuito esquemtico de
la figura 6 se observa la forma en que estn dispuestas

Figura 6

Figura 5

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

las terminales de un PICAXE de 18 terminales, de las cuales las que se encuentran identificadas
como En 0, En 1, En 2, En 6 y En 7 son dedicadas exclusivamente para adquirir datos del exterior hacia el microcontrolador. Las terminales que se encuentran identificadas de la Sal 0 a Sal 7
son exclusivamente para enviar datos hacia afuera del microcontrolador, mientras que las terminales identificadas como Serial Sal y Serial En se utilizan para programar al microcontrolador.
En el circuito de la figura 7 se muestra la forma de conectar a un PICAXE de 28 terminales,
en donde aparte de las terminales de entrada que se encuentran definidas como En 0 a En 7, tambin se cuenta con las terminales de salida identificadas como Sal 0 a Sal 7, adems de 4 terminales para entrada de datos analgicos, y por ltimo las terminales de programacin del microcontrolador.
Ya se ha mencionado que el sistema PICAXE no requiere de programador o borrador, ya que
utiliza nicamente tres alambres
conectados al puerto serie de una
computadora, tal como se describe
Figura 7
en la figura 8.
Una vez que han sido identificadas
las terminales a utilizar en el conector del puerto serie de la PC,
ahora lo que sigue es preparar la
conexin hacia el PIC, tomando en
cuenta las terminales tal como se
observa en la figura 9.
Como se puede apreciar de la figura 9, se puede emplear (es recomendable) un plug de los utilizados para conectar los audfonos a
la salida de audio de un walkman o
Figura 8 discman, y tener un cable con un conector DB9
en un extremo y un plug de audio en el otro, tal
como se ilustra en la figura 10.
Por ltimo diremos que para armar el cable de
programacin, tal como se muestra en la figura
10, en las figuras 8 y 9 se muestra la configuracin de las terminales tanto del conector DB9
como el plug de audio.

Figura 9
Figura 10

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

UtilitarioGratuito
paraHacerProgramas
Lo diferente del sistema de microcontroladores PICAXE, con respecto a la programacin tradicional de los microcontroladores PIC, radica en la programacin basada en un lenguaje BASIC
y diagramas de flujo. Esto hace que los microcontroladores del sistema PICAXE sean muy fciles de programar, en un ambiente amigable.
Para programar los microcontroladores PICAXE debemos, en primera instancia, instalar el
software que contiene el ambiente de programacin, por lo que describiremos paso a paso la forma de hacerlo.
El software lo puede bajar de nuestra pgina de internet que usted ya conoce www.webelectronica.com.ar, debe hacer click en el cono password e ingresar la clave PICAXEPRO. Recuerde que para bajar cualquier informacin debe ser socio del club SE, lo cual es gratuito y puede
inscribirse por Internet en slo un par de minutos (siga las instrucciones que dimos para bajar el
programa PICAXEPRO y encontrar cmo hacerse socio si an no lo es).
Una vez que se tenga el software, se encontrar con una carpeta con el nombre de progedit,
a la cual debemos acceder (observe la figura 11).
Luego debemos ingresar a la carpeta progedit y tenemos que ubicar el programa identificado
como Programming Editor, al cual debemos de hacerle un doble click con el ratn de la PC para que ste se ejecute y se pueda instalar el programa de los PICAXE, tal como se muestra en la
figura 12.

Figura 11 Carpeta progedit.

Figura 12 Software de instalacin Programming Editor.

Figura 13 Ventana de bienvenida para la instalacin del


software de los PICAXE.

Figura 14 Acuerdo de licencia.

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

Figura 15 Informacin del usuario.

Figura 16 Destino del software.

Figura 17 Ventana de confirmacin de datos.

Figura 18 Ventana de instalacin del software.

uN

PIC

Una vez que ejecutamos el programa de instalacin Programming Editor aparecer la ventana
que se muestra en la figura 13, sobre la cual debemos de oprimir con el ratn el cuadro identificado como next para que contine la instalacin.
Posteriormente ser desplegada la ventana donde se muestra la licencia que debemos aceptar,
porque de otra manera no podremos continuar
con la instalacin del software, por lo que nuevamente oprimiremos el cuadro identificado como next, esta accin se indica en la figura 14.
Como paso siguiente, pregunta por el nombre
del usuario que normalmente utilizar el software, aqu podemos instalar la aplicacin para que
pueda ser utilizada por todas las personas que
utilicen la computadora, y despus de seleccionar esta accin tenemos que oprimir el cuadro
identificado como next, tal como se muestra
en la figura 15.
Posteriormente debemos decir en dnde se guardar el software de programacin, que por lo general, aqu no tenemos que modificar dato alguno, a menos de que querramos asignar otra localidad, tal como se ilustra en la figura 16. Una
vez seleccionada la opcin correspondiente,
procederemos a hacer click sobre el cuadro
identificado como next.
Por ltimo, aparecer una ventana de confirmacin para estar seguros de que los datos que introdujimos se encuentran correctos, si es as debemos oprimir el cuadro identificado como
next para que contine la instalacin, tal como
se aprecia en la figura 17.
Cuando se est instalando el software se indica
grficamente tal como se ilustra en la figura 18,
aqu debemos esperar hasta que se terminen de
instalar, tanto el software de programacin como
todas las utileras que sern empleadas por los
PICAXE. En la figura 19 se muestra la ventana
que nos indica que ya se ha concluido con la instalacin, por lo que debemos oprimir el cuadro
identificado como finish.
Una vez instalado el software de programacin
de los PICAXE, en el escritorio de nuestra PC
encontraremos un cono de acceso directo identificado como PICAXE Programming Editor,

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

Figura 20 Icono de acceso rpido en el


escritorio de la PC.

Figura 19 Ventana final.

Figura 21 Lenguaje BASIC para programar los PICAXE.

Figura 22 Diagrama de flujo para programar los PICAXE.

uN

PIC

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

TrAbAjANdo CoN PICAXE


PASo A PASo:USo dE ENTrAdAS y SALIdAS
Para empezar a utilizar el sistema de microcontroladores PICAXE comenzaremos con una
aplicacin muy sencilla, por lo que en primera instancia nos dedicaremos a encender y apagar
leds, de acuerdo al estado que guarden las terminales de entrada de datos del microcontrolador.
Cabe aclarar que conforme se avance en los temas de PICAXE podremos incorporar controles
para motores, utilizacin de convertidores analgico - digital (ADC), etc. Recordemos que el sistema PICAXE est disponible en tres versiones que son el de 8 terminales (PICAXE-08), 18 terminales (PICAXE-18) y 28 terminales (PICAXE-28), y en funcin de las terminales que tienen
disponibles para la entrada y salida de datos, sern las que ocuparemos para comunicar al microcontrolador con el exterior.
Comencemos pues con el primer circuito para visualizar la salida de datos, y se trata de un circuito muy sencillo para encender leds, el cual se muestra en la figura 23. Este circuito lo podemos reproducir tantas veces como terminales de salida se tengan disponibles.
Ahora veamos cul sera el primer circuito que se recomienda para ingresar datos discretos
(digitales) al microcontrolador, y se trata de un interruptor con reposicin automtica (push-boton), el cual se muestra en el circuito de la figura 24. De igual manera que en el caso del circuito de la figura 23, se puede reproducir el circuito de la figura 24 tantas veces como entradas ten-

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

ga disponible el microcontrolador. Para realizar el primer ejercicio vamos a elegir uno de los tres
tipos de microcontroladores PICAXE que se tienen disponibles, que en este primer ejercicio se
trata del PICAXE-18; pero posteriormente se realizarn ejercicios con todos los tipos de microcontroladores PICAXE.
El circuito propuesto para esta primera experiencia se muestra en la figura 25, en la cual se
tiene 1 entrada y 1 salida.
Para programar el microcontrolador PICAXE la primer accin que tenemos que realizar es
abrir el software de programacin llamado PICAXE Programming Editor y que previamente
tuvo que ser instalado.
Una vez que hacemos doble click sobre el cono del software de programacin y accedemos
al ambiente de programacin, aparece una ventana en donde se configuran las opciones con las
cuales trabajaremos.
Como primer paso, ya que es la primera vez que utilizamos este software, es conveniente seleccionar el men identificado como Language ya que aqu es donde se configura el lenguaje
con el cual estaremos interactuando, si desea ms detalles sobre esta parte del programa, puede
bajarlo de Internet o adquirir la revista Saber Electrnica N 215. De internet, puede bajarlo desde nuestra web con la clave progpicaxe.
Para empezar a trabajar debemos configuar el programa (es muy sencillo, si lo desea, baje el
tema completo desde nuestra web), seleccionando la opcin Modo del men para elegir el PICAXE que vamos a emplear en
nuestro proyecto, qu frecuencia
de operacin tendremos (generalmente 4MHz), etc. Luego, debemos elegir la opcin modo del
men para indicar en qu puerto
tendremos el circuito para descargar el programa.
De la figura 26 observamos el ambiente de trabajo que presenta el
software de programacin de los
microcontroladores PICAXE, en el
Figura 24
Figura 23
cual se aprecia un espacio en blanco que es donde se ingresan las instrucciones
en forma de BASIC.

Figura 25

10

Todo SobrE mICroCoNTroLAdorES PICAXE

Qu instrucciones son
las que utilizaremos?
Si no sabemos, no es el
fin del mundo y vamos
paso a paso. Para comenzar utilizaremos una
opcin que se cuenta en
este software para programar a los microcontroladores que son los
diagramas de flujo, por

PICAXE: L A N uEvA F ormA


lo que como se indica en la figura 26, seleccionamos de la barra de herramientas la opcin Archivo, posteriormente Nuevo y por ltimo
Nuevo Organigrama, y lo que aparecer ser el
ambiente de trabajo para ingresar el diagrama de
flujo de nuestro programa.
Para comenzar, ste va a ser nuestro campo de
trabajo ya que de forma intuitiva todos sabemos
hacer diagramas de flujo. Pues bien, antes de seleccionar los bloques que lo constituirn, vamos
a describir cul es el algoritmo del programa que
queremos desarrollar:
Cuandoseoprimaunpush-botonseenciendaunled,ycuandosesuelteelpush-botonseapagueelled.
Existen bloques prediseados que nos auxilian en el manejo del estado que guardan las terminales de entrada del microcontrolador de manera independiente, por lo que como se muestra
en la figura 27 seleccionamos el recuadro que tiene indicado un rombo y dentro de ste la palabra
if.
Ahora lo que tenemos que hacer es seleccionar qu condicin es la que utilizaremos, que para este ejercicio ser la que se encuentra dentro
del recuadro que tiene una figura de un rombo y
dentro de ste la palabra Pin (observe la figura
28), esto es, estaremos leyendo la condicin de
una terminal de entrada que, por defecto cuando
lo ubicamos sobre nuestra rea de trabajo, siempre se coloca la entrada 0 (terminal 17 del microcontrolador figura 25). Este bloque tiene la tarea
de leer el estado lgico de la terminal de entrada
y la compara con un 1 lgico y dependiendo de si
la entrada es igual o no, tiene dos posibles salidas
Y por si es igual a 1 lgico y N por si la entrada es 0 lgico. Y por ltimo, oprimimos el recuadro que tiene una flecha en forma de U para
regresar al men principal.
De acuerdo al algoritmo que planteamos lneas atrs, lo que tenemos que hacer es que se encienda un led cuando en la terminal de entrada se
encuentre un 1 lgico, o que el led se apague
cuando en la entrada se encuentra un 0 lgico. Para esta actividad recurrimos al recuadro identificado con la palabra Out, ya que es ah donde
se encuentran los bloques que actan sobre las

dE

P rogrAmAr

uN

PIC

Figura 26

Figura 27

Figura 28

Figura 29

Todo SobrE mICroCoNTroLAdorES PICAXE

11

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

Figura 30

Figura 31

Figura 32

uN

PIC

terminales de salida del microcontrolador. Una


vez en el interior del men de bloques de salida,
tenemos que seleccionar la accin que har que
el led se encienda o se apague, por lo que en primer instancia seleccionamos el bloque identificado con la palabra High, el cual quiere decir
que la salida se encender, por cierto cuando seleccionamos este bloque, por defecto se ubica la
salida 0 (terminal 6 del microcontrolador figura
25), tal como se ilustra en la figura 30.
Ya se tiene entonces, el bloque que encender el
led por lo que ahora requerimos la accin correspondiente con su apagado, y sta corresponde al recuadro identificado con la palabra Low
que es precisamente el bloque que realizar la
tarea de apagar el led, y tambin por defecto al
seleccionarlo por primera vez, se ubica en la salida 0.
Una vez que ya tenemos los bloques que necesitamos para ingresarle o sacarle datos al microcontrolador PICAXE, procedemos ahora a unir
los bloques para realicen el algoritmo que fue
planteado lneas atrs, para ello existe una herramienta que se encuentra en un recuadro identificado con una lnea vertical que en sus extremos
tiene un *.
Cuando seleccionamos esta herramienta y acercamos el puntero del ratn sobre alguno de los
bloques que ya se encuentran en el rea de trabajo, se les aparece un crculo de color rojo en
aquel punto que requiere una conexin, tal como
se ilustra en la figura 30. Ya seleccionado el
punto de conexin trazamos la lnea hasta el siguiente punto de conexin de un bloque para
realizar la unin lgica del flujo de datos, cabe
aclarar que para cada unin que se necesite realizar, se tiene que volver a seleccionar la herra-

Figura 34

Figura 33

12

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

mienta de conexin, en la figura 31 podemos apreciar la conexin completa de todos los bloques.
Si ya terminamos de disear nuestro diagrama de flujo y antes de programar el microcontrolador,
es importante saber si el programa va a funcionar, porque recuerden que no es lo mismo desear
que el microcontrolador haga lo que segn nosotros programamos, a lo que realmente hace en
funcin del programa que ingresamos.
Existe en el software de los PICAXE la posibilidad de simular el programa, y eso es lo que
vamos a hacer, por lo que seleccionamos el recuadro que tiene el smbolo de una punta de flecha
tal como se ilustra en la figura 31, lo seleccionamos y enseguida aparecern 2 ventanas, una de
ellas indica el estado lgico que guardan las salidas y entradas del microcontrolador, esta ventana aparece en la parte inferior de la imagen de la figura 32.
Los recuadros verdes que se iluminan indican qu salidas estn siendo activas con un 1 lgico, mientras que los que aparecen debajo de los cuadros verdes, indican la posicin de las seales de entrada al microcontrolador, los cuales cuando se encuentran en la posicin inferior significa que la entrada se encuentra en 0 lgico, y si estn en la posicin superior la entrada se encuentra en 1 lgico. Por otra parte tambin se observa que, dependiendo dnde se encuentre la
posicin del switch, se iluminar en color rojo la lnea que une los diferentes bloques que son
afectados por la respuesta del estado lgico de entrada, y de esta manera podemos visualizar qu
es lo que est sucediendo con nuestro programa.
Una vez que simulamos nuestro programa y observamos que las condiciones del algoritmo se
cumplen (encender un led cuando se tiene un 1 lgico en la entrada y apagar el led cuando se tiene un 0 lgico en la misma entrada), ya estamos listos para dar el siguiente paso, que es convertir el diagrama de flujo a instrucciones de BASIC, para lo cual en la barra de herramientas seleccionamos el men identificado como Organigrama y despus la opcin Convertir el Organigrama a Basic (de manera rpida pudimos presionar la tecla F5), tema que Ud. puede bajar sin
cargo de nuestra web (www.webelectronica.com.ar).
Ahora lo que tenemos que hacer es conectar el cable, tanto al puerto serie de la PC como a las
terminales del microcontrolador que se indican en el diagrama de la figura 25 para programar al
PICAXE, anteriormente propusimos la manera en cmo se debe construir el cable de programacin, tomando en cuenta las terminales que se deben ocupar.
Para grabarle el programa al microcontrolador debemos dirigir la flecha del ratn a la barra de
herramientas y seleccionar el men PICAXE, despus la instruccin Ejecutar (o de manera
rpida F5), tal como se muestra en la figura 33. En ese mismo instante aparecer una ventana indicando que se est llevando a cabo la programacin del microcontrolador PICAXE. Cuando se
encuentra en la fase de programacin, una barra que ir creciendo nos dir la cantidad de cdigo
que est siendo descargado hacia el microcontrolador.
Cuando se termina de grabar el microcontrolador aparecer una ventana que nos indica la finalizacin del proceso de programacin, figura 34.
Ahora podemos verificar en el microcontrolador, que el programa que diseamos se encuentra perfectamente bien, por lo que tenemos que oprimir el push - boton y esta accin debe encender el led, y cuando soltemos el push - boton el led se debe apagar. Cualquier otro funcionamiento nos quiere decir que debemos revisar nuestro programa y tenemos que regresarnos hasta la etapa en donde diseamos al diagrama de flujo, ya que algo se encuentra mal.

Todo SobrE mICroCoNTroLAdorES PICAXE

13

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

KIT ENTrENAdor PArA PICAXE08


En esta oportunidad disearemos nuestra primera tarjeta de entrenamiento universal para programar microcontroladores PICAXE, y como en todo comienzo daremos inicio por lo ms sencillo
y ms pequeo, esto es, los microcontroladores de 8 terminales denominados PICAXE 08.
En primera instancia recordemos cul es la configuracin de un PICAXE08, para en funcin
de ello, tomar en cuenta de cuntas entradas y cuntas salidas podemos echar mano y aprovecharlas al mximo (figura 35).
Tenemos la oportunidad de disponer de un total de 4 E/S (4 entradas y 4 salidas), pero no nos
confundamos, si sumamos el nmero de salidas con el nmero de entradas tendremos un total de
8 y el PICAXE08 que manejaremos tiene solamente 8 terminales.
Esto quiere decir que las terminales de salida y de entrada ocupan todas las que posee?
La respuesta es no, ya que en esas 8 terminales deben estar las 4 entradas, las 4 salidas adems de las 2 terminales de aliFigura 35 mentacin y 2 para programarlo. Especficamente para
los PICAXE08 las terminales 3, 5, 6 y 7 cumplen con una
doble funcin, por lo que debemos tener cuidado cuando
los programemos, porque por
ejemplo la terminal 3 puede
comportarse como una terminal de entrada o una terminal
Figura 36

14

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

de salida, todo depende cmo la contemplemos cuando realicemos el programa del PICAXE08.
La tarjeta entrenadora que proponemos tiene la posibilidad de explotar al mximo las propiedades del PICAXE08, y ser por medio de jumpers como se podr configurar la circuitera tanto para programar como para fijar entradas o salidas de datos, en la figura 36 se muestra el circuito esquemtico de la tarjeta entrenadora completa.
A continuacin describiremos cada parte de esta tarjeta entrenadora para que podamos sacarle el mximo provecho.
En primer trmino identificaremos la ubicacin de dnde instalar el microcontrolador PICAXE08, ste debe encontrarse en la base identificada como IC1 respetando la identificacin de
las terminales (figura 37). Los conectores identificados como ES1, ES2 y ES4 tienen 3 terminales, de las cuales, la de en medio de cada uno de ellos se hace llegar hacia la correspondiente terminal del microcontrolador PICAXE, las 2 terminales restantes de cada conector (ES1, ES2 y
ES4), una va hacia el bloque destinado para conectar las entradas de datos, y la segunda se dirige hacia el bloque de terminales de salida de datos. Pues bien, para seleccionar si la terminal del
microcontrolador ser configurada como salida o entrada, ser a travs de un jumper que dependiendo de cmo se conecte unir la terminal del medio del conector ya sea ES1 ES2 ES4,
con el bloque de terminales de entradas o al bloque de terminales de salida, y de esta forma quedar configurada la circuitera del microcontrolador PICAXE para que est listo a recibir el programa con el cual trabajar el microcontrolador.
El conector identificado como PROG/SAL0 posee 3 terminales, de las cuales la del medio se
hace llegar a la terminal 7 del microcontrolador PICAXE, esta terminal cumple con la doble funcin tanto de programar al microcontrolador, como de fungir como terminal de salida de datos si
as se requiere, esta seleccin se lleva a cabo mediante la
Figura 37
conexin de un jumper hacia la ubicacin que se requiera.
Cuando se va a programar un microcontrolador PICAXE08, es necesario que el jumper est ubicado hacia la posicin Prog en el conector PROG/SAL0, porque de otra
manera la programacin ser imposible, ya que no se tendr comunicacin entre la PC y el microcontrolador.
Cuando el jumper se encuentra ubicado hacia la posicin
Sal0 en el mismo conector PROG/SAL0, se tendr configurada la terminal del microcontrolador como salida. La
disposicin de componentes sobre la placa se muestra en la
figura 38.
Por lo descrito lneas atrs se deduce que el procedimiento
para ubicar el jumper del conector PROG/SAL0 ser de
acuerdo a lo siguiente:
1 paso.- Ubicar el jumper hacia la posicin Prog en el
conector PROG/SAL0 para programar al microcontrolador
PICAXE08.
2 paso.- Cambiar el jumper hacia la posicin Sal0 en el conector PROG/SAL0 si se va a utilizar esa terminal del microcontrolador PICAXE08 como salida.
En el conector identificado como Entradas se tiene la posibilidad de hacerle llegar al microcontrolador PICAXE08, el estado lgico de 4 diferentes entradas digitales,
Figura 38
las cuales pueden ser insertadas mediante circuitos externos

Todo SobrE mICroCoNTroLAdorES PICAXE

15

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

o bien utilizar cualquiera de los 2 circuitos con push-boton que se tienen en el rea de experimentos, estos circuitos se muestran en la figura 39 y lo nico que se tiene que hacer es conectar el
borne correspondiente ya sea E1 E2 a cualquiera de las terminales de entrada que son Ent1
Ent2 Ent3 Ent4 del conector Entradas.
En el conector identificado como Salidas se encuentra el reflejo de las 4 salidas digitales que posee el microcontrolador
PICAXE08, las cuales pueden hacerse llegar a circuitos externos en donde se refleje la actividad del microcontrolador, o pueden ser utilizadas los 2 circuitos con leds que se encuentran en
el rea de experimentos, estos circuitos se muestran en la figura 40. Para utilizar estos circuitos lo que tiene que hacerse es
conectar el borne correspondiente, ya sea S1 o S2, a cualquiera
de las terminales de salida que son Sal0 Sal1 Sal2 Sal3 del
conector Salidas.
El espacio identificado como PROGRA se encuentra ocupado
por un conector de audio estreo tipo mini Jack, el cual puede
tener formas diferentes. El conector de audio estreo tan slo
tiene 3 terminales, mismas que sern utilizadas para comunicar
al microcontrolador con una PC a travs del puerto serie, en la
Figura 39
figura 41, como ya lo vimos en las figuras 8 y 9, se muestra el
diagrama de cmo se deben identificar las terminales tanto en
la tarjeta de entrenamiento como en el conector DB9 que se conecta al puerto serie de una PC.
Las terminales del conector de audio realizarn las siguientes
actividades:
La lnea identificada con el nmero 1 sirve para verificar que el
microcontrolador PICAXE se encuentra conectado al puerto serie de la PC.
La lnea identificada con el nmero 2 sirve para programar al
microcontrolador PICAXE.
La lnea identificada con el nmero 3 es la referencia GND o
tambin conocida como tierra elctrica.
Por ltimo, la tarjeta entrenadora tiene incorporado un regulador de voltaje identificado como IC2 que posee la matrcula
LM7805, y cuya misin es la de mantener un voltaje de 5 VCD
para energizar al microcontrolador PICAXE y toda su circuiteFigura 40

Figura 41

16

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

ra, por lo tanto podemos energizar nuestra tarjeta de entrenamiento con una pila de 9 VCD.
La lista de componentes se muestra a continuacin.
Listadecomponentesparaarmarla
tarjetacontroladora.
IC1......Base de 8 terminales
IC2 .........................LM7805
D1, D................Leds Verdes
D3 .........................Led Rojo
S1, S2Interruptores Push boton
R1, R3, R4 ...10k 1/4 Watt
R2.................22k 1/4 Watt
R5, R6, R7 ..390 1/4 Watt
Varios:
Conector mini jack de audio, conector mini plug de audio, alambres de conexin, broche para pila de 9 VCD y circuito impreso.

AprendiendoaProgramarlaTarjetaEntrenadora08
En esta oportunidad emplearemos la tarjeta entrenadora para implementar en ella la funcin lgica Y (AND). El motivo de programar al PICAXE con esta funcin lgica, es un pretexto para que se tenga en cuenta que si podemos utilizar las funciones lgicas, entonces podemos darle
cualquier aplicacin a nuestra tarjeta, esto es, en otras palabras podemos desarrollar, por ejemplo,
lo que se le conoce con el nombre de unidad central de proceso de un PLC.
Para cada una de las funciones lgicas necesitamos la utilizacin de 2 entradas, por lo que en
total requeriramos de 4, pero recordemos que el microcontrolador PICAXE 08 es tan slo de
8 terminales, por lo tanto se tiene la limitante de que la mayora de las entradas y salidas estn
compartidas, en consecuencia
tan slo utilizaremos 2 entradas
para implementar las 2 funciones lgicas.
En el diagrama de la figura
42, se observa la manera en que
estn asignadas tanto las terminales de entrada como las de
salida, por otra parte tambin
tomemos en cuenta que la tarjeta entrenadora posee 2 push
boton para generar los estados
lgicos con los cuales trabajar
el PICAXE, y tambin cuenta
con 2 leds para mostrar el estado de las salidas.
El ejercicio que desarrollaremos ser el siguiente. Los
Figura42-Diagramaesquemticodelatarjetaentrenadora.

Todo SobrE mICroCoNTroLAdorES PICAXE

17

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC
push boton denominados S1 y
S2 generan las combinaciones
con las cuales se encender el
led D1 para la funcin lgica
Y de acuerdo a la tabla lgica siguiente:

S1
S2
Funciny
0
0
0
0
1
0
1
0
0
1
1
1
Ahora hacemos referencia al
Figura43-Identificacindecomponentesycolocacindejumper. diagrama de identificacin de
los componentes de la figura
43, para observar que las terminales que estn asignadas a la entrada son las denominadas como
E3 y E4. Estas entradas se configuran empleando el jumper ES4 hacia la posicin E4, mientras
que la entrada E3 no tiene que configurarse ya que est directamente conectado al borne de entradas.
En cuanto a las salidas, emplearemos la que est identificada como S1. La salida S0 se configuran empleando el
jumper PROG/SAL0 en la posicin de Sal0, esto es porque
la terminal 7 del microcontrolador PICAXE 08 se comparte tanto con la salida 0 como con una terminal de proFigura44
gramacin del PICAXE. La salida S1 requiere que el jumper ES1 se coloque en la posicin Sal1. La forma en cmo
Figura45
se deben de colocar los jumpers tambin se ilustra en la figura 43, que es una imagen de la tarjeta entrenadora.
Una vez que hemos configurado la parte electrnica de
la tarjeta entrenadora, pasamos a elaborar el programa para controlar la tarjeta.
Como lo hemos mencionado antes, es necesario abrir
el cono cuyo nombre es PICAXE Programming Editor,
el cual obviamente tuvieron que instalar con antelacin,
pero si ustedes an no poseen el programa lo pueden descargar de nuestra pgina de internet: www.webelectronica.com.ar.
Despus de la ventana de bienvenida nos aparecer la
ventana que se muestra en la figura 44, que es en donde
Figura46
se configuran las opciones y por lo tanto el tipo de microcontrolador que emplearemos, en esta oportunidad estaremos utilizando un microcontrolador PICAXE 08, por lo
que seleccionamos esa opcin. Si la ventana de opciones
no aparece al abrir el programa nosotros podemos abrirla
desde el men Ver y despus en el comando Opciones.
Hasta este momento no hemos realizado programa alFigura47
guno con el Basic, que es una forma de programar a los

18

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

PICAXE, porque en el desarrollo de esta serie vamos a comenzar aprendiendo a programar a los
microcontroladores del sistema PICAXE. Por esta situacin, nuevamente recurriremos a programar al microcontrolador a travs de diagramas de flujo, por lo que oprimimos el botn de acceso rpido para abrir el ambiente de trabajo en diagramas de flujo, tal como se muestra en la figura 45.
Dentro del entorno grfico para generar el diagrama de flujo seleccionaremos, del men de comandos, el correspondiente con el que pregunta por el estado de las entradas, tal como se ilustra
en la figura 46.
Posteriormente, tal como se muestra en la figura 47, se pueden seleccionar los bloques que
preguntan por el estado de las entradas. Todo depende de nuestro diagrama, sern los bloques que
dentro del rombo tienen la palabra pin. Por defecto siempre pregunta por el pin 1, por lo que
debemos editar los bloques que sean necesarios para preguntar por la terminal que corresponde a
la entrada E3 y E4, para ello nos basamos tal como muestra en la figura 48 en seleccionar el bloque que nos interese y despus seleccionar la entrada correspondiente.
Una vez que el primer bloque tenga asignada la entrada E3
y los dos inferiores la entrada E4, ahora procedemos a seleccionar el men de los bloques que manipulan las salidas, por
lo tanto oprimimos sobre el cuadro que tiene una flecha en forma de U para regresar al men principal. Estando en el men
Figura48
principal, seleccionamos el que hace referencia al control de
las salidas, de acuerdo a como se aprecia en la figura 49.
Dependiendo de cul sea la funcin lgica que implementemos ser la activacin de las salidas que usaremos, ya sea un
0 lgico o un 1 lgico, por lo tanto seleccionaremos de entre el cuadro con la palabra low o high respectivamente, tal como se aprecia en la figura 50.
Como en el caso de las entradas, cuando elegimos una salida, por defecto se coloca la salida 0, por lo tanto tenemos que
evaluar qu salida es la que emplearemos para colocar la que
Figura49
nos interesa, y tal como se ilustra en la figura 51, seleccionamos la salida 1 porque la funcin lgica que implementaremos
es la denominada Y (AND), como ya habamos designado
que sera a travs del led D1 de la tarjeta entrenadora donde se
visualizara su respuesta, es el motivo de la seleccin ya que el
led D1 est conectado a la salida 1 del microcontrolador.
Ya que tenemos todos los bloques correspondientes a la imFigura50
plementacin de la funcin lgica, ahora pasaremos a conectarlos para que se obtenga el resultado de la tabla de verdad de
la funcin lgica Y.
Tenemos que regresar una vez ms al men principal para
Figura51
realizar la unin de los diferentes bloques, en funcin de la lgica de operacin que hemos desarrollado. Para esta accin
elegimos la herramienta de conexin tantas veces como bloques se tengan que unir, tal como se muestra en la figura 52.
Cuando se realiza la actividad de unir los diferentes bloques, se ilumina en color rojo un crculo que se hace presente
en el punto de conexin del bloque cuando acercamos el pun-

Todo SobrE mICroCoNTroLAdorES PICAXE

19

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

tero del ratn, y ah hacemos click con el botn izquierdo para fijar la lnea de conexin, y la
arrastramos hasta el siguiente punto de conexin del bloque con el que uniremos el anterior, y as
continuamos hasta unir todos los bloques que tengamos, tal como se aprecia en la figura 53.
Como paso siguiente, para verificar que realmente funciona nuestro programa lo siguiente es
simularlo, por lo que seleccionamos la herramienta de simulacin tal como nos lo indica la figura 53, y cuando la oprimimos, aparecern dos ventanas, en una observaremos las variables, y en
la otra que es la que nos interesa en este momento, se observar cmo se comportan las salidas
en funcin de las entradas.
En la figura 54 se muestra que cuando sta activa la funcin de simulacin, las lneas que unen
los distintos bloques se iluminan en color rojo indicando el camino por donde se cumplen las condiciones lgicas, facilitando de esta manera la observacin de cmo se va generando la respuesta que finalmente ser visualizada a travs de una salida. Y para comprobar que en la salida se
tiene como resultante la funcin lgica Y, se tienen que realizar las distintas combinaciones de
0 lgico y 1 lgico en las terminales de entrada, a travs de
los interruptores que se visualizan en la ventana inferior de la
figura 54.
Una vez que hemos superado la etapa de la simulacin, nuestro
siguiente paso es la programacin del PICAXE a travs de la
tarjeta entrenadora, por lo que conectamos el cable al puerto serie de la PC y el otro extremo al conector minijack de la tarjeta
Figura52
entrenadora (en entregas anteriores se explic cmo se debe armar el cable de programacin), colocar tambin el jumper del
conector PROG/SAL0 en la posicin de Prog, para que sea descargado el cdigo al PICAXE.
El paso siguiente es detener la simulacin e ir al men de herramientas organigrama y seleccionar el mando convertir organigrama a Basic, como resultado el diagrama de flujo ser convertido a Basic, el resumen de estas acciones se observa en las
figuras 55 y 56.
Figura53
De la figura 56 se observa que para descargar el programa en el
microcontrolador PICAXE a travs de la tarjeta entrenadora, se
oprime el botn que se refiere a la herramienta de programaFigura54
cin, y como consecuencia se despliega una ventana que nos va
indicando el avance de la programacin, tal como se ilustra en
la figura 57.
Una vez programado el PICAXE, lo que sigue es probar el programa sobre la tarjeta entrenadora, por lo que presionaremos los
push boton de acuerdo a la tabla de verdad correspondiente, por

Figura56

Figura55

20

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

lo que si el led no enciende con


respecto a la respuesta de la tabla de verdad de la funcin lgica Y algo anda mal y tenemos que pasar a revisar desde
el circuito de la tarjeta entrenadora, hasta revisar nuevamente
el programa y la fase de grabacin en el microcontrolador.

uN

PIC

Figura57

ListaDeComPonentesParareaLizareLejerCiCio.
Tarjeta entrenadora del PICAXE 08 y su cable de programacin.

juegodeLucesTipoAutoFantstico
(EmpleandolaTarjetaEntrenadora)
Vamos a implementar, a travs de una tarjeta entrenadora, un juego de luces que funcione de
la misma manera que lo hacan las luces del auto fantstico. Est claro que para el microcontrolador PICAXE 08 que posee la tarjeta entrenadora, slo se tiene posibilidad de contar con 4 salidas a las cuales les podemos colocar leds para visualizar el efecto de las luces. Cabe sealar que
si usted desea bajar los archivos para ejecutar el programa, puede obtenerlos gratuitamente de
nuestra web en www.webelectronica.com.ar, digitando la clave kit.
En la figura 58 se muestra el diagrama esquemtico de la tarjeta entrenadora, de la cual emplearemos nicamente el borne de salidas, por lo que
en los bornes identificados como ES1, ES2 y ES4
se colocar el jumper correspondiente, de tal forma que se seleccionen las
salidas.
Nota:La tarjeta entrenadora, su implementacin, armado y programacin se public en el tomo
N 7 de la coleccin Club
Saber Electrnica. Ud.
puede bajar el artculo
completo de la web con la
clave dada ms arriba.
Siguiendo con nuestro
montaje, el borne identificado como PROG/SAL0
Figura 58
una vez que se descargue

Todo SobrE mICroCoNTroLAdorES PICAXE

21

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

el programa sobre el PICAXE, debe colocarse el jumper en la posicin correspondiente a la salida 0 (Sal0). Una vez predispuesta la tarjeta entrenadora tal como se muestra en la figura 59, pasamos a desarrollar el programa.
Recordemos que lo primero que tenemos que hacer es abrir el programa PICAXE Programming Editor tal como se ilustra en la figura 60. Una vez dentro del ambiente de programacin
del PICAXE, seleccionamos la opcin de trabajar con diagramas de flujo, por lo menos hasta que
adquiramos la experiencia necesaria para desarrollar nuestros programas directamente bajo BASIC.
Se ha explicado, minuciosamente, lo que significan los conos que
aparecen cuando trabajamos con diagramas de
flujo, por lo que ahora
avanzaremos un poco
ms rpido en la construccin de nuestro programa. Ya dentro del ambiente de programacin
lo primero que tenemos
que hacer es inicializar
las salidas que utilizaremos, que por disposicin
del PICAXE 08 se tienen dispuestas las salidas
0, 1, 2 y 4. Para no afectar
el desempeo de nuestra
aplicacin, la inicializaFigura62 - Diagrama a bloques completo.

Figura60

Figura61

Figura 59

22

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

cin de las salidas las realizamos por medio del comando low tal como se ilustra en la figura
61, una para cada una de las salidas, si no colocramos estos comandos simplemente las salidas
no se activarn. Posteriormente colocamos lneas de conexin para unir los comandos de activacin en estado bajo de las 4 salidas seleccionadas. Ahora se colocan los comandos para generar
el efecto de luces del auto increble, para lo cual nos basamos en un algoritmo muy simple y que
a continuacin explicamos:
Encendemos el led colocado en la salida 0 y mantenemos este estado durante 1 segundo para
que sea perfectamente visible, posteriormente encendemos el led colocado en la salida 1 e inmediatamente apagamos el led de la salida 0, una vez realizado esto fijamos esta condicin durante
1 segundo. Y en general, vamos encendiendo el led siguiente y al mismo tiempo apagando el anterior y manteniendo el estado durante algn tiempo, y as sucesivamente hasta llegar al ltimo
led. Posteriormente hacemos que se invierta el encendido y apagado de los leds, causando con esto, el efecto luminoso de las luces del auto increble.
De la figura 62 se puede observar el diagrama de flujo que se emplea para controlar el juego
de luces, y a travs de los bloques low apagamos las salidas (las colocamos en 0 lgico), y
con los bloques high encendemos las salidas (las colocamos en 1 lgico). Pues bien, hasta
aqu hemos manejado bloques que con anterioridad habamos utilizado y que no causan problemas al momento de seguir la ejecucin del programa, pero ahora aparecen 2 nuevos bloques que
estn identificados como wait y como pause, los cuales describiremos a continuacin.
El bloque wait se emplea para generar una base de tiempo, durante la cual el microcontrolador PICAXE estar ocupado sin realizar ninguna otra actividad, tan slo se dedica a contabilizar
el tiempo que va transcurriendo hasta que llegue al conteo mximo que le hemos fijado. Esta actividad es muy til, sobre todo cuando se requiere el empleo de un temporizador, o de un delay.
La caracterstica que tiene el bloque wait es que el conteo lo realiza de una forma ya establecida
y est en segundos, los cuales pueden tener valor desde 1 hasta 255 segundos.
En este caso estamos empleando el bloque wait para generar una temporizacin, para que los
datos que son enviados a las salidas del PICAXE se mantengan durante 1 segundo. Si omitimos
la colocacin del bloque wait, provocaramos que con la simple operacin del microcontrolador,
que es muy rpida, tan
slo observemos un
destello en los leds pero no veramos cul se
enciende y cul se apaga con detalle. El nmero que tiene por delante el comando wait,
es el nmero de segundos que dura la temporizacin.
El segundo bloque
que observamos en el
diagrama de flujo de la
figura 62, y que no conocamos, est identificado como pause.
El bloque pause
trabaja de la misma
Figura63-Simulacin.

Todo SobrE mICroCoNTroLAdorES PICAXE

23

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

manera que lo hace el bloque wait, y substantivamente se emplean para lo mismo, pero la principal diferencia radica en los tiempos destinados a la temporizacin de cada uno de los bloques,
ya para el bloque wait la temporizacin se encuentra en segundos, mientras que para el bloque
pause la temporizacin se contabiliza en milisegundos. Por lo tanto, como se muestra en la figura 62 si colocamos el bloque wait 1 equivale a un tiempo de 1 segundo, y si empleamos el bloque pause 1000 equivale a un tiempo de 1000 milisegundos o sea tambin 1 segundo.
Despus de que hemos colocado tanto los bloques como las uniones entre stos, procedemos
a simular nuestro diagrama de flujo como se ilustra en la figura 63.
Como paso siguiente a la simulacin, procedemos a convertir nuestro diagrama de flujo en cdigo BASIC, por lo que recurrimos al men Organigrama y dentro de ste al comando Convertir Organigrama en BASIC, por lo que vamos a generar un cdigo como el ilustrado en la figura 64.
Por ltimo, tenemos que programar al microcontrolador PICAXE, por lo que estando en el
ambiente de cdigo BASIC nos dirigimos al men PICAXE y despus al comando Ejecutar y
en ese mismo instante se abre una ventana que nos indica el progreso de la programacin del PICAXE, y una vez que ste termina de programarse nos muestra una ventana pequea en donde
nos comunica que se program perfectamente, y en caso contrario tambin nos reporta las posibles causantes del fallo. Como lo hemos mencionado en anteriores entregas, es necesario abrir el
cono cuyo nombre es PICAXE Programming Editor, el cual obviamente tuvieron que instalar
con antelacin, pero si ustedes an no poseen el programa lo pueden descargar de nuestra pgina de internet: www.webelectronica.com.ar. A lo largo de esta obra iremos desarrollando ejemplos de programacin, en los cuales aplicaremos los bloques de los diagramas de flujo vistos hasta ahora, y la meta es llegar a realizar programas con mayor grado de complejidad, para lo cual
se tiene contemplado mostrar proyectos con aplicaciones reales.
Lista de Materiales

Figura65-Ventanaquemuestraelavance
delaprogramacin.

TarjetaentrenadoradelPICAXE08(eldiagramaydescripcinde
stasevianteriormente),sucabledeprogramacin,
4Leds
4Resistoresde390

Figura64-CdigoenBASIC.

24

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

AlarmaparaPuertasyVentanas
EmpleandolaTarjetaEntrenadoraPICAXE 08
Para continuar con la utilizacin de nuestra tarjeta entrenadora tal como un mdulo de uso general, nuevamente hacemos referencia a ella y por lo tanto volvemos a colocar su diagrama esquemtico mismo que se ilustra en la figura 66. De la tarjeta entrenadora sabemos que se cuenta
con un total de 4 Entradas/Salidas, las cuales las tenemos que distribuir adecuadamente entre el
sensor, el habilitador de la alarma, la salida a un buzzer (zumbador) y a un contacto que nos representar una seal remota.
De acuerdo a lo anterior necesitamos de, por lo menos, 2 entradas y 2 salidas, pero recuerden
que en el PICAXE08 algunas terminales son compartidas y cumplen con una doble funcin, dicho en otras palabras tanto se pueden configurar como terminales de salida o como de entrada de
datos, pero una vez configuradas as trabajar el PICAXE todo el tiempo.
En la figura 67 se ilustra la propuesta de cmo se asignarn las terminales de entrada y salida de datos, en las cuales se sugiere que para proteger a las puertas y ventanas de un hogar se utilicen sensores magnticos llamados reed switch, a los cuales cuando se les acerca un imn su contacto se cierra provocando la generacin de los estados lgicos que vemos en la tabla 1.
La disposicin de los sensores magnticos tal como se ilustra en el diagrama esquemtico de
la figura 68, estn conectados de tal forma que se cumplan las condiciones de la tabla 1, y estos
estados lgicos se hacen llegar
TAbLA1CoMPorTAMIENTodELSENSorMAGNTICo
a la terminal de entrada del PIPresenciadelimn
ContactodelreedSwitch Estadolgico
CAXE (Ent3) destinada a deSi
Cerrado
1
tectar si una puerta o ventana
No
Abierto
0
fue abierta sin autorizacin, por lo que tenemos que seleccioFigura66
nar qu puerta o ventana de nuestra casa
tendremos que proteger, colocando el sensor magntico en el
marco de la puerta o
ventana mientras que
el imn lo fijaremos
sobre la puerta o ventana.
De acuerdo a lo que
se observa de la figura
68, las terminales destinadas a las entradas
de datos sern las denominadas Ent3 y
Ent4, mientras que las
terminales designadas
para las salidas sern
las marcadas como
Sal0 y Sal1.

Todo SobrE mICroCoNTroLAdorES PICAXE

25

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Figura67

Una vez que se han destinado las entradas y salidas que sern empleadas, ahora procederemos
a explicar el diseo del programa con el cual se gobernar el microcontrolador PICAXE, para lo
cual partiremos del hecho de que ya tenemos instalado el programa llamado PICAXE Programming Editor, y si an no lo tienen pueden descargarlo de nuestra pgina www.webelectronica.com.ar con la clave picaxe, o directamente de la pgina www.picaxe.co.uk
En la figura 68 observamos la ventana de bienvenida al PICAXE Programming Editor.
Consideramos que an no tenemos la experiencia necesaria para comenzar a programar un PICAXE por medio del lenguaje BASIC, por lo que una vez ms seleccionamos la opcin de trabajar con diagramas de flujo, por lo menos hasta que contemos con la experiencia necesaria para desarrollar nuestros programas directamente bajo ambiente BASIC.
Debido a que ya hemos explicado paso a paso, cmo trabajar con diagramas de flujo, ya no
expondremos lo que significan los conos que aparecen cuando trabajamos con estos diagramas,
por lo que slo nos avocaremos a desarrollar el programa con el cual operar nuestro programa.
Para comenzar con el programa, primero sern definidas las terminales de entrada a travs de
las cuales se estar habilitando la alarma Ent4 (pin4) y lectura del sensor Ent3 (pin3). De acuerdo a la manera de cmo preFigura68
tendemos que sea la operacin
de nuestra alarma, sta comenzar a funcionar a partir de
que la habilitemos por medio
del pin4, esto es, que en esta
terminal est presente un 1
lgico, y mientras esta condicin no est presente, la alarma nunca indicar si una puerta o ventana fue abierta sin autorizacin, por lo que podemos considerar de que la alar-

26

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

ma est desactivada para que contemos con la posibilidad de Figura69


abrir cualquier puerta o ventana.
Despus de que la alarma fue activada, el paso siguiente es
el revisar que ninguna puerta o ventana sea abierta sin autorizacin, por lo que a travs del pin3 se debe de leer un 1 lgico para que se cumpla dicha condicin.
La figura 69 muestra la activacin de la alarma y lectura
del sensor. De acuerdo con la figura 69 los primeros bloques
que deben colocarse corresponden con los que realizan la revisin de los estados lgicos que guardan tanto el switch que
activa deshabilita la alarma, como con el que corresponde
con la lectura del estado en que se encuentra el sensor magntico. El primer bloque tiene la tarea de preguntar si la alarma
ya fue activada, por lo que se comparar el estado lgico de la
terminal de entrada 4 con un 1 lgico, si la alarma an no ha sido activada no tiene caso seguir
con el desarrollo del programa, por lo que constantemente se estar revisando el estado lgico de
la terminal de entrada 4 hasta que la alarma sea activada, esto es, sea colocado en 1 lgico el
estado de la terminal 4. Si la alarma ya fue activada el paso siguiente ser leer el estado lgico
del sensor magntico, por lo que siempre estaremos comparando el estado lgico de la terminal
de entrada 3 con el estado lgico 0. Recordemos que el estado lgico 0 en el sensor magntico significa que alguna puerta o ventana fue abierta y si esto sucedi sin autorizacin, por medio del comando high estaremos enviando a travs de la terminal de salida 1, una seal a la bobina de un relevador para que sea generado una seal de alarma remota.
En la figura 70 se ilustran los bloques correspondientes al establecimiento de una seal audible para avisar del evento de apertura de una puerta o ventana sin autorizacin.
En el desarrollo de esta parte del diagrama de bloques encontraremos dos nuevos, que a continuacin se describen:
let.- Este bloque es empleado para asignar un valor en cualquiera de las variables con que
cuenta el microcontrolador PICAXE, adems de permitir la realizacin de operaciones entre las
variables y valores constantes.
Figura70

Figura71

Todo SobrE mICroCoNTroLAdorES PICAXE

27

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

sound.- Este bloque contiene los parmetros necesarios Figura73


para generar una nota musical a travs de una terminal de salida del microcontrolador, por lo que la sintaxis es sound terminal de salida (nota, duracin).
Pues bien, una vez que ya hemos revisado el potencial de
los bloques que a continuacin utilizaremos procedemos a explicar la operacin de esta segunda parte del diagrama de bloques.
De la figura 70 se observa que primero se asigna un 0 a la
variable b0, posteriormente se incrementa en una unidad la variable b0 por medio de la utilizacin de bloques con el comando let. El valor de esta variable tendr la misin de fungir como la nota musical que ser interpretada por medio del bloque
identificado como sound.
El bloque sound tiene la propiedad de generar una nota musical con tal solo indicrselo por medio de los parmetros que
se encuentran dentro del parntesis, de acuerdo con nuestro
ejemplo la variable b0 nos generar la nota que ser expresada hacia el exterior del PICAXE a
travs de la terminal 0, los valores que puede aceptar la variable b0 van desde 0 (silencio), hasta
127 notas ascendentes, y de 128 a 255 notas ascendentes de ruido. Para nuestro ejercicio emplearemos las notas que van de 0 a 127 para dar vida a la alarma sonora, y para obtener el efecto de
una seal audible ruidosa, tendremos que ir incrementando la variable b0 partiendo de 0 y hasta
127, por lo que utilizaremos un bloque comparador y cuando la variable b0 llegue a 127, nuevamente se iniciar la variable con el valor de 0, y nuevamente comenzar el conteo ascendente de
la variable. Esta actividad mostrar el efecto de notas musicales ascendentes. El dato correspondiente a la duracin de la nota dentro del parntesis del bloque sound, se puede expresar con valores que van desde 0 a 255, pero debemos de tomar en cuenta que este valor tiene que ser multiplicado por una constante de aproximadamente 1 mseg.
La variable b0 se incrementar desde 0 a 127 cuando se abra una puerta o ventana, y este lazo continuar hasta que una persona autorizada y con una llave pueda restablecer la alarma, por
lo que existir un bloque en donde se est revisando la condicin lgica de la seal de entrada en
el pin4, y cuando lea el estado lgico 0 significa que ya fue desactivada la alarma, por lo que
se tiene que revisar la condicin del sensor magntico, ya que si
Figura 72
se deja la puerta o ventana abierta, y se vuelve a restablecer la
alarma sta se volver a disparar generando nuevamente la seal
audible y enviando la seal de alarma remota. En la figura 72 vemos el diagrama de bloques completo. Como paso siguiente deberemos simular la operacin del diagrama de bloques para estar
completamente seguros de que el programa va a funcionar correctamente, despus de la simulacin procedemos a convertir nuestro diagrama de flujo en cdigo BASIC por lo que recurrimos al
men Organigrama y dentro de este al comando Convertir Organigrama en BASIC, por lo que vamos a generar un cdigo como
el ilustrado en la figura 72.
Por ltimo, para programar al microcontrolador PICAXE, se tiene que estar dentro del ambiente de cdigo BASIC, y de ah nos
dirigimos al men PICAXE y despus al comando Ejecutar, de

28

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

esta accin se provoca que se abra una ventana que nos va indicando el progreso de la programacin del PICAXE, y una vez que ste termine de programarse nos muestra una ventana pequea
en donde nos comunica que se program perfectamente, y en caso contrario tambin nos reporta
las posibles causantes del fallo.
La tarjeta entrenadora cuya imagen se observa en la figura 73, es el cerebro de las actividades
de nuestra alarma, por lo que en este caso se le tienen que agregar los componentes ilustrados en
la figura 68, pero claro est que por el tamao en cuestin del nmero de terminales que posee
un PICAXE-08, a nuestra alarma le est destinado el proteger slo una puerta o ventana, pero si
queremos una alarma con mayor nmero de sensores tendremos que utilizar un PICAXE con mayor cantidad de terminales, y agregar en el programa la lectura del estado que tengan dichos sensores.
Continuaremos desarrollando ejemplos prcticos de programacin, ya que nuestra meta es llegar a realizar diseos de aplicaciones no importando el nivel de complejidad.
ListaDemateriaLes
Tarjeta entrenadora del PICAXE 08
El cable de programacin
3 Resistores de 390 1/8Watt
1 Transistor 2N2222
1 Diodo 1N4001
1 Relevador para 5 VCD
1 Reed switch
1 Botn con seguro
1 Zumbador (buzzer)

TarjetaEntrenadoraPICAXE18
A lo largo de estas lneas iremos describiendo todo lo que corresponde a una nueva tarjeta entrenadora, que en esta oportunidad alojar al microcontrolador PICAXE18, por lo que
como primer paso recordaremos cul es el diagrama del
circuito bsico de conexin
de este PICAXE, para de ah
llegar al diagrama esquemtico de la nueva tarjeta entrenadora. En la figura 74, se
muestra el circuito bsico del
cual se tiene que tomar en
cuenta el nmero total de entradas y salidas que podemos
manipular para aprovecharlas
Figura74CircuitobsicodeunPICAXE-18.
al mximo.

Todo SobrE mICroCoNTroLAdorES PICAXE

29

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Para el PICAXE18 se tiene la


oportunidad de disponer de 8
terminales de salida y 5 terminales de entrada, de estas ltimas y dependiendo del tipo de
microcontrolador PICAXE
(PICAXE18 18A 18X) se
pueden colocar hasta tres entradas como de entradas analgicas.
La tarjeta entrenadora que se
propone en esta oportunidad
tiene la posibilidad de explotar
al mximo todas las propiedades de un PICAXE18, en la
figura 75 se muestra el circuito
esquemtico de la tarjeta entrenadora completa.
A continuacin describiremos
cada bloque de esta tarjeta enFigura75-DiagramaesquemticodelatarjetaentrenadoraPICAXE18. trenadora para que se le pueda
sacar el mximo provecho.
Como primer paso ser identificada la ubicacin de donde se encuentra el microcontrolador
PICAXE18, que justamente debe encontrarse sobre la base identificada como IC1 respetando en
todo momento la distribucin de las terminales.
Sobre el conector identificado como salidas, se encuentran concentradas las 8 de que dispone
el microcontrolador PICAXE, las cuales se encuentran identificadas desde S0 hasta S7. Este conjunto de salidas pueden emplearse de manera indistinta para controlar algn elemento externo que
bien puede ser un actuador (elemento de potencia), todo depende de su naturaleza para en funcin de ella conectar en la salida un optoacoplador para encender o apagar un motor de CA por
ejemplo, lo mismo para encender una lmpara incandescente o un simple led.
Sobre el conector denominado entradas, se tiene el reflejo precisamente de las terminales de
entrada al microcontrolador PICAXE. Las terminales de entrada se encuentran identificadas como E0, E1, E2, E6 y E7, de estas ltimas dependiendo del tipo de PICAXE (PICAXE18 18A
18X), las terminales E0, E1 y E2, pueden comportarse como terminales de entrada analgica,
esto es que tienen convertidor analgico digital. En las terminales de entrada de datos, se tienen que conectar aquellos circuitos externos que generen algn estado lgico, que reflejen fielmente el estado de la actividad que estn leyendo los sensores bajo algn proceso. Estos datos de
entrada, de manera general pueden clasificarse como discretos o analgicos, entendindose como
discretos todas aquellas seales que trabajan mediante la lgica binaria, 0 lgico y 1 lgico,
mientras que los datos analgicos, son aquellos como la temperatura que est variando con el
tiempo y que puede adquirir un nmero infinito de valores dentro de un intervalo bien establecido.
Para esta tarjeta controladora no se necesita configurar alguna forma especial de trabajo sobre
su circuitera, por lo que sus aplicaciones son inmediatas ya que posee terminales dedicadas tanto para ingresarle como para extraerle datos, siendo el microcontrolador PICAXE el elemento indispensable que realiza todas las acciones de control. Una vez identificadas las terminales de en-

30

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

trada y salida de datos de la tarjeta entrenadora, como paso siguiente se tienen que identificar los mdulos de apoyo para
construir, implementar y/o simular alguna aplicacin.
El primer mdulo de apoyo que describiremos es el relacionado con la actividad de representar alguna accin del microcontrolador, esto es, el poder sealar por medio de un indicador
luminoso alguna respuesta. Para ello se cuenta con 2 circuitos
basados en leds, mismos que se encuentran en el rea de expeFigura78-Conector
miniJackdeaudio.
rimentos de la propia tarjeta entrenadora, estos circuitos se
muestran en la figura 77. Para hacer uso de estos circuitos, lo
que tiene que hacerse es conectar mediante un pequeo cable al borne correspondiente ya sea de
S1 o S2, con cualquiera de las terminales de salida del microcontrolador que pueden son S0 S1
S2 S3 S4 S5 S6 S7 del conector Salidas. Y de esta forma si la salida registra un 1
lgico se encender el led al cual fue conectado, y por lo contrario si la salida reporta un 0 lgico el led se apagar.
El segundo mdulo de apoyo es el que genera estados discretos para poderlos hacer llegar al
microcontrolador, estos mdulos pueden simular la activacin o desactivacin de determinados
sensores o botones que se requieren en algn proceso. Para este requerimiento sobre la tarjeta entrenadora, se cuenta con 2 circuitos basados en push-boton que se encuentran sobre el rea de experimentos, estos circuitos se muestran en la figura 76
y lo nico que se tiene que hacer es conectar el borne
correspondiente ya sea E1 E2 a cualquiera de las terminales de entrada que pueden ser E0 E1 E2 E6
E7 del conector Entradas. Esto ltimo da posibilidad a que durante la fase de pruebas del programa del
microcontrolador se pueda evaluar si la secuencia con
que se tienen que activar los sensores es la correcta o
no, para poder estar seguros de que nuestro programa
operar completamente sobre nuestra aplicacin.
El tercer mdulo de apoyo es el que genera seales
analgicas para que puedan emplearse con aquel PICAXE que internamente posee un convertidor analgiFigura76-CircuitoImpreso
co digital, este mdulo puede realizar el trabajo de sidelatarjetaentrenadora.
mulacin por ejemplo de un sensor de temperatura, o
de un sensor de presin, o de humedad, etc. Para esta
parte, la tarjeta entrenadora cuenta con un resistor variable identificado como POT1, por medio del cual se
puede cambiar el valor de voltaje que se hace llegar a
la terminal correspondiente de entrada analgica del
microcontrolador que dependiendo del tipo de PICAXE, stas pueden ser E0 E1 E2 del conector Entradas. Ahora bien si lo que se quiere utilizar en la tarjeta programadora es un sensor real, por ejemplo un
LDR (resistencia variable con la luz), una galga extensiomtrica (resistencia variable con la deformaFigura77-Disposicindeloscompocin), etc. En el mdulo de seales analgicas a travs
nentessobrelatarjetaentrenadora.
del conector identificado como SENSOR se puede

Todo SobrE mICroCoNTroLAdorES PICAXE

31

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

conectar un determinado sensor, que en combinacin con el resistor R8 se genera el voltaje cuyo
valor responder de acuerdo a la variable fsica que lea el sensor.
Cabe aclarar que el tipo de sensor que se tiene que utilizar en esta parte de la tarjeta entrenadora, debe presentar un cambio en su valor de resistencia para que en funcin de esto, se modifique el valor de voltaje que es al final de cuentas lo que lee el PICAXE sobre todo en las entradas analgicas. Las terminales donde se refleja el estado del mdulo que genera las seales analgicas se identifican como AN1 y AN2.
El espacio identificado como PROGRA se encuentra ocupado por un conector de audio estreo tipo mini Jack, el cual puede tener cualquiera forma tal como se ilustra en la figura 78.
El conector de audio estreo tan slo tiene 3 terminales, mismas que sern utilizadas para comunicar al microcontrolador con una PC a travs del puerto serie, en la figura 79 se muestra el
diagrama de cmo se deben identificar las terminales, tanto en la tarjeta entrenadora como
en el conector DB9 que se conecta al puerto serie de una PC.
Las terminales del conector de audio y DB9
realizarn las siguientes actividades:
La lnea identificada con el nmero 1 en el conector de audio sirve para verificar que el microcontrolador PICAXE se encuentra conectado al puerto serie de la PC.
La lnea identificada con el nmero 2 en el conector de audio sirve para programar al microFigura79-Identificacindeterminalesenlos
controlador PICAXE.
conectoresminijackyDB9.
La lnea identificada con el nmero 3 en el conector de audio es la referencia GND tambin
conocida como tierra elctrica.
En la figura 80 se muestra la imagen de un cable de programacin, o a cambio puede emplearse un adaptador figura 81 que realiza la
misma funcin y con ste puede emplearse
cualquier cable serie de que se disponga.
Por ltimo, sobre la tarjeta entrenadora se tiene incorporado un regulador de voltaje identificado como IC2 que posee la matrcula
LM7805, y cuyo cometido es la de proporcionar un voltaje constante de 5 VCD para alimenFigura80-Cabledeprogramacin.
tar al microcontrolador PICAXE y los mdulos
auxiliares que tiene incorporados la tarjeta programadora. Por medio de la utilizacin del regulador de voltaje, es posible que podamos emplear para energizar a nuestra tarjeta de entrenamiento una pila de 9 VCD.
Como ya se ha venido haciendo, en la siguiente entrega aportaremos ms proyectos que se
pueden realizar con un PICAXE18, procurado
Figura81-Adaptadorparaprogramacin.
en todo momento que stos sean de utilidad pa-

32

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

ra todos ustedes, por lo que los invitamos a que continen revisando esta serie, porque les aseguramos que encontrarn cosas interesantes para desarrollar sus propias ideas y proyectos, hasta la
prxima.

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

Aprendiendo a Utilizar el AdC en la Tarjeta Entrenadora del Picaxe-18


Desde el PICAXE08 se tiene la posibilidad de utilizar el convertidor analgico a digital (ADC),
la forma de utilizarlo bajo el sistema PICAXE es lo mismo para cualquiera de las versiones de
microcontroladores, ya sea PICAXE08, PICAXE18 PICAXE28. El empleo de un ADC es
muy til e inclusive necesario sobre todo cuando tenemos que utilizar un sensor que nos reporta
una variable, cuyos valores cambian dentro de un rango establecido con el transcurso del tiempo.
A estas variables se les conoce con el nombre de analgicas, ya que tienen un comportamiento
como el ilustrado en la figura 82.
Dependiendo de la variable fsica que se tenga que medir para, con su informacin, controlar
determinado proceso, es el sensor que emplearemos, ya que existen sensores para medir la temperatura, humedad, intensidad luminosa, presin ejercida a una superficie, aceleracin, deformacin de materiales. Estas variables fsicas son
las ms comunes de medir ya
que existen sensores comerciales muy econmicos para
estas variables.
El aspecto comn de todos los
sensores, no importando a
qu variable fsica responFigura 82 - Diferentes tipos de seales analgicas

Todo SobrE mICroCoNTroLAdorES PICAXE

33

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

den, es que convierten la variable fsica a una seal elctrica cuyo valor correspondiente de forma directa a la
variable. Para el caso particular de la tarjeta entrenadora
del PICAXE18, se requiere
de sensores que cuenten, preferentemente, con una variacin de resistencia al cambiar
el valor de la variable fsica,
ya que sobre la tarjeta entrenadora se tiene implementado
un circuito resistivo, que en
combinacin con el sensor se
genera un divisor de voltaje,
el cual se encuentra conectado
a un potencial de 5VCD, y las
variaciones de ste, de acuerdo a lo que mida el sensor que
es el que se hace llegar al
Figura 83 - Diagrama esquemtico de la tarjeta entrenadora PICAXE18.
ADC del PICAXE.
En la figura 83 se ilustra el
diagrama esquemtico de la tarjeta entrenadora PICAXE18 de la cual nos interesan, en esta ocasin, las terminales identificadas como AN1 y AN2. Si analizamos con detalle la terminal que corresponde al borne AN1, es all donde se encuentra un conector con tornillos que sirven para sujetar al sensor que utilicemos recordando que debe de generar una variacin resistiva, a los cambios que presente la variable fsica. El sensor que utilicemos estar conectndose en serie con un
resistor identificado como R8 y cuyo valor es de 100k, este circuito serie tiene en uno de sus
extremos el valor positivo de 5VCD y el otro GND, por lo tanto al cambiar el valor de la variable fsica se tendr una repercusin sobre el sensor ya que ste cambiar su valor resistivo, al modificarse el valor de resistencia del sensor se tendr una mayor o menor circulacin de corriente,
recordando que todo depende de la ley de Ohm, que dice:
El valor de la corriente es inversamente proporcional al valor de la resistencia, y directamente proporcional al valor del voltaje (la frmula matemtica es: I = V/R).
Si cambia el valor de la corriente en el circuito serie y nuevamente aplicamos la ley de Ohm,
entonces se tendrn variaciones de voltaje, ya que la informacin del valor de voltaje la estaremos obteniendo de entre la conexin del sensor con R8.
El borne identificado como AN2, es ms sencillo de utilizar ya que ah se tiene un preset identificado como POT1, del cual una de sus 2 terminales de los extremos se hace llegar al potencial
de 5 VCD y el otro a GND, y es a travs de su terminal del medio de donde se obtiene el valor
de voltaje que se dirigir posteriormente al ADC del PICAXE. Observando con detalle este circuito simple, nos daremos cuenta de que se trata de 2 resistores conectados en serie, y que al modificar el valor del preset, le estaremos agregando resistencia a uno de estos resistores, y quitndole al otro. El propsito de utilizar este circuito, es nicamente para cuestiones didcticas ya que
estaremos simulando la operacin de un sensor an sin tenerlo, pero estaremos en absolutas posibilidades de comprobar nuestro programa ya colocado en el PICAXE.

34

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

Figura 84 - Conexiones sobre la tarjeta


entrenadora PICAXE-18.

dE

P rogrAmAr

uN

PIC

Figura 85 - Imagen
de un LDR.

La informacin contenida en los bornes AN1 y AN2, que es el reflejo de un sensor (para el caso de AN1) y la variacin de un potencimetro (para el caso de AN2) se tiene que conectar a la
entrada analgica del PICAXE, para ello dependiendo del tipo de microcontrolador PICAXE
(PICAXE18 18A 18X) se puede disponer de hasta tres entradas del tipo analgicas. Los bornes de las entradas analgicas al PICAXE estn identificados como E0, E1 y E2, por lo que para hacer llegar la informacin de los bornes AN1 AN2 a ya sea E0 E1 E2, ser mediante pequeos cablecillos de conexin, tal como se muestra en la figura 84. Para ilustrar de mejor manera la utilizacin del ADC del PICAXE vamos a recurrir al empleo de un ejemplo prctico, este ejemplo consistir en encender o apagar una lmpara de VCA del mismo tipo que utilizamos
para iluminar nuestra casa, pues bien, el circuito al que estamos haciendo referencia es al de un
control automtico de luces. Este control automtico detectar a travs del LDR cuando se oculte nuestro astro rey (Sol) y se comiencen a obscurecer las calles, y viceversa, cuando empiece a
amanecer de igual manera la luminosidad producida ser detectada a travs del LDR. La entrada
que ser utilizada con el valor analgico de la intensidad luminosa est en el borne de entradas
de la tarjeta entrenadora, y se trata de la entrada E0. El LDR, prcticamente es una resistencia variable que est constituida por un material fotosensible, por lo tanto la intensidad luminosa provocar que disminuya su valor de resistencia, mientras que la oscuridad o ausencia de luz ocasionar que tenga su mxima resistencia, y dependiendo del tipo de LDR pude tener valores de resistencia que son de 2 M, 10 M en la oscuridad. Para controlar el apagado o encendido de
la lmpara de VCA se requiere de un circuito que maneje la potencia, o dicho con otras palabras
se necesita que la cantidad de corriente que consuma la lmpara no la suministre directamente el
PICAXE, por lo que se emplea una interface implementada a base de un transistor identificado
como Q1, adems de utilizar tambin un relevador que se encuentra identificado como RL1, todo esto se ubica en el diagrama de la figura 84. La salida que se utilizar se encuentra en el borne de salidas de la tarjeta entrenadora, y se trata de la salida S0.

Todo SobrE mICroCoNTroLAdorES PICAXE

35

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

En la salida S0 se tendr un 0 lgico si la intensidad luminosa detectada es suficiente como


para que apague la lmpara, y por otra parte, si la intensidad luminosa es muy baja o de plano se
tiene oscuridad total, en la salida S0 se tendr un 1 lgico provocando que se encienda la lmpara correspondiente. Esta informacin se hace llegar al transistor Q1, que a su vez dependiendo
de la informacin que tenga en su base, energizar o no la bobina del relevador RL1, siendo los
contactos de este relevador quienes manejen el VCA y sern ellos quienes enciendan o apaguen
finalmente la lmpara.
Una vez explicada la parte que corresponde a la electrnica de la parte correspondiente de la
tarjeta entrenadora, as como los dispositivos y circuitos que se le agregarn para su funcionamiento, ahora procederemos a explicar cmo se elabora el programa con el cual controlaremos el
encendido o apagado de una lmpara de VCA, as que prosigamos adelante.
Lo primero que tenemos que hacer es abrir nuestro programa llamado PICAXE Programming Editor y que previamente tuvimos que instalar, y si an no se tiene lo pueden descargar de
nuestra pgina de internet www.webelectronica.com.ar con la clave picaxe, o en su defecto
tambin lo pueden adquirir en la pgina www.picaxe.uk.co.
Una vez dentro del programa editor de los PICAXE, se abrir una ventana en donde se muestran las distintas opciones para utilizar los PICAXE, en esta ocasin tenemos que elegir alguno
de los PICAXE18, todo depende de cul de ellos sea con el que contemos.
Comenzaremos programando con diagramas de flujo para aprender a utilizar los distintos comandos, y posteriormente los convertiremos a cdigo en Basic. As es que tenemos que seleccionar el comando en donde se abre la plantilla de trabajo con diagramas de flujo. Observe la figura 87.
Ya en el ambiente de programacin con diagramas de flujo, lo primero que tenemos que seleccionar en la barra de comandos es el que est identificado con la palabra other (fig. 88) ya
que ah es en donde se encuentra la herramienta para utilizar el comando de lectura del convertidor ADC del PICAXE.
El comando del ADC est identificado como readadc y lo nico que tenemos que hacer es
seleccionarlo para poderlo colocar en el rea de trabajo, y con el comando de seleccin que est
identificado con una flecha, le indicaremos en qu entrada estar ubicada la entrada para valores
analgicos. Normalmente,
cuando seleccionamos el comando readadc, por defecto se selecciona la entrada
E0, pero recordemos que podemos seleccionar cualquiera de las entradas E0 E1
E2 las tres al mismo tiempo, ya slo tenemos que conectarles el correspondiente
Figura 86 - Icono del programa
circuito con el sensor analFigura 87 - Ventana de Opciones.
PICAXE Programming Editor
gico. Recuerden tambin
que dependiendo del tipo de
PICAXE18 (PICAXE 18
18A 18X) sern las entradas analgicas que emplearemos. (Figura 89).
Para colocar el comando
Figura 88 - Barra de comandos con el men Other.

36

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

readadc lo podemos hacer directamente uniendo el extremo superior del bloque del comando
readadc (Fig. 90) con el del bloque start, esta accin la llevamos a cabo para optimizar espacio en el diagrama de flujo, y ahorrarnos la utilizacin de la herramienta wire.
El comando readadc tiene la tarea de leer el valor de la variable analgica que en esta etapa se encuentra en su correspondiente valor de voltaje, y tal como se encuentra expresado en la
figura 90, el 0 que se encuentra despus de la palabra readadc, indica que terminal de entrada es
la que se est utilizando con el ADC, y despus se encuentra la variable b0 que es en donde se
aloja el valor analgico que est leyendo el PICAXE.
El paso siguiente es verificar qu valor tiene la variable b0
(Fig. 91), para que cuando se compare este valor se sepa si existe luminosidad u oscuridad en el medio ambiente. En este caso
Figura 89 - Comando
tenemos que seleccionar el men if para ubicar los comandos
readadc.
de verificacin de valores, posteriormente seleccionaremos el
comando que est identificado como var, ya que es con ste
con el que compararemos los valores de las variables con las
que cuenta el microcontrolador PICAXE.
Para configurar el comando var, tenemos que seleccionar
sobre qu variable es en donde se est guardando el dato que ser digitalizado, y que en esta ocasin se trata de la variable b0,
ahora seleccionaremos el operando mayor que para indicarle
al PICAXE que para todos los valores analgicos mayores que
determinado valor nos debe de reportar una salida verdadera y
entonces el flujo lgico se dirigir a travs de la salida identificada como Y. El valor que fijaremos es el de 125, que prcticamente representa la mitad del rango total que puede ser digitalizado y cuyo valor mximo es de 255. Para nuestro programa Figura 90 - Colocacin del
comando readadc.
cuando se tienen valores por debajo de 124 indicar que se tiene suficiente luminosidad, por lo tanto al salir la informacin
por la salida N del bloque var, mandar apagar la lmpara.
Cuando se tienen valores mayores a 125 indicar que la luminosidad es muy baja, por lo que mandar encender la lmpara.
Figura 91 CoA la salida identificada como N se le conectar el bloque mando que comlow, cuya funcin ser la de apagar la salida S0 que es en para el valor de
la variable b0.
Figura 93 - Programa
completo y ventanas
del simulador.
Figura 92
Diagrama
de flujo
completo.

Todo SobrE mICroCoNTroLAdorES PICAXE

37

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

donde se encuentra conectado el circuito externo que controla


la lmpara, mientras que a travs de la salida identificada como Y se encuentra el bloque high que ser la encargada de
activar la salida S0 y de esta manera encender la lmpara.
Figura 96
En la figura 93 se observa la simulacin del ADC, y para
Cable de
programacin.
ello se tiene la ventana donde se muestran las entradas y las salidas, y en la parte derecha se muestra el rea en donde se puede manipular la entrada correspondiente al ADC, al mover la
barra correspondiente de la entrada analgica observaremos
como en la ventana correspondientes a las variables se ir modificando la variable b0, que es en donde guardaremos el dato
originado en el ADC.
Cuando hemos visto que nuestro diagrama de flujo realiza
las funciones lgicas que esperamos, entonces estamos en posibilidad de convertir el cdigo a Basic (Fig. 94), para posteFigura 97 - Adaptador para
riormente descargarlo a nuestro PICAXE por medio de la tarprogramacin.
jeta programadora.
En la figura 95 y 96 se muestra la manera de cmo podemos armar nuestro cable de programacin o en su defecto, utilizar un cable serie comn y un adaptador como el que se muestra en
la figura 16. Por ltimo, sobre la tarjeta entrenadora se
tiene incorporado un regulador de voltaje identificado
como IC2 que posee la matrcula LM7805, y cuyo cometido es la de proporcionar un voltaje constante de 5
VCD para alimentar al microcontrolador PICAXE y
los mdulos auxiliares que tiene incorporados la tarjeta programadora. Por medio de la utilizacin del regulador de voltaje, es posible que podamos emplear
para energizar a nuestra tarjeta de entrenamiento una
pila de 9 VCD.
Esperamos que este ejemplo pueda ser til, y estn
atentos a los siguientes ejemplos que estn planeados
para su aparicin en esta serie, hasta la prxima.
Figura 94 - Programa
en cdigo Basic.

LISTA DE COMPONENTES PARA ARMAR LA


TARJETA CONTROLADORA PICAXE18.
Tarjeta entrenadora PICAXE18.
D1 -Diodo 1N4001
Rext1 -1 k 1/8 Watt
RL1 -Relevador 5 VCD
Q1 - BC548
LDR
Figura 95 - Identificacin de terminales en
los conectores mini jack y DB9.

38

Varios: Cable de programacin o Cable serie y adaptador, cables de conexin, batera de 9 VCD.

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

ControldeTemperaturaconlaTarjetaEntrenadoradelPicaxe-18
La temperatura es uno de los parmetros que ms se controla, ya que desde una simple casa
habitacin hasta algn proceso industrial de una empresa cuentan con este tipo de dispositivos,
los cuales pueden ser muy simples o inclusive llegan a ser elementos muy complejos y avanzados.
En la figura 98 vemos el diagrama esquemtico de la tarjeta entrenadora PICAXE-18, con el
sensor LM35 integrado a ella.
Comercialmente existen medidores de temperatura que su funcin es sla esa, mostrar el valor de temperatura, y por otra parte tambin estn presentes los controles de algn proceso que
actan en funcin del valor de la temperatura. Estos ltimos controles basan su forma de operar
en un convertidor analgico - digital, si es que el control es electrnico y digitalizado, y ms que
mostrar el valor de temperatura su utilidad principal radica en el hecho de realizar tareas como la
de controlar de manera autnoma la temperatura de una caldera, de una habitacin, de un invernadero, etc.
En la figura 99 podemos observar las conexiones sobre la tarjeta entrenadora PICAXE-18.
La temperatura es una de las variables fsicas ms fciles y econmicas de controlar, porque

Figura 98

Todo SobrE mICroCoNTroLAdorES PICAXE

39

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

en casi cualquier tienda de


productos electrnicos encontraremos, por ejemplo,
un simple circuito integrado identificado como
LM35, que no es otra cosa
que un sensor electrnico
de temperatura.
En esta oportunidad vamos a implementar un algoritmo para disear un
control automtico de
temperatura basndonos
en nuestro microcontrolador PICAXE, en el cual fijaremos un valor que servir de referencia para saber en qu momento se deber activar desactivar un equipo de aire acondicionado, un ventilador un calefactor, etc.
Aqu lo ms importante es que debemos seleccionar un sensor que nos entregue un valor de
voltaje que tenga una correspondencia con el valor de temperatura que est midiendo, que en este caso puede ser un LM35, el adems ya se encuentra calibrado en grados centgrados (C). Otro
tipo de sensor que se puede emplear para leer la temperatura, sera un termistor que a diferencia
del LM35, ste basa su operacin en cambios de valores de resistencia, de acuerdo a la variacin
de temperatura.
Sea para un sensor que entrega voltaje o para un sensor que cambia su valor resistivo, la tarjeta entrenadora del PICAXE - 18 contempla la utilizacin de ambos, y para ello se cuenta con
un espacio reservado a cada uno de los sensores. Si se trata del sensor LM35 el cual entrega voltaje, se tendr que conectar en el espacio que se encuentra sobre la tarjeta entrenadora y que se
identifica como Pot1, para ello se tendr que retirar el preset si es que ya haba sido colocado, para en su lugar respetando la ubicacin de las terminales del voltaje de alimentacin (Vcc y GND)
colocar el sensor LM35, y la terminal que entrega el nivel de voltaje de acuerdo con la temperatura presente, refleja su valor en la terminal AN2, misma que se tiene que conectar por medio de
un pequeo cablecillo, a cualquiera de las entradas E0 E1 E2 que tiene el microcontrolador
PICAXE.
Por otra parte, si se emplea un termistor slo tendr que colocarse en el conector identificado
como sensor y en el cual se tiene contemplado que se utilice un bloque conector con tornillo.
Aqu ya est preparado el circuito que complementar al termistor (divisor de voltaje) para que
de esta manera, las variaciones de temperatura se reflejen en valores de voltaje que se reflejarn
en la terminal AN1, y de igual manera por medio de un cablecillo se puede conectar esta informacin a cualquiera de las tres entradas que poseen convertidor analgico a digital en el microcontrolador PICAXE.
En esta ocasin y para este proyecto, utilizaremos el sensor LM35 para medir la temperatura,
y con esta variable fsica estaremos en posibilidad de controlar la temperatura de un recinto cerrado, como lo puede ser una habitacin el interior de un vehculo. En la figura 98 se ilustra el
diagrama del circuito que ser adecuado para complementar la operacin de la tarjeta entrenadora del PICAXE - 18. Como circuitera complementaria a la tarjeta entrenadora, se observa la coFigura 99

40

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

nexin del sensor de temperatura que en esta ocasin se trata del circuito integrado LM35, por
otra parte tambin se observa el circuito externo que activa el ventilador, el cual se encuentra implementado a travs de un amplificador operacional, un transistor y un relevador principalmente.
En la figura 100 se ve el diagrama de flujo del programa del PICAXE.
El sensor de temperatura LM35 proporciona un valor de voltaje que est de acuerdo con la
magnitud de temperatura que se encuentre en el recinto donde est instalado, de acuerdo con el
fabricante su rango de operacin va de 0VCD a 1.5 VCD, que equivale a 0C y 150 C respectivamente, y a cada cambio de 1 C el valor de voltaje cambia en 10 mV, por lo tanto es muy fcil
saber qu valor de temperatura est midiendo al saber el valor de voltaje que entrega el sensor,
por ejemplo: cuando se tenga un valor de 35 C se tendr un valor de 350mV.
La forma de emplear el sensor LM35 y el circuito exterior se ilustra en la figura 99, en ella se
aprecia que se puede utilizar un ventilador que bien puede poseer un motor tanto de CA como de
CD, esto es posible ya que estamos empleando un relevador como elemento de interface entre la
etapa de control y la de potencia. La bobina del relevador est siendo controlada por un amplificador operacional, que es el dispositivo que servir de proteccin entre la salida del microcontrolador PICAXE y la bobina del relevador. El amplificador operacional, entre otras cosas, tiene la
propiedad de no demandar corriente de la terminal de salida del PICAXE, y por ello no se provoca que se sobrecargue elctricamente hablando, la configuracin en la que se encuentra el amplificador operacional es la llamada seguidor de voltaje, y en ella el voltaje de entrada es exactamente igual al que est entregando, por lo tanto como el PICAXE le entrega 5 VCD al seguidor
de voltaje cuando su salida est activada, la salida del amplificador operacional tambin ser de
5 VCD pero casi sin demandarle corriente al PICAXE. Posteriormente la salida del seguidor de
voltaje se hace llegar a un transistor 2N2222 (de propsito general), que es el que se encarga de
manejar toda la magnitud de corriente que demandar la bobina del relevador cuando ste necesite ser activado. El transistor le ayuda al amplificador operacional a que no se caliente cuando
circule una corriente muy alta. Es recomendable que la fuente que energice la bobina del relevador sea independiente de la que energiza a la tarjeta entrenadora del PICAXE - 18, ya que cuando el relevador se activa, ste demanda una corriente muy grande, y si empleamos el mismo regulador de voltaje que posee la tarjeta entrenadora, ste podra sobrecalentarse demasiado, hasta
tal punto que puede llegar a bloquearse y toda la circuitera comenzar a trabajar de una forma
muy deficiente, y podra entre otras cosas comenzar a encenderse y apagarse continuamente, provocando que el ventilador se encienda y apague a cada rato.
El valor de voltaje correspondiente con la magnitud
de la temperatura tendr su reflejo en el borne de la terFigura 100
minal AN2, y de ah por medio de un cablecillo haremos llegar esta informacin a la terminal de entrada E0
que configuraremos como entrada con convertidor analgico - digital del microcontrolador PICAXE. Y para
controlar el encendido o apagado del ventilador utilizaremos la terminal S0 de la tarjeta entrenadora, y que
tambin corresponde a una terminal de salida del PICAXE.
En la figura 101 se ve la simulacin del programa.
Para comenzar a programar al microcontrolador PICAXE, primero describiremos qu es lo que pretendemos en cuanto a la forma de operacin de esta aplicacin, y se trata de lo siguiente:

Todo SobrE mICroCoNTroLAdorES PICAXE

41

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

El sensor de temperatura se
encontrar leyendo de maneFigura 101
ra continua la magnitud de la
temperatura, mismo que se
har llegar a un canal de
conversin analgico - digital del microcontrolador PICAXE, este ltimo de acuerdo con el programa (es lo
que vamos a realizar a continuacin) activar una de sus
salidas para controlar la bobina de un relevador.
Para controlar el apagado o encendido de la bobina del relevador, se requiere de lo siguiente:
por medio de un 0 lgico se apagar la salida S0, por lo tanto la bobina del relevador se desenergizar, mientras que un 1 lgico en la misma salida S0 provocar que la bobina del relevador se energice. Una vez que ya sabemos de qu manera tiene que operar el microcontrolador PICAXE, procedemos a explicar la realizacin del programa.
En desarrollos anteriores hemos comenzado esta parte de la aplicacin con las siguientes palabras, lo primero que tenemos que hacer es abrir nuestro programa llamado PICAXE Programming Editor. Por lo tanto, nuevamente hacemos la indicacin de que pueden descargar el software de nuestra pgina de internet si es que an no lo tienen, la pgina es www.webelectronica.com.ar y empleen la clave picaxe, en su defecto tambin lo pueden adquirir en la pgina www.picaxe.uk.co.
Recuerden que al ingresar en el programa lo primero que se abrir ser una ventana, de la cual
en la pestaa opciones seleccionarn el PICAXE que ser utilizado para el proyecto, se puede emplear cualquier microcontrolador PICAXE ya que la estructura del programa es vlido para cualquiera de ellos, pero recuerden que tenemos microcontroladores de 8, 18, 28 y 40 terminales, por
lo tanto las terminales de salida y de entrada cambian de posicin y cantidad de acuerdo al PICAXE que se vaya a utilizar.
Cuando empleamos un convertidor analgico - digital (ADC) lo primero que tenemos que hacer es calcular su resolucin y para ellos nos basamos en la frmula N1.
Resolucin = Valor del rango
--------------------2N - 1
En este caso el valor del rango es el que tiene la entrada del ADC del PICAXE que es de 5
VCD, la variable N representa la cantidad de bits que posee el ADC que en este caso es de 8, por
lo tanto la expresin anterior queda como sigue:
5
5
resolucin = --------- = ----------- =
256 - 1
28 - 1
= 0.0196 V = 19.6 mV

42

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Con este dato ya sabemos


que con cada cambio de
Figura 102
0.0196V que exista en el
ADC, se tendr el incremento de un bit en un conteo a
base de 8 bits. Por otra parte
y recordando que el sensor
LM35 trabaja en el rango de
0 C a 150 C cuyos valores
equivalen a 0 VCD y 1.5
VCD respectivamente, por
razones obvias no ser empleado todo el rango de trabajo del ADC del PICAXE, ya que la temperatura ambiente, por ejemplo en un lugar extremo es de hasta 55 C, y ya estamos hablando de un desierto, para este desarrollo el valor de temperatura que nos interesa es el de 25 C, ya que por debajo de este valor podemos considerar que la temperatura es agradable, pero por encima de este valor consideraremos
que hace demasiado calor por lo que tenemos que encender el ventilador (este nivel de temperatura se puede ajustar a las preferencias de las personas o los lugares). Para la temperatura de 25
C se tiene un valor de voltaje equivalente a 250mV por lo tanto tenemos que saber qu nmero
binario ser el resultante una vez que es ingresado al ADC del PICAXE, para ello emplearemos
el valor de la resolucin y el del valor analgico (Va) que tendremos que digitalizar por lo tanto
Va = 250mV, y para calcular la combinacin binaria tenemos la siguiente expresin matemtica:
Comb.binaria = Valor Analgico (Va)
-------------------------Resolucin
Por lo tanto:
250mV
Comb.binaria = ----------- = 12.75 13
19,6mV
El valor de 13 ahora lo tenemos que convertir a su correspondiente valor binario de
8 bits, quedando como sigue:
00001101. Este ltimo valor
binario es el que tomaremos
como base para realizar la
comparacin de los diferentes
valores de voltaje que tienen
una correspondencia directa
con el valor de temperatura, y
entonces para cualquier valor
por debajo de 00001101 (13)
desactivar al ventilador,

Figura 103

Todo SobrE mICroCoNTroLAdorES PICAXE

43

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

mientras cualquier valor por arriba de 00001101 tendr que encender al ventilador, por lo tanto
de la figura 100 observe que despus de tomar un dato, digitalizarlo y almacenarlo de manera
temporal en la variable b0, se realiza una comparacin del valor guardado en b0 con el valor de
referencia que es 13, siendo el operador empleado en esta comparacin el de un (mayor que),
para saber en qu momento el valor de la temperatura sobrepasa la magnitud de 25 C, tal como
se encuentra expresado en el diagrama de flujo de la figura 100.
El programa es muy simple ya que tan slo se trata de leer un dato analgico y guardarlo en
una localidad de memoria RAM, el comando para realizar la lectura del dato analgico es el que
est identificado como readadc y se encuentra en el bloque identificado como other en la pgina principal del programa Programming Editor, para configurar este comando se le tiene que
asignar cul de las entradas que posee el microcontrolador PICAXE se estar empleando el ADC,
adems de indicarle en cul variable (localidad de memoria RAM) se alojar el dato digitalizado. Posteriormente, para comparar el dato que se obtiene despus de la digitalizacin se toma de
la localidad de memoria este valor y se compara con el valor 13 (00001101) que ya fue explicado anteriormente. El comando para realizar la comparacin es un rombo y se encuentran en la pgina principal dentro de l bloque if, y de aqu si el valor de la variable es mayor que el dato 13,
entonces se interpretar como que la temperatura se encuentra por arriba de 25 C, y por lo tanto encenderemos la salida S0 del PICAXE para que se observe esta accin mediante la activacin
del ventilador.
En la figura 101 se muestra la simulacin del ADC, observndose en ella las ventanas donde
se muestra el estado de las entradas, las salidas y las variables temporales.
En la figura 102 publicamos el programa en cdigo Basic.
Una vez que el diagrama de flujo ya se encuentra operando completamente, el paso siguiente
ser el de convertir el cdigo a basic, y posteriormente descargarlo al PICAXE instalado en tarjeta programadora.
Aunque ya lo hemos mostrado anteriormente, en la figura 103 nuevamente mostramos la manera de cmo podemos armar el cable de programacin con la identificacin de terminales en los
conectores mini jack y DB9.
An nos falta desarrollar una gran cantidad de ejercicios, razn por la cual los invitamos a
que sigan esta serie de ejemplos de utilizacin y tips de programacin.

LISTAdECoMPoNENTESPArAArMArLA
TArjETA CoNTroLAdorAPICAXE-18
Tarjeta entrenadora PICAXE-18.
D1 - Diodo 1N4001
Rext1 - 5.6k 1/8W
Rext2
- 390 1/8W
RL1 Relevador
Q1 - 2N2222
Sensor
LM35
Varios: Cable de programacin, Cable serie y adaptador, cables de conexin, pila de 9 VCD.

44

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

ProgramaparadesplegarNmerosbCd
conlaTarjetaEntrenadoradelPicaxe-18
En muchas ocasiones y para la mayora de las aplicaciones que desarrollamos sobre un microcontrolador, tenemos que mostrar algn resultado sobre un display, que bien puede ser de segmentos o de LCD, por lo que es necesario saber de qu manera se desplegar la informacin sobre las salidas que se tienen reservadas en un microcontrolador PICAXE.
Si nos ponemos a contabilizar todo el conjunto de informacin que tiene que salir por el puerto correspondiente de algn microcontrolador para manipular un display, necesitaramos de una
gran cantidad de lneas que se reserven para ese uso exclusivo. De hecho no alcanzaran todas las
lneas que tuviera disponible el microcontrolador, razn por la cual tenemos que emplear una tcnica que nos ayude a solventar esta problemtica.
En este ejemplo haremos uso de displays de 7 segmentos, para as aprender a enviarles la informacin a stos.
La tcnica que emplearemos es la de multiplexacin de la informacin, por lo que procederemos a explicar en primera instancia el circuito que se emplear con los displays de 7 segmentos,
el cual incluye un total de 3 displays ctodo comn.
El circuito de los displays recibe el nombre de Display de 3 dgitos cuya publicacin complementaria se realiz en la revista Saber Electrnica N 220 Edicin Argentina. El principio de
operacin es muy bsico: se le hacen llegar 4 bits que son los que generan el cdigo BCD, adems de 3 bits que son los que indican qu nmero es el que se estar desplegando, esto es, se controla el encendido del display correspondiente con las unidades, decenas o centenas.
Si se requiere mostrar el valor 578 entonces se requiere enviarle al circuito del Display de
3 dgitos la combinacin 1000 (8) y despus el bit que enciende el display de la unidades, despus se tiene que enviar el 0111 (7) posteriormente el bit que enciende el display de las decenas y por ltimo el 0101 y como paso siguiente se tiene que enviar luego el bit que enciende el
display de las centenas. Y este proceso se tendr que repetir muchas veces, dando la impresin
de que siempre estn encendidos los displays.
Lo que se pretende con esta nota, es adquirir el conocimiento de cmo se tiene que generar la
informacin en un microcontrolador PICAXE, para que posteriormente, sta sea enviada a las ter-

Figura 104

Todo SobrE mICroCoNTroLAdorES PICAXE

45

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

minales de su puerto de salida. Por lo tanto, y de acuerdo a la descripcin lneas anteriores que
se hizo de la manera en cmo funciona el circuito auxiliar denominado Display de 3 dgitos, se
tiene lo siguiente:
De alguna manera ya debemos contar con datos, mismos que tuvieron que ser adquiridos previamente por algn proceso por el microcontrolador PICAXE (por ejemplo la lectura a travs del
convertidor ADC descrito anteriormente en esta serie), una vez procesados estos datos y de acuerdo con nuestra aplicacin puede ser muy importante desplegar un dato numrico, porque a lo mejor estamos diseando un voltmetro digital, por ejemplo.
En la figura 104 vemos la tarjeta entrenadora PICAXE-18 y tarjeta del Display de 3 dgitos,
se muestra la manera de conectar el circuito auxiliar Display de 3 dgitos a la tarjeta entrenadora, por lo que ah se observan las lneas de conexin entre las terminales de salida del puerto
de la tarjeta entrenadora que van hacia las terminales de entrada del circuito auxiliar, cabe aclarar que sta es tan slo una sugerencia de cmo hacerlo, ya que cada uno puede realizar las conexiones de la mejor manera posible y as optimizar los recursos de la tarjeta entrenadora.
Sobre la misma figura 104 no se hace mencin de la conexin de la energa al display de 3 dgitos, pero sta se puede tomar de las terminales disponibles sobre la tarjeta entrenadora que tienen la identificacin de +5VCD, y hacer llegar este voltaje al borne identificado como +Bat. Una
vez descrita la disposicin de la circuitera, procedemos a explicar el desarrollo del programa del
microcontrolador PICAXE.
Para esta explicacin como ya se haba establecido en lneas anteriores, la informacin que ser desplegada de alguna manera ya fue adquirida o procesada por el microcontrolador, por lo que
la nica tarea que se tiene presente es la de mostrarla a travs del display.
Supongamos que se requiere desplegar la informacin 246 a travs del display, por lo tanto, en primera instancia se tiene que leer el dato de una localidad de memoria temporal que ah
fue alojado para su posterior utilizacin. El dato a ser desplegado lo debemos seccionar en tres
partes, para su mejor manejo, por ello se tiene que el nmero cuenta con las siguientes partes, unidades, decenas y centenas, por ser 3 las cifras que componen al nmero total. En esta ocasin y
como sugerencia, el dato de las unidades se encontrar ubicado en la localidad de memoria temporal representada por el registro del microcontrolador PICAXE b0, el dato de las decenas se encontrar en el registro b1 y las centenas en el registro b2.
En el programa que se va a describir observe la figura 105, los primeros bloques muestran la
manera de cmo se guarda un dato en los registros antes mencionados (b0, b1 y b2), este fragmento del programa puede omitirse o reemplazarse totalmente dependiendo de la aplicacin, y
nuevamente recordamos que esta parte del programa es para uso especfico de esta aplicacin. En
la figura 105 vemos los bloques de asignacin de valores a los registros b0, b1 y b2.
El comando let permite la asignacin de valores a variables, esta asignacin se puede dar de
una forma directa como est expresado en esta aplicacin, o tambin se puede efectuar la asignacin del resultado de una operacin aritmtica (+, -, *, /) por el resultado de una operacin lgica (and, or, negacin, etc.), en este ejercicio se est empleando el comando de asignacin de
manera directa sobre los registros para alojar los valores que corresponden a las unidades, decenas y centenas en b0, b1 y b2 respectivamente.
Antes de continuar con la explicacin del desarrollo del programa, regresemos por un instante al circuito de la figura 104 para saber de qu manera estn organizados los datos que salen por
el puerto de salida del microcontrolador PICAXE, ya que as ser ms sencillo seguir el desarrollo del programa.
En la figura 104 se muestra la forma de conectar el display a la tarjeta entrenadora y del circuito se observa lo siguiente: las terminales de salida S0, S1, S2 y S3 representan los 4 bits que

46

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

generan las diferentes combinaciones BCD (Binary Code Decimal o en espaol Cdigo Binario
Decimal) de acuerdo con la tabla 2. De sta, que contiene los nmeros BCD y su equivalente decimal, podemos obtener el peso especfico de cada uno de los bits que generan el valor numrico BCD, siendo S0 el bit menos significativo (bms), mientras que S3 representa el bit ms significativo (BMS). Esta informacin BCD se hace llegar a los 3 displays al mismo tiempo, razn por
la cual se tiene que indicar cul de estos displays estar activo de
acuerdo con la cifra que se quiere desplegar, ya que de otra maTAbLA2
nera los 3 se encendern con la misma informacin. La solucin
NmerobCd Nmero
a lo anteriormente descrito se encuentra en el circuito de la figu(S3,S2,S1,S0) decimal
ra 104, en donde se observa que las terminales S4, S5 y S6 co0000
0
rresponden al control de las cifras de las unidades, decenas y centenas respectivamente de acuerdo con la informacin que se en0001
1
cuentra en la tabla 3.
0010
2
Una vez que hemos visualizado la manera en cmo se en0011
3
cuentra ordenada la informacin del puerto de salida del micro0100
4
controlador PICAXE, ahora procederemos a explicar la manera
0101
5
de cmo se envan los datos al circuito del display de 3 dgitos.
0110
6
Se mencion en lneas anteriores que en esta aplicacin sola0111
7
mente se desplegar la informacin que se encuentre contenida
en los registros b0, b1 y b2 que para un programa de un proceso
1000
8
completo de alguna manera estos registros tendrn que ser mani1001
9
pulados, por lo tanto consideramos que esa actividad ya se Tabla3-Activacinydesactivacindelosdisplays.
realiz y los datos ya se en- (S6,S5,S4)
displayCentenas
displaydecenas
displayUnidades
cuentran en los registros an- 000
Apagado
Apagado
Apagado
Apagado
Apagado
Encendido
tes mencionados. Como si- 001
Apagado
Encendido
Apagado
guiente paso procedemos a la 010
Encendido
Apagado
Apagado
accin de enviar cada una de 100
las cifras del nmero completo a los displays y que en
Figura 108
esta ocasin se trata del valor
246, por lo que comenzamos con el armado de la informacin que ser enviada
al puerto de salida del microcontrolador PICAXE. La
primera cifra que sufrir la
manipulacin es la correspondiente a la de las unidades, razn por la cual en pri- Figura 105
mera instancia emplearemos
un nuevo registro, el b3,
ah alojaremos un dato de
manera directa a travs del
comando de asignacin let
tal como se ilustra en la figuFigura 106
Figura 107
ra 106, el valor que se est

Todo SobrE mICroCoNTroLAdorES PICAXE

47

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

guardando en el registro b3 es el 16(10) que equivale a la combinacin binaria 0010000(2), que


es precisamente la que controla el encendido del display de la unidades, posteriormente para enviar la informacin completa al puerto de salida del PICAXE, se hace uso nuevamente del comando de asignacin let pero en esta ocasin el resultado de esta asignacin la enfocaremos directamente a las terminales de salida por lo que se selecciona despus del comando let, el destino pins, ahora tenemos que unir el dato que se encuentra en el registro b0 (unidad cuyo valor
es 6) con el que se encuentra en el registro b3 (control del encendido del display de la unidad),
por lo que empleamos el operador lgico conocido como OR, cuyo smbolo es |, el resultado
de la operacin lgica se da de la manera como se ilustra en la tabla 4.
En la figura 106 se muestra el bloque que genera la operacin lgica OR y cmo el resultado
es enviado a las terminales de salida del microcontrolador PICAXE, y de esta forma aunque el
valor numrico 6 est llegando al mismo tiempo a los 3 displays, slo se encender el que tiene
la cifra significativa de las unidades, mientras que los otros 2 displays (decenas y centenas) permanecern apagados.
En la figura 106 vemos los bloques de asignacin de valores al registro b3 y terminales de salida del PICAXE.
En la figura 107 vemos los bloques de asignacin a los registros b0, b1, b2 y b3 adems de
las terminales de salida del PICAXE. Estos son los bloques que se han implementado hasta este
momento, y que controlan el encendido del display de las unidades.
Como paso siguiente al envo de la informacin para encender el display de las unidades, ahora se tiene que proseguir con el dato correspondiente a la siguiente cifra significativa que es la
decena, recordando que el valor numrico que se quiere desplegar es el 246, por tanto contina
el turno del valor 4. Para ello, a travs del registro temporal b3, almacenaremos la informacin
correspondiente al encendido del display de las decenas, sobre este registro alojaremos nuevamente un dato de manera directa utilizando el comando de asignacin let tal como se ilustra en
la figura 108, el valor que se estar guardando en el registro b3 es el 32(10) que equivale a la
combinacin binaria 00100000(2), que es precisamente la que controla el encendido del display
de las decenas.
En la figura 108 vemos el bloque de control de los displays de las unidades, y decenas. De
nueva cuenta se tiene que
complementar la informacin
Tabla4-resultadodelaoperacinlgicaorentrelosregistrosb0yb3.
S7
S6
S5
S4
S3
S2
S1
S0
que ser enviada al puerto de
b0
0
0
0
0
0
1
1
0
salida del microcontrolador
b3
0
0
0
1
0
0
0
0
PICAXE, para lo cual hacepins 0
0
0
1
0
1
1
0
mos uso una vez ms del comando de asignacin let diTabla5-resultadodelaoperacinlgicaorentrelosregistrosb1yb3.
rigiendo el resultado directaS7
S6
S5
S4
S3
S2
S1
S0
mente a las terminales de salib1
0
0
0
0
0
1
0
0
da del PICAXE, por lo que en
b3
0
0
1
0
0
0
0
0
el comando let marcamos el
pins 0
0
1
0
0
1
0
0
destino a donde dirigiremos la
informacin que es a las termiTabla6-resultadodelaoperacinlgicaorentrelosregistrosb2yb3.
nales denominadas pins,
S7
S6
S5
S4
S3
S2
S1
S0
posteriormente para unir el dab2
0
0
0
0
0
0
1
0
to que se encuentra en el regisb3
0
1
0
0
0
0
0
0
pins 0
1
0
0
0
0
1
0
tro b1 (decenas cuyo valor es
4) con el que se encuentra en

48

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

el registro b3 (control del encendido del display de las decenas), por lo que nuevamente
empleamos el operador lgico
conocido como OR (O en espaol), cuyo smbolo ya lo habamos expresado y que es |,
el resultado de la operacin lgica se da de la manera como
se ilustra en la tabla 5.
Figura 110
En la figura 108 se muestran los bloques correspondientes al control de los displays de las unidades y las decenas, lo que nos da la posibilidad de
mostrar el dato 46 faltando tan slo el control del display de las centenas que a continuacin
explicamos.
Por ltimo, corresponde controlar la tercera cifra significativa que es la centena, por lo que el
valor numrico que falta por desplegar es el 2, para ello en el registro temporal b3 almacenaremos la informacin correspondiente al encendido del display de las centenas, que de manera directa utilizando el comando de asignacin let guardamos el valor 64(10). En el registro b3 es
el que equivale a la combinacin binaria 01000000(2), que es, precisamente, la que controla el
encendido del display de las centenas.
Como ya se ha explicado detalladamente la forma de cmo se arma el dato que ser enviado
al puerto de salida del PICAXE, procederemos a controlar el display de las centenas de una manera ms simplificada que las anteriores cifras significativas.
Por medio del comando let uniremos el dato que se encuentra en el registro b2 (centenas cuyo valor es 2), con el que se encuentra en el registro b3 (control
del encendido del display de las centenas), empleando el operador lgico OR, el resultado de la operacin lgica se ilustra en la
tabla 6.
En la figura 109 se muestran los bloques completos al control de
los 3 displays que corresponden al de las unidades, decenas y
centenas, por lo que ahora s contamos con el poder de mostrar
cualquier nmero completo de 3 cifras.
Con las notas anteriores ya estamos en posibilidad de disear
una aplicacin en la que est
involucrado un teclado y un
display para desplegar los datos que se van generando.
Tambin ya hemos revisado
cmo trabaja el convertidor
analgico a digital (ADC), slo nos falta procesar la informacin para mostrarla en los
displays, para que de esta manera diseemos por ejemplo un
Figura 109 - Diagrama de flujo completo.
voltmetro digital, proyecto
que en breve publicaremos.

Todo SobrE mICroCoNTroLAdorES PICAXE

49

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Figura 111 - Identificacin de terminales en


los conectores mini jack y DB9.

Recuerden que necesitamos del programa llamado PICAXE Programming Editor, por lo
que nuevamente hacemos la invitacin de que lo descarguen de nuestra pgina de internet que es
www.webelectronica.com.ar y empleen la clave picaxe, en su defecto tambin lo pueden adquirir en la pgina www.picaxe.uk.co.
Una vez que ya se tiene el programa en basic, descargamos el programa al microcontrolador
PICAXE que se encuentra instalado en tarjeta programadora. Aunque ya lo hemos publicado en
reiteradas ocasiones, nuevamente mostramos la manera de cmo podemos armar el cable de programacin o en su defecto utilizar un cable serie comn y un adaptador como el que se muestra
en la figura 111.
Sobre esta tarjeta entrenadora para un PICAXE - 18 se tiene posibilidad de desarrollar un sin
nmero de proyectos, los cuales iremos abordando poco a poco.
LISTAdECoMPoNENTESPArAUTILIzAr
LATArjETA CoNTroLAdorAPICAXE-18.
Tarjeta entrenadora PICAXE-18.
Mdulo Display de 3 dgitos
Varios: Cable de programacin, cable serie y adaptador, cables de conexin, pila de 9 VCD.

PLCde5entradasy8salidas:ConstruyaunPLCcompletoutilizando
unmicrocontroladorPiCaXe-18conexcelentesprestaciones
Los lectores de Saber Electrnica conocen las grandes ventajas de los microcontroladores
PICAXE, entre las que se destacan la fcil programacin y el hecho de que no precisan quitar
el chip para cambiar su programacin. Atentos a estas caractersticas, diseamos un Controlador
Lgico Programable (PLC) de 5 entradas y 8 salidas utilizando un PICAXE-18, que cuenta con
optoacopladores para aislar las entradas y buffers separadores hechos con amplificadores operacionales para las salidas. Este equipo no posee un utilitario propio de programacin, lo que lo
hace til para cualquier aplicacin, tanto en la industria como en el taller y el hogar. De hecho, la
programacin del PLC se efecta con el Editor de Programacin de PICAXE, software gratuito
que puede bajar desde nuestra web.

50

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

elPLCPropuesto
Uno de los objetivos de la utilizacin
de los microcontroladores se basa en el
control de procesos
industriales, pasando
por todas las lneas de
produccin que tengamos en mente (aun las
que ni siquiera nos
imaginamos). Para
ello se requiere de un circuito base, el cual podamos aplicar de forma general para casi todos los
procesos que se requieren automatizar, y que obviamente tenga un microcontrolador como eje
principal de su operacin (figura 111).
Para contar con lo anteriormente mencionado, debemos hacer hincapi en que tenemos ya los
conocimientos bsicos como para unir toda la serie de tpicos que hemos abordado hasta el momento en esta serie de microcontroladores PICAXE, por lo tanto estamos en la antesala de la
construccin de un proyecto que tiene una utilidad muy importante en el ambiente industrial, y
cuya denominacin es la de Control Lgico Programable.
La figura 112 muestra el diagrama esquemtico del PLC con PICAXE-18 que describiremos
a continuacin.
El PLC (por sus siglas en ingls) lo podemos construir nosotros mismos a partir de las ventajas que nos ofrecen los microcontroladores del sistema PICAXE, y por lo tanto contamos con la
prestacin adicional de que podemos construir nuestro PLC del tamao que querramos o ms
bien del tamao de las necesidades que se requieren cubrir en el proceso industrial. De acuerdo
a esto ltimo, nuestro PLC lo podemos crear tan pequeo que, inclusive podemos emplear el microcontrolador PICAXE-08. Lo disearemos tomando las bondades que nos ofrece el microcontrolador PICAXE-18A del cual utilizaremos todos los recursos que nos brinda, y que para empezar cuenta con 5 entradas y 8 salidas. El diseo es tan compacto que permite montarlo en una
placa de 10 cm x 15 cm (vea la figura 113).
Nuestro PLC tiene todas las prestaciones que nos entrega un dispositivo electrnico comercial, y para programarlo emplearemos el propio sistema de programacin de los microcontroladores PICAXE. Alguien, al leer el prrafo anterior, se podr sentir defraudado, porque podran
argumentar que no tenemos un PLC completo ya que faltara el lenguaje de programacin en escalera, y en efecto as es lo que faltara por el momento, pero s podemos llamar PLC a nuestro
proyecto, ya que un PLC requiere de 3 partes esenciales para admitir esa acepcin. Las partes de
un PLC son: etapa de entrada o ingreso de datos, etapa de activacin de actuadores o elementos
de potencia (etapa de salida), y el controlador que gestiona la informacin de la entrada, la procesa y reporta un resultado a la salida. El controlador al que hacemos referencia normalmente es
un microcontrolador. Nuestro PLC contar con las 3 partes que de rigor debe tener un PLC, y el
lenguaje en escalera ser substituido por el programa de los PICAXE, que durante el desarrollo
de este material mostraremos bloques de instrucciones que se utilizan comnmente en el programa de un PLC.
Comencemos con la descripcin del circuito que le dar vida a nuestro PLC, y para ello vamos a dividir el circuito elctrico en 3 partes, las cuales son:

Todo SobrE mICroCoNTroLAdorES PICAXE

51

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

Figura 112

52

Todo SobrE mICroCoNTroLAdorES PICAXE

PIC

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Figura 113

etapadeentrada.-
Este fragmento del circuito total, es tan imprescindible como las 2 siguientes. En este caso se
trata de la parte que se encarga de adquirir la informacin del entorno que rodea al PLC y enviarla a las terminales de entrada de datos del microcontrolador PICAXE, para realizar esta tarea se
requiere de sensores para que stos adquieran la informacin. En general, los PLC cuentan con
la posibilidad de manejar 2 tipos de sensores, ya sean analgicos o discretos. De acuerdo con lo
anterior podemos realizarnos la siguiente pregunta:
Cmo s qu sensor seleccionar?
La respuesta nos la proporciona el propio proceso que vamos a intervenir con nuestro PLC, y lo que
tenemos que saber para tomar la mejor decisin sobre qu sensores seleccionar, es tomar alguno de los
siguientes criterios:
1.- Se requiere conocer si est presente o no, algn producto o material?
2.- Se requiere saber la magnitud de alguna variable fsica?
De las preguntas anteriores tenemos que la 1 corresponde a sensores discretos, mientras que la pregunta 2 se relaciona con los sensores analgicos.
El esquema del mdulo de entrada discreto del
PLC PICAXE-18 incluye optoacopladores 4N25 (figura 114).

Figura 114

Todo SobrE mICroCoNTroLAdorES PICAXE

53

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Para una mejor comprensin explicaremos lo expresado lneas atrs mediante un ejemplo; supongamos que se tiene que
controlar la magnitud de
la temperatura en el interior de algn recinto, por
Figura 115
lo tanto tenemos que seleccionar los tipos de sensores para implementar el control de la temperatura y que sta sea estable dentro del recinto.
De un anlisis rpido y muy bsico llegamos a la conclusin de que por lo menos, se requieren 2 tipos de sensores los cuales se emplearn para realizar una de las siguientes acciones:

Leer el valor de la magnitud de la temperatura que est presente.


Detectar si la puerta del recinto se encuentra cerrada.

La primera descripcin corresponde a un sensor del tipo analgico, mientras que la segunda
descripcin hace referencia a un sensor del tipo discreto.
La diferencia principal entre los 2 tipos de sensores radica en el hecho de que el sensor analgico entrega un valor infinito de valores, los cuales dependen de la intensidad de la magnitud
fsica que se est midiendo (luz, temperatura, humedad, etc.), mientras que el sensor discreto tan
slo nos reporta 2 valores, que son un 1 lgico 0 lgico.
El circuito correspondiente a la etapa de entrada de un PLC tiene que ser adecuada al sensor
que se va a emplear, y tomando en cuenta que el microcontrolador que se utilizar es un PICAXE 18A, que nos permite una disposicin de 5 terminales que en su totalidad pueden ser para entradas discretas, el diagrama de la figura 114 corresponde a la parte del diagrama que representa
la etapa de entrada implementada para sensores discretos.
La entrada discreta tan slo debe tener la capacidad de reportar si el sensor detecta la presencia o no de algn objeto o fenmeno fsico, por ello se requiere que el sensor informe de su estado por medio de un contacto, el cual se hace conectando en los extremos del borne de entrada
de que se trate. El contacto est conectado en serie con un resistor, y ambos se encuentran energizados por una fuente de alimentacin, y cuando el contacto se cierra (esto si el sensor se activa) se genera un 1 lgico, mientras que si el contacto se abre (si el sensor no se activa) se da
origen a un 0 lgico. Estos estados lgicos se dirigen a la terminal del nodo de un led infrarrojo de un dispositivo opto acoplador (4N25), el cual a su vez, en la terminal del emisor refleja
el estado en que se encuentra el opto acoplador, mismo que corresponde al estado que guarda el
contacto. Por ltimo, la informacin del optoacoplador se hace llegar a la terminal de entrada correspondiente del microcontrolador PICAXE. Este circuito se repite 5 veces, una para cada entrada discreta que posee el PICAXE.
etapadesalida.-
Este bloque del circuito total sirve para enviar una seal para que el actuador o elemento de
potencia que tiene conectado se energice o se apague, por lo tanto este circuito hace de etapa de
aislamiento entre las terminales de salida del microcontrolador PICAXE y los elementos de salida. EL circuito principal que protege al microcontrolador PICAXE es un amplificador operacional, que se encuentra bajo la configuracin de seguidor de voltaje, por lo tanto si en la salida del

54

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

PICAXE se tiene un 0 lgico, el seguidor de voltaje entregar 0 Volts, mientras que si el PICAXE entrega un 1 lgico el seguidor de voltaje entregar 5 volt, porque con esa magnitud de voltaje es con la que trabaja el microcontrolador. En el diagrama de la figura 115 se muestra el circuito completo de la etapa de salida.
Para completar la etapa de salida, se utiliza un transistor para activar la bobina de un relevador, que por medio de sus contactos se energiza o no, un elemento de potencia. Cabe aclarar que
los contactos del relevador deben tener la capacidad de manejar tanto C.A. como C.D. y una corriente mxima de 10 ampere en 120V de corriente alterna 7 ampere en 220V 10A en 24V de
corriente continua.
etapadecontrol.-
Esta parte del PLC, de manera indirecta, la describimos cuando hacemos referencia a un microcontrolador PICAXE, porque el PICAXE de forma exclusiva es la pieza que integra a la etapa de control, porque la informacin que se adquiere de los sensores se tiene que dirigir a las terminales de entrada del PICAXE, para que ste en funcin del programa que tenga gravado en su
memoria, reporte un resultado y lo enve a los circuitos pertenecientes a la etapa de salida y as
poder manipular a un elemento actuador. El microcontrolador PICAXE de nuestro PLC contar
con todas las ventajas que nos ofrece el software de programacin, el cual describimos a continuacin.
Para cualquier PLC, el software que normalmente se emplea para programarlo es el llamado
lenguaje en escalera o diagrama de contactos, en el cual las instrucciones se implementan mediante smbolos, tal como se observa en la figura 116.
Ya hemos descrito, que en particular para el PLC que estamos diseando, por el momento no
se contar con un lenguaje en escalera, pero vamos a solventar esta desventaja con la realizacin
del armado de bloques con instrucciones propias de los microcontroladores PICAXE, para que
de esta manera podamos contar con una equivalencia en cuanto a la serie de smbolos que nos
puede proporcionar un PLC.
Existe una serie de smbolos del lenguaje en escalera que tienen un reflejo hacia la actividad
exterior del PLC, y de esta manera se tienen contactos normalmente abiertos (N.A.) y normalmente cerrados (N.C), los cuales leen la informacin de las terminales de entrada de datos y envan la informacin al PLC. Tambin existen los smbolos que por medio de los cuales se le indica al PLC que tiene que enviar un mando de control para activar o desactivar algn actuador o
elemento de potencia. Entonces, para programar un PLC lo nico que tenemos que hacer es emplear los smbolos adecuados para tener un sistema de control automtico.
Por otra parte, los smbolos que se emplean en el lenguaje en escalera, son la base para programar las funciones lgicas que integran al programa que controla algn proceso industrial, por
lo tanto, por medio de un ejemplo vamos a observar de qu manera se puede implementar una
funcin lgica AND (Y), una funcin lgica OR (O) y una negacin.
Figura 116

Todo SobrE mICroCoNTroLAdorES PICAXE

55

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Funcinlgica
anD(Y).-
Esta funcin en lenguaje escalera equivale a
Tabla 7
interconectar una serie de
contactos que pueden ser
N.A. N.C. en serie, lo que asemeja en un diagrama elctrico, a un circuito serie en donde se encuentran interruptores y al final de stos una lmpara, y para que sta encienda en necesario que
todos estn cerrados. Para implementar esta misma funcin mediante el cdigo en un microcontrolador PICAXE lo haremos en dos partes, en primer trmino se requiere leer el estado que estn reportando los sensores (en este caso discretos), para ello como ejemplo obsrvese el fragmento de lenguaje escalera expresado en la figura 116.
Esta disposicin de smbolos da origen a una rama, en la cual se observa el efecto de 3 contactos que al estar conectados en serie, se tiene una equivalencia de una funcin lgica AND, estos contactos muestran su efecto a partir de 3 entradas, pues bien, en nuestro microcontrolador
PICAXE tambin se tiene que leer el estado de 3 entradas para tener la equivalencia, y para ello
necesitamos saber en qu terminales de entrada de datos se encuentran conectados los sensores,
continuando con el ejemplo supngase que las entradas para conectar esos sensores fueron la E0,
E1 y E2 (en un PICAXE las terminales de entrada son 5 y son E0, E1, E2, E6 y E7), por lo tanto para que la funcin lgica AND implementada en la figura 132, tenga el
mismo efecto en el microcontrolador PICAXE, se tiene que leer slo el efecto de las terminales involucradas con la funcin lgica, por lo que tenemos
que anular lo que suceda con las terminales restantes, para ello vamos a colocar una mscara a manera de filtro, para que slo pueda obtenerse el estado
lgico de los sensores en las terminales de entrada que nos interesan. La mscara o filtro, que le vamos a colocar al PICAXE, estar implementada de
acuerdo a como se muestra en la tabla 7.
Por medio de la aplicacin de la mscara descrita anteriormente, vamos a inFigura 117
dicarle al PICAXE que lea sus terminales de entrada y ese dato lo almacene
en un registro temporal o variable que puede ser como
en este ejemplo, el identificado como b0, y para eliFigura 118
minar el efecto de las terminales E6 y E7 lo que tenemos que hacer es, de alguna manera, que estos bits adquieran un valor de 0 lgico, no importando el estado
que tengan sus sensores respectivos, mientras que sobre las terminales E0, E1 y E2 se debe mantener el valor del estado lgico que respectivamente guarden los
sensores correspondientes. Esto se puede escribir por
medio de un diagrama de flujo con el que haremos el
programa de nuestro PLC en el Editor de Programas.
Para describir entonces, cmo se hace una funcin
AND, vea el esquema de la figura 117.
Se observa que el valor de la variable b0 se opera por
medio de una funcin AND (&) con el valor decimal de
7, mismo que equivale a la aplicacin de la mscara, y
de esta manera cualquier valor lgico que tengan las
terminales E6 y E7 ser igual con 0 lgico. El dato

56

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

que tengan las terminales E0, E1 y E2 se


mantendr.
La instruccin Let b0 = pins & 7 indica que le asign a la variable b0 el valor que
corresponde a la lectura de los pines E0, E1
y E2. Por ejemplo, si E2=0, E1=0 y E0=1,
entonces b0=1. Otro ejemplo: si E2=1,
E1=0 y E0=1, entonces b=5.
Posterior a la aplicacin de la mscara,
se tiene que analizar el estado de las 3 terminales que estn involucradas con la funcin
lgica AND de la rama del lenguaje en escalera de la figura 116, para ello el valor que
debe estar alojado dentro de la variable b0
debe ser igual a 7 decimal, si el estado de los
3 sensores es 1 lgico, y la variable b0 reFigura 119
portar cualquier otro valor si alguno de los
sensores o todos estn en 0 lgico, tal como
se ilustra en la figura 117. El efecto de esta funcin lgica AND, equivalente a la rama de la figura 116, lo estamos reflejando sobre la salida S0, misma que se encender cuando los 3 sensores reporten un 1 lgico sobre las terminales de entrada del PICAXE.
Si se quiere cambiar de terminales de entrada o involucrar ms (slo tenemos 5) entradas, basta con adecuar la mscara que filtra a las terminales que nada tienen que ver con la funcin AND
de una rama de lenguaje en escalera, por otra parte si se tienen ms ramas, el fragmento de cdigo que implementamos para el PICAXE tiene que repetirse tantas veces como ramas necesitemos.
Para que se entienda, segn lo expresado en la tabla 7, los valores de E6 y E7 son siempre
igual a cero, luego, para obtener una funcin equivalente a una AND de 3 entradas (E0, E1 y E2),
slo habr una salida vlida cuando estas tres entradas estn en 1 y si esto se cumple, la sumatoria en binario equivale al nmero decimal 7, por lo tanto, y tal como se muestra en el bloque de
la figura 117, asignamos a una variable b0 la suma de los pines de entrada y si se cumple que:
E0=1,E1=1,E2=1,E3=0,E4=0
Entonces la sumatoria ser igual a 7 y para completar la funcin AND deberemos preguntar si la variable b0 = 7, tal que cuando se cumpla esa condicin entonces la salida 0 vaya a estado alto. El diagrama de flujo que representa a la funcin lgica AND se completa entonces con
el diagrama de flujo de la figura 118.
Funcinlgicaor(o).-
Esta funcin en lenguaje escalera obliga a interconectar interruptores en paralelo, lo que equivale en un diagrama elctrico a tener alternativas para que al final de stos pueda encenderse una
lmpara, y para ello es suficiente con tan solo tener un interruptor cerrado. Para implementar la
funcin OR mediante el cdigo en un microcontrolador PICAXE, en primera instancia se requiere leer el estado que estn reportando los sensores (en este caso discretos), para ello a manera de
ejemplo se muestra un fragmento del lenguaje escalera ilustrado en la figura 119. Por la disposicin de los smbolos se est dando origen a una bifurcacin en una rama, en la cual se observa el

Todo SobrE mICroCoNTroLAdorES PICAXE

57

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

efecto de 3 contactos que al estar conectados en


paralelo, se tiene la equivalencia con la funcin
lgica OR, estos contactos muestran como operan a partir de 3 entradas, por lo tanto, el microcontrolador PICAXE debe leer el estado de las 3
entradas involucradas, y para ello necesitamos saber qu terminales fueron las elegidas para conectar los sensores. Prosiguiendo con el ejemplo ilustrado en el lenguaje escalera para la funcin lgica OR, supngase que las entradas para conectar
esos sensores fueron la E0, E2 y E6 (recuerde que
en un PICAXE las terminales de entrada son 5 y
son E0, E1, E2, E6 y E7), por lo tanto para que la
funcin lgica OR implementada en la figura 119,
tenga la misma operacin en el microcontrolador
PICAXE, se tiene que leer slo el estado lgico de
las terminales involucradas con la implementacin de la operacin lgica OR, por lo que tenemos que nulificar el estado que se genere para las
otras terminales que no
Tabla 8
estn contempladas, para ello vamos a utilizar
una mscara a manera
de filtro para que slo
pueda obtenerse el estado lgico de los sensores en las terminales de
entrada que nos interesan.
Tabla 9
La mscara o filtro que
'BASICconvertedfromflowchart:
le vamos a colocar al
'E:\PICAXE\PROGRAMASDEARTICULOS\ARTICULO-12\FUNCIONAND.CAD
PICAXE, estar imple'Convertedon16/10/2005at22:28:46
main:
mentada de acuerdo a
label_6:
letb0=pins&7
como se muestra en la
ifb0=7thenlabel_1F
low0
tabla 8.
gotolabel_6
Por medio de la aplicalabel_1F:
high0
gotolabel_6
cin de la mscara descrita, vamos a indicarle
Tabla 10
al PICAXE que lea sus
terminales de entrada y
'BASICconvertedfromflowchart:
'E:\PICAXE\PROGRAMASDEARTICULOS\ARTICULO-12\FUNCIONOR.CAD
ese dato lo almacene en
'Convertedon16/10/2005at22:28:19
un registro temporal o
main:
label_6:
letb0=pins&69
variable que en este
ifb0>0thenlabel_1F
ejemplo se trata de
low1
gotolabel_6
b0, y para descartar el
label_1F:
high1
efecto de las terminales
gotolabel_6
E1 y E7 lo que tenemos

Figura 120

58

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Figura 121

Todo SobrE mICroCoNTroLAdorES PICAXE

59

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

que hacer es que de alguna manera, estos bits adquieran un valor de 0 lgico, no importando el
estado que tengan sus sensores respectivos, mientras que las terminales E0, E2 y E6 deben mantener el valor del estado lgico que respectivamente, guarden los sensores que tengan conectados. En dicha figura se observa que el valor de la variable b0, se opera por medio de una funcin
AND (&) con el valor decimal de 69, mismo que equivale a la aplicacin de la mscara (vea la
tabla 8 nuevamente), y de esta manera slo se tendrn en cuenta para fijar el dato de la variable
b0 el dato que tengan las entradas E0, E2 y E6. La instruccin (let b0 = pins & 69) indica que se
le asigne a b0 el valor correspondiente a la suma en decimal (con el peso de cada bit) de las entradas E0, E2 y E6. Por ejemplo, si E6=1 (que tiene un peso igual a 64 expresado en decimal,
E2=0 (no tiene peso por ser 0) y E0=1 (tiene un peso igual a 1, expresado en decimal) entonces b0=65 (64+1).
Posterior a la aplicacin de la mscara, se tiene que analizar el estado de las 3 terminales que
estn involucradas con la funcin lgica OR del lenguaje en escalera de la figura 119, para ello
el valor que debe estar alojado dentro de la variable b0 se debe comparar con el valor decimal de
0, especficamente se hace la pregunta si b0 es mayor que 0. Si el estado de los 3 sensores es igual
a 0 lgico, significa que ninguno de ellos se ha activado, por otra parte si en la variable b0 se reportara cualquier valor que sea mayor que 0, quiere decir que alguno de los sensores o todos inclusive estn en 1 lgico. Por lo tanto, el paso siguiente del diagrama de flujo ser preguntar si
b0>0, ya que cualquier valor mayor que ) indicar que al menos un sensor en los pines E0, E2,
E6 est activado.
El efecto de la funcin lgica OR, programado en el diagrama de flujo de la figura 120 equivalente al lenguaje escalera de la figura 119, lo estamos reflejando sobre la salida S1. La lmpara conectada en esta salida se encender cuando por lo menos uno de los 3 sensores reporten un
1 lgico sobre las terminales de entrada del PICAXE.
Si se quiere cambiar de terminales de entrada o involucrar ms (slo tenemos 5 entradas), basta con adecuar la mscara que filtra a las terminales que nada tienen que ver con la funcin OR
que se quiere implementar, por otra parte si se necesitan ms funciones lgicas OR, no tenemos
ms que repetir el fragmento del cdigo que hicimos para el PICAXE, por lo que ste tiene que
repetirse tantas veces como funciones necesitemos.
Recuerden que con el programa llamado PICAXE Programming Editor, podemos implementar perfectamente las mismas funciones que se realizan en un lenguaje escalera, claro que no
es tan fcil de hacer pero se puede. Por otra parte ya hemos abordado los conceptos mnimos que se requieren
Figura 122
para que nuestro PLC haga todas las funciones bsicas
de uno comercial, pero se debe tener presente que se
necesitan dominar ciertas tcnicas de programacin para los PLC, por lo que nuevamente les hacemos una
atenta invitacin a que visiten nuestra pgina de internet
www.webelectronica.com.ar y en la seccin de password empleen la clave progplc, para que puedan descargar mucha informacin sobre la programacin de
PLC.
Si quieren obtener ms informacin de los microcontroladores PICAXE los invitamos a que descarguen de la
pgina de Internet, toda la informacin que necesiten de
microcontroladores PICAXE, pero ahora empleando la
clave picaxe. El cdigo en basic, derivado del diagra-

60

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

ma de flujo para implementar la funcin AND, se muestra en la tabla 9. El cdigo en basic derivado del diagrama de flujo para implementar la funcin OR se muestra en la tabla 10. Por ltimo, en la figura 121 se muestra el diagrama completo para la placa de circuito impreso, incluyendo la mscara de componentes (el lado de las pistas de impreso se ha reproducido en la figura
113). Recuerde que este PLC se programa con el Editor de Programas.

ProgramacinCombinacionaldelPLC-PICAXE18
Al igual que los PLC comerciales, el PLCPICAXE18 tiene la capacidad de recibir las
diferentes tcnicas de programacin, esto es,
programacin combinacional y programacin secuencial (estas tcnicas de programacin se explican en la serie de PLC que se est desarrollando en Saber Electrnica). En
esta oportunidad explicaremos la tcnica de
programacin combinacional a ser empleada
en nuestro PLC.
Este, es capaz de controlar cualquier proceso industrial, basta con programarlo con la
aplicacin especfica que nos interesa. En esta oportunidad controlaremos un proceso en
donde se manipular un motor de CD, el cual
tendr que cambiar su polaridad para que ste gire en un sentido y en el otro, para cuestiones ilustrativas en este ejemplo, el mecanismo que emplearemos representa una herramienta que se emplea en algn proceso industrial, pero por obvias razones el mecanismo empleando es un juguete, el cual esperaFigura 123 - Conexiones del PLC - PICAXE 18
mos cumpla con el objetivo de mostrar que la
programacin de nuestro PLC- PICAXE-18
Tabla 11 - Denominacin de las terminales de entrada
es muy sencilla.
Terminal Etiqueta Identificacin
Para proceder a proE0
SenAb
Sensorquedetectalaposicininferiordelmecanismo.
gramar el PLC, primeE1
SenArr
Sensorquedetectalaposicinsuperiordelmecanismo.
E2
Inicio
BotndeIniciodelproceso.
ro tenemos que conocer
E6
Bn
P
a
r
o
Botndeparo.
el orden de las operaciones que van a conTabla 12 - Denominacin de las terminales de salida.
trolar nuestro mecanisTer
mi
nal
Etiqueta Identificacin
mo, para ello describiS0
Lmpara1 Lmparaqueindicaqueelprocesoestenmarcha.
remos el algoritmo de
S1
Arriba
Relevadorquecontrolaelgirodelmotorhaciaarriba.
operacin.
S2
Lmpara
Lmparaqueindicaqueelprocesoestdetenido.
El mecanismo que
S6
Abajo
Relevadorquecontrolaelgirodelmotorhaciaabajo.
se ilustra en la foto de

Todo SobrE mICroCoNTroLAdorES PICAXE

61

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

la figura 122, puede servir como un modelo a escala de alguna de las muchas mquinas reales
que se encuentran en la industria y que hacen las tareas de perforar, cortar, marcar (suajar), imprimir, etc.
Laformadeoperardenuestromecanismoserlasiguiente:
Como punto inicial, nuestro mecanismo se encontrar en estado de reposo, por lo que su parte mvil se ubica en la parte inferior, mientras este estado ser indicado mediante una lmpara.
Posteriormente, si se oprime el botn de inicio se apagar la lmpara de reposo y se encender la de operacin, adems el mecanismo comenzar a desplazar hacia arriba su parte mvil.
Una vez que la parte mvil alcance su posicin mxima superior, inmediatamente invertir
su sentido de desplazamiento y ahora la parte mvil efectuar un movimiento de descenso.
Cuando la parte mvil alcance su posicin mxima inferior, nuevamente invertir su sentido
de desplazamiento y ahora la parte mvil efectuar un movimiento de ascenso. As continuar bajando y subiendo hasta que se oprima el botn de paro, lo cual provocar que la parte mvil descienda y se detenga, induciendo que la lmpara de operacin se apague y la de reposo se encienda.
Nuestro PLC-PICAXE18 tendr bajo su control la operacin de lmparas, sensores, botones y
un motor que en este ejemplo es de 12 VCD, tal como se indica en el diagrama de la figura 123.
Las entradas que sern empleadas son las identificadas como E0, E1, E2 y E6, las cuales tienen conectadas los siguientes sensores y botones. Ver tabla 11.
El tipo de sensores que se tienen que emplear para este PLC deben reflejar su estado lgico
mediante el cierre o apertura de un contacto, el cual justamente es el que se conecta en los bornes de entrada.
En este programa de ejemplo se estn empleando las salidas identificadas como S0, S1, S2 y
S3 las cuales controlan las lmparas que poseen los botones de inicio y paro, estas lmparas son
de 117 VCA. Adems estas salidas tambin controlan el sentido de giro de un motor de 12 VCD,
por medio de relevadores que se alimentan en su bobina igualmente con 12 VCD, en la tabla 12
se muestra la identificacin de las terminales y la denominacin de las etiquetas relacionadas.
En la figura 123 se aprecia que para controlar el giro del motor se tienen que activar o desactivar 2 relevadores, los cuales nunca deben activarse al mismo tiempo, porque se puede colocar
en cortocircuito a la fuente que alimenta al motor, por lo que en el programa de control se deben
tener en cuenta las condiciones para que cuando se requiera energizar el motor para que suba el
mecanismo, se tiene que desactivar el relevador que provoca el movimiento hacia abajo del mecanismo. Como se explic al comienzo de este ejemplo, se est empleando un juguete que represente la forma de actuar de un mecanismo real, por lo tanto el motor que tiene es de 12 VCD,
pero en una situacin real el motor puede ser con un VCA e inclusive del tipo trifsico, lo cual
no debe representar ningn problema, ya que a travs de los mismos relevadores que estamos proponiendo en esta nota, se
pueden controlar las fases de
los motores y por lo tanto se
manipular el sentido de giro
del motor.
Con respecto a la programacin del PLC-PICAXE18, se
recomienda que se sigan
exactamente los mismos paFigura 124 - Escaln 1 del lenguaje en escalera.
sos que se realizan para pro-

62

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

gramar un PLC, esto es, disear el programa mediante el empleo del llamado lenguaje en escalera, y una vez que tengamos el lenguaje en escalera podremos interpretarlo para su posterior
conversin al cdigo del microcontrolador PICAXE. Por el momento, el PLC-PICAXE18 no
cuenta con la programacin en lenguaje escalera, por lo que a continuacin les mostraremos de
qu manera se interpretan los smbolos para que se controle el mecanismo de este ejemplo.
El diseo del programa en lenguaje en escalera se encuentra de manera completa en la serie de
PLC que se est desarrollando en Saber Electrnica, y a la cual pueden tener acceso en la pgina
www.webelectronica.com.ar y en la seccin de password ingresen la clave progplc. Aqu slo
vamos a describir de qu manera se interpreta el lenguaje en escalera para programar el microcontrolador PICAXE de nuestro PLC.
A continuacin mostraremos las partes del lenguaje en escalera y su debida conversin al cdigo del microcontrolador PICAXE.
En la figura 124 se muestra el primer escaln del lenguaje en escalera, cabe aclarar que este
programa lo hemos presentado en la serie de PLC a que hicimos referencia en el prrafo anterior.
Este fragmento tiene la misin de identificar cuando el botn de inicio sea oprimido por alguna
persona operadora, y ese accionamiento se tiene almacenar en un registro de memoria temporal
del PLC, por lo que estar presente la condicin del accionamiento todo el tiempo mientras no se
oprima el botn de paro.
En este escaln de lenguaje en escalera observemos que son dos funciones lgicas las que se
realizan, en primea instancia la funcin O (OR) en los contactos identificados como E2 y M0, y
el resultado de esta funcin lgica se combina con el contacto identificado como /M1 para formar la funcin lgica Y (AND), y si las funciones lgicas resultan ser verdaderas se proceder a
la activacin de la salida M0. Esta salida M0, no tiene un reflejo hacia fuera del PLC, por lo que
se considera como un salida interna como un registro, por lo que debemos establecer en el PICAXE la cantidad de los registros que sern empleados para este tipo de salidas internas. El PICAXE-18 posee 14 registros de memoria RAM identificados como b0, b1, , b13, y todos stos con un total de 8 bits cada uno, por lo que para guardar el estado de cada una de las salidas internas que se vayan a emplear
basta con manipular un bit por cada una de estas salidas. Para
ello podemos emplear un total de 2 registros de memoria RAM
del PICAXE, los cuales sern b12 y b13, que nos darn capacidad para guardar hasta 16 registros internos del PLC, en caso de
requerir ms, tan slo tenemos que tomar otro registro de memoria RAM del PICAXE, a continuacin se muestra la distribucin de los bits de los registros de memoria RAM empleados.
Para que el escaln 1 del lenguaje en escalera de la figura 124
tenga una equivalencia con el PICAXE, en primera instancia se
leer el estado de la terminal de entrada E2, que es en donde se
tiene conectado el botn de inicio, y en el PICAXE esta accin
est identificada por medio del rombo que internamente tiene la
pregunta pin2 = 1 (observe la figura 126), en este caso se est implementando la funcin lgica OR. Por lo tanto, si la respuesta es s (Y) ya no tiene caso evaluar el estado de la salida
interna M0, pero si la respuesta es no (N) se tiene que verificar el estado de la salida interna M0 por lo que se toma el registro b12 del PICAXE, para de ah verificar el estado del bit B0 Figura 125 - Diagrama de flujo que
representa al Escaln 1.
ya que ste tiene almacenada la informacin del estado de la sa-

Todo SobrE mICroCoNTroLAdorES PICAXE

63

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

lida interna M0, la tcniB0 ca que empleamos en este caso para leer nicaM0
mente el estado de M0 y
M8
descartar todos los dems bits, es el empleo de una mscara que no importando la informacin que tengan los dems
bits los limpiamos (colocamos en cero) y nicamente dejamos al bit correspondiente con M0, para ello hacemos uso del comando let b0 = b12 & 1. Esta operacin tiene una naturaleza lgica
y la empleamos para generar la mscara que nos permite limpiar todos los bits menos el de M0,
el operador & realiza la funcin AND (de la mscara) bit por bit con respecto del registro b12 y
el valor 1 quedando lo siguiente. Supongamos que en b12 se tenga la siguiente informacin 17,
el nmero 17 tiene que ser convertido a binario de 8 bits, por lo que queda 00010001, lo cual
quiere decir que las salidas internas M0 y M4 estn activadas.
El valor 1 al convertirlo a binario de 8 bits queda 00000001, y al emplear el operador & con
el registro b12 se obtiene el siguiente resultado:
Tabla 13 - Ubicacin de las salidas internas del PLC.
B7
B6
B5
B4
B3
B2
B1
b12 M7
M6
M5
M4
M3
M2
M1
b13 M15
M14
M13
M12
M11
M10
M9

Valordecimal
Valorbinario
b12
17
00010001
&
&
1
00000001
....................................................................................
b0
1
00000001
De esta manera, al operar con la funcin AND, el registro b12 con el valor de 1 hace que se
limpien todos los bits menos el que corresponde a M0, y si ste tiene un valor de 1 se conserva
el 1, y si tiene almacenado un 0 tambin se conserva. Para no afectar el estado de los otros bits,
el resultado se almacena en un registro de trabajo que es donde se guardarn los valores que con
carcter temporal se irn generando, el registro de trabajo ser el b0. Como resultado del enmascaramiento se arrojar nicamente un bit y por la posicin que tiene ste, como paso siguiente se
procede a revisar si se encuentra en 1 lgico 0 lgico mediante la pregunta b0 = 1 que se
encuentra dentro de un rombo, observe la figura 125. Si la respuesta es afirmativa la funcin lgica OR entre E2 y M0 ser verdadera, por lo que ahora se tiene que someter este resultado por
medio de la funcin lgica AND con /M1, observe la figura 124. Pero si la respuesta de la funcin lgica OR no fue verdadera, entonces ya no tiene caso continuar con el anlisis del estado
de /M1. Para finalizar con este primer escaln, tenemos que emplear nuevamente un enmascaramiento sobre el registro b12, ya que es ah donde se encuentra el estado de la salida interna M1,
pero ahora ocupa el bit b1, de acuerdo con la tabla 13. En el lenguaje escalera se representa a M1
con el smbolo previo / lo cual quiere decir que se encuentra negado (/M1), esto quiere decir
que el estado lgico de la salida interna tiene que ser 0 para que sea valida, el proceso del enmascaramiento se ilustra a continuacin:
Valordecimal
Valorbinario
17
00010001
&
&
2
00000010
........................................................................................
b0
0
00000000
b12

64

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Para continuar con el mismo ejemplo del enmascaramiento anterior, de igual manera supongamos
que en b12 se encuentra el valor decimal de 17, el
cual mediante la funcin AND (&) operamos con el
valor de 2, porque al convertirlo a binario el lugar
que ocupa el bit 1 corresponde con la salida interna Figura 126 - Escaln 2 del lenguaje en escalera.
M1. En este caso el resultado que se almacenar en
el registro de trabajo b0 ser 0 porque limpiamos todos los bits menos el de M1, pero ste en el
registro b12, tiene un estado lgico almacenado igual con 0, por lo que el resultado final ser 0,
una vez que sabemos cmo se encuentra M1 procedemos a evaluar si cumple con /M1, para que
podamos implementar la funcin AND que se muestra en la figura 124 del lenguaje en escalera.
Para cumplir con la funcin AND se realiza la pregunta b0 = 0 puesto que el resultado de enmascarar al registro b12 para encontrar el estado de M1, se qued precisamente en b0, si el resultado de la pregunta de una respuesta verdadera, quiere decir que el estado de M1 es cero por
lo tanto cumple con todas las condiciones del escaln 1 de la figura 124, por lo que podemos activar la salida interna M0 (colocar en 1 lgico), pero si el resultado de la pregunta b0 = 0 no
es verdadero, no se cumplen con las condiciones del lenguaje escalera de la figura 124, por lo que
la salida interna M1 tiene que colocarse en 0 lgico. La manera de manipular las salidas internas ya sea colocando un 1 un 0 lgico es empleando la operacin let indicando que registro es el que se manipular, que en este caso es b12 ya que ah se encuentra la salida interna M0, por lo que tendremos los siguientes resultados. Si es necesario, colocar un 0 lgico en M0, se tiene que
emplear la operacin let b12 = b12 & 254 observe la figura 125, el
resultado de la operacin no tiene que alterar todos los bits, ya que slo el que corresponde a M0 se tiene que colocar en cero, por lo que si
empleamos 8 bits, el nmero 254 se representa como 11111110 y al
emplear la operacin AND con el registro b12 se tiene lo siguiente:
Valordecimal
Valorbinario
17
00010001
&
&
254
11111110
...........................................................................................
b12
16
00010000
b12

Tabla 14 - Ubicacin de las salidas internas del PLC.


B7
B6
B5
B4
B3
b11
S7
S6
S5
S4
S3

Figura 127 - Diagrama de flujo


que representa al Escaln 2.

B2
S2

B1
S1

B0
S0

Figura 128 - Escaln 3 del lenguaje en escalera.

Todo SobrE mICroCoNTroLAdorES PICAXE

65

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Ahora, si por lo contrario se requiere que M0 se coloque en 1 lgico, la operacin que ser
empleada es let b12 = b12 | 1 observe la figura 125, y de igual manera como en el caso anterior, tan slo debe manipularse el bit que corresponda con M0 que a su vez se encuentra dentro
del registro b12 del PICAXE, y entonces el resultado servir como respaldo para siguientes operaciones donde se encuentre involucrado el registro M0, ya que slo cambiar su estado lgico
cuando se vuelvan a evaluar las condiciones que estn involucradas en
M1.
Valordecimal
b12
17
|
1
b12
17

Valorbinario
00010001
|
00000001
00010001

Una vez que fueron tomadas en


cuenta todas las condiciones del escaln 1 de la figura 124, ahora se implementarn las condiciones del escaln
2 que se muestra en la figura 126.
La tarea que tiene el escaln 2 en
el lenguaje en escalera es el de encender la lmpara que indica que se oprimi el botn de inicio, por lo que la
lmpara indica que el proceso est en
marcha, por lo tanto aqu se aprovecha el resultado del escaln 1, porque
en el escaln 2 se utiliza como nica
condicin el estado lgico de la salida interna M0. En la figura 127 se
muestran las operaciones que hacen
encender la lmpara si es que el estado M0 se encuentra 1, y apaga la lmpara si M0 se encuentra en 0 lgico. Al igual que con las salidas inter- Figura 129 - Diagrama de flujo
nas se tiene que guardar el estado de que representa al Escaln 3.
las salidas, ya que stas pueden emplearse como condiciones en otros
escalones del lenguaje en escalera,
por lo que se tiene que definir en
qu registro de memoria RAM del
PICAXE se tienen que alojar. El
PLC - PICAXE18 cuenta con 8 salidas, por lo que es suficiente el
empleo de un registro, ya que todos
stos poseen 8 bits y cada uno de
ellos reflejar el estado de cada una

66

Todo SobrE mICroCoNTroLAdorES PICAXE

Figura 131- Diagrama de flujo


que representa al Escaln 4.

Figura 130 - Escaln 4 del


lenguaje en escalera.

PICAXE: L A N uEvA F ormA


de las salidas del
PLC.
El registro de memoria RAM que ser
empleado para almacenar el estado lgico
Figura 132 - Escaln 5 del
de las salidas es b11,
lenguaje en escalera.
a continuacin se
muestra la distribucin de los bits de los registros de memoria RAM empleados.
En la figura 128 se muestra el escaln 3 del lenguaje en
escalera, siendo su actividad principal la de indicarle al mecanismo que tiene que desplazar su parte mvil hacia arriba.
El escaln 3, tiene como una de sus condiciones, a la entrada E0, que lee el estado del sensor que identifica la posicin inferior de la parte mvil del mecanismo, que en conjunto con la salida interna M0 generan la funcin lgica
AND, y cuyo resultado se analiza junto con la condicin de
la salida S1 (ya se indic en las operaciones del escaln 2
donde se guardan los estados de las salidas), lo que tiene como consecuencia una funcin lgica OR, que a su vez conforma otra funcin lgica AND junto con las condiciones de
las entradas /E3 y /E1, que son el reflejo tanto del botn de
paro as como del sensor que identifica el estado superior de
la parte mvil del mecanismo respectivamente. Por lo tanto,
el escaln 3 verifica las condiciones de seguridad que tienen
que cumplirse para que el motor de CD se energice y la parte mvil comience su desplazamiento hacia arriba, en la figura 129 se muestra el correspondiente fragmento en el ambiente del PICAXE.
Ahora toca el turno de revisar el escaln 4, que se ilustra
su lenguaje en escalera en la figura 130.
El escaln 4 tiene la primera funcin lgica AND por la
combinacin tanto de la entrada E1 como de la salida interna M0, posteriormente este resultado se utiliza para que junto con la salida S3 y la salida interna M1 se genere la funcin lgica OR. El resultado de las condiciones anteriores se
combina con la entrada
/E0 mediante la funcin
lgica AND y si se cumplen todas las condiciones,
la salida S3 ser activada.
La importancia del escaln 4 radica en la revisin de las condiciones
que tienen que cumplirse
para que el motor de CD

dE

P rogrAmAr

uN

PIC

Figura 133 - Diagrama de flujo que


representa al Escaln 5.

Figura 135 - Diagrama de flujo que


representa al Escaln 6.

Figura 134 - Escaln 6


del lenguaje en escalera.

Todo SobrE mICroCoNTroLAdorES PICAXE

67

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

gire de tal manera, que la


parte mvil del mecanismo se desplace ahora hacia abajo. En la figura
131 se ilustra, en el ambiente de programacin
del PICAXE, la representacin del escaln 4.
Continuando con el
lenguaje en escalera, el
escaln 5 que se muestra
en la figura 132 tan slo
tiene la misin de encender la lmpara que indica
que el proceso se encuentra detenido, y nicamente se emplea como condiFigura 137 - Kit del PLC PICAXE-18.
cin que no est encendida la lmpara que indica la operacin del proceso, ya que de lo contrario la lmpara del paro de
actividades se encontrar apagada. En la figura 133 se muestra la correspondiente interpretacin
del lenguaje en escalera por medio del ambiente del microcontrolador PICAXE.
Por ltimo se tiene el escaln 6, en donde se observa que al inicio se tiene una funcin lgica
OR integrada por las condiciones que genera la entrada E1 y la salida interna M1, y cuyo resultado tiene que someterse junto con la condicin de la entrada /E0 en una funcin lgica AND. Si

Figura 136 - Diagrama


de flujo completo.

68

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Lista de componentes para el ejercicio.


PLC - PICAXE18
SenArr

mininterruptortipopushbutom

SenAb

mininterruptortipopushbutom

BnParo

botontipopushbutomconlmparaintegrada

Inicio

botontipopushbutomconlmparaintegrada

Lmpara1

LmparadelbotnInicio

Lmpara1

LmparadelbotnBnParo

Arriba

Relevadorconbobinade24VCDyunpardecontactosde15Amp.

Abajo

Relevadorconbobinade24VCDyunpardecontactosde15Amp.

Fuentedealimentacinde117VCA
Fuentedealimentacinde127VCD

las condiciones del escaln 6 se cumplen totalmente entonces la salida interna M1 tender a ubicarse en el estado de 1 lgico.
El escaln 6 tiene una amplia importancia, ya que a travs de ste ser posible detener el proceso mediante un botn de paro, el cual puede ser empleado ya sea cuando se ha terminado la jornada laboral o cuando ocurra algn incidente que obligue detener el proceso. El paro de las actividades se realiza cuando se acciona el botn que est destinado a detener el proceso de produccin. En la figura 135 se muestra al escaln 6, representado mediante un fragmento de diagrama
de flujo para el sistema PICAXE.
Hemos recorrido ya la posibilidad que existe de poder programar nuestro PLC an sin contar
con el lenguaje en escalera, empleando un microcontrolador PICAXE-18 y su software de programacin. Por supuesto que sabemos que no es tan fcil de momento programar nuestro PLC,
tal como se hace con el empleo del lenguaje en escalera.
Pero de alguna manera suplimos estas carencias con las herramientas mostradas en este ejemplo, que adems nos parecieron de lo ms adecuado para facilitar la programacin del PLC-PICAXE18. El ejemplo mostrado posee diversas funciones lgicas y con cierto grado de complejidad, por lo que el mtodo aqu desarrollado puede servir de base para futuras programaciones de
nuestro PLC.
Una vez ms les recordamos el programa llamado PICAXE Programming Editor, es el que
se utiliza para poder implementar perfectamente las mismas funciones que se realizan en un lenguaje escalera, con las rutinas que aqu se mostraron para hacer posible la programacin.
El programa completo, tanto en diagramas de flujo como en cdigo Basic, lo podrn descargar de nuestra pgina de internet y en la seccin de password ingresen la clave subeybaja en
donde adems encontrarn esta misma aplicacin pero en lenguaje en escalera. En la figura 137
se muestra el kit del PLC-PICAXE18 que es empleado en este ejercicio.
Si quieren obtener mas informacin de los microcontroladores PICAXE los invitamos a que
descarguen de la pgina de Internet toda la informacin que necesiten de microcontroladores PICAXE, empleando la clave picaxe.

Todo SobrE mICroCoNTroLAdorES PICAXE

69

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

El cdigo en basic, derivado del diagrama


de flujo para implementar el lenguaje en escalera es:
'BASIC converted from flowchart:
'E:\PICAXE\PROGRAMAS DE ARTICULOS\ARTICULO-13\SUBE Y BAJA (PICAXE). CAD
'Converted on 15/11/2005 at 20:43:44
main:
label_4B: if pin2=1 then label_44
let b0=b12& 1
if b0= 1 then label_44
label_61: let b12=b12& 254
let b11=b11& 254
low 0
label_B9:
if pin0=1 then label_84
let b0=b11& 2
if b0= 2 then label_E1
label_FA: let b11=b11& 253
low 1
label_103:
if pin1=1 then label_124
let b0=b11& 8
if b0= 8 then label_150
let b0=b12& 2
if b0= 2 then label_150
label_17F:let b11=b11& 247
low 3
label_186:
let b0=b11& 1
if b0= 0 then label_1A3
let b11=b11& 251
low 2
label_1BF:
if pin6=1 then label_1D6
let b0=b12& 2
if b0= 2 then label_1D6
label_1F5:let b12=b12& 253
label_204:
goto label_4B

PIC

uN

if b0= 0 then label_68


goto label_61
label_68: let b12=b12| 1
let b11=b11| 1
high 0
goto label_B9
label_84: let b0=b12& 1
if b0= 1 then label_E1
label_E1: let b0=pins& 66
if b0= 0 then label_F3
goto label_FA
label_F3: let b11=b11| 2
high 1
goto label_103
label_124:let b0=b12& 1
if b0= 1 then label_150
label_150:if pin0=0 then label_178
goto label_17F
label_178:let b11=b11| 8
high 3
goto label_186
label_1A3:
let b11=b11| 4
high 2
goto label_1BF
label_1D6:
if pin0=0 then label_1FD
goto label_1F5
label_1FD:
let b12=b12| 2
goto label_204

label_44: let b0=b12& 2

70

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

sistemadealarmaDomiciliariainteligente
No caben dudas que con PICAXE, realizar diseos de circuitos electrnicos es ms sencillo...
A continuacin describimos el funcionamiento de una alarma de 3 zonas de entrada y dos zonas
de activacin, pero lo ms importante es que todos los parmetros pueden ser reprogramados a
voluntad del tcnico y/o del usuario. Una de las zonas es de disparo demorado, para que le d la
oportunidad al usuario de desconectar la alarma cuando est ingresando a la propiedad, las otras
dos zonas son de disparo instantneo, lo que implica que una vez detectada una interrupcin, las
salidas cambian de estado de inmediato. En cuanto a las salidas, una de ellas es de activacin continua, de modo que una vez disparada la alarma, slo se desactivar esa salida si se desconecta la
central y la otra salida es temporizada, es decir, una sirena sonar durante 3 minutos y luego se
apagar, quedando el sistema en alerta por si se produce una nueva interrupcin en alguna de
esas zonas, en cuyo caso la salida volver a activarse. Y eso no es todo... el sistema detectar la
posibilidad de fallos en algn sensor de alguna de las tres zonas y si esto ocurre, la deshabilitar
para que no haya disparos errticos del sistema, quedando las otras dos zonas en estado normal
para detectar la presencia de intrusos.
Proponemos el armado de una central de alarma multipropsito que puede utilizarse junto con
otros bloques funcionales para realizar sistemas de seguridad inteligentes, cuyo desempeo dependan del ingenio y la habilidad del tcnico. La central basa su funcionamiento en un microcontrolador PICAXE-08.
Como somos conscientes de que muchos lectores an no han realizado proyectos con microcontroladores PICAXE, en primer lugar describiremos el funcionamiento de una alarma multiuso que fue presentada en el tomo 7 de la coleccin Club Saber Electrnica (figura 138), destinado ntegramente a explicar el funcionamiento y programacin de los microcontroladores PICAXE de 8, 18 y 28 terminales, brindando varios ejemplos prcticos.
2zonasinstantneasprogramables
1zonademoradaprogramable
1salidadeactivacincontinua
1salidadeactivacintemporizadaprogramable
incluye:
tecladomicrocontroladocondisplay
Fuenteconcargadorautomticodebatera
sirenadealtodesempeoconhabilitacinlgica

alarmamultipropsito
conPiCaXeparaaprendizaje
Hoy en da, casi todos los edificios modernos tienen algn tipo de
alarma. Por ejemplo, un sistema contra incendios puede tener una serie
de detectores de humo para actuar a tiempo, si se observa el humo de un
incendio.
Sin embargo, muchos sistemas de alarmas son tambin sistemas de
seguridad, por ejemplo el sistema de alarma de una plataforma de perforacin puede monitorear la temperatura y presin del petrleo crudo a

Figura 138

Todo SobrE mICroCoNTroLAdorES PICAXE

71

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Figura 139

medida que es extrado y puede, automticamente, apagar el sistema si se detecta una falla. Esto
favorece a la seguridad, tanto de los trabajadores como del medio ambiente alrededor de la plataforma.
Todos estos sistemas estn compuestos por dispositivos de entrada y salida. A menudo estos
dispositivos estn conectados a un microcontrolador, el cual interpreta la informacin suministrada por los sensores y luego enciende o apaga las salidas en el momento correcto.
En el caso de un sistema de alarma contra incendios, las entradas podran ser los sensores de
humo y el teclado numrico del frente del panel de control. Los dispositivos de salida seran la
pantalla del panel de control, la sirena externa y luces estroboscpicas. El microcontrolador es el
cerebro del sistema.
El diagrama de bloques utiliza un PICAXE-08 (figura 139). La traduccin de las palabras
que empleamos es:
Input = entrada
Process = procedimiento
Output = salida
Smoke = detector de humo
Strobe = luz estroboscpica
Keypad = teclado numrico
Siren = sirena
Microcontroller = microcontrolador
LCD = pantalla o display LCD
El esquema electrnico del sistema de
alarma para prcticas y aprendizaje se
muestra en la figura
140.
El detector de humo
y el teclado numrico proveen informacin al microcontrolador; por lo
tanto se les conoce
como entradas.

Figura 140

72

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Luego, el microcontrolador decide cmo reaccionar y puede, en determinados casos, operar algunas de las salidas, por ejemplo encender la sirena y la luz estroboscpica o mostrar un mensaje en la pantalla de cristal lquido (LCD).
Disear y construir un sistema de alarma puede resultar muy fcil si Ud. sabe perfectamente
qu es lo que quiere que haga el circuito. La alarma debe programarse de manera que reaccione
a las entradas y a las seales de los sensores. Las especificaciones del diseo son:
1. El diseo utilizar un microcontrolador PICAXE-08 como su cerebro.
2. El diseo incluir una luz indicadora LED, un zumbador para generar ruidos y una alarma que podra ser una sirena o un motor.
3. El diseo ser capaz tambin, de reaccionar a seales de sensores analgicos tales como
sensores de luz.
Esta alarma puede servir para cualquier propsito que usted elija. A continuacin se mencionan algunos ejemplos:
1) Una alarma contra incendios. Se utiliza un sensor de luz para detectar humo. Al detectar
humo se activa una sirena.
2) Una alarma contra robos. Al activar el cable de una trampa se activa una luz estroboscpica. Sin embargo, durante el da la alarma es desactivada por un sensor de luz.
3) La caja fuerte de un banco.
Al activar el interruptor de una alarma de pnico, un cerrojo solenoide electrnico cierra
la caja fuerte del banco.
4) Una alarma para monitorear la recmara de un beb. Cuando no se detectan movimientos
o sonidos se activa un timbre de advertencia.

algunosConceptospararecordar
Vamos a recordar algunos conceptos fundamentales de los microcontroladores PICAXE.
Cmo se escriben los programas?
Los programas se dibujan como organigramas o se escriben como listados de comandos BASIC. Programar en BASIC es fcil, ya hemos dado varios ejemplos y continuaremos hacindolo.
Cmo se transfiere el programa al microcontrolador?
El microcontrolador PICAXE-08 se programa conectando un cable desde el puerto serie de la
computadora a un conector en el circuito impreso (PCB) a un lado del microcontrolador. Este conector (el cual se parece a los conectores de audfonos utilizados en los reproductores porttiles
de CD) se encaja a dos patas del microcontrolador y a la conexin de 0V desde la batera. Esto
permite que la PC y el microcontrolador hablen para permitir la descarga de un nuevo programa en la memoria del microcontrolador.
El conector y el circuito de interface se incluyen en todo circuito impreso diseado para utilizarse con el microcontrolador PICAXE-08. Esto permite reprogramar al microcontrolador PICAXE sin sacar el chip del circuito impreso - Simplemente conecte el cable cada vez que desee
descargar un nuevo programa!

Todo SobrE mICroCoNTroLAdorES PICAXE

73

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Cmo era eso de la salida 0 y la programacin del micro?


En el sistema PICAXE-08 la pata 7 tiene dos funciones, cuando se est ejecutando un programa, la pata se denomina salida0 y puede controlar salidas tales como LEDs y motores.
En cambio, cuando se est descargando un programa, la misma pata acta como pin de salida
serie de datos, comunicndose con la PC. Por lo tanto, si durante esta operacin tambin tiene conectada a la pata una salida tal como un LED, se percatar que el mismo se encender y apagar
continuamente mientras se descarga el programa.
nota:La mayor parte de las computadoras modernas tienen dos puertos serie, usualmente denominados COM1 y COM2. El software Editor de Programacin, utilizado para crear los programas, debe configurarse con el puerto serie correcto seleccione Ver->opciones->Puertoserie para elegir el puerto serie correcto en su mquina.
Si usted est utilizando una nueva PC porttil, puede que sta slo tenga un conector del tipo
USB. En este caso para poder utilizar el Sistema PICAXE deber comprar un adaptador USB a
serie.

PruebadeFuncionamientodeltransistor
Ya hemos visto cmo se prueban algunos componentes por medio del sistema PICAXE. Aprovechando que la alarma posee un transistor, veremos cmo se lo puede probar.
Un transistor es un componente electrnico que controla el flujo de corriente en un circuito.
El transistor acta como un interruptor electrnico de manera que una pequea corriente de
emisor pueda controlar a una gran corriente. Esto permite que dispositivos de poca corriente,
como el microcontrolador, controlen dispositivos de grandes corrientes (como motores).
Los transistores se utilizan en radios, en juguetes electrnicos y en casi todos los dispositivos
electrnicos.
Los motores pueden generar ruido elctrico cuando estn funcionando. Esto ocurre debido
a que los imanes y las bobinas elctricas, que estn dentro del motor, generan seales elctricas
a medida que el motor rota. Estas seales (ruido elctrico) pueden afectar la operacin del microcontrolador. Algunos motores, como los motores solares, producen muy poco ruido mientras que
otros producen mucho ruido.
Para evitar que el ruido elctrico afecte al circuito del microcontrolador, se debe instalar siempre un condensador de 220nF entre los terminales del motor antes de utilizarlo.
Adicionalmente, se debe conectar un diodo (por ejemplo un diodo 1N4001) a un lado del motor. Este se utiliza para prevenir daos al transistor cuando el motor comienza a desacelerarse luego de haber apagado el transistor (por un corto perodo de tiempo (mientras se desacelera y finalmente se detiene) el motor acta como un dnamo y genera corriente elctrica). Al conectar el diodo asegrese que la banda est conectada en el sentido correcto.
Output device = dispositivo de salida
Otra buena idea es conectar un condensador electroltico de 100F a travs del suministro de
las bateras, para ayudar a suprimir el ruido elctrico. Para probar un transistor con el sistema PICAXE, se puede conectar un timbre como dispositivo de salida. La base del transistor recibir
una seal desde la salida 4 (pata 3) del microcontrolador.
Despus de conectar el timbre lo podemos probar utilizando un simple programa, como el que
se muestra a continuacin:

74

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

main:
high4
wait1
low4
wait1
gotomain
Este programa enciende y apaga cada segundo, el timbre conectado al pin de salida 4.
Para descargar el programa, siga los pasos que hemos explicado en varias oportunidades a lo
largo de este texto, empleando cualquiera de los circuitos (entrenador para PICAXE-08, mascota o la alarma que estamos describiendo y cuyo circuito daremos ms adelante). Si el timbre no
funciona verifique que:
1) el diodo est conectado en el sentido correcto
2) se estn utilizando las resistencias correctas
3) el transistor est conectado en el sentido correcto
4) el cable rojo del timbre est conectado en el sentido correcto
5) se est utilizando el nmero de pin de salida correcto en el programa
6) todas las uniones estn bien soldadas
Entre los dispositivos de salida que se pueden conectar mediante un transistor estn los timbres, motores, solenoides, sirenas y luces estroboscpicas. Sin embargo, algunos dispositivos
puede que requieran transistores de alta potencia. En estos casos se puede utilizar el transistor
Darlington BCX38B en vez del transistor estndar BC548B.
Segn podemos observar en la figura 140, el proyecto de alarma utiliza un microcontrolador
PICAXE-08, un LED y un zumbador como dispositivos de retroalimentacin, y un dispositivo de
salida adicional elegido por el usuario (sirena o luz estroboscpica).
Este proyecto tambin puede reaccionar a seales de sensores digitales y/o analgicos (por
ejemplo a fotorresistencias).
Del circuito de la alarma debemos hacer las siguientes observaciones:
Salida de la pata 7: el pin0 est conectado al LED.
Salida de la pata 5: el pin2 est conectado al zumbador.
Salida de la pata 3: el pin4 controla a los dispositivos de salida.
Entrada de la pata 6: el pin1 est conectado a la fotorresistencia.
Entrada de la pata 4: el pin3 est conectado al interruptor de botn de presin.
recuerdenoconfundirelnmerodepatadelchipconelnmerodepindesalida/entrada!
La lista de materiales para la construccin de la alarma es la siguiente:
R1 y R2: resistencias de 10k (marrn negro naranja dorado)
R3: resistencia de 22k (rojo rojo naranja dorado)
R4 : resistencia de 330 (naranja naranja marrn dorado)
R5 y R6: resistencia de 1k (marrn negro rojo dorado)
LED1 : LEDs rojos de 5 mm
TR1: transistor BC548B
D1: diodo 1N4001

Todo SobrE mICroCoNTroLAdorES PICAXE

75

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

C1: Electroltico de 100uF


IC1: conector de 8 pines para circuito integrado
PX: microcontrolador PICAXE-08
CT1: conector de descarga PICAXE de 3.5 mm
BT1: conector de batera
BT1: caja de bateras de 4.5V (3 x AA)
PCB: tablero o placa de circuito impreso
La empresa Revolution Education ofrece la placa de circuito impreso, fabricada especialmente con una pelcula
resistente a la soldadura, para hacer el proceso de soldadura ms sencillo. Esta pelcula es la cubierta verde que
cubre las pistas de manera que la soldadura no se pegue a
las mismas. Para una construccin correcta, el PCB se debe ensamblar y soldar muy cuidadosamente.
En la figura 141 se reproduce el diseo de la placa de circuito impreso. Una vez armado el circuito realice las siguientes verificaciones:

Figura 141

Paso1Verifiquelasunionessoldadas.
Verifique que todas las uniones estn conectadas tanto al
terminal como al cable, y que el cable est sujeto firmemente.
Tambin verifique que la soldadura no haga accidentalmente puentes entre terminales adyacentes. Esto es mucho
ms probable en el LED y en el zumbador.
En el conector estreo, los terminales cuadrados a cada lado pueden unirse sin ninguna consecuencia, ya que de todas formas estn unidos por una pista en el tablero. Sin
embargo, stos no deben unirse al agujero redondo central.

Paso2Verifiqueloscomponentes.
1) Verifique que el cable negro de la batera est en el agujero marcado 0V y
que el cable rojo est en el agujero marcado V+.
2) Verifique que el chip PICAXE-08 est insertado correctamente en el conector, con la muesca (que muestra el pin1) apuntando hacia el conector estreo.
3) Verifique que el lado plano del LED est conectado al agujero correcto
del PCB.
4) Asegrese de no haber olvidado unir, mediante un alambre, los agujeros
marcados PX en el extremo inferior izquierdo del tablero.
5) Asegrese de pegar el lado de bronce del zumbador al tablero con cinta
adhesiva de doble contacto.
6) Verifique que el conector est soldado correctamente, incluyendo el ter-

76

Todo SobrE mICroCoNTroLAdorES PICAXE

Figura142

PICAXE: L A N uEvA F ormA

dE

minal cuadrado central, el cual a menudo, es olvidado por equivocacin.

P rogrAmAr

uN

PIC

Figura143

Paso3Conectelabatera.
Verifique que las 3 pilas AA estn colocadas correctamente dentro
de la caja de bateras. Conecte la caja de bateras al cable de bateras y
ponga su dedo sobre el microcontrolador PICAXE. Si comienza a calentarse desconecte la batera inmediatamente, ya que debe haber algn problema (lo ms seguro es que el chip o los cables de la batera
estn conectados en sentido inverso).
Paso4descargueun
programaparaprobarelLEd0
Conecte el cable a su computadora y al conector PICAXE en el
PCB. Vea que el conector del cable quede completamente dentro del
conector del PCB.
Asegrese que el software est en el modo PICAXE-08 y que haya elegido el puerto serie correcto.
Escriba y descargue el siguiente programa (figura 142):

Figura 144

main:
high0
wait1
low0
wait1
gotomain
El LED debe titilar a medida que se descarga el programa. Al terminar la descarga, el LED deber encenderse y apagarse cada segundo. Si el LED no hace esto verifique que est conectado correctamente y que las resistencias de 330 estn en la posicin correcta en el
PCB.
Si el programa no se descarga verifique que la resistencia
de 22k, la de 10k y el conector IC estn soldados correctamente. Utilice un voltmetro para verificar si hay 4.5V entre
las patas superiores (1 y 8) del microcontrolador.
Verifique que el cable est firmemente conectado al conector y que dentro del software se haya elegido el puerto serie correcto.

Figura 145

Paso5Pruebelasalida
Conecte un dispositivo de salida (por ejemplo un timbre) a
los cables de salida y luego escriba y descargue el siguiente
programa (figura 143):
main:
high4

Todo SobrE mICroCoNTroLAdorES PICAXE

77

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

wait1
low4
wait1
gotomain

PIC
Figura146

El timbre deber sonar cada segundo. Si no lo hace, verifique que


los cables del transistor, del diodo y
del timbre estn conectados en la direccin correcta.
Paso6Pruebeelzumbador
Escriba y descargue el siguiente
programa como muestra la figura
144.
main:
sound2,(65,100)
sound2,(78,100)
sound2,(88,100)
sound2,(119,100)
gotomain
El zumbador debe emitir 4 sonidos diferentes. Si no hace esto asegrese que los alambres estn soldados correctamente, que el
lado de bronce est firmemente pegado al PCB con una cinta adhesiva de doble contacto (no trabajar si est flojo) y que los terminales sobre las letras PX estn debidamente unidos mediante
un alambre soldado.
Paso7-PruebeelInterruptor
Conecte un interruptor a la entrada digital. Escriba y descargue el siguiente programa (observe
la figura 145):
main:
ifinput3isonthenflash
gotomain

'hacerunaetiquetallamadamain
'saltaaflashsilaentradaestencendida
'sinoregresarainicio

high0
wait2
low0
gotomain

'hacerunaetiquetallamadaflash
'encendersalida0
'esperar2segundos
'apagarsalida0
'regresaralinicio

flash:

El LED de la salida 0 deber encenderse cada vez que se presione el interruptor. Si no lo hace, verifique que el interruptor y que las resistencias de 10k estn soldadas correctamente.

78

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Paso8Pruebela
Fotorresistencia
Conecte una fotorresistencia a la entrada analgica. Escriba y descargue el siguiente programa (figura 146):
main:
readadc1,b1
ifb1>100thendo4
ifb1>50thendo0
low0
low4
gotomain
do4:
high4
low0
gotomain
do0:
high0
low4
gotomain
Ambos LEDs debern encenderse en momentos distintos cuando usted cubre y descubre la fotorresistencia con su mano (de manera que incidan sobre la fotorresistencia distintos niveles de
luz). Si esto no ocurre, verifique que la fotorresistencia y la resistencia de 1k estn soldadas correctamente.
Si ha ejecutado todas estas pruebas correctamente lo felicitamos ya que ha construido y ensamblado correctamente su alarma! Ahora es el momento de desarrollar y probar sus propios
programas para operar su sistema de alarma!
ideasdeProgramacin
Ahora que ha ensamblado y probado su alarma, es el momento de desarrollar su propio programa. Este puede hacer que la alarma reaccione de diferentes maneras a los sensores analgicos
y digitales.
Veremos ahora dos ejemplos de programas. Estos estn diseados para darle un punto de partida para la creacin de su programa. Usted puede modificarlos o comenzar a hacer un programa
completamente nuevo si as lo prefiere.

Programa1
Este programa de uso general contiene un bucle principal el cual enciende y apaga el LED, y
tambin verifica el estado del sensor analgico (fotorresistencia) y de la entrada digital (interruptor). Cuando se presiona el interruptor suena una alarma por dos segundos.
Si la fotorresistencia se cubre, el zumbador emitir un pip de advertencia hasta que el nivel
de luz vuelva a subir.

Todo SobrE mICroCoNTroLAdorES PICAXE

79

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

` Programa 1
` ***** bucle principal *****
` enciende y apaga el LED
` y verifica el estado de los sensores
main:
` encender LED y leer el valor de luz
high0
readadc1,b1
` emitir un sonido si el valor analgico es bajo
ifb1<80thenbeep
` si el interruptor es presionado ir a alarm
ifpin3=1thenalarm
` hacer una pausa
pause500
` apagar LED y verificar nuevamente el estado
` de los sensores
low0
readadc1,b1
` emitir un sonido si el valor analgico es bajo
ifb1<80thenbeep
` si el interruptor es presionado ir a alarm
ifpin3=1thenalarm
` hacer una pausa
pause500
gotomain
` ***** emitir sonido *****
beep:
sound2,(120,50,80,50,120,50)
pause200
gotomain
` ***** encender alarma *****
alarm:
high4
pause2000
low4
gotomain

80

Todo SobrE mICroCoNTroLAdorES PICAXE

PIC

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Programa2
Este programa est diseado como si fuera un sistema de alarma contra incendios. En el mismo, la alarma se activa una vez que se detecta humo sobre el sensor de luz (cuando el sensor de
luz indica un valor de luz menor de lo normal).
Una vez que la alarma se ha activado, la misma se mantiene encendida y slo es posible apagarla desconectando la alimentacin del sistema. La entrada digital se utiliza como dispositivo
anti-vandalismo. Mientras la caja de la alarma est cerrada, el interruptor se mantendr encendido (sta es la condicin normal). Si se abre la caja, el interruptor se abrir y activar la alarma del
zumbador hasta que la caja vuelva a cerrarse.

` Programa 2
` ***** bucle principal *****
` verificar estado de los sensores
main:
` LED apagado
low0
` leer valor de luz
readadc1,b1
` activar la alarma si el valor analgico es bajo
ifb1<80thenalarm
` si el interruptor se apaga ir a tamper
ifpin3=0thentamper
gotomain
` ***** activar alarma anti-vandalismo hasta
` que el interruptor vuelva a cerrarse*****
tamper:
high0
sound2,(120,100)
ifpin3=1thenmain
gototamper
` ***** alarma encendida eternamente *****
alarm:
high4
gotoalarm

Todo SobrE mICroCoNTroLAdorES PICAXE

81

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Estos son simplemente dos de los muchos ejemplos que pueden utilizarse para la programacin de su alarma.
Nota: Aclaramos que lo dado hasta aqu fue explicado en el tomo de Coleccin N 7 del Club
Saber Electrnica con mayores detalles y que si a Ud. le interesa el tema, puede bajarlo de nuestra web con la clave alarma. Tambin le comentamos que hay en existencia un kit (AXE102)
con todos los componentes de esta alarma multiuso, que en Argentina tiene un costo de $44.
Si ha ledo atentamente estas pginas, habr podido comprobar que trabajar con PICAXE es
muy fcil y conveniente. Un PICAXE es un PIC normal al que se le ha grabado un programita
interno (firmware) para que se lo pueda programar utilizando una aplicacin gratuita llamada
Editor de Programas (que puede bajar de nuestra web) por medio de diagramas de flujo o en BASIC y lo que es mejor an: no hace falta quitar el integrado del circuito para su programacin,
es decir, no precisa un cargador adicional.

Centraldealarmainteligente
Describimos el funcionamiento de una alarma de 3 zonas de entrada y dos zonas de activacin
microcontrolada en la que las variables (tiempos de demora y activacin, zonas instantneas o demoradas, salidas continuas o temporizadas, etc.) pueden ser reprogramados a voluntad del tcnico y/o del usuario. Una de las zonas es de disparo demorado para que le d la oportunidad al usuaFigura147

82

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

rio de desconectar la alarFigura148


ma cuando est ingresando a la propiedad, las otras
dos zonas son de disparo
instantneo, lo que implica que una vez detectada
una interrupcin, las salidas cambian de estado de
inmediato. En cuanto a las
PICAXE
salidas, una de ellas es de
activacin continua de
modo que una vez disparada la alarma, slo se desactivar esa salida si se desconecta la central y la otra salida es temporizada, es decir, una sirena sonar durante 3 minutos y luego se apagar, quedando el sistema en
alerta por si se produce una nueva interrupcin en alguna de esas zonas, en cuyo caso la salida
volver a activarse.
El sistema podr detectar posibles fallas en algn sensor de alguna de las tres zonas y si esto
ocurre, la deshabilitar (a la zona) para que no haya disparos errticos del sistema, quedando las
otras dos zonas en estado normal para detectar la presencia de intrusos.
En la figura 147 podemos apreciar el diagrama en bloques del sistema de alarma inteligente.
Note que se compone de una central de alarma microcontrolada, una fuente de alimentacin,
un teclado de activacin, sensores de actividad (magnticos, de movimiento, interruptores, ultrasonido, de humo, etc.) y sistemas de alerta (sirena, discador telefnico, etc.).
El corazn de este sistema es la central que posee un microcontrolador PICAXE-08. A los
fines prcticos, en la figura 148 se reproduce el circuito bsico de funcionamiento de este circuito integrado. Para este integrado se recomienda una tensin de alimentacin de 5V y dos resistores para establecer la tensin necesarias en los datos a ser ingresados al PICAXE. Posee 5 patas
de entrada/salida de datos denominados PIN 0 a PIN 4. El PIN 0 (pata 7) solamente puede ser salida de datos, el PIN 3 (pata 4) slo puede ser entrada y el resto pueden ser seteados como entrada o salida de datos.
Para programar el PICAXE se conecta un plug estreo pequeo en el conector denominado
PROG y por medio de un cable se conecta al puerto serial de la computadora (vea en la figura
149 el armado del cable). El programa, ya sea en diagrama de flujo o en BASIC puede construirse en el utilitario Editor de Programas que puede bajar sin cargo de nuestra web con la clave
PICAXE.

Figura149

Todo SobrE mICroCoNTroLAdorES PICAXE

83

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

El circuito de la central
es muy sencillo, en la tabla 15 encontrar la coPata N
PIN N
Funcin
rrespondencia entre las
patas del PICAXE y las
3
E/S4
Entrada1(demorada)
entradas y salidas de la
4
E3
Entrada2(instantnea)
placa. En los diagramas
5
E/S2
Entrada3(instantnea) que explicaremos, si se
6
E/S1
Salida2(temporizada) detecta un cambio de es7
S0
Salida1(continua) tado en la entrada demorada, el operador tiene 10
segundos para desactivar la alarma antes de que se accione el sistema sonoro. No importa que se
vuelva a reestablecer el circuito luego de haberse detectado una interrupcin, ya que igualmente
se activarn luego de 10 segundos de detectada la primera interrupcin.
Cuando se aplica alimentacin a la central, hay un perodo de rearme de 10 segundos durante los cuales las entradas estn inhibidas para dar tiempo al usuario de abandonar la propiedad
protegida luego de haber puesto la alarma. Durante estos 10 segundos no sern reconocidas ningn cambio de estados en los sensores de las tres zonas. Pasados estos 10 segundos, si se detecta una interrupcin en las entradas instantneas, de inmediato se accionarn las salidas.
En cuanto a las salidas, proponemos dos posibilidades. La salida 1 es de activacin continua,
lo que significa que una vez disparada la alarma, esta salida slo se deshabilitar si se apaga la
central (si se la desconecta) mientras que la salida 2 es temporizada y esto se debe a que muchas
veces el usuario pretende que exista un sistema sonoro que suene durante un tiempo y luego se
apague, de modo de dar la alerta a un sereno o a la polica pero que no altere la paz a los vecinos durante mucho tiempo. Esta salida puede estar activa en tiempos de algunos segundos hasta
varios minutos y hasta horas.
En la figura 150 damos el circuito elctrico de la central de alarma y en la figura 151 se reproduce una sugerencia para la placa de circuito impreso.
Note que las entradas se han dispuesto de forma tal, que hace falta un corto entre ambos cables para que la zona se active. De esta manera, cualquier corte o interrupcin har disparar al
sistema. Por cada zona puede conectar ms de un sensor siempre que los mismos estn en serie
Tabla 15: Definicin de entradas y salidas del PICAXE

Figura150

84

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA


y que los mismos representen un corto
(un cable) en estado de reposo.
En cuanto a las salidas, note que se
han colocado transistores BC548, los
que se saturarn cada vez que una salida
se active. En esta condicin se podrn
alimentar dispositivos con un consumo
de hasta 150mA. Para el disparo de sirenas o cualquier otro dispositivo, recomendamos la colocacin de rels en las
salidas, los cuales se conectan directamente (tenga presente que puede colocar
cualquiera de 6V de alimentacin con
corriente de activacin inferior a
150mA, cualquier rel de los usados en
circuitos impresos sirve).

dE

P rogrAmAr

uN

PIC

Figura151

ProgramacindelaCentral
Usted puede generar el programa que
quiera, teniendo en cuenta las indicaciones que hemos dado a travs de la tabla 1. Nosotros
preparamos dos versiones,
pero nada impide que Ud.
realice un programa a su
medida.
La primera versin funciona como hemos explicado hasta recin sin ninguna restriccin, por lo
tanto no es inteligente.
Se trata de un sistema comn, con 2 zonas de disparo instantneo, una zona de
disparo demorado, una salida continua y otra temporizada. En la figura 152 se
puede ver el diagrama de
flujo construido en el Editor de Programas y en la figura 153 el correspondiente programa en BASIC. El
archivo para poder abrirlo
en el Editor de Programas
se llama sencilla.cad y lo

Figura152

Todo SobrE mICroCoNTroLAdorES PICAXE

85

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

PIC

uN

Figura153

puede bajar de nuestra web: www.webelectronica.com.ar, haciendo


click en el cono password e ingresando la clave alarma. En dicho
sitio tambin encontrar un link para bajar el Editor de Programacin
y un tutorial para aprender a usar el
programa.
Para programar la central, primero debe armar la placa, revisar
que est todo correcto, colocar el
cable entre la placa y la computadora, abrir el editor de programas,
abrir el archivo sencilla.cad, convertir el programa a su correspondiente BASIC y luego descargarlo
sobre la placa. Eso es todo... ahora
tendr una central lista para montar
su sistema.

Figura154

86

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

Para este programa, hemos programado los siguiente datos:


Tiempo de rearme: 10 segundos
Tiempo de demora de zona: 10 segundos
Tiempo de salida temporizada: 4.6 segundos.
En la figura 152 indicamos cules son los tiempos que debe cambiar en cada caso, antes de
convertir el programa a BASIC. Tenga en cuenta que el valor de la salida temporizada se d con
la instruccin sleep, lo que significa que cada unidad programada corresponde a 2,3 segundos. Si
Ud. quiere que esa salida est activa durante 3 minutos, precisar demorar 180 segundos, o sea,
colocamos 80 en el casillero de sleep.

elProgramainteligente
Muchas veces, por desperfectos de un sensor, o porque la suciedad interrumpe un haz en un
sensor externo, o por cualquier otro motivo, se dispara una alarma, sin que ello signifique que hay
intrusos... simplemente es un desperfecto. La posibilidad de contar con tres zonas de entrada permite que, aunque desconectemos una de ellas, exista proteccin por medio de las dos zonas restantes. En la figura 154 mostramos el diagrama de flujo construido en el Editor de Programas para un programa que va contando la cantidad de veces que se dispara el sistema desde una zona
sin que se haya desconectado la central, de esta manera, si un sensor se daa, la alarma actuar
normalmente, pero al efectuar tres veces el ciclo de disparo desde la misma zona, el sistema entender que hay una falla, deshabilitar la zona, pero la central continuar operando normalmente, protegida por los sensores de las otras dos zonas. Es por este motivo que el instalador deber
colocar sensores en lugares estratgicos, conectados a diferentes zonas, de manera que si un ladrn reconoce esta forma de operar el sistema, corta un cable externo dndose a la fuga hasta
ver qu sucede y si nadie acude al aviso vuelve, ser detectado por otro sensor (conectado a otra
zona) y la alarma volver a dar una seal de aviso.
De esta manera, si el dueo de casa sale de vacaciones y la alarma se dispara por una falla, los
vecinos no debern soportar el sonido del sistema de aviso durante horas... slo 3 veces el tiempo programado para la salida temporizada.
En la figura 154 se reproduce este programa en diagrama de flujo y en la tabla 16 se lista el
programa en BASIC.
El archivo para poder abrir esta versin que llamamos inteligente (porque en base a datos
previos realiza diferentes cosas) en el Editor de Programa se llama media.cad y lo puede bajar
de nuestra web: www.webelectronica.com.ar, haciendo click en el cono password e ingresando
la clave alarma. En dicho sitio tambin encontrar un link para bajar el Editor de Programacin y un tutorial para aprender a usar el programa. Tambin hay otras versiones para cargar al
PICAXE-08 de modo que realice otras funciones e incluso, una opcin que llamamos complicada.cad que verifica lo que est sucediendo en cada zona a cada instante y acta en consecuencia. Este programa es demasiado grande y no entra en un PICAXE-08, por lo cual habra que utilizar un PICAXE18-A, en cuyo caso habra que adaptar el circuito impreso.
Cabe aclarar que hemos descripto la central de alarma, para completar el sistema hacen falta
los sensores (magnticos, de movimiento, ultrasnicos, barreras infrarrojas, etc.), la fuente con su
batera, el teclado y el sistema de aviso. En otras ediciones hemos dado circuitos de algunos de
estos dispositivos y en esta nota describiremos otros.

Todo SobrE mICroCoNTroLAdorES PICAXE

87

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

Tabla 16: Programa para el sistema Inteligente


'BASIC converted from flowchart:
'C:\DOCUMENTS AND SETTINGS\HORACIO\ESCRITORIO\ALARMA\MEDIA.CAD
'Converted on 7/23/2005 at 18:08:53

main:
low0
low1
letb0=0
letb1=0
letb2=0
wait10

label_D:

label_1B:

; fija el tiempo de rearme

ifpin2=1thenlabel_76
ifpin3=1thenlabel_7D
ifpin4=1thenlabel_3C
gotolabel_1B

label_3C:

wait10

label_43:

high0
high1
sleep3

label_76:

gotolabel_1B
letb0=b0+1
gotolabel_43

label_7D:

letb1=b1+1
gotolabel_43

label_A9:

ifpin3=1thenlabel_B4
ifpin4=1thenlabel_BC
gotolabel_A9

label_B4:

letb1=b1+1
gotolabel_43

label_BC:

wait10

; fija el tiempo de demora


; de la Entrada 1

gotolabel_43
label_C7:

ifpin2=1thenlabel_E6
ifpin4=1thenlabel_DE
gotolabel_C7

label_DE:

wait10

; fija el tiempo de demora


; de la Entrada 1

; fija el tiempo de la salida


; temporizada en mltiplos
; de 2,3 segundos

low1
ifb0=3thenlabel_A9
ifb1=3thenlabel_C7

PIC

; fija el tiempo de demora


; de la Entrada 1

gotolabel_43
label_E6:

letb0=b0+1
gotolabel_43

FuenteparasistemadealarmaconControlautomticodeBateras
Un sistema de alarma se tiene que poder alimentar a travs de una fuente de alimentacin conectada a la red elctrica o desde una batera, para que el conjunto siga operando por ms que
exista un corte de energa. Para el sistema de alarma inteligente que estamos describiendo, es preciso contar con una tensin de 5V (de 4,5V a 6V) para la central y 12V para los dispositivos externos.

Figura155

88

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

En la figura155 se
puede apreciar el circuito
correspondiente a la fuente propuesta. Este diagrama precisa un transformador con primario de
acuerdo a la red local y
secundario de 15V + 15V
x 3A, de modo que sea
posible alimentar elementos externos relativamente
potentes. El circuito es
muy sencillo y emplea un
regulador de tensin de
tres terminales para alimentar a la central de
alarma. Note que se tiene
un conector que debe ser
conectado al cargador automtico de bateras y
otro conector a donde deFigura156
ben colocarse los bornes
de la batera. Debido a la
accin de los diodos D5 y
D6, como la tensin de la fuente es superior a la de la batera (aproximadamente 15V), mientras
haya energa elctrica la batera estar en estado de espera y sta proveer la alimentacin cuando se corte la corriente.
El circuito es muy sencillo y no admite consideraciones especiales. La tensin de 12V puede
proveer una corriente de hasta 2A, mientras que la tensin de 5V puede proveer una corriente mxima de 1A.
El diseo para la placa de circuito impreso sugerida se muestra en la figura 156.
El cargador incluye un doblador de tensin, basado en el conocido circuito integrado 555. Este circuito genera una seal oscilante de forma de onda cuadrada que hace que la salida en la pata 3 pase alternativamente, entre los estados de masa y 12V.
Figura157

Todo SobrE mICroCoNTroLAdorES PICAXE

89

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

En el circuito de la figura 157, cuando la pata 3 del 555 est a nivel lgico bajo (conectada a
masa), C3 se carga a travs de D2 y de D3 hasta que la tensin en sus bornes sea de una magnitud prxima a 12V.
Si la pata 3 est a nivel lgico alto (conectada a la tensin de alimentacin), la tensin en el
punto de unin de C3/D3 pasar a un valor dos veces ms grande, puesto que el polo negativo de
C3 est ya a 12V y la tensin en los bornes de este capacitor cargado es tambin de 12V. Note
que el diodo D3 est polarizado en forma inversa y se bloquea, mientras estar en estado de conduccin, en estas condiciones, C4 debera cargarse con una tensin superior a 12V y llegar en teora a los 24V. En la prctica, la carga apenas sobrepasa algunos volt la tensin de fuente, que es
ms de 12V, lo que resulta suficiente para nuestros propsitos.
A la salida del doblador de tensin nos encontramos con un regulador hecho a partir de un
transistor NPN con un zener como referencia. Podra colocar un BC548 en lugar del TIP31, dado que la corriente de carga ser pequea, sin embargo, por seguridad, aconsejamos el empleo del
transistor de potencia.
Se debe ajustar la tensin de salida por medio de VR1 para que sea levemente superior a los
14V, aunque si viera que en carga no hay corriente, deber aumentar este valor. Lo ideal sera que
con una batera descargada y conectando un ampermetro en serie, la corriente de carga sea del
orden de los 10mA a 20mA.
Cabe aclarar que la corriente que deber entregar la fuente es superior a este valor (llega a
unos 25mA), a consecuencia de que el integrado consume corriente.
Cabe aclarar que las bateras empleadas en sistemas de seguridad poseen una capacidad del
orden de los 8 ampere/hora, lo cual supone que si la cargamos a razn de 10mA/hora tardara
unos 40 das en cargarse totalmente (si estuviera descargada por completo). Sin embargo, esto no
ocurre dado que el acumulador se encuentra en condiciones de carga las 24 horas del da. Para
bateras de capacidad igual a 500mA/hora, el tiempo de carga sera de aproximadamente igual a
un da.

sirenaparaalarmaconHabilitacinLgica
El interesante circuito de sirena que presentamos se caracteriza por la elevada potencia que
puede entregar un parlante por el uso de un transistor de efecto de campo de potencia (Power
FET).
Adems de esto, esta sirena tiene ajustes de tono, modulacin e intermitencia independientes,
lo que posibilita al usuario ajustar el circuito para un mejor sonido.
Finalmente, esta sirena es habilitada directamente por una salida lgica CMOS sin la necesidad de rel, y en la condicin de espera su consumo es extremadamente bajo. Eso la vuelve ideal
para circuitos de alarma alimentados por batera o bien para uso automotor.
La sencillez del proyecto permite tambin su montaje en una caja de dimensiones reducidas.
Las caractersticas son las siguientes:
Tensin de alimentacin: 6Vc.c. a 12Vc.c.
Corriente de reposo: inferior a 1mA.
Corriente en accionamiento pleno: 2A a 4A.
Potencia de audio: 10 a 20W.

90

Todo SobrE mICroCoNTroLAdorES PICAXE

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

En trminos de oscilador de bajo consumo y


excelente desempeo, pocos circuitos integrados
pueden ganarle al 4093. En verdad, sus cuatro
puertas NAND independientes pueden resultar en
hasta 4 osciladores diferentes, y con la posibilidad
de comando externo.
En la figura 158 tenemos el diagrama completo de la sirena.
En este circuito usamos dos puertas como osciladores y otras dos ms como buffers mezcladores
y amplificadores.
De esta forma, la primera puerta (CI1a) es el
oscilador de modulacin, que determina la cadencia de los toques o sus variaciones. En este circuiFigura159
to, VR1 determina la frecuencia juntamente con
C1, mientras que VR2 determina la profundidad
de la modulacin.
En verdad, podemos hasta modificar el efecto,
"suavizando" la modulacin con la conexin de
un capacitor de 1F a 22F entre la juntura de
VR2 y R5 y el negativo (0V) de la alimentacin.
El oscilador de audio est formado por CI1b y tiene su frecuencia determinada por C2 y ajustada en
VR3. Obtenemos en la salida de este oscilador un
tono de audio modulado que es llevado a las otras
dos puertas, que funcionan como un buffer (aislador) y amplificador digital. Las seales entregadas
a este buffer pueden ser controladas externamente por el pin 5 del CI1b. Si este pin estuviera en
el nivel bajo, lo que ocurre sin seal de habilitacin (H), ya que R4 lo mantiene a tierra, el oscilador CI1b no funciona. Si este pin fuera al nivel alto, a partir de una salida CMOS por ejemplo,
Figura158

Todo SobrE mICroCoNTroLAdorES PICAXE

91

PICAXE: L A N uEvA F ormA

dE

P rogrAmAr

uN

PIC

LISTA DE MATERIALES
Central de Alarma
R1:22k
R2:10k
R3,R4,R5:1k
R6,R7,R8yR9:330
IC1:PICAXE-08
D1yD2:diodosled
Q1yQ2:BC548B
D3yD4:1N4148
Conectorminijackstereo
Conectoresparalasentradasy
salidas.
Fuentede4a6V.
Fuente para Alarma
ICReg1:7805
D1,D2,D4,D5yD6:diodos
1N5402
D3:diodoZener15Vx1W

C1:470pF
C2:100F
R1:470
R2:1k
Q1:TIP31C
Transformadorconprimario
segnredlocalysecundariode
12+12Vpor3A.
Teclado Microcontrolado
Q1:TIP31C
Q2:BC547
Cristaldecuarzode10MHz
1PIC16F876
2capacitoresde22pF
4resistoresde1k
5resistoresde10k
1resistorde470
1resistorde680

1presetde10k
1mduloLCD16X2
1tecladoHEXde4filasy4
columnas
1diodo1N4007
1rel
Sirena para Alarma
IC1:4093B
Q1:IRF640
R1:10k
R2,R3,R4,R5,R6yR7:1k
VR1,VR2:1M
VR3:100k
C1yC2:1Fx25V
C3:100Fx25V
Baterade12V
Varios: cables,estao,etc.

el oscilador entra en accin, siendo modulado por CI1a. Las seales amplificadas digitalmente
son llevadas a un transistor de efecto de campo de potencia del tipo IRF640 o equivalente. En
realidad puede emplearse cualquier FET de ms de 1A de fuente, es por ello que en la placa de
circuito impreso identificamos dnde debe conectarse cada pata del transistor. Le recomiendo que
consulte en la casa de electrnica de su localidad qu transistor FET de potencia tiene, pdale que
le indique la disposicin de los terminales y conctelo a la placa de circuito impreso (figura 159)
por medio de cables y dtelo de un disipador de calor.
La principal caracterstica de este tipo de transistor es presentar una resistencia extremadamente baja entre el drenaje (d) y la fuente (s) cuando est saturado.
Esto significa un excelente rendimiento en la excitacin de parlantes y otras cargas en circuitos de baja tensin. De hecho, estos transistores pueden conducir corrientes muy elevadas (del orden de varios amperes) sin problemas, lo que significa una potencia de decenas de watt en un parlante comn.
La disposicin de los componentes en una placa de circuito impreso se muestra en la figura
159.
El transistor de efecto de campo de potencia necesita un buen disipador de calor, y el parlante debe tener una potencia superior a 10W para soportar la intensidad de la seal generada. Para
obtener mayor rendimiento se debe usar una pequea caja acstica.
Para probar la sirena conecte la unidad a una batera o fuente de por lo menos 3A. Por un instante, conecte el punto H al positivo de la alimentacin. Esto habilitar el circuito y permitir el
ajuste en los tres trimpots. Para una versin con un poco menos de rendimiento, en caso de dificultad de obtencin del FET de potencia, se puede usar un Darlington NPN de por lo menos 4A,
como por ejemplo el TIP 120 o TIP 121. En este caso, el transistor de potencia tambin debe ser
dotado de un buen disipador de calor.
De esta manera, damos por finalizado este tema, esperamos que cada circuito le resulte til y
que pueda montar un sistema de alarma a su medida. ************

92

Todo SobrE mICroCoNTroLAdorES PICAXE

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

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

Das könnte Ihnen auch gefallen