{"id":671,"date":"2026-11-13T02:56:45","date_gmt":"2026-11-13T02:56:45","guid":{"rendered":"https:\/\/kuliahelektro.org\/?p=671"},"modified":"2026-11-13T02:56:46","modified_gmt":"2026-11-13T02:56:46","slug":"tutorial-esp32-cara-membuat-sistem-pengering-teh-food-dehydrator-otomatis-menggunakan-sensor-suhu-kelembapan-dht22-relay-heater-fan-exhaust-layar-lcd-i2c-blynk-iot-pada-wokwi","status":"publish","type":"post","link":"https:\/\/kuliahelektro.org\/?p=671","title":{"rendered":"Tutorial ESP32: Cara Membuat Sistem Pengering Teh &amp; Food Dehydrator Otomatis Menggunakan Sensor Suhu &amp; Kelembapan DHT22, Relay Heater, Fan Exhaust, Layar LCD I2C, &amp; Blynk IoT pada WOKWI"},"content":{"rendered":"\n<p>Pada bagian ini akan dibahas pembuatan sistem pengering daun teh dan makanan otomatis pintar (Automated Food &amp; Tea Dehydrator System) berbasis mikrokontroler ESP32, sensor suhu dan kelembapan DHT22, modul relay pemanas (heater) dan kipas exhaust (fan), indikator LED, buzzer alarm selesai, 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 dirancang untuk menjaga proses pengeringan optimal dengan memonitor kelembapan dan suhu secara real-time. Jika kelembapan masih tinggi (>10%), pemanas diaktifkan. Jika suhu melebihi batas proteksi aman (>50\u00b0C), kipas exhaust menyala untuk mendinginkan ruangan. Ketika kelembapan mencapai target (&lt;=10%), sistem otomatis mematikan pemanas dan kipas, membunyikan alarm melodi, serta mengirimkan log peringatan ke dashboard Blynk.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/www.youtube.com\/watch?v=K4zUPcKv2rQ&amp;lc=Ugy4rhyaE5KtSpTvOd54AaABAg\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" loading=\"lazy\" width=\"633\" height=\"507\" src=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/11\/image-26.png\" alt=\"\" class=\"wp-image-674\" style=\"aspect-ratio:1.2485207100591715;width:493px;height:auto\" srcset=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/11\/image-26.png 633w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/11\/image-26-300x240.png 300w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/11\/image-26-500x400.png 500w\" sizes=\"(max-width: 633px) 100vw, 633px\" \/><\/a><\/figure><\/div>\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 Suhu &amp; Kelembapan (DHT22)<br>VCC =&gt; 3.3V \/ 5V<br>GND =&gt; GND<br>Data Pin =&gt; GPIO 15 (DHTPIN)<\/li>\n\n\n\n<li>Aktuator Relay Heater, Fan Exhaust, LED Indikator &amp; Buzzer<br>Relay Pemanas (RELAY_HEATER) =&gt; GPIO 19<br>Relay Kipas (RELAY_FAN) =&gt; GPIO 18<br>LED Indikator Heater (LED_YELLOW) =&gt; GPIO 4 (via Resistor 220 Ohm ke GND)<br>Buzzer Alarm Selesai =&gt; GPIO 13 (BUZZER_PIN)<\/li>\n\n\n\n<li>Layar 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<\/ul>\n\n\n\n<p><strong>List Virtual PIN:<\/strong><\/p>\n\n\n\n<ul>\n<li>V0 =&gt; Kelembapan Udara (% RH) &#8211; Datastream Grafik Real-Time Tingkat Kelembapan Ruang Pengering dari Sensor DHT22<\/li>\n\n\n\n<li>V1 =&gt; Temperatur Suhu (\u00b0C) &#8211; Datastream Grafik Real-Time Suhu Ruang Pengering dari Sensor DHT22<\/li>\n\n\n\n<li>V2 =&gt; Status Proses Dehydrator (String) &#8211; Menampilkan Status Operasional (&#8220;SYSTEM OFF&#8221;, &#8220;HEATING PROCESS&#8221;, &#8220;COOLING &amp; DRYING&#8221;, atau &#8220;DONE \/ DRY&#8221;)<\/li>\n\n\n\n<li>V3 =&gt; Status Relay Heater (Integer 0\/255) &#8211; Indikator Widget LED Status Pemanas Aktif\/Mati<\/li>\n\n\n\n<li>V4 =&gt; Status Relay Fan Exhaust (Integer 0\/255) &#8211; Indikator Widget LED Status Kipas Pendingin Aktif\/Mati<\/li>\n\n\n\n<li>V5 =&gt; Tombol Power Sistem (Integer 0\/1) &#8211; Sakelar Tombol ON\/OFF Kontrol Utama Dehydrator dari Aplikasi Blynk<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ ============================================================================\r\n\/\/ PROYEK: SISTEM PENGERING TEH &amp; FOOD DEHYDRATOR OTOMATIS ESP32 BLYNK WOKWI\r\n\/\/ PLATFORM: ESP32 \/ SIMULATOR WOKWI\r\n\/\/ ============================================================================\r\n\r\n#define BLYNK_TEMPLATE_ID \"TMPLxxxxxx\"\r\n#define BLYNK_TEMPLATE_NAME \"Food Dehydrator\"\r\n#define BLYNK_AUTH_TOKEN \"Your_Auth_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 \"DHT.h\"\r\n\r\n\/\/ Definisi Pin Sensor dan Aktuator\r\n#define DHTPIN 15          \/\/ Pin data sensor DHT22\r\n#define DHTTYPE DHT22      \/\/ Jenis sensor DHT\r\n\r\n#define RELAY_HEATER 19    \/\/ Pin kontrol relay pemanas (heater)\r\n#define RELAY_FAN 18       \/\/ Pin kontrol relay kipas exhaust (fan)\r\n#define LED_YELLOW 4       \/\/ Pin LED indikator pemanas menyala\r\n#define BUZZER_PIN 13      \/\/ Pin buzzer alarm tanda pengeringan selesai\r\n\r\n\/\/ Konfigurasi WiFi dan Autentikasi Blynk\r\nchar auth&#91;] = BLYNK_AUTH_TOKEN;\r\nchar ssid&#91;] = \"Wokwi-GUEST\";  \/\/ SSID khusus simulasi Wokwi\r\nchar pass&#91;] = \"\";             \/\/ Password dikosongkan untuk Wokwi\r\n\r\n\/\/ Inisialisasi Objek Sensor, LCD, dan Timer Blynk\r\nDHT dht(DHTPIN, DHTTYPE);\r\nLiquidCrystal_I2C lcd(0x27, 16, 2);\r\nBlynkTimer timer;\r\n\r\n\/\/ Variabel Status Sistem\r\nbool systemPower = true;   \/\/ Status utama sistem aktif\/mati dari Blynk\r\nbool isFinished = false;   \/\/ Status penanda siklus pengeringan telah selesai\r\n\r\n\/\/ Fungsi callback Blynk untuk tombol sakelar Power Utama di Virtual Pin V5\r\nBLYNK_WRITE(V5) {\r\n  systemPower = param.asInt() == 1;\r\n}\r\n\r\n\/\/ Fungsi utama pengecekan dan otomatisasi Dehydrator\r\nvoid checkDehydrator() {\r\n  float hum = dht.readHumidity();      \/\/ Membaca kelembapan (% RH)\r\n  float temp = dht.readTemperature();  \/\/ Membaca suhu (\u00b0C)\r\n\r\n  \/\/ Validasi pembacaan sensor jika terjadi error\r\n  if (isnan(hum) || isnan(temp)) {\r\n    lcd.setCursor(0, 0);\r\n    lcd.print(\"Sensor Error!!  \");\r\n    return;\r\n  }\r\n\r\n  String processStatus = \"\";\r\n\r\n  \/\/ 1. Kondisi Jika Sistem Dimatikan via Blynk (Power OFF)\r\n  if (!systemPower) {\r\n    digitalWrite(RELAY_HEATER, LOW);\r\n    digitalWrite(RELAY_FAN, LOW);\r\n    digitalWrite(LED_YELLOW, LOW);\r\n    noTone(BUZZER_PIN);\r\n    processStatus = \"SYSTEM OFF\";\r\n  } \r\n  else {\r\n    \/\/ 2. Logika Utama: Pengeringan Selesai jika Kelembapan Mencapai Target (&lt;= 10%)\r\n    if (hum &lt;= 10.0) {\r\n      digitalWrite(RELAY_HEATER, LOW);\r\n      digitalWrite(RELAY_FAN, LOW);\r\n      digitalWrite(LED_YELLOW, LOW);\r\n      \r\n      if (!isFinished) {\r\n        tone(BUZZER_PIN, 1500, 1000); \/\/ Bunyikan alarm selesai selama 1 detik\r\n        Blynk.logEvent(\"dehydrator_alert\", \"\u2705 Pengeringan Selesai! Kelembapan mencapai target (&lt;=10%).\");\r\n        isFinished = true;\r\n      }\r\n      processStatus = \"DONE \/ DRY\";\r\n    } \r\n    else {\r\n      isFinished = false;\r\n      \r\n      \/\/ Logika Kontrol Heater (Menyalakan pemanas jika kelembapan masih tinggi > 10%)\r\n      if (hum > 10.0) {\r\n        digitalWrite(RELAY_HEATER, HIGH);\r\n        digitalWrite(LED_YELLOW, HIGH);\r\n      } else {\r\n        digitalWrite(RELAY_HEATER, LOW);\r\n        digitalWrite(LED_YELLOW, LOW);\r\n      }\r\n\r\n      \/\/ Logika Proteksi Overheat: Kipas Exhaust Menyala jika Suhu > 50\u00b0C\r\n      if (temp > 50.0) {\r\n        digitalWrite(RELAY_FAN, HIGH); \/\/ Nyalakan kipas untuk membuang panas berlebih\r\n        processStatus = \"COOLING &amp; DRYING\";\r\n      } else {\r\n        digitalWrite(RELAY_FAN, LOW);\r\n        processStatus = \"HEATING PROCESS\";\r\n      }\r\n    }\r\n  }\r\n\r\n  \/\/ 3. Mengirimkan Data Telemetri secara Real-Time ke Dashboard Blynk IoT\r\n  Blynk.virtualWrite(V0, hum);\r\n  Blynk.virtualWrite(V1, temp);\r\n  Blynk.virtualWrite(V2, processStatus);\r\n  Blynk.virtualWrite(V3, digitalRead(RELAY_HEATER) ? 255 : 0);\r\n  Blynk.virtualWrite(V4, digitalRead(RELAY_FAN) ? 255 : 0);\r\n\r\n  \/\/ 4. Memperbarui Tampilan pada Layar LCD 16x2 I2C\r\n  lcd.setCursor(0, 0);\r\n  lcd.print(\"H:\"); lcd.print(hum, 0); lcd.print(\"% \");\r\n  lcd.print(\"T:\"); lcd.print(temp, 1); lcd.print(\"C  \");\r\n\r\n  lcd.setCursor(0, 1);\r\n  lcd.print(\"ST:\"); lcd.print(processStatus); lcd.print(\"        \");\r\n}\r\n\r\nvoid setup() {\r\n  Serial.begin(115200);\r\n\r\n  \/\/ Konfigurasi pin aktuator sebagai OUTPUT\r\n  pinMode(RELAY_HEATER, OUTPUT);\r\n  pinMode(RELAY_FAN, OUTPUT);\r\n  pinMode(LED_YELLOW, OUTPUT);\r\n  pinMode(BUZZER_PIN, OUTPUT);\r\n\r\n  \/\/ Kondisi awal relay dimatikan\r\n  digitalWrite(RELAY_HEATER, LOW);\r\n  digitalWrite(RELAY_FAN, LOW);\r\n\r\n  \/\/ Inisialisasi sensor dan layar LCD\r\n  dht.begin();\r\n  lcd.init();\r\n  lcd.backlight();\r\n\r\n  \/\/ Tampilkan pesan sambutan di LCD\r\n  lcd.print(\"Smart Dehydrator\");\r\n  lcd.setCursor(0, 1);\r\n  lcd.print(\"Green Tea\/Food  \");\r\n  delay(1500);\r\n\r\n  \/\/ Memulai koneksi ke server Blynk &amp; Wi-Fi Wokwi\r\n  Blynk.begin(auth, ssid, pass);\r\n  lcd.clear();\r\n\r\n  \/\/ Menjalankan fungsi pengecekan otomatis setiap 2 detik menggunakan Timer\r\n  timer.setInterval(2000L, checkDehydrator);\r\n}\r\n\r\nvoid loop() {\r\n  Blynk.run();   \/\/ Menjalankan proses komunikasi Blynk\r\n  timer.run();   \/\/ Menjalankan fungsi pewaktuan timer\r\n}<\/code><\/pre>\n\n\n\n<p class=\"has-text-align-center\"><strong>Kode Arduino 1. Kode Program<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.youtube.com\/watch?v=K4zUPcKv2rQ&amp;lc=Ugy4rhyaE5KtSpTvOd54AaABAg\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"576\" src=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/11\/image-25-1024x576.png\" alt=\"\" class=\"wp-image-673\" srcset=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/11\/image-25-1024x576.png 1024w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/11\/image-25-300x169.png 300w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/11\/image-25-768x432.png 768w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/11\/image-25-1536x864.png 1536w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/11\/image-25.png 1919w\" 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\">sistem pengering teh esp32, food dehydrator otomatis, pengering makanan iot esp32, sensor dht22 esp32 blynk, blynk iot food dehydrator, kontrol heater relay esp32, simulasi wokwi dehydrator, tutorial esp32 blynk, iot pertanian dan industri, mesin pengering teh otomatis, relay heater fan exhaust esp32, dht22 humidity target 10 persen, buzzer alarm pengeringan selesai, lcd 16&#215;2 i2c esp32, blynk logevent dehydrator alert, kontrol kelembapan ruang pengering, tutorial blynk iot esp32, library dht sensor esp32, library liquidcrystal i2c, gpio 15 dht22 esp32, gpio 19 18 relay heater fan, gpio 4 led indikator, gpio 13 buzzer alarm, proyek iot esp32 smart agriculture, tutorial wokwi indonesia, simulasi iot food dehydrator, pemantauan pengeringan jarak jauh, blynk app smart dehydrator, datastream blynk dht22 relay, virtual pin blynk dehydrator v5, smart industrial appliances, proyek teknik elektro iot, mekatronika pengering makanan, tugas akhir iot food dehydrator, skripsi iot smart dehydrator, ide proyek esp32 iot, skematik dehydrator esp32, diagram rangkaian relay heater fan dht22 lcd, source code dehydrator esp32, program arduino blynk dehydrator, simulasi iot tanpa hardware, platform simulasi wokwi, wokwi esp32 food dehydrator, blynk auth token esp32, alat pengering teh berbasis iot, telemetry data dht22 relay, proyek sains iot elektro, portofolio iot esp32, praktikum mikrokontroler esp32, modul esp32 wroom 32, pinout esp32 dht22 relay fan, gpio esp32 sensor display, indikator status blynk, grafik kelembapan suhu blynk, smart dehydrator esp32, efisiensi pengeringan teh hijau, panduan iot dehydrator esp32, belajar mikrokontroler online, simulator komponen elektronik, wokwi custom chip esp32, blynk iot platform smart industry, internet of things indonesia, iot smk teknik elektro, iot universitas teknik, prototipe pengering teh esp32, alat pengatur suhu kelembapan otomatis, iot smart factory, esp32 arduino ide blynk, tutorial iot pemula, proyek elektro smart dehydrator, panduan lengkap wokwi blynk, sensor dht22 akurat, sistem proteksi overheat 50 derajat, logika kontrol heater fan, notifikasi blynk logevent dehydrator, sistem pengaman kualitas teh, otomatisasi pengeringan cerdas, proyek mekatronika elektro, simulasi hardware food dehydrator, sistem pengeringan teh esp32, proyek iot populer, kodingan dehydrator otomatis, sensor dht22 digital esp32, rangkaian dht22 dan relay, tutorial mikrokontroler iot, wawasan teknik elektro, aplikasi iot smart industry, pengering makanan cerdas esp32, koding logika kelembapan 10 persen, pemantauan pengeringan real time, iot dehydrator management system<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pada bagian ini akan dibahas pembuatan sistem pengering daun teh dan makanan otomatis pintar (Automated Food &amp; Tea Dehydrator System) berbasis mikrokontroler ESP32, sensor suhu dan kelembapan DHT22, modul relay pemanas (heater) dan kipas exhaust (fan), indikator LED, buzzer alarm selesai, layar LCD 16&#215;2 I2C, serta platform Blynk IoT pada software simulasi WOKWI. Skematik rangkaian ditunjukkan pada Gambar 1, program&#8230;<\/p>\n","protected":false},"author":3,"featured_media":673,"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\/671"}],"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=671"}],"version-history":[{"count":2,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/posts\/671\/revisions"}],"predecessor-version":[{"id":675,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/posts\/671\/revisions\/675"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/media\/673"}],"wp:attachment":[{"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=671"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=671"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=671"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}