INHOUDSOPGAWE:
- Voorrade
- Stap 1: Berei hardeware voor
- Stap 2: Installeer Cloud4RPi
- Stap 3: Koppel die sensor
- Stap 4: Stuur sensorlesings na die wolk
- Stap 5: kaarte en alarms
Video: Humiditeit in die wolk: 5 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:25
Die somer kom, en diegene sonder 'n lugversorger moet voorbereid wees om die atmosfeer binnenshuis handmatig te beheer. In hierdie pos beskryf ek die moderne manier om die belangrikste parameters vir menslike gemak te meet: temperatuur en humiditeit. Hierdie versamelde data word na die wolk gestuur en daar verwerk.
Voorrade
Ek gebruik 'n Raspberry Pi -bord en die DHT22 -sensor. U kan dieselfde doen op elke rekenaar met die internet, GPIO en Python. Die goedkoper DHT11 -sensor werk ook goed.
Stap 1: Berei hardeware voor
Laat ons van die begin af begin, aangesien ek my Raspberry Pi lanklaas gebruik het.
Ons benodig:
- Framboos Pi-bord (of ander IoT-georiënteerde platform).
- SD- of microSD -kaart (afhangende van die platform).
- 5V/1A via mikro-USB. LAN-kabel, wat die internetverbinding bied.
- HDMI -skerm, RCA -skerm of UART -poort (om SSH moontlik te maak).
Die heel eerste stap is om Raspbian af te laai. Ek het die Lite -weergawe gekies, aangesien ek SSH gaan gebruik in plaas van vertoon.
Dinge het verander sedert die laaste keer dat ek dit gedoen het: nou is daar 'n wonderlike sagteware genaamd Etcher, wat perfek werk en 'n pragtige ontwerp het.
Nadat die beeldverbranding voltooi is, het ek die SD -kaart in my Pi geplaas, die LAN- en kragkabels ingeprop, en na 'n rukkie het my router die nuwe toestel geregistreer.
Puik! Kom ons gaan voort en SSH daarin.
Beveiliging is goed, ek hou daarvan, maar dit maak dinge 'n bietjie moeiliker. Ek sal UART-USB-adapter gebruik om toegang tot die dop te verkry en SSH moontlik te maak …
Dit is baie makliker om 'n skerm in plaas van UART te gebruik.
Nadat ek weer begin het, is ek uiteindelik in.
Eerstens, laat ons opdateer:
sudo apt update && sudo apt upgrade -y
Laat ons nou hierdie nuwe toestel aan die wolk koppel.
Stap 2: Installeer Cloud4RPi
Ek het besluit om die wolkplatform genaamd Cloud4RPi te probeer, wat ontwerp is vir IoT.
Volgens die dokumente benodig ons die volgende pakkette om dit aan die gang te kry:
sudo apt installeer git python3 python3 -pip -y
Die kliëntbiblioteek kan in 'n enkele opdrag geïnstalleer word:
sudo pip3 installeer cloud4rpi
Nou benodig ons 'n voorbeeldkode.
git-kloon https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python && cd cloud4rpi-raspberrypi-python
Die uitvoerbare script is control.py.
Ons benodig 'n teken, waarmee Cloud4RPi die toestelle met die rekeninge kan koppel. Om een te kry, skep 'n rekening op cloud4rpi.io en druk die knoppie Nuwe toestel op hierdie bladsy. Vervang die _YOUR_DEVICE_TOKEN_ -string in die control.py -lêer met die token van u toestel en stoor die lêer. Nou is ons gereed vir die eerste bekendstelling.
sudo python3 control.py
Maak die toestelbladsy oop en kyk of die data daar is.
Kom ons gaan nou na regte data.
Stap 3: Koppel die sensor
Ons benodig:
- DHT22 of DHT11 humiditeitsensor
- Oprolweerstand (5-10 KΩ)
- Drade Die
DHT22 sensor meet temperatuur en humiditeit gelyktydig. Die kommunikasieprotokol is nie gestandaardiseer nie, dus hoef ons dit nie in raspi -config te aktiveer nie - 'n eenvoudige GPIO -pen is meer as genoeg.
Om die data te bekom, gebruik ek die uitstekende biblioteek van Adafruit vir DHT -sensors, maar dit werk moontlik nie soos dit is nie. Ek het een keer 'n vreemde konstante vertraging in die kode gevind, wat nie vir my hardeware werk nie, en na twee jaar is my trekversoek nog afgehandel. Ek het ook die bordopsporingskonstante verander omdat my Raspberry Pi 1 met BCM2835 verbasend opgespoor is as Raspberry Pi 3. Ek wens dit was waar … Daarom beveel ek aan om my vurk te gebruik. As u probleme daarmee ondervind, probeer die oorspronklike bewaarplek, miskien werk dit vir iemand, maar ek is nie een daarvan nie.
git -kloon https://github.com/Himura2la/Adafruit_Python_DHT.gitcd Adafruit_Python_DHT
Aangesien die biblioteek in C geskryf is, is dit nodig om dit op te stel, dus benodig u die build-essential en python-dev pakkette.
sudo apt install build-essential python-dev -ysudo python setup.py installeer
Verbind die DHT22 terwyl die pakkette geïnstalleer word, soos op die foto getoon.
En toets dit:
cd ~ python -c "import Adafruit_DHT as d; print d.read_retry (d. DHT22, 4)"
As u iets soos (39.20000076293945, 22.600000381469727) sien, moet u weet dat dit die humiditeit in persentasie en temperatuur in Celsius is.
Laat ons nou alles bymekaarmaak!
Stap 4: Stuur sensorlesings na die wolk
Ek sal die control.py as basis gebruik en die DHT22 -interaksie daarby voeg.
cp cloud4rpi-raspberrypi-python/control.py./cloud_dht22.pycp cloud4rpi-raspberrypi-python/rpi.py./rpi.pyvi cloud_dht22.py
Verwyder die voorbeeldkode soos in die prent hierbo.
Aangesien DHT22 temperatuur en humiditeit in een oproep terugbring, gaan ek dit wêreldwyd stoor en slegs een keer in 'n versoek bywerk, as die vertraging tussen hulle meer as 10 sekondes is. Oorweeg die volgende kode wat die DHT22 -data verkry:
voer Adafruit_DHT in
temp, neurie = Geen, Geen
last_update = time.time () - 20
def update_data ():
globale 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 () terugkeer ronde (temp, 2) as temp is nie Geen ander Geen def get_h (): update_data () terugkeer (hum, 2) as neurie is nie anders nie Geen
Voeg hierdie kode na die bestaande invoer in en wysig die afdeling veranderlikes sodat dit die nuwe funksies gebruik:
veranderlikes = {'DHT22 Temp': {'type': 'numeries', 'bind': get_t}, 'DHT22 Humidity': {'type': 'numeries', 'bind': get_h}, 'CPU Temp': {'type': 'numeries', 'bind': cpu_temp}}
As u manipulasies verwarrend vind, gryp die finale weergawe van hierdie lêer deur op die rooi knoppie te druk om die data -oordrag te begin:
Dan kan u die apparaatbladsy nagaan.
python3 cloud_dht22.py
Dan kan u die apparaatbladsy nagaan.
U kan dit net so laat, maar ek verkies om 'n diens vir alles te hê. Dit verseker dat die script altyd werk. Skep 'n diens met die volledig outomatiese script wat u reeds in die cloud4rpi-raspberrypi-python-gids het:
service_install.sh cloud_dht22.py
Begin van die diens:
sudo -diens cloud4rpi begin
En kyk daarna:
pi@raspberrypi: ~ $ sudo -diens cloud4rpi status -l ● cloud4rpi.service -Cloud4RPi -demoon gelaai: gelaai (/lib/systemd/system/cloud4rpi.service; geaktiveer) Aktief: aktief (loop) sedert Wo 2017-05-17 20: 22: 48 UTC; 1 min gelede Hoof -PID: 560 (python) CGroep: /system.slice/cloud4rpi.service └─560/usr/bin/python /home/pi/cloud_dht22.py
17 Mei 20:22:51 raspberrypi python [560]: Publisering van iot-hub/boodskappe: {'type': 'config', 'ts': '2017-05-17T20… y'}]}}
17 Mei 20:22:53 raspberrypi python [560]: Publisering van iot-hub/boodskappe: {'type': 'data', 'ts': '2017-05-17T20: 2… 40'}} 17 Mei 20: 22:53 raspberrypi python [560]: Publisering van iot-hub/boodskappe: {'type': 'stelsel', 'ts': '2017-05-17T20….4'}}
As alles werk soos verwag, kan ons voortgaan met die vermoëns van die Cloud4RPi -platform om met die data te manipuleer.
Stap 5: kaarte en alarms
Laat ons eerstens die veranderlikes plot om te sien hoe hulle verander. Dit kan gedoen word deur 'n nuwe bedieningspaneel by te voeg en die vereiste kaarte daarin te plaas.
Nog iets wat ons hier kan doen, is om 'n waarskuwing op te stel. Met hierdie funksie kan u die veilige reeks vir 'n veranderlike opstel. Sodra die reeks oorskry is, stuur dit 'n e -pos kennisgewing. Op die bewerkingsbladsy van die bedieningspaneel kan u oorskakel na waarskuwings en een opstel.
Net daarna het die humiditeit in my kamer vinnig begin afneem sonder om 'n merkbare rede daarvoor te hê, en die alarm het vinnig gevolg.
U kan Cloud4RPi gratis gebruik met enige hardeware wat Python kan uitvoer, en ek weet nou altyd wanneer ek die lugbevochtiger moet aanskakel, en ek kan dit selfs verbind met 'n relais vir afstandbeheer via Cloud4RPi. Ek is voorbereid op die hitte! Welkom somer!
Met Cloud4RPi kan u u Raspberry Pi en ander IoT -toestelle op afstand in real -time beheer. Besoek ons webwerf en maak gratis onbeperkte toestelle aan.
Aanbeveel:
Hoe om Raspberry Pi aan die wolk te koppel met behulp van Node.js: 7 stappe
Hoe om Raspberry Pi aan die wolk te koppel met behulp van Node.js: Hierdie handleiding is handig vir almal wat 'n Raspberry Pi aan die wolk wil koppel, veral aan die AskSensors IoT -platform, met behulp van Node.js. Het u nie 'n Raspberry Pi nie? As u tans nie 'n Raspberry Pi besit nie, sal ek u aanbeveel om 'n Raspberry te koop
DHT -monitering van temperatuur en humiditeit met behulp van die ESP8266 en die AskSensors IoT -platform: 8 stappe
DHT -monitering van temperatuur en humiditeit met behulp van die ESP8266 en die AskSensors IoT -platform: In 'n vorige instruksie het ek 'n stap -vir -stap -gids aangebied om aan die gang te kom met die ESP8266 -nodeMCU en die AskSensors IoT -platform. In hierdie tutoriaal verbind ek 'n DHT11 -sensor na die nodus MCU. Die DHT11 is 'n algemeen gebruikte temperatuur en humidi
Temperatuur- en humiditeitsmonitering met behulp van die ESP-01 & DHT en die AskSensors-wolk: 8 stappe
Temperatuur- en humiditeitsmonitering met behulp van die ESP-01 & DHT en die AskSensors-wolk: in hierdie instruksies gaan ons leer hoe om die temperatuur- en humiditeitsmetings te monitor met behulp van die IOT-MCU/ESP-01-DHT11-bord en die AskSensors IoT-platform .Ek kies die IOT-MCU ESP-01-DHT11-module vir hierdie toepassing omdat dit
Hoe om data na die wolk te stuur met Arduino Ethernet: 8 stappe
Hoe om data na die wolk te stuur met Arduino Ethernet: Hierdie instruksies wys hoe u u data met behulp van Arduino Ethernet Shield op AskSensors IoT -platform kan publiseer. Met die Ethernet Shield kan u Arduino maklik aan die wolk gekoppel word, data stuur en ontvang met 'n internetverbinding. Wat ons
Instruksies vir die voltooiing van die opmaak van die baanskyfontwerp vir die opheffing/verlaging van die middelste voetsteun op motorwielstoele: 9 stappe (met foto's)
Instruksies vir die voltooiing van die opmaak van die baanskyfontwerp vir die opheffing/verlaging van die middelste voetsteun op motorwielstoele: die middelste voetsteunhysers moet goed onder die sitplek geberg word en laer om te ontplooi. 'N Meganisme vir die onafhanklike werking van die opberging en ontplooiing van voetsteun is nie ingesluit by rolstoele op die mark nie, en PWC -gebruikers het die behoefte uitgespreek