Inhoudsopgave:
- Benodigdheden
- Stap 1: Download de software
- Stap 2: Stel een Blynk-project in voor uw sensor om mee te praten
- Stap 3: MQTT-service instellen (Home Assistant)
- Stap 4: Configureer de firmware
- Stap 5: Onderdelen afdrukken
- Stap 6: Sluit alles aan
- Stap 7: Begin met de batterij
- Stap 8: Monteer de schakelaar
- Stap 9: Soldeer de rest van de verbindingen
- Stap 10: Doe alles in de doos
- Stap 11: Schakel het in en neem uw eerste metingen
- Stap 12: Volgende iteraties
Video: IoT-vochtsensor: 12 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:16
Ik wilde een vochtsensor die me zou laten weten wanneer kamerplanten water nodig hadden. Ik wilde iets dat ik kon gebruiken voor het starten van zaden en voor volwassen kamerplanten. Ik ben altijd bang dat ik ze te veel of te weinig water geef.
Ik heb wat tijd besteed aan het werken aan IoT-software voor Arduino-apparaten, met behulp van de software van andere mensen had ik een redelijk goed idee van de vereisten voor de mijne.
- Ik wilde iets dat ik naar meerdere apparaten kon flitsen en via wifi kon configureren. Ik wilde niet elke keer dat ik upload naar een nieuw apparaat een configuratiebestand moeten wijzigen. Ik wilde ook geen inloggegevens of andere bijzonderheden in code hoeven te zetten, omdat ik altijd van plan was deze code te delen.
- Ik wilde ook een behoorlijk solide softwareframework dat ik kon aanpassen voor toekomstige projecten. Dit is een vochtsensor. Ik zou een bewegings-/licht-/geluids-/trillings-/kantelsensor kunnen bouwen en ik wilde daarvoor dezelfde software kunnen gebruiken.
- Uiteindelijk wilde ik dat dit op batterijen zou werken en als zodanig wilde ik dat het lang mee zou gaan. Ik heb wat tijd besteed aan het uitzoeken van de diepe slaapmodus, waarbij het apparaat het grootste deel van de tijd in een slapende toestand zal doorbrengen.
Benodigdheden
Wemos D1 Mini
Capacitieve vochtsensor
18650 batterij
Positieve en negatieve batterijconnectoren
Schuifschakelaars
Toegang tot een 3D-printer is ook behoorlijk essentieel, hoewel je andere manieren kunt vinden om de onderdelen aan te sluiten en te huisvesten.
Hier is een link naar mijn Thingiverse-post met alle modellen die ik heb gemaakt.
Stap 1: Download de software
Ik heb mijn software op GITHUB gepubliceerd. Het is gebouwd met behulp van PlatformIO
- Volg de instructies op de PlatformIO-website om VSCode en PlatformIO te installeren
- Download de firmware van mijn GITHUB-repo. Klik op Klonen of download en download ZIP
- Pak de map uit en open deze in VSCode
- Sluit de Wemos D1 aan op uw computer via micro-USB
- Klik in VSCode op de alien om het PlatformIO-paneel te openen
- Klik op Build and Upload om de firmware naar het Wemos-bord te uploaden
Stap 2: Stel een Blynk-project in voor uw sensor om mee te praten
Ik heb me gericht op twee soorten services MQTT en Blynk, beide zijn optioneel.
Blynk is een gebruiksvriendelijk en goedkoop IOT-platform. Je kunt apps meestal maken met behulp van de componentcredits die je gratis krijgt. Als je tegoed op is, kun je meer kopen met in-app-aankopen.
- Installeer de Blynk-app op je telefoon
- Account aanmaken
- Een nieuw nieuw project maken
- Geef het een naam en kies Wemos D1 als het apparaat
- Haal de Blynk-sleutel uit uw e-mail, deze wordt later gebruikt om het apparaat te configureren
- Ga je gang en tik ergens op je projectdashboard om een component toe te voegen
- Selecteer voorlopig LCD-scherm, maar u kunt dit later wijzigen voor een kaart of andere componenten. Met Blynk kun je componenten recyclen, zodat je je geen zorgen hoeft te maken over het verspillen van credits
- Tik op het LCD-scherm en stel de pinnen in. De firmware gebruikt twee virtuele pinnen. Het maakt niet uit welke je gebruikt, als je maar hetzelfde in je app gebruikt als je firmware later
Stap 3: MQTT-service instellen (Home Assistant)
Ik gebruik Home Assistant al voor mijn domotica en ben van plan meldingen in te stellen voor een plant die droog is of een sensor die niet meer meldt (batterij leeg).
Je kunt hier informatie vinden om HA in te stellen als je wilt, of je kunt gewoon een Mosquitto Service voor MQTT opzetten.
In beide gevallen wilt u uw ip-adres, gebruikers-ID en wachtwoord weten.
Als je Home Assistant gebruikt, zet je een sensor op het MQTT-platform, maar je hebt de chipid nodig. De firmware zal een bericht publiceren met het onderwerp [chip-id]/vocht met de waarde van de vochtmeting
Hier is een voorbeeld van een sensorconfiguratie voor Home Assistant
state_topic: "ESP6e4bac/vocht/"
device_class: vochtigheid
Stap 4: Configureer de firmware
- Wanneer het bord opnieuw wordt ingesteld, start het een wifi-toegangspunt WifiMoisture
- Maak er verbinding mee via je telefoon of computer
- Open een browser en navigeer naar 192.168.4.1
- U ziet een webformulier
- Voeg uw wifi-inloggegevens toe.
- U kunt het slaapinterval in minuten instellen, maar ik raad u aan het gewoon op de standaardwaarde te laten staan (het maximum voor uw apparaat)
- Blynk Key en/of MQTT-instellingen toevoegen
- Druk op verzenden
U kunt Blynk-sleutels en/of MQTT-inloggegevens invoeren, afhankelijk van hoe u het vocht wilt volgen. Het zou met beide moeten werken, maar ik ben van plan om beide te gebruiken.
Ik gebruik Home Assistant voor mijn domotica en zal een waarschuwing instellen op basis van MQTT, maar ik gebruik ook een grafiek in Blynk om dingen realtime bij te houden.
Ik zou adviseren om deze configuratie uit te voeren met het Wemos-apparaat nog steeds aangesloten op uw pc en terwijl de seriële monitor wordt uitgevoerd. Als je iets verkeerd hebt getypt of andere problemen hebt, heb je de seriële uitgang nodig om een diagnose te stellen.
Stap 5: Onderdelen afdrukken
Ga naar mijn Thingiverse-post, haal de onderdelen op en print de nieuwste (v2 op het moment van schrijven).
Niets zou enige ondersteuning nodig hebben, maar zorg ervoor dat de openingen naar boven wijzen, zodat u geen grote overhangende gebieden heeft.
Stap 6: Sluit alles aan
U wilt alles aansluiten voordat u het in de doos plaatst, maar er zijn een paar afgedrukte stukken die u tijdens het aansluiten moet monteren. We zullen dit stap voor stap doen
Stap 7: Begin met de batterij
De batterijconstructie is opgebouwd uit de gedrukte houder, een positieve en negatieve connector, twee zwarte draden en een rode.
Nadat u de batterijhouder hebt afgedrukt, plaatst u de positieve en negatieve connectoren aan beide uiteinden met het lipje dat aan de onderkant uitsteekt.
Draai de batterijhouder om, vouw de lipjes naar buiten en voeg er een beetje soldeer aan toe
Draai de uiteinden van de twee zwarte draden in elkaar en vertin ze met soldeer
Vertin het uiteinde van de rode draad met soldeer
Soldeer vervolgens de zwarte draden aan de negatieve connector (die met de veer) en de rode draad aan de positieve connector.
Vouw tenslotte de lipjes zodat ze plat tegen de zijkant van de batterijhouder zitten.
Stap 8: Monteer de schakelaar
Deze firmware is bedoeld om het meeste uit de batterij te halen met behulp van de chips Deep Sleep-modus.
Het apparaat wordt wakker, neemt een meting en publiceert deze en gaat dan weer slapen. Om de chip zelf wakker te maken wordt er een verbinding gemaakt tussen D0 en RST.
Ik heb de afwezigheid van die verbinding gebruikt om het apparaat te vertellen dat je het wilt (her)configureren. De eerste keer dat u het apparaat startte, ging het naar de configuratiemodus omdat er nog geen configuratie was opgeslagen. Nu dat het geval is, als u ooit die configuratie wilt wijzigen, draait u de schakelaar om en schakelt u de stroom uit of drukt u op de reset-pin.
Ik merkte ook dat ik soms de D0-RST-verbinding moest loskoppelen om een nieuwe versie van de firmware te flashen. Daar werkt de schakelaar ook voor.
De bedrading van de schakelaar is eenvoudig, een kabel aan de ene kant naar de RST-pin en de middelste kabel naar de D0-pin. Schuif voordat u dit gaat solderen het bedrukte schakelblok op de schakelaar.
Stap 9: Soldeer de rest van de verbindingen
Nu de batterijconstructie en het schakelblok zijn aangesloten, is het tijd om alle andere verbindingen aan te sluiten.
- Soldeer de rode draad van de batterij naar de 3,5v-pin op de Wemos
- Soldeer een van de zwarte draden van de batterij naar de aardingspin op de Wemos
- Soldeer een draad met beide uiteinden gestript op de A0-pin. We zullen dit verbinden met de gele draad op de sensor
- Soldeer een rode draad met beide uiteinden gestript op de D1-pin op de Wemos. Dit wordt HOOG gezet door de firmware om de sensor van stroom te voorzien
U kunt ook de vrouwelijke header van de sensor afsnijden en deze rechtstreeks op de Wemos solderen. Ik heb dat niet gedaan, maar er is niets mis mee, zolang je niet van plan bent om dit later uit elkaar te halen.
Stap 10: Doe alles in de doos
Ik heb geprobeerd alles strak te laten passen, maar niet te veel kracht te gebruiken, maar elke afdruk is een beetje anders.
- Plaats de Wemos. duw eerst het usb-uiteinde naar binnen. Zorg ervoor dat het mooi op één lijn ligt. Als je het niet goed hebt om in een bocht te komen, zal de achterkant er niet gemakkelijk in gaan.
- Plaats vervolgens de sensor. Terwijl de bedrading al is aangesloten, schuift u deze schuin naar binnen en drukt u deze naar beneden als deze in de juiste positie staat. De doos moet de bedradingsbeugel vasthouden.
- Werk vervolgens de batterijhouder op zijn plaats. Mogelijk moet u de wanden van de doos een beetje buigen. Maak gebruik van het feit dat één kant ervan open is (in de volgende revisie kan ik beide kanten open maken). Zoek de twee ronde pads op de bodem van de doos en druk de batterijhouder erop.
- Plaats ten slotte de schakelaar vanaf de binnenkant van de doos. Schroef de twee 1,7 mm x 8 mm schroeven van buitenaf in en zorg ervoor dat u enige druk uitoefent op het gedrukte schakelblok. De schroeven moeten het bedrukte blok vastgrijpen, maar onthoud dat de bedrukte delen zacht zijn en dat de schroeven de gaten gemakkelijk kunnen strippen.
Zodra alles in de doos zit, duurt het een paar minuten om de draden te ordenen. U kunt ze misschien langs de batterijhouder schuiven, maar afhankelijk van uw draad kunnen de zijkanten zich uitspreiden.
Stap 11: Schakel het in en neem uw eerste metingen
Zorg er ten slotte voor dat de schakelaar is omgedraaid om de D0- en RST-pinnen aan te sluiten en plaats een batterij.
zet het deksel erop en schroef de 6 schroeven erin om het op zijn plaats te houden (of niet het deksel kan gewoon met wrijving vasthouden).
Het apparaat moet meteen een meting uitvoeren, gaan slapen voor de geconfigureerde tijd en dan nog een nemen.
Nu je het hebt uitgevoerd, kun je een grafiek maken in Blynk, een melding instellen in HomeAssistant of een van de andere opties om het vocht te volgen en je planten in leven te houden.
Stap 12: Volgende iteraties
In de toekomst zal ik waarschijnlijk de MQTT-software updaten om meer te zeggen dan alleen de ruwe meting. Een van de blynk-pinnen publiceert een interpretatie, dus die wil ik in ieder geval toevoegen aan MQTT. Ik moet ook de laatste opnemen
Ik ben ook van plan om het leesbereik toe te voegen aan de instellingenpagina of een kalibratiemodus te bouwen. Het idee zou zijn dat u de configuratiepagina gebruikt om deze in de kalibratiemodus te zetten. Vervolgens worden een aantal metingen vrij snel achter elkaar uitgevoerd, waarbij de hoogste als "droog" en de laagste als "nat" wordt aangehouden.
Ik denk ook dat ik het apparaat kleiner kan maken door een kleinere batterij te gebruiken of door een aantal onderdelen op elkaar te stapelen. Er is altijd werk aan het model.
Ten slotte zijn er naast de Wemos D1 Mini nog andere boards die een ingebouwde batterijhouder en/of oplader hebben. Het gebruik hiervan kan wat ruimte besparen en voorkomen dat ik de behuizing later moet openen.
Aanbevolen:
IoT Power Module: een functie voor het meten van IoT-vermogen toevoegen aan My Solar Charge Controller: 19 stappen (met afbeeldingen)
IoT Power Module: een functie voor het meten van IoT-vermogen toevoegen aan My Solar Charge Controller: Hallo allemaal, ik hoop dat jullie allemaal geweldig zijn! In deze instructable ga ik je laten zien hoe ik een IoT Power Measurement-module heb gemaakt die de hoeveelheid stroom berekent die wordt gegenereerd door mijn zonnepanelen, die wordt gebruikt door mijn zonnelaadcontroller t
IoT Basics: uw IoT verbinden met de cloud met behulp van Mongoose OS: 5 stappen
IoT Basics: uw IoT verbinden met de cloud met behulp van Mongoose OS: als u een persoon bent die van knutselen en elektronica houdt, komt u vaker wel dan niet de term Internet of Things tegen, meestal afgekort als IoT, en dat het verwijst naar een reeks apparaten die verbinding kunnen maken met internet! Zo iemand zijn
ESP8266 NODEMCU BLYNK IOT-zelfstudie - Esp8266 IOT Blunk en Arduino IDE gebruiken - Led's bedienen via internet: 6 stappen
ESP8266 NODEMCU BLYNK IOT-zelfstudie | Esp8266 IOT Blunk en Arduino IDE gebruiken | LED's bedienen via internet: Hallo jongens, in deze instructables zullen we leren hoe we IOT kunnen gebruiken met onze ESP8266 of Nodemcu. We zullen daarvoor de blynk-app gebruiken. Dus we zullen onze esp8266/nodemcu gebruiken om de LED's via internet te bedienen. Dus de Blynk-app wordt verbonden met onze esp8266 of Nodemcu
IoT Analoge Input - Aan de slag met IoT: 8 stappen
IoT Analoge Input - Aan de slag met IoT: Inzicht in analoge inputs is een cruciaal onderdeel om te begrijpen hoe de dingen om ons heen werken, de meeste, zo niet alle sensoren zijn analoge sensoren (soms worden deze sensoren omgezet naar digitaal). In tegenstelling tot digitale ingangen die alleen aan of uit kunnen staan, is analoge ingang
IoT Plant Monitoring System (met IBM IoT Platform): 11 stappen (met afbeeldingen)
IoT Plant Monitoring System (met IBM IoT Platform): Overzicht Het Plant Monitoring System (PMS) is een applicatie die is gebouwd met mensen die in de arbeidersklasse zitten met groene vingers in het achterhoofd. Tegenwoordig hebben werkende mensen het drukker dan ooit tevoren; het bevorderen van hun loopbaan en het beheren van hun financiën