Sisällysluettelo:
- Tarvikkeet
- Vaihe 1: Tarvikkeet
- Vaihe 2: Oikean virtalähteen määrittäminen LedWall -laitteellesi
- Vaihe 3: Virtajohto
- Vaihe 4: Virtalähteen kytkeminen
- Vaihe 5: Virta ESP32S -laitteeseen
- Vaihe 6: Virran kytkeminen LED -valonauhoihin
- Vaihe 7: ESP32: n liittäminen LED -valonauhoihin
- Vaihe 8: Tietokoneen valmistelu: C2102 -ohjain
- Vaihe 9: Arduino -ohjelmisto - ESP32 -tuen lisääminen - Vaihe 1
- Vaihe 10: Arduino -ohjelmisto - ESP32 -tuen lisääminen - Vaihe 2
- Vaihe 11: Arduino -ohjelmisto - ESP32 -tuen lisääminen - Vaihe 3
- Vaihe 12: Kirjaston lisääminen Arduino IDE: hen
- Vaihe 13: Ensimmäinen koodi: Strand -testi
- Vaihe 14: SHU -mallikoodi
- Vaihe 15: Koodin lataaminen ESP32 -laitteeseen
- Vaihe 16: Lainaukset
Video: 500 LEDiä Seinä ESP32: 16 askelta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Hei kaikki! Tämän opetusohjelman loppuun mennessä tiedät, miten voit luoda oman LED -seinän.
Tämä opetusohjelma perustuu Sacred Heart -yliopiston kesäohjelmaan.
Pidä hauskaa!
Tarvikkeet
Alla luetellut tarvikkeet.
Vaihe 1: Tarvikkeet
Aloitetaan keräämällä kaikki mitä tarvitsemme Led -seinän täydentämiseksi:
(Linkit luotiin 10.7.2019)
Arduino IDE -ohjelmisto
ESP32 -mikro -ohjain
LED -pikselivalo
Virtalähde
Virtajohto
Langan kuorintatyökalu
Breadboard Jumper -kaapelit
Sähköjohto
Vaihe 2: Oikean virtalähteen määrittäminen LedWall -laitteellesi
On yksinkertainen matemaattinen tapa selvittää, mikä virtalähde sopii sinulle parhaiten.
Käytämme Ohmin teholakia: P = IxV (teho = voimakkuus x jännite)
Jännite määräytyy lediemme mukaan: tässä tapauksessa 5V.
Voimakkuus riippuu laitteistosta, yksi LED kuluttaa 30 mA.
Jokainen 50 ledin nauha kuluttaa siksi 50 x 30 mA = 1250 mA = 1,25 A.
500 Led -seinämme kuluttaa siksi 10 kertaa enemmän (10 nauhaa): 12,5 A.
Ledien virrankulutus on silloin 5 V x 12,5 A = 62,5 W.
Tietenkin Ledien lisäksi sinun on otettava huomioon ESP ja kaikki muut piirisi kohteet.
Meillä on 60A virtalähde, meillä on paljon enemmän kuin tarvitsemme.
Vaihe 3: Virtajohto
Virtalähteessämme on johdinliittimet. Meidän on sovitettava virtajohto 110 V: n pistokkeeseen liittämistä varten.
- Katkaise naarasliitin virtajohdosta. Pidämme miespuolisen osan, muuten NEMA 5-15P.
- Kuori kaapeli niin, että noin 3 mm kuparia näkyy kaikissa johtimissa.
Tässä on nopea video -opetusohjelma johtojen irrottamisesta:
Vaihe 4: Virtalähteen kytkeminen
Nyt olemme valmiita kytkemään virtalähteemme!
Irrota virtalähde aina, kun työskentelet sen kanssa.
Johdotus
- Musta johto (vaihe) kytketään virtalähteen L -nastaan
- Valkoinen johto (neutraali) kytketään virtalähteen N -nastaan
- Vihreä johto kytketään virtalähteen maadoitusnastaan
(Jos virtajohtosi sisäjohdot eivät ole samanvärisiä kuin meidän, ole turvallinen ja etsi kaaviot verkossa.)
Testaus
Kytke tietokoneen virtajohto mihin tahansa pistorasiaan. Virtalähteen vihreän LED -valon pitäisi syttyä.
Vaihe 5: Virta ESP32S -laitteeseen
ESP: tä tarkasteltaessa jokaisen nastan vieressä pitäisi olla tarroja. Jos sitä ei ole merkitty, voit etsiä yksittäisen ESP: n pinoutin verkossa.
Liitä uros -naaras leipälevyn hyppyjohdolla tai sähköjohdolla:
- 5 V: n ESP32S -nasta virtalähteen+V: ään (oranssi yllä olevassa kuvassa)
- 'GND' ESP32S-nasta virtalähteen "-V" -osaan (musta yllä olevassa kuvassa)
(Joissakin ESP -laitteissa 5V -nasta on merkitty VCC: ksi, molemmat tarkoittavat samaa.)
Huomaa, että ESP: lläsi voi olla erilainen '' nasta '' kuin mitä käytämme. Siksi saatat liittää johdot eri paikkaan kuin yllä olevassa kuvassa. Kun liität oikeisiin nastoihin (5V ja GND), fyysisellä sijainnilla taululla ei ole väliä.
Kytke virtalähde uudelleen ja jos ESP: ssä on LED -merkkivalo (useimmat), se syttyy ja osoittaa, että virtaa lähetetään ESP: hen. Onnittelut!
Vaihe 6: Virran kytkeminen LED -valonauhoihin
Sähköjohtojen käyttö:
- Kytke LED -valonauhan punainen johto virtalähteen V+ -liitäntään.
- Liitä LED-valonauhan sininen johto virtalähteen V- liittimeen.
Vaihe 7: ESP32: n liittäminen LED -valonauhoihin
ESP32 ohjaa jokaiseen lediin yhdistetyn WS2811 -ohjaimen tarvitsemansa värin ja kirkkauden. Tätä varten ESP32 tarvitsee "data" -kaapelin nauhoihin.
Led -nauhoissa on 3 -johtiminen liitin:
- Punainen: Virta- Sininen: Neutraali- Valkoinen: Tiedot
Kytketään valkoinen LED -nauhakaapeli ESP: n digitaaliseen nastaan, muista valittu PIN -koodi, koska meidän on valittava se myöhemmin koodista.
Vaihe 8: Tietokoneen valmistelu: C2102 -ohjain
Nyt kun laitteistomme on kytketty, haluamme ladata ensimmäisen koodimme sen testaamiseksi. Oletuksena Windows tai MacO eivät voi kommunikoida ESP32: n kanssa. C2102.
Tämä ohjain on ladattava ja asennettava:
- Windows 10: https://www.silabs.com/documents/public/software/C…- Windows 7/8/8.1: https://www.silabs.com/documents/public/software/C…- Mac:
(Linkit 10.7.2019 alkaen)
Vaihe 9: Arduino -ohjelmisto - ESP32 -tuen lisääminen - Vaihe 1
Ennen kuin voimme käyttää ESP32: aa Arduino -ohjelmiston kanssa, meidän on varmistettava, että se tunnistetaan. Oletusarvoisesti Arduino -ohjelmisto ei voi koota ESP32 -koodia, korjataan se:
Vaihe 1: Taulujen lisääminen ylläpitäjään
1 - Napsauta Arduinossa vaihtoehtoa Tiedosto >> Asetukset
2- Kopioi Lisätaulujen hallinnan URL-osoitteet -kenttään seuraava linkki:
Vaihe 10: Arduino -ohjelmisto - ESP32 -tuen lisääminen - Vaihe 2
Nyt kun Arduino -ohjelmisto "tietää" lisää levyjä, asennetaan ESP32 -tuemme
Vaihe 2: ESP32 -tuen asentaminen
1 - Valitse ylävalikosta: Työkalut >> Hallitus >> Boards Manager
2 - Näyttöön tulee ikkuna. Käytä oikeassa yläkulmassa olevaa hakukenttää löytääksesi "ESP32".
3 - Etsi espressifin tekemä. Asenna se. (Katso kuva)
Vaihe 11: Arduino -ohjelmisto - ESP32 -tuen lisääminen - Vaihe 3
Nyt kun Arduino -ohjelmisto voi kommunikoida ESP32: n kanssa, kytketään se tietokoneeseen ja tarkistetaan, että kaikki toimii.
1 - Varmista, että työskentelemme ESP32 -alustalla:
Napsauta Tools >> Board >> ESP32 Dev Module
1- Varmista, että Arduino-ohjelmisto osaa kommunikoida ESP: n kanssa:
Napsauta Työkalut >> Portti ja valitse se, joka tulee esiin tämän kaapelin kytkemisen jälkeen.
Tärkeä:
Jos sinulla on ongelmia koodin lataamisessa ESP: hen, tarkista ensin nämä kaksi valikkoa. Jos porttia ei ole valittu valintamerkillä, Arduino -ohjelmisto ei kommunikoi sen kanssa.
Vaihe 12: Kirjaston lisääminen Arduino IDE: hen
Nyt aiomme lisätä kirjaston, jonka avulla voimme testata led -seinäämme!
1- Napsauta Työkalut >> Hallitse kirjastoja.
2- Etsi oikeasta yläkulmasta NeoPixelBus. Etsi "NeoPixelBus by Makuna", asenna se (katso kuva)
Mahdollisia muita mielenkiintoisia kirjastoja: (ei vaadita tätä opetusohjelmaa)
- NeoMatrix
- FastLed
- Artnet
- GFX
Vaihe 13: Ensimmäinen koodi: Strand -testi
Ensimmäinen koodimme on esimerkki kirjastosta.
Voit joko kopioida / liittää alla olevan koodin tai napsauttaa:
Tiedosto >> Esimerkkejä >> Adafruit NeoPixelBus >> Strandtest
Muista vaihtaa LED_PIN -merkkivalo siihen, jota käytit LED -valojen fyysiseen yhdistämiseen.
Muista myös muokata säikeen kokoa LED_COUNT -muuttujalla.
// Perus jokapäiväinen LED Striptest -ohjelma.
#include #ifdef _AVR_ #include // Pakollinen 16 MHz: n Adafruit -rihkalle #endif // Mikä Arduinon nasta on liitetty NeoPixel -laitteisiin? #define LED_PIN 13 // Kuinka monta NeoPixeliä on liitetty Arduinoon? #define LED_COUNT 500 // Ilmoita NeoPixel -nauhaobjektimme: Adafruit_NeoPixel strip (LED_COUNT, LED_PIN, NEO_GRB + NEO_KHZ800); // Argumentti 1 = NeoPixel -nauhan pikselien lukumäärä // Argumentti 2 = Arduino -pin -numero (useimmat ovat kelvollisia) // Argumentti 3 = Pikselityyppiset liput, lisää tarvittaessa: // NEO_KHZ800 800 KHz: n bittivirta (useimmat NeoPixel -tuotteet WS2812 LEDit) // NEO_KHZ400 400 KHz (klassinen 'v1' (ei v2) FLORA -pikseliä, WS2811 -ohjaimet) // NEO_GRB Pikselit on kytketty GRB -bittivirtaan (useimmat NeoPixel -tuotteet) // NEO_RGB Pikselit on kytketty RGB -bittivirtaan (v1 FLORA -pikseliä), ei v2) // NEO_RGBW Pikselit on kytketty RGBW-bittivirtaan (NeoPixel RGBW -tuotteet) // setup () -toiminto-toimii kerran käynnistyksen yhteydessä -------------------- ------------ void setup () {// Nämä linjat tukevat erityisesti Adafruit Trinket 5V 16 MHz -taajuutta. // Mikä tahansa muu levy, voit poistaa tämän osan (mutta ei haittaa siitä): #if define (_ AVR_ATtiny85_) && (F_CPU == 16000000) clock_prescale_set (clock_div_1); #endif // END of Trinket-spesifinen koodi. strip.begin (); // ALOITA NeoPixel -nauhaobjekti (VAATIMUS) strip.show (); // Sammuta kaikki pikselit ASAP strip.setBrightness (50); // Aseta KIRKKAUS noin 1/5 (maks. = 255)} // silmukka () -toiminto-toimii toistuvasti niin kauan kuin kortti on päällä --------------- mitätön silmukka () {// Täytä nauhan pituus eri väreillä… colorWipe (strip. Color (255, 0, 0), 50); // Punainen väriPyyhi (nauha. Väri (0, 255, 0), 50); // Vihreä väri Pyyhi (nauha. Väri (0, 0, 255), 50); // Sininen // Tee teatteritehoste eri väreissä… TheaterChase (strip. Color (127, 127, 127), 50); // Valkoinen, puolikirkas teatteriChase (strip. Color (127, 0, 0), 50); // Punainen, puolikirkas teatteriChase (strip. Color (0, 0, 127), 50); // Sininen, puolikirkas sateenkaari (10); // Virtaava sateenkaarisykli koko nauhateatteria pitkinChaseRainbow (50); // Rainbow-tehostettu teatterivaihevaihtoehto} // Jotkut omat toiminnot animoitujen tehosteiden luomiseen ----------------- // Täytä nauhan pikselit peräkkäin väreillä. Liuskaa EI tyhjennä // ensin; kaikki siellä peitetään pikseli pikseliltä. Välitä väreissä // (yksittäisenä 32-bittisenä pakattuna arvona, jonka saat soittamalla // strip. Color (punainen, vihreä, sininen) yllä olevan loop () -funktion mukaisesti), // ja viiveaika (millisekunteina) pikselien välillä. void colorWipe (uint32_t color, int wait) {for (int i = 0; i strip.setPixelColor (i, color); // Aseta pikselin väri (RAM -muistissa) strip.show (); // Päivitä nauha vastaamaan viivettä (odota); // Pysähdy hetkeksi}}} // Teatteriteltatyylinen jahdivalo. Anna väri (32-bittinen arvo, // a la strip. Väri (r, g, b) kuten edellä mainittiin), ja viiveaika (ms) // kehysten välillä. void TheaterChase (uint32_t color, int wait) {for (int a = 0; a <10; a ++) {// Toista 10 kertaa… for (int b = 0; b <3; b ++) {// 'b' laskee 0 … 2 … strip.clear (); // Aseta kaikkien RAM -muistin pikselien arvoksi 0 (pois päältä) // 'c' laskee b: stä loppuun nauha vaiheittain 3… for (int c = b; c strip.setPixelColor (c, color); // Aseta pikseli "c" arvoksi "color"} strip.show (); // Päivitä nauha uudella sisällön viiveellä (odota); // Keskeytä hetkeksi}}}} // Sateenkaarisykli koko nauhaa pitkin. Siirrä viiveaika (ms) kehysten välillä. void rainbow (int wait) {// Ensimmäisen pikselin sävy kulkee 5 täydellistä silmukkaa // Väripyörän alue on 65536, mutta se on OK, jos kaadumme, joten // vain lasketaan 0-5*65536. 256: n lisääminen firstPixelHue -arvoon joka kerta // tarkoittaa, että teemme 5*65536/256 = 1280 kulkua tämän ulkoisen silmukan läpi: for (long firstPixelHue = 0; firstPixelHue <5*65536; firstPixelHue += 256) {for (int i = 0; I // Siirtää pikselin värisävyn määrällä, jotta // väripyörä (kierros 65536) saadaan täyteen kierrokseen nauhan pituudella // (strip.numPixels () vaiheet): int pixelHue = firstPixelHue + (i * 65536L / strip.numPixels ()); // strip. ColorHSV () voi ottaa 1 tai 3 argumenttia: värisävy (0 - 65535) tai // vaihtoehtoisesti lisätä kylläisyyttä ja arvoa (kirkkaus) (kukin 0 - 255). // Täällä käytämme vain yhden argumentin värisävyn varianttia. Tulos // viedään strip.gamma32 (): n kautta, jotta saadaan '' todellisemmat '' värit // ennen kullekin pikselille määrittämistä: strip.setPixelColor (i, strip.gamma32 (strip. ColorHSV (pixelHue))));} strip.show (); // Päivitä nauhat uuden sisällön viiveellä (odota); // Keskeytä hetkeksi}} // Sateenkaaria parannettu teatterikehys. Pass delay time (in ms) kehysten välillä. void theatreChaseRainbow (int wait) {i nt firstPixelHue = 0; // Ensimmäinen pikseli alkaa punaisesta (värisävy 0) kohteelle (int a = 0; a <30; a ++) {// Toista 30 kertaa… kohteelle (int b = 0; b RGB strip.setPixelColor (c, väri); / / Aseta pikseli "c" arvoksi "väri"} nauha.show (); // Päivitä nauha uudella sisällön viiveellä (odota); // Keskeytä ensin hetkeksi PixelHue += 65536/90; // Yksi värikierros yli 90 kuvaa}}}
Vaihe 14: SHU -mallikoodi
Koodimme kytkee kaikki ledit päälle yksitellen varmistaakseen, että ne toimivat:
// Tämä esimerkki vaihtuu 500 pikselin näyttämisen välillä punaisena
#includeconst uint16_t PixelCount = 500; // tässä esimerkissä oletetaan 4 pikseliä, pienentäminen aiheuttaa epäonnistumisen const uint8_t PixelPin = 13; // varmista, että asetat tämän oikean nastan, ohitetaan Esp8266: ssa
#define colorSaturation 128 // kolme elementtiä, eri järjestyksessä ja nopeudella
NeoPixelBus -nauha (PixelCount, PixelPin);
// NeoPixelBus -nauha (PixelCount, PixelPin); RgbVäri punainen (0, värin kylläisyys, 0); RgbVäri vihreä (värikylläisyys, 0, 0); RgbVäri sininen (0, 0, värin kylläisyys); RgbVäri valkoinen (värikylläisyys); RgbVäri musta (0); HslColor hslRed (punainen); HslColor hslGreen (vihreä); HslColor hslBlue (sininen); HslColor hslWhite (valkoinen); HslColor hslBlack (musta); void setup () {Serial.begin (115200) while (! Serial); // odota sarjaliitettä Serial.println (); Serial.println ("Alustetaan…"); Sarja.huuhtelu (); // tämä palauttaa kaikki neopikselit off -tilan nauhoiksi. Begin (); nauha. Näytä (); Sarja.println (); Serial.println ("Käynnissä …"); } void loop () {delay (100); Serial.println ("Värit R, G, B, W…"); for (int i = 0; i <= 499; i ++) {// aseta värit, // jos ne eivät vastaa järjestystä, sinun on käytettävä NeoGrbFeature -ominaisuuskaista. SetPixelColor (i, punainen); strip. Show (); viive (100); strip. SetPixelColor (i, hslRed); nauha. Näytä (); viive (100); }}
Vaihe 15: Koodin lataaminen ESP32 -laitteeseen
Tärkeä:
Jotta koodi voidaan lähettää mille tahansa mikro -ohjaimelle, sen on oltava ohjelmointitilassa.
ESP32 edellyttää, että pidät ohjelmointipainiketta painettuna koodin lähettämisen aikana. Sinun on myös nollattava se koodin lähettämisen jälkeen painamalla nollauspainiketta kerran.
ESP32: n ohjelmointipainike sijaitsee vasemmalla ja nollauspainike oikealla. Katso käyttöoppaasta, jos sinulla on toinen mikro-ohjain.
Vaihe 16: Lainaukset
Tämä opettavainen tehtiin seuraavien opetusohjelmien avulla:
randomnerdtutorials.com/installing-the-esp…
Käytetään ESP32: n asentamiseen Arduino IDE: hen.
Tekijät:
Nathaniel Barone, Gabriel Castro
Toimittaja:
Cedric Bleimling
Suositeltava:
Servomoottori, jossa 10 LEDiä: 5 vaihetta
Servomoottori, jossa on 10 LEDiä: tässä videossa näytän sinulle, kuinka sytyttää LEDit yhdessä servomoottorin nousevan kulman kanssa. Toivon, että pidät tästä ohjeesta
556 Aika antaa kellotulon 2 vuosikymmenen laskurille, jotka ohjaavat 20 LEDiä: 6 vaihetta
556 Aika antaa kellotulon kahdelle vuosikymmenen laskurille, jotka käyttävät 20 LEDiä: Tämä opas näyttää kuinka 556 -ajastin antaa kellotulot 2 vuosikymmenen laskuriin. Vuosikymmenen laskurit käyttävät 20 LED -valoa. LEDit vilkkuvat 10 sekunnissa
Ohjaa lediä kaikkialla maailmassa Internetin avulla Arduinon avulla: 4 vaihetta
Ohjaa johtoa ympäri maailmaa Internetin avulla Arduinon avulla: Hei, olen Rithik. Aiomme tehdä Internet -ohjattavan ledin puhelimellasi. Aiomme käyttää ohjelmistoja, kuten Arduino IDE ja Blynk. Se on yksinkertainen ja jos onnistuit, voit hallita niin monta elektronista komponenttia kuin haluat Asioita, joita tarvitsemme: Laitteisto:
Ohjelmoitava poliisin LED -vilkku STM8: n avulla [72 LEDiä]: 9 vaihetta
Ohjelmoitava poliisin LED-vilkkulaite STM8: n avulla [72 LEDiä]: STM8S001J3 on 8-bittinen mikro-ohjain, joka tarjoaa 8 kegatavun Flash-ohjelmamuistin ja integroidun todellisen datan EEPROM-muistin. Sitä kutsutaan pienitiheyksiseksi laitteeksi STM8S-mikrokontrolleriperheessä. Tämä MCU tarjotaan pienessä SO8N -paketissa
Ohjaa LEDiä älypuhelimellasi: 6 vaihetta
Ohjaa LEDiä älypuhelimellasi: