Inhoudsopgave:

ESP-Now Rainstick: 6 stappen (met afbeeldingen)
ESP-Now Rainstick: 6 stappen (met afbeeldingen)

Video: ESP-Now Rainstick: 6 stappen (met afbeeldingen)

Video: ESP-Now Rainstick: 6 stappen (met afbeeldingen)
Video: rainstick 2024, Juli-
Anonim
Image
Image
Verzamel je materialen
Verzamel je materialen

Dit leuke kleine project zal je de triviale vreugde geven om een elektronisch netwerk te laten aankondigen dat je regen hebt! Het gerucht gaat dat de AI-gestuurde, traanopwekkende prijs van Tesla sensoren heeft die de ruitenwissers wekken bij het begin van de regen. Als je in een volledig glazen cabine zit, zou je denken dat de vanzelfsprekendheid van regen zo'n sensor niet echt nodig zou maken, maar zonder het gebrul van exploderende benzine moet je iets hebben om over op te scheppen. De ingebouwde mogelijkheden van de eenvoudig te gebruiken ESP-8266-microcontrollers worden verbeterd door de lokale ESP-Now-netwerkoptie. U heeft geen verbinding met internet nodig en alle verplichtingen en onpraktische zaken die daaruit voortvloeien. En je mag spelen met bamboestokken!

Dit is geen echte regenstok. Dat is een gedroogde cactus die een regengeluid maakt met trapsgewijze bonen - absoluut low-tech. Dit apparaat bestaat uit een Master- en een Slave-combo. De aangewezen Meester zit buiten, werkt op een Lipo-batterij, werkt op zonne-energie en wordt gewekt door een Adafruit-hardwareslaapmiddel dat elke tien minuten van stroom nipt en een regensensor inschakelt. Als het regen snuift, stuurt het een ESP-Now-bericht naar zijn enige vriend - een slaaf - die binnenin is aangesloten op stroom en naar berichten luistert. Als het er een ontvangt, wordt het een cascade van kunstig geplaatste Neopixels. Het team is gemaakt van lokaal geproduceerde bamboe, wat leuk is om mee te werken en geen 16 uur nodig heeft om te printen.

Stap 1: Verzamel uw materialen

Verzamel je materialen
Verzamel je materialen

Weet je nog toen je een kind was en er werd gesuggereerd dat je iemand kon doden door ze aan een gaas te binden over groeiende, geslepen bamboestokken en te wachten! Nou, dat gaan we niet doen.

1. Bamboe - pak een mooi stuk zolang je Neopixels erin wilt rijgen. (De mijne was ongeveer 6 voet) Ook een stuk voor de sensorbehuizing die breed genoeg was om wat elektronica te huisvesten. (3 inch breed 8 inch lang)

2. Flexibele zonnecellen, zoals deze:

3. TP 4056 Opladerbord:

4. Logic level converter:

5. Power Timer Breakout Adafruit:

6. Adafruit Feather HUZZAH met ESP8266:

7. WEMOS D1 Mini - uw keuze…

8. Neopixel Strip 60 Led/M

9. Lipo-batterij

10. Regensensor - ik heb deze gekocht, maar er zijn er veel:

11. Algemene AAN/UIT-schakelaar

Stap 2: Monteer de elektronica

Monteer de elektronica
Monteer de elektronica
Monteer de elektronica
Monteer de elektronica
Monteer de elektronica
Monteer de elektronica
Monteer de elektronica
Monteer de elektronica

Volg het Fritzing-diagram over hoe de bedrading voor beide apparaten wordt gedaan. De slave-eenheid is heel eenvoudig met een perf-bord voor het monteren van vrouwelijke headers voor de WEMOS D1 Mini waarop een set mannelijke headers is geïnstalleerd. Dit maakt montage en demontage voor aanpassingen en programmering eenvoudig. De logic level shifter zit aan de andere kant en is klein en makkelijk te monteren op het bord. Voor best practices bij het gebruik van Neopixels is het raadzaam om een weerstand aan te sluiten op de data-uitgang van de niveauverschuiver en de Neopixels en een grote condensator tussen de voedingskabels ernaartoe. Zorg ervoor dat u een geschikte voeding gebruikt en sluit deze apart van de WEMOS-uitgang aan. Je kunt deze stroombron aanpassen aan hoe lang je rainstick meegaat…

De Master-eenheid is ook vrij eenvoudig. Ik heb een Adafruit Huzzah ESP8266 gebruikt in plaats van een andere WEMOS D1 mini, omdat deze een eigen batterijvoeding heeft. Grootte welke Lipo je maar wilt - hij moet gewoon in de bamboe passen. De eenvoudige laadregelaar wordt aangesloten op de zonnecel en de accu en levert stroom aan de Power Timer Breakout en de ESP8266. De stroom naar de regensensor komt via de 3,3 V-voeding op het microcontrollerbord. Ik heb een schakelaar gezet tussen de Enable-regel van de Power Timer en de EN-pin van het bord, zodat ik deze regel hoog kon houden om hem te programmeren. (Het wordt laag gehouden, zelfs als de stroom naar de timer is uitgeschakeld, zo moeilijk om het zonder te laten werken…) Er worden twee pinnen op de Huzzah gebruikt - een voor de regensensor die het digitaal laag brengt als het water raakt en een om te vertellen de Power Timer is ok om het af te sluiten. Ik heb geen batterijtester op dit apparaat geplaatst, maar als je wilt, staan de instructies op de Adafruit-webpagina. Het gebruikt de enige A0-pin op het bord, maar je kunt het eenvoudig programmeren om deze gegevens naar de slave te verzenden en het als pixelhoogte te laten uitvoeren.

Stap 3: Bouw het

Bouw het
Bouw het
Bouw het
Bouw het
Bouw het
Bouw het

De bamboe is leuk om mee te werken. De stukken die ik gebruikte waren een tijdje gedroogd en dood. Schuur de buitenkant glad. De gleuf voor de lamp is eenvoudig te zagen met een lichtreciprozaag. Gebruik gewoon wat blauwe tape over de hele lengte en scheur ongeveer uit de vrije hand een centimeter breed in het gezicht en laat ongeveer 20 centimeter intact aan de uiteinden. De vorm kan zo golvend zijn als je wilt. Boor twee gaten ter grootte van een mes om de in- en uitgang van het mes aan de uiteinden te starten. De bamboe snijdt heel gemakkelijk en je kunt dwars door de knooppunten gaan die een volledig schot hebben. De rest van de buis is hol. Neem een beitel en wrik de binnenste resten van de knopen eruit, zodat een volledige holle buis ontstaat. Er moet op worden gelet dat u geen spleet over de lengte van de bamboe begint, maar dit is eenvoudig te repareren. Spray verf de binnenkant van de buis met een platte witte outdoor acryl. De buitenkant van de buis is gecoat met een paar lagen uv-bestendig polyurethaan.

De Master-eenheid is een stuk van ongeveer 10 inch lang en 3 tot 4 inch breed waarin de sensor kan worden geplaatst. Het is zorgvuldig gekozen, zodat het ongeveer 2 inch verwijderd is van een knoop aan de bovenkant. Deze ruimte houdt de sensor vast en zorgt voor een waterdichte afdichting voor de elektronica eronder. U moet een gat van 1/4' boren aan de rand van deze node-cap zodat de sensordraden er doorheen kunnen vallen. Nog een paar gaten rond de dopbasis zorgen ervoor dat water dat zich in deze natuurlijke beker verzamelt, radiaal kan vertrekken. Ik moest de sensorplaat inkorten om in de ruimte te passen en verschillende connectoren erop solderen om een klein gaatje te krijgen. De sensordraden worden naar een sensorvergelijkerbord geleid dat zich in het waterdichte gedeelte bevindt. Spuit deze unit opnieuw in en uit met polyurethaanspray voor buitengebruik.

Stap 4: Monteer het

Monteer het
Monteer het
Monteer het
Monteer het
Monteer het
Monteer het

Het flexibele zonnepaneel is contactcement gemonteerd aan de buitenkant van de Master Unit. De draden die het via kleine gaatjes in de buisbehuizing verbinden, zijn aan de uiteinden van het zonnepaneel gesoldeerd. Volg de instructies op hun website om dit te doen - het is heel eenvoudig. De regensensor is in de bovenste beker gemonteerd met wat siliconen op nylon afstandhouders die de sensor onder een hoek kantelen zodat de regen niet ophoopt. In de zijkant van het apparaat is een gat geboord voor de AAN/UIT-schakelaar. Al het andere is gewoon binnen gepropt. Je kunt een kleine plastic hoes over de bodem smeren, zolang je wat luchtgaatjes achterlaat. Alle draadingangen zijn afgedicht met watten van siliconen.

De slave-eenheid is uitgerust met een lengte van Neopixels om een paar centimeter aan de boven- en onderkant over te laten. Deze kunnen gemakkelijk op hun plaats worden gesiliconeerd - zorg ervoor dat u de siliconen hoes verwijdert als die van u er een heeft - onmogelijk om op te lijmen. Plaats de Neopixels opzij, zodat ze niet vanuit bijna elke hoek te zien zijn, maar het licht richt op de nog geschilderde holte. Nadat de stroombron is beveiligd met een grote condensator, past het kleine WEMOS-bord gemakkelijk in de bodem van de buis. Hoewel de slave-unit naar buiten kan, is deze niet ontworpen om waterdicht te zijn.

Stap 5: Programmeer het

Programmeer het
Programmeer het
Programmeer het
Programmeer het
Programmeer het
Programmeer het

Deze man heeft goed werk geleverd door enkele voorbeelden van sensoren en ESP-Now uiteen te zetten: https://github.com/HarringayMakerSpace/ESP-Now. Andreas Spiess heeft een mooie video gemaakt met een voorbeeld waaruit ik de code heb gebruikt om dit project te starten. Deze beperkte Master/Slave-eenheid heeft helemaal geen internet nodig, dus ik heb die secties geëlimineerd - het draagt alleen de informatie over of het regent of niet. Ik besloot de aangekondigde diepe slaapopties voor de ESP niet te gebruiken, omdat ik bij een vorig project ontdekte dat het na een tijdje willekeurig onstabiel werd en willekeurig de zonnebatterij zou leeglopen. De hardware-optie herstart de Adafruit Huzzah eens in de tien minuten of zo, controleert de sensor op een laag signaal dat regen aangeeft, als hij niet vindt, stuurt hij een hoog/laag signaal naar de Done-pin op de timer. Anders verschuift de code naar het verzenden van de informatie (eigenlijk geen informatie behalve de verzendfunctie zelf) naar de slave om zijn code te activeren. De slave-code start gewoon de machine op en wacht op een bericht en wanneer deze wordt ontvangen, wordt de neopixel-functie een minuut ingeschakeld. Je kunt dit in de software variëren, maar het blijft gewoon wachten op de regenactivering. Lees de opmerkingen in de software om te zien waar u waarden kunt wijzigen. De geweldige meteorencascadecode kwam van deze bron: https://www.tweaking4all.com/hardware/arduino/adruino-led-strip-effects/ Ik heb zojuist wat willekeurige constanten en een kleurverandering toegevoegd.

Stap 6: Het gebruiken

Het gebruiken
Het gebruiken
Het gebruiken
Het gebruiken

De kleine potentiometer op de regensensor moet worden aangepast voor welk niveau van druppelen de master activeert om een melding te sturen. U moet ook de potentiometer van het Adafruit-timercircuit aanpassen om te bepalen hoe vaak uw sensor wordt ingeschakeld om te controleren op regen - het bereik is van seconden tot twee uur - uw keuze. Laad de lipo-batterij op de hoofdeenheid op en zet hem aan en monteer hem buiten en hij zou voor zichzelf moeten zorgen voor energiebehoeften, tenzij je in Alaska woont, waar het voortdurend regent en donker is. De slave-eenheid werkt overal binnen het wifi-bereik van de master en is zeer veerkrachtig in wachtdagen op berichten - sluit hem gewoon aan op een 5 volt muurwrat met voldoende stroom om je Neopixel-lengte te leveren en klaar. Als u af en toe een lichtdisplay wilt terwijl u op regen wacht, is dit eenvoudig te programmeren, vooral als u ergens woont waar het helemaal niet regent.

Aanbevolen: