Indholdsfortegnelse:

IoT -fugtsensor: 12 trin
IoT -fugtsensor: 12 trin

Video: IoT -fugtsensor: 12 trin

Video: IoT -fugtsensor: 12 trin
Video: Railway crossing| 3way lapped crossing. 2024, November
Anonim
IoT fugtføler
IoT fugtføler
IoT fugtføler
IoT fugtføler
IoT fugtføler
IoT fugtføler

Jeg ville have en fugtføler, der ville lade mig vide, når indendørs planter havde brug for vand. Jeg ville have noget, jeg kunne bruge til start af frø og til modne indendørs planter. Jeg er altid bekymret for, at jeg enten er over eller under vanding af dem.

Jeg har brugt lidt tid på at arbejde på IoT -software til Arduino -enheder, ved hjælp af andres software havde jeg en ret god idé om kravene til mine.

  1. Jeg ville have noget, som jeg kunne blinke til flere enheder og konfigurere via wifi. Jeg ønskede ikke at skulle ændre en konfigurationsfil hver gang jeg uploadede til en ny enhed. Jeg ønskede heller ikke at skulle sætte legitimationsoplysninger eller andre detaljer i koden, da jeg altid havde til hensigt at dele denne kode.
  2. Jeg ville også have en temmelig solid ramme af software, som jeg kunne tilpasse til fremtidige projekter. Denne er en fugtsensor. Jeg kunne bygge en bevægelses/lys/lyd/vibration/vippesensor, og jeg ville gerne kunne bruge noget af den samme software til det.
  3. Endelig ønskede jeg, at dette skulle være batteridrevet, og som sådan ville jeg have, at det skulle vare længe. Jeg brugte noget tid på at finde ud af tilstanden Deep Sleep, hvor enheden vil bruge det meste af tiden i en hvilende tilstand.

Forbrugsvarer

Wemos D1 Mini

Kapacitiv fugtføler

18650 batteri

Positive og negative batteristik

Skubkontakter

Adgang til en 3D -printer er også temmelig vigtig, selvom du kan finde andre måder at forbinde og huse delene på.

Her er et link til mit Thingiverse -indlæg med alle de modeller, jeg har oprettet.

Trin 1: Hent softwaren

Hent softwaren
Hent softwaren

Jeg udgav min software til GITHUB. Det er bygget ved hjælp af PlatformIO

  1. Følg instruktionerne på PlatformIO -webstedet for at installere VSCode og PlatformIO
  2. Download firmwaren fra min GITHUB -repo. Klik på Klon, eller download og download ZIP
  3. Udpak og åbn mappen i VSCode
  4. Tilslut Wemos D1 til din computer via micro USB
  5. I VSCode skal du klikke på udlændingen for at åbne PlatformIO -panelet
  6. Klik på Byg og upload for at uploade firmwaren til Wemos -kortet

Trin 2: Opret et Blynk -projekt, som din sensor kan tale med

Opret et Blynk -projekt, som din sensor kan tale med
Opret et Blynk -projekt, som din sensor kan tale med
Opret et Blynk -projekt, som din sensor kan tale med
Opret et Blynk -projekt, som din sensor kan tale med
Opret et Blynk -projekt, som din sensor kan tale med
Opret et Blynk -projekt, som din sensor kan tale med
Opret et Blynk -projekt, som din sensor kan tale med
Opret et Blynk -projekt, som din sensor kan tale med

Jeg fokuserede på to typer tjenester MQTT og Blynk, enten er valgfri.

Blynk er en let at bruge og billig IOT -platform. Du kan for det meste oprette apps ved hjælp af de komponentkreditter, du får gratis. Hvis du løber tør for kreditter, kan du købe mere ved hjælp af app -køb.

  1. Installer Blynk -appen på din telefon
  2. Opret en konto
  3. Opret et nyt nyt projekt
  4. Giv det et navn, og vælg Wemos D1 som enheden
  5. Hent Blynk -nøglen fra din e -mail, denne vil blive brugt til at konfigurere enheden senere
  6. Fortsæt og tryk hvor som helst på dit projektdashboard for at tilføje en komponent
  7. Vælg LCD -skærm for nu, men du kan ændre det for et diagram eller andre komponenter senere. Blynk lader dig genbruge komponenter, så du ikke skal bekymre dig om at spilde kreditter
  8. Tryk på LCD -displayet, og indstil stifterne. Firmwaren bruger to virtuelle pins. Det er ligegyldigt, hvilke du bruger, så længe du bruger det samme i din app som din firmware senere

Trin 3: Konfigurer MQTT Service (Home Assistant)

Jeg bruger allerede Home Assistant til min hjemmeautomatisering og planlægger at konfigurere notifikationer for enten et anlæg, der er gået tør eller en sensor, der stoppede med at rapportere (batteridød).

Du kan finde oplysninger om opsætning af HA, hvis du vil, eller du kan bare oprette en Mosquitto Service til MQTT.

I begge tilfælde vil du gerne kende din ip -adresse, bruger -id og adgangskode.

Hvis du bruger Home Assistant, opretter du en sensor på MQTT -platformen, men du skal bruge chipid. Firmwaren vil offentliggøre en meddelelse med emnet [chip -id]/fugtighed med værdien af fugtaflæsning

Her er en prøvesensorkonfiguration til Home Assistant

state_topic: "ESP6e4bac/fugt/"

enhedsklasse: fugtighed

Trin 4: Konfigurer firmwaren

Konfigurer firmwaren
Konfigurer firmwaren
  1. Når tavlen nulstilles Det starter et wifi -adgangspunkt WifiMoisture
  2. Opret forbindelse til den ved hjælp af din telefon eller computer
  3. Åbn en browser, og naviger til 192.168.4.1
  4. Du vil se en webformular
  5. Tilføj dine wifi -legitimationsoplysninger.
  6. Du kan indstille søvnintervallet på få minutter, men jeg råder dig til bare at lade det være som standard (maks. For din enhed)
  7. Tilføj Blynk -nøgle og/eller MQTT -indstillinger
  8. Hit send

Du kan indtaste Blynk -nøgler og eller MQTT -legitimationsoplysninger afhængigt af, hvordan du vil spore fugtigheden. Det burde fungere med enten, men jeg planlægger at bruge begge.

Jeg bruger Home Assistant til min hjemmeautomatisering og opretter en advarsel baseret på MQTT, men jeg bruger også en graf i Blynk til at spore tingene i realtid.

Jeg vil råde dig til at udføre denne konfiguration med Wemos -enheden, der stadig er tilsluttet din pc, og mens du kører den serielle skærm. Hvis du skrev noget forkert eller har andre problemer, skal du bruge seriel output til at diagnosticere.

Trin 5: Udskrivning af dele

Udskrivning af dele
Udskrivning af dele

Gå til mit Thingiverse -indlæg, hent delene og udskriv det nyeste (v2 i skrivende stund).

Intet bør kræve nogen understøtninger, men sørg for, at åbningerne vender opad, så du ikke har store overhængende områder.

Trin 6: Tråd alt op

Tråd alt op
Tråd alt op

Du vil gerne wire alt op, før du sætter det i æsken, men der er et par trykte stykker, du skal samle under tråden. Vi vil tage dette et skridt ad gangen

Trin 7: Start med batteriet

Batterisamlingen er fremstillet af den trykte holder, et positivt og negativt stik, to sorte ledninger og en rød.

Når du har udskrevet batteriholderen, skal du indsætte de positive og negative stik i hver ende med tappen stikkende ud i bunden.

Vend batteriholderen om, fold tapperne ud, og tilsæt en klat lodde til dem

Vrid enderne af de to sorte tråde sammen og tin dem med loddetin

Tin enden af den røde ledning med loddetin

Lod derefter de sorte ledninger til det negative stik (det med fjederen) og den røde ledning til det positive stik.

Fold til sidst tapperne for at sidde fladt mod siden af batteriholderen.

Trin 8: Saml kontakten

Denne firmware er beregnet til at få mest muligt ud af batteriet ved hjælp af chips Deep Sleep -tilstand.

Enheden vågner op og publicerer en læsning og går derefter i dvale igen. For at chippen kan vække sig selv, er der en forbindelse mellem D0 og RST.

Jeg brugte fraværet af denne forbindelse til at fortælle enheden, at du vil (gen) konfigurere den. Første gang du startede enheden gik i konfigurationstilstand, fordi den ikke allerede havde en konfiguration gemt. Nu hvor det gør det, hvis du nogensinde har ønsket at ændre denne konfiguration, skal du dreje kontakten og enten tænde for strømmen eller trykke på nulstillingsnålen.

Jeg fandt også ud af, at jeg nogle gange havde brug for at afbryde D0-RST-forbindelsen for at blinke en ny version af firmwaren. Omskifteren fungerer også til det.

Kontaktledningen er enkel, en ledning på den ene side til RST -stiften og midterledningen til D0 -stiften. Før du lodder dette op, skal du trykke på den trykte switchblok på kontakten.

Trin 9: Lodde resten af forbindelserne op

Nu hvor batterisamlingen og switchblokken er tilsluttet, er det tid til at tilslutte alle de andre forbindelser.

  1. Lod den røde ledning fra batteriet til 3,5v -stiften på Wemos
  2. Lod en af de sorte ledninger fra batteriet til jordstiftet på Wemos
  3. Lod en ledning med begge ender fjernet til A0 -stiften. Vi forbinder dette med den gule ledning på sensoren
  4. Lod en rød ledning med begge ender fjernet til D1 -stiften på Wemos. Dette vil blive HØJT af firmwaren for at drive sensoren

Du kan alternativt skære det kvindelige header af sensoren og lodde det direkte til Wemos. Det gjorde jeg ikke, men der er ikke noget i vejen med det, så længe du ikke har planer om at skille dette ad senere.

Trin 10: Læg alt i æsken

Læg alt i kassen
Læg alt i kassen
Læg alt i kassen
Læg alt i kassen

Jeg forsøgte at få alt til at sidde tæt, men ikke tage for meget kraft, men hvert tryk er lidt anderledes.

  1. Indsæt Wemos. skub usb -enden først ind. Sørg for, at det står fint på linje. Hvis du ikke har det rigtige til hjørne, går bagenden ikke let ind.
  2. Indsæt derefter sensoren. Når ledningerne allerede er tilsluttet, skal du skubbe den ind i en vinkel, og når den er i den rigtige position, skal du trykke den ned. Kassen skal holde fast i ledningsbeslaget.
  3. Derefter sættes batteriholderen på plads. Du skal muligvis bøje æggets vægge lidt. Gør brug af, at den ene side er åben (jeg kan gøre begge sider åbne i den næste revision). Find de to cirkulære puder i bunden af æsken, og tryk batteriholderen på dem.
  4. Sæt endelig kontakten på plads inde fra boksen. Skru de to 1,7 mm x 8 mm skruer udefra, og sørg for at lægge noget tryk på den trykte kontaktblok. Skruerne skal gribe fat i den trykte blok, men husk, at udskrevne dele er bløde, og skruerne fjerner let hullerne.

Når alt er i æsken, skal du tage et par minutter til at organisere ledningerne. Du kan muligvis skubbe dem ved siden af batteriholderen, men afhængigt af din ledning kan det få siderne til at sprede sig.

Trin 11: Start det, og tag dine første aflæsninger

Sørg endelig for at kontakten er vendt for at forbinde D0- og RST -benene og isætte et batteri.

Sæt låget på, og skru de 6 skruer i for at holde det på plads (eller lad det ikke bare holde med friktion).

Enheden skal tage en læsning med det samme, gå i dvale i den konfigurerede tid og derefter tage en anden.

Nu hvor du har det kørende, kan du oprette et diagram i Blynk, oprette en meddelelse i HomeAssistant eller en række andre muligheder for at spore fugtigheden og holde dine planter i live.

Trin 12: Næste Iterationer

I fremtiden vil jeg sandsynligvis opdatere MQTT -softwaren for at sige mere end bare rå læsning. En af blynk -stifterne udgiver en fortolkning, så jeg vil i det mindste tilføje det til MQTT. Jeg skal også inkludere det sidste

Jeg planlægger også at tilføje læseområdet til indstillingssiden eller opbygge en kalibreringstilstand. Ideen ville være, at du bruger konfigurationssiden til at sætte den i kalibreringstilstand. Det tager derefter en række aflæsninger i temmelig hurtig rækkefølge, der holder det højeste som "tørt" og det laveste som "vådt".

Jeg tror også, at jeg kan gøre enheden mindre ved hjælp af et mindre batteri eller stable nogle af delene op. Der er altid arbejde, der skal udføres på modellen.

Endelig er der andre tavler bortset fra Wemos D1 Mini, der har batteriholder og/eller oplader indbygget. Brug af disse kan spare lidt plads og forhindre mig i at skulle åbne kassen senere.

Anbefalede: