Driver motor L298N adalah modul populer untuk mengendalikan motor DC dan motor stepper. Ini memungkinkan Anda untuk mengontrol kecepatan dan arah motor menggunakan sinyal PWM dari Arduino, menjadikannya ideal untuk proyek robotika dan otomatisasi. Tutorial ini akan memandu Anda melalui menghubungkan dan menggunakan L298N dengan Arduino.
Apa yang Anda Butuhkan
- Modul Driver Motor L298N
- Dewan Arduino (mis., Uno, mega, nano)
- DC Motors atau Stepper Motors
- Sumber Daya Eksternal (mis., Baterai 9V atau 12V)
- Papan tempat memotong papan dan kabel jumper
- Komputer dengan IDE Arduino diinstal
Langkah 1: Memahami pengemudi motor L298N
Modul L298N adalah driver motor H-Bridge ganda, yang berarti dapat mengontrol kecepatan dan arah dua motor DC secara mandiri atau satu motor stepper.
L298N Pinout
Pin | Fungsi |
---|---|
In1, in2 | Motor Input Kontrol Arah |
In3, in4 | Input kontrol arah motor B |
Ena | Motor Kontrol Kecepatan (Input PWM) |
Enb | Kontrol Kecepatan M Motor B (Input PWM) |
Out1, out2 | Motor output |
Out3, out4 | Output motor B. |
12V (VCC) | Catu daya eksternal untuk motor |
5V (opsional) | Catu daya logika (jika jumper dihapus) |
Gnd | Tanah |
Catatan:
- Modul ini mencakup regulator 5V onboard yang memberi kekuatan pada sirkuit logika jika jumper ada dan VCC adalah 7-12V.
- Menghapus jumper mengharuskan Anda untuk menyediakan pasokan logika 5V secara terpisah.
Langkah 2: Kabel L298N ke Arduino
Inilah cara menghubungkan L298N ke Arduino UNO dan dua motor DC:
Pin l298n | Pin Arduino |
---|---|
Ena | Pin 10 (PWM) |
In1 | Pin 8 |
In2 | Pin 9 |
Enb | Pin 11 (PWM) |
In3 | Pin 6 |
In4 | Pin 7 |
Gnd | Arduino GND |
12V (VCC) | Daya Eksternal (9V/12V) |
Out1, out2 | Motor terminal |
Out3, out4 | Terminal motor B. |
Langkah 3: Unggah kode
Inilah contoh sketsa untuk mengontrol dua motor DC:
Kode contoh
// Motor A connections
#define ENA 10
#define IN1 8
#define IN2 9
// Motor B connections
#define ENB 11
#define IN3 6
#define IN4 7
void setup() {
// Set all pins as outputs
pinMode(ENA, OUTPUT);
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(ENB, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
}
void loop() {
// Move Motor A forward
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
analogWrite(ENA, 150); // Set speed (0-255)
// Move Motor B backward
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
analogWrite(ENB, 150); // Set speed (0-255)
delay(2000); // Run for 2 seconds
// Stop both motors
digitalWrite(ENA, LOW);
digitalWrite(ENB, LOW);
delay(1000); // Pause for 1 second
// Move both motors in reverse
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
analogWrite(ENA, 200);
analogWrite(ENB, 200);
delay(2000); // Run for 2 seconds
// Stop both motors
digitalWrite(ENA, LOW);
digitalWrite(ENB, LOW);
delay(1000); // Pause for 1 second
}
Langkah 4: Uji pengaturan
- Hubungkan Arduino ke komputer Anda melalui USB.
- Buka IDE Arduino dan pilih yang benar Papan Dan Pelabuhan di bawah Peralatan menu.
- Unggah kode ke Arduino dengan mengklik Mengunggah.
- Amati motor yang berputar ke depan, berhenti, dan membalikkan berdasarkan urutan yang diprogram.
Opsional: Mengontrol kecepatan secara dinamis
Anda dapat menyesuaikan kecepatan motor secara dinamis dengan mengubah nilai PWM yang dikirim ke ENA
Dan ENB
Pin menggunakan analogwrite (). Misalnya:
analogWrite(ENA, 100); // Slow speed
analogWrite(ENA, 255); // Full speed
Aplikasi L298n
- Membangun robot bermotor
- Mengontrol sabuk konveyor
- Mengemudi Stepper Motors
- Sistem otomatisasi dengan motor DC
Pemecahan masalah
- Motor tidak berputar: Pastikan catu daya eksternal terhubung dan menyediakan arus yang cukup.
- Arah motor yang salah: Periksa kabel pin dalam dan koneksi balik jika diperlukan.
- Perilaku motorik yang tidak stabil: Gunakan catu daya yang stabil dan hindari koneksi longgar.
Kesimpulan
Anda telah berhasil menghubungkan driver motor L298N dengan Arduino untuk mengontrol motor DC. Modul serbaguna ini memungkinkan Anda untuk mengelola kecepatan dan arah motor dengan mudah. Eksperimen lebih lanjut dengan mengintegrasikan sensor, kendali jarak jauh, atau modul lain ke dalam proyek bermotor Anda!