Indholdsfortegnelse:

ESP32 Solar Weather Station: 4 trin (med billeder)
ESP32 Solar Weather Station: 4 trin (med billeder)

Video: ESP32 Solar Weather Station: 4 trin (med billeder)

Video: ESP32 Solar Weather Station: 4 trin (med billeder)
Video: Solar Weather Station [WiFi, MQTT, Smart Home, ESP8266] 2024, November
Anonim
ESP32 Solar Weather Station
ESP32 Solar Weather Station

Til mit første IoT -projekt ville jeg bygge en vejrstation og sende dataene til data.sparkfun.com.

Lille korrektion, da jeg besluttede at åbne min konto i Sparkfun, accepterede de ikke flere forbindelser, så jeg vælger en anden IoT -dataindsamler thingspeak.com.

Fortsætter…

Systemet placeres på min altan og henter temperatur, fugtighed og lufttryk. Mikrocontrolleren, der er valgt til dette projekt, er FireBeetle ESP32 IOT mikrokontroller leveret af DFRobot.

Se venligst DFRobot wiki -side for mere information om denne mikrokontroller og hvordan du uploader koden ved hjælp af Arduino IDE.

Alle de fysiske parametre er givet af BME280 -sensoren. Tjek også wiki -siden for mere information.

For at gøre systemet helt "trådløst" leveres den nødvendige strøm fra to 6V solpaneler, der kan levere 2W strøm. Cellerne vil blive forbundet parallelt. Energiprodukterne opbevares derefter i et 3,7V Polymer Lithium Ion-batteri med +/- 1000mAh kapacitet.

Solar Lipo Charger -modulet fra DFRobot vil stå for energistyringen.

Trin 1: Komponenter

Komponenter
Komponenter
Komponenter
Komponenter
Komponenter
Komponenter

Til dette projekt skal du bruge:

  • 1x - DFRobot FireBeetle ESP32 IOT
  • 1x - DFRobot Gravity - I2C BME280
  • 1x - DFRobot 3.7V Polymer Lithium Ion
  • 1x - DFRobot Solar Lipo oplader
  • 2x - 6V 1W solpanel
  • 1x - Perfboard
  • 1x - Kvindehoved
  • 1x - Kabinet/æske
  • Ledninger
  • Skruer

Du skal også bruge følgende værktøjer:

  • Varm limpistol
  • Loddekolbe
  • Boremaskine

Trin 2: Montering

montage
montage
montage
montage
montage
montage

FireBeetle ESP32 IOT mikrokontroller drives af et 3,7 V batteri, der er forbundet til Solar Lipo Charger i batteriindgangsporten. Solcellerne er forbundet i PWR In -havne. Vcc- og GND -portene på FireBeetle ESP32 IOT Microcontroller er forbundet til Vout -porte på Solar Lipo Charger.

BME280 -strømforsyningen leveres af 3,3V -porten i FireBeetle ESP32 IOT -mikrokontrolleren. Kommunikationen sker gennem I2C -linjer (SDA / SCL).

For at reparere alle komponenter i kassen brugte jeg et perfboard, nogle overskrifter og ledninger.

Til solcellerne brugte jeg bare varm lim til at fikse dem i boksens øverste låg. Da kassen allerede havde huller, behøver du ikke gøre mere:)

Bemærk: Dioder bør placeres i solpanelerne for at undgå at beskadige dem og aflade batteriet.

Du kan læse mere om det i:

www.instructables.com/community/Use-of-diodes-when-connecting-solar-panels-in-para/

Trin 3: Kode

Kode
Kode
Kode
Kode
Kode
Kode

For at du kan bruge min kode, er nogle ændringer nødvendige.

Den første er at definere dit wifi -netværksnavn og adgangskode. Den anden er at få en API -nøgle fra Thingspeak.com. Jeg vil forklare det nedenfor. Du kan også definere et nyt soveinterval, hvis du ønsker det.

Thingspeak.com Hvis du ikke har en Thingspeak -konto, skal du gå til www.thingspeak.com og registrere dig selv.

Når din e -mail er bekræftet, kan du gå til Kanaler og oprette en ny kanal. Tilføj de variabler, du vil uploade. Til dette projekt, temperatur, luftfugtighed og tryk.

Rul ned, og tryk på "Gem kanal". Herefter kan du klikke i API -nøgler. Og hent API -skrive -nøglen. Tilføj den derefter i din kodefil.

Hvis alt er korrekt, kan din vejrstation begynde at sende data til din kanal.

Trin 4: Konklusion

Konklusion
Konklusion

Som altid i mine projekter vil jeg give plads til fremtidige forbedringer, dette er ikke anderledes.

Under udviklingen begynder jeg at blive bekymret over systemets energiforbrug. Jeg lægger allerede ESP32 og BME280 i søvn, og alligevel har jeg et forbrug på omkring 2mA !!! Da BME280 er den store ansvarlige for dette, har jeg sandsynligvis brug for en switch for at slukke modulet fuldstændigt under dvaletilstand.

En anden interessant funktion ville være at hente batterispændingen. Efter nogle undersøgelser og test af nogle interne funktioner i ESP32 virkede intet. Så sandsynligvis vil jeg tilføje en spændingsdeler og slutte den til en analog indgang og læse spændingen direkte. Lad mig vide, hvis du finder en bedre løsning.

Skriv venligst til mig, hvis du fandt en fejl, eller hvis du har forslag/forbedringer eller spørgsmål. "Bliv ikke kedelig, gør noget"

Anbefalede: