Control PWM para iluminación sistema visión artificial

En este post, vamos a ver un circuito bastante simple, pero no con ello poco útil, al contrario, es un circuito diseñado para cumplir con su finalidad en una máquina específica y facilitar el reconocimiento de objetos a un sistema de visión artificial Siemens.
Este sistema de visión debe reconocer la posición en la que se encuentran unas piezas de acero que salen de un proceso de lavado, pasivado y secado. Como consecuencia del tipo de acero, del temple que se le ha dado y de los posibles restos de agua o aceites que pueden llevar las piezas, el sistema de visión ( que trabaja detectando zonas mas claras u oscuras en la gama de los grises ) llega a fallar por exceso o falta de iluminación de la pieza.
Como la cámara toma varias muestras por segundo de la imágen, antes de darle la vuelta a la pieza y examinar la otra cara, en ese lapso de tiempo ajustando bien la cantidad de luz a aplicar se pueden evitar los falsos reflejos ( producidos por restos de aceites o agua )o la escasez de luz ( producida por el tono del acero ). No sería de recibo que alguien estuviera ajustando continuamente la cantidad de luz a iluminar el objeto, porque para eso ya se encargaría de posicionar las piezas.
La solución es hacer que el foco que ilumina la escena ( un foco simple de la marca ALUD compuesto de 32 leds rojos de alta luminosidad y alimentado a 24v ) varíe constantemente de intensidad cada segundo aprox. desde un 70% a un 100% de su potencia total.
Parece una solución simple, pero ha sido la más efectiva en este caso tan particular.

El foco en cuestión es este:



El control PWM ( Pulse Width Modulation ) o Modulación por Ancho de Pulso lo que hace en nuestro circuito es generar una señal rectangular de 200Hz, en la que la longitud del semiciclo positivo ( Duty cycle ) va variando en cada ciclo completo (de los 200Hz) desde el 70% al 100% de la longitud total de la señal. En este caso particular, además se repite cada ciclo de PWM 2 veces, para que el efecto fade que varía desde el 70% al 100% de la intensidad total del foco dure aproximadamente unos 2 segundos, tiempo necesario para que la cámara realice varias tomas y pueda girar la pieza a identificar.

El MCU utilizado ha sido un PIC16F629 por poseer entradas analógicas que leen dos potenciómetros, los cuales establecen el valor mínimo de la intensidad del foco ( en el ejemplo 70%) y el valor máximo ( en el ejemplo el 100% )

Este es el esquema:



Y esta la PCB realizada:



La placa queda como sigue a falta de buscarle un emplazamiento y cortar los mandos de los potenciómetros:





Aqui dejo un pequeño video grabado con el móvil de una prueba realizada sin repetición de ciclo de PWM y variando de 0% - 100% - 0%

4 comentarios:

radikal dijo...

Lo que se pierden las multinacionales en sus robots....

Se siente (Bart simpson )

Anónimo dijo...

HOLA!! me interesa el proyecto.. tendrias el firmware para el pic?

muchas gracias

Laura dijo...

Muy interesante. La iluminacion led tiene un papel muy importante en la visión artificial, sin duda! Saludos

Ruben Martinez dijo...

Muy interesante! La iluminación es fundamental en la visión artificial. Un saludo!

 
RaDiKalDeSIG | Designed by Techtrends | © 2007-2008 All rights reserved