Rozwiązania sprzętowe do włączania / wyłączania LED z wyjściem cyfrowym


11

Chciałbym znaleźć rozwiązanie sprzętowe, które sprawi, że diody LED zanikają od cyfrowych pinów. tzn. zamiast włączania / wyłączania, powoli zanikaj (500ms) do / z pełnej jasności. Nie wyobrażam sobie, aby mały kondensator rozładował się w pół sekundy ... Idealnie byłby w ładnym pakiecie DIP16, dzięki czemu mogę uzyskać szereg blaknących diod LED. Czy istnieje mój składnik marzeń?


Napędzać diodę LED z oscylatora fal trójkątnych?
Bitrex,

1
Jeśli zaprogramuję do tego mikrokontroler i umieszczę własny numer części na paczce, a następnie go sprzedam, czy to się liczy jako rozwiązanie sprzętowe?
gbarry

1
Rozumiem, że poświęciłeś trochę czasu na sprzedanie mi skryptu PWM, ale naprawdę zastanawiałem się, czy istnieje element, który mógłby zaokrąglić sygnał cyfrowy ponad 500 ms bez jakiejkolwiek formy oscylacji.
rom

Tylko teoretyczne. Przeszedłem przez te same myśli i ostatecznie zdałem sobie sprawę, że na pewnym poziomie chip jest chipem. Jednak nie chcesz oscylacji, więc zawęża to pytanie.
gbarry

Dlaczego bez oscylacji?
starblue

Odpowiedzi:


14

Typowym sposobem na to jest użycie PWM (modulacja szerokości impulsu)

Prawie każdy nowoczesny mikrokontroler ma urządzenie peryferyjne PWM, które można skonfigurować w tym celu. Jeśli nie chcesz używać mikrokontrolera, możesz użyć dedykowanego układu scalonego PWM lub układu czasowego, takiego jak wszechobecny 555.

Proces jest prosty, częstotliwość impulsów jest ustawiana wystarczająco szybko, aby ludzkie oko nie mogło wykryć migotania (zwykle powyżej 25 Hz - patrz Persistence Of Vision ), a czas włączenia vs czas wyłączenia zmienia się od 100% na (pełna jasność) do 50% na 50% zniżki (połowa jasności) do 0% włączenia (wyłączenie)
Należy pamiętać, że można to z łatwością wykorzystać w przypadku macierzy, wystarczy dostarczyć PWM do wszystkich tranzystorów sterownika LED (upewnij się, że prąd bazowy jest odpowiedni dla bipolarnych, lub użyj tranzystorów MOSFET Wybór opcji zależy od rodzaju napędzanej diody LED, wysokiego / niskiego prądu)

Sprawdź w sieci „555 LED Fade” i powinieneś uzyskać mnóstwo wyników. Oto jeden losowo wybrany z tego miejsca (nie sprawdziłem go, więc nie mogę potwierdzić, że działa poprawnie):

Zanikanie LED

Alternatywnie, jeśli absolutna dokładność taktowania nie jest tak ważna, prostą opcją byłoby użycie filtra RC i przełącznika tranzystorowego. W ten sposób nasadka nie musi dostarczać prądu LED, a jedynie prąd podstawowy. Coś takiego:

Fade Circuit

Symulacja:

Symulacja obwodu zanikania

Powinien wystarczyć dowolny NPN ogólnego zastosowania, a Ty możesz dostosować wartości R i C.

Opcję tę można łatwo rozszerzyć na obecną macierz lustrzaną, dodając opamp. Obwód ten powinien działać dobrze, o ile wszystkie tranzystory są tego samego typu (zastosowane zasilanie wynosi + 5 V):

LED Fade Array

Symulacja:

Symulacja zanikania LED

Jeśli masz wystarczająco wysokie napięcie zasilania, diody LED mogą łączyć się szeregowo w ten sposób (stosowane tutaj zasilanie wynosi + 10 V):

Seria Opamp LED Fade

Symulacja:

Symulacja serii Opamp LED Fade

Alternatywnie, jeśli masz niskie napięcie zasilania, ale chcesz napędzać diody LED szeregowo, istnieje wiele tanich układów scalonych doładowania, takich jak CAT4238 . Ta część może przyciemniać diody LED za pomocą PWM lub zmieniającego się napięcia stałego (szczegóły w arkuszu danych)

LED Boost IC


Kompleksowa odpowiedź, dziękuję. Konfiguracja RC jest najbliższa temu, czego szukam, jednak diody LED zanikające zsynchronizowane z dziwnym poziomem jasności nie brzmią obiecująco. Jeśli mam rację, czy nie byłoby możliwe wyprodukowanie niezależnego układu scalonego ze zmiennym opornikiem, aby zmienić wartość RC i ostatecznie dostosować czas zanikania?
rom

1
@rom - o ile tranzystory są tego samego typu i całkiem dobrze dopasowane, obwód powinien działać dobrze. Jeśli jednak martwisz się tym, daj mi trochę czasu, a ja opublikuję podobną opcję, która nie będzie cierpiała z powodu tego problemu, i będzie kontrolowana przez rezystor zmienny dla czasu zanikania (możemy również uczynić zanikanie liniowym).
Oli Glaser,

1
@rom - Zmieniłem obwody, aby uzyskać bardziej stabilne wersje. Każdy z nich powinien być odpowiedni. Opcje szeregowe byłyby najlepszą opcją, jeśli masz zapas mocy, ale równoległe źródło prądu będzie w porządku, dopóki użyjesz tych samych tranzystorów, uzyskasz odpowiednio dobrane wzmocnienia (jeśli masz tester tranzystorów, możesz je wybrać ręcznie, jeśli chcesz, ale obecna różnica i tak będzie niewielka i prawdopodobnie niewystarczająca, aby być widocznym) Dodałem przykład układu scalonego - możesz również przejrzeć wszystkie inne opcje .
Oli Glaser,


3

Możesz użyć małej nasadki + dużego rezystora, aby wygenerować ładną długą charakterystykę ładowania (t = RC), a następnie wprowadzić ją do podstawy tranzystora i stamtąd uruchomić diodę LED.

Pozwala to na większy opór, ponieważ prąd przez diodę LED nie jest ograniczony wielkością rezystora, a następnie można użyć małej nasadki.

Konieczne byłoby uprzedzenie tranzystora, aby był on używany jako wzmacniacz (jeśli uderzy w nasycenie, wówczas dioda LED po prostu pozostanie włączona).


1

Jeśli przez pin cyfrowy używasz wyjścia z pewnego rodzaju procesora, można zmienić jasność oprogramowania układowego. Gdy zmieniasz cykl pracy sworznia, oko działa jak filtr i postrzega krótszy czas jako ściemnienie jasności.

1 - Użyj wyjścia pin PWM zamiast cyfrowych pinów GPIO. Zmieniając kilka rejestrów, możesz zmienić czas włączenia diody LED, a tym samym jasność.

2 - Użyj licznika czasu (odpytywanego lub przerywającego), aby zmienić stan pinezki.

3 - Użyj zewnętrznych układów rejestru przesuwnego, aby zatrzasnąć czasy włączenia / wyłączenia n diod LED. Chociaż wymaga to większego wysiłku programistycznego, jest rozszerzalny i wykorzystuje mniej pinów GPIO niż (1) i (2).


0

Sterowniki PWM LED. Potrzebują jednak konfiguracji z mikrokontrolera. 555 Timer + kilka rezystorów i czapek może zrobić to samo, nie wymaga oprogramowania.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.