● online
- Sensor Ultrasonik HC-SR04 HC SR04 Sensor Jarak Ult....
- Kabel Jumper Arduino Dupont 20 cm Female to Male P....
- Raspberry Pi 4 Model B 4GB Original UK E14 Raspi 4....
- PWM DC 10A Motor 12V-40V Pulse Width Modulation Sp....
- Push Button Tactile Switch Saklar Tombol Tinggi - ....
- Modul Sensor Tegangan AC Bolak balik 220V Listrik ....
- Jasa Cetak PCB....
- Kabel Jumper 20cm Dupont 20 cm Male to Male Pelang....
- Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
- Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
Bikin Kipas Angin Pintar Sendiri Pakai Arduino dan Algoritma PID Biar Ruangan Makin Adem
Halo Sobat Tech! Pernah nggak sih lo ngerasa gerah banget di kamar, tapi pas nyalain kipas angin biasa malah jadi kedinginan? Atau lebih parahnya lagi, kipas angin lo tipenya cuma “nyala-mati” (ON/OFF) yang bikin tagihan listrik melonjak gara-gara lonjakan arus (inrush current) tiap kali motor mulai muter? Belum lagi risiko komponen mekanis cepat aus karena motor dipaksa kerja mendadak secara kasar.
Nah, daripada galau sama suhu ruangan yang nggak stabil, mending kita bikin solusi yang lebih smart. Di artikel ini, kita bakal bahas cara bikin kontrol kecepatan kipas angin yang halus banget pakai Arduino dan algoritma PID Arduino Kipas Angin. Sistem ini bakal bikin putaran kipas menyesuaikan suhu secara otomatis dan presisi. Jadi, nggak ada lagi drama suhu ruangan yang naik-turun nggak jelas!
Kenapa Harus Pakai PID Bukan ON/OFF Biasa

Sistem pendingin konvensional biasanya pakai metode kontrol ON/OFF. Artinya, kalau suhu panas kipas langsung nyala pol, dan kalau sudah dingin kipas mati total. Cara ini sebenarnya sudah kuno banget dan punya banyak kelemahan, mulai dari suhu yang berosilasi (naik-turun drastis) sampai bikin motor cepat rusak.
Dengan beralih ke sistem closed loop (loop tertutup) berbasis PID diskrit, kita bisa mengatur kecepatan motor DC secara adaptif. Keuntungannya jelas:
- Efisiensi Energi: Kipas nggak selalu lari di kecepatan penuh kalau nggak butuh-butuh banget, jadi lebih hemat listrik.
- Suhu Stabil: Minim osilasi karena kecepatan kipas bakal melambat pelan-pelan saat mendekati suhu target.
- Motor Lebih Awet: Menjaga keawetan motor DC karena nggak ada perubahan kecepatan yang mendadak atau kasar.
Buat kamu yang juga hobi pelihara ikan dan pengen sistem otomatis yang mirip untuk menjaga suhu air, kamu bisa banget cek artikel tentang cara jaga kolam ikan tetap stabil pakai Arduino dan PID biar ikan makin happy.
Alat dan Bahan
Sebelum mulai ngerakit, pastiin semua komponen ini sudah siap di meja kerja lo ya.
| Komponen | Jumlah | Keterangan |
| Arduino Uno | 1 Unit | Otak utama yang memproses logika PID dan sinyal PWM. |
| Sensor DHT22 | 1 Unit | Sensor digital untuk baca suhu ruangan secara akurat sebagai feedback. |
| Driver L298N | 1 Unit | Modul H-bridge untuk mengatur daya dan kecepatan ke motor DC. |
| Motor DC / Kipas | 1 Unit | Aktuator yang kecepatannya bakal kita atur secara variabel. |
| Power Supply 12V | 1 Unit | Sumber tenaga eksternal untuk suplai driver motor dan kipas. |
Skematik Rangkaian

Cara menyambungkan kabelnya sebenarnya simpel, Sobat Tech. Yang penting lo teliti pas colok ke pin Arduino biar nggak ada short circuit.
Pertama, hubungkan Sensor DHT22 ke pin digital D2 Arduino sebagai input pembacaan suhu. Untuk bagian penggerak, kita pakai Driver L298N. Hubungkan pin ENA (Enable A) ke pin D9 (ini pin PWM), lalu pin IN1 ke D8 dan IN2 ke D7 untuk menentukan arah putaran motor agar kipas meniup ke arah yang benar.
Kipas angin atau motor DC tinggal lo pasang di terminal OUT1-OUT2 pada modul driver. Terakhir, satu hal yang krusial: jangan lupa hubungkan semua kabel ground secara bersamaan (common ground) antara Arduino, driver, dan power supply agar aliran sinyalnya stabil.
Rahasia di Balik Algoritma PID
Mungkin istilah PID terdengar berat ala mahasiswa teknik, tapi konsepnya sebenarnya cuma soal keseimbangan kok. PID itu singkatan dari Proportional, Integral, dan Derivative. Di proyek ini, kita pakai tiga parameter rahasia biar sistemnya mantap:
- Kp (80,0): Parameter ini tugasnya kasih respon cepat. Kalau suhu jauh di atas target, Kp bakal langsung “gas pol” kecepatan kipas.
- Ki (0,5): Tugasnya buat presisi. Ki bakal ngilangin selisih kecil atau kesalahan tunak (steady-state error) biar suhu ruangan bener-benar pas di angka yang kita mau tanpa ada sisa panas.
- Kd (5,0): Nah, ini bertindak sebagai damper atau peredam. Kd bakal ngerem putaran kipas pas suhu sudah mau nyampe target biar nggak kebablasan (overshoot).
Alur kerjanya: Sensor bakal baca suhu aktual, lalu Arduino hitung selisihnya (error) dari target suhu (setpoint) sebesar 23°C. Setelah itu, algoritma PID bakal kasih perintah kecepatan yang pas lewat sinyal PWM ke kipas.
Pemrograman Arduino
Ini dia bagian otaknya. Masukkan source code ini ke Arduino IDE lo. Perhatikan bagian fungsi constrain() yang membatasi nilai PWM di angka 0-255 (biar driver nggak bingung), serta penggunaan delta time (dt) supaya hitungan PID-nya tetap akurat meskipun waktu eksekusi programnya sedikit berubah.
#include <DHT.h>
// Konfigurasi DHT22
#define DHTPIN 2
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
// Pin motor L298N
const int ENA = 9; // PWM
const int IN1 = 8;
const int IN2 = 7;
// Setpoint suhu
float setpoint = 23.0;
// Parameter PID
float Kp = 80.0;
float Ki = 0.5;
float Kd = 5.0;
// Variabel PID
float error = 0;
float lastError = 0;
float integral = 0;
float derivative = 0;
float outputPID = 0;
unsigned long lastTime = 0;
void setup() {
Serial.begin(9600);
dht.begin();
pinMode(ENA, OUTPUT);
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
// Atur arah putaran motor
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
// Mulai dengan kipas mati
analogWrite(ENA, 0);
Serial.println("================================");
Serial.println("PID Smart Fan Control Ready");
Serial.println("Setpoint = 23.0 C");
Serial.println("================================");
}
void loop() {
// Baca suhu dari DHT22
float suhu = dht.readTemperature();
// Cek apakah sensor berhasil membaca suhu
if (isnan(suhu)) {
Serial.println("DHT22 ERROR: Sensor Tidak Terdeteksi");
delay(2000);
return;
}
// Hitung delta time
unsigned long now = millis();
float dt = (now - lastTime) / 1000.0;
if (dt <= 0) {
dt = 0.01;
}
lastTime = now;
// Hitung error
error = suhu - setpoint;
// Hitung integral
integral += error * dt;
// Hitung derivative
derivative = (error - lastError) / dt;
// Hitung output PID
outputPID =
(Kp * error) +
(Ki * integral) +
(Kd * derivative);
lastError = error;
// Batasi PWM antara 0 sampai 255
outputPID = constrain(outputPID, 0, 255);
// Kirim PWM ke driver L298N
analogWrite(ENA, (int)outputPID);
// Tampilkan data pada Serial Monitor
Serial.print("Suhu Saat Ini: ");
Serial.print(suhu);
Serial.println(" C");
Serial.print("Error: ");
Serial.println(error);
Serial.print("Output PWM: ");
Serial.println((int)outputPID);
Serial.println("--------------------------------");
// Sampling setiap 2 detik
delay(2000);
}
Analisis Hasil dan Pengujian

Setelah sistem jalan, lo bisa pantau lewat Serial Monitor gimana hubungan antara suhu dan kecepatan putar kipas (PWM). Berdasarkan data pengujian, hasilnya sangat sinkron:
- PWM 255 (Maksimum): Terjadi pas suhu jauh di atas target (misal 30°C), kondisi ini dianggap kritis jadi kipas “gas pol”.
- PWM 128 (Sedang): Muncul saat ada selisih suhu yang moderat, kipas berputar santai.
- PWM 50-100 (Lambat): Saat suhu sudah mendekati target 23°C, putaran mulai melambat halus.
- PWM 0 (Berhenti): Saat suhu sudah berada di bawah atau pas di angka target (kondisi aman).
Hasil simulasinya terbukti stabil banget! Saat suhu awal ada di 30°C, kipas bakal kencang di awal untuk mendinginkan ruangan dengan cepat. Tapi pas suhu mulai turun ke arah 23°C, berkat parameter Kd yang jadi damper, kipasnya melambat secara elegan dan nggak langsung mati mendadak yang bikin kaget motor. Kombinasi parameter Kp 80, Ki 0.5, dan Kd 5 ini sudah terbukti paling pas buat dapet respon cepat tapi tetep stabil.
Kesimpulan
Proyek kipas angin pintar ini membuktikan kalau pakai DHT22 sebagai feedback dan Arduino sebagai otak PID bisa bikin sistem pendinginan jadi berkali-kali lipat lebih canggih. Dengan bantuan driver L298N, lo nggak cuma punya kipas yang bisa nyala-mati, tapi punya asisten suhu ruangan yang adaptif dan hemat energi.
Gimana? Tertarik buat nyoba rakit sendiri di kamar? Selain bikin ruangan makin adem, lo juga jadi belajar dasar kendali industri yang keren banget. Semangat ngoprek ya, Sobat Tech!
Bikin Kipas Angin Pintar Sendiri Pakai Arduino dan Algoritma PID Biar Ruangan Makin Adem
Bagi anda yang belum tau cara menggunakan LED pada NodeMCU, pada artikel ini akan di bahas cara-caranya. Sebelum melangkah... selengkapnya
Motor DC menjadi salah satu komponen yang sering digunakan dalam proyek berbasis Raspberry Pi, seperti robot sederhana, kendaraan mini, maupun... selengkapnya
Sensor PIR (Passive Infrared) adalah salah satu sensor yang paling sering digunakan untuk mendeteksi gerakan, terutama gerakan manusia. Sensor ini... selengkapnya
Sensor IR adalah sebuah sensor yang dapat mendeteksi rintangan menggunakan cahaya inframerah yang dipantulkan. Sensor ini mempunyai dua bagian... selengkapnya
Pernahkah Anda melihat katalog busana muslimah ataupun lainnya, lalu ada objek orang yang sama dengan mengunakan baju berwarna tetapi... selengkapnya
BFD-1000 atau modul Sensor Pelacak Garis 5 Channel adalah sensor yang dirancang untuk digunakan pada robot line follower. Modul ini... selengkapnya
RTC DS3231 merupakan sebuah jenis modul yang dapat menghasilkan waktu digital secara realtime dengan tambahan sebuah baterai tipe kancing... selengkapnya
Sensor level A01 Series adalah perangkat yang digunakan untuk mengukur ketinggian permukaan benda padat atau cairan menggunakan gelombang ultrasonik. Sensor ini... selengkapnya
Sesuai judulnya kali ini kita akan mencoba 7 segment 4 digit pada Arduino. Dengan 4 digit ini berarti terdapat... selengkapnya
Halo Sobat Tech! Mengembangkan sistem keamanan rumah berbasis mikrokontroler adalah langkah cerdas untuk mencegah bahaya kebakaran secara dini dan otomatis.... selengkapnya
Spesifikasi : – 16×2 – Warna Biru – Tegangan kerja : 5v Digunakan untuk keperluan display project seperti Arduino, Raspberry,… selengkapnya
Rp 17.000Compatibility: USB v2.0 standard Interface: Network: USB Series: RS-485 Port: an independent RS-485 Connector: Network: USB type A connector Series:… selengkapnya
Rp 38.800Spesifikasi: 20mm Kapton Tape Polymide Film Gold High Temp isolasi Tahan Panas Harga Tertera: 1 Roll Kapton Tape Polymide Film… selengkapnya
Rp 219.000Bagaimana jika mikrokontroler yang anda gunakan tidak memiliki port ADC. atau anda masih kurang dengan spesifikasi resolusi ADC yang disediakan… selengkapnya
Rp 65.000Modul sensor tegangan AC bolak balik 3 fasa ini menggunakan optocoupler sehingga tegangan input (AC) tidak akan mengganggu/membahayakan tegangan output… selengkapnya
Rp 57.000Harga untuk 10pcs Resistance: 1K Ohm Wattage Rating: 0.25 Watt Tolerance: 1% Metal Film
Rp 1.500Ini yang Seri SN – DS3231 I2C RTC Module khusus DS3231SN – Include Baterai – Module jam digital – Keperluan… selengkapnya
Rp 34.900Dimmer AC 220 Volt 4000 Watt + Casing Aluminium Potensiometer untuk mengatur tegangan output min/max pada tegangan AC PLN 220V…. selengkapnya
Rp 52.500Kabel Jumper Dupont Pelangi 30cm female to Female 1 lembar = 40 kabel
Rp 13.500TILT SENSOR adalah sensor untuk mendeteksi sudut kemiringan / derajat, dimana cara kerja sensor ini adalah dengan menggunakan 2 buah… selengkapnya
Rp 9.800Bikin Kipas Angin Pintar Sendiri Pakai Arduino dan Algoritma PID Biar Ruangan Makin Adem
Kategori
Artikel Terkait
-
Bikin Sistem Parkir Otomatis dengan Penghitung Kendaraan dan Indikator Slot Kosong
-
Rancang Sistem Pendeteksi Kebakaran dengan Kipas Otomatis dan Alarm Peringatan
-
Bikin Alat Monitoring Konsumsi Listrik Rumah Secara Real-Time Berbasis ESP32
-
Bikin Sistem Keamanan Pintu Berbasis RFID dengan Notifikasi Telegram
-
Rancang Sistem Penyiram Tanaman Otomatis Berbasis ESP32 dengan Monitoring Smartphone

Saat ini belum tersedia komentar.