In diesem Projekt werden wir 5 RGB-LEDs (Rot, Grün, Blau) an Arduino Uno anschließen. Diese LEDs sind parallel geschaltet, um die PIN-Verwendung von Uno zu reduzieren.
Eine typische RGB-LED ist in der folgenden Abbildung dargestellt:
Die RGB-LED hat vier Pins (siehe Abbildung).
PIN1: Minuspol Farbe 1 oder Pluspol Farbe 1
PIN2: Gemeinsames Positiv für alle drei Farben oder gemeinsames Negativ für alle drei Farben
PIN3: Minuspol Farbe 2 oder Pluspol Farbe 2
PIN4: Minuspol Farbe 3 oder Pluspol Farbe 3
Es gibt also zwei Arten von RGB-LEDs: eine vom Typ mit gemeinsamem Kathodentyp (gemeinsam negativ) und eine vom Typ mit gemeinsamem Anodentyp (gemeinsam positiv). In CC (Common Cathode oder Common Negative) gibt es drei positive Anschlüsse, wobei jeder Anschluss eine Farbe darstellt, und einen negativen Anschluss, der alle drei Farben darstellt. Die interne Schaltung einer CC-RGB-LED kann wie folgt dargestellt werden.
Wenn ROT oben eingeschaltet sein soll, müssen wir den ROTEN LED-Pin mit Strom versorgen und das gemeinsame Negativ erden. Gleiches gilt für alle LEDs. In CA (Common Anode oder Common Positive) gibt es drei negative Anschlüsse, wobei jeder Anschluss eine Farbe darstellt, und einen positiven Anschluss, der alle drei Farben darstellt. Der interne Schaltkreis einer CA RGB-LED kann wie in Abbildung dargestellt dargestellt werden.
Wenn ROT oben eingeschaltet sein soll, müssen wir den ROTEN LED-Pin erden und das gemeinsame Plus mit Strom versorgen. Gleiches gilt für alle LEDs.
In unserer Schaltung werden wir den CA-Typ (Common Anode oder Common Positive) verwenden. Für den Anschluss von 5 RGB-LEDs an Arduino benötigen wir normalerweise 5x4 = 20 PINS. Wir werden diese PIN-Verwendung auf 8 reduzieren, indem wir RGB-LEDs parallel anschließen und eine Technik namens Multiplexing verwenden.
Komponenten
Hardware: UNO, Netzteil (5 V), 1 KΩ-Widerstand (3 Stück), RGB-LED (Rot, Grün, Blau) (5 Stück)
Software: Atmel Studio 6.2 oder Aurdino jeden Abend.
Schaltungs- und Arbeitserklärung
Die Schaltungsverbindung für die RGB-LED-Arduino-Schnittstelle ist in der folgenden Abbildung dargestellt.
Angenommen, wir möchten die ROTE LED in SET1 und die GRÜNE LED in SET2 drehen. Wir versorgen die PIN8 und PIN9 von UNO mit Strom und erden PIN7, PIN6.
Mit diesem Fluss haben wir ROT im ersten SET und GRÜN im zweiten SET ON, aber wir haben GRÜN in SET1 und ROT in SET2 ON damit. In einfacher Analogie können wir sehen, dass alle vier LEDs den Stromkreis mit der obigen Konfiguration schließen und somit alle leuchten.
Um dieses Problem zu beheben, schalten wir jeweils nur ein SET ein. Sagen wir bei t = 0m SEC, SET1 ist eingeschaltet. Bei t = 1 m SEC wird SET1 ausgeschaltet und SET2 eingeschaltet. Wieder bei t = 6 m SEC wird SET5 ausgeschaltet und SET1 eingeschaltet. Das geht weiter.
Hier ist der Trick, dass das menschliche Auge eine Frequenz von nicht mehr als 30 Hz erfassen kann. Dies ist der Fall, wenn eine LED kontinuierlich mit einer Frequenz von 30 Hz oder mehr ein- und ausgeschaltet wird. Das Auge sieht die LED als dauerhaft an. Dies ist jedoch nicht der Fall. Die LED leuchtet ständig ein und aus. Diese Technik wird als Multiplexing bezeichnet.
Einfach gesagt, wir werden jede gemeinsame Kathode mit 5 SETs 1 Millisekunde mit Strom versorgen. In 5 Millisekunden haben wir den Zyklus abgeschlossen. Danach beginnt der Zyklus wieder mit SET1, dies geht für immer weiter. Da die LED-SETs zu schnell ein- und ausgeschaltet werden. Der Mensch sagt voraus, dass alle SETs ständig eingeschaltet sind.
Wenn wir also SET1 bei t = 0 Millisekunden mit Strom versorgen, erden wir den ROTEN Pin. Bei t = 1 Millisekunde versorgen wir den SET2 mit Strom und erden den GRÜNEN Pin (zu diesem Zeitpunkt werden ROT und BLAU auf HIGH gezogen). Die Schleife geht schnell und das Auge sieht ROT im ERSTEN SET und GRÜN im ZWEITEN SET.
Auf diese Weise programmieren wir eine RGB-LED. Im Programm leuchten alle Farben langsam, um zu sehen, wie Multiplexing funktioniert.