Главная » Arduino » Драйвер биполярного шагового двигателя 2,5А. Совместим с Ардуино

Драйвер биполярного шагового двигателя 2,5А. Совместим с Ардуино

Это совместимая с Ардуино плата, содержит микроконтроллер Atmega328 и микросхему драйвера биполярного шагового двигателя STK682-010. 

Микросхема STK682-010  — гибридная интегральная схема от ON Semiconductor, способная обеспечить ток до 2,5 А с входным питанием до 32 В.

Представленный в данной статье драйвер на базе этой микросхемы имеет несколько режимов микрошага: полный шаг, 1/2 шага, 1/4 шага, 1/8 шага, 1/16 шага, 1/32 шага, 1/64 шага, 1/128 шага. Частота прерывания установлена с помощью конденсатора С5 100пФ ​​на уровне 83,3 кГц. Микрошаг можно установить с помощью перемычек J1, J2, J3.

В схеме переменный резистор PR1 предназначен для настройки затухания: 3,5 В для медленного затухания, от 1,1 В до 3,1 В для смешанного затухания, от 0,8 до 1 В для быстрого затухания, а переменный резистор PR2 предназначен для установки выходного тока.

Драйвер биполярного шагового двигателя 2,5А. Совместим с Ардуино

В данной плате микросхема STK682-010 по умолчанию включена, поскольку на контакте ENB есть подтягивающий резистор, но вы можете подать на этот вывод низкий уровень сигнала для отключения микросхемы. Плата драйвера требует два напряжения питания: одно для питания шагового двигателя, другое для питания логики (5 В).

STK682-010 имеет встроенную функцию половинного тока для уменьшения вибрации и функцию тока, когда двигатель находится в статическом режиме. Для надежной работы драйвера следует использовать радиатор.

Функции драйвера шагового двигателя

  • Питание двигателя: 9-32 В (разъем CN1)
  • Питание логики: 5 В (разъем CN4)
  • Разъем для двигателя: 2,5 А (разъем CN2)
  • Перемычки J1, J2, J3 для установки микрошага
  • Переменный резистор PR2 для регулировки тока
  • Переменный резистор PR1для регулировки затухания
  • Встроенная функция автоматического поддержания половинного тока.
  • Встроенная схема защиты от перегрузки по току (внутри IC)
  • Встроенная схема термозащиты (внутри IC)
  • Индикатор питания на плате — светодиод D1
  • Размеры печатной платы 57,94 x 46,67 мм

Работа совместно с Ардуино

Ниже представлен простой скетч для тестирования платы с помощью Ардуино. В коде есть возможность управлять скоростью шагового двигателя с помощью потенциометра 10 кОм, подключенного к аналоговому выводу A1 (разъема U3).

// *** Простой пример управления шаговым двигателем ***

// Определяем номера выводов
const int stepPin = 5;
const int dirPin = 10; 
// Определяем переменные
int customDelay,customDelayMapped;
 
void setup() {
// Устанавливаем два контакта как выходы
  pinMode(stepPin,OUTPUT);
  pinMode(dirPin,OUTPUT);
// Включаем вращение в определенном направлении 
  digitalWrite(dirPin,HIGH); 
}
void loop() {
// Получаем пользовательские значения задержки из пользовательской функции speedUp  
  customDelayMapped = speedUp(); 
// Создаем пулы с настраиваемой задержкой, в зависимости от потенциометра, от которого зависит скорость двигателя
  digitalWrite(stepPin, HIGH);
  delayMicroseconds(customDelayMapped);
  digitalWrite(stepPin, LOW);
  delayMicroseconds(customDelayMapped);
}
// Функция для чтения потенциометра
int speedUp() {
// Считываем потенциометр
  int customDelay = analogRead(A1); 
// Преобразуем считанные значения потенциометра от 0 до 1023 в желаемые значения задержки (от 300 до 4000)  
  int newCustom = map(customDelay, 0, 1023, 300,4000); 
  return newCustom;  
}

Пользователь может написать свой собственный код для управления шаговым двигателем в соответствии со своими требованиями.

Микрошаговый режим является автономным и работает независимо от микроконтроллера. К Ардуино(Atmega328) подключены только выводы CLK (D5), DIR (D10), ENB (D6).

Новый микроконтроллер Atmega328 требует программирования загрузчика и загрузки скетча Ардуино, дополнительную информацию см. по ссылке.

программирования загрузчика и загрузки скетча Arduino

Контакты Ардуино

  1. Цифровой вывод D6: Enable STK682-010, по умолчанию на этом выводе высокий уровень с использованием подтягивающего резистора R9. Подтяните этот вывод к земле, чтобы отключить драйвер двигателя.
  2. Цифровой вывод D5: Clock/Pulse STK682-010
  3. Цифровой вывод D10: Dir (Motor CCW / CW Low or High) STK682-010, по умолчанию на этом выводе высокий уровень с использованием подтягивающего резистора R3
  4. Аналоговый вывод A1: аналоговый вход, потенциометр или подключение датчика

Скачать рисунок печатной платы (192,3 KiB, скачано: 171)






Добавить комментарий