Solárna meteorologická stanica: 5 krokov
Solárna meteorologická stanica: 5 krokov
Anonim
Slnečná meteorologická stanica
Slnečná meteorologická stanica

Už ste niekedy chceli zo svojho dvora informácie o počasí v reálnom čase? Teraz si môžete kúpiť meteorologickú stanicu v obchode, ale tie zvyčajne vyžadujú batérie alebo ich musíte pripojiť k zásuvke. Táto meteorologická stanica nemusí byť pripojená k sieti, pretože má solárne panely, ktoré sa kvôli vyššej účinnosti otáčajú smerom k slnku. So svojimi RF modulmi dokáže prenášať údaje zo stanice vonku na Raspberry Pi vo vašom dome. Raspberry Pi je hostiteľom webovej stránky, na ktorej si môžete prezerať údaje.

Krok 1: Zhromaždite materiály

Materiály

  • Raspberry Pi 3 model B + + adaptér + karta Micro SD 16 GB
  • Arduino Uno
  • Základný odpočinok Arduino Pro Mini + FTDI
  • 4 6V 1W solárne panely
  • 4 batérie 18650
  • Booster 5v
  • 4 nabíjačky batérií TP 4056
  • Senzor teploty a vlhkosti Adafruit DHT22
  • Senzor barometrického tlaku BMP180
  • 4 LDR
  • Prijímač a vysielač RF 433
  • 2 krokové motory Nema 17
  • 2 ovládače krokových motorov DRV8825
  • LCD 128*64
  • Veľa drôtov

Nástroje a materiály

  • Lepidlo
  • Drevené dosky
  • Videl
  • Skrutky + skrutkovač
  • Lepiaca páska
  • 2 hliníkové pásy

Krok 2: Mechanická konštrukcia

Mechanický dizajn
Mechanický dizajn
Mechanický dizajn
Mechanický dizajn
Mechanický dizajn
Mechanický dizajn
Mechanický dizajn
Mechanický dizajn

Telo meteorologickej stanice je vyrobené z preglejky. Drevo nemusíte používať, môžete si ho vyrobiť z akéhokoľvek materiálu, ktorý preferujete. Pokiaľ ide o držiaky motora, vyvŕtal som jeden celok do dreveného bloku a potom zaskrutkoval plochú skrutku na hriadeľ motora, ktorá funguje lepšie, ako som očakával. Vďaka tomu nie je potrebné 3D tlač držiaka motora a jeho výroba je jednoduchá. Potom som ohnul 2 hliníkové pásy, aby držali motory veľmi pevne. Potom som vystrihol dosku a vyvŕtal do nej otvory pre solárne panely. Potom naň prilepte solárne panely a spájkujte drôty na solárne panely. Potom budete tiež musieť urobiť kríž z čierneho materiálu. Ak nemáte nič čierne, môžete použiť čiernu pásku. Tento kríž udrží LDR v každom rohu, aby Arduino mohol porovnať merania z LDR a vypočítať, akým smerom sa musí otočiť. Do každého rohu teda vyvŕtajte malé celky, aby sa vám tam zmestilo LDR. Teraz stačí urobiť základnú dosku a niečo, do čoho vložíte elektroniku. Pre základovú dosku do nej budete musieť vyvŕtať jeden celok, aby ste viedli všetky káble. Pokiaľ ide o merania, neposkytnem vám žiadne, pretože je skutočne na vás, ako to navrhnete. Ak máte ďalšie motory alebo iné solárne panely, budete musieť zistiť merania sami.

Krok 3: Elektrický dizajn

Moc

Celý systém beží na batérie (okrem Raspberry Pi). Do série som umiestnil 3 batérie. 1 batéria je v priemere 3,7 V, takže tri v sérii vám poskytnú približne 11 V. Táto batéria 3 s sa používa pre motory a RF vysielač. Druhá zostávajúca batéria sa používa na napájanie Arduino Pro Mini a senzorov. Na nabíjanie batérií som použil 4 moduly TP4056. Každá batéria má 1 modul TP4056, každý modul je pripojený k solárnemu panelu. Pretože modul má B (vstup) a B (výstup), môžem ich nabíjať samostatne a vybíjať ich v sérii. Uistite sa, že kupujete správne moduly TP4056, pretože nie všetky moduly majú B (vstup) a B (výstup).

Conrtol

Arduino Pro Mini ovláda senzory a motory. Surový a uzemnený kolík Arduina je pripojený k 5V zosilňovaču. 5V zosilňovač je pripojený k jednej batérii. Arduino Pro Mini má veľmi nízku spotrebu energie.

Komponenty

DHT22: Pripojil som tento senzor k VCC a uzemneniu, potom som pripojil dátový pin k digitálnemu pinu 10.

BMP180: Pripojil som tento senzor k VCC a Ground, pripojil som SCL k SCL na Arduino a SDA k SDA na Arduino. Buďte opatrní, pretože piny SCL a SDA na Arduino Pro Mini sú v strede dosky, takže ak máte spájkované kolíky k doske a vložíte ich do dosky, nebude fungovať, pretože budete mať interferenciu s inými kolíkmi. Tie 2 piny som spájkoval na vrch dosky a priamo k nej som zapojil drôt.

RF vysielač: Pripojil som to k batérii 3 s pre lepší signál a dlhší dosah. Skúsil som to pripojiť k 5V z Arduina, ale potom je RF signál super slabý. Potom som pripojil dátový pin k digitálnemu pinu 12.

LDR: Pripojil som 4 LDR k analógovým pinom A0, A1, A2, A3. Dal som dohromady LDR s 1K odporom.

Motory: Motory sú poháňané 2 riadiacimi modulmi DRV8825. Sú veľmi praktické, pretože zaberajú iba 2 vstupné vedenia (smer a krok) a môžu produkovať až 2 A na fázu pre motory. Mám ich pripojené k digitálnym pinom 2, 3 a 8, 9.

LCD: Pripojil som LCD k Raspberry Pi, aby som ukázal jeho IP adresu. Na reguláciu podsvietenia som použil trimer.

RF prijímač: Prijímač som pripojil k Arduino Uno na 5V a uzemnenie. Prijímač by nemal mať viac ako 5V. Potom som pripojil dátový pin na digitálny pin 11. Ak nájdete knižnicu pre tieto RF moduly, ktorá funguje na Raspberry Pi, potom Arduino Uno nemusíte používať.

Raspberry Pi: Raspberry Pi je pripojený k Arduino Uno pomocou USB kábla. Arduino prenáša RF signály do Raspberry Pi prostredníctvom sériového pripojenia.

Krok 4: Začnime s kódovaním

Na kódovanie Arduino Pro Mini budete potrebovať programátor FTDI. Pretože Pro Mini nemá port USB (kvôli šetreniu energie), budete potrebovať túto oddeľovaciu dosku. Kód som naprogramoval v Arduino IDE, myslím si, že je to najľahší spôsob, ako to urobiť. Nahrajte kód zo súboru a malo by byť dobré ísť.

Aby som Arduino Uno kódoval, pripojil som ho k počítaču pomocou kábla USB. Po nahraní kódu som ho pripojil k Raspberry Pi. Tiež som bol schopný zmeniť kód na Raspberry Pi, pretože som nainštaloval Arduino IDE a mohol som ho odtiaľ programovať. Kód je veľmi jednoduchý, preberá vstup z prijímača a odošle ho cez sériový port na Raspberry Pi.

Na kódovanie Raspberry Pi som nainštaloval Raspbian. Potom som sa k nemu pomocou Putty pripojil prostredníctvom pripojenia SSH. Potom nakonfigurujem Raspberry, aby som sa k nemu mohol pripojiť prostredníctvom VNC a mať tak GUI. Nainštaloval som si webový server Apache a začal som kódovať backend a frontend tohto projektu. Kód nájdete na github:

Krok 5: Databáza

Na ukladanie údajov používam databázu SQL. Databázu som vytvoril v MySQL Workbench. Databáza obsahuje údaje zo senzorov a údaje zo senzorov. Mám 3 tabuľky, jednu na ukladanie hodnôt senzorov s časovými pečiatkami, druhú na ukladanie informácií o snímačoch a poslednú na ukladanie informácií o používateľoch. Nepoužívam tabuľku Používatelia, pretože som nekódoval túto časť projektu, pretože nebola v mojom MVP. Stiahnite si súbor SQL a spustite ho. Databáza by mala byť v poriadku.

Odporúča: