Inhoudsopgave:

Kamerplanten water geven met NodeMCU, lokale Blynk-server en Blynk Apk, instelbaar instelpunt - Ajarnpa
Kamerplanten water geven met NodeMCU, lokale Blynk-server en Blynk Apk, instelbaar instelpunt - Ajarnpa

Video: Kamerplanten water geven met NodeMCU, lokale Blynk-server en Blynk Apk, instelbaar instelpunt - Ajarnpa

Video: Kamerplanten water geven met NodeMCU, lokale Blynk-server en Blynk Apk, instelbaar instelpunt - Ajarnpa
Video: IoT - Green House 2024, December
Anonim
Kamerplanten water geven met NodeMCU, lokale Blynk-server en Blynk Apk, instelbaar instelpunt
Kamerplanten water geven met NodeMCU, lokale Blynk-server en Blynk Apk, instelbaar instelpunt

Ik heb dit project gebouwd omdat mijn kamerplanten gezond moeten zijn, zelfs als ik voor een langere periode op vakantie ben en ik hou van het idee om controle te hebben of op zijn minst alle mogelijke dingen die in mijn huis gebeuren via internet te controleren.

Benodigdheden

NodeMCU ESP-8266

Raspberry Pi 3

SD-kaart (16Gb aanbevolen)

Capacitieve bodemvochtigheidssensor (of doe-het-zelf)

3-6 V (DC) Minipomp

2N2222 of gelijkwaardige NPN-transistor

1x 1N4148-diode

1x 1K weerstand 0.25W

Breadboard of Prototyping board

Sprongdraden

Stap 1: Bereid uw lokale Blynk-server voor

Bereid je lokale Blynk-server voor
Bereid je lokale Blynk-server voor

De softwarekern van dit project is het Blynk IOT-platform. Ze bieden gratis hosting aan voor kleine projecten met de mogelijkheid om extra credits te kopen als je van plan bent om je ideeën uit te breiden. Het goede deel van dit platform bestaat uit de mogelijkheid om hun op Java gebaseerde server lokaal te installeren op verschillende platforms, waaronder Windows of Raspberry Pi3, die ik in deze tutorial ga gebruiken.

Allereerst moet je de nieuwste beschikbare Raspbian-build installeren, Buster is de versie die ik op dit moment gebruik. Voor instructies, details en instellingen is dit een goede tutorial.

Uiteraard is het verplicht om je RPi3 via LAN of wifi met je router te verbinden. Zelfs als je geen toetsenbord of monitor hebt om verbinding te maken met je RPi3, kun je deze met behulp van deze tutorial verbinden met je wifi.

Nu kan de Blynk-serverinstallatie op uw vers geïnstalleerde Raspbian heel eenvoudig worden gedaan door deze tutorial te volgen. Ik moet je zeggen dat je een deel van de instructies ervan moet vervangen, want sinds die tutorial is geschreven, heeft de Blynk-server enkele updates gekregen en moet je dienovereenkomstig bijwerken. Dus als ze je vragen om de server te downloaden, moet je het commando wget "https://github.com/blynkkk/blynk-server/releases/download/v0.23.0/server-0.23.0.jar" vervangen door wget "https://github.com/blynkkk/blynk-server/releases/download/v0.41.8/server-0.41.8-java8.jar"

Omdat de Blynk-server niet automatisch start nadat RPi opnieuw is opgestart, moet je het Crontab-bestand toevoegen zoals ze hebben aangegeven door aan het einde de volgende regel toe te voegen:

@reboot java -jar /home/pi/server-0.41.8-java8.jar -dataFolder /home/pi/Blynk &

De laatste vermelding met betrekking tot de installatie van de Blynk-server is dat de pagina die u voor administratiedoeleinden bezoekt https://IP_BLINK_SERVER:9443/admin zal zijn en dat u moet letten op het poortnummer, 9443, omdat in die tutorial tijd, de gebruikte poort was 7443

Om de server toegankelijk te maken vanaf internet, moet u poort 9443 doorsturen naar het interne IP-adres van de Blynk-server en moet u ook een DDNS-service gebruiken voor het geval het openbare IP-adres verandert tijdens het opnieuw opstarten van de router. Als u de eigenaar bent van ASUS- of Mikrotik-routers (ik geef deze voorbeelden omdat ik beide merken heb en ik met succes hun DDNS-service gebruik), of een ander merk met hun eigen DDNS-service, dan zal het veel gemakkelijker voor u zijn.

Stap 2: Hardware-installatie

apparatuur installatie
apparatuur installatie
apparatuur installatie
apparatuur installatie
apparatuur installatie
apparatuur installatie

Wat betreft de hardware, de interfacemodule tussen sensor, pomp en Blynk-server, koos ik voor NodeMCU ESP8266. Deze module is uitgerust met ESP8266-chipset voor WiFi (wat zeer goed gedocumenteerd is en wordt opgenomen in veel IoT-projecten). Als je verder wilt experimenteren, kun je de eenvoudigste versie kiezen, ESP8266 ESP-01, zolang dit project maar 2 pinnen nodig heeft om te werken: een analoge ingang om de waarden van de bodemvochtigheidssensor te lezen en een uitgang om de pomp te starten voor water geven.

Maar in dit project zullen we NodeMCU gebruiken omdat het veel gemakkelijker is om de schets te uploaden (via USB-kabel) en breadboard-vriendelijk is, waardoor toekomstige ontwikkelingen mogelijk zijn (zoals het toevoegen van een LCD om bijvoorbeeld de werkelijke vochtigheid en het instelpunt te lezen of het toevoegen van een relais om groeilicht voor uw planten).

Zoals eerder vermeld, zullen we er een gebruiken Bodemvochtigheidssensor, capacitief type. Op de markt kun je ook resistieve typen vinden, met hetzelfde bereik van analoge uitgangswaarden, maar door veel doe-het-zelvers is bewezen dat het onstabiel is en niet het echte vochtigheidsniveau in de bodem meet, maar de dichtheid van opgeloste zouten, ionen in je bodem.

Voor het pompgedeelte heb ik een NPN-transistor gebruikt om de motor aan te drijven. De verbindingen kunt u zien in het bijgevoegde fritzing-bestand en schema's in de titelafbeelding. Houd er rekening mee dat u een tweede voeding nodig hebt, variërend van 7 tot 9 V, met voldoende stroom om de pomp aan te drijven. In mijn geval was de gemeten stroom die door de pomp vloeide 484 mA en ik gebruikte een 9 V-voeding. De vliegwieldiode wordt gebruikt om de tegenstroom die door de motorspoel stroomt te verwijderen wanneer deze gaat stoppen, om schade aan de transistor te voorkomen.

Stap 3: Coderen en instellen van de Blynk-applicatie op uw mobiel

In deze stap moet u de bijgevoegde schets in NodeMCU laden.

Allereerst moet je een ESP8266-bord toevoegen aan je Arduino IDE. Dit kan heel eenvoudig worden gedaan door deze tutorial te volgen. Wanneer u NodeMCU op uw computer aansluit, moet u met behulp van een USB-kabel de COM-poort controleren en dienovereenkomstig selecteren in Arduino IDE.

Ten tweede moet je de Blynk-bibliotheek toevoegen aan IDE door deze tutorial te volgen.

En tot slot moet je de Blynk-applicatie van Google Play op je mobiele telefoon installeren.

Open nu de Blynk-applicatie op uw mobiel en stel uw account in. Selecteer aangepaste server in het hoofdscherm en voer de DDNS-naam in die u in stap 1 van deze zelfstudie hebt ingesteld. Laat de standaardpoort ongewijzigd (je forward deze poort al eerder in je router). Voer in het veld gebruikersnaam uw e-mailadres in en kies een wachtwoord. Het account wordt aangemaakt en voeg nu een nieuw project toe, noem het zoals je wilt. Kies NodeMCU als het bord dat je gaat gebruiken en Verbinding - WiFi. Je ontvangt een authenticatietoken in je e-mail, deze code wordt in de bijgevoegde schets ingevoegd, Ik heb duidelijk gemaakt waar je het moet schrijven, in de opmerkingen.

Daarna moet je in de Blynk-applicatie de volgende widgets toevoegen:

LCD-widget - leest pin V9 (virtuele pin V9) en schakelt over naar geavanceerd; dit toont de wifi-sterkte en het IP-adres

Meterwidget - leest virtuele pin V2, met een bereik van 0 tot 100, dit is de werkelijke vochtigheid in de bodem

Numerieke invoerwidget - gekoppeld aan virtuele pin V1, bereik van 0 tot 100, dit stuurt het instelpunt voor vochtigheid naar een geheel getal dat in schets wordt gebruikt

Superkaart (optioneel) - leest de gegevensstroom van virtuele pin V2 om een kaart te maken met de vochtigheid van uw plant.

Vervang ten slotte in schets uw authenticatietoken dat u in uw e-mail hebt ontvangen, vervang WiFi-naam en wachtwoord voor WiFi en upload uw schets naar NodeMCU.

Ik hoop dat alles soepel en zonder problemen zal verlopen, want je planten moeten gezond zijn!

Veel geluk !

Aanbevolen: