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

CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

Embed Size (px)

Citation preview

Page 1: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 35

INTRODUCCIÓN

Comenzaremos con una aplicación muy sencilla, por loque en primera instancia nos dedicaremos a encender y apa-gar leds, de acuerdo al estado que guarden las terminales deentrada de datos del microcontrolador. Cabe aclarar que con-forme se avance en los temas de PICAXE podremos incorporarcontroles para motores, utilización de convertidores analógico- digital (ADC), etc. Recordemos que el sistema PICAXE está dis-ponible en tres versiones que son el de 8 terminales (PICAXE-08), 18 terminales (PICAXE-18) y 28 terminales (PICAXE-28), yen función de las terminales que tienen disponibles para la en-trada y salida de datos, serán las que ocuparemos para comu-nicar al microcontrolador con el exterior.

Para visualizar datos usamos un circuitomuy sencillo para encender leds, el cual semuestra en la figura 1. Este circuito lo podemosreproducir tantas veces como terminales de sa-lida se tengan disponibles.

El primer circuito que se recomienda paraingresar datos discretos (digitales) al microcon-trolador es un interruptor con reposición auto-mática (push-button), el cual se muestra en elcircuito de la figura 2. De igual manera que enel caso del circuito de la figura 1, se puede re-producir el circuito de la figura 2 tantas vecescomo entradas tenga disponible el microcontro-lador. Para realizar el primer ejercicio, vamosa elegir uno de los tres tipos de microcontrola-dores PICAXE que se tienen disponibles, que en

este primer ejercicio se trata del PICAXE-18; pero, posterior-mente, se realizarán ejercicios con todos los tipos de microcon-

Figura 1 Figura 2

Figura 3

Page 2: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

36 CLUB SABER ELECTRONICA

troladores PICA-XE. El circuito pro-puesto para estaprimera experien-cia se muestra enla figura 3, en lacual se tiene 1 en-trada y 1 salida.

Para progra-mar el microcon-trolador PICAXE laprimer acción quetenemos que reali-zar es abrir el soft-ware de progra-mación llamado

“PICAXE Programming Editor” y que previamente tuvo que serinstalado. Una vez que hacemos doble click sobre el ícono delsoftware de programación y accedemos al ambiente de progra-mación, aparece una ventana en donde se configuran las op-ciones con las cuales trabajaremos.

Como primer paso, ya que es la primera vez que utiliza-mos este software, es conveniente seleccionar el menú identifi-cado como “Language”, ya que aquí es donde se configura ellenguaje con el cual estaremos interactuando. Si desea más de-talles sobre esta parte del programa, puede bajarlo de Interneto adquirir la revista Saber Electrónica Nº 215. De internet, pue-de 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 nues-tra web), seleccionando la opción “Modo” del menú para ele-gir el PICAXE que vamos a emplear en nuestro proyecto, quéfrecuencia de operación tendremos (generalmente 4MHz), etc.Luego, debemos elegir la opción “modo” del menú para indi-car en qué puerto tendremos el circuito para descargar el pro-grama. De la figura 4 observamos el ambiente de trabajo quepresenta el software de programación de los microcontrolado-res PICAXE, en el cual se aprecia un espacio en blanco que esdonde se ingresan las instrucciones en forma de “BASIC”.

¿Qué instrucciones son las que utilizaremos?Si no sabemos, no es el fin del mundo y vamos paso a pa-

so. Para comenzar utilizaremos una opción que se cuenta en

este software para programar a los microcontroladores que sonlos diagramas de flujo, por lo que como se indica en la figura4, seleccionamos de la barra de herramientas la opción “Archi-vo”, posteriormente “Nuevo” y por último “Nuevo Organigra-ma”, y lo que aparecerá será el ambiente de trabajo para in-gresar el diagrama de flujo de nuestro programa.

Para comenzar, éste va a ser nuestro campo de trabajo yaque de forma intuitiva todos sabemos hacer diagramas de flu-jo. Pues bien, antes de seleccionar los bloques que lo constitui-rán, vamos a describir cuál es el algoritmo del programa quequeremos desarrollar:

“Cuando se oprima un pulsador se encienda unled, y cuando se suelte el pulsador se apague el led”.

Existen bloques prediseñados que nos auxilian en el mane-jo del estado que guardan las terminales de entrada del micro-controlador de manera independiente, por lo que como semuestra en la figura 5 seleccionamos el recuadro que tiene in-dicado un rombo y dentro de éste la palabra “if”.

Ahora lo que tenemos que hacer es seleccionar qué condi-ción es la que utilizaremos, que para este ejercicio será la quese encuentra dentro del recuadro que tiene una figura de un rom-bo y dentro de éste la palabra “Pin” (observe la figura 6), estoes, estaremos leyendo la condición de una terminal de entradaque, por defecto cuando lo ubicamos sobre nuestra área de tra-bajo, siempre se coloca la entrada 0 (terminal 17 del microcon-trolador, figura 3). Este bloque tiene la tarea de leer el estado ló-gico de la terminal de entrada y la compara con un 1 lógico ydependiendo de si la entrada es igual o no, tiene dos posiblessalidas “Y” por si es igual a 1 lógico y “N” por si la entrada es0 lógico. Y por último, oprimimos el recuadro que tiene una fle-cha en forma de U para regresar al menú principal.

De acuerdo al algoritmo que planteamos líneas atrás, lo quetenemos que hacer es que se encienda un led cuando en la ter-minal de entrada se encuentre un 1 lógico, o que el led se apa-gue cuando en la entrada se encuentra un 0 lógico. Para esta ac-tividad recurrimos al recuadro identificado con la palabra “Out”,ya que es ahí donde se encuentran los bloques que actúan sobrelas terminales de salida del microcontrolador. Una vez en el in-terior del menú de bloques de salida, tenemos que seleccionar laacción que hará que el led se encienda o se apague, por lo queen primer instancia seleccionamos el bloque identificado con lapalabra “High”, el cual quiere decir que la salida se encenderá.

Por cierto, cuando selecciona-mos este bloque, por defecto seubica la salida 0 (terminal 6 delmicrocontrolador, figura 3), talcomo se ilustra en la figura 7.

Ya se tiene entonces el blo-que que encenderá el led, porlo que ahora requerimos la ac-ción correspondiente con suapagado, y ésta corresponde

Figura 4

Figura 5

Figura 6

Figura 7

Page 3: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 37

al recuadro identificado con la palabra “Low”, que es precisa-mente el bloque que realizará la tarea de apagar el led, y tam-bién por defecto, al seleccionarlo por primera vez, se ubica enla salida 0.

Una vez que ya tenemos los bloques que necesitamos pa-ra ingresarle o sacarle datos al microcontrolador PICAXE, pro-cedemos ahora a unir los bloques para que realicen el algorit-mo que fue planteado líneas atrás. Para ello existe una herra-mienta que se encuentra en un recuadro identificado con unalínea vertical que en sus extremos tiene un “*”.

Cuando seleccionamos esta herramienta y acercamos elpuntero del ratón sobre alguno de los bloques que ya se en-cuentran en el área de trabajo, se les aparece un círculo de co-lor rojo en aquel punto que requiere una conexión, tal como seilustra en la figura 8. Ya seleccionado el punto de conexión, tra-zamos la línea hasta el siguiente punto de conexión de un blo-que para realizar la unión lógica del flujo de datos. Cabe acla-rar que para cada unión que se necesite realizar, se tiene quevolver a seleccionar la herramienta de conexión. En la figura 9podemos apreciar la conexión completa de todos los bloques.Si ya terminamos de diseñar nuestro diagrama de flujo y antesde programar el microcontrolador, es importante saber si elprograma va a funcionar, porque recuerden que no es lo mis-mo “desear” que el microcontrolador haga lo que según noso-tros programamos, que lo que realmente hace en función delprograma que ingresamos. Existe en el software de los PICAXEla posibilidad de simular el programa, y eso es lo que vamos ahacer, por lo que seleccionamos el recuadro que tiene el sím-bolo de una punta de flecha tal como se ilustra en la figura 9,lo seleccionamos y enseguida aparecerán 2 ventanas. Una deellas indica el estado lógico que guardan las salidas y entradasdel microcontrolador; esta ventana aparece en la parte inferiorde la imagen de la figura 10.

Los recuadros verdes que se iluminan indican qué salidasestán siendo activas con un 1 lógico, mientras que los que apa-recen debajo de los cuadros verdes, indican la posición de lasseñales de entrada al microcontrolador, los cuales cuando seencuentran en la posición inferior significa que la entrada seencuentra en 0 lógico, y si están en la posición superior la en-trada se encuentra en 1 lógico. Por otra parte también se ob-serva que, dependiendo de dónde se encuentre la posición delswitch, se iluminará en color rojo la línea que une los diferen-tes bloques que son afectados por la respuesta del estado lógi-co de entrada, y de esta manera podemos visualizar qué es loque está sucediendo con nuestro programa.

Una vez que simulamos nuestro programa y observamosque las condiciones del algoritmo se cumplen (encender un ledcuando se tiene un 1 lógico en la entrada y apagar el led cuan-do se tiene un 0 lógico en la misma entrada), ya estamos listospara dar el siguiente paso, que es convertir el diagrama de flu-jo a instrucciones de BASIC, para lo cual en la barra de herra-mientas seleccionamos el menú identificado como “Organigra-

Figura 8

Figura 9

Figura 10

Figura 11

Page 4: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

38 CLUB SABER ELECTRONICA

ma” y después la opción “Convertir el Organigrama a Basic”(de manera rápida pudimos presionar la tecla F5), tema que

Ud. puede bajar sin cargo de nuestra web (www.webelectroni-ca.com.ar).

Ahora lo que tenemos que hacer es conectar el cable, tan-to al puerto serie de la PC como a las terminales del microcon-trolador que se indican en el diagrama de la figura 3 para pro-gramar al PICAXE. Anteriormente propusimos la manera en có-mo se debe construir el cable de programación, tomando encuenta las terminales que se deben ocupar.

Para grabarle el programa al microcontrolador debemosdirigir la flecha del ratón a la barra de herramientas y seleccio-nar el menú “PICAXE”, después la instrucción “Ejecutar” (o demanera rápida F5), tal como se muestra en la figura 11. En esemismo instante aparecerá una ventana indicando que se estállevando a cabo la programación del microcontrolador PICA-

XE. Cuando se encuentra en la fase de pro-gramación, una barra que irá creciendo nosdirá la cantidad de código que está siendodescargado hacia el microcontrolador.

Cuando se termina de grabar el micro-controlador aparecerá una ventana que nosindica la finalización del proceso de progra-mación, figura 12.

Ahora podemos verificar en el microcon-trolador que el programa que diseñamos se

Figura 12

Figura 14

Figura 13

Page 5: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 39

encuentra perfectamente bien, porlo que tenemos que oprimir el pul-sador y esta acción debe encen-der el led, y cuando lo soltemos, elled se deberá apagar. Cualquierotro funcionamiento nos quiere de-cir que debemos revisar nuestroprograma y tenemos que regresar-nos hasta la etapa en donde dise-ñamos el diagrama de flujo, yaque algo se encuentra mal.

KIT ENTRENADOR PARA PICAXE 08

En esta oportunidad diseñaremos nuestra primera tarjeta de en-trenamiento universal para programar microcontroladores PI-CAXE, y como en todo comienzo, daremos inicio por lo mássencillo y más pequeño, esto es, los microcontroladores de 8terminales denominados PICAXE – 08.

En primera instancia recordemos cuál es la configuraciónde un PICAXE–08, para en función de ello, tomar en cuenta decuántas entradas y cuántas salidas podemos echar mano yaprovecharlas al máximo (figura 13).

Tenemos la oportunidad de disponer de un total de 4 E/S(4 entradas y 4 salidas), pero no nos confundamos, si sumamosel número de salidas con el número de entradas tendremos untotal de 8 y el PICAXE–08 que manejaremos tiene solamente 8terminales.

¿Esto quiere decir que las terminales de salida y de entra-da ocupan todas las que posee?

La respuesta es “no”, ya que en esas 8 terminales debenestar las 4 entradas, las 4 salidas además de las 2 terminalesde alimentación y 2 para programarlo. Específicamente paralos PICAXE–08 las terminales 3, 5, 6 y 7 cumplen con una do-ble función, por lo que debemos tener cuidado cuando los pro-gramemos, porque, por ejemplo, la terminal 3 puede compor-tarse como una terminal de entrada o una terminal de salida,todo depende de cómo la contemplemos cuando realicemos elprograma del PICAXE–08.

La tarjeta entrenadora que proponemos tiene la posibilidadde explotar al máximo las propiedades del PICAXE–08, y serápor medio de jumpers como se podrá configurar la circuitería,tanto para programar como para fijar entradas o salidas de da-tos. En la figura 14 se muestra el circuito esquemático de la tar-jeta entrenadora completa.

A continuación describiremos cada parte de esta tarjeta en-trenadora para que podamos sacarle el máximo provecho.

En primer término identificaremos la ubicación de dóndeinstalar el microcontrolador PICAXE–08; éste debe encontrarseen la base identificada como IC1 respetando la identificación

de las terminales (figura 15). Los conectores identificados comoES1, ES2 y ES4 tienen 3 terminales, de las cuales, la del mediode cada uno de ellos se hace llegar hacia la correspondienteterminal del microcontrolador PICAXE. Con rerspecto a las 2terminales restantes de cada conector (ES1, ES2 y ES4), una vahacia el bloque destinado para conectar las entradas de datos,y la segunda se dirige hacia el bloque de terminales de salidade datos. Pues bien, para seleccionar si la terminal del micro-controlador será configurada como salida o entrada, será a tra-vés de un jumper que, dependiendo de cómo 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 termi-nales de salida, y de esta forma quedará configurada la circui-tería del microcontrolador PICAXE para que esté listo a recibirel programa con el cual trabajará el microcontrolador.

El conector identificado como PROG/SAL0 posee 3 termi-nales, de las cuales la del medio se hace llegar a la terminal 7del microcontrolador PICAXE. Esta terminal cumple con la do-ble función tanto de programar al microcontrolador, como la defuncionar como terminal de salida de datos si así se requiere;esta selección se lleva a cabo mediante la conexión de un jum-per hacia la ubicación que se requiera.

Cuando se va aprogramar un micro-controlador PICA-XE–08, es necesarioque el jumper estéubicado hacia la po-sición “Prog” en el co-nector PROG/SAL0,porque de otra mane-ra la programaciónserá imposible, yaque no se tendrá co-municación entre laPC y el microcontrola-dor.

Cuando el jumperFigura 17

Figura 16

Figura 15

Page 6: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

40 CLUB SABER ELECTRONICA

se encuentra ubicado hacia la posición “Sal0” en el mismo co-nector PROG/SAL0, se tendrá configurada la terminal del mi-crocontrolador como salida. La disposición de componentes so-bre la placa se muestra en la figura 16.

Por lo descrito líneas atrás se deduce que el procedimientopara ubicar el jumper del conector PROG/SAL0 será de acuer-do a lo siguiente:

1º paso.- Ubicar el jumper hacia la posición “Prog” en elconector PROG/SAL0 para programar al microcontrolador PI-CAXE–08.

2º paso.- Cambiar el jumper hacia la posición Sal0 en elconector PROG/SAL0 si se va a utilizar esa terminal del micro-controlador PICAXE–08 como salida.

En el conector identificado como “Entradas” se tiene la po-sibilidad de hacerle llegar al microcontrolador PICAXE–08 elestado lógico de 4 diferentes entradas digitales, las cuales pue-den ser insertadas mediante circuitos externos o bien utilizarcualquiera de los 2 circuitos con pulsador que se tienen en elárea de experimentos. Estos circuitos se muestran en la figura17 y lo único que se tiene que hacer es conectar el borne co-rrespondiente, ya sea E1 ó E2, a cualquiera de las terminales

de entrada, que sonEnt1 ó Ent2 ó Ent3 óEnt4 del conector“Entradas”.

En el conectoridentificado como“Salidas” se encuen-tra el reflejo de las 4salidas digitalesque posee el micro-controlador PICA-XE–08, las cualespueden hacerse lle-gar a circuitos exter-nos en donde se re-fleje la actividad delmicrocontrolador, opueden ser utiliza-

das los 2 circuitos con leds que se encuentran en el área de ex-perimentos; estos circuitos se muestran en la figura 18. Para uti-lizar estos circuitos lo que tiene que hacerse es conectar el bor-ne correspondiente, ya sea S1 o S2, a cualquiera de las termi-nales de salida, que son Sal0 ó Sal1 ó Sal2 ó Sal3 del conec-tor “Salidas”.

El espacio identificado como PROGRA se encuentra ocupa-do por un conector de audio estéreo tipo mini Jack, el cual pue-de tener formas diferentes. El conector de audio estéreo tan só-lo tiene 3 terminales, las cuales serán utilizadas para comuni-car al microcontrolador con una PC a través del puerto serie.En la figura 19, como ya lo vimos anteriormente, se muestra eldiagrama de cómo se deben identificar las terminales tanto enla tarjeta de entrenamiento como en el conector DB9 que se co-necta al puerto serie de una PC.

Las terminales del conector de audio realizarán las siguien-tes actividades:

La línea identificada con el número 1 sirve para verificarque el microcontrolador PICAXE se encuentra conectado alpuerto serie de la PC.

La línea identificada con el número 2 sirve para programaral microcontrolador PICAXE.

La línea identificada con el número 3 es la referencia GNDo también conocida como tierra eléctrica.

Por último, la tarjeta entrenadora tiene incorporado un re-gulador de voltaje identificado como IC2 que posee el códigoLM7805, y cuya misión es la de mantener un voltaje de 5V pa-ra energizar al microcontrolador PICAXE y toda su circuitería;por lo tanto, podemos energizar nuestra tarjeta de entrenamien-to con una pila de 9 VCD.

La lista de componentes se muestra a continuación.

Lista de componentes para armar la tarjeta controladoraIC1 ................Base de 8 terminalesIC2..................................LM7805D1, D..........................Leds VerdesD3...................................Led RojoS1, S2.......Interruptores Push buttonFigura 18

Figura 19

Page 7: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 41

R1, R3, R4.............10kΩ 1/4 WattR2 ........................22kΩ 1/4 WattR5, R6, R7 ...........390Ω 1/4 Watt

Varios: Conector mini jack de audio, conector mi-

ni plug de audio, alambres de conexión, bro-che para pila de 9 VCD y circuito impreso.

Aprendiendo a Programarla Tarjeta Entrenadora 08

En esta oportunidad, emplearemos la tarjetaentrenadora para implementar en ella la fun-ción lógica “Y” (AND). El motivo de progra-mar al PICAXE con esta función lógica es unpretexto para que se tenga en cuenta que sipodemos utilizar las funciones lógicas, enton-ces podemos darle cualquier aplicación anuestra tarjeta, esto es, en otras palabras po-demos desarrollar, por ejemplo, lo que se conoce con el nom-bre de unidad central de proceso de un PLC.

Para cada una de las funciones lógicas necesitamos la uti-lización de 2 entradas, por lo que en total requeriríamos de 4,pero recordemos que el microcontrolador PICAXE – 08 es tansólo de 8 terminales; por lo tanto, se tiene la limitante de quela mayoría de las entradas y salidas están compartidas. En con-secuencia tan sólo utilizaremos 2 entradas para implementarlas 2 funciones lógicas.

En el diagrama de la figura 20, se observa la manera enque están asignadas tanto las terminales de entrada como lasde salida; por otra parte también tomemos en cuenta que la tar-jeta entrenadora posee 2 pulsadores para generar los estadoslógicos con los cuales trabajará el PICAXE, y también cuentacon 2 leds para mostrar el estado de las sali-das.

El ejercicio que desarrollaremos será el si-guiente. Los pulsadores denominados S1 y S2generan las combinaciones con las cuales seencenderá el led D1 para la función lógica“Y”, de acuerdo a la tabla lógica siguiente:

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

Ahora hacemos referencia al diagrama deidentificación de los componentes de la figura21 para observar que las terminales que están

asignadas a la entrada son las denominadas como E3 y E4. Es-tas entradas se configuran empleando el jumper ES4 hacia laposición E4, mientras que la entrada E3 no tiene que configu-rarse ya que está directamente conectada al borne de entra-das. En cuanto a las salidas, emplearemos la que está identifi-cada como S1. La salida S0 se configuran empleando el jum-per PROG/SAL0 en la posición de Sal0; esto es porque la ter-minal 7 del microcontrolador PICAXE – 08 se comparte tantocon la salida 0 como con una terminal de programación del PI-CAXE. La salida S1 requiere que el jumper ES1 se coloque enla posición Sal1. La forma en cómo se deben colocar los jum-pers también se ilustra en la figura 21, que es una imagen dela tarjeta entrenadora.

Una vez que hemos configurado la parte electrónica de la

Figura 10 - Diagrama esquemático de la tarjeta entrenadora.

Figura 21 - Identificación de componentes y colocación de jumper.

Page 8: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

42 CLUB SABER ELECTRONICA

tarjeta entrenadora, pasamos a elaborar el programa paracontrolar la tarjeta.

Como lo hemos mencionado antes, es necesario abrir elícono cuyo nombre es “PICAXE Programming Editor”, el cualobviamente tuvieron que instalar con antelación, pero si uste-des aún no poseen el programa, lo pueden descargar de nues-tra página de internet: www.webelectronica.com.ar.

Después de la ventana de bienvenida nos aparecerá laventana que se muestra en la figura 22, que es en donde seconfiguran las opciones y por lo tanto el tipo de microcontrola-dor que emplearemos. En esta oportunidad estaremos utilizan-do un microcontrolador PICAXE – 08, por lo que seleccionamosesa opción. Si la ventana de opciones no aparece al abrir elprograma, nosotros podemos abrirla desde el menú Ver y des-pués con el comando Opciones.

Hasta este momento no hemos realizado programa algunocon el Basic, que es una forma de programar a los PICAXE,porque en el desarrollo de esta serie vamos a comenzar apren-diendo a programar a los microcontroladores del sistema PICA-XE. Por esta situación, nuevamente recurriremos a programar almicrocontrolador a través de diagramas de flujo, por lo queoprimimos el botón de acceso rápido para abrir el ambiente detrabajo en diagramas de flujo, tal como se muestra en la figu-ra 23.

Dentro del entorno gráfico para generar el diagrama deflujo seleccionaremos, del menú de comandos, el correspon-diente al que pregunta por el estado de las entradas, tal comose ilustra en la figura 24.

Posteriormente, tal como se muestra en la figura 25, se pue-den seleccionar los bloques que preguntan por el estado de lasentradas. Todo depende de nuestro diagrama, serán los blo-ques que dentro del rombo tienen la palabra “pin”. Por defec-to, siempre pregunta por el pin 1, por lo que debemos editarlos bloques que sean necesarios para preguntar por la terminal

Figura 24

Figura 25

Figura 23

Figura 22

Figura 26

Figura 27

Page 9: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 43

que corresponde a la entrada E3 y E4. Para ello nos basamos,tal como muestra la figura 26, en seleccionar el bloque que nosinterese y después seleccionar la entrada correspondiente. Unavez que el primer bloque tenga asignada la entrada E3 y losdos inferiores la entrada E4, ahora procedemos a seleccionarel menú de los bloques que manipulan las salidas; por lo tanto,oprimimos sobre el cuadro que tiene una flecha en forma de Upara regresar al menú principal. Estando en el menú principal,seleccionamos el que hace referencia al control de las salidas,de acuerdo a como se aprecia en la figura 27.

Dependiendo de cuál sea la función lógica que implemen-temos será la activación de las salidas que usaremos, ya seaun “0” lógico o un “1” lógico; por lo tanto, seleccionaremos elcuadro con la palabra low o high, respectivamente, tal comose aprecia en la figura 28.

Como en el caso de las entradas, cuando elegimos una sa-lida, por defecto se coloca la salida 0; por lo tanto, tenemos queevaluar qué salida es la que emplearemos para colocar la quenos interesa, y tal como se ilustra en la figura 29, seleccionamosla salida 1 porque la función lógica que implementaremos es ladenominada “Y” (AND). Como ya habíamos designado que se-ría a través del led D1 de la tarjeta entrenadora donde se visua-lizaría su respuesta, es el motivo de la selección ya que el ledD1 está conectado a la salida 1 del microcontrolador.

Ya que tenemos todos los bloques correspondientes a la im-plementación de la función lógica, ahora pasaremos a conec-tarlos para que se obtenga el resultado de la tabla de verdadde la función lógica “Y”.

Tenemos que regresar una vez más al menú principal pararealizar la unión de los diferentes bloques, en función de la ló-gica de operación que hemos desarrollado. Para esta acción,elegimos la herramienta de conexión tantas veces como blo-ques se tengan que unir, tal como se muestra en la figura 30.

Cuando se realiza la actividad de unir los diferentes blo-ques, se ilumina en color rojo un círculo que se hace presenteen el punto de conexión del bloque cuando acercamos el pun-tero del ratón, y ahí hacemos click con el botón izquierdo pa-ra fijar la línea de conexión, y la arrastramos hasta el siguien-te punto de conexión del bloque con el que uniremos el ante-rior, y así continuamos hasta unir todos los bloques que tenga-mos, tal como se aprecia en la figura 31.

El paso siguiente, para verificar que realmente funcionanuestro programa, es simularlo, por lo que seleccionamos la he-rramienta de simulación tal como nos lo indica la figura 31, ycuando la oprimimos, aparecerán dos ventanas: en una obser-varemos las variables, y en la otra, que es la que nos interesaen este momento, se observará cómo se comportan las salidasen función de las entradas.

En la figura 32 se muestra que cuando ésta activa la fun-ción de simulación, las líneas que unen los distintos bloques seiluminan en color rojo indicando el camino por donde se cum-plen las condiciones lógicas, facilitando de esta manera la ob-

Figura 28

Figura 30

Figura 31

Figura 29

Page 10: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

44 CLUB SABER ELECTRONICA

servación de cómo se va generando la respuesta que finalmen-te será visualizada a través de una salida. Y para comprobarque en la salida se tiene como resultante la función lógica“Y”, se tienen que realizar las distintas combinaciones de “0”lógico y “1” lógico en las terminales de entrada, a través delos interruptores que se visualizan en la ventana inferior de lafigura 32.

Una vez que hemos superado la etapa de la simulación,

nuestro siguiente paso es la programación del PICAXE a travésde la tarjeta entrenadora, por lo que conectamos el cable alpuerto serie de la PC y el otro extremo al conector minijack dela tarjeta entrenadora anterormentes se explicó cómo se debearmar el cable de programación, colocar también el jumper delconector PROG/SAL0 en la posición de Prog para que sea des-cargado el código al PICAXE.

El paso siguiente es detener la simulación e ir al menú deherramientas organigrama y seleccionar el mando convertir or-ganigrama a Basic. Como resultado, el diagrama de flujo seráconvertido a Basic y el resumen de estas acciones se observaen las figuras 33 y 34.

De la figura 34 se observa que para descargar el progra-ma en el microcontrolador PICAXE a través de la tarjeta entre-nadora, se oprime el botón que se refiere a la herramienta deprogramación, y como consecuencia se despliega una ventanaque nos va indicando el avance de la programación, tal comose ilustra en la figura 35.

Una vez programado el PICAXE, lo que sigue es probar elprograma sobre la tarjeta entrenadora, por lo que presionare-mos los pulsadores de acuerdo a la tabla de verdad correspon-diente, por lo que si el led no enciende con respecto a la res-puesta de la tabla de verdad de la función lógica “Y”, algo an-da mal y tenemos que pasar a revisar desde el circuito de latarjeta entrenadora hasta revisar nuevamente el programa y lafase de grabación en el microcontrolador.

LISTA DE COMPONENTES PARA REALIZAR EL EJERCICIO.Tarjeta entrenadora del PICAXE – 08 y su cable de progra-

mación.

Juego de Luces Tipo “Auto Fantástico”(Empleando la Tarjeta Entrenadora)

Vamos a implementar, a través de una tar-jeta entrenadora, un juego de luces que fun-cione de la misma manera que lo hacían lasluces del auto fantástico. Está claro que parael microcontrolador PICAXE – 08 que posee latarjeta entrenadora, sólo se tiene posibilidadde contar con 4 salidas a las cuales les pode-mos colocar leds para visualizar el efecto delas luces.

Cabe señalar que si usted desea bajar losarchivos para ejecutar el programa, puedeobtenerlos gratuitamente de nuestra web enwww.webelectronica.com.ar, digitando la cla-ve “kit”.

En la figura 36 se muestra el diagrama es-

Figura 33

Figura 34

Figura 35

Figura 32

Page 11: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 45

quemático de la tarjeta entrenadora, dela cual emplearemos únicamente el bor-ne de salidas, por lo que en los bornesidentificados como ES1, ES2 y ES4 secolocará el jumper correspondiente, detal forma que se seleccionen las salidas.

Nota: La tarjeta entrenadora, su im-plementación, armado y programaciónse publicó en el tomo Nº 7 de la colec-ción “Club Saber Electrónica”. Ud. pue-de bajar el artículo completo de la webcon la clave dada más arriba.

Siguiendo con nuestro montaje, enel borne identificado como PROG-/SAL0, una vez que se descargue el pro-grama sobre el PICAXE, debe colocarseel jumper en la posición correspondien-te a la salida 0 (Sal0). Una vez predis-puesta la tarjeta entrenadora tal comose muestra en la figura 37, pasamos adesarrollar el programa.

Recordemos que lo primero que te-nemos que hacer es abrir el programa“PICAXE Programming Editor”, tal como se ilustra en la figura38. Una vez dentro del ambiente de programación del PICA-XE, seleccionamos la opción de trabajar con diagramas deflujo, por lo menos hasta que adquiramos la experiencia ne-cesaria para desarrollar nuestros programas directamente ba-jo BASIC.

Se ha explicado, minuciosamente, lo que significan los íco-nos que aparecen cuando trabajamos con diagramas de flujo,por lo que ahora avanzaremos un poco más rápido en la cons-trucción de nuestro programa. Ya dentro del ambiente de pro-

gramación, lo primero que tenemos que hacer es inicializar lassalidas que utilizaremos, que por disposición del PICAXE – 08se tienen dispuestas las salidas 0, 1, 2 y 4. Para no afectar eldesempeño de nuestra aplicación, la inicialización de las sali-das las realizamos por medio del comando “low” tal como seilustra en la figura 39, una para cada una de las salidas; si nocolocáramos estos comandos, simplemente las salidas no se ac-tivarán. Posteriormente colocamos líneas de conexión para unirlos comandos de activación en estado bajo de las 4 salidas se-leccionadas. Ahora se colocan los comandos para generar elefecto de luces del auto increíble, para lo cual nos basamos enun algoritmo muy simple y que a continuación explicamos:

Encendemos el led colocado en la salida 0 y mantenemos

Figura 36

Figura 38Figura 37

Page 12: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

46 CLUB SABER ELECTRONICA

este estado durante 1 segundo para que sea perfectamente vi-sible, posteriormente encendemos el led colocado en la salida1 e inmediatamente apagamos el led de la salida 0; una vezrealizado esto, fijamos esta condición durante 1 segundo. Engeneral, vamos encendiendo el led siguiente y al mismo tiempoapagando el anterior y manteniendo el estado durante algúntiempo, y así sucesivamente hasta llegar al último led. Posterior-mente hacemos que se invierta el encendido y apagado de losleds, causando con esto el efecto luminoso de las luces del au-to increíble.

De la figura 40 se puede observar el diagrama de flujoque se emplea para controlar el juego de luces, y a través delos bloques “low” apagamos las salidas (las colocamos en “0”lógico), y con los bloques “high” encendemos las salidas (lascolocamos en “1” lógico). Pues bien, hasta aquí hemos mane-jado bloques que con anterioridad habíamos utilizado y que nocausan problemas al momento de seguir la ejecución del pro-grama, pero ahora aparecen 2 nuevos bloques que están iden-

tificados como “wait” y como “pause”, los cuales describiremosa continuación.

El bloque wait se emplea para generar una base de tiem-po durante la cual el microcontrolador PICAXE estará ocupadosin realizar ninguna otra actividad, tan sólo se dedica a conta-bilizar el tiempo que va transcurriendo hasta que llegue al con-teo máximo que le hemos fijado. Esta actividad es muy útil, so-bre todo cuando se requiere el empleo de un temporizador, ode un delay. La característica que tiene el bloque wait es queel conteo lo realiza de una forma ya establecida y está en se-gundos, los cuales pueden tener valor desde 1 hasta 255 se-gundos.

En este caso estamos empleando el bloque wait para gene-rar una temporización, de manera que los datos que son envia-dos a las salidas del PICAXE se mantengan durante 1 segundo.Si omitimos la colocación del bloque wait, provocaríamos quecon la simple operación del microcontrolador, que es muy rápi-da, tan sólo observemos un destello en los leds pero no vería-mos cuál se enciende y cuál se apaga con detalle. El númeroque tiene por delante el comando wait es el número de segun-dos que dura la temporización.

El segundo bloque que observamos en el diagrama de flu-jo de la figura 41, y que no conocíamos, está identificado co-mo “pause”.

El bloque “pause” trabaja de la misma manera que lo ha-ce el bloque wait, y substantivamente se emplean para lo mis-mo, pero la principal diferencia radica en los tiempos destina-dos a la temporización de cada uno de los bloques. Para el blo-

que wait la temporización se en-cuentra en segundos, mientrasque para el bloque pause la tem-porización se contabiliza en mili-segundos. Por lo tanto, como semuestra en la figura 40, si coloca-mos el bloque “wait 1” equivale aun tiempo de 1 segundo, y si em-pleamos el bloque “pause 1000”equivale a un tiempo de 1000 mi-lisegundos, o sea también 1 se-gundo.

Después de que hemos colo-cado tanto los bloques como lasuniones entre éstos, procedemos asimular nuestro diagrama de flujocomo se ilustra en la figura 41.

Como paso siguiente a la si-mulación, procedemos a convertirnuestro diagrama de flujo en códi-go BASIC, por lo que recurrimosal menú Organigrama y dentro deéste al comando “Convertir Orga-nigrama en BASIC”, por lo que

Figura 39

Figura 40 - Diagrama a bloques completo.

Page 13: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 47

vamos a generar un código como el ilustra-do en la figura 42.

Por último, tenemos que programar al mi-crocontrolador PICAXE, por lo que estandoen el ambiente de código BASIC nos dirigi-mos al menú PICAXE y después al comando“Ejecutar”. En ese mismo instante se abre unaventana que nos indica el progreso de la pro-gramación del PICAXE (figura 43), y una vezque éste termina de programarse, nos mues-tra una ventana pequeña en donde nos comu-nica que se programó perfectamente; en ca-so contrario, también nos reporta las posiblescausantes del fallo. Como lo hemos mencio-nado en anteriores entregas, es necesarioabrir el ícono cuyo nombre es “PICAXE Pro-gramming Editor”, el cual obviamente tuvie-ron que instalar con antelación, pero si uste-des aún no poseen el programa lo puedendescargar de nuestra página de internet:www.webelectronica.com.ar. A lo largo deesta obra iremos desarrollando ejemplos deprogramación, en los cuales aplicaremos los bloques de los dia-gramas de flujo vistos hasta ahora, y la meta es llegar a realizarprogramas con mayor grado de complejidad, para lo cual se tie-ne contemplado mostrar proyectos con aplicaciones reales.

Lista de Materiales

Tarjeta entrenadora del PICAXE – 08 (el diagrama y des-cripción de ésta se vió anteriormente), su cable de programa-ción,

4 Leds 4 Resistores de 390Ω

Alarma para Puertas y Ventanas Empleando la Tarjeta Entrenadora PICAXE 08

Para continuar con la utilización de nuestra tarjeta entrena-dora tal como un módulo de uso general, nuevamente hacemosreferencia a ella y por lo tanto volvemos a colocar su diagra-ma esquemático se ilustra en la figura 44. De la tarjeta entre-nadora sabemos que se cuenta con un total de 4 Entradas/Sa-lidas, las cuales las tenemos que distribuir adecuadamente en-tre el sensor, el habilitador de la alarma, la salida a un buzzer(zumbador) y a un contacto que nos representará una señal re-mota. De acuerdo a lo anterior necesitamos de, por lo menos,

Figura 41 - Simulación.

Figura 42 - Código en BASIC.

Page 14: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

48 CLUB SABER ELECTRONICA

2 entradas y 2 salidas, pero recuer-den que en el PICAXE–08 algunasterminales son compartidas y cum-plen con una doble función; dichoen otras palabras, tanto se puedenconfigurar como terminales de sali-da o como de entrada de datos,pero una vez configuradas, traba-jará así el PICAXE todo el tiempo.

En la figura 45 se ilustra la pro-puesta de cómo se asignarán lasterminales de entrada y salida dedatos, en las cuales se sugiere quepara proteger a las puertas y ven-tanas de un hogar se utilicen senso-res magnéticos llamados reed swit-ches, en los cuales, cuando se lesacerca un imán, su contacto se cie-rra, provocando la generación delos estados lógicos que vemos en latabla 1.

La disposición de los sensoresmagnéticos, tal como se ilustra enel diagrama esquemático de la fi-gura 45, están conectados de talforma que se cumplan las condicio-nes de la tabla 1, y estos estados lógicos se hacen llegar a laterminal de entrada del PICAXE (Ent3) destinada a detectar siuna puerta o ventana fue abierta sin autorización, por lo quetenemos que seleccionar qué puerta o ventana de nuestra ca-sa tendremos que proteger, colocando el sensor magnético enel marco de la puerta o ventana mientras que el imán lo fijare-mos sobre la puerta o ventana.

De acuerdo a lo que se observa de la figura 45, las termi-nales destinadas a las entradas de datos serán las denomina-

das Ent3 y Ent4, mientras que las terminales designadas paralas salidas serán las marcadas como Sal0 y Sal1.

Una vez que se han destinado las entradas y salidas queserán empleadas, ahora procederemos a explicar el diseño delprograma con el cual se gobernará el microcontrolador PICA-XE, para lo cual partiremos del hecho de que ya tenemos insta-lado el programa llamado “PICAXE Programming Editor”, y siaún no lo tienen pueden descargarlo de nuestra página www-.webelectronica.com.ar con la clave “picaxe”, o directamentede la página www.picaxe.co.uk

En la figura 46 observamos la ventana de bienvenida al“PICAXE Programming Editor”.

Consideramos que aún no tenemos la experiencia necesa-ria para comenzar a programar un PICAXE por medio del len-guaje BASIC, por lo que una vez más seleccionamos la opciónde trabajar con diagramas de flujo, por lo menos hasta quecontemos con la experiencia necesaria para desarrollar nues-tros programas directamente bajo ambiente BASIC.

Debido a que ya hemos explicado paso a paso cómo tra-bajar con diagramas de flujo, ya no expondremos lo que signi-fican los íconos que aparecen cuando trabajamos con estos

diagramas, por lo que sólo nos abocaremos adesarrollar el programa con el cual operaránuestro programa.

Para comenzar con el programa, primeroserán definidas las terminales de entrada a

Figura 43 - Ventana que muestra el avance de la programación.

TABLA 1 COMPORTAMIENTO DEL SENSOR MAGNETICOPresencia del imán Contacto del Reed Switch Estado lógicoSi Cerrado 1No Abierto 0

Figura 44

Page 15: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 49

través de las cuales se estará habilitando laalarma Ent4 (pin4) y lectura del sensor Ent3(pin3). De acuerdo a la manera de cómo pre-tendemos que sea la operación de nuestraalarma, ésta comenzará a funcionar a partirde que la habilitemos por medio del pin4, es-to es, que en esta terminal esté presente un“1” lógico, y mientras esta condición no estépresente, la alarma nunca indicará si unapuerta o ventana fue abierta sin autorización,por lo que podemos considerar que la alarmaestá desactivada para que contemos con laposibilidad de abrir cualquier puerta o venta-na.

Después de que la alarma fue activada, elpaso siguiente es el revisar que ninguna puerta o ventana seaabierta sin autorización, por lo que a través del pin3 se debeleer un “1” lógico para que se cumpla dicha condición.

La figura 47 muestra la activación de la alarma y lecturadel sensor. De acuerdo con la figura 47, los primeros bloquesque deben colocarse corresponden a los que realizan la revi-sión de los estados lógicos que guardan tanto el switch que ac-tiva ó deshabilita la alarma, como con el que corresponde conla lectura del estado en que se encuentra el sensor magnético.El primer bloque tiene la tarea de preguntar si la alarma ya fueactivada, por lo que se comparará el estado lógico de la termi-nal de entrada 4 con un “1” lógico. Si la alarma aún no ha si-do activada, no tiene caso seguir con el desarrollo del progra-ma, por lo que constantemente se estará revisando el estado ló-gico de la terminal de entrada 4 hasta que la alarma sea acti-vada, esto es, sea colocado en “1” lógico el estado de la ter-

minal 4. Si la alar-ma ya fue activa-da el paso siguien-te será leer el esta-do lógico del sen-sor magnético, porlo que siempre es-taremos compa-rando el estado ló-gico de la terminalde entrada 3 conel estado lógico“0”. Recordemosque el estado lógi-co “0” en el sensormagnético signifi-

Figura 45

Figura 46

Figura 47

Page 16: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

50 CLUB SABER ELECTRONICA

ca que alguna puerta o ventana fue abierta y si esto sucediósin autorización, por medio del comando “high” estaremos en-viando, a través de la terminal de salida 1, una señal a la bo-bina de un relevador para que sea generada una señal de alar-ma remota.

En la figura 48 se ilustran los bloques correspondientes alestablecimiento de una señal audible para avisar del evento deapertura de una puerta o ventana sin autorización.

En el desarrollo de esta parte del diagrama de bloques, en-contraremos dos nuevos, que se describen a continuación:

“let”.- Este bloque es empleado para asignar un valor encualquiera de las variables con que cuenta el microcontroladorPICAXE, además de permitir la realización de operaciones en-tre las variables y valores constantes.

“sound”.- Este bloque contiene los parámetros necesariospara generar una nota musical a través de una terminal de sa-lida del microcontrolador, por lo que la sintaxis es sound termi-nal de salida (nota, duración).

Pues bien, una vez que hayamos revisado el potencial delos bloques que a continuación utilizaremos, procedemos a ex-plicar la operación de esta segunda parte del diagrama de blo-ques.

De la figura 48 se observa que primero se asigna un 0 ala variable b0; posteriormente, se incrementa en una unidad lavariable b0 por medio de la utilización de bloques con el co-mando “let”. El valor de esta variable funcionará como la notamusical que será interpretada por medio del bloque identifica-do como “sound”.

El bloque sound tiene la propiedad de generar una notamusical con tan sólo indicárselo por medio de los parámetrosque se encuentran dentro del paréntesis. De acuerdo con nues-tro ejemplo, la variable b0 nos generará la nota que será ex-presada hacia el exterior del PICAXE a través de la terminal 0y los valores que puede aceptar la variable b0 van desde 0 (si-lencio) hasta 127 notas ascendentes, y de 128 a 255 notas as-cendentes de ruido. Para nuestro ejercicio, emplearemos las no-tas que van de 0 a 127 para dar vida a la alarma sonora, ypara obtener el efecto de una señal audible ruidosa, tendremosque ir incrementando la variable b0 partiendo de 0 hasta 127,por lo que utilizaremos un bloque comparador, y cuando la va-riable b0 llegue a 127, nuevamente se iniciará la variable conel valor de 0, y nuevamente comenzará el conteo ascendentede la variable. Esta actividad mostrará el efecto de notas musi-cales ascendentes. El dato correspondiente a la duración de lanota dentro del paréntesis del bloque sound se puede expresar

con valores que vandesde 0 a 255, perodebemos tomar encuenta que este valortiene que ser multipli-cado por una constan-te de aproximadamen-te 1mseg.

La variable b0 seincrementará desde 0a 127 cuando se abrauna puerta o ventana,y este lazo continuaráhasta que una perso-na autorizada y conuna llave pueda resta-blecer la alarma, por

Figura 49

Figura 48

Figura 50

Page 17: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 51

lo que existirá un bloque en donde se esté revisando la condi-ción lógica de la señal de entrada en el pin4, y cuando lea elestado lógico “0” significa que ya fue desactivada la alarma,por lo que se tiene que revisar la condición del sensor magné-tico, ya que si se deja la puerta o ventana abierta y se vuelvea restablecer la alarma, ésta se volverá a disparar generandonuevamente la señal audible y enviando la señal de alarma re-mota. En la figura 49 vemos el diagrama de bloques comple-to. Como paso siguiente, deberemos simular la operación deldiagrama de bloques para estar completamente seguros deque el programa va a funcionar correctamente. Después de lasimulación, procedemos a convertir nuestro diagrama de flujoen código BASIC, por lo que recurrimos al menú Organigramay, dentro de éste, al comando “Convertir Organigrama en BA-SIC”, por lo que vamos a generar un código como el ilustradoen la figura 50.

Por último, para programar al microcontrolador PICAXE, setiene que estar dentro del ambiente de código BASIC, y de ahínos dirigimos al menú PICAXE y después al comando “Ejecu-tar”. De esta acción se provoca que se abra una ventana quenos va indicando el progreso de la programación del PICAXE.Una vez que éste termine de programarse, nos muestra unaventana pequeña en donde nos comunica que se programóperfectamente; caso contrario, también nos reporta las posiblescausantes del fallo.

La tarjeta entrenadora cuya imagen se observa en la figu-ra 51 es el cerebro de las actividades de nuestra alarma, porlo que en este caso se le tienen que agregar los componentesilustrados en la figura 45, pero claro está que por el tamaño encuestión del número de terminales que posee un PICAXE-08, anuestra alarma le está destinado el proteger sólo una puerta oventana. Si queremos una alarma con mayor número de senso-res, tendremos que utilizar un PICAXE con mayor cantidad determinales y agregar, en el programa, lalectura del estado que tengan dichos sen-sores.

Continuaremos desarrollando ejem-plos prácticos de programación, ya quenuestra meta es llegar a realizar diseñosde aplicaciones sin importar el nivel decomplejidad.

LISTA DE MATERIALES

Tarjeta entrenadora del PICAXE – 08El cable de programación3 Resistores de 390Ω 1/8Watt1 Transistor 2N22221 Diodo 1N40011 Relevador para 5 V1 Reed switch1 Botón con seguro1 Zumbador (buzzer)

Tarjeta Entrenadora PICAXE 18

A lo largo de estas líneas iremos describiendo todo lo quecorresponde a una nueva tarjeta entrenadora, que en estaoportunidad alojará al microcontrolador PICAXE–18, por loque como primer paso recordaremos cuál es el diagrama delcircuito básico de conexión de este PICAXE, para de ahí llegaral diagrama esquemático de la nueva tarjeta entrenadora. Enla figura 52, se muestra el circuito básico del cual se tiene quetomar en cuenta el número total de entradas y salidas que po-demos manipular para aprovecharlas al máximo.

Para el PICAXE–18 se tiene la oportunidad de disponer de8 terminales de salida y 5 terminales de entrada; de estas últi-mas y dependiendo del tipo de microcontrolador PICAXE (PICA-XE–18 ó 18A ó18X), se pueden co-locar hasta tres en-tradas como entra-das analógicas.

La tarjeta entre-nadora que se pro-pone en esta opor-tunidad tiene la po-sibilidad de explo-tar al máximo todaslas propiedades deun PICAXE–18. Enla figura 53 semuestra el circuitoesquemático de latarjeta entrenadoracompleta.

Figura 51

Figura 52 - Circuito básico de un PICAXE-18.

Page 18: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

52 CLUB SABER ELECTRONICA

A continuación describiremos cada bloque de esta tarjetaentrenadora para que se le pueda sacar el máximo provecho.

Como primer paso será identificada la ubicación de dóndese encuentra el microcontrolador PICAXE–18, el cual justamen-te debe encontrarse sobre la base identificada como IC1, res-petando en todo momento la distribución de las terminales.

Sobre el conector identificado como salidas, se encuentranconcentradas las 8 de que dispone el microcontrolador PICA-XE, las cuales se encuentran identificadas desde S0 hasta S7.Este conjunto de salidas pueden emplearse de manera indistin-ta para controlar algún elemento externo que bien puede ser unactuador (elemento de potencia); todo depende de su naturale-za para, en función de ella, conectar en la salida un optoaco-plador para encender o apagar un motor de CA, por ejemplo,así como encender una lámpara incandescente o un simple dio-do led.

Sobre el conector denominado entradas, se tiene el reflejoprecisamente de las terminales de entrada al microcontroladorPICAXE. Las terminales de entrada se encuentran identificadascomo E0, E1, E2, E6 y E7; de estas últimas, dependiendo deltipo de PICAXE (PICAXE–18 ó 18A ó 18X), las terminales E0,E1 y E2 pueden comportarse como terminales de entrada ana-lógica, esto es, tienen un convertidor analógico – digital. En lasterminales de entrada de datos se tienen que conectar aquelloscircuitos externos que generen algún estado lógico y que refle-jen fielmente el estado de la actividad que están leyendo lossensores bajo algún proceso. Estos datos de entrada, de mane-

ra general, pueden clasificarse como discretoso analógicos, entendiéndose como discretostodas aquellas señales que trabajan mediantela lógica binaria, “0” lógico y “1” lógico,mientras que las señales analógicas, son aque-llas, como la temperatura, que están variandocon el tiempo y puede adquirir un número infi-nito de valores dentro de un intervalo bien es-tablecido.

Para esta tarjeta controladora no se nece-sita configurar alguna forma especial de tra-bajo sobre su circuitería, por lo que sus aplica-ciones son inmediatas, ya que posee termina-les dedicadas tanto para ingresarle como pa-ra extraerle datos, siendo el microcontroladorPICAXE el elemento indispensable que realizatodas las acciones de control. Una vez identi-ficadas las terminales de entrada y salida dedatos de la tarjeta entrenadora, como paso si-guiente se tienen que identificar los módulosde apoyo para construir, implementar y/o si-mular alguna aplicación.

El primer módulo de apoyo que describire-mos es el relacionado con la actividad de re-presentar alguna acción del microcontrolador,

esto es, el poder señalar por medio de un indicador luminosoalguna respuesta. Para ello se cuenta con 2 circuitos basadosen leds que se encuentran en el área de experimentos de la pro-pia tarjeta entrenadora. Estos circuitos se muestran en las figu-ras 54 y 55. Para hacer uso de estos circuitos, lo que tiene quehacerse es conectar, mediante un pequeño cable, el borne co-rrespondiente, ya sea de S1 o S2, con cualquiera de las termi-nales de salida del microcontrolador, que pueden ser S0 ó S1ó S2 ó S3 ó S4 ó S5 ó S6 ó S7 del conector “Salidas”. De es-ta forma, si la salida registra un “1” lógico, se encenderá el ledal cual fue conectado, y por lo contrario, si la salida reporta un“0” lógico, el led se apagará.

El segundo módulo de apoyo es el que genera estados dis-cretos para poder hacerlos llegar al microcontrolador. Estos mó-dulos pueden simular la activación o desactivación de determi-nados sensores o botones que se requieren en algún proceso.Para este requerimiento, sobre la tarjeta entrenadora se cuentacon 2 circuitos basados en pulsadores que se encuentran sobreel área de experimentos. Estos circuitos se muestran en la placade la figura 55 y lo único que se tiene que hacer es conectar elborne correspondiente, ya sea E1 ó E2, a cualquiera de las ter-minales de entrada, que pueden ser E0 ó E1 ó E2 ó E6 ó E7 delconector “Entradas”. Esto último da posibilidad a que durante lafase de pruebas del programa del microcontrolador se puedaevaluar si la secuencia con que se tienen que activar los senso-res es la correcta o no, para poder estar seguros de que nues-tro programa operará completamente sobre nuestra aplicación.

Figura 53 - Diagrama esquemático de la tarjeta entrenadora PICAXE–18.

Page 19: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 53

El tercer módulo de apoyo es el que genera señales analó-gicas para que puedan emplearse con aquel PICAXE que inter-namente posee un convertidor analógico – digital. Este módulopuede realizar el trabajo de simulación, por ejemplo, de unsensor de temperatura, de un sensor de presión, de humedad,etc. Para esta parte, la tarjeta entrenadora cuenta con un resis-tor variable identificado como POT1, por medio del cual sepuede cambiar el valor de voltaje que se hace llegar a la ter-minal correspondiente de entrada analógica del microcontrola-

dor que, dependiendo del tipo de PICAXE; éstas pueden ser E0ó E1 ó E2 del conector “Entradas”. Ahora bien, lo que se quie-re es utilizar en la tarjeta programadora un sensor real, porejemplo un LDR (resistencia variable con la luz) o una galga ex-tensiométrica (resistencia variable con la deformación), etc. Enel módulo de señales analógicas, a través del conector identifi-cado como “SENSOR”, se puede conectar un determinado sen-sor que, en combinación con el resistor R8, se genera el volta-je cuyo valor responderá de acuerdo a la variable física que

lea el sensor.Cabe aclarar que

el tipo de sensor quese tiene que utilizar enesta parte de la tarjetaentrenadora debe pre-sentar un cambio en suvalor de resistencia pa-ra que, en función deesto, se modifique elvalor de voltaje que eslo que lee el PICAXEen las entradas analó-gicas. Las terminalesdonde se refleja el es-tado del módulo que

Figura 55 - Disposición de los compo-nentes sobre la tarjeta entrenadora.

Figura 54 - Circuito Impreso de la tarjeta entrenadora.

Figura 56 - Conector mini Jack de audio.

Figura 57 - Identificación de terminales en losconectores mini jack y DB9.

Figura 58 - Cable de programación.

Figura 59 - Adaptador para programación.

Page 20: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

54 CLUB SABER ELECTRONICA

genera las señales analógicas se identifican como AN1 y AN2.El espacio identificado como PROGRA se encuentra ocupadopor un conector de audio estéreo tipo mini Jack, el cual puedetener cualquiera forma, tal como se ilustra en la figura 56.

El conector de audio estéreo tan sólo tiene 3 terminalesque serán utilizadas para comunicar al microcontrolador conuna PC a través del puerto serie. En la figura 57 se muestra eldiagrama de cómo se deben identificar las terminales, tanto enla tarjeta entrenadora como en el conector DB9 que se conec-ta al puerto serie de una PC.

Las terminales del conector de audio y DB9 realizarán lassiguientes actividades:

• La línea identificada con el número 1 en el conector deaudio sirve para verificar que el microcontrolador PICAXE seencuentra conectado al puerto serie de la PC.

• La línea identificada con el número 2 en el conector deaudio sirve para programar al microcontrolador PICAXE.

• La línea identificada con el número 3 en el conector deaudio es la referencia GND ó también conocida como tierraeléctrica.

En la figura 58 se muestra la imagen de un cable de pro-gramación. De lo contrario puede emplearse un adaptador (fi-gura 59) que realiza la misma función y con éste puede em-plearse cualquier cable serie que se disponga.

Por último, sobre la tarjeta entrenadora se tiene incorpora-do un regulador de voltaje identificado como IC2 que posee elcódigo LM7805, y cuyo cometido es el de proporcionar un vol-taje constante de 5V para alimentar al microcontrolador PICA-XE y los módulos auxiliares que tiene incorporados la tarjetaprogramadora. Por medio de la utilización del regulador devoltaje es posible que podamos emplear para energizar a nues-tra tarjeta de entrenamiento una pila de 9V.

LISTA DE COMPONENTES PARA LA TARJETA

CONTROLADORA PICAXE–18

IC1 Base de 18 terminalesIC2 LM7805D1, D2 Leds VerdesD3 Led RojoS1, S2, RESET Interruptores Push buttonR1, R4, R5: 10kΩ 1/8WattR2: 22kΩ 1/8WattR3: 1kΩ 1/8WattR6, R7,R9: 39kΩ 1/8WattR8: 100kΩ 1/8WattPot. 1: Preset 100Sensor: Bloque de terminales

Varios: Conector mini jack de audio, conector mini plugde audio, alambres de conexión, broche para pila de 9V y cir-cuito impreso.

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

Con el PICAXE–08 se tiene la posibilidad de utilizar el con-vertidor analógico a digital (ADC), la forma de utilizarlo bajoel sistema PICAXE es lo mismo para cualquiera de las versionesde microcontroladores, ya sea PICAXE–08, PICAXE–18 ó PICA-XE–28. El empleo de un ADC es muy útil e inclusive necesario,sobre todo cuando tenemos que utilizar un sensor que nos re-porta una variable cuyos valores cambian dentro de un rangoestablecido con el transcurso del tiempo. A estas variables seles conoce con el nombre de analógicas, ya que tienen un com-portamiento como el ilustrado en la figura 60.

Dependiendo de la variable física que se tenga que medir(para, con su información, controlar determinado proceso), esel sensor que emplearemos.

Existen sensores para medir la temperatura, humedad, in-tensidad luminosa, presión ejercida a una superficie, acelera-ción, deformación de materiales. Estas variables físicas son lasmás comunes de medir ya que existen sensores comercialesmuy económicos para estas variables.

El aspecto común de todos los sensores, no importando aqué variable física responden, es que convierten la variable fí-sica a una señal eléctrica cuyo valor correspondiente de formadirecta a la variable. Para el caso particular de la tarjeta entre-nadora del PICAXE–18, se requieren sensores que cuenten,preferentemente, con una variación de resistencia al cambiar elvalor de la variable física, ya que sobre la tarjeta entrenadorase tiene implementado un circuito resistivo que, en combinacióncon el sensor se genera un divisor de voltaje, el cual se encuen-tra conectado a un potencial de 5V. Las variaciones de éste, deacuerdo a lo que mida el sensor, que es lo que se hace llegaral ADC del PICAXE.

En la figura 61 se ilustra el diagrama esquemático de latarjeta entrenadora PICAXE–18, de la cual nos interesan, en es-ta ocasión, las terminales identificadas como AN1 y AN2. Sianalizamos con detalle la terminal que corresponde al borneAN1, es allí donde se encuentra un conector con tornillos quesirven para sujetar al sensor que utilicemos, recordando quedebe generar una variación resistiva a los cambios que presen-te la variable física. El sensor que utilicemos estará conectándo-se en serie con un resistor identificado como R8 y cuyo valor esde 100kΩ. Este circuito serie tiene, en uno de sus extremos, elvalor positivo de 5V, y el otro GND; por lo tanto, al cambiar elvalor de la variable física se tendrá una repercusión sobre elsensor, ya que éste cambiará su valor resistivo. Al modificarseel valor de resistencia del sensor, se tendrá una mayor o menorcirculación de corriente, recordando que todo depende de laley de Ohm, que dice:

“El valor de la corriente es inversamente proporcional al va-lor de la resistencia, y directamente proporcional al valor delvoltaje” (la fórmula matemática es: I = V/R).

Page 21: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 55

Si cambia el valor de la corrienteen el circuito serie y nuevamente apli-camos la ley de Ohm, entonces setendrán variaciones de voltaje, yaque la información del valor de volta-je la estaremos obteniendo de la co-nexión del sensor con R8.

El borne, identificado comoAN2, es más sencillo de utilizar, yaque ahí se tiene un preset identificadocomo POT1, del cual una de sus 2 ter-minales de los extremos se hace lle-gar al potencial de 5V y el otro aGND. Es a través de su terminal delmedio de donde se obtiene el valorde voltaje que se dirigirá posterior-mente al ADC del PICAXE. Observan-do con detalle este circuito simple,nos daremos cuenta de que se tratade 2 resistores conectados en serie, y que al modificar el valordel preset, le estaremos agregando resistencia a uno de estosresistores y quitándole al otro. El propósito de utilizar este cir-cuito es únicamente para cuestiones didácticas, ya que estare-mos simulando la operación de un sensor aún sin tenerlo, peroestaremos en absolutas posibilidades de comprobar nuestroprograma ya colocado en el PICAXE. La información contenidaen los bornes AN1 y AN2, que es el reflejo de un sensor (pa-ra el caso de AN1) y la variación de un poten-ciómetro (para el caso de AN2) se tiene queconectar a la entrada analógica del PICAXE.Para ello, dependiendo del tipo de microcon-trolador PICAXE (PICAXE–18 ó 18A ó 18X), sepuede disponer de hasta tres entradas del tipoanalógicas. Los bornes de las entradas analó-gicas al PICAXE están identificados como E0,E1 y E2, por lo que para hacer llegar la infor-mación de los bornes AN1 ó AN2 a E0 ó E1ó E2, será mediante pequeños cablecillos deconexión, tal como se muestra en la figura 62.Para ilustrar de mejor manera la utilización delADC del PICAXE vamos a recurrir al empleo deun ejemplo práctico. Este ejemplo consistirá enencender o apagar una lámpara de alterna delmismo tipo que utilizamos para iluminar nues-tra casa. El circuito al que estamos haciendo re-ferencia es el de un control automático de lu-ces. Este control automático detectará, a travésdel LDR, cuándo se oculte nuestro astro rey(Sol) y se comiencen a oscurecer las calles, yviceversa, cuando empiece a amanecer, deigual manera la luminosidad producida serádetectada a través del LDR (figura 63). La en-

trada que será utilizada con el valor analógico de la intensidadluminosa está en el borne de entradas de la tarjeta entrenado-ra, y se trata de la entrada E0. El LDR, prácticamente, es unaresistencia variable que está constituida por un material fotosen-sible; por lo tanto, la intensidad luminosa provocará que dismi-nuya su valor de resistencia, mientras que la oscuridad o ausen-cia de luz ocasionará que tenga su máxima resistencia, y de-pendiendo del tipo de LDR puede tener valores de resistenciaque son de 2MΩ, ó 10MΩ en la oscuridad. Para controlar el

Figura 60 - Diferentes tipos de señales analógicas

Figura 61 - Diagrama esquemático de la tarjeta entrenadora PICAXE–18.

Page 22: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

56 CLUB SABER ELECTRONICA

apagado o encendido de la lámpara de alterna, se requiere uncircuito que maneje la potencia, o dicho con otras palabras, senecesita que la cantidad de corriente que consuma la lámparano la suministre directamente el PICAXE, por lo que se empleauna interfaz implementada a base de un transistor identificadocomo Q1, además de utilizar también un relevador que se en-

cuentra identificado como RL1. Todo esto se ubica en el diagra-ma de la figura 62. La salida que se utilizará se encuentra enel borne de salidas de la tarjeta entrenadora y se trata de la sa-lida S0. En la salida S0 se tendrá un “0” lógico si la intensi-dad luminosa detectada es suficiente como para que se apa-gue la lámpara; por otra parte, si la intensidad luminosa es

muy baja o se tiene oscuridad total, enla salida S0 se tendrá un “1” lógico,provocando que se encienda la lámpa-ra correspondiente. Esta información sehace llegar al transistor Q1, que a suvez, dependiendo de la informaciónque tenga en su base, energizará o nola bobina del relevador RL1, siendo loscontactos de este relevador quienes ma-nejen la tensión alterna de línea y seránellos quienes enciendan o apaguen, fi-nalmente, la lámpara. Una vez explica-da la parte que corresponde a la electró-nica de la tarjeta entrenadora, así comolos dispositivos y circuitos que se le agre-garán para su funcionamiento, ahoraprocederemos a explicar cómo se elabo-ra el programa con el cual controlaremosel encendido o apagado de una lámpa-ra de corriente alterna, así que prosiga-mos adelante.

Figura 62 - Conexiones sobre la tarjetaentrenadora PICAXE-18.

Figura 63 - Imagen de un LDR.

Figura 64 - Icono del programa“PICAXE Programming Editor” Figura 65 - Ventana de Opciones.

Figura 66 - Barra de comandos con el menú “Other”.

Page 23: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 57

Lo primero que tenemos que hacer es abrir nuestro progra-ma llamado “PICAXE Programming Editor” (figura 64) y quepreviamente tuvimos que instalar, y si aún no se tiene, lo pue-den descargar de nuestra página de internet www.webelectro-nica.com.ar con la clave “picaxe”, o en su defecto también lopueden adquirir en la página www.picaxe.uk.co.

Una vez dentro del programa editor de los PICAXE, seabrirá una ventana en donde se muestran las distintas opcionespara utilizar los PICAXE, y en esta ocasión, tenemos que elegiralguno de los PICAXE–18; todo depende de cuál de ellos seacon el que contemos.

Comenzaremos programando con diagramas de flujo paraaprender a utilizar los distintos comandos, y posteriormente losconvertiremos en código Basic. Así es que tenemos que selec-cionar el comando que abre la plantilla de trabajo con diagra-mas de flujo. Observe la figura 65.

Ya en el ambiente de programación con diagramas de flu-jo, lo primero que tenemos que seleccionar en la barra de co-mandos es el que está identificado con la palabra “other” (fig.66) ya que ahí es en donde se encuentra la herramienta parautilizar el comando de lectura del convertidor ADC del PICAXE.

El comando del ADC está identificado como “readadc” ylo único que tenemos que hacer es seleccionarlo para poderlocolocar en el área de trabajo, y con el comando de selecciónque está identificado con una flecha, le indicaremos en qué en-trada estará ubicada la de valores analógicos. Normalmente,cuando seleccionamos el comando “readadc”, por defecto seselecciona la entrada E0, pero recordemos quepodemos seleccionar cualquiera de las entra-das E0 ó E1 ó E2 ó las tres al mismo tiempo,ya que sólo tenemos que conectarles el corres-pondiente circuito con el sensor analógico. Re-cuerden también que dependiendo del tipo dePICAXE–18 (PICAXE – 18 ó 18A ó 18X) seránlas entradas analógicas que emplearemos. (Fi-gura 67).

Para colocar el comando “readadc”, lopodemos hacer directamente uniendo el extre-mo superior del bloque del comando “rea-dadc” (Fig. 68) con el del bloque “start”; estaacción la llevamos a cabo para optimizar es-pacio en el diagrama de flujo, y ahorrarnos lautilización de la herramienta “wire”.

El comando “readadc” tiene la tarea deleer el valor de la variable analógica que enesta etapa se encuentra en su correspondientevalor de voltaje, y tal como se encuentra expre-sado en la figura 68, el 0 que se encuentradespués de la palabra readadc indica qué ter-minal de entrada es la que se está utilizandocon el ADC, y después se encuentra la varia-ble b0, que es donde se aloja el valor analógi-

co que está leyendoel PICAXE.

El paso siguien-te es verificar quévalor tiene la varia-ble b0 (Fig. 69) pa-ra que cuando secompare este valorse sepa si existe lumi-nosidad u oscuridaden el medio ambien-te. En este caso, te-nemos que seleccio-nar el menú “if” paraubicar los comandosde verificación devalores; posterior-mente, seleccionare-mos el comando queestá identificado co-mo “var”, ya que escon éste con el quecompararemos losvalores de las varia-bles con las quecuenta el microcon-trolador PICAXE.

Figura 69 Co-mando que com-para el valor dela variable b0.

Figura 70Diagramade flujo

completo.

Figura 67 - Comando “readadc”.

Figura 68 - Colocación delcomando “readadc”.

Figura 71 - Programacompleto y ventanas

del simulador.

Page 24: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

58 CLUB SABER ELECTRONICA

Para configurar el comando “var”, tenemos que seleccio-nar en qué variable se está guardando el dato que será digita-lizado, y que en esta ocasión se trata de la variable b0. Aho-ra seleccionaremos el operando “mayor que” para indicarle alPICAXE que para todos los valores analógicos mayores que de-terminado valor nos debe reportar una salida verdadera y en-tonces el flujo lógico se dirigirá a través de la salida identifica-da como Y. El valor que fijaremos es el de 125, que práctica-mente representa la mitad del rango total que puede ser digita-lizado y cuyo valor máximo es de 255. Para nuestro programa,cuando se tienen valores por debajo de 124, indicará que setiene suficiente luminosidad; por lo tanto, al salir la informaciónpor la salida N del bloque “var”, mandará apagar la lámpara.Cuando se tienen valores mayores a 125, indicará que la lumi-nosidad es muy baja, por lo que mandará encender la lámpa-ra. A la salida identificada como N se le conectará el bloque“low”, cuya función será la de apagar la salida S0 que es endonde se encuentra conectado el circuito externo que controlala lámpara, mientras que a través de la salida identificada co-mo Y se encuentra el bloque “high” que será la encargada deactivar la salida S0 y de esta manera encender la lámpara. Eldiagrama de flujo completo se muestra en la figura 70.

En la figura 71 se observa la simulación del ADC; paraello, se tiene la ventana donde se muestran las entradas y lassalidas y en la parte derecha se muestra el área en donde sepuede manipular la entrada correspondiente al ADC. Al moverla barra correspondiente de la entrada analógica, observare-mos cómo en la ventana correspondiente a las variables se irámodificando la variable b0, que es donde guardaremos el da-to originado en el ADC. Cuando hemos visto que nuestro dia-grama de flujo realiza las funciones lógicas que esperamos, en-tonces estamos en posibilidad de convertir el código a Basic(Fig. 72), para posteriormente descargarlo a nuestro PICAXEpor medio de la tarjeta programadora.

En la figura 73 y 74 se muestra la manera de cómo pode-mos armar nuestro cable de programación o, en su defecto, uti-lizar un cable serie común y un adaptador como el que semuestra en la figura 75.

Por último, sobre la tarjeta entrenadora se tiene incorpora-do un regulador de voltaje identificado como IC2 que posee elcódigo LM7805, y cuyo cometido es la de proporcionar un vol-taje constante de 5V para alimentar al microcontrolador PICA-

Figura 75 - Adaptador para programación.

Figura 74 Cable de

programación.

Figura 72 - Programa en código Basic.

Figura 73 - Identificación de terminales en los co-nectores mini jack y DB9.

Page 25: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 59

XE y los módulos auxiliares que tiene incorporados la tarjetaprogramadora. Por medio de la utilización del regulador devoltaje, es posible emplear para energizar a nuestra tarjeta deentrenamiento una pila de 9V.

LISTA DE COMPONENTES PARA ARMAR LA

TARJETA CONTROLADORA PICAXE–18.

Tarjeta entrenadora PICAXE–18.D1 -Diodo 1N4001Rext1 -1 kΩ 1/8 WattRL1 -Relevador 5VQ1 - BC548LDR

Varios: Cable de programación o Cable serie y adapta-dor, cables de conexión, batería de 9V.

Control de Temperatura con la Tarjeta Entrenadora del Picaxe-18La temperatura es uno de los parámetros que más se con-

trola, ya que desde una simple casa, hasta algún proceso in-dustrial de una empresa cuenta con este tipo de dispositivos, loscuales pueden ser muy simples o inclusive llegan a ser elemen-tos muy complejos y avanzados.

En la figura 76 vemos el diagrama esquemático de la tar-jeta entrenadora PICAXE-18, con el sensor LM35 integrado aella.

Comercialmente existen medidores de temperatura cuyafunción es sólo, mostrar el valor de temperatura, y por otra par-te también están presentes los controles de algún proceso queactúan en función del valor de la temperatura. Estos últimoscontroles basan su forma de operar en un convertidor analógi-co - digital, si es que el control es electrónico y digitalizado, ymás que mostrar el valor de temperatura, su utilidad principal

Figura 76

Page 26: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

60 CLUB SABER ELECTRONICA

radica en el hecho de realizar tareas como la de controlar demanera autónoma la temperatura de una caldera, de una habi-tación, de un invernadero, etc.

En la figura 77 podemos observar las conexiones sobre latarjeta entrenadora PICAXE-18.

La temperatura es una de las variables físicas más fáciles yeconómicas de controlar. En casi cualquier negocio de produc-tos electrónicos encontraremos, por ejemplo, un simple circuitointegrado identificado como LM35, que es un sensor electróni-co de temperatura.

En esta oportunidad vamos a implementar un algoritmo pa-

ra diseñar un control automático detemperatura basándonos en nuestromicrocontrolador PICAXE, en el cual fi-jaremos un valor que servirá de refe-rencia para saber en qué momento sedeberá activar ó desactivar un equipode aire acondicionado, un ventiladoró un calefactor, etc.

Aquí lo más importante es que de-bemos seleccionar un sensor que nosentregue un valor de voltaje que tengauna correspondencia con el valor detemperatura que está midiendo, queen este caso puede ser el LM35, queya se encuentra calibrado en gradoscentígrados (°C). Otro tipo de sensorque se puede emplear para leer latemperatura, sería un termistor que, adiferencia del LM35, basa su opera-ción en cambios de valores de resisten-cia de acuerdo a la variación de tem-

peratura.Sea para un sensor que entrega voltaje o para un sensor

que cambia su valor resistivo, la tarjeta entrenadora del PICA-XE - 18 contempla la utilización de ambos, y para ello se cuen-ta con un espacio reservado a cada uno de los sensores. Si setrata del sensor LM35 que entrega voltaje, se tendrá que conec-tar en el espacio que se encuentra sobre la tarjeta entrenadoray que se identifica como Pot1. Para ello, se tendrá que retirarel preset si es que ya había sido colocado, para colocar el sen-sor LM35 en su lugar, respetando la ubicación de las termina-les del voltaje de alimentación (Vcc y GND). El terminal que en-trega el nivel de voltaje de acuerdo con la temperatura presen-te, es el AN2, que se tiene que conectar por medio de un pe-queño cablecillo a cualquiera de las entradas E0 ó E1 ó E2 quetiene el microcontrolador PICAXE.

Por otra parte, si se emplea un termistor, sólo tendrá quecolocarse en el conector identificado como “sensor” y en elcual se tiene contemplado que se utilice un bloque conector contornillo. Aquí ya está preparado el circuito que complementaráal termistor (divisor de voltaje) para que de esta manera las va-riaciones de temperatura se conviertan en valores de voltaje enel terminal AN1, y de igual manera, por medio de un cableci-llo, se puede conectar esta información a cualquiera de las tresentradas que posee el convertidor analógico digital del micro-controlador PICAXE.

En esta ocasión y para este proyecto, utilizaremos el sensorLM35 para medir la temperatura, y con esta variable física es-taremos en posibilidad de controlar la temperatura de un recin-to cerrado, como ser una habitación ó el interior de un vehícu-lo. Ya vimos en la figura 77 el diagrama del circuito que seráadecuado para complementar la operación de la tarjeta entre-

Figura 77

Figura 78

Page 27: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 61

nadora del PICAXE - 18, como circuitería complementaria a latarjeta entrenadora, se observa la conexión del sensor de tem-peratura, que en esta ocasión se trata del circuito integradoLM35. Por otra parte, también se observa el circuito externoque activa el ventilador, el cual se encuentra implementado através de un amplificador operacional, un transistor y un rele-vador, principalmente.

En la figura 78 se ve el diagrama de flujo del programa delPICAXE. El sensor de temperatura LM35 proporciona un valorde voltaje que está de acuerdo con la magnitud de temperatu-ra que se encuentre en el recinto donde esté instalado. Deacuerdo con el fabricante, su rango de operación va de 0V a1.5V, que equivale a 0°C y 150 °C, respectivamente, y a ca-da cambio de 1 °C, el valor de voltaje cambia en 10mV. Porlo tanto, es muy fácil saber qué valor de temperatura está mi-diendo al saber el valor de voltaje que entrega el sensor. Porejemplo, cuando se tenga un valor de 35 °C, se tendrá un va-lor de 350mV.

La forma de emplear el sensor LM35 y el circuito exteriorse ilustra puede verlo nuevamente en la figura 77. En ella seaprecia que se puede utilizar un ventilador que puede poseerun motor tanto de CA como de CD. Esto es posible, ya que es-tamos empleando un relevador como elemento de interfaz en-tre la etapa de control y la de potencia. La bobina del releva-dor está siendo controlada por un amplificador operacional,que es el dispositivo que servirá de protección entre la salidadel microcontrolador PICAXE y la bobina del relevador. El am-plificador operacional, entre otras cosas, tiene la propiedad deno demandar corriente del terminal de salida del PICAXE, y porello no se sobrecargue. La configuración en la que se encuen-tra el amplificador operacional se llama seguidor de voltaje, yen ella el voltaje de entrada es exactamente igual al que estáentregando. Por lo tanto, como el PICAXE le entrega 5V al se-guidor de voltaje cuando su salida esté activada, la salida delamplificador operacional también será de 5V pero casi sin de-mandarle corriente al PICAXE. Posteriormente, la salida del se-guidor de voltaje se hace llegar a un transistor 2N2222 (depropósito general), que es el que se encarga de manejar todala corriente que demandará la bobina delrelevador cuando éste necesite ser activa-do. El transistor le ayuda al amplificadoroperacional a que no se caliente cuandocircule una corriente muy alta. Es recomen-dable que la fuente que energice la bobinadel relevador sea independiente de la queenergiza a la tarjeta entrenadora del PICA-XE - 18, ya que cuando el relevador se ac-tiva, éste demanda una corriente muy gran-de, y si empleamos el mismo regulador devoltaje que posee la tarjeta entrenadora, és-te podría sobrecalentarse demasiado, hastatal punto que puede llegar a bloquearse y

toda la circuitería comenzará a trabajar de una forma muy de-ficiente y podría, entre otras cosas, comenzar a encenderse yapagarse continuamente, provocando que el ventilador se en-cienda y apague a cada rato.

El valor de voltaje correspondiente con la magnitud de latemperatura estará en el borne del terminal AN2, y de ahí, pormedio de un cablecillo, haremos llegar esta información al ter-minal de entrada E0 que configuraremos como entrada para elconvertidor analógico - digital del microcontrolador PICAXE.Para controlar el encendido o apagado del ventilador, utiliza-remos el terminal S0 de la tarjeta entrenadora, que también co-rresponde a un terminal de salida del PICAXE.

En la figura 79 se ve la simulación del programa.Para comenzar a programar al microcontrolador PICAXE,

primero describiremos qué es lo que pretendemos en cuanto ala forma de operación de esta aplicación, o sea:

El sensor de temperatura se encontrará leyendo de maneracontinua la magnitud de la temperatura, que se hará llegar aun canal del convertidor analógico - digital del microcontrola-dor PICAXE. Este último, de acuerdo con el programa (es lo quevamos a realizar a continuación), activará una de sus salidaspara controlar la bobina de un relevador.

Para controlar el apagado o encendido de la bobina delrelevador, se requiere lo siguiente: por medio de un “0” lógicose apagará la salida S0; por lo tanto, la bobina del relevadorse desenergizará, mientras que un “1” lógico en la misma sali-da S0 provocará que la bobina del relevador se energice. Unavez que ya sabemos de qué manera tiene que operar el micro-controlador PICAXE, procedemos a explicar la realización delprograma.

En desarrollos anteriores hemos comenzado esta parte de laaplicación con las siguientes palabras, “lo primero que tenemosque hacer es abrir nuestro programa llamado “PICAXE Program-ming Editor”. Por lo tanto, nuevamente hacemos la indicaciónde que pueden descargar el software de nuestra página de inter-net si es que aún no lo tienen, la página es www.webelectroni-ca.com.ar y empleen la clave “picaxe”, en su defecto, tambiénlo pueden adquirir en la página www.picaxe.uk.co.

Figura 79

Page 28: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

62 CLUB SABER ELECTRONICA

Recuerden que al ingresar en el programa lo primero quese abrirá será una ventana, de la cual, en la pestaña opciones,seleccionarán el PICAXE que será utilizado para el proyecto, sepuede emplear cualquier microcontrolador PICAXE, ya que laestructura del programa es válido para cualquiera de ellos, pe-ro recuerden que tenemos microcontroladores de 8, 18, 28 y40 terminales; por lo tanto, las terminales de salida y de entra-da cambian de posición y cantidad de acuerdo al PICAXE quese vaya a utilizar. Cuando empleamos un convertidor analógi-co - digital (ADC), lo primero que tenemos que hacer es calcu-lar su resolución y para ellos nos basamos en la fórmula Nº1.

Resolución = Valor del rango----------------------------------

2N - 1

En este caso el valor del rango es el que tiene la entradadel ADC del PICAXE, que es de 5V. La variable N representala cantidad de bits que posee el ADC, que en este caso es de8; por lo tanto, la expresión anterior queda como sigue:

5 5 Resolución = --------------------- = ----------------------- =

28 - 1 256 - 1

= 0.0196V = 19.6mV

Con este dato ya sabemos que con cada cambio de0.0196V que exista en el ADC, se tendrá el incremento de unbit en un conteo a base de 8 bits. Por otra parte, y recordandoque el sensor LM35 trabaja en el rango de 0 °C a 150 °C cu-yos valores equivalen a 0V y 1.5V, respectivamente, por razo-nes obvias no será empleado todo el rango de trabajo del ADCdel PICAXE, ya que la temperatura ambiente, por ejemplo enun lugar extremo, es de hasta 55 °C, y ya estamos hablandode un desierto. Para este desarrollo el valor de temperatura quenos interesa es el de 25 °C, ya que por debajo de este valor po-demos considerar que la temperatura es agradable, pero porencima de este valor consideraremos que hace demasiado ca-lor, por lo que tenemos que encender el ventilador (este nivel detemperatura se puede ajustar a las preferencias de las personaso los lugares). Para la temperatura de 25 °C se tiene un valorde voltaje equivalente a 250mV; por lo tanto, tenemos que sa-ber qué número binario será el resultante una vez que es ingre-sado al ADC del PICAXE. Para ello, emplearemos el valor de laresolución y el del valor analógico (Va) que tendremos que digi-talizar. Por lo tanto, Va = 250mV, y para calcular la combina-ción binaria tenemos la siguiente expresión matemática:

Comb. binaria = Valor Analógico (Va) -------------------------------------–––

Resolución

Por lo tanto:

250mVComb. binaria = ----------------------- = 12.75 ≈ 13

19,6mV

El valor de 13 ahora lo tenemos que convertir a su corres-pondiente valor binario de 8 bits, quedando como sigue:00001101.

Este último valor binario es el que tomaremos como basepara realizar la comparación de los diferentes valores de vol-taje que tienen una correspondencia directa con el valor detemperatura, y entonces, para cualquier valor por debajo de00001101 (13), se desactivará el ventilador, mientras que pa-ra cualquier valor por arriba de 00001101 se tendrá que en-cender el ventilador. Por lo tanto, de la figura 78 observe quedespués de tomar un dato, digitalizarlo y almacenarlo de ma-nera temporal en la variable b0, se realiza una comparacióndel valor guardado en b0 con el valor de referencia que es 13,siendo el operador empleado en esta comparación el de un ›(mayor que), para saber en qué momento el valor de la tempe-ratura sobrepasa la magnitud de 25 °C, tal como se encuentraexpresado en el diagrama de flujo de la figura 78.

El programa es muy simple ya que tan sólo se trata de leerun dato analógico y guardarlo en una localidad de memoriaRAM. El comando para realizar la lectura del dato analógicoes el que está identificado como “readadc” y se encuentra enel bloque identificado como “other” en la página principal delprograma “Programming Editor”.

Para configurar este comando se le tiene que asignar encuál de las entradas que posee el microcontrolador PICAXE seestará empleando el ADC, además de indicarle en cuál varia-ble (localidad de memoria RAM) se alojará el dato digitaliza-do. Posteriormente, para comparar el dato que se obtiene des-pués de la digitalización se toma de la localidad de memoriaeste valor y se compara con el valor 13 (00001101) que yafue explicado anteriormente.

El comando para realizar la comparación es un rombo y seencuentran en la página principal dentro del bloque “if”. Deaquí, si el valor de la variable es mayor que el dato 13, enton-ces se interpretará como que la temperatura se encuentra porarriba de 25 °C, y; por lo tanto, encenderemos la salida S0 delPICAXE para que se observe esta acción mediante la activa-ción del ventilador.

En la figura 79 se muestra la simulación del ADC, obser-vándose en ella las ventanas donde se muestra el estado de lasentradas, las salidas y las variables temporales.

En la figura 80 publicamos el programa en código Basic.Una vez que el diagrama de flujo ya se encuentra operan-

do completamente, el paso siguiente será el de convertir el có-digo a basic, y posteriormente descargarlo al PICAXE instaladoen la tarjeta programadora.

Page 29: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 63

Aunque ya lo hemos mostrado anterior-mente, en la figura 81 nuevamente mostra-mos la manera de cómo podemos armar elcable de programación con la identificaciónde terminales en los conectores mini jack yDB9.

Aún nos falta desarrollar una gran can-tidad de ejercicios, razón por la cual los in-vitamos a que sigan esta serie de ejemplosde utilización y consejos de programación.

LISTA DE COMPONENTES PARA ARMAR LA

TARJETA CONTROLADORA PICAXE-18

Tarjeta entrenadora PICAXE-18.D1 - Diodo 1N4001Rext1 - 5.6kΩ 1/8WRext2 - 390Ω 1/8WRL1 RelevadorQ1 - 2N2222Sensor LM35

Varios: Cable de programación, ó Cable serie y adapta-dor, cables de conexión, batería de 9V.

Programa para Desplegar Números BCD con la Tarjeta Entrenadora del Picaxe-18

En muchas ocasiones y para la mayoría de las aplicacio-nes que desarrollamos sobre un microcontrolador, tenemos quemostrar algún resultado sobre un display, que bien puede serde segmentos o de LCD, por lo que es nece-sario saber de qué manera se desplegará lainformación sobre las salidas que se tienenreservadas en un microcontrolador PICAXE.

Si nos ponemos a contabilizar todo elconjunto de información que tiene que salirpor el puerto correspondiente de algún micro-controlador para manipular un display, nece-sitaríamos de una gran cantidad de líneas quese reserven para ese uso exclusivo. De hecho,no alcanzarían todas las líneas que tuvieradisponible el microcontrolador, razón por lacual tenemos que emplear una técnica quenos ayude a solucionar este problema.

En este ejemplo haremos uso de displaysde 7 segmentos, para así aprender a enviar-les la información a éstos.

La técnica que emplearemos es la de mul-tiplexación de la información, por lo que pro-

cederemos a explicar en primera instancia el circuito que seempleará con los displays de 7 segmentos, el cual incluye untotal de 3 displays de cátodo común.

El circuito de los displays recibe el nombre de “Display de3 dígitos” cuya publicación complementaria se realizó en la re-vista Saber Electrónica Nº 220 Edición Argentina. El principiode operación es muy básico: se le hacen llegar 4 bits que sonlos que generan el código BCD, además de 3 bits que son losque indican qué número es el que se estará desplegando, estoes, se controla el encendido del display correspondiente con lasunidades, decenas o centenas.

Si se requiere mostrar el valor “578” entonces se requiereenviarle al circuito del “Display de 3 dígitos” la combinación“1000” (8) y después el bit que enciende el display de la uni-dades, después se tiene que enviar el “0111” (7) posteriormen-te el bit que enciende el display de las decenas y por último el“0101” (5) y como paso siguiente se tiene que enviar el bit queenciende el display de las centenas. Este proceso se tendrá querepetir muchas veces, dando la impresión de que siempre estánencendidos los displays.

Figura 80

Figura 81

Page 30: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

64 CLUB SABER ELECTRONICA

Lo que se pretende con estas instrucciones es adquirir el co-nocimiento de cómo se tiene que generar la información en unmicrocontrolador PICAXE, para que, posteriormente, ésta seaenviada a las terminales de su puerto de salida. Por lo tanto, yde acuerdo a la descripción anterior, que se hizo de la mane-ra cómo funciona el circuito auxiliar denominado “Display de3 dígitos”, se tiene lo siguiente:

De alguna manera, ya debemos contar con datos, que tu-vieron que ser adquiridos previamente por algún proceso porel microcontrolador PICAXE (por ejemplo la lectura a través delconvertidor ADC descrito anteriormente en esta serie). Una vezprocesados estos datos, de acuerdo con nuestra aplicación,puede ser muy importante desplegar un dato numérico, porquea lo mejor estamos diseñando un voltímetro digital, por ejem-plo.

En la figura 82 vemos la tarjeta entrenadora PICAXE-18 yla tarjeta del Display de 3 dígitos. Se muestra la manera de co-nectar el circuito auxiliar “Display de 3 dígitos” a la tarjeta en-trenadora, por lo que ahí se observan las líneas de conexiónentre los terminales de salida del puerto de la tarjeta entrena-dora que van hacia las terminales de entrada del circuito auxi-liar. Cabe aclarar que ésta es tan sólo una sugerencia de có-mo hacerlo, ya que cada uno puede realizar las conexiones dela mejor manera posible y así optimizar los recursos de la tar-jeta entrenadora.

