Cuprins:

Pom de Crăciun NeoPixel controlat prin Bluetooth: 5 pași
Pom de Crăciun NeoPixel controlat prin Bluetooth: 5 pași

Video: Pom de Crăciun NeoPixel controlat prin Bluetooth: 5 pași

Video: Pom de Crăciun NeoPixel controlat prin Bluetooth: 5 pași
Video: Bradul de Crăciun și bandă LED digitală 2024, Noiembrie
Anonim

V-ați întrebat cum să adăugați IoT (Internetul obiectelor) în pomul dvs. de Crăciun anul acesta? Ei bine, este total posibil! Personal numesc acest proiect „ArduXmas” și constă dintr-o bandă LED RGB NeoPixel controlată de o placă Arduino prin Bluetooth. Acesta este un proiect prietenos cu începătorii și o introducere excelentă în Arduino e IoT, așa că obțineți instrumentele și să le realizăm!

Provizii:

Pentru acest proiect veți avea nevoie de:

  • Arduino (am folosit Nano, dar orice versiune va funcționa, asigurați-vă că alimentați corect placa dvs.)
  • Benzi LED NeoPixel WS2812b
  • Modul Bluetooth HC-06
  • Sursa de alimentare 5V 2A DC
  • Mufă / conector de alimentare DC Barrel
  • Placă de fenolit pentru menținerea componentelor
  • Caz de incintă
  • Smartphone Android cu aplicația Blynk instalată

Pasul 1: Circuitul

Circuitul
Circuitul
Circuitul
Circuitul
Circuitul
Circuitul

Electronica acestui proiect este foarte simplă. Arduino, modulul Bluetooth și banda LED sunt alimentate de sursa de 5V (asigurați-vă că toate GND-urile sunt conectate împreună). Placa Arduino este alimentată prin portul de 5V (ATENȚIE: alimentarea Arduino folosind portul de 5V vă poate deteriora placa dacă nu sunteți atent. Asigurați-vă că utilizați o sursă de alimentare reglată de 5V și nu amestecați + 5V și firele GND). Curentul furnizat de sursa de alimentare va depinde de lungimea benzii LED. Folosesc 180 de leduri cu 40% din intensitatea completă și 2 amperi sunt bine, dar asigurați-vă întotdeauna că furnizați curentul necesar (REȚINEȚI: Fiecare LED RGB folosește aproximativ 20mA + 20mA + 20mA = 60mA).

Modulul HC-06 Bluetooth este conectat la pinii 0 și 1 (RX, TX) ai Arduino, amintiți-vă că pentru a utiliza acest modul, pinul RX al HC-06 este conectat la TX-ul Arduino și pinul TX al HC-06 este conectat la RX-ul Arduino. Acestea sunt pinii de conectare seriali ai plăcii și sunt utilizați pentru a primi comenzile de pe smartphone. Am adăugat un comutator pentru a porni / opri modulul cu ușurință, astfel îl pot opri când programez placa, altfel computerul nu poate comunica cu Arduino.

În circuit, pinul de ieșire a datelor care merge la banda LED este pinul digital 2, dar puteți alege orice pin PWM și îl puteți schimba în mod corespunzător în cod (REȚINEȚI: benzile LED NeoPixel au o direcție pentru semnalul de date. Căutați întotdeauna pictograme săgeată în banda dvs.).

Pentru a face conexiunile, folosesc o placă de fenolit cu găuri în ea, astfel încât să fie ușor de lipit și dezlipit anul viitor.

Pasul 2: incinta

Incinta
Incinta
Incinta
Incinta
Incinta
Incinta

Pentru carcasă, folosesc doar carcasa de alimentare cu un notebook vechi, care se potrivește foarte bine componentelor. Asigurați totul cu adeziv fierbinte și lăsați găuri pentru portul USB al Arduino, comutatorul HC-06, conectorul DC și conectorul cu bandă LED.

Pasul 3: aplicația Blynk

Aplicația Blynk
Aplicația Blynk
Aplicația Blynk
Aplicația Blynk
Aplicația Blynk
Aplicația Blynk

Pentru a comunica cu Arduino, folosim aplicația Blynk. Cu Blynk puteți crea cu ușurință interfețe pentru a trimite date de pe smartphone la hardware sau invers, este, de asemenea, posibil să controlați direct porturile microcontrolerului fără a schimba o linie de cod!

DISCLAIMER: Din păcate, această aplicație va funcționa numai pentru smartphone-urile Android, deoarece funcția Bluetooth este încă în versiunea beta și nu este încă disponibilă pentru IOS, aceasta înseamnă, de asemenea, că nu va fi posibil să exportați proiectul ca aplicație independentă.

Configurați aplicația pentru a primi jetonul de autentificare pentru proiectul dvs. în căsuța de e-mail (această autentificare va fi necesară mai târziu la codul Arduino). Site-ul web al Blynk are un tutorial pas cu pas minunat despre acest lucru, verificați-l:

Pentru acest proiect folosesc două butoane pentru pornirea a 2 animații luminoase precodificate; o componentă RGB pentru a seta culoarea benzii LED; un glisor pentru controlul luminozității și o componentă bluetooth pentru conectarea la Arduino. Verificați imaginile pentru a vedea cum este configurată fiecare componentă. Acordați atenție pinilor utilizați pentru acest proiect, deoarece folosim pinii virtuali ai lui Blynk, aceasta este o caracteristică drăguță care permite trimiterea datelor din aplicație către hardware. Pentru mai multe informații despre pini virtuali:

Pasul 4: Cod Arduino

Cod Arduino
Cod Arduino

Este timpul să faceți ceva cod! Fișierul pe care l-am furnizat are structura de bază pentru a rula proiectul, dar îl puteți schimba după cum doriți. Cu toate acestea, pentru a funcționa corect, trebuie să înlocuiți autentificarea cu simbolul pe care l-ați primit în căsuța de e-mail. De asemenea, nu uitați să modificați variabilele LED_PIN și LED_COUNT în funcție de configurare.

Comportamentul LED-urilor este dictat de variabila anim care se modifică atunci când o cerere este primită de aplicație. Puteți adăuga oricâte posibilități doriți pentru animații, trebuie doar să adăugați funcția la structura comutatorului din funcția toggleAnimation () și să atribuiți citirea corespunzătoare a pinului virtual în partea de sus a codului.

Animația care rulează în buclă () este legată de un temporizator care rulează la intervale de 100 ms. Acest lucru este necesar și nu recomand să îl schimbați, deoarece interferează cu comanda Blynk.run () și conexiunea este oprită dacă biblioteca Blynk detectează prea multe solicitări într-o perioadă scurtă de timp.

Recomandat: