Satura rādītājs:
- 1. darbība: apkopojiet materiālus
- 2. solis: mehāniskā projektēšana
- 3. solis: elektriskā projektēšana
- 4. darbība: sāksim kodēšanu
- 5. darbība. Datu bāze
Video: Saules laika stacija: 5 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:55
Vai esat kādreiz vēlējies reālā laika informāciju par laika apstākļiem no sava pagalma? Tagad jūs varētu iegādāties meteoroloģisko staciju veikalā, taču tām parasti ir vajadzīgas baterijas vai tās jāpievieno kontaktligzdai. Šī laika stacija nav jāpievieno tīklam, jo tai ir saules paneļi, kas rotē pret sauli, lai panāktu lielāku efektivitāti. Ar saviem RF moduļiem tas var pārsūtīt datus no stacijas ārpusē uz Raspberry Pi jūsu mājās. Raspberry Pi ir vietne, kurā varat apskatīt datus.
1. darbība: apkopojiet materiālus
Materiāli
- Raspberry Pi 3 modelis B + + adapteris + Micro SD karte 16 GB
- Arduino Uno
- Arduino Pro Mini + FTDI pamata izlaušanās
- 4 6V 1W saules paneļi
- 4 18650 baterijas
- Pastiprinātājs 5v
- 4 TP 4056 akumulatoru lādētāji
- Adafruit DHT22 temperatūras un mitruma sensors
- BMP180 Barometriskā spiediena sensors
- 4 LDR
- RF 433 uztvērējs un raidītājs
- 2 Nema 17 soļu motori
- 2 DRV8825 pakāpju motoru draiveri
- LCD 128*64
- Daudz vadu
Instrumenti un materiāli
- Līme
- Koka dēļi
- Ieraudzīja
- Skrūves + skrūvgriezis
- Pīles lente
- 2 alumīnija sloksnes
2. solis: mehāniskā projektēšana
Meteoroloģiskās stacijas korpuss ir izgatavots no saplākšņa. Jums nav jāizmanto koks, jūs varat to izgatavot no jebkura materiāla, kas jums patīk. Motora stiprinājumiem es izurbju veselu koka bluķi un pēc tam pieskrūvēju plakanu skrūvi pie motora vārpstas, kas darbojas labāk, nekā es gaidīju. Tādā veidā jums nav nepieciešams 3D drukāt motora stiprinājumu, un to ir viegli izgatavot. Tad es saliecu 2 alumīnija sloksnes, lai motori būtu ļoti cieši. Pēc tam es izgriezu dēli un izurbju tajā caurumus saules paneļiem. Pēc tam pielīmējiet saules paneļus un lodējiet vadus uz saules paneļiem. Tad jums arī būs jāizveido krusts no melna materiāla. Ja jums nav nekā melna, varat izmantot melnu lenti. Šis krusts turēs LDR katrā stūrī, lai Arduino varētu salīdzināt LDR mērījumus un aprēķināt, kādā virzienā tai jāgriežas. Tāpēc katrā stūrī urbiet sīkas veselas daļas, lai tur varētu ievietot LDR. Viss, kas tagad jādara, ir izgatavot pamatplāksni un kaut ko ievietot elektronikā. Lai izveidotu pamatplāksni, jums tajā vajadzēs urbt veselu, lai novirzītu visus vadus. Par mērījumiem es jums nedošu nevienu, jo tas patiešām ir atkarīgs no tā, kā jūs to vēlaties izveidot. Ja jums ir citi motori vai citi saules paneļi, jums pašiem būs jāizdomā mērījumi.
3. solis: elektriskā projektēšana
Jauda
Visa sistēma darbojas ar baterijām (izņemot Raspberry Pi). Sērijā ievietoju 3 baterijas. 1 Akumulators ir vidēji 3,7 V, tātad 3 sērijas nodrošina aptuveni 11 V. Šo 3s akumulatoru komplektu izmanto motoriem un RF raidītājam. Otrs atlikušais akumulators tiek izmantots Arduino Pro Mini un sensoru barošanai. Lai uzlādētu baterijas, es izmantoju 4 TP4056 moduļus. Katram akumulatoram ir 1 TP4056 modulis, katrs modulis ir savienots ar saules paneli. Tā kā modulim ir B (ieeja) un B (izeja), es varu tos uzlādēt atsevišķi un izlādēt virknē. Pārliecinieties, ka esat iegādājies pareizos TP4056 moduļus, jo ne visos moduļos ir B (ieeja) un B (izeja).
Conrtol
Arduino Pro Mini kontrolē sensorus un motorus. Arduino neapstrādāta un sasmalcināta tapa ir savienota ar 5V pastiprinātāju. 5V pastiprinātājs ir pievienots vienam akumulatoram. Arduino Pro Mini ir ļoti zems enerģijas patēriņš.
Sastāvdaļas
DHT22: es pievienoju šo sensoru VCC un zemei, pēc tam es pieslēdzu datu tapu 10. ciparu tapai.
BMP180: Es pievienoju šo sensoru VCC un Ground, es savienoju SCL ar SCL Arduino un SDA ar SDA Arduino. Esiet piesardzīgs, jo Arduino Pro Mini SCL un SDA tapas atrodas tāfeles vidū, tādēļ, ja pie tāfeles esat pielodējis tapas un ievietojis to rīvdēlī, tas nedarbosies, jo jums būs traucējumi no citām tapām. Es lodēju šīs 2 tapas tāfeles augšpusē un pievienoju vadu tieši tam.
RF raidītājs: es to pievienoju 3s akumulatoram, lai iegūtu labāku signālu un lielāku darbības diapazonu. Es mēģināju to savienot ar 5V no Arduino, bet tad RF signāls ir ļoti vājš. Pēc tam es savienoju datu tapu ar 12. ciparu tapu.
LDR: es savienoju 4 LDR ar analogām tapām A0, A1, A2, A3. Esmu salicis LDR kopā ar 1K rezistoru.
Motori: motorus vada 2 DRV8825 vadības moduļi. Tie ir ļoti ērti, jo tie aizņem tikai 2 ieejas līnijas (virziens un solis) un var radīt līdz 2A motoriem vienā fāzē. Man tie ir pievienoti digitālajām tapām 2, 3 un 8, 9.
LCD: es savienoju LCD ar Raspberry Pi, lai parādītu tā IP adresi. Fona apgaismojuma regulēšanai es izmantoju trimmeri.
RF uztvērējs: Es savienoju uztvērēju ar Arduino Uno 5V un Ground. Uztvērējs nedrīkst patērēt vairāk par 5 V. Pēc tam es savienoju datu tapu ar ciparu tapu 11. Ja šiem RF moduļiem varat atrast bibliotēku, kas darbojas Raspberry Pi, tad jums nav jāizmanto Arduino Uno.
Raspberry Pi: Raspberry Pi ir savienots ar Arduino Uno caur USB kabeli. Arduino nodod RF signālus Raspberry Pi, izmantojot seriālo savienojumu.
4. darbība: sāksim kodēšanu
Lai kodētu Arduino Pro Mini, jums būs nepieciešams FTDI programmētājs. Tā kā Pro Mini nav USB porta (lai taupītu enerģiju), jums būs nepieciešams šis sadalīšanas panelis. Es ieprogrammēju kodu Arduino IDE, es domāju, ka tas ir vienkāršākais veids, kā to izdarīt. Augšupielādējiet kodu no faila, un tam vajadzētu būt labam.
Lai kodētu Arduino Uno, es to savienoju ar datoru, izmantojot USB kabeli. Pēc koda augšupielādes es to savienoju ar Raspberry Pi. Es arī varēju nomainīt kodu Raspberry Pi, jo es instalēju Arduino IDE, un tāpēc es varētu to ieprogrammēt no turienes. Kods ir ļoti vienkāršs, tas uztver uztvērēja ievadīto informāciju un nosūta to caur seriālo portu uz Raspberry Pi.
Lai kodētu Raspberry Pi, es instalēju Raspbian. Pēc tam es izmantoju Putty, lai izveidotu savienojumu ar to, izmantojot SSH savienojumu. Pēc tam es konfigurēju Raspberry, lai es varētu izveidot savienojumu ar to, izmantojot VNC, un tādējādi būtu GUI. Es instalēju Apache tīmekļa serveri un sāku kodēt šī projekta aizmuguri un priekšpusi. Kodu varat atrast vietnē github:
5. darbība. Datu bāze
Lai uzglabātu datus, es izmantoju SQL datu bāzi. Es izveidoju datu bāzi MySQL Workbench. Datu bāzē ir sensoru rādījumi un sensoru dati. Man ir 3 tabulas, viena sensoru vērtību saglabāšanai ar laika zīmogiem, otra - informācijas glabāšanai par sensoriem un pēdējā - informācijas glabāšanai par lietotājiem. Es neizmantoju tabulu Lietotāji, jo neesmu kodējis šo projekta daļu, jo tā nebija manā MVP. Lejupielādējiet SQL failu un izpildiet to, un datu bāzei vajadzētu būt pieejamai.
Ieteicams:
Modulāra saules laika stacija: 5 soļi (ar attēliem)
Modulāra saules meteoroloģiskā stacija: Viens no projektiem, ko es gribēju uzbūvēt kādu laiku, bija modulāra meteoroloģiskā stacija. Modulārs tādā nozīmē, ka mēs varam pievienot vajadzīgos sensorus, vienkārši mainot programmatūru. Modular Weather Station ir sadalīta trīs daļās. Pamatplatē ir W
Meteoroloģiskā stacija NaTaLia: ar saules enerģiju darbināma meteoroloģiskā stacija, kas veikta pareizi: 8 soļi (ar attēliem)
Meteoroloģiskā stacija NaTaLia: Arduino ar saules enerģiju darbināma meteoroloģiskā stacija Pareizi darīts: Pēc viena gada veiksmīgas darbības divās dažādās vietās es dalos savos ar saules enerģiju darbināmos laika staciju projektu plānos un paskaidroju, kā tā kļuva par sistēmu, kas patiešām var izdzīvot ilgu laiku no saules enerģijas. Ja sekojat
DIY laika stacija un WiFi sensora stacija: 7 soļi (ar attēliem)
DIY laika stacija un WiFi sensora stacija: Šajā projektā es jums parādīšu, kā izveidot laika staciju kopā ar WiFi sensoru staciju. Sensora stacija mēra vietējās temperatūras un mitruma datus un nosūta tos, izmantojot WiFi, uz meteoroloģisko staciju. Pēc tam meteoroloģiskā stacija parāda t
ESP32 saules laika stacija: 4 soļi (ar attēliem)
ESP32 Saules laika stacija: Pirmajam IoT projektam es vēlējos izveidot meteoroloģisko staciju un nosūtīt datus uz data.sparkfun.com. Neliela korekcija, kad es nolēmu atvērt savu kontu Sparkfun, viņi nepieņēma vairāk savienojumu, tāpēc es izvēlēties citu IoT datu vācēju
Laika stacija ar Arduino, BME280 un displeju, lai redzētu tendenci pēdējo 1-2 dienu laikā: 3 soļi (ar attēliem)
Laika stacijas ar Arduino, BME280 un displeju, lai redzētu tendenci pēdējo 1-2 dienu laikā: Sveiki! Šeit ir norādījumi par laika apstākļiem, kas jau ir ieviesti. Tie parāda pašreizējo gaisa spiedienu, temperatūru un mitrumu. Līdz šim viņiem trūka kursa prezentācijas pēdējo 1-2 dienu laikā. Šim procesam būtu