Está en la página 1de 4

Formacin

Aprender a programar microcontroladores es muy fcil


Garca e Ibn Ruiz Oleagordia
Figura 1. Fotografa del mdulo OEM BS2-IC, basado en un PIC16C57.

productividad hasta tal punto que tuvieron la idea de comercializar las herramientas que haban ideado. Y en 1992 Parallax comercializ los mdulos BASIC Stamp (ver figura 1) que adquirieron tal xito de ventas que pasaron a erigirse como el producto estrella de la empresa. La gran aportacin de los mdulos BASIC Stamp reside en la conjuncin de un hardware seguro, completo y listo para acoplarle los dispositivos a controlar y un software accesible a cualquier tcnico al estar basado en el lenguaje ms fcil del mundo, el BASIC. El lenguaje PBASIC es una versin sencilla, de pocas instrucciones y adaptadas a las caractersticas de la aplicacin y del microcontrolador. Al mezclarse estos dos ingredientes con una poltica comercial de absoluta informacin y libre disposicin de manuales, tutoriales y software de manejo, una excelente asistencia tcnica y una red de distribuidores profesionales en todo el mundo consi-

guen erigirse como el mejor sistema para iniciarse y desarrollar comercialmente este apasionante trabajo del diseo de proyectos con microcontrolador que va a precisar la colaboracin de muchos proyectistas.

La filosofa del invento El lenguaje PBASIC es muy fcil de aprender y emplear pues no requiere conocimientos especializados en Electrnica ni Informtica. Se ejecuta mediante un Intrprete PBASIC que est grabado de forma permanente en la memoria de cdigo del PIC16C57 del mdulo OEM BS2-IC. El programa de aplicacin que hay que ejecutar se edita en la pantalla del PC con el software libre que puede bajarse por Internet o existe en el CD de la empresa. Una vez confeccionado el programa se manda a travs del puerto serie al mdulo Parallax y se deposita sobre una me-

Figura 2. Esquema electrnico del mdulo OEM BS2-IC. El PIC tiene grabado el Intrprete BASIC y la EEPROM almacena el programa de aplicacin.

La necesidad de optimizar los tiempos de desarrollo de los proyectos que realizaban basados en microcontroladores impuls a dos ingenieros americanos en la dcada de los 80 del siglo pasado a construirse un mdulo hardware que simplificase el desarrollo electrnico y un lenguaje de programacin que se adaptara a sus diseos y fuese asequible para todos los operarios, an con escasos conocimientos tcnicos. Mejoraron la

MICRO/BIT

MARZO/ABRIL 2002

Formacin

moria EEPROM independiente de 2 K Bytes y con capacidad para guardar hasta 500 lneas de PBASIC. Luego las instrucciones del programa van pasando de una en una desde la EEPROM al PIC en donde se decodifican y se ejecutan. La tarjeta dispone de toda la circuitera para que slo baste con conectar los perifricos a gobernar para completar el prototipo (ver esquema terico en la figura 2).

Un kit didctico excepcional Para demostrar la sencillez y las prestaciones de los productos BASIC Stamp el fabricante facilita libremente en Internet cinco tutoriales con experimentos, tres de los cuales estn en castellano, traducidos por el consultor Arstides Alvarez. Para facilitar su distribuidor en Espaa Ingeniera de Microsistemas Programados S.L. (Microsystems Engineering) ha editado el de ms inters: Qu es un microcontrolador?, que se comercializa a precio de coste. Adems, los lectores de esta revista conocen por anteriores artculos las cualidades didcticas y profesionales del laboratorio Universal Trainer (ver figura 3) en cuyo diseo han participado varios profesores del Departamento de Arquitectura de Computadores de la universidad de Deusto. Una de sus finalidades es la enseanza prctica de la Microelectrnica moderna. Para conseguirlo existen una serie de mdulos opcionales destinados a cubrir cada uno una tecnologa clave Mdulo 1: Electrnica digital Mdulo 2: Semiconductores Mdulo 3: Electrnica analgica Mdulo 4: Microcontroladores I (PIC16F84)- Lenguaje Ensamblador Mdulo 5: Microcontroladores II (PIC16F87X)- Ensamblador Mdulo 6: Microcontroladores III (PARALLAX)- Lenguaje PBASIC

Mdulo 7: Circuitos programables (PLD) El objetivo de estos mdulos es ensear mediante prcticas, experiencias, proyectos y programas el tema al que se dedica cada uno. Estos mdulos constan de una coleccin de fichas de los proyectos a todo color y explicadas con todo detalle, kit de materiales para desarrollar todos los proyectos en el Universal Trainer y soporte informtico con programas e informacin. Para el aprendizaje de los microcontroladores hay tres mdulos. El primero utiliza el lenguaje Ensamblador para implementar proyectos sobre el PIC16F84. El segundo emplea el mismo lenguaje pero para proyectos ms complejos basados en los PIC16F87X. Finalmente el tercero dispone de un mdulo Parallax para desarrollar las experiencias con el lenguaje PBASIC. Microcontroladores III consta de una coleccin de fichas de proyectos, un CD con el software preciso e informacin tcnica y un lote de materiales en el que destaca una tarjeta OEM BS2-IC adaptada al Universal Trainer junto a perifricos usados en

las prcticas como motor, altavoz, sensores, etc.

Un proyecto bsico: Control de motores Para ofrecer una idea al lector de la estructura de los proyectos del mdulo MICROCONTROLADORES III de Ingeniera de Microsistemas Programados S.L. se describe en forma resumida el nmero 8 destinado al control de un motor de corriente continua. Todos los proyectos tienen el mismo contenido, dividido en los siguientes apartados: Objetivos: Donde se expone la finalidad de la experiencia. Fundamentos bsicos y nuevas instrucciones: Se describen los aspectos tericos y las nuevas instrucciones que se introducen en la prctica Esquema electrnico Materiales necesarios Desarrollo de la prctica y ejecucin del programa Trabajo personal: Se propone una modificacin ampliacin para que realice el lector.

Figura 3. Fotografa del laboratorio UniversaL Trainer con la tarjeta OEM BS2-IC adaptada para desarrollar los proyectos en PBASIC.

MARZO/ABRIL 2002

MICRO/BIT

Formacin

Figura 4. Seal modulada en anchura de pulso (PWM).

Objetivos Con esta prctica se va a aprender a controlar la velocidad y direccin de giro de un motor de corriente continua con el BS2-IC/MSE. La instruccin que se va a usar es PWM (modulacin de anchura de pulsos). Esta nueva instruccin genera un

tren de pulsos por la patita especificada y con una anchura (duty) determinada. El valor de duty se pasa como una variable que previamente se habr cargado con el valor presente en el puerto de entrada (P0P7). El sentido de giro del motor vendr determinado por el estado de la patita P8. Fundamentos tericos bsicos y nuevas instrucciones En la figura 4 se muestra la forma de onda tpica en una seal PWM. Se trata de un tren de pulsos donde la anchura vara dentro de un periodo constante. Con esto se pretende suministrar una potencia a la carga que es directamente proporcional a esa anchura, puesto que a mayor anchura mayor es el tiempo que la carga (en este caso el motor) permanece activa. De esta manera se consigue controlar la velocidad del motor. En la figura 5 se indica el conexionado entre el driver y el motor de corriente continua. En esta aplicacin se maneja la instruccin especfica indicada en el cuadro 1. Esquema electrnico

Figura 5. Esquema de conexionado del driver y el motor de corriente continua.

Cuadro 1

Figura 6. Conexionado de los perifricos al mdulo OEM BS2-IC/MSE.

En la figura 6 se muestra el conexionado del mdulo con los perifricos. Materiales necesarios Entrenador Universal Trainer Mdulo OEM BS2-IC/MSE Cable serie para conexin a PC Cables de conexin CI driver L293B o equivalente Motor de corriente continua Desarrollo de la prctica y ejecucin del programa Como se ha definido al comienzo de la prctica la velocidad del motor se va a controlar desde los

MICRO/BIT

MARZO/ABRIL 2002

Formacin

conmutadores de la Universal Trainer al igual que el sentido de giro. Para ello se define una variable de tamao byte en la cual se almacena el valor presente en el puerto P0-P7. A continuacin se debe averiguar el sentido de giro del rotor para lo cual basta con testear la patita P8 y con la ayuda de una condicional (IF) configurar las salidas de la forma oportuna en cada caso. Para que se invierta el sentido de giro del rotor hay que invertir la polarizacin de este. El programa propuesto se indica en el cuadro 2. Trabajo personal Se propone realizar otro programa en el que aadiendo un encoder (disco con muesca y optoacoplador) al eje del motor podamos medir su velocidad capturando el pulso generado haciendo uso de la instruccin PULSIN. Bibliografa - Parallax: www.parallaxinc.com - Ingeniera de Microsistemas Programados S.L.: www.microcontroladores.com - Mdulo 6 : Microcontroladores III (Parallax) de Ingeniera de Microsistemas Programados S.L. - Qu es un microcontrolador? Tutorial de Parallax en castellano. Ingeniera de Microsistemas Programados S.L. - Microcontroladores PIC. Diseo Prctico de Aplicaciones, Mc GrawHill. - Microcontroladores PIC: La solucin en un chip, Paraninfo.

Cuadro 2

MARZO/ABRIL 2002

MICRO/BIT

También podría gustarte