Il BTS7960 è un potente modulo del driver del motore H-ponte H in grado di gestire la corrente e la tensione elevate, rendendolo ideale per la guida di grandi motori DC. Fornisce controllo PWM, protezione da sovracorrente e un'efficace dissipazione del calore, rendendolo perfetto per la robotica, le auto RC e altre applicazioni motorie ad alta potenza. Questo tutorial ti guiderà attraverso l'interfacciamento del BTS7960 con un Arduino.
Cosa avrai bisogno
- Modulo del driver del motore BTS7960
- Arduino Board (ad es. Uno, Mega, Nano)
- Motore DC
- Alimentazione esterna per il motore (abbinamento della tensione del motore)
- Fili jumper
- Un computer con l'IDE Arduino installato
Passaggio 1: Comprensione dei pin BTS7960
Il modulo BTS7960 ha i seguenti pin chiave:
Spillo | Funzione |
---|---|
VCC | Alimentazione logica (5V) |
GND | Terra |
R_en | Abilita del motore destro (alto attivo) |
L_en | Abilita del motore sinistro (alto attivo) |
R_pwm | Ingresso PWM del motore destro |
L_pwm | Ingresso PWM del motore sinistro |
Motor_a | Terminale del motore a |
Motor_b | Terminale del motore b |
VM | Alimentazione del motore (ingresso di tensione) |
GND | Terra |
Passaggio 2: cablaggio BTS7960 ad Arduino
Di seguito è riportata la guida al cablaggio per la connessione del BTS7960 a un Arduino Uno:
Pin BTS7960 | Arduino Pin |
---|---|
VCC | 5v |
GND | GND |
R_en | Pin 4 |
L_en | Pin 5 |
R_pwm | Pin 6 |
L_pwm | Pin 7 |
Motor_a | Terminale del motore a |
Motor_b | Terminale del motore b |
VM | Potenza del motore (+) |
GND | Potenza motorio (-) |
Nota: Assicurarsi che l'alimentazione esterna corrisponda ai requisiti di tensione e corrente del motore.
Passaggio 3: caricare il codice
Ecco un codice di esempio per controllare la direzione e la velocità del motore:
#define R_EN 4
#define L_EN 5
#define R_PWM 6
#define L_PWM 7
void setup() {
pinMode(R_EN, OUTPUT);
pinMode(L_EN, OUTPUT);
pinMode(R_PWM, OUTPUT);
pinMode(L_PWM, OUTPUT);
Serial.begin(9600);
Serial.println("BTS7960 Motor Driver Test");
}
void loop() {
// Forward motion
digitalWrite(R_EN, HIGH);
digitalWrite(L_EN, LOW);
analogWrite(R_PWM, 150); // Set speed (0-255)
analogWrite(L_PWM, 0);
delay(2000);
// Stop
digitalWrite(R_EN, LOW);
digitalWrite(L_EN, LOW);
analogWrite(R_PWM, 0);
analogWrite(L_PWM, 0);
delay(1000);
// Reverse motion
digitalWrite(R_EN, LOW);
digitalWrite(L_EN, HIGH);
analogWrite(R_PWM, 0);
analogWrite(L_PWM, 150); // Set speed (0-255)
delay(2000);
// Stop
digitalWrite(R_EN, LOW);
digitalWrite(L_EN, LOW);
analogWrite(R_PWM, 0);
analogWrite(L_PWM, 0);
delay(1000);
}
Passaggio 4: testare l'installazione
- Collega il tuo Arduino al tuo computer tramite USB.
- Apri l'IDE Arduino e seleziona il corretto Asse E Porta da Utensili menu.
- Carica il codice facendo clic su Caricamento pulsante.
- Una volta caricato il codice, il motore si alternerà tra il movimento in avanti e inverso, con pause nel mezzo.
Risoluzione dei problemi
- Motore non girando: Assicurarsi che l'alimentazione del motore sia collegato e corrisponda ai requisiti di tensione del motore.
- Mozione irregolare: Controllare tutte le connessioni, in particolare i terminali del motore e i pin PWM.
- Surriscaldamento: Se il driver del motore si surriscalda, assicurarsi una corretta dissipazione di calore e verificare che la corrente del motore non superi la valutazione del modulo.
Applicazioni di BTS7960
- Veicoli robotici
- Sistemi di nastro trasportatore
- Porte motorizzate
- Controllo motore ad alta potenza nelle configurazioni industriali
Conclusione
Hai interfacciato con successo il driver del motore BTS7960 con un Arduino e controllato un motore a CC. Questo driver versatile è perfetto per applicazioni ad alta potenza che richiedono un controllo preciso. Sperimenta diversi valori PWM per controllare la velocità del motore e costruire i tuoi progetti motorizzati!