{"id":578,"date":"2026-10-26T05:44:20","date_gmt":"2026-10-26T05:44:20","guid":{"rendered":"https:\/\/kuliahelektro.org\/?p=578"},"modified":"2026-10-26T05:44:20","modified_gmt":"2026-10-26T05:44:20","slug":"tutorial-esp32-cara-membuat-jemuran-pintar-otomatis-smart-clothesline-dengan-fitur-solar-tracking-cari-matahari-sensor-anti-hujan-berbasis-blynk-iot-pada-wokwi","status":"publish","type":"post","link":"https:\/\/kuliahelektro.org\/?p=578","title":{"rendered":"Tutorial ESP32: Cara Membuat Jemuran Pintar Otomatis (Smart Clothesline) dengan Fitur Solar Tracking (Cari Matahari) &amp; Sensor Anti Hujan Berbasis Blynk IoT pada WOKWI"},"content":{"rendered":"\n<p>Pada bagian ini akan dibahas pembuatan sistem jemuran pintar otomatis (Smart Clothesline) berbasis mikrokontroler ESP32, dua sensor cahaya LDR untuk pelacakan arah matahari (Solar Tracking), sensor pendeteksi hujan, motor servo sebagai penggerak atap atau jemuran, layar LCD 16&#215;2 I2C, serta platform Blynk IoT pada software simulasi WOKWI. Skematik rangkaian ditunjukkan pada Gambar 1, program Arduino pada Kode 1, dan video pembuatan pada tautan Video 1. Sistem secara cerdas melacak intensitas cahaya matahari optimal (menghadap kiri, kanan, atau posisi tengah) ketika kondisi cuaca cerah. Apabila sensor mendeteksi adanya air hujan, sistem secara otomatis menutup atap jemuran untuk mengamankan pakaian, membunyikan log notifikasi darurat ke aplikasi Blynk, serta menyediakan fitur kontrol manual (forced close) jarak jauh via dashboard Blynk.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.youtube.com\/watch?v=NSeb2gb7Kbg&amp;lc=Ugy5Zyf2z3GB98FA7Yp4AaABAg\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" loading=\"lazy\" width=\"1286\" height=\"723\" src=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/Screenshot-2026-06-15-071247-1-edited.png\" alt=\"\" class=\"wp-image-583\" srcset=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/Screenshot-2026-06-15-071247-1-edited.png 1286w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/Screenshot-2026-06-15-071247-1-edited-300x169.png 300w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/Screenshot-2026-06-15-071247-1-edited-1024x576.png 1024w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/Screenshot-2026-06-15-071247-1-edited-768x432.png 768w\" sizes=\"(max-width: 1286px) 100vw, 1286px\" \/><\/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><strong>List Pin:<\/strong><\/p>\n\n\n\n<ul>\n<li>Sensor Cahaya LDR (Solar Tracking)<br>LDR Kiri (Analog Input) =&gt; GPIO 34 (LDR_KIRI)<br>LDR Kanan (Analog Input) =&gt; GPIO 35 (LDR_KANAN)<br>VCC =&gt; 3.3V<br>GND =&gt; GND<\/li>\n\n\n\n<li>Sensor Hujan (Rain Sensor \/ Potensiometer Simulasi)<br>Analog Output (AO) =&gt; GPIO 32 (RAIN_PIN)<br>VCC =&gt; 3.3V \/ 5V<br>GND =&gt; GND<\/li>\n\n\n\n<li>Display LCD 16&#215;2 I2C (Alamat: 0x27)<br>GND =&gt; GND<br>VCC =&gt; 5V \/ 3.3V<br>SDA =&gt; GPIO 21<br>SCL =&gt; GPIO 22<\/li>\n\n\n\n<li>Motor Servo Penggerak Jemuran \/ Atap<br>Signal (PWM) =&gt; GPIO 18 (SERVO_PIN)<br>VCC =&gt; 5V<br>GND =&gt; GND<\/li>\n<\/ul>\n\n\n\n<p><strong>List Virtual PIN:<\/strong><\/p>\n\n\n\n<ul>\n<li>V0 =&gt; Lux Kiri (Float) &#8211; Datastream Intensitas Cahaya Sisi Kiri dari Sensor LDR Kiri<\/li>\n\n\n\n<li>V1 =&gt; Lux Kanan (Float) &#8211; Datastream Intensitas Cahaya Sisi Kanan dari Sensor LDR Kanan<\/li>\n\n\n\n<li>V2 =&gt; Status Jemuran (String) &#8211; Menampilkan Status Operasional Sistem (&#8220;TRACKING SUN&#8221;, &#8220;HUJAN! ATAP TUTUP&#8221;, atau &#8220;FORCED CLOSE HP&#8221;)<\/li>\n\n\n\n<li>V3 =&gt; System Mode Switch (Integer 0\/1) &#8211; Sakelar Kontrol Paksa Tutup Jemuran dari Aplikasi Blynk (0 = Mode Auto, 1 = Paksa Tutup)<\/li>\n<\/ul>\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\/\/ Bikin Jemuran Pintar IoT! Otomatis Cari Matahari &amp; Anti Hujan Berbasis ESP32 IoT Blynk (Wokwi)\r\n\/\/ PROGRAM BAKAL AKU KIRIM DENGAN SYARAT DIBAWAH \r\n\/\/ LIKE 50, KOMEN 30 DAN * WAJIB SUBSCRIBE *\r\n\/\/ PROGRAM DIKIRIM VIA KOMENTAR \r\n\/\/ =============================\r\n\r\n#define BLYNK_TEMPLATE_ID \"ID\"\r\n#define BLYNK_TEMPLATE_NAME \"NAME\"\r\n#define BLYNK_AUTH_TOKEN \"TOKEN\"\r\n\r\n#include &lt;WiFi.h>\r\n#include &lt;BlynkSimpleEsp32.h>\r\n#include &lt;LiquidCrystal_I2C.h>\r\n#include &lt;ESP32Servo.h>\r\n\r\n#define LDR_KIRI 34\r\n#define LDR_KANAN 35\r\n#define RAIN_PIN 32\r\n#define SERVO_PIN 18\r\n\r\nconst float GAMMA = 0.7;\r\nconst float RL10 = 50;\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\nBlynkTimer timer;\r\nServo jemuranServo;\r\n\r\nint modeSistem = 0; \/\/ 0 = Auto, 1 = Paksa Tutup dari HP\r\nint sudutServo = 90; \/\/ Posisi awal di tengah\r\n\r\nBLYNK_WRITE(V3) {\r\n  modeSistem = param.asInt();\r\n}\r\n\r\n\/\/ Fungsi konversi Lux yang akurat untuk Wokwi\r\nfloat hitungLux(int pin) {\r\n  int nilaiADC = analogRead(pin);\r\n  if (nilaiADC >= 4095) nilaiADC = 4094;\r\n  float voltage = nilaiADC * 5.0 \/ 4095.0;\r\n  float resistance = 2000 * voltage \/ (1 - voltage \/ 5.0);\r\n  return pow(RL10 * 1e3 * pow(10, GAMMA) \/ resistance, (1 \/ GAMMA));\r\n}\r\n\r\nvoid prosesJemuran() {\r\n  float luxKiri = hitungLux(LDR_KIRI);\r\n  float luxKanan = hitungLux(LDR_KANAN);\r\n  \r\n  \/\/ Baca simulasi sensor hujan (Potensio)\r\n  int nilaiHujan = analogRead(RAIN_PIN); \r\n  bool isHujan = (nilaiHujan > 2000); \/\/ Jika potensio dilewati setengah, dianggap hujan\r\n\r\n  String statusJemuran = \"\";\r\n\r\n  if (modeSistem == 1) {\r\n    statusJemuran = \"FORCED CLOSE HP\";\r\n    sudutServo = 0; \/\/ Atap menutup penuh\r\n  } else if (isHujan) {\r\n    statusJemuran = \"HUJAN! ATAP TUTUP\";\r\n    sudutServo = 0; \/\/ Amankan jemuran\r\n    Blynk.logEvent(\"jemuran_alert\", \"Hujan terdeteksi! Atap jemuran otomatis ditutup.\");\r\n  } else {\r\n    \/\/ Logika Tracking Matahari jika cuaca aman\r\n    statusJemuran = \"TRACKING SUN\";\r\n    if (abs(luxKiri - luxKanan) > 50.0) { \/\/ Beri toleransi agar servo tidak bergetar terus\r\n      if (luxKiri > luxKanan) {\r\n        sudutServo = 45;  \/\/ Menghadap Kiri\r\n      } else {\r\n        sudutServo = 135; \/\/ Menghadap Kanan\r\n      }\r\n    } else {\r\n      sudutServo = 90;   \/\/ Di tengah jika terang merata\r\n    }\r\n  }\r\n\r\n  \/\/ Gerakkan Servo\r\n  jemuranServo.write(sudutServo);\r\n\r\n  \/\/ Kirim data ke Blynk\r\n  Blynk.virtualWrite(V0, luxKiri);\r\n  Blynk.virtualWrite(V1, luxKanan);\r\n  Blynk.virtualWrite(V2, statusJemuran);\r\n\r\n  \/\/ Tampilan LCD\r\n  lcd.setCursor(0, 0);\r\n  lcd.print(\"L:\"); lcd.print((int)luxKiri);\r\n  lcd.print(\" R:\"); lcd.print((int)luxKanan); lcd.print(\"    \");\r\n  lcd.setCursor(0, 1);\r\n  lcd.print(statusJemuran.substring(0, 16)); lcd.print(\"        \");\r\n}\r\n\r\nvoid setup() {\r\n  Serial.begin(115200);\r\n  \r\n  ESP32PWM::allocateTimer(0);\r\n  jemuranServo.setPeriodHertz(50);\r\n  jemuranServo.attach(SERVO_PIN, 500, 2400);\r\n\r\n  pinMode(LDR_KIRI, INPUT);\r\n  pinMode(LDR_KANAN, INPUT);\r\n  pinMode(RAIN_PIN, INPUT);\r\n\r\n  lcd.init();\r\n  lcd.backlight();\r\n  lcd.print(\"Smart Clothes...\");\r\n\r\n  Blynk.begin(auth, ssid, pass);\r\n  lcd.clear();\r\n\r\n  timer.setInterval(1000L, prosesJemuran);\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=NSeb2gb7Kbg&amp;lc=Ugy5Zyf2z3GB98FA7Yp4AaABAg\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"576\" src=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/Screenshot-2026-06-15-071247-1-1024x576.png\" alt=\"\" class=\"wp-image-581\" srcset=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/Screenshot-2026-06-15-071247-1-1024x576.png 1024w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/Screenshot-2026-06-15-071247-1-300x169.png 300w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/Screenshot-2026-06-15-071247-1-768x432.png 768w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/Screenshot-2026-06-15-071247-1-1536x864.png 1536w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/Screenshot-2026-06-15-071247-1-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<\/strong><\/p>\n\n\n\n<h1 class=\"wp-block-heading\">TAG:<\/h1>\n\n\n\n<p class=\"has-text-align-left\">jemuran pintar esp32, smart clothesline iot, jemuran otomatis anti hujan, ldr sun tracker esp32, blynk iot smart clothesline, sensor hujan esp32 blynk, simulasi wokwi jemuran pintar, tutorial esp32 blynk, iot smart home appliances, jemuran otomatis cari matahari, servo motor jemuran esp32, lcd 16&#215;2 i2c esp32, blynk logevent jemuran alert, solar tracking system esp32, tutorial blynk iot esp32, library esp32servo, library liquidcrystal i2c, gpio 34 35 ldr sensor, gpio 32 rain sensor, gpio 18 servo jemuran, proyek iot esp32 rumah pintar, tutorial wokwi indonesia, simulasi iot jemuran otomatis, pemantauan jemuran jarak jauh, blynk app smart clothesline, datastream blynk ldr lux, virtual pin blynk jemuran, smart home iot esp32, proyek teknik elektro iot, mekatronika rumah pintar, tugas akhir iot jemuran, skripsi iot smart clothesline, ide proyek esp32 iot, skematik jemuran pintar esp32, diagram rangkaian ldr rain servo lcd, source code jemuran pintar esp32, program arduino blynk jemuran, simulasi iot tanpa hardware, platform simulasi wokwi, wokwi esp32 smart clothesline, blynk auth token esp32, jemuran otomatis berbasis iot, telemetry data ldr lux, proyek sains iot elektro, portofolio iot esp32, praktikum mikrokontroler esp32, modul esp32 wroom 32, pinout esp32 ldr rain servo, gpio esp32 sensor display, indikator status blynk, kontrol paksa tutup blynk, smart roof esp32, efisiensi rumah tangga pintar, panduan iot jemuran esp32, belajar mikrokontroler online, simulator komponen elektronik, wokwi custom chip esp32, blynk iot platform smart home, internet of things indonesia, iot smk teknik elektro, iot universitas teknik, prototipe jemuran pintar esp32, alat pengontrol jemuran otomatis, iot smart environment, esp32 arduino ide blynk, tutorial iot pemula, proyek elektro smart home, panduan lengkap wokwi blynk, sensor ldr lux akurat, sistem anti hujan otomatis, logika solar tracking ldr, notifikasi blynk logevent jemuran, sistem pengaman jemuran, otomatisasi rumah tangga cerdas, proyek mekatronika elektro, simulasi hardware jemuran pintar, sistem jemuran esp32, proyek iot populer, kodingan jemuran otomatis, sensor hujan digital esp32, rangkaian ldr rain dan servo, tutorial mikrokontroler iot, wawasan teknik elektro, aplikasi iot smart home, jemuran cerdas esp32, koding logika tracking matahari, pemantauan cuaca jemuran real time, iot clothesline management system<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pada bagian ini akan dibahas pembuatan sistem jemuran pintar otomatis (Smart Clothesline) berbasis mikrokontroler ESP32, dua sensor cahaya LDR untuk pelacakan arah matahari (Solar Tracking), sensor pendeteksi hujan, motor servo sebagai penggerak atap atau jemuran, layar LCD 16&#215;2 I2C, serta platform Blynk IoT pada software simulasi WOKWI. Skematik rangkaian ditunjukkan pada Gambar 1, program Arduino pada Kode 1, dan video&#8230;<\/p>\n","protected":false},"author":3,"featured_media":575,"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\/578"}],"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=578"}],"version-history":[{"count":3,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/posts\/578\/revisions"}],"predecessor-version":[{"id":584,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/posts\/578\/revisions\/584"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/media\/575"}],"wp:attachment":[{"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=578"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=578"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=578"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}