Inhoudsopgave:

Tiny ESP8266 temperatuurlogger (Google Spreadsheets) - Ajarnpa
Tiny ESP8266 temperatuurlogger (Google Spreadsheets) - Ajarnpa

Video: Tiny ESP8266 temperatuurlogger (Google Spreadsheets) - Ajarnpa

Video: Tiny ESP8266 temperatuurlogger (Google Spreadsheets) - Ajarnpa
Video: Logger For 5 Bucks In 25 Minutes - My ESP8266 Test 2024, November
Anonim
Tiny ESP8266 temperatuurlogger (Google Spreadsheets)
Tiny ESP8266 temperatuurlogger (Google Spreadsheets)
Tiny ESP8266 temperatuurlogger (Google Spreadsheets)
Tiny ESP8266 temperatuurlogger (Google Spreadsheets)
Tiny ESP8266 temperatuurlogger (Google Spreadsheets)
Tiny ESP8266 temperatuurlogger (Google Spreadsheets)

Dit is een handleiding voor het maken van uw eigen, absoluut kleine WiFi-compatibele temperatuurlogger. Het is gebaseerd op de ESP-01-module en de DS18B20 digitale temperatuursensor, verpakt in een strakke 3D-geprinte behuizing met een 200mAh lithiumbatterij en micro-USB-oplader.

Het is echt een geweldig project als het correct wordt uitgevoerd, maar een waarschuwing: het is erg frustrerend om alles handmatig te solderen en het zo klein te houden zonder iets te breken en de software werkend te krijgen is behoorlijk langdradig. Dus lees de hele instructable voordat je het probeert.

Als iemand er een bouwt, zou ik het graag zien en waarvoor je het gebruikt, tot nu toe heb ik het gebruikt om de bedrijfscyclus van mijn AC op een typische zomerdag te bepalen (50 min aan, 20 min uit) en zal ik gebruiken het om de temperatuur van worsten in de winter te controleren …

Stap 1: Materialen/apparatuur

Materialen/apparatuur
Materialen/apparatuur

Hoewel er weinig componenten zijn en het schema vrij eenvoudig, kost het veel moeite om ze in een mooie en functionele vormfactor te krijgen …

De componenten die je nodig hebt zijn:

  • Een ESP01
  • Eén 200mAh LiPo-batterij
  • Eén TP4056 LiPo-oplaadmodule
  • Eén HT7333A 3.3V spanningsregelaar
  • Eén DS18B20-temperatuursensor
  • Twee SMD 4.7kΩ-weerstanden
  • Twee kleine drukknoppen

Gereedschappen/apparatuur die je nodig hebt zijn:

  • Dunne geïsoleerde draad (ik gebruikte draadwikkeldraad)
  • Soldeerbout/station, soldeer, vloeimiddel en een desoldeerpomp
  • Kniptangen/draadstrippers, pincetten
  • Een computer
  • Een ESP01-programmeerbord
  • Een 3D-printer
  • Superlijm/Cyanoacrylaat lijm

Stap 2: Solderen: de Tiny Deep_Sleep Wire

Solderen: de Tiny Deep_Sleep Wire
Solderen: de Tiny Deep_Sleep Wire
Solderen: de Tiny Deep_Sleep Wire
Solderen: de Tiny Deep_Sleep Wire
Solderen: de Tiny Deep_Sleep Wire
Solderen: de Tiny Deep_Sleep Wire

Een van de belangrijkste kenmerken die een logger op batterijen moet hebben, is een modus voor laag energieverbruik, zodat deze zo lang mogelijk meegaat. De ESP8266 heeft de ESP. DeepSleep(); optie, maar het vereist GPIO_16 om te worden aangesloten op de EXT_RSTB(Reset) pin, die helaas voor ons niet is uitgebroken op een ESP01-module. Dit betekent dat we een dunne draad met de hand moeten solderen aan de juiste pin op de SMD ESP8266-chip. Dit is behoorlijk uitdagend, maar kan worden gedaan met een gewone soldeerbout en veel geduld en vaste handen. GPIO_16 is de laatste pin aan de zijkant van de chip in de buurt van de ontkoppelingscondensator, omdat deze zich aan de rand bevindt, waardoor het een stuk gemakkelijker is om erop te solderen. Veel geluk!

Stap 3: Prototype

Prototype
Prototype
Prototype
Prototype

Voordat ik het comprimeerde tot de laatste elektronica om in het geval te gaan, heb ik een prototype gemaakt met behulp van perf-board. Dit was een optionele stap om te controleren of alle componenten zouden samenwerken, omdat het veel moeilijker zal zijn om problemen op te lossen als het eenmaal is geminiaturiseerd en in een strakke behuizing zit. Kan ook makkelijk op een breadboard.

Stap 4: Programmeren

Programmeren
Programmeren
Programmeren
Programmeren
Programmeren
Programmeren

Om de ESP8266 te programmeren kun je een goedkope programmeermodule uit China gebruiken met een kleine aanpassing door een drukknop toe te voegen om GPIO_2 met aarde te verbinden. Het flashen van een ESP8266 valt buiten het bestek van deze instructable, maar het kan eenvoudig worden gedaan met de Arduino-schets op de GitHub-pagina. Zorg ervoor dat u de ArduinoJSON en de OneWire-bibliotheek en natuurlijk de ESP-kernen installeert.

BELANGRIJK! Vergeet niet de SPIFFS-gegevens naar het bord te uploaden. De logger zal niet opstarten zonder het configuratiebestand dat is opgeslagen in het SPIFFS-geheugen.

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

Stap 5: Interwebz: Google Formulieren

Interwebz: Google Formulieren
Interwebz: Google Formulieren
Interwebz: Google Formulieren
Interwebz: Google Formulieren
Interwebz: Google Formulieren
Interwebz: Google Formulieren
Interwebz: Google Formulieren
Interwebz: Google Formulieren

De backend van onze logger wordt gedaan met Google Forms and Spreadsheets en IFTTT ertussen. Gewoon de foto's vanaf hier volgen is het gemakkelijkst om te doen.

  1. Maak een nieuw formulier.
  2. Formulierantwoordverzoek vastleggen met de ontwikkelaarstools van Google Chrome.
  3. Opmerking verzoek-URL en verzoek gegevens
  4. Formulier koppelen aan automatisch updaten van Google Spreadsheet
  5. Grafieken aan werkbladen toevoegen

Stap 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

Volg op dit punt gewoon de stapsgewijze foto's.

  1. Een nieuwe IFTTT-applet maken
  2. Selecteer de trigger als een Webhook-verzoekgebeurtenis, noteer de gebeurtenisnaam.
  3. Selecteer de actie als een Webhook-verzoek.
  4. Plak de verzoek-URL uit de Developer Tools uit de Google Formulieren.
  5. Stel de aanvraagmethode in op POST
  6. Stel het inhoudstype in op 'application/x-www-urlencoded'
  7. Plak de onbewerkte verzoekgegevens uit de Developer Tools uit de Google Formulieren.
  8. Zoek de velden voor temperatuur en spanning en vervang door 'Ingrediënten'; Waarde1 & Waarde2.
  9. Afwerking applet.

Stap 7: Interwebz: uw logger instellen

Interwebz: uw logger instellen
Interwebz: uw logger instellen
Interwebz: uw logger instellen
Interwebz: uw logger instellen
Interwebz: uw logger instellen
Interwebz: uw logger instellen

Volg de foto's…

  1. Bezoek hier de IFTTT Maker Webhooks-documentatie:
  2. Kopieer uw trigger-URL na het invoeren van de gebeurtenisnaam.
  3. Ga naar de setup-modus op uw TinyTempLogger door de setup-knop ingedrukt te houden en de reset-knop te pulseren, maak verbinding met ESP_Logger en open 192.168.4.1
  4. Voer uw URL in, opgesplitst in Host en URI
  5. Voer 'waarde1' en 'waarde2' in als de namen voor de parameters.
  6. Klik op opslaan en vervolgens resetten.

Uw logger zou nu gegevens naar Google Spreadsheets moeten kunnen posten via de IFTTT-relay.

Stap 8: Solderen: batterij, oplader en regelaar

Solderen: batterij, oplader en regelaar
Solderen: batterij, oplader en regelaar
Solderen: batterij, oplader en regelaar
Solderen: batterij, oplader en regelaar

Op dit punt zou je een volledig functioneel prototype op breadboard/perf-board moeten hebben. Tijdens de volgende paar stappen zullen we alle componenten in dead-bug-stijl solderen, in de kleinste vormfactor die we kunnen.

Begin met het aan elkaar solderen van de batterij, regelaar en oplader volgens het schema.

Het schema is ook te vinden op de GitHub-pagina.

Stap 9: Solderen: Pin Headers verwijderen

Solderen: Pinheaders verwijderen
Solderen: Pinheaders verwijderen
Solderen: Pinheaders verwijderen
Solderen: Pinheaders verwijderen
Solderen: Pinheaders verwijderen
Solderen: Pinheaders verwijderen

BELANGRIJK! Voordat u de pin-headers verwijdert, moet u ervoor zorgen dat u het programma en de SPIFFS hebt geflitst en een prototype van het circuit hebt gemaakt en hebt bevestigd dat het werkt! Knipperend geheugen na deze stap zal lastig zijn !!

GA ALLEEN VERDER als het circuit volledig functioneel is als prototype.

Het verwijderen van de pin-headers is een beetje uitdagend, mijn strategie is om gewoon flux toe te passen en te proberen alle pinnen tegelijk te verwarmen met soldeer terwijl je een pincet gebruikt om de pinnen eruit te trekken. Dan gebruik ik de soldeerpomp van onderaf en het strijkijzer van boven om het soldeer dat in de gaten zit te smelten en eruit te zuigen. Pas op dat u de delicate diepe slaapdraad niet breekt.

Stap 10: SMD-weerstandssolderen, de stroom van de oplaadmodule wijzigen

SMD-weerstandsolderen, de stroom van de oplaadmodule wijzigen
SMD-weerstandsolderen, de stroom van de oplaadmodule wijzigen
SMD-weerstandsolderen, de stroom van de oplaadmodule wijzigen
SMD-weerstandsolderen, de stroom van de oplaadmodule wijzigen

Voordat we de LiPo-oplaadmodule met onze kleine 200mAh-batterij gebruiken, moeten we deze aanpassen. Standaard laden deze modules de cel op 500mA wat te hoog is voor kleine batterijen. Door de SMD-stroominstelweerstand te wijzigen van 1,2kΩ(122) naar 4,7kΩ(472) kunnen we de stroom verlagen tot ~150mA. Zo gaat onze cel langer mee.

Stap 11: Solderen: knoppen

Solderen: Knoppen
Solderen: Knoppen
Solderen: Knoppen
Solderen: Knoppen
Solderen: Knoppen
Solderen: Knoppen
Solderen: Knoppen
Solderen: Knoppen

Het eerste wat ik aan de ESP-01 heb gesoldeerd, waren de drukknoppen, ik gebruikte gewoon dunne draadwikkeldraad en drukknoppen voor opbouwmontage, volg gewoon het schema en houd alles zo klein mogelijk.

Stap 12: Solderen: DS18B20

Solderen: DS18B20
Solderen: DS18B20
Solderen: DS18B20
Solderen: DS18B20
Solderen: DS18B20
Solderen: DS18B20

Vervolgens heb ik de DS18B20-temperatuursensor gesoldeerd, eerst heb ik de kabels bijgesneden en een weerstand van 4,7 kΩ op het oppervlak tussen de VCC- en DATA-pinnen gesoldeerd, daarna volgde ik gewoon het schema om hem op de ESP aan te sluiten.

Stap 13: Solderen: bevestig het allemaal aan elkaar

Solderen: alles aan elkaar bevestigen
Solderen: alles aan elkaar bevestigen
Solderen: alles aan elkaar bevestigen
Solderen: alles aan elkaar bevestigen
Solderen: alles aan elkaar bevestigen
Solderen: alles aan elkaar bevestigen

Het laatste wat je nog moest solderen, was om de stroomdraden die van de batterij naar de ESP kwamen met elkaar te verbinden, en toen was het solderen eindelijk klaar!

Stap 14: 3D-afdruktijd en eindmontage

3D-afdruktijd en eindmontage
3D-afdruktijd en eindmontage
3D-afdruktijd en eindmontage
3D-afdruktijd en eindmontage
3D-afdruktijd en eindmontage
3D-afdruktijd en eindmontage

Om de montage af te ronden nadat je er zeker van was dat alles nog werkte nadat het was gesoldeerd, was het tijd om de behuizing ervoor te 3D-printen. Ik begon met het meten van de afmetingen en het maken van het model in Fusion 360, tenzij je de jouwe zo klein of even groot als de mijne hebt kunnen maken, moet je misschien het Fusion 360-model aanpassen. Anders zijn de STL's voor de boven- en onderkant van de behuizing en de knoppenblokken klaar om af te drukken. Ik heb Cura gebruikt voor het snijden met een resolutie van 0,1 mm, 20% infill, ABS-filament en "Print Thin Walls" ingeschakeld. Zorg ervoor dat u dat inschakelt, anders wordt de dunne verbinding die de twee helften van de behuizing op één lijn brengt niet afgedrukt.

STL's en fusion 360-bestanden staan op GitHub.

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

Na het afdrukken was het gewoon een geval (bedoelde woordspeling) om alles erin te proppen en het dicht te maken met superlijm. Het is een zeer strakke pasvorm en het zal veel geduld vergen. Ik raad iets als Scotch Weld aan omdat het iets dikker is, superlijm de neiging heeft erg dun te zijn en alles bedekt en overal blijft plakken (inclusief vingers).

Stap 15: Voltooien

Compleet
Compleet
Compleet
Compleet
Compleet
Compleet

Daar heb je het, een absoluut kleine temperatuurlogger met wifi. Veel succes als je probeert je eigen dingen in elkaar te zetten en veel geduld om deze dingen klein maar nog steeds functioneel te maken.

Aanbevolen: