Talaan ng mga Nilalaman:

Personal na Meteorologist: 5 Mga Hakbang
Personal na Meteorologist: 5 Mga Hakbang

Video: Personal na Meteorologist: 5 Mga Hakbang

Video: Personal na Meteorologist: 5 Mga Hakbang
Video: Top 5 Secrets in China (Table Tennis) 2024, Hulyo
Anonim
Personal na Meteorologist
Personal na Meteorologist

Naisip mo ba kung o kailan nagsasabi ng totoo ang iyong meteorologist? Nais mo ba ng isang mahinahon, murang, at mabilis na paraan upang maging iyong sariling meteorologist … at marahil isang maliit na proyekto? Huwag nang tumingin sa malayo! Susubaybayan ng simplistic na aparato ang mga kondisyon ng panahon mula sa anumang lokasyon na nais mo at bibigyan ka ng kakayahang subaybayan ang lagay ng panahon sa isang pindot ng isang pindutan.

Bibigyan ka ng proyektong ito ng ilang pagsasanay kasama ang Flask, Raspberry Pis, mga sensor ng GPIO, at ang HTML! Hindi lamang ito nakakatuwang bumuo ngunit mayroon itong maraming gamit. Ang iyong meteorologist ay maaaring wala sa trabaho …

Mga gamit

  • Raspberry Pi 3
  • Micro SD card
  • 1 Bulk Wire
  • 4 Lalaki hanggang Lalaki na Mga Wires
  • 1 Sensor ng DHT11
  • 1 Baterya

Kung nagpaplano kang maging iyong sariling maaasahang meteorologist para sa maraming lokasyon, paramihin ang bawat isa sa mga supply sa kung gaano karaming mga aparato ang kakailanganin mo. Gayunpaman, magkakaiba ang code upang suportahan ang maraming mga aparato. Kung nasa proseso ka ng pagbuo / pagsubok ng aparatong ito, hindi kinakailangan na magkaroon ng mga sumusunod … subalit, tiyak na magiging kapaki-pakinabang ito.

  • Isang monitor ng computer
  • Isang USB keyboard
  • Micro USB singil na kit

Hakbang 1: Mga kable

Kable
Kable
Kable
Kable

Gamit ang Raspberry Pi, kailangan nating isama ang pangunahing sensor sa pinagmulan ng kuryente ng Raspberry Pi upang magawa nito ang mga pagsukat na kailangan namin. Ang pangunahing sensor na ginamit sa proyektong ito, na nakalarawan sa itaas, ay nagtatala ng temperatura at halumigmig ng nakapaligid na pisikal na kapaligiran. Maaari kang gumamit ng isang breadboard o ilang iba pang aparato sa pag-mounting upang ilagay ang sensor na ito at patakbuhin ang aming mga wire o direktang konektado ito sa pamamagitan ng mga babaeng babaeng wires nang direkta sa mga pin sa aparato ng Raspberry Pi.

Kasunod sa eskematiko ng mga kable na ipinakita sa itaas upang maayos na ikonekta ang sensor sa Raspberry Pi. Tandaan na kinakailangan ng mapagkukunan ng kuryente, isang pack ng baterya o malapit sa isang outlet ng pader.

Hakbang 2: Mag-set up

Binabati kita, ang iyong hardware ay natipon!

Magsisimula na kaming direktang gumana kasama ang Raspberry Pi at ang software ng proyekto. Ang lahat ng mga sumusunod ay maaaring gawin sa Raspberry Pi na may isang keyboard at monitor o sa pamamagitan ng SSH. Ang mga sumusunod na aklatan ay kinakailangan upang matiyak na ang lahat ng software ay maaaring patakbuhin sa iyong Raspberry Pi. Gamit ang utos na "pip install" upang payagan ang iyong software na magamit sa ibang pagkakataon ang mga sumusunod na aklatan:

  • mga hiling
  • RPi. GPIO
  • prasong
  • flask_pang-abala
  • flask_wtf
  • wtforms

Tandaan ang panahon ay maaaring magbago ng ilang beses habang naka-install ang mga aklatan na ito … maging matiyaga, napakalapit mo sa pag-unlock ng iyong mga kakayahan sa meteorologic!

Ngayong na-install mo na ang lahat ng iyong aklatan, pamilyar tayo sa Flask, isang magaan na balangkas na nagbibigay-daan para sa simpleng komunikasyon sa pagitan ng mga node sa kapaligiran ng aming proyekto. Sa proyektong ito, ang Raspberry Pi ay naging isang server. Maaari kang maging komportable sa Flask gamit ang simpleng halimbawa ng application dito.

Hakbang 3: Code at Pagpapatakbo

Ngayon na naipon mo ang mga library ng hardware at software, handa ka na upang simulang buuin ang mga file ng proyekto.

Server: Sa proyektong ito ang Raspberry Pi na konektado sa sensor ay gumaganap bilang server. Naghihintay ang server para sa gumagamit na makumpleto ang isang kahilingan sa pag-post ng temperatura, kahalumigmigan, o o ng grap. Lumikha kami ng mga template ng HTML na na-configure upang maayos na makipag-ugnay sa kahilingan ng application para sa temperatura, halumigmig, grapiko, o anumang kombinasyon ng tatlo (sumangguni sa folder ng template). Ibig sabihin na kung ang nais lamang ng gumagamit ay ang temperatura ay hindi siya makakakita ng anuman patungkol sa halumigmig maliban sa pagpipilian ng form upang makakuha ng pagbabasa ng kahalumigmigan. Kapag ang isang Post ay nagawa pagkatapos ay tipunin ng server ang impormasyon mula sa post at isinasagawa ang pagkilos na hiniling ng gumagamit. Nakukuha ng sensor ng DHT ang mga pagbabasa na pagkatapos ay nakaimbak at naipasa bilang isang argumento sa diksyonaryo gamit ang bagong form na html na ibinibigay namin. Iniimbak din ng server ang mga pagbabasa na iyon upang lumikha ng isang graph ng mga nakaraang pagbabasa kapag hiniling ng gumagamit.

Application: Ang application ay nagpapadala ng mga kahilingan sa HTTP sa Flask server upang kunin at i-render ang temperatura, halumigmig, at isang visual na representasyon ng temperatura at halumigmig ng huling dalawampu't apat na mga kahilingan na itinakda mula sa form sa kahilingan ng gumagamit. Gumagamit ang Application ng isang Flask Form na mayroong tatlong mga boolean input field para sa bawat isa. Maaaring mag-check ang gumagamit ng isang kahon para sa anumang kumbinasyon ng tatlong mga patlang na nais nilang makita. Hindi nila mapigilan ang anupaman maliban sa oo / hindi na nais nilang makita ang impormasyong iyon. Gumawa kami ng isang natatanging html file na ginagamit namin upang mag-render depende sa kahilingan ng gumagamit. Ginagawa ito upang ang mga pagbabasa na nagpapakita lamang ang hiniling ng gumagamit. Hindi namin nais ang gumagamit na humiling ng temperatura at tingnan nila ang isang walang laman na template para sa halumigmig o isang walang laman na grap.

Hakbang 4: Pagsubok

Ang aparato ay tumatakbo sa pamamagitan ng file: mainsense.py. Na nagdadala ng file ng formSense.py na naglalaman ng aming klase ng Flask Form na ginagamit ng application. Ang server ay paunang nag-render ng 'sense.html' at pagkatapos ay naghihintay para sa gumagamit na humiling. Naghihintay ang mainsense.py upang makakuha ng mga pagbabasa mula sa sensor nang napansin nang sandali kapag ang isang kahilingan na GET mula sa application ay humihingi ng temperatura o halumigmig at itago ang nakaraang 24 na pagbasa mula sa mga gumagamit. Mayroon ding pagpipiliang grap na ang gumagamit ay maaaring pumili kung aling mga graphic ang mga nakaraang pagbabasa, na higit sa 24, na ginawa ng gumagamit. Maaari mo ring makita na ang html ay nagsasama lamang ng mga pagpipilian sa form na maaaring magamit ng gumagamit upang makagawa ng isa pang kahilingan at mga pagbabasa na hiniling ng gumagamit.

Dapat ay makapag-navigate ka sa tamang URI / IP at maitakda ang tamang linya ng komunikasyon sa pagitan ng iyong application at server. Dapat mong subukang magpadala ng ilang mga kahilingan sa pagsubok na GET at matiyak na ang sensor ay tumutugon nang tama sa wastong pagbabasa mula sa iyong sensor. Pagkatapos kung ang iyong programa ay maayos na sinusubaybayan ang panahon sa oras, opisyal na handa kaming tanggalin ang cable - iyon ay kung nakabitin ka para sa channel ng panahon!

Hakbang 5: Pag-mount

Ang pag-mount ng aparato ay medyo nagpapaliwanag. Karaniwan, kailangan mo lamang tiyakin na ang aparato ay nakakonekta sa baterya pack o isang outlet ng kuryente at gumamit ng mga strip ng utos upang ma-secure ang aparato sa iyong nais na lokasyon upang subaybayan ang panahon.

Tandaan: ang aparato ay dapat na nakaposisyon sa sensor na ligtas mula sa mabangis na mga kondisyon ng panahon ng iyong lokasyon. Kapag nakumpleto na ito, dapat na makapag-SSH ka sa aparato at simulang patakbuhin ang server. Buksan ang website at alamin na nakukuha mo ang pinaka hanggang sa petsa ng mga pagsukat ng panahon mula sa lokasyon na inilagay ang iyong Raspberry Pi server.

Inirerekumendang: