● online
- Kabel Jumper Dupont Pelangi 30 cm female to Female
- Water Level sensor ketinggian air - deteksi air
- E18-D80NK Infrared Obstacle Avoidance Sensor Proxi
- Dimmer AC 4000W 220 Volt 4000 Watt 220V + Casing A
- Modul Sensor Tegangan AC Bolak balik 220V Listrik
- Relay Module 1 Channel Modul Relay 5V 10A 1 Channe
- Dimmer SCR 2000W Motor Speed Controller 220V AC PW
- Max7219 Led Dot Matrix 32x8 Display Module For Ard
- 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.
Tutorial Kendali Kecepatan Motor DC Arduino PID
Pernah gak sih motor kamu mendadak “loyo” pas dikasih beban? Atau mungkin kamu lagi eksperimen bikin robot, tapi kecepatan motornya naik-turun gak jelas dan susah diatur? Masalah ini sering banget terjadi karena kita biasanya pakai sistem open-loop alias kontrol satu arah tanpa peduli apa yang terjadi di output.
Nah, solusinya adalah dengan menerapkan sistem kendali kecepatan motor DC berbasis lingkaran tertutup (closed-loop). Dengan bantuan algoritma PID (Proportional-Integral-Derivative), motor kamu bakal punya “otak” untuk mengoreksi dirinya sendiri supaya kecepatannya tetap stabil sesuai target (setpoint), seberat apa pun beban mekanisnya!

Alat dan Bahan (Belanja Maker)
Gak perlu ngerogoh kocek dalam-dalam buat bikin sistem standar industri ini. Projek ini ramah banget di kantong mahasiswa atau pelajar dengan total estimasi biaya sekitar Rp 265.000. Cek tabel belanjaannya di bawah ini:
| Nama Komponen | Spesifikasi | Fungsi Utama |
| Arduino Uno | Mikrokontroler ATmega328P | Otak utama untuk menjalankan algoritma PID dan baca sensor. |
| Motor DC | Type YX DC12V 880 (14150) | Aktuator utama yang kecepatannya bakal kita kendalikan. |
| Driver Motor BTS7960 | High Power H-Bridge 43A | Penguat daya agar Arduino bisa menggerakkan motor arus besar. |
| Sensor Rotary Encoder | Optocoupler + Piringan 20 Lubang | “Mata” sistem untuk membaca RPM aktual motor. |
| Adaptor 12V | Output 12V DC (Min. 5-10A) | Sumber tenaga utama buat motor DC. |
| Kabel Jumper | Tipe Male-to-Male / Female | Penghubung logika antar komponen. |
| Kabel USB Data | Tipe USB A-to-B | Jalur program dan komunikasi data ke Web HMI. |
Hanya dengan modal segini, kamu sudah bisa belajar sistem kontrol yang dipakai di mesin CNC dan lengan robotik profesional!
Skematik Rangkaian Jalur Logika vs Jalur Tenaga
Bikin rangkaian ini sebenarnya simpel, tapi ada aturan mainnya supaya Arduino kamu gak kena short circuit atau mendadak freeze. Berdasarkan topologi sistemnya, kita wajib memisahkan jalur menjadi dua:
- Jalur Logika (Arus Lemah): Ini jalur 5V dari USB laptop khusus buat Arduino dan sensor. Regulator USB laptop biasanya lebih “bersih” dari fluktuasi, jadi proses hitung PID gak bakal keganggu noise.
- Jalur Tenaga (Arus Kuat): Ini jalur 12V dari adaptor langsung ke driver BTS7960 High Power Bridge. Isolasi ini penting karena motor DC sering bikin “sampah” listrik (electrical noise) yang bisa bikin mikrokontroler kamu error atau langsung bau sangit kalau dipaksa satu jalur daya.
Mapping Pin Penting:
- Pin 2 (Hardware Interrupt): Jalur wajib untuk sensor encoder. Arduino bakal jadi “satpam” yang sigap mencatat setiap pulsa dari piringan sensor tanpa ada yang terlewat, bahkan saat motor lari kencang.
- Pin 5 (Enable): Dihubungkan ke R_EN dan L_EN di driver untuk “buka pintu” aliran listrik.
- Pin 9 (PWM): Jalur “pedal gas” untuk mengatur tegangan ke motor via driver.

Cara Kerja Rahasia Feedback Loop
Sistem ini keren karena komunikasinya dua arah. Alurnya: Kamu input target di Web HMI -> Perintah dikirim ke Arduino via USB -> Arduino menggerakkan Motor -> Sensor Encoder lapor kecepatan asli -> Arduino hitung koreksi -> Kecepatan stabil!

Kunci akurasinya ada di sampling time (\Delta t) sebesar 200ms. Kenapa harus 200ms? Kalau terlalu lambat, motor telat ngerespon beban. Kalau terlalu cepat, Arduino belum sempat dapet cukup pulsa dari encoder buat ngitung RPM yang akurat. Dengan interval ini, sistem punya waktu pas buat mikir dan bertindak.
Mengenal Si Jenius PID
PID itu cara motor “berpikir” lewat tiga komponen yang saling melengkapi. Buat projek ini, kamu bisa pakai nilai tuning awal: Kp = 0.003, Ki = 0.01, dan Kd = 0.002.
- Proporsional (P): Tugasnya bikin motor gas pol biar cepat sampai ke target RPM. Tapi hati-hati, kalau P kegedean, motor bisa “bablas” (overshoot).
- Integral (I): Si “penghapus dosa” kesalahan. Dia bakal narik RPM pelan-pelan sampai benar-benar pas di target, bukan cuma sekadar mendekati.
- Derivatif (D): Bertindak sebagai “rem elektrik” atau peredam kejut supaya motor gak goyang-goyang atau bergetar parah saat sudah dekat target.
FYI, logika PID yang sama juga bisa kamu pakai buat kontrol suhu lho, contohnya di sistem kendali suhu pada inkubator agar telur menetas dengan suhu stabil.
HMI Web Serial API Monitoring Real-Time ala Pro
Salah satu fitur paling up-to-date di projek ini adalah penggunaan Web Serial API. Kamu bisa kontrol Arduino langsung dari Google Chrome tanpa perlu install software tambahan. Pro-tip: Gunakan baudrate 115200 bps (jangan 9600 ya!) supaya grafik di dashboard Chart.js kamu lancar jaya tanpa lagging.
Untuk komunikasi datanya, kita pakai format JSON yang rapi banget kayak gini:
{"rpm": 1500, "setpoint": 1500, "pwm": 120, "error": 0, "status": "START"}
Ada juga fitur cerdik di sisi JavaScript bernama cleanInput. Fungsi ini bertugas mengubah tanda koma (,) dari input regional Indonesia menjadi titik (.) standar C++ Arduino secara otomatis. Jadi, gak ada lagi cerita sistem crash cuma gara-gara salah ketik tanda baca!
Fitur Proteksi Anti-Stall
Pernah denger motor DC bunyi “nginggg” tapi gak mutar? Itu namanya stall. Di projek ini, kita pakai motor DC tipe seri yang punya torsi kuat tapi rawan macet kalau dikasih tegangan terlalu rendah. Makanya, di dalam firmware Arduino ada logika Batas Bawah PWM 40. Jadi, meskipun hasil hitungan PID minta tenaga kecil, sistem bakal mengunci di angka 40 supaya motor tetap mutar stabil dan kumparannya gak panas karena terjebak macet.

Hasil Pengujian & Kesimpulan
Setelah diuji, sistem ini terbukti sangat tangguh mempertahankan kecepatan di atas 1500 RPM dengan sangat stabil berkat sampling time 200ms. Buat kamu yang mau terjun ke dunia robotika atau otomasi, menguasai PID adalah skill wajib. Kendalinya presisi, visualisasinya modern, dan yang pasti low budget!
Kira-kira kalau sistem PID ini kamu terapin ke robot penyeimbang (Self-Balancing Robot), menurutmu parameter PID-nya perlu se-agresif apa ya biar gak gampang jatuh? Tulis idemu di kolom komentar!
Tutorial Kendali Kecepatan Motor DC Arduino PID
Sobat Maker, pernah terpikir tidak kenapa robot beroda dua bisa berdiri tegak tanpa jatuh? Secara alami, robot dua roda itu... selengkapnya
Pada artikel kali ini akan membahas tutorial mengakses sensor soil moisture pada Arduino. Nanti hasilnya akan ditampilkan dalam persen... selengkapnya
Rotary encoder adalah sebuah perangkat elektronik yang mampu mengkonversi gerakan mekanis berputar menjadi sinyal listrik, menjadi elemen kunci dalam memenuhi... selengkapnya
Di percobaan sebelumnya, kamu sudah belajar dua hal penting secara terpisah, yaitu menyalakan LED dan membaca input dari tombol. Nah,... selengkapnya
USB Host Shield merupakan sebuah board tambahan yang berfungsi untuk komunikasi perangkat antarmuka USB sperti mouse, keyboard, joystick, MIDI,... selengkapnya
Setelah berhasil menyalakan LED secara manual melalui pin 3V3 dan GPIO, saatnya melangkah lebih jauh: mengontrol LED menggunakan kode Python.... selengkapnya
Detektor arus AC adalah perangkat elektronika yang digunakan untuk mendeteksi ada atau tidaknya arus listrik AC pada suatu rangkaian.... selengkapnya
Mendeteksi keberadaan seseorang tidak selalu membutuhkan sensor yang rumit. Salah satu komponen yang paling sering digunakan untuk kebutuhan ini adalah... selengkapnya
Halo, Sobat IoT! Pernahkah kamu merasa ruangan di rumah tiba-tiba terasa lembap sampai tembok berjamur, atau malah sebaliknya, udara jadi... selengkapnya
8×8 LED dot matrix merupakan sebuah display yang terdiri dari kumpulan led yang disusun secara simetris sejumlah 8 baris... selengkapnya
Item Deskripsi : This module performance is stable, measure the distance accurately. performance nearly the same as SRF05, SRF02 SRF05,… selengkapnya
Rp 13.900Product Name: Tactile Switch; Material: Metal, Plastic Package Content: 30 Pcs x Tactile Switch; Main Color: Black, Silver Tone Total… selengkapnya
Rp 400TECHNICAL SPECIFICATIONS: – Broadcom BCM2711, Quad core Cortex-A72 (ARM v8) 64-bit SoC @ 1.5GHz – 2GB LPDDR4-2400 SDRAM – 2.4… selengkapnya
Rp 940.000Bosan dengan modul arduino yang kalian punya, saatnya mencoba modul programmer yang lain yah ini dia RASPBERRY PI 4 COMPUTER… selengkapnya
Rp 1.570.000Kinerja Produk: Warnanya coklat (amber), Goldfinger tape sticky baik, patuh, suhu tinggi, pelarut, tidak ada rembesan timah dan tidak ada… selengkapnya
Rp 11.900Fitur: -Dapat mendeteksi api atau panjang gelombang sumber cahaya dalam 760nm ~ 1100nm – Api lebih ringan mendeteksi jarak 80cm… selengkapnya
Rp 9.000Features – Calibrated directly in Celsius (Centigrade) – Linear + 10.0 mV/C scale factor – 0.5C accuracy guaranteeable (at +25C)… selengkapnya
Rp 8.000this is another great IIC/I2C/TWI/SPI Serial Interface. As the pin resources of for Arduino controller is limited, your project may… selengkapnya
Rp 12.400Kabel Jumper Dupont Pelangi 10 cm male to male 1 lembar = 40 kabel
Rp 13.000Dual Volt Amp Meter Digital Ampere Meter Voltmeter 10A 0-100V Ammeter Dilengkapi dengan pengukuran Voltmeter dan Amperemeter dalam 1 display… selengkapnya
Rp 26.500Tutorial Kendali Kecepatan Motor DC Arduino PID
Kategori
Artikel Terkait
-
Cara Bikin Sistem Monitoring Getaran Gempa dan Stabilitas Kemiringan Pakai ESP32 dan MPU 6050
-
Cara Bikin Sistem Monitoring Kelembapan Tanah Berbasis Arduino Uno dan Sensor YL69
-
Bikin Sistem Monitor Volume Air Tandon Otomatis Pakai Arduino Uno dan Sensor Ultrasonik
-
Bikin Smart Medicine Box Otomatis Pakai Arduino Nano dan Sensor Suhu DHT11
-
Bikin Sensor Parkir Otomatis Pakai Arduino Uno dan HC SR04

Saat ini belum tersedia komentar.