Mündəricat:
- Təchizat
- Addım 1: Avadanlıqların Hazırlanması
- Addım 2: Cloud4RPi quraşdırın
- Addım 3: Sensoru bağlayın
- Addım 4: Sensor Oxumalarını Buluda Göndərin
- Addım 5: Qrafiklər və Siqnallar
Video: Buludda rütubət: 5 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:45
Yaz gəlir və kondisioneri olmayanlar, qapalı havanı əl ilə idarə etməyə hazır olmalıdırlar. Bu yazıda insan rahatlığı üçün ən vacib parametrləri ölçməyin müasir üsulunu təsvir edirəm: temperatur və rütubət. Bu toplanan məlumatlar buluda göndərilir və orada işlənir.
Təchizat
Raspberry Pi lövhəsi və DHT22 sensoru istifadə edirəm. Eyni şeyi İnternet, GPIO və Python olan hər hansı bir kompüterdə edə bilərsiniz. Daha ucuz DHT11 sensoru da yaxşı işləyir.
Addım 1: Avadanlıqların Hazırlanması
Raspberry Pi -ni uzun müddət istifadə etmədiyim üçün əvvəldən başlayaq.
Bizə lazım olacaq:
- Raspberry Pi lövhəsi (və ya digər IoT yönümlü platforma).
- SD və ya microSD kartı (platformadan asılı olaraq).
- İnternet bağlantısı təmin edən micro-USB. LAN kabel vasitəsilə 5V/1A.
- HDMI ekranı, RCA ekranı və ya UART portu (SSH -ni aktivləşdirmək üçün).
İlk addım Raspbian yükləməkdir. Ekran əvəzinə SSH istifadə edəcəyim üçün Lite versiyasını seçdim.
Sonuncu dəfə etdiyim vaxtdan bəri işlər dəyişdi: indi mükəmməl işləyən və təəccüblü bir dizaynı olan Etcher adlı böyük bir yanan proqram var.
Şəkil yazma tamamlandıqdan sonra SD kartı Pi -yə daxil etdim, LAN və elektrik kabellərini bağladım və bir müddət sonra routerim yeni cihazı qeyd etdi.
Əla! Gəlin və buna SSH daxil olaq.
Təhlükəsizlik qaydasındadır, bəyəndim, amma bu işləri bir az da çətinləşdirir. Qabığa daxil olmaq və SSH-ni aktivləşdirmək üçün UART-USB adapterindən istifadə edəcəyəm …
UART əvəzinə bir ekran istifadə etmək işi çox asanlaşdırır.
Yenidən başladıqdan sonra nəhayət içəri girirəm.
Əvvəlcə ilk şeyləri yeniləyək:
sudo apt update && sudo apt upgrade -y
İndi bu təzə cihazı Buluda bağlayaq.
Addım 2: Cloud4RPi quraşdırın
IoT üçün hazırlanmış Cloud4RPi adlı bulud platformasını sınamağa qərar verdim.
Sənədlərə görə, onu işə salmaq üçün aşağıdakı paketlərə ehtiyacımız var:
sudo apt install git python3 python3 -pip -y
Müştəri kitabxanası tək bir əmrlə quraşdırıla bilər:
sudo pip3 cloud4rpi quraşdırın
İndi bir nümunə koduna ehtiyacımız var.
git klonu https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python && cd cloud4rpi-raspberrypi-python
İcra olunan skript control.py -dir.
Cloud4RPi -nin cihazları hesablarla əlaqələndirməsinə imkan verən bir mö'cüzəyə ehtiyacımız var. Birini əldə etmək üçün cloud4rpi.io saytında bir hesab yaradın və bu səhifədəki Yeni Cihaz düyməsini vurun. Control.py faylındakı _YOUR_DEVICE_TOKEN_ sətrini cihazınızın işarəsi ilə əvəz edin və faylı qeyd edin. İndi ilk buraxılışa hazırıq.
sudo python3 control.py
Cihaz səhifəsini açın və məlumatların orada olub olmadığını yoxlayın.
İndi real dünya məlumatlarına keçək.
Addım 3: Sensoru bağlayın
Bizə lazım olacaq:
- DHT22 və ya DHT11 rütubət sensoru
- Çəkmə müqaviməti (5-10 KΩ)
- Tellər
DHT22 sensoru eyni zamanda temperatur və rütubəti ölçür. Rabitə protokolu standart deyil, buna görə də onu raspi -config -də aktivləşdirməyimizə ehtiyac yoxdur - sadə bir GPIO pin kifayət qədərdir.
Məlumat əldə etmək üçün DHT sensorlar üçün Adafruit -in böyük kitabxanasından istifadə edəcəyəm, amma olduğu kimi işləməyə bilər. Bir dəfə kodumda aparatım üçün işləməyən qəribə daimi bir gecikmə tapdım və iki ildən sonra çəkmə tələbim hələ də gözləyir. BCM2835 ilə olan Raspberry Pi 1, Raspberry Pi 3 olaraq təəccüblü şəkildə aşkar edildiyi üçün lövhənin aşkar sabitlərini də dəyişdim. Doğru olmasını istərdim … Buna görə də çəngəlimi istifadə etməyi məsləhət görürəm. Bununla bağlı hər hansı bir problemlə qarşılaşsanız, zəhmət olmasa orijinal anbarı sınayın, bəlkə kimsə üçün işləyir, amma mən onlardan deyiləm.
git klonu https://github.com/Himura2la/Adafruit_Python_DHT.gitcd Adafruit_Python_DHT
Kitabxana C dilində yazıldığı üçün tərtib edilməsini tələb edir, buna görə də build-essential və python-dev paketlərinə ehtiyacınız var.
sudo apt install build-essential python-dev -ysudo python setup.py install
Paketlər quraşdırılarkən, şəkildə göstərildiyi kimi DHT22 -ni bağlayın.
Və sınayın:
cd ~ python -c "Adafruit_DHT'yi d olaraq idxal edin; d.read_retry çap edin (d. DHT22, 4)"
(39.20000076293945, 22.600000381469727) kimi bir şey görürsənsə, bilməlisən ki, bu, Selsi üzrə faizlərdəki rütubət və temperaturdur.
İndi hər şeyi birlikdə yığaq!
Addım 4: Sensor Oxumalarını Buluda Göndərin
Control.py -ni əsas olaraq istifadə edəcəm və ona DHT22 qarşılıqlı əlaqəsini əlavə edəcəyəm.
cp cloud4rpi-raspberrypi-python/control.py./cloud_dht22.pycp cloud4rpi-raspberrypi-python/rpi.py./rpi.pyvi cloud_dht22.py
Nümunə kodunu yuxarıdakı şəkildəki kimi silin.
DHT22 həm istiliyi, həm də rütubəti tək bir zənglə geri qaytardığından, onları dünya miqyasında saxlayacağam və aralarındakı gecikmənin 10 saniyədən çox olduğunu nəzərə alaraq, bir istəkdə yalnız bir dəfə yeniləyəcəyəm. DHT22 məlumatlarını əldə edən aşağıdakı kodu nəzərdən keçirin:
Adafruit_DHT idxal edin
temp, hum = Yox, yox
last_update = time.time () - 20
def update_data ():
qlobal 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 () dönmə dövrü (temp, 2) temp başqa deyilsə heç bir şey yoxdur get_h (): update_data () dönmə dövrü (uğultu, 2) başqa heç bir şey deyilsə
Mövcud idxaldan sonra bu kodu daxil edin və dəyişənlər hissəsini yeni funksiyalardan istifadə etmək üçün redaktə edin:
dəyişənlər = {'DHT22 Temp': {'type': 'numeric', 'bind': get_t}, 'DHT22 Rütubət': {'type': 'numeric', 'bind': get_h}, 'CPU Temp': {'type': 'numeric', 'bind': cpu_temp}}
Manipulyasiyaların qarışıq olduğunu görürsünüzsə, bu faylın son versiyasını götürün. Məlumat ötürülməsinə başlamaq üçün qırmızı düyməni basın:
Sonra cihaz səhifəsini yoxlaya bilərsiniz.
python3 bulud_dht22.py
Sonra cihaz səhifəsini yoxlaya bilərsiniz.
Olduğu kimi tərk edə bilərsiniz, amma hər şey üçün bir xidmətə sahib olmağı üstün tuturam. Bu, skriptin daim işlədiyini təmin edir. Artıq cloud4rpi-raspberrypi-python qovluğunda olan tam avtomatlaşdırılmış skriptlə bir xidmət yaratmaq:
service_install.sh cloud_dht22.py
Xidmətə başlamaq:
sudo xidməti cloud4rpi işə salın
Və yoxlayır:
pi@raspberrypi: ~ $ sudo xidməti cloud4rpi status -l ● cloud4rpi.service -Cloud4RPi daemon Yükləndi: yükləndi (/lib/systemd/system/cloud4rpi.service; aktivdir) Aktiv: aktivdir (çalışır) Çər 2017-05-17 20: 22: 48 UTC; 1 dəqiqə əvvəl Əsas PID: 560 (python) CGroup: /system.slice/cloud4rpi.service └─560/usr/bin/python /home/pi/cloud_dht22.py
17 May 20:22:51 raspberrypi python [560]: iot-hub/mesajların dərc edilməsi: {'type': 'config', 'ts': '2017-05-17T20… y'}]}
17 May 20:22:53 raspberrypi python [560]: iot-hub/mesajların dərc edilməsi: {'type': 'data', 'ts': '2017-05-17T20: 2… 40'}} 17 May 20: 22:53 raspberrypi python [560]: iot-hub/mesajların dərc edilməsi: {'type': 'system', 'ts': '2017-05-17T20….4'}}
Hər şey gözlənildiyi kimi işləyirsə, məlumatları idarə etmək üçün Cloud4RPi platformasının imkanlarından istifadə edə bilərik.
Addım 5: Qrafiklər və Siqnallar
Əvvəlcə dəyişənlərin necə dəyişdiyini görmək üçün plan quraq. Bu, yeni bir İdarəetmə Paneli əlavə etmək və lazımi diaqramları daxil etməklə edilə bilər.
Burada edə biləcəyimiz başqa bir şey bir Xəbərdarlıq qurmaqdır. Bu xüsusiyyət bir dəyişən üçün təhlükəsiz aralığı konfiqurasiya etməyə imkan verir. Aralığı aşan kimi bir e -poçt bildirişi göndərir. İdarəetmə Paneli düzəliş səhifəsində, Xəbərdarlıqlara keçə və birini qura bilərsiniz.
Bundan dərhal sonra heç bir səbəb olmadan otağımdakı rütubət sürətlə azalmağa başladı və tezliklə həyəcan siqnalı gəldi.
Python -u icra edə bilən hər hansı bir aparatla Cloud4RPi -dən pulsuz istifadə edə bilərsiniz. Mənim üçün indi hava nəmləndiricisini nə vaxt açacağımı bilirəm və hətta Cloud4RPi vasitəsi ilə uzaqdan idarəetmə rölesinə qoşa bilərəm. İstiyə hazıram! Xoş gəldiniz, Yaz!
Cloud4RPi ilə, Raspberry Pi və digər IoT cihazlarınızı uzaqdan real vaxtda idarə edə bilərsiniz. Saytımızı ziyarət edin və limitsiz cihazları pulsuz olaraq qoşun.
Tövsiyə:
NodeMCU Lua MicroPython Temperatur və Rütubət Qeydiyyatı, Wifi və Mobil İstatistikleri olan Ucuz 6 $ lövhəsi: 4 addım
NodeMCU Lua MicroPython Temperatur və Rütubət Qeydiyyatı, Wifi və Mobil İstatistikleri olan Ucuz 6 $ lövhəsi: Bu, əsasən buludlu hava stansiyasıdır, telefonunuzdakı məlumatları yoxlaya bilərsiniz və ya bir telefonu canlı ekran kimi istifadə edə bilərsiniz NodeMCU cihazı ilə kənarda temperatur və rütubət məlumatlarını qeyd edə bilərsiniz. , otaqda, istixanada, laboratoriyada, soyutma otağında və ya hər hansı bir yerdə tamamlandı
Arduino Avtomatik Temperatur və Rütubət Nəzarətçisini necə etmək olar: 3 addım
Arduino Avtomatik Temperatur və Rütubət Nəzarətçisini necə etmək olar: 1
Dexter lövhəsi ilə temperatur və rütubət sensoru (DHT22): 7 addım
Temperatur və Nəmlik Sensoru (DHT22) Dexter lövhəsi ilə: Dexter lövhəsi elektronikanı öyrənməyi əyləncəli və asanlaşdıran bir təhsil məşqçi dəstidir. Lövhə, yeni başlayanlar üçün bir fikri uğurlu bir prototipə çevirmək üçün lazım olan bütün zəruri hissələri bir araya gətirir. Ürəyində Arduino olmaqla, çoxlu sayda
NTP Zaman Damgası ilə ESP32 Məlumatlarını IoT Buludda Necə Nəşr Etmək olar: 5 addım
NSP Zaman Damğası ilə ESP32 Məlumatlarını IoT Buludda Necə Nəşr Etmək olar: Bir çox tətbiqdə istifadəçilər, yüklərində AskSensors IoT buluduna göndəriləcək dəyərlərin yerli zaman damgası ilə birlikdə məlumatlarını göndərməlidirlər. Zaman damgası formatı UNIX dövrüdür: Yanudan bəri keçən milisaniyələrin sayı
Buludda və MQTT -də Omnik İnverteri: 3 Adım (Şəkillərlə)
Buludda və MQTT -də Omnik İnverteri: Omnik simli çevirici istifadə edərək günəş enerjisi qurğum var. Omnik Çində yerləşən PV çeviricilər istehsalçısıdır və son dərəcə səmərəli qurğular hazırlayır. İsteğe bağlı olaraq, "bağlı" etmək üçün WiFi modulu quraşdıra bilərsiniz. Cox birlikdeyem