Tartalomjegyzék:

Solar Weather Station: 5 lépés
Solar Weather Station: 5 lépés

Videó: Solar Weather Station: 5 lépés

Videó: Solar Weather Station: 5 lépés
Videó: Lipps Inc. - Funkytown (1980) 2024, November
Anonim
Solar Weather Station
Solar Weather Station

Szeretett volna valós idejű időjárási információkat kapni a kertjéből? Most vásárolhat időjárásjelző állomást a boltban, de ezek általában elemeket igényelnek, vagy csatlakoztatni kell egy konnektorhoz. Ezt az időjárásjelző állomást nem kell csatlakoztatni a hálózathoz, mert napelemei a nap felé forognak a nagyobb hatékonyság érdekében. RF moduljaival adatokat tud továbbítani a külső állomásról az otthoni Raspberry Pi -re. A Raspberry Pi egy weboldalt üzemeltet, ahol megtekintheti az adatokat.

Lépés: Gyűjtse össze az anyagokat

Anyagok

  • Raspberry Pi 3 modell B + + adapter + Micro SD kártya 16 GB
  • Arduino Uno
  • Arduino Pro Mini + FTDI alapvető kitörés
  • 4 db 6V 1W napelem
  • 4 db 18650 elem
  • Erősítő 5v
  • 4 db TP 4056 akkumulátor töltő
  • Adafruit DHT22 hőmérséklet- és páratartalom -érzékelő
  • BMP180 Barometrikus nyomásérzékelő
  • 4 LDR
  • RF 433 vevő és adó
  • 2 Nema 17 léptetőmotorok
  • 2 DRV8825 léptetőmotor -meghajtó
  • LCD 128*64
  • Sok vezeték

Eszközök és anyagok

  • Ragasztó
  • Fa deszkák
  • Fűrész
  • Csavarok + csavarhúzó
  • Ragasztó szalag
  • 2 alumínium csík

2. lépés: Mechanikai tervezés

Mechanikai tervezés
Mechanikai tervezés
Mechanikai tervezés
Mechanikai tervezés
Mechanikai tervezés
Mechanikai tervezés
Mechanikai tervezés
Mechanikai tervezés

Az időjárás állomás teste rétegelt lemezből készült. Nem kell fát használni, bármilyen anyagból elkészítheti. A motortartókhoz egy egészet fúrtam egy fadarabba, majd egy lapos csavart csavarok a motor tengelyéhez, ami jobban működik, mint vártam. Így nem kell 3D -s nyomtatást készítenie a motorra, és könnyen elkészíthető. Ezután 2 alumínium csíkot hajlítottam, hogy nagyon szorosan tartsák a motorokat. Ezután kivágtam egy deszkát, és lyukakat fúrtam a napelemekhez. Ezután ragassza rá a napelemeket, és forrasztja a huzalokat a napelemekre. Ezután keresztet kell készítenie fekete anyagból. Ha nincs semmi fekete, használhat fekete szalagot. Ez a kereszt minden sarokban LDR -t fog tartani, így az Arduino összehasonlíthatja az LDR méréseit, és kiszámíthatja, hogy milyen irányba kell fordulnia. Tehát fúrjon apró egészeket minden sarokba, hogy LDR -t illesszen oda. Már nincs más hátra, mint elkészíteni egy alaplemezt és valamit, amibe bele lehet helyezni az elektronikát. Az alaplemezhez egy egészet kell fúrnia, hogy az összes vezetéket átvezethesse. A mérésekhez nem adok meg semmit, mert valóban rajtad múlik, hogyan tervezed ezt. Ha más motorral vagy más napelemmel rendelkezik, akkor a méréseket egyedül kell kitalálnia.

3. lépés: Elektromos tervezés

Erő

A teljes rendszer elemekkel működik (kivéve a Raspberry Pi -t). 3 elemet tettem sorba. 1 Az akkumulátor átlagosan 3,7 V -os, tehát 3 soros 11 V -ot ad. Ezt a 3s akkumulátorcsomagot a motorokhoz és az RF adóhoz használják. A fennmaradó másik akkumulátor az Arduino Pro Mini és az érzékelők táplálására szolgál. Az akkumulátorok töltéséhez 4 TP4056 modult használtam. Minden akkumulátor 1 TP4056 modullal rendelkezik, mindegyik modul napelemhez van csatlakoztatva. Mivel a modulban van B (bemenet) és B (kimenet), külön -külön tölthetem és sorozatosan kisüthetem. Győződjön meg róla, hogy a megfelelő TP4056 modulokat vásárolja, mert nem minden modul rendelkezik B (be) és B (kimenettel).

Conrtol

Az Arduino Pro Mini vezérli az érzékelőket és a motorokat. Az Arduino nyers és őrölt csapja az 5 V -os erősítőhöz van csatlakoztatva. Az 5V -os erősítő az egyetlen akkumulátorhoz van csatlakoztatva. Az Arduino Pro Mini energiafogyasztása nagyon alacsony.

Alkatrészek

DHT22: Csatlakoztattam ezt az érzékelőt a VCC -hez és a földhöz, majd az adatcsapot a 10 -es digitális tűhöz.

BMP180: Ezt az érzékelőt a VCC -hez és a földhöz csatlakoztattam, az SCL -t az SCL -hez az Arduino -n, az SDA -t az Arduino SDA -jához. Legyen óvatos, mert az Arduino Pro Mini SCL és SDA csapjai a tábla közepén vannak, tehát ha forrasztott csapokat rögzített a táblához és kenyérsütő deszkába tette, az nem fog működni, mert interferenciát okozhat más csapoknál. Ezt a 2 csapot forrasztottam a tábla tetején, és közvetlenül csatlakoztattam egy vezetéket.

RF adó: Ezt a 3s akkumulátorhoz kötöttem a jobb jel és a nagyobb hatótávolság érdekében. Próbáltam csatlakoztatni az 5V -hoz az Arduino -ból, de akkor az RF jel szuper gyenge. Ezután csatlakoztattam az adatcsapot a 12 -es digitális tűhöz.

LDR: A 4 LDR -t az A0, A1, A2, A3 analóg érintkezőkhöz kötöttem. Összeállítottam az LDR -ket 1K ellenállással.

Motorok: A motorokat 2 DRV8825 vezérlőmodul hajtja. Ezek nagyon praktikusak, mert csak 2 bemeneti vezetéket (irány és lépés) vesznek fel, és fázisonként akár 2A -t is termelhetnek a motoroknak. A 2 -es, 3 -as és 8 -as, 9 -es digitális tűkhöz csatlakoztatom őket.

LCD: Csatlakoztattam az LCD-t a Raspberry Pi-hez, hogy megmutassam az IP-címét. Vágógépet használtam a háttérvilágítás szabályozására.

RF vevő: Csatlakoztattam a vevőt az Arduino Uno -hoz 5V -on és földön. A vevőkészülék feszültsége nem haladhatja meg az 5V -ot. Ezután az adatcsatlakozót a 11 -es digitális tűhöz kötöttem. Ha talál ezekhez az RF modulokhoz egy könyvtárat, amely működik a Raspberry Pi -n, akkor nem kell használnia az Arduino Uno -t.

Raspberry Pi: A Raspberry Pi USB -kábellel csatlakozik az Arduino Uno -hoz. Az Arduino soros kapcsolaton keresztül továbbítja az RF jeleket a Raspberry Pi -nek.

4. lépés: Kezdjük el a kódolást

Az Arduino Pro Mini kódolásához szüksége lesz az FTDI programozóra. Mivel a Pro Mini nem rendelkezik USB -porttal (az energiatakarékosság érdekében), szüksége lesz erre a megszakító kártyára. Az Arduino IDE -ben programoztam a kódot, azt hiszem, ez a legegyszerűbb módja. Töltse fel a kódot a fájlból, és jó lesz.

Az Arduino Uno kódolásához USB -kábellel csatlakoztattam a számítógéphez. Miután feltöltöttem a kódot, csatlakoztattam a Raspberry Pi -hez. Meg tudtam változtatni a Raspberry Pi kódját is, mert telepítettem az Arduino IDE -t, és onnan tudtam programozni. A kód nagyon egyszerű, átveszi a vevő bemenetét, és elküldi a soros porton keresztül a Raspberry Pi -nek.

A Raspberry Pi kódolásához telepítettem a Raspbian programot. Ezután a Putty segítségével SSH kapcsolaton keresztül csatlakoztam hozzá. Ezután konfigurálom a Raspberry -t, hogy csatlakozhassak hozzá VNC -n keresztül, és így legyen GUI -m. Telepítettem egy Apache webszervert, és elkezdtem kódolni a projekt hátterét és kezelőfelületét. A kódot megtalálod a githubon:

5. lépés: Adatbázis

Az adatok tárolására SQL adatbázist használok. Az adatbázist a MySQL Workbench -ben készítettem. Az adatbázis tartalmazza az érzékelő leolvasásait és az érzékelő adatait. Három táblám van, az egyik az érzékelőértékek időbélyeggel történő tárolására, a másik az érzékelők adatainak tárolására, az utolsó pedig a felhasználókra vonatkozó információk tárolására. Nem használom a Felhasználók táblát, mert nem kódoltam a projektnek ezt a részét, mivel nem volt benne az MVP -ben. Töltse le az SQL fájlt, és futtassa, és az adatbázisnak jónak kell lennie.

Ajánlott: