Daftar Isi:
- Langkah 1: Bagian yang Anda Butuhkan
- Langkah 2: Diagram Sirkuit
- Langkah 3: Membangun Sirkuit
- Langkah 4: Mem-flash ESP-01
- Langkah 5: Uji Coba
- Langkah 6: Pasang Sensor
- Langkah 7: Sentuhan Terakhir
Video: Sensor WIFI MQTT/Google Home Banjir/Air Dengan ESP-01: 7 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
Dalam instruksi ini, saya akan menunjukkan cara membangun sensor banjir/air wifi dengan biaya minimal. Seluruh proyek menghabiskan biaya kurang dari $8 untuk suku cadang yang saya peroleh dari ebay dan suku cadang saya yang ada.
Dalam proyek ini, kami akan menggunakan ESP-01 untuk menyediakan klien Wifi dan MQTT untuk mendeteksi keberadaan air, dan secara opsional menggunakan speaker/buzzer yang terhubung langsung untuk memberikan alarm lokal.
Aplikasi khusus saya untuk proyek ini adalah untuk mendeteksi banjir/air di dalam sumur pompa bah saya, dalam kasus kegagalan pompa bah. Ketika air terdeteksi oleh 2 kabel terbuka, itu akan mengirim pesan ke broker MQTT. Broker MQTT kemudian akan menyampaikan pesan tersebut ke NodeRED. Setelah menerima pesan MQTT, NodeRED akan mengirimkan pengumuman ke beberapa perangkat google home dan juga secara opsional mengirim pesan ke ponsel/browser melalui pushbullet
Sekarang tentu saja proyek ini hanya akan bekerja jika listrik rumah ON. Dalam instruksi berikutnya saya akan mengintegrasikan sirkuit cadangan baterai. Tetapi jika Anda membuat catu daya dengan cara yang sama seperti yang saya lakukan, Anda cukup mencolokkan bank daya USB untuk cadangan baterai. Jika Anda memiliki bank daya yang memungkinkan Anda mengisi daya dan memasok daya secara bersamaan, maka Anda sudah siap.
Saya menggunakan RaspberryPi ZeroW untuk meng-host server Mosquitto MQTT dan NodeRED. Sudah berjalan lebih dari setahun tanpa masalah.
Referensi: Raspberry Pi: https://www.switchdoc.com/2016/02/tutorial-installi…Instal NodeRED di Raspberry Pi:
Langkah 1: Bagian yang Anda Butuhkan
Daftar Bagian:
(1) ESP-01
(2) Resistor 10K ohm
(1) transistor NPN generik sinyal kecil (saya menggunakan 2N3904)
(2) kabel panjang
(1) Catu daya generik 5V (sirkuit ini membutuhkan arus kurang dari 300mA)
(1) modul regulator 3.3V AMS1117
(1) Micro-USB To DIP Adapter Female Connector PCB Converter DIY Kit
(1) kabel USB-A ke MicroUSB.
(1) Soket IC 8-pin - dapat dihilangkan jika Anda ingin menyolder ESP-01 langsung ke papan sirkuit. Potong jembatan plastik yang membuat celah di antara baris, lalu rekatkan 2 baris, lihat foto.
(1) Kandang kecil untuk proyek
Di bawah ini adalah bagian opsional jika Anda memerlukan alarm lokal menggunakan speaker/buzzer
(1) Transistor PNP Generik, pilih sesuai dengan kebutuhan arus/watt speaker/buzzer. Dalam kasus saya, saya menggunakan 2N2907 karena speaker saya hanya 0,3W (8 ohm), itu akan memberikan daya yang cukup untuk menggerakkan speaker. Anda dapat memilih transistor & speaker yang lebih besar jika Anda menginginkan suara yang lebih keras.
(1) Speaker, lihat catatan pada Transistor PNP di atas
(1) Resistor 100 - 110 ohm
Langkah 2: Diagram Sirkuit
Langkah pertama adalah membuat sirkuit yang ditunjukkan pada diagram.
Saya membangun catu daya 3.3VDC menggunakan charger ponsel 5V lama yang digabungkan dengan regulator AMS1117 3.3VDC. Untuk soket ESP-01, saya menggunakan soket IC standar 8-pin, dan memotong jembatan plastik yang membuat celah di antara baris, lalu merekatkan 2 baris menjadi satu.
Rangkaian yang saya rancang adalah untuk merasakan adanya air di antara dua kabel. Ketika air mencapai ujung kedua kabel, itu akan menciptakan hambatan sekitar 10K hingga 20K ohm. Kemudian secara seri dengan 10K ohm R1, ia memberikan arus kecil ke dasar Q1 yang menyebabkan Q1 jenuh, menjepit GPIO-2 ke ground. R1 diperlukan untuk memberikan perlindungan ke Q1 jika terjadi korsleting yang tidak disengaja pada kabel penginderaan.
R2 adalah resistor pull-up untuk memungkinkan ESP-01 melakukan booting dari flash.
Sekarang untuk speaker/buzzer opsional, jika Anda hanya membutuhkan ESP-01 untuk berbicara MQTT dan tidak ingin menerapkan alarm lokal ini, Anda dapat menghapus R2, Q2, Speaker, dan menempatkan resistor pull-up 10K antara GPIO-0 dan VCC.
Jika Anda tidak merasa perlu menggunakan adaptor Micro-USB ke DIP wanita, Anda dapat menyolder kabel antara 5V PS ke modul regulator 3.3V. Saya lebih suka menggunakan adaptor MicroUSB perempuan sehingga saya bisa menggunakan charger ponsel generik dan kabel MicroUSB.
Langkah 3: Membangun Sirkuit
Solder semua komponen dan part ke dalam PCB sesuai dengan diagram rangkaian di halaman sebelumnya, dan potong PCB sesuai ukuran.
Tempatkan PCB di dalam wadah yang sesuai dengan PCB dan speaker opsional. Dalam kasus saya, semua bagian akan muat di dalam kotak outlet telepon kecil, meskipun saya harus memanaskan penutup sedikit untuk membuat tonjolan sehingga modul ESP-01 akan muat.
Langkah 4: Mem-flash ESP-01
Pada langkah ini, kita akan mem-flash ESP-01 dengan sketsa arduino. Jika Anda belum pernah menginstal modul ESP-01, Anda dapat mengikuti instruksi saya untuk memulai:
Anda dapat menemukan sketsa saya di halaman github saya:
Dalam sketsa, minimal Anda perlu mengubah informasi berikut yang berkaitan dengan jaringan/pengaturan rumah Anda:
#define MQTT_SERVER "10.0.0.30"const char* ssid1 = "SSID";const char* password1 = "MYSSIDpassword";const char* ssid2 = "SSID1";const char* password2 = "MYSSIDpassword";
Di jaringan rumah saya, saya memiliki 2 titik akses berbeda yang menyiarkan 2 SSID berbeda, dan sketsa ini akan memungkinkan redundansi dengan menghubungkan ke SSID berikutnya jika komunikasi ke AP saat ini terputus. Jika Anda hanya memiliki satu SSID, isi ssid1 dan ssid2 dengan nilai yang sama.
Setelah Anda melakukan modifikasi, unggah sketsa ke ESP-01, dan colokkan ESP-01 ke papan antarmuka.
Langkah 5: Uji Coba
Untuk menguji apakah proyek kita berhasil, cara termudah adalah dengan memantau pesan MQTT di jaringan. Untuk melakukan itu, Anda perlu membuka sesi SSH ke broker nyamuk dan mengeluarkan perintah berikut:
mosquitto_sub -v -t '#'
Perintah di atas akan memungkinkan kita untuk melihat semua pesan MQTT yang masuk ke broker.
Sekarang nyalakan sirkuit kami, dan jika semuanya berfungsi, dalam beberapa detik Anda setidaknya akan melihat pesan MQTT berikut:
stat/SumpWaterSensor/LWT Online
Sekarang uji sensor air dengan mencelupkan 2 kabel penginderaan ke dalam secangkir air, dan Anda akan melihat pesan ini:
tele/SumpWaterSensor BASAH
Dan jika Anda mengeluarkan kabel dari air, Anda akan melihat pesan ini:
tele/SumpWaterSensor KERING
Jika Anda melihat pesan-pesan itu, proyek Anda berhasil.
Saya juga menyertakan beberapa topik MQTT yang berguna dalam sketsa yang dapat Anda gunakan:
"stat/SumpWaterSensorInfo": pesan ini dikirim setiap menit untuk memberikan waktu aktif dan info lainnya.
"cmnd/SumpWaterSensorInfo": ESP-01 akan mengirimkan info jika menerima topik ini dengan nilai '1' (ascii=49)
"cmnd/SumpWaterSensorCPUrestart": ESP-01 akan restart jika menerima topik ini dengan nilai '1' (ascii=49)
"cmnd/SumpWaterSensorBeep": ESP-01 akan membunyikan speaker jika menerima topik ini dengan nilai '1' (ascii=49)
"cmnd/SumpWaterSensorBeepFreq": Mengatur frekuensi alarm speaker, default = 900 (Hz)
"cmnd/SumpWaterSensorDebug": Mengaktifkan dan mengatur level debugging serial (default adalah 0 - tidak ada debugging)
Langkah 6: Pasang Sensor
Dalam aplikasi saya, saya ingin memantau ketinggian air di dalam sumur pompa bah saya, dan memberi tahu saya jika air mencapai di atas sakelar pelampung pompa bah, yang berarti pompa bah saya tidak berfungsi. Saya menjalankan kabel dan menggunakan ikatan kawat untuk mengamankannya di sepanjang pipa pembuangan.
Langkah 7: Sentuhan Terakhir
Sekarang setelah proyek berjalan dan dapat mempublikasikan pesan MQTT ke broker, langkah selanjutnya adalah memikirkan ide apa yang harus dilakukan dengan itu.
Dalam proyek saya, saya menggunakan Node-RED untuk mendengarkan/berlangganan topik MQTT "tele/SumpWaterSensor" dan mengumumkan ke beberapa speaker rumah google jika air terdeteksi. Selain itu, saya juga menghubungkan aliran ke node pushbullet untuk mengirim pemberitahuan ke ponsel android saya.
Saya juga membuat web front-end untuk melihat status sensor (on/offline, uptime, dll). Terkadang saya melihat beberapa kali offline dalam waktu 1 minggu, dari statistik, sering kali karena ESP-01 terputus dari wifi atau MQTT. Tapi jangan khawatir, sketsa saya sudah termasuk rutin untuk me-restart ESP-01 jika terus gagal mencoba terhubung ke WIFI dan/atau broker MQTT.
Gambar pada langkah ini, menunjukkan aliran Node-RED untuk mencapai hal ini. Anda juga dapat menempelkan aliran dari halaman github saya ke Node-RED Anda:
Pengumuman beranda Google hanyalah salah satu contoh untuk proyek ini, tetapi menurut saya ini yang paling berguna dan praktis. Anda selalu dapat berinteraksi dengan pendengar MQTT lainnya, atau bahkan menggunakan IFTTT untuk menggerakkan perangkat lain saat air terdeteksi.
Selamat bersenang-senang…
Direkomendasikan:
Memulai Dengan Esp 8266 Esp-01 Dengan Arduino IDE - Memasang Papan Esp di Arduino Ide dan Pemrograman Esp: 4 Langkah
Memulai Dengan Esp 8266 Esp-01 Dengan Arduino IDE | Memasang Papan Esp di Ide dan Pemrograman Arduino Esp: Dalam instruksi ini kita akan belajar cara memasang papan esp8266 di Arduino IDE dan cara memprogram esp-01 dan mengunggah kode di dalamnya. ini dan kebanyakan orang menghadapi masalah
HRV (Home Air Exchanger) Arduino Controller Dengan Air Economizer: 7 Langkah (dengan Gambar)
HRV (Home Air Exchanger) Arduino Controller Dengan Air Economizer: HRV Arduino Controller dengan Air EconomizerJadi sejarah saya dengan proyek ini adalah saya tinggal di Minnesota dan papan sirkuit saya digoreng di LifeBreath 155Max HRV saya. Saya tidak ingin membayar $200 untuk yang baru. Saya selalu menginginkan sesuatu dengan penghemat udara dosa
Alarm Banjir Basement Daya Sangat Rendah Dengan ESP8266: 3 Langkah
Alarm Banjir Basement Daya Sangat Rendah Dengan ESP8266: Halo, selamat datang di instruksi pertama saya. Ruang bawah tanah rumah saya kebanjiran setiap beberapa tahun karena berbagai alasan seperti badai petir musim panas yang lebat, air tanah yang tinggi, atau bahkan pipa pecah. Meskipun ini bukan tempat yang bagus, tapi pemanas sentral saya
Sistem Peringatan Banjir - Ketinggian Air + Panduan Pemantauan Sensor IoT: 6 Langkah
Sistem Peringatan Banjir - Ketinggian Air + Panduan Pemantauan Sensor IoT: Apakah Anda perlu memantau ketinggian air? Anda akan mempelajari cara membuat sistem pemantauan ketinggian air dalam tutorial ini. Perangkat IoT Industri ini digunakan sebagai sistem peringatan banjir di AS. Untuk menjaga Anda dan komunitas Anda tetap aman, Smart Cities perlu
Metode Deteksi Ketinggian Air Arduino Menggunakan Sensor Ultrasonik dan Sensor Air Funduino: 4 Langkah
Metode Deteksi Ketinggian Air Arduino Menggunakan Sensor Ultrasonik dan Sensor Air Funduino: Dalam proyek ini, saya akan menunjukkan cara membuat detektor air murah menggunakan dua metode:1. Sensor ultrasonik (HC-SR04).2. Sensor air funduino