Inhoudsopgave:
- Stap 1: Een inleiding tot Neopixels
- Stap 2: Benodigde materialen
- Stap 3: constructie
- Stap 4: Coderen
- Stap 5: App
- Stap 6: Hoe te uploaden naar SPIFFS?
- Stap 7: Hoe werkt het?
- Stap 8: Android-app
Video: Speel met vuur via wifi! ESP8266 en Neopixels: 8 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:17
Door ElectropeakElectroPeak Officiële WebsiteVolg meer door de auteur:
Over: ElectroPeak is uw one-stop-plek om elektronica te leren en uw ideeën in realiteit om te zetten. We bieden eersteklas handleidingen om u te laten zien hoe u uw projecten kunt maken. We bieden ook producten van hoge kwaliteit, zodat u een… Meer over Electropeak »
Creëer een cool vuursimulatie-effect met Wi-Fi draadloze bediening. Een mobiele app (voor Android-smartphones) met een mooie interface is klaar om te installeren om met je creatie te spelen! We zullen ook Arduino en ESP8266 gebruiken om de vlam te regelen. Aan het einde van dit project leer je:
- Hoe NeoPixels werken.
- Hoe ESP8266 te programmeren en variabelen te regelen via wifi
- Een cool vuureffect creëren met Neopixels
Stap 1: Een inleiding tot Neopixels
Individueel adresseerbare LED's of vaak Neopixles genoemd, bestaan al geruime tijd en u kent ze waarschijnlijk, maar als u dat niet doet, zijn ze als normale RGB-LED's, maar zoals de naam al doet vermoeden, kan de kleur van elk van hen afzonderlijk worden geadresseerd, waardoor oneindig coole patronen en animaties kunnen worden gemaakt. Voor WS2812b heb je maar 3 draden nodig, 2 voor voeding en 1 voor data. Dat betekent dat je slechts één vrije Arduino-pin nodig hebt om een heleboel LED's aan te sturen!
In dit project gaan we deze slimme leds gebruiken om een vuureffect te creëren. Voor het aansturen van LED's gaan we de geweldige FastLED-bibliotheek gebruiken. We gebruiken het Fire2012-schetsvoorbeeld van de bibliotheek geschreven door Mark Kriegsman. We gebruiken 6 strips LED's met elk 30 LED's (totaal 180 LED's) we plakken deze LED's op een stuk PVC pijp en plaatsen ze in een glazen cilinder (deze glazen cilinders worden meestal gebruikt als vazen). We moeten het licht van de LED's diffunderen om ze continu te laten lijken, daarvoor hebben we overtrekpapier gebruikt dat licht doorlaat en licht verspreidt.
Stap 2: Benodigde materialen
Hardware onderdelen
- ESP8266 Seriële WIFI Geestige Cloud Board × 1
- Neopixels Smart LED Strip (60LED/m strip)×1
- Logische niveau-omzetter ×1
- 21cm 40P man-vrouw verbindingsdraad × 1
- PVC pijp 60cm maat 2” ×1
- Overtrekpapier ×1
- Glazen cilinder ×1
Software-apps
Arduino IDE
Handgereedschap
- Heet lijmpistool
- Soldeerbout
Stap 3: constructie
Koop eerst een goede glazen cilinder, onze cilinder heeft een lengte van 60cm en een diameter van 12cm.
Als je een matglazen cilinder kunt vinden, zal dat mooi zijn, maar als het een helder glas is, kun je calqueerpapier gebruiken om het cilinderoppervlak (binnen- of buitenoppervlak) te bedekken, calqueerpapier verstrooit het licht goed en levert goede resultaten op. Nadat je een glazen cilinder hebt gekregen, meet je de interne lengte en knip je de PVC-buis af zodat deze in de cilinder past. Onze glazen cilinder heeft een hoogte van 60 cm (exclusief basis heeft deze een interne lengte van 59 cm), dus we snijden onze PVC-buis op 59 cm. Op deze pijp plak je LED strips, een pijp met een diameter van 4cm zou perfect zijn. Vervolgens moeten we onze ledstrip in 6 gelijke delen knippen, hier gebruiken we een strip met een dichtheid van 60 LED's / m (u kunt hogere dichtheden gebruiken voor betere effecten als u dat wilt) we gebruiken zes lengtes van 50 cm, dat betekent dat we 3 meter nodig hebben. Spreid de zes lengtes gelijkmatig rond de PVC-buis en plak de strips op de buis. Hier is hoe het eruit zou moeten zien.
Aan de LED-strips aan elkaar kunt u ofwel rechtstreeks draden aan de strip solderen volgens de volgende tekening of eerst pin-headers aan de strips solderen en vervolgens breadboard-draden gebruiken om ze aan te sluiten.
Als alle LED-stripaansluitingen klaar zijn, moet u de buis in de cilinder plaatsen. Om de buis in de cilinder te centreren, kunt u schuim gebruiken om een cirkel te snijden die een buitendiameter heeft die gelijk is aan de binnendiameter van de glazen cilinder en een binnendiameter die gelijk is aan de buitendiameter van de PVC-buis. Bereid er twee voor aan elke kant van de pijp. Bevestig deze onderdelen aan de uiteinden en plaats de pijp voorzichtig in de cilinder.
Stap 4: Coderen
We gebruiken Arduino IDE voor het coderen en uploaden naar ESP8266. U moet een bord gebruiken met een ESP8266 met 3 MB SPIFFS als u de controllersoftwarebestanden op de SPIFFS wilt uploaden. SPIFFS is een afkorting voor "Serial Peripheral Interface Flash File System". U kunt de controllerbestanden naar dit geheugen uploaden om de bestanden vanaf die locatie te bedienen. Door dit te doen, kunt u uw browser openen (op uw telefoon of notebook) en naar het adres van uw ESP gaan (de standaardinstelling is 192.168.4.1) en u krijgt de controllerinterface in uw browser zonder de app te hoeven installeren, als u een iPhone of iPad hebt, is dit uw enige keuze.
Upload de volgende schets naar je ESP-bord. We hebben een FastLED-bibliotheek nodig, dus voeg deze eerst toe aan je Arduino IDE als je dat nog niet hebt gedaan (je kunt hem hier downloaden). De brandsimulatiecode is de fire2012-schets van Mark Kriegsman die u in de voorbeelden kunt vinden. Dat voorbeeld is voor één ledstrip, maar hier hebben we de code aangepast om een variabel aantal strips te gebruiken. Hoe meer strips/leds, hoe groter het effect. De logica van de brandsimulatie wordt duidelijk beschreven in het voorbeeldbestand. Als je wilt weten hoe het werkt, lees dan de broncode van het voorbeeld.
Stap 5: App
Om de "look and feel" van het vuur te regelen, zijn er twee variabelen om mee te spelen: SPARKING en COOLING, die je dynamisch kunt regelen in de controllersoftware die is geüpload naar de SPIFFS of de Android-app die je kunt downloaden. Je kunt hier ook FPS regelen.
De kleur van de haard wordt geregeld met een kleurenpalet dat ook te wijzigen is via de controllersoftware (via 4 kleurstops). Klik/tik gewoon op elke kleurcirkel die een kleurstop voorstelt om de kleur in te stellen, nadat u de kleur hebt ingesteld, raakt u dicht om het dialoogvenster te sluiten en de verandering te zien.
Stap 6: Hoe te uploaden naar SPIFFS?
Om de bestanden met Arduino IDE naar het SPIFFS-geheugen te uploaden, moet u eerst een map met de naam "data" maken in de map van de schets en alle bestanden die u wilt uploaden in die map plaatsen. Het hier geüploade bestand bevat zowel de schets als deze map.
Vervolgens heb je Arduino ESP8266 filesystem uploader plugin voor Arduino nodig. Volg de instructies op de Github-pagina en installeer de plug-in. Na installatie vindt u ESP8266 Sketch Data Upload onder het menu Extra. Zet je ESP in programmeermodus en klik erop. Wees geduldig en laat de bestanden uploaden, dat kan even duren. Opmerking: stel "uploadsnelheid" in op 921600 om het sneller te maken.
Stap 7: Hoe werkt het?
De schets die naar het ESP8266-bord is geüpload, creëert daarop een webserver, die reageert op de verzoeken die door de app worden verzonden. De app stuurt eenvoudig GET-verzoeken naar de server (ESP8266). De kleurgegevens om het palet te maken worden verzonden als argumenten in het get-verzoek, hetzelfde geldt voor andere parameters zoals Sparking- en Cooling-parameters.
Om bijvoorbeeld de helderheid in te stellen, wordt het volgende verzoek verzonden door de app https://192.168.4.1/conf?brightness=224 er is een handler voor dit verzoek in de schets die wanneer dit verzoek wordt ontvangen, de helderheid instelt. Bekijk de code voor meer informatie.
Stap 8: Android-app
Android-app is gemaakt met behulp van Phonegap. Het is een technologie waarmee u platformonafhankelijke mobiele apps kunt maken met behulp van webtechnologieën (HTML, CSS, Javascript). U kunt de broncode krijgen via de volgende link.
Aanbevolen:
Speel Nintendo-games op het Idevice met een gratis Wiimote!: 6 stappen
Speel Nintendo-spellen op het Idevice met een gratis Wiimote!: Ben je ooit naar de app store gegaan om een Super Nintendo-spel te kopen, maar je kunt er geen vinden om te spelen. Welnu, je kunt deze nintendo-spellen nu spelen met de snes-emulator van cydia. Met deze emulator kun je Nintendo-games spelen op je idevice, zelfs m
Speel Dinosaur Game met Arduino en Python3: 5 stappen
Speel Dinosaur Game met Arduino en Python3: Projectbeschrijving De meesten van ons hebben het dinosaurusspel van Google gespeeld toen ons internet niet werkte en als je dit spel niet hebt gespeeld, maak je dan nu geen zorgen, maar niet op een conventionele manier door op knoppen te drukken maar door beweging te gebruiken van je hand. Dus hierin
ESP8266 RGB LED STRIP WIFI-bediening - NODEMCU Als een IR-afstandsbediening voor ledstrip, bestuurd via wifi - RGB LED STRIP Smartphone-bediening: 4 stappen
ESP8266 RGB LED STRIP WIFI-bediening | NODEMCU Als een IR-afstandsbediening voor ledstrip, bestuurd via wifi | RGB LED STRIP Smartphone-bediening: Hallo allemaal, in deze tutorial zullen we leren hoe we nodemcu of esp8266 kunnen gebruiken als een IR-afstandsbediening om een RGB LED-strip te bedienen en Nodemcu zal worden bestuurd door smartphone via wifi. Dus in principe kun je de RGB LED STRIP bedienen met je smartphone
Smartphone-gestuurde Neopixels (LED-strip) met Blynk-app via wifi - Ajarnpa
Smartphone-gestuurde neopixels (LED-strip) met Blynk-app via wifi: ik heb dit project gemaakt nadat ik me had laten inspireren door smartphone-gestuurde neopixels in het huis van een vriend, maar die van hem waren in de winkel gekocht. Ik dacht: "Hoe moeilijk kan het zijn om het zelf te maken, het zou ook veel goedkoper zijn!"
Speel nummers (MP3) met Arduino met behulp van PWM op luidspreker of Flyback Transformer - Ajarnpa
Speel liedjes (MP3) met Arduino met behulp van PWM op luidspreker of Flyback Transformer: Hallo jongens, dit is mijn eerste instructable, ik hoop dat je het leuk zult vinden !! Kortom, in dit project heb ik de seriële communicatie tussen mijn Arduino en mijn laptop gebruikt, om muziekgegevens van mijn laptop naar de Arduino te verzenden. En met behulp van de Arduino TIMERS t