{"id":342,"date":"2026-09-09T03:45:39","date_gmt":"2026-09-09T02:45:39","guid":{"rendered":"https:\/\/kuliahelektro.org\/?p=342"},"modified":"2026-09-09T03:45:39","modified_gmt":"2026-09-09T02:45:39","slug":"tutorial-esp32-membuat-alat-monitoring-ketinggian-air-sungai-alarm-banjir-iot-dengan-blynk-lcd","status":"publish","type":"post","link":"https:\/\/kuliahelektro.org\/?p=342","title":{"rendered":"Tutorial ESP32 Membuat Alat Monitoring Ketinggian Air Sungai + Alarm Banjir IoT dengan Blynk &amp; LCD"},"content":{"rendered":"\n<p><strong>Tutorial ESP32 Membuat Alat Monitoring Ketinggian Air Sungai + Alarm Banjir IoT dengan Blynk &amp; LCD<\/strong><\/p>\n\n\n\n<p>Pada bagian ini akan dibahas pembuatan sistem monitoring ketinggian air sungai dan alarm banjir menggunakan mikrokontroler ESP32, sensor jarak, dan sistem Internet of Things (IoT) dengan Blynk IoT, serta software simulasi WOKWI. Skematik rangkaian ditunjukkan pada Gambar 1, program Arduino pada Kode 1, dan video pembuatan pada tautan Video 1. Ketinggian air akan diukur dan ditampilkan pada LCD 16&#215;2. Pada kondisi batas tertentu, buzzer alarm dan lampu indikator LED akan menyala otomatis serta mengunggah data ke aplikasi Blynk IoT.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.youtube.com\/watch?v=tate7-jDHkE&amp;lc=UgyOhazzl_Oi_pYJsH14AaABAg\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"603\" src=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/09\/image-3-1024x603.png\" alt=\"\" class=\"wp-image-343\" srcset=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/09\/image-3-1024x603.png 1024w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/09\/image-3-300x177.png 300w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/09\/image-3-768x452.png 768w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/09\/image-3.png 1183w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p class=\"has-text-align-center\"><strong>Gambar 1. Skematik rangkaian sistem<\/strong><\/p>\n\n\n\n<p>Pemetaan PIN:<br>* <strong>LCD 16\u00d72 I2C<\/strong><br>GND => GND<br>VCC => 5V<br>SDA => 21<br>SCL => 22<br>* <strong>HC-SR04<\/strong><br>VCC => 5V<br>TRIG => 5<br>ECHO => 18<br>GND => GND<br>* <strong>BUZZER<\/strong><br>GND \u2013 GND<br>OUT \u2013 13<\/p>\n\n\n\n<p class=\"has-text-align-center\"><strong>Kode Arduino 1. Kode Program<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ ============================= \r\n\/\/ ALFIAN CENTER \r\n\/\/ SUBSCRIBE \r\n\/\/ Tutorial ESP32 Membuat Alat Monitoring Ketinggian Air Sungai dengan Alarm Banjir IoT dengan Blynk &amp; LCD\r\n\/\/ PROGRAM BAKAL AKU KIRIM DENGAN SYARAT DIBAWAH \r\n\/\/ 50 LIKE, 20 KOMEN DAN *WAJIB SUBSCRIBE*\r\n\/\/ PROGRAM DIKIRIM VIA KOMENTAR \r\n\/\/ =============================\r\n\r\n#define BLYNK_TEMPLATE_ID \"MASUKKAN_ID_DISINI\"\r\n#define BLYNK_TEMPLATE_NAME \"Alarm Banjir IoT\"\r\n#define BLYNK_AUTH_TOKEN \"MASUKKAN_TOKEN_DISINI\"\r\n\r\n#include &lt;WiFi.h>\r\n#include &lt;BlynkSimpleEsp32.h>\r\n#include &lt;LiquidCrystal_I2C.h>\r\n\r\nchar auth&#91;] = BLYNK_AUTH_TOKEN;\r\nchar ssid&#91;] = \"Wokwi-GUEST\";\r\nchar pass&#91;] = \"\";\r\n\r\nLiquidCrystal_I2C lcd(0x27, 16, 2);\r\n\r\nconst int trigPin = 5;\r\nconst int echoPin = 18;\r\nconst int buzzerPin = 13;\r\n\r\n\/\/ --- KALIBRASI ---\r\nconst int tinggiMaksimal = 100; \/\/ Jarak sensor ke dasar (dalam cm)\r\nint tinggiAir = 0;\r\nbool sedangBanjir = false;\r\n\r\nBlynkTimer timer;\r\n\r\nvoid monitoringSistem() {\r\n  digitalWrite(trigPin, LOW);\r\n  delayMicroseconds(2);\r\n  digitalWrite(trigPin, HIGH);\r\n  delayMicroseconds(10);\r\n  digitalWrite(trigPin, LOW);\r\n  \r\n  long durasi = pulseIn(echoPin, HIGH);\r\n  int jarakSensor = durasi * 0.034 \/ 2;\r\n\r\n  \/\/ Rumus Konversi ke Ketinggian Air\r\n  tinggiAir = tinggiMaksimal - jarakSensor;\r\n  \r\n  \/\/ Mencegah nilai minus jika ada error pembacaan\r\n  if (tinggiAir &lt; 0) tinggiAir = 0; \r\n\r\n  \/\/ Tampilan LCD Baris 1\r\n  lcd.setCursor(0, 0);\r\n  lcd.print(\"Air: \");\r\n  lcd.print(tinggiAir);\r\n  lcd.print(\" cm \/ \");\r\n  lcd.print(tinggiMaksimal);\r\n  lcd.print(\"cm \");\r\n\r\n  \/\/ --- LOGIKA ALARM BERDASARKAN TINGGI AIR ---\r\n  \/\/ Kita set Bahaya jika air sudah setinggi 85cm (atau sisa 15cm ke sensor)\r\n  if (tinggiAir >= 85) { \r\n    tone(buzzerPin, 1000);\r\n    lcd.setCursor(0, 1);\r\n    lcd.print(\"STATUS: BAHAYA!!\");\r\n\r\n    if (sedangBanjir == false) {\r\n      Blynk.virtualWrite(V0, 1); \/\/ Aktifkan Alarm and Sound di Web\r\n      Blynk.logEvent(\"peringatan_banjir\", \"WASPADA! Ketinggian air kritis!\");\r\n      sedangBanjir = true;\r\n    }\r\n  } \r\n  else {\r\n    noTone(buzzerPin);\r\n    lcd.setCursor(0, 1);\r\n    lcd.print(\"STATUS: AMAN    \");\r\n\r\n    if (sedangBanjir == true) {\r\n      Blynk.virtualWrite(V0, 0); \/\/ Matikan Alarm and Sound di Web\r\n      sedangBanjir = false;\r\n    }\r\n  }\r\n\r\n  \/\/ Kirim data ketinggian ke Blynk V1\r\n  Blynk.virtualWrite(V1, tinggiAir);\r\n  \/\/ Kirim data ketinggian ke Blynk V2\r\n  Blynk.virtualWrite(V2, jarakSensor);\r\n}\r\n\r\nvoid setup() {\r\n  lcd.init();\r\n  lcd.backlight();\r\n  pinMode(trigPin, OUTPUT);\r\n  pinMode(echoPin, INPUT);\r\n  pinMode(buzzerPin, OUTPUT);\r\n\r\n  Blynk.begin(auth, ssid, pass);\r\n  timer.setInterval(1000L, monitoringSistem);\r\n}\r\n\r\nvoid loop() {\r\n  Blynk.run();\r\n  timer.run();\r\n}<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.youtube.com\/watch?v=tate7-jDHkE&amp;lc=UgyOhazzl_Oi_pYJsH14AaABAg\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"576\" src=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/09\/image-4-1024x576.png\" alt=\"\" class=\"wp-image-344\" srcset=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/09\/image-4-1024x576.png 1024w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/09\/image-4-300x169.png 300w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/09\/image-4-768x432.png 768w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/09\/image-4-1536x864.png 1536w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/09\/image-4-2048x1152.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p class=\"has-text-align-center\"><strong>Video 1. Video tutorial pembuatan simulasi di WOKWI<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Tutorial ESP32 Membuat Alat Monitoring Ketinggian Air Sungai + Alarm Banjir IoT dengan Blynk &amp; LCD Pada bagian ini akan dibahas pembuatan sistem monitoring ketinggian air sungai dan alarm banjir menggunakan mikrokontroler ESP32, sensor jarak, dan sistem Internet of Things (IoT) dengan Blynk IoT, serta software simulasi WOKWI. Skematik rangkaian ditunjukkan pada Gambar 1, program Arduino pada Kode 1, dan&#8230;<\/p>\n","protected":false},"author":3,"featured_media":345,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[],"_links":{"self":[{"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/posts\/342"}],"collection":[{"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=342"}],"version-history":[{"count":1,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/posts\/342\/revisions"}],"predecessor-version":[{"id":346,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/posts\/342\/revisions\/346"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/media\/345"}],"wp:attachment":[{"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=342"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=342"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=342"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}