Plantbeheer op basis van zonne-energie met ESP32 - Ajarnpa
Plantbeheer op basis van zonne-energie met ESP32 - Ajarnpa
Anonim
Op zonne-energie gebaseerd installatiebeheer met ESP32
Op zonne-energie gebaseerd installatiebeheer met ESP32
Op zonne-energie gebaseerd installatiebeheer met ESP32
Op zonne-energie gebaseerd installatiebeheer met ESP32
Op zonne-energie gebaseerd installatiebeheer met ESP32
Op zonne-energie gebaseerd installatiebeheer met ESP32

Planten kweken is leuk en water geven en verzorgen is niet echt een gedoe. Microcontroller-applicaties om hun gezondheid te bewaken zijn overal op internet te vinden en de inspiratie voor hun ontwerp komt van de statische aard van planten en het gemak van het bewaken van iets dat niet rondrent en zweet. Ik ben relatief nieuw op het gebied van plantengroei en handleidingen op internet leken te zijn geschreven door goedbedoelende maar niet door ingenieurs. Een vriend aan wie ik vroeg "hoeveel moet ik ze water geven…" antwoordde dat de enige manier is om de plant op te tillen en als hij licht aanvoelt, geef je hem water. Hij is erg goed in "groeien". Je vinger in de grond steken helpt niet echt veel. De meeste Instructables maken gebruik van een goedkope bodemvochtsonde die vatbaar is voor een verscheidenheid aan storingen - waarvan de meest flagrante onnauwkeurigheid en corrosie zijn.

Bij het doornemen van de literatuur blijkt dat vuil tot 40% water kan zijn en om dit te meten zijn vrij dure instrumenten nodig. De goedkopere sondes zijn afhankelijk van de watergeleiding die varieert met opgeloste zouten en andere factoren. Hierboven zie je een grafiek die ik heb gemaakt van een container met vuil die gedurende 2 weken is gewogen, gevolgd door verwarming in de oven tot 300 om al het niet-aangesloten water te verwijderen. Veertig procent van de totale bodem bestaat uit water en gedurende tien hete dagen van directe zon verloor het 75% van dit water in een relatief lineair tempo. Dus wat is het juiste vochtgehalte? Hangt van verschillende factoren af, maar bij het bouwen van deze machine is het een goed idee om uw plant zorgvuldig water te geven tot het niveau dat u denkt dat goed is en deze op de machine te plaatsen die zorgvuldig het gewicht meet en vervolgens binnen een ingestelde limiet water toevoegt wanneer dat nodig is. Het ontwerp kan worden aangepast voor hangende plantenmanden en drukwatersystemen.

De machine moest op zonne-energie werken, autonoom zijn met zijn eigen watervoorziening, de watervoorziening bewaken door middel van meldingen op het web, slapen wanneer niet in gebruik om stroom te minimaliseren en het basisgewicht onthouden en hoeveel waterbeurten en andere gegevens tussen slaap in cycli. De nieuwe ESP32 leek een goede kandidaat voor de hersenen.

Stap 1: Verzamel uw benodigdheden

Verzamel je benodigdheden
Verzamel je benodigdheden
Verzamel je benodigdheden
Verzamel je benodigdheden
Verzamel je benodigdheden
Verzamel je benodigdheden

De machine is gemaakt van twee BigBox Store 12 inch keramische tegels in een aluminium kanaalframe met daartussen een watertank. De elektronica zit vast in een kunststof schakelkast aan de achterzijde. De watertank heeft een uitgangsslang van een ingesloten pomp en sensoreenheid die op de bodem van de tank is gelijmd die de plant voedt. De loadcel hangt uit aan een dwarsbalk aan de bovenkant van de unit.

1. Arrow Home Products 00743 2 Gallon Slimline drankcontainer in transparant

2. uxcell 5st 5.5V 60mA Poly Mini zonnecelpaneelmodule DIY:

3. Gikfun Metal Ball Tilt Shaking Positieschakelaars voor Arduino

4. Uxcell a14071900ux0057 10Kg aluminiumlegering elektronische weegschaal Load Cell

5. Adafruit HUZZAH32 – ESP32 Feather Board

6. HX711 Gewicht Wegen Load Cell Conversie Module Sensoren Ad Module voor Arduino

7. Adafruit Vergrendelende Mini Relais FeatherWing

8. TP4056 Lithium Cell Charger Module met batterijbescherming

9. ECEEN USB-pomp Mini dompelpomp voor aquarium hydrocultuur aangedreven via USB DC 3.5-9V

10. 18650 Lipo-batterij met batterijhouder

Stap 2: Bouw de doos

Bouw de doos
Bouw de doos
Bouw de doos
Bouw de doos
Bouw de doos
Bouw de doos
Bouw de doos
Bouw de doos

Het boxframe is gemaakt van BigBox 1 inch aluminium hoek. Je krijgt het algemene idee van de foto's en het is niet al te moeilijk om te monteren. De frames zijn gebaseerd op de vierkante voet tegels die de voor- en achterkant van de unit vormen. De tegels worden met siliconenlijm tegen de vlakken van het aluminium frame gehouden. De afmeting van het middenstuk is afhankelijk van de grootte van uw watertank. De tankopening is zo ontworpen dat je hem gemakkelijk uit het apparaat kunt trekken en van bovenaf bijvullen. Draden en buizen die de tank bevestigen, moeten lang genoeg zijn en aan de achterkant krullen.

De plaatsing van het zonnepaneel is ontwerpafhankelijk. Ik ging meerdere ronde panelen gebruiken om het een 'dobbelsteen'-look te geven, maar koos voor de vierkanten omdat ze de beste combinatie van spanning en stroom gaven. Ik ga niet in op de details van het aansluiten van meerdere zonnepanelen, maar je hebt minimaal 5.5v nodig om het laadcircuit te laten werken. Deze panelen waren allemaal parallel gehaakt om de stroomsterkte te verhogen. De gaten in de keramische tegel zijn zorgvuldig geboord met een diamantbit - zorg ervoor dat je water als koelmiddel gebruikt om dit te doen, anders verpest je het bit. Deze gaten zouden elk slechts een paar minuten moeten duren. Gebruik ruime hoeveelheden siliconenlijm om de panelen en de draden aan de binnenkant van de tegels op hun plaats te houden.

De load cell is zeer redelijk en wordt geleverd in verschillende gewichten. Ik heb de variëteit van 10 kg gebruikt, maar als je voor een zware planter gaat, plan dienovereenkomstig. Net als mijn andere Instructables: https://www.instructables.com/id/Bike-Power-Pedal-IoT/ moeten deze loadcellen vanaf hun steunzijde vrijdragend worden met hun 4 mm en 5 mm getapete schroefgaten. In dit geval houdt een aluminium dwarsstuk tussen de twee keramische tegeldragers het ene uiteinde van de weegcel vast. De andere ondersteunt een platform van platte aluminium staaf siliconen gelijmd aan de plant drainage cup. Wees heel voorzichtig met de draden van deze jongens - ze zijn erg kwetsbaar en bijna onmogelijk te repareren als ze in de buurt van hun oorsprong worden afgebroken. Goop met veel hete lijm of siliconen om hun integriteit te behouden.

Stap 3: Bouw de pomp/lege schakelaarhouder

Bouw de pomp/lege schakelaarhouder
Bouw de pomp/lege schakelaarhouder
Bouw de pomp/lege schakelaarhouder
Bouw de pomp/lege schakelaarhouder
Bouw de pomp/lege schakelaarhouder
Bouw de pomp/lege schakelaarhouder

De pomp wordt aangedreven door een relais van de Lipo-batterij en doet het goed met de beperkte spanning, maar je kunt de hoogte van ongeveer 2 voet niet overschrijden, tenzij je een vermogensversterker gebruikt om de spanning te verhogen. De pomp is echt een kampioen, hoeft niet te worden gevuld, is waterdicht en heeft een USB-stekker aan het ene uiteinde. Doet het echter niet goed met droog worden. De schakelaar voor vol/leeg reservoir is gewoon een kantelschakelaar die ik in siliconen heb gesmeerd om waterdicht te maken en vervolgens vastgemaakt aan een aluminium staafsteun voor de pomp en een drijvende rubberen ducky. De rubberen ducky moet direct aan de aluminium balk worden vastgemaakt om de tractie van de kabels van de kantelschakelaar te verminderen. Wanneer het reservoir water bevat, drijft de ducky en kantelt de schakelaar - kortsluiting naar aarde en commando's om het relais en de pomp van stroom te voorzien. Het stuurt deze gegevens ook naar het web en stuurt je een tweet als je water nodig hebt. De pomp is met siliconen op deze draagstructuur gelijmd en vervolgens op de bodem van het waterreservoir gelijmd.

Stap 4: De elektronica bouwen

De elektronica bouwen
De elektronica bouwen
De elektronica bouwen
De elektronica bouwen
De elektronica bouwen
De elektronica bouwen
De elektronica bouwen
De elektronica bouwen

Adafruit HUZZAH32 – ESP32 Feather Board is een relatief nieuwe microcontroller en werkt erg goed in deze slimme plantenhelper. Het voordeel van dit bord ten opzichte van de oudere 8266 is het betere slaapvermogen (vermoedelijk jaren in plaats van een uur of zo …), het vermogen om te onthouden wat het heeft geleerd tussen de dutjes (de oude 8266 reset vanaf nul …) en een lager stroomverbruik tijdens een dutje en meer pinnen. De geweldige Youtuber Andreas Spiess geeft details over de wijzigingen in de code om de ESP32 goed te laten wegen en je moet zijn video bekijken als je meer wilt weten over hoe de details werken. Het slaapvoorbeeld uit de Arduino IDE is ook gebruikt en aangepast voor deze software.

Het Fritzing-diagram toont u zorgvuldig alle bedradingsverbindingen. Componenten werden geassembleerd perf boards en vervolgens aan elkaar bedraad. De Lipo-batterij is uw standaard goedkope 18650 op zijn eigen slee. Het laadbord is een TP4056 die volgens Andreas zeer efficiënt is in deze rol van zonne-energie. De aan/uit-knop met ingebouwde LED stuurt stroom naar het hele systeem, evenals de gemeenschappelijke relaisverbinding die de pomp van stroom voorziet. Het relaisbord is een mooi Adafruit-vergrendelingsrelais-veerbord dat op 3 V werkt. De HX711-versterker wordt gevoed via de Adafruit en is aangesloten op maximaal twee pinnen op het bord.

Alle componenten zijn gestapeld in een plastic buiten-elektriciteitskast die open is op het onderste gedeelte om luchtstroom mogelijk te maken maar regen te blokkeren. Plaats de ESP32 bovenop om programmering en seriële bewaking mogelijk te maken met het deksel eraf.

Stap 5: Software

Software
Software

"laden = "lui"

Het gebruiken
Het gebruiken
Het gebruiken
Het gebruiken
Het gebruiken
Het gebruiken
Het gebruiken
Het gebruiken

Het apparaat is eenvoudig in gebruik. Wanneer ingeschakeld, knippert de LED op de aan/uit-schakelaar totdat een potplant die is bewaterd tot een niveau dat u wilt behouden, op het platform wordt geplaatst. Na gewichtsstabilisatie onthoudt de computer dit initiële gewicht en elk uur of ingesteld interval vergelijkt het nieuwe gewicht van de plant en corrigeert het ofwel met extra verpompt water of rapporteert het nieuwe gewicht en alle andere informatie aan Thingspeak en gaat dan slapen. De bovenstaande grafieken geven de output weer over een periode van drie dagen voor een tomatenplant die ongeveer 60 cm hoog is en in de volle zon groeit. De groei van de plant in de loop van de tijd heeft uiteraard invloed op het gewicht van de pot en moet worden gecompenseerd door de initialisatie opnieuw uit te voeren na een tijd die wordt bepaald door de groei van de plantengroei. Aanvullende software-aanpassingen zouden een geautomatiseerde analyse van de maximale en minimale watertolerantie en -vereisten van de plant mogelijk maken door de pot te laten vollopen totdat het gewicht niet langer veranderde en vervolgens de helling van het watergewichtsverlies in de loop van de tijd te meten. Dit is afhankelijk van de grondsoort, het weer en de plant- en wortelstructuur. Aanvullende bewateringsalgoritmen op basis van Thingspeak-gegevensevaluaties kunnen dan worden aangepast. De nadelen van gewicht in plaats van geleidend sensoronderhoud is de noodzaak van een beperkt bewaterd gebied om te wegen, maar slimme plantenbakken zoals deze zijn goedkoop, gemakkelijk te netwerken en te bedienen en op een rare OCD-manier leuk om te volgen op internet.

Stap 7: Opnieuw doen

Opnieuw doen
Opnieuw doen
Opnieuw doen
Opnieuw doen

Ja, goed ontworpen, de machine werkte een week of zo goed en dan zou de ESP32 de neiging hebben om in een rare lus te gaan en niet correct op te starten en de batterij 's nachts leeg te maken. Geen enkele softwarewijziging kon dit beïnvloeden, dus ik gaf het op en voegde een Adafruit TPL5111 toe om de energiecyclus van de ESP te regelen, maar omdat ik het geheugen niet langer kon gebruiken zoals eerder, schreef ik om de EEPROM te gebruiken en veranderde van Thingspeak naar Blynk, wat ik vind meer plezier op je telefoon en een echt goed systeem. De hardwarewijziging is slechts een kwestie van de TPL 5111 op stroom en aarde aansluiten, een voltooide pin op de ESP en de Enable-out op de EN-pin. Zorg ervoor dat je een tuimelschakelaar tussen de EN-out en de EN op het bord plaatst, zodat je programma's kunt wijzigen en uploaden. Ik stel de slaapcyclus in op elke twee uur. Om de EEPROM te wissen en de eenheid te resetten voor een nieuwe plant of voor extra gewicht, heb ik een schakelaar in Blynk ingesteld om het geheugen te wissen en het weegproces opnieuw te starten. Het programma voor de nieuwe software is hierboven opgenomen en het programma op Blynk is voor de hand liggend om in te stellen. Deze machine werkt echt geweldig en produceert wat dandy producten. Ik ben eigenlijk onder de indruk van hoe leuk het ding bleek te zijn --- zonnecellen werken gemakkelijk en het raakt nooit zonder stroom.