Përmbajtje:
- Furnizimet
- Hapi 1: Përgatitja e pajisjeve
- Hapi 2: Instalimi i Cloud4RPi
- Hapi 3: Lidhja e sensorit
- Hapi 4: Dërgimi i leximeve të sensorëve në cloud
- Hapi 5: Listat dhe Alarmet
Video: Lagështia në re: 5 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:17
Vera po vjen, dhe ata pa kondicioner duhet të jenë të përgatitur për të kontrolluar atmosferën në ambiente të mbyllura me dorë. Në këtë postim, unë jam duke përshkruar mënyrën moderne për të matur parametrat më të rëndësishëm për rehatinë njerëzore: temperaturën dhe lagështinë. Këto të dhëna të mbledhura dërgohen në re dhe përpunohen atje.
Furnizimet
Unë jam duke përdorur një bord Raspberry Pi dhe sensorin DHT22. Ju mund të bëni të njëjtën gjë në çdo kompjuter që ka internet, GPIO dhe Python. Sensori më i lirë DHT11 gjithashtu funksionon mirë.
Hapi 1: Përgatitja e pajisjeve
Le të fillojmë që nga fillimi, pasi nuk e kam përdorur Raspberry Pi tim për një kohë mjaft të gjatë.
Do të na duhen:
- Bordi Raspberry Pi (ose platformë tjetër e orientuar në IoT).
- Kartë SD ose microSD (në varësi të platformës).
- 5V/1A përmes kabllit mikro-USB. LAN, i cili siguron lidhjen në internet.
- Ekran HDMI, ekran RCA ose port UART (për të aktivizuar SSH).
Hapi i parë është shkarkimi i Raspbian. Unë kam zgjedhur versionin Lite, pasi do të përdor SSH në vend të ekranit.
Gjërat kanë ndryshuar që nga hera e fundit që e bëra: tani ekziston një softuer i shkëlqyeshëm i djegur i quajtur Etcher, i cili funksionon në mënyrë perfekte dhe ka një dizajn mahnitës.
Pasi përfundoi djegia e imazhit, futa kartën SD në Pi tim, futa LAN dhe kabllot e energjisë, dhe pas një kohe, ruteri im regjistroi pajisjen e re.
Shkëlqyeshëm! Le të vazhdojmë dhe SSH në të.
Siguria është në rregull, më pëlqen, por kjo i bën gjërat pak më të vështira. Unë do të përdor përshtatësin UART-USB për të hyrë në guaskë dhe për të aktivizuar SSH …
Përdorimi i një ekrani në vend të UART e bën atë shumë më të lehtë.
Pas rindezjes, më në fund jam brenda.
Gjërat e para së pari, le të azhurnojmë:
sudo apt update && sudo apt upgrade -y
Tani le ta lidhim këtë pajisje të re me Cloud.
Hapi 2: Instalimi i Cloud4RPi
Vendosa të provoj platformën cloud të quajtur Cloud4RPi, e cila është krijuar për IoT.
Sipas dokumenteve, na duhen paketat e mëposhtme për ta funksionuar:
sudo apt instaloni git python3 python3 -pip -y
Biblioteka e klientit mund të instalohet në një komandë të vetme:
sudo pip3 instaloni cloud4rpi
Tani kemi nevojë për një kod shembull.
git klon https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python && cd cloud4rpi-raspberrypi-python
Skripti i ekzekutueshëm është control.py.
Ne kemi nevojë për një shenjë, e cila lejon Cloud4RPi të lidhë pajisjet me llogaritë. Për të marrë një, krijoni një llogari në cloud4rpi.io dhe shtypni butonin Pajisja e Re në këtë faqe. Zëvendësoni vargun _YOUR_DEVICE_TOKEN_ në skedarin control.py me shenjën e pajisjes tuaj dhe ruani skedarin. Tani jemi gati për nisjen e parë.
sudo python3 kontroll.py
Hapni faqen e pajisjes dhe kontrolloni që të dhënat janë atje.
Tani le të kalojmë në të dhënat e botës reale.
Hapi 3: Lidhja e sensorit
Do të na duhen:
- Sensori i lagështisë DHT22 ose DHT11
- Rezistencë tërheqëse (5-10 KΩ)
- TelatThe
Sensori DHT22 mat temperaturën dhe lagështinë njëkohësisht. Protokolli i komunikimit nuk është i standardizuar, kështu që ne nuk kemi nevojë ta aktivizojmë atë në konfigurimin raspi - një pin i thjeshtë GPIO është më se i mjaftueshëm.
Për të marrë të dhënat, do të përdor bibliotekën e madhe të Adafruit për sensorët DHT, por mund të mos funksionojë siç është. Një herë gjeta një vonesë të çuditshme të vazhdueshme në kod, i cili nuk funksionoi për pajisjen time, dhe pas dy vitesh kërkesa ime e tërheqjes është ende në pritje. Unë gjithashtu kam ndryshuar konstantet e zbulimit të tabelës sepse Raspberry Pi 1 im me BCM2835 u zbulua çuditërisht si Raspberry Pi 3. Do të doja të ishte e vërtetë … Kështu, unë rekomandoj të përdorni pirunin tim. Nëse përjetoni ndonjë problem me të, ju lutemi provoni depon origjinale, mbase funksionon për dikë, por unë nuk jam një prej tyre.
git klon https://github.com/Himura2la/Adafruit_Python_DHT.gitcd Adafruit_Python_DHT
Meqenëse biblioteka është shkruar në C, ajo kërkon përpilim, kështu që ju keni nevojë për paketat thelbësore të ndërtimit dhe python-dev.
sudo apt install build-thelbësore python-dev -ysudo python setup.py install
Ndërsa paketat janë duke u instaluar, lidhni DHT22 siç tregohet në figurë.
Dhe provojeni atë:
cd -python -c "importo Adafruit_DHT si d; print d.read_retry (vd. DHT22, 4)"
Nëse shihni diçka si (39.20000076293945, 22.600000381469727), duhet të dini se kjo është lagështia në përqindje dhe temperatura në Celsius.
Tani, le të mbledhim gjithçka së bashku!
Hapi 4: Dërgimi i leximeve të sensorëve në cloud
Unë do të përdor control.py si bazë dhe do të shtoj ndërveprimin DHT22 në të.
cp cloud4rpi-raspberrypi-python/control.py./cloud_dht22.pycp cloud4rpi-raspberrypi-python/rpi.py./rpi.pyvi cloud_dht22.py
Hiqni kodin shembull si në imazhin e mësipërm.
Ndërsa DHT22 kthen temperaturën dhe lagështinë në një telefonatë të vetme, unë do t'i ruaj ato globalisht dhe do t'i azhurnoj vetëm një herë në një kërkesë, duke supozuar se vonesa midis tyre është më shumë se 10 sekonda. Konsideroni kodin e mëposhtëm, i cili merr të dhënat DHT22:
importoni Adafruit_DHT
temp, hum = Asnjë, Asnjë
last_update = koha. koha () - 20
def update_data ():
global last_update, hum, temp if 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 i kthimit (temp, 2) nëse temp nuk është Asnjë tjetër Asnjë def get_h (): update_data () Raundi i kthimit (hum, 2) nëse hum nuk është Asnjë tjetër Asnjë
Futni këtë kod pas importeve ekzistuese dhe modifikoni seksionin e variablave në mënyrë që të përdor funksionet e reja:
variables = {'DHT22 Temp': {'type': 'numerike', 'bind': get_t}, 'DHT22 Lagështia': {'type': 'numerike', 'bind': get_h}, 'Temp CPU': {'type': 'numerike', 'bind': cpu_temp}}
Nëse ju duket se manipulimet janë konfuze, kapni versionin përfundimtar të këtij skedari. Shtypni butonin e kuq për të filluar transferimin e të dhënave:
Pastaj mund të kontrolloni faqen e pajisjes.
python3 cloud_dht22.py
Pastaj mund të kontrolloni faqen e pajisjes.
Mund ta lini ashtu siç është, por unë preferoj të kem një shërbim për gjithçka. Kjo siguron që skenari të jetë gjithmonë në punë. Krijimi i një shërbimi me skriptin plotësisht të automatizuar që tashmë e keni në drejtorinë cloud4rpi-raspberrypi-python:
service_install.sh cloud_dht22.py
Fillimi i shërbimit:
fillimi i shërbimit sudo cloud4rpi
Dhe duke e kontrolluar:
pi@raspberrypi: service $ sudo service cloud4rpi status -l ● cloud4rpi.service -Cloud4RPi demon i ngarkuar: i ngarkuar (/lib/systemd/system/cloud4rpi.service; i aktivizuar) Aktiv: aktiv (në punë) që nga e Marta 2017-05-17 20: 22: 48 UTC; 1 min më parë PID kryesor: 560 (python) CGroup: /system.slice/cloud4rpi.service └─560/usr/bin/python /home/pi/cloud_dht22.py
17 maj 20:22:51 raspberrypi python [560]: Publikimi iot-hub/mesazhe: {'type': 'config', 'ts': '2017-05-17T20… y'}]}
Maj 17 20:22:53 python raspberrypi [560]: Publikimi iot-qendër/mesazhe: {'type': 'data', 'ts': '2017-05-17T20: 2… 40'}} 17 Maj 20: 22:53 raspberrypi python [560]: Publikimi iot-hub/mesazhe: {'type': 'system', 'ts': '2017-05-17T20….4'}}
Nëse gjithçka funksionon siç pritej, ne mund të vazhdojmë dhe të përdorim aftësitë e platformës Cloud4RPi për të manipuluar me të dhënat.
Hapi 5: Listat dhe Alarmet
Para së gjithash, le të vizatojmë variablat për të parë se si ndryshojnë. Kjo mund të bëhet duke shtuar një Panel të ri Kontrolli dhe duke vendosur grafikët e kërkuar në të.
Një gjë tjetër që mund të bëjmë këtu është vendosja e një alarmi. Kjo veçori ju mundëson të konfiguroni gamën e sigurt për një ndryshore. Sapo të tejkalohet diapazoni, ai dërgon një njoftim me email. Në faqen e redaktimit të Panelit të Kontrollit, mund të kaloni te Sinjalizimet dhe të konfiguroni një.
Menjëherë pas kësaj, lagështia në dhomën time filloi të ulet me shpejtësi pa ndonjë arsye të dukshme dhe alarmi shpejt pasoi.
Mund ta përdorni Cloud4RPi falas me çdo pajisje që është në gjendje të ekzekutojë Python. Sa për mua, tani e di gjithmonë se kur ta ndez lagështuesin e ajrit dhe madje mund ta lidh atë me një stafetë për telekomandë nëpërmjet Cloud4RPi. Unë jam gati për nxehtësinë! Mirësevini, Verë!
Me Cloud4RPi, ju mund të kontrolloni Raspberry Pi tuaj dhe pajisje të tjera IoT nga distanca në kohë reale. Vizitoni faqen tonë dhe lidhni pajisje të pakufizuara falas.
Recommended:
ESP8266 dhe Visuino: Temperatura dhe Lagështia Web Server DHT11: 12 hapa
ESP8266 dhe Visuino: DHT11 Temperatura dhe Lagështia Web Server: Modulet ESP8266 janë kontrollues të shkëlqyeshëm me kosto të ulët me Wi-Fi të integruar, dhe unë tashmë kam bërë një numër udhëzimesh rreth tyre. Temperatura e kombinuar DTH11/DTH21/DTH22 dhe AM2301 janë shumë të njohura dhe sensorë të lagështisë Arduino, dhe unë bëra një numër
Lagështia, Presioni dhe Llogaritja e Temperaturës duke Përdorur BME280 dhe Ndërfaqja me Foton .: 6 Hapa
Lagështia, Presioni dhe Llogaritja e Temperaturës Duke Përdorur BME280 dhe Ndërfaqja me Foton .: Ne hasim në projekte të ndryshme të cilat kërkojnë monitorimin e temperaturës, presionit dhe lagështisë. Kështu ne kuptojmë se këta parametra në të vërtetë luajnë një rol jetësor për të pasur një vlerësim të efikasitetit të punës të një sistemi në kushte të ndryshme atmosferike
Analiza e të dhënave Temp/Lagështia duke përdorur Ubidots dhe Google-Sheets: 6 hapa
Analiza e të dhënave Temp/Lagështia duke përdorur Ubidots dhe Google-Sheets: Në këtë tutorial, ne do të masim të dhëna të ndryshme të temperaturës dhe lagështisë duke përdorur sensorin e temperaturës dhe lagështisë. Ju gjithashtu do të mësoni se si t'i dërgoni këto të dhëna në Ubidots. Kështu që ju mund ta analizoni nga kudo për aplikime të ndryshme. Gjithashtu duke dërguar
Projekti Arduino DHT22 Sensori dhe Lagështia e Tokës Me Menu: 4 Hapa
Projekti Arduino DHT22 Sensori dhe Lagështia e Tokës Me Menu: Përshëndetje djema Sot unë po ju prezantoj projektin tim të dytë mbi udhëzimet. Ky projekt paraqet përzierjen e projektit tim të parë në të cilin kam përdorur sensorin e lagështisë së tokës dhe sensorin DHT22 i cili përdoret për matjen e temperaturës dhe lagështisë Me Ky projekt është
Automatizimi i një serë me LoRa! (Pjesa 1) -- Sensorë (Temperatura, Lagështia, Lagështia e Tokës): 5 hapa
Automatizimi i një serë me LoRa! (Pjesa 1) || Sensorët (Temperatura, Lagështia, Lagështia e Tokës): Në këtë projekt do t'ju tregoj se si automatizova një serë. Kjo do të thotë që unë do t'ju tregoj se si e kam ndërtuar serën dhe si e kam lidhur elektronikën e energjisë dhe automatizimit. Gjithashtu do t'ju tregoj se si të programoni një bord Arduino që përdor L