Sisukord:

Niiskus pilves: 5 sammu
Niiskus pilves: 5 sammu

Video: Niiskus pilves: 5 sammu

Video: Niiskus pilves: 5 sammu
Video: Штукатурка стен - самое полное видео! Переделка хрущевки от А до Я. #5 2024, Juuli
Anonim
Niiskus pilves
Niiskus pilves

Suvi on tulemas ja need, kellel pole konditsioneeri, peaksid olema valmis siseruumides käsitsi käsitsi juhtima. Selles postituses kirjeldan tänapäevast viisi inimese mugavuse jaoks kõige olulisemate parameetrite mõõtmiseks: temperatuur ja niiskus. Need kogutud andmed saadetakse pilve ja töödeldakse seal.

Tarvikud

Ma kasutan Raspberry Pi plaati ja DHT22 andurit. Sama saate teha igas arvutis, kus on Internet, GPIO ja Python. Odavam DHT11 andur töötab ka hästi.

Samm: riistvara ettevalmistamine

Riistvara ettevalmistamine
Riistvara ettevalmistamine
Riistvara ettevalmistamine
Riistvara ettevalmistamine
Riistvara ettevalmistamine
Riistvara ettevalmistamine
Riistvara ettevalmistamine
Riistvara ettevalmistamine

Alustame algusest, kuna ma ei kasutanud oma Raspberry Pi -d päris pikka aega.

Meil on vaja:

  • Raspberry Pi plaat (või muu asjade internetile orienteeritud platvorm).
  • SD- või microSD -kaart (olenevalt platvormist).
  • 5V/1A mikro-USB kaudu. LAN-kaabel, mis tagab Interneti-ühenduse.
  • HDMI -ekraan, RCA -ekraan või UART -port (SSH lubamiseks).

Esimene samm on Raspbiani allalaadimine. Olen valinud lihtsa versiooni, kuna kasutan ekraani asemel SSH -d.

Alates eelmisest korrast, kui ma seda tegin, on asjad muutunud: nüüd on olemas suurepärane põletustarkvara nimega Etcher, mis töötab suurepäraselt ja on uimastatava disainiga.

Pärast pildi kirjutamise lõpetamist sisestasin SD -kaardi oma Pi -sse, ühendasin LAN- ja toitekaablid ning mõne aja pärast registreeris mu ruuter uue seadme.

Suurepärane! Jätkame ja SSH sellesse.

Turvalisus on korras, mulle meeldib, aga see teeb asja natuke raskemaks. Ma kasutan kestale juurdepääsemiseks ja SSH lubamiseks UART-USB-adapterit …

Ekraani kasutamine UART asemel muudab selle palju lihtsamaks.

Pärast taaskäivitamist olen lõpuks kohal.

Kõigepealt värskendame:

sudo apt update && sudo apt upgrade -y

Nüüd ühendame selle värske seadme pilvega.

Samm: Cloud4RPi installimine

Cloud4RPi installimine
Cloud4RPi installimine

Otsustasin proovida pilveplatvormi nimega Cloud4RPi, mis on mõeldud IoT jaoks.

Dokumentide kohaselt vajame selle käivitamiseks järgmisi pakette:

sudo apt install git python3 python3 -pip -y

Klienditeegi saab installida ühe käsuga:

sudo pip3 installige cloud4rpi

Nüüd vajame näidiskoodi.

git kloon https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python && cd cloud4rpi-raspberrypi-python

Käivitatav skript on control.py.

Vajame märki, mis võimaldab Cloud4RPi -l seadmeid kontodega siduda. Selle saamiseks looge konto aadressil cloud4rpi.io ja klõpsake sellel lehel nuppu Uus seade. Asendage string _YOUR_DEVICE_TOKEN_ failis control.py oma seadme märgiga ja salvestage fail. Nüüd oleme esimeseks käivitamiseks valmis.

sudo python3 control.py

Avage seadme leht ja kontrollige, kas andmed on olemas.

Liigume nüüd reaalse maailma andmete juurde.

Samm: anduri ühendamine

Anduri ühendamine
Anduri ühendamine

Meil on vaja:

  • DHT22 või DHT11 niiskusandur
  • Tõmbetakistus (5-10 KΩ)
  • Juhtmed

DHT22 sensor mõõdab samaaegselt temperatuuri ja niiskust. Kommunikatsiooniprotokoll pole standardiseeritud, seega ei pea me seda raspi -config -is lubama - lihtsast GPIO -nööbist piisab.

Andmete hankimiseks kasutan DHT -andurite jaoks Adafruit'i suurepärast raamatukogu, kuid see ei pruugi nii töötada. Leidsin kord koodist kummalise pideva viivituse, mis minu riistvara puhul ei töötanud ja kahe aasta pärast on minu tõmbetaotlus endiselt pooleli. Olen muutnud ka plaadi tuvastuskonstante, sest minu Raspberry Pi 1 koos BCM2835 -ga tuvastati üllatuslikult kui Raspberry Pi 3. Soovin, et see oleks tõsi … Seega soovitan kasutada oma kahvlit. Kui teil on sellega probleeme, proovige esialgset hoidlat, võib -olla see sobib kellelegi, kuid ma pole üks neist.

git kloon https://github.com/Himura2la/Adafruit_Python_DHT.gitcd Adafruit_Python_DHT

Kuna raamatukogu on kirjutatud C-keeles, nõuab see kompileerimist, seega vajate pakette build-essential ja python-dev.

sudo apt install build-essential python-dev -ysudo python setup.py install

Pakettide installimise ajal ühendage DHT22, nagu pildil näidatud.

Ja testige seda:

cd ~ python -c "import Adafruit_DHT kui d; print d.read_retry (d. DHT22, 4)"

Kui näete midagi sellist (39.20000076293945, 22.600000381469727), peaksite teadma, et see on niiskus protsentides ja temperatuur Celsiuse järgi.

Nüüd paneme kõik kokku!

4. samm: anduri näitude saatmine pilve

Andurite näitude saatmine pilve
Andurite näitude saatmine pilve
Andurite näitude saatmine pilve
Andurite näitude saatmine pilve

Ma kasutan control.py alusena ja lisan sinna DHT22 interaktsiooni.

cp cloud4rpi-raspberrypi-python/control.py./cloud_dht22.pycp cloud4rpi-raspberrypi-python/rpi.py./rpi.pyvi cloud_dht22.py

Eemaldage näidiskood nagu ülaltoodud pildil.

Kuna DHT22 tagastab ühe kõnega nii temperatuuri kui ka niiskuse, salvestan need globaalselt ja värskendan päringus ainult üks kord, eeldades, et nende vaheline viivitus on üle 10 sekundi. Mõelge järgmisele koodile, mis hangib DHT22 andmed:

import Adafruit_DHT

temp, hum = puudub, puudub

last_update = time.time () - 20

def update_data ():

globaalne 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 () tagasivoor (temp, 2), kui temp ei ole Mitte ükski teine Mitte ükski def get_h (): update_data () tagasivoor (hum, 2) kui hum ei ole Mitte ükski teine Pole

Sisestage see kood pärast olemasolevat importimist ja muutke muutujate jaotist nii, et see kasutaks uusi funktsioone:

variables = {'DHT22 temp': {'type': 'numbriline', 'bind': get_t}, 'DHT22 niiskus': {'type': 'numbriline', 'bind': get_h}, 'CPU temp': {'type': 'numbriline', 'sidumine': cpu_temp}}

Kui leiate, et manipuleerimine on segane, haarake selle faili lõplik versioon. Andmeedastuse alustamiseks vajutage punast nuppu:

Seejärel saate seadme lehte kontrollida.

python3 cloud_dht22.py

Seejärel saate seadme lehte kontrollida.

Võite jätta selle nii, nagu see on, kuid ma eelistan, et mul oleks teenus kõige jaoks. See tagab, et skript töötab alati. Teenuse loomine täielikult automatiseeritud skriptiga, mis teil juba on kataloogis cloud4rpi-raspberrypi-python:

service_install.sh cloud_dht22.py

Teenuse käivitamine:

sudo teenuse cloud4rpi käivitamine

Ja kontrollige seda:

pi@raspberrypi: ~ $ sudo teenus cloud4rpi olek -l ● cloud4rpi.service -Cloud4RPi deemon Laetud: laaditud (/lib/systemd/system/cloud4rpi.service; lubatud) Aktiivne: aktiivne (töötab) alates 17.05.2017 20: 22: 48 UTC; 1 minut tagasi Peamine PID: 560 (python) CGroup: /system.slice/cloud4rpi.service └─560/usr/bin/python /home/pi/cloud_dht22.py

17. mai 20:22:51 raspberrypi python [560]: iot-hub/messages avaldamine: {'type': 'config', 'ts': '2017-05-17T20… y'}]}

17. mai 20:22:53 raspberrypi python [560]: iot-hub/messages avaldamine: {'type': 'data', 'ts': '2017-05-17T20: 2… 40'}} 17. mai 20: 22:53 raspberrypi python [560]: iot-hub/sõnumite avaldamine: {'type': 'system', 'ts': '2017-05-17T20….4'}}

Kui kõik töötab ootuspäraselt, saame jätkata ja kasutada andmetega manipuleerimiseks Cloud4RPi platvormi võimalusi.

Samm: graafikud ja alarmid

Graafikud ja äratused
Graafikud ja äratused
Graafikud ja äratused
Graafikud ja äratused
Graafikud ja äratused
Graafikud ja äratused

Esiteks joonistame muutujad, et näha, kuidas need muutuvad. Seda saab teha uue juhtpaneeli lisamisega ja vajalike diagrammide lisamisega.

Teine asi, mida saame siin teha, on hoiatuse seadmine. See funktsioon võimaldab teil konfigureerida muutuja ohutu vahemiku. Niipea kui vahemik on ületatud, saadab see e -kirjaga teatise. Juhtpaneeli redigeerimise lehel saate lülituda märguannetele ja need seadistada.

Kohe pärast seda hakkas minu toas niiskus ilma märgatava põhjuseta kiiresti langema ja peagi järgnes häire.

Saate Cloud4RPi tasuta kasutada mis tahes riistvaraga, mis suudab Pythoni käivitada. Minu jaoks tean nüüd alati, millal õhuniisutaja sisse lülitada, ja saan selle isegi Cloud4RPi kaudu kaugjuhtimispuldiga ühendada. Olen kuumuseks valmis! Tere suvi!

Cloud4RPi abil saate oma Raspberry Pi ja muid IoT -seadmeid reaalajas kaugjuhtida. Külastage meie saiti ja ühendage tasuta piiramatu arv seadmeid.

Soovitan: