
Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-23 15:14

Harorat va namlik - zamonaviy sanoat dunyosida muhim ma'lumotlar. Ishlarning uzluksiz ishlashi uchun server xonalari, tijorat muzlatgichlari va ishlab chiqarish liniyalari uchun ekologik ma'lumotlarni kuzatish zarur. U erda oddiydan murakkabgacha bo'lgan juda ko'p echimlar bor va bu sizning biznesingiz nimaga muhtojligi va qaerdan boshlash kerakligi haqida juda katta tuyulishi mumkin.
Biz Raspberry Pi va siz foydalanishingiz mumkin bo'lgan harorat sensori yordamida haroratni qanday kuzatish kerakligini ko'rib chiqamiz. Bu boshlash uchun yaxshi joy, chunki bu echimlar arzon, bajarilishi oson va sizga atrof -muhitning boshqa monitoringi uchun asos yaratadi.
Ta'minotlar
- Raspberry Pi (3, 4 yoki nol WH)
- Harorat sensori (DHT2, DSB18B20, BME280 yoki Sense HAT)
- 6 dyuymli 40-pinli IDE erkak va ayol uzatma kabeli (Sense HAT yechimi)
- 10K rezistor, non paneli, 40 pinli kesish taxtasi + lenta kabeli, simlar (DSB18B20 yechimi uchun)
1 -qadam: Raspberry Pi
Raspberry Pi - bu harorat sensori bilan bog'lanish va ma'lumotlarni vizualizatsiya qilish dasturiga uzatish imkonini beradigan arzon yagona taxtali kompyuter. Raspberry Pi o'qitish vositasi sifatida boshlangan va sanoat ish joyidagi asbobga aylangan. Python bilan dasturlashning eng tez rivojlanayotgan tili, ulardan foydalanish qulayligi va kodlash qobiliyati ularni echimga aylantirdi.
Sizga har qanday 3, 4 va nol W/WH modelli WiFi o'rnatilgan Raspberry Pi kerak bo'ladi. Ular orasida narx va xususiyatlarga qarab tanlashingiz mumkin. Zero W/WH - eng arzon, lekin agar sizga ko'proq funksionallik kerak bo'lsa, siz 3 va 4 ni tanlashingiz mumkin. Raspberry Pi Foundation cheklovlari tufayli bir vaqtning o'zida faqat bitta Zero W/WH sotib olishingiz mumkin. Siz tanlagan Pi nima bo'lishidan qat'iy nazar, zaryadlovchini sotib olganingizga ishonch hosil qiling, shunda siz operatsion tizimni o'rnatishni iloji boricha osonlashtirish uchun Raspbian bilan Pi va SD -kartani quvvatlantirasiz.
Boshqa bitta taxtali kompyuterlar ham ishlashi mumkin, lekin bu boshqa vaqt va boshqa maqola uchun.
2 -qadam: Sensorlar
Biz foydalanishni tavsiya etadigan uchta datchik bor, chunki ular arzon, ulanishi oson va aniq ko'rsatkichlar beradi; DSB18B20, DHT22 va Raspberry Pi Sense HAT.
DHT22 - bu harorat va namlik sensori +/- 0,5 C harorat aniqligiga va namlik 0 dan 100 foizgacha. Raspberry Pi -ga simni ulash juda oddiy va tortishish rezistorlarini talab qilmaydi.
DSB18B20 - Bu harorat sensori Raspberry Pi bilan yaxshi ishlaydigan raqamli chiqishga ega. U uchta simga ega va ulanish uchun non paneli va rezistor kerak.
BME280 - bu sensor harorat, namlik va barometrik bosimni o'lchaydi. U SPI va I2C -da ishlatilishi mumkin.
Sense HAT - bu LED, datchik va kichik joystikka ega Raspberry Pi uchun qo'shimcha. U to'g'ridan -to'g'ri Raspberry Pi -dagi GPIO -ga ulanadi, lekin lenta kabeli yordamida haroratni aniqroq o'qish mumkin bo'ladi.
3 -qadam: Raspberry Pi -ni sozlash
Agar siz Raspberry Pi -ni birinchi marta o'rnatayotgan bo'lsangiz, siz Raspbian operatsion tizimini o'rnatishingiz va Pi -ni WiFi -ga ulashingiz kerak bo'ladi. Pi -ga ulanish uchun monitor va klaviatura kerak bo'ladi. Siz uni ishga tushirganingizdan va WiFI -ga ulangandan so'ng, sizning Pi ishga tushishga tayyor.
4 -qadam: dastlabki davlat hisobi


