Ten moduł drivera oparty na BTS7960 służy do sterowania silnikiem DC z regulacją prędkości PWM i oddzielnymi wejściami enable. Udostępnia piny logiczne dla left/right PWM i enable, a także analogowe wyjścia current-sense oraz złącza zasilania dla napięcia silnika i GND.
| Pin | Sygnał | Opis |
|---|---|---|
GND |
ground | Logic ground reference for control signals. |
VCC |
power | Logic supply input for the BTS7960 driver interface. |
LPWM |
PWM | PWM control input for left-direction motor drive. |
RPWM |
PWM | PWM control input for right-direction motor drive. |
L_EN |
enable | Left half-bridge enable input; drive high to enable. |
R_EN |
enable | Right half-bridge enable input; drive high to enable. |
M+ |
power | Motor output terminal positive side from the H-bridge. |
M- |
power | Motor output terminal negative side from the H-bridge. |
L_EN |
enable | Left half-bridge enable input; drive high to enable. |
R_EN |
enable | Right half-bridge enable input; drive high to enable. |
B- |
power-high | High-current motor supply negative input for the BTS7960 bridge. |
B+ |
power-high | High-current motor supply positive input for the BTS7960 bridge. |
R_IS |
analog | Right-side current sense output from the driver. |
L_IS |
analog | Left-side current sense output from the driver. |
| Z | Do | Przewód |
|---|---|---|
board:5V |
x1:VCC |
red |
board:GND |
x1:GND |
black |
board:D5 |
x1:RPWM |
green |
board:D6 |
x1:LPWM |
blue |
board:D7 |
x1:R_EN |
yellow |
board:D8 |
x1:L_EN |
purple |
x1:M+ |
x2:M+ |
cyan |
Ten przykład został napisany i sprawdzony kompilacją dla arduino-uno. Codey Online dostosuje go do każdej innej obsługiwanej płytki.
// BTS7960 Right Foot Driver canonical beginner example
// This sketch drives a DC motor forward and backward using PWM.
const int RPWM_PIN = 5;
const int LPWM_PIN = 6;
const int REN_PIN = 7;
const int LEN_PIN = 8;
void stopMotor() {
analogWrite(RPWM_PIN, 0);
analogWrite(LPWM_PIN, 0);
}
void setup() {
pinMode(RPWM_PIN, OUTPUT);
pinMode(LPWM_PIN, OUTPUT);
pinMode(REN_PIN, OUTPUT);
pinMode(LEN_PIN, OUTPUT);
digitalWrite(REN_PIN, HIGH);
digitalWrite(LEN_PIN, HIGH);
Serial.begin(9600);
Serial.println("BTS7960 motor driver demo starting...");
stopMotor();
}
void loop() {
Serial.println("Forward");
analogWrite(RPWM_PIN, 180);
analogWrite(LPWM_PIN, 0);
delay(2000);
stopMotor();
delay(1000);
Serial.println("Reverse");
analogWrite(RPWM_PIN, 0);
analogWrite(LPWM_PIN, 180);
delay(2000);
stopMotor();
delay(1000);
}
Opisz, co chcesz zbudować. Codey Online napisze kod, narysuje schemat połączeń, skompiluje projekt i wgra go na płytkę bezpośrednio z przeglądarki.
Zacznij za darmo