Lompat ke konten Lompat ke sidebar Lompat ke footer

Cara Membuat Driver Motor DC menggunakan Arduino Uno

Dalam sistem kendali elektronika dan robot kita sering menggunakan motor DC. Motor DC bisa dikendalikan melalui mikrokontroller misalnya Arduino. Untuk menghubungkan output Arduino ke motor DC maka kita membutuhkan driver motor DC.

Dengan adanya driver motor DC maka kita akan lebih mudah mengatur arah putaran dan kecepatan motor DC. Sebenarnya sudah banyak modul driver motor DC yang bisa kita beli secara online akan tetapi tidak ada salahnya kalau kita membuat sendiri driver motor DC tersebut. Dalam pembuatan driver motor DC kali ini kita hanya menggunakan transistor-transistor yang kecil dan dengan harga yang murah. Hal ini disesuaikan dengan kebutuhan untuk motor DC  yang arus listriknya kecil.


Untuk membuat sendiri driver motor DC maka kita memerlukan alat, bahan dan komponen sebagai berikut: 

1.Resistor
   150 Ω sebanyak 8 buah
   330 Ω sebanyak 5 buah
2.Transistor BC548 sebanyak 8 buah
3.Dioda IN4148 sebanyak 8 buah
4.Pin header famale
   6 pin sebanyak 1 buah
   8 pin sebanyak 2 buah
   10 pin sebanyak 1 buah
5.Pin header male 6 pin sebanyak 1 buah
6.Switch on/off
7.Motor DC sebanyak 2 buah
8.
PCB

Pembuatan PCB

Langkah pertama untuk membuat driver motor DC adalah membuat layout PCB terlebih dahulu. Silahkan rancang gambar layout PCB menggunakan software yang anda kuasai seperti PCB wizard, Eagle, Altium  dan masih banyak lagi yang lainnya. Setelah rancangan layout jadi maka bisa dicetak kedalam PCB polos. Untuk memudahkan anda dalam membuat PCB sebaiknya pesan saja PCB tersebut sesuai dengan proyek yang kita buat. Sehingga kita tidak lagi direpotkan untuk memindahkan gambar layout ke PCB polos, kita tidak perlu lagi melarutkan tembaga PCB dan tidak perlu lagi mengebor PCB. Semua kegiatan tersebut akan sangat menyita waktu anda.

Ini contoh gambar layout driver motor DC yang menggunakan transistor:

Untuk pembuatan PCB saya rekomendasikan untuk memesannya di PCBWay saja. Linknya ada di sini : https://www.pcbway.com. Hasil produk PCBWay sangat baik kualitasnya, ukuranya yang presisi, pemotongan dan pengeboran lubang PCB sangat rapi. Produk PCBWay bisa digunakan untuk proyek elektronika untuk industri, universitas, Sekolah Menengah Kejuruan (SMK) dan bisa juga untuk individu yang hobi dengan elektronika. Pelayanan PCBWay terhadap konsumen pun bagus dan responnya cepat. Jadi dengan adanya PCBWay maka kita tidak lagi repot dalam membuat PCB. Kita cukup fokus hanya untuk merakit dan menyolder komponen saja. 

Bagaimana Cara memesan di PCBWay

Langkah awal sebelum kita memesan PCB maka persiapkan dulu hasil design layout PCB-nya. Design layout PCB bisa menggunakan software Eagle, Altium atau yang lainnya. Setelah layout PCB jadi maka file tersebut harus diekspor dalam bentuk file gerber. File gerber terdiri dari beberapa macam file, nah.. semua file gerber tadi di compres menjadi file zip atau rar. File inilah yang nanti akan kita kirimkan ke PCBWay.

Setelah anda memiliki file gerber maka silahkan mendaftar dengan cara mengunjungi website PCBWay. Lakukan pendaftaran dengan menggunakan email dan membuat password. Setelah selesai mendaftar  maka kita akan disuruh melengkapi biodata dan alamat lengkapnya. 

Kalau pendaftaran sudah sukses maka silahkan anda mengiriman file gerber tadi. Setelah dikirim maka akan diverifikasi oleh tim ahli PCBWay. Jika layout PCB telah disetujui maka lakukanlah pembayaran. Biaya tersebut akan diakumulasi seperti biaya produksi PCB dan biaya ongkos kirimnya. Pembayaran bisa menggunakan kartu kredit, Paypal, atau transfer bank. Jika pembayaran telah sukses maka akan ada notifikasi dan akan dilanjutkan dengan proses produksi. Jumlah PCB yang di pesan minimal 5 buah. Harga yang tercantum semua dalam dolar $ (USD).

Layout PCB dibuat berdasarkan keinginan kita mulai dari dimensi, jumlah lapisan layar PCB, ketebalan PCB, dll.  Sebelum PCB pesanan kita diproduksi maka PCBWay akan  mengkonfirmasi ulang. Jika kita menyetujui maka PCBnya akan langsung masuk ke proses produksi, tetapi jika ada perubahan sedikit maka kita bisa memberitahukannya untuk perubahan tersebut sehingga hasil PCB benar-benar sesuai dengan keinginan kita.

Ini adalah contoh PCB yang saya pesan di PCBWay. Saya sangat senang sekali karena kualitas PCBnya sangat bagus dan rapi.


Setelah PCBnya tersedia, maka kita pasang komponen sesuai gambar skemanya. Dalam skema ini kita membutuhkan Arduino Uno sebagai mikrokontrollernya. Silahkan pasang dan solderlah komponen-komponennya sesuai skema rangkaian di bawah ini :


Hasil pemasangan dan penyolderan komponen seperti tampak dibawah ini:


Inilah tampak hasil penyolderannya :


Setelah selesai menyolder maka rakitlah driver motor DC dengan Arduino Uno dengan cara menyatukan kedua board tersebut sesuaikan dengan pin dan konektornya. 

Prinsip Kerja Rangkaian Driver Motor

Untuk mengaktifkan driver motor DC ini maka kita membutuhkan Arduino Uno. Arduino ini kita akan program agar bisa mengeluarkan signal Pulse Width Modulation (PWM). Kalau anda masih belum mengetahui tentang PWM maka silahkan buka materi tentang PWM.

Pin PWM yang kita gunakan pada arduino uno adalah pin 3, 5, 6 dan 9. Pin PWM ini akan terhubung dengan resistor 150 Ω menuju basis transistor. Untuk 1 buah motor DC membutuhkan 4 buah Transistor, sehingga kalau ingin 2 buah motor DC kita membutuhkan 8 buah Transistor. Sebagai pengendali motor DC ke-1 adalah arduino uno di pin 3 dan 5 sedangkan pengendali motor DC ke-2 adalah pin 6 dan 9.

Saat ingin memutar motor DC searah jarum jam maka bisa memberikan sinyal PWM pada pin 3 dan pin 6 sedangkan pin lainnya yaitu 5 dan 9 harus dibuat logika “0” atau low.

Saat ingin memutar motor DC berlawanan arah jarum jam maka bisa memberikan sinyal PWM pada pin 5 dan pin 9 sedangkan pin lainnya yaitu 3 dan 6 dibuat logika “0” atau low.

Catatan penting:

Saat membuat program jangan pernah membuat ouput pin 3 dan 5 sama-sama high “1” atau sama-sama diberi sinyal pwm karena bisa membuat hubung singkat catu daya 5 volt yang menuju motor DC, ini bisa merusak komponennya.

Begitu juga untuk pin 6 dan 9 tidak boleh dibuat sama-sama high “1” atau sama-sama diberi pwm karena sama juga akan  membuat hubung singkat catu daya 5 volt yang menuju motor DC.

Sebagai langkah keamanan maka guna mendeteksi penyalaan pin 3,5,6,9 maka penulis menambahkan 4 buah LED pada output Arduino uno yang terhubung dengan pin tersebut, hal ini guna memastikan program telah dibuat dengan benar. Jadi 4 buah LED ini hanya boleh hidup minimal 1 buah LED ON (terserah LED yang mana saja) dan maksimal 2 buah LED yang ON (yaitu hanya untuk pasangannya saja: LED pin 3 dan 6 atau LED pin 5 dan 9).

2 Kondisi penyalaan LED yang TIDAK diperbolehkan

2 Kondisi ini adalah kondisi terlarang, yaitu pada saat:
LED pin 3 dan LED pin 5 hidup bersamaan atau,
LED pin 6 dan LED pin 9 hidup bersamaan

Sedangkan kombinasi kondisi lainnya diperbolehkan.

Jika kondisi terlarang ini terjadi maka dapat membuat hubungan singkat (short atau konslet) 5 volt dan ground (GND). Kejadian ini bisa mengakibatkan transistor menjadi panas dan bisa menyebabkan kerusakan transistor dan komponen lainnya. Jadi jangan pernah lakukan kesalahan dalam pembuatan programa arduino-nya.

Jika semua komponen disolder maka sekarang saatnya untuk membuat sketch program Arduinonya. Program ini hanya sekedar mengujicoba driver apakah bekerja normal atau tidak, sedangkan penggunaannya nanti bisa dikembangkan untuk aplikasi apa saja yang membutuhkan motor DC misalnya robot line follower, robot bluetooth,  dll.

Program Arduinonya sebagai berikut :
//-----------------------------------------------
//--- Driver motor DC
//--- Oleh : Hendry Kuriawan
//-----------------------------------------------
const int MOTOR_1KANAN = 3; //PIN 3 UNTUK MOTOR 1 PUTAR KE KANAN       
const int MOTOR_1KIRI = 5;  //PIN 5 UNTUK MOTOR 1 PUTAR KE KIRI
const int MOTOR_2KANAN = 6; //PIN 3 UNTUK MOTOR PUTAR KE KANAN  
const int MOTOR_2KIRI = 9;  //PIN 9 UNTUK MOTOR PUTAR KE KIRI
 

void setup() 
{                 

pinMode (MOTOR_1KANAN, OUTPUT);
pinMode (MOTOR_1KIRI, OUTPUT);
pinMode (MOTOR_2KANAN, OUTPUT);
pinMode (MOTOR_2KIRI, OUTPUT);
}
 
void loop()
/*nilai pwm untuk motor DC kecepatan penuh adalah maksimum  255 sedangkan lambat sekitar 125, nilai ini boleh menyesuaikan. */
{                        
analogWrite(MOTOR_1KANAN,255); //saat motor 1 ke kanan kecepatan penuh
analogWrite(MOTOR_1KIRI,0); //maka motor 1 ke kiri WAJIB di nonaktifkan
analogWrite(MOTOR_2KANAN,255); //saat motor 2 ke kanan kecepatan penuh
analogWrite(MOTOR_2KIRI,0); //maka motor 2 ke kiri WAJIB di nonaktifkan
delay (2000);
 
analogWrite(MOTOR_1KIRI,125); //saat motor 1 ke kiri kecepatan lambat
analogWrite(MOTOR_1KANAN,0); //maka motor 1 ke kanan WAJIB di nonaktifkan
analogWrite(MOTOR_2KIRI,125); //saat motor 2 ke kiri kecepatan lambat
analogWrite(MOTOR_2KANAN,0); //maka motor 2 ke kanan WAJIB di nonaktifkan
delay (2000);
}

Ini adalah video hasil program pengujian driver motor DC ini. Untuk pengembangan lebih lanjut maka pada pin 10, 11, 12, 13 telah disediakan pin header yang bisa terhubung dengan device input output lainnya. Jadi driver motor DC ini bisa terhubung dengan saklar remote, atau modul remote bluetooth, dan lain-lain.



Itulah pembahasan tentang driver motor DC, jangan lupa kalau ingin membuat PCB berkualitas bisa pesan saja ke PCBWay.

Terimakasih PCBWay dan Terimakasih juga untuk semua pembaca. 

Salam elektronika !...

Posting Komentar untuk "Cara Membuat Driver Motor DC menggunakan Arduino Uno"