Mundarija:
- Ta'minotlar
- 1 -qadam: uskunani tayyorlash
- 2 -qadam: Cloud4RPi -ni o'rnatish
- 3 -qadam: Sensorni ulash
- 4 -qadam: Sensor o'qilishini bulutga yuborish
- 5 -qadam: jadvallar va signallar
Video: Bulutdagi namlik: 5 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:24
Yoz keladi va konditsioner bo'lmaganlar uy ichidagi atmosferani qo'lda boshqarishga tayyor bo'lishlari kerak. Bu postda men inson farovonligining eng muhim parametrlarini o'lchashning zamonaviy usulini tasvirlayman: harorat va namlik. Bu to'plangan ma'lumotlar bulutga yuboriladi va u erda qayta ishlanadi.
Ta'minotlar
Men Raspberry Pi taxtasi va DHT22 sensoridan foydalanmoqdaman. Siz Internet, GPIO va Python -ga ega bo'lgan har qanday kompyuterda xuddi shunday qilishingiz mumkin. Bundan arzon DHT11 sensori ham yaxshi ishlaydi.
1 -qadam: uskunani tayyorlash
Eng boshidan boshlaylik, chunki men Raspberry Pi -ni uzoq vaqt ishlatmaganman.
Bizga kerak bo'ladi:
- Raspberry Pi taxtasi (yoki boshqa IoT-ga asoslangan platforma).
- SD yoki microSD karta (platformaga qarab).
- 5V/1A micro-USB. LAN kabeli orqali, Internetga ulanishni ta'minlaydi.
- HDMI displeyi, RCA displeyi yoki UART porti (SSH -ni yoqish uchun).
Birinchi qadam - Raspbian -ni yuklab olish. Men Lite versiyasini tanladim, chunki men displey o'rniga SSH ishlataman.
Oxirgi marta qilganimdan beri hamma narsa o'zgardi: endi Etcher deb nomlangan ajoyib dasturiy ta'minot bor, u mukammal ishlaydi va ajoyib dizaynga ega.
Rasm yozish tugagandan so'ng, men SD -kartani Pi -ga joylashtirdim, LAN va quvvat kabellarini uladim va bir muncha vaqt o'tgach, yo'riqnoma yangi qurilmani ro'yxatdan o'tkazdi.
Ajoyib! Davom etamiz va unga SSH kiramiz.
Xavfsizlik yaxshi, menga yoqadi, lekin bu ishni biroz qiyinlashtiradi. Men UART-USB adapteridan foydalanib, qobiqqa kiraman va SSH-ni yoqaman …
UART o'rniga displeydan foydalanish ishni ancha osonlashtiradi.
Qayta ishga tushirilgandan so'ng, men nihoyat kiraman.
Birinchi navbatda, yangilaylik:
sudo apt update && sudo apt upgrade -y
Keling, bu yangi qurilmani Bulutga ulaylik.
2 -qadam: Cloud4RPi -ni o'rnatish
Men IoT uchun mo'ljallangan Cloud4RPi deb nomlangan bulutli platformani sinab ko'rishga qaror qildim.
Hujjatlarga ko'ra, uni ishga tushirish uchun bizga quyidagi paketlar kerak bo'ladi:
sudo apt install git python3 python3 -pip -y
Mijozlar kutubxonasi bitta buyruqda o'rnatilishi mumkin:
sudo pip3 cloud4rpi -ni o'rnating
Endi bizga namuna kodi kerak.
git klon https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python && cd cloud4rpi-raspberrypi-python
Bajariladigan skript - control.py.
Bizga Cloud4RPi -ga qurilmalarni hisoblar bilan bog'lash imkonini beradigan belgi kerak. Uni olish uchun cloud4rpi.io -da hisob yarating va ushbu sahifadagi "Yangi qurilma" tugmasini bosing. Control.py faylidagi _YOUR_DEVICE_TOKEN_ qatorini qurilmangiz belgisi bilan almashtiring va faylni saqlang. Endi biz birinchi ishga tushirishga tayyormiz.
sudo python3 control.py
Qurilma sahifasini oching va u erda ma'lumotlar mavjudligini tekshiring.
Endi haqiqiy ma'lumotlarga o'tamiz.
3 -qadam: Sensorni ulash
Bizga kerak bo'ladi:
- DHT22 yoki DHT11 namlik sensori
- Yuk ko'tarish qarshiligi (5-10 KΩ)
- Simlar
DHT22 sensori bir vaqtning o'zida harorat va namlikni o'lchaydi. Aloqa protokoli standartlashtirilmagan, shuning uchun uni raspi -configda yoqishning hojati yo'q - oddiy GPIO pin etarli.
Ma'lumot olish uchun men DHT datchiklari uchun Adafruit -ning ajoyib kutubxonasidan foydalanaman, lekin u ishlamasligi mumkin. Men bir marta kodda g'alati doimiy kechikish topdim, bu mening uskunam uchun ishlamadi va ikki yildan keyin tortishish so'rovim hali ham kutilmoqda. Men taxtalarni aniqlashning doimiy parametrlarini ham o'zgartirdim, chunki BCM2835 bilan Raspberry Pi 1 hayratlanarli darajada Raspberry Pi 3 sifatida aniqlandi. Agar bu to'g'ri bo'lsa edi … Shunday qilib, men vilkalarimdan foydalanishni maslahat beraman. Agar siz u bilan biron bir muammoga duch kelsangiz, iltimos, asl omborni sinab ko'ring, ehtimol u kimdir uchun ishlaydi, lekin men ulardan emasman.
git klon https://github.com/Himura2la/Adafruit_Python_DHT.gitcd Adafruit_Python_DHT
Kutubxona C tilida yozilganligi uchun kompilyatsiya talab qilinadi, shuning uchun sizga build-essential va python-dev paketlari kerak bo'ladi.
sudo apt install build-essential python-dev -ysudo python setup.py install
Paketlar o'rnatilayotganda, DHT22 ni rasmda ko'rsatilgandek ulang.
Va sinab ko'ring:
cd ~ python -c "Adafruit_DHT ni d sifatida import qilish; d.read_retry ni chop etish (d. DHT22, 4)"
Agar siz (39.20000076293945, 22.600000381469727) kabi narsalarni ko'rsangiz, shuni bilingki, bu Selsiydagi namlik va foizlarda.
Endi hamma narsani birgalikda yig'amiz!
4 -qadam: Sensor o'qilishini bulutga yuborish
Men control.py -ni asos sifatida ishlataman va unga DHT22 o'zaro ta'sirini qo'shaman.
cp cloud4rpi-raspberrypi-python/control.py./cloud_dht22.pycp cloud4rpi-raspberrypi-python/rpi.py./rpi.pyvi cloud_dht22.py
Namuna kodini yuqoridagi rasmda olib tashlang.
DHT22 bitta qo'ng'iroqda harorat va namlikni qaytaradi, men ularni butun dunyo bo'ylab saqlayman va so'rovda faqat bir marta yangilayman, chunki ularning orasidagi kechikish 10 sekunddan oshadi. DHT22 ma'lumotlarini oladigan quyidagi kodni ko'rib chiqing:
Adafruit_DHT import qilish
temp, hum = Yo'q, yo'q
last_update = time.time () - 20
def update_data ():
global 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 () qaytish davri (temp, 2), agar temp boshqa bo'lmasa, yo'q get get_h (): update_data () qaytish davri (xum, 2), agar boshqa bo'lmasa, yo'q
Ushbu kodni mavjud importdan keyin kiriting va o'zgaruvchilar bo'limini o'zgartiring, shunda u yangi funktsiyalarni ishlatadi:
o'zgaruvchilar = {'DHT22 Harorati': {'turi': 'raqamli', 'bog'lanish': get_t}, 'DHT22 namligi': {'turi': 'raqamli', 'bog'lanish': get_h}, 'CPU harorati': {'turi': 'raqamli', 'bog'lash': cpu_temp}}
Agar siz bu manipulyatsiyalarni chalkash deb bilsangiz, ushbu faylning oxirgi versiyasini oling. Ma'lumot uzatishni boshlash uchun qizil tugmani bosing:
Keyin qurilma sahifasini tekshirishingiz mumkin.
python3 bulut_dht22.py
Keyin qurilma sahifasini tekshirishingiz mumkin.
Siz uni avvalgidek qoldirishingiz mumkin, lekin men hamma narsaga xizmat ko'rsatishni afzal ko'raman. Bu skriptning doimo ishlashini ta'minlaydi. Siz allaqachon cloud4rpi-raspberrypi-python katalogida mavjud bo'lgan to'liq avtomatlashtirilgan skript yordamida xizmat yaratish:
service_install.sh cloud_dht22.py
Xizmatni ishga tushirish:
sudo service cloud4rpi boshlanishi
Va tekshirish:
pi@raspberrypi: ~ $ sudo service cloud4rpi status -l ● cloud4rpi.service -Cloud4RPi demoni Yuklandi: yuklandi (/lib/systemd/system/cloud4rpi.service; yoqilgan) Faol: faol (ishlayapti) Chor 2017-05-17 20: 22: 48 UTC; 1 daqiqa oldin Asosiy PID: 560 (python) guruhi: /system.slice/cloud4rpi.service └─560/usr/bin/python /home/pi/cloud_dht22.py
17 may 20:22:51 raspberrypi python [560]: iot-hub/xabarlarni nashr qilish: {'type': 'config', 'ts': '2017-05-17T20… y'}]}}
17 may 20:22:53 raspberrypi python [560]: iot-hub/xabarlarni nashr qilish: {'type': 'data', 'ts': '2017-05-17T20: 2… 40'}} 17 may 20: 22:53 raspberrypi python [560]: iot-hub/xabarlarni nashr qilish: {'type': 'system', 'ts': '2017-05-17T20….4'}}
Agar hamma narsa kutilganidek ishlayotgan bo'lsa, biz Cloud4RPi platformasining imkoniyatlaridan foydalanib, ma'lumotlarni qayta ishlashimiz mumkin.
5 -qadam: jadvallar va signallar
Birinchidan, keling, o'zgaruvchilar qanday o'zgarishini bilib olaylik. Buni yangi Boshqarish panelini qo'shish va kerakli jadvallarni qo'yish orqali amalga oshirish mumkin.
Bu erda qila oladigan yana bir narsa - bu ogohlantirishni o'rnatish. Bu xususiyat o'zgaruvchining xavfsiz oralig'ini sozlash imkonini beradi. Diapazon oshib ketishi bilan u elektron pochta xabarini yuboradi. Boshqarish paneli tahrirlash sahifasida siz ogohlantirishlarga o'tishingiz va sozlashni o'rnatishingiz mumkin.
Shundan so'ng, mening xonamdagi namlik hech qanday sababsiz tez pasaya boshladi va tez orada signal eshitildi.
Siz Cloud4RPi -ni Python -ni bajaradigan har qanday uskuna bilan bepul ishlatishingiz mumkin, men hozir esa havo namlagichini qachon yoqish kerakligini doim bilaman va hatto uni Cloud4RPi orqali masofadan boshqarish o'rni bilan ulashim mumkin. Men issiqlikka tayyorman! Xush kelibsiz, Yoz!
Cloud4RPi yordamida siz Raspberry Pi va boshqa IoT qurilmalarini real vaqt rejimida masofadan boshqarishingiz mumkin. Bizning saytimizga tashrif buyuring va cheksiz qurilmalarni bepul ulang.
Tavsiya:
Harorat, namlik monitor - Arduino Mega + Ethernet W5100: 5 qadam
Harorat, namlik monitor - Arduino Mega + Ethernet W5100: 1 -modul - FLAT - apparat: Arduino Mega 2560 Wiznet W5100 chekilgan qalqoni 8x DS18B20 OneWire shinasida - 4 ta OneWire avtobusiga bo'lingan (2,4,1,1) 2x raqamli harorat namlik sensori DHT22 (AM2302) 1x harorat va namlik
Arduino -da juda kam quvvatli BLE 2 -qism - Harorat/namlik monitor - Rev 3: 7 qadam
Arduino -da juda kam quvvatli BLE 2 -qism - Harorat/namlik o'lchagichi - Rev 3: Yangilanish: 23 -noyabr, 2020 -yil - 15 -yanvardan boshlab 2 ta AAA batareyasini birinchi marta almashtirish, ya'ni 2 oylik 2xAAA ishqoriy uchun 22 oy. lp_BLE_TempHumidity, pfodApp V3.0.362+va avtomatik drenajlash yordamida sana/vaqt jadvallarini qo'shadi
Arduino yordamida tuproq namlik sensori yasang !!!: 10 qadam
O'zingizning tuproq namlik sensori Arduino yordamida qiling !!!: HAQIDA !!! Bu ko'rsatmada biz tuproq namligi sensori FC-28 ni Arduino bilan bog'laymiz. Bu sensor tuproq ichidagi suvning volumetrik tarkibini o'lchaydi va bizga namlik miqdorini beradi. Sensor ikkala analo bilan jihozlangan
M5STACK Visuino -dan foydalanib M5StickC ESP32 -da harorat, namlik va bosimni qanday ko'rsatish mumkin - Qilish oson: 6 qadam
M5STACK Visuino -dan foydalanib, M5StickC ESP32 -da harorat, namlik va bosimni qanday ko'rsatish mumkin - Qilish oson: Ushbu qo'llanmada biz ENV sensori (DHT12, BMP280, BMM150)
Simsiz namlik monitor (ESP8266 + namlik sensori): 5 qadam
Simsiz namlik o'lchagichi (ESP8266 + namlik sensori): Men maydanozni qozonda sotib olaman va kunning ko'p qismida tuproq quruq edi. Men maydanozli qozondagi tuproqning namligini sezish bo'yicha, loyihani amalga oshirishga qaror qildim, qachon kerak bo'lsa, tuproqni suv bilan to'kib tashlang, menimcha, bu sensor (sig'imli namlik sensori v1.2) yaxshi