Sadržaj:

Adresibilna traka LED Police Strobo: 4 koraka
Adresibilna traka LED Police Strobo: 4 koraka

Video: Adresibilna traka LED Police Strobo: 4 koraka

Video: Adresibilna traka LED Police Strobo: 4 koraka
Video: Kako uraditi knauf na plafonu UGRADNJA KNAUFA 2024, Novembar
Anonim
Image
Image

Ova policijska Strobo svjetlosna šipka izrađena je od jedne LED trake za adresiranje WS2812B (97 cm, 29 LEDS) i Arduino Nano.

Ovo rješenje omogućuje izradu nekoliko različitih svjetlosnih uzoraka sa drugačijom shemom boja, inače nije moguće sa standardnom crveno-bijelo-plavom LED trakom (kao što se koristi za policijska strobo svjetla) ili RGB LED trakom.

Preporučio bih da ovo ne koristite u svom vozilu ako niste provjerili lokalne zakone i za to imate pravni/valjani razlog.

Korak 1: Kako WS2812B LED trake rade

Ožičenje kruga
Ožičenje kruga

WS2812B LED traka sastoji se od LED 5050 RGB LED dioda u koje je integriran IC upravljački program WS2812B LED.

Ovisno o intenzitetu tri pojedinačne crvene, zelene i plave LED diode, moguće je simulirati bilo koju boju koju želimo.

Odlična stvar ovih LED dioda je to što je moguće kontrolirati čak i cijelu LED traku sa samo jednim pinom s naše Arduino ploče.

Svaka LED dioda ima tri konektora na svakom kraju, dva za napajanje i jedan za podatke. Strelica pokazuje smjer protoka podataka. Jastučić za izlaz podataka prethodne LED diode je povezan sa pločicom za unos podataka sljedeće LED. Traku možemo izrezati na bilo koju veličinu, kao i udaljenost LED dioda pomoću nekih žica.

Rade na 5V DC i svaka crvena, zelena i plava LED dioda troše oko 20mA, ili to je ukupno 60mA za svaku LED pri punoj svjetlini.

Ako se Arduino napaja putem USB -a, 5V pin može podnijeti samo oko 400 mA, a kada se napaja pomoću priključka za napajanje cijevi, 5V pin može podnijeti oko 900 mA. Dakle, ako koristite više LED dioda i količina struje koju bi oni privukli premašuje gore navedene granice, morate koristiti zasebno napajanje od 5 V.

U tom slučaju također morate spojiti dvije uzemljene vodove jedna s drugom.

Dodatno, preporučuje se upotreba otpornika od oko 330 Ohma između Arduina i podatkovnog pina LED trake kako bi se smanjila buka na toj liniji, kao i kondenzator od oko 100uF preko 5V i uzemljenja kako bi se napajanje napajalo.

Korak 2: Ožičenje kruga

Shema ožičenja za spajanje Arduino nano na WS2812B adresibilnu LED traku vrlo je jednostavna.

Model mora imati lemljene žice ili pin zaglavlje, za testiranje sam koristio pin header, ali za stvarni projekt trebali biste razmisliti o lemljenju žica.

WS2812B adresibilna trakasta LED traka ima 3 lemna jastučića sa svake strane.

+5V (crvena žica u shemi) ide na +5V Arduina;

GND (crna žica u shemi) ide do GND -a Arduina;

DIN (zelena žica u shemi) ide na Arduino PIN 5 (za podatke) preko otpornika od 330 Ohma.

Korak 3: Postavljanje koda

Koristio sam Arduino IDE sa FAST LED Library

Prvo moramo uključiti FastLED biblioteku, definirati pin na koji su spojeni podaci LED trake, definirati broj LED dioda, kao i definirati niz tipa CRGB.

Ovaj tip sadrži LED diode sa tri jednobajtna člana podataka za svaki od tri kanala u crvenoj, zelenoj i plavoj boji.

U odjeljku za postavljanje samo trebamo pokrenuti FastLED parametrima s gore definiranim parametrima. Sada je to glavna petlja kojom možemo upravljati LED diodama kako god želimo. Pomoću funkcije CRGB možemo postaviti bilo koju LED lampicu u bilo koju boju koristeći tri parametra crvenu, zelenu i plavu boju. Da bi se promjene dogodile na LED diodama moramo pozvati funkciju FastLED.show ().

Biblioteka FastLED sadrži mnoge druge funkcije koje se mogu koristiti za stvaranje zaista zanimljivih animacija i svjetlosnih emisija, pa je samo na vašoj mašti da vaš sljedeći LED projekt zasja.

Moj kôd uključuje nekoliko različitih LED uzoraka koji inače nisu mogući sa standardnom RGB LED trakom.

Uzorci se mogu mijenjati ili opozvati u odjeljku void loop () kao jedna potprogram.

Korak 4: Završna napomena

Moj kôd prolazi kroz varijacije svakog uzorka kako bi vam dao polaznu tačku za izmjenu koda kako bi zadovoljio vaše potrebe.

Kôd u mom GitHubu

Preporučuje se: