Satura rādītājs:

Laika prognozes pulkstenis, izmantojot veco modinātāju un Arduino: 13 soļi (ar attēliem)
Laika prognozes pulkstenis, izmantojot veco modinātāju un Arduino: 13 soļi (ar attēliem)

Video: Laika prognozes pulkstenis, izmantojot veco modinātāju un Arduino: 13 soļi (ar attēliem)

Video: Laika prognozes pulkstenis, izmantojot veco modinātāju un Arduino: 13 soļi (ar attēliem)
Video: Joka pēc alfabēts / Funny Alphabet 2024, Jūlijs
Anonim
Laika prognozes pulkstenis, izmantojot veco modinātāju un Arduino
Laika prognozes pulkstenis, izmantojot veco modinātāju un Arduino
Laika prognozes pulkstenis, izmantojot veco modinātāju un Arduino
Laika prognozes pulkstenis, izmantojot veco modinātāju un Arduino

Man apkārt bija salauzts modinātājs un nāca klajā ar ideju to pārveidot par pulksteņa un laika prognozes staciju.

Šim projektam jums būs nepieciešams:

  • Vecs apļveida modinātājs
  • Arduino Nano
  • BME280 sensora modulis (temperatūra, mitrums, spiediens)
  • LCD displeja modulis no Nokia 5110
  • DS1307 RTC pulkstenis
  • TP4056 litija akumulatora lādētājs
  • Vecais litija jonu akumulators tika izglābts no mobilā tālruņa
  • Mazs pastiprinātāja modulis no 3,7 V līdz 5 V
  • No gaismas atkarīgs rezistors (LDR - gaismas mērītājs)
  • Signāls (lietots izglābts no vecā datora)
  • 3 spiedpogas
  • Ķekars rezistoru (2x10k, 270 omi) un tranzistors (2N2222A vai līdzīgs)
  • Dažas platas saraušanās caurules
  • PCB lūžņi, ko izmantot kā priekšējās plāksnes apdari
  • Micro-USB pagarinājuma kabelis (gan sieviešu, gan vīriešu puses ir Micro-USB)
  • 2x8cm prototipa dēlis un daži vadi

1. darbība: izjauciet visu

Izjaukt visu
Izjaukt visu

Vispirms es izjaucu veco pulksteni. Zvani, motors, salauzts pulksteņa mehānisms…

2. darbība. Digitālo iestatījumu pogas

Pogas digitālajiem iestatījumiem
Pogas digitālajiem iestatījumiem
Pogas digitālajiem iestatījumiem
Pogas digitālajiem iestatījumiem
Pogas digitālajiem iestatījumiem
Pogas digitālajiem iestatījumiem
Pogas digitālajiem iestatījumiem
Pogas digitālajiem iestatījumiem

Tā kā jaunais pulkstenis būs pilnībā digitāls ar minidatoru iekšpusē, es sānos pievienoju 3 vienkāršas jaukas izskata pogas.

Izmantojot alumīnija lūžņu gabalu, es izgriezu pārklājumu, lai izveidotu etiķeti. Etiķešu burti tika izveidoti, izmantojot burtu perforatorus un melnu marķieri.

3. solis: motora kondensators

Motora kondensators
Motora kondensators

Es paturēšu vecos zvaniņus, lai ar motoru darbinātu modinātāju. Vecajam salauztajam pulksteņa mehānismam bija keramikas kondensators ar marķējumu 104. Es to noņēmu no shēmas plates un pielodēju tieši pie motora - tas palīdzēs novērst strāvas padevi, ieslēdzot motoru trauksmes laikā. Svarīgi atzīmēt arī to, ka motoru kontrolēs caur tranzistoru, bet vairāk par to vēlāk.

4. solis: jauna pulksteņa seja

Jauna pulksteņa seja
Jauna pulksteņa seja
Jauna pulksteņa seja
Jauna pulksteņa seja

Tā kā es nolēmu uztaisīt pulkstenim jaunu seju - es no savas atkritumu kaudzes izņēmu shēmas plati un izmantoju celtnieka karstuma pistoli, lai ātri noņemtu visas sastāvdaļas. Caurums vidū ir izveidots jaunā pulksteņa digitālajam ekrānam.

5. darbība: digitālais displejs no vecā mobilā tālruņa

Digitālais displejs no vecā mobilā tālruņa
Digitālais displejs no vecā mobilā tālruņa
Digitālais displejs no vecā mobilā tālruņa
Digitālais displejs no vecā mobilā tālruņa

Šim projektam es nolēmu izmantot LCD ekrānu no vecā Nokia 5110 mobilā tālruņa. Šie ekrāni ir plaši pieejami pārdošanai kā modulis, tie patērē ļoti maz enerģijas, un Arduino ir labas bibliotēkas. Ja jūs pērkat jaunu moduli ar 5110 ekrānu - jūs glābjat planētu, jo visi jaunie moduļi ir izveidoti no izglābtajiem 5110, 3110 un 3210 tālruņiem!

6. darbība: ķēžu savienošana

Ķēžu savienošana
Ķēžu savienošana
Ķēžu savienošana
Ķēžu savienošana
Ķēžu savienošana
Ķēžu savienošana

Jūs, iespējams, jau uzminējāt, ka es plānoju izmantot Arduino dēli, lai kontrolētu šo pulksteni. Projekts ir viegli atkārtojams pat iesācējiem Arduino faniem, jo es neizveidoju savas shēmas plates. Tā ir Arduino Nano plāksne, kurai ir pievienoti moduļi - BME280 temperatūras, spiediena un mitruma sensors, DS1307 RTC pulkstenis, TP4056 litija akumulatora lādētājs, mazs pastiprinātāja modulis no 3,7 V līdz 5 V, no gaismas atkarīgs rezistors (LDR - gaismas mērītājs) un skaņas signāls (ņemts no vecā datora).

Apskatiet arī skices - tās parāda visus savienojumus. Es domāju, ka viss ir ļoti viegli lasāms un saprotams, bet, ja jums ir kādi jautājumi, jautājiet zemāk esošajos komentāros.

Dažas piezīmes par iestatīšanu:

  • Motors ir savienots tieši no akumulatora caur tranzistoru. Arduino kontrolē tranzistoru caur rezistoru un PWM tapu D5.
  • Tapas D7-12 tiek izmantotas LCD savienotājam. Zeme un VCC ir savienoti ar sliedi savienojuma plāksnē.
  • LDR tika uzstādīts uz pulksteņa ekrāna, un rezistors + 3 izejošie vadi tika pielodēti tieši pulksteņa priekšpuses aizmugurē.
  • Pogu savienošanai es izmantoju iekšējo PULLUP funkciju Arduino iekšpusē. Poga Izvēlne ir pievienota pārtraukumam, un tikai vēlāk es sapratu, ka pārtraukumam varat izmantot arī iekšējo PULLUP. Poga Izvēlne jāpārtrauc, lai kods visu laiku nenoskenētu pogu stāvokli.
  • Pulkstenis uzraudzīs un parādīs arī akumulatora stāvokli, tāpēc akumulators ir tieši pievienots kontaktam A0. Akumulatora spriegums nekad nav augstāks par 4,2 V, tāpēc ir droši savienot akumulatoru tieši ar Arduino analogo tapu.
  • Signāls ir tieši savienots ar PWM tapu D6. Lai gan šī nav laba prakse, es izvairījos no tā, jo Arduino Nano varētu apstrādāt augstākas specifikācijas, nekā norādīts, kā arī tāpēc, ka skaņas signāls nedarbosies nepārtraukti. Tas pats iestatījums viegli sadedzinātu tapas uz ESP plāksnēm, tāpēc šādos gadījumos es iesaku izmantot tranzistora vadību.
  • Pulkstenim jau bija slēdzis, tāpēc es nolēmu to izmantot. Aizmugurē tas izskatās dabiski.

7. darbība: savienojuma dēlis ērtiem savienojumiem

Savienojuma dēlis ērtiem savienojumiem
Savienojuma dēlis ērtiem savienojumiem
Savienojuma dēlis ērtiem savienojumiem
Savienojuma dēlis ērtiem savienojumiem

Visiem moduļiem ir nepieciešami pozitīvi un zemes savienojumi, tāpēc es nolēmu izmantot 2x8 cm prototipa plāksni un pielodēt pie tā 5 V un zemes sliedes. Arī tur es izveidoju nelielu I2C sliedi, jo man bija vairāki moduļi, izmantojot I2C saskarni.

Otrā pusē es lodēju standarta tapas, lai vajadzības gadījumā varētu savienot un atvienot moduļus.

Tur tika pielodēti arī daži papildu komponenti, piemēram, tranzistors un rezistors motora vadībai un rezistors izvēlnes pogai, kas izmanto pārtraukumu. Es parādīju shēmas iepriekšējā sadaļā.

btw Vai pirmajā attēlā var redzēt pulksteņa rādītājā jau uzstādīto LDR sensoru?

8. solis: barošanas iestatīšana

Barošanas iestatīšana
Barošanas iestatīšana

Šī pulksteņa barošanai es izmantoju veco litija jonu akumulatoru no sava mobilā tālruņa. Parasti mainīto mobilo tālruņu baterijās joprojām ir laba ietilpība (vismaz puse no tā, kas bija jauns). To priekšrocība ir tā, ka tiem ir iebūvēta izlādes aizsardzības ķēde, un tie ir arī ļoti plāni, tāpēc tos var izmantot mazās telpās.

Lai pievienotu akumulatoru, vienkārši pielodējiet vadus pie akumulatora + un - tapām. Neuztraucieties, jūs nesabojāsit šūnu, jo starp tapām un šūnas ķimikālijām ir kontrolieris un tukša vieta.

Šajā attēlā var redzēt akumulatoru, kā arī TP4056 uzlādes kontrolieri, kā arī 5V pastiprinātāju, kas savienoti kopā un ar akumulatoru. Es izmantoju saraušanās caurules, lai viss būtu izolēts un kompakts.

9. darbība. Mikro USB programmaparatūras uzlādēšanai un atjaunināšanai

Micro USB programmaparatūras uzlādēšanai un atjaunināšanai
Micro USB programmaparatūras uzlādēšanai un atjaunināšanai

Kad biju visu pielodējis, aizmugurējā panelī pielīmēju skaņas signālu un temperatūras/spiediena/mitruma sensoru. Viņi visi lieliski iederējās esošajos slotos no vecajām pulksteņa ciparnīcas vadības ierīcēm.

Tagad bija pienācis laiks uzstādīt Micro USB portu aizmugurē. Kāpēc Micro USB, ja Nano izmanto Mini USB? Vienkārši tāpēc, ka mājsaimniecībā lielākā daļa USB kabeļu ir no mobilajiem tālruņiem, un būtu ērti, ja arī pulkstenis spētu to uzņemt.

Tā kā es vēlējos to izmantot gan pulksteņa, gan meteoroloģiskās stacijas funkciju uzlādēšanai un atjaunināšanai - es atvienoju USB kabeli, izvadīju strāvas vadus caur TP4056 lādētāju un Data+/Data- vadus tieši uz Arduino Nano USB ligzdu. To var redzēt shēmā, ko parādīju iepriekšējās sadaļās.

10. solis: galīgā montāža

Galīgā montāža
Galīgā montāža
Galīgā montāža
Galīgā montāža
Galīgā montāža
Galīgā montāža

Tagad bija pienācis laiks salikt visu atpakaļ sākotnējā pulkstenī. Es izmantoju saraušanās cauruli, lai izolētu komponentus un moduļus. Pat Arduino bija iesaiņots saraušanās caurulē.

Virziet kursoru uz pirmā fotoattēla, lai redzētu, kur ir ievietots katrs komponents.

11. darbība: kods

Kā redzat, pulkstenis ir pilnībā iepakots iekšpusē. Tas ļāva izveidot kaut ko sarežģītāku nekā vecais pulkstenis, kas man bija - ņemot vērā, ka, protams, ir dažas programmēšanas prasmes. Es uzrakstīju sākotnējo kodu, bet palūdzu draugam iejaukties un palīdzēt man.

Līdz šim, izņemot pašu pulksteni, šīs funkcijas jau atbalsta šis projekts:

  • Laika un datuma displejs (kā arī laiks un modinātāja aktivizēšana tajā pašā ekrānā)
  • Ekrāns iedegas tumšos apstākļos vai kad tiek konstatēta kustība (pamatojoties uz gaismas izmaiņām)
  • Laika prognoze (saulains, mākoņains, lietains)
  • Temperatūras, spiediena un mitruma displejs (mitrumam tas norāda, vai tas ir pārāk sauss)
  • Iestatījumu izvēlne: modinātājs, laika maiņa, datuma rādīšanas iespējošana/atspējošana, laika apstākļu maiņas skaņas paziņojumu iespējošana/atspējošana un pārslēgšanās starp imperatora un metriskajām vienībām
  • Modinātāja iestatījumi - ieslēgšana/izslēgšana, laika iestatīšana, paziņojumu melodijas un/vai zvanu iestatīšana

Jaunākais kods:

Nākotnē kods tiks atjaunināts ar jaunām funkcijām, tāpēc noteikti pārbaudiet, vai nav atjaunināti programmaparatūras:-)

Ja esat jauns Arduino pasaulē, es ieteiktu veikt šādas darbības:

  • Instalējiet tāfeles USB draiveri (piemēram, CH340)
  • Instalējiet Arduino IDE
  • Instalējiet šajā projektā izmantotās bibliotēkas
  • Lejupielādējiet no GitHub un augšupielādējiet jaunāko projekta kodu pulkstenī, izmantojot Micro USB kabeli (varat to izmantot no mobilā tālruņa)

Prognozēšanas algoritms ir šāds:

Arduino Nano ik pēc 12 minūtēm iegūst jaunus datus no BME280 sensora. Mērījumu cikls ir 3 stundas. Pēc 3 stundām spiediena uzraudzības diapazons (maksimālā un minimālā vērtība 3 stundu laikā) mainās attiecībā pret vidējām vērtībām pašreizējā diapazonā un pašreizējo spiediena vērtību. Katru stundu tiek saglabāts spiediena maiņas virziens ar pašreizējo spiediena vērtību. Prognozes aprēķināšanai tiek izmantotas kPa vienības.

Nano atmiņas ierobežojumu dēļ prognozēšanas algoritms bija jāvienkāršo. Bet, neraugoties uz vienkāršošanu, tā spēj prognozēt nokrišņus nākamajās 12-24 stundās, lai gan prognozes tagad ir pesimistiskākas - noklusējuma vērtība ir "Mākoņains laiks".

"Saulains laiks" - pašreizējā spiediena vērtība ir par 7 punktiem augstāka par normu, spiediens nekrīt un starpība starp min un max vērtībām pēdējo 3 stundu laikā ir ne vairāk kā 2 punkti.

Iespējamie nokrišņi "Lietaini laika apstākļi" - pašreizējais spiediens ir par 15 punktiem zemāks par normu, un starpība starp min un max vērtībām ir lielāka par 2 punktiem VAI Spiediens krītas un starpība starp pašreizējo vērtību un normu ir 3 - 30 punkti.

Lai uzlabotu prognozēšanas kvalitāti, ieteicams mainīt "augstumu" galvenajā koda failā. Augstumu varat uzzināt, piemēram, šeit:

12. solis: soli pa solim video

Image
Image

Ja bija grūti sekot tam, ko es darīju iepriekš, šeit ir arī video versija ar visām parādītajām darbībām.

13. solis: beigu vārdi

Kopumā no mana viedokļa šī projekta grūtības līmenis nav augsts, un ikviens to varētu paveikt. Ja jums nav veca pulksteņa, vietējā krāmu tirgū varat atrast vienu lētu.

Visi komponenti ir par zemu cenu un ir pieejami vietnē Sparkfun/Aliexpress/eBay/Amazon.

Es ceru, ka šī apmācība jums bija interesanta, un es būtu pateicīgs, ja jūs varētu atbalstīt manu pirmo pamācību pulkstenī.

Pulksteņu konkurss
Pulksteņu konkurss
Pulksteņu konkurss
Pulksteņu konkurss

Otrā vieta pulksteņu konkursā

Ieteicams: