Solution matérielle pour allumer / éteindre les LED avec sortie numérique


11

J'aimerais trouver une solution matérielle pour faire disparaître les LED des broches numériques. c'est-à-dire qu'au lieu d'allumer / éteindre, la décoloration lente (500 ms) entre / hors de la pleine luminosité. Je ne peux pas imaginer qu'un petit condensateur prenne une demi-seconde pour se décharger ... Idéalement, ce serait dans un joli boîtier DIP16 afin que je puisse obtenir un tableau de LED qui s'estompent. Ma composante de rêve existe-t-elle?


Conduire une LED à partir d'un oscillateur à ondes triangulaires?
Bitrex

1
Si je programme un microcontrôleur pour ce faire, et que je mets mon propre numéro de pièce sur le paquet et que je vous le vends, est-ce que cela compte comme une solution matérielle?
gbarry

1
J'apprécie que vous preniez du temps de votre journée pour me vendre un script PWM, mais je me demandais vraiment s'il y avait un composant qui pourrait arrondir un signal numérique sur 500 ms sans une certaine forme d'oscillation.
rom

Théorique, seulement. Je suis passé par les mêmes pensées et j'ai finalement réalisé qu'à un certain niveau, une puce est une puce. Cependant, vous ne voulez pas d'oscillations, ce qui réduit la question.
gbarry

Pourquoi sans oscillation?
starblue

Réponses:


14

La façon habituelle de le faire est d'utiliser PWM (Pulse Width Modulation)

À peu près n'importe quel microcontrôleur moderne possède un périphérique PWM qui peut être configuré à cet effet. Si vous ne souhaitez pas utiliser un microcontrôleur, un CI PWM dédié ou un CI de minuterie comme l'omniprésent 555 peut être utilisé.

Le processus est simple, la fréquence des impulsions est réglée assez rapidement pour que l'œil humain ne puisse pas détecter le scintillement (généralement au-dessus de 25 Hz - voir Persistance de la vision ) et le temps allumé vs le temps libre varie de 100% (pleine luminosité) à 50%. 50% off (demi-luminosité) à 0% on (off)
Notez que cela peut facilement être utilisé pour un réseau, vous fournissez simplement le PWM à tous les transistors du pilote LED (assurez-vous que le courant de base est adéquat pour bipolaire, ou utilisez des MOSFET Les choix de conception dépendraient du type de LED que vous conduisez, courant élevé / faible)

Vérifiez sur le "net pour" 555 LED Fade "et vous devriez obtenir beaucoup de résultats. En voici un choisi au hasard d' ici (je ne l'ai pas vérifié donc je ne peux pas confirmer qu'il fonctionne correctement):

Fondu LED

Alternativement, si la précision absolue de la synchronisation n'est pas si importante, une option simple serait d'utiliser un filtre RC et un commutateur à transistor. De cette façon, le capuchon n'a pas à fournir le courant LED, seulement le courant de base. Quelque chose comme ça:

Circuit de fondu

Simulation:

Fade Circuit Simulation

Tout NPN à usage général devrait le faire, et vous pouvez modifier les valeurs R et C en fonction.

Cette option peut facilement être étendue à un réseau de miroirs actuel avec l'ajout d'un ampli-op. Ce circuit devrait bien fonctionner tant que les transistors sont tous du même type (l'alimentation utilisée est de + 5V):

LED Fade Array

Simulation:

LED Fade Array Simulation

Si vous avez une tension d'alimentation suffisamment élevée, les LED peuvent aller en série comme ceci (l'alimentation utilisée ici est de + 10 V):

Opamp LED Fade Series

Simulation:

Opamp LED Fade Series Simulation

Alternativement, si vous avez une faible tension d'alimentation mais que vous souhaitez piloter les LED en série, il existe de nombreux circuits intégrés de suralimentation bon marché tels que le CAT4238 . Cette partie peut atténuer les LED en utilisant PWM ou une tension CC variable (les détails sont dans la fiche technique)

LED Boost IC


Réponse complète, merci. La configuration RC est la plus proche de ce que je recherche, mais les LED qui ne sont pas synchronisées avec des niveaux de luminosité étranges ne semblent pas prometteuses. Si j'ai bien compris, ne serait-il pas possible de fabriquer un circuit intégré autonome avec une résistance variable pour modifier la valeur RC et finalement régler le temps de décoloration?
rom

1
@rom - tant que les transistors sont du même type et correspondent assez bien, le circuit devrait fonctionner correctement. Cependant, si cela vous inquiète, donnez-moi un peu de temps et je publierai une option similaire qui ne souffrira pas de ce problème, et contrôlée par une résistance variable pour le temps de fondu (nous pouvons également rendre le fondu linéaire).
Oli Glaser

1
@rom - J'ai modifié les circuits pour des versions plus stables. N'importe lequel de ces éléments devrait convenir. Les options de série seraient la meilleure option si vous avez la marge de sécurité d'alimentation, mais la source de courant parallèle sera correcte tant que vous utilisez les mêmes transistors, les gains seront raisonnablement bien adaptés (si vous avez un testeur de transistor, vous pouvez les choisir manuellement si vous le souhaitez, mais la différence actuelle sera de toute façon faible, et probablement pas assez pour être visible) J'ai ajouté un exemple de CI - vous voudrez peut-être également jeter un œil à toutes les autres options .
Oli Glaser

10

Comment c'est?

Le FAN5646 est une solution flexible et compacte pour une LED clignotante / atténuée.

circuit d'application typique

Fiche technique FAN5646


C'est une puce intéressante. J'aurai besoin de goûter cela. Sweet find dextorb
Passerby

3

Vous pouvez utiliser un petit capuchon + une grande résistance pour générer une belle caractéristique de charge longue (t = RC), puis l'injecter dans la base d'un transistor et piloter la LED à partir de là.

Cela permet une plus grande résistance car le courant à travers la LED n'est pas limité par la taille de la résistance, et vous pouvez alors utiliser un petit capuchon.

Il serait nécessaire de polariser le transistor pour qu'il soit utilisé comme amplificateur (s'il atteint la saturation, la LED restera simplement allumée).


1

Si par une broche numérique vous utilisez une sortie d'un certain type de processeur, il est possible de changer la luminosité dans le firmware. Lorsque vous modifiez le rapport cyclique de la broche, l'œil agit comme un filtre et perçoit un temps plus court comme une gradation de la luminosité.

1 - Utilisez une sortie de broche PWM au lieu d'une broche GPIO numérique. En changeant quelques registres, vous pouvez changer le temps d'activation de la LED et donc la luminosité.

2 - Utilisez une minuterie (interrogée ou interrompue) pour changer l'état de votre broche.

3 - Utilisez des circuits intégrés de registre à décalage externes pour verrouiller les temps d'activation / désactivation de n LED. Bien que cela nécessite plus d'efforts de programmation, il est extensible et utilise moins de broches GPIO que (1) et (2).


0

Pilotes LED PWM. Ils ont cependant besoin d'une configuration à partir d'un microcontrôleur. 555 Timer + quelques résistances et capuchons peuvent faire la même chose, aucun logiciel requis.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.