Arduino Nano - RGB LED
Deze tutorial legt uit hoe u de Arduino Nano gebruikt om een RGB LED te bedienen. We leren in detail:
- Hoe een RGB LED werkt.
- Hoe u een RGB LED aansluit op een Arduino Nano.
- Hoe u Arduino Nano programmeert voor het bedienen van de kleur van de RGB LED.
Hardware Benodigd
Of u kunt de volgende kits kopen:
| 1 | × | DIYables Sensorkit (30 sensoren/displays) | |
| 1 | × | DIYables Sensorkit (18 sensoren/displays) |
Over RGB LED
De RGB LED is in staat om elke kleur te produceren door de drie primaire kleuren te combineren: rood, groen en blauw. Hij bestaat uit drie afzonderlijke LEDs (rood, groen en blauw) die in één behuizing zijn ondergebracht.
De RGB LED Pinout
Een RGB LED heeft vier pinnen:
- Common (Cathode-) pin: moet worden aangesloten op GND (0V)
- R (red): pin wordt gebruikt voor het regelen van rood
- G (green): pin wordt gebruikt voor het regelen van groen
- B (blue): pin wordt gebruikt voor het regelen van blauw

Om een RGB LED te laten werken met Arduino Nano, moeten we gebruikmaken van stroombegrenzende weerstanden. Dit kan soms wat ingewikkeld zijn om alles correct aan te sluiten. Gelukkig kunnen we ook de handige RGB LED module gebruiken die deze weerstanden al ingebouwd heeft!
De RGB LED Module heeft ook vier pinnen:
- Common (Cathode-) pin: moet verbonden worden met GND (0V)
- R (red): pin wordt gebruikt voor het bedienen van rood
- G (green): pin wordt gebruikt voor het bedienen van groen
- B (blue): pin wordt gebruikt voor het bedienen van blauw

※ Notiz:
De common pin van een RGB LED kan zowel een kathode als een anode zijn, afhankelijk van het type RGB LED. In deze tutorial gebruiken we een common cathode LED.
Hoe het werkt
In de natuurkunde bestaat een kleur uit drie componenten: Rood (R), Groen (G) en Blauw (B). De waarde van elke kleur ligt tussen 0 en 255. De combinatie van de drie waarden creëert in totaal 256 x 256 x 256 kleuren.
We kunnen de Arduino Nano gebruiken om elke gewenste kleur te maken door PWM-signalen (met een duty cycle van 0 tot 255) te leveren aan de R-, G- en B-pinnen van de RGB LED.
De duty cycle van de PWM-signalen die naar de R-, G- en B-pinnen worden gestuurd is evenredig aan de respectievelijke Rood (R), Groen (G) en Blauw (B) kleurwaarden.
Aansluitschema
- Aansluitschema tussen Arduino Nano en RGB LED

This image is created using Fritzing. Click to enlarge image
- Aansluitschema tussen Arduino Nano en RGB LED module

This image is created using Fritzing. Click to enlarge image
Hoe RGB LED te besturen
Laten we leren hoe we de RGB LED kunnen instellen op elke kleur, bijvoorbeeld #00979D, stap voor stap:
- Bepaal eerst welke kleur u wilt weergeven en zoek de kleurcode op. Tips:
- U kunt de gewenste kleurcode vinden met de color picker
- Wilt u een kleur gebruiken uit een afbeelding? Gebruik dan de online tool Colors From Image
- Zet vervolgens de kleurcode om naar R, G en B waarden met behulp van de tool van w3schools. Noteer deze waarden. In dit voorbeeld: R = 0, G = 151, B = 157

- Geef de Arduino Nano pinnen aan die verbonden zijn met de R-, G- en B-pinnen. Bijvoorbeeld:
- Zet de Arduino Nano pinnen in output-modus:
- Stuur signalen naar de LED zodat deze de kleur #00979D uitstraalt, bestaande uit Rood = 0, Groen = 151 en Blauw = 157.
Arduino Nano - RGB LED Voorbeeldcode
De volgende Arduino Nano code verandert de kleur van de LED in een vaste volgorde:
- #00C9CC (Rood = 0, Groen = 201, Blauw = 204)
- #F7788A (Rood = 247, Groen = 120, Blauw = 138)
- #34A853 (Rood = 52, Groen = 168, Blauw = 83)
Bij gebruik van veel kleuren kunnen we de Arduino Nano code inkorten door een functie te maken:
Aanvullende Kennis
Voor een RGB LED met een common Anode moet u:
- De common pin aansluiten op 3.3V van de Arduino Nano.
- De functie analogWrite() gebruiken met R-, G- en B-waarden als 255 minus de gewenste waarde per kleur respectievelijk.
Een reeks RGB LEDs die aan elkaar gekoppeld zijn, vormt een RGB LED Strip. LED-strips kunnen worden onderverdeeld in adresseerbare LED-strips en niet-adresseerbare LED-strips. We zullen tutorials maken voor beide types LED-strips.
※ Notiz:
Gebruik geen enkele weerstand op de common pin van een RGB LED in plaats van drie weerstanden op de andere pinnen.
Dit komt doordat, hoewel het theoretisch toegestaan is om één weerstand in de common pin te gebruiken, dit in de praktijk niet werkt. De LEDs in een RGB-behuizing zijn namelijk niet identiek, waardoor de weerstanden per LED verschillend moeten zijn. Dit leidt tot ongelijke stroomverdeling, verschillende helderheidsniveaus en kan schade veroorzaken aan één of meer LEDs en uiteindelijk ook aan de anderen.