Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 88

www.elektor-magazine.

es
magazine
Junio 2013 | 6,50 e

Control
Remoto WiFi
para tiras de LED, rels, actuadores y motores

Placa Controladora Wi-Fi l Recicla tu Fuente de Alimentacin ATX


Controlando Electrnica con la EFL l Localizador de Modelos
Disea tu Propio Integrado (6) l Arduino en Marcha
De BASIC a Python (2) Duelo de Medidores LCR
Konrad Zuse: del Z1 al Z4 l El triunfo de la Robtica Educativa
$25 off

Youll have plenty of summer reading


with Circuit Cellars CC Gold issues archive.
A lifetime of electronics engineering projects, tips,
and analysis, packed onto a portable, USB flash
drive. Keep your archive current with a digital
subscription and download new issue PDFs directly
to the drive! Plus, with 32 GB of storage, theres plenty
of room for your own notes and projects.
Offer ends 6/30/13

*Complete archive includes all issues in print through time of purchase.

Visit www.cc-webshop.com to purchase.


Contenidos

magazine

Community Proyectos

21 Elektor World 12 Tarjeta Controladora Wi-Fi 44 Controlando nuestra propia


La vlvula en el Taper Controla tu casa desde tu telfono electrnica fcilmente con EFL
Conseguir el control mvil con esta placa controladora Utilizando el cdigo de la librera
WiFi universal. Te enseamos cmo de firmware embebido (EFL)
controlar el color de un tira de LED de Elektor, Se puede generar
RGB, pero lo puedes usar para una rpidamente el cdigo para un
amplia variedad de aplicaciones. proyecto embebido sin necesidad
de conocer que tipo de interfaz se
30 Recicla tu Fuente de utilizar. Este herramienta ayuda a
DesignSpark Alimentacin ATX los principiantes y a los expertos.
Esta placa adaptadora de ATX 54 Disea tu propio integrado (5)
22 Da 1 Hazlo tal como para banco de trabajo convierte Aunque las aplicaciones FPGA se
quieres cualquier fuente de alimentacin pueden disear empleando diagramas
Empezando con DesignSpark PCB ATX de ordenador en una fuente esquemticos con smbolos lgicos,
y configurndolo a tu gusto. Este adecuada para alimentar tus en la prctica se hace habitualmente
tutorial te muestra cmo configurar prototipos y cualquier otro uso. con un lenguaje de descripcin de
tus preferencias personales en hardware. Una ventaja de esta
esta ltima versin del software de 34 Arduino en marcha (6): Desde aproximacin es que las funciones
diseo de PCB. la Electrnica a la Carpintera son a menudo ms fciles de
Una experiencia nica en la que expresar en algoritmos que en
25 Los Bigotes del Gato veremos como la electrnica esquemas. En consecuencia, en esta
El Diodo de Cristal FRIHO D.R.P. de se puede aplicar tambin a la entrega te guiamos en el proceso de
nuevo en uso. artesana tradicional. programacin de una aplicacin FPGA.

4 | junio 2013 | www.elektor-magazine.es


Volumen 34 - n 396 Junio 2013

Magazine

64 De BASIC a Python (2) 28 Duelo de Medidores LCR 40 El Triunfo de la Robtica


En esta segunda entrega Una rpida comparacin entre el Educativa
trabajamos en el trazado grfico Medidor LCR de 500 ppm de Elektor y Lo que pudimos ver durante la
y la sntesis de Fourier. Y sin otros dos dispositivos de medida LCR. Semana de la Robtica 2013 en la
demasiado esfuerzo creamos un Universidad de Alcal de Henares.
interfaz grfico de usuario. 74 Retrnica. Konrad Zuse: del
Industria Z1 al Z4, y ms all
72 Localizador de Modelos Desde los primeros das de las
Perdidos matemticas y el pensamiento lgico,
Construye este localizador por 8 Noticias & Nuevos Productos la gente ha tratado de encontrar
radio deteccin y nunca ms Una seleccin de noticias recibidas maneras de simplificar el trabajo
perders tu avin de radio control. de la industria electrnica, repetitivo involucrado. Este artculo
Simplemente enciende el receptor laboratorios y organizaciones. da un vistazo a las impresionantes
y apunta directamente para contribuciones al desarrollo del
encontrar el avin accidentado. computador que hizo Konrad Zuse.
Tech the Future Editor de la serie: Jan Buiting.

81 Hexadoku
Labs 51 Robots Sanitarios El rompecabezas mensual de Elektor
Un encuentro con Alice, un robot con un toque de electrnica.
26 Mantn los terminales pensado para la asistencia sanitaria, 86 Prximo mes en Elektor
flotantes en el laboratorio del proyecto Un vistazo a los artculos previstos
Cosas a tener en cuenta al Services of Electro-mechanical Care para ser publicados en la prxima
programar la placa FPGA de Elektor. Agencies (SELEMCA). edicin de Elektor.

www.elektor-magazine.es | junio 2013 | 5


Comunidad

Volumen 34, Nmero 396, Junio 2013


Depsito Legal: GU.3-1980 31/12/2006 Cuestin de Placas
ISSN 0211-397X
De acuerdo a los principales intereses de
Editor:
Elektor International Media Spain, s.l.
nuestros lectores, el diseo y produccin
Jerez de los Caballeros, 2 de PCB ocupa un puesto bastante alto. Las
28042 Madrid, Espaa placas de Elektor son famosas en todo el
Telfono: +34 91 101 9395
Fax: +34 91 101 9396 mundo no solo por su cualidad, sino tam-
Internet: www.elektor.es bin por su consistente apariencia. Cmo
surgi esto?
Elektor se publica 10 veces al ao con edicin doble para Enero/
Febrero y Julio/Agosto. Aqu en Elektor, el cambio del diseo manual
del arte final utilizando cinta de enmascarar
Suscripciones:
y tcnicas de reproduccin fotogrfica a
Elektor International Media Spain, s.l.
Apartado de Correos 62011 un proceso hecho al 100 % sobre un PC fue
28042 Madrid, Espaa gradual, y tuvo lugar en los primeros aos
Telfono. +34 91 101 9395
Internet: www.elektor.es/miembros
90. La utilizacin del PC para dibujar un
Email: [email protected] esquema y despus ejecutar un programa
de diseo de PCB no fue forzada o incuso
Oficinas Centrales:
Elektor International Media b.v.
sugerida por los editores en ese momento. En aquel entonces, algunos de los ms jvenes
P.O. Box 11 NL-6114-ZG Susteren diseadores del laboratorio se lanzaron audazmente a descubrir las ventajas del trazado
The Netherlands. con PB, suministrando eventualmente archivos en lugar de dibujos a sus compaeros del
Telfono: +31 (0)46 4389444,
Fax: (+31) 46 4370161 departamento de diseo de PCB. Otros continuaron pegados al lpiz, al papel y la goma
de borrar con resultados igualmente buenos particularmente en RF y diseos crticos
Publicidad:
con el espacio. No importa cmo se llegara el diseo final, Elektor no produca nunca sus
Elektor International Media Spain, s.l.
Apartado de Correos 62011 placas en masa realmente esto era siempre cosa de los fabricantes de PCB. Nosotros,
28042 Madrid, Espaa sin embargo, nos encargamos de almacenar y empaquetar lo que ha debido ascender a
Telfono. +34 91 101 9395
una cantidad de cientos de miles de estas placas azules y verdes. Adems, a da de hoy los
Fax: +34 91 101 9396
Internet: www.elektor.es Laboratorios de Elektor tienen sus propios recursos para grabar y taladrar sus propias pla-
Email: [email protected] cas. El equipo se utiliza para hacer prototipos y piezas nicas de cualquier placa, de simple
Tarifas y condiciones de publicidad disponibles
o doble cara, de montaje convencional o SMD.
bajo peticin.
An recuerdo la excitacin en el laboratorio y las oficinas editoriales cuando llegaba
Derechos de autor un paquete conteniendo unas 500 placas de algn diseo publicado recientemente. Al
Los circuitos descritos en esta revista son exclusivamente para uso
domstico. Los derechos de autor de todos los grficos, fotografas,
final, el orgulloso diseador era capaz de ver el fruto de sus esfuerzos en el diseo. Ms
diseos de circuitos impresos, circuitos integrados programados, importante, sin embargo, era que lectores de todo el mundo eran capaces de montar sus
discos, CD-ROMs, portadores de software y los textos de los artculos circuitos en placas magnficamente fabricadas con acabados profesionales!
publicados en nuestros libros y revistas (que no sean anuncios de
terceros) estn registrados por Elektor International Media BV y
Hoy en da, no solo tenemos la satisfaccin de publicar estos estupendos diseos y obtener
no pueden ser reproducidos o difundidos de ninguna forma ni por vuestra respuesta, adems la de sostener en la mano una placa de circuito impreso per-
ningn medio, incluidas fotocopias, escaneos o grabaciones, parcial o
fectamente mecanizada y con un nmero de produccin de Elektor impreso para ayudar a
totalmente sin la previa autorizacin escrita del Editor. Tambin ser
preciso disponer del citado permiso antes de almacenar cualquier su identificacin.
parte de esta publicacin en sistemas de recuperacin de cualquier
naturaleza. Los circuitos, dispositivos, componentes, etc., descritos Eduardo Corral, Editor
en esta revista pueden estar protegidos bajo patente. El Editor no
acepta responsabilidad alguna en ausencia de identificacin de la
citada patente(s) u otra proteccin. La presentacin de diseos
o artculos implica que el Editor est autorizado a modificar los
textos y los diseos presentados y a utilizar los contenidos en otras
El Equipo
publicaciones y actividades de Elektor International Media. El Editor
Editor: Eduardo Corral ([email protected])
no garantiza la devolucin del material a l enviado.
Redaccin Internacional: Harry Baggen, Thijs Beckers, Jan Buiting, Wisse
Renuncia
Los precios y descripciones de los productos relacionados con Hettinga, Denis Meyer, Jens Nickel, Clemens Valens
la publicacin estn sujetos a modificacin. Excluidos errores y
omisiones. Las opiniones expresadas a lo largo de los distintos Equipo de diseo: Thijs Beckers, Ton Giesberts, Luc Lemmens,
artculos, as como el contenido de los mismos, son responsabilidad Raymond Vermeulen, Jan Visser
exclusiva de sus autores. As mismo, el contenido de los mensajes
publicitarios es responsabilidad de los anunciantes. Diseo grfico y preimpresin: Giel Dols, David Mrquez, Mart Schroijen
Los precios y descripciones de los elementos relacionados con la
publicacin estn sujetos a cambios. Estn excluidos los errores Director online: Danille Mertens
u omisiones.
Director de marca: Wisse Hettinga

Elektor International Media b.v. 2012


Director general: Don Akkermans

6 | junio 2013 | www.elektor-magazine.es


Spain
Eduardo Corral Nuestras redes
+34 91 101 93 95
[email protected]

USA
Hugo Vanhaecke
+1 860-875-2199
[email protected]

Germany
Ferdinand te Walvaart
+31 46 4389417
[email protected]

France
Denis Meyer
+31 46 4389435
[email protected]

Netherlands
Harry Baggen
+31 46 4389429
[email protected]

United Kingdom
Wisse Hettinga
+31 (0)46 4389428
[email protected] Te conectamos con
Italy
Maurizio del Corso
+39 2.66504755
[email protected]

Sweden
Wisse Hettinga
+31 46 4389428
[email protected]

Brazil
Joo Martins
+55 11 4195 0363
[email protected]

Portugal
Joo Martins
+351 21413-1600
[email protected]

India
Sunil D. Malekar
+91 9833168815
Empresas Colaboradoras
[email protected]
AudioXpress Eurocircuits
Russia www.audioamateur.com . . . . . . . 2 www.elektorpcbservice.com . . . 88
Nataliya Melnikova
+7 (965) 395 33 36
[email protected] Circuit Cellar Soclutions
www.circuitcellar.com . . . . . . . . . 3 www.soclutions.com . . . . . . . . . . 9
Turkey
Zeynep Kksal
+90 532 277 48 26
[email protected]

South Africa
Johan Dijk
+27 78 2330 694 / +31 6 109 31 926
[email protected]

China No eres patrocinador an?


Cees Baay
+86 21 6445 2811
Ponte en contacto con nosotros en [email protected] (+34 911019395)
[email protected] para reservar tu propio espacio en la prxima edicin de nuestra revista

www.elektor-magazine.es | junio 2013 | 7


Industria

Simplificacin de los sistemas de visin artificial con un


capturador de fotogramas alimentado por Ethernet
National Instruments ha nal al sistema de visin artificial y a
anunciado hoy los fra- sus operadores. Tambin puede inte-
me grabbers GigE Vision ractuar con las cmaras de bajo coste
de dos puertos NI PCIe- PoE ms recientes, as como con las
8236 y NI PCIe-8237R cmaras de visin artificial que no son
que ofrecen tecnologa PoE GigE Vision y tienen longitudes del
PoE. El NI PCIe-8237R cable de hasta 100 m.
ofrece E/S a travs de NI Con estos nuevos frame grabbers, se
LabVIEW FPGA, inclu- puede alimentar a la cmara, realizar
yendo entradas y salidas disparos y adquirir imgenes desde un
digitales con aislamiento nico cable Ethernet, dijo James Smith,
ptico, as como lneas director del marketing industrial embe-
bidireccionales TTL para bido de National Instruments. Los in-
implementar contadores genieros estn constantemente siendo
personalizados, seales desafiados a hacer ms con menos, por
PWM y entradas de encoders. Tambin del bus de sincronizacin RTSI. Ambos lo que esta es una gran ventaja para
ofrece opciones de trigger avanzadas y frame grabbers son totalmente com- cualquier persona que vaya a crear un
opciones de sincronizacin, tales como patibles con las especificaciones de sistema de visin artificial.
disparos de bajo jitter y baja latencia aislamiento del estndar PoE con el fin
basados en FPGA, as como soporte de proporcionar una seguridad adicio- www.ni.com

Antena electromagntica 3D-coil para sistemas de apertura


KES de vehculos
El modelo 3DC09AOI se caracteriza teral para permitir procesos de recono-
por diseo un compacto y robusto que cimiento automtico de soldadura de
supera los estrictos requerimientos de visin ptica automtica (AOI).
la industria de la automocin. Los pads tienen terminacin en oro
para garantizar una conectividad se-
PREMO, empresa representada en Es- gura y fiable entre el componente y
paa por Anatronic, S.A., ha desarro- la circuitera de la PCB y, en combina-
llado una nueva antena electromag- cin con los meniscos laterales forma-
ntica 3D-coil para aplicaciones KES dos durante el proceso de soldadura, El transponder 3DC09AOI, que tiene
(Keyless Entry System) en sistemas de contribuyen a aumentar el contacto un ndice de proteccin IP685 y ope-
apertura de vehculos. mecnico ms de un 25 por ciento en ra en el rango de temperatura de -40
El nuevo modelo 3DC09AOI, con for- comparacin con productos similares a +85 C, tambin se caracteriza por
mato de bajo perfil (10,5 x 9,5 x 3 del mercado. ofrecer un valor estndar de L=14 mH
mm), se compone de tres devanados La nueva antena electromagntica se con sensibilidad superior a 9 mVpp/
ortogonales, cada uno de ellos en los distingue por elevada robustez, ya que App/m @20 kHz y mantener un factor
tres ejes del espacio, y cumple con el los bobinados estn totalmente pro- de calidad Q de 6, pudiendo fabricarse
estndar AEC-Q-200 para responder a tegidos por una matriz polimrica al con valores electromagnticos diferen-
los estrictos requerimientos de la in- vaco de alta estabilidad (dilataciones tes en cada uno de los ejes en funcin
dustria de la automocin. por debajo de 200 ppm) y notable re- de las necesidades del cliente.
Esta antena isotrpica de montaje su- sistencia trmica (soporta doble reflow
perficial (SMD) ofrece metalizacin la- de +270 C). www.anatronic.com

8 | junio 2013 | www.elektor-magazine.es


Noticias

Microchip ampla su catlogo para LIN 2.1/ SAE J2602-2


con un nuevo transceptor, chips base del sistema
y dispositivos System-in-Package
Microchip anuncia la ampliacin de su http://www.microchip.com/get/STR3.
catlogo para LIN con el transceptor Entre las herramientas para LIN ya dispo-
conforme a LIN 2.1 y SAE J2602-2 y el nibles se encuentran el analizador serie
modelo de bajo consumo MCP2003A, LIN (APGDT001); la tarjeta de demostra-
los chips base de sistema (System Basis cin PICDEM CAN-LIN 3 (DM163015);
Chips, SBC) LIN MCP2021A, MCP2022A, la tarjeta hija ECAN/LIN PICtail Plus
MCP2025 y MCP2050, y el dispositivo (AC164130); y la tarjeta de demostra-
System in Package (SiP) PIC16F1829LIN. cin PICkit 28-Pin LIN (DM164130-3).
Estos dispositivos incluyen opciones de Entre los diseos de referencia disponi-
alta integracin como un regulador de bles estn el elevalunas elctrico antipe-
tensin, temporizador supervisor de ven- llizcos (APGRD002) y el mdulo de ilumi-
tana, salida de supervisin de batera y un microcontrolador. nacin ambiental del habitculo con LIN (APG000027).
Adems se caracterizan por su alta robustez, incluyendo unos Los seis dispositivos nuevos de Microchip para LIN ya se en-
niveles de compatibilidad electromagntica (EMC) y descarga cuentran disponibles para muestreo y produccin en volumen.
electrosttica (ESD) superiores a 15 kV en el bus LIN y las www.microchip.com
patillas de tensin de la batera, cumpliendo o superando
as los requisitos de los fabricantes de automviles como Publicidad

la Versin 1.3 de los requisitos de hardware de fabricantes


OEM para interfaces LIN, CAN y FlexRay en aplicaciones de
automviles (OEM Hardware Requirements for LIN, CAN
and FlexRay Interfaces in Automotive Applications). El re-
gulador de tensin integrado en algunos de los dispositivos
tambin ha sido especialmente diseado para funcionar en
el entorno del automvil y puede resistir el estado inverso
de la batera, transitorios de volcado de carga de +43V y
arranque con doble batera. Esta robustez permite estable-
cer una comunicacin fiable en entornos adversos mientras
que el elevado nivel de integracin disminuye el coste y la
complejidad al tiempo que ocupa menos espacio.
El nuevo SiP PIC16F1829LIN incorpora un microcontrolador
Flash de 8 bit, un regulador de tensin y un transceptor
LIN, as como perifricos como convertidor A/D de 10 bit,
comparadores y temporizadores; todo ello en un encapsu-
lado SSOP de 20 patillas. Este dispositivo se suma a la am-
plia gama de microcontroladores PIC eXtreme Low Power
(XLP) de 8 y 16 bit de Microchip que integran perifricos
USART avanzados. El perifrico USART avanzado facilita la
conectividad a los transceptores y los SBC en la capa fsica
de LIN. Tanto si se trata de SiP como de soluciones aut-
nomas, las corrientes en modo dormido de los microcon-
troladores XLP de Microchip, a partir de 9 nA, hacen que
resulten muy apropiados para aplicaciones alimentadas
con batera y permiten reducir el consumo en los vehculos.
Microchip suministra una amplia gama de herramientas,
software, diseos de referencia e informacin como sopor-
te para el desarrollo con este catlogo para LIN, al que
se puede acceder en lnea desde su LIN Design Centre en

www.elektor-magazine.es | junio 2013 | 9


Industria

Mdulo embebido XBee Wi-Fi para soluciones


M2M basadas en la nube
Comunicaciones 802.11b/g/n de mato XBee y ahora incluye Native vos, como termostatos o bsculas,
ultra bajo consumo en monito- iDigi Device Cloud (para tareas de que normalmente carecen de inter-
rizacin industrial, rastreo adquisicin de datos y gestin face de pantalla LCD o teclado des-
de bienes y mercan- de dispositivo), interface Soft de un ordenador porttil (laptop) o
cas, automatizacin Access Point (AP) y Wi- Smartphone.
en el hogar y control Fi Protected Setup La funcin WPS se convierte en otra
de depsitos. (WPS). manera de incorporar mdulos Xbee
DIODE, a travs La conectivi- Wi-Fi con ratios over-the-air de hasta
de su Divisin de dad iDigi De- 72 Mbps a una red 802.11b/g/n (Wi-
Electrnica, anun- vice Cloud dota Fi) con tan slo apretar un botn.
cia la disponibilidad de acceso a los El mdulo tambin posee UART e inter-
de la ltima versin datos del dispositivo face SPI para optimizar la integracin
del mdulo embebido para agilizar la creacin con microcontroladores embebidos y
XBee Wi-Fi de Digi Interna- o la integracin de la apli- se encuentra disponible en versiones
tional con el objetivo de acelerar cacin y permite tanto confi- through-hole y de montaje en super-
el despliegue de soluciones M2M ba- guracin remota como descarga ficie (SMT) para incrementar la flexibi-
sadas en la nube (cloud) y propor- de firmware. lidad en el proceso de diseo y reducir
cionar capacidades IP-to-device y Gracias al interface Soft AP, el m- el coste de desarrollo y el tiempo de
device-to-cloud. dulo puede actuar como un punto llegada al mercado.
Este mdulo de bajo consumo ofrece de acceso. As, los clientes se pue-
serial-to-Wi-Fi networking en el for- den conectar a diversos dispositi- www.diode.es

STMicroelectronics ampla su lnea de IC SoC set-top box


Los nuevos productos proporcionan un sin comprometer las presta- servicios conectados a televisin
excelente balance de CPU, calidad de ciones de vdeo. (Internet Protocol TV), ca-
vdeo, seguridad y reduccin de mate- El ncleo de esta familia nales de informacin
riales. de IC SoC STB de ST se y vdeo Over-The-Top
encuentra en un motor (OTT), juegos, catch-
STMicroelectronics, uno de los mayo- de procesamiento me- up TV y redes sociales.
res fabricantes de productos semicon- jorado con funciones Por lo tanto, los nuevos
ductores, ha incorporado nuevos dis- on-chip para posibili- dispositivos complemen-
positivos a su catlogo de set-top box tar un diseo de producto tan la lnea de SoC para
(STB) system-on-chip (SoC) IC para final ms eficiente. Esto permite aplicaciones de set-top box
equipos de televisin terrestre, cable, que los operadores utilicen memoria IP genrico (STiH207), cable /
IP, Over-The-Top y satlite. de menor coste y cumplan los requeri- terrestre HD (STiH273) y satlite HD
El modelo STiH253, que ampla la ofer- mientos de bajo consumo. (STiH237 y STiH239). La compatibili-
ta de ST de soluciones compatibles con Los nuevos STB SoC respaldan un am- dad en pin y software de toda la fami-
grabadores de vdeo digital (DVR), es plio rango de cdec multimedia y bro- lia tambin contribuye a optimizar los
un IC de emisin de vdeo digital que adcast HD, formatos hbridos e IP y es- diseos de OEM.
integra un demodulador DVB-T2 para tndares de seguridad y proteccin de Las primeras muestra de los IC SoC
STB terrestres. contenido con stacks de middleware STiH253 y STiH271EL se suministran
La otra novedad es el STiH271EL, es- de compaas lderes de la industria. en encapsulados BGA de 23 x 23 y 27
pecialmente indicado para aquellas Esta gama extiende el acceso a man- x 27 mm.
aplicaciones sensibles al precio que re- dos HD, PVR, clientes Internet Proto-
quieren funcionalidad zapper (mando) col (IP) y dual-HD boxes que soporten www.st.com

10 | junio 2013 | www.elektor-magazine.es


Noticias

Microchip integra amplificadores operacionales en


microcontroladores PIC de 8 bit de bajo coste
fotosensores y mdulos de interface de sensor para
el automvil.
El microcontrolador PIC16F527 se suministra en
encapsulados PDIP, SOIC, SSOP y QFN de 20 pati-
llas y ya se encuentra disponible para su muestreo
y produccin en volumen. El PIC16F570 se sumi-
nistra en encapsulados PDIP, SOIC, SSOP y QFN
de 28 patillas y est previsto que se encuentre
disponible en junio para muestras y produccin en
volumen.

www.ni.com

Publicidad
Microchip anuncia dos nuevos microcontroladores PIC
de 8 bit, el PIC16F527 y el PIC16F570, que combinan
el sencillo manejo de un microcontrolador PIC y peri-
fricos analgicos de bajo coste para crear una familia
Retronics
bien integrada y econmica que resulta apropiada para 80 cuentos de la electrnica del pasado
una amplia variedad de aplicaciones. Estos microcontro- Este libro (en ingls) es una recopilacin de 80 entregas de Retrnica publi-
cadas entre 2004 y 2012. Las historias abarcan equipos de prueba clsicos,
ladores, que integran un mdulo doble de amplificador
ordenadores prehistricos, componentes ya olvidados, los proyecto de
operacional integrado, un convertidor A/D de 8 bit y dos Elektor que alcanzaron un gran xito, todo ello con el propsito de hacer
comparadores, son ideales para sistemas que exigen que los ingenieros sonran, se sienten, se opongan, babeen o experimenten
el tufillo de la nostalgia.
acondicionamiento de seal y amplificacin para inter-
pretar las entradas analgicas. 193 pginas ISBN 978-1-907920-18-9 29,95
NUEVO
El PIC16F527 y el PIC16F570 que emplean una arqui-
tectura de 8 bit de pequeo tamao y alta eficiencia,
aaden diversas funciones que potencian el sencillo
manejo y la robustez del sistema. Esta capacidad de
interrupcin por hardware completamente nueva ofre-
ce a los diseadores la libertad de implementar ms
funciones complejas sin aadir software, mientras que
la funcin BOR (Brown-Out Reset) puede detectar fa-
llos en la alimentacin del sistema y reiniciar de forma
segura el microcontrolador con el fin de evitar que la
memoria se vea afectada. Los dos microcontroladores
tambin incorporan memoria Flash de programa con
-10% par
lectura/escritura automtica, que permite una funcio- a
nalidad de EEPROM de datos con un uso intensivo. Es- miembros
tas caractersticas principales, junto con la integracin
de perifricos analgicos de uso habitual, hacen que el GREEN
PIC16F527 y el PIC16F570 se adapten bien a un gran
nmero de productos sensores de bajo coste, como de- Ms informacon y pedidos en www.elektor.es/retronics
tectores de humo, detectores de monxido de carbono,

www.elektor-magazine.es | junio 2013 | 11


Proyectos

Tarjeta Controladora Wi-Fi


Controla tiras de LEDs RGB, motores,
rels y artilugios, pero sin hilos

Con los mdulos Wi-Fi


ya generalizados, es el
momento de empezar
a aadir aplicaciones
a nuestra red Wi-Fi
domstica. Controlar
nuestra casa desde el
telfono mvil nunca ha
sido tan fcil gracias a
la placa controladora
Wi-Fi universal que
presentamos aqu.
Aunque la vamos a
usar para controlar
una tira de LEDs
RGB, podemos
usar la placa
para un amplia
abanico de
aplicaciones
diferentes.

Clemens Valens Llev su tiempo completar el proyecto con el que yo pensaba que una conexin sin hilos sera una
(Elektor.Labs) nos vamos a encontrar. Todo comenz hace un solucin ms llamativa. Adems, tambin bus-
ao con un sistema de Automatizacin de Doms- caba una aplicacin basada en un navegador web,
tica [1] que, originalmente, fue desarrollado por compatible con la mayora de los navegadores y
dos aprendices de los Laboratorios de Elektor, que usase deslizadores para controlar el color de
Koen y Jesper. Una parte de su sistema era una la tira de LEDs. As, Koen tena la intencin de
tira de LEDs RGB controlada a travs de Ether- desarrollar todo el conjunto pero, por desgracia,
net, es decir, por cable. La idea era buena, pero su perodo de aprendizaje finaliz antes de que

12 | junio 2013 | www.elektor-magazine.es


tarjeta controladora wi-fi

pudiese acabar el proyecto y volvi de nuevo a


la universidad. Antes de dejar Elektor, Koen me
explic los problemas con los que estaba tra-
bajando, alguno de los cuales an necesitaba
que fuese encauzado correctamente. As pues,
me toc a m finalizar el proyecto, qu pas los
siguientes meses en la mesa de mi despacho
cogiendo polvo! Cuando, finalmente, encontr
el tiempo y las ganas de ponerme con ello, me
cost recordar la mayora de las cosas que Koen
me haba dicho y, bsicamente, tuve que comen-
zar desde el principio.
El circuito de Koen era, principalmente, un micro-
controlador (MCU) ATmega328 AVR, que contro-
laba tres MOSFETs, con seales PWM, para regular
la intensidad de los tres colores. Para la conexin
Wi-Fi, haba usado un mdulo WizFi220 de la
casa WIZnet, que se comunicaba con la MCU a
travs de un sencillo enlace serie. Como yo tena
shield de Arduino que contena este mdulo Wi-Fi
[2] y como una placa Arduino Uno est basada
en un ATmega328, decid construir mi prototipo
como una aplicacin Arduino. Todo lo que nece-
sitaba era un segundo shield con los MOSFETs
sobre ella para poder controlar la tira de LEDs.
Todo esto lo puse rpidamente sobre una placa
de prototipos (ver Figura 1). Mirando en el cdigo de la pgina web de Koen, Figura 1.
As pues, lleg la hora de programar. Analizar record de repente el problema que l me haba Prototipo basado en una
los comandos HTTP recibidos del mdulo Wi-Fi mencionado antes de dejarnos: por alguna razn, placa Arduino Uno, un
y devolver las respuestas requeridas, no fue el mdulo Wi-Fi cerraba la conexin despus de mdulo de extensin Wi-Fi
de Elektor (120306) y un
algo demasiado complicado, pero cuando quise recibir un comando, impidiendo que el navegador
trozo de una placa para
cambiar la pgina web me encontr con los pro- enviase ms comandos. En consecuencia, slo
prototipos.
blemas de Koen. Lo primero de todo eran los podemos cambiar el color de la tira de LEDs una
deslizadores que controlan el color de la tira de vez, a menos que reinicisemos el mdulo. Koen
LEDs desde el interior de un navegador que ale- haba encontrado un pequeo truco usando un
gremente haba seleccionado. Entonces aprend JavaScript complicado que haca que el navega-
que no hay deslizadores en el HTML estndar. dor cambie sus puertos de comunicacin antes
Buscando en Internet, descubr que HTML 5 de enviar un comando. Esta alternativa tambin
podra soportar deslizadores, pero slo unos implicaba usar el comando HTTP GET para enviar
pocos navegadores lo soportan, por lo que HTML el dato del color, cuando lo que realmente sig-
5 no era una opcin. Koen haba resuelto este nifica este comando es que obtiene datos de un
tema usando las libreras JQuery y JQuery-UI servidor (quin lo habra adivinado?). Para enviar
[3] de JavaScript. Dichas libreras son libreras datos, lo lgico es usar el comando POST (o PUT).
online para pginas web que acostumbran a Sin embargo, una solucin mucho ms elegante
implementar todo tipo de controles ingeniosos es el de aadir la lnea Connection: close
y otras funciones. Algunos inconvenientes de a la respuesta del servidor ante un comando
estas libreras es que son online, lo que significa GET. Ahora ya poda borrar el script alternativo
que necesitamos una conexin de Internet para haciendo que en la pgina fuese mucho ms inte-
usarlas, adems de que son demasiado gran- ligente, a la vez que podra cambiar y utilizar el
des para colocarlas en el interior de la memo- comando POST, que, en mi opinin, era mucho
ria de programa del micro. Como no tena otra ms apropiado. Esta es la apariencia del comando
solucin, decid aceptar el uso de las libreras POST cuando es enviado por el navegador Firefox
JavaScript online. (el dato del color est al final):

www.elektor-magazine.es | junio 2013 | 13


Proyectos

POST / HTTP/1.1 compatible Arduino y con un programa que haba


Host: 192.168.2.15 sido compilado en un IDE Arduino. Si queris
User-Agent: Mozilla/5.0 (Windows NT 6.1; ms detalles sobre esto, por favor visitad la refe-
WOW64; rv:17.0) Gecko/17.0 Firefox/17.0 rencia [4]. Podra haberme detenido aqu, pero
Accept: */* quise mejorar el circuito ya que no me pare-
Accept-Language: en-US,en;q=0.5 ca correcto tener una pila de tres placas para
Accept-Encoding: gzip, deflate un circuito tan sencillo. Buscando un micro con
DNT: 1 menos terminales me d cuenta de que no poda
Connection: keep-alive mantenerme sobre la plataforma AVR de Atmel
Content-Type: application/x-www-form-ur- ya que los componentes que podran ser ade-
lencoded; charset=UTF-8 cuados eran difciles de conseguir. Sin embargo,
Content-Length: 23 result que tena por la mesa un par de micros
Origin: null PIC18F14K50 de Microchip. Se trata de una MCU
Pragma: no-cache de 20 terminales con USB, algo que era intere-
Cache-Control: no-cache sante ya que esto me poda servir para poder
hacer una configuracin cmoda, basada en PC,
red=79&green=10&blue=20 del mdulo Wi-Fi (ver tambin [2]). Otra pres-
tacin interesante es el programa cargador de
El siguiente paso fue el conseguir que la pgina arranque (bootloader) por USB que Microchip
web tuviese una apariencia bonita en los dispo- proporciona (gratuitamente), lo que nos permite
sitivos mviles. En mi smartphone los desliza- un desarrollo fcil del firmware sin necesidad
dores que se mostraban eran muy pequeos, de un programador especial. Por desgracia, este
haciendo imposible moverlos con algo de preci- MCU slo dispone de un canal PWM, por lo que
sin. La solucin fue la de aadir la meta-eti- he tenido que implementar el control del color
queta (meta tag) viewport en la cabecera de PWM de tres canales por medio de programa.
la pgina web, de esta manera: Exportar el cdigo AVR a un PIC debera haber
sido un ejercicio sencillo y directo pero, real-
<meta name=viewport content=width=de- mente, no lo fue. Por supuesto, tena cosas com-
vice-width, user-scalable=no /> plicadas que hacer, ya que quera incluir las fun-
cionalidades USB y el cargador de arranque, pero
Con esta lnea aadida al cdigo HTML de la Microchip debera haberlo hecho ms sencillo.
pgina web, ahora la pantalla de mi telfono Estaba utilizando mi super compilador XC8, con
mvil Android se rellena adecuadamente, a la todas las prestaciones posibles que Microchip
vez que tiene la misma buena apariencia en un dice que tiene, pero me fue imposible conse-
PC. (Sobre un iPad solo ocupaba una cuarta parte guir que el cdigo USB se pudiese compilar, sin
de la pantalla y no he tratado de mejorar esto). hablar del trabajo asociado. Al final, consegu
Al mismo tiempo, tambin he optimizado el el cdigo buscado en las Libreras de Aplicacin
tamao del resto del programa y, ahora, mi obje- de Microchip v2012-10-15 y, slo despus de
tivo era conseguir que todo cupiese en la menor muchas horas de bsquedas infructuosas con
cantidad de memoria posible. Una mejora impor- las configuraciones y las pragmas del compila-
tante vino en la compresin de la pgina web. dor, encontr una informacin en algn lugar de
Podemos hacer esto con gzip y, a continuacin, Internet donde deca que el compilador XC8 no
aadir la lnea Content-encoding: gzip a la era compatible (an) con las Libreras de Aplica-
respuesta del servidor. La mayora de los nave- cin de Microchip. No me digas! Necesitaba otro
gadores (si no todos) tienen que saber cmo compilador. De nuevo Internet vino a mi rescate
gestionar las pginas web zipped (comprimi- y en 15 minutos ya tena una versin oficial, con
das). La desventaja de hacer esto es que ahora todas sus funcionalidades, del compilador C18 y
es ms complicado cambiar la pgina web. Sin trabajando sin esa cantidad de mensajes. Otros
embargo, slo hacemos esto cuando su diseo 15 minutos ms y ya tena el ejemplo del puerto
est acabado. serie USB cargado y ejecutndose.
Ahora era el momento de aadir mi cdigo Wi-Fi
En este punto ya tena un prototipo que fun- que iba bastante bien excepto en el volcado de
cionaba correctamente, basado en un hardware todos los datos en la memoria RAM segmentada

14 | junio 2013 | www.elektor-magazine.es


tarjeta controladora wi-fi

del PIC y hacer un intento. Y, por supuesto, pues, volv sobre la tabla de depuracin donde
funcion diris vosotros. Pues no, no es as. descubr que la interrupcin USB pareca mante-
Realmente slo funcionaba un poco. Poda cam- ner activa la interrupcin del puerto serie, lo que
biar el color de la tira de LEDs una o dos veces, provocaba la prdida de datos. A estas alturas
pero enseguida la comunicacin Wi-Fi se dete- ya estaba bastante harto de todo esto y decid
na. Cuando controlaba la tira de LEDs sobre el simplemente deshabilitar el puerto USB en el
puerto serie USB funcionaba correctamente. As modo Wi-Fi en lugar de ir al fondo del problema.

D4
IC3 +5V IC2 +3V3
1N5819 LM2575T-5.0/NOPB T P2 MCP1825S-3302E/AB TP3
Vin 1
FB
4 +5V +3V3
5 2
L1 +5V
OFF
330u 1A
TP4 C9 D3 C8 C4 C5 C6 C7
Vin 3
10u 10V 100n 10u 10V 100n
100u 50V 330u 16V
GND TP1
1N5819

JP1 ICSP
+5V D1
1N5819
1
2
3
4
5
6
1
2
R1
IC1 JP3
K1
1 20 1
1k VDD VSS VBUS
2 19 2
RA5/OSC1 D+ D-
X1 3 18 3
RA4/OSC2 D- D+
4 17 C3 4
RA3/MCLR VUSB GND
S1 5 16 100n
C2 C1 RC5 RC0
3x 1N5819 12MHz 6
RC4 RC1
15
USB-B
7 14
D11 D10 D9 22p 22p RC3 RC2
8 13 JP2
RC6 RB4 1
K2 9 12
RC7 RB5/RX 2
R2 10 11
1 T1 RB7/TX RB6 3
2 4
3
T2 1k
PIC18F14K50-I/P 5
4 Vin
5 IRL540
D5 TXD RXD EXPANSION
T3 TP6 TP5
6

IRL540
K3
BARREL JACK
IRL540
+3V3

R6 R3 R4 R5
GPIO29
32

33

34
9

TP8
1
VBAT VIN_3V3 EN_1V8 VDDIO
EXT ANT
47k 1k 1k 1k
2 47 D6
JTAG_TCK GPIO28
3 MOD1 46 LINK
JTAG_TDO GPIO29
4
JTAG_TDI WizFi220 GPIO30
45 D7
5 44 OK D8
JTAG_TMS GPIO31
6 43 RXD
JTAG_NTRST UART0_CTS/GPIO24 R8
7 42
ALARM1 UART0_RX/GPIO0
8
RTC_OUT1 UART0_RTS/GPIO25
41 BZX79-C3V0 D2 1k
10 40
DC_DC_CNTL UART0_TX/GPIO1
11 39
12
ALARM2 UART1_TX/GPIO2
38 GPIO27 Figura 2.
ADC1 UART1_RX/GPIO3 TP7
13
ADC2 UART1_RTS/GPIO27
37 Esquema elctrico del
14 36
MSPI_MISO/GPIO6 UART1_CTS/GPIO26
15 35 circuito de la Placa
MSPI_MOSI/GPIO7 EXT_RESETN +3V3
16
MSPI_CLK/GPIO5 SSPI_MOSI
30
Controladora Wi-Fi. Os
17 29
VOUT_1V8 SSPI_CS
19
MSPI_CS0/GPIO4 SSPI_CLK
28 R7 habis dado cuenta de que
20 27
21
MSPI_CS1/GPIO13 SSPI_MISO
26
la gente siempre conecta
I2C_CLK/GPIO9 I2C_DATA/GPIO8 47k
22
PWM0/GPIO10 GPIO21/CLK_11MHZ
25 el jack de alimentacin al
23
GPIO19/CLK_44MHZ GPIO20/CLK_22MHZ
24 T4
R9 revs? El terminal central se
GND GND GND GND
10k supone que es la conexin
1

18

31

48

BC547 120718 - 11 de masa. He sido algo


retorcido aqu debido a las
consideraciones de diseo
de la placa.

www.elektor-magazine.es | junio 2013 | 15


Proyectos

Una FlowBoard compatible con FlowStone 3 [5].


A lguna cosa que an no he conseguido
imaginar.

Para conseguir que sean posibles estas diferen-


tes aplicaciones, la placa ha sido equipada con
un regulador conmutado de manera que puede
ser alimentada con una fuente de alimentacin
continua (DC) desde 7 V a 40 V, sin llegar a
gastar demasiadas caloras. La placa tambin
puede ser alimentada desde el puerto USB,
pero debemos tener en mente que el mdulo
Wi-Fi puede llegar a consumir bastante poten-
Figura 3.
Una tpica tira de LEDs RGB cia cuando est transmitiendo. Un regulador
con un cable adaptador lineal ms grande de 3,3 V, proporciona la ali-
recuperado de una fuente de mentacin para el mdulo Wi-Fi (debido a los
alimentacin de un PC. requerimientos de corriente, no podemos usar
el regulador de 3,3 V integrado en la MCU).
(Os sugiero que hagis un intento si verdadera- El mdulo viene acompaado por tres LEDs
mente estis interesados. Por favor, informadme de estado que indican si est conectado a un
si encontris una solucin). punto de acceso o no y si hay intercambio de
datos. Como el micro est alimentado con 5 V
Construyendo todo y el mdulo Wi-Fi lo est con 3,3 V, se ha aa-
Ahora, mi segundo prototipo (basado en un PIC) dido la circuitera de conversin de nivel para
estaba funcionando como se deseaba, con los las entradas del mdulo Wi-Fi. El micro puede
elementos que quera utilizar (ver Figura 2). trabajar directamente con seales de entrada
Finalmente haba llegado el momento de disear de un nivel de 3,3 V.
una bonita placa. Como el objetivo era controlar El micro funciona con un oscilador de cristal de
una tira de LEDs, decid construirla dentro de 12 MHz para conseguir una temporizacin USB
una pequea y discreta caja. La placa estaba correcta. El pulsador conectado al terminal de
diseada de manera que la caja necesitase unos reset (reinicio), el MCLR, servir principalmente
mnimos retoques, especialmente cuando usa- para activar el modo cargador de arranque (la
mos la versin azul transparente que nos permite entrada de reinicio externa debe estar deshabili-
ver el estado de los LEDs en su interior. En este tada para que sta funcione, es decir, la bandera
caso no es necesario realizar ningn taladrado, MCLRE=OFF). Si no necesitamos el cargador de
slo tenemos que aadir algunos separadores arranque, este pulsador puede funcionar como
en su interior. botn de reset o tambin puede usarse para
Incluso con una MCU de 20 terminales, varios cualquier otra funcin.
terminales permanecen sin uso, por lo que he Los tres MOSFETs, dimensionados de manera con-
aadido alguna funcionalidad extra a la placa. servadora, proporcionan una RDS(on) de 0,077,
Esto hace que, junto con el programa cargador pueden trabajar con hasta 100 V y estn protegi-
de arranque, la placa sea una plataforma mucho dos por diodos de flyback (anti-rebote), con lo
ms verstil, la cual podremos utilizar en otras que tambin pueden trabajar con cargas induc-
aplicaciones. Puede ser usada como: tivas. Como conector de salida, he optado por un
bloque terminal para circuito impreso estndar
Un controlador Wi-Fi de (tira) LEDs RGB. de cuatro terminales, con una separacin entre
Un controlador de tres canales que conmuta terminales de 5,08 mm, pensando incluso que la
rels o controla motores por Wi-Fi o por USB mayora de las tiras de LEDs que he visto estn
(o por ambos). equipadas con un conector con separacin de ter-
Un adaptador de puerto serie a USB. minales ms pequea. Sin embargo, como no se
Un sistema de prototipos rpidos con Wi-Fi, lo estndar que son estos conectores o si estn
puerto de expansin y tres canales de conectados todos ellos de la misma manera, el
alimentacin. preferido una solucin ms flexible. As, podemos

16 | junio 2013 | www.elektor-magazine.es


tarjeta controladora wi-fi

fabricar fcilmente un cable adaptador a partir


de, por ejemplo, el cable de de alimentacin de
una disquera (ver Figura 3).
Para el conector de alimentacin podemos usar,
bien un jack de terminal central (similar al de
los PCs), o bien un bloque terminal estndar, de
dos terminales y de 5,08 mm de separacin. Un
diodo proporciona una proteccin bsica contra
inversin de polaridad.
Un conector de extensin tipo header, de 5
terminales, permite el uso de los puertos libres
del micro para propsitos personalizados. Una
fila de puntos de prueba extiende este conec-
tor en una direccin; el conector de programa-
cin serie interno (ICSP) lo ampla en la otra
direccin. Todos estos terminales dan acceso a
10 terminales del micro y a todas las tensio-
nes de alimentacin. Tambin hay disponibles
un LED, conectado a RC4, y un pulsador. Como
el programa de aplicacin puede ser cambiado
fcilmente gracias al cargador de arranque y
al interfaz USB, estas acciones convierten a la El pulsador necesita una tapa de la altura corres- Figura 4.
placa en una excelente plataforma para realizar pondiente. El modelo de 16 mm queda casi a ras La placa casi acabada,
rpidos prototipos. de la cara superior de la caja. revisin 1.0; y totalmente
Todos los componentes (excepto el mdulo Wi-Fi) Para montar la placa en la caja necesitamos ensamblada. La Rev 1.1 es
idntica excepto en algunos
son elementos estndar de taladro pasante, por recortar en la tapa superior los cuatro separa-
componentes que han sido
lo que no deben suponer ningn problema en dores que mantienen la caja unida. Una forma de
ligeramente desplazados para
el montaje de la placa. Sugiero que se monte hacer esto es con una broca larga. No debemos que quepa mejor en su caja.
primero el mdulo Wi-Fi, ya que colocarlo en la recortar mucho o los tornillos no tendrn nada
posicin correcta es algo complicado debido a de material al que atornillarse. Tambin tendre-
Figura 5.
la cantidad de conexiones que tiene. Hay que mos que separar los dos trozos de plstico que
Tres antenas de 2,4 GHz,
sealar que los reguladores de tensin deben permiten mantener la batera en su lugar. una de Winizen (superior) y
ser montados sobre su vientre (ver Figura 4 o El mdulo Wi-Fi tiene un pequeo conector para las otras dos suministradas
en la cara de soldadura de la placa). La razn una antena mejor (ver Figura 5). Si lo utilizas, amablemente por las chicas
de ello es que, si no usamos la caja que se pro- simplemete djalo colgando. de 2J (www.2j-antennae.com).
pone y los montamos verticalmente, no pueden
ser atornillados fcilmente a un radiador (no es
que realmente se necesite uno). Los MOSFETs
deben estar tumbados sobre su espalda para que
quepan en la caja.
Si los LEDs deben asomar a travs de la caja,
deberemos taladrar primero los agujeros para
conocer la longitud correcta de sus terminales.
El LED D5 (conectado a RC4) y cada pulsador,
han sido colocados exactamente bajo un sepa-
rador, de manera que podamos hacer agujeros
para ellos sin tener que hacer la tediosa medida
primero, slo habr que taladrar los separado-
res. La caja dispone de una trampilla para pilas,
lo que permite que podamos montar los LEDs de
estado del mdulo Wi-Fi en la cara de soldadura,
para que podamos verlos slo cuando abrimos
la trampilla.

www.elektor-magazine.es | junio 2013 | 17


Proyectos

detectar ahora la placa como un HID. Si es


la primera vez que hacemos esto en un PC
Windows, tenemos que mostrarle el fichero
.INF que hemos conseguido en la descarga
previa.
En el PC, lanzamos la herramienta HIDBoo-
loader conseguida tambin en la descarga
Figura 6.
Usad esta herramienta para
(para Windows; para la versin Linux o Mac
volcar una nueva aplicacin descargaremos la aplicacin de la pgina web
a la Placa Controladora de Microchip) (ver Figura 6). Esta aplicacin
Wi-Fi. debera reconocer la placa instantneamente.
Buscaremos y cargaremos nuestro fichero eje-
cutable (fichero HEX) y, a continuacin, pul-
saremos sobre el botn program.

Para salir del modo cargador de arranque y arran-


car la aplicacin, pulsaremos sobre el botn de
Reset o apagaremos y encenderemos la fuente de
alimentacin de la placa sin mantener pulsado S1.

Configurando el mdulo Wi-Fi


Figura 7. En [2] os muestro cmo configurar el mdulo
La pgina de configuracin WizF1220 a travs de un puerto serie usando
del mdulo WizFi, que est comandos AT. Esta tcnica es muy til si, por
accesible en modo Punto de ejemplo, queremos que el micro reconfigure
Acceso Limitado, nos hace la
el mdulo al vuelo. Tambin permite la con-
vida mucho ms fcil.
figuracin de opciones no accesibles por otros
medios. La placa que se presenta aqu tiene un
Programando la placa modo especial que permite esta manera de con-
El firmware que podemos descargar para este figurar el mdulo. El mdulo Wi-Fi ofrece una
proyecto desde [6], contiene el programa carga- manera ms fcil si lo nico que queremos hacer
dor de arranque, la aplicacin de la tira de LED es conectarlo a una red Wi-Fi existente. En este
RGB y los elementos de configuracin, en un caso tenemos que colocar el mdulo en el modo
nico fichero HEX. Volcaremos el fichero HEX en el denominado Punto de Acceso Limitado (o LAP,
MCU usando un programador adecuado (PICKIT, del ingls, Limited Access Point). La placa tam-
ICD u otro) y ya estar todo. Con el programa bin puede hacer esto.
cargador programado en el MCU, estamos listos Para ambos mtodos, tenemos que colocar pri-
para cargar nuestra propia aplicacin. El proce- mero la placa en modo USB a serie. Para hacer
dimiento es el siguiente: esto, conectamos RC2 a + 5 V (por ejemplo, con
un hilo o un conector de extensin) y, a continua-
Sin alimentar la placa, nos aseguraremos de cin, conectamos la placa a un puerto USB libre
que JP3 no est montado. de nuestro PC. El LED D5 comienza a parpadear
Conectar la placa a un puerto USB libre de y podemos comenzar a enviar comandos AT al
nuestro PC. nuevo puerto COM virtual (el nmero o el nom-
Pulsar el pulsador S1 y mantenerlo pulsado bre ser el que obtengamos de nuestro sistema
mientras colocamos el puente JP3. Realmente, operativo). Si el mdulo Wi-Fi est conectado a
en lugar de JP3, he usado un pulsador del tipo un PA (Punto de Acceso, por ejemplo, cuando
normalmente cerrado (NC) (los microinte- los LEDs de estado LINK y OK estn los dos
rruptores son ideales para ello). En este caso, encendidos), escribiremos +++ en un programa
mientras mantenemos pulsado S1, pulsaremos terminal de puerto serie para forzar al mdulo a
brevemente del microinterruptor para entrar en entrar en el modo comando (el LED OK deber
el modo cargador de arranque (bootloader). apagarse). Ahora usaremos la referencia [2] para
E l PC (con Windows, Linux o Mac) debera conFigurar el mdulo.

18 | junio 2013 | www.elektor-magazine.es


tarjeta controladora wi-fi

Para poner el mdulo Wi-Fi en el modo LAP


se requiere algo de destreza. Miremos al LED
que parpadea ms de cerca y observemos su
ritmo de parpadeo. Cuando creamos que esta-
mos listos, pulsaremos S1 justo cuando el LED
est apagado y lo mantendremos presionado
durante dos parpadeos completos. Soltaremos
el botn slo cuando el LED se apague de nuevo
despus del segundo parpadeo. Si consegui-
mos hacer esto de manera adecuada entonces,
despus de un segundo aproximadamente, los
tres LEDs de estado Wi-Fi comenzarn repenti-
namente a parpadear rpidamente varias veces
y el mdulo entrar en el modo LAP. (Si con-
tamos tres parpadeos el mdulo volver a su
configuracin por defecto de fbrica, lo que es
un modo rpido de sacarlo de cualquier confi-
guracin dudosa). Si tenemos la placa conec-
tada a un monitor de puerto serie, podremos
ver el mensaje:

IP SubNet Gateway
Figura 8.
192.168.1.1: 255.255.255.0: 192.168.1.1
La pgina web de la Placa
[OK]
Controladora Wi-Fi tal
y como se ve desde un
Ahora debemos asegurarnos de que el mdulo smartphone con Android.
est en alcance del PA que queremos usar con la Est el azul semi-encendido
placa. Verificamos nuevos puntos de acceso con o semi-apagado?
un PC, un Smartphone o una tableta. Si todo va
bien, deberamos ver un mensaje con la etiqueta
WizFiAPxxxx donde xxxx es un nmero. Nos dual. Seguidamente, en el campo S2W Con-
conectamos a l (se trata de un PA abierto por nection method escribimos 1,1,,80. Esto nos
lo que no necesitamos ninguna clave de paso) llevar a una pasarela serie que escucha sobre
y en el navegador colocamos una direccin el puerto 80, el puerto HTTP por defecto usado
192.168.1.1. Deberamos ver una pgina similar a por los navegadores web. De nuevo, podemos
la de la Figura 7. Ahora pulsamos sobre el enlace usar cualquier otro valor. Hecho esto, pulsamos
Find Available Wireless Networks (Encontrar sobre el botn Save.
Redes Wi-Fi Disponibles). Aparecer una lista El enlace Administration Settings nos permite
con todas las redes que estn en alcance, en la introducir la contrasea del mdulo. Yo no he
que podemos seleccionar la que queremos. A usado esta opcin.
continuacin, pulsamos sobre la opcin Save Cuando hayamos acabado con la configuracin,
And Continue (Salvar y Continuar). Esto nos pulsaremos sobre el enlace Logout. Ahora
llevar de nuevo a la primera pantalla que ahora deberemos ver el mensaje Rebooting (Rei-
nos mostrar los detalles de la red seleccionada. niciando) y la conexin Wi-Fi se perder. El
Dependiendo de la configuracin de seguridad mdulo WizFi se reiniciar y tratar de conec-
de esta red, tendremos que entrar la clave de tarse directamente a la red seleccionada. Si todo
acceso. Ahora pulsamos sobre el botn Save va bien, los LEDs LINK y OK se encendern,
(Salvar) para almacenar la configuracin. Con- lo que significa que ahora podemos conectar la
tinuamos pulsando sobre el enlace Network Set- placa. Introducimos la direccin IP del mdulo
tings (TCP/IP) y rellenamos el formulario. Yo en el navegador y esperamos hasta que nos apa-
prefiero utilizar una IP esttica para el mdulo rezca la pgina de la Figura 8. Cuando la pgina
de manera que siempre conocer su direccin, se haya cargado correctamente estaremos listos
pero esto lo decide cada uno de manera indivi- para jugar.

www.elektor-magazine.es | junio 2013 | 19


Proyectos

Lista de materiales
Resistencias (5%, 0.25W) IC3 = LM2575T-5.0/NOPB
R1,R2,R3,R4,R5,R8 = 1k T1,T2,T3 = IRL540
R6,R7 = 47k T4 = BC547
R9 = 10k
Varios
Condensadores MOD1 = WizFi220 con antena, Elektor # 130076-92.
C1,C2 = 22pF, cermico, 50V, paso 2,5 mm JP1 = conector pinheader de 6 terminales, paso 2,54
C3,C5,C7 = 100nF, Z5U, 50V, paso 5 mm mm, vertical.
C4,C6 = 10F 63V, radial, paso 2,5 mm JP2 = conector pinheader de 5 terminales, paso 2,54
C8 = 330F 16V, radial, paso 3,5 mm mm, vertical.
C9 = 100F 50V, radial, paso 3,5 mm JP3 = conector pinheader de 2 terminales, paso 2,54
mm, vertical.
Inductores Puente para JP3.
L1 = 330H 1A, paso 5 mm, por ejemplo, Wrth Elek- K1 = conector hembra USB-B.
tronik, modelo 7447452331 K2 = Conector 1x4, 90deg, paso 5,08 mm, por ejem-
plo MSTBA4.
Semiconductores K3 = conector para tensin DC.
Conector DIP de 20 terminales para IC1.
D1,D3,D4,D9,D10,D11 = 1N5819
S1 = Multimec tipo RA3FTL6 con tapa, tipo S09-16.0
D2 = 3V diodo zner, por ejemplo, BZX79-C3V0
X1 = Cristal de cuarzo de 12 MHz, encapsulado
D5,D6,D7,D8 = LED, verde, 3mm
HC49/S.
IC1 = PIC18F14K50-I/P
Caja, Hammond modelo 1593QGY.
IC2 = MCP1825S-3302E/AB
Placa, Elektor Ref. 120718-1

6
5
1 23

4
3
2
1

Fue divertido poder controlar las luces de mi Enlaces en Internet


casa desde el exterior con mi telfono mvil.
[1] Elektor Home Control: www.elektor-labs.com/
Sin embargo, este no es el uso que he planifi-
node/2325
cado para la placa. Mi intencin es conectarla a
[2] Extensin Wi-Fi/Bluetooth: www.elektor.
la puerta motorizada del garaje donde mi tel-
es/120306
fono mvil ser la llave. Tambin ser posible dar
acceso a nuestra casa a alguien, incluso cuando [3] JQuery(UI): http://jquery.com & http://jque-
nosotros estemos fuera. Adems, esta placa est ryui.com
llena de posibilidades, usad vuestra imaginacin! [4] Versin Arduino: www.elektor-labs.com/
(120718) node/2373
[5] FlowStone (en este nmero): www.elektor.
es/130064
[6] Firmware, ficheros Eagle PCB, BOM; pedidos:
www.elektor.es/120718

20 | junio 2013 | www.elektor-magazine.es


alrededor del mundo

Elektor World
Compilado por
Wisse Hettinga


La vlvula en el Taper:
los lectores comentan
Lectores de Elektor como vosotros, demuestran
constantemente el verdadero espritu que hay detrs de la
revista, mejorando y ampliando el contenido editorial con vuestras
propias investigaciones y experimentos. Los artculos relacionados con los
componentes son an los ms populares y, en el ltimo artculo de la seccin Elektor
World del pasado mes de abril, mostramos la Vlvula en el Taper y nos habis
pedido ms detalles.
Entre otros, Christopher Kessler de Alemania y Jan Swenker de Holanda, han buscado y
desenterrado ms informacin sobre esto. Christopher encontr las especificaciones de esta vlvula buscando
por Valvo Fotovervielfacher 1978-79. En total encontr 6 pginas de la informacin sobre el dispositivo,
donde tambin apareca que su precio actual era unos 30 dlares. La informacin de Jan confirma la fecha de
origen: 1978. Tambin nos indic el libro Hamamatsu Photomultiplier Tubes de 1986 (podemos encontrar el
PDF en Internet). El libro tiene las especificaciones de un tubo equivalente y sustituto, el modelo R1450... Es
el momento de poder tener en nuestras manos esta vlvula para trabajar!
Muchas gracias a Jan y Christopher

Conseguir el control
En ingeniera, la teora de sistemas de control se concentra en cmo manipular
las entradas de un sistema para cambiar su comportamiento. Los hobistas estn
familiarizados con sistemas de control de lazo abierto muy sencillos, tales como
los basados en motores paso a paso. Pero hoy da, los kits de proyectos de
cualquier tipo, desde los grandes robots para coches hasta el modelo de avin
auto-pilotado, exigen que los aficionados aprendan ms sobre la teora que hay
detrs de los sistemas complejos de control de circuito cerrado, dice Brian
Douglas en su ensayo Tech the Future, en la edicin de junio de 2013 de la
revista Circuit Cellar. Los aficionados no vuelven a las aulas, ellos trabajan
sobre Internet, educndose ellos mismos en las pginas web y cambindose
al software y hardware open source. Douglas debe saberlo. El ingeniero de
sistemas de control con base en Seattle, tiene una pgina web en YouTube
dedicada a fomentar la comprensin prctica de la teora de sistemas de control, www.youtube.com/
user/ControlLectures. Douglas es uno de los conocidos ensayistas de CC que aparece en la seccin Tech
the Future, que se centra en desarrollar tendencias y descubrimientos en la tecnologa. Visitad circuitcellar.
com/category/tech-the-future para leer ms sobre los ensayos de Douglas y otros.

www.elektor-magazine.es | junio 2013 | 21


Da 1 Hazlo tal
como quieres
Niel Greunding Los buenos amigos de RS Components acaban de lanzar su versin 5.0 de
DesignSpark PCB, y la primera cosa que me gusta hacer con una nueva
herramienta es configurarla como a m me gusta. DesignSpark nos permite
configurar todo a partir de ficheros base o globalmente.

Hoy os voy a hablar de cmo hacer cambios de una crear nombres que den significado al estilo, de
configuracin global usando la tecnologa de ficheros manera que podamos saber qu estilo es sin
de DesignSpark de forma que consigamos hacer que tener que verificar directamente sus propieda-
DesignSpark trabaj como a nosotros nos gusta. des. Por ejemplo, si tenemos un estilo llamado
Va, es vlido si slo tenemos un tipo de va,
Comenzando pero llamndolo Via (0.45mmx0.95mm) con-
Pero antes de empezar a configurar DesignSpark seguimos que sea obvio que este estilo es para
es importante saber que DesignSpark usa estilos una va que tiene un taladrado de 0,45 mm y
para especificar las reglas de formato para pri- un pad de cobre de 0,95 mm. Podemos aa-
mitivas de diseo como formas, texto y pistas. dir los estilos personalizados que queramos a
Cada estilo tiene un nombre para poder refe- la tecnologa de ficheros, aunque este artculo
rirse a l fcilmente, justo como lo hacemos en intentar centrarse sobre los estilos por defecto
un procesador de textos. Normalmente intento del sistema, como [Symbol Names], que es el
nombre de estilo utilizado para los indicadores
de referencias y los nombres de componentes.
Adems, no debemos olvidar verificar dos veces
la ruta del fichero de tecnologa de DesignSpark,
que se puede cambiar en la pestaa General del
men Settings->Preferences. En mi instalacin
yo lo he cambiado a C:\Users\Public\Documents\
DesignSpark PCB 5.0\Technology. Si este camino
es incorrecto, DesignSpark no encontrar ningn
fichero de tecnologa automticamente, lo que
Figura 1. har mucho ms complicado su uso. Podemos
Esquemtico con verificar si el camino del directorio es correcto si
parmetros por defecto. contiene ficheros con las extensiones .ptf y .stf.

Ficheros de la tecnologa de
esquemticos
Los ficheros de tecnologa de esquemticos son
donde podemos configurar:
los estilos de lnea usados para conexiones de
terminales y uniones;
e stilos de texto predefinidos usados en el
esquemtico (fuente, tamao, etc.);
cmo se dibujarn varios elementos de lnea
Figura 2. (solida, discontinua, etc.);
Fuente por defecto cmo se dibujarn los elementos de lnea de
establecida en Arial. conexin (slido, ancho, etc.);

22 | junio 2013 | www.elektor-magazine.es


TRUCOS Y CONSEJOS

cualquier nodo elctrico predefinido, aunque


yo hara esto mejor en el esquemtico;
cualquier clase de nodo elctrico predefinido
(masa, alimentacin, etc.);
los colores usados para dibujar varios elementos.

Podemos cambiar estos parmetros en el men


Settings->Design Technology y en el men Figura 3.
View->Colors. Configuracin de las
Podemos ver que los parmetros por defecto capas.
se asemejan a cargar un proyecto ejemplo. El
esquemtico del proyecto chipKit Max32 tiene El fichero de tecnologa PCB nos permite configurar:
una apariencia como el de la Figura 1. Las unidades de diseo (mm, mils, etc.) y la
Personalmente encuentro que el estilo de las fuentes resolucin.
es un poco antiguo, por lo que me gusta cambiarlo Las rejillas de diseo, especialmente, la rejilla
a Arial, ya que es un tipo de fuente estndar. Des- de trabajo.
pus de jugar un poco durante unos minutos, tene- El apilado de capas y los colores.
mos el resultado que podemos ver en la Figura 2. E l espaciado entre pistas y las reglas de
As pues, cmo implementamos esto en el separacin.
fichero de tecnologa de esquemticos? La pri- Los estilos de los pads y de las pistas, aun-
mera cosa que tenemos que hacer es abrir el que, normalmente, especificaremos los estilos
fichero de tecnologa de esquemticos default.stf, de los pads en nuestras libreras de compo-
que normalmente est localizado en C:\Users\ nentes y slo especificaremos los estilos de las
Public\Documents\DesignSpark PCB 5.0\Tech- pistas por defecto en el fichero de tecnologa.
nology y que se abrir como un documento de Las clases de nodos por defecto, aunque, nor-
esquemticos en blanco. Ahora abrimos el men malmente, yo las especifico en el esquemtico.
Settings->Design Technology y cambiamos los Las reglas de rutado automtico y colocacin
estilos de texto de Net Names, Pin Names, Pin automtica.
Numbers y Symbol Names para usar la fuente Los elementos de diseo bsicos como formas
de Arial con una altura de 80. Tambin he cam- de placa, taladros de montaje, etc.
biado el estilo de texto Normal a Arial, pero con
un tamao de fuente de 120. Despus, he que- Vamos a ver cmo funciona esto iniciando nuestro
rido ir al men View->Colors y he cambiado los trabajo con un ejemplo para una sencilla placa de
campos Pin Names y Pin Numbers a negro. dos capas. El primer paso es copiar el fichero de
Una vez que hemos hecho todos nuestros cam- tecnologa existente, de manera que no tenga-
bios, salvamos el fichero de tecnologa de manera mos que comenzar desde cero. As pues, vamos a
que podamos usarlo en nuevas pginas de esque- comenzar con C:\Users\Public\Documents\Desig-
mticos seleccionando default.stf en la ventana nSpark PCB 5.0\Technology\metric.ptf y lo sal-
de men de nuevo documento. varemos con un nuevo nombre como my2layer.
ptf. Lo primero que tenemos que modificar son
Ficheros de la tecnologa PCB las unidades de diseo en el men Settings->U-
Los ficheros de tecnologa PCB son una de las nits. Yo siempre uso milmetros con una precisin
mejores caractersticas de DesignSpark ya que de cuatro cifras decimales, pero si preferimos
nos permiten combinar todas nuestras reglas de las unidades imperiales, elegiremos in o mil.
diseo bsicas y el apilado de capas en ficheros Podemos configurar nuestro diseo de rejilla pre-
que se pueden usar de nuevo muy fcilmente. Por ferido en el men Settings->Grids.
ejemplo, tengo un fichero para placas de doble La configuracin de las capas se hace en la pes-
cara de bajo coste y otro para placas de cua- taa Layers, dentro del men Settings->Design
tro capas. Puedo seleccionar qu fichero quiero Technology. Por defecto, la mtrica del fichero
utilizar cuando creo un nuevo documento PCB. de tecnologa tiene ya definidas las capas Top
Esta caracterstica no es muy comn con otros Silkscreen, Top Copper, Documentation, Bottom
paquetes de diseo de PCBs. Copper y Bottom Silkscreen. Como todas mis
Track Styles. Para una placa de 10mil/10mil yo
configurara los anchos de pista de seal, normal y
mnimo, en 0,25 mm. El ancho de pista de alimen-
tacin puede ser el que queramos para el ancho
normal, pero recomiendo hacer que el mnimo sea
de 0,25 mm, para que podamos rutar las pistas
de alimentacin sobre los pads de los componen-
tes. El paso final es editar los estilos de va en la
pestaa Pad Styles. Para una placa de dos capas
de tecnologa bsica, usara una va con un tala-
Figura 4. dro de 0,45 mm y un pad de 0,95 mm. Tambin
Configuracin de las podemos definir otros estilos de va si queremos
capas. usar una variedad diferente de tamaos de va.
En este punto ya tenemos configuradas las reglas
placas son de montaje superficial, he aadido bsicas de diseo y las limitaciones para una
las capas Top Paste, Top Solder Mask, Bottom placa bsica de dos capas, que podemos volver
Solder Mask y una capa Bottom Past. Podemos a usar fcilmente en placas futuras de dos capas.
aadir ms capas pulsando sobre el botn Add y Cuando creamos un nuevo diseo de PCB, selec-
entrando en los parmetros de capas, tal y como cionaremos el fichero de tecnologa adecuado
se muestra en la Figura 3. cuando se nos pida en el PCB Creation Wizard.
Una vez que hemos aadido todas las capas que
queremos, las podemos ordenar correctamente en Conclusin
la pila de capas, movindolas hacia arriba o hacia Ahora que hemos configurado los parmetros por
abajo en la ventana Layers. Una vez lo hayamos defecto de DesignSpark, los siguientes pasos son
hecho, deberamos ver algo como lo de la Figura 4. configurar las libreras de DesignSpark y crear algu-
A continuacin, pasamos a configurar las reglas nas plantillas de documentacin. Por suerte, Desig-
de espaciado pulsando sobre la pestaa Spacings. nSpark viene con un gran conjunto de libreras que
Aqu veremos una matriz de todas las reglas de hacen que el inicio sea mucho ms sencillo.
espaciado entre los diferentes tipos de objetos. (130172)
Para una placa bsica de dos capas, con pistas de
10 mil y espaciado de 10 mil, las reglas tendran Neil Gruending, como ingeniero de diseo de
una apariencia como la de la Figura 5. electrnica, ha usado numerosos paquetes
Adems, tampoco debemos olvidar pulsar sobre CAD para PCB a lo largo de los aos. Neil es
la pestaa Rules. Los parmetros importantes son bastante particular con estas herramientas
el anillo anular mnimo y el espaciado de compo- y le gusta aprender cmo maximizar su
nentes. Despus de esto, es el momento de con- productividad con ellas tanto como sea
figurar el ancho de pista por defecto en la pestaa posible. Tambin le gusta compartir lo que ha
aprendido en su pgina web www.gruending.
net y en Twitter como @ngruending.

Figura 5.
Reglas de diseo.

24 | junio 2013 | www.elektor-magazine.es


EL EXTRAO MUNDO DE LOS COMPONENTES

Los Bigotes del Gato


Normalmente, cuando comienzo a escribir un art- entrada. La Figura 3 muestra la caracterstica de Wisse Hettinga
culo, para inspirarme, miro lo que tengo alrede- un diodo actual con el mismo sistema de medida. (Elektor)
dor en mi escritorio. Para esta edicin del Extrao Mirando los resultados me sorprend de que un
Mundo de los Componentes vino a mis ojos un componente como el FRIHO D.R.P. realmente fun-
Diodo de Cristal, modelo FRIHO D.R.P. Se men- cionase! Hoy da existe una variedad enorme de
cionaba en un viejo Catlogo Bauer de radio, de diodos para todo tipo de aplicaciones. Pequeos
1926 [1] (estamos hablando aqu de componentes diodos de seal, diodos Zner, diodos varicap o
realmente viejos) y es uno de los componentes varactores, diodos tnel, y todos ellos estn
principales de los viejos sistemas radio de cristal. disponibles en una variedad de encapsulados.
Para ser sincero, no tengo ni idea de cmo o cundo Es interesante darse cuenta de que, de alguna
compr este componente, pero en mis primeros manera, todos ellos estn relacionados con este
aos yo sola pasar mucho tiempo ojeando tras- viejo diodo de Bigote de Gato.
tos en una conocida tienda llamada Quakkelstein, (130169)
en Vlaardingen, Holanda. Lo ms probable es que
fuese aqu donde lo consegu y desde entonces
ha estado viviendo en mi escritorio o en mi cajn.
Ahora este componente nos devuelve a los prime-
ros das de la Radio. Es un diodo de bigotes de
gato automatizado. Al girar el mando se cambia la
posicin de un pequeo hilo (el bigote) en el cris-
tal de galena, permitindonos encontrar el mejor
punto de trabajo para que el diodo haga lo que un
diodo debera hacer: dejar pasar la corriente slo
en una direccin. Esto era lo que supona escuchar
la Radio en aquellos das. Para conseguir una seal
decente tenamos que ajustar y fijar la bobina, el 1
condensador y el diodo de rectificador.
Pero, cmo de buenos eran estos diodos compa-
rados con los de hoy da? Medir las caractersticas
de un diodo es realmente simple. Bsicamente, si
queremos hacer un trabajo decente para conse-
guir la caracterstica I-V, todo que necesitamos
es una fuente de alimentacin, un voltmetro
y un ampermetro. Hacer que este diodo fun-
cionase correctamente era, cuando menos, un
reto. Tenemos que jugar un poco para encon-
trar el punto correcto donde el efecto de diodo
alcanza su punto mximo. Comenc la tentativa 2
de encontrar dicho punto con un hmetro, pero
pronto tuve que concluir que esta opcin no iba
a servir. Los resultados de las medidas eran de
todo tipo. Estaba a punto de rendirme cuando
decid hacer un ltimo intento y usar algn ins-
trumento ms. Finalmente, un generador HP, un
osciloscopio Hameg HMO1522 y una resistencia
de 330 ohmios, me dieron algunos resultados
prometedores. En la Figura 2 el osciloscopio
muestra una seal muy rizada pero, con un poco
de imaginacin, podemos ver el recorte que el
diodo FRIHO produce en la seal de sinusoidal 3
Labs

Mantn los terminales flotantes


tentativas para solucionar el problema, como des-
conectar y volver a conectar el cable USB, buscar
errores de programa, etc; pero todo fue en vano.
Pareca que la tarjeta SD se haba estropeado de
forma repentina. Sin embargo, las pruebas de la
tarjeta en un lector demostraron que funcionaba
correctamente, con lo que el error tena que estar
en otra parte. Pero dnde?
Verificamos cualquier defecto de diseo posible,
y lo hicimos dos veces, se prob cada punto de
soldadura, pero no encontramos ningn fallo.
Volviendo sobre sus pasos, Raymond program la
FPGA una vez ms y entonces se le vino algo a la
cabeza: cuando se programa la FPGA el entorno
desarrollo software requiere que se configure una
buena cantidad de parmetros. En las opciones
de configuracin (ver captura de pantalla), los
terminales de entrada-salida (E/S) no usados
pueden ser configurados. De hecho, deben serlo.
Thijs Beckers La Placa de Desarrollo FPGA de Elektor publicada En ese momento Raymond se confes culpable
(Editorial de Elektor) en la edicin de diciembre de 2012 [1], usa una de haber descuidado justo lo que l haba estado
tarjeta micro SD para almacenar los datos de con- diciendo constantemente a todos los usuarios de
figuracin necesarios en el arranque de la FPGA. La la Placa de Desarrollo FPGA de Elektor que tenan
tarjeta tambin puede ser usada para almacenar que hacer: colocar todos los terminales de E/S
datos, bien por la FPGA, bien por el microcontrola- sin usar en forma flotante.
dor, o bien por un PC conectado a travs de USB. Como los terminales de datos de la tarjeta SD
Trabajando en una aplicacin para la placa, el dise- estn directamente conectados, tanto con el
ador Raymond Vermeulen se top de repente con microcontrolador como con la FPGA en la Placa
problemas al usar la tarjeta SD. Despus de pro- de Desarrollo FPGA de Elektor, es obligatorio que
gramar el FPGA con un nuevo firmware reciente- estos terminales se dejen flotantes en la FPGA
mente escrito, la placa de la FPGA al completo dej cuando no estn en uso. Por defecto, el entorno
de ser detectada por Windows. Se hicieron varias de desarrollo deja las E/S sin uso en modo pull
down que, en la mayora de los casos, va bien.
Pero en esta aplicacin no es as y esta configu-
racin tiene que ser cambiada de forma activa a
float (flotante)!
Despus de que Raymond corrigiese este ajuste y
programase de nuevo la FPGA, la Placa de Desa-
rrollo FPGA cobr vida otra vez y la aplicacin de
Raymond comenz a funcionar sin problemas. Un
claro caso de practicar lo que uno predica, Ray-
mond! Aliviado de haber encontrado al culpable, se
volvi hacia m justo cuando yo entraba a los labo-
ratorios preguntado si alguien tena alguna historia
interesante para las pginas .LABS de este mes...
(130036)

Internet Link
[1] www.elektor.com/120099

26 | junio 2013 | www.elektor-magazine.es


www.elektor-projects.com
elektor labs
Sharing Electronics Projects

Elektor.LABS es una comunidad online


para apasionados de la electrnica.
Un lugar donde compartir tus proyectos
y tomar partido en aquellos que otros
hayan creado. Se trata de un sitio en el
cual discutir sobre desarrollos y electr-
nica en general.

El equipo de editores e ingenieros de


Elektor te ofrecer su apoyo hasta nali-
zar satisfactoriamente tus proyectos. As
mismo, te ayudarn a redactar un artculo
para ser publicado en Elektor.MAGAZINE,
e incluso desarrollar un producto comple-
to que puedes vender en Elektor.STORE!

nete
ya

Elektorzate! Visita www.elektor-labs.com


Labs

Duelo de Medidores LCR


Thijs Beckers Comenc con el antiguo medidor de GRC. Como
(Editor de Elektor) No sera interesante comparar nuestro ltimo el aparato es ms viejo que yo y menos intuitivo
medidor LCR 500 ppm con uno de Hameg que en trminos de funcionamiento (al menos que
nos han prestado? yo), lo primero que hice fue echar una hojeada
S, podra ser interesante. al manual. Necesit bastante tiempo para ajus-
Si queris, puedo traer un medidor antiguo tar las cosas y conseguir una lectura de medida
de mi coleccin de Retrnica. exacta. Aqu est el desglose:
Imponente. Vamos a ver la comparativa de
los tres! leer el manual: 10 minutos;
entender cmo medir un condensador correc-
Tuve este reciente chat de caf con unos colegas tamente: 5 minutos;
en el Centro de Operaciones de Elektor que ter- realizar una medida real (configurando los ajus-
min ponindome frente a tres Medidores LCR, tes para una desviacin cero): 3 minutos.
con un fondo completamente diferente, para
una rpida prueba prctica. El medidor Hameg Para ser justos, si vamos a usar el 1650-A dia-
(HM8118 [1], cortesa de Rohde & Schwarz riamente, probablemente deberamos ser capa-
Holanda [2]) es un instrumento profesional con ces de ahorrar el 80% del tiempo necesario para
un precio de venta de unos 2.000 . El antiguo una sola medida. De todos modos, supone ms
medidor del departamento de Retrnica es el de medio minuto por medida. Aunque tengo que
modelo Puente de Impedancia 1650-A de General confesar que el aspecto, el tacto y la sensacin
Radio Company (GRC), fabricado en 1960, con que los robustos diales e interruptores aaden
un coste de unos 1000 $ de los de entonces [3]. carcter a este equipo.
Y, finalmente, el Medidor LCR 500 ppm de Elek- Ahora tenemos al HM8118. Como todo dispo-
tor [4], que debera costarnos menos de 400 $ sitivo moderno, ste es (ms o menos) de los
en componentes. de enchufar-y-trabajar. Despus de la secuen-

Grfico comparativo
DUT Unidad Bajo Test) GRC 1650-A Hameg HM8118 Elektor LCR Meter
8.2458 8.2379
Resistencia 8.2 8.22 (Vx=31,86mV, (Vm=31.13mV,
Ix=3.862mA) Im=3.779mA)
102.03nF 102.20nF
D: 0.01205 D: 0.013
100 nF
Condensador 100 nF Rs=19.20 Rs=19,20
D: 0.0267
(Vx=364.9mV, (Vm=398.1mV,
Ix=233.9A, 1kHz) Ix=256.0A, 1kHz)
94.475F 92.400F
D: 0.10099 D: 0.090
92 F
Condensador 100 F Rs=170.27m Rs=155.4m
D: 0.1
(Vx=7.301mV, (Vm=7.076mV,
Ix=4.312mA, 1kHz) Ix=4.091mA, 1kHz)
995.85H 993.2H
Q: 0.49189 Q: 0.492
1.255 mH
Inductor 1 mH Rs=12.722 Rs=12.681
Q: 0.63
(Vx=52.60mV, (Vm=51.18mV,
Ix=3.711mA, 1kHz) Ix=3.621mA, 1kHz)

28 | junio 2013 | www.elektor-magazine.es


comparativa de medidor lcr

cia de calibracin automtica el DUT (Dispo- En resumen, la facilidad del uso ha mejorado
sitivo Bajo Prueba) se inserta en el soporte mucho desde los aos 60 y, mirando los resul-
de prueba (Hameg HZ181) y las propiedades tados de medida del Hameg y del Medidor LCR
solicitadas del componentes son mostradas al de Elektor, son de foto finihs. Nuestro pequeo
instante en la pantalla LCD azul retroiluminada. medidor mantiene el pulso frente al gigante (ver
Tiempo estimado: 40 segundos desde el princi- el grfico comparativo). Por supuesto, no sera
pio hasta el final, sin leer el manual. Medidas justo ignorar el amplio rango de opciones del
secuenciales? Vamos a suponer que el cambio Hameg y la precisin base del 0,05 % tampoco
del DUT nos lleva tres segundos, seleccionar la es algo a menospreciar.
unidad de medida correcta dos ms, en total, Sorprendentemente, despus de ms de 50 aos
cinco segundos. de uso y manejado por un novato, el 1650-A de
El ltimo, pero no el peor: el Medidor LCR 500 GRC an da medidas no muy lejanas. Hablad de
ppm de Elektor. Con slo un LCD, un interruptor ello con un compaero de laboratorio de con-
de encendido/apagado y cinco botones, puede ser fianza. Ya no hacen as las medidas! O s? Os
tan rpido como uno con enchufar-y-trabajar. gusta compartir vuestra experiencia con dispo-
La calibracin es un trabajo de una nica vez, sitivos de laboratorio antiguos? Dejadnos un
de la que ya me haba encargado en el proto- correo electrnico en [email protected].
tipo que us para esta prueba, con lo que pude (130166)
ir directamente a la medida real y poner el DUT
entre los clips. Tiempo estimado: 10 segundos. Enlaces en Internet
Las medidas secuenciales, probablemente, exi- [1] www.hameg.com/13.0.html
gen un poco ms tiempo, comparadas con las del
[2] testenmeetwinkel.nl
Hameg que usa los clips Kelvin, pero el soporte
de prueba HZ181 tambin se puede utilizar en [3] www.elektor.es/075064
el Medidor LCR de Elektor. [4] www.elektor.es/110758

www.elektor-magazine.es | junio 2013 | 29


Proyectos

Recicla tu Fuente
de Alimentacin ATX
Esta elegante placa adaptadora te lo pone fcil
Ben Jordan (USA) Esta placa adaptadora de fuente de alimentacin ATX para banco de trabajo nos
permite convertir cualquier fuente de alimentacin ATX de ordenador en una fuen-
te de alimentacin adecuada para trabajar con placas de prototipo y en el banco
de trabajo en general sencilla y elegante.

DSP DSP56367 de Freescale o el microcontrolador


Prestaciones ARM-7 LPC2101 de ARM) requieren lneas de baja
Salidas para 12 V, 5 V, 5 V Standby y 3,3 V tensin para el ncleo interno y las E/S, esto es
No es necesario hacer modificaciones en la fuente de alimentacin ATX. 1,8 V y 3,3 V. Esto se convierte en un verdadero
Encendido y apagado sencillo de la fuente de alimentacin ATX conectada. dolor de cabeza si tenemos que construir una
Indicacin de estado con LED. fuente de alimentacin con todas estas tensio-
Capaz de trabajar con corrientes de alimentacin elevadas. nes para cada proyecto. Pero la mayora de estas
Banana hembra para cada tensin de salida. tensiones (excepto la de 1,8 V) puede obtenerse
Ranura para una conexin fcil de las pinzas de cocodrilo. de las fuentes de alimentacin conmutadas ATX
para PCs del mercado. Esto es importante porque,
de alguna manera (no s exactamente cmo),
Todo aquel al que le guste cacharrear con la durante los aos he acumulado varias de estas
electrnica o los sistemas embebidos tiene que fuentes. Todas ellas tienen las salidas de 3,3 V, 5
tener una buena fuente de alimentacin. Yo no V, 5 V Reposo (Standby) y 12 V. Sabiendo que,
s cul es vuestro presupuesto personal para el en muchas de ellas, la regulacin de las lneas de
equipamiento de vuestro laboratorio, pero el mo 12 V no es fantstica. Pero, para la gran mayora
es ms bien, bueno dejadme deciros que estoy de los circuitos con amplificadores operacionales,
casado con la responsable del departamento de es ms que suficiente.
contabilidad y que ella no es exactamente un
ingeniero electrnico. Probablemente muchos Consideraciones de diseo
de vosotros hayis montado algunas fuentes As pues, por qu no colocar tan slo un manojo
de alimentacin reguladas lineales a lo largo de de bananas hembra de panel directamente sobre
los aos, pero disear y construir una fuente la fuente de alimentacin, como he visto hacer
de alimentacin de laboratorio, variable, de alta a tantas personas en la web? Buena pregunta!
potencia no es una tarea trivial. Y tambin, si Aqu est el por qu:
sois como yo, la mayora de lo que intentamos Las fuentes de alimentacin (PSUs) ATX estn
reparar son circuitos digitales y dispositivos ana- diseadas con un espacio verdaderamente
lgicos de baja tensin, como preamplificadores pequeo en su interior. Si intentamos colocar
de audio y similares. bornes de conexin en la misma, podemos
En la mayora de los casos, tengo que trabajar con estar superando las limitaciones de seguri-
un microcontrolador y unos pocos amplificadores dad (que son muy importantes). El lado de la
operacionales por lo que, normalmente, para m es entrada de Corriente Alterna (CA), la mayo-
muy til tener una lnea de 5 V para el microcon- ra de las fuentes conmutadas sufren picos de
trolador (y cualquier lgica asociada que pudiese tensin de ms de 1000 voltios y en la lneas
tener) y las lneas de +/-12 V para los amplifica- de corriente continua (DC) de unos +370 vol-
dores operacionales. Cada vez ms, las muestras tios. No vale la pena arriesgar la vida y las
de dispositivos con los que trabajo (por ejemplo, el extremidades!)

30 | junio 2013 | www.elektor-magazine.es


adaptador de fuente de alimentacin atx

Tenemos una fuente de alimentacin de orde- El adaptador debe:


nador en perfecto estado y, si os pasa como a 1. No alterar la propia fuente de alimentacin.
m, es posible que queris usarla para alimen- 2. Usar un conector ATX.
tar un da unos amplificadores operacionales y 3. Disponer de bananas hembra de panel para
otro la placa base de un ordenador. Por qu cada tensin de salida de la fuente ATX y para
modificarla incluso en su uso original? la tensin de standby.
As que busqu una solucin de diseo ms ele- 4. Tener la correspondiente banana hembra de
gante que no slo tuviese los bornes de conexin, retorno (GND) para cada tensin de salida.
sino que tambin tuviese puntos de clips donde 5. Ser capaz de trabajar con corrientes de ali-
poder colocar unas pinzas de cocodrilo. Con todo ello, mentacin importantes.
empec a disear una placa para adaptar la fuente 6. Disponer de un circuito de conmutacin para
de alimentacin ATX para usarla sobre en el banco el controlador on/off ATX.
de trabajo. Como sucede con todo, un buen punto 7. Disponer de LEDs para monitorizar las seales
de arranque es el definir algunas especificaciones. de Standby y Potencia correcta.

+5V STBY

VSTBY VSTBY

+3V3
K4 K11 K10 K3
+3V3 16 1
U1 = TC4049B U1
C2 C1 C4
8

100n 100n 100n K15 K18 K2 K1


3 S1 1
+5V0 PB ON

K5 K12 4 2
3 2 5 4
+5V0 1 1
OFF R3 R4 R1
C5 C8 10k U1.A U1.B
220R 220R
100n 100n 7 6
K17 K16 1
D2
J1
D1
U1.C
1 11
2 12 +12V U1.D
FAULT
3 13 K6 K13 9 10
R2 1
4 14 +12V
5 15 10k
C6 U1.E U1.F
6 16
S2 11 12 14 15
7 17 100n 3 1 1 1
K19 K20
8 18
4 2 PB OFF
9 19
10 20 C7
K7 K14
ON
C3
100n VSTBY
12V
100n PWR
K8 K9 OK Figura 1.
12V TP1 El esquema elctrico
ATX ON ATX ON
PWR OK PWR OK
muestra lo sencillo que es
120619 - 11 este adaptador de fuente de
alimentacin.

www.elektor-magazine.es | junio 2013 | 31


Proyectos

8. U
 sar un diseo de placa de taladros pasantes Circuito nada complejo
para que nuestros queridos lectores puedan La Figura 1 muestra la circuitera para este diseo.
hacerse una fcilmente por s mismos. El recorrido de conmutacin es un sencillo latch
basado en dos inversores de un inversor 4049 HEX
Tambin haba considerado colocar un medidor CMOS, alimentado de la lnea de 5 V de reserva de
interno de panel con el que poder monitorizar la la ATX. Las otras puertas del inversor se usan para
tensin de cada salida, pero me di cuenta rpi- controlar la seal de control de encendido de la PSU
damente que esto sera un aumento de presta- y los LEDs. Pulsando S2 encendemos la fuente de
ciones innecesario para esta aplicacin, ya que alimentacin, mientras que S1 la apaga de nuevo.
las salidas son fijas y estn bastante bien regu- D2, un LED bicolor, indica el estado en modo de
ladas, y la mayora de los usuarios (al igual que reposo (verde) o en modo de encendido (rojo).
yo) pueden conectar su multmetro y obtener Las fuentes de alimentacin ATX tienen una pro-
una medida mucho ms exacta. teccin incorporada, pero tambin disponen de una

Lista de materiales
Resistencias D2 = LED, 3mm, 2 terminales, bicolor
R1,R4 = 220 IC1 = TC4049B
R2,R3 = 10k
Miscelneos
Condensadores K3-K7, K10-K14 = bananas hembra de panel para la
C1-C8 = 100nF conexin de bananas macho.
J1 = Conector ATX para montaje en placa.
Semiconductores S1,S2 = Pulsador tctil.
D1 = LED, 3mm, amarillo

Figura 2.
La distribucin de
componentes no
deja espacio para
interpretaciones errneas.
Hay que sealar que el
conector ATX debe ser
montado sobre la cara
inferior de la placa.

32 | junio 2013 | www.elektor-magazine.es


adaptador de fuente de alimentacin atx

salida Power Good (Alimentacin Bien) que le dice parte trasera conductora del borne de conexin
a la placa base cuando la PSU est disponible o si de la banana. Sealar el uso de mltiples vas en
existe una condicin de fallo. Sera interesante tener crculo alrededor de cada uno de estos taladros
esta indicacin en un LED. Us un LED amarillo para y tambin alrededor de los agujeros de montaje.
D1 que indica cuando Power Good est a nivel alto Estas vas ofrecen una mayor fuerza de apriete de
(Power Good es una seal activa a nivel bajo). De los tornillos a la placa y tambin, para los bornes
esta forma tenemos una indicacin de aviso de una de conexin, proporcionan un buen camino de
condicin de fallo en la fuente de alimentacin ATX. baja resistencia a travs de la placa.
En general, cualquier centelleo continuo es malo y
es indicativo de que nuestra fuente de alimentacin En la prctica
probablemente tiene un problema. Esta placa adaptadora ATX ofrece conectores tipo
Todos los condensadores proporcionan un cierto jack estndar de 0,75, espaciados para conec-
desacoplo para las diferentes salidas de alimen- tores de doble banana y dispone de bananas hem-
tacin, excepto C2, que se usa para eliminar los bra de panel, con codificacin de color, para cada
rebotes del circuito de encendido/apagado. Todos una de la tensiones de alimentacin: 5V standby,
los condensadores son cermicos de 100 nF. R1 y 3,3V, 5V, +12V y 12V. He estado usando esta
R4 son resistencias de limitacin de los LEDs, mien- placa de modo continuo, tanto en el trabajo como
tras que R2/R3 forman los caminos de realimenta- en casa, alimentando varios kits de desarrollo a
cin para el doble latch inversor de con./desc.. partir de una nica fuente de alimentacin ATX.
He visto a otras conversiones de fuentes de alimen- En el trabajo tengo una Nanoboard-II de Altium
tacin ATX en fuentes de alimentacin de banco de y dos placas de desarrollo Nanoboard 3000 FPGA
laboratorio donde colocan una mnima resistencia de Altium tambin, todas funcionando al mismo
de carga en las salidas. Segn mi experiencia, esto tiempo con una nica fuente de alimentacin,
no es necesario ya que el ventilador, generalmente, as como algn que otro dispositivo. Realmente
es una carga mnima suficiente y la mayora de este equipo me ha simplificado mucho las cosas!
las fuentes de alimentacin conmutadas modernas (120619)
estn diseadas para trabajar con una carga cero
en cualquier caso. Pero si esto os hace sentiros
Enlaces en Internet
mejor, podis conectar una resistencia de 10 20
W a la lnea de 5 V (en general, 10 bastarn), [1] http://jordandsp.com/ATX-bench-top-power-
soldando la resistencia de potencia entre los bornes supply-adapter.php
de conexin de 5 V y GND, en su parte trasera. [2] www.elektor.es/120619

Diseo de la placa
Esta placa adaptadora acta como una placa sepa-
racin, con un conector ATX y la circuitera necesa-
ria de encendido/apagado, as como con unos bor-
nes de conexionado de separacin estndar donde
enchufar el tpico conector de dos bananas macho.
El plano de serigrafa que se muestra en la Figura
2 sirve como gua para posicionar los componentes.
Hay que sealar que el conector de la fuente de ali-
mentacin ATX debe montarse en la cara posterior
de la placa, con el resto de los componentes en la
cara frontal. Una novedad adicional de esta placa
son las ranuras plateadas nicas que hay en cada
La quiero
uno de sus bordes, las cuales se usan tambin para
Este proyecto est disponible como kit completo en una edicin
conectar puntas de prueba del tipo cocodrilo. El limitada, con la placa y todos los componentes, incluyendo las bananas
texto de la serigrafa indica la tensin de salida de hembra de panel, los componentes y un conector ATX, adems de
cada punto de prueba. El diseo de la placa est un conjunto de instrucciones claras y comprensibles que incluyen el
disponible para su descarga en PDF en [2]. esquema elctrico y el diagrama de ensamblado de la placa, as como
las plantillas de taladrado para el montaje del panel. Visita [1] para
Los taladros pasantes plateados, numerados de
ms informacin sobre precio y pedido.
K3 a K14, son para atornillar sobre la misma la

www.elektor-magazine.es | junio 2013 | 33


Proyectos

Desde la Electrnica
a la Carpintera
Cruzando el mundo en el nombre
de los electrones!
David Cuartielles Cuando hablamos de electrnica me
(Espaa) interesan dos mundos diferentes: los
Imgenes de
objetos conectados y la educacin en
Laura Balboa
(Mxico) la tecnologa en los primeros aos. El
mundo de los objetos conectados est
en crecimiento, hay una gran cantidad
de trabajo que hacer y ofrece un gran
nmero de oportunidades para sorpren-
dentes logros de ingeniera. Por contra,
el mundo de la educacin es bastante
ms complejo y deja mucho espacio
para la improvisacin. A menudo el
campo parece rgido y el camino para
llegar all difiere mucho del diseo de
los objetos conectados.

Normalmente dedico unas 2500 palabras en


explicar una historia divertida a la gente que est
interesada en la electrnica, pero este mes me
gustara hacer algo ligeramente diferente. Quiero
contaros una historia de cmo los tomos y los bytes
me llevaron a irme al sitio ms lejano posible de
mis ubicaciones cotidianas. Tambin es una historia
de cmo la electrnica nos conecta al mundo de
un modo diferente. Esta entrega debera haberse
llamado realmente: Desde las Artes Electrnicas
a los Trabajos de Carpintera, pero el ttulo es
demasiado largo y no demasiado cautivador.

Lista de materiales
Para reproducir cualquiera de los proyectos
tratados o mencionados en este artculo
necesitaris:
El Kit de Inicio oficial de Arduino.
Un micro-servomotor, estndar (180 grados).
Figura 1.
Iglesia de Zegache, Mxico. Un altavoz cnico de papel de 8 ohmios.
Foto cortesa de Talleres Un sensor de distancia de infrarrojos de la casa
Comunitarios. Sharp.

34 | junio 2013 | www.elektor-magazine.es


Arduino en Mxico

Experiencia #1: llegar all


Santa Ana Zegache es un pueblo al sur de
Oaxaca, Mxico. Est a ocho horas en coche
desde la Ciudad de Mxico. Es posible volar hasta
el aeropuerto de Oaxaca, lo que har que el
viaje durar la mitad pero, para experimentar,
la primera vez que fuimos all decidimos hacerlo
en coche (ver Figura 1).
Santa Ana es un pueblo arquetipo. Dicen que tiene
unos 5.000 habitantes, pero es difcil saberlo.
Llegamos all por primera vez el 27 de diciembre
de 2011. No fue demasiado sorprendente para
m encontrarme con carreteras sin asfaltar y
que muchas de las construcciones estuvieran
en ese estado de constantemente inacabadas,
con varillas de metal sobresaliendo del hormign.
Slo hay una plaza en todo el pueblo. El
ayuntamiento, la escuela, la iglesia y los dos
nicos cafs con Internet estn ubicados all. La
Iglesia ha sido reformada con el esfuerzo una
fundacin creada por Rodolfo Morales, y aqu cito
textualmente lo que pone en la pgina web que
aloja el proyecto que me trajo a Mxico:
El maestro pintor, Rodolfo Morales, vio Zegache
como una ciudad de un valor incalculable.
Dedic la ltima parte de su vida a recuperar y
restaurar su iglesia. Sin embargo, l nunca vio
completadas todas las ideas que motivaban su
visin filantrpica: preservar su herencia artstica y
revivir las vocaciones ms antiguas de la regin.
Para reformar la Iglesia se cre un taller donde
se ense a un grupo de personas del pueblo la
profesin de la carpintera. Gracias a la generosidad a ser capaz de hacer cinco rplicas idnticas de Figura 2.
de la Fundacin Alfredo Harp Hel, la Fundacin un diseo hecho por el artista invitado y venderlas Vista general del taller de
Rockefeller, La Curtidura y al Sr. y la Sra. Sandretto, a un precio establecido. Estas piezas de edicin Zegache.
los lugareos fueron capaces de continuar su trabajo limitada tiene una doble funcin: por supuesto,
a lo largo de una dcada. Se ensearon unos a otros no slo una pequea fuente de ingresos, sino
el arte de la carpintera y tambin la restauracin que tambin dejan saber al mundo como es su
de cualquier tipo de madera. En la Figura 2 se taller, la ciudad y la gente que vive aqu. Echad
muestra el taller de trabajo. una ojeada a los espejos de la Figura 3. Este
Hoy da continan activos restaurando las iglesias
vecinas as como la iconografa religiosa de
cualquier parte de la regin. Su taller est repleto
de manos talladas a mano, imgenes de Cristo
y espejos, muchsimos espejos.
Durante bastante tiempo, la produccin de
espejos ha sido su primera fuente de ingresos
adems de la restauracin. Han invitado a artistas
de todas partes del mundo a participar en cortos
programas de residencia donde aprenden a
conocer la ciudad, el taller y sus espejos. Existe Figura 3.
un tipo tradicional de espejo que los artistas Espejos producidos en
quieren copiar. La idea es que el taller llegue Zegache.

www.elektor-magazine.es | junio 2013 | 35


Proyectos

condiciones, as que haba preparado mi equipaje


adecuadamente: adems de mi PC, traje un
soldador, ocho kits de inicio Arduino, algunos
sensores, algunas shieds de prototipos, un
lote de altavoces con cono de papel, un par de
PenDrives USB y CDs con los programas que
crea necesarios (no haba posibilidad de intentar
descargar nada en los cafs locales con Internet).
Durante nuestra primera visita me hice un mapa
de las tiendas de electrnica locales en Oaxaca,
la capital de la regin, a una hora de coche de
Zegache, y ya tena una idea clara de lo que poda
y no poda conseguir all: pulsadores, cable, LEDs
o bateras no iban a ser un problema.
Trajimos un puado de hojas grandes de papel,
ya que nos disponamos de ninguna pizarra o
proyector para hacer funcionar el taller como
Figura 4. fue mi primer contacto con la ciudad: condujimos habitualmente lo hacemos; adems de algunos
Vista del improvisado taller hasta all, empleamos un par de horas visitando lpices. As pues, el taller Arduino qued instalado
Arduino en el taller de el taller e intent imaginarme cmo sera hacer tal y como se muestra en la Figura 4.
Zegache. all un taller donde poder ensearles algo sobre Los participantes estaban agrupados en equipos de
Arduino: disponan de un poco de electricidad, tres y comenzamos a ensear las ideas bsicas de
no haba tiendas en un radio de 25 millas, no un banco de trabajo tpico Arduino. Cada equipo
haba conexin local a Internet y tan slo haba (cinco en total) tena su propio ordenador, su kit de
un par de ordenadores personales. inicio y todos los programas que podran necesitar.
Empleamos una semana en hablar sobre
Experiencia #2: ensear lo que sabes la electrnica bsica: entradas y salidas
Era febrero de 2012 cuando hicimos nuestra digitales, conversin analgico/digital, qu es
segunda visita a Zegache. Ya conocamos las la programacin o qu es un IDE Un da vi a
una chica que pasaba su tiempo copiando y
pegando, usando las teclas rpidas (Ctrl+C,
Ctrl+V). Nunca pens que esto podra ser una
experiencia tan fascinante, pero lo era. Imaginad
que cogis algo de un sitio y que puede ser copiado
mgicamente desde un sitio al siguiente! Creo que,
a veces, olvidamos lo mgica que la electrnica
digital puede ser, haciendo que las cosas tiles
sean comparables a algo como ser un mago.
Despus de estar tres das hablando de bits y bytes,
cambiamos al proceso de construir cosas. Hicimos
un proceso de crear ideas donde invitamos a la
gente de la ciudad a inventar sus propios espejos
interactivos, con tan slo aadir sonidos y LEDs
a los mismos. La experiencia de las dos semanas
restantes la dedicamos a construir cajas de madera,
tallndolas para que fuesen bonitas, pintndolas
a mano, soldando los LEDs y programando las
distintas interacciones. Todo el mundo estaba
ocupado, como podemos ver en la Figura 5.
Figura 5. Fue una experiencia reveladora por varios motivos:
Proceso de construccin
de espejos y juguetes 1.la gente de aqu est acostumbrada a colaborar
interactivos en Zegache. en cualquier sentido, sin importarles si ya

36 | junio 2013 | www.elektor-magazine.es


Arduino en Mxico

Figura 6.
Proyectos hechos durante
nuestro primer taller.

estn trabajando en su propio proyecto. Un Espejo Mgico que crea secuencias de luz y
Siempre encuentran tiempo para ayudar a sonido presionando diferentes botones.
los otros. Ni que decir tiene que los cinco U na Jukebox (caja de msica) que aade
proyectos se acabaron en el espacio de tiempo instrumentos a un fondo de sonido.
lmite que habamos establecido. Una Bandeja donde hacer juegos con bebidas
2.Nunca se trabajaba demasiado tiempo: los das (sin comentarios)
de trabajo duraban hasta las seis de la tarde, Un Espejo Cotilla que te hace cumplidos cuando
hora en que la gente se marchaba a casa a pasas delante de l.
cuidar a sus familias. Adems, la iglesia cerr Un joyero que reproduce diferentes melodas
TODAS sus instalaciones, de manera que todo y luces cada vez que lo abres.
el mundo tena algo que hacer.
3.Reciclbamos todo. Seguro que habis odo que Experiencia #3: aprender todo lo que
usando herramientas digitales como cortadores puedas
lser conseguimos que la gente sea ms eficiente Ya lo he mencionado antes, pero esta completa
con los materiales bien, para los proyectos que experiencia forma parte de un proyecto de la
hemos hecho en este taller, no hemos comprado Comunidad Europea de las Artes, llamado Euroaxca,
ni un solo trozo de madera. Si necesitaban donde diferentes artistas artesanos de ambos lados
un trozo de madera de unos 40 cm de largo, del Atlntico colaboran y comparten experiencias de
pegaban dos trozos de 20 cm y conseguan hacer diferentes campos. Como parte de este proyecto,
una nueva pieza del tamao que deseaban. an tena en mi agenda una segunda experiencia
4.No slo aprendieron electrnica bsica, sino y, considerando los buenos resultados que consegu
tambin a soldar y a montar cosas a mano. en la primera, estaba un poco indeciso sobre cmo
Todos los proyectos consiguieron funcionar y afrontar la siguiente fase del proyecto.
pude comprobar, un ao despus, que seguan En mi opinin, debera ser posible que el
funcionando sin problemas durante mucho tiempo. carpintero de Zegache aprender las bases de
la construccin de juguetes interactivos y que
Nuestro primer taller acab con una lista de los los replicasen de la misma manera en que lo
proyectos hechos aqu (ver Figura 6): haban hecho con los espejos. Y, despus de

www.elektor-magazine.es | junio 2013 | 37


Proyectos

Tambin dijo que un pjaro podra ser algo


acertado. As que decid intentarlo: vamos a hacer
un pjaro robot (les dije a mis compaeros de
equipo cuando estbamos dejando Suecia en
direccin a Mxico, exactamente un ao despus
de haber vuelto de nuestro primer viaje.
No han cambiado muchas cosas en Zegache o
en el taller. Algunos se han ido, algunas caras
nuevas En la plaza han construido una enorme
estructura para proporcionar sombra. Tambin han
aadido dos porteras para que los nios jugasen
al ftbol (podis imaginar el calor que hace all
durante el da) y haban descubierto una manera
de tener un tipo de Internet en el taller: alguien
de la ciudad consigui una conexin DSL (por
alguna razn no est permitido que todo el mundo
Figura 7. algn tiempo, ser capaz de hacer sus propias
Piezas de un pjaro robot modificaciones y trabajos originales.
hechas a mano. Pero este objetivo ya estaba cubierto. Vimos que
Listado 1.
era posible llevar a la gente un nivel operativo Programa de trabajo de un pjaro robot
de electrnica, despus de tan slo dos semanas //*
de trabajo dedicado a construir sus propios * Zegache Robot
proyectos. As pues, la cuestin para m era: *
qu hacer a continuacin? * (c) 2013 D. Cuartielles
*/
Figura 8. La respuesta vino de la coordinadora del proyecto
Los elementos e que va en de la UE. Ella sugiri que mirsemos la posibilidad
#include <Servo.h>
el interior el pjaro robot. de hacer algn tipo de personajes animados.
Servo myservo;

int sensorPin = 0;
int speakerPin = 8;
int servoPin = 9;
int val;

void setup()
{
myservo.attach(servoPin);
pinMode(speakerPin, OUTPUT);
}

void loop()
{
val = analogRead(sensorPin);

if ( val < 250 && val > 50) {


myservo.write(50);
tone(speakerPin, val);
delay(200);
myservo.write(100);
noTone(speakerPin);
delay(100);
myservo.write(120);
tone(speakerPin, val);
delay(200);
myservo.write(0);
noTone(speakerPin);
delay(200);
}
}

38 | junio 2013 | www.elektor-magazine.es


Arduino en Mxico

la tenga) y la comparti con todos a travs de


diferentes repetidores wifi colocados a lo largo
de toda la ciudad. Tendremos suerte si podemos
leer el correo en dos ordenadores al mismo tiempo.
La interaccin en este caso era muy sencilla.
Me acerqu a alguno de los hombres del taller
y les habl sobre hacer unos pjaros robots.
Abrieron sus bolsas de trucos y comenzaron
a tallar diferentes tipos de pjaros que podan
mover las alas, la cola, abrir sus picos o sacudir
la cabeza. En la Figura 7 se muestran las piezas
artesanas. Nos llev dos das hacer el primer
pjaro, despus de esto, los otros tres pjaros
se hicieron en muy poco tiempo.
Cuando comenzamos con el programa y el
circuito todo era bastante sencillo. En la Figura
8 se muestran las distintas partes de forma
esquemtica. Todos los pjaros tienen un sencillo
micro-servomotor que empuja un muelle para
que muevan las distintas partes del pjaro a
la vez. Sobre todo esto, hay un altavoz que
reproduce algunos sonidos bsicos. Y un sensor
de infrarrojos detecta lo lejos que est la gente
del pjaro. La idea es que el pjaro se parezca
a una escultura de madera (Figura 9) hasta
que alguien est cerca de l. En ese momento,
se produce un sencillo mtodo de interaccin:
moviendo nuestra mano delante del sensor se Figura 9.
generan diferentes tonos. El pjaro con respuesta
Echad un vistazo al cdigo del Listado 1 y veris automtica terminado.
lo sencillo que puede ser hacer nuestro propio
pjaro robot. Por supuesto, hay mucho espacio
donde mejorar en lo referente a la produccin de
sonido, pero he tenido que hacer algo que fuese Referencias
sencillo para que la gente de Zegache pueda [1] Proyecto de taller de Zegache: http://proyec-
cambiarlo por ellos mismos. Estamos planificando tozegache.com/index_en.php
que, para un prximo viaje, nos concentraremos
[2] Proyecto Euroaxaca EU: http://euroaxaca.org/
en hacer juguetes con mejores sonidos, pero esto
es parte de una nueva historia.

Palabras finales
La electrnica puede ser un proceso que no
solamente te ensea cmo funcionan las cosas;
tambin es un vehculo para conocer el mundo
a tu alrededor. Tener una mente abierta puede Agradecimientos
ayudarnos y mostrarnos cmo hacer proyectos
Gracias a Geska y a Robert por realizar
interesantes con tan slo trabajar junto a la gente
las fotos, que comenzaron el proyecto
que te rodea en todo el mundo. Coge tu placa
Euroaxaca y me invitaron amablemente a
Arduino, tu mochila de trucos y habla con tus
unirme. Tambin quiero dar las gracias al
amigos y vecinos. Anmales a hacer juguetes y
pueblo de Zegache por su hospitalidad y
objetos interactivos.
recordarme que hay muchos ms objetos
Recordad: Compartir es ser solidario!
electrnicos adems de los bytes.
(120751)

www.elektor-magazine.es | junio 2013 | 39


Magazine

El Triunfo de
la Robtica Educativa
Semana de la Robtica
en la Universidad de Alcal 2013

Eduardo Gallego Desde el ao 2000, gracias al alto grado de implicacin de su Departamento


(Espaa)
de Electrnica, la Universidad de Alcal de Henares es un referente nacional e
internacional en todo tipo actividades relacionadas con la robtica para entusiastas
y universitarios. Desde el ao 2008, todo este conjunto de actividades se agrupan
dentro de la llamada Semana de la Robtica donde conviven las competiciones de
robots con charlas, conferencias, presentaciones, talleres y demostraciones.

Ms all de las clsicas pruebas, competiciones un alto grado de aceptacin por parte de los
y de una importante sucesin de interesantes participantes.
charlas, conferencias y talleres, este ao en En los ltimos aos, se ha hecho patente la pre-
el que Elektor ha colaborado como patrocina- sencia de la Asociacin de Robtica Educativa
dor la Semana de la Robtica [1] ha contado Complubot como colaborador y co-organizador de
con algunas novedades que, para satisfaccin este evento, en el que han cobrado gran relevan-
de los organizadores, han resultado un xito con cia las actividades relacionadas con la robtica y

40 | junio 2013 | www.elektor-magazine.es


Semana de la Robtica

la educacin, especialmente las orientadas a los


estudiantes de primaria y secundaria.
La primera de las novedades de esta edicin ha
sido que la Semana de la Robtica ha adquirido
una dimensin real, desarrollando una frentica
actividad ininterrumpida durante los siete das
de la semana, fin de semana incluido. Pero hubo
muchas ms

PrinterParty
Las impresoras en 3D estn experimentando un
crecimiento sin precedentes gracias a proyectos
como CloneWars [2], que permiten replicar estas
mquinas de forma sencilla y accesible.
Al igual que las tcnicas de prototipos rpido
para circuitos electrnicos, o los simuladores para
nuestros programas, la impresin de elementos
en 3D supone un gran avance de especial inters
para la tecnologa robtica, ya que nos permite
disear y obtener resultados fsicos en un breve
espacio de tiempo. Con este tipo de mquinas plubot en forma de robot imprimible bajo el
se pueden disear e imprimir fcilmente piezas nombre de CB-2 [4], una sencilla plataforma
que pueden servir como simples modelos o como educativa de bajo coste, que permite construir
elementos funcionales. un robot basado en una placa procesadora
En la PrinterParty de la Semana de la Rob- Arduino con un par de servos de RC modifica-
tica de la Universidad de Alcal se reunieron dos para rotacin continua y unos pocos sen-
ms de 30 impresoras, procedentes mayorita- sores y componentes electrnicos. La totalidad
riamente de diseos open. Todas ellas trabaja- de los elementos estructurales son piezas de
ron de forma conjunta en la fabricacin de las plstico fabricadas mediante impresin en 3D.
piezas necesarias para construir una serie de El departamento de Electrnica de la UAH pro-
pequeos robots, que posteriormente se utili- porcion de forma totalmente gratuita todo el
zaron en otros talleres y actividades dentro de material necesario para que cada uno de los
la Semana de la Robtica. equipos participantes llevara a cabo el montaje
de su propio robot.
El proyecto TuBot La primera parte de este proyecto se desarroll a
El proyecto TuBot naci como fruto de la cola- lo largo del sbado. Se formaron dos grupos de
boracin entre el Departamento de Electrnica alumnos compuestos por 12 equipos cada uno
de la Universidad de Alcal (UAH) y la Asocia- de ellos. Cada grupo, dirigido por un monitor de
cin de Robtica Educativa Complubot [3] con Complubot, con la colaboracin de profesores y
el objetivo de acercar la robtica educativa a un voluntarios de la UAH, recibi una jornada com-
grupo de estudiantes de secundaria tan grande pleta de formacin en robtica. Al terminar, todos
como fuera posible. Para hacerlo posible, se han los equipos consiguieron su robot (ms o menos
unido la capacidad organizativa del Departamento terminado) y adquirieron nuevos conocimientos
de Electrnica de UAH y los ms de 10 aos de y un montn de ideas.
experiencia de Complubot en la formacin de Cabe destacar que Nerea e Ivn, los monitores
estudiantes en este campo. de Complubot al cargo de estos talleres, a pesar
De entre las ms de 70 solicitudes de ins- de su juventud 20 y 18 aos respectivamente
cripcin, fueron seleccionados 24 centros de cuentan con una larga experiencia en el mundo
enseanza de Gerona, Albacete, Guadalajara de robtica, acumulando cerca de 50 premios
y Madrid, un total de 48 alumnos en equipos internacionales y, entre ellos, cuatro campeo-
de dos estudiantes. natos del mundo consecutivos de Socer de la
El material didctico necesario para este pro- RoboCupJunior desde 2008 al 2011.
yecto fue especialmente desarrollado por Com- La segunda parte de este proyecto se traslad

www.elektor-magazine.es | junio 2013 | 41


Magazine

al mircoles siguiente para que los estudian- Durante la Semana de la Robtica tuvo lugar la
tes dispusieran de tiempo para prepararlo. La fase nacional de seleccin en la modalidad Res-
actividad debera ser necesariamente sencilla, cue que cont con la participacin de 7 equipos
pero al tiempo tendra que permitir explorar en la categora de primaria, hasta los 14 aos,
distintos caminos y posibilidades a los partici- y 5 en la de secundaria, hasta los 19.
pantes. Un torneo de mini-sumo reuna estas Esta prueba consiste en disear, construir y pro-
cualidades. gramar un robot que sea capaz de desenvolverse
Dada la distancia a sus lugares de residencia, por un escenario tridimensional realizando una
solo 19 de los 24 equipos pudieron participar serie de tareas. El robot ha de superar obstculos,
en este torneo. A pesar de disponer de solo pendientes e irregularidades cuya dificultad se
cuatro das y del bajo nivel de conocimiento incrementa a medida que avanza por la pista. El
robtico de partida (nulo en algunos casos), camino est marcado por una lnea negra sobre
casi todos los equipos consiguieron un mnimo fondo blanco que en ocasiones desaparece de
nivel de movilidad del robot, e incluso algunos forma parcial o total. Al igual que en el resto
de ellos implementaron sistemas de localizacin de las pruebas de la RoboCupJunior, los partici-
del adversario. pantes han de acreditar la autora de su trabajo
Una de las participantes, una joven estudiante ante un jurado de expertos en robtica. Los pro-
de 4 de ESO, comentaba tras la competicin: fesores y mentores no pueden trabajar directa-
Desde nia tena muy claro que carrera quera mente en el proyecto. Adems, se trabaja con
estudiar y nadie era capaz de hacerme cambiar robots autnomos que solo reciben indicaciones
de opinin. Hoy he visto que estaba equivocada de sus sensores y que actan en funcin de la
y que en realidad quiero estudiar Ingeniera de inteligencia artificial implementada mediante su
Telecomunicacin. programacin.
La participacin de cada equipo se completa con
El campeonato nacional de la un poster en el que deben mostrar los aspectos
RoboCupJunior ms destacados de su proyecto con el objetivo
La RoboCupJunior es la mayor competicin mun- de comunicar y transferir esta informacin al
dial robots en arquitectura abierta (cualquier resto de los participantes.
hardware/software) para jvenes estudiantes La puntuacin final se obtiene como suma de
de hasta 19 aos y consta de tres modalidades: los resultados obtenidos en cada uno de los tres
Socer, Resue y Dance. aspectos: competicin, entrevista y poster.

42 | junio 2013 | www.elektor-magazine.es


Semana de la Robtica

La Gynkana de Robtica Educativa


Otra de las novedades de esta edicin, quiz
la ms prometedora desde el punto de vista
didctico, fue la Gymkana de Robtica Educa-
tiva organizada por Complubot en la maana
del domingo que cont con la participacin 36
jvenes estudiantes de entre 6 y 12 aos. Esta
actividad estuvo compuesta por un conjunto de
pruebas que los participantes fueron realizando
de forma secuencial en grupos de seis chavales.
Las pruebas trataban de ofrecer actividades ldi-
cas y educativas que de alguna forma estuvieran
relacionadas con la tecnologa robtica o que per-
mitieran el desarrollo de habilidades necesarias
para desempearlas.

Puzzles electrnicos con Littel Bits. Una


divertida forma de iniciarse en el mundo de
los montajes y circuitos electrnicos sin el ms
mnimo peligro.
Robots y robtica. Una actividad multimedia vidades a las exigencias de los nuevos tiempos,
donde poder aprender a diferenciar un robot ofreciendo un amplio nmero de ellas para los
de otros sistemas (algo no trivial hoy en da ms jvenes. Todo un acierto que se ha visto
donde el trmino robot se aplica a cualquier reflejado en el alto grado de participacin y
cosa), as como tener la oportunidad de inte- satisfaccin de los participantes. Todo un reto
raccionar con algunos de ellos a superar en futuras ediciones!
Crea tu propia Plastilina conductora. Una (130176)
divertida actividad donde poder cocinar una
plastilina con propiedades conductoras de
forma que se pueda realizar pequeos circui-
tos con ella [5].
Fomento del pensamiento lgico. Conjunto
de juegos destinados a fomentar las capaci-
dades bsicas para el desarrollo del mtodo Referencias
cientfico: observacin, identificacin, elabo-
racin de hiptesis. [1] Semana de la Robtica UAH: www.alcabot.
Impresin de objetos en 3D. Una primera com
aproximacin al mundo del diseo e impresin [2] Proyecto Clone Wars: www.reprap.org/wiki/
de objetos en 3D. Proyecto_Clone_Wars
Control de motores y lectura de senso- [3] Asociacin de Robtica Educativa
res mediante Scratch. Usando como base Complubot: www.complubot.org
el popular entorno de programacin por blo- [4] Robot CB2: complubot.educa.madrid.org/
ques conocido como Scratch [6], una sencilla pre/pre.php
y potente herramienta que permite la realiza- [5] Plastilina conductora: www.youtube.com/
cin de actividades interactivas y multimedia, watch?v=CW3RjOU24mM
tales como controlar y leer sensores externos [6] Scratch: scratch.mit.edu
un primer paso en el camino de la robtica
educativa.

Este ao la Semana de la Robtica de la UAH


ha conseguido mantener el alto nivel tecnol-
gico del que hizo gala en ediciones anteriores,
actualizando al mismo tiempo su oferta de acti-

www.elektor-magazine.es | junio 2013 | 43


Proyectos

Controlando nuestra propia


electrnica fcilmente
Conectar placas al PC mediante UART y SPI

Jens Nickel Con un protocolo basado en texto y una conexin con un PC podemos controlar
(Editor de Elektor)
nuestra propia electrnica desde un programa terminal. Con la Librera de
Firmware Embebido puede programarse rpidamente el software adecuado para
ello, independientemente de si queremos utilizar el UART del controlador u otro
puerto. El protocolo presentado aqu resulta perfecto para realizar pruebas y
desarrollos posteriores.

En la ltima edicin presentamos la Librera de archivo especfico para cada placa y otro para
Firmware Embebido (EFL, Embedded Firmware cada controlador.
Library) en C [1]. Tanto principiantes como usua- Sin embargo, la modularidad de la librera va ms
rios avanzados pueden obtener rpidamente el all. Pueden programarse libreras de protocolo
cdigo para su proyecto embebido, que es inde- independientemente del canal de transmisin uti-
pendiente del hardware utilizado, y puede por- lizado. Tampoco importa si los comandos y datos
tarse de una placa a otra, y de controlador a circulan por ejemplo a travs del UART/RS232/
controlador. Esto se consigue con una capa de RS485 o TCP/IP/Ethernet. Cambiar el canal de
abstraccin de hardware, que consiste en un transmisin en la aplicacin es cuestin de unas

44 | junio 2013 | www.elektor-magazine.es


librera de firmware embebido

pocas lneas de cdigo. En este artculo mos-


tramos un protocolo til para tareas de control
sencillas, as como para propsitos de desarrollo.

Mini-protocolo
En el desarrollo de cualquier cdigo, algunas prue-
bas sencillas como iluminar un LED o muestrear
una entrada digital pueden ser de gran utilidad.
A menudo las placas de desarrollo no incluyen
ms que algunos pulsadores para realizar prue-
bas. Aqu veremos cmo controlar la placa desde
un PC, por ejemplo mediante el puerto serie. Si
nos limitamos a los caracteres ASCII, entonces
podemos enviar comandos cmodamente desde
un programa terminal; en tal caso, no es nece-
sario un software de PC propio.
Con nuestro mini-protocolo (llamado BlockPro-
tocol) pueden ponerse los pines a nivel alto
o bajo desde el terminal en el PC. Si controla-
mos un pin con un LED conectado, veremos el
resultado directamente, si no es el caso, basta
con conectar un multmetro o un osciloscopio.
Tambin puede tratarse de sencillos comandos
para conocer el estado de las entradas digitales
y el valor del ADC de las entradas analgicas {1}
SENSOR [3] RS485
(ver el cuadro BlockProtocol). Si queremos 3.0/RXD [4]
ADC/2.0
(+0) (4) {0}
tambin podemos ampliar el cdigo del corres- [5] ADC/2.1 3.1/TXD
(+1) (5)
3.2
pondiente mdulo de la librera y adaptarlo a {2} (+2) (6)
ADC/2.2 (10)
3.3
SENSOR ADC/2.3 (11)
nuestros propios propsitos. Quiz a alguno (+3) (7)
ADC/SDA/2.4
(+4) (8)
de los lectores le sirvan de inspiracin los pro- ADC/SCL/2.5 C (0) [0]
(+5) (9)
tocolos de control de Andreas Eppinger [2] y 3.4 (1)
MOSI/1.3
Uwe Altenburg [3], ya que ofrecen multitud de MISO/1.4
3.5
3.6
funciones ms. SCK/1.5
3.7
(2) [2]

[1] (3)
Mapa, bloques y pines de la placa (12) (13) (14) (15)
Especialmente para propsitos de desarrollo con
120668 - 16
la EFL, el BlockProtocol dispone del comando x.
La placa enva de este modo un volcado de las
tablas de la EFL al PC. stas son utilizadas por
la capa de hardware para determinar los pines llada sobre el funcionamiento interno de la EFL se Figura 1.
de controlador y registros correspondientes. Los encuentra resumida en un documento adicional, Salida de tablas EFL en un
valores utilizados son especficos de la placa y que puede descargarse en [1]. programa terminal. A la
cualquier otra placa de expansin conectada. La izquierda puede verse el
mapa con las caractersticas
captura de pantalla de la figura1 muestra lo Controlando mediante el UART
del controlador utilizadas
que aparece en el programa terminal utilizando Queremos ilustrar con un ejemplo lo fcil que
(nmeros rojos en el
las placas mostradas ms abajo. A la izquierda resulta utilizar el protocolo en nuestra propia diagrama de bloques de la
podemos ver el mapa (map), con el cual se ini- aplicacin del controlador. Para ello nos servi- placa), en el centro la tabla
cializan mdulos del controlador como el UART y mos de uno de los nodos experimentales de la de bloques (nmeros azules)
el ADC. En el centro estn los bloques de los peri- conocida serie ElektorBus, una placa compacta y a la derecha los pines de
fricos y a la derecha un listado de los pines de la que incorpora un ATmega328. Como siempre, el la placa (nmeros verdes).
placa. Se trata de valiosa informacin para todo nodo experimental funciona a travs del RS485,
el que quiera programar o adaptar un archivo mediante un conversor USB/RS485 y ste a su
EFL para una nueva placa. La informacin deta- vez conectado a un PC (figura2). En lugar del

www.elektor-magazine.es | junio 2013 | 45


Proyectos

entrega, ya que utilizamos la misma placa y el


mismo controlador. En el directorio Libraries
encontraremos los archivos UARTInterface.h/.c.
stos forman la librera para el puerto UART de
la placa, en este caso a modo nuestro driver
RS485 (capa fsica de la comunicacin). Luego
tenemos un mdulo para el protocolo utilizado
(BlockProtocolEFL.c/.h). Ambos mdulos de
librera utilizan un interfaz de cdigo espec-
fico (el llamado interfaz de software), que en
la prctica para nosotros es igual.

Cdigo ms corto
En el cdigo real de la aplicacin (incluido como
siempre en el archivo principal) hemos de inte-
grar las libreras mediante:

#include UARTInterfaceEFL.h
#include BlockProtocolEFL.h

Figura 2. protocolo del ElektorBus, aqu utilizaremos el La funcin principal se disea igual que en cada
Mediante UART/RS485 y BlockProtocol basado en texto. proyecto de la EFL, echemos un vistazo al lis-
un sencillo protocolo de El firmware correspondiente para el controla- tado1. En la funcin Application-Setup, a la
texto en ASCII podemos dor puede descargarse en [4], aparte la apli- cual se llama en el comienzo de la aplicacin,
controlar nuestra placa de
cacin se incluye en el cdigo de la EFL [5] se inicializan las libreras:
microcontrolador desde un
(en el documento adicional podemos echar un
programa terminal.
vistazo a este archivo). Haciendo doble clic en UARTInterface_LibrarySetup();
ExperimentalUART.atsln se abrir el proyecto UARTInterface_SetBaudrate(0, 38400);
en Atmel Studio, vase la captura de panta- BlockProtocol_LibrarySetu-
lla (figura3). En la parte derecha podemos p(UARTInterface_Send, 0,
ver los archivos que se incluyen. Los archivos UARTInterface_GetRingbuffer(0));
Controller.h/.c y Board.h/c forman la capa de
hardware. Se trata del mismo cdigo que en En la segunda lnea fijamos la tasa de trans-
el software de ejemplo de la EFL de la anterior ferencia del bloque UARTInterface #0 (al
cual est conectado un driver RS485) a
38400baudios.
Listado: La tercera lnea necesita una explicacin ms
implementando una aplicacin con la EFL. detallada. Estamos informando a la librera Bloc-
kProtocol de que debe utilizar la funcin UARTIn-
int main(void)
terface_Send cuando haya que enviar datos desde
{
la placa. El segundo parmetro es el nmero de
Controller_Init();
bloques de puerto UART utilizados; en nuestro
Board_Init();
caso, con el nodo experimental slo hacemos
Extension_Init(); uso de uno. El tercer parmetro es un puntero al
buffer circular utilizado, que almacena los bytes
ApplicationSetup(); recibidos. El puntero contiene el valor de retorno
de la funcin UARTInterface_GetRingbuffer(0), la
while(1) cual se implementa en la librera UARTInterface.
{
ApplicationLoop(); En la funcin ApplicationLoop, a la cual se llama
} regularmente, slo necesitamos una lnea:
};
BlockProtocol_Engine();

46 | junio 2013 | www.elektor-magazine.es


librera de firmware embebido

sta es la funcin principal de la librera Bloc-


kProtocol. Comprueba si han llegado caracteres
desde el PC al buffer circular. Al recibirse un
<CR> (ASCII13), se interpreta como el final
de un comando. La instruccin completa se eje-
cuta, y se genera una respuesta, la cual puede
ser desde OK, hasta un valor de nivel alto o
bajo, as como una salida de variables de la EFL
a modo de tabla.

Probemos...
Tras compilar el programa y cargarlo en la
placa, veremos el resultado con un programa
terminal como por ejemplo HTerm [6]. Primero
fijamos un puerto COM y la tasa de transferen-
cia. En la parte correspondiente a la entrada del
programa (Input Control) an hemos de defi-
nir que tras pulsar la tecla intro, ha de incluirse
<CR> despus de los caracteres introducidos
antes de enviar la cadena completa (vase la
figura4). Alto nivel Figura 3.
Sin embargo, utilizar directamente un pin de Cdigo para controlar
Empezamos con el nivel inferior, indicando puerto no es exactamente la filosofa de la EFL. nuestro propio dispositivo
los pines de puerto del controlador. Segn el En cuanto queramos usar otra placa controladora electrnico mediante el
puerto UART.
esquema del nodo experimental [7], sabemos para nuestro propio sistema de control, habra
que el LED rojo de la placa est conectado en que volver a cambiar la cadena de salida en nues-
el pin PD4. PortD en los controladores AVR tro PC o software de Android.
corresponde con el PortIndex 3. De modo que Por ello, el mini-protocolo tambin es capaz de
Figura 4.
introducimos en el programa terminal: manejar el control mediante entradas y salidas
En el programa terminal
digitales independientemente de la configura- Hterm se especifica con un
p 3 4 + <ENTER> cin de hardware, igual que hicimos en la ante- <CR> que debe enviarse la
rior entrega con unas cuantas lneas de cdigo. cadena de caracteres.
Ahora el LED rojo se iluminar en la placa.

Con p 2 0 + o p 2 0 podemos, por ejem-


plo utilizar el pin PC0 como conector de expan-
sin. Si conectamos una placa de expansin,
por ejemplo nuestra placa con sensor y LEDs
de la anterior edicin, o la placa de rels de la
serie ElektorBus [8], ya tendremos un pequeo
dispositivo controlable desde el PC. En lugar de
un programa terminal tambin podemos utilizar
nuestro propio software de PC, basta con que
enve la cadena de caracteres p 2 0 + <CR>
a travs del puerto COM adecuado para con-
mutar el rel. O si queremos conectar un nodo
experimental a un smartphone mediante la placa
puente RS485/UART Andropod [9], en tal caso
podemos programar una pequea aplicacin en
Android. Como punto de partida se recomienda
utilizar el software de [10], reemplazando los
bytes del ElektorBus por los caracteres mencio-
nados ms arriba.

www.elektor-magazine.es | junio 2013 | 47


Proyectos

Con la cadena... Para conmutar un rel basta con:

L 0 1 + <CR> R 0 0 + <CR>

...encendemos el LED1 en el bloque LED #0 (en Puerto de 3 hilos


nuestra placa se trata del LED amarillo). El control mostrado da por hecho que tene-
Mediante... mos acceso a un UART del controlador desde
el exterior; por ejemplo con los pines RX/TX.
B 0 0 ? <CR> Es ms, hemos de disponer de un archivo de
control EFL completo, que aparte de las fun-
...comprobamos el estado del botn de test (but- ciones tpicas de I/O y ADC tambin disponga
ton0 del bloque de botones #0). de las del UART.
No obstante, si se trata de un controlador des-
conocido (como cuando queremos desarrollar un
BlockProtocol
archivo de control EFL que otros lectores puedan
Todos los comandos empiezan con un nico carcter, seguido de utilizar), conviene empezar por las funciones sen-
uno o dos nmeros del uno al diez. Con stos la EFL indica el pin cillas de I/O. Una vez hemos comenzado a estu-
correspondiente. El ltimo carcter determina la accin que debe diar la hoja de datos, y sabemos al menos leer y
llevarse a cabo. fijar el nivel de los pines, as como conectar tres
pines de GPIO con el exterior (algo muy comn
x
en la mayora de placas), entonces podemos estar
Salida de las tablas EFL del mapa, bloques y pines de la placa (ver
seguros de haber dado un gran paso. Entonces
documento adicional de la EFL [1])
la placa ya podr controlarse mediante el proto-
p x y +, p x y , p x y ?, p x y #, p x y * colo descrito arriba. Como canal de transmisin
Pin del controlador, puerto x, pin y: a nivel alto, a nivel bajo, lectura se utiliza un puerto de tres hilos, a modo de SPI
del nivel, transmitir el valor del ADC (en un pin del ADC), parpadeo por software. Una de las conexiones se utiliza
controlado por tiempo como reloj, otra para transferir bytes del master
(PC) al slave (placa). Y en la tercera lnea, en
b x +, b x , b x ?, b x #, b x * sentido contrario.
Pin de la placa con ndice x: alto, bajo, lectura, valor del ADC, parpadeo Segn las especificaciones SPI, el puerto de tres
hilos ofrece la posibilidad de que tanto el mas-
i x y +, i x y -, i x y ?, i x y #, i x y * ter como el slave inicien la comunicacin. Para
Pin en bloque con ndice x, posicin del pin y dentro del bloque: alto, ello, se pone a nivel alto la lnea de Out y se
bajo, lectura, valor del ADC, parpadeo espera hasta que la otra parte haga lo mismo
con su correspondiente lnea. Entonces se ini-
C x y +, C x y , C x y ?, C x y #, C x y *
ciar la comunicacin, en la cual segn el modo
Conector x, pin y: alto, bajo, lectura, valor del ADC, parpadeo
SPI el master fija el reloj y empiezan a circular
L x y +, L x y , L x y ?, L x y *
bytes en ambos sentidos. Cuando ya no hay que
Bloque de LEDs x, posicin del LED y: alto, bajo, lectura, valor del ADC,
enviar ms (datos), se transmite el cdigo de
parpadeo
stop <LF> = ASCII10. Cuando ambas partes
envan un 10, la comunicacin puede darse
R x y +, R x y , R x y ? por finalizada.
Bloque de rels x, posicin del rel y: alto, bajo, lectura, Lgicamente hemos reunido todo en un bonito
mdulo de librera EFL llamado ThreeWireInter-
Bxy? faceEFL. Ahora resulta bastante sencillo realizar
Bloque de botones x, posicin del botn y: lectura la comunicacin desde el puerto SPI por software
en lugar que desde el UART.
Axy#
Las lneas de cdigo en la funcin Application-Se-
Bloque de ADC x, posicin del pin del ADC y: transmisin del valor del
tup sern ahora:
ADC

ThreeWireInterface_LibrarySetup();
*
Finalizar parpadeo controlado por tiempo BlockProtocol_LibrarySetup(-

48 | junio 2013 | www.elektor-magazine.es


librera de firmware embebido

ThreeWireInterface_Send, 0,
ThreeWireInterface_GetRingbuffer(0));

Hemos informado a la librera BlockProtocol de


que los datos han de enviarse y recibirse a tra-
vs del puerto de 3 hilos (comparemos la lnea
con el cdigo de BlockProtocol_LibrarySetup de
ms arriba).

En la rutina Application-Loop slo necesitaremos


la instruccin:

ThreeWireInterface_Listen(0);

As se comprueba que cada una de las partes


responde con un nivel alto. Entonces se esta- Figura 5.
blece la comunicacin (en caso de que el canal de El acceso al Arduino Uno
transmisin sea el UART no necesitaremos esta se lleva a cabo mediante 3
hilos.
funcin de Listen, pues detecta una interrupcin
del controlador cuando se reciben caracteres y
se envan automticamente los bytes del buffer
circular). cular de alguno de los canales, la cual debe
cerrarse con <CR>. Si fuera el caso, la cadena
Nos ponemos en contacto con Arduino de caracteres se enva utilizando el canal de
Como placa de pruebas hemos optado por un transmisin correspondiente. Finalmente vuelve
Arduino Uno; el cdigo correspondiente puede a chequearse el buffer circular de dicho canal
encontrarse en el proyecto ArduinoUnoEFL [4][5]. de transmisin a ver si se reciben caracteres
Como pines GPIO-Pins, que nos darn acceso a entrantes.
la placa, se utilizan PB0, PB1 y PB2, disponibles Huelga decir que el mdulo de gateway tambin
en el conector Digital (de Digital8 a Digital10). ha sido programado para que funcione indepen-
Un pequeo cable de tres pines (por ejemplo: dientemente del canal de transmisin utilizado,
Conrad 741221) resulta muy prctico y cumple por lo que es flexible para utilizarlo en cualquier
su funcin (ver la figura5). otra aplicacin posible. La funcin OneToOneGa-
teway_LibrarySetup lee al mismo tiempo dos tri-
Obviamente ahora necesitamos conexin con pletes de parmetros que determinan qu canal
el PC, porque seguramente pocos de nosotros de transmisin ha de conectarse a travs del
dispongamos de un puerto de tres hilos en el gateway. En nuestro caso, la llamada a la fun-
ordenador J. Por ello, controlaremos nuestro cin ser:
pequeo nodo experimental con un gateway que
convierte los datos del canal de transmisin de OneToOneGateway_LibrarySetup(UARTInter-
tres cables a UART/RS485, y al revs. El fir- face_Send, 0, UARTInterface_GetRing-
mware necesario puede descargarse en [4] o [5], buffer(0), ThreeWireInterface_Send, 0,
y en el proyecto en Atmel Studio se encuentra ThreeWireInterface_GetRingbuffer(0));
en el directorio ExperimentalSPI.
La funcin Gateway dispone de su propio mdulo Ahora slo hay que conectar el cable al socket
de librera, llamado OneToOneGatewayEFL. de expansin del nodo experimental (pines PC0
Mediante la llamada... a PC2, vase la figura6) y volcar el archivo
hexadecimal en el controlador de dicho nodo.
OneToOneGateway_Engine(); Los pines utilizados para el puerto de 3 hilos pue-
den cambiarse incluso en ambas placas. El puerto
...dentro de la funcin Application-Loop se pre- de 3 hilos est formado por bloques perifricos en
gunta regularmente para comprobar si ha lle- cada una de las partes, y seguramente recorde-
gado alguna cadena de caracteres al buffer cir- mos que la asignacin de pines de estos bloques,

www.elektor-magazine.es | junio 2013 | 49


Proyectos

Figura 6. segn el controlador utilizado, est encapsulada Enlaces de Internet


El nodo experimental hace en el archivo correspondiente a cada placa. La [1] www.elektor.es/120668
de gateway entre el puerto configuracin del puerto de 3 hilos segn los
de 3 hilos y el UART/RS485. [2] www.elektor.es/100576
pines utilizados se lleva a cabo con la funcin
Board_Init en el archivo BoardEFL.c. [3] www.elektor.es/120296
[4] www.elektor.es/130154
Eureka! [5] www.elektor-labs.com/efl
En nuestro programa terminal, antes de cada
[6] www.der-hammer.info/terminal
comando introducimos una x. La placa Arduino
transmite ahora las variables EFL a travs del [7] www.elektor.es/110258
puerto de 3 hilos, a la velocidad establecida ante- [8] www.elektor.es/110428
riormente (en este caso a 9600 baudios). [9] www.elektor.es/110405
Con el comando...
[10] www.elektor.es/120097

C 0 13 + <CR>

...podemos poner el pin13 del puerto Digital a


nivel alto, y si hemos conectado un LED al Arduino
Uno veremos el resultado inmediatamente.
En la prxima edicin se incluir otro proyecto
EFL. Cualquier sugerencia o contribucin es bien
recibida, no dudes en escribir a redaktion@ele-
ktor.de.
La ltima versin del cdigo de la EFL puede
descargarse en la pgina de Elektor.LABS, en el
siguiente enlace [5].

(130154)

50 | junio 2013 | www.elektor-magazine.es


robots sanitarios

Robots sanitarios
El futuro de la sanidad
Tessel Renzenbrink
(redaccin Elektor TTF)

La segunda vez que me encontr con


Alice, ya poda ponerse de pie. Cuando
sonro, le devolv la sonrisa inconscien-
temente. Slo un momento despus me
di cuenta de estar emitiendo seales
no verbales a una entidad que no era
capaz de recibirlas. Esto dice bastante
sobre el robot Alice y sobre m. El robot
tiene una mmica facial tan sofisticada
que yo como animal social la responda
de forma involuntaria.
Johan Hoorn. (Foto: Waag Society CC BY 2.0)

El encuentro con Alice tuvo lugar en el labo- que son varios programas simuladores de este
ratorio del proyecto Services of Electro-mecha- tipo de capacidades. Luego tenemos la funciona-
nical Care Agencies (SELEMCA), hospedado en lidad; las cosas que puede hacer para alguien o
la Vrije Universiteit de Amsterdam [1]. Aqu se sea todas las posibilidades de accin que puede
investigan cmo los sistemas inteligentes como ofrecer a alguien. Todo esto junto es el sistema
los robots pueden interactuar con los usuarios I-Care y funciona en segundo plano. Finalmente
de forma ms humana. El problema social sobre hay un interfaz con el que el sistema I-Care se
el que se fundamenta este proyecto es la cre- manifiesta hacia el exterior.
ciente demanda de ms servicios sanitarios. A
consecuencia del envejecimiento de la poblacin, Mquinas con capacidades humanas
el nmero de gente necesitada, en comparacin Un ejemplo de cmo se est desarrollando esta
con la poblacin sanitaria activa, aumenta. Para estratificacin de forma prctica es la investiga-
que estos cuidados tambin se puedan ofrecer cin sobre componente emocional de razonar
a la gente en el futuro, se est trabajando en moralmente. El hombre experimenta a un robot
soluciones tecnolgicas que se ocupen de una que ejecuta perfectamente un cdigo tico como
parte de las tareas de cuidado. Y para hacer que un racionalista fro y por tanto amenazante. En
el trato con el sistema tecnolgico sanitario sea el artculo cientfico sobre Moral Copplia, en
tambin agradable para los usuarios, SELEMCA donde Johan colabor como co-autor, se aclara
ha desarrollado el sistema sanitario I-Care orien- esto con la ayuda del dilema de la Carretilla y el
tado al ciudadano. Puentecito [2].
Una carretilla sobre una va de tren se aproxima
Johan F. Hoorn (Dr. Litt., Dr. Sc.) es el investiga- a una velocidad peligrosa hacia cinco personas.
dor jefe y jefe de proyecto de SELEMCA que habla Cambiando la aguja de la va, la carretilla cambia
entusiasmado sobre el objetivo, los logros y los de direccin hacia otra persona. La eleccin del
obstculos del proyecto. El ncleo de SELEMCA agente moral es entrar en accin y salvar cinco
es la investigacin cientfica sobre la inteligen- vidas humanas a costa de slo una o esperar y
cia, emociones y creatividad. A su alrededor hay dejar que ocurran las cosas obteniendo cinco
cdigo mquina y comportamiento de mquina, muertos como consecuencia. En un segundo esce-

www.elektor-magazine.es | junio 2013 | 51


Tech The Future

nario el agente moral se encuentra en el puen- nativos, como coger una cuchara con comida
tecito junto a otra persona. En otra ocasin la y jugar al avioncito.
carretilla amenaza a cinco personas y esta vez
la eleccin es tirar una persona del puentecito Alice y DARwIn
hacia las vas para parar la carretilla. Finalmente hay una pantallita con la que el sis-
tema I-Care es visible en la parte exterior. En
realidad el interfaz, dice Johan, puede tomar
cualquier forma que puedas imaginar. Puede
ser un robot, un juguete, un mueco, un agente
virtual en una pantallita, pero detrs siempre
se ejecuta el mismo sistema. No hace falta que
tenga forma humana, pero s que se comporte
humanamente. Tambin una mquina de caf
puede funcionar como avatar del sistema I-Care.
Quizs el usuario piense que ha trabajado con
tres aparatos diferentes, pero en realidad slo
ha interactuado con un sistema I-Care con apa-
riencias diferentes. Despus de todo el signi-
ficado de Avatar es el de un dios encarnado
como Vishnu.
El robot Alice es un posible avatar donde se
manifiesta el sistema I-Care. A muchos usua-
rios les gustar comunicarse con el sistema
a travs de ella por sus expresiones faciales
humanas. Pero corporalmente Alice no se ha
Alice y DARwIn-OP Aunque en ambos casos actuar tiene como resul- desarrollado an lo suficiente, puede ponerse
(Foto: Waag Society CC BY 2.0) tado un ratio vida/muerte de 5:1, generalmente de pie pero casi no puede realizar ninguna
la gente opta por cambiar la va, pero tirar acti- accin. Su semejante DARwIn-OP (Dynamic
vamente a una persona de un puente ira dema- Anthropomorphic Robot with Intelligence
siado lejos. Eso es porque no calculan nicamente Open Platform) es mucho ms gil y puede
los principios ticos sino que tambin permiten realizar tareas fsicas.
que la emocin juegue un papel en el veredicto Pero, tal y como indica Johan, los robots no son
moral. En cambio un robot razonando puramente los nicos interfaces. En el laboratorio tambin se
de forma racional sacrificara esa nica persona est trabajando con una bicicleta interactiva. Los
en beneficio de la mayora. pacientes de Alzheimer no suelen ser fieles a su
A la gente no le gusta un robot que tira perso- terapia, cuando se sientan en su bicicleta esttica
nas de un puente. Por eso Johan y sus colegas para realizar los ejercicios fsicos que necesitan
desarrollaron un sistema que integra la inteli- se distraen enseguida y se bajan de la bici. Johan
gencia emocional en razonamiento moral. En y su equipo trabajan en un entorno virtual que
I-Care se incorpora este tipo de sistemas que haga que parezca que el paciente est yendo por
simulan capacidades humanas como afecto, la ciudad, y as se pueda retener su inters por
razonamiento moral y creatividad, y se mani- ms tiempo. Incluso quieren trabajar en que un
fiestan en la funcionalidad que ofrece al receptor paciente vaya en bicicleta de forma virtual acom-
sanitario. Si un paciente con una pierna rota paado de uno de sus parientes mediante una
no quiere comer, el robot reconoce su autono- conexin en lnea con, por ejemplo, un hijo que
ma y deja que el paciente tome la decisin. en realidad est yendo en bicicleta a su trabajo.
Pero con un paciente con Alzheimer con una As el paciente mantiene el contacto humano y
autonoma reducida el robot volver a ofrecer hace ejercicio fsico, pero no corre el riesgo de
la comida. Luego la creatividad tambin juega chocar con un autobs.
un papel. En lugar de colocar el plato repetidas En una pantallita que hay sobre el manillar se
veces delante del paciente, lo que probable- muestra al hijo como avatar. Haciendo que ste
mente slo llevara a una mayor resistencia, acte como el interfaz con I-Care el sistema se
el robot puede intentar utilizar mtodos alter- torna ms humano. En todas sus encarnacio-

52 | junio 2013 | www.elektor-magazine.es


robots sanitarios

nes el sistema I-Care cuida del paciente colaboracin. Alice tiene una expresin
durante el da sin que l sea necesaria- facial bien desarrollada, pero el cuerpo de
mente consciente de ello. este robot es bastante limitado. Si miras a
DARwIn el trabajo del cuerpo es bastante
El futuro se hace hoy bueno, pero slo tiene algunas expresiones
I-Care se tiene que construir como una pla- faciales. A las mquinas DARPA (Defense
taforma abierta y modular. Johan: Todo lo Advanced Research Projects Agency, EEUU)
que desarrollamos es abierto y est disponi- puedes darle una patada que no se caen,
ble para todo el mundo. Nosotros ofrecemos se recuperan y siguen andando, pero nunca
una estructura, una abstraccin y lo que han odo hablar de la creatividad. Hay todo
cuelgues ah es t problema. Esto es vlido tipo de piezas y fragmentos que en si fun-
no slo para usuarios sino tambin para cionan correctamente, pero una plataforma
desarrolladores. Si la industria quiere, se integrada an no existe. En realidad toda
puede ofrecer un mdulo propio y proteger esta gente debera sentarse junta e integrar
esa parte para sacarle beneficios. Utilizo todo lo que sea posible. Te sorprenderas
mucho la idea de que este laboratorio es en de lo que obtiene de esto, te quedaras con
realidad una catedral y hay que conectar a la boca abierta.
su alrededor todas esas pequeas tiendas (130039-I)
que suelen rodear las viejas catedrales para
vender el mensaje religioso. En este caso SELEMCA es parte del programa Creative
nos gustara que los diseadores de inter- Industry Scientific Programme (CRISP),
faces, compaas de sensores robticos y financiado por el ministerio Holands de
compaas electromecnicas estuvieran ubi- Educacin, Cultura y Ciencia [3].
cados alrededor de este laboratorio. Es casi
literal, de modo que hubiese relaciones uno Agradecemos a la Waag Society por la
a uno diariamente y que el conocimiento organizacin del PhDO Trust me, Im
que hay surgiese sobre I-Care pudiera ser a Robot y por poner las fotos a nuestra
realmente utilizado por las compaas y la disposicin [4].
industria.
Y eso es lo que duele, que en el mundo
de la empresa no hay movimiento. Algo
extrao, ya que seguro que habr un mer-
Enlaces Web
cado dentro de diez aos. Casi no hace falta
hacer un estudio de mercado, porque esto [1] http://crispplatform.nl/selemca/
lo hemos diseado junto con los usuarios. selemca
Los propios asistentes sociales y la gente [2] http://dare.ubvu.vu.nl/bitstream/hand-
necesitada han ayudado en el concepto que le/1871/38598/Moral%20Coppelia%20
tenemos ahora. Ofrece a la administracin IBERAMIA%20Proof%2076370442.
una solucin a un problema creciente y las pdf?sequence=1
empresas pueden hacer negocio con ello. [3] www.crispplatform.nl Robot Alice
As que no entiendo de dnde viene esta
[4] http://waag.org/en
desconcertacin. El trabajo que realizamos
se oye ms en Hong-Kong y Corea del Sur DARwIn-OP
que aqu en Europa. Aqu todos dicen: muy (Foto: Waag Society CC BY 2.0)

interesante, muy curioso, est bien que lo


estis haciendo pero luego todo queda en
un silencio. Es falta de un clima innovador
real. Hablan muchsimo sobre ello y hay
miles de comisiones, pero a todas estas
comisiones la innovacin les bloquea. Yo no
quiero comisiones, quiero manos a la obra.
Tecnolgicamente ya se puede hacer
muchas cosas en la robtica, pero no hay

www.elektor-magazine.es | junio 2013 | 53


Proyectos

Disea tu propio integrado (5)


250000 puertas interconectadas programadas

Clemens Valens Aunque una aplicacin FPGA se puede disear perfectamente como un circuito de
(Elektor.Labs)
smbolos lgicos, en la prctica se suele optar por un enfoque programtico. Esto
tiene una ventaja y que es generalmente las funciones complejas son ms fciles
de expresar en un algoritmo que en un esquema. Por eso intentaremos programar
una aplicacin FPGA en este artculo.

En la entrega anterior [4] tratamos por encima piensa que generalmente simular requiere ms
los lenguajes descriptivos de hardware VHDL y tiempo que sintetizar, as que terminas antes.
Verilog para probar una aplicacin. En esta ltima Para hacer una analoga con la programacin de
parte profundizaremos en estos lenguajes, pero ordenadores (por favor, que los fans de Verilog
ahora para escribir una aplicacin. Mantener dos miren en otra direccin y se tapen los odos): En
lenguajes es complicado, as que he tenido que lugar de introducir cdigo al tuntn para con-
tomar una decisin. Despus de muchas noches vertirlo despus en el depurador de un algoritmo
de insomnio y tras consultar con decenas de que funcione, puedes primero pensar bien el algo-
expertos decid finalmente seguir adelante con ritmo y depurar despus para ver si funciona.
VHDL. Hay varios argumentos que sustentan Como aplicacin he optado por un descodifica-
esta eleccin. Uno de ellos es que VHDL requiere dor DCF77 Si, ya oigo los comentarios, pero
menos tiempo de simulacin, porque es ms difcil djame defender la eleccin. En casi toda Europa
llegar a un diseo sintetizable. Quizs esto suene se puede recibir fcilmente con un mdulo barato
como una razn para optar por Verilog, pero la seal de radio de la emisora de reloj atmico

54 | junio 2013 | www.elektor-magazine.es


FPGA

DCF77 cerca de Frankfurt. La seal es bastante haz para cada reloj


sencilla, es una concatenacin de 59 impulsos, {
uno por segundo, que pueden tener dos longitu- contador = contador + 1;
des, 100 ms (0) y 200 ms (1), y que juntos repre- si (contador==150ms)
sentan los bits que forman el cdigo de tiempo. La {
omisin del ltimo pulso (n 60, bit 59) indica el registro de desplazamiento = (registro de desplazamiento<<1)
final del cdigo. Cada minuto se enva un nuevo + seal de entrada;
cdigo. La fecha y la hora vienen en formato BCD }
y hay un nmero de bits de control con los que si (flanco ascendente(seal de entrada)==true)
se puede verificar la validez del cdigo. As que {
es una buena seal para empezar con VHDL (o si (contador>=1750ms)
Verilog), ya que no es difcil de representar con {
una lgica sencilla en un display de 7 segmentos. muestra contenido(registro de desplazamiento);
Para la gente que no tenga un receptor DCF77 }
o no pueda recibir la seal porque viva dema- contador = 0;
siado lejos de Frankfurt, escrib un programa de }
simulacin de DCF77 para el Arduino [5]. As que }
todo el mundo puede participar.
Empezamos con un diseo funcional de nues- El contador se incrementa en cada pulso de reloj.
tro descodificador DCF77. Le damos un enfo- En el momento que el contador alcanza 150 ms se
que naif, que quiere decir que partimos de la muestrea la seal de entrada y se aade al regis-
idea de que la seal de entrada es buena por tro de desplazamiento. Si se detecta un flanco
lo general y encaja perfectamente dentro de ascendente en la seal de entrada, se mira si el
las especificaciones. Gracias a estas suposicio- contador ha sobrepasado el valor mximo. En
nes el diseo puede ser sencillo. Como hemos caso afirmativo, el registro de desplazamiento
dicho, la seal de entrada consta de pulsos de est lleno y se pueden mostrar los datos. A con-
100 ms y 200 ms que representan ceros y unos tinuacin se pone el contador a cero. En reali-
respectivamente. Si muestreamos esta seal dad esto es todo. Aqu puedes aadir todo tipo
150 ms despus del flanco ascendente de un de parafernalia como la deteccin de errores y
pulso veremos tanto un 0 como un 1 (figura hacerlo ms robusto, pero eso queda fuera de
1). Si medimos tambin el tiempo transcurrido esta introduccin.
entre dos flancos ascendentes, encontraremos el
pulso faltante y con esto el principio del cdigo Cmo hacemos esto en VHDL?
de tiempo. De esta manera desplazamos los bits En realidad es bastante sencillo, ya que el seu-
encontrados a un registro de desplazamiento. docdigo se puede traducir fcilmente a VHDL.
A continuacin sacamos los campos BCD del As obtenemos este fragmento:
registro de desplazamiento que contienen las
distintas unidades de fecha y tiempo, y las mos- 1 process (clock) is
tramos en un display de siete segmentos. En el 2 begin
pseudocdigo basado en C esto queda ms o 3 if rising_edge(clock) then
menos de la siguiente forma: 4 counter <= counter + 1;
5 if (counter=t150ms) then

Figura 1.
La seal DCF77 y el
momento de muestra.

www.elektor-magazine.es | junio 2013 | 55


Proyectos

6 bits <= input & bits(58 downto 1); registro de desplazamiento bits (lnea 6). Esto
7 end if; se hace desde la izquierda, en oposicin al seu-
8 if input_rise=1 then docdigo donde se desplazaba desde la derecha.
9 if (counter>=t1750ms) then Lo hacemos de esta forma porque el cdigo del
10 data <= bits; tiempo empieza con el bit menos significativo
11 end if; y as los colocamos en el orden correcto para
12 counter <= 0; nosotros. Despus de 59 pulsos el bit 0 est en
13 end if; la posicin 0. La operacin de desplazamiento
14 end if; parece un poco extraa porque utilizamos la fun-
15 end process; cin de pegar &. Esta funcin simplemente pega
la parte de la izquierda a la parte de la derecha.
Aqu faltan las definiciones y algunas otras cosas La parte derecha consta de 58 bits, 58 hasta
de la sintaxis VHDL, pero el algoritmo est. Los 1 (as que sin el bit 0) que se desplazan a las
nmeros de lneas los he puesto yo para hacer posiciones 57 hasta 0. La parte de la izquierda
ms fcil la explicacin. En este cdigo counter es la seal de entrada de 1 bit y esta pasa a la
es el contador y bits el registro de desplaza- posicin 58. Aqu no nos interesa mucho como
miento de 59 bits. Vamos a empezar por el prin- ISE, o en realidad XST, trata esta construccin,
cipio, por la lnea 1. lo que nos interesa es que funcione (y eso lo
Se trata de un proceso, lo que quiere decir que podemos confirmar).
ser ejecutado por la FPGA. Sin este proceso no En la lnea 8 detecta si hay un flanco ascendente
hay actividad. Puede haber varios procesos y en la seal de entrada. De este fragmento no se
todos sern ejecutados al mismo tiempo. En prin- deduce cmo sucede esto exactamente (lo tra-
cipio se trabaja, dentro del proceso, desde arriba tar enseguida), pero cuando sucede, la lnea 9
hacia abajo. Nuestro proceso depende de la seal detecta si el contador ha sobrepasado el valor
clock, lo que significa que slo se puede ejecu- mximo de 1750 ms. Si ese es el caso, el conte-
tar si clock cambia de valor. El proceso empieza nido del registro de desplazamiento se copia al
despus de la lnea 2 y va hasta la lnea 15. registro de datos para ms tratamiento (no en
La lnea 3 se encarga de que todo lo que hacemos este fragmento, ver ms adelante).
vaya sincronizado con los flancos ascendentes de En la lnea 12 se pone el contador a cero. No
la seal de reloj. La funcin rising_edge hace hace falta borrar el registro de desplazamiento
que esto sea factible. En mucho cdigo VHDL porque se llena cada minuto.
encontramos la construccin: Las lneas que no hemos nombrado explcita-
mente slo sirven para cumplir con la sintaxis
if clockevent and clock=1 then de VHDL.
..
end if; Para terminar este fragmento necesitamos un
detector de flancos, algunas cosas sintcticas
que tiene la misma funcin que rising_edge, de VHDL y las especificaciones de las seales de
pero esta ha quedado un poco anticuada. Noso- entrada y salida de este proceso. Al diseo final
tros utilizamos rising_edge. Tambin existe la tambin he aadido varias seales que hacen
funcin falling_edge. parpadear los LED de la placa FPGA, de modo
que veamos que la cosa est realmente animada.
En la lnea 4 se incrementa el contador con uno.
Fcil, verdad? S, pero ten cuidado, porque la Detectar flancos
utilizacin de la funcin sumar, representada por Aqu el detector de flancos es un punto impor-
el smbolo +, hace necesario aadir la librera tante. En primera instancia haba utilizado una
numeric_std a la lista de libreras a utilizar (tal construccin simple que comparaba el valor
y cmo veremos ms adelante). actual de la seal de entrada con los valores
En la lnea 5 se compara el valor del contador durante el pulso de reloj anterior. Esto no fun-
con una constante que corresponde a 150 ms cionaba de forma fiable y creaba interrupciones
con una frecuencia de reloj de 8 MHz (el reloj de de forma que de vez en cuando se perda el
la FPGA). Si el contador llega a 150 ms, el valor sincronismo. La solucin result ser la adicin
actual de la seal de entrada se desplaza en el de un biestable adicional, de modo que no se

56 | junio 2013 | www.elektor-magazine.es


FPGA

comparaba el valor actual con el anterior, sino


Listado 1. Un mdulo detector de flancos en VHDL.
el anterior con el anterior a este. As que no
comparamos t = n con t = n-1, sino que com- library ieee;
paramos t = n-1 con t = n-2. use ieee.std_logic_1164.all;
Probablemente el lector observador se pregun-
tar si aqu podramos haber utilizado la fun- entity edge_detector is
cin rising_edge y la respuesta a esto es, por port (input : in std_logic;
desgracia, no. Si lo haces, el sintetizador XST
clock : in std_logic;
piensa que se trata de una seal de reloj, pero
rise : out std_logic);
como no lo es, falla, con un mensaje de error
end edge_detector;
como resultado.
He aadido al proyecto el detector de flancos
como mdulo separado (una funcin en VHDL, architecture behavioral of edge_detector is
ver listado 1), pero no era necesario. Ahora s begin
tenemos la ventaja de que lo podemos utilizar process (clock)
fcilmente en otro proyecto. variable history : std_logic_vector(1 to 3);
El mdulo empieza con la instruccin library begin
seguido de la instruccin use. Estas lneas se if rising_edge(clock) then
encargan de que el mdulo disponga de las fun- rise <= history(2) and not history(3);
ciones estndares y seales necesarias. Tambin history := input & history(1 to 2);
se pueden aadir otras libreras en caso de que
end if;
fueran necesarias, como numeric_std (para +,
end process;
te acuerdas?). En oposicin a la mayora de los
end behavioral;
lenguajes de programacin estas lneas no son
vlidas para todos los ficheros en las que apa-
recen, sino slo para el primer bloque entity
que hay a continuacin con sus correspondientes
bloque(s) architecture. As que normalmente vez que esta seal cambia de valor se ejecutan
cada bloque entity va precedido de instruccio- las instrucciones dentro del proceso.
nes de librera. Despus de la declaracin del proceso viene una
A continuacin llegamos al bloque entity. En lista de variables que se necesitan dentro del
principio lo podemos considerar como el smbolo proceso, pero no fuera. Aqu slo hay un, his-
que se va a utilizar en el esquema. Aqu se defi- tory, un registro de 3 bits. Esta variable es un
nen las entradas y salidas del componente en la
parte port. Aqu todas las seales son del tipo
std_logic de la librera std_logic_1164, que
quiere decir que se trata de seales lgicas que Por el mdico precio de 59,95 ms gastos de envo se
pueden tomar un nmero de valores definidos
puede adquirir la placa FPGA de pruebas completamente
en la librera (como son 0, 1 o Z y as hay
un montn). Las seales seguidas de in son las ensamblada y probada a travs de Elektor.
entradas del mdulo, si van seguidas por out se
trata de salidas.
El bloque entity viene seguido del bloque archi-
tecture en donde viene definida la funcin. Este
bloque tiene un nombre (behavioral) y es una
implementacin de la entidad especificada edge_
detector. El nombre behavioral se obtiene al
dejar que el ISE cree el mdulo VHDL. Tambin se
ve muchas veces rtl (de Register Transfer Level,
el nivel hacia donde se compila el cdigo VHDL),
pero tambin puedes elegir un nombre propio.
El detector de flancos est implementado como
Ver www.elektor.es/120099
un process que depende de la seal clock. Cada

www.elektor-magazine.es | junio 2013 | 57


Proyectos

vector, lo cual quiere decir que consta de varios


Listado 2. El descodificar DCF77 con detector de flancos.
bits. Fjate que aqu el vector est definido como
library ieee; (1to3) y el registro de desplazamiento en
use ieee.std_logic_1164.all; el descodificador DCF77 como (58downto0).
use ieee.numeric_std.all; Ambos son igual de vlidos, pero ten cuidado de
no mezclar accidentalmente los bits cuando los
ests utilizando de forma mezclada.
entity dcf77_decoder is
El detector de flancos slo hace algo despus de
port ( input : in std_logic;
un flanco ascendente de la seal de reloj. Enton-
clock : in std_logic; ces determina el valor de la seal de salida rise a
data : out std_logic_vector (58 downto 0) ); partir de los bits 2 y 3 de history y desplaza el
end dcf77_decoder; valor actual de la seal de entrada en el registro
de desplazamiento, de la misma manera que el
architecture behavioral of dcf77_decoder is fragmento del descodificador DFC77.
Como puedes observar, cada bloque termina con
la instruccin end (por ejemplo end if), posible-
component edge_detector is
mente seguido por el nombre del bloque corres-
port (input : in std_logic;
pondiente, as que hay que teclear mucho. Esta
clock : in std_logic; es una de las desventajas de VHDL, que hay que
rise : out std_logic); teclear mucho.
end component edge_detector; La figura 2 muestra cmo piensa ISE que debe
ser la apariencia del detector de flancos esque-
constant t1750ms: integer := 14000000; -- 1750 ms @ 8 MHz mticamente. Esta interpretacin me parece un
poco extraa, pero quizs he olvidado alguna
constant t150ms: integer := 1200000; -- 150 ms @ 8 MHz
cosa. Dejmoslo en que el ISE no es muy bueno
signal counter : integer := 0;
dibujando.
signal bits : std_logic_vector(58 downto 0) := (others => 0); He descrito ampliamente este mdulo para ilus-
signal input_rise : std_logic := 0; trar como se parece un mdulo VHDL. Todos los
mdulos siguen el mismo patrn de library,
begin entity y architecture, tambin el descodifi-
edge_detect: edge_detector port map (input => input, cador DFC77.
clock => clock,
Utilizar mdulos
rise => input_rise);
Si queremos utilizar el detector de flancos dentro
del descodificador DFC77 tenemos que decirlo
process (clock) is de una u forma manera al XST. Se puede hacer
begin de varias maneras, por ejemplo, mediante una
if rising_edge(clock) then librera, pero nosotros lo hacemos aqu a travs
counter <= counter + 1; del mtodo de componente. El listado 2 muestra
if (counter=t150ms) then cmo funcionan varias cosas. Ah tambin puedes
ver el mdulo descodificador DCF77 al completo,
bits <= input & bits(58 downto 1);
incluso el bloque entity con su bloque archi-
end if;
tecture correspondiente, seales de entrada
if input_rise=1 then
y salida, variables locales y constantes. Mralos
if (counter>=t1750ms) then tranquilamente, utiliza internet como referencia
data <= bits; -- Transfer data. si fuera necesario, no es tan complicado.
end if; Incorporamos el detector de flancos dentro del
counter <= 0; -- Clear counter. mdulo declarndolo arriba dentro del bloque
end if; architecture. Para ello copiamos el bloque
entity y sustituimos la palabra entity por com-
end if;
ponent. Luego tenemos que conectarlo. Lo hace-
end process;
mos despus del begin del bloque architecture
end behavioral; instanciando un ejemplar (as es como se dice).

58 | junio 2013 | www.elektor-magazine.es


FPGA

Figura 2.
Este extrao esquema
surge cuando el RTL Viewer
(Design tab, Synthesize
XST View RTL Schematic)
del ISE dibuja el detector
de flancos en este artculo.
La seal de entrada no est
conectada a ninguna parte
y no entiendo muy bien su
funcionamiento. Habr
cometido algn error?

Para eso tenemos que introducir una etiqueta y a tipo; lo he llamado input_rise. Ahora podemos
continuacin indicar mediante un port map qu utilizar esta seal en nuestro proceso. Durante
seales (puertos) del descodificador DCF77 (a la un nico periodo de reloj ser 1 en el momento
derecha dentro del mapa) tienen que conectarse que detecte un flanco ascendente en la seal de
a las seales (puertos) del detector de flancos (a entrada del DCF77.
la izquierda dentro del mapa). Ya tenamos las En caso de olvidar mapear la seal de entrada
seales de reloj y la entrada, ya que estas tam- de algn componente, podemos recibir algn
bin son entradas o puertos respectivamente del mensaje de error bastante incomprensible. Este
descodificador DFCF77 (ver su bloque entity). intenta explicar que la seal olvidada no tiene
Para la seal de salida rise del detector de flan- valor por defecto y que no puede estar desco-
cos, necesitamos aadir una seal local del mismo nectado. As que ests avisado.

Figura 3.
Una impresin de pantalla
del ISE donde no solo vemos
el cdigo para el display,
sino tambin la jerarqua
del proyecto y las marcas
verdes que prueban que es
posible compilar el proyecto
hasta un fichero bit.

www.elektor-magazine.es | junio 2013 | 59


Proyectos

Display Listado 3. El nivel superior del descodificador DCF77 final.


Como me esfuerzo mucho
en explicar todo lo mejor library ieee;
posible, este tipo de art- use ieee.std_logic_1164.all;
culos acaban fcilmente
siendo largos, algo que no entity top is
le gusta mucho a mi jefe. port ( dcf77_input : in std_logic;
Sin embargo me gustara clk_in : in std_logic;
explicar en un nico art- hour_month : in std_logic;
culo cmo hacer que un time_date : in std_logic;
diseo VHDL funcione, si
led1 : out std_logic;
no termina siendo un poco
led2 : out std_logic;
frustrante. Como todava
t_sample : out std_logic;
tengo que explicar muchas
digit1 : out std_logic_vector (6 downto 0);
cosas, voy a suprimir el
cdigo del display de 7 digit2 : out std_logic_vector (6 downto 0) );
segmentos. He utilizado el end top;
mismo display de 2 dgi-
tos que el de la 3 entrega architecture behavioral of top is
[3], por lo que he escrito
un descodificador de BCD component two_digit_display is
a 7 segmentos. Este es port ( bcd1 : in std_logic_vector (3 downto 0);
un ejercicio de los libros bcd2 : in std_logic_vector (3 downto 0);
estndar, as que no tengo
digit1 : out std_logic_vector (6 downto 0);
que dedicarle muchas pala-
digit2 : out std_logic_vector (6 downto 0) );
bras. Mira dentro del pro-
end component;
yecto de esta entrega [5]
para ver cmo funciona
todo. La figura 3 mues- component dcf77_decoder is
tra algunas cosas. Port ( input : in std_logic;
clock : in std_logic;
Hacia top tick : out std_logic;
Igual que en las entregas sync : out std_logic;
anteriores todo se junta en data : out std_logic_vector (58 downto 0) );
top, slo que ahora top es end component;
un mdulo VHDL en vez
de un esquema. Tenemos
signal data : std_logic_vector (58 downto 0);
que indicar este detalle al
signal bcd1 : std_logic_vector (3 downto 0);
ISE a travs de Design Pro-
signal bcd2 : std_logic_vector (3 downto 0);
perties. Crea primero un
signal tick : std_logic;
nuevo proyecto basndote
en lo anterior de la manera
descrita al principio de [3]. begin
Elimina a continuacin display: two_digit_display port map (bcd1 => bcd1,
todos los esquemas, pero bcd2 => bcd2,
conserva el fichero UCF.
Despus abre Design Pro-
perties (por ejemplo, a travs del men Project, botn derecho del ratn sobre la pestaa Design)
en la parte inferior) y pon el Top-Level Source y selecciona New Source, selecciona a conti-
Type en HDL y Preferred Language en VHDL (si nuacin VHDL Module, introduce el nombre del
no estuviera ya puesto). fichero (por ejemplo, top), asegrate de marcar
Ya podemos empezar a aadir nuevos ficheros Add to project y haz clic sobre Next. Ahora ves
fuente. Abre el men Project (o haz clic con el un formulario que puedes rellenar si sabes qu

60 | junio 2013 | www.elektor-magazine.es


FPGA

digit1 => digit1, ras crear. En mi proyecto


digit2 => digit2);
son cinco: top, descodi-
ficador DCF77, detector
de flancos, descodifica-
dcf77: dcf77_decoder port map (input => dcf77_input,
dor BCD a 7 segmentos y
clock => clk_in,
display de 2 dgitos.
tick => tick, El mdulo top viene refle-
sync => led2, jado en el listado 3. Los
data => data); nombres de las seales de
entrada y salida de top,
process (clk_in) is as como las seales que
begin son nombradas en el blo-
t_sample <= tick; que entity, tienen que
led1 <= tick; coincidir con los nombres
if rising_edge(clk_in) then
dentro del fichero UCF. De
esta forma se establecen
if time_date=1 then
las conexiones entre los
-- Show time.
terminales del integrado y
if hour_month=1 then
el cdigo VHDL. Aqu tie-
-- Show hours. nen que aparecer todas
bcd1 <= data(32 downto 29); las seales del fichero
bcd2 <= 00 & data(34 downto 33); UCF, sino el ISE empieza a
else quejarse. La utilizacin de
-- Show minutes. vectores para los termina-
bcd1 <= data(24 downto 21); les de los display es algo
bcd2 <= 0 & data(27 downto 25); nuevo aqu. En el fichero
end if; UCF lo hacemos mediante
else
la utilizacin del ndice con
el nombre del vector, por
-- Show date.
ejemplo, digit1(0) se
if hour_month=1 then
corresponde con el bit 0
-- Show month.
del vector digit1 de top.
bcd1 <= data(48 downto 45); El bloque architecture
bcd2 <= 000 & data(49 downto 49); de top llama a dos compo-
else nentes, two_digit_dis-
-- Show day of month. play y dcf77_decoder,
bcd1 <= data(39 downto 36); de los que se utiliza uno
bcd2 <= 00 & data(41 downto 40); de cada. Con un display
end if; ms grande de, por ejem-
end if; plo, seis cifras podemos
end if;
instanciar tres ejempla-
res de two_digit_dis-
end process;
play (con tres etiquetas
diferentes) y conectar-
end behavioral;
los. Para la interconexin
de los dos componentes
defin un nmero de sea-
seales de entrada y salida vayas a necesitar. Si les adicionales que no son necesarias fuera de
an no lo sabes, djalo en blanco. Cuando hayas top. Por ejemplo, se utiliza la seal tick para
terminado haz clic sobre Next y a continuacin que el LED1 destelle por cada bit recibido, pero
sobre Finish. El ISE crea ahora un fichero con como este LED no est disponible en un terminal
una plantilla en la que tienes que aadir el cdigo de la placa FPGA, tambin est conectado a la
VHDL. Aade tantos ficheros como mdulos quie- seal t_sample que en el fichero UCF est conec-

www.elektor-magazine.es | junio 2013 | 61


Proyectos

tado al terminal P86. Entonces podremos ver


bien con un osciloscopio el momento de muestra
en comparacin con la seal de entrada DCF77.
El proceso de top no hace cosas muy emocio-
nantes. Realmente es un multiplexor que depen-
diendo de los niveles de las seales de control
(time_date (P94) y hour_month (P95)) muestra
las horas, los minutos, el da del mes o el mes
en el display de 7 segmentos de dos cifras. Con
un poco de cortar y pegar (&) se pasan los bits
correctos del gran registro de desplazamiento a
dos campos BCD de 4 bits, que a continuacin los
descodificadores BCD convierten en seales de
7 segmentos. Es importante comentar aqu que
no es necesario interconectar explcitamente los
vectores bcd1 y bcd2 al componente display, ya
que esto ya se ha hecho a travs del puerto map.
Cuando sinteticemos este diseo aparecern
varios avisos. Aparecen porque no se utilizan
todos los bits del registro de desplazamiento
Figura 4. DCF77 y porque el bit 3 del vector bcd2 siem-
El esquema del descodificador DCF77 es casi idntico pre est a 0 ya que no se utilizan 8 bits (slo
al de la 3 entrega [3]. Como la FPGA no soporta bien el campo ao consta de 8 bits, pero aqu no
seales de 5 V, limitamos la seal de entrada hasta unos
lo estamos utilizando). Lo que tambin podrs
3 V con un diodo zener.
observar es que ha surgido una bonita jerar-
qua en la pestaa Design (figura 3), igual que
cuando introducimos un diseo como esquema.
As que ahora todo es como era antes. Como ya
he comentado anteriormente el ISE dispone de
un RTL Viewer que (supuestamente, ver figura
2) es capaz de mostrar el cdigo VHDL de forma
esquemtica y con esto estamos otra vez de
vuelta. Un esquema es simplemente cdigo VHDL
Figura 5. y VHDL es simplemente un esquema.
El circuito de pruebas controlado con un Arduino como
simulador DCF77. El display muestra 17, las horas Al final el artculo ha quedado bastante largo
simuladas. La placa Arduino alimenta a la placa FPGA.
a pesar de que quise ser breve. He intentado
transmitir toda la informacin importante, pero
se requiere un poco de trabajo personal y perse-
verancia para construir este proyecto uno mismo.
Suerte!
(130066-I)

Enlaces Web
[1] 1 entrega: www.elektor.es/120099
[2] 2 entrega: www.elektor.es/120630
[3] 3 entrega: www.elektor.es/120743
[4] 4 entrega: www.elektor.es/130065
[5] 5 entrega: www.elektor.es/130066

62 | junio 2013 | www.elektor-magazine.es


Spring into summer
savings event!

All books are now 15% off.


From assembly language to microprocessor design, embedded Linux to C programming,

these tools will help you master any engineering challenge.

For professionals, academia, and enthusiasts alike,

CC-Webshops collection of audio and electronics

engineering books will help take your ideas

from concept to creation.

Offer ends 6/30/13

www.cc-webshop.com
Proyectos

De BASIC a Python (2)


Una breve resea

En la primera parte vimos las principales diferencias


entre Python y BASIC. Mostramos cmo llevar a cabo
Jean-Claude Feltes
(Luxemburgo) la instalacin y ejecutar nuestros primeros programas.
Ahora nos centraremos en los diagramas y la snte-
sis de Fourier. Para terminar, tambin veremos cmo
implementar un entorno de usuario.

Si damos por hecho que Python es un lenguaje optado por el mdulo Numpy. En la segunda
de programacin especialmente til para los lnea se importan tres funciones.
electrnicos, lo normal sera que queramos uti- Con linspace puede representarse vectorial-
lizarlo para representar datos visualmente. Para mente (como matriz) un intervalo (en este caso
el ser humano, las curvas son mucho ms fci- de 0 a 7) del tamao deseado (aqu 1.000). Esto
les de interpretar que un montn de columnas permite calcular rpidamente los valores de la
con nmeros. No hace falta descubrir de nuevo funcin. Las funciones de Numpy tambin pueden
la plvora si pretendemos dibujar cada una de trabajar con vectores. He aqu la curva:
estas curvas manualmente, muchos lengua-
jes de programacin disponen de libreras que y= sin(5*x)*exp(-x)
simplifican la tarea enormemente. Por suerte,
Python es uno de ellos. Cada 1.000 valores se calcula la variable y
del vector.
Diagramas No har falta utilizar bucles for y sin embargo
En Python, el mdulo estndar para diagramas en obtendremos rpidamente un cdigo fcil de
2D se denomina Matplotlib. A pesar de que en interpretar.
Python el eslogan es para cada tarea, un nico Con el comando plt.plot(x,y) se representan
mtodo, con los mdulos adicionales lamen- los datos en una curva. Para que el grfico sea
tablemente no es as, y llev bastantes horas visible, hemos de utilizar despus la instruccin
poder trabajar con ellos. En el caso de Matplotlib plt.show(). Si queremos representar varias cur-
tenemos tanto un procedimiento simple, como vas en un mismo diagrama, bastar con llamar
un complicado interfaz orientado a objetos. Los varias veces a la funcin de plot, tal como se
ejemplos disponibles en Internet y en los libros muestra en el listado2.
utilizan uno u otro procedimiento, con lo que La ventana del diagrama (ver la figura1) incor-
los cdigos mostrados se confunden fcilmente. pora automticamente una barra de herramien-
El interfaz simple pyplot tambin permite rea- tas que permite hacer zoom y guardar el grfico.
lizar programas muy sencillos. El programa del Tambin pueden verse las coordenadas con el
listado1 genera una seal sinusoidal amorti- cursor. No obstante, si queremos disponer de un
guada y registra la curva resultante a modo de bonito diagrama con elementos de un GUI (Gra-
grfica en una ventana (vase la figura1). phical User Interface, interfaz grfico de usuario),
La primera lnea importa el interfaz pyplot como ser ms complicado. En ese caso tendremos
objeto plt. Para los clculos matemticos hemos que seguir el procedimiento orientado a objetos.

64 | junio 2013 | www.elektor-magazine.es


lenguajes de programacin

Ejemplo: respuesta en frecuencia


Si queremos representar por ejemplo la curva Listado1: Sinus.py
de un filtro RC de paso bajo, entonces hemos import matplotlib.pyplot as plt
de calcular el valor en nmeros complejos de la from numpy import sin, exp, linspace
respuesta en frecuencia F segn la frmula del
divisor de tensin con impedancias complejas:
x=linspace(0.0, 7.0, 1000)
y= sin(5*x)*exp(-x)
F = 1 / (1 + j R C)

plt.plot(x, y)
La curva entonces corresponde a los valores de F
en funcin de la frecuencia (vase la figura2). plt.show()
En este ejemplo podemos aprovecharnos de la
capacidad de Python para trabajar con nmeros
complejos.
En el programa del listado3 primero se calcula
la matriz f con frecuencias divididas por etapas
logartmicamente. Para hacerlo de forma lineal
habra que utilizar linspace(). Finalmente se
genera la matriz con los valores complejos de F
y la matriz de Fabs. Aqu volvemos a benefi-
Figura 1.
ciarnos del uso de Numpy gracias a sus funciones
Representacin grfica
vectoriales. No hace falta utilizar bucles for, y el
de una seal sinusoidal
cdigo sigue siendo breve y conciso. amortiguada, obtenida
Para terminar se muestra el diagrama, en donde mediante el cdigo del
el eje de la frecuencia est escalado logartmica- listado 1.
mente. Para una buena representacin grfica es
importante configurar la rejilla correctamente:
Listado2: Multigraph.py
ax.grid(True, which = both, mport matplotlib.pyplot as plt
linestyle = -) from numpy import sin, exp, linspace

Aqu se activa la rejilla, con both aparecern x=linspace(0.0, 7.0, 1000)


ambas (la principal y la secundaria, para las sub- y1 = sin(5*x)*exp(-x)
divisiones) y se configuran de modo que aparez-
y2 = y1* 0.5
can como lneas slidas.
Aadiendo las siguientes lneas de cdigo tam-
plt.plot(x, y1)
bin se puede configurar la respuesta en fase:
plt.plot (x, y2)

# plot phi = f(f) plt.show()


phi = angle(F)*180.0/pi
ax2 = fig.add_subplot(212)
ax2.plot(f, phi)
ax2.grid(True, which = both, linestyle
= -)
ax2.set_xscale (log)
ax2.set_xlabel(f/Hz)
ax2.set_ylabel(phi/degrees)

Ejemplo: sntesis de Fourier


Los electrnicos a los que les gusten las matem-
Figura 2.
ticas estarn encantados cuando sepan lo cmodo Respuesta en frecuencia de
que resultan algunas cosas como la sntesis de un filtro RC paso bajo, segn
Fourier en Python. el listado 3.

www.elektor-magazine.es | junio 2013 | 65


Proyectos

En el ejemplo del listado4 se genera sintti-


camente una seal bastante cuadrada, sirvin-
donos de una combinacin de 30 armnicos. La
figura3 muestra el resultado obtenido con un
cdigo relativamente simple. En el cdigo tam-
bin puede aumentarse o disminuirse el nmero
de armnicos.

GUI o no?
Los usuarios de Linux tienen cierta reputa-
cin de no utilizar mucho los GUIs, e incluso
Figura 3.
llamarlos click-buntu y considerar al ratn
Sntesis de Fourier de una
un invento del demonio. Sean o no ciertos
seal cuadrada segn el
listado 4. los estereotipos, la verdad es que la mayora
de la gente prefiere programas bien disea-
dos y fciles de utilizar. Y siendo sinceros, un
entorno grfico para manejar los archivos es
bsico, no?
En cualquier caso, en Python podemos combinar
elementos grficos y no grficos en un mismo
programa. El programa del listado5 se trata de
un plotter de datos. Los datos ledos se envan
mediante una instruccin print a la ventana
de un terminal en formato de texto, y posterior-
mente se representan en ventana grfica a modo
de diagrama (ver la figura4).
Entre las libreras de GUI nos veremos obliga-
dos a elegir. Primero utilizamos Tkinter, ya
Figura 4.
Plotter de datos: ventana que est incluida en el intrprete de Python
del terminal con valores y resulta fcil de aprender y utilizar. Pero al
numricos y representacin copiar grficos al portapapeles surgan proble-
grfica en los ejes X e Y. mas, de modo que cambiamos wxPython. No

Listado3: RC.py
import matplotlib.pyplot as plt
from numpy import pi, linspace, log10, logspace # calculate F (complex) and absolute value Fabs
from numpy import complex, abs # these allow F = 1 / (1 + 1j* 2 * pi * f * RC)
vector operations Fabs = abs(F)

# EDIT # plot Fabs = f(f)


R = 10.0E3 fig = plt.figure()
C = 100.0E-9 ax = fig.add_subplot(111)
ax.plot(f, Fabs)
# END EDIT ax.grid(True, which = both, linestyle = -)
ax.set_xscale (log)
RC = R*C ax.set_xlabel(f/Hz)
ax.set_ylabel(U2/U1)
# create f values equally spaced on a log scale ax.set_title(RC low pass frequency response)
f = logspace ( 1, 4, 100) # 100 values from 10**1 plt.show()
to 10**4

66 | junio 2013 | www.elektor-magazine.es


lenguajes de programacin

obstante, tambin hay otras alternativas como Para simplificar se ha optado por la programacin
PyQt y GTK. phytnica orientada a objetos. Tras importar
El plotter de datos es un buen ejemplo para uti- los mdulos necesarios se definen las funciones y
lizar elementos del GUI. El programa permite posteriormente se da paso al programa principal.
ver y editar datos almacenados en un archivo de ste crea un primer esbozo de la app. Apa-
texto, con valores de medida. Los valores pueden recer un objeto de frame a modo de ventana
representarse en un grfico bidimensional en X para la aplicacin. Esta ventana dispone de un
e Y. Las coordenadas de X e Y se muestran as men y un cuadro de texto para editar y mos-
mismo numricamente en dos columnas. trar los datos. En realidad, este cuadro de texto

Listado4: Fourier.py
FOURIER SYNTHESIS FOR RECT VOLTAGE harmonics
#------------------------------------------------- ug = zeros(nb_points)
------- uharm = zeros((nb_points, n+1))
# EDIT HERE
# harmonics and total voltage
n = 30 # number of harmonics for i in range(1,n+1):
nb_points=1000 # horizontal resolution ai = calc_amplitude(amplitude, i)
frequency = 100.0 #Hz fi = frequency * i
amplitude = 2.0 #V uharm[:,i] = ai * sin(2 * pi * fi * t )
ug = ug + uharm[:,i]
# END OF EDIT AREA return uharm, ug
#------------------------------------------------- #-------------------------------------------------
-------- ----------
print Importing modules Main program
import matplotlib.pyplot as plt
from numpy import sin, exp, linspace, pi T=1/frequency
from numpy import zeros
#------------------------------------------------- # equally spaced time array for 1 period
--------- t = linspace(0.0, T, nb_points)
def calc_amplitude(amplitude, i):
Calculate amplitudes of harmonics # plot harmonics
# take only odd harmonics uharm, ug = calc_harmonics(nb_points, n)
if i % 2 == 0: for i in range(1,n+1):
ai = 0 plt.plot (t, uharm[:,i])
else:
ai = (4/pi)*amplitude / i # plot resulting voltage
return ai plt.plot (t, ug)
#-------------------------------------------------
-------- s=str(n)+ harmonics, +str(frequency)+Hz,
def calc_harmonics(nb_points, n): ampl.=+str(amplitude)+V
Calculate harmonics and resulting voltage plt.title(Fourier synthesis RECT\n+s)
returns plt.xlabel(t/s)
uharm = array nb_points * n plt.ylabel(u/V)
ug = array nb_points
# make plot visible
plt.show()
# init arrays for resulting voltage and

www.elektor-magazine.es | junio 2013 | 67


Proyectos

Listado5: Dataplot.py
#!/usr/bin/env python
Plot data from file
import wx
import os.path
import matplotlib.pyplot as plt

def create_menu(frame):
# create menu
menubar = wx.MenuBar()
# main menus
mnuFile = wx.Menu()
mnuData = wx.Menu()
menubar.Append(mnuFile,&File)
menubar.Append(mnuData,&Data)
# submenus
m_Open = mnuFile.Append(-1,&Open)
mnuFile.AppendSeparator()
m_Exit = mnuFile.Append(-1,E&xit)
m_Plot = mnuData.Append(-1,&Plot)
# attach menu to frame
frame.SetMenuBar(menubar)

# bind menu events to procedures


frame.Bind(wx.EVT_MENU, OnExit, m_Exit)
frame.Bind(wx.EVT_MENU, OnOpen, m_Open)
frame.Bind(wx.EVT_MENU, OnPlot, m_Plot)
#-----------------------------------------------------------------------
# Event handlers
def OnExit(event):
frame.Close()

def OnOpen(event):
# ask for filename
dlg = wx.FileDialog(None,Open data file, os.getcwd() ,, *.*, wx.OPEN)
dlg.ShowModal()
filename = dlg.GetPath()

# open file, get data and put it into textbox


try:
f = open(filename, r)
data = f.read()
f.close()
textbox.SetValue(data)
except:
wx.MessageBox(Could not open file!)

68 | junio 2013 | www.elektor-magazine.es


lenguajes de programacin

def OnPlot(event):
# plot data
x,y = fill_xy_with_values(textbox)
plot_xy(x, y)
#-----------------------------------------------------------------------
def fill_xy_with_values(textbox):
# get values from textbox
# returns arrays x, y and number of data points
text=textbox.GetValue()
lines=text.splitlines()

x=[]
y=[]
for line in lines:
columns = line.split() #separator can be one or more or \t
x.append (float(columns[0]))
y.append (float(columns[1]))

return x,y
#-----------------------------------------------------------------------
def plot_xy( x, y):
Plot arrays x, y with matplotlib
plt.figure(1)
plt.subplot(111) # 1 row, 1 col, plot nb. 1
plt.grid(True)
plt.plot(x, y)
plt.xlabel(x)
plt.ylabel(y)
plt.show()
#-----------------------------------------------------------------------
# Main
#-----------------------------------------------------------------------
app = wx.App()

# create frame
frame = wx.Frame(None, title=PLOTTER, pos=(350,300))

create_menu(frame)
# editor textbox for data
textbox=wx.TextCtrl(frame, style = wx.TE_MULTILINE)

# show frame and run event loop


frame.Show()
app.MainLoop()

www.elektor-magazine.es | junio 2013 | 69


Proyectos

es un pequeo editor: los valores pueden edi- Python resulta especialmente apto para las tareas
tarse o aadirse, e incluso pueden manejarse los tpicas de adquisicin y tratamiento de datos.
datos con el portapapeles, utilizando los atajos Algunos conceptos como los filtros o la FFT no
de teclado tpicos. El botn derecho del ratn suponen un gran problema, y podemos ampliar
abre un men contextual con las funciones de nuestros proyectos de forma relativamente fcil
edicin clsicas. con un entorno de usuario grfico.
Con frame.Show() se muestra la ventana y En la prxima entrega mostraremos cmo pro-
con app.MainLoop() se inicia un event-loop. El gramar un sencillo sistema de control y adquisi-
programa se ejecuta hasta detectar un evento cin de datos mediante RS485 y el ElektorBus.
(clic con el ratn o al pulsar una tecla) y enton- (120143)
ces da paso al event-handler (funcin a la cual
se llama al detectarse un evento).
La primera funcin define los mens y su relacin
con los event-handlers que empiezan por On.
Enlaces y bibliografa
Las funciones OnExit, OnOpen y OnPlot
se ejecutan mediante la correspondiente tecla [1] Listados y dems:
del men. Con OnOpen se llama al primero al www.elektor.es/120143
selector de archivo wx.FileDialog. Aqu se uti- [2] Pgina del autor:
liza os.getcwd (get current working directory) http://staff.ltam.lu/feljc/home.html
para localizar el archivo en el directorio actual. [3] Documentacin de Python:
El archivo se abre tras haber seleccionado el nom- https://pypi.python.org/pypi/RPi.GPIO
bre. Se procesa mediante try except, para
[4] Tutoriales de Python:
detectar posibles errores de archivo. Si puede
www.awaretek.com/tutorials.html
abrirse correctamente, el contenido se copia al
completo en la variable data y se pega en el [5] Referencia:
cuadro de texto. Michael Weigend: Python gepackt
Aqu, los valores de medida ahora pueden edi- [6] Iniciacin:
tarse, copiarse o pegarse. Lgicamente tambin J.M. Hughes: Real World Instrumentation
pueden introducirse valores a mano en lugar de with Python
cargarlos desde un archivo. [7] Mdulos disponibles en paquetes de Python:
Con OnPlot Los datos se representarn grfica- http://pypi.python.org/pypi
mente en un diagrama. Para ello, se realiza una
[8] Python para electrnicos:
llamada a las funciones fill_xy_with_values y
Andrew Pratt: Programacin en Python y
plot_xy. La primera lee los datos del cuadro
GUIs para ingenieros electrnicos
Sobre el autor de texto y los separa en una matriz por lneas.
www.elektor.es/python-programming
Jean-Claude Feltes En el bucle for se iteran todas las filas. stas se
imparte clases de separan con line.split() y posteriormente se
electrnica en el aaden los valores individuales en las matrices
Lyce Technique des x[] e y[]. Despus stos se devuelven como
Arts et Mtiers en valores de la funcin.
Luxemburg. Esta La funcin plot_xy genera el diagrama
escuela de tecnologa (figura4). Obviamente este pequeo programa
y artes otorga es an algo rudimentario, pero hace bastante
cualificaciones ms de lo que podramos lograr en Visual Basic
profesionales con muchsimo ms esfuerzo. Tambin podemos
a aprendices y aadir por nuestra cuenta fcilmente una opcin
tcnicos. Dedica gran en el men para guardar los datos editados.
parte de su tiempo
libre a su pasin por Conclusiones y planes para el futuro
la electrnica y la Llegados a este punto deberamos tener una idea
programacin (vase bsica de lo fcil y eficiente que es Python. Lle-
[2]). var nuestros conocimientos al siguiente nivel es
relativamente simple al partir de estos ejemplos.

70 | junio 2013 | www.elektor-magazine.es


EAGLE V6 Getting Started Guide NUEVO
Aprendiendo a volar con Eagle LIBRO

Este libro (en ingls) facilita al lector una introduccin al uso del paquete de software
de diseo EAGLE PCB de CadSoft. Despus de leer este libro al tiempo que se practica
con varios ejemplos, y se completan los proyectos, el lector debe sentirse capaz de
afrontar retos ms complejos.

El libro te permitir rpidamente:


obtener una visin general de los principales mdulos de EAGLE: el editor de esque-
mas; el editor de diseo y el autorouter en un solo interface;
aprender a utilizar algunos de los comandos bsicos de los mdulos editores de
esquemas y diseo de EAGLE;
aplicar tu conocimiento de EAGLE a un pequeo proyecto;
aprender ms de algunos de los conceptos avanzados de EAGLE y sus capacidades;
comprender como EAGLE se relaciona con las etapas de fabricacin de las PCBs;
crear un proyecto completo, desde el diseo a la fabricacin de la PCB. El proyecto
comentado en el libro es un popular y comprobado
diseo del equipo de ingeniera de Elektor.
-10% par
a
208 pginas ISBN 978-1-907920-20-2 34,50
Incl. una copia de EAGLE 6.4.0 en CD-ROM
miembros
para MS Windows, Linux and Mac.
GREEN
Ms informacon y pedidos en www.elektor.es/eagle

powered by Eurocircuits

n u e v a s d e Elekt or
uento en la s P C B s
25% de desc
Aprovchate ahora: Elektor PCB Service ofrece siempre
un descuento durante los 90 das posteriores al lanzamiento
de las nuevas placas de Elektor!

En www.elektor.es/pcb encontrars todas las PCBs de Elektor


Proyectos

Localizador de Modelos
Robert Budniak
(Australia)
Perdidos
Directo al lugar del accidente!

A todo piloto de aviones de radiocontrol se le ha cado un avin fuera


de los lmites del campo de vuelo. A veces, la localizacin del valioso
aeroplano es fcil pero otras es difcil de localizar. Hierba alta, rboles e incluso
la incertidumbre del lugar donde ha cado, hacen que sea difcil de encontrar el
escurridizo avin. As pues, vamos a construir un localizador de direccin por radio
(RDF) que, idealmente, nos llevar directos al lugar del accidente.

Ya hay un cierto nmero de sistemas que tratan Transmisor muy ligero para el avin.
sobre cmo localizar un modelo de R/C (radio- Batera de reserva en caso de desconexin de
control) perdido. He considerado que yo poda la batera principal.
hacer un sistema un poco mejor. Las especifica- Uso de mdulos de radio comerciales autori-
ciones del diseo son: zados en la banda ISM de UHF.
Rango de alcance de al menos 200 m.
Receptor manejable y capaz de utilizar locali-
Prestaciones
zacin de direccin por radio (RDF) para loca-
Diseo de bajo coste. lizar el avin.
Placa TX con tecnologa SMD, placa RX con tecnologa T/H.
Adaptada a la mayora de mdulos radio de corto alcance de la banda Partiendo de ello, he sido capaz de poner todo
ISM de 315/433. junto en el diseo que se describe en estas pgi-
Seal de llamada programable para cada TX nas. Si sabes mucho del montaje de aviones de
Alcance mnimo: 200 m modelismo y su pilotaje, pero no sobre electr-
Alcance mximo: depende de la orografa del terreno y de los nica, considera hacer este proyecto como una
mdulos TX y RX usados. actividad de un club.
Antena direccional Yagi de 4 elementos en RX.

72 | junio 2013 | www.elektor-magazine.es


localizador de modelos perdidos

Transmisor
Cada pas tiene una serie de frecuencias de radio K5
T2
asignadas para la Banda de Instrumentacin, DTB123YK
Cientfica y Mdica (ISM), a veces combinada
K1 K4
con Dispositivos de Corto Alcance (SRD, del T1 BT1
DTB123YK Antenna
ingls, Short Range Devices). Estas frecuen- +5V

cias varan entre los distintos pases. Mientras IC1


K3
8 1
que en USA se usa la frecuencia de 315 MHz, en K2 7
0V +V
2
Antenna
VCC
SER OUT SER IN
6 3
Australia y en la mayora de los pases europeos TXD
5
IN1 IN4
4
DATA
RXD IN2 IN3 GND
tenemos 433 MHz. Como existe una demanda Transmitter
PICAXE-08M2
Module Figura 1.
de transmisores sencillos y baratos, tambin hay
R1
un cierto nmero de fabricantes que proporcio- R2 22k Esquema elctrico del
circuito del transmisor, que
nan mdulos de RF para este mercado. El tipo 10k
no es mucho ms que un
de mdulo usado en este proyecto usa Modula- 120139 - 11
microcontrolador PICAXE
cin por Desplazamiento de Amplitud (Ampli-
programado.
tude Shift keying o ASK) y este tipo de mdulos
parece tener una configuracin de terminales
estandarizada en diferentes fabricantes. Por eso Listado 1. Cdigo PICAXE TX
hemos elegido este mdulo de transmisin de main:
RF. Debemos sealar que la lista de materiales
sound 4,(0,10,120,10,0,10,120,10,0,10,120,10,0,10)
del proyecto que se indica aqu son slo mode-
high 4
los sugeridos.
pause 2300
Como podemos ver en el esquema elctrico de la
goto main
Figura 1, el mdulo de RF slo necesita tener una
trama de datos aplicada a su terminal DATA y,
para este proyecto, he usado un sencillo circuito tacin. Sin embargo, con las bajas tensiones usa-
integrado PICAXE08M. He elegido este microcon- das en este proyecto (5 V y 3,7 V), e incluso una
trolador porque se encuentra muy fcilmente, el cada de tensin de 0,4 V de un diodo Schottky
lenguaje de programacin es fcil de aprender sera una parte considerable de dicha tensin.
y el circuito integrado no requiere ningn equi- Buscando en las bases de datos de Internet,
pamiento especial para su programacin. Real- he encontrado algunos transistores de pequea
mente es un sistema ideal para proyectos de seal del tipo DTB123YK (T1, T2), que tambin
poco volumen y baja complejidad. tiene resistencias base-emisor y base en el pro-
El cdigo es slo de unas pocas lneas (ver Lis- pio componente. Estos componentes funcionan
tado 1) y, en la muestra de cdigo para este bastante bien en el bloqueo de las tensiones de
proyecto se generan tres tonos cortos de 500 Hz las bateras y la cada de tensin en los extre-
y, a continuacin, una pausa de unos 2,5 segun- mos del transistor es de tan slo 100 mV. La
dos. Aunque el cdigo se puede copiar tal cual,
recomiendo que se modifique la lnea donde se
IC2
generan los tonos, sobre todo si estamos usando NCP1117ST50 D2
PMEG2010AEH
un cierto nmero de estos transmisores, unos 2 3
K2
cerca de otros (como puede ocurrir en un club). C4 +6V5...15V
1

El transmisor normalmente est alimentado del 10u


25V
0
AUX
receptor del avin. Sin embargo, a veces, la bate-
R1
ra del avin se desconecta en un accidente, por JP1 1k5
+5V D1
lo que se ha aadido una batera de reserva. La AUX 4 IN

batera de reserva es una pequea batera de K1 USB C2


7 EN IC1
CHG
8
Figura 2.
1 JP2
Li-Po (de unos 130 mAh de capacidad), que nor- 2
10u
10V MAX1811 Un posible circuito cargador
C1 4V2 1 SELV 5
BATT
malmente alimenta pequeos aviones de interior.
3
4
4V1
BT1
para la batera de LiPo/Li-
100n 2 SELI
5 JP3 C3 Ion en el transmisor. Puede
La batera es muy barata y se puede conseguir 500mA
GND GND 1C

alimentarse de manera
3

10u
a travs de proveedores en Internet. 100mA 10V
USB-B mini Li-ion/LiPo externa (6,515 VDC) o
Normalmente utilizamos diodos de bloqueo para 120139 - 13 a travs del puerto USB,
seleccionar automticamente la fuente de alimen- segn se seleccione con JP1.

www.elektor-magazine.es | junio 2013 | 73


Proyectos

selecciona la tensin de regulacin, 4,1 V o 4,2


+5V +5V V (puente JP2, SELV). La otra entrada establece
K2
K3
IC1.A la corriente de carga, 100 mA o 500 mA (puente
+5V
RXD
2
1 1 JP3, SELI). Una caracterstica interesante de este
TXD
VCC TXD CI es la capacidad de colocar previamente la
3 4
1 RXD
batera cerca de su estado de agotada antes de
IC1.B iniciar la carga. La entrada de habilitacin (EN)
TTL-232R-5V K1
Figura 3.
+5V IC1.F IC1.E IC1.D
no se usa y, por lo tanto, est permanentemente
Construir este circuito
inversor si utilizamos un
13
1 12 11
1 10 9
1 8 conectada a la tensin de alimentacin. La des-
adaptador FTDI TTL-a- C1 14 cripcin general en las hojas de caractersticas
IC1 IC1 = 74HC04
RS-232 entre los terminales 100n 7 IC1.C establece expresamente que el CI se puede ali-
TX/RX del transmisor 5
1 6 mentado desde un puerto USB y puede trabajar
120139 - 14
y, por ejemplo, un con tensiones de entrada tan bajas como 4,35
microcontrolador. V, la mnima de un puerto USB. Con tensiones
de entrada ms altas (el MAX1811 puede tra-
nica desventaja es que, cuando se desconecta bajar con una tensin mxima de 6,5 V) y con
la batera principal, la batera de reserva entra un consumo de corriente elevado, el CI limitar
en funcionamiento. Por ello, la batera de reserva la corriente de carga para mantener la tempe-
tiene que ser desconectada cuando el avin no ratura a un nivel seguro. Para los casos en que
est en uso o terminar descargandose. slo se disponga de una fuente de alimentacin
As pues, el Localizador de Modelos Perdidos se con una tensin ms elevada, se ha aadido un
puede dejar permanentemente in situ (es tan regulador de 5V (IC2), de baja cada de tensin.
barato que podemos tener uno para cada avin), Un puente selecciona la tensin de entrada para
ya que est diseado con un puerto de carga com- el MAX1811 (JP1: AUX o USB). No conectes una
binado con un interruptor de encendido/apagado. tensin de entrada al regulador si se ha selec-
Esto lo conseguimos usando el conmutador interno cionado el puerto USB como fuente de entrada.
del conector tipo jack hembra de 2,5 mm, que El desacoplo de la entrada del MAX1811 (C2) se
es activado por un jack macho de 2,5 mm. Con dobla, al igual que el desacoplo de salida del regu-
Figura 4. el jack insertado, la batera de reserva se desco- lador. Esto se ha hecho para ahorrar el espacio.
El receptor del Localizador necta. Si se inserta un jack que est conectado
de Modelos Perdidos utiliza
a un cargador, podemos cargar la batera. Interfaz PICAXE PE
un viejo y fiable indicador
En algn momento tendremos que cargar sobre
de barras grficas de LED
LM3914. El mdulo receptor Cargador el avin un programa idntico al del CI PICAXE.
(RX) de 433 MHz (315 MHz) En la Figura 2 se muestra un circuito suge- En caso de estar usando un adaptador FTDI de
va conectado sobre el rido para un cargador. Dos entradas controlan el TTL-a-RS232 para hacer de interfaz con los ter-
conector MOD1. modo en el que trabaja el cargador. Una entrada minales TXD/RXD del PICAXE, en combinacin
con el Editor de Programacin PICAXE, necesita-
remos un circuito inversor adicional, tal y como
se muestra en la Figura 3.
+4V8 +4V8
K2

Antenna R1 BZ1
C1
D1 Receptor
1
100n
D2 El receptor est basado en un mdulo comple-
2
mentario del transmisor. Sin embargo, hay que
3

1k
3 D3
V+

9 1
+4V8 4 MD SEL LED1
18 poner un poco ms de cuidado en la seleccin
5 D4
IC1 LED2
K1 6
5
IN LED3
17
16
del receptor, para asegurar que ste suministra
+4V8 7 LED4 D5
0 8
6
DIV HI LED5
15 las seales correctas a nuestro circuito.
R2 7 14
9
10
REF OUT LED6
LED7
13
D6
Segn la Figura 4, la primera salida del mdulo
LM3914 12
11 620R 8
LED8
11
D7 receptor viene del terminal DATA, 14. Los datos
12 T1 REF ADJ LED9
13
4
DIV LO LED10
10
D8 pasan a travs de un FET, T1, de pequea seal y,
14 R3 R4
V-

15 D9 su salida, va al transductor piezoelctrico Bz1 (no


2

2N7000
MOD1 360R 2k7 D10
a un zumbador piezoelctrico). Lo que oiremos
Receiver
Module 120139 - 12
de este transductor (con suerte!) son los tonos
y pausas generadas por el transmisor. En fun-

74 | junio 2013 | www.elektor-magazine.es


localizador de modelos perdidos

cionamiento oiremos nuestra seal de llamada


personal que fue introducida en el transmisor. Lista de materiales
La segunda salida del transmisor es la salida Transmisor
RSSA (terminal 13). Bsicamente, es una ten- Resistencias
sin que es proporcional a la fuerza de seal R1 = 10k 1%, SMD0805
y usada como parte del Control Automtico de R2 = 22k 1%, SMD0805

Ganancia (CAG) en estos receptores. Esta seal Semiconductores


IC1 = PICAXE-08M2, programado
se aplica a la entrada de un controlador LED
T1,T2 = DTB123YK
LM3914. Se detect que la seal de RSSA del
Miscelneos
prototipo variaba entre 0,4 V y 2 V, con lo que
K1,K2,K5 = conector tipo pinheader de 3 terminales,
los lmites superiores e inferiores del controla- paso 2,54 mm.
dor LED han sido establecidos en estos valores. K3 = conector tipo pinheader de 4 terminales, paso
2,54 mm (opcional, ver texto).
No entrar en el diseo del circuito alrededor
K4,BT1, conector tipo pinheader de 2 terminales,
del LM3914, ya que este integrado ha sido utili- paso 2,54 mm.
zado en un sinfn de proyectos de electrnica DIY Mdulo transmisor (en K3), ASK, banda ISM 433MHz,
modelo autorizado, por ejemplo, Quasar Electronics
(Do Your Self o Hazlo T Mismo) durante las
tipo QAM-TX1 (433 MHz), Farnell/Newark # 1304024.
dcadas pasadas. Si queremos un tutorial ms Lectores USA, usad equivalente de 315MHz. Figura 5.
detallado, dirigid vuestro navegador web a [1] Batera LiPo, de 3,7V, 130mAh La placa del Transmisor
Placa de circuito impreso ref.120139-1 es de doble cara y utiliza
y disfrutad del EEVBlog #204 de Dave. Saludad
componentes SMD. La
a Dave de nuestra parte. Receptor
placa del Receptor est
El receptor se alimenta con cuatro pilas AA o AAA, Resistencias
R1 = 1k diseada en una sola
recargables o secas, aunque tres pilas secas tam-
R2 = 620 1% cara con componentes de
bin deberan trabajar. A pesar de que las hojas de R3 = 360 1% taladro pasante. La placa
caractersticas del transmisor dicen que la mxima R4 = 2.7k TX se muestra al 150 %
tensin es de 5 V, hemos verificado que el mdulo Condensadores de su tamao real.
puede trabajar sin problemas con hasta 7 V. C1 = 100nF, paso 5 mm o 7,5 mm
El otro elemento importante asociado con el Semiconductores
receptor es la antena direccional Yagi de 4 ele- D1D10 = LED, naranja, 2,5x5mm rectangular, 20mA
T1 = 2N7000
mentos. Esta antena fue elegida por su simplici- IC1 = LM3914
dad y sus propiedades direccionales, una carac-
Miscelneos
terstica que, obviamente, ser necesaria en la BZ1 = (no en la placa) transductor piezoelctrico, ter-
seccin de cmo usarla. minales flotantes, Farnell/Newark # 1193640
K1,K2,(BZ1) = conector tipo pinheader de 2 termi-
nales, paso 2,54 mm
Montaje (MOD1) = conector tipo pinheader de 15 terminales,
El transmisor est construido sobre una placa SIL, rectos, paso 2,54 mm.
de circuito impreso de doble cara que usa com- MOD1 = Receptor AM SuperHet, QAM-RX3 (433
MHz), RS Components # 742-4484. Lectores USA,
ponentes SMD (ver Figura 5). El mdulo usa usad equivalente de 315 MHz.
conectores del tipo pinheaders, con separacin Soporte para 3 4 pilas AA(A), ver texto.
entre terminales de 2,54 mm, para todas las Placa de circuito impreso ref.120139-2

conexiones externas excepto para el posible K3.


La informacin del diseo se puede descargar
gratis de [2]. El PICAXE se puede soldar sobre la El mdulo de RF se puede conectar a la placa con
placa, pero tambin se puede montado sobre un un trozo corto de cable plano de 4 hilos, usando
zcalo DIL-8. Slo soldaremos los dos transisto- conectores pinheaders y adaptando conectores
res si usamos la versin con batera de reserva. IDC. O bien, se puede dejar plano sobre la placa
No conectaremos an el mdulo de RF sobre la del microcontrolador, tal y como se muestra en la
huella marcada como K3. Figura 6 (versin de 433 MHz construida por los
En estas condiciones, podemos probar el con- Laboratorios de Elektor). Nos aseguraremos de que
trolador del transmisor conectando un transmi- las caras de soldadura de las placas no se tocan.
sor piezoelctrico entre los terminales de datos La parte final es la instalacin de una antena de
y masa que van al mdulo de RF. Despus de un cuarto de onda. Una pieza del hilo rgido de,
aplicar la alimentacin deberamos ser capaces aproximadamente, 173 mm de longitud, har
de or nuestros tonos de llamada. esta funcin (yo he usado un nucleo de un cable

www.elektor-magazine.es | junio 2013 | 75


Proyectos

AA(A) se pueden montar en la parte ancha de la


antena Yagi, detrs del reflector. Los elementos
radiantes (dipolo) de la antena Yagi deberan estar
conectados a la entrada del mdulo de radio con
un cable coaxial de 50 de pequea longitud,
como el RG174/U o /CU. La longitud de este cable
debe ser la mnima posible para evitar prdidas
Figura 6.
excesivas. Resiste cualquier tentacin de utilizar
Placas del Cargador
LiPo (izquierda) y del TX un cable de audio apantallado.
ensamblada (derecha). La El cargador (opcional) est construido sobre la
placa PICAXE y el mdulo placa que se muestra en la Figura 7. No olvi-
transmisor pueden ser dis montar los puentes de acuerdo a nuestras
conectados sin cable, necesidades.
simplemente doblando La antena de 4 elementos es totalmente de
y soldando los cuatro fabricacin casera. En Internet podemos encon-
terminales directamente
trar varios diseos y puedes convencer a algn
sobre K3.
miembro de tu club local de aeromodelismo, con
conocimientos mecnicos, de construir algunas
Ethernet). Si usamos un mdulo TX de 315 MHz, antenas ms sofisticadas para los miembros del
la longitud de la antena debe ser de 240 mm mismo. El autor hizo los elementos radiantes a
(recordad que viene de (300/f) 4). partir de alambre de percha, aunque cualquier
La placa del microcontrolador, el mdulo de RF alambre rgido har la funcin, como el del cable
y la batera de reserva (si se usa) pueden suje- de instalacin elctrica. Intenta cortar los ele-
tarse con un trozo corto de tubo termo-retrctil. mentos radiantes a las longitudes mostradas en
El diseo de la placa de circuito impreso del recep- el dibujo de la Figura 8 (dimensiones para la
tor tambin se muestra en la Figura 5. El receptor frecuencia de 433 MHz). El prototipo del autor
se monta sobre una placa de una sola cara para fue hecho con hojas de plstico corrugado (de las
componentes de taladro pasante, por lo que su marcas Corflute; Corriboard; Polyflute) de unos
montaje no debe suponer problemas. Insertare- 3 mm (1/8 pulgadas), con los radiantes inserta-
mos y soldaremos todos los componentes en la dos en los ncleos. El espaciado no se calcula de
placa. El mdulo de radio se monta verticalmente. forma exacta, sino que se obtiene con la prctica.
La placa y el soporte para las tres (o cuatro) pilas Los Laboratorios de Elektor construyeron su
antena de Yagi con una pieza de madera de 570
x 53 x 12 mm y con trozos de hilo de cobre de
Lista de materiales cable de instalacin elctrica de 2,5 mm2 de sec-
Cargador LiPo (opcional) cin (ver la foto que abre el artculo), montados
en las posiciones exactas de la Figura 8. La
Resistencias
parte amplia (o boom) es lo suficientemente
R1 = 1.5k SMD 0805
larga y ancha como para sostener la placa RX
Condensadores y el soporte de la batera. Esta antena debera
C1 = 100nF SMD0805 X7R
tener una ganancia de unos 7 dB, permitiendo
C2,C3 = 10F 10V, SMD 0805, X7R
C4 = 10F 25V, SMD 1206, Y5V que el TX sea encontrado a una distancia de unos
300 m. En una zona urbanizada, como la de los
Semiconductores
Laboratorios, fuimos capaces de medir su loca-
D1 = LED, rojo, SMD 0805
D2 = PMEG2010AEH, Farnell/Newark # 1510673 lizacin dentro y en los alrededores del cuartel
IC1 = MAX1811ESA+, Farnell/Newark # 1593327 general de Elektor.
Figura 7. IC2 = NCP1117ST50T3G, Farnell/Newark # 2112617
Conectaremos los elementos radiantes (dipolos)
La placa del cargador es
Miscelneos de la antena al receptor a travs del cable pre-
un diseo de doble cara
K1 = mini USB hembra tipo B, SMD viamente instalado. Los ms quisquillosos con los
para componentes de K2,(BT2) = conector tipo pinheader de 2 terminales,
montaje superficial. nano-voltios puede que quieran aadir que un
paso 2,54 mm
JP1,JP2,JP3 = conector tipo pinheader de 3 termina- balun para la adaptar adecuadamente el radiador
les, paso 2,54 mm, con puente simtrico al cable coaxial asimtrico pero, en este
Placa de circuito impreso ref.120139-3
caso, el trabajo y el coste puede que no compense.

76 | junio 2013 | www.elektor-magazine.es


localizador de modelos perdidos

Figura 8.
Antena Yagi experimental
con la electrnica del
receptor sujeta en la parte
superior del boom de
madera, detrs del reflector.
Los elementos directores,
radiador y reflector
estn hechos con hilo de
I
instalacin elctrica (de
unos 2,5 mm2 / 13AWG) y
A B C D estn sujetos al brazo de
A = 30 mm madera con abrazaderas
B = 124.4 mm despus de centrarlos
C = 138 mm cuidadosamente sobre el
E = director #2, 307.9 mm* brazo. Por razones de
F = director #1, 310.8 mm* seguridad, los terminales
G = radiador, 2 x 163.5 mm* radiales deben estar
E F G H H = reflector, 338 mm* cubiertos con un objeto
I = boom, 570 mm romo o con algo plastificado.
* Hilo de 2,5 mm2/AWG 13 La ganancia es de,
aproximadamente, 7 dB.

Pruebas Continuaremos haciendo esto, parndonos de


Por suerte no se requiere ninguna calibracin. vez en cuando para comprobar nuestros datos,
Dejaremos el transmisor apagado en este pro- verificando que la barra grfica incrementa su
ceso. Encendemos el receptor y debemos or el tamao a medida que nos acercamos.
ruido blanco con los chisporroteos ocasionales. En algn punto ya estaremos cerca del transmisor
El indicador LED debera mostrar el LED ms y la barra grfica estar al mximo de su nivel.
bajo encendido. Ahora colocaremos el extremo menos sensible
Encendemos ahora el transmisor. Ahora debe- de la antena en la direccin en que creemos
ramos or nuestros tonos de llamada y la barra que est el transmisor. Ahora, cuando hacemos
grfica debera moverse arriba y abajo, sincro- girar la antena alrededor nuestro, no tenemos
nizada con los tonos de la seal de llamada. La que buscar el mximo de seal, sino la seal
barra grfica debera llegar al mximo de la escala mnima. Comenzaremos a desplazarnos sigilo-
cuando el transmisor y el receptor estn a unos samente hacia atrs.
3 m de distancia el uno del otro. Tambin podemos cambiar nuestra posicin, bien
manteniendo los radios de la antena paralelos a
En funcionamiento la tierra, bien en perpendicular, o bien en cual-
Hace falta un poco de prctica a fin de usar con quier otra orientacin.
xito el Localizador de Modelos Perdidos. Al Los ltimos metros son los ms difciles para
principio lo mejor es trabajar con un amigo que localizar de forma precisa el avin, sobre todo,
esconda el transmisor en un parque o jardn y uno perdido entre la vegetacin o la maleza.
luego intentar encontrar el transmisor. Tampoco debemos olvidar mirar en las copas de
La antena es direccional y el extremo en punta los rboles! Nunca sabemos dnde se esconde
es el extremo con mayor sensibilidad. Al buscar nuestro avin de modelismo.
el transmisor, sostendremos la antena delante de (120139)
nosotros y la giraremos haciendo un crculo com-
pleto. Escucharemos intentando identificar nues- [1] El EEVBlog # 204 de Dave: HTTP://
tra seal de llamada para asegurarnos segui- www.youtube.com/watch?v=
mos a nuestro transmisor. El grfico de barras iIKGvHjDQHs&feature=player_embedded)
nos indicar hacia donde est la seal mxima. [2] Pgina del proyecto: www.elektor-magazine.
Andaremos en la direccin de la seal mxima. es/120139

www.elektor-magazine.es | junio 2013 | 77


Magazine

Konrad Zuse:
del Z1 al Z4, y ms all
Todo empez con ceros,
1 unos y lgebra
Desde los albores de la matemtica y el pensamiento lgico, el ser
humano ha buscado formas de simplificar cualquier tarea repetitiva.
Basndose en la comprensin de las funciones y relaciones lgicas, se
desarrollaron varias mquinas de clculo tremendamente sofisticadas.
Este artculo hace un recorrido a travs de las impresionantes
contribuciones de Konrad Zuse al desarrollo del computador.

Peter Beil (Alemania)


completamente no-voltil: las mquinas
Una de las primeras mquinas de cl- modernas slo son capaces de emular
culo fue la fabricada por Gottfried Leib- esta caracterstica de forma indirecta.
niz alrededor de 1700 (figura1). Sin Konrad Zuse se percat de que la nica
embargo, tuvieron que pasar doscientos manera posible de realizar operaciones
aos antes de que estas mquinas fue- segn el diseo de su computador era
ran capaces de llevar a cabo operaciones utilizar el sistema binario. De esta forma
lgicas directamente. El incansable pen- se desmarcaba de los investigadores y
sador e inventor Konrad Zuse (figura2) pioneros en Estados Unidos y Gran Bre-
3
construy su Z1 en el ao 1938. Se tra- taa, que inicialmente prefirieron utilizar
taba de un computador hecho y derecho el sistema decimal.
(aunque mecnico). (El trmino compu-
tador deriva del latn y significa contar Z2: 16 bits a 10 Hz
o calcular). Esta mquina poda progra- Los problemas mecnicos del Z1 llevaron
marse a voluntad y slo era capaz de cal- a Zuse a realizar un experimento: en 1939
cular utilizando valores binarios. El origi- diseaba el Z2, utilizando varios cientos
nal fue destruido durante la guerra, pero de rels telefnicos (figura4). ste fun-
se expone una rplica en el Deutsches cionaba a una frecuencia de reloj de unos
Technikmuseum (Museo de Tecnologa) 10Hz, y dispona de las cuatro operaciones
de Berln (figura3). aritmticas bsicas con nmeros binarios
4
de coma fija. Contaba con una memoria
Z1: un comienzo problemtico de 16 bits y pesaba alrededor de 300kg.
El computador Z1 se basaba en funcio-
nes lgicas como and y or, pero Z3: datos en tiras de film
implementadas de forma completamente En mayo de 1941, Zuse presentaba su
mecnica! La mquina tena un conside- Z3, el primer computador digital realiza-
rable nmero de problemas debidos a las ble (figura5). ste utilizaba 600 rels en
tolerancias, la friccin y dems, y los ele- la unidad aritmtica y otros 1400 para la
mentos a veces se bloqueaban. Una de las memoria. Al igual que el Z1, usaba arit-
ventajas del Z1 respecto de los compu- mtica binaria de coma flotante, siendo el
5 tadores actuales es que su memoria era primer computador programable universal.

78 | junio 2013 | www.elektor-magazine.es


Se sabe que Zuse tena un amigo traba- 7bits y bit de signo (de ah el tamao
jando en la UFA (un gran estudio de cine de palabra bsico de 32bits, y contar
alemn), que le dio la idea de utilizar tiras con dos unidades aritmticas operando
de film perforadas como medio de entrada. simultneamente. Aparte de las opera-
La unidad era capaz de perforar direc- ciones aritmticas bsicas, era capaz
tamente la tira de film (figura6). Lgi- de calcular cuadrados y extraer races.
camente tambin dispona de un lector El set de instrucciones del Z4 constaba
adicional: utilizaba las guas del film de un total de 29. Tena conectado un
para alinear correctamente los aguje- dispositivo elctrico de impresin, pero
ros que codificaban los datos de entrada no exactamente lo que hoy llamaramos 6
(figura7). impresora, si no que ms bien se utili-
El Z3 original tambin fue destruido en la zaba para generar reportes de los cm-
guerra, pero en el Deutsches Museum de putos de la mquina (figura15).
Mnich (Museo Alemn de Ciencia y Tec- Podan introducirse programas mediante
nologa) se expone una rplica completa- tiras de film (figura16). No dispona de
mente funcional. La rplica fue fabricada memoria en el moderno sentido de la
por la compaa ZuseKG (actualmente palabra, y se perdan todos los datos al
desaparecida). Si echamos un vistazo a cortar la alimentacin. Las memorias con
su interior, podremos ver su impresio- ncleo de ferrita no entraron en escena
nante cableado, el mecanismo rotativo hasta mediados de los aos 50.
para generar las seales del reloj, y los El Z4 era capaz de realizar unas 30 ope- 7
telerruptores, utilizados posteriormente raciones por minuto: una suma llevaba
en los sistemas de marcacin telefnica aproximadamente medio segundo, y una
(figuras8, 9 y10). La mquina operaba multiplicacin unos 3.5. Se empez a tra-
con palabras de 22bits, un exponente bajar en varias mejoras, como en subru-
de 7bits, una mantisa de 14bits y un tinas del programa y registros de ndice
bit de signo. Contaba con una memo- para el clculo de direcciones, pero se
ria de 64palabras basada en rels, y perdieron con el caos de la guerra.
los programas siempre se ejecutaban
en bucle. Podan introducirse nmeros Lenguaje de programacin y
con un teclado (figura11), y los resul- desarrollos en la posguerra
8
tados se mostraban en un display utili- No todo el mundo est al tanto de que Kon-
zando pequeas bombillas (figura12). rad Zuse ya se percat por aquel enton-
Aparte de las cuatro operaciones arit- ces de la necesidad de un lenguaje de
mticas bsicas, el Z3 tambin contaba programacin de alto nivel. Entre 1945
con una funcin para races cuadradas. y 1946 desarroll Plankalkl (sistema
formal de planificacin) pero no fue capaz
Z4: an todo mecnico de publicar sus logros. Su trabajo fue un
En 1942 Zuse empez a trabajar en anticipo de los lenguajes de programacin
el Z4, que estuvo listo para su uso en posteriores como Fortran, ALGOL y COBOL.
1945 (figura13). Esta mquina tam- En los aos siguientes a la guerra, el Z4
bin se basaba en rels y su competencia se vio envuelto en una odisea a travs
9
eran los coetneos americanos MarkI de Alemania, Suiza y Francia. IBM (entre
(1944) y ENIAC (1946). Sin embargo, otros) estaba interesado en adquirir los
stos funcionaban con principios distin- derechos de propiedad intelectual con
tos, por ejemplo con tecnologa basada el objetivo de frenar cualquier desarro-
en vlvulas y representaciones decimales llo posterior de la mquina. En los aos
(figura14, Einiac de 1946). 50 la mquina se encontraba en el ETH
Al igual que el Z3, el Z4 era similar en (Instituto Tecnolgico Suizo) de Zurich,
gran medida a los ordenadores de hoy donde se utilizaba para resolver proble-
en da. Era capaz de ejecutar bucles, mas en la investigacin cientfica: en
manejar aritmtica en coma flotante con 1950 era el nico computador funcio-
una mantisa de 24bits, exponente de nando en la Europa continental. En 1960 10

www.elektor-magazine.es | junio 2013 | 79


Magazine

As es como piensa un computador como el Z3


Al final, toda operacin puede
reducirse a una suma o resta
de dos nmeros enteros.
Dos nmeros en coma flotante
se suman de la siguiente
manera. Primero se calcula la
diferencia entre exponentes;
posteriormente este valor
11
se utiliza para desplazar una
de las mantisas y alinear las
comas en binario; despus las
mantisas alineadas se suman. K. Zuse (l) y H. Nixdorf
La resta es similar, con un paso
adicional en el cual se obtiene el complemento a dos de la segunda mantisa.
La multiplicacin se hace sumando los dos exponentes y posteriormente
multiplicando las mantisas mediante un mtodo de suma iterativa.
A su vez, la divisin es parecida a la multiplicacin: se restan los exponentes y
luego se dividen las mantisas segn una resta iterativa. Las races cuadradas se
12 calculan mediante un mtodo iterativo similar a la divisin.
A nivel alto, la unidad aritmtica consta de dos partes, una se encarga de los
clculos de los exponentes y la otra en las de las mantisas. Las instrucciones
implementadas utilizando un algoritmo iterativo necesitan un secuenciador para
controlar las distintas partes de la mquina: esto se corresponde hoy en da con
el uso del microcdigo en los procesadores modernos.

la mquina dio por finalizados sus viajes, Crditos


descansando finalmente en el Deutsches Fotografas 1, 4, 5, 6, 7, 8, 9, 10, 11, 12,
Museum de Mnich. 13, 15, 16 tomadas por el autor, con la
13
La empresa Zuse continu fabricando com- autorizacin del Museo Alemn de Ciencia
putadores cientficos durante bastantes
y Tecnologa de Mnich
aos, y en 1961 lanzaron al mercado el
Fotografa 14: wikipedia.de
primer plotter completamente funcional, el
Graphomat. Sin embargo, esta pequea Fotografa 3: Museo de Tecnologa, Berln
compaa no fue capaz de hacer frente a Fotografa 2: Profesor Horst Zuse
la agresiva competencia proveniente de
Estados Unidos, y en 1964 pas a formar
parte de BBC (Brown Boveri & Cie.), y
posteriormente, en 1967, de Siemens AG.
(130040)
14

Retrnica es una seccin mensual


que trata sobre electrnica antigua,
incluyendo diseos legendarios de
Elektor. Contribuciones, sugerencias
y peticiones son bienvenidas; por
favor, enviad un e-mail a editor@
elektor.com.
15 16

80 | junio 2013 | www.elektor-magazine.es


Hexadoku

Hexadoku
Un rompecabezas con un toque electrnico
Este rompecabezas Hexadoku no requiere de nada remotamente parecido a un computador Zuse como los que aparecen en
nuestra seccin Retrnica para resolverlo. El razonamiento lgico, la concentracin y la paciencia deberan bastar para encontrar
la solucin. Introduce los nmeros o las letras de la A al F correctas en las casillas libres, encuentra la solucin en las casillas
grises, envanosla y entrars automticamente en el sorteo de uno de los cuatro bonos para la tienda de Elektor. Divirtete!

El Hexadoku utiliza los nmeros hexadecimales de 0 a F. algunos nmeros rellenos en el crucigrama, que determinan
Rellena el diagrama de 1616 casillas de modo que todos su situacin inicial. Entre todas las soluciones correctas reci-
los nmeros hexadecimales de 0 a F (es decir, 09, AF) bidas, sorteamos cada mes un gran premio y tres premios
aparezcan una sola vez en cada fila, en cada columna y en de consolacin. Para ello, debes enviarnos los nmeros de
el recuadro de 44 (marcados con lneas en negrita). Ya hay las casillas en gris.

Resuelve el Hexadoku y gana! Participa!


Las soluciones correctas recibidas de los lectores de Elektor participan Por favor, envanos tu solucin (los nmeros de las casillas grises) por
automticamente en el sorteo de cuatro bonos para la tienda de correo electrnico a [email protected] Asunto: hexadoku 06-2013
Elektor, uno de 100 y tres de 50 . Esperamos que estos premios (por favor, cpialo exactamente). Incluye en el correo tu nombre
animen a todos nuestros lectores a participar! completo y tu direccin. Envalo antes del 1 de julio de 2013.

Ganadores del sorteo


La solucin del Hexadoku de Abril de 2013 es: 934CB.
El Bono de 100 para la tienda de Elektor es para: David Smart (USA).
Y los 3 Bonos de 50 son para: Joseph Reding (Luxemburgo), Karsten Krummeich (Alemania), y Paul Blaak (Holanda).

Enhorabuena a todos!

9 C 2 4 B D E F 7 6 A 0 5 8 3 1
5 E B D 3 1 A 9 4 F 8 C 6 7 0 2
A F 3 0 8 4 6 7 D 1 2 5 E 9 B C
6 1 7 8 C 0 5 2 E 3 9 B 4 A D F
7 B 6 E 4 A F 1 9 8 0 3 C D 2 5
8 D 9 3 5 2 B 0 6 A C 1 7 E F 4
C 0 1 F 6 8 7 E 5 4 D 2 A B 9 3
2 A 4 5 9 C D 3 F 7 B E 8 0 1 6
3 2 8 1 A 5 0 D B C E F 9 6 4 7
B 4 5 7 E F 8 6 0 2 3 9 1 C A D
D 6 F A 2 7 9 C 1 5 4 8 B 3 E 0
E 9 0 C 1 3 4 B A D 6 7 F 2 5 8
F 3 E B 7 6 C A 2 0 5 4 D 1 8 9
0 5 C 6 D E 1 8 3 9 F A 2 4 7 B
1 8 A 2 F 9 3 4 C B 7 D 0 5 6 E
4 7 D 9 0 B 2 5 8 E 1 6 3 F C A

Los empleados de Elektor International Media, sus empresas subsidiarias y/o editoriales asociadas no podrn participar en este concurso.

www.elektor-magazine.es | junio 2013 | 81


Store

2 3

Oferta por tiempo limitado Pide tambin el Kit de


para socios GREEN Componentes asociado!
5 DE DESCUENTO Y www.elektor.es/labworx
ENVO GRATUITO
www.elektor.es/mayo

La puerta de entrada al cdigo abierto ocho bases de datos que comprenden circuitos inte- en el manejo de componentes de montaje superficial y las
1 Open Source grados, transistores, diodos y optpacopla dores. In- tcnicas necesarias para realizar montajes SMT satisfacto-
Electronics on Linux cluye once aplicaciones de clculo de, por ejemplo, riamente. Se revelan muchos consejos y trucos prcticos
Si alguna vez has querido aprovechar el creciente resistencia serie de diodos zener, reguladores de ten- para poner la tecnologa de montaje superficial al alcance
campo del software open source para la electrnica y las sin y AMVs. ECD facilita el acceso a los datos unos de todos sin arruinarse.
aplicaciones de uso diario, este libro (en ingls) es para ti. de 11.100 circuitos integrados, 37.000 transistores, 282 pginas ISBN 978-1-907920-12-7 34,50
Utilizando el sistema operativo Linux, el autor, Warwick FET, tiristores y triacs, 25.100 diodos y 2.000 op to
A. Smith, te gua a travs del mundo del hardware y acopladores. Todas las aplicaciones son totalmente
software abierto, ensendote a utilizar la herramientas interactivas, permitiendo al usuario aadir, editar y Placa de expansin Linux
EDA y el software que estn disponibles en lnea para completar los datos de los componentes. 4 Unidad de control Linux
descargarlos gratuitamente. Los proyectos de hardware ISBN 978-90-5381-298-3 29,50 Esta placa de ampliacin fue desarrollada para
que contiene se pueden construir con componentes impulsar nuestra de artculos sobre Linux Embebido
fcilmente localizables, dentro de la comodidad de y la correspondiente placa GNUblin. Tiene un display,
tu hogar, sobre placas de una sola cara, o fabricados LabWorX 2 botones, un reloj de tiempo real y 16 GPIOs. Devotos
profesionalmente con los archivos que t generes. Open
3
Mastering Surface de Linux, ir calentando vuestros soldadores. En la
Source Electronics on Linux trata sobre el actual cambio Mount Technology placa de expansin Linux encontraremos todo lo
del entusiasta de la electrnica en un acreditado, experto LabWorX es una coleccin de libros (en ingls) cada uno necesario para controlar varios proyectos!
y exigente ingeniero capaz de construir y modificar sus de los cuales trata un tema particular de la electrnica. Mdulo SMD - Placa montada y comprobada +
creaciones, ya sea solamente en Linux o en conjuncin Este segundo volumen, Mastering Surface Mount Tech- LCD1, X1, K1..K4, BZ1, BT1 para montar
con tu actual sistema operativo. nology (Dominando la Tecnologa de Montaje Superficial), Art.# 120596-91 34,95
272 pginas ISBN 978-1-907920-19-6 34,50 te introduce en un curso intensivo de tcnicas, consejos
y conocimientos para introducir la Tecnologa de Montaje
Superficial en tu flujo de trabajo. Incluso si tienes presu- Presentacin en vdeo de 140 minutos y ms
Ms de 75.000 componentes puesto tambin puedes poner en marcha tus diseos con DVD Feedback in
5
2
CD Elektors Components avanzados componentes de pequeo tamao. Adems de Audio Amplifiers
Database 7 explicar la metodologa y equipamiento, se presta aten- En esta clase magistral tratamos algunos aspectos
Este CD-ROM te permite acceder fcilmente a los da- cin a la tecnologa de los componentes y a las tcnicas de la realimentacin en los amplificadores de audio.
tos sobre ms de 75.000 componentes. Consta de de soldadura. Varios proyectos te introducen paso a paso El objetivo de esta Masterclass (en ingls), aunque no

82 | junio 2013 | www.elektor-magazine.es


Libros, CD-ROMs, DVDs, Kits y Mdulos

5 8

completamente exenta de matemticas, es propor- Los Secretos del Sonido y Tecnologa a corta distancia, basndose en la tecnologa de los se-
cionar una visin y comprensin de los temas involu- 7 Electric Guitar miconductores. Este libro enlaza ambas tcnicas. Catch
crados. El presentador, Jan Didden, proporciona una Este libro (en ingls) muestra, de una manera senci- the Sun es el primer libro del mundo con tecnologa NFC
visin clara de los beneficios que pueden obtenerse lla y bien fundamentada, lo que, hasta ahora, se han integrada, y curiosamente, el contenido de este libro tec-
de la realimentacin y su hermana, la correccin de considerado como secretos del fabricante. El examen nolgicamente puntero trata sobre algo en cierta me-
errores; pero tambin de sus limitaciones y desven- explora las profundidades de la guitarra, incluyendo dida primitivo: la magia de los globos aerostticos. El
tajas. Recomendado para diseadores y buenos afi- las pastillas y el entorno elctrico, de forma que la libro incluye numerosos chips NFC que permiten conec-
cionados al audio! electrnica de la guitarra ya no es considerada como tarlo a Internet, basta con tocar en los tags con nuestro
ISBN 978-907920-16-5 29,95 un alto secreto. Con unas pocas intervenciones hbi- smartphone o tablet compatibles con NFC.
les, muchos instrumentos pueden hacerse ms vers- 128 pginas ISBN 978-9-07545-861-9 45,00
tiles y que suenen mucho mejor de forma asequible
Placa Linux de Elektor en la mayora de los casos. El autor, Helmuth Lemme,

6
Simplificando Linux es un profesional experimentado de la electrnica y Contador de alfa, beta y gamma
Embebido msico activo. Realmente ha probado en la prctica Medidor de radiacin
9
A da de hoy se puede encontrar Linux corriendo en todo lo que se describe aqu. mejorado
todo tipo de dispositivos, incluso en mquinas de caf. 287 pginas ISBN 978-1-907920-13-4 34,50 El dispositivo puede utilizarse con distintos sensores
Muchos entusiastas de la electrnica estarn ansiosos para medir la radiacin gamma y alfa. Es apto para
de usar Linux como base de un proyecto para micro- medidas durante largo tiempo y el anlisis de probetas
controlador, pero la aparente complejidad del sistema El primer libro del mundo de baja actividad. En comparacin con un contador
operativo y el alto precio de las placas de desarrollo con tecnologa NFC integrada Geiger, un fotodiodo ofrece valores de cero ms bajos,
han sido hasta ahora un obstculo. Elektor resuelve 8 Catch the Sun y la radiacin de pequeas muestras se aprecia con
ambos problemas con un curso para principiantes La tcnica de comunicacin sin contacto ms antigua co- mayor facilidad. Podemos testear probetas de forma
acompaado por una tarjeta compacta y barata. Esta nocida data de hace 2000 aos en China, con la dinasta ms precisa que con un contador Geiger. Mediante un
tarjeta incluye todo lo necesario en un proyecto embe Han. Aquella poca vio nacer a la linterna Kongming: un software de PC opcional puede obtenerse el espectro
bido actual: un interfaz USB, una conexin para tarje- pequeo globo de aire caliente utilizado principalmente energtico y sacar conclusiones del objeto a examen.
tas SD y varias opciones ms de expansin! para transmitir seales militares. Hoy en da, los globos Kit de componentes incluyendo display y
Placa montada y comprobada Kongming han sido sustituidos por chips. El Near Field controlador programado
Art.# 120026-91 64,95 Communication, o NFC, ofrece conectividad inalmbrica Art.# 110538-71 39,95

www.elektor-magazine.es | junio 2013 | 83


Store

11

12

12

10

13 14

Programacin paso a paso se puede configurar tu propio circuito digital en un Curso Elemental
10 Android Apps integrado, como si fuese de verdad tu propio chip. Elementary Course
13
Este libro (en ingls) es una introduccin a la En esta serie mostramos cmo cualquier electrnico BASCOM-AVR
programacin de apps para dispositivos Android. El puede iniciarse fcilmente en este tipo de lgica Los microcontroladores AVR son populares, fciles de
funcionamiento del sistema Android se explica paso programada, con la ayuda de una placa FPGA de usar y extremadamente vestiles. En la revista Elektor
a paso, con el objetivo de mostrar como se pueden pruebas diseada en el laboratorio de Elektor. Miedo ya hemos publicado muchas aplicaciones interesantes
programar aplicaciones personales. Se presenta una a las FPGA? utilizando microcontroladores ATmega o ATtiny. La ma-
amplia variedad de aplicaciones basadas en buen Que va, ya no con la ayuda de la placa FPGA de yora de estos proyectos desempean una funcin par-
nmero de ejemplos prcticos, desde programas Elektor! ticular. En este libro (en ingls) nos centramos ms en
de matemtica simple, lectura de sensores y datos Mdulo montada y comprobada los aspectos relacionados con el software. Con muchos
GPS, hasta programacin avanzada para aplicaciones Art.# 120099-91 59,95 ejemplos prcticos mostramos cmo, utilizando BAS-
de Internet. Adems de escribir aplicaciones en el COM, puedes poner en marcha rpidamente tus ideas
lenguaje de programacin Java, este libro explica de diseo y ejecutarlas en silicio.
tambin cmo se pueden programar aplicaciones Incluye gratuitamente 224 pginas ISBN 978-1-907920-11-0 39,95
empleando Javascript o scripts PHP. Cuando se el compilador mikroC en CD-ROM
trata de personalizar tu smartphone no deberas 12
Controller Area
sentirte limitado por las aplicaciones que haya Network Projects Todos los artculos del ao 2012
en la plataforma, ya que crear tus propias apps y El objetivo de este libro (en ingls) es ensearte los 14 DVD Elektor 2012
programar dispositivos Android es ms fcil de lo que principios bsicos de las redes CAN adems del de- El DVD-ROM volumen anual se encuentra entre
piensas. sarrollo sistemas basados en microcontrolador utili- los productos ms populares de Elektor. Este DVD
244 pginas ISBN 978-1-907920-15-8 39,95 zando el bus CAN. Aprenders cmo disear nodos de contiene todos los artculos editoriales publicados en el
bus CAN basados en microcontroladores, cmo con Volumen 2012 de las publicaciones en espaol, ingls,
struir un bus CAN, cmo desar rollar programas de holands, francs y alemn de la revista Elektor.
Disea tu propio integrado alto nivel y a intercambiar datos en tiempo real sobre Con el programa Adobe Reader suministrado, los
11 Placa FPGA de Elektor el bus. Aprenders tambin cmo construir hardware artculos se presentan con el mismo diseo con el que
Uno de los componentes ms polifacticos y con microcontroladores y a conec tarlo con LEDs, LCDs originalmente los encontramos en la revista. Los DVD/
complejos de la electrnica actual es sin duda la y converti-dores A/D. CD-ROMs cuentan con un potente motor de bsqueda
FPGA, un laberinto de puertos y circuitos con la que 260 pginas ISBN 978-1-907920-04-2 34,50 y dan la posibilidad de editar los diseos de las PCBs

84 | junio 2013 | www.elektor-magazine.es


Libros, CD-ROMs, DVDs, Kits y Mdulos

15 17

18

16

con un programa grfico u obtener una copia impresa soar y de disfrutar. Si como a nosotros nos ocurre, Completa tu coleccin
a resolucin de impresora. los prodigios de las tcnicas modernas ponen a nues- 18 Linear Audio 4
ISBN 978-90-5381-273-0 27,50 tro alcance el poder maravillarnos, venid a tocar las Esta publicacin de Linear Audio (en ingls) es la cuarta
partes ms pequeas del voltio. edicin de una serie de libros impresos dedicados al
Mdulo Medidor LCR + mdulo LCD audio tcnico y la percepcin. El equipo internacional
120 revistas de Elektor en espaol Art.# 110758-93 254,00 de autores de esta edicin nuevamente ofrece artculos
DVD Elektor desde tcnicos de audio sobre un amplio nmero de temas
15
1998 a 2007 que van desde tutoriales al diseo de circuitos y
Este DVD-ROM contiene la coleccin completa de la re- 10 interesantes lecciones sistemas, a informes de proyectos y pruebas o
vista de electrnica Elek tor editada en Espaa entre
17
PIC Microcontroller revisiones de libros. Edicin contiene colaboraciones
los aos 1998-2007. Las ediciones de Elektor, que as- Programming editoriales de Nelson Pass, Burkhard Vogel, Les
cienden a un total de 120 revistas publicadas durante En este libro (en ingls) aprenderemos a programar un Bordelon, John Walton, Jan Didden y otro muchos.
esos 10 aos, estn en formato PDF y orde-nadas cro- microcontrolador utilizando JAL, un lenguaje para micros 203 pginas ISBN 978-94-90929-05-3 23,50
nolgicamente por fecha de publicacin (ao/mes). El PIC gratuito, pero increblemente potente, que goza de
DVD contiene ms de 2100 artculos imprimibles con gran popularidad en el mundo del modelismo. Empeza-
alta calidad. Puedes abrir un documento PDF seleccio- remos literalmente desde un boceto, hasta ir afianzan-
nando el ao de publicacin y luego la edicin deseada. do poco a poco nuestros conocimientos. No se necesita
ISBN 978-90-5381-241-9 59,00 formacin previa: cualquiera puede iniciarse con este
libro. Una vez superadas todas las lecciones, es decir,
tras haber completado todos los ejercicios, nos sentire-
Ms Informacin en la pgina web de
El lujo de la precisin al alcance de todos mos seguros para codificar nuestros propios programas
Elektor: www.elektor.es/store
16 Medidor LCR 0,05 % para microcontroladores PIC, as como para entender
La remarcable precisin de este aparato y su asom- programas escritos por otras personas. El software que Elektor International Media Spain, S.L.
brosa comodidad de uso son el resultado de un cuida- acompaa a este libro puede descargarse gratuitamen- Apartado de Correos 62011

doso estudio. Funciona tan bien, detrs de su fachada te, incluyendo el lenguaje de programacin JAL. 28042 Madrid Espaa
Tel.: +34 91 101 93 95
depurada, que casi olvidaremos las sutilezas de las 284 pginas ISBN 978-907920-17-2 34,50
Fax: +34 91 101 93 96
tcnicas de medida usadas en el mismo. Para nuestros
Email: [email protected]
lectores apasionados de las medidas, es la ocasin de

www.elektor-magazine.es | junio 2013 | 85


Magazine

Prximo mes en Elektor

Edicin Generadora de Proyectos 2013


La edicin extra gruesa anual con un puado extra de circuitos
El prximo mes publicaremos la trigsimo tercera edicin de la afamada edicin especial de verano para los
meses de Julio y Agosto. Esta apreciada edicin ofrece un montn de ideas, proyectos y software prctico en
una mezcla de artculos largos y cortos. Nuestros editores se estn dejando las pestaas para asegurarse de que
puedas disfrutar de un montn de pginas con descripciones detalladas y aplicaciones electrnicas originales.

No te la pierdas, esta edicin extra de Elektor viene repleta de artculos y proyectos como:
Comprobador CAN Control de motores paso a paso con ElektorBus Encendido CDI para ciclomotores Limitador de
corriente de irrupcin Amplificador de audio en clase D con 555 Comprobador de servo Monitor ECG para Android
Power pack USB Reloj Numitron con Arduino Ayuda de aparcamiento Registrador de temperatura multicanal
Control remoto IR para Android Reloj digital extremadamente preciso Interfaz de medida de precisin
universal Pincho teclado USB AVR.

Los ttulos de los artculos los contenidos de la revista estn sujetos a cambios; por favor comprubalo en www.elektor-magazine.com.

Hazte miembro
GRATIS del
Elektor.POST
Lo ltimo en electrnica y
tecnologas de la informacin
Videos, trucos, consejos, ofertas y ms
Proyecto exclusivo cada dos semanas,
slo para miembros GREEN
Elektor tras la escena
Cada viernes en tu bandeja de entrada

Regstrate hoy en www.elektor.es/boletin


86 | junio 2013 | www.elektor-magazine.es
Elektor pasa a ser Digital
!Hazte socio GREEN ahora!
Como miembro GREEN OFERTA ESPECIAL
obtendrs: Precio normal: 92

8 ediciones estndar digitales de Elektor Ahora un ao por solo 50


50
2 ediciones especiales digitales y si eres menor de 25 aos* pagars solo 25 !
(enero/febrero y julio/agosto) * Debers facilitarnos algn documento que acredite tu edad.
Un mnimo del 10% de descuento en
todos los artculos de Elektor.STORE
Acceso completo a Elektor.LABS
Acceso completo a Elektor.MAGAZINE;
el archivo online de Elektor
Recibir Elektor.POST en tu cuenta de email
(incluyendo 25 proyectos extra cada ao)
Tu propia tarjeta GREEN CARD de socio
ecolgico

Hazte socio GREEN ahora en www.elektor.es/miembro


PCBs
Multicapa Prototipos
powered by Eurocircuits
Pequeas series
Calidad Profesional
Servicio de Calidad
Pedido Seguro

Elektor PCB Service de un vistazo:


4 servicios especcos de panel compar-

tido y 1 servicio sin agrupamiento Entrega a
Servicio gratuito de vericacin de datos

de PCB online partir de
Calculadora de precios online
2 das
Sin pedido mnimo

Sin cargos por lmacin o puesta

laborables
en marcha

Ms informacin y pedidos en www.elektorpcbservice.com

También podría gustarte