Isi kandungan:
- Bekalan
- Langkah 1: Menyiapkan Perkakasan
- Langkah 2: Memasang Cloud4RPi
- Langkah 3: Menyambungkan Sensor
- Langkah 4: Menghantar Bacaan Sensor ke Cloud
- Langkah 5: Carta dan Penggera
Video: Kelembapan di Awan: 5 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:08
Musim panas akan tiba, dan mereka yang tidak mempunyai penghawa dingin harus bersedia untuk mengawal suasana di dalam rumah secara manual. Dalam catatan ini, saya menerangkan cara moden untuk mengukur parameter terpenting untuk keselesaan manusia: suhu dan kelembapan. Data yang dikumpulkan ini dihantar ke awan dan diproses di sana.
Bekalan
Saya menggunakan papan Raspberry Pi dan sensor DHT22. Anda boleh melakukan perkara yang sama di mana-mana komputer yang mempunyai Internet, GPIO, dan Python. Sensor DHT11 yang lebih murah juga berfungsi dengan baik.
Langkah 1: Menyiapkan Perkakasan
Mari kita mulakan sejak awal, kerana saya sudah lama tidak menggunakan Raspberry Pi saya.
Kami memerlukan:
- Papan Raspberry Pi (atau platform berorientasikan IoT lain).
- Kad SD atau microSD (bergantung pada platform).
- 5V / 1A melalui kabel micro-USB. LAN, yang menyediakan sambungan Internet.
- Paparan HDMI, paparan RCA, atau port UART (untuk mengaktifkan SSH).
Langkah pertama ialah memuat turun Raspbian. Saya telah memilih versi Lite, kerana saya akan menggunakan SSH dan bukannya paparan.
Perkara telah berubah sejak kali terakhir saya melakukannya: sekarang ada perisian pembakar yang hebat yang disebut Etcher, yang berfungsi dengan sempurna, dan mempunyai reka bentuk yang menakjubkan.
Setelah pembakaran gambar selesai, saya memasukkan kad SD ke dalam Pi saya, menyambungkan LAN dan kabel kuasa, dan setelah beberapa ketika, penghala saya mendaftarkan peranti baru.
Hebat! Mari kita teruskan dan SSH ke dalamnya.
Keselamatan tidak apa-apa, saya suka, tetapi ini menjadikan keadaan menjadi lebih sukar. Saya akan menggunakan penyesuai UART-USB untuk mengakses shell dan mengaktifkan SSH…
Menggunakan paparan dan bukannya UART menjadikannya lebih mudah.
Selepas reboot, akhirnya saya masuk.
Perkara pertama yang pertama, mari kita kemas kini:
sudo apt update & sudo apt upgrade -y
Sekarang mari kita sambungkan peranti baru ini ke Cloud.
Langkah 2: Memasang Cloud4RPi
Saya memutuskan untuk mencuba platform awan bernama Cloud4RPi, yang direka untuk IoT.
Menurut dokumen, kami memerlukan pakej berikut untuk menjalankannya:
sudo apt pasang git python3 python3-pip -y
Perpustakaan pelanggan boleh dipasang dalam satu arahan:
sudo pip3 pasang cloud4rpi
Sekarang kita memerlukan beberapa contoh kod.
git klon https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python && cd cloud4rpi-raspberrypi-python
Skrip yang boleh dilaksanakan adalah control.py.
Kami memerlukan token, yang membolehkan Cloud4RPi menghubungkan peranti dengan akaun. Untuk mendapatkannya, buat akaun di cloud4rpi.io dan tekan butang Peranti Baru di halaman ini. Ganti rentetan _YOUR_DEVICE_TOKEN_ dalam fail control.py dengan token peranti anda dan simpan fail tersebut. Sekarang kami sudah bersedia untuk pelancaran pertama.
sudo python3 control.py
Buka halaman peranti dan periksa bahawa data ada.
Sekarang mari kita beralih ke data dunia nyata.
Langkah 3: Menyambungkan Sensor
Kami memerlukan:
- Sensor kelembapan DHT22 atau DHT11
- Perintang tarik (5-10 KΩ)
- Wayar
Sensor DHT22 mengukur suhu dan kelembapan secara serentak. Protokol komunikasi tidak standard, jadi kami tidak perlu mengaktifkannya dalam raspi-config - pin GPIO sederhana lebih daripada cukup.
Untuk memperoleh data, saya akan menggunakan perpustakaan hebat Adafruit untuk sensor DHT, tetapi mungkin tidak berfungsi seperti sedia kala. Saya pernah menemui kelewatan berterusan dalam kod, yang tidak berfungsi untuk perkakasan saya, dan setelah dua tahun permintaan penarik saya masih belum selesai. Saya juga telah menukar pemalar pengesanan papan kerana Raspberry Pi 1 saya dengan BCM2835 secara mengejutkan dikesan sebagai Raspberry Pi 3. Saya harap ia benar … Oleh itu, saya cadangkan menggunakan garpu saya. Sekiranya anda mengalami masalah dengannya, cubalah repositori asal, mungkin ia berfungsi untuk seseorang, tetapi saya bukan salah satu dari mereka.
git klon https://github.com/Himura2la/Adafruit_Python_DHT.gitcd Adafruit_Python_DHT
Oleh kerana perpustakaan ditulis dalam C, ia memerlukan penyusunan, jadi anda memerlukan pakej build-esensial dan python-dev.
sudo apt install build-essential python-dev -ysudo python setup.py pasang
Semasa pakej dipasang, sambungkan DHT22 seperti yang ditunjukkan dalam gambar.
Dan mengujinya:
cd ~ python -c "import Adafruit_DHT sebagai d; print d.read_retry (d. DHT22, 4)"
Sekiranya anda melihat sesuatu seperti (39.20000076293945, 22.600000381469727), anda harus tahu bahawa ini adalah kelembapan dalam sen dan suhu dalam Celsius.
Sekarang, mari kita mengumpulkan semuanya!
Langkah 4: Menghantar Bacaan Sensor ke Cloud
Saya akan menggunakan control.py sebagai asas dan menambahkan interaksi DHT22 ke dalamnya.
cp cloud4rpi-raspberrypi-python / control.py./cloud_dht22.pycp cloud4rpi-raspberrypi-python / rpi.py./rpi.pyvi cloud_dht22.py
Keluarkan contoh kod seperti dalam gambar di atas.
Oleh kerana DHT22 mengembalikan suhu dan kelembapan dalam satu panggilan, saya akan menyimpannya secara global dan mengemas kini hanya sekali dalam permintaan, dengan anggapan kelewatan di antara mereka melebihi 10 saat. Pertimbangkan kod berikut, yang memperoleh data DHT22:
import Adafruit_DHT
temp, hum = Tiada, Tiada
last_update = time.time () - 20
def update_data ():
tarikh terakhir global, 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 () pusingan kembali (temp, 2) jika suhu tidak ada yang lain Tidak ada def get_h (): update_data () pulangan pusingan (hum, 2) jika hum tidak ada yang lain Tiada
Masukkan kod ini setelah import yang ada dan edit bahagian pemboleh ubah sehingga menggunakan fungsi baru:
pemboleh ubah = {'DHT22 Temp': {'type': 'numeric', 'bind': get_t}, 'DHT22 Humidity': {'type': 'numeric', 'bind': get_h}, 'CPU Temp': {'type': 'numeric', 'bind': cpu_temp}}
Sekiranya anda mendapati manipulasi mengelirukan, ambil versi akhir fail ini. Tekan butang merah untuk memulakan pemindahan data:
Kemudian anda boleh menyemak halaman peranti.
python3 cloud_dht22.py
Kemudian anda boleh menyemak halaman peranti.
Anda boleh membiarkannya seperti sedia ada, tetapi saya lebih suka mempunyai perkhidmatan untuk semuanya. Ini memastikan bahawa skrip sentiasa berjalan. Membuat perkhidmatan dengan skrip automatik sepenuhnya yang sudah anda miliki di direktori cloud4rpi-raspberrypi-python:
service_install.sh cloud_dht22.py
Memulakan perkhidmatan:
perkhidmatan sudo cloud4rpi bermula
Dan memeriksanya:
pi @ raspberrypi: ~ $ sudo service status cloud4rpi -l ● cloud4rpi.service - Cloud4RPi daemon Dimuat: dimuat (/lib/systemd/system/cloud4rpi.service; diaktifkan) Aktif: aktif (berjalan) sejak Rab 2017-05-17 20: 22: 48 UTC; 1 minit yang lalu Main PID: 560 (python) CGroup: /system.slice/cloud4rpi.service └─560 / usr / bin / python /home/pi/cloud_dht22.py
17 Mei 20:22:51 raspberrypi python [560]: Penerbitan iot-hub / message: {'type': 'config', 'ts': '2017-05-17T20… y'}]}
17 Mei 20:22:53 raspberrypi python [560]: Penerbitan iot-hub / message: {'type': 'data', 'ts': '2017-05-17T20: 2… 40'}} 17 Mei 20: 22:53 raspberrypi python [560]: Penerbitan iot-hub / message: {'type': 'system', 'ts': '2017-05-17T20….4'}}
Sekiranya semuanya berfungsi seperti yang diharapkan, kita boleh terus menggunakan dan menggunakan kemampuan platform Cloud4RPi untuk memanipulasi data.
Langkah 5: Carta dan Penggera
Pertama sekali, mari kita plot pemboleh ubah untuk melihat bagaimana perubahannya. Ini dapat dilakukan dengan menambahkan Panel Kawalan baru dan meletakkan carta yang diperlukan di dalamnya.
Perkara lain yang boleh kita lakukan di sini ialah menetapkan Makluman. Ciri ini membolehkan anda mengkonfigurasi julat selamat untuk pemboleh ubah. Sebaik sahaja rentang dilampaui, ia akan mengirimkan pemberitahuan e-mel. Pada halaman pengeditan Panel Kawalan, anda boleh beralih ke Makluman dan menetapkannya.
Sejurus selepas itu, kelembapan di bilik saya mulai berkurang dengan cepat tanpa sebab yang jelas, dan penggera segera menyusul.
Anda boleh menggunakan Cloud4RPi secara percuma dengan mana-mana perkakasan yang dapat melaksanakan Python. Bagi saya, sekarang saya selalu tahu kapan menghidupkan pelembap udara, dan saya juga boleh menyambungkannya ke geganti untuk kawalan jauh melalui Cloud4RPi. Saya bersedia untuk panas! Selamat datang musim panas!
Dengan Cloud4RPi, anda dapat mengawal Raspberry Pi dan peranti IoT anda yang lain dari jauh dalam masa nyata. Lawati laman web kami dan sambungkan peranti tanpa had secara percuma.
Disyorkan:
Awan Warna yang Dikendalikan Aplikasi: 7 Langkah (dengan Gambar)
Awan Warna yang Dikendalikan Aplikasi: Hai, dalam instruksional ini saya menunjukkan kepada anda cara membina lampu bilik dari grid laluan kerikil. Seluruh perkara dapat dikendalikan melalui WLAN dengan aplikasi. Tetapi pada akhirnya anda dapat membuatnya dengan
Mengautomasikan Rumah Hijau Dengan LoRa! (Bahagian 1) -- Sensor (Suhu, Kelembapan, Kelembapan Tanah): 5 Langkah
Mengautomasikan Rumah Hijau Dengan LoRa! (Bahagian 1) || Sensor (Suhu, Kelembapan, Kelembapan Tanah): Dalam projek ini saya akan menunjukkan kepada anda bagaimana saya mengautomasikan rumah hijau. Ini bermakna saya akan menunjukkan kepada anda bagaimana saya membina rumah hijau dan bagaimana saya menyusun elektrik dan automasi elektrik. Juga saya akan menunjukkan kepada anda cara memprogram papan Arduino yang menggunakan L
Pembalakan Suhu dan Kelembapan Raspberry PI, Stesen Cuaca Awan, Statistik Wifi dan Mudah Alih: 6 Langkah
Pembalakan Suhu dan Kelembapan Raspberry PI, Stesen Cuaca Awan, Wifi dan Statistik Bergerak: Dengan peranti Raspberry PI anda dapat mencatat data suhu dan kelembapan di luar, di dalam bilik, rumah hijau, makmal, bilik penyejuk atau tempat-tempat lain secara percuma. Contoh ini akan kita gunakan untuk mencatat suhu dan kelembapan. Peranti akan disambungkan ke internet
Monitor Kelembapan Tanpa Wayar (ESP8266 + Sensor Kelembapan): 5 Langkah
Monitor Kelembapan Tanpa Wayar (Sensor Kelembapan ESP8266 +): Saya membeli pasli dalam periuk, dan hampir sepanjang hari, tanah kering. Oleh itu, saya memutuskan untuk membuat projek ini, mengenai merasakan kelembapan tanah di dalam periuk dengan pasli, untuk memeriksa, apabila saya memerlukan menuangkan tanah dengan air. Saya rasa, sensor ini (Sensor kelembapan kapasitif v1.2) adalah baik
YABC - Namun Pengawal Blynk Lain - Pengawal Suhu dan Kelembapan Awan IoT, ESP8266: 4 Langkah
YABC - Namun Pengawal Blynk Yang Lain - Pengawal Suhu dan Kelembapan Awan IoT, ESP8266: Hai Pembuat, Saya baru-baru ini mula menanam cendawan di rumah, cendawan tiram, tetapi saya sudah mempunyai 3x pengawal ini di rumah untuk kawalan Suhu Fermenter untuk bir rumah saya, isteri juga melakukan perkara Kombucha ini sekarang, dan sebagai Termostat untuk Panas