Orodha ya maudhui:
- Hatua ya 1: Kuandaa vifaa
- Hatua ya 2: Kuwezesha SSH
- Hatua ya 3: Kusanikisha Cloud4RPi
- Hatua ya 4: Kuunganisha Sensor
- Hatua ya 5: Kutuma Usomaji wa Sensorer kwa Wingu
- Hatua ya 6: Chati na Kengele
Video: Ufuatiliaji wa Joto na Unyevu Kutumia Raspberry Pi: Hatua 6 (na Picha)
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:51
Majira ya joto yanakuja, na wale ambao hawana kiyoyozi wanapaswa kuwa tayari kudhibiti anga ndani ya nyumba kwa mikono. Katika chapisho hili, ninaelezea njia ya kisasa ya kupima vigezo muhimu zaidi kwa faraja ya binadamu: joto na unyevu. Takwimu hizi zilizokusanywa zinatumwa kwa wingu na kusindika huko.
Ninatumia bodi ya Raspberry Pi 1 na sensorer ya DHT22. Unaweza kufanya vivyo hivyo kwenye kompyuta yoyote ambayo ina mtandao, GPIO, na chatu. Sensor ya DHT11 ya bei rahisi pia inafanya kazi vizuri.
Hatua ya 1: Kuandaa vifaa
Wacha tuanze tangu mwanzo, kwani sikutumia Raspberry yangu Pi kwa muda mrefu.
Tutahitaji:
- Bodi ya Raspberry Pi (au jukwaa lingine la IoT).
- Kadi ya SD au microSD (kulingana na jukwaa).
- 5V / 1A kupitia Micro-USB.
- Cable ya LAN, ambayo hutoa unganisho la Mtandao.
- Onyesho la HDMI, onyesho la RCA, au bandari ya UART (kuwezesha SSH).
Hatua ya kwanza kabisa ni kupakua Raspbian. Nimechagua toleo la Lite, kwani nitatumia SSH badala ya onyesho. Mambo yamebadilika tangu mara ya mwisho kuifanya: sasa kuna programu nzuri inayowaka inayoitwa Etcher, ambayo inafanya kazi kikamilifu, na ina muundo mzuri..
Baada ya uchomaji wa picha kukamilika, niliingiza kadi ya SD kwenye Pi yangu, nikachomeka LAN na nyaya za umeme, na baada ya muda, router yangu ilisajili kifaa kipya.
Hatua ya 2: Kuwezesha SSH
SSH imelemazwa kwa chaguomsingi. Ninaweza kutumia kibadilishaji cha UART-USB au tu unganisha onyesho kufikia ganda na kuwezesha SSH.
Baada ya kuanza upya, mwishowe nimeingia. Vitu vya kwanza kwanza, wacha tusasishe:
sasisho la apt apt && sudo apt kuboresha -y
Sasa wacha tuunganishe kifaa hiki kipya na Wingu.
Hatua ya 3: Kusanikisha Cloud4RPi
Niliamua kujaribu jukwaa la wingu linaloitwa Cloud4RPi, ambalo limetengenezwa kwa IoT.
Kulingana na hati, tunahitaji vifurushi vifuatavyo ili kuifanya ifanye kazi:
Sudo apt kufunga git python python-pip -y
Maktaba ya mteja inaweza kuwekwa kwa amri moja:
Sudo pip kufunga cloud4rpi
Sasa tunahitaji nambari ya sampuli ili kuhakikisha inafanya kazi.
clone ya git https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python && cd cloud4rpi-raspberrypi-chatu git clone https://gist.github.com/f8327a1ef09ceb1ef142fa68701270de.git e && mv e / minimal.py minimal.py && rmdir -re
Niliamua kukimbia minimal.py, lakini sipendi data bandia. Kwa bahati nzuri, niliona njia rahisi ya kufanya data ya uchunguzi iwe halisi katika mfano huu. Ongeza uingizaji mmoja zaidi kwa sehemu ya uagizaji:
kutoka kuagiza rpi *
Kisha ufute kazi hizi ambazo hutoa data bandia (rpi.py inafafanua sasa):
def cpu_temp ():
kurudi 70 def ip_address (): kurudi '8.8.8.8' def host_name (): kurudi 'jina la mwenyeji' def os_name (): kurudi 'osx'
Sasa tunahitaji ishara, ambayo inaruhusu Cloud4RPi kuunganisha vifaa na akaunti. Ili kupata moja, fungua akaunti kwenye cloud4rpi.io na bonyeza kitufe cha Kifaa kipya kwenye ukurasa huu. Badilisha kamba ya _YOUR_DEVICE_TOKEN_ katika faili ya minimal.py na ishara ya kifaa chako na uhifadhi faili. Sasa tuko tayari kwa uzinduzi wa kwanza.
chatu minimal.py
Fungua ukurasa wa kifaa na uangalie kwamba data iko hapo.
Sasa hebu tuende kwenye data ya ulimwengu halisi.
Hatua ya 4: Kuunganisha Sensor
Tutahitaji:
- Sensor ya unyevu wa DHT22 au DHT11
- Kinga ya kuvuta (5-10 KΩ)
- Waya
Sensorer ya DHT22 inapima joto na unyevu wakati huo huo. Itifaki ya mawasiliano haijasanifishwa, kwa hivyo hatuitaji kuiwezesha katika raspi-config - pini rahisi ya GPIO ni zaidi ya kutosha.
Ili kupata data, nitatumia maktaba nzuri ya Adafruit kwa sensorer za DHT, lakini inaweza isifanye kazi kama ilivyo. Niliwahi kupata ucheleweshaji wa kawaida wa nambari, ambayo haikufanya kazi kwa vifaa vyangu, na baada ya miaka miwili ombi langu la kuvuta bado linasubiri. Nimebadilisha pia vipindi vya kugundua bodi kwa sababu Raspberry yangu 1 na BCM2835 iligunduliwa kwa kushangaza kama Raspberry Pi 3. Natamani iwe kweli … Kwa hivyo, ninapendekeza kutumia uma wangu. Ikiwa unapata shida yoyote nayo, tafadhali jaribu hazina ya asili, labda inamfanyia mtu kazi, lakini mimi sio mmoja wao.
clone ya git https://github.com/Himura2la/Adafruit_Python_DHT…. Adafruit_Python_DHT
Kama maktaba ilivyoandikwa katika C, inahitaji mkusanyiko, kwa hivyo unahitaji vifurushi vya muhimu na vya chatu-dev.
Sudo apt kufunga muhimu-python-dev -sudo python setup.py install
Wakati vifurushi vinasakinisha, unganisha DHT22 kama inavyoonyeshwa kwenye picha.
Na ujaribu:
cd ~ python -c "kuagiza Adafruit_DHT kama d; chapisha d.read_retry (d. DHT22, 4)"
Ikiwa utaona kitu kama (39.20000076293945, 22.600000381469727), unapaswa kujua kwamba hii ni unyevu katika percents na joto katika Celsius.
Sasa, wacha tukusanye kila kitu pamoja!
Hatua ya 5: Kutuma Usomaji wa Sensorer kwa Wingu
Nitatumia minimal.py kama msingi na kuongeza mwingiliano wa DHT22 ndani yake.
cd Cloud4rpi-raspberrypi-chatu
cp minimal.py ~ / cloud_dht22.py cp rpi.py ~ / rpi.py cd vi cloud_dht22.py
Kama DHT22 inarudi hali ya joto na unyevu katika simu moja, ninawahifadhi ulimwenguni na kusasisha mara moja tu kwa ombi, kwa kudhani kuchelewa kati yao ni zaidi ya sekunde 10. Fikiria nambari ifuatayo, ambayo hupata data ya DHT22:
kuagiza Adafruit_DHT
temp, hum = Hakuna, hakuna mwisho_update = time.time () - 20 def update_data (): global last_update, hum, temp ikiwa time.time () - last_update> 10: hum, temp = Adafruit_DHT.read_retry (Adafruit_DHT. DHT22, 4) last_update = time.time () def get_t (): update_data () raundi ya kurudi (temp, 2) ikiwa temp sio Mtu mwingine Hakuna def get_h (): update_data () kurudi pande zote (hum, 2) ikiwa hum sio Hakuna mwingine Hakuna
Ingiza nambari hii baada ya uagizaji uliopo na uhariri sehemu ya vigeugeu ili itumie kazi mpya:
vigezo = {
'DHT22 Temp': {'type': 'numeric', 'bind': get_t}, 'DHT22 Humidity': {'type': 'numeric', 'bind': get_h}, 'CPU Temp': {'type ':' nambari ',' funga ': cpu_temp}}
Bonyeza kitufe nyekundu ili kuanza uhamishaji wa data:
chatu cloud_dht22.py
Basi unaweza kuangalia ukurasa wa kifaa.
Unaweza kuiacha ilivyo, lakini napendelea kuwa na huduma kwa kila kitu. Hii inahakikisha kwamba hati inafanya kazi kila wakati. Kuunda huduma na hati kamili ya kiotomatiki:
wget -O https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python/blob/master/service_install.sh | Sudo bash -s wingu_dht22.py
Kuanzisha huduma:
huduma ya sudo wingu4rpi kuanza
Na kukiangalia:
pi @ raspberrypi: ~ $ sudo huduma ya cloud4rpi hadhi -l
● cloud4rpi.service - Cloud4RPi daemon Loaded: loaded (/lib/systemd/system/cloud4rpi.service; imewezeshwa) Inatumika: inafanya kazi (inaendesha) tangu Wed 2017-05-17 20:22:48 UTC; Dakika 1 iliyopita PID kuu: 560 (chatu) CGroup: /system.slice/cloud4rpi.service └─560 / usr / bin / python /home/pi/cloud_dht22.pyMay 17 20:22:51 raspberrypi chatu [560]: Inachapisha iot -hub / ujumbe: {'type': 'config', 'ts': '2017-05-17T20… y'}]} Mei 17 20:22:53 rasipberrypi chatu [560]: Kuchapisha iot-hub / ujumbe: {'type': 'data', 'ts': '2017-05-17T20: 2… 40'}} Mei 17 20:22:53 chatu raspberrypi [560]: Kuchapisha kitovu / ujumbe: {'type': 'mfumo', 'ts': '2017-05-17T20….4'}}
Ikiwa kila kitu kinafanya kazi kama inavyotarajiwa, tunaweza kuendelea na kutumia uwezo wa jukwaa la Cloud4RPi kudhibiti data.
Hatua ya 6: Chati na Kengele
Kwanza kabisa, hebu tupange vigeugeu ili kuona jinsi hubadilika. Hii inaweza kufanywa kwa kuongeza Jopo jipya la Udhibiti na kuweka chati zinazohitajika ndani yake.
Kitu kingine ambacho tunaweza kufanya hapa ni kuweka Tahadhari. Kipengele hiki kinakuwezesha kusanidi safu salama kwa ubadilishaji. Mara tu masafa yanapozidi, hutuma arifa ya barua pepe. Kwenye ukurasa wa uhariri wa Jopo la Udhibiti, unaweza kubadili Arifa na kuweka moja.
Mara tu baada ya hapo, unyevu katika chumba changu ulianza kupungua haraka bila sababu yoyote inayoonekana, na kengele ilifuata hivi karibuni.
Unaweza kutumia Cloud4RPi bure na vifaa vyovyote ambavyo vinaweza kutekeleza Python. Kwa upande wangu, sasa ninajua kila wakati wakati wa kuwasha kibadilishaji hewa, na naweza hata kuiunganisha kwa relay ya kudhibiti kijijini kupitia Cloud4RPi. Nimejiandaa kwa joto! Karibu, Majira ya joto!
Ilipendekeza:
Jinsi ya kutumia DHT22 Unyevu wa unyevu na joto la joto na Arduino: Hatua 6
Jinsi ya kutumia unyevu wa DHT22 na sensorer ya joto na Arduino: Katika mafunzo haya tutajifunza jinsi ya kutumia unyevu wa DHT22 na Sensor ya Joto na Arduino na kuonyesha maadili kwenye OLED Onyesha video
Ufuatiliaji wa Joto la ESP8266 Nodemcu Kutumia DHT11 kwenye Mtandao wa Mtandao - Pata Joto la Chumba na Unyevu kwenye Kivinjari chako: Hatua 6
Ufuatiliaji wa Joto la ESP8266 Nodemcu Kutumia DHT11 kwenye Mtandao wa Mtandao | Pata Joto la Chumba na Unyevu kwenye Kivinjari chako: Halo jamani leo tutafanya unyevu & mfumo wa ufuatiliaji wa joto kwa kutumia ESP 8266 NODEMCU & Sensor ya joto ya DHT11. Joto na unyevu utapatikana kutoka kwa Sensorer ya DHT11 & inaweza kuonekana kwenye kivinjari ambayo ukurasa wa wavuti utasimamia
Ufuatiliaji wa Joto na Unyevu Kutumia SHT25 na Raspberry Pi: Hatua 5
Ufuatiliaji wa Joto na Unyevu Kutumia SHT25 na Raspberry Pi: Hivi karibuni tumefanya kazi kwenye miradi anuwai ambayo ilihitaji ufuatiliaji wa joto na unyevu kisha tukagundua kuwa vigezo hivi viwili vina jukumu muhimu katika kuwa na makisio ya ufanisi wa mfumo. Wote katika indus
Jinsi ya kutumia Sensor ya Joto la DHT11 na Arduino na Joto la Uchapishaji wa Joto na Unyevu: Hatua 5
Jinsi ya Kutumia Sensorer ya Joto la DHT11 Na Arduino na Joto la Uchapishaji Joto na Unyevu: Sura ya DHT11 hutumiwa kupima joto na unyevu. Unyevu wa DHT11 na sensorer ya joto hufanya iwe rahisi sana kuongeza data ya unyevu na joto kwenye miradi yako ya elektroniki ya DIY. Ni kwa kila
Joto -Joto La Kudhibitiwa la Joto La joto: Hatua 6
Joto -Joto La Kutabasamu La Kudhibiti Joto: ******************************************* ************************************************** +