Satura rādītājs:
- Piegādes
- 1. darbība: Raspberry Pi
- 2. darbība: sensori
- 3. darbība: Raspberry Pi iestatīšana
- 4. darbība. Sākotnējais valsts konts
- 5. solis: DHT22 risinājums
- 6. darbība: DSB18B20 risinājums
- 7. solis: BME280 risinājums
- 8. darbība: izprotiet cepuri
- 9. darbība. Pielāgojiet sākotnējā stāvokļa informācijas paneli
Video: Kā izveidot Raspberry Pi temperatūras monitoru: 9 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:54
Temperatūra un mitrums ir svarīgi dati mūsdienu rūpniecības pasaulē. Lai nodrošinātu nevainojamu darbību, ir jāuzrauga vides dati par serveru telpām, komerciālām saldētavām un ražošanas līnijām. Ir daudz risinājumu, sākot no pamata līdz sarežģītam, un tas var šķist milzīgs attiecībā uz jūsu biznesa vajadzībām un ar ko sākt.
Mēs apskatīsim, kā kontrolēt temperatūru, izmantojot Raspberry Pi un dažādus temperatūras sensorus, kurus varat izmantot. Šī ir laba vieta, kur sākt, jo šie risinājumi ir lēti, viegli izdarāmi un sniedz pamatu, lai varētu izmantot citu vides monitoringu.
Piegādes
- Raspberry Pi (3, 4 vai Zero WH)
- Temperatūras sensors (DHT2, DSB18B20, BME280 vai Sense HAT)
- 6 collu 40 kontaktu IDE vīriešu un sieviešu pagarinājuma kabelis (Sense HAT risinājums)
- 10K rezistors, maizes dēlis, 40 kontaktu sadalīšanas dēlis + lentes kabelis, vadi (DSB18B20 risinājumam)
1. darbība: Raspberry Pi
Raspberry Pi ir lēts vienas plates dators, kas ļaus jums izveidot savienojumu ar temperatūras sensoru un straumēt datus uz datu vizualizācijas programmatūru. Raspberry Pi sākās kā mācību līdzeklis un ir kļuvis par industriālu darba rīku. Lietošanas vieglums un spēja kodēt, izmantojot Python, visstraujāk augošo programmēšanas valodu, ir ļāvusi tiem rast risinājumu.
Jūs vēlaties Raspberry Pi, kurā ir iebūvēts WiFi, kas ir jebkura modeļa 3, 4 un nulles W/WH. Starp tiem varat izvēlēties, pamatojoties uz cenām un funkcijām. Zero W/WH ir lētākais, bet, ja jums nepieciešama lielāka funkcionalitāte, varat izvēlēties no 3 līdz 4. Raspberry Pi Foundation ierobežojumu dēļ vienlaikus varat iegādāties tikai vienu Zero W/WH. Neatkarīgi no tā, kuru Pi izvēlaties, noteikti iegādājieties lādētāju, jo tādā veidā jūs darbināsit Pi un SD karti ar Raspbian, lai operētājsistēmas instalēšana būtu pēc iespējas vienkāršāka.
Ir arī citi vienas plates datori, kas var arī darboties, bet tas ir citam laikam un citam rakstam.
2. darbība: sensori
Mēs iesakām izmantot trīs sensorus, jo tie ir lēti, viegli savienojami un sniedz precīzus rādījumus; DSB18B20, DHT22 un Raspberry Pi Sense HAT.
DHT22 - šim temperatūras un mitruma sensoram ir temperatūras precizitāte +/- 0,5 C un mitruma diapazons no 0 līdz 100 procentiem. Savienojums ar Raspberry Pi ir vienkāršs, un tam nav nepieciešami nekādi uzvilkšanas rezistori.
DSB18B20 - šim temperatūras sensoram ir digitālā izeja, kas labi darbojas kopā ar Raspberry Pi. Tam ir trīs vadi, un savienojumam nepieciešams maizes dēlis un rezistors.
BME280 - Šis sensors mēra temperatūru, mitrumu un barometrisko spiedienu. To var izmantot gan SPI, gan I2C.
Sense HAT - tas ir papildinājums Raspberry Pi, kuram ir gaismas diodes, sensori un niecīga kursorsvira. Tas ir tieši savienots ar Raspberry Pi GPIO, bet, izmantojot lentes kabeli, jūs varat iegūt precīzākus temperatūras rādījumus.
3. darbība: Raspberry Pi iestatīšana
Ja Raspberry Pi iestatāt pirmo reizi, jums būs jāinstalē Raspbian operētājsistēma un jāpievieno Pi savienojumam ar WiFi. Lai izveidotu savienojumu ar Pi, būs nepieciešams monitors un tastatūra. Kad esat to palaidis un izveidojis savienojumu ar WiFI, jūsu Pi ir gatavs lietošanai.
4. darbība. Sākotnējais valsts konts
Jums būs nepieciešama vieta, kur nosūtīt savus datus, lai saglabātu vēsturisko žurnālu un skatītu reāllaika datu plūsmu, tāpēc mēs izmantosim sākotnējo stāvokli. Dodieties uz vietni https://iot.app.initialstate.com un izveidojiet jaunu kontu vai piesakieties savā esošajā kontā.
Tālāk mums jāinstalē sākotnējā stāvokļa Python modulis jūsu Pi. Komandu uzvednē (neaizmirstiet vispirms ievadīt SSH savā Pi), izpildiet šādu komandu:
$ cd/home/pi/
$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash
Pēc komandu čokurošanās ievadīšanas komandu uzvednē ekrānā redzēsit kaut ko līdzīgu šādai izvadei:
pi@aveņu ~
$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash Parole: Sākums ISStreamer Python vienkārša instalēšana! Tas var aizņemt pāris minūtes, lai to instalētu, paņemiet kafiju:) Bet neaizmirstiet atgriezties, man būs jautājumi vēlāk! Atrasts easy_install: setuptools 1.1.6 Atrasts pip: pip 1.5.6 no /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip galvenā versija: 1 pip minor versija: 5 ISStreamer atrasts, tiek atjaunināts … Prasība jau ir atjaunināta: ISStreamer /Library/Python/2.7/site-packages Notīra … Vai vēlaties automātiski iegūt skripta paraugu? [y/N] Kur vēlaties saglabāt piemēru? [noklusējums:./is_example.py] Lūdzu, izvēlieties, kuru sākotnējā stāvokļa lietotni izmantojat: 1. app.initialstate.com 2. [NEW!] iot.app.initialstate.com Ievadiet 1. vai 2. izvēli: Ievadiet iot.app.initialstate.com lietotājvārds: ievadiet iot.app.initialstate.com paroli:
Kad tiek prasīts automātiski iegūt skripta piemēru, ierakstiet y. Tādējādi tiks izveidots testa skripts, kuru mēs varam palaist, lai nodrošinātu datu straumēšanu sākotnējā stāvoklī. Nākamajā uzvednē tiks jautāts, kur vēlaties saglabāt parauga failu. Jūs varat ierakstīt pielāgotu vietējo ceļu vai nospiest taustiņu Enter, lai pieņemtu noklusējuma atrašanās vietu. Visbeidzot, jums tiks jautāts, kuru sākotnējā stāvokļa lietotni izmantojat. Ja esat nesen izveidojis kontu, izvēlieties 2. opciju, ievadiet savu lietotājvārdu un paroli. Pēc tam instalēšana būs pabeigta.
Apskatīsim izveidotā skripta piemēru.
$ nano is_example.py
15. rindā redzēsit rindu, kas sākas ar streamer = Streamer (bucket_…. Šīs rindas izveido jaunu datu kopu ar nosaukumu “Python Stream Example” un ir saistīta ar jūsu kontu. Šī saistība notiek piekļuves atslēgas dēļ =”…” parametru tajā pašā rindā. Šī garā burtu un ciparu sērija ir jūsu sākotnējās valsts konta piekļuves atslēga. Ja savā tīmekļa pārlūkprogrammā dodaties uz sākotnējās valsts kontu, augšējā labajā stūrī noklikšķiniet uz sava lietotājvārda un pēc tam atveriet sadaļu “Mani iestatījumi”. to pašu piekļuves atslēgu atradīsit šeit sadaļā “Straumēšanas piekļuves atslēgas”.
Katru reizi, kad izveidojat datu straumi, šī piekļuves atslēga novirzīs šo datu straumi uz jūsu kontu (tāpēc nekopīgojiet savu atslēgu nevienam).
Palaidiet testa skriptu, lai pārliecinātos, ka varam izveidot datu straumi jūsu sākotnējā stāvokļa kontā. Izpildiet tālāk norādītās darbības.
$ python is_example.py
Tīmekļa pārlūkprogrammā atgriezieties sākotnējā valsts kontā. Jūsu žurnāla plaukta kreisajā pusē vajadzēja parādīt jaunu datu kopu ar nosaukumu “Python Stream Example” (iespējams, lapa būs jāatsvaidzina). Noklikšķiniet uz šīs grupas un pēc tam noklikšķiniet uz ikonas Waves, lai skatītu testa datus
Ja izmantojat Python 3, varat instalēt sākotnējā stāvokļa straumētāja moduli, kuru varat instalēt, izmantojot šādu komandu:
pip3 instalējiet ISStreamer
Tagad mēs esam gatavi iestatīt temperatūras sensoru ar Pi, lai straumētu temperatūru informācijas panelī.
5. solis: DHT22 risinājums
DHT22 būs trīs tapas - 5V, Gnd un dati. DHT22 barošanai jābūt piespraustas etiķetes (piemēram, “+” vai “5V”). Pievienojiet to Pi 2. tapai (augšējā labajā tapā, 5 V). Gnd piespraude tiks apzīmēta ar “-” vai “Gnd” vai kaut kas līdzvērtīgs. Pievienojiet to Pin 6 Gnd (divas tapas zem 5V tapas) uz Pi. Atlikušā DHT22 tapa ir datu tapa, un tā tiks apzīmēta kā “ārā” vai “s” vai “dati”. Pievienojiet to vienam no Pi GPIO tapām, piemēram, GPIO4 (7. tapa). Kad tas ir savienots, ieslēdziet Pi.
Komandu uzvednē instalējiet Adafruit DHT Python moduli, lai padarītu DHT22 sensora datu lasīšanu īpaši vienkāršu:
$ sudo pip instalējiet Adafruit_DHT
Kad mūsu operētājsistēma ir instalēta kopā ar diviem Python moduļiem sensoru datu nolasīšanai un datu nosūtīšanai uz sākotnējo stāvokli, mēs esam gatavi rakstīt savu Python skriptu. Šis skripts izveidos/pievienos sākotnējā stāvokļa datu kopai, lasīs DHT22 sensora datus un nosūtīs šos datus reāllaika informācijas panelim. Viss, kas jums jādara, ir mainīt 6. – 11.
importēt Adafruit_DHT
no ISStreamer. "IEVADIET SĀKOTNĒJĀS VALSTS PIEKĻUVES ŠEIT" MINUTES_BETWEEN_READS = 10METRIC_UNITS = False # --------------------------------- streamer = Streamer (bucket_name = BUCKET_NAME, bucket_key = BUCKET_KEY, access_key = ACCESS_KEY), kamēr True: mitrums, temp_c = Adafruit_DHT.read_retry (Adafruit_DHT. DHT22, 4), ja METRIC_UNITS: streamer.log (SENSOR_TEMP. Temperatūra): temp_f = formāts (temp_c * 9.0 / 5.0 + 32.0, ".2f") streamer.log (SENSOR_LOCATION_NAME + "Temperatūra (F)", temp_f) mitrums = formāts (mitrums, ".2f") streamer.log (SENSOR_LOCATION_NAME + "Mitrums (%)", mitrums) straumētājs.flush () time.sleep (60*MINUTES_BETWEEN_READS)
- 6. rinda - šai vērtībai jābūt unikālai katram mezglam/temperatūras sensoram. Tas varētu būt jūsu sensora mezgla telpas nosaukums, fiziskā atrašanās vieta, unikālais identifikators vai kas cits. Vienkārši pārliecinieties, vai katram mezglam ir unikāli, lai nodrošinātu, ka dati no šī mezgla tiek novirzīti uz jūsu datu plūsmu jūsu informācijas panelī.
- 7. rinda - tas ir datu kopas nosaukums. Sākotnējā stāvokļa lietotāja saskarnē to var mainīt jebkurā laikā.
- 8. rinda - šī ir jūsu kausa atslēga. Tai jābūt vienai kopas atslēgai katram mezglam, kuru vēlaties parādīt tajā pašā informācijas panelī.
- 9. rinda - šī ir jūsu sākotnējā valsts konta piekļuves atslēga. Kopējiet un ielīmējiet šo atslēgu no sākotnējā statusa konta.
- 10. rinda - tas ir laiks starp sensora nolasījumiem. Attiecīgi mainiet.
- 11. rinda - 11. rindā varat norādīt metriskās vai imperatora vienības.
Kad esat iestatījis 6. – 11. Rindu savā Python skriptā savā Pi, saglabājiet un izejiet no teksta redaktora. Palaidiet skriptu ar šādu komandu:
$ python tempsensor.py
Tagad jums būs jānosūta dati uz sākotnējā stāvokļa informācijas paneli. Lai iegūtu sīkāku informāciju par informācijas paneļa pielāgošanu, pārejiet uz šī raksta pēdējo sadaļu.
6. darbība: DSB18B20 risinājums
Lentes kabelis savienojas ar Pi GPIO tapām. DS18B20 ir trīs vadi. Sarkanais vads savienojas ar 3.3V. Zilais/melnais vads savienojas ar zemi. Dzeltenais vads savienojas ar pievilkšanas rezistoru/tapu 4. Kad tas ir pievienots, ieslēdziet savu Pi.
Lai Pi varētu sazināties ar DS18B20, jaunākajai Raspbian versijai (kodols 3.18) ir jāpievieno fails /boot/config.txt. Lai rediģētu šo failu, veiciet tālāk norādītās darbības.
$ sudo nano /boot/config.txt
Ja šī rinda vēl nav šajā failā (ja tā ir, tā, visticamāk, ir faila apakšā), pievienojiet to un saglabājiet failu.
dtoverlay = w1-gpio, gpiopin = 4
Restartējiet savu Pi, lai izmaiņas stātos spēkā.
$ sudo atsāknēšana
Lai sāktu temperatūras sensora lasīšanas saskarni, mums ir jāizpilda divas komandas. Pārejiet uz Pi vai SSH komandu uzvedni savā Pi. Ierakstiet šādas komandas:
$ sudo modprobe w1-gpio $ sudo modprobe w1-therm
Jūsu temperatūras sensora izeja tagad tiek ierakstīta jūsu Pi failā. Lai atrastu šo failu:
$ cd/sys/bus/w1/devices
Šajā direktorijā būs apakšdirektorijs, kas sākas ar “28-”. Pēc “28-” ir jūsu sensora sērijas numurs. cd šajā direktorijā. Šajā direktorijā failā ar nosaukumu w1_slave ir jūsu sensora izeja. Izmantojiet nano, lai skatītu faila saturu. Kad esat ievadījis failu, tas izskatīsies apmēram šādi:
a2 01 4b 46 7f ff 0e 10 d8: crc = d8 YESa2 01 4b 46 7f ff 0e 10 d8 t = 26125
Skaitlis aiz “t =” ir skaitlis, kuru mēs vēlamies. Šī ir temperatūra 1/1000 grādos pēc Celsija (iepriekš minētajā piemērā temperatūra ir 26,125 C). Mums vienkārši nepieciešama vienkārša programma, kas nolasa šo failu un parsē šo numuru. Mēs pie tā nonāksim tikai sekundes laikā.
Tagad viss ir gatavs, lai mēs varētu sākt straumēt datus. Lai atvērtu teksta redaktoru, komandu uzvednē ierakstiet šo:
$ nano temperatūra.py
Nokopējiet un ielīmējiet zemāk esošo kodu teksta redaktorā.
importēt OS
importēt globālās importēšanas laiku no ISStreamer. Streamer importēt Streamerstreamer = Streamer (bucket_name = "Temperature Stream", bucket_key = "piot_temp_stream031815", access_key = "PUT_YOUR_ACCESS_KEY_HERE") os.system ('modprobe w1-gpio') mod.beystem -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 = atvērts (device_file, 'r') lines = f.readlines () f.close () atgriešanās rindas def read_temp (): lines = read_temp_raw (), kamēr rindas [0].strip () [-3:]! = 'JĀ': time.sleep (0.2) lines = read_temp_raw () equals_pos = lines [1]. atrast ('t =') if equals_pos! = -1: temp_string = lines [1] [equals_pos+2:] temp_c = float (temp_string) / 1000.0 atgriežas temp_c, kamēr True: temp_c = read_temp () temp_f = temp_c * 9.0 / 5.0 + 32.0 streamer.log ("temperatūra (C)", temp_c) streamer.log ("temperatūra (F)", temp_f) time.sleep (.5)
Sākotnējā stāvokļa piekļuves atslēga ir jāievada 6. rindā PUT_YOUR_ACCESS_KEY_HERE vietā (nokopējiet straumēšanas atslēgu starpliktuvē no sadaļas “Mans konts” un ielīmējiet to savā termināļa nano kodā).
6. rindā jūsu sākotnējā stāvokļa kontā tiks izveidots segments ar nosaukumu “Temperatūras straume” (pieņemot, ka šajā pašā rindiņā pareizi norādījāt piekļuves atslēgu). Šī skripta rindas no 8. līdz 30. vienkārši savienojas ar sensoru DS18B20, lai nolasītu tā temperatūru no faila w1_slave, par kuru runājām iepriekš. Funkcija read_temp_raw () 15. rindā nolasa neapstrādātu w1_slave failu. Funkcija read_temp () 21. rindā analizē temperatūru no šī faila. 34. līnija izsauc šīs funkcijas, lai iegūtu pašreizējo temperatūru. 35. līnija pārveido temperatūru no Celsija uz Fārenheitu. 35. un 36. rindā tiek ievadīta temperatūra jūsu sākotnējā stāvokļa kontā. 37. rindiņa skriptu aptur uz 0,5 sekundēm, nosakot, cik bieži temperatūras sensors tiks nolasīts un straumēts.
Mēs esam gatavi sākt straumēšanu. Palaidiet šādu komandu:
$ sudo pitona temperatūra.py
Atgriezieties savā sākotnējā stāvokļa kontā savā tīmekļa pārlūkprogrammā un meklējiet jaunu datu kopu ar nosaukumu Temperatūras straume. Jums vajadzētu redzēt temperatūras datu straumēšanu tiešraidē. Mainiet sensora temperatūru, turot to rokā vai ievietojot ledus glāzē.
Tagad jums būs jānosūta dati uz sākotnējā stāvokļa informācijas paneli. Lai iegūtu sīkāku informāciju par informācijas paneļa pielāgošanu, pārejiet uz šī raksta pēdējo sadaļu.
7. solis: BME280 risinājums
Lai izveidotu šo risinājumu, jums būs nepieciešams:
-BME280 spiediena, temperatūras un mitruma sensors
Šim sensoram ir tapas, kuras jums vajadzēs pielodēt uz sensora. Lai atvieglotu lodēšanu, es iesaku izmantot maizes dēli ar tapām ar garu pusi uz leju. Kad esat to pabeidzis, mums ir jāpievieno sensors Pi.
Savienojiet VIN tapu uz sensora ar 3.3V pin 1 uz Pi. Savienojiet GND tapu uz sensora ar zemējuma tapu 6 uz Pi. Savienojiet sensora SCK tapu ar Pi SCL tapu 5. Savienojiet sensora SDI tapu ar Pi 3 SDA tapu. Šim risinājumam jums būs jāizmanto Python 3 un jāinstalē sākotnējā stāvokļa straumētāja modulis, izmantojot pip3 instalēšanas metodi.
Jums būs jāinstalē arī dažas Adafruit Python bibliotēkas.
pip3 install adafruit-blinkapip3 install pureio pip3 install spidev pip3 install adafruit-GPIO pip3 install adafruit-circuitpython-bme280
Lai izmantotu sensoru, Pi ir jāiespējo I2C.
sudo raspi-config
Tas atvērs Raspberry Pi programmatūras konfigurācijas rīku. Dodieties uz 5. opciju Saskarnes opcijas. No šejienes dodieties uz I2C. Tas liks jums jautāt, vai vēlaties iespējot I2C, izvēlieties Jā un Pabeigt. Tagad jums ir iespējota I2C saziņa ar sensoru.
Mēs to varam pārbaudīt, veicot šādas darbības:
sudo i2cdetect -y 1
Tas pārbaudīs, vai jūsu Pi redz sensoru. Tādā veidā, kā tas ir savienots, tam vajadzētu parādīt sensoru 77. adresē. Ja jūs neatrodat sensoru, pārstartējiet savu Pi, atkārtoti iespējojiet I2C saskarnes opciju savā Pi un mēģiniet vēlreiz. Kad jūsu sensors ir atklāts, ir pienācis laiks lai palaistu mūsu galveno kodu, kas nosūtīs datus uz sākotnējo valsti. Ar komandu nano izveidoja failu ar nosaukumu bme280sensor.py. Kopējiet un ielīmējiet kodu no būtības teksta redaktorā. Jums būs jāveic izmaiņas 12. – 19.
importa laiks
importēt dēli importēt busio importēt adafruit_bme280 no ISStreamer. Streamer importēt Streamer # Izveidot bibliotēkas objektu, izmantojot mūsu Bus I2C porti2c = busio. I2C (board. SCL, board. SDA) bme280 = adafruit_bme280. Adafruit_BME280_I2C (i2c) # ------- -Lietotāja iestatījumi --------- SENSOR_LOCATION_NAME = "Birojs" BUCKET_NAME = ": daļēji_saulains: istabas temperatūra" BUCKET_KEY = "temp1" ACCESS_KEY = "JŪSU PIEKĻUVES KEY HERE" # mainiet to, lai tas atbilstu atrašanās vietas spiedienam (hPa) jūras līmenī bme280.sea_level_pressure = 1013,25 MINUTES_BETWEEN_READS = 10 METRIC_UNITS = False # --------------------------------- # VAI izveidojiet bibliotēkas objektu, izmantojot mūsu Bus SPI portu #spi = busio. SPI (board. SCK, board. MOSI, board. MISO) #bme_cs = digitalio. DigitalInOut (board. D10) #bme280 = adafruit_bme280. Adafruit_BME280_SPI (spi, bme_cs) straumētājs = straumētājs (kausa_nosaukums = BUCKET_NAME, bucket_key = BUCKET_KEY, access_key = ACCESS_KEY), kamēr True: mitrums = formāts (bme280.humidity, ".1f") spiediens = formāts (bme280.pressure, ".1f") temp_c = bme280.temperatu re if METRIC_UNITS: streamer.log (SENSOR_LOCATION_NAME + "Temperatūra (C)", temp_c) else: temp_f = format (temp_c * 9.0 / 5.0 + 32.0, ".1f") streamer.log (SENSOR_LOCATION_NAME + "Temperatūra (F)", temp_f) streamer.log (SENSOR_LOCATION_NAME + "Mitrums (%)", mitrums) streamer.log (SENSOR_LOCATION_NAME + "Spiediens (hPA)", spiediens) streamer.flush () time.sleep (60*MINUTES_BETWEEN_READS)
- 12. rinda- šai vērtībai jābūt unikālai katram mezglam/temperatūras sensoram. Tas var būt jūsu sensora telpas nosaukums, fiziskā atrašanās vieta, unikālais identifikators vai kas cits. Vienkārši pārliecinieties, vai katram mezglam ir unikāli, lai nodrošinātu, ka dati no šī mezgla tiek novirzīti uz jūsu datu plūsmu jūsu informācijas panelī.
- 13. rinda- tas ir datu kopas nosaukums. Sākotnējā stāvokļa lietotāja saskarnē to var mainīt jebkurā laikā.
- 14. rinda- šī ir jūsu kausa atslēga. Tai jābūt vienai kopas atslēgai katram mezglam, kuru vēlaties parādīt tajā pašā informācijas panelī.
- 15. rinda- šī ir jūsu sākotnējā valsts konta piekļuves atslēga. Kopējiet un ielīmējiet šo atslēgu no sava sākotnējā stāvokļa konta.
- 17. līnija- tas ir jūsu atrašanās vietas spiediens (hPa) jūras līmenī. Šo informāciju varat atrast lielākajā daļā laika vietņu.
- 18. rinda - šis ir laiks starp sensora nolasījumiem. Mainīt attiecīgi. 19. rinda- Šeit jūs varat norādīt metriskās vai imperatora vienības.
Kad esat iestatījis 12. – 19. Rindu savā Python skriptā savā Pi Zero WH, saglabājiet un izejiet no teksta redaktora. Palaidiet skriptu ar šādu komandu:
$ python3 bme280sensor.py
Tagad jums būs jānosūta dati uz sākotnējā stāvokļa informācijas paneli. Lai iegūtu sīkāku informāciju par informācijas paneļa pielāgošanu, pārejiet uz šī raksta pēdējo sadaļu.
8. darbība: izprotiet cepuri
Pirmais solis, izmantojot Sense HAT, ir to fiziski instalēt savā Pi. Kad Pi ir izslēgts, pievienojiet cepuri, kā parādīts attēlā.
Ja jūs nolemjat izmantot risinājumu, kā parādīts iepriekš, jūs varat pamanīt, ka jūsu Sense HAT temperatūras rādījumi būs nedaudz augsti - tas ir tāpēc, ka tie ir. Vainīgais ir siltums, ko rada Pi centrālais procesors, sildot gaisu ap Sense HAT, kad tas sēž virs Pi. Lai padarītu temperatūras sensoru noderīgu, mums ir jānovērš HAT no Pi vai jācenšas kalibrēt temperatūras sensora rādījumus. Labs risinājums sensora noņemšanai no Pi ir kabelis, kas ļauj Sense HAT nokarāties prom no Pi. 6 collu, 40 kontaktu IDE vīriešu un sieviešu pagarinājuma kabeļa kabatas kabatas triks palīdzēs.
Kad esat izlēmis par abām iespējām, ieslēdziet savu Pi. Mums ir jāinstalē Python bibliotēka, lai būtu viegli nolasīt sensoru vērtības no Sense HAT. Pirmkārt, jums jāpārliecinās, ka jūsu Raspbian versijā viss ir atjaunināts:
$ sudo apt-get atjauninājums
Pēc tam instalējiet Sense HAT Python bibliotēku:
$ sudo apt-get install sense-hat
Pārstartējiet savu Pi. Mēs esam gatavi pārbaudīt Sense HAT, nolasot no tā sensora datus un nosūtot šos datus sākotnējam stāvoklim.
Izveidojiet failu sensehat un atveriet to teksta redaktorā, komandu uzvednē ievadot sekojošo:
$ nano sensehat.py
Kopējiet un ielīmējiet zemāk esošo kodu teksta redaktorā.
no sense_hat importa SenseHat
importēšanas laika importēšanas sistēma no ISStreamer. Birojs "MINUTES_BETWEEN_SENSEHAT_READS = 0.1 # --------------------------------- streamer = Streamer (bucket_name = BUCKET_NAME, bucket_key = BUCKET_KEY), access_key = ACCESS_KEY) sense = SenseHat (), kamēr True: # Lasiet sensorus temp_c = sense.get_temperature () mitrums = sense.get_humidity () pressure_mb = sense.get_pressure () # Formatējiet datus temp_f = temp_c * 9.0 / 5.0 + 32.0 temp_f = pludiņš ("{0:.2f}". Formāts (temp_f)) mitrums = pludiņš ("{0:.2f}". Formāts (mitrums)) spiediens_in = 0,03937008*(spiediens_mb) spiediens_in = pludiņš ("{ 0:.2f} ". Formāts (spiediens) Spiediens (IN): " + str (pressure_in) streamer.log (": saulains: " + SEN SOR_LOCATION_NAME + "Temperatūra (F)", temp_f) streamer.log (": sweat_drops:" + SENSOR_LOCATION_NAME + "Mitrums (%)", mitrums) streamer.log (": cloud:" + SENSOR_LOCATION_NAME + "Spiediens (IN)", pressure_in) streamer.flush () time.sleep (60*MINUTES_BETWEEN_SENSEHAT_READS)
Ievērojiet pirmajā rindā, ka mēs skriptā importējam bibliotēku SenseHat. Pirms skripta palaišanas mums ir jāiestata mūsu lietotāja parametri.
# --------- Lietotāja iestatījumi ---------
BUCKET_NAME = "Biroja laika apstākļi" BUCKET_KEY = "sensehat" ACCESS_KEY = "Your_Access_Key" SENSOR_LOCATION_NAME = "Birojs" MINUTES_BETWEEN_SENSEHAT_READS = 0.1# ------------------------- --------
Konkrēti, jums ir jāiestata ACCESS_KEY uz sākotnējā valsts konta piekļuves atslēgu. Varat mainīt BUCKET_NAME un SENSOR_LOCATION_NAME uz faktisko sensora atrašanās vietu. Saglabājiet un aizveriet teksta redaktoru.
Komandu uzvednē savā Pi palaidiet skriptu:
$ sudo python sensehat.py
Tagad jums būs jānosūta dati uz sākotnējā stāvokļa informācijas paneli. Lai iegūtu sīkāku informāciju par informācijas paneļa pielāgošanu, pārejiet uz šī raksta pēdējo sadaļu.
9. darbība. Pielāgojiet sākotnējā stāvokļa informācijas paneli
Dodieties uz savu sākotnējās valsts kontu un apskatiet savus datus. Jūs varat ar peles labo pogu noklikšķināt uz flīzes, lai mainītu diagrammas veidu, un noklikšķiniet uz Rediģēt flīzes, lai mainītu un pārvietotu flīzes. Temperatūrai es ieteiktu izmantot termometru, un mitrumam - šķidruma līmeni. Jūs varat izveidot līniju diagrammas gan temperatūrai, gan mitrumam, lai redzētu izmaiņas laika gaitā. Informācijas panelim varat pievienot arī fona attēlu.
Varat iestatīt aktivizētāja brīdinājumus, lai jūs varētu saņemt SMS vai e -pastu, ja temperatūra nokrītas zem noteiktā sliekšņa vai pārsniedz to. Dodieties uz savu datu kopu un noklikšķiniet uz iestatījumiem. No turienes dodieties uz cilni Aktivizētāji. Ievadiet straumes atslēgu, kuru vēlaties pārraudzīt, operatoru, kuru vēlaties izmantot, un sliekšņa vērtību. Noklikšķiniet uz pluszīmes, lai pievienotu aktivizētāju. Pēc tam ievadiet savu e -pasta adresi vai tālruņa numuru, lai saņemtu brīdinājumu, un noklikšķiniet uz pluszīmes. Kad esat iestatījis visus aktivizētājus, noklikšķiniet uz pogas Gatavs apakšā.
Tagad, kad esat izveidojis temperatūras monitoru, izmantojot temperatūras sensoru un Raspberry Pi, varat sākt domāt par to, kādus citus vides datus varat pārraudzīt tālāk.
Ieteicams:
Liels Arduino LCD pulkstenis ar diviem signāliem un temperatūras monitoru, ko kontrolē IR TV tālvadības pults: 5 soļi
Liels Arduino LCD pulkstenis ar diviem signāliem un temperatūras monitoru, ko kontrolē IR TV tālvadības pults: Kā izveidot uz Arduino balstītu LCD pulksteni ar diviem trauksmes signāliem un temperatūras monitoru, ko kontrolē IR TV tālvadības pults
Uzziniet, kā izveidot pārnēsājamu akumulatoru darbināmu monitoru, kas var darbināt arī Raspberry Pi: 8 soļi (ar attēliem)
Uzziniet, kā izveidot pārnēsājamu ar akumulatoru darbināmu monitoru, kas var darbināt arī Raspberry Pi: vai esat kādreiz vēlējies kodēt python vai displeja izvadi savam Raspberry Pi robotam, atrodoties ceļā, vai arī jums bija nepieciešams pārnēsājams sekundārais displejs klēpjdatoram vai kamera? Šajā projektā mēs veidosim pārnēsājamu akumulatoru darbināmu monitoru un
Temperatūras nolasīšana, izmantojot LM35 temperatūras sensoru ar Arduino Uno: 4 soļi
Temperatūras lasīšana, izmantojot LM35 temperatūras sensoru ar Arduino Uno: Sveiki, puiši, šajā pamācībā mēs iemācīsimies izmantot LM35 kopā ar Arduino. Lm35 ir temperatūras sensors, kas var nolasīt temperatūras vērtības no -55 ° C līdz 150 ° C. Tā ir 3 termināļu ierīce, kas nodrošina analogo spriegumu, kas ir proporcionāls temperatūrai. Augstākā
Kā lietot DHT11 temperatūras sensoru ar Arduino un drukas temperatūras siltumu un mitrumu: 5 soļi
Kā lietot DHT11 temperatūras sensoru ar Arduino un drukas temperatūras karstumu un mitrumu: DHT11 sensoru izmanto temperatūras un mitruma mērīšanai. Viņi ir ļoti populāri elektronikas hobiji. DHT11 mitruma un temperatūras sensors ļauj patiešām viegli pievienot mitruma un temperatūras datus saviem DIY elektronikas projektiem. Tas ir par
ESP32 NTP temperatūras zondes gatavošanas termometrs ar Steinhart-Hart korekciju un temperatūras trauksmi: 7 soļi (ar attēliem)
ESP32 NTP temperatūras zondes vārīšanas termometrs ar Šteinharta-Harta korekciju un temperatūras trauksmi: Joprojām ir ceļā, lai pabeigtu "gaidāmo projektu", "ESP32 NTP temperatūras zondes vārīšanas termometrs ar Šteinharta-Harta korekciju un temperatūras trauksmi" ir pamācība, kas parāda, kā es varu pievienot NTP temperatūras zondi, pjezo b