Sadržaj:

Božićno drvce NeoPixel s Bluetooth kontrolom: 5 koraka
Božićno drvce NeoPixel s Bluetooth kontrolom: 5 koraka

Video: Božićno drvce NeoPixel s Bluetooth kontrolom: 5 koraka

Video: Božićno drvce NeoPixel s Bluetooth kontrolom: 5 koraka
Video: Объяснение прошивки Marlin 2.0.x 2024, Srpanj
Anonim

Jeste li se pitali kako ove godine dodati IoT (Internet of Things) u svoje božićno drvce? Pa, potpuno je moguće! Osobno ovaj projekt nazivam "ArduXmas", a sastoji se od RGB NeoPixel LED trake kojom upravlja Arduino ploča putem Bluetootha. Ovo je projekt prilagođen početnicima i izvrstan uvod u Arduino e IoT, stoga nabavite svoje alate i napravimo to!

Pribor:

Za ovaj projekt trebat će vam:

  • Arduino (koristio sam Nano, ali svaka verzija će raditi, samo pazite da pravilno napajate ploču)
  • NeoPixel WS2812b LED traka
  • HC-06 Bluetooth modul
  • 5V 2A istosmjerno napajanje
  • Utičnica/priključak za DC bačvu
  • Fenolitna ploča za držanje komponenti
  • Kućište kućišta
  • Android pametni telefon s instaliranom aplikacijom Blynk

Korak 1: Krug

Krug
Krug
Krug
Krug
Krug
Krug

Elektronika ovog projekta vrlo je jednostavna. Arduino, Bluetooth modul i LED traka napajaju se napajanjem od 5 V (provjerite jesu li svi GND spojeni zajedno). Arduino ploča napaja se kroz 5V priključak (PAŽNJA: Napajanje Arduina pomoću 5V priključka može oštetiti vašu ploču ako niste oprezni. Provjerite koristite li 5V regulirano napajanje i nemojte miješati +5V i GND žice). Struja koju daje vaše napajanje ovisit će o duljini vaše LED trake. Koristim 180 LED dioda s 40% potpune svjetline i 2 ampera se dobro drže, ali uvijek pazite na opskrbu potrebnom strujom (ZAPAMTITE: Svaka RGB LED dioda koristi oko 20mA + 20mA + 20mA = 60mA).

Bluetooth-modul HC-06 spojen je na pinove 0 i 1 (RX, TX) Arduina, samo zapamtite da je za korištenje ovog modula HC-06-ov RX pin povezan s Arduinovim TX-om, a T-pin HC-06 je povezan s Arduinovim RX -om. To su pinovi za serijsko povezivanje ploče, a koriste se za primanje naredbi sa pametnog telefona. Dodao sam prekidač za jednostavno uključivanje/isključivanje modula pa ga mogu isključiti prilikom programiranja ploče, inače računalo ne može komunicirati s Arduinom.

U krugu izlazni pin za podatke koji ide na LED traku je digitalni pin 2, ali možete odabrati bilo koji PWM pin i prema potrebi ga promijeniti u kodu (ZAPAMTITE: NeoPixel LED trake imaju smjer za podatkovni signal. Uvijek tražite ikone strelica u vašoj traci).

Da bih uspostavio veze, koristim fenolitnu ploču s rupama tako da je lako lemiti i rastaviti sljedeće godine.

Korak 2: Ograđivanje

Kućište
Kućište
Kućište
Kućište
Kućište
Kućište

Za kućište koristim samo kućište za napajanje starog prijenosnika koje dobro pristaje komponentama. Učvrstite sve vrućim ljepilom i ostavite rupe za USB priključak Arduina, prekidač HC-06, DC priključak i priključak za LED traku.

Korak 3: Blynk aplikacija

Blynk aplikacija
Blynk aplikacija
Blynk aplikacija
Blynk aplikacija
Blynk aplikacija
Blynk aplikacija

Za komunikaciju s Arduinom koristimo aplikaciju Blynk. S Blynkom možete jednostavno stvoriti sučelja za slanje podataka sa pametnog telefona na hardver ili obrnuto, također je moguće izravno kontrolirati priključke mikrokontrolera bez mijenjanja jednog retka koda!

ODRICANJE: Nažalost, ova će aplikacija raditi samo za Android pametne telefone jer je Bluetooth značajka još uvijek u beta verziji i još nije dostupna za IOS, to također znači da neće biti moguće izvesti projekt kao samostalnu aplikaciju.

Postavite svoju aplikaciju da prima token za provjeru autentičnosti vašeg projekta u vašu pristiglu poštu (ova autorizacija bit će potrebna kasnije u Arduinovom kodu). Blynkova web stranica ima odličan korak-po-korak vodič o tome, provjerite:

Za ovaj projekt koristim dva gumba za uključivanje 2 unaprijed kodirane svjetlosne animacije; jedna RGB komponenta za postavljanje boje LED trake; jedan klizač za kontrolu svjetline i jedna bluetooth komponenta za povezivanje s Arduinom. Provjerite slike kako biste vidjeli kako je svaka komponenta konfigurirana. Obratite pozornost na pinove koji se koriste za ovaj projekt jer koristimo Blynkove virtualne pinove, ovo je lijepa značajka koja omogućuje slanje podataka iz aplikacije na hardver. Za više informacija o virtualnim pinovima:

Korak 4: Arduino kod

Arduino kod
Arduino kod

Vrijeme je da dovršite neki kod! Datoteka koju sam dao ima osnovnu strukturu za pokretanje projekta, ali možete je promijeniti po želji. Međutim, kako bi ispravno radio, morate zamijeniti auth char tokenom koji ste primili u pristiglu poštu. Također ne zaboravite promijeniti LED_PIN i LED_COUNT varijable u skladu s vašim postavkama.

Ponašanje LED dioda diktira varijabla anim koja se mijenja kada aplikacija primi zahtjev. Možete dodati onoliko mogućnosti za animacije koliko želite, samo dodajte svoju funkciju u strukturu prekidača u funkciji toggleAnimation () i dodijelite odgovarajuće očitanje virtualnog pina na vrhu koda.

Animacija koja se izvodi u loop () vezana je za mjerač vremena koji se izvodi u intervalima od 100 ms. To je potrebno i ne preporučam ga mijenjati jer ometa naredbu Blynk.run () i veza se prekida ako knjižnica Blynk u kratkom vremenskom razdoblju otkrije previše zahtjeva.

Preporučeni: