Innehållsförteckning:

ESP32 Solar Weather Station: 4 steg (med bilder)
ESP32 Solar Weather Station: 4 steg (med bilder)

Video: ESP32 Solar Weather Station: 4 steg (med bilder)

Video: ESP32 Solar Weather Station: 4 steg (med bilder)
Video: LoRa Transmitter Power Measurement with AD8318 and Arduino DIY Tool (EP10) 2024, Juli
Anonim
ESP32 solväderstation
ESP32 solväderstation

För mitt första IoT -projekt ville jag bygga en väderstation och skicka data till data.sparkfun.com.

Liten korrigering, när jag bestämde mig för att öppna mitt konto i Sparkfun accepterade de inte fler anslutningar, så jag väljer en annan IoT -datainsamlare thingspeak.com.

Fortlöpande…

Systemet kommer att placeras på min balkong och hämta temperatur, luftfuktighet och lufttryck. Mikrokontrollern som valts för detta projekt är FireBeetle ESP32 IOT mikrokontroller som levereras av DFRobot.

Kontrollera DFRobot -wikisidan för mer information om denna mikrokontroller och hur du laddar upp koden med Arduino IDE.

Alla fysiska parametrar ges av BME280 -sensorn. Kolla även wikisidan för mer information.

För att göra systemet helt "trådlöst" tillhandahålls den nödvändiga effekten av två 6V solpaneler som kan leverera 2W ström. Cellerna kommer att anslutas parallellt. Energiprodukterna lagras sedan i ett 3,7V litiumjonbatteri av polymer med +/- 1000mAh kapacitet.

Solar Lipo Charger -modulen från DFRobot kommer att ansvara för energihanteringen.

Steg 1: Komponenter

Komponenter
Komponenter
Komponenter
Komponenter
Komponenter
Komponenter

För detta projekt behöver du:

  • 1x - DFRobot FireBeetle ESP32 IOT
  • 1x - DFRobot Gravity - I2C BME280
  • 1x - DFRobot 3.7V Polymer litiumjon
  • 1x - DFRobot Solar Lipo -laddare
  • 2x - 6V 1W solpanel
  • 1x - Perfboard
  • 1x - Kvinnlig rubrik
  • 1x - Låda/låda
  • Trådar
  • Skruvar

Du behöver också följande verktyg:

  • Lim pistol
  • Lödkolv
  • Borrmaskin

Steg 2: Montering

hopsättning
hopsättning
hopsättning
hopsättning
hopsättning
hopsättning

FireBeetle ESP32 IOT -mikrokontrollern drivs av 3,7V -batteriet som är anslutet till Solar Lipo -laddaren i batteriingångsporten. Solcellerna är anslutna i PWR In -portarna. Vcc- och GND -portarna på FireBeetle ESP32 IOT Microcontroller är anslutna till Vout -portarna på Solar Lipo Charger.

BME280 -strömförsörjningen levereras av 3,3V -porten i FireBeetle ESP32 IOT mikrokontroller. Kommunikationen sker genom I2C -linjerna (SDA / SCL).

För att fixa alla komponenter i lådan använde jag en perfboard, några rubriker och trådar.

För solcellerna använde jag bara varmt lim för att fixa dem i lådans övre lock. Eftersom lådan redan hade hål behöver du inte göra mer:)

Obs: Dioder bör placeras i solpaneler för att undvika att skada dem och ladda ur batteriet.

Du kan läsa mer om det i:

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

Steg 3: Kod

Koda
Koda
Koda
Koda
Koda
Koda

För att du ska kunna använda min kod krävs vissa ändringar.

Den första definierar ditt wifi -nätverksnamn och lösenord. Den andra är att få en API -nyckel från Thingspeak.com. Jag kommer att förklara det nedan. Du kan också definiera ett nytt sovintervall om du så önskar.

Thingspeak.com Om du inte har ett Thingspeak -konto måste du gå till www.thingspeak.com och registrera dig själv.

När din e -post har verifierats kan du gå till Kanaler och skapa en ny kanal. Lägg till de variabler som du vill ladda upp. För detta projekt, temperatur, luftfuktighet och tryck.

Rulla ner och tryck på "Spara kanal". Efter detta kan du klicka i API -nycklar. Och hämta API -skrivnyckeln. Lägg sedan till den i din kodfil.

Om allt är korrekt kan din väderstation börja skicka data till din kanal.

Steg 4: Slutsats

Slutsats
Slutsats

Som alltid i mina projekt ska jag ge utrymme för framtida förbättringar, detta är inte annorlunda.

Under utvecklingen börjar jag bli orolig för systemets energiförbrukning. Jag lägger redan ESP32 och BME280 i viloläge och trots det har jag en förbrukning på cirka 2mA !!! Eftersom BME280 är den största ansvariga för detta, kommer jag förmodligen att behöva en omkopplare för att helt stänga av modulen under viloläge.

En annan intressant funktion skulle vara att hämta batterispänningen. Efter lite undersökning och testning av några interna funktioner i ESP32 fungerade ingenting. Så förmodligen kommer jag att lägga till en spänningsdelare och ansluta den till en analog ingång och läsa direkt spänningen. Meddela mig om du hittar en bättre lösning.

Skriv till mig om du hittade något misstag eller om du har några förslag/förbättringar eller frågor. "Bli inte uttråkad, gör något"

Rekommenderad: