Le BTS7960 est un puissant module de pilote de moteur H-pont H qui peut gérer un courant et une tension élevés, ce qui le rend idéal pour conduire de grands moteurs CC. Il fournit un contrôle PWM, une protection de surintensité et une dissipation de chaleur efficace, ce qui le rend parfait pour la robotique, les voitures RC et d'autres applications de moteur haute puissance. Ce tutoriel vous guidera à travers l'interfaçage du BTS7960 avec un Arduino.
Ce dont vous aurez besoin
- Module de conducteur de moteur BTS7960
- Board Arduino (par exemple, Uno, Mega, Nano)
- Moteur CC
- Alimentation externe pour le moteur (correspondant à la tension du moteur)
- Fils de cavalier
- Un ordinateur avec l'ide Arduino installé
Étape 1: Comprendre les broches BTS7960
Le module BTS7960 a les épingles clés suivantes:
Épingle | Fonction |
---|---|
VCC | Alimentation logique (5V) |
GND | Sol |
R_en | Activation du moteur droit (actif élevé) |
L_en | Activer le moteur gauche (haut actif) |
R_pwm | Entrée PWM du moteur droit |
L_pwm | Entrée PWM du moteur gauche |
MOTOR_A | Terminal moteur A |
Motor_B | Terminal moteur B |
Machines virtuelles | Alimentation du moteur (entrée de tension) |
GND | Sol |
Étape 2: Câblage du BTS7960 à Arduino
Vous trouverez ci-dessous le guide de câblage pour la connexion du BTS7960 à un Arduino Uno:
PIN BTS7960 | Épingle arduino |
---|---|
VCC | 5V |
GND | GND |
R_en | PIN 4 |
L_en | PIN 5 |
R_pwm | PIN 6 |
L_pwm | PIN 7 |
MOTOR_A | Terminal moteur A |
Motor_B | Terminal moteur B |
Machines virtuelles | Puissance du moteur (+) |
GND | Puissance du moteur (-) |
Note: Assurez-vous que votre alimentation externe correspond à la tension et aux exigences de courant de votre moteur.
Étape 3: Téléchargez le code
Voici un exemple de code pour contrôler la direction et la vitesse du moteur:
#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);
}
Étape 4: Testez la configuration
- Connectez votre Arduino à votre ordinateur via USB.
- Ouvrez l'ide Arduino et sélectionnez le bon Conseil et Port de Outils menu.
- Téléchargez le code en cliquant sur le Télécharger bouton.
- Une fois le code téléchargé, le moteur alternera entre le mouvement vers l'avant et le mouvement inversé, avec des pauses entre les deux.
Dépannage
- Moteur pas en rotation: Assurez-vous que votre alimentation du moteur est connectée et correspond aux exigences de tension du moteur.
- Mouvement erratique: Vérifiez toutes les connexions, en particulier les bornes du moteur et les broches PWM.
- Surchauffe: Si le conducteur du moteur surchauffe, assurez-vous une dissipation de chaleur appropriée et vérifiez que le courant du moteur ne dépasse pas la note du module.
Applications de BTS7960
- Véhicules robotiques
- Systèmes de tapis roulant
- Portes motorisés
- Contrôle des moteurs de haute puissance dans les configurations industrielles
Conclusion
Vous avez réussi à interfacer le pilote de moteur BTS7960 avec un Arduino et à contrôler un moteur CC. Ce conducteur polyvalent est parfait pour les applications de haute puissance nécessitant un contrôle précis. Expérimentez avec différentes valeurs PWM pour contrôler la vitesse du moteur et construire vos propres projets motorisés!