ESTE BLOG COMENZÓ A PUBLICARSE EN 2008, POR LO TANTO MUCHOS DE LOS TEMAS HAN QUEDADO DESACTUALIZADOS U OBSOLETOS. LOS LECTORES QUE DESEEN UTILIZAR ALGUNO DE LOS ELEMENTOS AQUI DESCRITOS DEBERÏAN ASEGURARSE DE BUSCAR LAS REFERENCIAS MAS MODERNAS DE LOS TEMAS DE SU INTERÉS. EL BUSCADOR INCLUIDO SERÄ UNA AYUDA PARA ESA BÚSQUEDA

martes, 22 de junio de 2010

Laboratorio de electrónica


En mi último artículo se me notaba un tanto "rebotado" ante las dificultades con las que me estaba encontrando con la placa de comunicaciones. Desde entonces han pasado un par de cosas que me han reconciliado un poco con el Mundo.

La primera es que he conseguido montar un programa fuente que funciona, a partir de los pedazos que me ha suministrado MicroPick. En efecto me han mandado los fuentes del programa para otra de sus placas y un formulario suelto del programa de la placa de PCB. Con esas partes, y algunos arreglos de mi cosecha, he conseguido un programa fuente que funciona, con lo que doy terminado el incidente, aunque la solución que me ha dado MicroPik dista mucho de lo que debería haber proporcionado.

Poco a poco voy montando más módulos del circuito demodulador, y todo va funcionando correctamente. La imagen de la cabecera, aparte de dar una idea del pequeño laboratorio de electrónica que me he montado, tiene muchos elementos interesantes.

En la pantalla del ordenador se ve (ampliando la imagen) que el dato de salida que el ordenador ha escrito en la salida es 11000001. En el ángulo inferior izquierdo vemos el demultiplexor, del cual he construido ya cuatro placas. Las direcciones de estas placas están ajustadas a 1100, 1101, 1110 y 1111 o sea precisamente las direcciones más altas. (Para los que conozcan  la notación hexadecimal, estas direcciones son C, D, E, y F). Se pueden ver en el detalle reproducido a continuación una etiquetas pegadas en cada placa con esta dirección)

El dato de salida como decía es 1100 0001. Los cuatro bits de la izquierda seleccionan la placa, luego habrán seleccionado la que tiene la dirección 1100. En efecto se puede ver el piloto de esa placa (la más a la izquierda de las cuatro, con la etiqueta "C") encendido mientras las otras están apagadas


También se pueden ver, a la izquierda de la placa de base,  unos leds verdes que reproducen el dato 1100 0001 que está emitiendo el ordenador

A la derecha, delante del teclado, hay otra placa, conectada a la salida de la placa decodificadora. Esta es una placa DEMU 04 que será la encargada de llevar relés para controlar la corriente de tracción en los apartaderos. No están puestos los relés, pero como tiene unos leds para ver que dato llega,  la utilizo para visualizar el funcionamiento. Se puede ver encendido un led verde, corrrespondiente a la decodificación de los cuatro bits bajos de la salida del  ordenador. En este caso 0001

En resumen, que todo funciona bien.

La otra cosa que me ha dado una buena noticia es la posibilidad de leer entradas de tipo analógico con esta placa. Yo había entendido que era una entrada analógica, pero en realidad son ocho, de modo que hay de sobra para construir algún tipo de mando que permita el manejo de los trenes con algún dispositivo mecánico (simplemente potenciómetros) y no exclusivamente con el ratón del ordenador.

Así que vuelvo a pensar en mantener la comunicación por USB, a pesar del tema de las lecturas de las entradas en modo polling. Mi amigo Marco Retama ha incluido un comentario en el artículo anterior, aconsejándome el uso de un control timer para leer periódicamente las entradas. Desde luego esa es la forma de hacerlo, pero sigo pensando que para detectar el paso de una locomotora sobre un reed, habría que hacer lecturas con una frecuencia muy alta para que no se escape el momento en que el contacto está cerrado.

Sin embargo, me he dado cuenta de una cosa: En los sistemas analógicos como el que acaba de publicar mi amigo Ángel en su blog el paso de las locomotoras sobre los reeds provoca el movimiento de unos relés biestables.....¡biestables! O sea que si una locomotora pasa sobre el reed,  la posición de un relé cambia y queda cambiada hasta que "algo" no lo restablece a la posición inicial. Por lo tanto poniendo unos relés de este tipo, puedo hacer lecturas de su estado con un intervalo de tiempo muchísimo mayor y con la seguridad de que no se me escapa ninguna detección. El "algo" que restaura los relés puede ser una orden dada por el programa, un vez que ha reconocido la posición de los mismos.

De hecho ni siquiera harían falta relés. Existen unos chips llamados precisamente "enclavamientos " (latch en inglés) cuya misión es justamente esa: Mantener indefinidamente un dato hasta que son restaurados. Creo que utilizando circuitos de estos se puede hacer un sistema de detección seguro y sin demasiadas complicaciones en la programación.

Mmmm.... ¡que cosa tan curiosa...! La palabra "enclavamiento" tiene un significado muy ferroviario, ya que se llamaban así los sistemas de mando mecánico para las agujas de las estaciones. Seguro que cuando los electrónicos hispanohablantes empezaron a utilizar la palabra "enclavamiento" como traducción de la palabra "latch" para denominar este tipo de circuitos electrónicos, no podían sospechar que un día, alguien como yo, podía llegar a utilizar un "enclavamiento" electrónico para simular la función de un "enclavamiento" ferroviario.

domingo, 20 de junio de 2010

AHJJJJ! ¡qué fallo!


He comenzado con las pruebas del nuevo sistema, y debo decir antes de nada que todo va funcionando perfectamente (por ahora) así que estoy bastante contento con lo que he diseñado y construido.

Sin embargo me he encontrado con algunas pegas respecto de la famosa placa de comunicaciones por USB.  Así como las pruebas que hice el año pasado con las placas de comunicación por puerto serie no me dieron pega alguna, con esta si que estoy teniendo dificultades.

En primer lugar hay una cuestión estética:  Ya que la comunicación es USB, hay que meter un driver en el ordenador para manejar las comunicaciones con la placa. MicroPik suministra el driver, pero no se de dónde lo ha sacado, porque al cargarlo en Windows aparece un mensaje diciendo poco menos que que es pirata y que allá usted si carga eso. Mal empezamos. De todas formas yo cargué el programa, y aparentemente todo funciona bien.

El segundo tropiezo viene de lo siguiente: En la página Web de MicroPick dicen que con la placa se acompaña un programa para probarla y el código abierto (lo que los del negocio llamamos "los fuentes")  de ese mismo programa. Eso mismo ocurría con la anterior placa de comunicaciones.

Efectivamente el programa de prueba funciona bien y maneja la placa (al menos en cuanto a salidas, que es lo que me interesa) perfectamente, pero claro, no es más que un pequeño programa de demostración para ver que todo funciona.

Lo interesante para mi es disponer del código fuente del programa para a partir de él desarrollar los programas que yo quiero, tal como hice el año pasado. Sin embargo me encuentro con que el código que mandan está incompleto, y falta precisamente la parte más interesante que es la comunicación por USB.

Les he mandado varios correos y me están dando largas, pero no veo que vayan a darme una solución. Mala cosa. Y además inexplicable, porque si tienen el programa ejecutable que funciona bien, ¿porque no envían los fuentes de ese ejecutable.?

Quizá pudiera llegar a tener lo que necesito a base de hacer pruebas, pero me disgustaría tener que llegar a eso, cuando lo suyo es que me lo dieran hecho, tal como lo ofrecen.

De todas formas, ambos problemas pueden tener solución, pero esta tarde me he encontrado con un problema que no la tiene porque es un tema de concepto. Me refiero a la forma de captar las entradas digitales.

En la placa anterior que compré el año pasado, la captura de entradas digitales es por un evento. (el evento OnCom del control de comunicaciones). Esto quiere decir que sin hacer nada desde el programa, cuando el estado de las entradas varía, se activa el evento, y se puede programar hacer lo que se quiera. Sin  embargo con esta nueva placa, es el programa quién tiene que preguntar por el estado de las entradas y como respuesta, el microcontrolador de la placa le informa de su estado.

Seguramente mis lectores no se habrán dado cuenta de la importancia de esto. pero quedará claro de forma inmediata: Las entradas digitales están conectadas a los contactos reed que detectan el paso de los trenes, de forma que cuando una locomotora con imán pasa sobre uno de los reeds, se cierra el circuito y varía el estado de esa entrada. Pero ese estado cambiado dura unas fracciones de segundo, porque inmediatamente la locomotora ha pasado y el reed vuelve a su estado anterior.

Con el sistema de la placa por puerto serie, en el momento de que la locomotora pasa sobre el reed se produce un evento y el programa se entera siempre de que esto ha sucedido. En cambio si es el programa el que tiene que preguntar cada x tiempo por el estado de las entradas (de cada una de las entradas....) ¿cada cuánto tiempo tiene que preguntar por ese estado? ¿cada milisegundo? Está claro que es inviable, porque el programa no podría hacer otra cosa que averiguar el estado de las entradas. De hecho, en los aparatos que funcionan por impulsos  de corriente (los desvíos por ejemplo) el programa está parado mientras dura el impulso (típicamente 100 a 500 milisegundos). Como coincida una locomotora pasando por un reed en ese momento no se podría detectar su paso.

Resulta que en las centrales digitales comerciales, parece que también se da este caso, según algún comentario que he leído recientemente. Los usuarios se quejan de que falla la detección de trenes cuando hay mucho movimiento, y parece que las últimas versiones de centrales han corregido este defecto utilizando el sistema de eventos o interrupciones en lugar del "polling" que es como se llama la forma que exige que el programa muestree continuamente las entradas. No voy yo ahora a caer en ese fallo.

Total, que a pesar de que había pensado que esta placa era una buena solución. me estoy convenciendo de que más vale lo malo conocido, sobre todo cuando lo conocido no es malo. Lo bueno del caso es que todo mi diseño es perfectamente válido, tanto para la placa de puerto serie como para la USB, de manera que puedo continuar las pruebas con la placa de puerto serie, y si se resuelven los problemas del USB no habrá ningún problema en cambiar.

Lo que si es cierto es que los de MicroPik han caído varios enteros en mi apreciación. Ya veremos como termina este asunto, pero no me gustaría seguir dependiendo de ellos. De momento ya he pedido un libro de programación de microcontroladores.

Y... no he dicho nada de la fotografía de cabecera. Bueno no es más que una foto de las pruebas que voy haciendo, pero ha quedado bonita. A mi estas fotografías cercanas de aparatos electrónicos me parecen muy atractivas.

sábado, 19 de junio de 2010

Esquemas eléctricos



A lo mejor alguno de los lectores de este blog, ha pensado que estoy ocultando una información, que se considera fundamental en todo proyecto eléctrico o electrónico. Me refiero, a los esquemas de los circuitos, que aparecen siempre en los proyectos de este tipo como paso previo`para definir el funcionamiento.

No es mi intención ocultar nada con respecto a estos temas, en primer lugar porque este blog tiene un carácter divulgativo, y en segundo lugar porque no me considero "inventor" de este dispositivo de control. *

Lo que ocurre es que mi método de trabajo, implica que en la mayoría de los casos realizo primero el esquema de la placa PCB, y posteriormente hago el esquema del circuito. Esto parece una extraña forma de trabajo, pero a mi me da buen resultado. Digamos que al tener que pensar sobre la forma de funcionamiento del circuito mientras diseño la placa, me facilita no cometer errores en ese diseño. Luego, hago un esquema del circuito, a partir de la placa construida, y muchas veces ya probada, de modo que el esquema tiene un carácter de documentación "as built" y su principal objeto es documentar el proyecto, sobre todo de cara a futuras revisiones. Además, al hacer el esquema a partir de la placa sirve también de verificación, ya que si hay algún error de diseño, suele detectarse fácilmente al tratar de hacer el esquema.

Por ejemplo, el esquema que encabeza este artículo, lo acabo de dibujar. Hasta ahora este esquema estaba sólo en mi cabeza, de modo que no me extraña que algún lector lo hay echado de menos al leer la serie de artículos que trata de este sistema de mando, particularmente del artículo "De nuevo con los voltios" . Ahora, contando con este dibujo, parece mucho más fácil explicar la teoría del sistema de mando, y la explicación podría ser esta:

En la parte superior, tenemos un ordenador que está ejecutando el programa "Control Z" Este programa envía señales al exterior por medio del USB hasta la placa de comunicaciones USB188. Esta placa que es la que suministra MicroPik, convierte el flujo de datos recibidos serialmente por el puerto USB en palabras de 8 bits que salen por el bus de datos (lineas rojas)

La placa DEMU 01 se conecta a los cuatro bits altos del bus de datos y, mediante el circuito integrado 74HC154 "demultiplexa" esos 4 bits altos en sus dieciséis códigos individuales, que constituyen los 16 bits del bus de control (líneas verdes)

La placa DEMU 02 se conecta también al bus de datos, pero lee los cuatro bits bajos y uno de los 16 bits de control (el bit de control se determina cerrando uno de los 16 microinterruptores que lleva esta placa) Solo se activa cuando el dato de control, que lee cada placa, está activado, es decir cuando coincide con la decodificación de los bits altos realizada por DEMU 01

Puede haber hasta 16 placas DEMU 02, siempre que cada una se conecte a uno de los 16 bits de control

Cada una de estas placas, lleva un circuito 74HC4514 que decodifica los cuatro bits bajos del bus de datos en sus 16 componentes individuales (líneas azules). La placa produce una salida de 12 voltios por la salida activada, de manera que puede llevarse directamente a actuar sobre elementos que funcionen con un impulso de corriente continua de 12 voltios. Típicamente utilizaremos estas salidas para mover los desvíos, utilizado dos salidas para cada desvío. Basta conectar los cables azules de los desvíos a dos salidas contiguas de una de estas placas. Quiere decir que cada placa DEMU 02 puede mover directamente ocho desvíos

Otra posibilidad es conectar las salidas de la la placa DEMU 02 a una placa DEMU 04. Esta placa lleva 4 relés biestables de 12 voltios con doble conmutador (DPDT) (Tyco Electronics V23079-B1203-B301)

Las seis conexiones a los contactos de trabajo quedan accesibles, de modo que pueden utilizarse de varias formas, ya sea como conmutador sencillo o doble, como inversor, etc. Hay un sistema formado por un zócalo de circuito integrado que permite configurar las salidas de la forma deseada mediante pequeños puentes.

Un uso típico de estos relés es manejar la alimentación de una vía de apartadero: La corriente de tracción (lineas de color naranja) se conecta o desconecta del tramo aislado de vía que queremos controlar, según la posición del relé. Como los relés tienen doble conmutador, se puede conectar en paralelo una señal luminosa o un semáforo que se abra o cierre según la vía tenga corriente de tracción o no.

Hay muchos más usos para estos relés. Se pueden conectar para manejar señales luminosas, para encender y apagar iluminaciones, para manejar rotondas y pasos a nivel, etc. Cualquier cosa que podamos encender o apagar en un panel de control mediante un interruptor o un conmutador, lo podemos manejar con uno de estos relés mediante una orden procedente del ordenador. Incluso con tensiones de 220 Voltios y hasta 5 amperios, así que por ejemplo podríamos llegar a manejar la iluminación de la habitación.

Cada relé utiliza dos salidas del DEMU 02, de modo que una placa completa DEMU 04 utiliza ocho de las dieciséis salidas de una DEMU 04.

Por último, la placa DEMU 03 sirve de cierre al bus, y lleva unos Leds para monitorizar la situación de cada señal..

También tengo dibujados los esquemas de cada una de las placas.

Aquí está el esquema de la placa de la placa DEMU 01 que también lleva el esquema de la placa DEMU03 (recuerdo que haciendo click, en la imagen se amplía hasta su tamaño original)



El siguiente, es el esquema de la placa DEMU 02



Y este es el esquema de la placa DEMU 04, la que lleva los cuatro relés:



Como se puede comprobar por las fechas, estos esquemas están recién realizados o modificados. Espero que se puedan considerar ya definitivos.

* Todo esto tiene su origen en una serie de mensajes intercambiados en el foro de LCTM en Marzo de 2008 ( Mensaje  49042 y siguientes ). Como se puede ver en esos mensajes yo no tenía ni idea de estos temas en esa época, y pude ponerme un poco en la página gracias a los mensajes de otros participantes en el foro. No es que ahora tenga mucha más idea, pero he podido dedicarle algo de tiempo (y dinero, claro) a los ensayos que me han llevado a este punto.






martes, 15 de junio de 2010

Un Restyling


Nuestros anfitriones de Blogger, han modificado su sistema de blogs, dando unas cuantas nuevas oportunidades para definir el aspecto de los blogs.

Aprovechando las nuevas facilidades he realizado un restyling que, en mi opinión, dan un aspecto más atractivo a este blog. Fundamentalmente he buscado una mejora en la visibilidad, aumentando el tamaño del recuadro para el texto, lo que permite una letra un poco mayor, y sobre todo la posibilidad de incluir imágenes y vídeos de mayor tamaño.

Espero que mis lectores estén de acuerdo en que estos cambios son una mejora.

Respecto de los progresos de mi proyecto, he comenzado las pruebas de la placa de comunicaciones. Para ello, he utilizado el programa que suministra MiccroPik y he podido comprobar que funciona correctamente. Sin embargo me he dado cuenta de un pequeño problema: el orden de los datos que salen por los pines del conector de salida está invertido. Es decir: por el pin 1 sale el dato 7.por el pin 2 sale el dato 6, etc hasta el pin 8 por el que sale el dato 0. Como no había contado con esto tengo que cambiar el diseño de la placa que recibe estos datos. *

En este caso, con los malditos conectores de los cables planos, si invierto el conector, se cambia también la orientación de las filas de contactos, de modo que todas las salidas me quedarían "mirando hacia fuera" Así que se requiere un cambio importante en la placa. O sea reahacerla por completo.

Así que que tenido que volver a diseñar esta placa, y el resultado ha sido el que se recoge en la imagen de cabecera de este artículo. Hay un cambio de concepto, y es que ahora esta placa se coloca sobre uno de los conectores del bus, en posición vertical, como cualquier otra placa. Quedará así un diseño más compacto y menos frágil. Total, que esta placa más que un "restyling" ha necesitado un "remake"

Cuando tenga fabricada esta nueva placa, seguiré con las pruebas.


* Podría decir que estos de MiccroPik son unos chapuceros por hacer esto así, pero cuando hago los diseños de mis propias placas me doy cuenta de que uno está muy condicionado por el orden de los pines de los distintos circuitos integrados. Si un chip tiene un determinado orden (o un determinado desorden) en la conexión de los datos, el tratar de corregir esto es una complicación enorme y en general no merece la pena. Yo me he encontrado con un caso parecido en la placa decodificadora de bits bajos, de modo que los conectores que llevan la corriente a los desvíos tienen un orden absurdo, que obligará a tener cuidado al conectar los desvíos.

jueves, 10 de junio de 2010

Tomando forma


Pues efectivamente, al final pude hacer unos buenos fotolitos, aunque tuve que recurrir a un truco que había visto en algún tutorial. Se trata de imprimir dos veces la imagen del fotolito sobre la misma lámina. La impresión queda justamente encima, y por lo tanto se refuerza la cantidad de tinta depositada. Increíblemente, la segunda impresión se superpone exactamente con la primera, siempre que actuemos con cuidado y carguemos la impresora cuidadosamente con las guías de papel ajustadas exactamente al tamaño de la hoja.

Con estos fotolitos ya pude hacer el proceso de fotograbado de la forma habitual. Por cierto, como no tenía suficientes placas, hice un pedido a RS y me suministraron unas nuevas del mismo fabricante que yo pedía siempre. Han resultado ser mucho mejores, de forma que las placas han quedado perfectas, Por cierto, últimamente utilizo esta placas que son más finas de lo habitual. Quedan estupendas porque son muy ligeras y se cortan fácilmente con tijeras, y resultan más fáciles de taladrar. Además como son muy finas la cara de pistas se transparenta desde arriba, como se ve en las fotografías. A mi este efecto me gusta mucho, sobre todo en estas placas caseras que no llevan la serígrafía de los componentes en la cara superior.

Al final hice también un cambio de última hora. En principio había pensado en una placa grande con el decodificador de la primera etapa, y una serie de conectores para incorporar el número necesario de placas de la segunda etapa. Sin embargo me di cuenta de que esa placa grande, coincidía con un tipo de placa que se vende habitualmente, y que lleva una serie de pistas, y taladros en toda su superficie. Así que aproveché el pedido y pedí también una de estas placas, de manera que me ahorro fabricar un elemento engorroso, Por delante y por detrás le he puesto unos conectores para enchufar unas placas pequeñas con el decodificador de primera etapa (bits altos) y la placa de cierre

En la fotografía de la cabecera, vemos cómo queda el montaje. La base es esta placa taladrada cuyas pistas longitudinales hacen el papel de un Bus de datos. Por delante y por detrás lleva unos conectores donde enchufamos la placa decodificadora de la primera etapa, que vemos al frente de la imagen con el conector de cable plano que conecta con la placa de comunicaciones de MicroPik y por detrás la placa de cierre del Bus, que lleva unos Leds para monitorizar el funcionamiento.

Esta placa decodificadora de la primera etapa la podemos ver en detalle en la imagen siguiente:


Aquí se ve como esta etapa lleva el integrado 74HC154, y el conector de cable plano que trae la señal desde la placa de MicroPik. También hay un conector que trae la alimentación del circuito, 5 Voltios para los circuitos digitales y los 12 Voltios que activarán los desvíos y los relés. Desde aquí se llevan estas tensiones a todas las placas.

La siguiente imagen muestra la placa de cierre, que se conecta al final del bus. Lleva 8 leds de color verde que indicarán la posición de los datos provenientes del ordenador, y 16 leds amarillos, que muestran la decodificación de los cuatro bits altos. También lleva dos leds rojos que indican la presencia de tensión de 5 V y de 12 V


Por último, la placa que decodifica los cuatro bits bajos es la que se muestra en la imagen siguiente: Contiene el circuito decodificador 74HC4514, y los dos circuitos ULN2803 que amplifican la señal para poder activar los relés y desvíos. Estos aparatos se conectarán a los conectores situados a ambos lados de la parte superior. También podemos ver los dos pianillos que permiten asignar una dirección a cada una de la posibles 16 placas




El led rojo que vemos, deberá encenderse cuando la placa sea seleccionada, en función de la decodificación de los cuatro bits altos.

En la parte inferior vemos un conector que permite enchufar cada una de estas placas en uno de los conectores del bus.En la imagen de la cabecera podemos ver dos placas contiguas enchufadas una detrás de la otra, y un tercer conector vacío detrás. Todavía no he decidido cuántos de estos conectores voy a poner en el bus. Por medida me caben hasta 12, de modo que si tengo que pasar de esa cifra, habría que hacer una prolongación del bus, pero esto es muy simple pues se conectaría donde ahora va la placa de cierre, y ésta se situaría al final de la nueva ampliación. Otra opción es poner 8 en esta primera placa y otros 8 en la ampliación.

Si nos imaginamos 12 placas conectadas una detrás de otra donde ahora sólo vemos dos, parece que el resultado va a ser una especie de ladrillo. Esto no me sorprende, porque ya dije desde el principio que cualquier cosa que tenga 256 salidas tiene que ser grande y compleja.

Y a todo esto, ¡Todavía no he hecho ninguna prueba!, ni siquiera de la placa que compré a MicroPik. La verdad es que para probarlo en condiciones, la mejor opción es tenerlo todo construido e ir verificando su funcionamiento poco a poco. Por ejemplo la placa de MicroPik no se puede saber si funciona o no, sin conectarle al menos unos leds tal como los que lleva la placa de cierre, así que había que tener construída esa placa antes de probar nada. Y con todo lo demás pasa lo mismo.

Es curioso que este esquema de placas sucesivas conectadas en un bus lo llevo dando vueltas en mi cabeza al menos desde hace tres años, pero hasta ahora no he tenido la oportunidad de dedicarle el tiempo necesario para construirlo. Espero que todo funcione bien

domingo, 6 de junio de 2010

Fotolitos


Como decía en mi artículo de ayer, el paso siguiente es la impresión de los fotolitos.Esto no es más que imprimir la capa de pistas del circuito impreso, sobre un papel transparente.

Sin embargo, la frase anterior resulta un poco engañosa, ya que no todo eso es tan fácil. En primer lugar al hablar de "capa  de pistas" estoy dando a entender que el dibujo del circuito impreso está hecho por "capas". Esto, en efecto es así, y por eso se requiere un programa capaz de dibujar en capas superpuestas. Ayer decía que yo que utilizo PaintShopPro y aunque este programa no ayuda en nada para hacer el diseño del circuito, es una buena herramienta para hacerlo, porque permite por ejemplo el dibujo en varias capas. En la imagen de la placa de circuito que presenté ayer, se pueden ver las tres capas que yo normalmente utilizo: Una capa en negro que es la cara inferior de la placa, o sea la cara del cobre, una capa en rojo donde pongo "ayudas" como por ejemplo la numeración de los pines, y una capa en verde que es la cara superior de la placa donde dibujo los componentes. El programa me permite visualizar todas o algunas de las capas, e incluso, como es el caso de la figura de ayer, hacer alguna capa levemente transparente, de modo que las pistas de la capa negra se transparentan bajo los componentes de la capa verde.

También hay otras ayudas interesantes: por ejemplo PaintShopPro permite definir una trama para alinear los dibujos. Yo defino una trama de 2,54 mm que es el "paso" standard de los pines de casi todos los elementos electrónicos, y así queda todo perfectamente alineado y con las medidas exactas.

En resumen que es una excelente herramienta para esta clase de dibujos, aunque como decía, no aporta nada, respecto del diseño de las pistas, Esto lo hago completamente a mano (mejor dicho "a cabeza"), y es una actividad mucho más absorbente que resolver un crucigrama o cualquiera de los clásicos pasatiempos.

Pues bien una vez que está dibujado y verificado el circuito, procedo a seleccionar la capa de componentes e imprimirla en papel transparente.

De nuevo es un poco falsa la sensación de facilidad: De entrada ese "papel transparente" es en realidad un "film para transparencias inkjet", es decir una lámina, de algún tipo de material transparente (¿acetato?), que se puede imprimir con impresoras de chorro de tinta.  No resulta fácil encontrar este material, y yo hace hace tiempo tuve la suerte de encontrar uno que me va muy bien, pero tiemblo de que se me acabe el paquete.

Y lo más importante es que a la hora de imprimir, hay que ajustar la impresora para que produzca un negro absolutamente opaco. Esto es difícil de conseguir, sobre todo en un material como este film en el cual la tinta no se difunde nada. Es fácil que las superficies negras nos queden formadas por diminutas rayas por entre las cuales se puede filtrar la luz de la insoladora. Yo he cambiado recientemente de impresora, y estoy todavía tratando de cogerle el punto. Es cuestión de escoger el tipo de papel adecuado (normalmente hay que ajustar la impresora como para imprimir sobre un papel fotográfico de alta calidad), y aumentar al máximo el contraste, para que el negro sea totalmente negro.

En la foto de cabecera, estoy comprobando la impresión del fotolito. Hay que mirarlo cuidadosamente contra una superficie blanca y utilizando una lupa examinar cuidadosamente la impresión de todos los detalles. Cualquier mínimo defecto aquí aparecerá después en la placa del circuito, y puede estropear el resultado. Me refiero simplemente a zonas donde la opacidad del negro no es total. La aparición de zonas aparentemente negras pero que examinadas con una buena lupa dan la imagen de lineas, produce que luego el cobre quede "grabado" con esa líneas, y aparte de dar un aspecto feo, puede hacer que alguna pista quede cortada.

De hecho, esa bonita lámina que estoy examinando en la imagen de cabecera, no pasó el "control de calidad". Ya digo que mi impresora es nueva, y no parece que se porte demasiado bien en este trabajo. Así que he tenido que repetir la impresión ajustando algunos parámetros. Espero que al final pueda obtener unos fotolitos válidos.



sábado, 5 de junio de 2010

Diseño de PCB


El diseño de circuitos impresos, es una actividad muy curiosa. Se trata de hacer el diseño de las pistas de cobre de un circuito impreso de forma que queden conectados todos los terminales de los componentes que va a llevar el circuito. Por un lado hay que tener en cuenta las dimensiones exactas de cada componente para situarlos sin que interfieran unos con otros, y por otro lado establecer el diseño de pistas de cobre para unir sus terminales.

El problema es que las pistas de cobre no pueden cruzarse, con lo cual el problema es complejo y puede llegar a ser irresoluble. Una forma de facilitar el diseño es permitir la existencia de "puentes", es decir de alambres conductores situados por el lado de los componentes para unir pistas que de otro modo no se pueden conectar.

El problema es que no hay un método determinista para resolver este tipo de diseños. O sea que no se puede aplicar un método o algoritmo para llegar a una solución, así que funciona mejor una cierta dosis de intuición. Por supuesto, como es un problema muy general y conocido, existen bastantes programas de ordenador para el diseño de placas de circuito impreso (Printed Circuit Board o PCB), pero al no existir un algoritmo para hallar la solución, estos programas son complejos de manejar (necesitan la ayuda del humano para optimizar el diseño). Mi experiencia con este tipos de programas es muy limitada, y las pocas pruebas que he hecho no me han convencido en absoluto, seguramente por culpa mía que no sabía manejarlos, pero antes de lanzarme a gastar mi tiempo en aprenderlos, prefiero dedicarlo a solucionar manualmente los pocos circuitos con los que me enfrento.

Así que utilizo un programa de dibujo general, en este caso Paint Shop Pro, que me hace el oficio de regla y compás y diseño los circuitos de forma totalmente manual. La verdad es que si alguien me tuviese que pagar por hacer esto, mi rendimiento sería ruinoso, pero bueno, puedo diseñar un circuito de pequeño tamaño en unas pocas horas de trabajo.

Esta tarde he estado diseñando la placa para lo que será el demultiplexor, concretamente la parte que decodifica los bites bajos. Como ya he comentado, cada módulo lleva un microchip 74HC4514 y dos ULN2803. y es capaz de decodificar 16 señales.convirtiéndolas en salidas de 12 V capaces de actuar tanto sobre las bobinas de un desvío como sobre las bobinas de un relé.

Algo que no he comentado antes, es que las posibles 16 placas demultiplexoras que puede llegar a haber, no pueden ser precisamente idénticas, porque entonces todas actuarían igual y se trata de de que cada una actúe solo cuando se active un determinado bit de la primera etapa del demultiplexor. Hay muchas formas de hacer esto, pero me ha parecido que una forma "elegante" de hacerlo, es situar en cada placa un "pianillo", con el cual, en cada caso, ponemos en contacto el gatillo del demultiplexor con una de las 16 posibles vías de salida de la primera etapa. Dicho de una forma más técnica, ese pianillo establece la dirección de cada una de las placas para que cada una de ellas solo reconozca los datos que le corresponde procesar.

Bueno, pues los tres circuitos integrados, esos pianillos, y los conectores de entrada y salida son los elementos fundamentales de la placa. En la fotografía de cabecera vemos esos elementos situados sobre un esbozo en papel de lo que llegará a ser el diseño del circuito.



Unas pocas horas después, tenía listo el diseño del circuito, tal como se puede ver en la imagen anterior (para verla a su tamaño haga click en ella) La verdad es que esa imagen contiene dos placas, ya que puedo sacar dos placas de una sola placa virgen para PCB de 10 x 16 cm, que son las que suelo usar. En realidad cada placa individual será de 80 x 73 mm.

Bueno, pues después de esto, lo demás es el conocido proceso de imprimir el fotolito y hacer todo el procesado de las placas de PCB que ya expliqué en su momento.

Tengo que ver si tengo todos los elementos para fabricar las placas, ya que hace bastante tiempo que no me meto en "el laboratorio"

En todo caso parece que ahora he cogido un buen camino.




miércoles, 2 de junio de 2010

Quincalla electrónica




Quincalla: Conjunto de objetos de metal, generalmente de escaso valor.
 Del diccionariuo de la RAE

Bueno, precisamente de escaso valor... pero realmente siempre me asombra cómo es posible que uno de estos circuitos integrados, como los de la fotografía de cabecera, tenga un precio de alrededor de un euro, y en muchos todavía menos, teniendo en cuenta la increíble tecnología que es necesaria para su diseño y fabricación. Y otra cosa me asombra todavía más: ¿como es posible que a menos de media hora de mi casa tenga una tienda, donde me puedan vender sin problemas "un 74HC154, dos 74HC4514, cuatro ULN28003 y dos diodos Zenner de 15 Voltios, 1 Watio" y tengan existencias de todos ellos y de miles de elementos tanto o más extraños. ¿Tanta gente hay que se dedica a hacer chapuzas electrónicas caseras? ¿Y qué demonios es lo que hacen?

En todo caso, una vez superado del asombro que siempre me produce la facilidad con que se pueden comprar estos componentes, resulta que he comprado, en efecto, material para hacer dos módulos del demultiplexor, por lo tanto he comprado dos 74HC4514 y cuatro matrices de transistores ULN2803
y también el material para el módulo que decodifica los bytes altos. La tienda me ha resuelto la duda entre los dos posibles microchips, ya que solo tenían el 74HC154. Este material, incluyendo los dos diodos que llevará como protección, se ven claramente en la fotografía de cabecera.

¿Y eso es todo?, Pues no. Como comentaba el otro día, hay una serie de elementos adicionales, que no tienen ninguna función electrónica, pero que condicionan el diseño de todas las placas, ý que hacen que el resultado final sea práctico y no una maraña de elementos medio sueltos.

Me refiero a elementos como zócalos y conectores. Lo malo de estos elementos, es que hay muchos tipos y formas distintas, y es difícil decidirse por una "línea" Yo hasta ahora he empleado en los elementos electrónicos que he realizado para esta maqueta, tres sistemas: El llamado de "tira de pines" el método del cable plano, y el método de las clemas o bornas con tornillos. Ninguno de los tres sistemas me convence plenamente. Las tiras de pines son demasiado frágiles y no hay nada que impida enchufarlas al revés. Además requieren un trabajo artesano para que queden bien, como soldar al aire y colocar un termoretráctil en cada pin, y además hay que cortarlas al tamaño deseado con la Dremmel. En la fotografía de la izquierda se ven varias conexiones hechas con tiras de pines

Otra alternativa que también he usado, sobre todo cuando hay que conectar un número elevado de cables, es el cable plano. Este sistema tiene la ventaja de que es muy compacto, y se hace un conector con un montón de hilos en un momento, sin necesidad de soldar y ni siquiera de pelar los cables.

Sin embargo yo le veo dos inconvenientes: sus conectores son de doble fila de contactos, y están endemoniadamente juntos, de modo que el diseño de las placas de circuito impreso de complica mucho, al no poder pasar pistas de conexión entre los puntos de contacto. El otro inconveniente es que, al menos para mi cabeza, resulta siempre muy confuso saber a que pin va cada cable, y por menos de nada se hace un cable que cruza los hilos entre los dos enchufes terminales.

El tercer sistema es el de las clemas o bornas de tornillos. Es un sistema claro y robusto, pero quizá ocupa demasiado espacio, ya que de un contacto a otro hay 5 mm. Por otra parte poner bien los cablecillos requiere cuidado para que queden bien aprisionados por el tornillo, sin que queden fibras de cable sueltas que pueden hacer cortocircuitos. Yo normalmente sueldo los cablecillos, lo cual es un trabajo adicional. Y por supuesto para soltar o conectar los cables hay que aflojar o soltar un tornillo para cada cable, y si los soltamos, los cables se desordenan y hay que identificarlos nuevamente para volver a conectarlos. En la fotografía de la derecha vemos conectores de cable plano y conectores de clemas. Está claro que las clemas son apropiadas para cables más gruesos que los conectores de cable plano.

Por eso el otro día decía que, si de un módulo del demultiplexor salen cables hacia los desvíos, parece apropiado utilizar clemas, pero si hay que conectar una placa de relés, parece más apropiado utilizar cable plano, ya que estamos conectando una placa con otra placa contigua.

De hecho en la placa que he comprado a MicroPic, todos los conectores son para cable plano, así que ahí me veo forzado a utilizar cable plano, y por lo tanto usar a ese tipo de conexión en las placas del demultiplexor que reciban estas conexiones.

Pero como ya he dicho, el cable plano me resulta antipático, y las clemas demasiado voluminosas, así que aprovechando mi viaje a la tienda de electrónica he investigado algún otro tipo de conexión. Como resultado, de ésta investigación he traído unos conectores que me dicen que son conocidos como conectores Molex.

En realidad son un poco más que una tira de pines, y de hecho tienen el mismo paso que éstas (2,54 mm), pero tienen un sistema que evita conectarlas al revés y además al enchufarlas hay un cierre de click que asegura la unión.

Se fabrican con cualquier numero de contactos entre 2 y 20 en una sola fila, así que para probar he comprado unos cuantos de 10 contactos y también unos pocos de 4. Por otra parte las carcasas mantienen los hilos ordenados y separados sin posibilidad de cortocircuitos y no son necesarios los termoretráctiles. Son los conectores de color marfil, machos y hembras que se ven en la fotografía anterior. (los de color gris, claro y oscuro, son conectores de cable plano que he comprado para la conectar la placa de MicroPic.)








martes, 1 de junio de 2010

Nueva placa de comunicación

Hace como un año, escribí aquí un artículo titulado "Qué pena" en el cual me lamentaba de no haber llegado a tiempo para utilizar en mi sistema de control , la nueva placa de comunicaciones que la empresa MicroPik había sacado al mercado. La referencia de este producto es USB1188 y se puede ver en su página web.

Como el otro día decidí volver a retomar el tema de la electrónica, pensé que si decidía pasarme a esta alternativa, éste era el momento de hacerlo, así que me rasqué el bolsillo e hice el encargo a MicroPik. La verdad es que esta empresa siempre me han funcionado muy bien, y son serios y rápidos, así que ya tengo en mi poder la nueva placa, y lo atestigua la fotografía que aparece en la cabecera. (por cierto, las fotografías de su catálogo son bastante nefastas. así que uno tiene una agradable sorpresa al ver en la mano el buen aspecto y acabado de esta placa.)

Las ventajas de esta placa, respecto de la que utilicé inicialmente, son evidentes. La primera y más importante es que se conecta al ordenador por USB en lugar de utilizar el puerto serie. Esto es muy importante porque el puerto serie está desapareciendo de los nuevos ordenadores mientras que el standard de conexión por USB está cada vez más extendido. Otra ventaja relacionada con esto es que un ordenador, si tiene puerto serie, tiene uno solo, mientras que cada vez es más habitual encontrar al menos cuatro puertos USB hasta en los ordenadores más modestos. No quiere decir que no se pueda poner más de un puerto serie a un ordenador, pero esto siempre es complicado.

Por otra parte, el puerto USB proporciona la corriente de alimentación a la placa, de manera que nos podemos ahorrar la fuente de alimentación de 12 V que necesitaba la placa antigua. En mi caso mantendré la fuente de alimentación de 12 V para alimentar los desvíos y relés, pero ahora esa fuente será sólo para eso, y la placa tendrá su propia alimentación desde el ordenador. Esto puede evitar algún tipo de problema que podía haber surgido del hecho de utilizar la misma alimentación para aparatos digitales, como la placa y para aparatos analógicos como los desvíos y relés.

Sólo esto ya justifica más que de sobra la decisión de cambiar de placa de comunicaciones. Sin embargo hay todavía algunas ventajas más, que aunque todavía no he explorado, puede proporcionarme alguna característica útil en el futuro.

El número de entradas digitales pasa de 6 a 8 lo cual da un número de 256 posibles sensores. En la placa antigua tenía seis entradas, lo que me proporcionaba 64 posibilidades de detección. Si pensamos en utilizar esos sensores para detectar el paso de trenes con interruptores reed, parece que 64 son más que suficientes para cualquier maqueta, por grande que sea. Sin embargo se puede pensar también en otro uso para esos sensores. En seguida lo vemos.

Esta placa tiene también una entrada analógica. Es decir que se puede detectar, por ejemplo la posición de un potenciómetro. Con esto puedo hacer un mando manual, que permita manejar el programa con algo parecido al mando de una central digital, que maneja la velocidad de las locomotoras con un botón giratorio Además puedo añadir botoneras o teclados para manejar otras funciones, y para esto me vendrían muy bien el aumento de sensores digitales de 64 a 256.

Esto abre una posibilidad, todavía muy imprecisa de llegar a construir algún tipo de consola con mandos "mecánicos" tales como botones palancas y volantes para manejar al menos un tren de forma manual, con mandos que recuerden los de una locomotora real.

Y por último hay otra cosa que de momento no se qué alcance puede tener: El manual habla de una salida PWM . Como mis lectores saben, el sistema PWM (Modulación por ancho de pulso) es lo que yo uso para manejar las locomotoras, de manera que si esta placa produce directamente una salida PWM en función de las señales recibidas desde el ordenador, llevando esta señal a la base de un transistor adecuado tendría una salida de corriente pulsada, perfecta para alimentar las locomotoras. Evidentemente yo necesito al menos ocho salidas con estas características, pero habrá que estudiar el tema, porque puede ser un sistema mucho más sencillo para el manejo de las locomotoras.

..........Y además es mucho más pequeña que la anterior placa!!