Obsah:
2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
Teplota a vlhkost jsou životně důležité údaje v dnešním průmyslovém světě. Monitorování environmentálních dat pro serverovny, komerční mrazničky a výrobní linky je nezbytné pro bezproblémový chod věcí. Existuje spousta řešení od základních až po komplexní a může se zdát zdrcující, co vaše podnikání potřebuje a kde začít.
Projdeme se, jak monitorovat teplotu pomocí Raspberry Pi a různých teplotních senzorů, které můžete použít. Je to dobré místo, kde začít, protože tato řešení jsou levná, snadno proveditelná a poskytují vám základ, ze kterého můžete vycházet při dalším monitorování životního prostředí.
Zásoby
- Raspberry Pi (3, 4 nebo Zero WH)
- Snímač teploty (DHT2, DSB18B20, BME280 nebo Sense HAT)
- 6 "40kolíkový prodlužovací kabel IDE s konektorem IDE (řešení Sense HAT)
- Rezistor 10K, Breadboard, 40kolíková rozpojovací deska + plochý kabel, vodiče (pro řešení DSB18B20)
Krok 1: Raspberry Pi
Raspberry Pi je levný jednodeskový počítač, který vám umožní připojit se k teplotnímu senzoru a streamovat data do softwaru pro vizualizaci dat. Raspberry Pi začínal jako učební nástroj a vyvinul se do nástroje průmyslového pracoviště. Snadné použití a schopnost kódovat v Pythonu, nejrychleji rostoucím programovacím jazyce, je přimělo jít k řešení.
Budete chtít Raspberry Pi s integrovanou WiFi, což jsou libovolné modely 3, 4 a nulové W/WH. Mezi nimi si můžete vybrat na základě cen a funkcí. Zero W/WH je nejlevnější, ale pokud potřebujete více funkcí, můžete si vybrat mezi 3 a 4. Můžete si koupit pouze jeden Zero W/WH najednou kvůli omezením Raspberry Pi Foundation. Ať už si vyberete jakýkoli Pi, kupte si nabíječku, protože tak budete napájet Pi a SD kartu pomocí Raspbian, aby instalace operačního systému byla co nejjednodušší.
Mohou fungovat i další jednodeskové počítače, ale to je na jindy a další článek.
Krok 2: Senzory
Doporučujeme použít tři senzory, protože jsou levné, snadno se připojují a poskytují přesné hodnoty; DSB18B20, DHT22 a Raspberry Pi Sense HAT.
DHT22 - Tento snímač teploty a vlhkosti má teplotní přesnost +/- 0,5 C a rozsah vlhkosti od 0 do 100 procent. Připojení k Raspberry Pi je jednoduché a nevyžaduje žádné vytahovací odpory.
DSB18B20 - Tento teplotní senzor má digitální výstup, který dobře funguje s Raspberry Pi. Má tři vodiče a pro připojení vyžaduje prkénko a odpor.
BME280 - Tento senzor měří teplotu, vlhkost a barometrický tlak. Lze jej použít v SPI i I2C.
Sense HAT - Toto je doplněk pro Raspberry Pi, který má LED diody, senzory a malý joystick. Připojuje se přímo k GPIO na Raspberry Pi, ale pomocí plochého kabelu získáte přesnější údaje o teplotě.
Krok 3: Nastavení Raspberry Pi
Pokud nastavujete Raspberry Pi poprvé, budete si muset nainstalovat operační systém Raspbian a připojit Pi k WiFi. K připojení k Pi to bude vyžadovat monitor a klávesnici. Jakmile jej spustíte a připojíte k WiFI, váš Pi je připraven jít.
Krok 4: Počáteční stav účtu
Budete potřebovat někam poslat data, abyste si uchovali historický protokol a viděli datový proud v reálném čase, takže použijeme Počáteční stav. Přejděte na https://iot.app.initialstate.com a vytvořte si nový účet nebo se přihlaste ke svému stávajícímu účtu.
Dále musíme na váš Pi nainstalovat modul Počáteční stav Pythonu. Na příkazovém řádku (nezapomeňte nejprve zadat SSH do vašeho Pi) spusťte následující příkaz:
$ cd/home/pi/
$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash
Poté, co do příkazového řádku zadáte příkaz curl, uvidíte na obrazovce něco podobného následujícímu výstupu:
pi@raspberrypi ~
$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash Heslo: Začátek ISStreamer Python Snadná instalace! Instalace může trvat několik minut, dejte si kávu:) Ale nezapomeňte se vrátit, otázky budu mít později! Nalezeno easy_install: setuptools 1.1.6 Nalezeno pip: pip 1.5.6 z /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip major version: 1 pip minor version: 5 ISStreamer nalezen, aktualizace… Požadavek již aktuální: ISStreamer v /Library/Python/2.7/site-packages Čištění… Chcete automaticky získat ukázkový skript? [y/N] Kam chcete příklad uložit? [výchozí:./is_example.py] Vyberte prosím aplikaci, kterou používáte v počátečním stavu: 1. app.initialstate.com 2. [NOVINKA!] iot.app.initialstate.com Zadejte volbu 1 nebo 2: Zadejte iot.app.initialstate.com uživatelské jméno: Zadejte heslo iot.app.initialstate.com:
Po zobrazení výzvy k automatickému získání příkladu skriptu zadejte y. Tím se vytvoří testovací skript, který můžeme spustit, abychom zajistili, že budeme moci streamovat data do Počátečního stavu. Další výzva se zeptá, kam chcete uložit ukázkový soubor. Můžete buď zadat vlastní místní cestu, nebo stisknutím klávesy Enter přijmout výchozí umístění. Nakonec se vás zeptá, kterou aplikaci Počátečního stavu používáte. Pokud jste si nedávno vytvořili účet, vyberte možnost 2, zadejte své uživatelské jméno a heslo. Poté bude instalace dokončena.
Podívejme se na ukázkový skript, který byl vytvořen.
$ nano is_example.py
Na řádku 15 uvidíte řádek, který začíná streamer = Streamer (bucket_…. Tyto řádky vytvoří nový segment dat s názvem „Python Stream Example“a budou přidruženy k vašemu účtu. K tomuto přidružení dochází z důvodu access_key =”…” parametr na stejném řádku. Tato dlouhá řada písmen a číslic je váš přístupový klíč k počátečnímu stavu. Pokud ve webovém prohlížeči přejdete do účtu Počátečního stavu, klikněte vpravo nahoře na své uživatelské jméno a poté přejděte na „moje nastavení“, stejný přístupový klíč naleznete zde v části „Streamovací přístupové klíče“.
Pokaždé, když vytvoříte datový tok, tento přístupový klíč nasměruje tento datový tok na váš účet (klíč tedy nikomu nesdělujte).
Spusťte testovací skript, abyste se ujistili, že můžeme vytvořit datový proud na váš účet Počáteční stav. Spusťte následující:
$ python is_example.py
Vraťte se ve webovém prohlížeči na svůj účet Počáteční stav. Vlevo na poličce s protokolem se měl objevit nový datový segment s názvem „Příklad Python streamu“(možná budete muset stránku aktualizovat). Kliknutím na tento kbelík a poté kliknutím na ikonu Vlny zobrazíte testovací data
Pokud používáte Python 3, můžete nainstalovat modul počátečního stavu Streamer, který můžete nainstalovat pomocí následujícího příkazu:
pip3 nainstalujte ISStreamer
Nyní jsme připraveni nastavit teplotní senzor pomocí Pi pro přenos teploty na palubní desku.
Krok 5: Řešení DHT22
DHT22 bude mít tři piny - 5V, Gnd a data. Na DHT22 by měl být štítek s popisem napájení (např. „+“Nebo „5V“). Připojte to ke kolíku 2 (pravý horní kolík, 5 V) na Pi. Pin Gnd bude označen „-“nebo „Gnd“nebo něco podobného. Připojte to na pin 6 Gnd (dva piny pod 5V pin) na Pi. Zbývající pin na DHT22 je datový pin a bude označen „out“nebo „s“nebo „data“. Připojte to k jednomu z pinů GPIO na Pi, jako je GPIO4 (pin 7). Jakmile je toto zapojeno, zapněte Pi.
Nainstalujte modul Adafruit DHT Python na příkazový řádek, aby bylo čtení dat ze senzorů DHT22 velmi snadné:
$ sudo pip install Adafruit_DHT
S nainstalovaným operačním systémem společně s našimi dvěma moduly Pythonu pro čtení dat ze senzorů a odesílání dat do Počátečního stavu jsme připraveni napsat náš skript Python. Následující skript vytvoří/připojí se k datovému segmentu počátečního stavu, přečte data senzoru DHT22 a odešle je na řídicí panel v reálném čase. Vše, co musíte udělat, je upravit řádky 6–11.
import Adafruit_DHT
from ISStreamer. Streamer import Streamer import time# --------- User Settings --------- SENSOR_LOCATION_NAME = "Office" BUCKET_NAME = ": částečně_sunny: Pokojové teploty" BUCKET_KEY = "rt0129" ACCESS_KEY = „KLÍČ PŘÍSTUPOVÉHO STÁTU UMÍSTĚTE ZDE“MINUTES_BETWEEN_READS = 10METRIC_UNITS = False # --------------------------------- streamer = Streamer (bucket_name = BUCKET_NAME, bucket_key = BUCKET_KEY, access_key = ACCESS_KEY) while True: vlhkost, temp_c = Adafruit_DHT.read_retry (Adafruit_DHT. DHT22, 4) if METRIC_UNITS: streamer.log (SENSOR_LOC: temp_f = format (temp_c * 9.0 / 5.0 + 32.0, ".2f") streamer.log (SENSOR_LOCATION_NAME + "Teplota (F)", temp_f) vlhkost = formát (vlhkost, ".2f") streamer.log (SENSOR_LOCATION_NAME + "Vlhkost (%)", vlhkost) streamer.flush () time.sleep (60*MINUTES_BETWEEN_READS)
- Řádek 6 - Tato hodnota by měla být pro každý uzel/teplotní senzor jedinečná. Může to být název místnosti vašeho senzorového uzlu, fyzická poloha, jedinečný identifikátor nebo cokoli jiného. Jen se ujistěte, že je pro každý uzel jedinečný, abyste zajistili, že data z tohoto uzlu přejdou do vlastního datového proudu na vašem řídicím panelu.
- Řádek 7 - Toto je název datového segmentu. To lze kdykoli změnit v uživatelském rozhraní počátečního stavu.
- Řádek 8 - Toto je váš klíč kbelíku. Musí to být stejný klíč klíče pro každý uzel, který chcete zobrazit na stejném řídicím panelu.
- Řádek 9 - Toto je váš přístupový klíč k počátečnímu stavu účtu. Zkopírujte a vložte tento klíč z účtu Počáteční stav.
- Řádek 10 - Toto je doba mezi načtením senzoru. Podle toho změňte.
- Řádek 11 - Na řádku 11 můžete zadat metrické nebo imperiální jednotky.
Jakmile ve skriptu Pythonu na Pi nastavíte řádky 6–11, uložte a ukončete textový editor. Spusťte skript pomocí následujícího příkazu:
$ python tempsensor.py
Nyní budete mít odesílání dat na řídicí panel počátečního stavu. Přejděte do závěrečné části tohoto článku, kde najdete podrobnosti o přizpůsobení řídicího panelu.
Krok 6: Řešení DSB18B20
Plochý kabel se připojuje k pinům GPIO na Pi. DS18B20 má tři vodiče. Červený vodič se připojuje na 3,3 V. Modro/černý vodič se připojuje k zemi. Žlutý vodič se připojí k vytahovacímu rezistoru/kolíku 4. Jakmile je toto zapojeno, zapněte Pi.
Nejnovější verze Raspbian (jádro 3.18) vyžaduje přidání souboru /boot/config.txt, aby mohl Pi komunikovat s DS18B20. Chcete -li tento soubor upravit, spusťte následující:
$ sudo nano /boot/config.txt
Pokud následující řádek již v tomto souboru není (pokud ano, je pravděpodobně ve spodní části souboru), přidejte jej a soubor uložte.
dtoverlay = w1-gpio, gpiopin = 4
Změny se projeví až po restartování počítače Pi.
$ sudo restart
Pro spuštění rozhraní pro čtení teplotního senzoru musíme spustit dva příkazy. Přejděte na příkazovém řádku na vašem Pi nebo SSH do vašeho Pi. Zadejte následující příkazy:
$ sudo modprobe w1-gpio $ sudo modprobe w1-therm
Výstup vašeho teplotního senzoru se nyní zapisuje do souboru ve vašem Pi. Chcete -li najít tento soubor:
$ cd/sys/bus/w1/zařízení
V tomto adresáři bude podadresář začínající na „28-“. Za „28-“následuje sériové číslo vašeho senzoru. cd do tohoto adresáře. V tomto adresáři obsahuje soubor s názvem w1_slave výstup vašeho senzoru. Pomocí nano zobrazte obsah souboru. Jakmile do souboru vstoupíte, bude vypadat nějak takto:
a2 01 4b 46 7f ff 0e 10 d8: crc = d8 ANOa2 01 4b 46 7f ff 0e 10 d8 t = 26125
Číslo za „t =“je číslo, které chceme. Toto je teplota v 1/1000 stupních Celsia (ve výše uvedeném příkladu je teplota 26,125 C). Potřebujeme jednoduchý program, který přečte tento soubor a rozebere toto číslo. K tomu se dostaneme během chvilky.
Nyní je vše připraveno k zahájení streamování dat. Chcete -li otevřít textový editor, zadejte do příkazového řádku následující:
$ nano temperature.py
Zkopírujte a vložte níže uvedený kód do textového editoru.
import os
import glob import time from ISStreamer. Streamer import Streamerstreamer = Streamer (bucket_name = "Temperature Stream", bucket_key = "piot_temp_stream031815", access_key = "PUT_YOUR_ACCESS_KEY_HERE") os.system ('modprobe w1-gpio')obe.system -therm ') base_dir ='/sys/bus/w1/devices/'device_folder = glob.glob (base_dir + '28*') [0] device_file = device_folder + '/w1_slave' def read_temp_raw (): f = open (file_file, 'r') lines = f.readlines () f.close () return lines def read_temp (): lines = read_temp_raw () while lines [0].strip () [-3:]! = 'YES': time.sleep (0.2) lines = read_temp_raw () equals_pos = lines [1].find ('t =') if equals_pos! = -1: temp_string = lines [1] [equals_pos+2:] temp_c = float (temp_string) / 1000.0 návrat temp_c při True: temp_c = read_temp () temp_f = temp_c * 9.0 / 5.0 + 32.0 streamer.log ("teplota (C)", temp_c) streamer.log ("teplota (F)", temp_f) čas.spánek (.5)
Místo PUT_YOUR_ACCESS_KEY_HERE musíte na řádek 6 umístit přístupový klíč počátečního stavu (klíč streamování zkopírujte do schránky z „mého účtu“a vložte jej do kódu v nano na vašem terminálu).
Řádek 6 vytvoří ve vašem účtu Počáteční stav větev s názvem „Teplotní proud“(za předpokladu, že jste na stejném řádku správně zadali své access_key). Řádky 8 až 30 tohoto skriptu jednoduše komunikují se snímačem DS18B20 a čtou jeho teplotu ze souboru w1_slave, o kterém jsme diskutovali dříve. Funkce read_temp_raw () na řádku 15 čte surový soubor w1_slave. Funkce read_temp () na řádku 21 analyzuje teplotu z tohoto souboru. Linka 34 volá tyto funkce, aby získala aktuální teplotu. Linka 35 převádí teplotu ze stupňů Celsia na stupně Fahrenheita. Řádky 35 a 36 přenášejí teplotu na váš účet Počáteční stav. Řádek 37 pozastaví skript na 0,5 sekundy a nastaví, jak často bude čidlo teploty načítáno a streamováno.
Jsme připraveni začít streamovat. Spusťte následující příkaz:
$ sudo python temperature.py
Vraťte se ve webovém prohlížeči na svůj účet Počáteční stav a vyhledejte nový datový segment s názvem Teplotní proud. V přímém přenosu byste měli vidět streamování dat o teplotě. Změňte teplotu senzoru tak, že ho budete držet v ruce nebo ho dáte do sklenice ledu.
Nyní budete mít odesílání dat na řídicí panel počátečního stavu. Přejděte do závěrečné části tohoto článku, kde najdete podrobnosti o přizpůsobení řídicího panelu.
Krok 7: Řešení BME280
K sestavení tohoto řešení budete potřebovat následující:
-BME280 Snímač tlaku, teploty a vlhkosti
Tento senzor je dodáván s kolíky, které budete muset na snímač připájet. Doporučuji použít prkénko s kolíky dlouhou stranou dolů do prkénka, aby bylo pájení snazší. Jakmile to dokončíte, musíme připojit senzor k Pi.
Připojte pin VIN na senzoru ke kolíku 1, 3 V na Pi. Připojte kolík GND na senzoru k uzemňovacímu kolíku 6 na Pi. Připojte pin SCK na senzoru k pinu SCL 5 na Pi. Připojte pin SDI na senzoru ke kolíku 3 SDA na Pi. Pro toto řešení budete muset používat Python 3 a nainstalovat modul Initial State Streamer pomocí metody pip3 install.
Budete také muset nainstalovat několik knihoven Adafruit Python.
pip3 install adafruit-blinkapip3 install pureio pip3 install spidev pip3 install adafruit-GPIO pip3 install adafruit-circuitpython-bme280
Abychom mohli senzor použít, musíme na Pi povolit I2C.
sudo raspi-config
Tím se otevře nástroj pro konfiguraci softwaru Raspberry Pi. Přejděte na Možnost 5 Možnosti rozhraní. Odtud přejděte na I2C. Zobrazí se dotaz, zda chcete povolit I2C, vyberte Ano a Dokončit. Nyní máte povoleno I2C komunikovat se senzorem.
Můžeme to vyzkoušet spuštěním následujícího:
sudo i2cdetect -y 1
Tím ověříte, že váš Pi vidí senzor. Když je připojen, měl by ukázat senzor na adrese 77. Pokud senzor nezjistíte, restartujte Pi, znovu povolte možnost rozhraní I2C na vašem Pi a zkuste to znovu. Jakmile je váš senzor detekován, je čas spustit náš hlavní kód, který bude odesílat data do Počátečního stavu. Pomocí příkazu nano byl vytvořen soubor s názvem bme280sensor.py. Zkopírujte a vložte kód z podstaty do textového editoru. Na řádcích 12–19 budete muset provést změny.
čas importu
import board import busio import adafruit_bme280 from ISStreamer. Streamer import Streamer # Vytvořte objekt knihovny pomocí našeho Bus I2C porti2c = busio. I2C (board. SCL, board. SDA) bme280 = adafruit_bme280. Adafruit_BME280_I2C (i2c) # ------- -Uživatelská nastavení --------- SENSOR_LOCATION_NAME = "Kancelář" BUCKET_NAME = ": částečně_sunny: Pokojová teplota" BUCKET_KEY = "temp1" ACCESS_KEY = "KLÍČ PRO PŘÍSTUP ZDE" # změňte toto nastavení tak, aby odpovídalo tlaku místa (hPa) na hladině moře bme280.sea_level_pressure = 1013,25 MINUTES_BETWEEN_READS = 10 METRIC_UNITS = False # --------------------------------- # NEBO vytvořte objekt knihovny pomocí našeho portu Bus SPI #spi = busio. SPI (board. SCK, board. MOSI, board. MISO) #bme_cs = digitalio. DigitalInOut (board. D10) #bme280 = adafruit_bme280. Adafruit_BME280_SPI (spi, bme_cs) streamer = Streamer (bucket_name = BUCKET_NAME, bucket_key = BUCKET_KEY, access_key = ACCESS_KEY) while True: vlhkost = formát (bme280.humidity, ".1f") tlak = formát (bme280.pressure, ".1f") temp_c = bme280.temperatu re if METRIC_UNITS: streamer.log (SENSOR_LOCATION_NAME + "Teplota (C)", temp_c) else: temp_f = format (temp_c * 9.0 / 5.0 + 32.0, ".1f") streamer.log (SENSOR_LOCATION_NAME + "Teplota (F)", temp_f) streamer.log (SENSOR_LOCATION_NAME + "Vlhkost (%)", vlhkost) streamer.log (SENSOR_LOCATION_NAME + "Tlak (hPA)", tlak) streamer.flush () time.sleep (60*MINUTES_BETWEEN_READS)
- Řádek 12- Tato hodnota by měla být jedinečná pro každý uzel/teplotní senzor. Může to být název místnosti vašeho senzorového uzlu, fyzická poloha, jedinečný identifikátor nebo cokoli jiného. Jen se ujistěte, že je pro každý uzel jedinečný, abyste zajistili, že data z tohoto uzlu přejdou do vlastního datového proudu na vašem řídicím panelu.
- Řádek 13- Toto je název datového segmentu. To lze kdykoli změnit v uživatelském rozhraní počátečního stavu.
- Řádek 14- Toto je váš klíč kbelíku. Musí to být stejný klíč klíče pro každý uzel, který chcete zobrazit na stejném řídicím panelu.
- Řádek 15- Toto je váš přístupový klíč k počátečnímu stavu účtu. Zkopírujte a vložte tento klíč z účtu Počáteční stav.
- Řádek 17- Toto je tlak vašeho místa (hPa) na úrovni hladiny moře. Tyto informace najdete na většině webových stránek o počasí.
- Řádek 18 - Toto je doba mezi načtením senzoru. Řádek 19- Zde můžete zadat metrické nebo imperiální jednotky.
Jakmile ve skriptu Pythonu na Pi Zero WH nastavíte řádky 12–19, uložte a ukončete textový editor. Spusťte skript pomocí následujícího příkazu:
$ python3 bme280sensor.py
Nyní budete mít odesílání dat na řídicí panel počátečního stavu. Přejděte do závěrečné části tohoto článku, kde najdete podrobnosti o přizpůsobení řídicího panelu.
Krok 8: Vnímejte Klobouk
Prvním krokem při používání Sense HAT je fyzická instalace na váš Pi. Když je Pi vypnuto, připojte HAT, jak je znázorněno na obrázku.
Pokud se rozhodnete použít řešení, jak je uvedeno výše, můžete si všimnout, že hodnoty teploty vašeho Sense HAT budou trochu vysoké - to proto, že jsou. Na vině je teplo generované z CPU Pi, které ohřívá vzduch kolem Sense HAT, když sedí na Pi. Aby byl teplotní senzor užitečný, musíme buď oddělit HAT od Pi, nebo se pokusit kalibrovat čtení teplotního senzoru. Dobrým řešením, jak dostat senzor od Pi, je kabel, který nechá Sense HAT viset od Pi. K tomu poslouží 6 40pinový prodlužovací kabel IDE samec-samice.
Jakmile se rozhodnete pro dvě možnosti, zapněte Pi. Musíme nainstalovat knihovnu Python, aby bylo snadné číst hodnoty senzorů ze Sense HAT. Nejprve budete muset zajistit, aby bylo ve vaší verzi Raspbian vše aktuální:
$ sudo apt-get update
Dále nainstalujte knihovnu Sense HAT Python:
$ sudo apt-get install sense-hat
Restartujte svůj Pi. Jsme připraveni testovat Sense HAT tak, že z něj načteme data senzoru a odešleme je do Počátečního stavu.
Vytvořte soubor s názvem sensehat a otevřete jej v textovém editoru zadáním následujícího příkazu do příkazového řádku:
$ nano sensehat.py
Zkopírujte a vložte níže uvedený kód do textového editoru.
from sense_hat import SenseHat
doba importu import sys z ISStreamer. Streamer import Streamer # --------- Uživatelská nastavení --------- BUCKET_NAME = "Počasí v kanceláři" BUCKET_KEY = "sensehat" ACCESS_KEY = "Your_Access_Key" SENSOR_LOCATION_NAME = " Kancelář "MINUTES_BETWEEN_SENSEHAT_READS = 0,1 # --------------------------------- streamer = Streamer (název_zásuvky = BUCKET_NAME, klíč_zásuvky = BUCKET_KEY, access_key = ACCESS_KEY) sense = SenseHat () while True: # Přečtěte si senzory temp_c = sense.get_temperature () vlhkost = sense.get_humidity () pressure_mb = sense.get_pressure () # Formátujte data temp_f = temp_c * 9.0 / 5.0 + 32.0 temp_f = float ("{0:.2f}". Format (temp_f)) vlhkost = float ("{0:.2f}". Formát (vlhkost)) pressure_in = 0,03937008*(pressure_mb) pressure_in = float ("{ 0:.2f} ". Format (pressure_in)) # Tisk a streamování tisku SENSOR_LOCATION_NAME +" Teplota (F): " + str (temp_f) tisk SENSOR_LOCATION_NAME +" Vlhkost (%): " + str (vlhkost) tisk SENSOR_LOCATION_NAME +" Tlak (IN): " + str (pressure_in) streamer.log (": slunečno: " + SEN SOR_LOCATION_NAME + "Teplota (F)", temp_f) streamer.log (": sweat_drops:" + SENSOR_LOCATION_NAME + "Vlhkost (%)", vlhkost) streamer.log (": cloud:" + SENSOR_LOCATION_NAME + "Tlak (IN)", pressure_in) streamer.flush () time.sleep (60*MINUTES_BETWEEN_SENSEHAT_READS)
Všimněte si na prvním řádku, že importujeme knihovnu SenseHat do skriptu. Než spustíte tento skript, musíme nastavit naše uživatelské parametry.
# --------- Uživatelské nastavení ---------
BUCKET_NAME = "Počasí v kanceláři" BUCKET_KEY = "sensehat" ACCESS_KEY = "Your_Access_Key" SENSOR_LOCATION_NAME = "Kancelář" MINUTES_BETWEEN_SENSEHAT_READS = 0,1# ------------------------- --------
Konkrétně musíte nastavit svůj ACCESS_KEY na přístupový klíč účtu Počáteční stav. BUCKET_NAME a SENSOR_LOCATION_NAME můžete změnit na skutečné umístění senzoru. Uložte a ukončete textový editor.
Na příkazovém řádku na vašem Pi spusťte skript:
$ sudo python sensehat.py
Nyní budete mít odesílání dat na řídicí panel počátečního stavu. Přejděte do závěrečné části tohoto článku, kde najdete podrobnosti o přizpůsobení řídicího panelu.
Krok 9: Přizpůsobte svůj výchozí stav řídicího panelu
Přejděte na svůj účet Počáteční stav a podívejte se na svá data. Kliknutím pravým tlačítkem na dlaždici změníte typ grafu a kliknutím na položku Upravit dlaždice změníte velikost a přesunete dlaždice. Doporučuji použít termostat měřidla pro teplotu a hladinu kapaliny měřidla pro vlhkost. Můžete vytvářet čárové grafy pro teplotu i vlhkost, abyste viděli změny v průběhu času. Na hlavní panel můžete také přidat obrázek na pozadí.
Můžete nastavit upozornění na spouštění, abyste mohli dostat SMS nebo e -mail, pokud teplota klesne pod nebo překročí určitou prahovou hodnotu. Přejděte do úložiště dat a klikněte na nastavení. Odtud přejděte na kartu Spouštěče. Zadejte klíč streamu, který chcete monitorovat, operátora, kterého chcete použít, a prahovou hodnotu. Kliknutím na znaménko plus spouště přidáte. Poté zadáte svůj e -mail nebo telefonní číslo, na které chcete upozornění obdržet, a kliknete na znaménko plus. Jakmile nastavíte všechny spouště, klikněte na tlačítko Hotovo ve spodní části.
Nyní, když jste vytvořili teplotní monitor pomocí teplotního senzoru a Raspberry Pi, můžete začít přemýšlet o tom, jaká další environmentální data můžete sledovat dále.