1. Motor DC
Pengantar
Motor DC
Motor DC menggunakan Arus Searah (energi listrik) untuk menghasilkan gerakan mekanis yaitu gerakan
rotasi. Ketika itu mengubah energi listrik menjadi energi mekanik maka disebut sebagai motor DC dan
ketika itu mengubah energi mekanik menjadi energi listrik maka disebut generator DC.
Prinsip kerja motor DC didasarkan pada kenyataan bahwa ketika konduktor pembawa arus ditempatkan
pada medan magnet, ia mengalami gaya mekanis dan mulai berputar. Arah rotasinya tergantung pada
Aturan Tangan Kiri Fleming.
Motor DC digunakan dalam banyak aplikasi seperti robot untuk kontrol gerakan, mainan, quadcopter,
CD / DVD disk drive di PC / Laptop dll.
Konstruksi
Ini terutama memiliki dua bagian utama sebagai,
Kutub Selatan dan Utara magnet permanen atau Elektromagnet adalah bagian stator dari motor DC dan
dinamo yang dihubungkan dengan komutator adalah bagian yang berputar dari motor DC.
Kutub Selatan dan Utara digunakan untuk membuat medan magnet seperti yang ditunjukkan pada
gambar.
Armature adalah material penghantar yang ditempatkan di antara medan magnet yang dihasilkan oleh
kutub Utara & Selatan.
Komutator memiliki segmen yang dipasang dengan setiap ujung angker konduktor. Karenanya,
komutator juga berputar dengan Armature. Kuas merupakan bagian stator yang selalu berhubungan
dengan komutator.
Prinsip kerja
Seperti yang ditunjukkan pada gambar di atas, sisi kiri angker terangkat ke atas dan sisi kanan angker ke
bawah. Ini karena gaya, yang bergantung pada arah medan magnet dan arah arus yang mengalir melalui
dinamo. Aturan Tangan Kiri Fleming digunakan untuk menentukan arah gaya (naik / turun)
Seperti yang ditunjukkan pada gambar di atas, arah arus (i) yang mengalir melalui konduktor adalah ke
dalam, maka medan magnet yang dihasilkan di sekitar konduktor memiliki arah sesuai Aturan Pegangan
Tangan Kanan yang ditunjukkan pada gambar.
Medan magnet di antara kutub Utara dan Selatan memiliki arah dari Utara ke Selatan seperti yang
ditunjukkan pada gambar.
Garis gaya magnet yang dihasilkan oleh konduktor pembawa arus dan oleh dua kutub ditunjukkan pada
gambar. Kedua garis gaya ini terlihat ke arah yang sama di setengah bagian atas konduktor sedangkan di
bagian bawah konduktor melihat ke arah yang berlawanan.
Oleh karena itu konsentrasi garis gaya magnet lebih banyak di atas bagian konduktor yang
mengakibatkan gaya yang menggerakkan konduktor ke bawah.
Ini untuk satu sisi konduktor jangkar sedangkan di sisi lain dari konduktor jangkar arah arus akan
berlawanan seperti yang ditunjukkan pada diagram konstruksi dan karenanya gaya akan menggerakkan
penghantar jangkar ke arah yang berlawanan. Karenanya dua sisi dinamo bergerak ke atas dan ke bawah
yang menghasilkan rotasi dinamo.
Kita juga dapat mengubah arah putaran (Searah jarum jam / berlawanan arah jarum jam) dari motor DC
hanya dengan mengubah polaritas tegangan yang diberikan pada terminal motor.
Kecepatan (N) motor DC diukur dalam RPM (Rotasi Per Menit) dan diberikan oleh,
N = 60AE / PZ Φ
Dimana,
E = Kembali EMF
A = Jalur paralel
Φ = Fluks
Di sini, kita dapat melihat bahwa kecepatan motor DC dapat dikendalikan melalui,
Dari parameter kontrol kecepatan di atas, kita dapat menemukan bahwa V dan RA terkait dengan
rangkaian jangkar dan Φ terkait dengan medan magnet, oleh karena itu diklasifikasikan sebagai,
Modulasi Lebar Pulsa adalah teknik populer untuk mengontrol kecepatan motor DC. Ini mengontrol
tegangan rata-rata (V) yang diterapkan ke terminal motor DC dengan menggunakan lebar pulsa seperti
yang ditunjukkan pada gambar di bawah ini.
TON adalah waktu di mana sinyalnya TINGGI dan TOFF adalah waktu di mana sinyalnya RENDAH. Jadi
tegangan terminal berlaku untuk motor DC hanya untuk TON (ON) waktu periode.
Misalnya.
Jika PWM dengan duty cycle 50% seperti pada gambar diatas maka akan memberikan tegangan rata-
rata ≈50% ke terminal motor.
Jadi dengan cara ini kita mendapatkan kontrol kecepatan motor DC sederhana dengan menggunakan
metode PWM.
Siklus kerja yang lebih tinggi menghasilkan kecepatan yang lebih tinggi dan siklus kerja yang lebih rendah
menghasilkan kecepatan yang lebih rendah.
Kita dapat memvariasikan lebar pulsa dengan tepat menggunakan Mikrokontroler untuk mendapatkan
kontrol yang baik atas motor DC.
Sekarang, kita akan melihat bagaimana mengubah arah rotasi motor DC.
Motor DC adalah dua arah yaitu kita dapat memutar motor DC ke salah satu arah (Searah jarum jam /
berlawanan arah jarum jam) hanya dengan mengubah polaritas terminalnya. Arah motor DC dapat
dikendalikan dengan menggunakan konsep H-Bridge seperti pada gambar di bawah ini.
Dalam kondisi ini Motor akan mulai berputar searah jarum jam.
Pada gambar di bawah ini,
Dalam kondisi ini Motor akan mulai berputar berlawanan arah jarum jam.
Ada konfigurasi lain ketika semua sakelar ditutup yang dikenal tidak valid karena koneksi jenis hubung
singkatnya seperti yang ditunjukkan pada gambar di bawah ini.
Dengan cara ini kita dapat mengontrol motor DC di kedua arahnya.
IC driver motor L293D dapat digunakan untuk mengontrol pergerakan motor DC di kedua arah. Ini
memiliki penggerak motor H-bridge built-in.
Dan sebagai bonus, ia bahkan dapat mengendalikan motor stepper bipolar seperti NEMA 17.
Mengontrol Motor DC
Untuk memiliki kendali penuh atas motor DC, kita harus mengontrol kecepatan dan arah
putarannya. Ini dapat dicapai dengan menggabungkan kedua teknik ini.
Kecepatan motor DC dapat dikontrol dengan memvariasikan tegangan inputnya. Teknik umum
untuk melakukan ini adalah dengan menggunakan PWM (Pulse Width Modulation)
PWM adalah teknik dimana nilai rata-rata tegangan input diatur dengan mengirimkan rangkaian
pulsa ON-OFF.
Tegangan rata-rata sebanding dengan lebar pulsa yang dikenal sebagai Siklus Tugas.
Semakin tinggi duty cycle maka semakin besar tegangan rata-rata yang dialirkan ke motor dc
(Kecepatan Tinggi) dan semakin rendah duty cycle maka semakin kecil tegangan rata-rata yang
diterapkan pada motor dc (Kecepatan Rendah).
Gambar di bawah mengilustrasikan teknik PWM dengan berbagai duty cycle dan tegangan rata-
rata.
Arah putaran motor DC dapat dikontrol dengan mengubah polaritas tegangan inputnya. Teknik
umum untuk melakukan ini adalah dengan menggunakan H-Bridge.
Sirkuit H-Bridge berisi empat sakelar dengan motor di tengah membentuk pengaturan seperti-H.
Menutup dua sakelar tertentu pada saat yang sama membalikkan polaritas tegangan yang
diterapkan ke motor. Hal ini menyebabkan perubahan arah putaran motor.
Saluran keluaran driver motor L298N untuk motor A dan B dipecah ke tepi modul dengan dua
terminal sekrup pitch 3,5 mm.
Anda dapat menghubungkan dua motor DC yang memiliki tegangan antara 5 hingga 35V ke
terminal ini.
Setiap saluran pada modul dapat mengirimkan hingga 2A ke motor DC. Namun, jumlah arus
yang disuplai ke motor tergantung pada catu daya sistem.
Pin Kontrol
Untuk setiap saluran L298N, ada dua jenis pin kontrol yang memungkinkan kita untuk
mengontrol kecepatan dan arah putaran motor DC pada saat yang sama, yaitu. Pin kontrol arah &
pin kontrol kecepatan
Dengan menggunakan pin pengatur arah, kita dapat mengontrol apakah motor berputar maju atau
mundur. Pin ini sebenarnya mengontrol sakelar rangkaian H-Bridge di dalam IC L298N.
Modul ini memiliki dua pin kontrol arah untuk setiap saluran. Pin IN1 dan IN2 mengontrol arah
putaran motor A sedangkan IN3 dan IN4 mengontrol motor B.
Arah putaran motor dapat dikontrol dengan menerapkan logika TINGGI (5 Volt) atau logika
RENDAH (Arde) ke input ini. Bagan di bawah ini menggambarkan bagaimana ini dilakukan.
Arah Pemintalan
Input1 Input2
Pin kontrol kecepatan yaitu. ENA dan ENB digunakan untuk menghidupkan motor, OFF dan
mengontrol kecepatannya.
Menarik pin ini TINGGI akan membuat motor berputar, menariknya RENDAH akan
membuatnya berhenti. Tapi, dengan Pulse Width Modulation (PWM), kita sebenarnya bisa
mengontrol kecepatan motor.
Modul biasanya dilengkapi dengan jumper pada pin ini. Saat pelompat ini dipasang, motor
diaktifkan dan berputar dengan kecepatan maksimum. Jika Anda ingin mengontrol kecepatan
motor secara terprogram, Anda perlu melepas jumper dan menghubungkannya ke pin yang
mendukung PWM di Arduino.
Pinout Modul Driver Motor L298N
Sebelum mempelajari hookup dan kode contoh, pertama-tama mari kita lihat Pinout-nya.
Pin VCC menyuplai daya untuk motor. Bisa di mana saja antara 5 hingga 35V. Ingat, jika jumper
5V-EN terpasang, Anda perlu menyuplai 2 volt ekstra dari yang dibutuhkan motor sebenarnya,
untuk mendapatkan kecepatan maksimum dari motor Anda.
GND adalah pin ground yang sama.
Pin 5V memasok daya untuk rangkaian logika switching di dalam IC L298N. Jika jumper 5V-
EN sudah terpasang, pin ini berfungsi sebagai output dan dapat digunakan untuk menyalakan
Arduino Anda. Jika jumper 5V-EN dilepas, Anda perlu menghubungkannya ke pin 5V di
Arduino.
Pin ENA digunakan untuk mengontrol kecepatan Motor A. Menarik pin ini TINGGI (Menjaga
jumper pada tempatnya) akan membuat Motor A berputar, menariknya RENDAH akan membuat
motor berhenti. Melepas jumper dan menghubungkan pin ini ke input PWM akan
memungkinkan kita mengontrol kecepatan Motor A.
Pin IN1 & IN2 digunakan untuk mengontrol arah putaran Motor A. Jika salah satunya TINGGI
dan RENDAH, Motor A akan berputar. Jika kedua inputnya TINGGI atau RENDAH, Motor A
akan berhenti.
Pin IN3 & IN4 digunakan untuk mengontrol arah putaran Motor B. Jika salah satunya TINGGI
dan RENDAH, Motor B akan berputar. Jika kedua inputnya TINGGI atau RENDAH, Motor B
akan berhenti.
Pin ENB digunakan untuk mengontrol kecepatan Motor B. Menarik pin ini TINGGI (Menjaga
jumper pada tempatnya) akan membuat Motor B berputar, menariknya RENDAH akan membuat
motor berhenti. Melepas jumper dan menghubungkan pin ini ke input PWM akan
memungkinkan kita mengontrol kecepatan Motor B.
Pin OUT1 & OUT2 terhubung ke Motor A.
Pin OUT3 & OUT4 terhubung ke Motor B.
Pengkabelan modul driver motor L298N dengan Arduino UNO
Sekarang kita tahu segalanya tentang modul, kita bisa mulai menghubungkannya ke Arduino
kita!
Mulailah dengan menghubungkan catu daya ke motor. Dalam eksperimen kami, kami
menggunakan Motor Gearbox DC (juga dikenal sebagai motor 'TT') yang biasanya ditemukan
pada robot penggerak dua roda. Mereka diberi peringkat untuk 3 hingga 12V. Jadi, kami akan
menghubungkan catu daya 12V eksternal ke terminal VCC. Dengan mempertimbangkan
penurunan tegangan internal IC L298N, motor akan menerima 10V dan akan berputar pada RPM
yang sedikit lebih rendah. Tapi, tidak apa-apa.
Selanjutnya, kita perlu memasok 5 Volt untuk sirkuit logika L298N. Kami akan menggunakan
regulator 5V on-board dan menurunkan 5 volt dari catu daya motor jadi, pertahankan jumper 5V-
EN di tempatnya.
Sekarang, pin input dan enable (ENA, IN1, IN2, IN3, IN4 dan ENB) dari modul L298N
terhubung ke enam pin output digital Arduino (9, 8, 7, 5, 4 dan 3). Perhatikan bahwa pin
keluaran Arduino 9 dan 3 keduanya berkemampuan PWM.
Terakhir, hubungkan satu motor ke terminal A (OUT1 & OUT2) dan motor lainnya ke terminal
B (OUT3 & OUT4). Anda dapat menukar koneksi motor Anda, secara teknis, tidak ada cara
yang benar atau salah.
Setelah selesai, Anda akan mendapatkan sesuatu yang terlihat mirip dengan ilustrasi yang
ditampilkan di bawah.
Arduino Code - Mengontrol Motor DC
Sketsa berikut akan memberi Anda pemahaman lengkap tentang cara mengontrol kecepatan dan
arah putaran motor DC dengan driver motor L298N dan dapat berfungsi sebagai dasar untuk
eksperimen dan proyek yang lebih praktis
// Motor A connections
intenA = 9;
int in1 = 8;
int in2 = 7;
// Motor B connections
intenB = 3;
int in3 = 5;
int in4 = 4;
voidsetup() {
// Set all the motor control pins to outputs
pinMode(enA, OUTPUT);
pinMode(enB, OUTPUT);
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
pinMode(in3, OUTPUT);
pinMode(in4, OUTPUT);
voidloop() {
directionControl();
delay(1000);
speedControl();
delay(1000);
}
Penjelasan Kode:
Kode Arduino cukup mudah. Tidak memerlukan perpustakaan apa pun untuk membuatnya
berfungsi. Sketsa dimulai dengan mendeklarasikan pin Arduino yang dihubungkan dengan pin
kontrol L298N.
// Motor A connections
intenA = 9;
int in1 = 8;
int in2 = 7;
// Motor B connections
intenB = 3;
int in3 = 5;
int in4 = 4;
Di bagian penyetelan kode, semua pin kontrol motor dinyatakan sebagai OUTPUT digital dan
ditarik LOW untuk mematikan kedua motor.
voidsetup() {
// Set all the motor control pins to outputs
pinMode(enA, OUTPUT);
pinMode(enB, OUTPUT);
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
pinMode(in3, OUTPUT);
pinMode(in4, OUTPUT);
Di bagian loop dari kode kita memanggil dua fungsi yang ditentukan pengguna pada interval satu
detik.
voidloop() {
directionControl();
delay(1000);
speedControl();
delay(1000);
}
voiddirectionControl() {
// Set motors to maximum speed
// For PWM maximum possible values are 0 to 255
analogWrite(enA, 255);
analogWrite(enB, 255);
• speedControl () - Fungsi ini mempercepat kedua motor dari nol ke kecepatan maksimum
dengan menghasilkan sinyal PWM menggunakan fungsi analogWrite (), kemudian
memperlambatnya kembali ke nol. Akhirnya mematikan motor.