Satura rādītājs:

Saules laika stacija: 5 soļi
Saules laika stacija: 5 soļi

Video: Saules laika stacija: 5 soļi

Video: Saules laika stacija: 5 soļi
Video: Почему у Вас аллергия.5 домашних рецептов от аллергии. Рецепт 1 2024, Novembris
Anonim
Saules laika stacija
Saules laika stacija

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

Mehāniskais dizains
Mehāniskais dizains
Mehāniskais dizains
Mehāniskais dizains
Mehāniskais dizains
Mehāniskais dizains
Mehāniskais dizains
Mehāniskais dizains

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: