controlar 32 lámparas en comunicación serie

Sección dedicada a imágenes de circuitos, diagramas que no requieren explicación previa, Proyectos sencillos.
Area para desarrollo de proyectos, colaboración de toda la comunidad en proyectos. Solución de dudas y aportes.

No publicar manuales, no publicar temas ajenos a los proyectos. de ser necesario, hacer indicación con enlace entre etiquetas CODE
Avatar de Usuario
Enigma
Administrador del Sitio
Administrador del Sitio
Mensajes: 1268
Registrado: 20 Oct 2013, 16:26
Genero: Mujer
Profesion: Webmaster CEO SEO
Ubicacion: Matrix
Navegador: Chrome
Contactar:

controlar 32 lámparas en comunicación serie

Mensaje sin leer por Enigma » 26 Ene 2018, 18:24

controlar 32 lámparas en comunicación serie

En esta imagen se puede ver el esquema para hacer el encendido de varias lámparas en modo serie.

Imagen

Los circuitos que usamos son:

7414 es un circuito integrado TTL que dispone 6 inversores del tipo Schmitt Trigger, con esto conseguimos eliminar la señal de ruidos y eliminar el umbral de incertidumbre donde los niveles de voltaje donde no se puede determinar si es 1 ó 0.
74164 es un circuito integrado TTL que tiene un registro de desplazamiento de 8 bits formado por biestables tipo D.
ULN2801A-05A Es un circuito integrado que puede ser usado en tecnologías CMOS y TTL y esta compuesto por 8 transistores Darlington.
Este circuito esta pensado para controlar muchas salidas utilizando pocos cables, ya que la placa necesita solo 6 lineas, 3 para control y 3 para las alimentaciones. Esta placa la podemos controlar con un arduino o un sistema microcontrolador que disponga de 3 lineas de salida para poder controlarla. El circuito dispone de un filtro paso bajo formado por la resistencia de 100 ohmios y el condensador de 1 nF que tiene como misión limpiar de pequeñas interferencias las señales de control, con esto lograremos poder transmitir los datos a varios metros de una manera segura.

El circuito descrito contiene 4 registros de desplazamiento pero podríamos haber puesto 8 o el numero que nos hubiera hecho falta para obtener las salidas que nos hicieran falta.

La manera de hacer el control por programa seria declarar un array booleano de 32 posiciones en este caso que será el que almacene si la salida esta a “1” ó “0”, después cada x tiempo tendremos que recorrer el array y a cada posición tendremos que sacar el dato y dar un pulso de CLK por las lineas del arduino o microcontrolador que hallamos escogido, la linea de Reset la utilizamos para apagar todas las luces y la podemos asociar a alguna señal de reset de nuestro sistema o controlarla con una linea de salida.

Esta rutina para serializar lo mejor seria que quedara colocada en alguna interrupción que transcurriera cada 20 milisegundos por ejemplo, de esta manera dejamos libre de este trabajo al programa principal y solo cambiando los valores del array booleano cuando nos interese la rutina de interrupción será la encargada de transmitirlo a la placa de los registros de desplazamiento.

Los datos antes de sacarlos por el arduino hay que invertirlos o bien colocar otro inversor en serie con el que hay en el esquema.

El uso mas adecuado de este circuito quizá sea el de encender y apagar lámparas de señalización, también podemos controlar LEDs pero los tiempos de carga de los registros de desplazamiento tenemos que procurar que sean lo mas cortos posibles para evitar parpadeos. Este circuito seria una buena práctica para probarlo en el protoboard con unos pulsadores en las entradas de Datos, CLK y Reset antes de llevarlo a la práctica en un sistema microcontrolador.



Volver a “Proyectos y Circuitos Didacticos”