revista elektor-linux simplificado

80
[ Analógico Digital Microcontroladores & Embebido Audio Test & Medida ] Mayo 2012 N.º 383 6,50 e 9 7 7 0 2 1 1 3 9 7 0 0 8 0 0 3 8 3 ISSN 0211-397X www.elektor.es Parte 1: Primeros pasos Mantén bajo el consumo de energía El Linux embebido simplificado Carga sin pérdidas Dentro de Pico C-Super Programación del AT2313 al estilo Z80 Preamplificador MM/MD de Alta Gama El Vinilo y los LPs atacan de nuevo Platino Controlado por LabVIEW Una introducción a LIFA, interfaz de LabVIEW para Arduino e interesante tutorial Iniciamos un nuevo Personal Download for I © Elektor 74810

Upload: maikel-gonzalez

Post on 28-Nov-2015

344 views

Category:

Documents


15 download

TRANSCRIPT

Page 1: Revista Elektor-linux Simplificado

[Analógico • Digital • Microcontroladores & Embebido • Audio • Test & Medida ] Mayo 2012 N.º 383 6,50 e

9 770211 397008

0 0 3 8 3ISSN 0211-397X

www.elektor.es

Parte 1: Primeros pasos

Mantén bajo el consumo de energía

El Linux embebido simplificado

Carga sin pérdidas

Dentro de Pico C-SuperProgramación del AT2313 al estilo Z80

Preamplificador MM/MD de Alta GamaEl Vinilo y los LPs atacan de nuevo

Platino Controlado por LabVIEWUna introducción a LIFA, interfaz de LabVIEW para Arduino

e interesante tutorial

Iniciamos un nuevo

Personal Download for I © Elektor

74810

Page 2: Revista Elektor-linux Simplificado

XI

P

Ø

YI

YR XR

National Instruments Spain S.L. ■ Europa Empresarial ■ c/Rozabella, 2 - edificio Berlin ■ 1a planta ■ 28230 Las Rozas (Madrid) ■ EspañaTel: +34 91 640 00 85 ó 93 582 0251 ■ Fax: +34 91 640 05 33 ó 93 582 4370 ■ CIF: B-80021462 Inscrita en el RegistroMercantil de Madrid, Folio, 115, Tomo 1181, Hoja N°22335, Inscrip. 1a ■ Sociedad Unipersonal S.L.

©2012 National Instruments. Todos los derechos reservados. LabVIEW, National Instruments, NI, and ni.com son marcas registradas de National Instruments. Los nombres de los otros productos y las razones sociales mencionados son marcas comerciales o nombres comerciales de sus respectivas compañías. 04555

>> Aprenda cómo NI soporta la próxima generación de innovación en ni.com/academic/esa

Realizar la transición entre aprender la teoría de control y realmente poner en marcha ese conocimiento es uno de los retos más grandes en la educación, tanto para estudiantes como educadores. National Instruments proporciona a los estudiantes el hardware y el software que necesitan para experimentar, ir más allá de la teoría y de la simulación y saber lo que significa hacer ingeniería.

HERRAMIENTAS DOCENTES

NI LabVIEW

NI CompactRIO

NI Robotics Kit

Quanser Control Plants

Enseñanza en Control, desde la Teoría al Laboratorio

No solo enseñe ingeniería. Haga ingeniería

91 640 008593 582 0251

04555_Spain_Control_Ad.indd 1 1/18/12 8:52 AMNaamloos-4 1 28-03-12 09:48

Personal Download for I © Elektor

74810

Page 3: Revista Elektor-linux Simplificado

Naamloos-1 1 23-03-12 08:07

Personal Download for I © Elektor

74810

Page 4: Revista Elektor-linux Simplificado

4 05-2012 elektor

Los 10DEC Mandamientos de la Electrónica

00h. Cuidado con los relámpagos que se esconden en un condensador sin des-cargar, no sea que produzcan un tem-blor en tus nalgas de una manera muy poco caballerosa.

01h. Que el interruptor que suministra grandes cantidades de chicha esté abierto y debidamente etiquetado, así tus días seguirán transcurriendo en este valle de lágrimas.

02h. Comprueba por ti mismo que todos los circuitos que irradian y sobre los que vas a trabajar están conectados a tierra, a menos que quieras elevarte al potencial de alta frecuencia y ponerte a radiar tú también.

03h. Asegúrate de utilizar el método apro-piado cuando hagas medidas en circui-tos de Alto Voltaje para no incinerarte tú y tu instrumento de medida; por-que ciertamente, tú no tienes número de inventario y puedes ser reempla-zado fácilmente, pero el instrumento si lo tiene, y en consecuencia, afligen mucho al Gerente y a los departamen-tos de Contabilidad y Compras.

04h. No te quedes entre aquellos que se dedican a los shocks intencionados, porque no estarán mucho en este mundo.

05h. Cuídate de manipular los dispositivos de seguridad y bloqueo, porque esto desatará la ira de los jefes y atraerá sobre tu cabeza y hombros la furia del responsable de seguridad.

06h. No trabajes en equipos alimentados, porque si lo haces, tus amigos compra-ran cervezas para tu viuda e intentarán consolarla de formas generalmente no aceptadas por ti.

07h. En verdad te digo, nunca trabajes solo en equipos de Alta Tensión, cocinar con electricidad es un proceso lento y tú podrías chisporrotear en tu propia grasa durante horas y horas hasta que tu Creador considere oportuno acabar con tu miseria y acogerte en su seno.

08h. No juegues con los tubos y sustancias radioactivas, no sea que comiences a brillar en la oscuridad como una luciér-naga y tu mujer se frustre cada noche y no encuentre otro uso para ti más que tu sueldo.

09h. Encomiéndate a la memoria de los trabajos de los Profetas, que han sido escritas en los Libros de instrucciones, que contienen la información correcta que te reconfortará, y no cometerás errores – si, bueno, a veces, tal vez, lo siento pero eso.

(autor desconocido)

6 ColofónInformación Corporativa de la revista Elektor.

8 Noticias LocalesUn paseo mensual por lo último en el mundo de la electrónica.

11 El Desafío RL78 de Energía Verde ha comenzadoPresenta tu diseño energéticamente eficiente y ayuda a crear un futuro brillante, limpio y saludable.

12 Embedded World 2012Lo que pasa en el mundo embebido se muestra en la feria electrónica Embedded World en Nürnberg, Alemania.

15 ¿Qué haces?: Minty Geek Este mes visitamos a Mark Brickly, inventor de Minty Geek.

16 Platino Controlado por LabVIEW (1)Desarrolla rápidamente tu aplicación utilizando estos entornos de programación.

22 Simplificando Linux Embebido (1)Este artículo inicia un curso para principiantes sobre el uso embebido de este popular sistema operativo in una placa barata.

28 Preamplificador 2012 (2)Presentamos una placa de alta gama para Bobina Móvil/Imán Móvil (MM/MC).

34 Carga sin PérdidaUna solución ‘verde’ para limitar el gasto de energía de un shunt.

39 Laboratorio: Montaje de tubos Nixie

40 Laboratorio: Verificar la Calidad

40 Laboratorio: Comprobación de Transformador

41 Laboratorio: Oscilaciones parásitas

}

Personal Download for I © Elektor

74810

Page 5: Revista Elektor-linux Simplificado

5elektor 05-2012

42 Laboratorio: Medidor RLC

42 Laboratorio: Modificación de 1 k

43 Consejos sobre componentesRaymon ha elegido este mes uno MOSFET con características poco usuales.

44 Dentro de Pico-C SuperEn este artículo profundizamos en el software de este instrumento.

48 QuadrowalkerEste pequeño robot de cuatro patas que camina con ocho servos.

52 Electrónica para Principiantes (5)Este mes examinamos las formas de obtener tensiones estables.

58 RAMBOard-SerieUn controlador de memoria estática con interfaz SPI facilita la ampliación de memoria para pequeños micros de 8 bits.

60 Radio Definida por Software con AVR (3)En esta entrega veremos varios experimentos con modulación de amplitud y frecuencia.

68 Retrónica: Analizador lógico de Elektor (1981)Las usuales características de la electrónica “extraña y antigua”.

70 HexadokuNuestro rompecabezas mensual con un toque de electrónica.

76 Próximo númeroUn avance de los contenidos de la próxima edición.

22 Simplificando Linux Embebido (1)A día de hoy se puede encontrar Linux corriendo en todo tipo de dispositivos, in-

cluso en máquinas de café. Muchos entusiastas de la electrónica estarán an-siosos de usar Linux como base de un proyecto para microcontrolador, pero

la aparente complejidad del sistema operativo y el alto precio de las placas de desarrollo han sido hasta ahora un obstáculo. Elektor resuelve ambos problemas con un curso para principiantes acompañado por una tarjeta compacta y barata.

60 Radio Definida por Software con AVR (3)

El popular microcontrolador AVR ATmega88 se puede usar para tareas de pro-cesado de señales digitales. En esta entrega veremos algunos experimentos que utilizan la modulación en frecuencia y amplitud, incluido un pequeño transmisor de test de código de tiempo DCF. También ampliaremos el hardware añadiendo una antena activa de ferrita que nos permite recibir señales de ondas medias y largas.

44 Inside Pico C-SuperPico C-Super es una versión ampliada de la idea original con varias funciones adi-cionales comprimidas en el extremamente sencillo hardware de bajo coste me-diante el software. En este artículo adicional profundizamos en el software que hace destacar este instrumento, particularmente la versión Plus.

28 Preamplificador 2012 (2)Los platos de alta gama suelen tener precios estratosféricos, pero no tienen ningún sentido gastarse el dinero en ello si no dispones de un preamplificador adecuado que se adapte óptimamente a sus características, y esto es exactamente lo que hace el diseño que presentamos – con bastante éxito. Segunda parte de nuestro preamplificador 2012: la palca de Bobina Móvil/Imán Móvil (MC/MM).

}

SUMARIOVolumen 33Mayo 2012nº 383

Personal Download for I © Elektor

74810

Page 6: Revista Elektor-linux Simplificado

6 05-2012 elektor

ELEkTOR

Nuestras redes

Nuestro equipoEditor: Eduardo Corral ([email protected])

Redacción Internacional: Harry Baggen, Thijs Beckers, Jan Buiting, Jens Nickel, Clemens Valens

Equipo de diseño: Christian Vossen (dir.), Thijs Beckers, Ton Giesberts, Luc Lemmens, Raymond Vermeulen, Jan Visser

Diseño gráfico y preimpresión: Giel Dols, David Márquez, Jeanine Opreij, Mart Schroijen

Director online: Carlo van Nistelrooy

Director de marca: Wisse Hettinga ([email protected])

Director general: Don Akkermans

Nuestros equipos internacionales

Volumen 33, Número 383, Mayo 2012 Depósito Legal: GU.3-1980 31 de Diciembre de 2006ISSN 0211-397X

Elektor International Media Spain, S.L.Jerez de los Caballeros, 228042 Madrid - España.Tel.: 91 110 93 95 - Fax: 91 110 93 96Web: www.elektor.es E-mail: [email protected]

Dirección Postal:Apartado de Correos 62011 - 28042 Madrid - España.

Cuenta corriente:Número: 2100 1135 64 0200152440Entidad: La CaixaIBAN: ES79 2100 1135 6402 0015 2440BIC: CAIXESBBMoneda: Euro

Derechos de autorLos circuitos descritos en esta revista son exclusivamente para uso doméstico. Los derechos de autor de todos los gráficos, fotografías, diseños de circuitos impresos, circuitos integrados programados, discos, CD-ROM’s, portadores de software y los textos de los artículos publicados en nuestros libros y revis-tas (que no sean anuncios de terceros) están registrados por Elektor International Media BV y no pueden ser reproducidos o difundidos de ninguna forma ni por ningún medio, incluidas fotocopias, escaneos o grabaciones, parcial o totalmente sin

Tech the Future explora las soluciones para un futuro sostenible suministradas por la

tecnología, la creatividad y la ciencia.

United KingdomWisse Hettinga+31 (0)46 [email protected]

USAHugo Vanhaecke+1 [email protected]

GermanyFerdinand te Walvaart+31 46 [email protected]

FranceDenis Meyer+31 46 [email protected]

NetherlandsHarry Baggen+31 46 [email protected]

SpainEduardo Corral+34 91 101 93 [email protected]

ItalyMaurizio del Corso+39 [email protected]

SwedenWisse Hettinga+31 46 [email protected]

BrazilJoão Martins+55 11 4195 [email protected]

PortugalJoão Martins+351 [email protected]

IndiaSunil D. Malekar+91 [email protected]

RussiaNataliya Melnikova8 10 7 (965) 395 33 [email protected]

TurkeyZeynep köksal+90 532 277 48 [email protected]

South AfricaJohan Dijk+27 78 2330 694 / +31 6 109 31 926j.dijk @elektor.com

ChinaCees Baay+86 21 6445 [email protected]

Personal Download for I © Elektor

74810

Page 7: Revista Elektor-linux Simplificado

7elektor 05-2012

ELEkTOR

la previa autorización escrita del Editor. También será preciso disponer del citado permiso antes de almacenar cualquier parte de esta publicación en sistemas de recuperación de cualquier naturaleza. Los circuitos, dispositivos, componentes, etc., des-critos en esta revista pueden estar protegidos bajo patente. El Editor no acepta responsabilidad alguna en ausencia de identi-ficación de la citada patente(s) u otra protección. La presenta-ción de diseños o artículos implica que el Editor está autoriza-do a modificar los textos y los diseños presentados y a utilizar los contenidos en otras publicaciones y actividades de Elektor

International Media. El Editor no garantiza la devolución del ma-terial a él enviado.

RenunciaLos precios y descripciones de los productos relacionados con la publicación están sujetos a modificación. Excluidos errores y omisiones. Las opiniones expresadas a lo largo de los distintos artículos, así como el contenido de los mismos, son responsabilidad exclusiva de sus autores. Así mismo, el contenido de los mensajes publicitarios es responsabilidad de los anunciantes.

Elektor es editado por Elektor International Media B.V.Sede social: Allee, 1 – 6141 AV Limbricht, The Netherlands

Impreso por Senefelder Misset – Doetinchem, The Netherlands

Distribución en España por S.G.E.L.

www.elektor.es

Nuestros miembros

¿Aún no eres miembro?Apúntate en www.elektor.es/miembro

Ahora somos 83 países.

Nuestros patrocinadores AudioXpress www.cc-webshop.com . . . . . . . . . . . . . . . . . . 57

Eurocircuits www.elektorpcbservices.com . . . . . . . . . . . . . . 21

Hameg www.hameg.com . . . . . . . . . . . . . . . . . . . . . 76

MikroElektronika www.mikroe.com . . . . . . . . . . . . . . . . . . . . . . 3

National Instruments www.ni.com/es. . . . . . . . . . . . . . . . . . . . . . . . 2

Green RL78 Design Challenge www.circuitcellar.com/RenesasRL78Challenge . . . . 80

Tech the Future www.techthefuture.com . . . . . . . . . . . . . . . . . 65

¿No eres patrocinador aún? Ponte en contacto con nosotros en [email protected] (+34 911019395)

para reservar tu propio espacio para la próxima edición de nuestra revista

Green Energy Challenge

276438 miembros en

Personal Download for I © Elektor

74810

Page 8: Revista Elektor-linux Simplificado

05-2012 elektor 8

NOTICIAS

Microchip simplifica su línea de compiladores C y ofrece la mejor velocidad de ejecución y el mejor tamaño de código para todos los microcontroladores PIC® y DSC dsPIC®

Microchip anuncia que ha simplificado su línea de compiladores C, que proporcionan la mejor velocidad de ejecución y el mejor tamaño de código para los aproximada-mente 900 microcontroladores PIC® y con-troladores de señal digital (Digital Signal Controllers, DSC) dsPIC®. Los compilado-res MPLAB® XC8, XC16 y XC32 facilitan el trabajo a los diseñadores de 8, 16 y 32 bit gracias a tres niveles económicos de opti-mización: Free, Standard y Pro (Gratuito, Estándar y Profesional). Además, MPLAB XC es compatible con los sistemas operati-vos Linux, Mac OS® y Windows®, permitien-do de este modo que los diseñadores utili-cen su plataforma favorita para desarrollo embebido.Otro factor importante para los diseñado-res en la actualidad es la posibilidad de reu-tilizar el código y adoptar fácilmente el nivel de prestaciones del microcontrolador que mejor se adapte a las necesidades de cada proyecto. Éste ha sido siempre un punto fuerte de Microchip, y MPLAB XC sigue la tradición al facilitar la transferencia de có-digo desde cualquier otro compilador de Microchip ya existente. Además, el MPLAB

XC completa el paquete de herramientas de Microchip formado por compiladores y depuradores/programadores compatibles y capaces que funcionar perfectamente en el entorno de desarrollo integrado MPLAB® X universal, multiplataforma y de código abierto, para reducir las curvas de apren-dizaje y las inversiones en herramientas. Los compiladores MPLAB XC también son compatibles con las versiones anteriores de MPLAB IDE.Muchos diseñadores necesitan un compila-dor C y las ediciones gratuitas de los compi-ladores MPLAB XC de Microchip de 8, 16 y 32 bit ofrecen numerosas optimizaciones,

son totalmente funcionales y no tienen li-mitación alguna para la licencia por su uso comercial. Para quienes deseen probar su código con los niveles de optimización Pro, que son aproximadamente un 50% mejores que las ediciones Free, Microchip también ofrece ediciones de evaluación válidas para 60 días con optimización Pro que pasan a ser compiladores de nivel Free tras el perío-do de evaluación. Al igual que las ediciones Free, las ediciones de evaluación son total-mente funcionales y no tienen limitación alguna para la licencia por su uso comercial.Microchip ofrece ahora la posibilidad de adquirir licencias para un único usuario y las organizaciones con muchos ingenieros pueden adquirir una licencia de red flotan-te en la cual el compilador se instala en la Intranet de la compañía para facilitar el ac-ceso a todos sus diseñadores.Los compiladores MPLAB XC8 y MPLAB XC32 ya se encuentran disponibles, mien-tras que el compilador MPLAB XC16 se es-pera para abril y el conjunto con descuento con los tres compiladores para mayo.

www.microchip.com

Las marcas Farnell y element14 se unen para liderar la industria electrónica online

Estas marcas se han combinado para estable-cer Farnell element14 como el recurso mun-dial de confianza de soluciones de ingenieríaFarnell, el distribuidor multicanal líder de electrónica, ha anunciado que las marcas Farnell y element14 se han fusionado. La oferta conjunta de transacciones comer-ciales y comunidad en Europa de Premier Farnell crea así una sola marca que conso-lidará las soluciones de ingeniería especia-lizadas del grupo empresarial. Los ingenie-ros de diseño y profesionales de compra ahora podrán acceder a los productos, la información, las herramientas y los servi-cios más recientes, necesarios para realizar su labor, todo en un sólo lugar. La nueva marca seguirá ofreciendo a los clientes todo lo que están acostumbrados a recibir de Farnell, pero con el beneficio añadido de combinar las herramientas on-line de investigación, diseño y colaboración innovadoras de la industria de element14. Esta comunidad online pionera fue la pri-mera en permitir a los ingenieros conec-tarse mutuamente y con los expertos de la industria para colaborar con nuevas ideas y

desafíos. La comunidad ayuda a los usua-rios a encontrar las respuestas a sus inte-rrogantes y a reunir información imparcial e independiente sobre los temas técnicos y las innovaciones y las tecnologías más recientes. Farnell cuenta con un orgulloso récord de innovación en la distribución de productos electrónicos en Europa. Concentrándose continuamente en los clientes como parte de su estrategia comercial, Farnell ha lide-rado la industria en temas como la confor-midad RoHS, ha creado opciones de emba-laje galardonadas, ha sido la primera em-presa distribuidora en ofrecer la descarga gratuita de una herramienta de software CAD, y recientemente ha lanzado el único y poderoso Knode en element14.Mediante el anuncio reciente de un acuer-do de distribución a nivel mundial con Raspberry Pi Foundation, la comunidad element14 de Farnell impulsa la revolución Raspberry Pi en todo el mundo para educar a la nueva generación de programadores. Farnell element14 es uno de los dos únicos distribuidores a nivel mundial, que ofrecen

el innovador ordenador del tamaño de una tarjeta de crédito. Un grupo especial crea-do en la comunidad online respalda las con-versaciones, los debates y el compartir de conocimiento e información de la ola de di-señadores y programadores principiantes que pretenden sacarle el mayor provecho al Raspberry Pi.Farnell element14 se basa en el legado de liderazgo e innovación en la distribución de productos de electrónica, y definirá el futuro con servicios y soluciones que van más allá de los productos. A medida que cada vez más clientes realizan sus com-pras online, Farnell element14 lidera la industria fusionando la marca ya estable-cida de Farnell con la comunidad innova-dora element14 para ofrecer a los clientes un servicio sin comparación y acceso a soporte y consejos a nivel mundial. Esta nueva marca fusionada establecerá firme-mente a Farnell element14 como el recur-so mundial de confianza de soluciones de ingeniería.

www.premierfarnell.com

Personal Download for I © Elektor

74810

Page 9: Revista Elektor-linux Simplificado

9elektor 05-2012

NOTICIAS

Pantallas Inteligentes con conectividad Ethernet

Sagitrón distribuidor para España y Portu-gal de Noritake Itron y de IPLógiKa pre-senta ejemplos de aplicaciones para pan-tallas inteligentes y monitorización desde Internet.En los últimos años, las aplicaciones de inter-faz de usuario han cambiado para interfaces más sencillas y más funcionales, aumentan-do las prestaciones y al mismo tiempo aho-rrando costes y maximizando la producción. Además de un interfaz de usuario atractivo y funcional local en nuestro equipo, la capaci-

dad de monitorizar y controlar remotamen-te es una importante ventaja también.Noritake pone a nuestra disposición una amplia gama de pantallas inteligentes con librerías gráficas incluidas que ahorran mu-cho tiempo en el desarrollo de una solución de interfaz táctil de usuario muy atractiva y profesional. Además con las pasarelas de IPLógiKa se puede añadir de una forma muy sencilla conectividad Ethernet a estas pantallas para control y monitorización re-mota de nuestro sistema. Las pasarelas de IPLógiKa implementan to-das las capas de Ethernet permitiendo inclu-so páginas web embebidas que se pueden consultar desde cualquier sitio del mundo donde haya una conexión a Internet.El interfaz entre la pasarela IPLógiKa y la pantalla iSmart de Noritake es mediante una sencilla conexión RS232, que además de enviar y recibir información de variables del sistema o de instrucciones para la pan-

talla desde la pasarela, también sirve para programar la funcionalidad de la pasarela mediante sencillos comandos AT.Las principales aplicaciones son:• Equipos industriales con control y moni-

torización local y remota• Equipos de interfaz de usuario • Maquinas de vending en supermercados• Equipos antiguos que necesiten de un me-

jor interfaz de usuario y monitorización• Electrodomésticos inteligentes con co-

nectividad Ethernet • Comunicaciones punto a punto median-

te una conectividad EthernetUna de las funcionalidades más interesan-tes es la posibilidad de enviar emails de forma automática, o por control local del usuario, a un evento de excepción o alerta, por ejemplo, enviar el status de la maquina, indicar fallos, etc.

www.sagitron.com

Microchip añade circuitos analógicos avanzados e integración digital de forma económica a los microcontroladores PIC® de 8 bit

Microchip ha anunciado, en el transcurso de DESIGN West en San José (EE.UU.), la amplia-ción de su familia de microcontroladores de gama media PIC16F(LF)178X de 8 bit para in-corporar circuitos analógicos avanzados y pe-riféricos de comunicaciones integrados como convertidores A/D de 12 bit, convertidores D/A de 8 bit, amplificadores operacionales, comparadores de alta velocidad y un EUSART con soporte para LIN, así como periféricos de interface para SPI e I2C™. Los microcontrola-dores también ofrecen el nivel más alto de control PWM avanzado y de precisión gracias a los nuevos controladores programables en modo conmutado (Programmable Switch-Mode Controllers, PSMC). Este conjunto de características aporta una mayor eficiencia y más prestaciones, así como una disminución del coste y del espacio ocupado en aplicacio-nes como control de lazo cerrado en fuentes de alimentación e iluminación. Las versiones “LF” de estos microcontroladores incorporan la tecnología de bajo consumo eXtreme, con unas corrientes en modo activo y en modo dormido de solo 32 µA/MHz y 50 nA, respec-tivamente, que ayudan a prolongar la vida de la batería y a reducir el consumo de corriente en reposo. El bajo consumo de energía, jun-to con la avanzada integración analógica y digital, hacen que los microcontroladores PIC16F(LF)178X de aplicación general sean

ideales para iluminación LED, gestión de bate-rías, fuentes de alimentación digitales, control e motores y otras aplicaciones.La preocupación por el medio ambiente y las iniciativas “ecológicas” han renovado la legislación relativa al consumo de energía en todo el mundo. Los microcontroladores PIC16F(LF)178X permiten que los diseña-dores puedan crear mejores productos que consumen menos energía. El núcleo mejo-rado de gama media de 8 bit de Microchip alcanza mayores prestaciones trabajando a 32 MHz y ofrece ahorro automático depen-diendo del contexto para un manejo más rá-pido de interrupciones, más eficiencia en el juego de instrucciones con una mayor den-sidad de código, además de un control más rápido y más directo de puerto. La avanzada integración analógica de estos microcon-troladores, disponibles en encapsulados de

28 y 40 patillas, incluye un convertidor A/D de 12 bit para medidas de muy baja tensión, así como sensado capacitivo mTouch™ y un convertidor D/A de 8 bit para referencias de tensión de alta resolución. También in-tegran comparadores analógicas de alta velocidad con un tiempo de respuesta de 50 ns, periféricos de captura y comparación e interfaces I2C™, SPI y EUSART para comunica-ciones. Además, los microcontroladores in-corporan un oscilador interno de 32 MHz, 2 - 8K palabras (3,5 - 14K bytes) de Flash, 128 - 512 bytes de RAM y 256 bytes de EEPROM de datos. Los periféricos PSMC son modula-dores PWM (Pulse-Width Modulators) de 16 bit que trabajan a 64 MHz y ofrecen funcio-nes de control avanzado.El conjunto de herramientas de desarrollo de Microchip ofrece soporte a los micro-controladores PIC16F(LF)178X e incluye el entorno gratuito de desarrollo integrado MPLAB®; el depurador/programador PICkit™ 3 (PG164130) con un precio de 44,95 dólares, así como los depuradores/programadores MPLAB REAL ICE™ (DV244005) y MPLAB ICD 3 (DV164035), que tienen un precio de 499,98 dólares y 189,99 dólares, respectivamente. Los microcontroladores PIC® de 8 bit también cuentan con un compilador MPLAB XC8.

www.microchip.com

Personal Download for I © Elektor

74810

Page 10: Revista Elektor-linux Simplificado

05-2012 elektor

NOTICIAS

10

Vicor presenta nuevos módulos de filtros FIAM para aplicaciones ferroviarias CC/CC

Estos módulos de 500W en formato de medio brick filtran las perturbaciones generadas por transitorios y picos para tensiones de entrada nominales de 72V y 110V y cubren una amplia variedad de requisitos para aplicaciones ferro-viariasVicor Corporation ha anunciado hoy dos nue-vos productos de 500W que se añaden a su familia de módulos FIAM (Filtered Input Atte-nuator Modules) para aplicaciones ferrovia-rias. Los nuevos FIAM110 y FIAM072 ofrecen protección para el equipamiento y los siste-mas de a bordo frente a los efectos de los tran-sitorios de la línea eléctrica, EMI (interferencia electromagnética) y corrientes excesivas de irrupción.Las fuentes de alimentación a bordo en el en-torno ferroviario están sometidas a elevados niveles de transitorios y de ruido que pueden perturbar o dañar sistemas como iluminación, comunicaciones y pantallas de información a menos que se filtren correctamente. Los FIAM110 y FIAM072 cumplen EN50121-3-2 para filtrado de EMI y EN50155/EN50121-3-2 para protección frente a transitorios, unos requisitos fundamentales para aplicaciones ferroviarias. Además, FIAM110 y FIAM072 son conformes a RIA 12 respecto a transitorios y picos de señal y están homologados para los exigentes estándares medioambientales.El FIAM072 acepta una tensión de entrada de 43-110 VCC y el FIAM110 acepta una tensión de entrada de 66-154 VCC. Ambos suminis-tran una potencia de salida de hasta 500W, con una eficiencia de hasta el 98% y con-trol on/off remoto. Los módulos FIAM110 y FIAM072 se suministran en el formato están-dar de medio brick, que mide 2,28 x 2,2 x 0,5 pulgadas (5,79 x 5,59 x 1,27 cm), que es ideal para diseños con poco espacio disponible, y son compatibles con los convertidores CC/CC Mini, Micro y Maxi o VI/VE-200 y VI/VE-J00 dentro del catálogo de productos en formato brick de Vicor. www.vicorpower.com

Qualcomm Atheros anuncia un nuevo System-in-Package Wi-Fi de bajo consumo y de altas prestaciones para edificios y hogares inteligentes

La compañía presenta la solución AR4100P para ampliar el ecosistema de diseños de Inter-net de todas las cosas Qualcomm Atheros Inc., la subsidiaria de gestión de redes y conectividad de Qual-comm Incorporated, ha anunciado el lanzamiento del AR4100P, un system-in-pac-kage (SIP) WiFi 802.11n altamente integrado de flujo único, con apilamiento de red integrado. El AR4100P es una versión mejorada del AR4100 con certificación FCC, que incluye un bloque de red IPv4/IPv6 TCP/IP integrado. El AR4100P, diseñado para clientes que implementan comunicaciones Machine-to-Machine (M2M) en hogares, edificios y electrodomésticos inteligentes, ofrece a los diseñadores una solución alta-mente integrada, con lo que se reducen los costes del sistema y se simplifica su diseño.El AR4100P es el producto más reciente de la cartera de productos M2M (o Internet de Todas las Cosas) de Qualcomm Atheros, que incluye tecnologías inalámbricas y con

cable basadas en estándares que permiten la creación de infraestructuras IP escalables para aplicaciones de redes eléctricas, y hogares inteli-gentes, seguridad, automati-zación de edificios, monitori-zación a distancia de la salud y bienestar y otras aplicaciones M2M. El AR4100P está incluido en el kit de desarrollo SP137 de Qualcomm Atheros, que es un diseño de referencia para sensores IP de baja potencia. El kit de desarrollo integra

un microcontrolador EFM32 Gecko Cortex-M3 de bajo consumo de energía de Ener-gy Micro que ejecuta el sistema operativo Micrium µC/OS-III™. Con un conjunto de sensores adicionales incorporados, el kit Wi-Fi de bajo consumo es compatible con modos de espera reforzada de solo 2uA, lo que posibilita un funcionamiento con pilas AA. El kit también incluye capacidades de ampliación para sensores adicionales y, de ser necesario, se puede transferir fácilmente a otros microcontroladores o sistemas operativos. El flujo de diseño del kit se centra en el entorno de desarrollo integrado Embedded Workbench® de IAR Systems.El AR4100P de Qualcomm Atheros forma parte de una nueva versión de software, que también incluye mejoras significativas en las capacidades del AR4100. El AR4100 es compatible con el kit de desarrollo TWR-WIFI-AR4100 disponible a través de Freescale (www.Freescale.com).“El AR4100P es un gran desarrollo para Qualcomm Atheros”, señaló Adam Lapede, di-rector ejecutivo de gestión de productos de Qualcomm Atheros. “Este nuevo system-in-package afianza la inversión continua y el compromiso con el liderazgo de Qual-comm en los sectores de Internet de Todas las Cosas y de soluciones M2M. A través de la colaboración con nuestros socios, hemos desarrollado una solución que propor-ciona un rendimiento excepcional para aplicaciones de monitorización y control con bajo consumo de energía. El system-in-package AR4100P brinda un conjunto único de capacidades que ayudarán a ampliar el ya creciente ecosistema de dispositivos co-nectados “, añadió.Con la introducción del AR4100P, Qualcomm Atheros amplía su ecosistema de diseño para el AR4100 y el AR4100P, para incluir numerosos proveedores de microcontrola-dores, software y módulos, junto con socios de sectores como la distribución, el dise-ño y la fabricación.

www.Freescale.com

NOTICIAS

Personal Download for I © Elektor

74810

Page 11: Revista Elektor-linux Simplificado

11elektor 05-2012

El Desafío RL78 de Energía Verde ha comenzado¿Estamos listos para dar forma al futuro en que viviremos?

Rob Dautel (USA)

Las ideas sobre Energía Verde están cambiando rápidamente nuestro futuro así que, ¿cuáles son vuestras ideas? Aquí tenéis vuestra oportunidad para que vean la luz, presentad vuestros diseños de Energía Verde al mundo y ayudad a crear un futuro brillante, limpio y saludable.

Energía Verde. Es una frase que se ha hecho tan común en los últi-mos años que ahora la oímos cada día de nuestras vidas. Pero, ¿qué es esto de la Energía Verde? Pregunta a un grupo de gente y seguro que obtendremos una gran variedad de respuestas diferentes. Unos dirían que es algo para mejorar y usar nuestras fuentes y sistemas de energía actuales de mejor forma y más eficientes. Otros puede que digan que están concentrados en construir y desarrollar tec-nologías para energías alternativas como la eólica, la solar, y la geo-térmica. Quizá sean formas de pensar completamente nuevas, tales como la recogida de energía y medios de energía extremadamente bajos como la agrupación de RF, la búsqueda de calor y la generación mecánica piezoeléctrica. Incluso otros pueden decir que están cre-ando sistemas de control inteligentes, monitorización, recopilación de datos y procesamiento, para un mejor uso de la energía y los recur-sos independientemente de la tecnología fuente que se esté usando. El término que engloba la ‘Energía Verde’ no está limitado a la energía eléctrica sino, más bien se ha convertido en un término general adop-tado por un amplio grupo de industrias que cubren un bloque de tópi-cos provenientes de los recursos naturales como agua, aire, minerales y petróleo, hasta la construcción de estructuras y mejores prácticas, reutilización de materiales, y funcionamiento más inteligente y más eficaz, tanto para nosotros como para el mundo que nos rodea. En sólo unos pocos años, la idea de Energía Verde ha recorrido el mundo e, independientemente de la definición, una cosa está clara: la Energía Verde trata sobre hacer del mundo un lugar mejor donde vivir, trabajar, y jugar. Así pues, ¿qué es la Energía Verde para ti? Es decir, ¿de qué va todo esto del Desafío RL78 de Energía Verde? Quere-mos ver vuestras ideas, vuestros diseños y vuestro futuro de la revolu-ción de Energía Verde. Quizás sea un dispositivo remoto que monitor-iza la contaminación. Tal vez sea una caja que recoge datos del uso de la energía en casa o sea un diseño biométrico de recogida de energía. Podría ser también un controlador de baja energía que recoge calor de un horno o una caldera, horno, un medidor que lee los parámetros de la biomasa o un sistema de frenos para una turbina eólica. Renesas y nuestros socios en este concurso quieren ver cuál es vues-tra versión de a lo que el futuro de Energía Verde se parecería, para lo que tenemos más de 20.000 $ en premios a repartir en el Desafío RL78 de Energía Verde.Buscamos diseños que nos lleven al siguiente nivel, que definan la

esencia de la Energía Verde e inspiren a otros a levantarse y hacer lo mismo. No solo gestion-amos un concurso de diseños: hemos comen-zado un movimiento de grandes raíces que

comienzan con vosotros. Como los sistemas integrados (embebidos) se conectan cada vez más unos con otros y con los recursos de la luz en estamos posibilitando nuevas vías de recoger, procesar y relacio-nar con los datos y los entornos que nos rodean. Este nuevo nivel de procesamiento interconectad proporciona una capacidad de interac-tuar con los recursos y la gestión de los mismos nunca vista anterior-mente, así con el mundo en el que vivimos. El Desafío RL78 de Energía Verde se centrará en diseños que usen la familia de microcontroladores RL78 de Renesas, que combina la avan-zada tecnología de baja energía, un rendimiento excepcional y la gama más amplia en su clase para las aplicaciones embebidas más demandadas de 8 y 16 bits. Estos MCUs incorporan prestaciones claves de familias muy bien establecidas ya en el mercado como la R8C y la 78K0R, de Renesas Electronics, dando a los diseñadores un camino de mejora excelente para sus diseños de nueva generación. El concepto de plataforma de la familia RL78 proporciona una gran flexibilidad, mientras que sus características de 41 DMIPS a 32MHz y 66 µA/MHz, aseguran una alta eficacia y un fun-cionamiento con un consumo mínimo de energía.Para hacer que nuestro diseño del Desafío RL78 de Energía Verde sea una realidad estamos regalando casi 1.000 Kits RL78G13 de Dem-ostración de Renesas, o RDKs. Hemos trabajado mucho para incluir una gran variedad de prestaciones en estos equipos para hacer que el diseño con el RL78 sea fácil y divertido. El equipo incluye un depu-rador interno, un acelerómetro de 3 ejes, un sensor de temperatura, pantalla de cristal líquido LCD, triac aislado, un sensor de luz, un cir-cuito FET, un transmisor y receptor de IR, una memoria EEPROM serie, entrada de micrófono, salida de audio, ranura para tarjeta SD, conec-tor Pmod, y mucho más, leed el número de Elektor de abril de 2012.Para lo más alto del hardware hemos hecho un acuerdo con IAR, para que suministre su Edición de Inicio Rápido de su Banco de Trabajo Embebido (Embedded Workbench Kickstart Edition) para el RL78 y, durante la dura-ción del desafío, proporcionarán licencias completas de su Banco de Tra-bajo Embebido a los concursantes. También hemos llegado a un acuerdo con otras grandes compañías, como Micrium, CMX System, SEGGER, Total Phase, Exosite y Okaya para proporcionar un cliente de programas y ejemplos de código para comenzar vuestros diseños de forma rápida.Así pues, si ya os habéis apuntado al Desafío RL78 de Energía Verde, bienvenidos y gracias por formar parte de algo que realmente creemos que puede ayudar a conformar el futuro y, si aún no os habéis apun-tado, ¿a qué estáis esperando? ¡Hacedlo hoy mismo y mostradnos lo que tenéis y lo que la Energía Verde significa para vosotros!

(120288)

Inscribíos en www.circuitcellar.com/RenesasRL78Challenge

Rob Dautel, Director Senior de Ecosystems en Renesas Electronics de América, tiene más de 24 años de experiencia en diseño hardware, software, y de ASIC. Es un experto en audio digital, control industrial y herramientas de desarrollo. “Habla” 22 lenguajes de programación diferentes.

Personal Download for I © Elektor

74810

Page 12: Revista Elektor-linux Simplificado

12 05-2012 elektor

NOTICIAS

Mundo Embebido 2012Clemens Valens y Antoine Authier (Elektor UK/Internacional)

Este año la feria de la electrónica del Mundo Embebido de Nürnberg, Alemania, ha celebrado su décimo aniversario. Más grande que nunca, la feria se ha ampliado con locales mayores donde más de 20.000 visitantes eran invitados a ver los distintos productos que allí se ofrecían. Elektor estuvo allí también y habló con varios expositores para intentar conocer lo que nos traerá el futuro (próximo).

La Feria del Mundo Embebido va, sobre todo, de microcontrolado-res. Los puristas analógicos y nuestro colega Jan Buiting deberían abstenerse de visitilarla. Todas las empresas que tienen un nom-bre en este negocio, o aspiran a tenerlo, estaban allí. Como no era nuestra primera visita a esta exposición, hemos desarrollado ciertos hábitos, incluyendo el ir directamente al “stand” de STMicroelectro-nics para conseguir una placa gratis. Este año, era necesario un vale para conseguir una tarjeta STM32F4-Discovery con un ARM Cortex-M4 de 32 bit. Donde el año pasado el Cortex-M4 acababa de salir al mercado, ahora está siendo propuesto por varios fabricantes. Diri-gido al procesamiento de señal y a aplicaciones de audio, este pode-roso MCU dispone de extensiones de DSP y una unidad de coma flotante, con lo que, probablemente, hará mucho ruido en los próxi-mos años. NXP también ha estado aquí muy activa y el distribuidor de componentes Future Electronics también nos ha mostrado una tarjeta de audio en tiempo real, basada en un Cortex-M4, que han desarrollado en casa usando una CPU Freescale.Hablando sobre la potencia de procesamiento, Toradex, un fabri-cante suizo de pequeñas placas de ordenador, organizó una oferta especial durante la feria: con una donación de 20 € a la Cruz Roja Suiza se obtenía a cambio un módulo de ordenador Colibri T20 más la placa madre. Esta combinación, que presume de un procesa-dor NVIDIA Tegra 2 ARM Cortex A9 de doble núcleo, compatible con Windows CE y Linux, puede arrancar en unos asombrosos 500 ms. Por supuesto, conseguimos uno de estos “equipazos” y lo pro-bamos en nuestros laboratorios, donde pudimos comprobar que arrancaba más rápido que el monitor LCD del ordenador al que estaba conectado. Las miles de placas que se ofrecían se habían agotado en menos de dos días, según un portavoz de Toradex.Os habréis dado cuenta de que hemos mencionado a ARM un par de veces en este artículo. Bueno, para ser honestos, ARM estaba por todas partes. Por supuesto, la gente del stand de ARM estaba muy satisfecha por ello y feliz por su éxito. Parece que sólo Microchip, con su familia PIC32 basada en MIPS, intentaba resistirse a ARM pero, probablemente, no por mucho tiempo, especialmente cuando se sabe que el próximo objetivo de ARM no es, ni más ni menos, que el exterminio de los microcontroladores de 8 bits, el producto más vendido de Microchip (más de 1 billón de dispositivos vendidos en 2011). El arma no tan secreta de ARM es el Cortex-M0, que está

siendo vendido por sus filiales (NXP, incluso propone ¡encapsulados DIP!) a precios por debajo del dólar, más baratos que la mayoría de los dispositivos de 8 bits.En el frente de los 8-bit, Microchip ha lanzado la familia de MCUs PIC12F752, para aplicaciones de iluminación con LED y carga de baterías. Estos dispositivos contienen un generador de salida com-plementaria (COG) integrado para proporcionar formas de onda complementarias, sin solapamiento, a entradas tales como com-paradores y periféricos PWM.Otra de las novedades de Microchip en la feria fue el anuncio de los pequeños dispositivos PIC32 (de hasta 5 x 5 mm) MX1 y MX2, en encapsulados de 28 a 44 terminales. Con prestaciones dedicadas al audio y periféricos de detección capacitiva, así como capacidades de USB On-The-Go (OTG), dirigidas a accesorios de audio móviles.Microchip también tiene dispositivos de 16 bits, como lo mues-tra la nueva familia PIC24F ‘KL’. Son del tipo eXtreme Low Power

10 años de presentaciones de electrónica embebida

Figura 1. La placa de “audio streaming” o audio en tiempo real, de Future Electronics, está basada en una Kinetis K60 de la casa

Freescale, con un núcleo ARM Cortex-M4.

Personal Download for I © Elektor

74810

Page 13: Revista Elektor-linux Simplificado

13elektor 05-2012

NOTICIAS

(XLP, es decir, consumo extremadamente bajo), proporcionando unas corrientes de reposo típicas de 30 nA a 25 °C, y una corriente típica de funcionamiento de 150 µA/MHz a 1,8 V. Esto puede parecer muy poco, pero Texas Instruments ha demostrado que es posible hacerlo mejor. De hecho, para su familia Wolverine de dispositivos MSP430 de ultra-bajo consumo, TI anuncia con iro-nía un modo reloj de tiempo real de 360nA (léase “stand-by”, no reposo), y un consumo de energía en activo de menos de 100 µA/MHz. TI afirma que es la plataforma con microcontrolador de menor consumo energético en el mundo. Si nos preguntamos por el nom-bre de Wolverine (Lobezno), solo decir que fue elegido en honor al personaje de los cómics de X-Men, debido a su poder para recor-tar (nunca mejor dicho). En el stand de Atmel echamos un vistazo al software: la versión 6 de su Studio IDE. Habitualmente se le llama AVR Studio, pero la nove-dad era la desaparición de la parte AVR. Esto no quiere decir que los AVR ya no van a estar soportados, sino que, ahora, también sopor-

tará los MCUs de Atmel basados en el ARM Cortex-M (helos aquí de nuevo), aunque no el ARM7. Atmel Studio 6 soporta ahora, aproxi-madamente, unas 300 MCUs de la compañía y viene con el paquete Atmel Software Framework (ASF, antes llamado AVR Software Fra-mework), una gran biblioteca de códigos fuente que incluye unos 1.000 ejemplos de proyectos.En el stand de Toshiba pudimos ver más aplicaciones y más MCUs basados en AVRs. Parece que Toshiba está abrazando la filosofía de “para ganar al enemigo, únete a él” y propone ahora también dispo-sitivos basados en ARM. Sin embargo, están intentando introducir una “mezcla” especial, creando un MCU para el control de motores, que tiene un DSO integrado. No, no hay nada raro en nuestros ojos, este circuito integrado incluye su propio osciloscopio de almacena-miento digital. Soportado por una agradable herramienta software, podemos crear rápidamente un control de motor sin escobillas y tener una visual también de las señales. El controlador de motor es totalmente físico y no influye en la potencia de procesamiento.

10 años de presentaciones de electrónica embebida

Figura 2. Toshiba ha integrado un osciloscopio de almacenamiento digital (μDSO) en su MCU basada en un Cortex-M3, para aplicaciones

de control de motores. ¿Es éste el inicio de una nueva tendencia?

Figura 3. Después de XXX, X acaba de salir al mercado también. Aquí tenemos la nueva familia X de FTDI de puentes USB.

Personal Download for I © Elektor

74810

Page 14: Revista Elektor-linux Simplificado

14 05-2012 elektor

NOTICIAS

El sencillo cuentarrevoluciones se aproxima bastante a un contro-lador de motor paso a paso. Seguro que leeremos más sobre este MCU en Elektor.Cypress, la compañía del Programmable System-on-Chip (PSoC, o Sistema en CI Programable), nos mostró su nuevo producto. Su programa de diseño incluye ahora un visualizador de componentes al que regularmente le irán añadiendo nuevos módulos. También disponen ahora de una herramienta de diseño de filtros digitales que nos permite configurar fácilmente el circuito del bloque de fil-trado del CI.Si alguna vez hemos intentado trabajar con una placa de desarrollo o de evaluación, sabremos que, a menudo, se suministran junto con, entre otros, una versión de inicio rápido de un compilador IAR. La programación y la depuración de este tipo de placas normalmente requieren de un dispositivo especial, llamado “pod” (una especie de punta de prueba de múltiples terminales) que, en algunos casos, puede estar sobre la placa. La mayoría de las veces estos “pods” son propiedad, de una u otra forma, de la casa Sergger, pero la gente de IAR ha desarrollado ahora el suyo propio y presentaron con orgullo la nueva gama I-jet en amarillo brillante. Este “pod” puede ser usado con la mayoría de los procesadores ARM.De los “pods” al FTDI solo hay un pequeño paso, ya que ambos dependen bastante del USB. En Elektor usamos una gran cantidad de CIs conversores FTDI USB-Serie en nuestros proyectos, por lo que estamos interesados en saber más sobre las nuevas series X-Chips compuestas de 13 dispositivos. Estos dispositivos ofrecen una velo-cidad completa USB 2.0, proporcionando interfaces hacia UART, SPI/FT1248, I²C y FIFO, complementando la familia R-Chip existente de la compañía, así como los productos Hi-Speed. En la feria, el perso-nal de FTDI regalaba placas de conversión USB-I²C (UMFT201XB-01) que no sobrepasaban el tamaño de una memoria USB. Para conse-guir que estas placas funcionen tenemos que instalar los controlado-res. En el laboratorio de Elektor vimos que era necesaria, al menos, la versión 2.08.23 de los mismos. Esto significa que Windows 2000 y sistemas anteriores no están soportados. En el momento de escribir este artículo parece ser que no están disponibles los controladores para Linux, aunque las hojas de características dicen otra cosa. Mac OS X puede funcionar y Android debería hacerlo también.

Lantronix y Digi son competidores en un nicho de mercado: el tamaño de los servidores web basados en Linux, incluyendo un conector RJ45. Este año Lantronix ha alcanzado un nuevo récord fabricando un módulo incluso más pequeño, en parte porque han suprimido el conector RJ45. El xPico es una aplicación de disposi-tivo servidor completa, con una pila IP completa y un servidor web, que mide tan sólo 24 x 16,5 mm. Los usuarios de iPad/iPod podrían estar interesados en el xPrintServer de Lantronix que nos permite imprimir a cualquier impresora de nuestra subred. Los usuarios de Android también tendrán su propia versión pronto ya que, actual-mente, está en su fase beta.La casa Digi, a quien ya conocemos de los módulos inalámbricos XBee, tenía nuevas noticias. Además del nuevo módulo XBee-PRO 868 que soportaba distancias de línea visual directa de RF de hasta 80 km, nos habló sobre sus servicios de nube envolvente. Un ele-mento muy interesante que se nos presentó fue la disponibilidad del “iDigiConnector”, una pila portable gratuita para microcontro-ladores, para que se conecten a la nube iDigi. ¡Oh! ¿Veremos pronto un proyecto sobre esto?Nuestra última parada, casi a la hora del cierre de la feria, fue en el stand de WIZnet. Este fabricante coreano, especializado en módulos y CIs con Internet incorporada (“hardwired”), dispone ahora de una compañía subsidiaria europea. Aquí conseguimos algunas mues-tras de productos interesantes que pronto descubriréis en Elektor. ¡Muchas gracias a Joachim!Esto concluye nuestro reportaje de tres días de recorrido, hablando con las compañías y viendo demostraciones. Por supuesto, había mucho más que ver en Nürnberg pero, por desgracia (o ¿afortuna-damente?), no tenemos el espacio para poder escribir sobre todo lo que vimos. Puede que el próximo año…

(120297-I)

Nota1. Jan tiene pensado visitar la feria Design West 2012 (en San Jose, California), donde microcontroladores y amaneceres tiene un valor muy parecido.

Figura 4. Por supuesto, la nueva familia de MCUs Microstick PIC24KL eXtreme Low Power de Microchip, está soportada por

MPLAB X.

Figura 5. Tomado su nombre a partir del personaje Wolverine (Lobezno) de X-Men, el nuevo MSP430 de Texas Instruments

presenta unas prestaciones de un consumo de energía en activo de menos de 100 μA/MHz.

Personal Download for I © Elektor

74810

Page 15: Revista Elektor-linux Simplificado

15elektor 05-2012

ENTREVISTA

¿Qué haces?Minty Geek de Mark BrickleyWisse Hettinga (Editor UK/INT de Elektor)

Agudo observador diario de dientes en su profesión como dentista, Mark Brickley analiza células por la

tarde y observa las estrellas por la noche. Y sí, él también está mirando hacia el futuro con sus nuevos

proyectos apodados Minty Geek. Es hora de preguntarle: “¿Qué haces?”

Wisse: ¿Cúales son tus antecedentes?Mark: Siempre he tenido mucho interés en la tecnología. Desde sus primeros días leía las publicaciones de Elektor e hice mi primer ordenador Z80 basado en vuestras publicaciones, y luego continué más y más.

Wisse: “Más y más” significa que Mark tiene dos doctorados (uno de Redes Neuronales y otro en señales eléctricas y mitocondriales en las algas verdes) - fundó su propio laboratorio de investigación en el centro de Somerset y combina todo esto con la práctica de ortodoncia.Mark: Lo puedo hacer con pocas horas de sueño, explica cuando se le pregunta dónde encuentra el tiempo para hacer todo esto.

Wisse: La razón de esta entrevista es la línea de productos ‘Minty Geek’ que tú y tu equipo estáis produciendo y comercializando a través de Elektor [1].Mark: Creo que hay un enorme valor en crear cosas. Los jóvenes tienen que experimentar eso y la línea de productos de Minty Geek es el objetivo en ese grupo.

Wisse: Hemos visto diferentes tipos de productos Minty Geek, tenéis el Laboratorio 101, que permite hacer algunos experimentos interesantes sin necesidad de soldaduras, y parece que hay nuevos productos en proyecto.Mark: Nuestro próximo producto va dirigido a personas que desean trabajar con microcontroladores. Estamos construyendo un

‘Peppermint’, que permite que un “Arduino-en-una-Caja” sea capaz de comunicarse con la Caja de Laboratorio 101, por ejemplo. De esta forma será posible interconectar los “Mintys”. Además, estamos

buscando nuevas formas de integrar la electrónica y la ropa.

Wisse: ¿Hay algo que hayas dejado en la lista de deseos?Mark: (en broma): ¡Claro, algún día me gustaría construir un Colisionador de Hadrones! (algo más serio) Creo que estamos entrando en una nueva fase en la historia, donde la producción de productos ya no es el reino exclusivo de las grandes empresas, ya que con las impresoras 3-D los consumidores podrán “imprimir” sus propios productos.

Wisse: Ahora, ese Colisionador de Hadrones sea quizás aspirar demasiado pero, si ha dicho esto, no me sorprendería oír hablar de un enorme anillo de experimentación en algún

lugar de Somerset, dentro de 10 años (posiblemente parecido a un enorme caramelo ‘Live Saver’ jamás construido [2], con vosotros en el centro.Gracias Mark. ¡Buena suerte!

(120333)

Enlaces en Internet

[1] www.elektor.es; busca: Minty Geek

[2] http://en.wikipedia.org/wiki/Life_Savers

“estamos construyendo un peppermint”

“Lo puedo hacer con pocas horas de sueño”

Personal Download for I © Elektor

74810

Page 16: Revista Elektor-linux Simplificado

16 05-2012 elektor

MICROCONTROLADORES

Platino Controlado por LabVIEW (1)

Clemens Valens (Editorial de UK/INT de Elektor)

Aunque a primera vista pudieran parecer completamente diferentes, Arduino y LabVIEW son entornos de

programación pensados y dirigidos a gente que no sabe o no quiere saber cómo programar.

Ambas plataformas fueron diseñadas para desarrollar rápidamente una aplicación sin ser ralentizados por

complejos problemas de sintaxis o procedimientos complicados. También en ambos entornos juega un

papel importante el poder reutilizar programas de aplicaciones anteriores.

Aparte de la posible excepción de su éxito, toda similitud entre ambos acaba aquí. Donde LabVIEW (LV) es un lenguaje de progra-mación gráfico (GPL), Arduino está basado en texto. Donde LV es un paquete software comercial cerrado, Arduino es libre y abierto. Donde el éxito comercial de LV se persigue de forma activa por una compañía, Arduino fue lanzado sencillamente a la comunidad electrónica “online”. Pero hay otra cosa que LV y Arduino tienen en común: ambas plataformas ven una gran cantidad de uso en la edu-cación, en institutos y universidades. Así pues, no es sorprendente que al final se encuentren cuando en 2011, National Instruments (NI) introdujo su interfaz LV para Arduino (LVIFA o LIFA). Este interfaz permite un control fácil del circuito desde LV sin tener grandes cono-cimientos. Aunque siempre ha sido posible controlar circuitos bara-tos personalizados desde LV, hacer esto requiere alguna experien-cia en LV que muchos de los usuarios no tiene. LIFA soluciona este problema proporcionando un sencillo protocolo serie para comu-nicarnos con el circuito externo. Incluso aunque LIFA esté pensado para Arduino, no hay razón alguna para detenernos aquí. Cualquiera que sea capaz de implementar el protocolo en cualquier plataforma hardware puede utilizar esta librería.LIFA se suministra como una librería de código abierto y gratuita que contiene unas pocas funciones del estilo Arduino. Disponemos de E/S analógicas y digitales así como Comunicaciones por SPI e I²C. Aunque la característica de control de motor paso a paso y de servos parece más bien orientada a temas de robótica, también permite el muestreo continuo de hasta unos 5 kHz. En el momento de escribir este artículo acababa de ser publicada una versión de prueba (pre-release) de la versión 2.0 de LIFA.NI ha hecho un fino trabajo para que Arduino sea más fácil a los usuarios de LV pero, desgraciadamente, parece ser que han olvi-dado hacer LV fácil para los usuarios de Arduino. La mayoría de las funciones LIFA tienen ejemplos que ilustran su uso, pero el ejemplo más básico de todos, como hacer parpadear un LED, desgraciada-mente está desaparecido. Aunque esto debería ser un ejercicio sen-cillo para la mayoría de los usuarios de LV, la mayoría de los usuarios de Arduino que se habían sentido atraídos por la potencia de LV, probablemente quedarán sin hacer nada.En este artículo he intentado mostrar como comenzar a trabajar con LIFA y LV asumiendo que en nuestros lectores están familiarizados ya con Arduino. En primer lugar llevaré a nuestros lectores a través de

la creación del ejemplo de un Hello World para un LED que parpadea. A continuación, veremos las modificaciones de las funciones exis-tentes para la creación de nuestras propias funciones y, finalmente, añadiremos un circuito adicional a nuestra plataforma Arduino que controlaremos desde LV. Para finalizar, añadiremos algunas variables compartidas que pueden ser monitorizadas sin hilos desde Internet, sobre una tableta iPAd o Android, desde cualquier parte del mundo.Nuestra plataforma hardware será Platino, que es compatible con Arduino pero que dispone de periféricos incorporados de manera que no tengamos que hacer ninguna conexión adicional. El ejem-plo presentado aquí también funcionará con un circuito Arduino estándar y con los periféricos correctos (zumbador, LCD, codifica-dor rotativo).

LIFAVamos a dejarlo claro desde un principio: LIFA no es LabVIEW sobre Arduino, es LabVIEW con Arduino. Es importante entender esta diferencia para evitar expectativas no justificadas. LIFA es una manera de controlar circuitos externos desde LV. Está formada por tres partes: una especie de máquina virtual que corre sobre la placa Arduino, un protocolo de comunicaciones serie y una librería de fun-ciones LV para controlar la placa. Con LIFA podemos usar Arduino para interactuar con el mundo real bajo control de LV. Sin LV esto no funciona. De acuerdo, esta última frase no es del todo correcta ya que, por supuesto, podemos implementar el protocolo LIFA en otro programa escrito en, por ejemplo, Visual Basic o Qt y utilizarlo para controlar a Arduino. Lo importante aquí es que Arduino es un dispositivo esclavo de LIFA y que no hará nada hasta que no se le ordene hacer algo.Para utilizar LIFA primero tenemos que instalar LabVIEW (yo he usado la versión de 2011), a continuación NI-VISA (Virtual Ins-trument Software Architecture, si aún no está instalado), lo que permitirá que LV “hable” con el puerto serie (y demás puertos) y, por último, LIFA (versión 2.1.0.69 en el momento de escribir este artículo; necesitamos la versión 2 o superior si queremos utilizar Arduino 1.0). Se supone que estamos haciendo este último paso con el VI Package Manager. Hay una gran cantidad de ficheros y la instalación de los mismos lleva algo de tiempo. Cuando la instala-ción ha finalizado (suponemos que nuestros lectores ya sois capa-ces de trabajar con Arduino 1.0 y ponerlo a funcionar por voso-tros mismos), tenemos que cargar la máquina virtual LIFA sobre la placa Arduino. Podemos encontrarla en el subdirectorio ‘vi.lib\Lab-

Personal Download for I © Elektor

74810

Page 17: Revista Elektor-linux Simplificado

17elektor 05-2012

MICROCONTROLADORES

Una introducción a LIFA, un interfaz LabVIEW para Arduino

VIEW Interface for Arduino\Firmware\LVIFA_Base\’. Cargaremos el fichero LVIFA_Base.pde en el entorno IDE Arduino y lo volcaremos sobre la placa.Aquí podemos encontrar algún problema si nuestra placa no tiene 32 KB de memoria flash o más. El Arduino Uno o Mega van bien, pero las placas más viejas con el chip ATmega168 no. La razón de ello es que la librería del motor paso a paso de 5 KB está incluida en el emulador de máquina virtual. Podemos desactivarla colocando en comentario una línea del fichero LabVIEWInterface.h.Entre los problemas con los que nos podemos encontrar si utiliza-mos una placa Arduino no estándar, por ejemplo, Platino con un ATmega164 (P), son los errores de compilación generados por la librería del controlador de motor paso a paso, ya que dicha libre-ría no soporta este MCU. Para evitar que esto suceda tenemos que renombrar o borrar los ficheros CPP, con lo que ya no serán compi-lados. Sin el soporte del motor paso a paso y sin compilar los fiche-ros CPP, el emulador LIFA cabrá también dentro de dispositivos de 16 KB.Una vez que tenemos el emulador LIFA corriendo sobre Arduino pro-bablemente nos gustaría ver que funciona. Para ello, lanzaremos LabVIEW, pulsamos sobre Find Examples, en la ventana princi-pal, seleccionamos la pestaña Search (Búsqueda), buscamos a Arduino y descubrimos que no hay ningún ejemplo que corra sin un circuito adicional… Es correcto; se olvidaron de incluir el ejemplo de Parpadeo-LED-Arduino. ¡Uff! Para solucionar esta omisión os mos-traremos como podemos hacerlo por nosotros mismos.

Hello World con un LED virtual La programación en LV se diferencia mucho de la programación en Arduino. Como LV es un ‘lenguaje’ gráfico, lo que se hace es “dibu-jar” un programa en vez de escribirlo. Probablemente el 99% del poco código que tenemos que escribir en LV está relacionado con constantes, comentarios y documentación. Donde en Arduino a un programa se le llama ‘sketch’ (o esbozo), en LV se le llama ‘instru-mento virtual’ (VI, LV tiene sus orígenes en aplicaciones de medida y prueba donde se usan muchos instrumentos).Las funciones son representadas como bloques y las tramas de datos son representadas por los hilos que unen los bloques. Los colores de los hilos indican el tipo de datos transportados. LV es muy estricto en este aspecto y, sencillamente, no podemos mezclar por casua-lidad hilos de colores diferentes. Además, si olvidamos unir una entrada de función importante, LV no le dejará ejecutar el VI.

Figura 1. Funciones del menú contextual. Pulsar sobre el botón Search (Buscar) para localizar rápidamente una función que puede

estar oculta profundamente tras una sub-paleta de función.

Pulsar el botón derecho del ratón Una de las dificultades que encuentran los principiantes de LV es el de localizar las funciones que necesitan. Las funciones están agrupadas por tipos en las llamadas paletas, pero como hay tantas paletas no es fácil encontrar la que queremos e incluso imaginar su existencia. Para este problema LV tiene una potente solución: pulsar sobre el botón derecho del ratón. En cualquier momento en que nos encontremos perdidos, pulsamos el botón derecho del ratón y LV nos mostrará un menú contextual con la mayoría de las opciones probables para la situación en la que nos encontramos. ¿Necesitamos una función? Pulsamos sobre el botón derecho del ratón y miramos en las opciones de paletas. ¿Necesitamos un tipo de datos? Pulsamos el botón derecho del ratón y pedimos a LV que la cree por nosotros. Lo mismo para los controles, indicadores, opciones de edición avanzadas… la llamamos y, probablemente, estará en el menú contextual, justo delante de nuestros ojos.

Personal Download for I © Elektor

74810

Page 18: Revista Elektor-linux Simplificado

18 05-2012 elektor

MICROCONTROLADORES

Al ser un principiante en LV he preferido comenzar de forma senci-lla, pero siendo también un entusiasta de los microcontroladores, quería conseguir hacer parpadear un LED. Esto se puede hacer de forma fácil en LV ya que dispone de LEDs. Vamos a ello.De la ventana principal de LV seleccionamos Blank VI. Se abrirán dos ventanas, una llamada ‘Block Diagram’ (‘Diagrama de bloques’) y la otra llamada ‘Front Panel’ (‘Panel Frontal’). El dibujo se hace en el diagrama de bloques; el LED se mostrará en el panel frontal. Pulsa-mos con el botón derecho del ratón en cualquier parte del diagrama de bloques para hacer aparecer el menú de funciones. Pulsaremos en la flecha descendente para ampliarlo (ver Figura1). Para hacer que el LED parpadee continuamente decidí usar un bucle sin fin con un retardo. Lo podemos encontrar en la paleta Programming -> Structures (Programación-> Estructuras). Por supuesto, hay más de una forma de “pelar un gato”, también en LV, y otra posi-bilidad sería usar un bucle temporizado de la paleta Programming -> Structures -> Timed Structures (Programación-> Estructuras-> Estructuras Temporizadas), pero parece que da algo más de miedo. Para hacer el bucle sin fin tendremos que configurar su Loop Condition (Condición de bucle) (el cua-drado con el punto rojo en la esquina inferior derecha del bucle) como Falso. Haremos esto colocando el ratón en el cuadrado de tal modo que su lado izquierdo comience a parpadear (el cursor del ratón cam-bia a un pequeño carrete de hilo), luego presionamos sobre el botón derecho del ratón (ver apartado correspondiente) y elegimos Create Constant (Crear Constante) en el menú que aparece. Se crea un cuadrado verde con una F(also) en su interior, lo que significa que el lazo nunca finalizará. Señalar la presencia de la línea verde entrecor-tada entre los dos cuadrados; esto indica una trama de datos Booleana.En la paleta Programming -> Timing (Programación-> Temporización) seleccionamos Wait Until Next ms Mul-tiple (Esperar Hasta el Siguiente Múltiplo en ms) para hacer más lento el bucle sin fin. Debemos colocarlo dentro del bucle. Ahora llevamos el ratón a la izquierda del bloque temporiza-dor para encontrar la entrada millisecond multiple (múlti-plo milisegundo). Cuando aparece, usamos el botón derecho del ratón para acceder al menú contextual y, luego, seleccionamos Create -> Constant (Crear-> Constante) (ver Figura2; esto es ligeramente diferente a configurar Loop Condition). Ahora deberemos tener un pequeño rectángulo con un borde azul y un cero en su interior. Cambiamos el cero a, digamos, 250. Esto significa que el bucle será ejecutado cada 250 ms. Ahora viene la parte difícil: el mecanismo de conmutación del LED. De nuevo pode-

mos usar varias técnicas, pero decidí usar la caja Loop Iteration (Iteración de Bucle), el pequeño cuadrado azul en la esquina inferior izquierda del bucle. El valor de esta caja se incrementa cada vez el bucle se ejecuta. Así, si verificamos continuamente este valor para ver si es par o impar, terminamos creando un resultado que conmuta. Una prueba de par/impar es sencilla en el dominio bina-rio, comprobando el bit menos significativo del valor. Para hacer esto realizamos una puerta lógica AND (la obtenemos de la paleta Pro-gramming -> Boolean o Programación-> Booleana) del valor con una constante de valor = 1. El primer hilo de la entrada de la puerta AND va al contador del bucle para cambiar el tipo de dato de la puerta de Booleano a Integer (Número entero), luego creamos la constante 1 pulsando el botón derecho del ratón sobre la entrada restante de la puerta AND. Aquí es muy importante el orden en que se hacen los pasos. Supongamos que hemos creado primero la cons-tante, obtendremos un dato Booleano que no puede ser sumado (AND) con un número entero, lo que provoca que LV rechace conec-tar la otra entrada AND al contador de bucle.

El resultado de la puerta lógica AND ahora es también un número entero y tiene que ser convertido primero a un Booleano antes de que pueda ser conectado a un LED. Podemos hacer esto añadiendo la función Grea-ter? (Mayor?) de la paleta Programming -> Comparison (Pro-gramación-> Comparación). Si la colocamos lo suficientemente cerca de la puerta AND LV hará la conexión automáticamente. Conecta-remos una constante = 0 a la otra entrada de la función de comparación. La salida de la función Greater? es un Booleano que podemos conectar a un LED. Para hacer esto, pulsamos sobre la salida con el botón derecho del ratón y elegimos Create -> Indicator (Crear-> Indicador), con lo que aparecerán un LED, tanto en la diagrama de bloques como en el panel frontal (usaremos Ctrl-E para movernos rápidamente entre estas dos ventanas).Ya está; nuestro LV Hello World blinking LED VI (VI LED parpadeante Hello Word en LV) ya está listo (ver Figura3). Pulsemos ahora sobre el botón Run bien en el diagrama de bloques o en el panel frontal para ver el LED parpadeando a una velocidad de 2 Hz. Para pararlo tendre-mos que presionar el botón Abort (ver apartado correspondiente).Para finalizar, si queremos, podemos mover todos los bits alrede-dor del VI para crear un VI con un aspecto más bonito, o podemos dejar que LV lo limpie por nosotros usando la función Clean Up Selection (Selección de Limpieza), pulsando con el botón escoba, seleccionándolo del menú Edit, o pulsando Ctrl-U). Cuando lo hayamos hecho, lo salvaremos.

No abortarCuando desarrollamos una aplicación en LV a menudo nos vemos tentados a abortar la ejecución de los VI con los que esta-mos trabajando pulsando sobre el botón con el punto rojo. En muchos casos esto no es un problema pero, a veces, sí lo es, sobre todo cuando usamos puertos serie.

Es importante cerrar correctamente la conexión serie en LV para evitar que las comunicaciones entre los VI y nuestra placa se vean afectadas y queden bloqueadas. Si tenemos suerte podemos encontrarnos con el mensaje Error 5002, si no, nuestro sis-tema simplemente no funcionará. Esto sucede muy a menudo cuando los VI no pasan a través del sub-VI Close de Arduino, ya

que hemos pulsado el botón de abortar. Es muy molesto cuando estamos trabajando con el código de LV y Arduino al mismo tiempo, para afinar el funcionamiento de nuestra aplicación, ya que no seremos capaces de cargar cualquier código a nuestra placa Arduino, debido a que el puerto serie está ya en uso.

En LV podemos ver que un puerto está abierto (o que no fue cerrado) cuando hay un pequeño icono delante del puerto COM cuando abrimos la lista desplegable (ver captura de pantalla). Para salir de esta situación tenemos que, o bien salir de LabVIEW para recuperar el puerto COM, o bien encontrar otra manera de cerrar el puerto. Si nuestro VI tiene un camino hacia el sub-VI Close podemos reiniciar el VI y dirigirlo por el sub-VI Close para recuperar el puerto serie. Por lo tanto, siempre debemos asegurarnos de que podemos salir de los lazos sin fin para cerrar nuestro VI correctamente. Si es necesario añadiremos un botón de Stop. Evite usar el botón Abort.

Personal Download for I © Elektor

74810

Page 19: Revista Elektor-linux Simplificado

19elektor 05-2012

MICROCONTROLADORES

Con un LED real Ahora que ya tenemos una idea de cómo trabajar con la programa-ción en LV seguiremos ampliando el ejemplo Hola Mundo al circuito, es decir en vez de hacer que el LED de LV parpadee, haremos ahora que Arduino parpadee el LED. El LED es el único conectado con el terminal digital 13 (Arduinospeak), también conocido como termi-nal 5 del puerto B (PB5). Los pasos para hacer esto en LV son muy similares a los dados en el sketch de Arduino. Tenemos que selec-cionar la placa y el puerto serie, hacer que el terminal digital 13 sea una salida (configuración) y, a continuación, conmutarla (bucle). En LV hay un paso suplementario al final ya que tenemos que cerrar el puerto serie cuando hayamos acabado.En los VI haremos estos pasos de la siguiente manera:

Preparación de Arduino Desde la paleta Arduino obtenemos el bloque Init (ver Figura4) y lo colocamos a la izquierda del bucle, en la diagrama de bloques. Al pasar el ratón sobre sus entradas notaremos que todas ellas tienen valores por defecto (los valores entre corchetes redondos) excepto

VISA resource (Recurso VISA) y error in (entrada de error). Ésta última podemos dejarla sin conectar, no así la primera, por lo que pulsaremos con el botón derecho del ratón sobre ella y crearemos una constante. Esta constante es una lista desplegable de la que seleccionaremos el puerto serie que usará la placa Arduino. Las otras entradas pueden dejarse con sus valores por defecto, incluso si tenemos un Arduino Mega.

Configuración Arduino Desde la paleta Arduino -> Low Level (Arduino -> Bajo Nivel) obtenemos el bloque Set Digital Pin Mode (Con-figuración Modo Terminal Digital) y lo colocamos entre el bloque Init y el bucle. Conectamos los terminales rosados Arduino Resource (Recurso Arduino) de los dos bloques y conectamos también el terminal error del bloque Init al terminal error in del bloque Set Digital Pin Mode. Creamos una constante en la entrada Digital I/O Pin (Terminal E/S Digital) y la ponemos a 13. Creamos otra constante en la entrada Pin Mode (Modo Terminal) y la configuramos como output (salida).

Todo un laboratorio de electrónica en un solo dispositivo USBCon NI myDAQ, tu ordenador se convierte en el instrumento. Al instalar el controlador de hardware NI ELVISmx dispondrás de: Multímetro Digital, Osciloscopio, Generador de Funciones, Analizador Bode, Analizador de Señales Dinámicas, Generador de Forma de Onda Arbitraria, Generador de Salidas Digitales y Lector de Señales Digitales.

Ocho instrumentos de ingeniería para trabajar como y donde tu quieras.

¡NI myDAQ por solo 149 Euros!(incluyendo licencias de estudiante de LabVIEW y Multisim)

Contenido del paquete: Dispositivo NI myDAQ, DVD de instalación que contiene NI ELVISmx y NI DAQmx, así como las versiones para estu-diante de LabVIEW y Multisim con sus licencias correspondientes, Cable USB, Puntas de prueba para el multímetro, Cable de audio (3,5 mm), Conector de tornillos con destornillador NI, Tarjeta informativa de iniciación, Tarjeta infor-mativa de programas de ejemplo de TI, Bandeja de almacenamiento reutilizable.

¡Atención! Para poder adquirirl NI myDAQ deberás acreditar tu condición de estudiante.

Más información y pedidos en: www.elektor.es/myDAQ

Publicidad

Personal Download for I © Elektor

74810

Page 20: Revista Elektor-linux Simplificado

20 05-2012 elektor

MICROCONTROLADORES

Bucle Arduino Desde la paleta Arduino -> Low Level obtenemos el bloque Digital Write Pin (Terminal Digital de Escri-tura) y lo colocamos dentro del bucle. Conectamos sus termi-nales de la izquierda Arduino Resource y error (Recurso Arduino y error) con sus equivalentes en el lado derecho del bloque Set Digital Pin Mode. Conectamos la entrada Digi-tal I/O Pin al terminal con número de constante 13 que hemos creado en el paso anterior. Conectamos ahora la entrada Value (Valor) a la salida de la puerta AND.

Paso extra en LabVIEW Desde la paleta Arduino obtenemos el bloque Close (Cerrar) y lo colocamos a la derecha del bucle. Conecta-mos sus terminales izquierdos Arduino Resource y error a sus equivalentes del lado derecho del bloque Set  Digi-tal  Write  Pin. Pulsamos con el botón derecho del ratón sobre el terminal error out y, de la entrada Dia-log & User Interface Palette, en el menú contextual, conseguimos el manejador Simple Error Handler. Si pasa-mos el ratón sobre este bloque de función, a la derecha del blo-que Close, LV puede hacer la conexión automáticamente por nosotros. Si no lo tendremos que hacer por nosotros mismos.Finalmente, pulsaremos en el cuadro verde con el botón derecho del ratón y, con al F que está conectada a la condición de Stop del bucle, seleccionamos Change to Control (Cambiar a Control) del menú contextual. Esto creará un botón en el panel frontal que nos permitirá detener el VI de un modo controlado (ver el apartado “No abortar”).Ahora nuestro VI debería tener una apariencia como el de la Figura5. Si tenemos nuestro diagrama de bloques bastante liado, es buen momento para presionar Ctrl-U y limpiarlo; seguidamente salvare-mos nuestro trabajo.Ejecutamos ahora el VI. Si todo va bien el LED de la placa Arduino debería comenzar a parpadear a la misma velocidad que el de la pan-talla de nuestro ordenador. Es posible que el LED real no parpadee con la misma regularidad como el virtual, supongo que es debido a temas de tiempo real y de USB dentro de Windows, pero no debería ir mucho más despacio o mucho más rápido.Si el LED real no comienza a parpadear pero el virtual sí lo hace, probablemente habremos seleccionado el puerto serie inco-rrecto de la placa. Pulsaremos sobre el botón Stop y proba-blemente veremos un mensaje de error 5005 “Unable to find Arduino” (“Incapaz de encontrar Arduino”). No vemos este error antes de parar el VI porque la ventana de diálogo de error está al final del VI. Si lo unimos directamente con el bloque Init, lo veremos antes, pero también la veremos más veces ya que las otras funciones relacionadas con Arduino también produ-cen errores.En la segunda parte de este artículo profundizaremos más y real-mente “llegaremos a mancharnos las manos”. Aunque probable-mente no nos convertiremos en unos expertos en LabVIEW, seguro que llegaremos a conocer LIFA muy bien.

(100215-I)

Figura 4. La paleta de función Arduino vista desde el diagrama de bloques. Los cuadrados en relieve con un triángulo negro en la esquina superior derecha no llevan también a sub-paletas y

ejemplos.

Figura 5. El Hello World VI de la Figura 3 se puede guiar para que también haga parpadear a un LED real de la placa Arduino. Señalar

la presencia del botón Stop que permite una salida limpia.

Figura 2. Un menú contextual típico que se activa cuando pulsamos sobre el botón derecho del ratón en una función de

entrada o de salida.

Figura 3. Mi primer Instrumento Virtual, o cómo hacer parpadear un LED virtual a 2 Hz usando LabVIEW. La ventana más pequeña

con el fondo gris es el panel frontal que mantiene al LED parpadeando.

Personal Download for I © Elektor

74810

Page 21: Revista Elektor-linux Simplificado

Brought to you by Eurocircuits

Speed up your design cycle and keep costs down using our fast, easy-access online PCB pooling services. We deliver:

• Top quality PCBs at low pooling prices

• Fast deliveries to suit your requirements

• Comprehensive technology support

• No set-up or tooling charges

• No minimum order charge - order from 1 PCB

• Online ordering without pre-payment

• Stencil service

PCB proto – dedicated engineering prototype service, fast and low-cost• 1 or 2 PCBs in 2, 3, 5 or 7 working days

• DRC-checked and fully fi nished with 2 soldermasks and 1 legend, 150µm technology

• 1 x 100 x 80mm in 7WD - 2 layer 47,02 € - 4 layer 95,52 €

• 2 x 100 x 80mm in 7WD - 2 layer 36,89 € each - 4 layer 74,76 € each

STANDARD pool – widest choice of Eurocircuits pooling options• 1-8 layers 150µm technology PCBs

• from 2 working days

TECH pool – all the benefi ts of pooling for high-density PCBs• 2-8 layers 100µm technology PCBs

• from 4 working days

IMS pool – aluminium-backed PCBs for high heat-dissipation (LED) applications• Single layer Insulated Metal Substrate PCBs

• 1.5mm aluminium base with 75µm thermally conductive dielectric and 35µm Cu foil

• from 3 working days

On demand – multi-option non-pooling service for specialist needs• 1-16 layers down to 90µm technology

• RF and high Tg materials

• from 2 working days

www.elektorPCBservice.com

Prices quoted include 21% Belgian VAT but exclude transport costs

The European reference for PCB prototypes and small series

Personal Download for I © Elektor

74810

Page 22: Revista Elektor-linux Simplificado

22 05-2012 elektor

MICROCONTROLADORES

Simplificando LinuxEmbebido (1)Primeros pasos

Hay muchos cursos de iniciación dispo-nibles para microcontroladores de 8 bits, pero en comparación poca documentación y pocas páginas web que cubran las necesi-dades de los recién llegados al Linux embe-bido. Muchas descripciones dan por hecho demasiados conocimientos previos o pasan demasiado rápido al código fuente críptico, temas especializados u otros detalles no deseados. Sin embargo, en el fondo Linux es sólo una pieza clásica, bien estructurada y muy modular de firmware y, a pesar de su aparente complejidad, es posible compren-derlo en términos de conceptos para micro-controladores ordinarios.

¿Qué necesitamos para dar nuestros prime-ros pasos en este mundo? En los primeros días de la computación y los microprocesa-dores era relativamente fácil para un usuario interesado comprender el hardware, el sis-tema operativo, las aplicaciones, los drivers y el resto de partes de su máquina. La razón principal de esto es que no había la enorme diversidad de componentes de la que disfru-tamos hoy en día, y así era más fácil centrar los esfuerzos en los componentes y herra-mientas de las que se disponía. Normal-mente la gente construía y manejaba el hard-ware a su manera y, por lo tanto, dependía del individuo arreglar sus propios errores y fallos. Esto a su vez exigía un conocimiento profundo de cómo funcionaba el sistema.

Este es el enfoque que tomaremos para entender Linux en esta serie de artículos. Nuestro hardware será una tarjeta com-pacta que incluye todo lo necesario en un proyecto embebido actual (figura 1): un interfaz USB, una conexión para tarjetas SD y varias opciones más de expansión. También es fácil conectar la tarjeta a una red Ethernet como veremos más adelante en la serie. La tarjeta Linux de Elektor está basada en el proyecto open-source “Gnu-blin”, desarrollado en la Universidad de Augsburgo de Ciencias Aplicadas con pro-pósitos educativos [2].No hay componentes especializados en la tarjeta Linux. El circuito impreso tiene dos capas y está disponible ya listo en Elektor (ver figura 2). La segunda parte de esta serie se centrará más detenidamente en el esquema del circuito, pero también lo mos-traremos aquí (figura 3) con el fin de apor-tar la información completa. El hardware está disponible bajo la licencia ‘freedom-defined.org/OSHW’, lo que significa que los ficheros CAD también son públicos [3]. Huelga decir que el software para este pro-yecto es también totalmente open-source, y siempre estará disponible para descargar desde la página web de Elektor [3].

Paso a pasoLa Figura 4 muestra un esquema del plan de trabajo de este curso. Lo primero que los

principiantes de Linux deben entender es dónde se originan los componentes de soft-ware y aplicaciones más importantes. Estos componentes forman las bases de nuestro sistema, así como el de cualquier sistema Linux basado en un PC. También aprendere-mos cómo se construye el hardware y cómo opera. Y después veremos cómo instalar un entorno de desarrollo adecuado para Linux en un PC para compilar nuestro propio código fuente: instalar Linux en un micro-controlador es mucho más fácil si el entorno de desarrollo del PC también es Linux (aun-que sea por compatibilidad de los nombres de las rutas de directorios al menos). Los usuarios de Windows tienen la opción de instalar Linux en una máquina virtual.Al final del curso esperamos que haya mejo-rado su comprensión de cómo funciona el sistema operativo Linux mediante aplica-ciones prácticas de ejemplo. Nuestra meta final será construir un simple controlador de calefacción con un display gráfico y análisis de datos mediante un navegador.

Los orígenes de GNU y LinuxEs importante para cualquiera que use Linux seriamente comprender por qué y como surge GNU/Linux, la implementación gra-tuita de UNIX, y cómo está organizada. Esto permite un mejor entendimiento de dónde yace el límite del sistema operativo y, más importante, hacerse a la idea de que pieza

Benedikt Sauter (Alemania) [1]

A día de hoy se puede encontrar Linux corriendo en

todo tipo de dispositivos, incluso en máquinas de café.

Muchos entusiastas de la electrónica estarán ansiosos de usar

Linux como base de un proyecto para microcontrolador, pero la

aparente complejidad del sistema operativo y el alto precio de las placas de

desarrollo han sido hasta ahora un obstáculo. Elektor resuelve ambos problemas

con un curso para principiantes acompañado por una tarjeta compacta y barata.

Personal Download for I © Elektor

74810

Page 23: Revista Elektor-linux Simplificado

23elektor 05-2012

MICROCONTROLADORES

de software o hardware es la responsable de un problema.El desarrollo de Unix [4] empezó en 1969 en los Laboratorios Bell en Estados Unidos. Ken Thompson escribió la primera versión en ensamblador. Para hacerse una idea mejor de que interfaces y drivers serían necesarios escribió, junto con Dennis Ritchie, el juego “Space Travel”. Desde el punto de vista de un programador de microcontroladores este enfoque es fácilmente comprensible: cuando se desarrolla un sistema embebido es importante planificar desde el principio como se estructurará el software (drivers del hardware y funciones útiles incluidas) para maximizar la reutilización del código fuente. Ken y Dennis pronto decidieron qué componentes pertenecían al sistema ope-rativo y cómo debía estar organizado todo. Entre 1972 y 1974 reescribieron el corazón del sistema operativo desde cero utilizando el lenguaje de programación C, el cual tam-bién fue desarrollado en los Laboratorios Bell. El sistema operativo, con un compila-dor C incluido, se distribuyó a universidades de manera gratuita.Al final de los años 70 AT&T, la compañía detrás de los laboratorios Bell, se dio cuenta de que había potencial en la comercializa-ción de UNIX. Hasta ese momento era nor-mal intercambiar y compartir el software libremente. No se había oído hablar de “piratería” y otras cosas como “actos ilega-les”. El software se distribuía con la finalidad de mejorarlo de forma cooperativa. Esta actitud subyacente sigue en el corazón del movimiento del software libre y open-sou-rce [5] [6].Una vez AT&T hubo empezado a vender Unix no pudo ser intercambiado libre-mente. De repente debido a los altos costes de la licencia, ya no era viable para su uso en cursos universitarios o para estudio per-sonal. En este momento empezó a crecer el número de compañías que licenciaban sus propias variantes de Unix: Un ejemplo es el SINIX de Siemens, que tiene sus orígenes en Xenix, la versión de Unix de Microsoft.Richard Sallman en el MIT de Estados Uni-dos [7], no estaba contento con que Unix en general estuviera disponible sólo para empresas. Parecía que los días felices en que Unix se copiaba y compartía entre colegas y amigos habían terminado. Sólo había una

Características de la placa Linux de Elektor•Tarjeta de dos capas utilizando componentes fácilmente disponibles•No se necesita hardware especial de depuración o programación•Completamente ejecutable desde una tarjeta de memoria SD•Linux preinstalado•180 MHz, 8 MB RAM (32 MB opcional), 64 MB swap•Convertidor USB-a-RS-232 integrado para acceso por consola•Relé, fuente de alimentación externa y pulsadores para testeo rápido•Cuatro pines GPIO, 3 canales A/D y un canal PWM en la placa•Buses I2C y SPI accesibles desde Linux• Interfaz USB para posterior expansión

120026 - 13

Elektor Linux Board

F. Alimentación

Interfaz USBpara

periféricos

Relés

Silabs CP2102consola USB

GPIO/AD/I2C/SPI

7 - 12 VDC Fuente Alimentación

Salida 3.3 V

Pulsadores

CanalesI/O y A/D

CLK

IO

NXPLPC3131

Procesador

1.2 V 3.3 V 1.8 V

MemoriaAMICDRAM

MemoriaNo-Volátil

Bootloader

IO, canales AD ,I2C ySPI

Tarjeta MicroSDhasta 32 GB

Term

inales

Term

inales

Hardware USB

Conmutación cargas

Consola root

Figura 1. La placa supone una sólida base para los proyectos personalizados de microcontroladores. También dispone de un interfaz de red.

Figura 2. El circuito impreso de la tarjeta está disponible y listo en Elektor.

Personal Download for I © Elektor

74810

Page 24: Revista Elektor-linux Simplificado

24 05-2012 elektor

MICROCONTROLADORES

A43E26161

VDDE

-IOC

VDDE

-IOC

VDDE

-IOC

VDDE

-IOC

VDDE

-IOC

VDDE

-IOC

VDDE

-IOC

VSSE

-IOC

VSSE

-IOC

VSSE

-IOC

VSSE

-IOC

VSSE

-IOC

VSSE

-IOC

VSSE

-IOC

IC5

DRAM

DQ10DQ11DQ12DQ13DQ14DQ15

LDQMUDQM RAS1

DQ0DQ1DQ2DQ3DQ4DQ5DQ6DQ7

A10

A12A11

BA0BA1

DQ8DQ9

CLKCKE

CAS

H7 A0

A7

A8B9B8C9C8D9D8E9

H8 A1J8 A2J7 A3J3 A4J2 A5H3 A6H2 A7H1 A8G3 A9H9

G1G2

G7G8

E1D2D1C2C1B2B1A2

A9 B3 C7 D3 E7 J9

E8F1F2F3

F7F8

WE F9

CS G9

A1 A3 B7 C3 D7 E3 J1

EBI_NCAS_BLOUT_0EBI_NRAS_BLOUT_1

LPC313XFET180EBI_DQM_0_NOE

MNAND_RYBN2

MNAND_RYBN0MNAND_RYBN1

MNAND_RYBN3

EBI_A_0_ALEEBI_A_1_CLE

NAND_NCS_0NAND_NCS_1NAND_NCS_2NAND_NCS_3

MLCD_DB_10MLCD_DB_11MLCD_DB_12MLCD_DB_13MLCD_DB_14MLCD_DB_15

MLCD_RW_WR

MLCD_DB_0MLCD_DB_1MLCD_DB_2MLCD_DB_3MLCD_DB_4MLCD_DB_5MLCD_DB_6MLCD_DB_7MLCD_DB_8MLCD_DB_9

MLCD_E_RD

EBI_D_10EBI_D_11EBI_D_12EBI_D_13EBI_D_14EBI_D_15

MLCD_CSB

EBI_D_0EBI_D_1EBI_D_2EBI_D_3EBI_D_4EBI_D_5EBI_D_6EBI_D_7EBI_D_8EBI_D_9

EBI_NWE

MLCD_RS

IC6.B

G2F2F1E1E2D1D2C1B1A3A1C2G3D3E3F3

H1

J2

B4

J1J3K1K2E6E7

D4

N8P9N6P6N7P7K6P5N5L5K7N4K5P4P3N3

B3A2

P8N9L8K8

G1H2

C19

10n

C18

100n

C21

10u

C38

100n

C31

10n

C33

100n

C32

10u

C25

10n

C26

100n

C27

10u

C17

10n

C22

100n

C23

10u

+3V3

Q2

12MHzC30

22p

C29

22p

C15

47n

C16

100n

C14

10u

C13

10u

C12

3n3

+3V3 +3V3

C36

220p

C35

1n

C37

10u

+1V2

+1V2

+1V2

+1V8

+1V8

+3V3

R1910R

+3V3

+3V3X7

1

23.3V

GND

X4 1

2

3

4

LPC_D0LPC_A1LPC_D2LPC_D3LPC_D4LPC_D5LPC_D6LPC_D7LPC_D8LPC_D9

LPC_D10LPC_D11LPC_D12LPC_D13LPC_D14LPC_D15

LPC_CASLPC_RAS

LPC_WELPC_CS

LPC_A0LPC_A1LPC_A2LPC_A3LPC_A4LPC_A5LPC_A6LPC_A7LPC_A8LPC_A9LPC_A10LPC_A11

LPC_A13LPC_A14LPC_A15

LPC_DQM0LPC_DQM1LPC_CLKLPC_CKE

LPC_A0LPC_A1

LPC_A2LPC_A3LPC_A4LPC_A5LPC_A6LPC_A7LPC_A8LPC_A9

LPC_A10LPC_A11LPC_A12LPC_A13LPC_A14LPC_A15

LPC_D0LPC_D1LPC_D2LPC_D3LPC_D4LPC_D5LPC_D6LPC_D7LPC_D8LPC_D9LPC_D10LPC_D11LPC_D12LPC_D13LPC_D14LPC_D15

LPC_CLK

LPC_DQM0

LPC_WE

LPC_MC1_CD

LPC_CSLPC_DQM1

LPC_CKE

LPC_CASLPC_RAS

DAT2DAT3

DAT0DAT1

SW_ASW_B

U1

CMD

CLKGND

V+

12345678

SD-CardSocket

DM3D-SFLPC_MCI_DAT2LPC_MCI_DAT3LPC_MCI_CMD

LPC_MCI_CLK

LPC_MCI_DAT0LPC_MCI_DAT1

LPC_MCI_CD

+3V3

R21

10k

R30

10k

R23

10k

R25

10k

R29

10k

TRST_NTDI

TMSTCKTDO

SYSCLK_O

R13

DNP

R12

10k

+3V3

R17

10k

GPIO0

R2

10k

+3V3

GPIO2LED1

LPC_MCI_CLKLPC_MCI_CMD

LPC_MCI_DAT0LPC_MCI_DAT1LPC_MCI_DAT2LPC_MCI_DAT3

GPIO11

GPIO14GPIO15

GPIO18GPIO19

PWM_DATA

GPA0GPA1

GPA3

C11

100n

RESET

S3

RESET

+3V3

RESET

I2C_SDAI2C_SCL

R11

12k

USB_ID

LPC_DMLPC_DP

K1

VCC

GND

D–D+

1234

USB

R10

1M

R14

1M

LPC_DMLPC_DP

1

2

3J3

C10

100n

+5V

LPC_VBUS

1%

SPI_SCKSPI_MISO

SPI_MOSI

LPC_RXDLPC_TXD

TP1 TP2

TP5TP6

R26

10k

+3V3

S1GPIO15

USB_

VDDA

33-D

RV

USB_

VDDA

12-P

LL

LPC313XFET180

USB_VSSA_TERMUSB_VSSA_REF

MI2STX_DATA0

SPI_CS_OUTO

MUART_CTS_NMUART_RTS_N

I2SRX_DATA1

I2SRX_DATA0

MI2STX_BCK0

MI2STX_CLK0I2STX_DATA1

CLK_256FS_O

ADC10B-GPA0ADC10B-GPA1ADC10B-GPA2ADC10B-GPA3

USB_

VDDA

33

I2SRX_BCK1

I2SRX_BCK0

MI2STX_WS0

I2STX_BCK1

BUF_TRST_N

I2SRX_WS0

FFAS

T_OU

T

SPI_CS_IN

I2SRX_WS1

I2STX_WS1

CLOCK_OUT

FFAS

T_IN

USB_VBUS

USB_RREF

USB_GNDA

I2C_SDA0I2C_SCL0I2C_SDA1I2C_SCL1

SPI_MISO

SPI_MOSI

UART_RXDUART_TXD

SCAN_TDO

SYSCLK_O

PWM_DATA

SPI_SCK

ARM_TDO

BUF_TCKBUF_TMS

JTAGSELRSTIN_N

MGPIO10

USB_DMUSB_DPUSB_ID TRST_N

MGPIO5MGPIO6MGPIO7MGPIO8MGPIO9

GPIO11GPIO12GPIO13GPIO14GPIO15GPIO16GPIO17GPIO18GPIO19GPIO20

GPIO0GPIO1GPIO2GPIO3GPIO4

IC6.A

A10

B10

C10D10E12E13

P12N12N13P14

G14F14F13M10N10P11

M13M12M11N14F12E14G10

P13

TDITMS P10

TCK M14E11F10F11D13D14

N11

H12

G13

H14

K10J10L14B11C11

H13H10J12J14J13J11K12K14H11K13

B14A14B13C14

P1 M2 L1

L2N2P2M1J5

K4L3N1

A7A8C8B8B7

K9

J4

B6A6A5B5C5A4

B9

R1

10k

+3V3

SV1

123456

+3V3

R91k LPC_VBUS

JP1

1

2USB_ID

R15

10k

R16

10k

GPIO

0

GPIO

2

TP3

TP4

1 23 45 67 89 10

11 1213 14

J5

+5VC4

4u7

R6

66k5

R5

301k

C8

22p

+3V3

L3

4uH7AS1324

VOUT/IC3

GND

VIN

VFB

EN

SW

2

1

5

4

3

C1

10u

C6

4u7

R7

150k

R8

301k

C9

22p

+1V8

L1

4uH7AS1324

VOUT/IC1

GND

VIN

VFB

EN

SW

2

1

5

4

3

C3

10u

C5

4u7

R4

301k

R3

301k

C7

22p

+1V2

L2

4uH7AS1324

VOUT/IC2

GND

VIN

VFB

EN

SW

2

1

5

4

3

C2

10u

GPA1

GPIO11

GPIO14

GPIO15

X11

2

Q4

BSS123R18

10k

GPIO18

K4

13

11

7

5

G6D-1A-ASI5VDC

+5V

D4

BAT54

R22

270R

LED5

X61

2

MC78M05ABDTIC8

C20

47u

+5VEXT

GPA0GPA3I2C_SCLSPI_MOSISYSCLK_OGPIO14

GPA1PWM_DATA

I2C_SDASPI_MISOSPI_SCK

GPIO11

R20

10k

X2+5V

GND

D–D+

4

123

5

MINI-USB

LPC_RXDLPC_TXD

TP7

1

2

3

J4

+3V3+5VEXT

C24

47u

CD21021

SUSPENDSUSPEND

REGIN

IC7

VBUS

GND

VDD

EXP

RST

GND

DCDDTRDSRTXDRXDRTSCTS

D-

RI

D+

1112

282726252423

5

2

67 8

4

9

3

1

ADC10B_VDDA33

LPC313XFET180

ADC10B_GNDA

VDDE_IOAVDDE_IOAVDDE_IOAVDDE_IOAVDDE_IOA

VDDE_IOBVDDE_IOBVDDE_IOBVDDE_IOB

VDDE_IOCVDDE_IOCVDDE_IOCVDDE_IOCVDDE_IOCVDDE_IOC

VSSE_IOAVSSE_IOAVSSE_IOAVSSE_IOAVSSE_IOAVSSE_IOA

VSSE_IOBVSSE_IOBVSSE_IOBVSSE_IOB

VSSE_IOCVSSE_IOCVSSE_IOCVSSE_IOCVSSE_IOCVSSE_IOCVSSE_IOCVDDE_ESD

VDDA12VDDA12

VSSA12

VPP_AVPP_B IC6.C

VDDI VSSI

VDDIVDDIVDDIVDDI

VSSIVSSIVSSIVSSIVSSI

A11

A13

L12C12

D11E10

C13

G12L10

D12

L11

B12

G11

L13

A12

K11

H3L7

C6

A9C9

B2E5F5G5H5

L4M5M7M9

D5D7E8

C7

G4L6

C3C4E4F4H4K3

M3M4M6M8

D6D8D9

L9

E9

+5V

+5V

Relais

C28

1u

DC 7 - 12V

GND

+5V

120026 - 11

LED2

R2727

0R

LED1

R24

270R

+3V3

LED1

Figura 3. El diagrama del circuito es sorprendentemente sencillo para tratarse de una tarjeta tan potente.

Personal Download for I © Elektor

74810

Page 25: Revista Elektor-linux Simplificado

25elektor 05-2012

MICROCONTROLADORES

solución: había que desarrollar una nueva versión gratuita del sistema Unix desde cero.Y así GNU [8] (de ‘GNU is not Unix’) nació en 1983. A Richar Stallman le quedaba una gran cantidad de trabajo: todo tenía que ser re-implementado para crear un sistema operativo 100% libre. Necesitaría:

• Un compilador, enlazador (linker) y ensamblador de C (una “toolchain”)

• Un editor de texto para escribir código fuente

• Un núcleo de sistema operativo (kernel)• Varios programas útiles• Un sistema de ficheros raíz para el sistema

operativo.

En 1990 todas las partes importantes se habían ensamblado, con la excepción del kernel del sistema. Richar Stallman sabía que sólo tendría sentido empezar a traba-jar en el núcleo del sistema cuando estuvie-ran preparados un compilador y un editor de textos estable.

Los inicios de LinuxAproximadamente al mismo tiempo, un estudiante finlandés llamado Linus Torvalds compró su primer ordenador x86 y escribió un programa simple de terminal como ejer-cicio para comprender mejor el ordenador [9]. Instaló Minix, una especie de variante de Unix desarrollada por un profesor de Amsterdam y su equipo (y que sigue en uso a día de hoy). Mientras trabajaba en su pro-grama de terminal, Linus Torvalds vio que se estaba convirtiendo cada vez más en un sistema operativo. Así que para permitir la compatibilidad con el mayor rango posible de software existente estaba claro que el sistema tenía que seguir el estándar POSIX. ‘POSIX’ define un estándar de cómo debe parecer externamente un sistema Unix. Afortunadamente para nosotros, su libre-ría local tenía la documentación de POSIX necesaria: esto sería probablemente en la forma de un manual para una de las otras múltiples variantes de Unix. Lo principal era que Linus Torvalds tenía la información sobre cómo se nombraba a las llamadas del sistema y qué argumentos usaban.En 1992 el joven desarrollador publicó su creación en Internet para su descarga gra-tuita [10]. Necesitaba una licencia ade-

120026 - 12

Inico

Fin

Creación Bootloader/conversión kernel

Arranque individualcreación de imagen

Kernel Linux(visión general)

Desarrollo deaplicación /

lenguajes script

Acceso a la Red Periféricos USB Demo proyecto:control de calefacción

Opciones extrapara la

Elektor Linux Board

Vistazo a loscomponentes(SW y HW)

Historia yantecedentes de

GNU/LinuxDescripciónHardware

Puesta en marcha delHardware

Instalación de laplataforma de desarrollo

Figura 4. Plan de trabajo de nuestra introducción a Linux embebido.

120026 - 14

PC

Editor de Texto Editor de Texto

Compilador

Ensamblador

Linker

‘Toolchain’

Consola serieRS232

USB

Bootloader

Kernel (como imagen)

Shell (Consola)

Biblioteca C (libc)

Sistema Archivos (como imagen)

Aplicación de usuario

Kernel (como texto fuente)

Sistema Archivos (texto fuente)

Biblioteca C (libc)

Elektor Linux Board

Figura 5. Para el desarrollo de software se usa un PC (con Linux)junto con la placa.

Personal Download for I © Elektor

74810

Page 26: Revista Elektor-linux Simplificado

26 05-2012 elektor

MICROCONTROLADORES

cuada bajo la que liberarlo, y ocurría que había escuchado recientemente hablar a Richar Stallman en su universidad. La licen-cia GNU GPL (la licencia open-source usada por el proyecto GNU) era perfecta. Y enton-ces pasó algo que no estaba planeado: ¡la comunidad open-source se dio cuenta rápi-damente de que el kernel de Linus Torvalds era el elemento que faltaba en el proyecto GNU de Richard Stallman! Es importante apuntar que Stallman ya había empezado un kernel libre para GNU llamado ‘Hurd’, aunque esto no disminuye la importancia de la contribución de Torvalds.Ahora, con el proyecto GNU complemen-tado por el kernel Linux, por primera vez estaba disponible un sistema operativo completamente libre y abierto. Estricta-mente hablando, es mejor referirse como el sistema operativo GNU/Linux, la parte de “Linux” refiriéndose al kernel y “GNU” por el resto del sistema operativo suministrado por el proyecto GNU.

PanorámicaDespués de la breve digresión histórica es el momento de echar un vistazo a la imagen general de los componentes que forman nuestro sistema GNU / Linux (ver Figura 5). En esencia poco ha cambiado desde los pri-meros días: los mismos elementos que se necesitaban entonces son necesarios a día de hoy para la tarjeta Linux de Elektor.

Para este proyecto usaremos varios de esos programas originales de Linux. Necesitare-mos mantenernos más alejados de otros, mencionaremos las razones más adelante.

Editor de TextoLos desarrolladores de hoy en día están acostumbrados a usar su editor de texto preferido, con marcadores de sintaxis, asis-tente para completar el código y documen-tación de API integrada. Para realizar cam-bios rápidos en los ficheros de la placa Linux de Elektor, necesitamos un editor de texto que se pueda usar sobre la consola de Linux (ver más abajo).Existen editores tradicionales como ‘vi’ (o ‘vim’ en su forma más amigable) y ‘nano’ que cumplirán el cometido perfectamente. Ambos están presentes en el sistema de ficheros raíz (ver más abajo) de la placa Linux de Elektor. Los desarrolladores de Linux a veces usan el mismo editor de texto en su PC de escritorio para evitar la confu-sión al cambiar entre editores.Otra opción es el extendido editor ‘Emacs’, algunos lectores pueden estar familiariza-dos con su reputación. Emacs fue desarro-llado por Richard Stallman como parte del proyecto GNU. Es popular entre los desa-rrolladores experimentados por el amplio rango de funciones que ofrece, no obstante, para los principiantes puede ser mejor empezar con un editor más ligero.

Compilador + linker + ensamblador = toolchainPara ejecutar programas en un procesador es necesario convertirlo al código máquina de la arquitectura en la que se quiere eje-cutar. La toolchain de GNU incluye todo los componentes de software necesarios para convertir C en código máquina. Fue dise-ñado para que fuera relativamente sencillo añadir un nuevo set de instrucciones, y así, por ejemplo, hay versiones disponibles para x86, AMD64, AVR, ARM, MIPS, MSP430 y muchos procesadores más. La tarjeta Linux de Elektor usa un microcontrolador compa-tible con ARM, por lo que usaremos la tool-chain de ARM.

El kernelEl núcleo yace en el corazón del sistema ope-rativo. Se originó en el código fuente escrito por Linus Torvalds, pero desde entonces unos diez mil desarrolladores del kernel han trabajado en el código. A pesar de ello, Torvalds ha tenido siempre la última palabra sobre qué cambios y extensiones son acep-tadas o rechazadas en el kernel. Cualquier desarrollador que no esté de acuerdo con su decisión es totalmente libre de bifurcar su propia versión del kernel ya que este es totalmente open-source. Aun así, hasta la fecha no habido bifurcaciones significativas del código del kernel de Linux. El desarrollo del software se organiza mediante listas de correo y cualquiera puede unirse a esas lis-tas y aportar sugerencias. Esas sugerencias serán examinadas y discutidas por otros.Con la excepción de unas pocas líneas de código, el kernel está escrito completa-mente en C y puede ser convertido de C a código máquina usando la toolchain de GNU. Veremos como hacer esto más ade-lante en esta serie.

Sistema de ficherosBajo el sistema operativo Windows está sufi-cientemente claro que los ficheros de usua-rios están en el directorio “Documents and Settings”, los programas se instalan en “C:\Program Files” (“Archivos de Programa”) y los ficheros de bajo nivel del sistema se guardan en el directorio System32 bajo “C:\Windows”. Como cualquier otro sistema operativo, Windows tiene su propia estruc-tura para organizar sus múltiples programas

Figura 6. Captura de pantalla de la consola en acción.

Personal Download for I © Elektor

74810

Page 27: Revista Elektor-linux Simplificado

27elektor 05-2012

MICROCONTROLADORES

y ficheros de datos. Así que, naturalmente nos preguntamos cómo se hacen las cosas en los sistemas GNU/Linux embebidos. En este caso los orígenes no son cosa de Linus Torvalds o Richard Stallman, las bases comunes para todos los sistemas de fiche-ros en sistemas Unix y Linux fueron desa-rrolladas incrementalmente como parte del estándar POSIX. La llamada “estructura del sistema de ficheros raiz” (“root file system structure”) ha sido desarrollado posterior-mente por las distribuciones más conocidas como Debian, Suse y similares. Cada una de estas distribuciones ofrece al usuario un sis-tema completo GNU/Linux con aplicaciones ya instaladas, una interfaz gráfica de usuario y un kernel actualizado.Para usar Linux en nuestra placa también necesitaremos establecer un sistema de ficheros raiz. En nuestro caso una versión de Linux de escritorio con funcionalidad com-pleta sería demasiado pesada y una versión restringida del sistema normalmente será suficiente con una pequeña selección de programas y librerías. Hay programas escri-tos especialmente que se pueden usar para crear sistemas de ficheros personalizados. Además, las distribuciones más conocidas ofrecen versiones preparadas para proce-sadores ARM. Volveremos a este tema más adelante.

La librería estándar de CLas aplicaciones proveen la cara visible de cualquier ordenador o producto similar. El sistema operativo está en el fondo, mane-jando el hardware, reservando memoria, manejando las comunicaciones a través de la red u otras interfaces y muchas cosas más. Ahora, los desarrolladores de aplica-ciones no quieren perder su tiempo siempre reescribiendo funciones para leer y escribir en ficheros, manipular cadenas y todas esas cosas. Para salvar a los desarrolladores apa-rece la librería C estándar, conocida en su forma más popular como ‘libc’. Hay versio-nes recortadas de esta librería que son per-

fectas para sistema embebidos donde el poder de computación y almacenamiento son relativamente limitados en compara-ción con un PC de escritorio.La librería estándar de C provee la interfaz entre la aplicación y el kernel. Esto tam-bién incluye un número de funciones úti-les comúnmente utilizadas. La librería se carga en tiempo de ejecución según sea requerida para la ejecución de los progra-mas (está “enlazada dinámicamente”). Esto ahorra memoria ya que una sola copia de la librería se encarga de todas las aplicaciones en ejecución.

La consola de serie y la shellLa consola, que puede ser comparada con el intérprete de comandos en Windows, puede ser usada para introducir comandos, disparar acciones (posiblemente en una máquina remota) y mostrar resultados. En este sentido provee una interfaz de usuario al sistema. Normalmente junto a una ‘shell’, la cual dispone de muchas utilidades adicio-nales que hacen que un sistema Linux sea más fácil de manejar. Estudiaremos la shell mucho más en profundidad más adelante.Cuándo se arranca Linux en un PC de escri-torio el teclado y la pantalla proveen la con-sola tradicional. (Normalmente se puede cambiar de la consola a la interfaz gráfica de usuario pulsando control-shift-F1.) Cuando se administran máquinas de forma remota es normal usar un protocolo como SSH o, cuando la seguridad no es un problema, TELNET para acceder a la consola mediante una conexión de red. Una tercera opción es acceder mediante una interfaz RS-232. Se puede usar un PC con puerto serie en el otro lado de esta conexión, con un emulador de terminal como HyperTerminal o TeraTerm (bajo Windows) o picocom (bajo Linux).

Lo que depara el futuroEn la próxima entrega de esta serie vere-mos cómo se dispone el hardware (figura 1). Podremos examinar de cerca la fuente

de alimentación, el microcontrolador, el dis-positivo SDRAM y las interfaces. En cuanto al software, examinaremos el proceso de arranque: gracias a la demostración de software preinstalada (Figura 6) la tarjeta está preparada para la experimentación de manera sencilla.

(120026)

Enlaces de internet

[1] [email protected]

[2] www.gnublin.org (sólo en alemán)

[3] www.elektor.com/120026

[4] http://en.wikipedia.org/wiki/Unix

[5] http://en.wikipedia.org/wiki/Free_software

[6] http://en.wikipedia.org/wiki/Open_source

[7] http://en.wikipedia.org/wiki/Massachusetts_Institute_of_Technology

[8] www.gnu.org

[9] ‘Rebel Code: Linux and the Open Source Revolution’, Glyn Moody: ISBN 0738206709

[10] www.kernel.org

Servicios y productos Elektor

•Tarjeta Linux de Elektor, montada y probada: # 120026-91

•Descarga gratuita de software

Todos los productos y descargas están disponibles en la página de

soporte al artículo: www.elektor.es/120026

Personal Download for I © Elektor

74810

Page 28: Revista Elektor-linux Simplificado

28 05-2012 elektor

AUDIO Y VÍDEO

Preamplificador 2012 (2)

Parte 2: Placa Bobina-Móvil/Imán-Móvil (MC/MM)

Volviendo al diagrama de bloques del Preamplificador 2012 mostrado en la parte 1 de este artículo [1], este mes hablaremos de los bloques identificados como ‘Pream-plificador MC’, ‘Sintetizador de Carga’, ‘Preamplificador MM’, ‘Filtro de definición de Ancho de Banda’ y ‘Ganancia conmu-tada’. Señalar que el conmutador dibu-jado con el bloque ‘Ganancia Conmutada’ es realmente un bloque puente en la placa de circuito impreso. Todas las unidades están dentro de una única placa de circuito impreso, la segunda de un total de siete pla-cas que conforman nuestro amplificador de control de audio de alta gama. Vamos a ver ahora cómo funciona todo esto dando una vuelta por el esquema eléctrico de la Figura1.

Etapa Bobina-Móvil (MC) Esta etapa, construida alrededor de los tran-sistores T1-T4 y los amplificadores opera-cionales IC1A e IC2A, proporciona un ruido muy bajo con las bajas impedancias de los platos de Bobina-Móvil. Esto proporciona una ganancia fija a su salida de +30 dB. La

conmutación de ganancia, para adaptarse a la amplia gama de sensibilidades de pla-tos MC, se realiza más tarde, en la etapa de “ganancia-conmutada”. No hay ningún compromiso con el ruido o con el margen con esta arquitectura y no hay necesidad de cambiar la ganancia de la etapa MC, lo que simplifica considerablemente las cosas.La ganancia total de la etapa realmente es de +45 dB, para permitir un valor alto de sensibilidad de la resistencia de realimenta-ción definida por R8 y R9. Sólo se usa parte de esta ganancia, sacada a través de C7. Los 15 dB de ganancia extra no causan ningún problema de margen ya que la siguiente etapa MM siempre dará mucho más antes de la etapa MC.Las condiciones de alimentación DC para los transistores de entrada 2SA1085 están establecidas por R3 y R4. Las condiciones DC para el operacional IC1A están estable-cidas de forma independiente por el servo integrador de DC IC2A, que obliga a tener exactamente 0 V en la salida.Este diseño de la etapa MC proporciona una mejora en el rendimiento del ruido de 1 dB

(para resistencias fuente de 3,3 Ω y 10 Ω), comparado con las versiones anteriores de este circuito. Esto es el resultado de usar cuatro transistores PNP 2SA1085 en para-lelo, que deberían ser más fáciles de obte-ner que el obsoleto 2SB737. Sin embargo, también pueden ser usados estos últimos si disponemos de ellos.Las posiciones de los componentes R1 y C1 son proporcionados para que el plato de carga pueda ser modificado. Esto sólo tiene un efecto marginal en la respuesta del plato MC, en la mayoría de los casos, ya que la impedancia del plato es muy baja. Sin embargo, si queremos hacer pruebas, el rango apropiado para R1 está entre 10 Ω - 1 k Ω y para C1 entre 0 – 10 nF.

Etapa Imán-Móvil (MM) Esta es una etapa relativamente convencio-nal, salvo que utiliza múltiples condensa-dores de poliestireno para obtener el valor requerido (los condensadores de poliéster tienen una tolerancia peor e introducen una distorsión no lineal) y mejorar la precisión RIAA (ya que los errores aleatorios en los

Douglas Self (UK)

Por si no lo sabéis, los discos de vinilo están haciendo su reaparición e incluso hay músicos de menos de 25

años realizando nuevos trabajos en CD, junto con vinilo, preferiblemente de la variedad de 180 g. También,

los platos de disco de alta gama están disponibles a precios galácticos, pero ninguno de ellos tendrá

sentido si no disponemos de un preamplificador que se corresponda a nuestro reproductor MC o MD de

forma óptima. Esto precisamente es lo que hace el diseño que aquí presentamos, con bastante éxito.

Personal Download for I © Elektor

74810

Page 29: Revista Elektor-linux Simplificado

29elektor 05-2012

AUDIO Y VÍDEO

valores de los condensadores tienden a anu-larse). Las resistencias RIAA múltiples R22-R23 y R24-R25 son usadas para mejorar la precisión de la misma forma. El valor de C12 es bastante grande ya que la corrección IEC no está implementada en esta etapa.La característica RIAA de HF se corrige con R26, R27, y C22 para una ganancia relativa-mente baja de la etapa. Otra vez se usan dos resistencias para mejorar la precisión, y C22 es también de poliestireno.Señalar que aquí se ha usado un NE5534A para IC3 ya que es más estable que su mitad, un NE5532, y bastante más estable que un

LM4562, con su ruido de corriente más alto. La alta inductancia de un plato MM hace que un ruido bajo de corriente sea importante. La carga de plato, y su capacitancia en parti-cular, tienen un efecto mucho mayor en los platos MM. Las posiciones de los componen-tes R13 y C8 se han colocado de forma que puedan ser modificados. El rango apropiado para C8 está entre 0–330 pF. Raramente se recomienda añadir una resistencia de carga extra; si se usase aquí anularía parcialmente la reducción de ruido dada por el sintetiza-dor de carga. El valor más bajo recomendado para R13 es de 220 k Ω.

El sintetizador de cargaSe ha usado un circuito de síntesis de carga alrededor de IC4 para conseguir una versión electrónica de la resistencia de carga reque-rida de 47 Ω, a partir de la resistencia R16 de 1 MΩ. Sin embargo, el ruido Johnson de la resistencia no es emulado y, por lo tanto, el ruido debido a la impedancia creciente de la inductancia del plato MM se elimina. La resistencia R16 está creada para apare-cer con un valor de 47 kΩ, controlando su extremo inferior en contrafase a la señal de su extremo superior. IC4B muestra una alta impedancia a la entrada MM, mientras que

Prestaciones de la Placa MM/MCCondiciones de Prueba: tensión de alimentación ±17.6 V, B = 80 kHz; medidas a la salida de la placa Volumen/Balance/Control de Tono (# 110650-1); volumen establecido a 1 V de salida.

Equipo de Prueba: Audio Precision Two Cascade Plus 2722 Dual Domain (Laboratorio de Elektor)

Gráfico de PrestacionesSólo placa MC/MM # 110650-2. Equipo de prueba: Audio Precision Two Cascade Plus 2722 Dual Domain (Laboratio de Elektor).

Aquí tenemos el AP-2 proporcionando una señal de amplitud corregida de acuerdo a la curva de pre-ecualización RIAA. Esto permite que la desviación de la curva RIAA ideal (error de amplitud) se pueda visualizar convenientemente. La curva con el punto de “roll-off” más alto fue capturada con el relé IEC Amendment activado. El error a 20 kHz es menor de 0,05 dB, medidos en la entrada MC del canal izquierdo. Las medidas en la entrada MC del canal derecho dan unos resultados prácticamente idénticos, con lo que las curvas son prácticamente iguales.

Como conclusión, se puede decir que la inversión de un gran número de condensadores de poliestireno, relativamente costosos, está justificada en esta sección del Preamplificador 2012.

-3.6

+ 0.4

-3.4-3.2

-3-2.8-2.6-2.4-2.2

-2-1.8-1.6-1.4-1.2

-1-0.8-0.6-0.4-0.2

-0+ 0.2

dBr A

10 20k20 50 100 200 500 1k 2k 5k 10kHz

MD: 5 mV in, 1 kHz, JP1/2 = 15 dB (fuente 750 Ω)

THD+N S/N S/N S/N (entrada cortocircuitada)

0.008 % 82 dB 86 dBA 88 dBA

MC: 0.2 mV in, 1 kHz, JP1/2 =15 dB (fuente 1 Ω)

THD+N S/N S/N

0.016 % 76 dB 79.5 dBA

Ganancia en la etapa MC 29.8 dB

Definiciones de ganancia en JP1/JP2 (dB) L R

0 0 0

5 5.22 5.23

10 10.95 10.97

15 14.71 14.72

20 19.52 19.51

Bajo "roll-off" (–3 dB)

19.8 Hz (L) 20 Hz (R) 23.3 Hz (L, Corrección IEC activa) 24.8 Hz (R, Corrección IEC activa)

Desviación de la línea recta: –0.06 dB (de 100 Hz a 20 kHz)

Personal Download for I © Elektor

74810

Page 30: Revista Elektor-linux Simplificado

30 05-2012 elektor

AUDIO Y VÍDEO

IC4A es una etapa inversora. Las resisten-cias múltiples R19-R20 y R17-R18 son usa-das para mejorar la precisión de ganancia y, por lo tanto, la precisión de la impedancia sintetizada.

Filtro sub-sónicoEste es un filtro paso alto Butterworth de 3er orden, de dos etapas, con una carac-terística de -3 dB en 20 Hz. Las resisten-cias múltiples R28-R29 y R30-R31 son de

nuevo usadas para mejorar la precisión. Mis diseños previos del preamlificador han usado una versión de una sola etapa, pero me he dado cuenta que la configu-ración de dos etapas es preferible cuando

C1R1

35V

C2

220u

T1

R2

100R

4x2SA1085

T2 T3 T4

R8100R

R9470R

3

21IC1A

C3 100p

R102M2

C515p

R7

3R3

R3

10k

R456k

3

21 IC2A

R11

2M2

C6470n

R5

2k2

R6

330R

35V

C4

220u

-17V

C28R49

35V

C29

220u

T5

R50

100R

4x2SA1085

T6 T7 T8

R56100R

R57470R

5

67IC1B

C30 100p

R582M2

C3215p

R55

3R3

R51

10k

R5256k

5

67 IC2B

R59

2M2

C33470n

R53

2k2

8

4

8

4

C55

100n

-17V

+17V

C56

100n

C8R13 R14

510k

C35R61 R62

510k

35V

C7

220u

35V

C34

220u

R12

220k

C9

100p

R15

430k 35V

C10

22u

7

4

R16

1M

3

21IC4A

5

67 IC4B

8

4

C1310n

C1410n

C1510n

C1610n

C1710n

R22110k

R23150k

R2410k

R2511k

C184n7

C194n7

C204n7

C21220p

C11

4p7

R1727k

R1839k

R19

2000

R

R20

2000

RC57

100n

C58

100n

R21

220R

35V

C12

220u

C36

100p

R63

430k 35V

C37

22u R64

1M

5

67IC6B

3

21 IC6A

C4010n

C4110n

C4210n

C4310n

C4410n

R70110k

R71150k

R7210k

R7311k

C454n7

C464n7

C474n7

C48220p

C38

4p7

R6527k

R6639k

R67

2000

R

R68

2000

R

R69

220R

35V

C39

220u

3

26

18

5

NE5534

3

26

18

5

IC5A

NE5534

7

4

C59

100n

8

4

C60

100n

8

4

C61

100n

8

4

C62

100n

R54

330R

35V

C31

220u

-17V

R60

220k

RE1B

RE1C

MM_R

MC_R

MM_L

MC_LK1

K2

IC1 IC2 IC3 IC4 IC5 IC6 IC7 IC8

IC1 = NE5532IC2 = TL072

IC4 = NE5532IC6 = NE5532

IC3

**

**

**

*

*

*

Optional

R262000R

R272400R

C22

2n2

R742000R

R752400R

C49

2n2

C23

220nR28

36k

R29

36k

R30

180k

R31

120k

3

21IC7A 5

67IC7BR32

220k

R33

43k

R34

68k

R3510k

35V

C26

1000u

1 23 45 67 89 10

JP1

R36

820R

R37

1300

R

R38

470R

R39

750R

R40

300R

R41

160R

R42

160R

R43

160R

R44

200R

R45

220R

R76

36k

R77

36k

R78

180k

R79

120k

3

21IC8A 5

67IC8BR80

220k

R81

43k

R82

68k

R8310k

1 23 45 67 89 10

JP2

R84

820R

R85

1300

R

R86

470R

R87

750R

R88

300R

R89

160R

R90

160R

R91

160R

R92

200R

R93

220R

35V

C27220u

R46

68k

35V

C54220u

R94

68k

0dB

+5dB

+10dB

+15dB

+20dB

+20dB

0dB

+5dB

+10dB

+15dB

RE2B

RE2C

K4LLL_P_L

PHONO+_LPHONO-_L

LLL_P_R

PHONO+_RPHONO-_R

K6

RE1A C63

220nR97

220R

MM/MC

RE2A C64

220nR98

220R

IEC Amendment

K3

K7

K5

C24

220n

C25

220n

C50

220n

C51

220n

C52

220n

35V

C53

1000u

K8

0JP325V

C65

100u

25V

C66

100u

17V

17V

R99

100k

R100

100k

+17V

-17V

+Vre

V23105-A5003-A201

R4747R

R4847R

R9547R

R9647R

IC7 = LM4562IC8 = LM4562

110651 - 11

Figura 1. Esquema eléctrico de la sección preamplificador bobina móvil/imán móvil de nuestro Preamplificador 2012.Cada cosa ha sido diseñada teniendo en cuenta el bajo ruido, así como una perfecta adaptabilidad a una amplia variedad

Personal Download for I © Elektor

74810

Page 31: Revista Elektor-linux Simplificado

31elektor 05-2012

AUDIO Y VÍDEO

se busca la mejor prestación en cuanto a distorsión [2].Aquí se ha usado un LM4562 (IC7A), ya que reduce considerablemente la distorsión.

Corrección IEC conmutableLa corrección IEC es un “roll-off” LF extra que se ha añadido a la especificación algo más tarde. La mayoría de la gente lo con-sidera como no deseado, por lo que a

menudo es omitido. Aquí se puede con-mutar colocando una resistencia suple-mentaria, R34, en los extremos de las resistencias del filtro subsónico, R32-R33. Esto es algo aproximado, pero aho-

C1R1

35V

C2

220u

T1

R2

100R

4x2SA1085

T2 T3 T4

R8100R

R9470R

3

21IC1A

C3 100p

R102M2

C515p

R7

3R3

R3

10k

R456k

3

21 IC2A

R11

2M2

C6470n

R5

2k2

R6

330R

35V

C4

220u

-17V

C28R49

35V

C29

220u

T5

R50

100R

4x2SA1085

T6 T7 T8

R56100R

R57470R

5

67IC1B

C30 100p

R582M2

C3215p

R55

3R3

R51

10k

R5256k

5

67 IC2B

R59

2M2

C33470n

R53

2k2

8

4

8

4

C55

100n

-17V

+17V

C56

100n

C8R13 R14

510k

C35R61 R62

510k

35V

C7

220u

35V

C34

220u

R12

220k

C9

100p

R15

430k 35V

C10

22u

7

4

R16

1M

3

21IC4A

5

67 IC4B

8

4

C1310n

C1410n

C1510n

C1610n

C1710n

R22110k

R23150k

R2410k

R2511k

C184n7

C194n7

C204n7

C21220p

C11

4p7

R1727k

R1839k

R19

2000

R

R20

2000

R

C57

100n

C58

100n

R21

220R

35V

C12

220u

C36

100p

R63

430k 35V

C37

22u R64

1M

5

67IC6B

3

21 IC6A

C4010n

C4110n

C4210n

C4310n

C4410n

R70110k

R71150k

R7210k

R7311k

C454n7

C464n7

C474n7

C48220p

C38

4p7

R6527k

R6639k

R67

2000

R

R68

2000

R

R69

220R

35V

C39

220u

3

26

18

5

NE5534

3

26

18

5

IC5A

NE5534

7

4

C59

100n

8

4

C60

100n

8

4

C61

100n

8

4

C62

100n

R54

330R

35V

C31

220u

-17V

R60

220k

RE1B

RE1C

MM_R

MC_R

MM_L

MC_LK1

K2

IC1 IC2 IC3 IC4 IC5 IC6 IC7 IC8

IC1 = NE5532IC2 = TL072

IC4 = NE5532IC6 = NE5532

IC3

**

**

**

*

*

*

Optional

R262000R

R272400R

C22

2n2

R742000R

R752400R

C49

2n2

C23

220nR28

36k

R29

36k

R30

180k

R31

120k

3

21IC7A 5

67IC7BR32

220k

R33

43k

R34

68k

R3510k

35V

C26

1000u

1 23 45 67 89 10

JP1

R36

820R

R37

1300

R

R38

470R

R39

750R

R40

300R

R41

160R

R42

160R

R43

160R

R44

200R

R45

220R

R76

36k

R77

36k

R78

180k

R79

120k

3

21IC8A 5

67IC8BR80

220k

R81

43k

R82

68k

R8310k

1 23 45 67 89 10

JP2

R84

820R

R85

1300

R

R86

470R

R87

750R

R88

300R

R89

160R

R90

160R

R91

160R

R92

200R

R93

220R

35V

C27220u

R46

68k

35V

C54220u

R94

68k

0dB

+5dB

+10dB

+15dB

+20dB

+20dB

0dB

+5dB

+10dB

+15dB

RE2B

RE2C

K4LLL_P_L

PHONO+_LPHONO-_L

LLL_P_R

PHONO+_RPHONO-_R

K6

RE1A C63

220nR97

220R

MM/MC

RE2A C64

220nR98

220R

IEC Amendment

K3

K7

K5

C24

220n

C25

220n

C50

220n

C51

220n

C52

220n

35V

C53

1000u

K8

0JP325V

C65

100u

25V

C66

100u

17V

17V

R99

100k

R100

100k

+17V

-17V

+Vre

V23105-A5003-A201

R4747R

R4847R

R9547R

R9647R

IC7 = LM4562IC8 = LM4562

110651 - 11

de platos MC o MD de fuera. Verificad las cifras en el apartado de Prestaciones para ver si hemos estadocerca de conseguirlo.

Personal Download for I © Elektor

74810

Page 32: Revista Elektor-linux Simplificado

32 05-2012 elektor

AUDIO Y VÍDEO

rra una etapa con operacional y tiene una precisión de ±0,1 dB hasta los 29 Hz. Por debajo de este valor comienza el “roll-off” del filtro subsónico y la precisión ya es irrelevante.

La etapa de ganancia conmutadaEsta etapa, construida alrededor de IC7B, permite que cada plato individual MC y MM del mercado pueda recibir la cantidad de ganancia requerida para ruido y mar-gen óptimos. La ganancia se puede variar en pasos de 5 dB por un puente situado en el bloque JP1, seleccionando el termi-nal deseado del divisor de realimentación negativo R36–R45. Cada paso divisor está hecho con dos resistencias en paralelo para conseguir el valor exacto requerido y mejo-rar la precisión. La resistencia R35 propor-ciona la continuidad de la realimentación DC cuando se cambia el interruptor.La señal de control para la etapa Log-Law Level LED (LLLL) sale a través de R47 y apa-rece en el conector K4. El circuito LLLL y la placa de dicho circuito se verán el mes próximo.

ConstrucciónEl circuito está construido en la placa de circuito impreso # 110650-2 (anotad el número), de doble cara, con taladros meta-lizados, de la que se muestra su plano de serigrafía de componentes en la Figura 2. Al igual que en la placa que tratamos en la entrega anterior, el ensamblado de los com-ponentes es bastante rutinario, ya que sólo se trabaja con componentes de taladros pasantes y soldaduras convencionales. Para la soldadura volvemos a recomendar el uso de una rejilla o, incluso mejor, un artilugio de montaje de placa que permite su giro en el aire. Asumiendo que ya hemos identifi-cado correctamente cada uno de los com-ponentes usados en la lista de materiales, el artilugio de montaje nos va a permitir inser-tar primero los componentes con termina-les. A continuación, los componentes que-dan fijados en su sitio, en la cara superior de la placa, con una plancha de gomaespuma que se aprieta sobre la placa. Hecho esto, podemos girar la placa y comenzar a sol-dar los terminales, uno por uno, sin que los componentes se caigan o se descoloquen.

Obviamente, los usuarios más experimen-tados comenzarán por los componentes de perfil más bajo.El resultado final debería ser el de una placa que ha sido construida de acuerdo a las con-sideraciones con que había sido diseñada. Verificad vuestro esfuerzo personal frente a nuestro prototipo mostrado en la Figura 3.

(110651)

Referencias

[1] Preamplificador 2012 parte 1, Elektor Marzo de 2012; www.elektor.com/110650.

[2] Peter Billam ‘Harmonic Distortion in a Class of Linear Active Filter Networks’, Journal of the Audio Engineering Society Junio de 1978 Volumen 26, No. 6, pág. 426.

Figura 3. Placa MM/MD totalmente ensamblada y probada “filtrada del Laboratorio de Elektor”.

Personal Download for I © Elektor

74810

Page 33: Revista Elektor-linux Simplificado

33elektor 05-2012

AUDIO Y VÍDEO

LISTA DE COMPONENTES Resistencias(1% tolerancia, película metálica, 0.25W)R1,R13,R49,R61 = opcional, ver textoR2,R8,R50,R56 = 100ΩR3,R24,R35,R51,R72,R83 = 10kΩR4,R52 = 56kΩR5,R53 = 2.2kΩR6,R54 = 330ΩR7,R55 = 3.3ΩR9,R38,R57,R86 = 470ΩR10,R11,R58,R59 = 2.2MΩR12,R32,R60,R80 = 220kΩR14,R62 = 510kΩR15,R63 = 430kΩR16,R64 = 1MΩR17,R65 = 27kΩR18,R66 = 39kΩR19,R20,R26,R67,R68,R74 = 2.00kΩR21,R45,R69,R93,R97,R98 = 220ΩR22,R70 = 110kΩR23,R71 = 150kΩR25,R73 = 11kΩR27,R75 = 2.4kΩR28,R29,R76,R77 = 36kΩR30,R78 = 180kΩR31,R79 = 120kΩR33,R81 = 43kΩR34,R46,R82,R94 = 68kΩR36,R84 = 820ΩR37,R85 = 1.3kΩR39,R87 = 750ΩR40,R88 = 300ΩR41,R42,R43,R89,R90,R91 = 160ΩR44,R92 = 200ΩR47,R48,R95,R96 = 47ΩR99,R100 = 100kΩ

CondensadoresC1,C8,C28,C35 = opcional, ver textoC2,C4,C7,C12,C27,C29,C31,C34,C39,C54 =

220µF 35V, 20%, diám. 8mm, separación de terminales 3,5mm

C3,C9,C30,C36 = 100pF 630V, 1%, poliestireno, axial

C5,C32 = 15pF ±1pF 160V, poliestileno, axialC6,C33 = 470nF 100V, 10%C10,C37 = 22µF 35V, 20%, diám. 6,3mm,

separación de terminales 2,5mmC11,C38 = 4.7pF ±0.25pF 100V, separación de

terminales 5mmC13-C17,C40-C44 = 10nF 63V, 1%,

poliestileno, axialC18,C19,C20,C45,C46,C47 = 4.7nF 160V, 1%,

poliestileno, axialC21,C48 = 220pF 630V, 1%, poliestileno, axialC22,C49 = 2.2nF 160V, 1%, poliestileno, axialC23,C24,C25,C50,C51,C52 = 220nF 250V,

5%, poliestileno, separación de terminales 10mm

C26,C53 = 1000µF 35V, 20%, diám. 13mm, separación de terminales 5mm

C55-C62 = 100nF 100V, 10%, separación de terminales 7,5mm

C63,C64 = 220nF 100 V, 10 %, separación de terminales 7,5 mm

C65,C66 = 100µF 25V, 20%, diám. 6,3mm, separación de terminales 2,5mm

SemiconductoresT1-T8 = 2SA1085, Hitachi, p.e. Reichelt.de #

SA 1085; RS Components # 197-9834IC1,IC4,IC6 = NE5532, p.e. ON Semiconductor

modelo NE5532ANG

IC2 = TL072IC3,IC5 = NE5534, p.e. ON Semiconductor

modelo NE5534ANGIC7,IC8 = LM4562, p.e. National

Semiconductor modelo LM4562NA/NOPB

VariosK1,K2 = conector “pinheader” recto de 4

terminales, separación de terminales 0,1’’ (2,54mm)

Socket headers para K1,K2K3 = conector “pinheader” recto de 3

terminales, separación de terminales 0,1’’ (2,54mm)

Socket header para K3K4-K7,JP3 = conector “pinheader” recto de 2

terminales, separación de terminales 0,1’’ (2,54mm)

Socket header para K4-K7Puente para JP1,JP2,JP3JP1,JP2 = conector “pinheader” de 10

terminales (2x5), separación de terminales 0,1’’ (2,54mm)

K8 = bloque terminal atornillado de 3 terminales, separación de terminales 5mm

RE1,RE2 = relé, DPDT, 12V/960Ω, 230V/3A, montaje en PCI, TE Conectividad/Axicom modelo V23105-A5003-A201

PCI # 110650-2 (www.elektorpcbservice.com)

Nota: los componentes están disponibles en Farnell (aunque no de forma exclusiva), excepto T1–T8 y la placa 110650-2.

Figura 2. Plano de serigrafía de los componentes de la placa MM/MC. La placa, de alta calidad, ya fabricada,está disponible en ElektorPCBservice.com.

Personal Download for I © Elektor

74810

Page 34: Revista Elektor-linux Simplificado

34 05-2012 elektor

FUENTES DE ALIMENTACIÓN T BATERÍAS

Carga sin PérdidaCircuito inteligente que mantiene bajo el consumo de energía

En el momento en que sustituimos una de las bombillas de nuestro coche (delante-ras/traseras/frenos/posición/marcha atrás, etc.) con una bombilla LED genérica equi-valente, a menudo surge un problema: el controlador de fallo de bombilla instalado en el sistema de detección de fallo eléctrico de nuestro coche, responde indicando el fallo de una bombilla cuando no hay nin-gún error en nuestra nueva unidad de LED. El (supuesto) error se puede deducir del consumo de corriente, mucho más pequeño en la unidad LED comparado con su equiva-lente de bombilla incandescente. De hecho, si compramos una bombilla LED para su sus-titución, a menudo viene con una enorme

resistencia de potencia para conectar en paralelo con la bombilla LED de ahorro de energía, tan sólo para engañar al monitor de fallo de bombilla.En lo referente a energía, esta última alter-nativa no tiene mucho sentido. Una de los beneficios de la iluminación con LED es el de reducir los requerimientos de consumo de potencia, por lo que, ahorrar energía por un lado mientras que por el otro la gastamos tontamente, no lleva a ninguna parte. Ade-más, esta resistencia puente también puede llegar a calentarse bastante, lo que puede traducirse en un nuevo problema para todos los elementos de plástico que la rodean.Un simple convertidor conmutado de

aumento de tensión, capaz de suministrar hasta 4 A de retorno para el monitor de fallo, puede usarse para solventar este pro-blema. “¿Otro buen lio?” No, un reto.

Algo de teoríaEchemos una ojeada a los esquemas eléc-tricos del circuito estándar para ver cómo se consigue solucionar el problema. La Figura 1 muestra el consumo de la configu-ración original que puede estar en torno a 1,75 A en la batería del vehículo. El bloque coloreado representa el monitor de fallo de bombilla en el coche. De la Figura 2 se deduce que necesitamos disipar entorno unos 15 W (12 V x 1,12 A) en una resisten-

Carlo Cianferotti (Italia)

Aunque el título pueda sonar controvertido (una carga siempre disipa algo de energía), el concepto presentado en este artículo es correcto: el montaje imita una carga sobre la circuitería que detecta fallos en las luces de un vehículo. El circuito está pensado para aquellos casos en los que una bombilla normal es sustituida por su equivalente LED de ahorro de energía. Lo interesante es que no requiere una energía extra como lo haría un puente (“shunt”). En lugar de ello, el circuito “Carga Sin Pérdidas” almacena la energía necesaria para engañar al circuito detector de fallo y lo presenta al sistema eléctrico del coche como adecuado.

1.75A

12V 12V21W

12V R

1.25A 0.5A

1.75A

12V≈ 50 ...100mV

1.75A

1.25A

0.5A

Figura 1. Flujo de corriente estándar en el circuito de una bombilla de un coche. Hay unos 1,75 A que pasan a través del circuito

monitor de fallo.

Figura 2. Para engañar al circuito que monitoriza el fallo de una bombilla necesitamos 1,25 A, además de la

corriente a través de la unidad LED de sustitución.

Figura 3. Para engañar al circuito de monitorización tenemos que conectar una

fuente de 1,25 A como aquí se muestra.

Personal Download for I © Elektor

74810

Page 35: Revista Elektor-linux Simplificado

35elektor 05-2012

FUENTES DE ALIMENTACIÓN T BATERÍAS

cia puente (drenado), después de sustituir la lámpara original con una bombilla LED equi-valente, de manera que tengamos el mismo consumo de corriente a través del moni-tor de fallo de bombilla. En la práctica, se podría gastar un poco menos de energía, ya que la diferencia de nivel es realmente más bajo que la corriente nominal.Supongamos ahora que conectamos una fuente de corriente como se muestra en la Figura 3. El flujo de corriente a través del monitor de fallo de lámpara sigue siendo de 1,75 A, pero la batería realmente sólo pro-porciona los 0,5 A que realmente son usa-dos por la unidad de la bombilla LED. Esta opción reduce en gran medida la cantidad de energía gastada.Por desgracia, no existe una fuente de corriente ideal como componente inde-pendiente, por lo que tendremos que dise-ñar un circuito que simule una. Sería desea-ble encontrar un circuito que fuese sen-cillo y asequible. También debemos estar atentos al hecho de que una fuente de corriente ideal no existe y que no podemos evitar algunas pérdidas de disipación. Sin embargo, con el circuito que presentamos aquí las pérdidas se ven reducidas en un fac-tor de 10, comparadas con las causadas por una resistencia de drenado.

En una configuración prácticaComo comenzamos con una tensión que es ligeramente inferior que la propia tensión de la batería y queremos forzar una corriente que vuelva de nuevo la batería, necesitamos un conversor de nivel de tensión. Para man-tener el costo y el número de componentes bajo, en el corazón de nuestro circuito uti-lizaremos un popular controlador PWM en modo corriente, que se suministra en un encapsulado DIP de 8 terminales. Por esta misma razón no medimos el consumo de corriente con un lazo de realimentación, sino que, en su lugar, implementamos un sencillo lazo MOS de control de corriente de pico. El análisis del circuito, la simulación y la verifica-ción del prototipo nos ha mostrado que esta es la solución más adecuada para conseguir la corriente buscada, dentro de unos pocos cientos de mA, incluso con grandes variacio-nes en la tensión de la batería y con la caída de tensión inherente en los extremos de los circuitos de monitorización de fallo.

Un controladorVamos a ver ahora el funcionamiento del microcontrolador PWM examinando su dia-grama de bloques, mostrado en la Figura 4. La frecuencia del oscilador se puede seleccionar según se necesite realizando la configuración apropiada de la combina-ción de R4/C6 (ver Figura 5). La principal función del bloque PWM es la de controlar la corriente de pico medida en la entrada sensora de corriente, teniendo en cuenta la salida del amplificador de error. Esto se produce de forma cíclica. En nuestra aplica-ción el amplificador de error realmente está siempre saturado (salida a nivel alto), pero esto se verá más abajo. El punto de configu-ración de corriente se ajusta fijando el ter-minal de compensación Salida (“Output”) al nivel requerido.El nivel fijado es una tensión constante deri-vada de una referencia de 5 V, por el divisor de tensión R3/P1 y compensada en tem-peratura por los diodos D1 y D2. De esta forma, implementamos un control del lazo

cerrado para la corriente de pico con un punto de configuración ajustable por P1.Probablemente os habréis dado cuenta del divisor de tensión R1/R2 de la Figura 5. Podría parecer como si un lazo de control de tensión estuviese siendo cerrado, pero los valores de las resistencias nos dicen otra cosa. Sólo es una protección de cir-cuito abierto. En funcionamiento normal, la tensión en +B está limitada a unos 14V (incluso con el motor funcionando), con lo que tendremos unos 1,8 V en el termi-nal de realimentación (terminal 2), tensión que es comparada con los 2,5 V de referen-cia en la entrada no inversora, lo cual satu-rará el amplificador de error, tal y como se requiere. Pero si el controlador se man-tiene regulando a una corriente constante y se produjese un fallo de circuito abierto en +B, no habría ninguna salida para la ener-gía almacenada en la bobina L3, lo que pro-vocaría el calentamiento y posible daño de componentes. Ahora entra en juego el lazo de realimentación de tensión. Una vez que

5.0VReference

ErrorAmplifier

R

R

Oscillator

VCCUndervoltage

Lockout

VrefUndervoltage

Lockout

FlipFlop

&Latching

PWM

VCC

VC7(11)

Vref8(14)

Output6(10)

RTCT4(7)

OutputComp.

1(1)

VoltageFeedback

2(3)

PWR GND5(8)

CurrentSense3(5)

7(12)

GND 5(9)

M1

IRFZ48N

R10

0R47

R11

0R47

R9

0R47

R8

0R47

R6

22k

R510R

R71k

C7

470p

R4

6k8

C6

1n

C5

10n

UC3845

RT/CT

IC1COMPVREF

GND

OUT

VFBVCC

CS

6

7

5

1

2

8

4

3

C3

100n

C1100u

35V

R12

10R

C8

2n2L3

100uH

D3

MBR1045

Z1

P6KE15A

R3

1k

P1

470R

R2

6k8

R1

1k

C4

100n

D1

1N4148

D2

2x

L2

10uH

C2100u

35V

L1

10uH

110755 - 11

+B

+L1

Rshunt

Circuitos de Lámpara de Abordo

*

Figura 4. En el interior del CI que genera la señal PWM.

Figura 5. El esquema eléctrico completo muestra nuestro conversor/elevador de nivel basado en el popular controlador PWM de modo corriente, UC3845.

Personal Download for I © Elektor

74810

Page 36: Revista Elektor-linux Simplificado

36 05-2012 elektor

FUENTES DE ALIMENTACIÓN T BATERÍAS

la tensión en +B alcanza los 19 V (aprox.), el amplificador de “post error” disminuye el punto de corriente seleccionado a un nivel seguro. Cuando trabajamos en el modo de tensión constante, C4 establece el lazo de realimentación, disminuyendo lentamente su respuesta. Debemos tener en cuenta que bajo cargas transitorias este sistema no es

una buena fuente de tensión, pero es sufi-ciente en nuestra aplicación.

Esquemas eléctricosEl esquema eléctrico de la Figura 5 mues-tra el circuito completo. La alimentación llega a través del terminal +L1. La bobina choque L2 suaviza el consumo de corriente

del circuito, manteniendo los EMI a raya, mientras que el diodo supresor de tensio-nes transitorias, D4, elimina las variaciones bruscas de tensión y los picos. El condensa-dor C1 proporciona la alimentación princi-pal para la etapa del conmutador. Su valor no es muy crítico, pero es obligatorio utili-zar un modelo de buena calidad y con una baja ESR/ESL. Además, al igual que sucede en cualquier aplicación de conmutación rápida, los condensadores convencionales suelen fallar más rápidamente debido al secado de su electrólito.El siguiente elemento es la etapa elevadora de tensión, que está formada por L3, T1 y D3. Tanto el MOSFET como el diodo están especificados de forma conservadora, pero cuesta algo más aumentar la fiabilidad del circuito. Trabajar de forma segura requiere montar un radiador cuando se pide como salida más de 1 A. D3 se calienta muy rápi-damente: el flujo medio de corriente a tra-vés de dicho diodo es mucho más grande que el paso de corriente a través del MOS-FET y la caída de tensión en sus extremos es también más grande, incluso cuando usa-mos el diodo Schottky especificado. La red amortiguadora RC, formada por R12/C8, suprime el rizado debido a las capacidades parásitas en el drenador del MOSFET.La corriente que emana del cátodo de D3 es almacenada en C2 (se aplican las mismas con-sideraciones que para C1) y se lleva de nuevo a la batería a través de la bobina choque L1. Tanto C1 como C2 son valores relativamente bajos con respecto a aplicaciones conmuta-das similares, pero en este circuito estamos intentando eliminar los transitorios rápidos de encendido/apagado, mientras que la calidad de la corriente generada es menos importante.La señal PWM proveniente del controla-dor IC1 es llevada la puerta del MOSFET a través de la resistencia R5. Esta resisten-cia limita el pico de corriente a través de la puerta y atenúa el rizado debido a la induc-tancia parásita y a la capacidad de puerta. Se añade la resistencia R6 para evitar que la puerta quede flotante en caso de un circuito abierto. La corriente de salida pasa a través de las resistencias puente R8–R11/R13, generando una tensión de realimentación para el controlador. Se han utilizado cuatro resistencias de 0,5 W conectadas en para-lelo o una única resistencia SMT con forma

LISTA DE COMPONENTESResistenciasR1,R4 = 6.8kΩR2,R3,R7 = 1kΩR5,R12 = 10ΩR6 = 22kΩR8–R11 = 0.47Ω 0.5W*R13 = 0.1Ω 2W ** ver texto

CondensadoresC1,C2 = 100µF 35V, baja ESRC3,C4 = 100nFC5 = 10nFC6 = 1nFC7 = 470pFC8 = 2.2nF

InductoresL1,L2 = 10µH, 5A, Würth tipo 744711005 o

Conrad Electronics # 420284L3 = 100µH, 5A, Würth tipo7447070 o Con-

rad Electronics # 438020

SemiconductoresD1,D2 = 1N4148D3 = MBR1045D4 = P6KE15A, TVS diodo de 15V 600WIC1 = UC3845NT1 = IRFZ48N

VariosP1 = 470Ω potenciómetro6.35 mm (0.25 in.) espadines para montaje

en PCITO220 kit para D3 y T1Radiador, 10K/W *PCB # 110755, www.elektorpcbservice.com*ver texto

110755-1(c) Elektor

R5

C6 R7 R9

C7

R4

R13

R8

R11 C8R10

R6

D4

C1R12

L1

L3

C2

R2

IC1

L2

GND

+B

C5

C3

R1D2

D1

P1

R3

+L1

C4

v1.1T1

D3

Figura 6. La PCB ha sido diseñada para aceptar componentes de taladro pasante, lo que hace que la soldadura sea fácil. Una excepción: las resistencias puente R8–R11

pueden ser sustituidas por una única resistencia SMD (R13)

Personal Download for I © Elektor

74810

Page 37: Revista Elektor-linux Simplificado

37elektor 05-2012

FUENTES DE ALIMENTACIÓN T BATERÍAS

2512, en lugar de una resistencia común de 2 W. Esta última resistencia se encuen-tra más fácilmente que las del tipo de hilo bobinado, que no puede ser utilizado en este circuito, en ningún caso, debido a su alta inductancia parásita. La tensión de realimentación pasa a través del filtro paso bajo R7/C7, hacia el controlador, para evitar variaciones rápidas que pueda molestar su funcionamiento de regulador de corriente.Con los valores de R4/C6, la frecuencia de conmutación PWM está establecida a unos 100 kHz, valor que parece ser un buen com-promiso entre pequeñas bobinas y conden-sadores frente al incremento de pérdidas de conmutación y a las especificaciones de los componentes y del diseño de la PCB. El condensador C5 filtra la salida de referencia. C4 hace lo mismo para la tensión de control, a la vez que limita el rizado en el punto de corriente establecido, proporcionando una función de “arranque suave” muy efectiva. Por último, C3 almacena la tensión de ali-mentación para los circuitos integrados (CIs).

Montaje y banco de pruebasEl montaje de la placa (ver Figura 6, diseño disponible como descarga gratuita en [1]) es fácil. Como de costumbre, comenzare-mos a montar los componentes de bajo perfil y cuidaremos de la orientación de los polarizados, incluso condensadores electro-líticos, diodos y los otros semiconductores. Debemos tener presente que el coche no es un ambiente particularmente amistoso para ningún dispositivo electrónico, por lo tanto, para los componentes más grandes (sobre todo los condensadores electrolíticos y los inductores) es más seguro usar una gota de silicona en los mismos. Con el propósito de ayudar en el montaje, se han proporcio-nado convenientemente dos agujeros para sujetar L3 a la placa con un trozo de cable (cuando usamos la bobina de Conrad Elec-tronics; ver la lista de componentes).Después de probar es posible que también queramos proteger la placa con una laca de protección eléctrica (no olvidemos proteger primero con una cinta los postes termina-les y las superficies conductoras de calor del diodo y del MOSFET).Ninguno de los componentes es particular-mente crítico. Sin embargo, debemos pen-sárnoslo antes de cambiar o sustituir ningún

componente. Los choques L1 y L2 no son nada críticos, cualquier inductor capaz de trabajar con la corriente calculada sin llegar a saturarse (demasiado) puede ser usado sin peligro. L3 puede ser comprada ya fabricada, de acuerdo a la lista componente, pero tam-bién puede ser un trabajo interesante expe-rimentar un poco con componentes recupe-rados de circuitos de conmutación de magni-tudes similares. Su inductancia no es crítica; sólo tenemos que asegurarnos que no se saturará con la corriente que queremos sumi-nistrar a los circuitos eléctricos del coche.Podemos usar un único radiador para todos los semiconductores de potencia. Este ele-mento se puede comprar ya hecho, y consis-tiría de un perfil de aluminio con forma de L de, aproximadamente, 30×30 mm (1,2×1,2 pulgadas), 2 mm (0,08 pulgadas) de grosor, o, si estamos utilizando una caja de aluminio, podemos usar una de sus paredes como radia-dor. Los semiconductores de potencia están localizados a lo largo del borde de la PCB para la facilitar el montaje de un radiador com-partido. Aislaremos el diodo y el MOSFET del radiador usando arandelas de plástico, ya que sus partes metálicas no deben estar conecta-das a masa o cortocircuitadas unas con otras.Después de una inspección cuidadosa, la placa puede ser conectada para las prue-bas de banco. Conectaremos un multíme-tro digital entre +B y +L1 y lo configurare-mos en modo 10 A DC (tensión continua). A continuación conectaremos una fuente de alimentación configurada a 13,8 VDC entre +B y GND. Cuando usemos una batería o una fuente de alimentación sin, o con un límite de corriente muy alto, incluiremos también un fusible de 2 A de fundido rápido, en serie con la fuente, como medida de seguridad.

Encenderemos ahora la fuente de alimen-tación. Usando P1, deberemos ser capaces ahora de ajustar suavemente la corriente por el multímetro entre casi el cero y, aproximadamente, 4 A.No olvidemos vigilar la temperatura del diodo y del MOSFET. Ambos componentes no deberían calentarse como para no poder tocarlos con el dedo durante un tiempo. Caso contrario, deberemos usar un radia-dor más grande (o uno con una relación K/W inferior).Si queremos medir las pérdidas de poten-cia (es decir, la eficacia ganada), colocare-mos P1 a la corriente deseada, por ejem-plo, 2 A y cortocircuitaremos +B y +L1 con un hilo, dejando todo lo demás igual. Susti-tuimos ahora el fusible por el multímetro. Si, por ejemplo, ahora vemos una corriente de 240 mA mientras consumimos 2 A en el puente con hilo, realmente estaremos con-sumiendo unos meros

13.8 V × 0.24 A =3.3 W

en lugar de

13.8 V × 2 A = 27.6 W

que debería ser la potencia gastada en la resistencia drenadora.

Instalación y seguridadEs una idea falsa creer que trabajar con ‘la electricidad de un coche’ está más seguro que trabajar con equipos que estén alimen-tados con CA (corriente alterna). Está claro que las tensiones implicadas, generalmente, no exceden los 14 VDC, con lo que podemos sentirnos tranquilos al tocar componentes y

F

110755 - 16

Monitordecorriente

Circuitos existentes

Carga sin pérdidas

SON/OFF

12V

+L1

+B

X

GND

F F

110755 - 17

Monitordecorriente

Circuitos existentes

Carga sin pérdidas

SON/OFF

12V

+L1

+B

GND

Figuras 7 y 8. La conexión del circuito “Carga Sin Pérdidas” en la circuitería del coche se puede hacer de dos formas, tal y como se muestra aquí.

Personal Download for I © Elektor

74810

Page 38: Revista Elektor-linux Simplificado

38 05-2012 elektor

FUENTES DE ALIMENTACIÓN T BATERÍAS

cables. Sin embargo, una batería de coche es capaz de suministrar algunos cientos de amperios en caso de cortocircuito. Tales corrientes son peligrosas, tanto que pueden derretir fácilmente un borne de conexión, una llave de tuerca o un destornillador y proyectar trozos metálicos calientes a nues-tros ojos o prender fuego al conexionado entero e, incluso, a nuestro querido motor. Por lo tanto, ¡se debe tomar el mayor cui-dado posible en la instalación y pruebas de este circuito en el interior del coche!Podemos usar uno de los esquemas eléctri-cos de los mostrados en las Figuras 7 y 8. El diagrama de la Figura 7 es, probablemente, el más fácil. Tanto la conexión +B como la +L1 están protegidas por el fusible existente, insta-lado en el compartimento de fusibles, debajo del cuadro de instrumentos. La conexión con la bombilla se puede hacer fácilmente sobre el propio portalámparas, pero podría resultar bastante difícil alcanzar físicamente el punto X sin desmontar el coche entero.En la Figura 8 la conexión +L1 sigue estando protegida por el fusible existente de lám-para. Podríamos sacar de alguna parte una conexión directa a la batería (sin conmuta-dor) a +B, pero puede ser más fácil conec-tarlo directamente al borne de la batería. En

este caso (y siempre que no estemos seguro de haber proporcionado una protección), DEBEMOS montar un fusible externo. Podría ser en un porta-fusibles del tipo de termi-nales flotantes para coche o uno del tipo de montaje en panel, en el alojamiento para el circuito. Este fusible debería estar dimensio-nado a las mismas prestaciones que el del cuadro de instrumentos.Cuando todo esté instalado, podemos hacer nuestros ajustes y pruebas finales. Primero giraremos P1 a su resistencia mínima, segui-damente alimentaremos el circuito de la bombilla y giraremos despacio P1, aumen-tando la corriente suministrada, hasta que el indicador de fallo de lámpara desaparezca. Giraremos ahora P1 un poco más para evi-tar que el ajuste esté demasiado cerca del umbral del circuito de detección. Es posible que queramos monitorizar la corriente sumi-nistrada durante este ajuste. Para hacerlo, conectaremos un multímetro en serie con la conexión +L1 y lo configuraremos a 10 A DC.Finalmente, deberemos comprobar si el monitor de fallo funciona correctamente quitando la lámpara. La corriente suminis-trada sólo por nuestro circuito no debería ser suficiente para ‘engañar’ al circuito de monitorización. Si éste es nuestro caso, el

circuito de monitorización ya no estaría funcionando. Nos aseguraremos de volver a verificar que todo está funcionando como debe, incluso con el motor en marcha.

Una última cosaEl uso de un potenciómetro de ajuste en este tipo de aplicaciones puede salirse un poco de lo ideal. Las vibraciones y otras con-diciones medioambientales duras pueden cambiar el ajuste. Una solución podría ser el utilizar conectores tipo “pinheaders” para conectar temporalmente P1 durante las pruebas y el ajuste. Seguidamente, después de haber ajustado nuestro circuito, sacar P1, medir la resistencia obtenida y colocar una resistencia fija con el mismo valor leído.Ahora ya podemos mirar hacia delante pen-sando que vamos a ahorrar alrededor de 7 ml de combustible por hora por cada 20 W de potencia eléctrica que no gastemos como calor. Por favor, no hagáis la suma mientras conducís.

(110755)

Enlaces en Internet:

[1] www.elektor.com/110755

[2] http://www.we-online.de

Figura 9. La PCB acepta diferentes tamaños de bobinas. La mostrada aquí es relativamente pequeña, una bobina de 100 μH de Würth Elektronik [2].

Nota: La sustitución de las luces del coche con unidades LED genéricas no certificadas pueden violar las leyes locales, nacionales o estatales. Verifique la normativa local antes de acometer cualquier modificación en la electrónica de nuestro coche.

Personal Download for I © Elektor

74810

Page 39: Revista Elektor-linux Simplificado

39elektor 05-2012

LABC

ENTE

R

Thijs Beckers (Editorial y Laboratorios de Elektor)

En la publicación del próximo mes de la revista Elektor (normal-mente muy esperada) encontraremos un proyecto de termo/higrómetro con Tubos Nixie. Estos tubos de visualización anti-guos están haciendo una reaparición en el mercado y los proyec-tos que usan estos tubos famosos son más populares que nunca. Incluso Steve Wozniak los lleva con él, o mejor dicho: sobre él [1].Como es habitual con nuestros proyectos, este proyecto de Tubo Nixie también fue reproducido por los Laboratorios de Elektor. Mientras se ensamblaba, mi compañero de trabajo en el laboratorio, Luc Lemmens, luchó un poco al principio inten-tando conseguir que los terminales del tubo pasasen por los taladros de la PCB. Echad un vistazo a las fotografías para tener una idea del problema. Después de pensarlo un poco, llegó con una solución interesante que queremos compartir con vosotros.Como muestran las fotografías, el cátodo está marcado por una flecha en la parte inferior del encapsulado de cristal. Así, para comenzar, probablemente sería muy útil marcar también la posición estable del tubo, de este modo, siempre conocere-mos la orientación correcta al montar el tubo. Un punto rojo va

de maravilla y no es demasiado visible. Veamos ahora la parte ‘más avanzada’.Comenzaremos cortando un terminal a, aproximadamente, la longitud correcta (¡no demasiado corto!) para que el tubo pueda ser montado en la PCB. Si no insertamos los terminales del tubo en su posición estable, no debemos olvidar tener en cuenta la longitud extra requerida. Ahora cortaremos el termi-nal próximo de ello (izquierdo o derecho, no importa, siempre y cuando mantengamos el desplazamiento en la misma direc-ción), pero le dejaremos más o menos un milímetro más largo que el primero. Cortemos ahora el siguiente terminal dejando otro milímetro y, así, sucesivamente. El resultado final debe-ría ser que todos los terminales tienen una longitud diferente, creciente y en el sentido de las agujas del reloj (o decreciente, según lo miremos). Las fotografías muestran el aspecto final que debería tener nuestro trabajo. De esta forma es mucho más fácil dirigir los terminales por los agujeros de la PCB y, si fuese necesario, también a través de la posición estable en un paso.

(120229)Internet Link:[1] http://youtu.be/m4R3hODnTGo

Montaje de tubos Nixie

Personal Download for I © Elektor

74810

Page 40: Revista Elektor-linux Simplificado

LABC

ENTE

R

40 05-2012 elektor

Thijs Beckers (Editorial y Laboratorio de Elektor)

Este año la edición especial de los meses de julio y agosto de la revista Elektor será algo diferente de las producidas en los últimos años. Éste año pondremos una atención extra a la calidad. Hemos actualizado nuestros estándares y hemos revisado una segunda vez todas nuestras ideas, propuestas y soluciones prácticas de nuestra caja de Entrada, para sacar las que realmente nos han gustado. Sólo las más sobresalientes de las ideas más inteligentes que pasen nuestra primera criba del filtrado que hace la editorial, formarán parte de la revista “extra -gruesa” de este año.No hay ninguna razón para ser aprensivo; el concepto de esta edición no será tocado. Aún podremos recoger infinidad de ideas y soluciones prácticas de esta edición de éxito de ventas. De hecho, ajustaremos nuestro enfoque y elaboraremos todos y cada uno de los circuitos mucho más de lo que hicimos en edi-ciones anteriores, pretendiendo no dejar ningún fleco suelto y asegurándonos que cada detalle está claro para cada uno de nuestros lectores a los que van dirigida este ejemplar.Sabemos que esto es un objetivo muy ambicioso para todos nosotros, aquí en Elektor, así como para nuestros colaboradores “freelances” y expertos tan estimados, pero todo esto es para un bien mayor: servir y proveer a nuestra comunidad de nuevas ideas de proyectos frescos y emocionantes, así como guardar el flujo de corriente y los electrones pateando a nuestro alrededor.

(120305)

Raymond Vermeulen (Laboratorio de Elektor)

El Laboratorio de Elektor siempre están trabajando en nuevos proyectos e ideas. En este momento estoy trabajando en un cir-cuito de aislamiento USB. Además de aislar sus líneas de datos, también es importante aislar sus líneas de alimentación.Como el USB se alimenta con tensión DC, no se puede usar el tradicional transformador de aislamiento. En lugar de ello, me decanté por un conversor flyback aislado. Esta solución tam-bién requiere un transformador, aunque uno pequeño. El que he elegido para este trabajo responde al anciano nombre ‘part# 750310471’, del fabricante Würth Elektronik [1]. La fotografía nos dice un poco sobre su tamaño.Este pequeño transformador es probado durante su produc-ción, a 1850 voltios, durante un segundo. De esto, el fabricante extrapola que el dispositivo resiste 1500 voltios durante un minuto de forma continua. Tanto el lado primario y el secunda-rio están ambos cortocircuitados durante esta prueba, por lo que no pasará ninguna corriente a través de sus bobinados. Esto confirma el aislamiento entre los lados primario y secundario.Todo esto está bien, pero lo que realmente me gustaría saber qué es lo que pasa cuando algo va mal en una situación real.

Por ejemplo, ¿qué pasaría si en un lado del plano de masa se cortocircuita con el hilo activo, provocando que la tensión AC de alimentación local se coloque continuamente sobre una cara durante horas e, incluso, durante días? Esto no ha sido probado por el fabricante (al menos no lo encontré en la docu-mentación), pero realmente necesitaba esta información para poder seguir con mi proyecto. ¡Por lo tanto, tuve que ir hasta el banco de prueba y conectarlo allí!

Comprobación de Transformador

Verificar la Calidad

Personal Download for I © Elektor

74810

Page 41: Revista Elektor-linux Simplificado

41elektor 05-2012

Lo protegí y lo conecté usando un autotransformador variable (Variac), reproduje la prueba del fabricante (con los dos lados cortocircuitados de forma independiente) y lo dejé durante un par de horas con 230 voltios en sus terminales. El disposi-tivo pasó la prueba. Sólo para asegurarme realicé una segunda prueba en la que el Variac estaba conectado de forma que doblaba la tensión que tenía a mi disposición. Después de unas horas a esta tensión anormal y elevada, el dispositivo también

pasó esta prueba con éxito, con lo que me convencí de que este transformador era ideal para mi aplicación sin más preocupa-ciones y pude implementarlo en mi proyecto.

(120302)

Enlaces en Internet

[1] www.we-online.de

Thijs Beckers (Editorial y Laboratorio de Elektor)

Muchas compañías ofrecen puestos de trabajo en prácticas (interino o becario). Hay varios motivos detrás de esta práctica establecida, como el proporcionar un servicio a institutos y uni-versidades y mejorar los estándares educativos, consiguiendo que los más jóvenes hagan tareas que son muy aburridas a los diseñadores mayores, pero completamente enriquecedoras a estos interinos, o educando a empleados potenciales que (cuando finalicen sus puestos de interinos) ya estén familia-rizados con el flujo de tareas de la compañía, etc. Elektor, en este momento, también tiene a dos interinos en el Laboratorio, Koen Beckers y Jesper Raemaekers. Aparte de sus proyectos de la universidad, a los cuales nuestros diseñadores proporcionan cierto tiempo de ayuda, si es necesario, también trabajan en los circuitos que ya se están preparando para la publicación de nuestra edición doble de julio y agosto. Koen & Jesper incluso contribuyen activamente en las ideas y en los circuitos. Éste es uno de ellos (y sus peculiaridades de diseño).La señal de salida de Línea/Auriculares de la mayor parte de ordenadores portátiles raramente es potente. Controlar un par de auriculares “hambrientos” de energía podría terminar por recortar o sobrecargar la circuitería de salida y decepcionar profundamente al oyente. Para vencer esta molestia, se podría considerar un pequeño amplificador externo, preferentemente alimentado por USB. Ahora bien, ¿dónde encontrar algo así?...Este fue el momento en que el nervio electrónico de Koen y Jes-per se activó y lanzaron su propio pequeño proyecto: un ampli-ficador de auriculares, basado en un LM386, del tamaño de un lápiz USB. El primer prototipo, montado en una placa de proto-

tipos, parecía funcionar. Es decir, hasta que se conectó un osci-loscopio para echar una mirada más cercana a la señal ampli-ficada, que reveló un problema desagradable con el pequeño amplificador: una oscilación salvaje.Afortunadamente para ellos, el diseñador más experimentado, Ton Giesberts, proporcionó la respuesta. Según su experiencia, las pla-

Oscilaciones parásitas

Personal Download for I © Elektor

74810

Page 42: Revista Elektor-linux Simplificado

42 05-2012 elektor

LABC

ENTE

R

Thijs Beckers (Editorial y Laboratorio de Elektor)

En la edición de Enero este año de Elektor, tratamos un par de ajustes en el In Circuit Debugger 3 (ICD 3) de Microchip (Depurando el depurador) para conseguir evitar unos cuantos problemas cuando usamos el dispositivo. Este ajuste consistía en desoldar dos resistencias SMD de 1 kΩ y sustituirlas por dos de 100 Ω.Un amable y atento lector holandés de Elektor, Wim Sanders, nos escribió a cerca de una solución incluso más sencilla de solucionar esto: dejar las dos resistencias de 1 kΩ en su sitio y soldar tan sólo las dos resistencias de 100 Ω sobre las mismas. Una “mochila luminosa”, ese es el nombre con el que llaman al trabajo diario de Sanders. Este “añadido” (“piggyback”) de 100 Ω sobre una Resistencia de 1 kΩ solo provoca una simple desviación de un 10% de la resistencia requerida algo que, en este caso, no es crítico.¡Gracias por la sugerencia, Wim! Bien hecho, esto confirma que, a veces, ¡añadir es más fácil que sustituir!

(120326)

cas de prototipos no son la mejor solución para probar prototipos. Estas placas adolecen de unas grandes capacidades parásitas entre cada fila de conexiones que, en esta aplicación, se convirtieron en la oscilación del amplificador de AF. Su sugerencia de montar (exac-tamente) el mismo circuito en una placa de circuito normal fun-cionó al instante. ¡Ninguna oscilación molesta más y otra idea de circuito terminada para nuestra próxima edición doble!

El quid: permanecer fieles y lúcidos con cada decisión que toma-mos en nuestro comportamiento con la electrónica, incluso si las señales de BF a menudo muestran comportamientos no pre-vistos en la pantalla del osciloscopio y estemos cansados de los picos y los parásitos.¡Y, chicos, guardadlos para los circuitos que llegan!

(120334)

Modificación de 1 k

Thijs Beckers (Editorial y Laboratorio de Elektor)

¡Acabo de entrar! En la mesa de trabajo del compañero de laboratorio Antoine Authier, están reunidos sus colegas para analizar un bonito medidor LCR que un autor francés ha presentado a Elektor “con vistas a su publicación”. Este dispositivo, perfectamente acabado, está conectado a un ordenador por USB. El programa, desarrollado especialmente para el equipo, muestra en el ordenador los resultados de la medición.El medidor utiliza el principio de medida de cuatro hilos, bien conocido por todos, para conseguir medidas de alta precisión hasta el nivel más bajo y discernible posible.

Los ganchos de prueba han sido especialmente seleccionados. Cada terminal forma una conexión, por lo que todo lo que hay que hacer es enganchar la punta de prueba al componente que queramos probar y el instrumento será capaz de realizar un análisis de la medida más precisa sobre la DUT (Device Under Test, o Dispositivo Bajo Prueba). Nuestras pruebas iniciales parecían prometedoras. Seguro que este circuito pronto será “evaluado para su publicación” (como aquí lo llamamos) en la revista Elektor. El autor ya está trabajando en una ampliación para incluir una pantalla LCD de modo que el instrumento se pueda utilizar en modo autónomo.... ¡No puedo esperar a ver esto publicado!

(120331)

Lo último: Medidor LCR

Personal Download for I © Elektor

74810

Page 43: Revista Elektor-linux Simplificado

43elektor 05-2012

CONSEJOS SOBRE COMPONENTES

Consejos sobre componentes Raymond Vermeulen (Laboratorio de Elektor)

MOSFET + extrasEste mes y el siguiente echaremos un vistazo a los MOSFET con características especiales. Como hay mucho que contar sobre esto, trataremos sólo un componente. Cuando me encontré por primera vez con este tipo de componentes, me di cuenta de que también como profesional estás conti-nuamente aprendiendo. Esto me estimuló a compartir este conocimiento con otros electrónicos a través de esta página mensual.En esta tercera entrega describimos el ‘current sense MOSFET’, en la próxima trataremos el ‘high-side switch’ inteligente.

(120225)

BUK7105-40AIEMuchas veces queremos saber cuánta corriente pasa por una carga. A veces queremos ajustar la corriente en una ramificación con precisión o tenemos un determinado proceso donde la cantidad de corriente forma la realimentación de un bucle de control. Normalmente medimos la corriente de un circuito mediante una resistencia shunt, pero a veces las pérdidas en una resistencia como esta, pueden llegar a ser inaceptables con corrientes elevadas. Otra desventaja de una resistencia shunt a intensidades elevadas son sus dimensiones no tan reducidas. Con la ayuda del N-MOSFET aquí descrito, se puede medir con mucha precisión sin necesidad de una resistencia shunt en serie con la carga.El BUK7105-40AIE [1] es un, así llamado, TrenchPLUS FET, un componente de la industria automovilística cuya puerta está protegida contra ESD y el conjunto cumple las normas Q101. ¿Cómo está hecho esto? Hay que diseñar una pequeña celda MOSFET, la copias un par de miles de veces en un trozo de silicio y así obtienes un MOSFET con una Rds(on) baja y que puede soportar una buena cantidad de amperios. El fabricante ha utilizado hábilmente esta configuración para sacar el drenador de 1/500 de las celdas al exterior a través de un terminal aparte (figura 1 y 2). De éste terminal Isense fluye la 1/500 parte de la corriente de drenador. También hay un terminal adicional conectado con la fuente del FET. Es uno denominado conexión Kelvin, una terminología que probablemente muchos conocen de una medición de 4 puntos. Efectivamente tiene que ver con esto, con ello puedes medir la tensión en la fuente con precisión sin tener problemas de caídas de tensión causados por las pistas de la placa. En la figura 3 puedes ver cómo será una configuración de prueba con un FET como este. Este circuito muestra el método de masa virtual (virtual earth) con la que puedes conseguir una precisión de hasta el 5%. En esta configuración, la fórmula de la corriente de drenador es:

Vsense = ((-ID)·Rsense)/nn es ID/Isense, por lo tanto en este caso 500. Lo que hay que tener en cuenta es que también necesitas una tensión negativa para los operacionales. El segundo operacional de la figura 3 sólo está reflejado en forma de esquema de bloques, está claro que este tiene que invertir para el convertidor A/D del microcontrolador. En la nota de aplicación [2] se describe otro método de medición de menor precisión pero que no necesita una tensión negativa. Este es un componente que seguro que resulta interesante si tienes que conmutar grandes corrientes y necesitas tener información sobre la corriente que fluye.

Parámetro CondiciónValor (Típico)

RDS(on) VGS = 10 V, ID = 50 A, Tj = 25 °C 4,5 mΩ

RD-Isense(on) VGS = 10 V, ID = 100 mA, Tj = 25 °C 1,08 Ω

ID/Isense Tj > -55 °C ; Tj < -175 °C , VGS > 10 V 500

VGS(th) Tj = 25°C, ID = 1 mA 3 V

[1] http://www.nxp.com/documents/data_sheet/BUK7105-40AIE.pdf

[2] http://www.nxp.com/documents/application_note/AN10322.pdf Figura 3. Ejemplo de una aplicación de medición de la corriente.

Figura 2. Esquema de sustitución.

Figura 1. Representación esquemática.

Personal Download for I © Elektor

74810

Page 44: Revista Elektor-linux Simplificado

}

44 05-2012 elektor

MICROCONTROLADORES

Dentro de Pico C-Super Programando el AT2313 al estilo Z80

Jon Drury (UK)

Nuestras recientes publicaciones Pico C-Plus y Pico C-Super han sido muy bien acogidas por multitud de

lectores de Elektor. A petición de muchos de ellos, en este artículo añadido vamos a profundizar en el

programa que hace que el instrumento funcione, particularmente en su versión Plus.

Un grafólogo nos dirá el carácter de una persona a partir de su escri-tura. Un programador nos dirá la historia de una persona a partir de su código de programa. Cuando pensé por primera vez en ampliar el código original del Pico C, llegué con una buena carga de conoci-mientos en pequeños equipos y muchos años de programación en el Z80 y dispositivos similares. La primera vez que me puse a escribir un programa sólo disponía de 512 bytes de espacio del programa si tenía suerte, por lo que estoy acostumbrado a escribir código de la forma más “económica” posible. Así que cuando leí que era un reto el conseguir llevar el código del Pico C sobre un microcontrolador AT2313 [1] y que había unas limitaciones cuestionables en el rango de direcciones, me lo tome como un reto al que tenía que respon-der. El resultado es un Pico C-Super [2], una versión extendida de la idea original, con bastantes funciones extra, metidas todas ellas en el mismo circuito de bajo coste y extremadamente simple en el que introducir el programa. En este artículo intentaré explicar como hice esto, con la esperanza de que otros puedan encontrar mi código útil en sus proyectos, de la misma manera que yo me he beneficiado de la gran cantidad de código disponible en Elektor y en Internet.

RegistrosEn primer lugar quiero hablar brevemente sobre el uso de los regis-tros, lo que refleja mi historia con el Z80. Encuentro que la anotación de Atmel de r0-r31 es de poca utilidad y dificulta recordar lo que se ha almacenado en los registros. Así pues, es más fácil renombrar los regis-tros con nombres mucho más útiles. En mi caso los he renombrado con el estilo del Z80, con un registro “A” para propósito general, un registro “B” como contador de un bucle (¿alguien recuerda el comando DJNZ,

es decir, Decrement and Jump if Not Zero?) y los pares de registros HL, DE, BC como de 16 bits, para realizar cálculos. En el caso del Pico C-Super se necesitan realizar cálculos aritméticos de 24 bits, por lo que he creado el registro triple GHL, tal y como se muestra en el Listado 1.He mantenido todos mis registros del Z80 en el rango de r16-31, con lo que sigue siendo posible utilizar las instrucciones de modo inmediato como LDI, con los registros de trabajo. Los registros de nivel más bajo (r0-15) los he guardado para almacenamiento de variables así como para un uso más rápido de la memoria RAM. En el Pico C-Super se necesitan realizar multiplicaciones de 24 x 24 bits, seguidas por divisiones de 48 x 24 bits. Esto hace el código mucho más compacto para poder tener el resultado de la multiplicación en un conjunto de seis registros (A0-5), los cuales se convertirán en el dividendo para la subrutina de división.

MacrosEs muy útil el tener algunas instrucciones de carga (“Load”) de 16 bits en la forma de Macros ya que no están incluidas en el conjunto de instrucciones de los AVR. Por ejemplo, la Macro LDIZ (ver Listado 2) carga el par de registros Z con un valor de 16 bits en una única línea de programa. Esta macro está replicada para los otros pares de registros de 16 bits BC y DE, así como para los registros X e Y. También hay una Macro DJNZ para hacerme sentir como en casa. La programación en ensamblador puede hacerse un poco monó-tona cuando tenemos que escribir el mismo conjunto de líneas de código de forma repetida pero incluyendo diferentes valores. Esta monotonía puede ser evitada escribiendo las Macros o subrutinas apropiadas. Como ejemplo, el Pico C-Super usa la Macro mostrada

Personal Download for I © Elektor

74810

Page 45: Revista Elektor-linux Simplificado

45elektor 05-2012

MICROCONTROLADORES

en el Listado 3, para convertir un número binario en decimal y proporcionar así una pantalla forma-teada en el LCD. Esto es tan sólo una única línea de programa, que se convierte en varias líneas de código ensamblador cuando el programa es com-pilado, el cual, a su vez, llama a varias subrutinas. De esta sencilla manera se pueden explotar la fle-xibilidad de los registros del AVR y de las Macros en ensamblador de Atmel para crear un entorno hecho a medida que consiga que la aplicación quepa y, al mismo tiempo, haga que el programa sea más fácil de escribir y más compacto.

Rutina del Servicio de InterrupcionesLa rutina del servicio de interrupciones, o ISR, mostrada en el Listado 4, es en la clave para la función de medida del periodo. El tiempo se mide utilizando T0 y T1 de forma concatenada para proporcionar un contador de 24+ bits, contro-lado por el reloj de la CPU que trabaja a 20 MHz. El modo de interrupción se selecciona en el flanco de subida, con lo que el intervalo de tiempo entre interrupciones es igual al período de la entrada en INT0. La ISR debe comenzar el proceso de tem-porización y detenerlo de nuevo, después de un número predeterminado de períodos. Esto se hace contando el número de interrupciones que se han producido usando la variable . Esta varia-ble se pone a cero en el programa principal antes de que las interrupciones estén habilitadas. Esto indica a la ISR que la siguiente interrupción ini-ciará el conteo. La ISR compara ahora la varia-ble con el número de períodos que tienen que ser medidos, usando el registro ‘C’ y deteniendo el contador cuando se ha alcanzado el objetivo, aunque continúa incrementando la variable . Mientras tanto, el programa principal está traba-jando en un estrecho bucle que no puede dejar hasta que la variable alcanza el valor final+1 en el registro ‘D’. Como el programa principal no está usando ninguno de los registros utilizados por la ISR, a excepción del registro de Estado y de la variable , la ISR sólo tiene que salvar y restaurar el registro del estado. Esta ISR () es usada para ambas interrupciones en INT0 e INT1, las cuales son utilizadas para medir el período externo y la capacidad, respectivamente.Las rutinas aritméticas utilizadas han sido escri-tas para 24 bits, por lo que es importante veri-ficar que el valor del contador no excede los 24 bits o el cálculo aritmético será erróneo. La detección de desbordamiento no es sencilla puesto que el par de contadores T0/T1 tiene una longitud de 25 bits, ya que incluye a 0C0B.

Listado 1. Parte del fichero “include” de definición de registros, creando registros con el aspecto del Z80.

.DEF A=r16

.DEF B=r20

.DEF C=r21

.DEF D=r22

.DEF E=r23

.DEF H=r24

.DEF L=r25

.DEF G=r28 ;éste es especial para Pico C-Super

Listado 2. Ejemplos de extensiones para el conjunto de instrucciones de AVR.

.MACRO LDIZ ;valor a carga LDI ZH,high(@0) LDI ZL,low(@0).ENDM

.MACRO DJNZ ;Z80 decrementa y salta si no cero DEC B BRNE @0 ;salta a la etiqueta @0.ENDM

Listado 3. Conversión Bin a Dec y formación de números para la pantalla LCD.

.MACRO WRNUM16 ;position,predp,postdp. Variable de 16 bits en HL RCALL CNV5B ;convierte a BCD LDI A,@0 ;posición en LCD LDI B,@1 ;dígitos antes del punto decimal LDI C,@2 ;dígitos después del punto decimal RCALL wrnumb ;muestra en pantalla.ENDM

Listado 4. Rutina del Servicio de Interrupciones para medida del periodo.

;Nota ‘C’ is usada para controlar el número de Periodos a temporizarInt_sub: IN A,SREG ;salva SREG PUSH A TST icnt ;si icnt=0 usa int para

comenzar a contar BREQ i0strt CP icnt,C ;si no, verifican el final de

la cuenta BRCS Int0x STOP_COUNT ;es el final de la cuenta RJMP Int0xi0strt: NOP ;mantiene igual la

temporización de inicio y stop NOP START_COUNT ;Si icnt=0

Int0x: INC icnt ;aumenta contador y sale POP A ;restaura SREG OUT SREG,A RETI

Personal Download for I © Elektor

74810

Page 46: Revista Elektor-linux Simplificado

46 05-2012 elektor

MICROCONTROLADORES

El desbordamiento se comprueba combinando una ISR de desbor-damiento convencional (), la cual verifica el bit 26, con un acarreo de prueba y rotativo para el bit 25, en la rutina . Las rutinas aritméticas principales son la multiplicación de 24 x 24 bits y la división de 48 x 24 bits. Estas rutinas han sido obtenidas a partir de una versión de 16 bits de la nota de aplicación AVR200 de Atmel y son la versión binaria de la división y multiplicación larga que aprendí hace mucho tiempo en el instituto. La rutina de división de Atmel necesita algo de código extra para conseguir que funcione correctamente cuando se alcanza el bit de mayor orden del divisor.

TablasEl programa hace un uso extensivo de las tablas, en particular para establecer los parámetros en respuesta a la selección del multipli-cador, pero también para configurar T1 en el modo generador de señal y para mostrar la frecuencia correspondiente. Estas tablas son del tipo “longitud de registro fijo”, de manera que se puede usar un simple cálculo para encontrar el inicio de un registro en particu-lar (ver ). Como los controladores ATtiny no incluyen una instruc-ción de MULtiplicación, los cálculos utilizan una suma repetitiva para hacer la multiplicación. La estructura de los registros puede ser la que necesitemos y sólo es importante utilizarlos de la misma manera que han sido creados. Como ejemplo, la tabla de la memo-ria EEPROM para establecer la frecuencia de salida está formada por registros de 6 bytes. El primer byte contiene los bits del “pre-esca-ler” para T1, los 2 bytes siguientes contienen la configuración para OCR1, los dos siguientes son un valor binario para la frecuencia que se muestra en la pantalla LCD como decimal y el último byte es el código ASCII para el carácter unidades mostrado delante del texto fijo de “Hz”. La macro hace que el acceso a las tablas sea sencillo.La selección de modo también utiliza una tabla que contiene la dirección del mensaje LCD y la dirección del módulo del programa que será ejecutado cuando se selecciona el modo. Esto proporciona una buena oportunidad para utilizar la instrucción de salto indirecto que, de otra manera, rara vez utilizo.

SubrutinasHay un estilo de subrutinas de escritura que salva todos los regis-tros utilizados en la entrada y los restaura de nuevo a su salida. Pre-fiero no molestar con esto el interior de mis subrutinas, lo que las hace más compactas. Como consecuencia, de vez en cuando he tenido que salvar y restaurar registros del programa principal pero algo, a menudo más importante, son las variables almacenadas en la memoria SRAM o diferentes registros, que pueden ser elegidos y evitar así los problemas de corrupción de registros.

Opciones Clásica/Super El programa está diseñado para trabajar con ambas configuracio-nes de circuitos: el modelo anterior (‘clásico’, que se corresponde con la placa #100823) y el modelo modificado (placa # 110687). El programa utiliza el ensamblado condicional para hacer esto y usa la variable boleana PB (primera Published Board o Placa Publicada) para modificar el programa, según se necesite, para funcionar así con dos placas diferentes. Por ello, PB debe ser debidamente selec-

cionada antes de compilar y de programar los circuitos integrados.Una segunda opción de ensamblador permite que pueda usarse el microcontrolador ATtiny4313, más grande, que puede proporcionar opciones de frecuencia adicionales para el modo generador de señal.

Regalos adicionalesEn el proceso de ordenar este programa y dejarlo listo para la publi-cación de este artículo, me encontré con algo de código que ya no necesitaba y que ocupaba el espacio suficiente para poder incluir una función más. Se trata de una simple tabla que controla un genera-dor de pulsos, donde la longitud de cada segmento del pulso (Alto, Bajo) puede configurarse en el rango de 1 a 64 µs, con una resolución de 0,25 µs y una longitud de secuencia arbitraria. A continuación, la secuencia se repite. En la captura de pantalla de la Figura 1 se muestra un ejemplo. La estructura de la tabla se explica en el código fuente (). Esta función utiliza números de 8 bits para configurar la longitud del segmento y, aunque una versión de 16 bits podría haber ofrecido longitud de segmentos más larga, creo que hubiese tenido menor resolución. A investigar… El código fuente que se entrega en la página web de Elektor, incluye esta función extra.

Compilación y AVR Studio 4El programa debe tener acceso a los ficheros de definición de las Macros y de los Registros en el momento de la compilación y todos ellos están incluidos en el fichero # 110687-11.zip que podéis encontrar en la página web de Elektor en [2] y [3]. El programa ha sido escrito utilizando Studio 4 de Atmel, disponible gratuitamente en su página web [3]. El tipo de letra ha sido utilizada en este artí-culo del texto para indicar nombres y etiquetas en el código del pro-grama y, de esta forma, ser localizada de forma más sencilla en el programa, utilizando la función Edit>Find function en Studio 4.

(120237)

Referencias

[1] Pico C, Elektor Abril de 2011. www.elektor.com/100823

[2] Pico C-Plus y Pico C-Super, Elektor Febrero de 2012. www.elektor.com/110687

[3] www.elektor.com/120237

[4] http://www.atmel.com/tools/AVRSTUDIO4.aspx

Figura 1. Un tren de pulsos de 1-2-3-4-μs mostrado en el DSO Piccolo DSO a 4 Msa.

Webinario Elektor/element14Inside & Behind Pico C-Super19 de Abril de 2012, 16:00 CETApúntate en www.elektor.com/webinars

Personal Download for I © Elektor

74810

Page 47: Revista Elektor-linux Simplificado

Microprocessor Design UsingWith the right tools, such as this new book,

designing a microprocessor can be easy.

Okay, maybe not easy, but certainly

less complicated. Monte Dalrymple

has taken his years of experience

designing embedded architecture

and microprocessors and compiled

his knowledge into one comprehensive

guide to processor design in the

real world. Yours for just $45.00

www.cc-webshop.com

Monte demonstrates how Verilog hardware description language (HDL) enables you to depict, simulate, and synthesize an electronic design so you can reduce your workload and increase productivity.

Microprocessor Design Using Verilog HDL will provide you with information about:

• Verilog HDL Review

• Verilog Coding Style

• Design Work

• Microarchitecture

• Writing in Verilog• Debugging, Verifi cation,

and Testing

• Post Simulation and more!

Verilog HDL

Naamloos-2 1 27-03-12 08:49

Personal Download for I © Elektor

74810

Page 48: Revista Elektor-linux Simplificado

48 05-2012 elektor

PROYECTO DEL LECTOR

QuadrowalkerPequeño robot cuadrúpedo con 8 servos

Generalmente entendemos por robot una máquina programable que puede eje-cutar tareas específicas. Un ejemplo son los robots de soldadura de las fábricas de coches, que sueldan componentes en una cadena de montaje, a la misma velocidad y con los mismos movimientos consiguiendo siempre la misma calidad. También las máquinas CNC son un tipo de robot. Sin embargo existen robots que han sido desa-rrollados para que se parezcan lo máximo posible a una persona, tanto en apariencia como en funcionalidad. Un ejemplo famoso es el robot ASIMO desarrollado por Honda.En realidad, el robot aquí descrito se parece más a un animal, porque anda sobre cuatro patas. Para llegar a esta idea se han estu-diado varias maneras de desplazamiento. Por ejemplo, una araña tiene seis patas, así que puede tener siempre tres patas en el suelo para mantener el equilibrio. Para

que la reconstrucción no fuera demasiado complicada hemos preferido utilizar cua-tro patas. El robot no dispone de un órgano de equilibrio en forma de giroscopio o sen-sores de aceleración, tal y como los que se utilizan frecuentemente. Con cuatro patas puede surgir una manera de andar que haga que haya siempre un momento de desequi-librio, pero si hacemos que la altura del paso no sea demasiado alta y que el tiempo del paso no sea demasiado largo, conseguire-mos que el desequilibrio dure demasiado poco tiempo como para imposibilitar la andadura. Hay animales que hacen exacta-mente lo mismo, pero suelen tener el cen-tro de gravedad bajo, como son los lagartos. También en este robot hemos optado por un centro de gravedad lo más bajo posible y se ha colocado el mayor peso (el portapilas con sus pilas) en la parte inferior.Antes de empezar con un diseño, hay que verificar si realmente es factible. Estudiando determinadas maneras de desplazamiento

se deduce que una pata es apta si puede moverse por lo menos en un plano de dos ejes, donde los ejes de movimiento tienen que encontrarse al principio de la pata. Así se elimina también la necesidad de una articulación maleolar o de la rodilla. De esta manera surge un tipo de articulación radiocubital con la que son posibles dos movimientos al mismo tiempo, como son el levantar y el desplazar de una pata. Los servos pueden ejecutar movimientos en un eje perfectamente. En un servo se puede configurar un ángulo de rotación así que un movimiento también. Para cada pata nece-sitamos dos servos, en este caso, así que en total son ocho servos.

DiseñoEl robot se puede dividir en tres partes a nivel de diseño. La parte mecánica, la elec-trónica y el software. La parte mecánica se encarga de la interconexión del chasis con las patas a través de servos que a su vez tam-

Gert Baars (Holanda)

Los robots pequeños son muy adecuados para experimentar con todo tipo

de posibilidades de movimiento. Utilizando varias patas principalmente, el

diseñador tiene muchas posibilidades para hacer que el robot se desplace.

Este quadrowalker es una construcción muy sencilla con cuatro patas, que todo el mundo puede

reconstruir fácilmente. El robot recibe los comandos mediante un mando a distancia de infrarrojos estándar.

Personal Download for I © Elektor

74810

Page 49: Revista Elektor-linux Simplificado

49elektor 05-2012

PROYECTO DEL LECTOR

bién tienen que estar interconectados. Para eso hay que construir varios anillos, dos ani-llos a escuadras para unir cuatro servos con el chasis. Por cada dos servos un anillo para que estos funcionen perpendicularmente el uno del otro (se puede adquirir este tipo de anillos para determinados servos) y otro anillo para unir la pata al segundo servo. El material utilizado es un perfil de ángulo y barra plana de aluminio que hay que cortar a medida y en los que hay que hacer varios agujeros. La figura 1 muestra más o menos cómo hay que hacerlo. Por supuesto que puedes hacerlo de varias formas. En el pro-totipo las patas son de una barra de alumi-nio redonda de 4 mm. Se pueden unir con el anillo del servo taladrando un agujero de 4 mm en un tornillo con el que surge una abrazadera, pero generalmente un híper de bricolaje dispone de anillos tipo U de 4 mm que también pueden ser adaptados para este fin. La longitud de las patas dobladas a 90 grados no tiene que ser mayor de lo necesario para que haya movimiento libre hacia delante y hacia atrás, y el centro de gravedad esté lo más bajo posible de forma que la parte inferior no toque el suelo con algún margen durante la andadura.La elección de los servos utilizados depende de las fuerzas que tenga que producir. Esta se especifica como torsión en kilogramos multiplicado por metro. Durante la anda-dura dos patas como mínimo tocan el suelo, así que cada servo que está unido con el chasis tiene que soportar la mitad del peso total. El peso del prototipo con pilas inclui-das asciende a unos 750 gramos. La longi-tud horizontal de las patas es de 6 cm. La torsión asciende a 2,1 kg.cm. Los servos del tipo RS-2, un servo frecuentemente utili-zado, fácilmente adquirible y asequible, pueden producir a 5 voltios más de 4 kg.cm y con este resultado es perfectamente apto para este robot. La longitud horizontal de las patas determina la torsión, así que no puede desviarse de esto sin más. También el consumo es proporcional a la torsión pro-ducida; colocar las patas más a dentro sig-nifica, por lo tanto que las pilas duren más. En la figura 2 se puede ver cómo se ha cons-truido el robot. El chasis del prototipo es una placa de circuito impreso con los ocho ser-vos en las cuatro esquinas y en el centro, por encima de la placa, está el controla-

dor con el sensor de infrarrojos RC5 apun-tando hacia arriba para conseguir un mayor alcance, de varios metros, del mando a dis-tancia. El portapilas está fijado en la parte inferior, asegúrate de centrarle bien en rela-ción al centro de gravedad.

ElectrónicaUn microcontrolador se encarga del control de servos y otras funciones en el hardware. No se necesitan muchas líneas de E/S, pero al autor le quedaba todavía una placa con un ATmega32, que empleó en este proyecto (ver figura 3). Como este controlador dis-pone de mucha memoria de programa, será fácil ampliar el robot con opciones adicio-

nales. Ocho salidas del controlador generan las señales moduladas por ancho de pulsos de los servos, de modo que se puede con-trolar a cada servo de forma individual. Una entrada de interrupción lee los datos que recibe el sensor RC5, de modo que así se puede utilizar un mando a distancia RC5 estándar para controlar el robot a distancia.Mediante una resistencia en la masa se obtiene, en forma de tensión, el consumo de los motores de los cuatros servos que controlan el movimiento horizontal de las patas. Como el motor se controla de forma digital, esta tensión no es constante. Por eso se añadieron los filtros paso bajo, que promedian dichas tensiones. Después se

120051 - 12

SV0, SV2, SV4, SV6

‘move’

‘lift’

SV1, SV3, SV5, SV7

SV1

SV0

SV3

SV2

120051 - 13

SV6

SV7

SV4

PCBmoverservos

PCB

baseboard

16,5 cm

SV5

16,5

cm

lifterservos

Figura 1. Los servos se fijan con la ayuda de unos trozos de perfil de ángulo.

Figura 2. Diseño del robot y colocación de los servos.

Personal Download for I © Elektor

74810

Page 50: Revista Elektor-linux Simplificado

50 05-2012 elektor

PROYECTO DEL LECTOR

pueden medir a través de las entradas ADC, que tienen como objetivo la detección de cuando el robot está obstaculizado en su movimiento. De esta forma es posible detectar objetos de modo que el robot los puede esquivar. Esta es la única inteligen-cia de la que dispone el robot, pero es sufi-ciente como para llamarle ‘autónomo’. El consumo que origina la detección de obs-táculos se puede configurar con un poten-ciómetro conectado a una entrada ADC adi-cional (ADC0), que el software puede utili-zar como punto de referencia. Este umbral depende también de la fricción entre las patas y la superficie.En el prototipo se han fijado unas peque-ñas bolitas de plástico duro por debajo de las patas para evitar arañazos, y también para limitar la fricción con la superficie. Esto funciona bien tanto en una superficie de madera como en una de linóleo y moqueta, porque el consumo de los motores sin obs-táculo es limitado. En caso de utilizar patas de goma, habrá tanta fricción que será difí-cil de ajustar bien el potenciómetro para una buena detección de un obstáculo.

Los servos necesitan una tensión de 4,8...6 V. Con cuatro pilas tipo AA llegamos a 6 V, suficiente ya que así no se necesita estabilización, pero esta tensión baja bas-tante cuando se descargan las pilas. Por eso se ha optado por seis pilas tipo AA, de modo que ahora se necesitan regulado-res de tensión para no sobrepasar los 6 V. Para eso hay integrados de sobra, pero los reguladores deben tener, preferiblemente, una baja caída de tensión para una máxima duración de las pilas. Una solución barata, que consta de algunos transistores y un diodo zener, resultó ser la sencilla utilización de dos reguladores discretos con menos de 1 V de pérdida de tensión. Se han utilizado dos reguladores porque así la caída de ten-sión era mínima, pero también porque no se requería disipador.

SoftwareEl software está escrito en ensamblador y consta principalmente de varias rutinas de interrupción. Por ejemplo, es impor-tante para los servos que cada 20 ms reci-ban un pulso de 1...2 ms. Desviarse de esto

causa vibraciones en las patas. También hay que leer el receptor IR TSOP2236 a través de una interrupción en hardware, porque también aquí la temporización tiene que ser muy precisa. El control de los ocho ser-vos se reparte dentro del software sobre un periodo de 20 ms. Si se activaran todos los servos al mismo tiempo se generaría un pico indeseado en la corriente que suministran las pilas.El control de las posiciones de los servos proviene de una tabla de seno que provee de 256 valores entre 0 y 100, y que corres-ponden a un alcance total de 1 ms en pasos de 10 µs. Controlando los dos servos de cada pata con una diferencia en fase de un seno, podemos hacer que las articulacio-nes de las patas puedan hacer movimien-tos circulares o elípticos, lo cual es deseable para hacer pasos donde se pueda levantar una pata al mismo tiempo, moverla hacia delante, ponerse en el suelo y moverse hacia atrás. Esto se asemeja bastante al movi-miento de andar. Los ocho servos se accionan con diferen-cias en fase, de tal forma que hay princi-palmente dos maneras posibles de andar: Hacia delante y hacia atrás, donde lo último es cuestión de cambio de fase, pero tam-bién de girar para poder cambiar de direc-ción. Los valores de las fases de estos dos movimientos básicos también están defi-nidos en una tabla, ocho valores para cada movimiento, donde cada valor es la dife-rencia en fase de un servo. En caso de giro, hace falta que se pueda hacer tanto hacía la izquierda como hacía la derecha, lo que también aquí es cuestión de cambio de fase.En principio la función del robot es sólo moverse y el envío de los comandos desde un mando a distancia infrarrojo, pero con un comando determinado también se puede activar la detección de obstáculos. Cuando este es el caso, se compara el con-sumo medido de los motores a través de las entradas ADC con el valor del potencióme-tro; si se sobrepasa se llevarán a cabo cua-tro acciones. Primero el altavoz dará una señal y el robot se parará. A continuación éste da unos pasos hacia atrás. Después el robot gira varios grados, según la dirección que depende de la pata donde tuvo lugar la detección, de tal forma que se gira en la otra dirección del obstáculo. Después el

X1

16MHz

C5

22p

C6

22p

BZ1

TSOP2236

IC22

1

3

R1

100R

C1

16V4u7

K1123456

ISP

R3

47k

IC3LP2950CZ5.0

C4

100n

C3

100n

C2

1000u16V

S0S1

S6 S7

S2S3

S4S5

R62M2

R82M2

R92M2

R72M2

R10

0R22

R11

0R22

R12

0R22

R13

0R22

C7

100n

C8

100n

C9

100n

C10

100n

D1

6V8

R4

5k6 T1

BC547

T3

BD241T2

BC557

D2

6V8

R5

5k6 T4

BC547

T6

BD241T5

BC557

BT1

9V(6x AA)

S1

120051 - 11

R2

10k

D3

1N4148P1

250k

PB5(MOSI)PB6(MISO)

PD3(INT0)PD4(INT1)

ATmega32

PB7(SCK)

PD0(RXD)PD1(TXD)

XTAL1 XTAL2

ADC7ADC6ADC5ADC4ADC3ADC2ADC1

ADC0

IC1

AVCCAREF

PB2PB3

PB0

PC6PC7

PD2

PD5PD6PD7

PC0PC1PC2PC3PC4PC5

PB1

PB4

RST

GND

VCC

GND1311

10

12 31

3032

1415161718192021

2223242526272829

33343536373839

40

12345678

9

SV0SV1SV2SV3SV4SV5SV6SV7

MISOSCKRST

MOSI

Figura 3. La electrónica consta principalmente de un ATmega32. Dos reguladores de tensión construidos de forma discreta se encargan de la alimentación de los servos.

Personal Download for I © Elektor

74810

Page 51: Revista Elektor-linux Simplificado

51elektor 05-2012

PROYECTO DEL LECTOR

robot vuelve a andar y sigue su curso. De esta manera el robot puede seguir andando sin ayuda exterior. Por ejemplo, si choca con una pared girará en otra dirección y seguirá hasta la eternidad, por lo menos hasta que las pilas se lo permitan. Para estudiar si se puede adaptar un robot de este tipo para que pueda, por ejemplo, jugar al futbol, se ha incorporado una fun-ción adicional donde una única pata pueda ejecutar el movimiento de dar una patada. Aquí se levantará la pata opuesta en dia-gonal como contramovimiento para man-tener el equilibrio. El resultado es que el robot puede tirar una pelota de tenis de mesa alcanzando más o menos un metro, lo que puede ofrecer posibilidades intere-santes, siempre que el campo de juego no sea demasiado grande. Por supuesto que también es posible ampliar el robot con, por ejemplo, un imán que a veces se emplea en robots de futbol especiales.La vida útil de las pilas depende esencial-mente de las actividades del robot, las pilas recargables son probablemente la mejor opción. Cuando casi se hayan gastado las pilas podrás notarlo ya que la detección ‘brown out’ del controlador entra en funcio-namiento, lo que causa movimientos espas-módicos. Cuando las pilas se hayan agotado aún más, el robot simplemente se hundirá con las patas abiertas.

Controlar a distanciaEl control del robot se realiza a través de un mando a distancia de TV compatible con RC5. El software no tiene en cuenta el pri-mer byte del código RC5, de modo que tam-bién se puede utilizar otro tipo de mando. Por supuesto que esto se puede adaptar, de modo que se puedan controlar varios ejemplares de robot al mismo tiempo. Los comandos son ir hacia delante, hacia atrás, girar hacia la izquierda y girar hacia la derecha, pero a través del botón mute (símbolo del altavoz) del mando a distan-cia hay disponibles funciones adicionales para, por ejemplo, conectar y desconec-tar la detección del obstáculo, y también una función para el balanceo del robot. Con esto se puede dar un offset vertical a la pata delantera derecha con el servo6, de modo que inicialmente las cuatro patas toquen justamente el suelo. Debido a des-

viaciones mecánicas puede ocurrir que una pata sea un poquito más larga que la otra, lo que dificulta el andar. Después de ajus-tarlo se guarda el valor de este offset en la EEPROM interna del controlador y será uti-lizado cada vez que se inicialice. En la tabla 1 se muestra un resumen de los comandos disponibles. Las teclas 1 hasta 9 son para el control normal. La tecla mute es la tecla de funciones que hay que seguir con una cifra. Aquí la función 1 es: detección de obstácu-los conectado/desconectado, con la función 2 puedes hacer un tipo de movimiento de inclinación pero después están la altura y tamaño del paso cero que luego habrá que restablecer con las teclas, por lo demás esta función no tiene mucho sentido y realmente es para las pruebas. Con la función 9 pue-des ajustar el offset en altura del servo nº 6 y grabarle en la EEPROM. En principio sólo hace falta que esto se haga una vez para establecer el equilibrio.Conecta para esto el robot y pulsa en [function][9]. Sujeta el robot con una mano debajo y pulsa un par de veces en la tecla [volume+]. Entonces el servo nº 6 se eleva. Levanta el robot de tal manera que todas las patas excepto el servo nº 6 toquen el suelo. Pulsa entonces [volume-] hasta que la pata del servo nº 6 toque justo el suelo. Pulse otra vez en [function][9] para que se grabe la configuración.Durante el paseo se puede adaptar el com-portamiento de la andadura con los botones volumen, brillo, color, agudos según la tabla. Por ejemplo, si hay que pasar por un escalón puedes aumentar la altura y el tamaño del paso. Para la velocidad máxima también puedes configurar con el regula-dor de volumen la velocidad de los pasos y con el regulador del brillo el tamaño del paso. A veces es mejor dar pasos lentos y grandes sobre un suelo deslizante, mien-tras que sobre moqueta es mejor andar con pasos rápidos y grandes. Durante la prueba se midió una velocidad máxima de 1 km/hora aproximadamente.El código de este proyecto en formato ensamblador y hex están disponibles en la página web correspondiente [1]. En el video de [2] se puede ver el robot en acción.

(120051)

Enlaces Web

[1] www.elektor.es/120051

[2] www.youtube.com/watch?v=8ToHa4hQi_0

Tabla 1. Comandos disponibles a través del mando a distancia

1patada pierna delatera izquierda

2 avanzar

3patada pierna delatera derecha

4 girar a la izquierda

5 detenerse

6 girar a la derecha

7patada pierna trasera izquierda

8 move backward

9patada pierna trasera derecha

mute X ‘Función’

volumen +aumentar velocidad, subida servo6

volumen –disminuir velocidad, bajada servo6

brillo +aumentar tamaño del paso

brillo –disminuir tamaño del paso

saturación color +aumentar altura del paso

saturación color –disminuir altura del paso

agudos +aumentar la altura de la araña

agudos –disminuir la altura de la araña

Personal Download for I © Elektor

74810

Page 52: Revista Elektor-linux Simplificado

52 05-2012 elektor

FUNDAMENTOS

Electrónica para Principiantes (5)Tensión estable

Cualquiera que analice al detalle los muchos circuitos que aparecen en Elektor, se perca-tará de que el tema de la estabilización de la tensión aparece reiteradamente. Muchos dispositivos funcionan mediante baterías, cuyas tensiones se encuentran en rangos muy amplios. A menudo utilizamos regula-dores para obtener tensiones estables de 5 V por ejemplo para la electrónica digital o un microcontrolador.

Estabilización de diodosEn la práctica, la estabilización de la tensión no es una cuestión complicada, ya que exis-ten reguladores excelentes, como el 7805. Por un lado siempre queremos algo entre 7 y 30 V, y por otro 5 V exactos, fijos. Pero este integrado esta formado por muchos componentes. ¡Incluidos semiconductores! La palabra clave es diodo Zener, y precisa-mente de estos incorpora también el 7805, junto con muchos transistores. Un diodo Zener es un diodo cuya tensión de barrera está perfectamente definida. Por ejemplo, podemos hacernos con un Zener de 6,8 V, si queremos estabilizar algo a esa tensión. La figura 1 muestra el circuito equivalente simplificado.

Para ver cómo funciona, mostramos la curva característica de un diodo Zener típico (figura 2). A una tensión de barrera UZ definida tenemos el primer salto, después es creciente con la corriente inversa. Y mismo tiempo, esto conduce a una estabilización de la tensión de barrera. Pero sólo mientras la corriente inversa no supere cierto valor. La segunda ruptura es en los diodos Zener un motivo de fallos. Cuando el Zener está demasiado caliente, se comporta como un cortocircuito y estabiliza su tensión más o menos a cero.

El nombre del diodo “Zener” realmente no es muy concreto, la mayoría de electróni-cos hablan generalmente de diodos Z. Para tensiones de barrera de entre 3 y 200 V tie-nen lugar dos principios distintos, no sólo el llamado “efecto Zener”. Esto tiene más influencia en tensiones por debajo de los 5,6 V y se caracteriza por tener un coefi-ciente de temperatura negativo (la tensión del Zener disminuye aproximadamente un 0,1 % por grado). Por encima de los 5,6 V tiene lugar el “efecto avalancha”, con coefi-cientes de temperatura positivos. Los dio-dos Zener de 5,1 V tienen el menor coefi-ciente de temperatura. Los de 7,5 V tienen la curva característica más pronunciada y por lo tanto la menor resistencia interna diferencial. Por lo tanto, suponen la mejor opción para estabilizar una tensión con una corriente de Zener mínima.

Solución rápidaAlgunas veces sólo necesitamos una tensión más o menos estable entre 2 y 3 V, y poca potencia relativamente. Por ejemplo, en un sencillo circuito de radio las etapas de pre-vio para HF funcionan a baja tensión, mien-tras que el amplificador de salida utiliza una

pila de 9 V. Posteriormente podemos utilizar un LED en sentido directo para estabilizar la tensión (figura 3).El diodo base-emisor de un transistor NPN normal se comporta exactamente como un diodo Zener. La tensión de Zener se encuentra entre los 7 y los 12 V. Para un BC547B es de aproximadamente 9 V, o sea, dentro del margen correcto con una resistencia interna muy baja. Por lo tanto, el transistor es un buen diodo Zener, lo único malo es que la tensión de Zener no es conocida. La hoja de datos del fabricante no menciona nada al respecto, salvo que con una tensión en el diodo base-emisor de 5 V éste entra en corte. La primera ruptura en el diodo BE es por lo tanto un efecto secundario del cual podemos aprovechar-nos. Si nos falta un diodo Zener, enton-ces quizá un transistor nos sirva de ayuda (figura 4). Sencillamente medimos algunos transistores y determinamos sus tensiones de Zener.Y por cierto, hay otro efecto secundario más: ¡el diodo Zener del transistor NPN emite luz amarilla! Si llevamos a cabo este experimento con un (por ejemplo un BC140) con encapsulado metálico (como

Burkhard Kainka (Alemania)

Tras haber hablado en la última entrega de este curso básico sobre cómo obtener corrientes constantes,

ahora mostramos cómo es posible generar tensiones estables. Naturalmente podemos recurrir a un

regulador de tensión integrado, pero existen otras soluciones más interesantes, la mayoría utilizando unos

pocos componentes (discretos).

6V8

1k

9V...12V

6V8

I[mA]

10

5

0

-5

-10

-15

1-1-3-5

U[V]

Figura 1. Estabilización con Zener. Figura 2. Curva característica de un diodo Zener.

Personal Download for I © Elektor

74810

Page 53: Revista Elektor-linux Simplificado

53elektor 05-2012

FUNDAMENTOS

el TO5), hemos de abrir previamente dicho encapsulado en absoluta oscuridad para poder verlo. ¡El LED de silicio vive!

RendimientoLa estabilización de una tensión mediante un diodo Zener es muy simple, pero tiene algunos inconvenientes. Especialmente, que se desperdicia bastante energía. La resistencia en serie debe diseñarse de modo que tengamos la mínima tensión a la entrada y la máxima corriente a la salida. Por ejemplo, el circuito de la figura 4 es capaz de suministrar un máximo de 2 mA, con lo que la potencia de salida es tan 18 mW. Con la tensión mínima de entrada de 12 V tenemos 3 V en la resistencia en serie. Con esto, digamos que circula 1 mA a través del “diodo Zener” y 2 mA en la carga. Menos de 1 mA a través del Zener sería bastante pro-blemático, ya que estaríamos en el “codo” de la curva con una resistencia interna cre-ciente y una estabilidad muy baja. Incluso

en este caso se “desperdicia” un tercio de la corriente de entrada en el diodo Zener. Con mayores consumos hará falta un mínimo de 5 mA sólo para el Zener.Cuando la tensión de entrada se eleva hasta a los 24 V la cosa puede hasta empeorar. La caída de tensión en la resistencia es de 15 V, y la corriente que circula 15 mA. La potencia total consumida es de 360 mW. Comparada con la potencia útil de tan 18 mW, esto da como resultado una eficiencia de tan sólo un 5 %. En una época de crisis energética, esto es dudosamente tolerable. ¡Pero hay otra solución!

ReguladorEl rendimiento puede mejorarse conside-rablemente si utilizamos el diodo Zener del transistor de modo que el colector esté conectado directamente al polo positivo de la tensión de alimentación (figura 5). Un cir-cuito de este tipo también se llama segui-dor de emisor, ya que la tensión del emisor

siempre sigue a la de base (con una varia-ción de 0,6 V). En nuestro caso, estamos hablando de 6,2 V – 0,6 V = 5,6 V.Así, la parte del circuito correspondiente al Zener sólo absorbe una pequeña parte de la corriente de base. Aunque con amplios márgenes, la corriente de entrada es ligera-mente mayor que la de salida en el circuito. Las mayores pérdidas se deben al transis-tor y únicamente dependen de la corriente de salida y la diferencia entre la tensión de entrada y la de salida.

Un pequeño cambio más y ya tenemos el regulador de tensión ajustable listo. Un potenciómetro sirve como divisor de ten-sión para la fuente estabilizada (figura 6). La tensión de salida es menor más o menos unos 0,6 V que la del terminal ajustable del potenciómetro. Para lograr una buena esta-bilidad incluso con una corriente de salida variable, la corriente en el potenciómetro ha de ser mayor que la máxima de base.

10k

9V

2V

1k

12V...24V

BC547B

≈ 9V

1k

BC547

6V2

7V...9V 5V6

0...20mA

Figura 3. Estabilización con un LED. Figura 4. Transistor NPN como diodo Zener. Figura 5. Transistor como regulador de tensión.

El espejo de corrienteEste circuito utiliza un llamado espejo de corriente, que es un pariente lejano de la fuente de corriente constante. La corriente (constante) a través de la re-sistencia de 1 kΩ en ambos transistores es la imagen especular y su valor será siempre casi igual a la co-rriente de colector del transistor derecho. Ya que en el transistor izquierdo base y colector están conecta-dos, éstos ajustarán sus tensiones automáticamente de acuerdo a la corriente de colector. Teóricamente, el segundo transistor debería funcionar exactamente con los mismos valores, y a la misma tensión base emisor así como con la misma corriente de colector. En la práctica, normalmente apa-recen pequeñas diferencias.

La cuestión es que tener exactamente los mismos valores para el tran-sistor en la práctica es muy difícil de conseguir. Este circuito se utiliza

generalmente en integrados, en los que muchos tran-sistores del mismo chip muestran los mismos valores. También es importante que ambos transistores estén a la misma temperatura, ya que las curvas caracte-rísticas de la transferencia cambian acorde con ésta.

Por lo tanto, un espejo de corriente de este tipo pue-de utilizarse como sensor de temperatura. Toquemos uno de los transistores con el dedo. Los cambios en la temperatura de éste afectan a la corriente de salida, lo cual puede apreciarse en la intensidad del LED. De-

pendiendo de cual de los dos transistores toquemos, podremos au-mentar o reducir la luminosidad. La dependencia de la temperatura en el espejo de corriente en realidad es una deficiencia de este circui-to. Pero esto es algo que en la electrónica ya hemos visto antes: un efecto indeseado, visto por el otro lado puede convertirse en algo útil.

1k

9V

BC5472x

Personal Download for I © Elektor

74810

Page 54: Revista Elektor-linux Simplificado

54 05-2012 elektor

FUNDAMENTOS

Monitor de tensiónAlgunos circuitos requieren una tensión de funcionamiento de 5 V y difícilmente toleran desviaciones de un +/-10%. En éstos resulta práctico supervisar la tensión real. Nuestro microcontrolador debe medir dicha tensión y emitir enviar los avisos correspondientes. Si la tensión es adecuada (entre 4,75 y 5,25 V), se iluminará un LED verde. Si es demasiado pequeña, uno rojo, y si es demasiado grande, uno amarillo. El propio microcontrolador se alimenta de la tensión que él mismo monitoriza. Se encarga de compararla con su tensión de referencia interna de 1,1 V.

El código fuente Tiny13_V-V_monitor.bas puede descargarse en HYPERLINK "http://www.elektor.es/120005" www.elektor.es/120005

'Voltage Monitor$regfile = "attiny13.dat"$crystal = 1200000$hwstack = 8$swstack = 4$framesize = 4

Dim U As Word

Config Adc = Single , Prescaler = Auto , Reference = InternalStart AdcDdrb = &H07 'B0/1/2 outputs

Do U = Getadc(3) '0..6.1V

If U < 797 Then '4.75 V Portb = &H04 'red Else If U > 880 Then '5.25 V Portb = &H01 'yellow Else Portb = &H02 'green End If End If Waitms 1000Loop

End

100n

+5V

ATtiny13

VCC PB2 PB1 PB0

RES PB3 PB4 GND

LED

1k

2k2

10k

LED

1k

LED

1k

470R BD137

4V3

T1

T2

+18V +5V...+15V

BC23810k

4k7

4V9

470R

BD137

4V3

+18V +5V...+15V

BC23810k

4k7

BC238

1R

4V9

Figura 7. Regulador de tensión ajustable mejorado.

Figura 8. Limitación en corriente adicional.

270R

BD137

5V6

+9V 0...+5V

100u 1k

Figura 6. Regulador de tensión ajustable.

Personal Download for I © Elektor

74810

Page 55: Revista Elektor-linux Simplificado

55elektor 05-2012

FUNDAMENTOS

Diseña Simula Descarga

Crea sistemas electrónicos complejos en minutos utilizando Flowcode 5

Convencete tu mismo. Versión de demostración, más información y pedidos en www.elektor.es/fl owcode

Flowcode es uno de los lenguajes de programación gráfi co más avanzados del mundo para microcon-troladores (PIC, AVR, ARM y dsPIC/PIC24). La gran ventaja de Flowcode es que permite a aquellos que tienen poca experiencia crear sistemas electrónicos complejos en minutos. El interfaz gráfi co de desar-rollo de Flowcode permite a los usuarios construir un sistema electrónico completo en pantalla, desar-rollar un programa basado en diagramas de fl ujo estándar, simular el sistema y generar el código hexadecimal para microcontroladores PIC, AVR, ARM y dsPIC/PIC24.

Convencete tu mismo. Versión de demostración, más información y pedidos en www.elektor.es/fl owcodewww.elektor.es/fl owcode

Flowcode es uno de los lenguajes de programación

troladores (PIC, AVR, ARM y dsPIC/PIC24). La gran

tienen poca experiencia crear sistemas electrónicos

un sistema electrónico completo en pantalla, desar-

¡NUEVO! Flowcode 5 para PIC

Publicidad

Puede lograrse una mejor estabilización mediante un seguimiento activo de la ten-sión de salida, véase la figura 7. El rango ajustable de la tensión de salida se com-para con la tensión en el diodo Zener. La diferencia sirve como valor para controlar mediante T2 la tensión de base del transis-tor T1. En este circuito podemos obtener una tensión de salida bastante mayor que la de Zener, y de este modo, acercarnos lo más posible a la tensión de entrada. Este circuito forma una fuente de alimentación típica de hasta 1 A. La carga real capaz de soportar depende del calor disipado por el transistor de potencia BD137.

Para convertirse en una fuente de alimen-tación completa ya sólo le falta la limita-

ción en corriente. En el polo positivo se ha situado una pequeña resistencia, cuya caída de tensión es proporcional a la corriente de salida (figura 8). Un transistor adicio-nal empieza a conducir cuando la tensión supera los 0,6 V. Se encarga de regular la tensión de base del transistor siguiente. Una resistencia utilizada como sensor de corriente (o “shunt”) de 1 Ω se encarga de que circule una corriente inferior a 0,6 A. La gran cantidad de calor disipado podría que-mar el transistor. ¡Esto no ocurrirá aunque no tengamos un gran disipador!

Regulador de tensión integradoLo bueno es que existen reguladores inte-grados muy asequibles para casi todas las tensiones de salida típicas. Un 7805

es capaz de suministrar hasta 1 A a 5 V. A esas corrientes siempre hemos de incor-porar un disipador. Normalmente se manejan corrientes mucho más peque-ñas. Luego está el 78L05, que llega hasta 100 mA. Pero ojo, ¡en este modelo la asig-nación de pines no equivale a la de su her-mano mayor! El regulador necesita dos condensadores a la entrada y a la salida, sin los cuales podríamos tener grandes oscilaciones de unos cuantos kiloherzios (figura 9).Los reguladores de tensión integrados real-mente incluyen todo lo que hemos tratado en este cursillo básico sobre semiconduc-tores discretos. Si echamos un vistazo al circuito interno de la figura 10, podremos reconocer casi todo rápidamente. Ahí está

Personal Download for I © Elektor

74810

Page 56: Revista Elektor-linux Simplificado

56 05-2012 elektor

por ejemplo el diodo Zener con su resis-tencia en serie. El circuito de control real es algo más complicado; incluye un ampli-ficador diferencial y uno de los llamados espejos de corriente (véase el cuadro). El transistor de regulación es en realidad el Darlington formado por Q11 y Q12, donde la mayor parte del calor se disipa en Q12. Q10 se encarga de limitar la corriente, y en el peor de los casos, el puente Darling-ton en Q11/Q12 reducirá la corriente de base. La resistencia utilizada para medir la corriente, de 3 Ω, soporta una carga de hasta 200 mA. Aparte de evitar que el inte-grado se caliente demasiado, tendremos menos de 0,6 V en la base de Q10. El regu-lador está a salvo de temperaturas dema-siado altas gracias al circuito de protección formado por Q7/Q8/Q9.

(120005)

7805 / 78L05

100n 100n

+7V...+35V +5V

780578M05

78L05

Figura 9. Conexión del reguladorde tensión 780X con condensadores

de bypass.

Figura 10. Diseño interno del 78Lxx (Fuente: Motorola).

CuestionarioEn el siguiente circuito de estabili-zación para aproximadamente 6,2 V se utiliza en lugar de una resi-stencia en serie un JFET BF245B. El JFET se utiliza como fuente de cor-riente sencilla y mejora la estabili-zación de la tensión con tensiones de entrada variables. El circuito se ha diseñado para tensiones de entrada de entre 9 V y 18 V.

1) ¿Qué corriente máxima podemos tener a la salida?

A) Apenas 10 mA

B) Hasta 100 mA

C) Menos de 1 mA

2) Comparemos la eficiencia a una tensión de entrada mayor contra la de un diodo Zener con resistencia en serie.

D) El rendimiento mejora debido al JFET.

E) El rendimiento empeora debido al JFET.

F) El rendimiento es el mismo.

3) ¿Qué sentido tiene el condensador electrolítico en el circuito?

G) Mejora el rendimiento.

H) Reduce la resistencia interna a altas frecuencias.

I) Es capaz de mantener la tensión de alimentación en caso de un corte durante unos cuantos minutos.

¡Quien nos envíe las respuestas correctas podrá ganar un

“Minty Geek Electronic 101 Kit”!

Envíenos la clave de la solución (correspondiente a las letras en serie

de las respuestas correctas) por e-mail a: [email protected].

Como asunto en el e-mail, por favor, incluya sólo el código de la

solución. Aparte, estaríamos muy agradecidos si adjunta también su

dirección postal.

¡La fecha límite es el 31 de mayo de 2012!

La decisión final es irrevocable. Los trabajadores del grupo Elektor International Media B.V., así como los editores y colaboradores quedan excluidos de participar.

El código correcto de la edición de Marzo era “BDI”. He aquí la explicación:

1. En la resistencia del colector hay 5 V – 2,8 V = 2,2 V. La corriente de colector es por lo tanto de 1 mA (IB es despreciable). La tensión base-emisor es alrededor de 0,6 V. En la resistencia de base tenemos por lo tanto 2,8 V – 0,6 V = 2,2 V. La corriente de base será 2,2 V / 470 kΩ = 4,68 µA. Para la ganancia en corriente, entonces V = IC / IB = 1 mA / 0,00468 mA = 213,7. La respuesta B) era la correcta.

2. Sin corriente de base (respuesta E) tendríamos que medir UCE = 5 V. Con una corriente de base muy pequeña (F) hubiéramos tenido una tensión de 0,6 V. Realmente, en un transistor nuevo de este tipo nunca nos encontramos 0 V. El transistor tiene un cortocircuito interno entre emisor y colector. Puede ocurrir cuando el transistor se sobrecarga (¡segunda ruptura!).

3. Las soluciones (incorrectas) G) y H) sugerían que no circulaba corriente a través de la resistencia de colector. Sin embargo, cuando emisor y colector se invierten, la funcionalidad del transistor se mantiene, pero con una ganancia en corriente muy baja (de entre 3 y 20). Para UCE = 4,9 V podemos calcular la ganancia en corriente en aproximadamente 5. Por lo tanto, el transistor está probablemente conectado al revés.

6V2

+9V...+18V

BF245B

100u

Personal Download for I © Elektor

74810

Page 57: Revista Elektor-linux Simplificado

Recently acquired by The Elektor Group, audioXpress has been providing engineers with incredible audio insight, inspiration and design ideas for over

a decade. If you’re an audio enthusiast who enjoys speaker building and amp design, or if you’re interested in learning about tubes, driver

testing, and vintage audio, then audioXpress is the magazine

for you!

Subscribe to audioXpress magazine!Subscribe to audioXpress magazine!audioXpress magazine!audioXpress

Recently acquired by The Elektor Group,

amp design, or if you’re interested in learning about tubes, driver testing, and vintage audio, then

audioXpress is the magazine

amp design, or if you’re interested in learning about tubes, driver testing, and vintage audio, then

Do your electronics speak to you? Are the words “audio”, “vacuum tubes”, and “speaker technology” music to your ears?

Recently acquired by The Elektor Group, engineers with incredible audio insight, inspiration and design ideas for over

a decade. If you’re an audio enthusiast who enjoys speaker building and amp design, or if you’re interested in learning about tubes, driver

Recently acquired by The Elektor Group, audioXpress has been providing engineers with incredible audio insight, inspiration and design ideas for over

a decade. If you’re an audio enthusiast who enjoys speaker building and amp design, or if you’re interested in learning about tubes, driver

Then you should be reading audioXpress!

• In-depth interviews with audio industry luminaries

• Recurring columns by top experts on speaker building, driver testing, and amp construction

• Accessible engineering articles presenting

inventive, real-world audio electronics applications and projects

• Thorough and honest reviews about products that will bring your audio experiences to new levels

Choose from print delivery, digital,

or a combination of both for

maximum accessibility.

What will you fi nd in audioXpress?

Subscribe to audioXpress at

www.cc-webshop.comtoday!

SubscribeSubscribe

Naamloos-1 1 28-09-11 08:49

Personal Download for I © Elektor

74810

Page 58: Revista Elektor-linux Simplificado

58 05-2012 elektor

MICROCONTROLADORES

RAMBOard-SerieControlador RAM Estático con interfaz SPIMarkus Hirsch (Alemania)

Incluso pensando que las prestaciones de los microcontroladores mejoran

día a día a medida que los requerimientos se hacen más sofisticados,

aún hay muchas aplicaciones que usan un pequeño procesador de

8 bits. En algunos casos la capacidad de procesamiento real no es el

principal problema, sino la cantidad de memoria necesaria. ¡Veamos el

RAMBO-S!

La solución para esto es, bien un procesador más grande con la can-tidad necesaria de memoria SRAM, junto con un exceso de presta-ciones, o bien usando una memoria externa junto con el pequeño procesador. Para capacidades más bajas de memoria hay solucio-nes con un interfaz serie para las líneas de datos y direcciones de reserva, como la memoria SRAM, 23K256 SPI, con 32 KB. Pero si

se requieren mayores canti-dades de memoria, como 512 KB o más, nos enfrentamos con el problema de que estas memorias SRAM sólo están disponibles como dis-positivos de direccionamiento paralelo, con encapsulados del mismo tipo. Con ocho bits de datos y 19 o más bits de direcciones, las pequeñas CPUs agotan rápidamente sus de puertos de E/S.Para resolver el problema de acceso a una gran cantidad de memo-ria SRAM accesible con un interfaz SPI rápido, la solución es el usar un controlador que haga todo el direccionamiento y la gestión paralela por desplazamiento serie. Para esto ha sido diseñado el RAMBO-S. En este diseño se ha usado una CPLD XC9572 de Xilinx, en un encapsulado PC44 (44 pines, 34 E/S de usuario) para hacer de interfaz de un CI SRAM de 512 Kb, como el BS62LV4006, si bien se puede utilizar cualquier SRAM estándar con líneas de control equivalentes. Para hacer de inter-faz con más CIs SRAM, se debería usar una CPLD con más líneas de E/S.

HardwareBásicamente el circuito puede mostrarse como si estuviese formado por dos componentes: la CPLD y la SRAM (ver Figura 1). Todas las líneas de direcciones están cableadas directamente a la CPLD sin utilizar “latch”. Sólo es necesario añadir unos pocos condensado-res de desacoplo.

Host µC

RAMBO-S

CPLD

XC9572-PC44

SRAMFE

MOSI 18

19

20

22

BE

BS62LV4006

OE

WE

2444

MISO

SCK

CS

CE 2240

I/O 0-7

PIN

DATA 28, 29, 33 - 38

1 - 8, 11 - 14,24 - 27, 39,42, 43

1 - 12, 31,30, 28 - 25, 23

13 - 21

ADDRESS

CPLD SRAM

299

* *

*

*

AD 0-18

Figura 1. A veces un diagrama de bloques es virtualmente un esquema eléctrico.

Address 0 - 7 Data byte 1 Data byte 2Address 8 - 15 Address 8 - 15

Bit 0

SETUP

CLK

MOSI

MISO

CS

RAMBO-S: read two bytes

Bit 7

DATARW

Bit 0 Bit 7

Address 0 - 7 Data byte 1 Data byte 2Address 8 - 15 Address 8 - 15

Bit 0

SETUP

CLK

MOSI

MISO

CS

RAMBO-S: write two bytes

Bit 7

DATARW

Figura 2. RAMBO-S lee y escribe diagramas de tiempo.

Personal Download for I © Elektor

74810

Page 59: Revista Elektor-linux Simplificado

59elektor 05-2012

MICROCONTROLADORES

La CPLD tiene un frontal-terminal (FT) con interfaz el SPI y una trasera-terminal (TT) para la memoria SRAM.

InterfazEl firmware de la CPLD está diseñado para que no se necesiten componentes exter-nos. La línea de reloj del interfaz SPI se utiliza para controlar la lógica interna. Después de desplazar internamente dos bytes de direcciones y un byte de con-figuración (que alberga tres bits más de direcciones y la selección de lectura o escritura), pueden recibirse o trans-mitirse las tramas de bytes de datos. La dirección se incrementa automática-mente para cada byte. La Figura 2 muestra las secuencias de pulsos para las operaciones de lectura y escritura.El dispositivo fue probado con una velocidad de reloj de 2,2 MHz. Esto debería dar una velocidad de datos teórica de 275 KB/s. Pero la velocidad de reloj máxima alcanzable puede ser mucho mayor.

Funcionamiento del Firmware Los ficheros de diseño del firmware desarrollados por el autor de este artículo están disponibles para su descarga en la página de soporte del artículo, en el sitio Web de Elektor [1]. Estos archivos deben permitirnos grabar nuestra propia CPLD para el proyecto, así como obtener una comprensión de lo que está sucediendo en el dispositivo. No está permitido el uso comercial de los archi-vos del firmware.Refiriéndonos a las zonas etiquetadas del diagrama de la Figura 3, las partes principales del firmware son: (1) el SPI y el registro de desplazamiento de entrada, (2) el controlador de la entrada/salida de datos, (3) el registro de desplazamiento de salida, (4) la multitud de contadores de dirección, (5) la lógica de control del contador y (6) la lógica de control de la SRAM.Cuando la señal CS está a nivel alto toda la lógica interna se rei-nicia y el dispositivo está en modo inactivo. Tan pronto como CS pasa a nivel bajo, se requieren los tres bytes de configuración de direcciones. La lógica de control interna carga los 19 primeros bits en los contadores de dirección y el último bit del tercer byte establece la lógica de lectura/escritura.A continuación, el dispositivo pasa a modo trama. Para cada uno de los bytes siguientes los contadores de dirección se incremen-tan y los datos se escriben o leen desde el bus SPI hacia la memo-ria SRAM y viceversa.El funcionamiento puede continuar durante cualquier número de bytes y se termina estableciendo de nuevo la señal CS a nivel Alto.Para poder direccionar más de una SDRAM, podemos usar el bit no utilizado del tercer byte de configuración, con un descodifi-cador. Para cada CI se requiere una línea CE.

(091090)

Referencias en Internet

1. www.elektor.com/091090

Figura 3. Detalles de la lógica CPLD usada en RAMBO-S.

Más información en

www.elektor.es/rf-app s/////rf

La RF & Microwave Toolbox contiene 34 herramientas de cálculo y conversión para RF, microondas y electrónica en general. Ya seas profesional, radio -afi cionado, astrónomo o afi cionado, esta app pone la mayoría de las herramien -tas importantes al alcance de tus dedos.

Destacados:• Amplifi cador en Cascada (NF, Gain,

P1db, OIP2, OIP3)• Convertidor de intensidad de campo y

densidad de potencia (W/m2, V/m, A/m, Tesla, Gauss, dBm, W)

• Calculadora de trazado de PCB (impedancia/dimensiones)

• Atenuador PI y T• Temperatura de Antena (Kelvin)• EMC (EIRP, ERP, dBμV/m)• Diseño de fi ltros (Butterworth, Chebyshev, prototipo)• Y más

Elektor RF & MicrowaveToolbox

,

¡Descarga tu app ahora!

para Android

Publicidad

Personal Download for I © Elektor

74810

Page 60: Revista Elektor-linux Simplificado

60 05-2012 elektor

ALTA FRECUENCIA

Radio Definida por Software con AVR (3)AM y FM / Antena activa de ferrita

En la anterior entrega [2] hemos visto cómo la clásica modulación PWM (simple varia-ción del factor de servicio) con un cambio en la amplitud siempre incluía también un cambio de fase. Con nuestro generador de señal podemos obtener también una modu-lación en amplitud pura. Pero el generador PWM del controlador AVR dispone de otro modo adicional, el llamado PWM corregido en fase. El contador siempre suma hacia arriba o hacia abajo, generalmente entre 0 y el “valor TOP” (superior) en el registro ICR1. Cuando este valor TOP = 80, entonces un periodo completo de estas cuentas hacia arriba o hacia abajo equivale a 160 ciclos de reloj, lo cual en un reloj de 20 MHz son exac-tamente 125 kHz. Cuando se supera tanto inferior como superiormente este valor de balance en el registro OCR1A la salida PWM correspondiente se ajusta o se rese-tea. Variando este valor de referencia pode-mos cambiar el factor de servicio, pero en el centro del pulso PWM el valor de la cuenta es siempre 0 y los pulsos siempre tienen la

misma fase. Si obtenemos la señal sinusoi-dal fundamental de la cuadrada mediante un circuito resonante, la amplitud de ésta será la descrita según la  = A * (4 / π) sin (D * π), con un factor de servicio D (A = ampli-tud de la onda cuadrada).Aquí ocurre lo mismo que en nuestro primer experimento con el generador de señal y la tarjeta receptora universal (o en el “fron-tend simplificado” de [2]). La rutina de envío es muy sencilla, como puede verse en el lis-tado. El software EXP-SQTX-125kHz-PWMc-V01.c para el generador de señal puede encontrarse como siempre en las descargas de la página del proyecto [3]. En el receptor se utiliza el programa EXP-Sim-pleFrontend-125kHz-Phase-Ampl-V01.c.Cuando se combinan ambas salidas del receptor en el osciloscopio obtenemos la imagen de la figura 1. Fijamos el contenido del registro OCR1A entre 8 y 40, y el factor de servicio de la señal PWM entre 0,1 y 0,5. La diferencia en la amplitud sin(0,1 × π) /

sin(0,5 × π) = 0,309016... = -10,200 dB. Ya que la “salida en amplitud” del receptor es de 1 V por 20 dB, puede apreciarse una dife-rencia de tensión entre niveles de aproxima-damente 0,5 V (curva amarilla).La fase aparece en la otra salida del receptor (curva azul). Ya no se provocan saltos en el reloj de los datos. Únicamente puede verse el pequeño desajuste resultante del offset de la frecuencia.

DCF77 primero... Con los conocimientos adquiridos hasta ahora, podemos construir un emisor DCF de prueba. La frecuencia de la portadora a 77,5 kHz lamentablemente no puede generarse mediante un divisor entero de 20 MHz. Por ello, utilizamos nuevamente el método de la división parcial con ayuda de un acumulador DDS de 24 bits y una inte-rrupción del timer, como se describe en la parte 1 [1]. Nos servimos del ya descrito PWM corregido en fase ya que no queremos modulación en fase alguna.

Martin Ossmann (Alemania)

En esta serie mostramos por qué los microcontroladores AVR también son aptos para

el procesamiento digital de señales. Esta vez llevaremos a cabo algunos tests con la

modulación en amplitud y frecuencia. ¡No podía faltar un pequeño emisor DCF! Aparte,

ampliamos nuestro material con una antena activa de ferrita, que nos permite recibir señales

de onda larga y media.

C1

330p

C2

500p

Uin UoutL1

300 Wdg x 0,25 CuL10 cm Ferritstab

Figura 1. Modulación AM: amplitud en amarillo, fase en azul.

Figura 2. Emisor DCF77. Figura 3. Recepción del DCF. En la curva amarilla de la amplitud pueden apreciarse

los pulsos largos y cortos.

Personal Download for I © Elektor

74810

Page 61: Revista Elektor-linux Simplificado

61elektor 05-2012

ALTA FRECUENCIA

La señal PWM del genera-dor se dirige a un circuito resonante en serie (figura 2) que consiste en una antena de ferrita y su corres-pondiente condensador. Con un segundo condensador, variable, podemos alcanzar la máxima amplitud.En el ATtiny del generador de señal se eje-cuta el software DCF_TX_V01.C, que envía el mensaje DCF77 correcto. Dicho mensaje se compone de pulsos, cada uno dura un segundo. La información del tiempo se codi-fica con bajadas cortas o largas al inicio de estos pulsos, y en el segundo 59 les sigue una pausa sin bajadas de amplitud. El soft-ware incluye una rutina según la cual cada pulso de segundo consta de 10 “bits”, cada uno lógicamente de 1/10 s de duración. Para señalizar una bajada corta, se envía 0111111111, para una larga, 0011111111, y para una pausa, en el segundo 59 se envía 1111111111. A partir de estos patrones se forma el mensaje completo.

El programa se inicia con la hora 11:41, del

15 de agosto de 2008. Si el circuito resonante

del emisor está bien ajus-tado, podemos influir en la

hora del DCF a unos cuan-tos metros de distancia. En

la mayoría de relojes DCF con-trolados ocurre más o menos lo

mismo, puede revertirse el pro-ceso retirando las baterías durante

breves instantes.

DCF77 segundo...Y ahora, ¡hagamos lo mismo con la

recepción de la señal del DCF77 de Main-flingen! Utilizamos la antena activa de ferrita, que se describe posteriormente en esta entrega y está disponible como kit en Elektor. La antena se conecta al ter-minal ANT2 de la tarjeta receptora. En el receptor (véase abajo el esquema del cir-cuito) se conecta el pin 1 de K4 con el pin 2 de K5, para conducir la señal del ADC0 del ATmega. Nos serviremos del software EXP-Simple-DCF77-RX-V01.c.Muestreamos la señal a 10 kS/s. Ya que 77,5 kHz son casi 8 * 10 kHz – 10 kHz/4, realmente podemos utilizar el submues-treo en paso banda para la demodulación descrito en la anterior entrega. En el osci-lograma de la figura 3 puede verse el resul-tado. La curva amarilla de arriba repre-senta la amplitud, en la que se aprecian claramente los pulsos cortos, en los cuales su amplitud oscila fuertemente. También puede verse cómo hay caídas largas y cor-

tas. Por lo tanto, un análisis de las señales en el tiempo no tiene especial sentido.

Sin embargo, puede utilizarse la señal de fase del emisor DCF77. En uno de los siguientes experimentos el receptor no se sincroniza a una frecuencia de oscilador fija, sino a la de un oscilador de cuarzo de 20 MHz controlado por tensión (VCXO). Si queremos fijar la frecuencia del oscilador de forma que no haya variaciones de fase, entonces hemos de seguir los 20 MHz de la frecuencia de alta precisión del DCF77. En la figura 3 no se ha hecho esto, y la fase se reduce lentamente. El proceso de ajuste puede automatizarse mediante un PLL (que probaremos en la próxima parte del curso). En lugar del DCF77 lo sincronizaremos según la señal de la BBC (198 kHz) o la de France Inter (162 kHz) para contar con una referencia de alta precisión.

Interpretación de las fasesEn la figura 1 puede verse un perfil de la fase con forma de diente de sierra, debido al off-set de la frecuencia. La fase se incrementa constantemente, y una vez se alcanza un valor de 360 grados = 5 voltios, salta de nuevo a 0 grados = 0 voltios. Ahora podemos apreciar estos cambios de fase más bruscos, aunque físicamente no ocurre nada.

720°

360°

P(t)

Saltos de fase

-360°

Figura 4. El mismo desplazamiento de fase representado de dos formas distintas. Figura 5. Muestreo de la frecuencia (FSK).

Listado: PWM con corrección de fase

void bitSend(uint8_t theBit){if (theBit) { OCR1A = 40; } else { OCR1A = 8; } // 10dB}

Personal Download for I © Elektor

74810

Page 62: Revista Elektor-linux Simplificado

62 05-2012 elektor

ALTA FRECUENCIA

Si el ángulo no está limitado a entre 0 y 360 grados, sino que se permiten valores menores de 0 y mayores de 360 grados, la representación es mejor. En la figura 4 a la izquierda puede verse una representación de este tipo, una señal modulada en fase con offset de frecuencia. Esta curva se inter-preta bastante bien, mientras que la repre-sentación con el rango de ángulos clásico resulta algo confusa.Pueden ilustrarse los problemas que apare-cen en la representación gráfica de la fase. Supongamos que alguien camina por el polo norte, y de repente salta una longitud de 180 grados al oeste y 180 grados al este. Estará en el mismo punto, hasta aquí nada especial. Si alguien gira en círculo, pero en una escalera de espiral, por supuesto que no

estará en el mismo lugar, sino en otro piso. Cuando contamos los “pisos” de la fase, podemos detectar diferencias de más de 360 grados. El truco está en utilizar un PLL, ya que disponen de un rango de un gran rango de alcance.

En la figura 5 puede verse una buena apli-cación de esta técnica. Utilizamos nuestro generador de señal como emisor FSK (Fre-quency Shift Keying = muestreo de la fre-cuencia), sirviéndonos del software EXP-SQTX-FM-RTTY-V01.c. Las señales de la salida del generador K4 se dirigen a través del circuito resonante de filtrado descrito en la primera parte [1] hacia ADC0. Como programa receptor se utiliza EXP-Simple-Frontend-125kHz-extPhase-Freq-

JP1

1 21

IC3A3 41

IC3B5 61

IC3C

9 81

IC3D

11 101

IC3E

13 121

IC3F

C13

470n

R11100k

C19

100n

+5V'

P2

10k

R122M2

R13

2k2

C125p6

X1

20MHz

C85.5-65p

C11

100p

C10

27p

D4

SB1100

K8

E/D1

2

3

4 IC4

20MHz

+5V'JP2

PC61

(RXD) PD02

(TXD) PD13

PD24

PD35

PD46

VCC

7

GND

8(OC0B) PD5

11

(OC0A) PD612

PD713

PB014

PB1(OC1A)15

PB216

PB317

PB418

PB519

AVCC

20AR

EF21

GND

22

PC0 (ADC0)23

PC1 (ADC1)24

PC225

PC326

PC427

PC528

PB69

PB710

IC2

ATMEGA88

VCXO

R10470k

123456

K7+5V'

R14

470R

S1

ISP

RESET

MISOSCK

MOSI

K6

C18

100n

+5V'

C7

100n

R8470k

K5

R7

470k

C6

470n

ADC1

RESET

VSS

1

VDD

2

VL3

RS4

R/W

5

E6

D07

D18

D29

D310

D411

D512

D613

D714

LED+

A15

LED-

C16

LCD1

4 x 20

+5V'

R21

33R

JP3

+5V

2

31

K1D1

1N4007

25V

C1

100u D2

R1

2k7

1 3

2

IC17805

63V

C2

10u

+5V

USB+5V

K10

K9

R19

4k7

C16

10n

R204k7

C17

10n

K11

R17

4k7

C14

10n

R184k7

C15

10n

K12

DAC1

DAC2

K2

IO4

IO2

+5V0

R91k

D3

D6 D7

D5 D8

D9

D10

D12

D11

R161k

R15

1k

TXRX+5V

Mod1

BOB-FT232R-001

D13

1N5817

D14

1N5817USB+5V

K4

T2

BF245B

T1

BC560C

R62k2

R4

123

123

100kC4

100nK3 R3220R

P1

1k

C5

100n

R5470RTP1

63V

C3

10u

R2

10R

+12V

ANT

+12V

ANT2

ANT1

AB

ADC0

CLIPPINGCLKout

VCXOOSC

C9

100p

L1

4uH7

L3

1uH

C20

100n

P3

10k

R2210R

63V

C21

10u

+5V'

L2

1uH

14

7IC3

+5V'

+5V'

IC3 = 74HC04

100182 - 13

Figura 6. Esquema del circuito de la tarjeta receptora universal.

K1 T2

BF245B

R10

470R

T1

BC560C

R3

4k7

R4

470R

T3

BC550CTP1

R2470R

C3

100nR5

10R

R6

22R

R7

47R

R8

100R

R9

220R

12

34

56

78

910

JP1

C4L2

25V

C1

47u

L1

4mH7 R1

470R

K2C2

10

100182 - 14

0n

Antenna

Figura 7. Esquema del circuito de la antena activa de ferrita.

Personal Download for I © Elektor

74810

Page 63: Revista Elektor-linux Simplificado

63elektor 05-2012

ALTA FRECUENCIA

V01.c, el cual dispone de representación de fase ampliada. El escalado de la señal de salida del receptor es de 5 voltios para 8 * 360 grados. La portadora a 125 kHz tiene una variación (“hub”) de +/- 50 Hz para los bits 1 y 0, modulando en frecuen-cia; se envían 50 bits por segundo. Un hub de + 50 Hz significa que en la señal recibida, a la señal de referencia le precede exacta-mente una oscilación durante el tiempo de un bit (1/50 s). Un único bit corresponde exactamente a un cambio de fase de 360°, dependiendo el sentido del giro del valor del bit. Un giro completo de 360° significa un incremento o decremento de la fase de la señal de salida en 5 V / 8 = 0.6... V, y por lo tanto a 20 ms. Esto puede apreciarse bien en la curva azul de la figura 5.La demodulación de la señal del FSK es sen-cilla: la fase actual creciente corresponde exactamente con la variación de la fre-cuencia en este preciso momento, o sea, con los bits transmitidos. El incremento de la fase puede calcularse fácilmente a partir de los distintos valores sucesivos de esta. El resultado puede verse en la curva amarilla. Si la fase crece, entonces la curva amarilla estará a nivel “alto”, si disminuye, enton-ces estará a nivel “bajo”. Pueden apreciarse bien los bits que se transfieren. Ahora sólo tenemos que interpretar este resultado mediante un software UART, y ya tendre-mos un receptor SDR-FSK. No obstante, en las próximas entregas del curso le aña-diremos algunos filtros para que gane en robustez.

La tarjeta receptora universalUna vez hemos cumplido los primeros pasos con un sencillo circuito receptor, ahora que-remos pasar a tener una mejor tarjeta recep-tora. La tarjeta receptora universal ya la presentamos en la anterior parte (esquema de montaje inclusive). En la figura 6 se ha representado de modo que podamos ilus-trar otras posibilidades interesantes. Para las notificaciones se ha integrado un LCD de cuatro líneas. En el conector Mod1 puede incorporarse un convertidor USB/TTL BOB FT232. Posteriormente podemos utilizar un PC para la entrada y salida, y así gestionar por ejemplo los datos recibidos.Como reloj se utiliza un oscilador de 20 MHz discreto, cuya frecuencia puede modificarse

ligeramente por medio de la tensión. Dicha tensión puede ajustarse mediante el poten-ciómetro de ajuste P2, o dejar que el procesa-dor AVR controle la frecuencia vía PWM en la salida OC1A/PB1 (a través del filtro paso bajo formado por R10 y C13). De esta manera el VCXO opera en un lazo de control PLL, y así obtener una frecuencia de alta precisión, con la ayuda de la señal DCF. Disponemos de una frecuencia derivada en la salida OC0B. Alter-nativamente también podemos utilizar la señal del oscilador de cuarzo en el integrado (IC4) a través del jumper JP2.Mediante los puertos C y D se controlan ocho LEDs dispuestos en círculo, con el fin de representar la fase. Gracias a ellos pode-mos controlar, por ejemplo, si funciona correctamente el lazo PLL. De esta manera podemos apreciar incluso las diferencias más pequeñas en la frecuencia.Las señales analógicas llegan a nuestro pro-cesador por la entrada ADC0 del converti-dor analógico-digital. Mediante R7 y R8 se fija el offset DC de dicha entrada a la mitad de la tensión de referencia (AREF), en la cual C6 sirve para acoplar la entrada AC. T1 y T2 forman un preamplificador en esta entrada (K4 pin 2/pin 3), en la que puede conec-tarse directamente un circuito resonante receptor con antena de ferrita y condensa-dor variable. La salida se dirige posterior-mente al ADC, mediante los pines 1 y 2 de K5. En la entrada del preamplificador tam-bién puede recibirse la señal de una antena de ferrita con “alimentación fantasma” (en los pines 1 y 2 de K4). La antena de ferrita puede conectarse en K3.En algunos de los experimentos actua-les y los venideros se generan dos tensio-

nes de salida que visualizamos haciendo uso de un osciloscopio. Estas tensiones de salida generan mediante el PWM del timer 0 y son suministradas en los pines OC0A y OC0B. En cada caso se dirigen a un filtro RC de dos etapas. En K11 y K12 pueden anali-zarse ambas tensiones.

Antena activa de ferritaPara perfeccionar el diseño, completare-mos nuestro equipo con una antena activa de ferrita para la banda de la onda larga y media. En la figura 7 se ha representado el esquema del circuito. Debido al JFET T2 la entrada tiene una alta impedancia, de modo que el circuito resonante de la antena alcanza una gran calidad y buena selectividad. El transistor T1 garantiza una buena ganancia y T3 configurado como seguidor de emisor ofrece una baja impe-dancia de salida. Mediante R2 se ha imple-mentado una realimentación en DC y AC, pudiendo ajustar esta última gracias a JP1. La antena funciona gracias a la “alimen-tación fantasma” de aproximadamente 12 voltios.Las variaciones entre los ejemplares utili-zados para T2 pueden afectar al funciona-miento, hemos de seleccionar T2 de modo que la tensión en la fuente sea de aproxi-madamente 2 V. Posteriormente hemos de asegurarnos de que las conexiones tanto a la salida como a la entrada están hechas debidamente, ya que esto podría provocar oscilaciones en la realimentación. Lo mejor es utilizar cable apantallado. En la figura 8 puede verse el prototipo del autor.Como ocurre con el generador de señal y el receptor universal, la antena activa

Figura 8. Prototipo de la antena activa de ferrita del autor.

Personal Download for I © Elektor

74810

Page 64: Revista Elektor-linux Simplificado

64 05-2012 elektor

ALTA FRECUENCIA

de ferrita también está disponible en un kit, tanto la tarjeta (figura 9) como todos los componentes. Éstos son una varilla de ferrita, tres núcleos de bobina y 24,5 m de cable de cobre lacado.

Medidor RMS con muestreo aleatorioAlgunas veces resulta útil poder medir el valor eficaz de una tensión en corriente alterna. Como primera aplicación tenemos

por ejemplo el ajuste de la antena de ferrita en una frecuencia específica con ayuda del generador de señal. Para ello, ¡con la tarjeta receptora diseñaremos un voltímetro RMS!Para determinar el valor eficaz Seff de una señal de tensión periódica s(t), en principio necesitamos tomar suficientes muestras sk en un periodo y posteriormente calcular el valor cuadrático medio:

Seff = √ 1/N Σ sk2

El ATmega88 por ahora no muestrea señales muy rápidas (el máximo es de unas 10 kS/s con una resolución de 10 bits). Pero quere-mos medir señales de hasta 1 MHz.En lugar de tomar suficientes medidas durante un único periodo, podemos tomar valores suficientes repartidos en muchos periodos (véase la figura 10). A esto se le llama muestreo aleatorio (Random Sam-pling). El inconveniente de utilizar este método es que necesitamos tomar muchos valores de muestreo para asegurarnos de que el resultado sea lo suficientemente preciso. Y la ventaja es que puede utili-zarse para señales no periódicas, similares al ruido.Utilizando el Random Sampling nuestro ATmega88 se convierte en un voltímetro RMS (EXP-RMSmeter-V01.c). La ten-sión de referencia del convertidor A/D es seleccionada automáticamente entre 5 y 1,1 V, con el fin de alcanzar la máxima pre-cisión. El valor medio en cada caso se cal-cula mediante 2048 valores, se muestra en el LCD de la tarjeta receptora y al mismo tiempo se entrega vía puerto serie. Tras 256 nuevos valores se actualiza el display. En el cuadro “tiempo de apertura” puede com-probar cómo este voltímetro RMS resulta bastante práctico.

Antena de ferrita y ajustesLa frecuencia del emisor, a la cual queremos transferir posteriormente, está entre 50 y 700 kHz, por eso lo mejor es utilizar una antena de ferrita. Para ello, nos servimos de una varilla de ferrita de 90 mm de longi-tud, con un diámetro de 10 mm (por ejem-plo la del bus modular AK [4], que se incluye en el kit). Las bobinas necesarias se arrollan por ejemplo en núcleos RM10. Para ajustar el rango de frecuencias deseado, podemos

Lista de materiales de la antena activa de ferritaResistencias (5%, 0,25 W):R1, R2, R4, R10 = 470 ΩR3 = 4k7R5 = 10 ΩR6 = 22 ΩR7 = 47 ΩR8 = 100 ΩR9 = 220 Ω

Condensadores:C1 = 47 µF, 25 V, 20 %, radial, 2,5 mm, IAC

95 mAC2, C3 = 100 nF, 63 V, 5 %, MKT, 5/7,5 mmC4 = condensador variable 2 x 265 pF + 2 x

20 pF (por ejemplo [4])

Inductancias:L1 = 4,7 mH, 81 mA, 13,2 Ω, radial, 3 mmL2 = varilla de ferrita, L = 90 mm, diámetro =

10 mm (por ejemplo [4])3x núcleo de bobina RM 10, 5 Pin24,5 m de cable de cobre lacado, 0,22 mm de

diámetro

Semiconductores:T1 = BC560CT2 = BF245B (JFET)T3 = BC550C

Varios:K1, K2 = conector de tipo pinheader de

2 terminales, vertical, separación entre terminales de 0,1’’ (2,54mm)

JP1 = conector de tipo pinheader de 2x5 terminales, separación entre terminales de 0,1’’ (2,54mm)

TP1 = pin de test 1,3 mmPlaca de circuito impreso 100182-1 [3]

O: Kit incluyendo la placa de circuito impreso y todos los componentes: 100182-71 [3]

O: Kit incluyendo los tres anteriores más el convertidor USB/TTL BOB FT232: 100182-72 [3]

Figura 9. La tarjeta de la antena activa de ferrita está disponible como kit en Elektor.

Periodo T

sk

Figura 10. Random Sampling.

Tabla: datos de la antena de ferrita y el condensador variable doble

Condensador variable doble de 2x 265 pF, del bus modular AK Cmin = 50,00 pF, Cmax = 500,00 pF

Antena de ferrita de 90 mm, del bus modular AK AL = 100,00 nH / n2 (el valor de medida depende entre otros de la geometría de la bobina)

Se fabrican las bobinas de 50, 150 y 200 espiras a partir de núcleos, también las podemos hacer de 50, 200 y 400 espiras correspondientemente.

Espiras Inductancia Rango de frecuencias

n = 50 L = 0,250 mH 450,2 kHz a 1423,5 kHz

n = 200 L = 4,000 mH 112,5 kHz a 355,9 kHz

n = 400 L = 16,000 mH 56,3 kHz a 177,9 kHz

Personal Download for I © Elektor

74810

Page 65: Revista Elektor-linux Simplificado

65elektor 05-2012

ALTA FRECUENCIA

Computing power and global interconnectivity are pushing tech innovation into overdrive. Pioneering technologies and creative workarounds affect even the couch potato 24/7. Tech the Future reports on technology strides that shape the future — yours included.

Follow Tech the Future

www.techthefuture.com

Fascinated by technology’s impact on the future?Check out Tech the Future!

Publicidad

Tiempo de aperturaPara realizar una conversión A/D, el ATmega88 necesita 13 unidades del reloj del ADC, que no puede ser mayor de 200 kHz. En nuestro caso obtenemos el reloj del ADC dividiendo entre 128 el reloj de la CPU a 20 MHz. El reloj del ADC es de 156,25 kHz, con lo que obtenemos una tasa de unas 12.000 conversiones por segundo. Según el teorema del muestreo sólo podemos digitalizar señales cuyas componentes de frecuencia sean < 6 kHz. No obstante, a frecuencias mayores también pueden medirse valores eficaces mediante el Random Sampling. Sin embargo, el circuito de Sample-and-Hold para el verdadero ADC ha de ser lo suficientemente bueno. Especialmente, el intervalo temporal actual, en el cual se muestrea la tensión (tiempo de apertura), ha de ser lo más corto posible. En la hoja de datos del ATmega88 no se encuentra ninguna referencia específica. Tendremos que medir por nuestra cuenta a qué frecuencia el valor eficaz de la señal es lo suficientemente preciso.

Dicho y hecho: el autor ha medido una señal sinusoidal de 100 mVrms a la vez con el medidor RMS AVR y un osciloscopio digital Tek. Las amplitudes representadas en la tabla corresponden a frecuencias de hasta los 2 MHz. Hasta los 200 kHz obtenemos una alta precisión, hasta los 500 kHz tenemos un error en la amplitud del 10%, y hasta 1 MHz fácilmente un 30 por ciento.

Como puede verse en la medida, aparentemente uno puede escanear frecuencias de hasta varios cientos de kHz con relativa exactitud. Si asumimos una atenuación del 30% = 3 dB, podemos llegar hasta 1 MHz. Por lo tanto, nuestro medidor del valor eficaz no es tan malo. También hemos comprobado que el tiempo de apertura del controlador AVR es bastante corto, lo cual ayuda enormemente a la hora de digitalizar señales en la banda de onda larga y media mediante el submuestreo.

FrecuenciaValor

en el AVR (mV)

Osciloscopio Tek

(mV)

1 kHz 99,0 100,0

2 kHz 100,0 100,0

5 kHz 101,9 101,5

10 kHz 102,0 102,0

20 kHz 102 102,5

50 kHz 102 102,3

100 kHz 101 102,2

200 kHz 98,0 101,7

500 kHz 90,0 101,0

1 MHz 68,0 100,9

2 MHz 42,0 99,0

Personal Download for I © Elektor

74810

Page 66: Revista Elektor-linux Simplificado

66 05-2012 elektor

ALTA FRECUENCIA

utilizar un condensador variable doble de 2 x 265 pF, junto con las tres bobinas que tienen correspondientemente 200, 150 y 50 espiras (véase la tabla).

Y ahora, para embarcarnos en la caza de señales, hemos de ajustar y orientar a la vez la antena de ferrita. Lógicamente es mejor

terminar de ajustarla antes. Y ahora ya tene-mos todas las herramientas necesarias. Uti-lizamos nuestro generador de señal para proporcionar ondas sinusoidales de prueba (EXP-SinusGenerator-DDS-ASM-C-V01.c), con las que alimentamos una pequeña bobina de unas cuantas espiras y un diámetro de 30 mm (figura 11); está

listo nuestro emisor magnético de prueba.Es mejor ajustar nuestro circuito resonante receptor con la configuración exacta a la que trabajaremos posteriormente. Conec-tando el resonador a un osciloscopio se simplificará el trabajo. También hemos de conectar la antena activa a la tarjeta recep-tora y ejecutar como “software de recep-ción” el del voltímetro RMS, EXP-RMSme-ter-V01.c. En la figura 12 se ha represen-tado esquemáticamente.El emisor de prueba ahora está ajustado a la frecuencia deseada, como se describió en la parte 1 [1]. La bobina emisora se sitúa primero cerca de la varilla de ferrita. Utili-zando el condensador variable podemos obtener el punto máximo de resonancia. Para calibrar este máximo de forma aún más precisa, ahora tendremos que situar el emisor de prueba algo más lejos de la varilla de ferrita. Si el circuito resonante se ajusta bien, ¡ya nada se interpone en que podamos recibir la señal!

En la próxima edición continuaremos: entre otras cosas, experimentaremos con filtros, y además utilizaremos un PLL para obtener una frecuencia de alta precisión. ¡Y reci-biremos los partes marítimos del clima a 147,3 kHz!

(100182)

Enlaces en Internet

[1] www.elektor.es/100180

[2] www.elektor.es/100181

[3] www.elektor.es/100182

[4] www.ak-modul-bus.de

Generadorsinusoidal

L LC

Acoplamiento variableAmplificador

Antenade ferrita

U1

Urms

Figura 11. Ajuste del resonador de la antena de ferrita (montaje).

Figura 12. Ajuste del resonador de la antena de ferrita (diagrama).

Soporte y productos de Elektor

•Kit del generador de señal incluyendo la placa de circuito impreso y todos los componentes: # 100180-71

•Kit del receptor universal incluyendo la placa de circuito impreso y todos los componentes: # 100181-71

•Kit de la antena activa de ferrita incluyendo la placa de circuito impreso y todos los componentes: # 100182-71

•Kit incluyendo los tres anteriores: # 100182-72•Conversor BOB-FT232R USB-a-TTL, ya construido y verificado: #

110553-91

•Programador AVR por USB, placa de circuito impreso con los componentes SMD montados, más los otros componentes: # 080083-71

•Descarga gratuita del programa (ficheros hexadecimales y código fuente)

Todos los productos y descargas están disponibles a través de la página web para este artículo en:www.elektor.es/100181

Personal Download for I © Elektor

74810

Page 67: Revista Elektor-linux Simplificado

Subscribe now to the leading computer applications magazine specializing in embedded systems and design!

www.circuitcellar.com/subscription

Subscribe Now!

Select your personal subscription at

12 issues per year for just

Digital: $50 : : Print: $75 : : Combo (Print + Digital): $110

Naamloos-1 1 27-03-12 08:45

Personal Download for I © Elektor

74810

Page 68: Revista Elektor-linux Simplificado

68 05-2012 elektor

Analizador lógico de Elektor (1981)

Luc Vanhove (Bélgica)

Hace poco, durante una limpieza, encontré mi analizador lógico bajo el polvo. El aparato data de los años 80, mis años escolares, sólo que nunca tuve tiempo de construirle una bonita placa fron-tal. Cuando el aparato cayó entre mis manos, volvieron a aparecer muchos recuerdos, así que quise probarlo de nuevo.Después de buscar los cables correspondientes, que por casualidad, se encontraban todavía en el aparato, le conecté a un osciloscopio BEM016 (un paquete de construcciones de MBLE de los años 70). Para mi asombro, apareció directamente una forma de señal con una ampliación distribuida en ocho saltos, con información alea-toria por encima. Vamos a ver, sí, todavía tenía que surtirle de un disparador externo y ahí están, los ocho canales.He construido una gran parte del diseño de Elektor de 1981 según estaba descrito en la revista, pero adapté los circuitos con gadgets modernos que se utilizaban en aparatos comerciales de esa época. Estos circuitos, tales como interruptores táctiles, la configuración del reloj a través de un multiplexor y la representación de la frecuen-cia seleccionada, también aparecieron en Elektor. Además ofrecían 12 V y ±5 V en la sonda, para que las pruebas fueran más fáciles. También se aprovisionó a la sonda de unos comparadores dispara-dores Schmitt rápidos que permiten medir los integrados CMOS. Para aumentar la precisión del osciloscopio de almacenamiento digi-tal, se construyó el atenuador vertical. Todo esto requería de una potente fuente de alimentación estable, algo que tuve que diseñar yo mismo por completo.Por desgracia, es imposible encontrar la placa A/D de este diseño, pero a pesar de eso me gustaría profundizar en este gran proyecto que apareció en cinco partes, a saber:

• Analizador lógico 1ª parte: descripción - febrero de 1981• Analizador lógico 2ª parte: esquema - marzo de 1981• Analizador lógico 3ª parte: las placas - abril de 1981

• Osciloscopio de almacenamiento digital - mayo de 1981• Buffer de entrada para el analizador lógico - julio/agosto 1981

El funcionamiento resumidoLa entrada consta de un biestable de 8 bits (ver figura 1) controlado a través de un delay configurado a la frecuencia de muestreo de 50 ns o a una frecuencia variable entre 150 ns y 500 ns. La señal de entrada del circuito delay procede de un cristal de cuarzo de 4 MHz cuya frecuencia se divide dependiendo de la frecuencia seleccionada de muestreo. En mi caso no se utilizó un conmutador de múltiples posiciones, sino un integrado multiplexor. También dispone de la posibilidad de utilizar un reloj externo, con una opción de ajuste para seguir el flanco ascendente o descendente.La salida del divisor también está conectada a un contador de 8 bits preconfigurable (counter B) que empieza desde 0 en modo post tri-gger, desde 126 en modo center trigger y en 254 en modo pre tri-gger. Este contador determina el momento en el que se da la señal write enable a la memoria RAM.Las señales de salida del biestable de 8 bits están conectadas a las entradas de la memoria RAM y también a puertos EXOR (reconoce-dor de palabra) cuyas entradas pueden estar configuradas a uno, cero o un “no importa” lógico. El biestable FF1 se graba con la pala-bra de disparo configurada de esta forma (o con la ayuda de dos señales externas de disparo). También puede ser disparado o rese-teado manualmente.La información se guarda en la RAM después de que aparezca el dis-paro. El contador cuenta las muestras y este procedimiento se para en el momento en que la memoria se llena, es decir después de 256 pasos. Un segundo contador de 8 bits (counter A) que recibe su reloj de la frecuencia configurada de muestreo se encarga del direccio-namiento de la RAM. Después se pone la memoria en modo lectura a través de la salida de desbordamiento de counter B, que controla el biestable FF2; el contador pasa a una frecuencia fija por todas las células de la RAM. Esta información pasa a un multiplexor de 8 a 1 que corre por todos

Personal Download for I © Elektor

74810

Page 69: Revista Elektor-linux Simplificado

69elektor 05-2012

los canales y añade a cada flujo de bits un nivel DC a través un con-vertidor D/A, de modo que así tengamos la impresión de que haya ocho canales. Esto es una ilusión óptica, porque sólo utilizamos un único canal y el disparo externo del osciloscopio. Se necesita este disparo externo para ver y leer ocho canales de forma síncrona uno debajo del otro.También hay una segunda ramificación de las salidas de memoria la cual se necesita para el generador de seguimiento (reflejado en la figura 2; RAM, FF2 y counter A son los mismos de la figura 1). Que-remos seleccionar ocho veces un único bit de ocho flujos de datos y representar su valor hex. Hacemos esto mediante un contador que cuenta hacia arriba o hacia abajo. Un EXNOR compara este valor con la dirección de la RAM. En el momento en que los dos coinci-den, se genera un pulso de valor Z. Este pulso se puede entregar a la entrada de cilindro de Wehnelt del osciloscopio. Así puedes ver que los bits seleccionados se iluminan más intensamente. No todos los osciloscopios disponen de una entrada de cilindro de Wehnelt, por eso también se superpone este pulso en la salida del convertidor D/A, lo que resulta en una muestra de bit con un pulso hacia abajo cuando el bit seleccionado es ‘1’ o un pulso hacia arriba si es ‘0’. De esta manera podemos identificar bien si un flujo de bits está a nivel bajo o a nivel alto en caso de que el flujo no cambie de valor. Sin embargo hay otra manera de leer fácilmente el valor hex. Para eso se entregan también los niveles de las salidas de la RAM a un decodi-ficador BCD a siete segmentos. Este decodificador sólo leerá el valor en sus registros cuando aparezca el pulso de modulación Z a través de un biestable. Con el botón de reset a FF1 podemos colocar el pro-cedimiento de escritura en posición de inicio y este espera hasta que aparezca la condición de disparo configurada previamente.En las figuras 3, 4, 5, y 6 se puede ver la placa de memoria, la placa de entrada/disparo, la placa del generador de seguimiento y la ali-mentación del analizador respectivamente. Esta solución hardware tiene su límite en la velocidad de las memo-rias RAM disponibles en ese momento, es decir un tiempo de acceso de 250 ns.

2

1

Personal Download for I © Elektor

74810

Page 70: Revista Elektor-linux Simplificado

70 05-2012 elektor

Osciloscopio de almacenamiento digitalNo fue difícil construir un osciloscopio de almacenamiento digital partiendo de esta configuración. Para eso sólo hizo falta un módulo adicional que amplificase o atenuase la señal analógica a través de un atenuador tal y como se encuentra en un osciloscopio normal y la entrega a un convertidor A/D. Estos valores digitales se guardan en la RAM. Después de la grabación se activa el modo de lectura, para luego entregar las señales de salida de la memoria RAM a un con-vertidor D/A que reconstruye la señal analógica. Esta característica es muy interesante para señales que no son repetitivas, por tanto para fenómenos que ocurren una sola vez como cuando se arranca o apaga un circuito, o cuando quieres seguir una señal durante un periodo muy largo.

En aquella época un analizador lógico o un osciloscopio de almace-namiento digital eran impagables, pero este diseño de Elektor abrió puertas en la búsqueda de fallos o el testeo de circuitos digitales.Es un método bastante complejo construir un analizador lógico con tan sólo hardware. Un buen microcontrolador y unas páginas de software hubieron hecho que este proyecto fuera más sencillo, más pequeño y más ligero, pero esto era un tema muy difícil para un aficionado en 1981.

Cuando el aparato está conectado funciona de forma muy estable y el diseño es muy fiable; no te deja tirado, ni si quiera después de treinta años.

(120219)

Retrónica (Recuerdos de electrónica) es una columna mensual que cubre equipos electrónicos antiguos, incluyendo diseños legendarios de Elektor. Se agradecen contribuciones, sugerencias y peticiones; por favor, enviad un correo electrónico (email) a redacció[email protected]

6

4

5

3

Personal Download for I © Elektor

74810

Page 71: Revista Elektor-linux Simplificado

71elektor 05-2012

INFO & ENTRETENIMIENTO

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

6 2 7 C D 5 8 E 3 A 9 0 4 B F 1B A 8 5 2 3 1 9 D 4 E F C 0 7 6D E F 0 4 A 7 B 6 8 1 C 5 2 3 99 4 1 3 C F 6 0 2 5 7 B 8 E A DC 0 B 7 5 1 E 8 4 9 2 3 A D 6 F8 3 D 2 F B 9 4 A 0 C 6 E 1 5 7E F 4 1 3 6 0 A 5 7 B D 9 8 2 C5 9 A 6 7 C 2 D E F 8 1 3 4 B 0F B 9 A 8 4 C 1 0 3 6 7 D 5 E 27 1 E 8 6 2 D F C B 5 A 0 9 4 30 5 2 D 9 7 A 3 1 E F 4 B 6 C 83 6 C 4 0 E B 5 8 2 D 9 7 F 1 A1 8 0 B E D F 2 7 C 3 5 6 A 9 44 C 3 E A 8 5 6 9 1 0 2 F 7 D BA D 5 F 1 9 3 7 B 6 4 8 2 C 0 E2 7 6 9 B 0 4 C F D A E 1 3 8 5

¿Has afilado el lápiz y tienes la goma de borrar a mano? ¿No hay miembros de la familia gritando a tu alrededor u ofreciéndote constantemente malos consejos? ¿Estás en una silla cómoda? Bien, todos los sistemas están listos para un nuevo Hexadoku. Introduce los números correctos en el rompecabezas de abajo. Después, envíanos los que están en las casillas grises y entrarás automáticamente en el sorteo de uno de los cuatro bonos para la tienda de Elektor. ¡Diviértete!

El Hexadoku utiliza los números hexadecimales de 0 a F. Rellena el diagrama de 16 x 16 casillas de modo que todos los números hexade-cimales de 0 a F (es decir, 0…9, A…F) aparezcan una sola vez en cada fila, en cada columna y en el recuadro de 4x4 (marcados con líneas

en negrita). Ya hay algunos números rellenos en el crucigrama, que determinan su situación inicial. Entre todas las soluciones correctas recibidas, sorteamos cada mes un gran premio y tres premios de con-solación. Para ello, debes enviarnos los números de las casillas en gris.

Hexadoku Un rompecabezas con un toque electrónico

¡Resuelve el Hexadoku y gana!Las soluciones correctas recibidas de los lectores de Elektor participan automáticamente en el sorteo de cuatro bonos para la tienda de Elektor, uno de 100 € y tres de 50 €. Esperamos que estos premios animen a todos nuestros lectores a participar!

¡Participa!Por favor, envíanos tu solución (los números de las casillas grises) por correo electrónico a [email protected] – Asunto: hexadoku 05-2012 (por favor, cópialo exactamente). Incluye en el correo tu nombre com-pleto y tu dirección.

También puedes enviar tu respuesta por correo ordinario a: Redacción Elektor - Apdo. Correos 62011 – 28042 Madrid (España), o al fax +34 911019396. Envíalo antes del 1 de junio de 2012.

Ganadores del sorteoLa solución del Hexadoku de Febrero de 2012 es: 862DF.

El Bono de 100 € para la tienda de Elektor es para: Ron Hodges (USA).Y los 3 Bonos de 50 € son para: Eric Chamouard (Francia), Esko Viiru (Finlandia) y Pascual Alagón Luna (España).

¡Enhorabuena a todos!

Personal Download for I © Elektor

74810

Page 72: Revista Elektor-linux Simplificado

72 05-2012 elektor

TIENDA LIBROS, CD-ROMs, DVDs, KITS Y MÓDULOS

Precios y descripciones sujetos a cambios.

Pisando Fuerte¡Un mundo de electrónicaen una única tienda!

La tecnología de procesamiento de imagen sobre PC

Design your own PC Visual Processing and Recognition System in C#Este libro (en inglés) está dirigido a Ingenieros, Científi cos y afi cionados con habilidades de programa-

ción desarrolladas o con mucho interés en la tecnología de procesamiento de imagen sobre PC. Este

libro es una exhaustiva guía práctica escrita utilizando Microsoft C# y programación orientada a objetos.

Se centra principalmente en las modernas técnicas de procesamiento de señal con útiles y prácticos

ejemplos de aplicación para producir software de procesamiento de imagen de alta calidad. El análisis

comienza con una revisión detallada de los fundamentos del procesamiento de imagen. Continua ex-

plicando y explorando los usos prácticos de dos bibliotecas de procesamiento de imagen de código

abierto altamente sofi sticadas y descargables gratuitamente; AForge.NET y Emgu.CV, que utilizan la

tecnología puntonet dentro del entorno Microsoft Visual Studio. El código utilizado en los ejemplos está

disponible – sin cargo alguno – en la página web de soporte de Elektor; puedes crear y desarrollar fácil-

mente tus propios ejemplos para probar los conceptos y técnicas explicadas.

307 páginas • ISBN 978-1-907920-09-7 • 39,95 €

Fully elaborated electronics projects

309 CircuitsThe present tenth edition of the popular

‘30x Circuits’ series of books once again

contains a comprehensive variety of cir-

cuits, sub-circuits, tips and tricks and de-

sign ideas for electronics. Among many

other inspiring topics, the following cat-

egories are well presented in this book:

test & measurement; RF (radio); comput-

ers and peripherals; audio & video; hobby

and modelling; microcontrollers; home &

garden; etcetera.

432 pages • ISBN 978-0-905705-69-9

£19.95 • US$ 39.95

Del Laboratorio a tu cerebro directamente

Mastering the I²C BusLabWorX es una colección de libros cada

uno de los cuales trata un tema particular

de la electrónica. Este libro (en inglés) te

guía en un viaje exploratorio por el Bus I2C

y sus aplica cio nes. Además del protocolo

del Bus se presta mucha atención a las

aplicaciones prácticas y al diseño de un

sistema sólido. Se tratan con detalle los

tipos más comunes de chips compati-

bles con I2C. Hay disponibles dos placas de

experimentación que te permitirán el

desarrollo rápido de prototipos. Estas pla-

cas se completan con una sonda USB a I2C

y un sistema de software para controlar

dispositivos I2C desde tu ordenador.

248 páginas • ISBN 978-0-905705-98-9 • 34,50 €

Lib

ros

Soluciones creativas

311 Circuits311 Circuits es el duodécimo volumen

(en inglés) de la renombrada serie 30X de

Elektor. Este libro contiene circuitos, ideas

de diseño, consejos y trucos de todas las

áreas de la electrónica: audio & video,

ordenadores & microcontroladores, radio,

hobby & modelismo, casa & jardín, fuentes

de alimentación & baterías, pruebas &

medidas, software, sin olvidar una sección

de “varios” para todo aquello que no

encaja en ninguna de esas categorías.

311 Circuits ofrece muchas soluciones

completas así como útiles puntos de

partida para tus propios proyectos.

420 páginas • ISBN 978-1-907920-08-0 • 34,50 €

L l í d i d i b PC

Oferta por tiempo limitado

para suscriptores:

5 € DE DESCUENTO

www.elektor.es/mayo

Nuevo

ELEK ES1205 shop.indd 72 22-03-12 20:39

Personal Download for I © Elektor

74810

Page 73: Revista Elektor-linux Simplificado

73elektor 05-2012

Más Información en la página web de Elektor:

www.elektor.esElektor International Media Spain, S.L.Apartado de Correos 6201128042 MadridEspañaTel.: +34 91 101 93 95Fax: +34 91 101 93 96Email: [email protected]

Una guía práctica del diseño de procesadores

Microprocessor Design using Verilog HDLSi tienes las herramientas adecuadas, dise-

ñar un microcontrolador no debería ser

complicado. El lenguaje de descripción de

hardware (Hardware Description Langu -

age o HDL) Verilog es una de esas herra-

mientas. Puede permitirte representar,

simular y sintetizar un diseño electrónico,

y así incrementar tu productividad redu-

ciendo la carga de trabajo asociada a un de-

terminado proyecto. Este libro (en inglés)

es una guía práctica del diseño de procesa-

dores en el mundo real. Presenta el Verilog

HDL de manera fácilmente digerible y sirve

como introducción detallada sobre cómo

reducir una arquitectura de ordenador y el

set de instrucciones en la práctica. Será

guiado a lo largo del proceso de diseño de

un microprocesador de principio a fin,

dejando al descubierto los temas esen cia-

les que van de la escritura en Verilog a la

depuración y las pruebas.

337 páginas • ISBN 978-0-9630133-5-4 • 34,50 €

CD

-ROM

s y DV

Ds

Incluye gratuitamente el compilador mikroC en CD-ROM

Controller Area Network ProjectsEste libro (en inglés) está escrito para estu-

diantes, ingenieros, afi cionados y para todo

aquel que esté interesado en aprender

más sobre el bus CAN y sus aplicaciones.

El objetivo de este libro es enseñarte los

principios básicos de las redes CAN además

del desarrollo sistemas basados en micro-

controlador utilizando el bus CAN. Apren-

derás cómo diseñar nodos de bus CAN

basados en microcontroladores, cómo

con struir un bus CAN, cómo desarrollar

programas de alto nivel y a intercambiar

datos en tiempo real sobre el bus. Aprende-

rás también cómo construir hardware con

microcontroladores y a conec tarlo con

LEDs, LCDs y convertidores A/D.

260 páginas • ISBN 978-1-907920-04-2 • 34,50 €

elcompiladormikroCenCD RO

Bestseller

Sistema PC Controlado por Voz

Design your own PC Voice Control SystemEste libro (en inglés) detalla un proyecto

que te permitirá instruir a tu ordenador

mediante tu voz y conseguir que con -

trole dispositivos electrónicos, te diga

la hora, consiga las valoraciones de tus

acciones, la información del tiempo, etc.

y te lo cuente todo con una voz humana

natural. Te muestra la tecnología para

interactuar con tu ordenador mediante

la voz

216 páginas • ISBN 978-1-907920-07-3 • 34,50 €

Base de datos de Componentes Elektor

CD ECD 6Este CD-ROM te permite acceder fácilmen-

te a los datos sobre más de 70.000 compo-

nentes. Consta de ocho bases de datos que

comprenden circuitos integrados, transis-

tores, diodos y optpacopla dores. Incluye

once aplicaciones de cálculo de, por ejem-

plo, resistencia serie de diodos zener, regu-

ladores de tensión y AMV’s. ECD facilita el

acceso a los datos unos de 7.800 circuitos

integrados, más de 35.600 transistores,

FET, tiristores y triacs, cerca de 25.000 dio-

dos y 1.800 op to acopladores. Todas las

aplicaciones son totalmente interactivas,

permitiendo al usuario añadir, editar y

completar los datos de los componentes.

ISBN 978-90-5381-258-7 • 29,50 €

Todos los artículos del año 2011 en DVD-ROM

DVD Elektor 2011El DVD-ROM “volumen anual” se encuen-

tra entre los productos más populares de

Elektor. El DVD Elektor 2011 contiene to-

dos los artículos editoriales publicados

en el Volumen 2011 de las publicaciones

en español, inglés, holandés, francés

y alemán de la revista Elektor. Con el

programa Adobe Reader suministrado,

los artículos se presentan con el mismo

diseño con el que originalmente los

encontramos en la revista. Los DVD/

CD-ROMs cuentan con un potente motor

de búsqueda y dan la posibilidad de

editar los diseños de las PCBs con un pro-

grama gráfico u obtener una copia im-

presa a resolución de impresora.

ISBN 978-90-5381-276-1 • 27,50 €

Bestseller

ELEK ES1205 shop.indd 73 22-03-12 20:39

Personal Download for I © Elektor

74810

Page 74: Revista Elektor-linux Simplificado

74 05-2012 elektor

TIENDA LIBROS, CD-ROMs, DVDs, KITS Y MÓDULOS

Ú

Precios y descripciones sujetos a cambios.

Kits y M

ód

ulos

CD

-RO

Ms

y D

VD

s

Radio Defi nida por Software con AVR(Marzo 2012)

Este paquete consta de las tres placas aso-

ciadas con la serie de artículos de la revistas

Elektor Radio Defi nida por Software con

AVR. La primera placa, que incluye un

ATTINY2313, un oscilador de 20 MHz y un

CDA R-2R, será utilizada para hacer un ge-

nerador de señal. La segunda placa sacará

señales de la nada. Contiene todo el hard-

ware necesario para hacer una radio digital

defi nida por software (SDR), con un inter-

faz RS-232, una pantalla LCD y un VXCO de

20 MHz (oscilador de cristal controlado por

tensión), que se puede enganchar a una

señal de referencia. La tercera placa pro-

porciona una antena activa de ferrita.

Kit de componentes Generador de Señal +

Re cep tor Universal + Antena Activa:

PCBs y todos los componentes +

Convertidor USB/Serie BOB-FT232R

Art.# 100182-72 • 119,95 €

Conmutando por RS485(Abril 2012)

El proyecto del ElektorBus muestra lo inte-

resante que resulta la automatización domés-

tica. Esta tarjeta compacta capaz de conmu-

tar dos cargas a 230 V. Aparte, dos entradas

del controlador por medio de clemas super-

visan el estado de los interruptores. Además,

el software es compatible con ElektorBus.

¡Un complemento más para ser controlado

mediante un PC, tablet o smartphone!

Módulo Relés RS485, montado y

comprobado

Art.# 110727-91 • 44,95 €

AndroPod(Febrero 2012)

Pantalla táctil de alta resolución, gran po-

tencia de cálculo, características wireless y

telefónicas: los smartphones y tablets con

Android están predestinados a server como

centrales de control de nuestros propios

proyectos. Hasta ahora ha sido un poco di-

fícil conectar las tabletas y Smartphones

basados en Android con circuitería externa

que nos permita a los electrónicos acceder

a las señales con propósitos de control. La

tarjeta interfaz AndroPod de Elektor, que

añade un puerto serie TTL y un puerto

RS485, cambia esta situación.

Módulo Andropod con extensión RS485

Art.# 110405-91 • 59,95 €

R di D fifi

AndroPod

Medidor de radiación mejorado(Noviembre 2011)

El dispositivo puede utilizarse con distintos

sensores para medir la radiación gamma y

alfa. Es apto para medidas durante largo

tiempo y el análisis de probetas de baja ac-

tividad. En comparación con un contador

Geiger, un fotodiodo ofrece valores de cero

más bajos, y la radiación de pequeñas

muestras se aprecia con mayor facilidad.

Podemos testear probetas de forma más

precisa que con un contador Geiger. Me-

diante un software de PC opcional puede

obtenerse el espectro energético y sacar

conclusiones del objeto a examen.

Kit de componentes incluyendo display

y controlador programado

Art.# 110538-71 • 39,95 €

d d d d ó

iddaaa pppooridddddd

Bestseller

Circuitos, ideas, consejos y trucos de Elektor

CD 1001 CircuitsEste CD-ROM contiene más de 1000 circui-

tos, ideas, consejos y trucos de las ediciones

de Circuitos del Verano de Elektor desde el

2001 al 2010, complementados con otros

varios pequeños proyectos, incluyendo to-

dos los diagramas de los circui tos, descrip-

ciones, listas de materiales y diseños de

placas a tamaño real. Los artículos (en in-

glés) están agrupados alfabéticamente en

nueva secciones dife rentes: audio & video,

ordenador & microcontroladores, hobby &

modelismo, casa y jardín, alta frecuencia,

fuentes de alimen tación, robótica, pruebas

& medidas y por supuesto una sección vari-

ada para todo aquello que no encaja en nin-

guna de esas categorías. Se puede buscar

en los texto y las listas de materiales con las

funciones de búsqueda de Adobe Reader.

ISBN 978-1-907920-06-6 • 39,50 €

it id j t d El kt

Todos los artículos de la serie ATM18-CC2 y más

CD ATM18 CollectionEn este CD-ROM, ideal para principiantes y

usuarios experimentados, encontrarás una

recopilación de todos los artículos de la serie

ATM18-CC2 publicados en la revista Elektor;

desde el Lector RFID al Bluetooth pasando

por el ordenador de que juega al ajedrez. En

total, más de 25 proyectos basados en la po-

pular placa ATM18 de Elektor. Además de los

archivos PDF de los artículos (en cinco idio-

mas), el CD contiene el software de cada uno

de los proyectos, los diseños de las placas en

formato PDF, el curso de programación Bas-

com AVR y documen tación complementaria.

ISBN 978-0-905705-92-7 • 29,50 €

ELEK ES1205 shop.indd 74 22-03-12 20:39

Personal Download for I © Elektor

74810

Page 75: Revista Elektor-linux Simplificado

75elektor 05-2012

Haga su pedido “online” enwww.elektor.es/tiendao hágalo por fax o enviando un email a [email protected]

Elektor International Media Spain, S.L.Apartado de Correos 6201128042 MadridEspañaTel. +34 91 101 93 95Fax +34 91 101 93 96Email: [email protected]

Los más vendidos

Bo

oks

CD

-RO

Ms

Últ

imos

Pro

du

ctos

Precio (€)

Lib

ros

Kit

s y

Mód

ulos

1

2

3

4

5

1

2

3

4

5

1

2

3

4

5

CD

-RO

Ms

y D

VD

s

Controller Area Network ProjectsISBN 978-1-907920-04-2 ................... 34,50 €

Microprocessor Design using Verilog HDLISBN 978-0-9630133-5-4 .................... 34,50 €

Mastering the I²C BusISBN 978-0-905705-98-9 ................... 34,50 €

311 CircuitsISBN 978-1-907920-08-0 .................... 34,50 €

Design your own PC Voice Control SystemISBN 978-1-907920-07-3 .................... 34,50 €

DVD Elektor 2011ISBN 978-90-5381-276-1 .................... 27,50 €

DVD Elektor desde 1998 a 2007ISBN 978-90-5381-241-9 ................... 59,00 €

CD 1001 CircuitsISBN 978-1-907920-06-6 ..................... 39,50 €

CD ECD 6ISBN 978-90-5381-258-7 ..................... 29,50 €

DVD Wireless ToolboxISBN 978-90-5381-268-6 ..................... 32,50 €

Radio Defi nida por Software con AVRArt.# 100182-72 ............................... 119,95 €

Convertidor USB/Serie BOB-FT232RArt.# 110553-91 ................................. 15,00 €

Medidor de radiación mejoradoArt.# 110538-71 ................................. 39,95 €

Curso de audio DSPArt.# 110001-92 ............................... 149,95 €

¡Que viene el bus! Art.# 110258-91 ................................. 24,95 €

ód

l

Mayo 2012 (N° 383)

+ + + N u e v o s P r o d u c t o s d e M a y o : V i s i t a w w w . e l e k t o r. e s + + +

Abril 2012 (N° 382)

Panel táctil con LED

070558-1 .......Placa de circuito impreso control .................................................. 19,15

070558-2 .......Placa de circuito impreso LEDs ...................................................... 19,15

Radio Defi nida por Software con AVR (2)

100181-1 .......Placa de circuito impreso .............................................................. 37,32

100181-71 .....Kit de componentes Receptor Universal:

PCB y todos los componentes ....................................................... 59,95

100182-72 .....Kit de componentes Generador de Señalesr + Receptor Universal +

Antena Activa: PCBs y todos los componentes +

Convertidor USB/Serie BOB-FT232R ........................................... 119,95

110727-1 .......Placa de circuito impreso .............................................................. 19,29

110727-91 ..... Módulo Relés RS485, montado y comprobado ............................. 39,95

110673-1 .......Placa de circuito impreso .............................................................. 29,61

110673-41 ..... Microcontrolador programado ATTINY2313-20PU ......................... 9,95

Preamplifi cador 2012 (1)

110650-1 .......Placa de circuito impreso Entrada de Linea/Tono/Volumen ............ 21,42

Marzo 2012 (N° 381)

Radio Defi nida por Software con AVR (1)

080083-71 .....Programador USB-AVR:

SMD montados en la placa y todos los componentes ..................... 32,00

100180-71 .....Kit de componentes Generador de Señal:

PCB y todos los componentes ....................................................... 29,95

100181-71 .....Kit de componentes Receptor Universal:

Kit de PCB y todos los componentes .............................................. 74,95

100182-71 .....Kit de componentes Antena Activa:

Kit de PCB y todos los componentes .............................................. 29,95

100182-72 .....Kit de componentes Generador de Señalesr + Receptor Universal +

Antena Activa: PCBs y todos los componentes +

Convertidor USB/Serie BOB-FT232R ........................................... 119,95

110553-91 .....Placa BOB montada y comprobada ............................................... 15,00

Controlador inteligente de ventilador de PC

100160-41 .....Microcontrolador Atmega168PA-PU programado ........................ 12,50

AndroPod (2)

110258-91 .....Módulo Convertidor USB/RS485 ................................................... 24,95

110405-91 .....Módulo Andropod con extensión RS485 ....................................... 59,95

110553-91 .....Placa BOB montada y comprobada ............................................... 15,00

120103-92 .....Cable USB 2.0 A macho a USB micro-B 5 pines, negro de 1.8m ......... 3,95

120103-94 .....Fuente de alimentación 5V / 1A (5W) cin conector micro-USB ......... 8,95

Febrero 2012 (N° 380)

AndroPod (1)

110258-91 .....Módulo Convertidor USB/RS485 ................................................... 24,95

110405-91 .....Módulo Andropod con extensión RS485 ....................................... 59,95

110553-91 .....Placa montada y comprobada ‘USB-FT232R breakout-board’ ........ 15,00

120103-92 .....Cable negro 1.8m USB 2.0 A macho a USB micro-B 5 pines ............... 3,95

120103-94 .....Fuente de Alimentación 5V / 1A (5W) con conector micro-USB ........ 8,95

Pico C-Plus y Pico C-Super

110687-41 .....Microcontrolador programado Pico C-Plus fi rmware

(ATTINY2313-20PU) ....................................................................... 4,95

110687-42 .....Microcontrolador programado Pico C-Super fi rmware

(ATTINY2313-20PU) ....................................................................... 4,95

Electrónica para Principiantes (2)

ELEX-1 ............Placa de circuito impreso Universal ................................................. 5,50

ELEX-2 ............Placa de circuito impreso Universal versión doble ............................ 9,95

Enero 2012 (N° 379)

Interfaz para sonda lambda de banda ancha

110363-41 .....Microcontrolador ATMEGA8-16AU programado ............................. 9,95

ELEK ES1205 shop.indd 75 22-03-12 20:39

Personal Download for I © Elektor

74810

Page 76: Revista Elektor-linux Simplificado

76 05-2012 elektor

INFO & MERCADO PRÓXIMO MES ElEktOR

los títulos y los contenidos de la revista están sujetos a modificación; por favor, verifica el contenido en “revista” en www.elektor.es

Contacto Teléfono: +34 91 101 93 95Fax: +34 91 101 93 96E mail: [email protected]

Mercado scopes and more

Great Value inTesT & MeasureMenT

Elektor tiene una sección para ayudar a sus clientes a promocionar sus negocios, Mercado – una sección permanente de la revista donde puede mostrar sus productos y servicios.

Medidor de Distancia para NadadoresEs usual verlos en los parques: el podómetro, un pequeño dispositivo que cuenta el número de pasos que han corrido los que hacen footing. Que nosotros sepamos, aún no hay nada parecido para los nadadores. Nuestro diseño te permitirá construir un ‘acuóme-tro’ (si es que se puede llamar así), que cuenta el número de movimientos de cabeza de los nadadores. Es circuito es sencillo y principalmente consiste en un microcontrolador y un módulo de acelerómetro.

Heliostato Un heliostato es un dispositivo para seguir al sol en movimiento por el cielo. De esta forma serás capaz de mantener la máxima cantidad de luz solar para absorberla en una super-ficie, tomar una serie de fotografías de un planeta en movimiento o detectar un satélite para tener una recepción optima con una antena parabólica. Este proyecto que presenta-remos en la edición de junio de 2012 describe las líneas generales de un heliostato hecho con dos servomotores. Con la ayuda de un modelo que calcula constantemente la posi-ción del sol como función del tiempo y posición en la tierra se mueven los servos de forma que siempre apuntan en dirección al sol.

Termómetro / Higrómetro con NixieLos circuitos con tubos Nixie destacan en todas partes, presumiblemente debido a la espe-cial atracción que produce el mágico resplandor de los tubos iluminados. En la edición de junio de 2012 presentaremos otro diseño con cuatro de estos tubos. Este mes presenta-mos un circuito que permite medir tanto la temperatura como la humedad. En términos de hardware el proyecto consiste en un microcontrolador PIC, un sensor de la humedad del aire SHT21, un elevador construido en torno a un MC34063 y el control de los Nixies con el bueno y antiguo 74141.

Consigue una suscripción gratuita a E-weekly ahora

¿Quieres estar al día en electrónica y tecnología de ordenadores?¿Estás buscando sugerencias útiles, consejos y ofertas interesantes? Suscríbete ahora a E-weekly, el boletín electrónico gratuito de Elektor.

Tus beneficios: Las últimas noticias sobre electrónica en tu email cada viernes. Acceso gratuito al Archivo de Noticias de la web de Elektor. Podrás acceder, responder y añadir nuevos temas en nuestro foro.

Registrate hoy en www.elektor.es/boletin

Personal Download for I © Elektor

74810

Page 77: Revista Elektor-linux Simplificado

utilizando Ensamblador, C y Flowcode

Más información y pedidos en

www.elektor.es/cursodistancia

CURSO A DISTANCIA

En este curso (en Inglés) aprenderá cómo programar un micro-

controlador embebido. Comenzaremos por lo más básico y entrare-

mos en muchos detalles. No puede aprender software sin entender

el hardware, por lo que también veremos de cerca los componentes

y los esquemas. Al fi nalizar el curso será capaz de diseñar

sus propias aplicaciones embebidas y de escribir

el software apropiado para ellas.

Contenidos:

• Bases

• Puertos Digitales

• Comunicación Serie

(RS232)

• Señales Analógicas

• Modulación por ancho

de pulso (PWM)

• Timers/Contadores/

Interrupciones

• Memoria

• Display LCD

• Comunicación I²C

• Comunicación SPI

• Comunicación USB

• Confi guración (Fusibles)

• Respuestas a los ejercicios

• Apéndice

Programación de Micro controladores PIC Embebidos

El paquete del curso:

• Carpeta de Anillas con el material didáctico (747 páginas en Inglés)

• CD-ROM con el software y los archivos de ejemplo

• Placa de Aplicación • Soporte en el Foro de Elektor

(en Inglés)• Certifi cado Elektor

Precio: 445,00 € 395,00 €

Atención: para seguir este curso es necesario disponer de hardware de E-blocks que puede que ya tenga (en parte). Todos los productos están disponibles individualmente pero también como conjunto a un precio especial. Por favor, visite www.elektor.es/cursodistancia para más información.

Certificado

incluye

nes embebidas y de esccribir

d

s

e(

•••• CCClo

•• PPPPPPPPPP•••• SSSS

((((((((((••••• CCCCCC

PPre

AAteAAAteAAAAAteendisdisdisdisisdisdissdisdididisdisii pppppppppppquequequequequeesttestestestestestestesteste áááátamtamtamtamamtamtammtamtamamammPorPorPorPorPo ffff

nes embebidas y de esccribir

o para ellas.

s

a maaaaaa ás infinfinfnformormormormorormaaaparparaarparpaparparaaapap aa

Oferta especial:

50 € DE DESCUENTO

ELEK ES1205 A4 Curso distancia.indd Sec1:7 28-03-12 11:13

Personal Download for I © Elektor

74810

Page 78: Revista Elektor-linux Simplificado

INSTRUCCIONES DE PEDIDO, GASTOS DE ENVÍO

Todos los pedidos deberán ser enviados por correo electrónico a la dirección '[email protected]', por fax al +34 911019396 o porcorreo postal a nuestra dirección de Madrid. Tambien puede efectuar su pedido Online en la página: www.elektor.es/tienda.

CÓMO PAGAR

Todos los pedidos han de ir acompañados por el pago total, incluidos los gastos de envío anteriormente establecidos o indicados por el personal del Servicio de Atención al Cliente.Transferencia bancaria a la cuenta de La Caixa: 2100 1135 64 0200152440 a nombre de Elektor International Media Spain, S.L. IBAN: ES45 2100 1135 6402 0015 2440, BIC: CAIXESBBXXXImportante: indicar en la transferencia el nombre, apellidos y dirección.Tarjeta de crédito VISA y MasterCard pueden ser procesadas por correo, correo electrónico, web, fax y teléfono. Para su seguridad, los pedidos Online en nuestra web se realizan bajo la protección de conexiones seguras SSL.

COMPONENTES

Los componentes para los proyectos aparecidos en Elektor están normalmente disponibles en algunos de los anunciantes de la revista. Si se prevén dificultades en el suministro de alguno de los componentes, se indicará en el artículo algún proveedor que pueda sumini-strarlo. Sin embargo, tenga en cuenta que los porveedores indicados no tienen porque ser únicos.

TÉRMINOS Y CONDICIONES

Envío. Aunque haremos todo lo posible para que su envío sea despachado en el plazo de 2-3 semanas desde su recepción, no podemos garantizar este plazo para todos los pedidos. Devoluciones. Las mercancías defectuosas o las enviadas erróneamente pueden ser devueltas para su susti tución o reembolso pero, para ello, es necesario tener previamente nuestro consentimiento. Todas la mercancías devueltas deben estar empaquetas de manera segura en bolsa acolchada o caja, adjuntando una carta en la que se indique claramente el número de envío. Si las mercancías son devueltas por un error de nuestra parte, le reembolsaremos el porte de devolución. Mercancías dañadas. La reclamaciones por mercancías dañadas deben ser recibidas en nuestra dirección de Madrid en un plazo de 10 días (España), 14 días (Europa) o 21 días (resto del mundo). Pedidos cancelados. Todos los pedidos cancelados estarán sujetos a un cargo del 10% con un mínimo de 5,00 w. Patentes. Puede existir protección bajo patente de los circuitos, dispositivos, componentes y otras cosas descritas en nuestros libros y revistas. Elektor no acepta respon sabilidad alguna por ausencia de determinación de tales patentes u otras protecciones. Derechos de autor (Copyright). Todos los dibujos, fotografías, artículos, placas de circuito impreso, circuitos integrados programados, CD-ROM o portadores de software publicados en nuestros libros y revistas (diferentes de los anunciados por terceros) están protegidos por derechos de autor y no pueden ser reproducidos o difundidos total o parcialmente de ninguna manera ni por ningún medio, incluidos las fotocopias y grabaciones, sin el previo consentimiento por escrito de Elektor. Dicho consentimiento escrito es también necesa-rio antes de que cualquier parte de esas publicaciones sea almacenado en sistemas de recuperación de cualquier naturaleza. No obstante lo dispuesto anteriormente, las placas de circuito impreso se pueden fabricar para uso privado y personal sin necesidad del citado permiso. Limitación de respon sa bilidad. Elektor no será responsable por contrato, agravio o cualquier otra circunstancia, de cualquier pérdida o daño sufrido por el comprador sea cual sea o se deriven de, o en conexión con, el suministro de mercancías descritas o, a opción de Elektor, reembolsar el importe al comprador de cualquier dinero pagado en relación con los productos. Derecho. Cualquier asunto relacionado con el suministro de mercancías y servicios por Elektor estará determinado en todos sus aspectos por las leyes españolas.

CÓMO PAGAR

Transferencia bancaria a la cuenta de La Caixa: 2100 1135 64 0200152440 a nombre de Elektor International Media Spain, S.L. IBAN: ES45 2100 1135 6402 0015 2440BIC: CAIXESBBXXXImportante: indicar nombre, apellidos y dirección en la transferencia.

Tarjeta de crédito VISA y MasterCard pueden ser procesadas por correo, correo electrónico, web, fax y teléfono. Para su seguridad, los pedidos Online en nuestra web se realizan bajo la protección de conexiones seguras SSL.

CONDICIONES DE LA SUSCRIPCIÓN

La suscripción estandár es de 12 meses. Si durante este plazo de suscripción se produce un cambio permanente de dirección y ello conlleva la necesidad de realizar el envío a través de un servicio más caro, no te cobraremos los gastos adicionales. En caso contrario, si el cambio de dirección nos permite contratar un servicio más barato, no te reembolsamos la diferencia y tampoco se extenderá el plazo de suscripción.

Los estudiantes pueden obtener un discuento de un 20% del precio normal de una suscripción anual siempre que esté acompañada de una fotocopia del carnet de estudiante. Por favor envíalo por fax (+34 91 101 93 96) o correo electrónico ([email protected]). Para estudiantes, el coste de la suscripción estandar es de 50,80 w y el de la suscripción plus es de 68,30 w.La suscripción para estudiante es incompatible con el regalo de suscripción. Estas promociones no son acumulables.

El plazo normal de la primera entrega, es de cuatro semanas a par-tir de la fecha de la recepción del pedido.

La cancelación de una suscripción está sujeta a un cargo de un 25% (veinticinco por ciento) del precio total o 12,50 w, o sea, la cantidad mayor, más los gastos de copias ya envíadas. No está permitido cancelar una suscripción después del sexto mes.

TARIFAS PARA SUSCRIPCIONES ANUALES

Estándar PlusEspaña 63,50 w 81,00 w

Islas Canarias 69,50 w 87,00 w

Europa 91,50 w 109,00 w

Otros países 122,50 w 140,00 w

ELEK ES1204 Bestelkaart.indd 2 29-02-12 08:13

Personal Download for I © Elektor

74810

Page 79: Revista Elektor-linux Simplificado

INSTRUCCIONES DE PEDIDO, GASTOS DE ENVÍO

Todos los pedidos deberán ser enviados por correo electrónico a la dirección '[email protected]', por fax al +34 911019396 o porcorreo postal a nuestra dirección de Madrid. Tambien puede efectuar su pedido Online en la página: www.elektor.es/tienda.

CÓMO PAGAR

Todos los pedidos han de ir acompañados por el pago total, incluidos los gastos de envío anteriormente establecidos o indicados por el personal del Servicio de Atención al Cliente.Transferencia bancaria a la cuenta de La Caixa: 2100 1135 64 0200152440 a nombre de Elektor International Media Spain, S.L. IBAN: ES45 2100 1135 6402 0015 2440, BIC: CAIXESBBXXXImportante: indicar en la transferencia el nombre, apellidos y dirección.Tarjeta de crédito VISA y MasterCard pueden ser procesadas por correo, correo electrónico, web, fax y teléfono. Para su seguridad, los pedidos Online en nuestra web se realizan bajo la protección de conexiones seguras SSL.

COMPONENTES

Los componentes para los proyectos aparecidos en Elektor están normalmente disponibles en algunos de los anunciantes de la revista. Si se prevén dificultades en el suministro de alguno de los componentes, se indicará en el artículo algún proveedor que pueda sumini-strarlo. Sin embargo, tenga en cuenta que los porveedores indicados no tienen porque ser únicos.

TÉRMINOS Y CONDICIONES

Envío. Aunque haremos todo lo posible para que su envío sea despachado en el plazo de 2-3 semanas desde su recepción, no podemos garantizar este plazo para todos los pedidos. Devoluciones. Las mercancías defectuosas o las enviadas erróneamente pueden ser devueltas para su susti tución o reembolso pero, para ello, es necesario tener previamente nuestro consentimiento. Todas la mercancías devueltas deben estar empaquetas de manera segura en bolsa acolchada o caja, adjuntando una carta en la que se indique claramente el número de envío. Si las mercancías son devueltas por un error de nuestra parte, le reembolsaremos el porte de devolución. Mercancías dañadas. La reclamaciones por mercancías dañadas deben ser recibidas en nuestra dirección de Madrid en un plazo de 10 días (España), 14 días (Europa) o 21 días (resto del mundo). Pedidos cancelados. Todos los pedidos cancelados estarán sujetos a un cargo del 10% con un mínimo de 5,00 w. Patentes. Puede existir protección bajo patente de los circuitos, dispositivos, componentes y otras cosas descritas en nuestros libros y revistas. Elektor no acepta respon sabilidad alguna por ausencia de determinación de tales patentes u otras protecciones. Derechos de autor (Copyright). Todos los dibujos, fotografías, artículos, placas de circuito impreso, circuitos integrados programados, CD-ROM o portadores de software publicados en nuestros libros y revistas (diferentes de los anunciados por terceros) están protegidos por derechos de autor y no pueden ser reproducidos o difundidos total o parcialmente de ninguna manera ni por ningún medio, incluidos las fotocopias y grabaciones, sin el previo consentimiento por escrito de Elektor. Dicho consentimiento escrito es también necesa-rio antes de que cualquier parte de esas publicaciones sea almacenado en sistemas de recuperación de cualquier naturaleza. No obstante lo dispuesto anteriormente, las placas de circuito impreso se pueden fabricar para uso privado y personal sin necesidad del citado permiso. Limitación de respon sa bilidad. Elektor no será responsable por contrato, agravio o cualquier otra circunstancia, de cualquier pérdida o daño sufrido por el comprador sea cual sea o se deriven de, o en conexión con, el suministro de mercancías descritas o, a opción de Elektor, reembolsar el importe al comprador de cualquier dinero pagado en relación con los productos. Derecho. Cualquier asunto relacionado con el suministro de mercancías y servicios por Elektor estará determinado en todos sus aspectos por las leyes españolas.

CÓMO PAGAR

Transferencia bancaria a la cuenta de La Caixa: 2100 1135 64 0200152440 a nombre de Elektor International Media Spain, S.L. IBAN: ES45 2100 1135 6402 0015 2440BIC: CAIXESBBXXXImportante: indicar nombre, apellidos y dirección en la transferencia.

Tarjeta de crédito VISA y MasterCard pueden ser procesadas por correo, correo electrónico, web, fax y teléfono. Para su seguridad, los pedidos Online en nuestra web se realizan bajo la protección de conexiones seguras SSL.

CONDICIONES DE LA SUSCRIPCIÓN

La suscripción estandár es de 12 meses. Si durante este plazo de suscripción se produce un cambio permanente de dirección y ello conlleva la necesidad de realizar el envío a través de un servicio más caro, no te cobraremos los gastos adicionales. En caso contrario, si el cambio de dirección nos permite contratar un servicio más barato, no te reembolsamos la diferencia y tampoco se extenderá el plazo de suscripción.

Los estudiantes pueden obtener un discuento de un 20% del precio normal de una suscripción anual siempre que esté acompañada de una fotocopia del carnet de estudiante. Por favor envíalo por fax (+34 91 101 93 96) o correo electrónico ([email protected]). Para estudiantes, el coste de la suscripción estandar es de 50,80 w y el de la suscripción plus es de 68,30 w.La suscripción para estudiante es incompatible con el regalo de suscripción. Estas promociones no son acumulables.

El plazo normal de la primera entrega, es de cuatro semanas a par-tir de la fecha de la recepción del pedido.

La cancelación de una suscripción está sujeta a un cargo de un 25% (veinticinco por ciento) del precio total o 12,50 w, o sea, la cantidad mayor, más los gastos de copias ya envíadas. No está permitido cancelar una suscripción después del sexto mes.

TARIFAS PARA SUSCRIPCIONES ANUALES

Estándar PlusEspaña 63,50 w 81,00 w

Islas Canarias 69,50 w 87,00 w

Europa 91,50 w 109,00 w

Otros países 122,50 w 140,00 w

ELEK ES1204 Bestelkaart.indd 2 29-02-12 08:13

Abo Plus Anzeige ES 110706.indd 1 06-07-11 15:58:15

Personal Download for I © Elektor

74810

Page 80: Revista Elektor-linux Simplificado

Now’s your chance to develop a unique and energy-efficient project application that could change the perception of low-power design forever! Get your green on and join the Renesas RL78 Green Energy Challenge today for a chance to win your share of a $17,500 cash grand prize!

Plus, follow Renesas on Twitter and Facebook for your chance to win additional prizes from official contest partners. Every Monday, Renesas will post a new challenge question. Answer correctly and you’ll be entered into a drawing to win free developments tools, Pmods, Wi-Fi modules, embedded systems books, cash prizes, and more! Challenge winners will be notified and announced weekly.

In association with Elektor and Circuit Cellar

Official Contest Partners: Analog Devices, Inc., CMX Systems, Inc., Exosite, GainSpan Corporation, Micrium, NDK Crystals (Nihon Dempa Kogyo Co., Ltd.), Okaya Electric Industries Co. Ltd., and Total Phase, Inc. Participation in Weekly Challenges and receipt of partner prizes is not a factor in selecting winners for the Grand Cash Prize from Renesas. See website for complete rules and details. Void where prohibited by law.

For complete details, visit

www.circuitcellar.com/RenesasRL78ChallengeFollow Renesas on Facebook at www.facebook.com/renesaseurope and on Twitter @Renesas_Europe

The RL78

Green Energy Challenge

Naamloos-5 1 27-03-12 09:57

Personal Download for I © Elektor

74810