Tartalomjegyzék:
- Kellékek
- 1. lépés: A hardver előkészítése
- 2. lépés: A Cloud4RPi telepítése
- 3. lépés: Az érzékelő csatlakoztatása
- 4. lépés: Az érzékelő leolvasása a felhőbe
- 5. lépés: Táblázatok és riasztások
Videó: Páratartalom a felhőben: 5 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:40
Közeleg a nyár, és azoknak, akiknek nincs légkondicionálójuk, fel kell készülniük a beltéri légkör manuális szabályozására. Ebben a bejegyzésben leírom a modern módszert az emberi kényelem szempontjából legfontosabb paraméterek mérésére: hőmérséklet és páratartalom. Ezeket az összegyűjtött adatokat a felhőbe küldik és ott feldolgozzák.
Kellékek
Raspberry Pi táblát és DHT22 érzékelőt használok. Ugyanezt megteheti minden olyan számítógépen, amely rendelkezik Internet, GPIO és Python rendszerekkel. Az olcsóbb DHT11 érzékelő is jól működik.
1. lépés: A hardver előkészítése
Kezdjük a legelején, mivel nem sokáig használtam a Raspberry Pi -t.
Szükségünk lesz:
- Raspberry Pi tábla (vagy más IoT-orientált platform).
- SD vagy microSD kártya (platformtól függően).
- 5V/1A mikro-USB-n keresztül. LAN-kábel, amely biztosítja az internetkapcsolatot.
- HDMI -kijelző, RCA -kijelző vagy UART -port (az SSH engedélyezéséhez).
Az első lépés a Raspbian letöltése. A Lite verziót választottam, mivel SSH -t fogok használni kijelző helyett.
A dolgok megváltoztak, mióta utoljára tettem: most van egy nagyszerű égető szoftver, az Etcher, amely tökéletesen működik, és lenyűgöző dizájnnal rendelkezik.
Miután a képégetés befejeződött, behelyeztem az SD -kártyát a Pi -be, bedugtam a LAN- és a tápkábeleket, majd egy idő után az útválasztóm regisztrálta az új eszközt.
Nagy! Folytassuk, és SSH bele.
A biztonság rendben van, tetszik, de ez egy kicsit megnehezíti a dolgokat. UART-USB adaptert fogok használni a héj eléréséhez és az SSH engedélyezéséhez…
A kijelző használata az UART helyett sokkal egyszerűbb.
Újraindítás után végre bent vagyok.
Először is frissítsük:
sudo apt update && sudo apt upgrade -y
Most csatlakoztassuk ezt a friss eszközt a felhőhöz.
2. lépés: A Cloud4RPi telepítése
Úgy döntöttem, hogy kipróbálom a Cloud4RPi nevű felhőplatformot, amelyet az IoT -hez terveztek.
A dokumentumok szerint a következő csomagokra van szükségünk a futtatáshoz:
sudo apt install git python3 python3 -pip -y
Az ügyfélkönyvtár egyetlen parancsban telepíthető:
sudo pip3 telepítse a cloud4rpi -t
Most szükségünk van egy mintakódra.
git klón https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python && cd cloud4rpi-raspberrypi-python
A futtatható parancsfájl a control.py.
Szükségünk van egy tokenre, amely lehetővé teszi, hogy a Cloud4RPi összekapcsolja az eszközöket a fiókokkal. Ennek megszerzéséhez hozzon létre egy fiókot a cloud4rpi.io webhelyen, és nyomja meg az Új eszköz gombot ezen az oldalon. Cserélje ki a control.py fájlban található _YOUR_DEVICE_TOKEN_ karakterláncot az eszköz jogkivonatával, és mentse a fájlt. Most készen állunk az első indításra.
sudo python3 control.py
Nyissa meg az eszköz oldalt, és ellenőrizze, hogy ott vannak -e az adatok.
Most térjünk át a valós adatokhoz.
3. lépés: Az érzékelő csatlakoztatása
Szükségünk lesz:
- DHT22 vagy DHT11 páratartalom -érzékelő
- Felhúzó ellenállás (5-10 KΩ)
- Vezetékek
A DHT22 érzékelő egyszerre méri a hőmérsékletet és a páratartalmat. A kommunikációs protokoll nem szabványosított, ezért nem kell engedélyeznünk a raspi -configban - egy egyszerű GPIO pin több mint elég.
Az adatok megszerzéséhez az Adafruit nagyszerű könyvtárát fogom használni a DHT érzékelők számára, de előfordulhat, hogy nem működik úgy, ahogy van. Egyszer furcsa állandó késleltetést találtam a kódban, ami nem működött a hardveremnél, és két év után a lekérési kérésem még mindig függőben van. Megváltoztattam a tábla észlelési állandóit is, mert a BCM2835 -ös Raspberry Pi 1 készülékemet meglepő módon Raspberry Pi 3 -nak találták. Bárcsak igaz lenne … Ezért javaslom a villám használatát. Ha bármilyen problémája van vele, próbálja ki az eredeti tárolót, talán valakinek működik, de én nem tartozom közéjük.
git klón https://github.com/Himura2la/Adafruit_Python_DHT.gitcd Adafruit_Python_DHT
Mivel a könyvtár C nyelven íródott, fordítást igényel, ezért szüksége van a build-essential és a python-dev csomagokra.
sudo apt install build-essential python-dev -ysudo python setup.py install
A csomagok telepítése közben csatlakoztassa a DHT22 -t a képen látható módon.
És teszteld:
cd ~ python -c "importálja az Adafruit_DHT -t d -ként; print d.read_retry (d. DHT22, 4)"
Ha valami hasonlót lát (39.20000076293945, 22.600000381469727), akkor tudnia kell, hogy ez a páratartalom százalékban és a Celsius -fokban mért hőmérséklet.
Most pedig állítsunk össze mindent!
4. lépés: Az érzékelő leolvasása a felhőbe
A control.py -t használom alapul, és hozzáadom a DHT22 interakciót.
cp cloud4rpi-raspberrypi-python/control.py./cloud_dht22.pycp cloud4rpi-raspberrypi-python/rpi.py./rpi.pyvi cloud_dht22.py
Távolítsa el a mintakódot, mint a fenti képen.
Mivel a DHT22 egy hívásban visszaadja a hőmérsékletet és a páratartalmat, globálisan tárolom őket, és csak egyszer frissítem egy kérésben, feltéve, hogy a késés több mint 10 másodperc. Tekintsük a következő kódot, amely a DHT22 adatokat szerezi:
import Adafruit_DHT
temp, hum = Nincs, nincs
last_update = time.time () - 20
def update_data ():
globális 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 () visszatérési kör (temp, 2), ha a temp nem más Nincs def
Illessze be ezt a kódot a meglévő importálás után, és szerkessze a változók részt úgy, hogy az az új funkciókat használja:
variables = {'DHT22 Temp': {'type': 'numeric', 'bind': get_t}, 'DHT22 Nedvesség': {'type': 'numeric', 'bind': get_h}, 'CPU Temp': {'type': 'numeric', 'bind': cpu_temp}}
Ha úgy találja, hogy a manipulációk zavaróak, vegye le a fájl végleges verzióját. Nyomja meg a piros gombot az adatátvitel elindításához:
Ezután ellenőrizheti az eszköz oldalát.
python3 cloud_dht22.py
Ezután ellenőrizheti az eszköz oldalát.
Hagyhatja úgy, ahogy van, de én inkább szolgáltatást tartok mindennek. Ez biztosítja, hogy a szkript mindig fut. Szolgáltatás létrehozása a cloud4rpi-raspberrypi-python könyvtárban már található teljesen automatizált szkripttel:
service_install.sh cloud_dht22.py
A szolgáltatás elindítása:
sudo service cloud4rpi indítása
És ellenőrizze:
pi@raspberrypi: ~ $ sudo service cloud4rpi állapot -l ● cloud4rpi.service -Cloud4RPi démon Betöltve: betöltve (/lib/systemd/system/cloud4rpi.service; engedélyezve) Aktív: aktív (fut) 2017-05-17 20 óta: 22: 48 UTC; 1 perccel ezelőtt Fő PID: 560 (python) CGroup: /system.slice/cloud4rpi.service └─560/usr/bin/python /home/pi/cloud_dht22.py
Május 17. 20:22:51 raspberrypi python [560]: iot-hub/messages közzététele: {'type': 'config', 'ts': '2017-05-17T20… y'}]}
Május 17. 20:22:53 raspberrypi python [560]: iot-hub/messages közzététele: {'type': 'data', 'ts': '2017-05-17T20: 2… 40'}} május 17 20: 22:53 raspberrypi python [560]: iot-hub/messages közzététele: {'type': 'system', 'ts': '2017-05-17T20….4'}}
Ha minden a várt módon működik, folytathatjuk a Cloud4RPi platform képességeit az adatokkal való manipulációhoz.
5. lépés: Táblázatok és riasztások
Először is ábrázoljuk a változókat, hogy lássuk, hogyan változnak. Ezt úgy teheti meg, hogy hozzáad egy új Vezérlőpultot, és beteszi a szükséges diagramokat.
Egy másik dolog, amit itt tehetünk, az a riasztás beállítása. Ez a funkció lehetővé teszi a változó biztonságos tartományának beállítását. Amint a tartomány túllépi, e -mail értesítést küld. A Vezérlőpult szerkesztési oldalán válthat a Riasztások menüpontra, és beállíthat egyet.
Rögtön ezután a szobámban minden észrevehető ok nélkül gyorsan csökkent a páratartalom, és hamarosan riasztás következett.
A Cloud4RPi -t ingyenesen használhatja minden olyan hardverrel, amely képes a Python futtatására. Ami engem illet, most már mindig tudom, hogy mikor kell bekapcsolni a légnedvesítőt, és akár a Cloud4RPi -n keresztül távirányító reléhez is csatlakoztathatom. Fel vagyok készülve a melegre! Isten hozott, nyár!
A Cloud4RPi segítségével valós időben vezérelheti Raspberry Pi és más IoT eszközeit. Látogassa meg webhelyünket, és csatlakoztasson korlátlan számú eszközt ingyen.
Ajánlott:
Hőmérséklet, páratartalom monitor - Arduino Mega + Ethernet W5100: 5 lépés
Hőmérséklet, páratartalom monitor - Arduino Mega + Ethernet W5100: 1. modul - FLAT - hardver: Arduino Mega 2560 Wiznet W5100 Ethernet pajzs 8x DS18B20 hőmérséklet -érzékelő OneWire buszon - 4 OneWire buszra (2,4,1,1) 2x digitális hőmérsékletre osztva és páratartalom érzékelő DHT22 (AM2302) 1x hőmérséklet és páratartalom
Könnyű, nagyon alacsony teljesítményű BLE az Arduino 2. részében - Hőmérséklet/páratartalom monitor - Rev 3: 7 lépés
Könnyű, nagyon alacsony teljesítményű BLE az Arduino 2. részében - Hőmérséklet-/páratartalom -figyelő - 3. javítás: Frissítés: 2020. november 23. - A 2 x AAA elem első cseréje 2019. január 15. óta, azaz 22 hónap 2xAAA alkáli esetén Frissítés: 2019. április 7. - 3. verzió lp_BLE_TempHumidity, hozzáadja a dátum/idő grafikonokat a pfodApp V3.0.362+használatával, és az automatikus fojtószelepet
NodeMCU Lua Olcsó 6 $ kártya MicroPython hőmérséklet- és páratartalom -naplózással, Wifi és mobil statisztika: 4 lépés
NodeMCU Lua Olcsó 6 dolláros tábla MicroPython hőmérséklet- és páratartalom -naplózással, Wifi és mobil statisztikák: Ez alapvetően felhőjárás -állomás, ellenőrizheti a telefonon lévő adatokat, vagy használhat néhány telefont élő kijelzőként , a szobában, üvegházban, laborban, hűtőtérben vagy más helyeken
ESP32 adatok közzététele NTP időbélyeggel az IoT felhőben: 5 lépés
Hogyan lehet közzétenni az ESP32 adatokat NTP időbélyeggel az IoT Cloud -ban: Sok alkalmazásban a felhasználóknak el kell küldeniük adataikat a hasznos terhelésben küldendő értékek helyi időbélyegzőjével együtt az AskSensors IoT felhőbe. Az időbélyeg formátuma UNIX Epoch time: a január óta eltelt ezredmásodpercek száma
Az Omnik Inverter ki van kapcsolva, felhőben és az MQTT -n: 3 lépés (képekkel)
Az Omnik inverter ki van kapcsolva A felhő és a My MQTT -n: Van egy napelemes telepítésem Omnik karakterlánc -invertert használva. Az Omnik a PV -inverterek kínai gyártója, és rendkívül hatékony eszközöket gyártanak. Opcionálisan telepíthet egy WiFi modult, hogy "csatlakoztatva legyen". Nagyon együtt vagyok