Драйвер шагового двигателя TB6560 и Arduino
Статья посвящена управлению шаговым двигателем с использованием Arduino и драйвером шагового двигателя TB6560.
Конечно, вы можете использовать EASYDRIVER, но мы разберемся с подключением именно TB6560. Основные преимущества этого драйвера:
- Возможность изменения силы тока;
- Может работать с токами более 1 Ампера (± 3 А с пиковой силой тока 3.5 А);
- Легкая настройка шагов двигателя (полный, половина, 1/8 и 1/16 шага).
Необходимые компоненты
Что вам понадобится:
- 1 плата Arduino Uno
- 1 шаговый двигатель (Arduino Nema 17 или Nema 23)
- 1 драйвер TB6560
- 1 источник питания (адаптер на 12 В, поддерживает 10-35 В)
- Несколько коннекторов и макетная плата

Подключаем Arduino и драйвер TB6560
Подключение к Arduino
Пин 9 (Step пин) к CLK+,
Пин 8 (Dir пин) к CW+,
CLK- и CW- подключаются к когтакту GND на Arduino.
Не подключайте контакты EN+ и EN- ни к каким пинам Arduino!
Шаговые двигатели подключаются в соответствии с их маркировкой. То есть, вам надо знать какие цвета соответствуют контактам A+, A-, B+ и B-. Эту информацию вы можете получить из даташита вашего шагового двигателя.
Силу тока можно настроить в соответствии с таблицей на драйвере TB6560.


Скетч для Arduino
int Distance = 0; // записываем количество шагов, которое было совершено
void setup() {
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
}
void loop() {
digitalWrite(9, HIGH);
delayMicroseconds(100);
digitalWrite(9, LOW);
delayMicroseconds(100);
Distance = Distance + 1; // записываем этот шаг
// проверяем, не находимся ли мы в конце перемещения
// два поворота при мосте 1/8 и 1 поворот для моста 1/6 (для этого скетча)
if (Distance == 3200) { // Мы добрались до крайней точки, начинаем вращение в противоположном направлении
if (digitalRead(8) == LOW) {
digitalWrite(8, HIGH); }
else {
digitalWrite(8, LOW);
} // Обнуляем расстояние, так как мы начинаем новое движение
Distance = 0;
// Делаем паузу на пол секунды
delay(500);
}
}
Результат можете оценить на видео ниже.
На видео, правда, был добавлен потенциометр и внесены соответствующие изменения в скетч.
На видео показана работа униполярных шаговых двигателей (4 провода). В принципе, драйвер TB6560 можно использовать и с биполярными шаговыми двигателями (6 проводов), но для подключения ознакомьтесь со спеком вашего биполярного мотора, чтобы знать что куда подключается.
Оставляйте Ваши комментарии, вопросы и делитесь личным опытом ниже. В дискуссии часто рождаются новые идеи и проекты!