Innholdsfortegnelse:

Tiny ESP8266 Temperature Logger (Google Sheets): 15 trinn
Tiny ESP8266 Temperature Logger (Google Sheets): 15 trinn

Video: Tiny ESP8266 Temperature Logger (Google Sheets): 15 trinn

Video: Tiny ESP8266 Temperature Logger (Google Sheets): 15 trinn
Video: Using Digispark Attiny85 Mini Arduino boards: Lesson 108 2024, Juli
Anonim
Liten ESP8266 temperaturlogger (Google Sheets)
Liten ESP8266 temperaturlogger (Google Sheets)
Liten ESP8266 temperaturlogger (Google Sheets)
Liten ESP8266 temperaturlogger (Google Sheets)
Liten ESP8266 temperaturlogger (Google Sheets)
Liten ESP8266 temperaturlogger (Google Sheets)

Dette er en guide for hvordan du lager din helt egen, helt lille WiFi -aktiverte temperaturlogger. Den er basert på ESP-01-modulen og DS18B20 digital temperatursensor, pakket i et tett 3D-trykt etui med et 200mAh litiumbatteri og mikro-USB-lader.

Det er virkelig et fantastisk prosjekt hvis det gjøres riktig, men advarsel det er veldig frustrerende å lodde alt manuelt og holde det så lite uten å ødelegge noe og få programvaren til å fungere er ganske langvarig. Så vennligst les hele instruksen før du prøver.

Hvis noen bygger en, vil jeg gjerne se den og hva du bruker den til, så langt har jeg brukt den til å bestemme driftssyklusen til min AC på en typisk sommerdag (50 minutter på, 20 minutter av) og vil bruke det for å overvåke temperaturen på pølser om vinteren …

Trinn 1: Materialer/utstyr

Materialer/utstyr
Materialer/utstyr

Selv om komponentene er få og skjematisk ganske enkel, krever det mye innsats for å få dem til en fin og funksjonell formfaktor …

Komponentene du trenger er:

  • Én ESP01
  • Ett 200mAh LiPo -batteri
  • En TP4056 LiPo -lademodul
  • En HT7333A 3.3V spenningsregulator
  • En DS18B20 temperatursensor
  • To SMD 4.7kΩ motstander
  • To små trykknapper

Verktøy/utstyr du trenger er:

  • Tynn isolert ledning (jeg brukte wire-wrapping wire)
  • Loddejern/stasjon, lodde, Flux og en avlodingspumpe
  • Snips/Wire Strippers, pinsett
  • En datamaskin
  • Et ESP01 -programmeringsstyre
  • En 3D -skriver
  • Superlim/cyanoakrylatlim

Trinn 2: Lodding: Tiny Deep_Sleep Wire

Lodding: Tiny Deep_Sleep Wire
Lodding: Tiny Deep_Sleep Wire
Lodding: Tiny Deep_Sleep Wire
Lodding: Tiny Deep_Sleep Wire
Lodding: Tiny Deep_Sleep Wire
Lodding: Tiny Deep_Sleep Wire

En av nøkkelfunksjonene en batteridrevet logger må ha, er en lav strømmodus slik at den kan vare så lenge som mulig. ESP8266 har ESP. DeepSleep (); alternativet, men det krever at GPIO_16 er koblet til EXT_RSTB (Reset) pin, som dessverre for oss ikke er brutt ut på en ESP01 -modul. Dette betyr at vi må lodde en tynn ledning til riktig pinne på SMD ESP8266 -brikken. Dette er ganske utfordrende, men kan gjøres ved å bruke et vanlig loddejern og mye tålmodighet og faste hender. GPIO_16 er den siste pinnen på siden av brikken nær frakoblingskondensatoren siden den er på kanten, noe som gjør det mye lettere å lodde på. Lykke til!

Trinn 3: Prototype

Prototype
Prototype
Prototype
Prototype

Før jeg komprimerte den til den siste elektronikken for å gå i saken, laget jeg en prototype ved hjelp av perf-board. Dette var et valgfritt trinn for å sjekke at alle komponentene ville fungere sammen, da det vil være mye vanskeligere å feilsøke når det er miniatyrisert og inne i et tett etui. Kan også enkelt gjøres på et brødbrett.

Trinn 4: Programmering

Programmering
Programmering
Programmering
Programmering
Programmering
Programmering

For å programmere ESP8266 kan du bruke en billig programmeringsmodul fra Kina med en liten modifikasjon og legge til en trykknapp for å koble GPIO_2 til bakken. Blinkende en ESP8266 er utenfor omfanget av denne instruerbare, men det kan enkelt gjøres med Arduino -skissen som finnes på GitHub -siden. Sørg for å installere ArduinoJSON og OneWire -biblioteket og selvfølgelig ESP -kjernene.

VIKTIG! Ikke glem å laste opp SPIFFS -dataene til brettet. Loggeren starter ikke uten konfigurasjonsfilen som er lagret i SPIFFS -minnet.

github.com/Luigi-Pizzolito/ESP8266-Temperatu…

Trinn 5: Interwebz: Google Forms

Interwebz: Google Forms
Interwebz: Google Forms
Interwebz: Google Forms
Interwebz: Google Forms
Interwebz: Google Forms
Interwebz: Google Forms
Interwebz: Google Forms
Interwebz: Google Forms

Backend av loggeren vår vil bli gjort med Google Forms and Sheets og IFTTT i mellom. Bare å følge bildene herfra er det enkleste å gjøre.

  1. Lag et nytt skjema.
  2. Ta en forespørsel om svarskjema med utviklerverktøyene for Google Chrome.
  3. Legg merke til forespørsel URL, og be om data
  4. Koble skjema til automatisk oppdatering av Google Sheet
  5. Legg til grafer i ark

Trinn 6: Interwebz: IFTTT Webhooks

Interwebz: IFTTT Webhooks
Interwebz: IFTTT Webhooks
Interwebz: IFTTT Webhooks
Interwebz: IFTTT Webhooks
Interwebz: IFTTT Webhooks
Interwebz: IFTTT Webhooks
Interwebz: IFTTT Webhooks
Interwebz: IFTTT Webhooks

Følg virkelig trinn-for-trinn-bildene på dette tidspunktet.

  1. Lag en ny IFTTT -applet
  2. Velg utløseren som en Webhook -forespørselshendelse, merk hendelsesnavnet.
  3. Velg handlingen som en Webhook -forespørsel.
  4. Lim inn forespørselsadressen fra utviklerverktøyene fra Google Forms.
  5. Sett forespørselsmetoden til POST
  6. Sett innholdstypen til 'application/x-www-urlencoded'
  7. Lim inn rå forespørselsdata fra utviklerverktøyene fra Google Skjemaer.
  8. Finn feltene for temperatur og spenning og erstatt med 'Ingredienser'; Verdi1 og verdi2.
  9. Fullfør appleten.

Trinn 7: Interwebz: Sett opp loggeren din

Interwebz: Sett opp loggeren din
Interwebz: Sett opp loggeren din
Interwebz: Sett opp loggeren din
Interwebz: Sett opp loggeren din
Interwebz: Sett opp loggeren din
Interwebz: Sett opp loggeren din

Følg bildene…

  1. Besøk IFTTT Maker Webhooks -dokumentasjonen her:
  2. Kopier utløsernettadressen din etter at du har angitt hendelsesnavnet.
  3. Gå inn i oppsettsmodus på TinyTempLogger ved å holde oppsettknappen og pulsere tilbakestillingsknappen, koble til ESP_Logger og åpne 192.168.4.1
  4. Skriv inn nettadressen din, del inn i vert og URI
  5. Skriv inn 'verdi1' og 'verdi2' som navnene på parameterne.
  6. Klikk på lagre og tilbakestill.

Loggeren din skal nå kunne legge ut data til Google Regneark via IFTTT -reléet.

Trinn 8: Lodding: Batteri, lader og regulator

Lodding: Batteri, lader og regulator
Lodding: Batteri, lader og regulator
Lodding: Batteri, lader og regulator
Lodding: Batteri, lader og regulator

På dette tidspunktet bør du ha en fullt funksjonell prototype på brødbrett/perf-brett. I løpet av de neste trinnene vil vi lodde opp alle komponentene som er død-bug-stil, til den minste formfaktoren vi kan.

Start med å lodde batteri, regulator og lader til hverandre, ifølge skjemaet.

Skjematikken finner du også på GitHub -siden.

Trinn 9: Lodding: Fjern stifthodene

Lodding: Fjern stifthodene
Lodding: Fjern stifthodene
Lodding: Fjern stifthodene
Lodding: Fjern stifthodene
Lodding: Fjern stifthodene
Lodding: Fjern stifthodene

VIKTIG! Før du fjerner pinhodene, må du kontrollere at du har blinket programmet og SPIFFS og har prototypet kretsen og bekreftet at det fungerer! Blinkende minne etter dette trinnet vil være en smerte !!

GJØR KUN hvis kretsen er fullt funksjonell som en prototype.

Å fjerne pinnehodene er litt utfordrende, min strategi er å ganske enkelt bruke flux og prøve å varme alle pinnene samtidig med loddetinn mens du bruker pinsett for å trekke ut pinnene. Deretter bruker jeg loddepumpen nedenfra og jernet fra toppen for å smelte loddet som sitter fast i hullene og suge det ut. Vær forsiktig så du ikke bryter den delikate dype søvnledningen.

Trinn 10: SMD -motstandslodding, endring av strømmen til ladermodulen

SMD -motstandslodding, endring av strømmen til ladermodulen
SMD -motstandslodding, endring av strømmen til ladermodulen
SMD -motstandslodding, endring av strømmen til ladermodulen
SMD -motstandslodding, endring av strømmen til ladermodulen

Før vi bruker LiPo -lademodulen med vårt lille 200mAh -batteri, må vi endre den. Som standard lader disse modulene cellen på 500mA, som er for høy for små batterier. Ved å endre SMD gjeldende innstilt motstand fra 1,2kΩ (122) til 4,7kΩ (472) kan vi redusere strømmen til ~ 150mA. På denne måten vil cellen vår vare lenger.

Trinn 11: Lodding: Knapper

Lodding: Knapper
Lodding: Knapper
Lodding: Knapper
Lodding: Knapper
Lodding: Knapper
Lodding: Knapper
Lodding: Knapper
Lodding: Knapper

Det første jeg loddet til ESP-01 var trykknappene, jeg brukte bare tynn trådtråd og overflatemonterte trykknapper, bare følg skjemaet og behold alt så lite som mulig.

Trinn 12: Lodding: DS18B20

Lodding: DS18B20
Lodding: DS18B20
Lodding: DS18B20
Lodding: DS18B20
Lodding: DS18B20
Lodding: DS18B20

Deretter loddet jeg opp DS18B20 temperatursensoren, først trimmet jeg ledningene og loddet en overflatemontert 4,7 kΩ motstand mellom VCC- og DATA -pinnene, så fulgte jeg bare skjemaet for å koble den til ESP.

Trinn 13: Lodding: Fest alt sammen

Lodding: Fest alt sammen
Lodding: Fest alt sammen
Lodding: Fest alt sammen
Lodding: Fest alt sammen
Lodding: Fest alt sammen
Lodding: Fest alt sammen

Det siste som var igjen for å gjøre lodding var å koble til strømledningene som kom fra batteriet til ESP, så var lodding endelig ferdig!

Trinn 14: 3D -utskriftstid og sluttmontering

3D -utskriftstid og sluttmontering
3D -utskriftstid og sluttmontering
3D -utskriftstid og sluttmontering
3D -utskriftstid og sluttmontering
3D -utskriftstid og sluttmontering
3D -utskriftstid og sluttmontering

For å fullføre monteringen etter å ha kontrollert at alt fortsatt fungerte etter at det var loddet, var det på tide å 3D -skrive ut saken for den. Jeg begynte med å måle ut dimensjonene og lage modellen i Fusion 360, med mindre du klarte å gjøre din så liten eller i samme størrelse som min, må du kanskje tilpasse Fusion 360 -modellen. Ellers er STL -er for toppen og bunnen av saken og knappelagene klare til å skrives ut. Jeg brukte Cura for kutting med 0,1 mm oppløsning, 20% fylling, ABS -filament og "Print Thin Walls" aktivert. Sørg for å aktivere det, ellers vil ikke den tynne skjøten som justerer de to halvdelene av saken bli skrevet ut.

STLer og fusion 360 -filer er på GitHub.

github.com/Luigi-Pizzolito/ESP8266-Temperatu…

Etter utskrift var det bare et tilfelle (ordspill ment) å stappe alt inn i det og lukke det opp med superlim. Det er en veldig tett passform, og det vil ta mye tålmodighet. Jeg anbefaler noe som Scotch Weld fordi det er litt tykkere, superlim pleier å være veldig tynt og dekke alt og feste seg overalt (inkludert fingre).

Trinn 15: Fullfør

Fullstendig
Fullstendig
Fullstendig
Fullstendig
Fullstendig
Fullstendig

Der har du det, en helt liten WiFi -aktivert temperaturlogger. Lykke til hvis du prøver å sette sammen din egen og mye tålmodighet med å gjøre disse tingene små, men fremdeles funksjonelle.

Anbefalt: