Páginas

Mostrando entradas con la etiqueta leds uv. Mostrar todas las entradas
Mostrando entradas con la etiqueta leds uv. Mostrar todas las entradas

lunes, 19 de mayo de 2014

Insoladora con Leds UV

Después de haber experimentado distintos procedimientos de realización de circuitos impresos por el método de transferencia térmica, sin resultados positivos, opté por experimentar con el método de la insoladora.
Una opción era la de comprarme la insoladora por eBay, pero las pocas que encontré no me parecían baratas, además de ser de lámparas ultravioletas (de ahí el elevado precio). En cambio, en eBay, por un módico precio de 19,95€ + 5,50€ de gastos de envío, sí pude encontrar un kit para montar, consistente en una placa, 35 diodos LED UV, 35 resistencias, conectores macho y hembra y hasta una tira de estaño para soldar los componentes - esto último, todo un detallazo. Más abajo, en la sección de enlaces, podéis encontrar la dirección en eBay. Es una buena solución, pero...
Mi idea, parece ser, era experimentar y hacerme con una insoladora casera, de cosecha propia, por lo que opté por recorrerme la red en busca de un diseño que me sirviese de base para mi propia solución.

Investigando

¿Lámparas o LEDs?

Lo primero que observé fue que el coste de los diseños con lámparas ultravioletas, además de ¿obsoletos?, resultaban algo más caros. No tan caros como podía resultar hace algún tiempo, pero descarté esta solución. Como curiosidad, parece ser que el uso que están dando a estas lámparas es para los típicos detectores de billetes 'de curso legal', billetes que muestran ciertas patrones o marcas de agua cuando se exponen a la luz ultravioleta, y para el secado de el esmalte de uñas (actividad que se ha puesto de moda y puede observarse la proliferación de estos negocios yendo por la calle).
En cambio, había profusión de diseños de insoladoras con LEDs UV. Existe mucha información al respecto, muchas soluciones prácticas, desde cálculos de cómo distanciar los LEDs entre sí, hasta el valor de las resistencias que se ponen en serie con los LEDs. Sin olvidarme de los esquemas de la placa en donde montar los componentes. Y con tal profusión de información, fue por ahí por dónde me decanté. El diseño iba a ser con LEDs UV.

Diseño de la placa

La mayoría de las placas tenían una distribución matricial de los LEDs. Es decir, quedaban posicionados en los nodos de una retícula cuadrangular. Aunque era la distribución más fácil de realizar, consideré que no era la más eficiente, desde un punto de vista de radiación luminosa. Imaginé que la intensidad luminosa no sería muy homogénea en un plano paralelo a la placa radiante, por lo que busque otra distribución.
La distribución que me pareció más eficiente fue la disposición de los LEDs en el centro de cada uno de los hexágonos que conforman una retícula hexagonal. En la siguiente imagen, los puntos negros indican la posición de los LEDs en una retícula hexagonal.
Esto hacía un total de 9 x 4 + 8 x 3 LEDs, es decir, el diseño iba a requerir un total de 60 LEDs. Y con esta distribución iba a conseguir, en teoría, una iluminación bastante más homogénea que la que podía ofrecer una retícula cuadrangular. Más adelante, indicaré y justificaré la distancia entre LEDs.
Ahora, hablemos de la tolerancia de los componentes y el porqué agrupar los LEDs de tres en tres y en la disposición que muestro. Agrupo los LEDs de tres en tres por las características eléctricas de los LEDs y por la tensión de alimentación que voy a utilizar. Más adelante mostraré los cálculos realizados. Pero antes, algunas consideraciones.
El tamaño de la tarjeta donde van los LEDs no iba a ser mayor de 150x100 mm2. Este tamaño me es suficiente para el diseño de placas que pienso realizar: las de un tamaño similar a tarjeta de crédito, es decir, tipo Raspberry Pi. Si suponemos que los LEDs los voy a espaciar 18 mm (después diré el porqué de esta elección) las dimensiones mínimas de la tarjeta que contendrá los LEDs será de:
8 * 18mm x 6 * 18mm sen(60º) => 144 x 93,53 mm2
por lo que con una tarjeta de tamaño estándar de 150x100 mm2 tendré suficiente para disponer los 60 LEDs y los 4 taladros de sujeción de la placa en la caja contenedora.

Cálculos

Iba a alimentar la tarjeta con una tensión estándar de 12 Vcc. Pero la fuente que compré solo me daba 11Vcc. Las características de los LEDs UV que vamos a utilizar tienen una tensión de caída de entre 3,0V a 3,8V. Nosotros consideraremos que es 3,3V y limitaremos la corriente a 20mA (aunque el máximo valor admisible suele ser 30mA para estos diodos, con el riesgo de dañarlos definitivamente) . Si serializamos 3 diodos  UV y 1 resistencia, esta resistencia tendrá que tener un valor máximo de:
(11Vcc - 3 x 3,3V) / 20 mA =  55 ohmios. => 56 ohmios.
Vamos a poner en lugar de la calculada (55 ohmios), que no tiene un valor comercial, una de un valor superior: 56 ohmios. Con esta resistencia, bajaremos algo la luminosidad de los diodos, pero aseguraremos que circulan por ellos menos de 20mA.
OJO con este valor: Yo he puesto 56 ohmios arriesgándome algo. Si la fuente que ponemos finalmente proporciona 12Vcc, la corriente sería superior a los 30mA (alrededor de 37,5mA) lo que destruiría parte de los diodos LEDs.
Ahora vamos a calcular la distancia de separación entre los diodos LEDs. Para ello nos valdremos de nuevo de las características de los diodos que vamos a utilizar, que nos dice entre otras características que el ángulo óptimo de visión (de radiación), que se obtiene mediante una pequeña lente acoplada sobre el elemento radiante, varía de 15º a 30º.
De acuerdo al esquema de al lado, tenemos que:
h = d / tan(a/2)
nosotros vamos a considerar que d=18mm y a=(15º+30º)/2, con lo que tenemos :
h = 18mm / tan(22,5/2) =  90,5mm
ésta es a la distancia que tendríamos que poner el fotolito de la retícula de diodos para recibir una luminosidad homogénea sobre todo el fotolito. Finalmente, yo consideré una distancia de 80mm ¿porqué? sobre todo, por no hacer la caja contenedora excesivamente alta, y porque estamos hablando de un ángulo óptimo, pero la radiación no cae abruptamente a partir del ángulo óptimo de visión, y, por tanto, aunque reduzcamos la altura h, continúa existiendo un solape completo entre los dos conos contiguos de radiación. Quizás alguien sea más purista y sitúe la distancia del fotolito al plano de la retícula de diodos a la que resulte del cálculo realizado. Bueno, sería interesante hacer experimentos y comprobar la eficiencia de este montaje con los datos teóricos.

Diseño de la placa

Con todas estas consideraciones, para el diseño de la placa utilicé, como en otras ocasiones anteriores, el programa Kicad. Con este programa diseñé el esquema electrónico y el circuito impreso.
En la sección de enlaces se encuentra el fichero comprimido UVLeds.zip con todos los ficheros generados con el programa Kicad.

Fabricación del circuito impreso

Como aún no tenía la insoladora, y como con los otros procedimientos que había utilizado, el de transferencia térmica del fotolito al circuito impreso, había obtenido un total fracaso, opté por dibujar (es un decir) las pistas del circuito impreso con un rotulador indeleble. Después de experimentar con varios rotuladores utilicé finalmente el modelo Lumocolor (negro) de la marca STAEDTLER. El circuito, después de aplicar el cloruro férrico, se quedó con este aspecto (sí, un poco chungo pero funcionó a la perfección):

Lista de componentes

Para la fabricación del circuito impreso he dispuesto de los siguientes componentes:
- 1 placa virgen de 100x150 mm2.
- 60 LEDs UV.
- 20 resistencias de 56 ohmios.
- 4 soportes de plástico autoadhesivos.
Los LEDs UV los compré a través de eBay a Bright Components. Los venden en bolsas de 50 leds a 4,53€ la bolsa (por lo que tuve que comprar dos bolsas) que con los gastos de envío (3,81€) me salió por un total de 12,87€ los 100 diodos UV. Decir que el envío me llegó en menos de 5 días.
El resto del material se puede comprar sin problemas en cualquier tienda de componentes electrónicos (también los diodos UV per oresultan más caros que comprándolos fuera).
El acabado final con los diodos y resistencias montados es el que se muestra a continuación:

Caja contenedora

La caja contenedora la he fabricado de madera ¿? y tiene el siguiente aspecto a medio terminar:
Se puede observar la retícula de diodos, el temporizador realizado con un 555 al que le he atacado un relé de salida para activar/desactivar la retícula de diodos.
y la consola de monitorización y control de la insoladora.
El led rojo indica que la insoladora está conectada a la fuente de alimentación.
El led verde se ilumina mientras los LEDs UV están encendidos.
El pulsador negro es para activar el temporizador.
El pulsador rojo es para desactivar el temporizador (y apagar manualmente los LEDs UV.
El commutador en 1) escala de hasta 10 minutos de temporizador; y en 2) escala de hasta 25 minutos.
Con el potenciómetro se regula el temporizador de 1 a 10 y de 10 a 25 minutos, más o menos.
El temporizador será objeto de otra entrada de este blog.
La caja contenedora se completó 1) con una ventana superior de cristal de 2mm de espesor, donde descansaría el fotolito y el circuito impreso fotosensible, y 2) con una tapa de madera a la que le pegué una lamina gruesa de goma para que hiciese presión sobre el fotolito+circuito impreso mientras estaban iluminando los LEDs UV.
Y eso es todo.

Enlaces

- IL010 UV09 Placa 35 LED UV enlazable. KIT desmontado Color UV, Alimentación 9V
- Espectro electromagnético
- Radiación ultravioleta
- Diversos usos de lámparas UV
- Billetes de Euro
- LED calculator
- Kicad
- Ficheros Kicad del esquema y circuito impreso de LEDs UV para insoladora
- Leyendo Entradas Digitales con las Raspberry. Calibrado de Temporizador para Insoladora

miércoles, 19 de marzo de 2014

Leyendo Entradas Digitales con las Raspberry. Calibrado de Temporizador para Insoladora

Durante todo estos últimos días me he dedicado a realizar una insoladora. Sí, una insoladora. ¿Y para qué quiero yo una insoladora? Pues muy sencillo. He desarrollado una tarjeta de expansión con Kicad y quería fabricarme una tarjeta con el diseño implementado. Empecé con el método de la transferencia térmica desde papel a placa de cobre, utilizando papel de todo tipo e impresoras láser y también de inyección de tinta...y no lo conseguí. Utilicé, para diseños muy sencillos, rotuladores indelebles (me compré una colección de marcas y tipos) consiguiendo unos resultados más que aceptables: 1) un circuito impreso temporizador para la insoladora; y 2) un circuito impreso para un array de leds ultravioletas, también para la insoladora. Prometo escribir sobre la fabricación de una insoladora más adelante. Pongo un anticipo de lo que he llegado a realizar, con la fotografía del artefacto funcionando:
En la imagen, con el array de Leds UV activo, podemos ver la disposición hexagonal de los leds (60) en primer plano y, detrás, el temporizador, pudiendo observar los dos condensadores (izda), el circuito integrado 555 (centro) y el relé (dcha) que conecta la tensión de 12Vcc.
Pero con un rotulador indeleble no puedes ambicionar fabricarte circuitos impresos de precisión y con acabado profesional. A lo mucho que puedes aspirar es a diseñar unas placas como las que hice para la insoladora en donde los componentes están suficientemente espaciados y las pistas pueden ser de un grosor aceptable y espaciadas suficientemente.
El temporizador lo he diseñado con dos escalas de tiempo y con ciertas posibilidades de calibración. Las dos escalas de tiempo permitían unos rangos de temporización teóricos de a) 1 a 5 minutos y de b) 2 a 20 minutos, más o menos. Pero ¿cómo podía saber con exactitud los rangos reales y calibrarlos a valores próximos a los teóricos? Pues, muy sencillo: utilizando las posibilidades de la Raspberry, que me permite leer el estado de unas entradas digitales, la de ciertos pines del conector de expansión de 2x13 pines. Y eso es lo que hice.

Consideraciones

El array de leds está alimentado a 12Vcc, voltaje que es proporcionado por el cierre de una salida del relé del temporizador. Teniendo en cuenta esto, haremos un montaje teórico con Fritzing, sustituyendo la salida del relé por un pulsador. En el montaje real, utilizaremos la salida del relé.

Descripción del circuito

Vamos a utilizar dos pines del Raspberry:
- el pin 18 (GPIO24) como entrada.
- el pin 22 (GPIO25) como salida.
La tensión que le llega a la entrada GPIO24 la vamos a reducir mediante un divisor de tensión. Hemos de tener en cuenta que lo que queremos comprobar es la presencia, o no, de una tensión de 12Vcc, y los pines del conector del Raspberry trabajan a 3,3Vcc. No es conveniente, por tanto, que superemos esta tensión. Por tanto, el divisor de tensión estará formado por dos resistencias en serie. Por un extremo conectaremos 12Vcc (el pulsador), el otro extremos lo pondremos a tierra; y el punto de unión de las dos resistencias será la que conectaremos al pin 18 (GPIO24) de la Raspberry.
      +12Vcc <=====> 10k ohms <=== pin 18 RaspPi ===>; 2k2 ohms <=====> GND
Además, también mostraremos la presencia de los 12Vcc encendiendo un led serializado con una resistencia de 1k ohms. Los cálculos se han hecho teniendo en cuenta que la tensión de caída a través del led es de 2Vcc, y que la máxima corriente a través del Led es de 20mA. Por tanto: (12Vcc-2Vcc)/20mA = 500 ohms, pero pongo una de 1k ohms al no tener ni los 500 ohms que me resulta en el cálculo ni el valor comercial de 560 ohms. He puesto la más próxima que tenía con un valor por encima de los 560. No puedo poner un valor menor, pues superaríamos los 20mA máximos que admite el diodo y nos lo fundiríamos.
¡¡¡¡ATENCIÓN!!! A la hora de montar el divisor de tensión habrá que extremar las precauciones. Yo me he cargado una entrada del Raspberry Pi.  Afortunadamente cuento con otras para probar el montaje.
Hasta aquí el diseño de entrada. Vamos a repetir la entrada del pin 18 replicando su valor en la salida del pin 22, también mediante un Led, serializado con una resistencia, que irá replicando el estado del otro Led, como resultado de la lectura que se haga con un programa. El cálculo de la resistencia a serializar es similar a los cálculos anteriores, cambiando la tensión que actuará sobre el Led+resistencia: (3,3Vcc-2Vcc)/20mA = 65 ohms, valor no comercial, pero pondremos el valor superior más próximo a este valor, resultando ser 75 ohms. En el esquema teórico aparece 220 ohms que también es válido, aunque el Led lucirá menos, pero se encenderá.

Programa de comprobación

Podemos hacer una comprobación del funcionamiento de los dos pines mediante la utilidad gpio. En Controlando un relé con una salida del conector GPIO del Raspberry Pi se muestra el modo de instalar esta utilidad, utilidad que viene incluida en la libreria WiringPi.
Lo primero que haremos será definir los dos pines, por lo que ejecutaremos:
gpio -g mode 25 out
gpio -g mode 24 in
Seguidamente, activaremos el Led de salida, y lo apagaremos, mediante las siguientes órdenes:
gpio -g write 25 1
gpio -g write 25 0
Podemos observar que estamos utilizando, en lugar del número físico del pin, el número lógico de la etiqueta GPIO. Podemos hacerlo así a lutilizar el parámetro -g. Si no queremos utilizar este parámetro, podemos hacer lo mismo ejecutando lo siguiente:
gpio mode 22 out
gpio mode 18 in
gpio write 22 1
gpio write 22 0
Y para la señal de entrada podemos invocar gpio con los parámetros oportunos:
gpio -g read 24
gpio read 18
Una vez que hemos comprobado el correcto funcionamiento del pin de entrada y del de salida, vamos a calcular los tiempos de funcionamiento del temporizador que controlará el encendido de los Leds UV de la insoladora. El programa nos va a permitir mostrar el tiempo en que está activo el relé de salida del temporizador, y por tanto el Led indicador encendido, lo hemos realizado en python.
from datetime import datetime
import RPi.GPIO as GPIO

GPIO.setmode(GPIO.BOARD)
GPIO.setup(18, GPIO.IN)
GPIO.setup(22, GPIO.OUT)

state = 0
st = datetime.now()
while True:

 # state toggle button is pressed
        if ( GPIO.input(18) == True ):
  if (state == 0):
   st = datetime.now()
   state = 1
   GPIO.output(22, GPIO.HIGH)
   print "START: ", st.strftime("%H:%M:%S")
 if ( GPIO.input(18) == False):
  if (state == 1):
   state = 0
   GPIO.output(22, GPIO.LOW)
   st2 = datetime.now()
   print "STOP:  ",st2.strftime("%H:%M:%S"), (st2-st)
Lo que hace el programa es, en primer lugar, configurar los dos pines utilizados para seguidamente entrar en un bucle sin fin, en donde comprueba los cambios de estado del pin de entrada, replicándolos en el pin de salida. Si el estado pasa a '1', se muestra y se guarda la hora de inicio. Cuando el estado pasa a '0', se muestra la hora de finalización y el tiempo que ha transcurrido desde que se inició el temporizador.
En la siguiente imagen podemos observar el programa funcionando, mostrando los tiempos de inicio y final del temporizador, en las dos escalas implementadas.
Con este programa podemos ir ajustando un potenciómetro interior, y así ir calibrando el tiempo mínimo de una de las escalas con las que cuenta el temporizador. Para ajustar exactamente los tiempos de las dos escalas, mínimo y máximo, tendría que modificar el diseño e incluir más potenciómetros. Pero así me es suficiente para insolar una placa fotosensible, ya que estamos hablando de tiempos de insolación de alrededor de 3 minutos, valor que está dentro del rango de la escala pequeña.
 En la siguiente imagen podemos ver el montaje funcionando.
Y eso es todo. Como ya he dicho, en cuanto pueda publicaré un par de artículos sobre la insoladora y sobre el temporizador, incluyendo los resultados de las pruebas realizadas.

Enlaces

- WiringPi
- raspberry-gpio-python
- Librería RPi.GPIO 0.5.4
- LED calculator for single LEDs
- timertest.py
- Controlando un relé con una salida del conector GPIO del Raspberry Pi