Драйвер двигателей на BTS7960 позволяет управлять одним коллекторным двигателем, рассчитанным на напряжение от 5.5 до 27.5 В постоянного тока до 43 А, но из-за компоновки (клеммники не рассчитаны на такие токи) для долговременной работы рекомендуется использовать двигатели с током потребления до 10 А. Модуль обеспечивает управление скоростью, направлением движения, торможением и контроль нагрузки двигателя. Драйвер идеально подходит для работы с мощными моторами в проектах на базе Arduino, ESP8266, ESP32 и других плат.
Распиновка
Разъем управления модулем BTS7960 (8 контактный):
- VCC — источник питания модуля 5 В;
- GND — источник питания модуля, GND;
- IS-R — вывод для отслеживания тока – прямое вращение;
- IS-L — вывод для отслеживания тока – обратного вращения;
- EN-R — выходной сигнал для управления направлением двигателя – прямое вращение;
- EN-L — выходной сигнал для управления направлением двигателя – обратное вращение;
- WM-R — ШИМ–сигнал для управления скоростью вращения двигателя — прямое вращение;
- PWM-L — ШИМ–сигнал для управления скоростью вращения двигателя — обратное вращение.
Контакты двигателя:
- M+ — вывод для подключения двигателя;
- M- — вывод для подключения двигателя;
- B+ — питание двигателя, положительный контакт;
- B- — питание двигателя, отрицательный контакт.
Пример
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
const uint8_t EN = 3; const uint8_t L_PWM = 4; const uint8_t R_PWM = 5; void setup() { pinMode(EN, OUTPUT); pinMode(L_PWM, OUTPUT); pinMode(R_PWM, OUTPUT); } void loop() { // Движение вперёд на 50% скорости: digitalWrite(L_PWM, LOW ); digitalWrite(R_PWM, HIGH); analogWrite (EN, 127 ); delay(3000); // Движение вперёд на 100% скорости: digitalWrite(L_PWM, LOW ); digitalWrite(R_PWM, HIGH); analogWrite (EN, 255 ); delay(3000); // Свободное вращение: digitalWrite(EN, LOW ); delay(3000); // Движение назад на 50% скорости: digitalWrite(L_PWM, HIGH); digitalWrite(R_PWM, LOW ); analogWrite (EN, 127 ); delay(3000); // Движение назад на 100% скорости: digitalWrite(L_PWM, HIGH); digitalWrite(R_PWM, LOW ); digitalWrite(EN, HIGH); delay(3000); // Торможение с силой 50%: digitalWrite(L_PWM, HIGH); digitalWrite(R_PWM, HIGH); analogWrite (EN, 127 ); delay(3000); } |