Sobre la misma figura 82 no se hace mención de la cone-xión de la energía al display de 3 dígitos, pero ésta se pue-de tomar de los terminales disponibles sobre la tarjeta entre-nadora que tienen la identificación de +5V, y hacer llegar es-te voltaje al borne identificado como +Bat. Una vez descritala disposición de la circuitería, procedemos a explicar el de-sarrollo del programa del microcontrolador PICAXE. Para es-ta explicación, como ya se había establecido en líneas ante-

riores, la información que será desplegada de alguna mane-ra ya fue adquirida o procesada por el microcontrolador, porlo que la única tarea que se tiene es la de mostrarla a travésdel display.

Supongamos que se requiere desplegar la información“246” a través del display; por lo tanto, en primera instanciase tiene que leer el dato de una localidad de memoria tempo-ral donde fue alojado para su posterior utilización. El dato aser desplegado lo debemos seccionar en tres partes, para sumejor manejo; por ello, se tiene que el número cuenta con lassiguientes partes: unidades, decenas y centenas, por ser 3 lascifras que componen al número total. En esta ocasión y comosugerencia, el dato de las unidades se encontrará ubicado enla localidad de memoria temporal representada por el registrodel microcontrolador PICAXE b0, el dato de las decenas se en-contrará en el registro b1 y las centenas en el registro b2.

En el programa que se va a describir, observe la figura 83.Los primeros bloques muestran la manera de cómo se guardaun dato en los registros antes mencionados (b0, b1 y b2). Estefragmento del programa puede omitirse o reemplazarse total-mente, dependiendo de la aplicación, y nuevamente recorda-mos que esta parte del programa es para uso específico de es-ta aplicación. En la figura 83 vemos los bloques de asignaciónde valores a los registros b0, b1 y b2.

El comando “let” permite la asignación de valores a varia-bles. Esta asignación se puede dar de una forma directa comoestá expresado en esta aplicación, o también se puede efectuarla asignación del resultado de una operación aritmética (+, -,*, /) ó por el resultado de una operación lógica (and, or, ne-gación, etc.). En este ejercicio se está empleando el comandode asignación de manera directa sobre los registros para alo-jar los valores que corresponden a las unidades, decenas ycentenas en b0, b1 y b2, respectivamente.

Figura 82

Page 31: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 65

Antes de continuar con la explicación del desarrollo delprograma, regresemos por un instante al circuito de la figura82 para saber de qué manera están organizados los datos quesalen por el puerto de salida del microcontrolador PICAXE, yaque así será más sencillo seguir el desarrollo del programa.

En la figura 82 también se muestra la forma de conectar eldisplay a la tarjeta entrenadora y del circuito se observa lo si-guiente: las terminales de salida S0, S1, S2 y S3 representanlos 4 bits que generan las diferentes combinaciones BCD (Bi-nary Code Decimal o en español Código Binario Decimal) deacuerdo con la tabla 2. De ésta, que contiene los números BCDy su equivalente decimal, podemos obtener el peso específicode cada uno de los bits que generan el valor numérico BCD,siendo S0 el bit menos significativo (bms), mientras que S3 re-presenta el bit más significativo (BMS). Esta información BCDse hace llegar a los 3 displays al mismo tiempo, razón por lacual se tiene que indicar cuál de estos displays estará activo deacuerdo con la cifra que se quiere desplegar, ya que de otramanera los 3 se encenderán con la misma in-formación. La solución a lo anteriormentedescrito se encuentra en el circuito de la figu-ra 82, en donde se observa que las termina-les S4, S5 y S6 corresponden al control delas cifras de las unidades, decenas y cente-nas respectivamente, de acuerdo con la in-formación que se encuentra en la tabla 3.

Una vez que hemos visualizado la ma-nera en cómo se encuentra ordenada la in-formación del puerto de salida del microcon-trolador PICAXE, ahora procederemos a ex-plicar la manera en que se envían los datosal circuito del display de 3 dígitos.

Se mencionó en líneas anteriores que enesta aplicación solamente se desplegará la in-formación que se encuentre contenida en losregistros b0, b1 y b2. Para un programa de unproceso completo, de alguna manera estos re-gistros tendrán que ser manipulados; por lotanto, consideramos que esa actividad ya serealizó y los datos ya se encuentran en los re-gistros antes mencionados. Como siguiente pa-so, procedemos a la acción de enviar cadauna de las cifras del número completo a los dis-plays y que en esta ocasión se trata del valor“246”, por lo que comenzamos con el armadode la información que será enviada al puertode salida del microcontrolador PICAXE. La pri-mera cifra que sufrirá la manipulación es la co-rrespondiente a la de las unidades, razón porla cual, en primera instancia, emplearemos unnuevo registro, el “b3”. Ahí alojaremos un da-to de manera directa a través del comando de

asignación “let”, tal como se ilustra en la figura 84. El valor quese está guardando enel registro b3 es el16(10) que equivale ala combinación bina-ria 0010000(2), quees precisamente la quecontrola el encendidodel display de la uni-dades. Posteriormente,para enviar la informa-ción completa al puer-to de salida del PICA-XE, se hace uso nueva-mente del comando deasignación “let”, peroen esta ocasión el re-sultado de esta asigna-

TABLA 2

Número BCD Número

(S3,S2,S1,S0) Decimal

0000 0

0001 1

0010 2

0011 3

0100 4

0101 5

0110 6

0111 7

1000 8

1001 9

Tabla 3 - Activación y desactivación de los displays.(S6,S5,S4) Display Centenas Display Decenas Display Unidades000 Apagado Apagado Apagado001 Apagado Apagado Encendido010 Apagado Encendido Apagado100 Encendido Apagado Apagado

Tabla 4 - Resultado de la operación lógica OR entre los registros b0 y b3.S7 S6 S5 S4 S3 S2 S1 S0

b0 0 0 0 0 0 1 1 0b3 0 0 0 1 0 0 0 0pins 0 0 0 1 0 1 1 0

Figura 83

Figura 84 Figura 85

Figura 86

Page 32: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

66 CLUB SABER ELECTRONICA

ción la enfocaremos directamente a los terminales de salida,por lo que se selecciona, después del comando “let”, el desti-no “pins”, ahora tenemos que unir el dato que se encuentra enel registro b0 (unidad cuyo valor es 6) con el que se encuentraen el registro b3 (control del encendido del display de la uni-dad), por lo que empleamos el operador lógico conocido comoOR, cuyo símbolo es “|”. El resultado de la operación lógicase da de la manera como se ilustra en la tabla 4.

En la figura 84 se muestra el bloque que genera la opera-ción lógica OR y cómo el resultado es enviado a los terminalesde salida del microcontrolador PICAXE. De esta forma, aunqueel valor numérico 6 está llegando al mismo tiempo a los 3 dis-plays, sólo se encenderá el que tiene la cifra significativa de lasunidades, mientras que los otros 2 displays (decenas y cente-nas) permanecerán apagados.

En la figura 84vemos los bloques deasignación de valoresal registro b3 y termi-nales de salida del PI-CAXE.

En la figura 85vemos los bloques deasignación a los re-gistros b0, b1, b2 y

b3, además de los terminales de salida del PICAXE. Estos sonlos bloques que se han implementado hasta este momento, yque controlan el encendido del display de las unidades.

Como paso siguiente al envío de la información para en-cender el display de las unidades, ahora se tiene que proseguircon el dato correspondiente a la siguiente cifra significativa,que es la decena, recordando que el valor numérico que sequiere desplegar es el “246”. Por tanto, continúa el turno delvalor 4. Para ello, a través del registro temporal b3, almacena-remos la información correspondiente al encendido del displayde las decenas. En este registro alojaremos nuevamente un da-to de manera directa, utilizando el comando de asignación“let”, tal como se ilustra en la figura 86. El valor que se estaráguardando en el registro b3 es el 32(10) que equivale a lacombinación binaria 00100000(2), que es precisamente laque controla el encendido del display de las decenas.

En la figura 86 vemos el bloque de control de los displaysde las unidades, y decenas. Para complementar la informaciónque será enviada al puerto de salida del microcontrolador PI-CAXE, hacemos uso, una vez más, del comando de asignación“let”, dirigiendo el resultado directamente a las terminales desalida del PICAXE, por lo que en el comando “let” marcamosel destino a donde dirigiremos la información: los terminalesdenominados “pins”. Posteriormente, para unir el dato que seencuentra en el registro b1 (decenas cuyo valor es 4) con el que

se encuentra en el registro b3 (control delencendido del display de las decenas),nuevamente empleamos el operador lógi-co conocido como OR (O en español), cu-yo símbolo ya lo habíamos expresado y es“|”.

El resultado de la operación lógica seilustra en la tabla 5.

En la figura 86 se muestran los blo-ques correspondientes al control de los dis-plays de las unidades y las decenas, loque nos da la posibilidad de mostrar el da-to “46”, faltando tan sólo el control del dis-play de las centenas. A continuación lo ex-plicamos.

Por último, corresponde controlar latercera cifra significativa que es la cente-na. El valor numérico que falta por desple-gar es el “2”. Para ello, en el registro tem-poral b3 almacenaremos la informacióncorrespondiente al encendido del displayde las centenas. Utilizando el comandode asignación “let”, guardamos el valor64(10) en el registro b3 que equivale ala combinación binaria 01000000(2), lacual controla el encendido del display delas centenas.

Tabla 5 - Resultado de la operación lógica OR entre los registros b1 y b3.S7 S6 S5 S4 S3 S2 S1 S0

b1 0 0 0 0 0 1 0 0B3 0 0 1 0 0 0 0 0pins 0 0 1 0 0 1 0 0

Tabla 6 - Resultado de la operación lógica OR entre los registros b2 y b3.S7 S6 S5 S4 S3 S2 S1 S0B2 0 0 0 0 0 0 1 0B3 0 1 0 0 0 0 0 0pins 0 1 0 0 0 0 1 0

Figura 87 - Diagrama de flujo completo.

Page 33: CLUB SABER ELECTRONICA - publicidad.ventadewebs.com.arpublicidad.ventadewebs.com.ar/Desde _26_11_13/Descargas/publiago15... · CLUB SABER ELECTRONICA 35 INTRODUCCIÓN Comenzaremos

CLUB SABER ELECTRONICA 67

Como ya se ha explicado detalladamente la forma de có-mo se arma el dato que será enviado al puerto de salida del PI-CAXE, procederemos a controlar el display de las centenas deuna manera más simplificada que las anteriores cifras significa-tivas.

Por medio del comando “let” uniremos el dato que se en-cuentra en el registro b2 (centenas cuyo valor es 2) con el quese encuentra en el registro b3 (control del encendido del dis-play de las centenas), empleando el operador lógico OR. El re-sultado de la operación lógica se ilustra en la tabla 6.

En la figura 87 se muestran los bloques completos del con-trol de los 3 displays que corresponden al de las unidades, de-cenas y centenas, por lo que ahora sí contamos con el poderde mostrar cualquier número completo de 3 cifras.

Con lo expuesto anteriormente, ya estamos en posibilidadde diseñar una aplicación en la que esté involucrado un tecla-do y un display para desplegar los datos que se van generan-do. También ya hemos revisado cómo trabaja el convertidoranalógico a digital (ADC).

Sólo nos falta procesar la información para mostrarla enlos displays, para que de esta manera diseñemos, por ejemplo,un voltímetro digital, proyecto que en breve publicaremos. Re-cuerden que necesitamos del programa llamado “PICAXE Pro-gramming Editor”, por lo que nuevamente hacemos la invita-ción de que lo descarguen de nuestra página de internet, quees www.webelectronica.com.ar y empleen la clave “picaxe”;en su defecto, también lo pueden adquirir en la página www-.picaxe.uk.co.

Una vez que ya se tiene el programa en Basic (figura 88),descargamos el programa al microcontrolador PICAXE que seencuentra instalado en la tarjeta programadora. Aunque ya lo

hemos publicado en reiteradas ocasiones, nuevamente mostra-mos la manera de armar el cable de programación, o en su de-fecto, utilizar un cable serie común y un adaptador que ya he-mos descrito varias veces y que volvemos a mostrar en la figu-ra 89. Sobre esta tarjeta entrenadora para un PICAXE - 18 setiene la posibilidad de desarrollar un sinnúmero de proyectos,los cuales iremos abordando poco a poco.

LISTA DE COMPONENTES PARA UTILIZAR

LA TARJETA CONTROLADORA PICAXE-18.

Tarjeta entrenadora PICAXE-18.Módulo Display de 3 dígitos

Varios: Cable de programación, ó cable serie y adapta-dor, cables de conexión, batería de 9V.

Figura 88

Figura 89 - Identificación de terminales enlos conectores mini jack y DB9.