Orodha ya maudhui:

Fanair: Kituo cha hali ya hewa cha Chumba chako: Hatua 6 (na Picha)
Fanair: Kituo cha hali ya hewa cha Chumba chako: Hatua 6 (na Picha)

Video: Fanair: Kituo cha hali ya hewa cha Chumba chako: Hatua 6 (na Picha)

Video: Fanair: Kituo cha hali ya hewa cha Chumba chako: Hatua 6 (na Picha)
Video: Потрясающий заброшенный замок XVIII века во Франции | ПОЛНЫЙ СОКРОВИЩ 2024, Julai
Anonim
Fanair: Kituo cha hali ya hewa cha Chumba chako
Fanair: Kituo cha hali ya hewa cha Chumba chako

Kuna njia nyingi za kujua hali ya hewa ya sasa, lakini basi unajua tu hali ya hewa nje. Je! Ikiwa unataka kujua hali ya hewa ndani ya nyumba yako, ndani ya chumba maalum? Hiyo ndio ninajaribu kutatua na mradi huu.

Fanair hutumia sensorer nyingi kuhisi:

  • joto
  • unyevu
  • mwanga
  • gesi fulani
  • shinikizo la hewa

Ni ngumu sana na hutumia Raspberry Pi 3 B, kwa kupata maadili, kuyaokoa kwenye hifadhidata ya MySQL na kisha kuifanya ipatikane kwa urahisi kwenye wavuti. Imejumuishwa katika nambari na wavuti ni uwezo wa kupata data halisi ya hali ya hewa ya eneo lako ili wavuti itumike kuangalia hali ya hewa ya nje pia.

Hatua ya 1: Pata Vitu vyote vinavyohitajika

Pata Vitu vyote vinavyohitajika
Pata Vitu vyote vinavyohitajika

Kwanza kabisa utahitaji vifaa vya elektroniki vya msingi kama nyaya / nyaya za jumper. Ikiwa una mpango wa kutengeneza kila kitu pamoja kama mradi wa kudumu basi ni wazi utahitaji chuma cha kutengenezea, solder, na kwa raha yako PCB ili kuuzia kila kitu.

Kwa vitu maalum zaidi nilitengeneza Muswada huu wa Vifaa.

  • Raspberry Pi 3 B
  • MPC3008 - 8-Kituo 10-Bit ADC
  • AM2301 Joto la joto na sensorer ya unyevu
  • WR Rademacher WR-tyoe 930-1 PCB
  • Uchunguzi wa ABS wa prototyping (nyeusi)
  • LDR
  • Sensor ya gesi ya MQ135
  • 2x BC517 Transistor ya Darlington
  • RGB LED
  • Ufungashaji wa Resistor
  • Buzzer
  • Waya
  • BMP280 Barometer
  • Shabiki wa utulivu wa USB (5V)

Wote kwa pamoja hii inapaswa kugharimu karibu € 110. Kumbuka kuwa bei ya jumla ni makadirio. Pia, mradi wangu una skrini ya LCD kwenye picha lakini haijaunganishwa kwani hakukuwa na nafasi ya kutosha kwa kesi yangu, kwa hivyo haijajumuishwa katika inayoweza kufundishwa.

Hatua ya 2: Pata Raspberry yako Pi Tayari

Pata Raspian Jessie wako na mfumo wa uendeshaji wa Pixel kutoka kwa tovuti rasmi ya Raspberry Pi na mara tu ilipakua unzip. Utapata faili ya picha. Ili kuipata kwenye Pi itabidi uiandike kwa SD-Kadi ukitumia Win32 Disk Imager. Mara tu ikiwa imewekwa chagua faili ya picha na gari ambalo unakaa SD-Kadi. Kisha bonyeza waandishi na subiri hadi imalize.

Ukimaliza bonyeza SD-Card yako kwenye File Explorer na ufungue faili inayoitwa 'cmdline.txt' nenda mwisho wa faili ya maandishi kabla tu ya rootwait na andika 'ip = 254.169.10.2' na nafasi karibu na shaka. Baada ya kuihifadhi unapaswa kubofya kulia mahali fulani ndani ya dirisha na uunda faili mpya inayoitwa 'ssh'. Angalia kuwa faili hii haina ugani wa faili. Ili kuhakikisha kuwa haina ugani bonyeza 'mtazamo' katika kichunguzi cha faili na angalia 'faili zilizofichwa'. Ikiwa itaipa jina jipya na kufuta ugani kwa hivyo inasoma tu 'ssh'.

Baada ya kumaliza, unaweza kuweka Kadi yako ya SD kwenye Raspberry Pi. Pakua mteja wa ssh (ninapendekeza MobaXterm). Na unganisha kutumia ssh na IP uliyoweka mapema '254.169.10.2'. Jina la mtumiaji ni 'pi', nywila 'rasipiberi'. Ikiwa unataka unaweza kubadilisha nywila kwa kuandika amri 'sudo passwd' kwenye terminal na kufuata maagizo. Kwa kuwa tutatumia sehemu nzuri ya Kadi ya SD kwa Fanair unapaswa kupanua uhifadhi unaopatikana kwa kuandika 'sudo rapi-config' kuchagua 'Chaguzi za Juu' na kisha 'Panua Mfumo wa Faili'. Ikiwa imesababishwa kuanza upya.

Tutatumia kiwambo cha 1-waya, SPI, na I2C. Ili uweze kuzitumia unahitaji kwanza kuzianzisha!

Hatua ya 3: Unganisha Kila kitu Pamoja

Unganisha Kila kitu Pamoja
Unganisha Kila kitu Pamoja
Unganisha Kila kitu Pamoja
Unganisha Kila kitu Pamoja

Wakati wake wa kufanya mzunguko! Mara ya kwanza labda unapaswa kujaribu kwenye ubao wa mkate, lakini ikiwa huna wakati wa hiyo unaweza kujaribu kuiunganisha pamoja.

Mzunguko utahitaji unaonekana kama hapo juu, kwa urahisi toleo la ubao wa mkate pia linajumuishwa.

Hatua ya 4: Unda Hifadhidata yako

Ili kuokoa kwa ufanisi data yote utakayopokea tutatumia hifadhidata ya TSQL MySQL. Kabla ya kusanikisha MySQL wacha tuhakikishe kila kitu kimesasishwa kwa kuandika amri kadhaa kwenye terminal:

  • 'sudo apt-pata sasisho'
  • 'sudo apt-kupata sasisho'
  • 'sudo apt-pata dist-kuboresha'

Kubali kila kidokezo kwa kuandika 'y' na ingiza.

Kufunga aina ya MySQL:

  • 'sudo apt-get kufunga mysql-server'
  • 'sudo apt-get kufunga mysql-mteja'

Unapohamasishwa unda nenosiri la msingi la chaguo lako.

Baada ya kumaliza kufunga kuingia kwa kutumia:

'mysql -uroot -p'

Na kuandika nenosiri lako.

Pata nambari ya Fanair kutoka My Github! Bonyeza kwenye 'Clone au download' na kisha kwenye 'Pakua ZIP'. Fungua msimbo kwenye folda unayochagua. Hoja ya kuunda hifadhidata inayofanya kazi kikamilifu iko kwenye folda ya hifadhidata. Fungua faili nakili msimbo na uibandike kwenye terminal na MySQL wazi. Kisha bonyeza kuingia na hifadhidata imefanywa!

Hatua ya 5: Wakati wa Kanuni

Ili kutumia sensorer zote unahitaji kutumia programu. Kwa bahati nzuri nambari hiyo tayari imefanywa (kwa sehemu kubwa), na tayari tumeipakua wakati wa kupata swala la hifadhidata ya SQL.

Kama nilivyosema kuna mambo kadhaa ambayo bado yanahitaji kubadilishwa / kuongezwa ili programu ifanye kazi vizuri. Kwanza kabisa, programu hutumia API ya Darksky kupata data ya hali ya hewa kulingana na longitudo na latitudo. Ili kuitumia unahitaji kujisajili. Simu 1000 za kwanza ni za bure na baadaye zinagharimu $ 0.0001 kwa kila simu. Nimesikia ikiwa hautoi akaunti yako inazuiliwa. Kuwa sawa $ 0.0001 kwa kila simu ni rahisi sana. Fanair huita data ya hivi karibuni kila saa ambayo inamaanisha kuwa kwa mwaka ikiwa inaendesha wakati wote itakugharimu $ 0.876 tu. Pia unapata siku 41 bure ikiwa Fanair inaendesha wakati wote.

Mara baada ya kujisajili tafuta ufunguo wako wa API. Tafuta longitudo na latitudo ya eneo lako kwenye ramani za google au jaribu kui google. Unda faili mpya ya maandishi saraka ya mizizi ya Fanair (na madarasa, main.py…). Taja faili 'key_location.txt'. Fungua faili ya maandishi na kwenye laini ya kwanza weka kitufe chako cha Darksky API. Kwenye mstari wa pili weka longitudo yako na kwenye mstari wa tatu weka latitudo (zote katika muundo wa desimali). Ukimaliza weka faili.

Katika saraka hiyo hiyo tengeneza faili nyingine ya maandishi inayoitwa 'database_dsn.txt'. Mstari wa kwanza unapaswa kusema 'localhost'. Mstari wa pili ni 'mzizi'. Mstari wa tatu unapaswa kuchapa nywila yako ambayo umetengeneza hifadhidata mapema, na mstari wa nne na wa mwisho unapaswa kuandika 'fanair'.

Bonyeza kulia faili kuu.py na uchague kuhariri. 'Fanair = Fanair (5, 26, 17, 27, 22, 4, "AM2301", 1, 0, 0, 0, "key_location.txt", "database_dsn.txt")' inahitaji kubadilishwa. Ukifuata picha maadili 5 ya kwanza yanapaswa kubadilishwa kutoka '5, 26, 17, 27, 22, 4' hadi '20, 21, 26, 19, 13 '. '/ nyumbani / muhsin / Maombi / Fanair' inapaswa pia kubadilishwa kuwa njia yako ya mizizi ya Fanair (ambapo main.py iko). Hakikisha kuweka slash mbele ya 'nyumba' lakini sio baada ya 'Fanair'.

Sasa hii ni nzuri lakini nambari inahitaji kuingia kwenye Pi. Kwa bahati nzuri kwetu itifaki ya sftp ipo. Kuweka faili kwenye Pi tumia mteja wa sftp kama FileZilla au ikiwa umeamua kutumia MobaXterm unaweza kupakia faili hizo kwa urahisi kwenye kiwambo cha sftp kushoto kwa wastaafu.

Katika uzoefu wangu mimi huwa sipati tarehe na wakati sahihi katika Raspberry Pi. Ili kuhakikisha utapokea wakati sahihi wa wakati napendekeza kufuata mwongozo huu: Tarehe na wakati wa usawazishaji wa Raspberry Pi.

Na mwisho maktaba kadhaa zinahitajika kusanikishwa na viungio kadhaa vinahitaji kuamilishwa:

'sudo apt-get install muhimu-python-dev'

Adafruit DHT:

'pip3 sakinisha adafruit_python_dht'

Waya-1:

  1. 'sudo raspi-config'
  2. 'Chaguzi za Kuingiliana'
  3. 'Waya 1'
  4. Washa
  5. 'sudo nano / boot/config.txt'
  6. Ongeza mstari huu kwenye faili: 'dtoverlay = w1-gpio'
  7. 'Sudo reboot'

SPI:

  1. 'sudo raspi-config'
  2. 'Chaguzi za Kuingiliana'
  3. 'SPI'
  4. Washa
  5. 'Sudo reboot'
  6. 'sudo nano / boot/config.txt'
  7. Tafuta 'dtparam = spi = on' na uiondoe kwa kuondoa hashtag.
  8. 'sudo apt-kupata kufunga python3-dev

Smbus:

  1. 'sudo raspi-config'
  2. 'Chaguzi za Kuingiliana'
  3. 'I2C'
  4. Washa
  5. 'Sudo reboot'
  6. 'sudo apt-get install -y python-smbus'
  7. 'sudo apt-get install -i i2c-zana'
  8. 'sudo nano / boot/config.txt'
  9. Tafuta dtparam = i2c_arm = juu na uiondoe kwa kuondoa hashtag.

chupa

pip3 kufunga Flask

kiunganishi cha mysql

'pip3 kufunga -Iv mysql-kontakt == 2.1.4'

spidev

'pip3 weka py-spidev'

giza

'pip3 weka darkskylib'

Hatua ya 6: Jaribu

Ikiwa umeweza kuifanya ifike hapa bonyeza mwenyewe nyuma. Sasa kila kitu kimefanywa ili Fanair ifanye kazi vizuri. Kwa hivyo kuijaribu aina ya 'cd ""'. Mahali pa faili ni "/ nyumbani / pi" kwa mfano ikiwa umeweka tu kwenye saraka yako ya nyumbani. Kisha chapa 'python3 main.py' na uiruhusu ipumzike kwa dakika 15 ili iwe na data kwenye hifadhidata ikimaliza. Baada ya vyombo vya habari 'ctrl + c' simamisha programu na andika 'python3 Flask.py'. Kuona ikiwa wavuti yako inafanya kazi unahitaji kutumia anwani yako ya IP ya Pi uliyotengeneza na ': 5000' baada yake (kama hii: 169.254.10.1:5000 ').

Ili kuiendesha kiatomati baada ya boot:

'sudo nano /etc/rc.local'

Mwisho wa faili LAKINI KABLA ya kutoka 0:

'sudo python3 "/ / main.py" &'

'python3 "/Flask.py" &'

Hongera sasa hati yako inapaswa kuanza kutoka kwa kuanza na UMefanya! Ikiwa una mpango wa kuweka mradi unafanya kazi na sijapendekeza nikuweke kila kitu pamoja, ili tu kuhakikisha kuwa kila kitu kinakaa. Ingawa usicheze kuizungusha bodi ya mkate pia inafanya kazi bila shaka.

Ilipendekeza: