● online
- Raspberry Pi Pico Microcontroller Board....
- Motor servo MG996R TowerPro Metal Gear....
- Sensor Api Flame detector sensor....
- Max7219 Led Dot Matrix 32x8 Display Module For Ard....
- Kabel Jumper 10cm Dupont Pelangi 10 cm Female to M....
- Raspberry Pi 4 Model B 8GB Original UK E14 Raspi 4....
- Kabel Jumper Arduino Dupont 20 cm Female to Male P....
- LCD 16x2 / 1602 Display Biru + I2C Backpack Sudah ....
- 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
Pada pembahasan sebelumnya kita sudah pernah membahas tentang penggunaan relay silahkan yang belum bisa lihat di sini. Pada artikel... selengkapnya
Modul Led Dot Matrix 32×16 adalah modul display yang menggunakan kumpulan – kumpulan LED yang dirangkai dengan susunan 32... selengkapnya
Selamat datang di indomaker.com, pada pembahasan kali ini admin akan mengupas tentang penggunaan ESP32-CAM. Module ini merupakan sebuah module... selengkapnya
Ada beberapa jenis view di Android dan kali ini yang kita akan bahas adalah ListView. ListView adalah view yang... selengkapnya
Syarat utama jika anda ingin belajar atau ingin menjadi programmer web sebelum belajar Bahasa pemograman alangkah baiknya memahami dulu... selengkapnya
Jumpa lagi bersama indomaker.com, setelah kemarin kita sudah bisa menampilkan sensor suhu dan kelembaban pada web browser DISINI. Sekarang kita... selengkapnya
SW-420 adalah sensor untuk mendeteksi getaran, cara kerja sensor ini adalah dengan menggunakan 1 buah pelampung logam yang berisi 2... selengkapnya
Sensor MQ-2 merupakan sensor yang berfungsi untuk mendeteksi kandungan gas seperti Lpg, CO, asap dan masih banyak lainnya. Sensor... selengkapnya
I think I need to make a virtual personal assistant that can help me make a self-service video tutorial... selengkapnya
Semangat pagi semua, kali ini kita akan belajar mengenai penggunaan LCD pada Arduino tanpa module I2C. Kenapa perlu belajar... selengkapnya
Warna : biru dan merah Bahan Alumunium 25T include baut 2 pcs
Rp 8.750POTENSIOMETER LINEAR MONO 10K ohm
Rp 1.900This is a set of transmitter and receiver in one of the photoelectric sensor. Detection distance can be adjusted according… selengkapnya
Rp 37.500Description: TP5100 is a double switch buck 8.4V, single cell 4. 2V lithium battery charge management chip. Its ultra-compact QFN16… selengkapnya
Rp 10.600Features: Brand new and high quality. Control the speed of a DC motor with this controller. High efficiency, high torque,… selengkapnya
Rp 25.400Tang Crimping Press Skun Ratchet YTH SN-48B Model YTH SN-48B FOR NON INSULATED TERMINAL YTH SN-48B dengan mata Press 0.5… selengkapnya
Rp 150.000MERK : TOWER PRO MG995 180 derajat Specifications Weight: 55 g Dimension: 40.7 x 19.7 x 42.9 mm approx. Stall… selengkapnya
Rp 36.300Spesifikasi: 20mm Kapton Tape Polymide Film Gold High Temp isolasi Tahan Panas Harga Tertera: 1 Roll Kapton Tape Polymide Film… selengkapnya
Rp 219.000Ini yang Seri SN – DS3231 I2C RTC Module khusus DS3231SN – Include Baterai – Module jam digital – Keperluan… selengkapnya
Rp 34.900Bikin Kipas Angin Pintar Sendiri Pakai Arduino dan Algoritma PID Biar Ruangan Makin Adem
Kategori
Artikel Terkait
-
Jaga Kolam Ikan Tetap Stabil Pakai Arduino dan PID Biar Ikan Makin Happy
-
Bikin Lampu Belajar Pintar Pake PID & Arduino Cahaya Sat-Set, Mata Anti-Lelah!
-
Stabil Terus! Cara Bikin Kontrol Kelembapan Ruangan Otomatis Pakai Arduino dan PID
-
Bikin Robot Anti Tumbang Panduan Lengkap Self-Balancing Robot Pakai Arduino
-
Bikin Mobil Parkir Otomatis Pakai Arduino dan PID dengan Budget di Bawah 100 Ribu

Saat ini belum tersedia komentar.