Tarixiy jurnalni saqlash va ma'lumotlarni real vaqt rejimida ko'rish uchun ma'lumotlarni yuborish uchun sizga biror joy kerak bo'ladi, shunda biz boshlang'ich holatdan foydalanamiz. Https://iot.app.initialstate.com saytiga o'ting va yangi hisob yarating yoki mavjud hisobingizga kiring.
Keyin, biz Pi -ga boshlang'ich holat Python modulini o'rnatishimiz kerak. Buyruqning xohishi bilan (avval Pi -ga SSH yozishni unutmang) quyidagi buyruqni bajaring:
$ CD/uy/pi/
$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash
Buyruq satriga curl buyrug'ini kiritganingizdan so'ng, siz ekranda quyidagi chiqishga o'xshash narsani ko'rasiz:
pi@raspberrypi ~
$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash Parol: ISStreamer Pythonni oson o'rnatish boshlanishi! Bu o'rnatish uchun bir necha daqiqa vaqt ketishi mumkin, qahva oling:) Lekin qaytib kelishni unutmang, keyinroq savollarim bor! Easy_install topildi: setuptools 1.1.6 pip topildi: pip 1.5.6 dan /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip asosiy versiyasi: 1 pip kichik versiyasi: 5 ISStreamer topildi, yangilanmoqda … Talab allaqachon yangilangan: /Library/Python/2.7/site-packages-da ISStreamer tozalanmoqda… Siz avtomatik tarzda misol skriptini olishni xohlaysizmi? [y/N] Misolni qayerda saqlamoqchisiz? [standart:./is_example.py] Iltimos, qaysi shtat dasturidan foydalanayotganingizni tanlang: 1. app.initialstate.com 2. [YANGI!] iot.app.initialstate.com 1 yoki 2 -variantni kiriting: iot.app -ga kiring..initialstate.com foydalanuvchi nomi: iot.app.initialstate.com parolini kiriting:
Misol skriptini avtomatik ravishda olish so'ralganda, y yozing. Bu biz ma'lumotni dastlabki holatga uzatishni ta'minlash uchun ishga tushirishimiz mumkin bo'lgan test skriptini yaratadi. Keyingi ko'rsatma misol faylini qayerda saqlamoqchi ekanligingizni so'raydi. Odatiy joyni qabul qilish uchun siz maxsus mahalliy yo'lni yozishingiz yoki Enter tugmasini bosishingiz mumkin. Nihoyat, sizdan qaysi boshlang'ich davlat dasturidan foydalanayotganingiz so'raladi. Agar siz yaqinda hisob yaratgan bo'lsangiz, 2 -variantni tanlang, foydalanuvchi nomingiz va parolingizni kiriting. Shundan so'ng, o'rnatish tugallanadi.
Keling, yaratilgan skript namunasini ko'rib chiqaylik.
$ nano is_example.py
15 -qatorda siz streamer = Streamer (bucket_… bilan boshlanadigan qatorni ko'rasiz. Bu satrlar "Python Stream Example" deb nomlangan yangi ma'lumotlar paketini yaratadi va sizning hisobingiz bilan bog'langan. Bu assotsiatsiya access_key = "… tufayli sodir bo'ladi)" Harflar va raqamlarning uzun qatori sizning boshlang'ich shtat hisob qaydnomangizga kirish kalitidir. Agar siz veb -brauzeringizda boshlang'ich davlat hisobingizga kirsangiz, o'ng yuqori burchakdagi foydalanuvchi nomingizni bosing va keyin "sozlamalarim" ga o'ting., siz o'sha kirish kalitini "Kirish oqimlari oqimlari" ostida topasiz.
Har safar siz ma'lumotlar oqimini yaratganingizda, kirish kaliti bu ma'lumotlarni sizning hisobingizga yo'naltiradi (shuning uchun kalitingizni hech kim bilan baham ko'rmang).
Boshlang'ich davlat hisob qaydnomangizga ma'lumotlar oqimini yaratishimiz uchun test skriptini ishga tushiring. Quyidagilarni ishga tushiring:
$ python is_example.py
Veb -brauzerda boshlang'ich davlat hisobingizga qayting. "Python oqimining namunasi" deb nomlangan yangi ma'lumotlar to'plami jurnal javonining chap tomonida ko'rsatilishi kerak edi (ehtimol siz sahifani yangilashingiz kerak bo'ladi). Sinov ma'lumotlarini ko'rish uchun ushbu chelakni bosing va keyin to'lqinlar belgisini bosing
Agar siz Python 3 dan foydalanayotgan bo'lsangiz, Initial State Streamer modulini o'rnatishingiz mumkin, uni quyidagi buyruq yordamida o'rnatishingiz mumkin:
pip3 ISStreamer -ni o'rnating
Endi biz haroratni asboblar paneliga uzatish uchun harorat sensori Pi bilan o'rnatishga tayyormiz.
5 -qadam: DHT22 yechimi

DHT22 uchta pinli bo'ladi - 5V, Gnd va ma'lumotlar. DHT22 (masalan, "+" yoki "5V") quvvat manbai bo'lishi kerak. Buni Pi -ning 2 -piniga (yuqori o'ng pin, 5V) ulang. Gnd piniga "-" yoki "Gnd" yoki unga teng keladigan belgi qo'yiladi. Buni Pi -dagi 6 Gnd (5V pin ostidagi ikkita pin) piniga ulang. DHT22 -dagi qolgan pin ma'lumot pinidir va "chiqib ketgan" yoki "s" yoki "ma'lumotlar" deb belgilanadi. Buni GPIO4 (pin 7) kabi Pi -dagi GPIO pinlaridan biriga ulang. Bu simli bo'lgandan so'ng, Pi -ni yoqing.
Adafruit DHT Python modulini DHT22 sensori ma'lumotlarini o'qishni osonlashtirish uchun buyruq satriga o'rnating:
$ sudo pip Adafruit_DHT ni o'rnating
Sensor ma'lumotlarini o'qish va ma'lumotlarni dastlabki holatga yuborish uchun ikkita Python moduli bilan birga bizning operatsion tizimimiz o'rnatilgan bo'lsa, biz Python skriptini yozishga tayyormiz. Quyidagi skript boshlang'ich holat ma'lumot paketini yaratadi/qo'shadi, DHT22 sensori ma'lumotlarini o'qiydi va bu ma'lumotlarni real vaqtli boshqaruv paneliga yuboradi. Sizga kerak bo'lgan yagona narsa - 6-11 -qatorlarni o'zgartirish.
Adafruit_DHT import qilish
ISStreamer. Streamer import Streamer import vaqti# --------- Foydalanuvchi sozlamalari --------- SENSOR_LOCATION_NAME = "Office" BUCKET_NAME = ": part_sunny: Xona harorati" BUCKET_KEY = "rt0129" ACCESS_KEY = "Boshlang'ich davlat kirish kalitini bu erga joylashtiring" MINUTES_BETWEEN_READS = 10METRIC_UNITS = Yolg'on # --------------------------------- translyator = Streamer (bucket_name = BUCKET_NAME, bucket_key = BUCKET_KEY, access_key = ACCESS_KEY), rost: namlik, temp_c = Adafruit_DHT.read_retry (Adafruit_DHT. DHT22, 4) agar METRIC_UNITS: streamer.log (SENSOR_LOC): temp_f = format (temp_c * 9.0 / 5.0 + 32.0, ".2f") streamer.log (SENSOR_LOCATION_NAME + "Harorat (F)", temp_f) namlik = format (namlik, ".2f") streamer.log (SENSOR_LOCATION_NAME +) "Namlik (%)", namlik) streamer.flush () vaqt. uxlash (60*MINUTES_BETWEEN_READS)
- 6 -qator - bu qiymat har bir tugun/harorat sensori uchun yagona bo'lishi kerak. Bu sizning sensorli tuguningizning xona nomi, jismoniy joylashuvi, noyob identifikatori yoki boshqa narsalar bo'lishi mumkin. Bu tugundan olingan ma'lumotlar sizning boshqaruv panelidagi o'z ma'lumotlar oqimiga o'tishini ta'minlash uchun har bir tugun uchun yagona ekanligiga ishonch hosil qiling.
- 7 -qator - Bu ma'lumotlar paketining nomi. Buni istalgan vaqtda boshlang'ich davlat interfeysida o'zgartirish mumkin.
- 8 -qator - bu sizning chelak kalitingiz. Xuddi shu asboblar panelida ko'rsatilishi kerak bo'lgan har bir tugun uchun bir xil chelak kaliti bo'lishi kerak.
- 9 -qator - bu sizning dastlabki hisob qaydnomangizga kirish kaliti. Boshlang'ich shtat hisobidan bu kalitni nusxalash va joylashtirish.
- 10 -qator - bu sensor o'qilishi orasidagi vaqt. Shunga ko'ra o'zgartiring.
- 11 -qator - Siz 11 -qatorda metrik yoki imperiya birliklarini belgilashingiz mumkin.
Pi -ga Python skriptida 6–11 -qatorlarni o'rnatganingizdan so'ng, matn muharriridan saqlang va chiqing. Skriptni quyidagi buyruq bilan ishga tushiring:
$ python tempsensor.py
Endi siz boshlang'ich davlat boshqaruv paneliga ma'lumotlarni yuborishingiz kerak bo'ladi. Boshqaruv panelini sozlash bo'yicha batafsil ma'lumot olish uchun ushbu maqolaning oxirgi bo'limiga o'ting.
6 -qadam: DSB18B20 yechimi


Ip simi Pi -dagi GPIO pinlariga ulanadi. DS18B20 uchta simga ega. Qizil sim 3.3V ga ulanadi. Ko'k/qora sim erga ulanadi. Sariq sim tortish qarshiligiga/piniga ulanadi. Bu simga ulangandan so'ng, Pi-ni yoqing.
Raspbian -ning eng so'nggi versiyasi (3.18 yadrosi) DS18B20 bilan aloqa o'rnatishi uchun Pi uchun /boot/config.txt fayliga qo'shilishni talab qiladi. Ushbu faylni tahrirlash uchun quyidagilarni bajaring:
$ sudo nano /boot/config.txt
Agar quyidagi satr bu faylda bo'lmasa (agar u faylning pastki qismida bo'lsa), uni qo'shing va faylni saqlang.
dtoverlay = w1-gpio, gpiopin = 4
O'zgarishlar kuchga kirishi uchun Pi -ni qayta ishga tushiring.
$ sudo qayta ishga tushirish
Harorat sensori o'qish interfeysini ishga tushirish uchun biz ikkita buyruqni bajarishimiz kerak. Pi yoki SSH -dagi buyruq satriga Pi -ga o'ting. Quyidagi buyruqlarni kiriting:
$ sudo modprobe w1-gpio $ sudo modprobe w1-therm
Sizning harorat sensori chiqishi endi sizning Pi faylingizga yoziladi. Bu faylni topish uchun:
$ CD/sys/bus/w1/qurilmalar
Ushbu katalogda "28-" bilan boshlanadigan kichik katalog bo'ladi. "28-" raqamidan keyin nima bo'ladi-bu sensorning seriya raqami. cd ni shu katalogga joylashtiring. Ushbu katalog ichida w1_slave nomli fayl sensori chiqishini o'z ichiga oladi. Fayl tarkibini ko'rish uchun nano -dan foydalaning. Faylni kiritgandan so'ng, u quyidagicha ko'rinadi:
a2 01 4b 46 7f ff 0e 10 d8: crc = d8 YESa2 01 4b 46 7f ff 0e 10 d8 t = 26125
"T =" dan keyingi raqam - biz xohlagan raqam. Bu 1/1000 daraja Selsiydagi harorat (yuqoridagi misolda harorat 26,125 S). Bizga bu faylni o'qiydigan va bu raqamni tahlil qiladigan oddiy dastur kerak. Biz bunga bir soniya ichida erishamiz.
Ma'lumot uzatishni boshlashimiz uchun hozir hamma narsa tayyor. Matn muharririni ochish uchun buyruq satriga quyidagilarni kiriting:
$ nano harorat.py
Quyidagi kodni nusxa ko'chiring va matn muharririga joylashtiring.
import qilish os
ISStreamer-dan globus import vaqtini import qilish. -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 = ochiq (device_file, 'r') satrlar = f.readlines () f.close () qaytish satrlari def read_temp (): chiziqlar = read_temp_raw () chiziqlar esa [0].strip () [-3:]! = 'Ha': time.sleep (0,2) satr = read_temp_raw () equals_pos = satrlar [1]. toping ('t =') agar equals_pos! = -1: temp_string = chiziqlar [1] [equals_pos+2:] temp_c = float (temp_string) / 1000.0 qaytganda temp_c True: temp_c = read_temp () temp_f = temp_c * 9.0 / 5.0 + 32.0 streamer.log ("harorat (C)", temp_c) streamer.log ("harorat (F)", temp_f) time.sleep) (.5)
Siz PUT_YOUR_ACCESS_KEY_HERE o'rniga 6 -qatorga dastlabki holatga kirish kalitini qo'yishingiz kerak (oqim tugmachasini buferga "Mening hisobim" dan nusxa ko'chiring va terminaldagi nano kodga joylashtiring).
6 -qator sizning boshlang'ich hisob qaydnomangizda "Harorat oqimi" nomli chelakni yaratadi (shu satrda access_key -ni to'g'ri ko'rsatgan bo'lsangiz). Ushbu skriptning 8 dan 30 gacha bo'lgan satrlari DS18B20 sensori bilan aloqa qiladi, uning haroratini biz ilgari muhokama qilgan w1_slave faylidan o'qish mumkin. 15 -qatordagi read_temp_raw () funktsiyasi xom w1_slave faylini o'qiydi. 21 -satrdagi read_temp () funktsiyasi ushbu faylning haroratini tahlil qiladi. 34 -yo'nalish joriy haroratni olish uchun bu funktsiyalarni chaqiradi. 35 -chiziq haroratni Selsiydan Farengeytga o'zgartiradi. 35 va 36 -qatorlar sizning boshlang'ich davlat hisobingizga haroratni ko'rsatadi. 37 -satr skriptni 0,5 soniya to'xtatib turadi va harorat sensori qanchalik tez o'qilishini va oqimini belgilaydi.
Biz translyatsiyani boshlashga tayyormiz. Quyidagi buyruqni bajaring:
$ sudo python temperaturasi.py
Veb -brauzeringizdagi Boshlang'ich shtat hisob qaydnomangizga qayting va harorat oqimi deb nomlangan yangi ma'lumotlar paketini qidiring. Siz jonli efirda harorat ma'lumotlarini ko'rishingiz kerak. Sensorning haroratini qo'lingizda ushlab turing yoki bir stakan muzga qo'ying.
Endi siz boshlang'ich davlat boshqaruv paneliga ma'lumotlarni yuborishingiz kerak bo'ladi. Boshqaruv panelini sozlash bo'yicha batafsil ma'lumot olish uchun ushbu maqolaning oxirgi bo'limiga o'ting.
7 -qadam: BME280 yechimi
Ushbu echimni yaratish uchun sizga quyidagilar kerak bo'ladi:
-BME280 bosim, harorat va namlik sensori
Bu sensori pin bilan birga keladi, siz uni lehimlashingiz kerak. Men lehimlashni engillashtirish uchun pinni uzun tomonini pastga qaratib non taxtasiga qo'yishni maslahat beraman. Buni tugatgandan so'ng, biz sensorni Pi -ga ulashimiz kerak.
Sensordagi VIN -pinni Pi -dagi 3.3V -pin 1 -ga ulang. Sensordagi GND pinini Pi ustidagi 6 -gachasi pinni ulang. Sensordagi SCK pinini Pi dagi SCL pin 5 ga ulang. Sensordagi SDI pinini Pi -dagi 3 -SDA piniga ulang. Ushbu echim uchun siz Python 3 dan foydalanishingiz va pip3 o'rnatish usuli yordamida Initial State Streamer modulini o'rnatishingiz kerak bo'ladi.
Bundan tashqari, bir nechta Adafruit Python kutubxonalarini o'rnatishingiz kerak bo'ladi.
pip3 adafruit-blinkapip3 ni o'rnatish purio pip3 ni o'rnatish spidev pip3 ni o'rnatish adafruit-GPIO pip3 ni o'rnatish adafruit-circuitpython-bme280
Sensorni ishlatish uchun biz Pi -da I2C -ni yoqishimiz kerak.
sudo raspi-config
Bu Raspberry Pi dasturiy ta'minotni sozlash vositasini ochadi. Interfeyslar uchun 5 -variantga o'ting. Bu erdan I2C ga o'ting. Sizdan I2C -ni yoqishni xohlaysizmi, deb so'rashadi, Ha va Finish -ni tanlang. Endi sizda sensor bilan aloqa o'rnatish uchun I2C yoqilgan.
Buni quyidagilarni bajarish orqali sinab ko'rishimiz mumkin:
sudo i2cdetect -y 1
Bu sizning Pi sensorni ko'rishini tasdiqlaydi. Sensor 77 -manzilda ko'rsatilishi kerak. Agar siz sensorni aniqlamasangiz, Pi -ni qayta ishga tushiring, Pi -dagi I2C interfeysini qayta yoqing va qaytadan urinib ko'ring. ma'lumotlarni dastlabki holatga yuboradigan asosiy kodimizni ishga tushirish. Nano buyrug'i bilan bme280sensor.py nomli fayl yaratildi. Kodni nusxa ko'chiring va matn muharririga joylashtiring. Siz 12-19 -qatorlarga o'zgartirish kiritishingiz kerak bo'ladi.
import vaqti
ISStreamer-dan adafruit_bme280 import taxtasi import Streamer # Bus I2C porti2c = busio. I2C (board. SCL, board. SDA) yordamida kutubxona ob'ektini yaratish bme280 = adafruit_bme280. Adafruit_BME280_I2C (i2c) # ------- -Foydalanuvchi sozlamalari --------- SENSOR_LOCATION_NAME = "Ofis" BUCKET_NAME = ": partly_sunny: Xona harorati" BUCKET_KEY = "temp1" ACCESS_KEY = "SIZNING KIRISH KEYINI BU YERDA" # bu joyning bosimiga mos keladigan qilib o'zgartiring (hPa)) dengiz sathida bme280.sea_level_pressure = 1013.25 MINUTES_BETWEEN_READS = 10 METRIC_UNITS = False # -------------------------------- # Yoki Bus SPI portimiz yordamida kutubxona ob'ektini yarating #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) rost bo'lsa: namlik = format (bme280. namlik, ".1f") bosim = format (bme280. bosim, ".1f") temp_c = bme280.temperatu agar METRIC_UNITS: streamer.log (SENSOR_LOCATION_NAME + "Harorat (C)", temp_c) boshqa: temp_f = format (temp_c * 9.0 / 5.0 + 32.0, ".1f") streamer.log (SENSOR_LOCATION_NAME + "Harorat (F)", temp_f) streamer.log (SENSOR_LOCATION_NAME + "Namlik (%)", namlik) streamer.log (SENSOR_LOCATION_NAME + "Bosim (hPA)", bosim)
- 12-qator- Bu qiymat har bir tugun/harorat sensori uchun yagona bo'lishi kerak. Bu sizning sensorli tuguningiz xonasining nomi, jismoniy joylashuvi, noyob identifikatori yoki boshqa narsalar bo'lishi mumkin. Ushbu tugun ma'lumotlari boshqaruv panelidagi o'z ma'lumot oqimiga o'tishini ta'minlash uchun har bir tugun uchun yagona ekanligiga ishonch hosil qiling.
- 13-qator- Bu ma'lumotlar paketining nomi. Buni istalgan vaqtda boshlang'ich davlat interfeysida o'zgartirish mumkin.
- 14-qator- bu sizning chelak kalitingiz. Xuddi shu asboblar panelida ko'rsatilishi kerak bo'lgan har bir tugun uchun bir xil chelak kaliti bo'lishi kerak.
- 15-qator- Bu sizning dastlabki hisob qaydnomangizga kirish kaliti. Boshlang'ich shtat hisobidan bu kalitni nusxalash va joylashtirish.
- 17-qator- bu sizning joylashuvingizning dengiz sathidagi bosimi (hPa). Siz bu ma'lumotni ko'plab ob -havo saytlarida topishingiz mumkin.
- 18 -qator - bu sensor o'qish orasidagi vaqt. 19-qator- Bu erda siz metrik yoki imperiya birliklarini belgilashingiz mumkin.
Pi Zero WH -da Python skriptida 12–19 -qatorlarni o'rnatganingizdan so'ng, matn muharriridan saqlang va chiqing. Skriptni quyidagi buyruq bilan ishga tushiring:
$ python3 bme280sensor.py
Endi siz boshlang'ich davlat boshqaruv paneliga ma'lumotlarni yuborishingiz kerak bo'ladi. Boshqaruv panelini sozlash bo'yicha batafsil ma'lumot olish uchun ushbu maqolaning oxirgi bo'limiga o'ting.
8 -qadam: HATni sezing


Sense HAT -dan foydalanishning birinchi qadami - uni Pi -ga jismonan o'rnatish. Pi o'chirilgan bo'lsa, rasmda ko'rsatilgandek HATni ulang.
Agar siz yechimni yuqorida ko'rsatilgandek ishlatishga qaror qilsangiz, Sense HAT -ning harorat ko'rsatkichlari biroz yuqoriroq bo'lishini sezishingiz mumkin, chunki ular shunday. Aybdor - bu Pi protsessoridan kelib chiqadigan issiqlik, Pi tepasida o'tirganda Sense HAT atrofidagi havoni isitadi. Harorat sensori foydali bo'lishi uchun biz HATni Pi dan olib tashlashimiz yoki harorat sensori ko'rsatkichini sozlashga harakat qilishimiz kerak. Sensorni Pi -dan uzoqlashtirish uchun yaxshi echim - bu Sense HAT -ni Pi -dan uzib qo'yishga imkon beruvchi kabel. 6 dyuymli, 40-pinli IDE erkak va ayol uzatma kabeli ayyorlik qiladi.
Siz ikkita variant haqida qaror qabul qilganingizdan so'ng, Pi -ni yoqing. Sensor qiymatlarini Sense HAT -dan o'qishni osonlashtirish uchun biz Python kutubxonasini o'rnatishimiz kerak. Birinchidan, siz Raspbian versiyasida hamma narsa yangilanganligiga ishonch hosil qilishingiz kerak:
$ sudo apt-get yangilanishi
Keyin Sense HAT Python kutubxonasini o'rnating:
$ sudo apt-get install sense-hat
Pi -ni qayta yoqing. Biz Sense HAT -ni sensorlar ma'lumotlarini o'qib, ularni dastlabki holatga yuborish orqali sinab ko'rishga tayyormiz.
Sensehat deb nomlangan faylni yarating va buyruq satriga quyidagilarni kiritish orqali matn tahrirlovchisida oching:
$ nano sensehat.py
Quyidagi kodni nusxa ko'chiring va matn muharririga joylashtiring.
SenseHat import_hatidan
ISStreamer.streamer-dan import tizimlarini import qilish Streamer # --------- Foydalanuvchi sozlamalari --------- BUCKET_NAME = "Ofis ob-havo" BUCKET_KEY = "sensehat" ACCESS_KEY = "Sizning_Access_Key" SENSOR_LOCATION_NAME = " Ofis "MINUTES_BETWEEN_SENSEHAT_READS = 0.1 # -------------------------------- streamer = Streamer (bucket_name = BUCKET_NAME, bucket_key = BUCKET_KEY, access_key = ACCESS_KEY) sens = SenseHat () rost bo'lsa: # Sensorlarni o'qing temp_c = sense.get_temperature () namlik = sens.get_humidity () bosim_mb = sens.get_pressure () # Ma'lumotlarni temp_f = temp_c * 9.0 / 5.0 + 32.0 temp_f = float ("{0:.2f}". Format (temp_f)) namlik = float ("{0:.2f}". Format (namlik)) bosim_in = 0.03937008*(bosim_mb) bosim_in = suzish ("{ 0:.2f} "formatida Bosim (IN): " + str (pressure_in) streamer.log (": sunny: " + SEN) SOR_LOCATION_NAME + "Harorat (F)", temp_f) streamer.log (": sweat_drops:" + SENSOR_LOCATION_NAME + "Namlik (%)", namlik) streamer.log (": bulut:" + SENSOR_LOCATION_NAME + "Bosim (IN)"), press_in) streamer.flush () time.sleep (60*MINUTES_BETWEEN_SENSEHAT_READS)
Birinchi satrda biz SenseHat kutubxonasini skriptga import qilayotganimizga e'tibor bering. Ushbu skriptni ishga tushirishdan oldin biz foydalanuvchi parametrlarini sozlashimiz kerak.
# --------- Foydalanuvchi sozlamalari ---------
BUCKET_NAME = "Ofis ob-havo" BUCKET_KEY = "sensehat" ACCESS_KEY = "Sizning_Arzu_Keyingiz" SENSOR_LOCATION_NAME = "Ofis" MINUTES_BETWEEN_SENSEHAT_READS = 0.1# ------------------------- --------
Xususan, siz ACCESS_KEY -ni boshlang'ich davlat hisob qaydnomangizga kirish kalitiga o'rnatishingiz kerak. Siz BUCKET_NAME va SENSOR_LOCATION_NAMEni sensorning haqiqiy joyiga o'zgartirishingiz mumkin. Saqlash va matn muharriridan chiqish.
Pi -dagi buyruq satrida skriptni ishga tushiring:
$ sudo python sensehat.py
Endi siz boshlang'ich davlat boshqaruv paneliga ma'lumotlarni yuborishingiz kerak bo'ladi. Boshqaruv panelini sozlash bo'yicha batafsil ma'lumot olish uchun ushbu maqolaning oxirgi bo'limiga o'ting.
9 -qadam: Boshlang'ich davlat boshqaruv panelini sozlang

Boshlang'ich shtat hisobingizga o'ting va ma'lumotlaringizga qarang. Chiziq turini o'zgartirish uchun "Plitka" ni sichqonchaning o'ng tugmasi bilan bosishingiz va plitkalarning o'lchamlarini o'zgartirish va ko'chirishingiz mumkin. Men haroratni o'lchash uchun termostatni va namlik uchun suyuqlik o'lchagichidan foydalanishni tavsiya qilaman. Vaqt o'tishi bilan o'zgarishlarni ko'rish uchun siz harorat va namlik uchun chiziqli grafiklar yaratishingiz mumkin. Shuningdek, boshqaruv paneliga fon tasvirini qo'shishingiz mumkin.
Trigger ogohlantirishlarini o'rnatishingiz mumkin, shuning uchun agar harorat pastga tushsa yoki ma'lum chegaradan oshsa, sizga SMS yoki elektron pochta orqali xabar yuboriladi. Ma'lumotlar qutisiga o'ting va sozlamalarni bosing. U erdan Triggers yorlig'iga o'ting. Kuzatmoqchi bo'lgan oqim kalitini, foydalanmoqchi bo'lgan operatorni va chegara qiymatini kiriting. Triggerni qo'shish uchun ortiqcha belgisini bosing. Keyin siz elektron pochta yoki telefon raqamingizni kiritib, ogohlantirishni olasiz va ortiqcha belgisini bosasiz. Barcha Trigger -ni o'rnatgandan so'ng, pastki qismidagi Bajarildi tugmasini bosing.
Endi siz harorat sensori va Raspberry Pi yordamida haroratni o'lchash moslamasini yaratdingiz, bundan keyin atrof -muhitga tegishli yana qanday ma'lumotlarni kuzatishingiz mumkinligi haqida o'ylashni boshlashingiz mumkin.
Tavsiya:
Arduino yordamida o'simlik monitorini qanday qurish mumkin: 7 qadam

Arduino yordamida o'simlik monitorini qanday qurish mumkin: Ushbu qo'llanmada biz namlik sensori yordamida tuproq namligini aniqlashni va agar hamma narsa yaxshi bo'lsa, yashil LEDni va OLED -displey va Visuino -ni yondirishni o'rganamiz
Raspberry Pi 4: 10 qadam bilan aqlli oynani qanday qurish mumkin

Raspberry Pi 4 yordamida aqlli oynani qanday qurish mumkin: Ushbu qo'llanmada biz rasmli ramka, eski monitor va rasm oynasi kabi qayta ishlangan qismlardan foydalanib, aqlli oynani qanday qurishni ko'rib chiqamiz. Men sotib olgan elektron komponentlar uchun www.lcsc .com
Harorat kubini qanday qurish mumkin: 5 qadam

Harorat kubini qanday qurish mumkin: 10x10x10 kubdan boshqa hech narsani ishlatmasdan sayyorani o'rganish qobiliyatiga ega ekanligingizni tasavvur qiling. Endi qila olasiz! (Eslatma: Bu loyiha aslida oyga tushmaydi, afsus) Mening ismim Alisa, va men bu yo'riqnomada sizga mening ikki sherigim (Stormi va H
EKG va yurak urish tezligi raqamli monitorini qanday qurish kerak: 6 qadam

EKG va yurak urish tezligi raqamli monitorini qanday yaratish kerak: Elektrokardiogramma (EKG) yurak urishining elektr faolligini o'lchab, yurak urish tezligini va uning ritmini ko'rsatadi. Yurak mushaklarini p hosil qilish uchun yurakdan o'tadigan to'lqin deb ham ataladigan elektr impuls mavjud
Gitara karnay qutisini qanday qurish yoki stereo uchun ikkitasini qurish mumkin: 17 qadam (rasmlar bilan)

Gitara karnay qutisini qanday qurish yoki o'z stereo uchun ikkitasini yaratish kerak. Men yangi gitara karnayini men qurayotgan trubkali kuchaytirgich bilan ketishini xohlardim. Karnay mening do'konimda qoladi, shuning uchun alohida narsa bo'lishi shart emas. Tolex qoplamasi juda oson shikastlanishi mumkin, shuning uchun men engil qumdan keyin tashqariga qora sepdim