Inhoudsopgave:

Adresseerbare strip LED politie strobo - Ajarnpa
Adresseerbare strip LED politie strobo - Ajarnpa

Video: Adresseerbare strip LED politie strobo - Ajarnpa

Video: Adresseerbare strip LED politie strobo - Ajarnpa
Video: how to use Smart Digital WS2811 DC5V adresseerbare led strip to make panel 2024, Juli-
Anonim
Image
Image

Deze Police Strobo Light Bar is gemaakt met een enkele WS2812B adresseerbare strip LED-balk (97 cm, 29 LEDS) en een Arduino Nano.

Deze oplossing maakt het mogelijk om verschillende lichtpatronen te maken met verschillende kleurenschema's die anders niet mogelijk zijn met de standaard Rood-Wit-Blauwe LED-balk (zoals gebruikt voor politie-stroboscooplampen) of RGB LED-balk.

Ik zou aanraden dit niet in uw voertuig te gebruiken, tenzij u de lokale wetgeving hebt gecontroleerd en een wettelijke/geldige reden hebt om dit te doen.

Stap 1: Hoe WS2812B Strip-LED's werken

Circuitbedrading
Circuitbedrading

De WS2812B LED strip bestaat uit type 5050 RGB LED's waarin het WS2812B LED driver IC is geïntegreerd.

Afhankelijk van de intensiteit van de drie afzonderlijke rode, groene en blauwe LED's is het mogelijk om elke gewenste kleur te simuleren.

Het mooie van deze LED's is dat het mogelijk is om zelfs de hele LED-strip aan te sturen met slechts een enkele pin van ons Arduino-bord.

Elke LED heeft drie connectoren aan elk uiteinde, twee voor de voeding en één voor de data. De pijl geeft de richting van de gegevensstroom aan. Het gegevensuitgangspad van de vorige LED is verbonden met het gegevensinvoerpad van de volgende LED. We kunnen de strip op elke gewenste maat knippen en de LED's op afstand houden met behulp van enkele draden.

Ze werken op 5V DC en elke rode, groene en blauwe LED trekt ongeveer 20mA, of dat is in totaal 60mA voor elke LED op volledige helderheid.

Als Arduino wordt gevoed via USB, kan de 5V-pin slechts ongeveer 400 mA aan, en wanneer hij wordt gevoed via de barrel-voedingsconnector, kan de 5V-pin ongeveer 900 mA aan. Dus als u meer LED's gebruikt en de hoeveelheid stroom die ze zouden trekken de bovengenoemde limieten overschrijdt, moet u een aparte 5V-voeding gebruiken.

In zo'n geval moet je ook de twee Ground-lijnen twee met elkaar verbinden.

Daarnaast wordt aanbevolen om een weerstand van ongeveer 330 Ohm te gebruiken tussen de Arduino en de datapin van de LED-strip om de ruis op die lijn te verminderen, evenals een condensator van ongeveer 100uF over de 5V en de aarde om de voeding glad te strijken.

Stap 2: Circuitbedrading

Het bedradingsschema om de Arduino nano aan te sluiten op de WS2812B adresseerbare strip LED-balk is heel eenvoudig.

Op het model moeten draden of een pin-header zijn gesoldeerd, ik heb een pin-header gebruikt om te testen, maar voor een echt project moet je overwegen om draden te solderen.

De adresseerbare strip-led WS2812B heeft aan elke kant 3 soldeerpads.

+5V (rode draad in het schema) gaat naar +5V van de Arduino;

GND (zwarte draad in het schema) gaat naar de GND van de Arduino;

DIN (groene draad in het schema) gaat via een weerstand van 330 Ohm naar een Arduino PIN 5 (voor de data).

Stap 3: Code instellen

Ik gebruikte Arduino IDE met de FAST LED Library

Eerst moeten we de FastLED-bibliotheek opnemen, de pin definiëren waarop de LED-stripgegevens zijn aangesloten, het aantal LED's definiëren en een array van het type CRGB definiëren.

Dit type bevat de LED's, met drie dataleden van één byte voor elk van de drie rode, groene en blauwe kleurkanalen.

In de setup-sectie hoeven we alleen de FastLED te initialiseren met de parameters die hierboven zijn gedefinieerd. Nu het de hoofdlus is, kunnen we onze LED's bedienen hoe we maar willen. Met behulp van de CRGB-functie kunnen we elke LED op elke kleur instellen met behulp van drie parameters van rood, groen en blauw. Om de wijziging op de LED's door te voeren, moeten we de functie FastLED.show() aanroepen.

De FastLED-bibliotheek beschikt over vele andere functies die kunnen worden gebruikt voor het maken van echt interessante animaties en lichtshows, dus het is alleen aan uw verbeelding om uw volgende LED-project te laten schitteren.

Mijn code bevat verschillende LED-patronen die anders niet mogelijk zijn met de standaard RGB LED-balk.

De patronen kunnen worden gewijzigd of opgeroepen in de sectie void loop() als een enkele subroutine.

Stap 4: Laatste opmerking

Mijn code doorloopt een variatie van elk patroon om u een startpunt te geven om de code aan te passen aan uw behoeften.

Code in mijn GitHub

Aanbevolen: