Neopixel: para saan ito, para saan ito, at kung paano mo ito maisasama sa iyong mga proyekto

neopixel

Tiyak na nakakita ka ng mga gumagawa na nagpapakita ng mga proyekto gamit ang mga set ng RGB LED na ito nang higit sa isang pagkakataon. Ang mga aplikasyon ng mga strip na ito ay maaaring mula sa isang simpleng palamuti na maaaring magbago ng kulay ayon sa ilang panlabas na kaganapan, sa paggamit para sa mga karera ng mga ilaw, at marami pang iba. Kaya naman sa artikulong ito ay ipakikilala namin ang lahat ng pinakamahalagang impormasyon na dapat mong malaman ang neopixel at kung paano ito maisasama at kontrol sa Arduino.

Ano ang Neopixel?

RGB LED ring

Ang Neopixel ay walang iba kundi isang rehistradong trademark ng Adafruit Industries. Gayunpaman, ang generic na termino para sa mga bahaging ito ay indibidwal na natutugunan ng mga RGB LED (hal: SK6812, WS2811, WS2812,…). Sa madaling salita, ito ay isang logic circuit na may ganitong mga kulay na ilaw na kikilos bilang isang resulta ng isang control signal, na nagpapakita ng iba't ibang kulay, nagsasagawa ng ilang mga pagkakasunud-sunod ng power-up, atbp.

Mahalagang malaman mo na ang bawat isa sa mga RGB LED na bumubuo sa matrix ay gumagamit ng 4 na pin o konektor, kaya ang pinout mo ay:

  • 5V: mataas na antas ng supply.
  • GND: kapangyarihan mababang antas o lupa.
  • DIN: pin para makatanggap ng impormasyon ng kulay.
  • GAWIN: i-pin upang magpadala ng impormasyon ng kulay.

Bilang karagdagan sa iyon, isinasama nito ang isang elektronikong circuit na may kakayahang memorya mag-imbak ng 3 byte, isa para sa bawat kulay. Para sa higit pang impormasyon, maaari mong basahin ang datasheet o dokumentasyon para sa partikular na modelong binili mo, dahil maaaring may mga pagkakaiba-iba.

Saan makakabili ng Neopixel

Si buscas bumili ng neopixel o mga katulad na elemento para sa iyong mga proyekto sa DIY, mahahanap mo ang mga ito sa ilang espesyal na tindahan ng electronics o sa Amazon din. Ang ilang mga rekomendasyon sa bagay na ito ay:

Isama ang Neopixel sa Arduino UNO

Koneksyon ng Neopixel at Arduino UNO

Sa isama ang Neopixel, o anumang iba pang brand, sa iyong Arduino board at simulan ang paglikha ng code sa Arduino IDE upang makontrol ang mga kulay at pag-iilaw, kakailanganin mo:

  • Plate Arduino UNO Rev3
  • Neopixel type LED matrix
  • 470 paglaban Ω
  • 1000 µF electrolytic capacitor 6.3V
  • Breadboard
  • Mga cable de conexión
  • 5V sa 1A power supply at connector

Ang koneksyon sa pagitan ng Neopixel matrix at Arduino UNO Ito ay tulad ng nakikita sa nakaraang larawan. Kapag nakakonekta na, ang susunod na bagay ay magsimula sa Arduino IDE code. Sa kasong ito kailangan mong gumamit ng library na tinatawag Adafruit NeoPixel na maaari mong i-download mula dito, at simulan ang pagsubok at pagbabago sa mga halimbawang kasama nito. Halimbawa, maaari kang magsimula sa Simple, kung saan makakakuha ka ng tulad ng:

#include <Adafruit_NeoPixel.h>    //Incluir la biblioteca

#define PIN 6   //Pin en el que has conectado el Neopixel

// Número de píxeles encadenados (en este caso 21, pero puedes modificarlo según necesites)
#define NUMPIXELS 21 

// Inicializamos el objeto "pixeles"
Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
// Argumento 1 = Número de pixeles encadenados
// Argumento 2 = Número del pin de Arduino utilizado con pin de datos
// Argumento 3 = Banderas de tipo de pixel:
//   NEO_KHZ800  800 KHz bitstream (most NeoPixel products w/WS2812 LEDs)
//   NEO_KHZ400  400 KHz (classic 'v1' (not v2) FLORA pixels, WS2811 drivers)
//   NEO_GRB     Pixels are wired for GRB bitstream (most NeoPixel products)
//   NEO_RGB     Pixels are wired for RGB bitstream (v1 FLORA pixels, not v2)
//   NEO_RGBW    Pixels are wired for RGBW bitstream (NeoPixel RGBW products)

#define DELAYVAL 500 //timpo de espera en ms 

void setup() {
  pixels.begin(); // Inicializamos el objeto "pixeles"
}

void loop() {
  pixels.clear(); // Apagamos todos los LEDs

  // El primer pixel de una cadena es el #0, el segundo es el #1, y así sucesivamente hasta el n-1
  for(int i=0; i<NUMPIXELS; i++) { 
    
    // Modificamos el LED #i, encendiendolo con un color verde moderadamente brillante
    pixels.setPixelColor(i, pixels.Color(0, 150, 0));

    pixels.show();   // Mandamos todos los colores con la actualización hecha

    delay(DELAYVAL); // Pausa antes de modificar el color del siguiente LED
  }
}


Maging una sa komento

Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: Miguel Ángel Gatón
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.