В этой статье описано управление шаговым двигателем на Ардуино, снятым со старого принтера, с помощью контроллера Arduino.



Шаг 1: Шаговый двигатель



Две основных детали шагового двигателя – ротор и статор. Ротор – вращающаяся часть, она, собственно, и делает всю работу, а статор – неподвижная часть, в которую помещен ротор. В шаговом двигателе ротор – постоянный магнит. Статор состоит из нескольких катушек, которые становятся электромагнитами при прохождении через них тока. При прохождении импульса через обмотки катушек, электромагнитное поле взаимодействует с постоянным магнитом, в результате чего ротор двигается. Вращение ротора обеспечивается чередованием обмоток, на которые подается напряжение.

Шаговые двигатели обладают рядом преимуществ. Они недороги и просты в использовании. Если не подавать на обмотки напряжение, положение ротора фиксируется. Изменение направления вращения ротора происходит за счет изменения последовательности подачи импульсов на катушки.

Шаг 2: Список материалов






Показать еще 5 изображений





Для управления биполярным шаговым двигателем вам понадобятся:

  • шаговый двигатель
  • микроконтроллер Arduino
  • изолированный медный провод
  • стабилизатор тока
  • транзистор
  • Н-мост (мостовая схема драйвера)
  • плата расширения MotorShield

Опционально:

  • паяльник
  • припой
  • паяльный фен
  • третья рука для пайки
  • защитные очки

Шаг 3: Припаиваем провода




У большинства шаговых двигателей имеются четыре вывода, поэтому нужны четыре отрезка медного провода (цвет не имеет значения, я использовал отрезки разных цветов для наглядности). Эти выводы нужны для управления порядком работы катушек. Так как данный двигатель снят с принтера, то пайка проводов к нему была самой простой частью проекта.

Шаг 4: Скетч для Arduino




В контроллерах Arduino имеется предустановленная библиотека для шаговых двигателей. Вам нужно перейти во вкладку Файл – Примеры – Stepper — stepper_oneRevolution (File > Examples > Stepper >stepper_oneRevolution). Дальше вам нужно настроить количество шагов под свой конкретный двигатель (stepsPerRevolution). Поискав в интернете, я выяснил, что у моего двигателя 48 шагов на оборот. Библиотека Stepper чередует импульсы, посылаемые на обмотку катушек (проиллюстрировано в гиф-файле).

Шаг 5: Что такое Н-мост (мостовая схема драйвера)



Н-мост – схема, состоящая из четырех переключателей, чаще используются простые транзисторы. Транзистор – полупроводниковый ключ – включается при прохождении тока через один из пинов. Использование одного транзистора даст возможность контролировать только скорость, тогда как Н-мост дает еще и возможность контролировать направление вращения. Это происходит за счет того, что выключение разных переключателей позволяет току течь в разных направлениях, меняя тем самым полярность. Переключатели 1, 2, 3 и 4 никогда не должны включаться вместе, это вызовет короткое замыкание и может повредить устройство.

Н-мост не даст контроллеру перегореть при работе двигателя. Мотор создает сильное магнитное поле. Когда ток перестает поступать, энергия магнитного поля преобразуется в электрическую, это может повредить компоненты. Н-мост помогает защитить контроллер от повреждений. Никогда не подключайте двигатель напрямую к Arduino.

Н-мост легко собрать самим, а имеющиеся в продаже стоят недорого. В данном проекте используется Н-мост L293NE/SN754410.

Его распиновка:

  • Пин 1 (1, 2EN) —> Мотор 1 Вкл/Выкл (HIGH/LOW)
  • Пин 2 (1A) —> Мотор 1 Логический вывод1
  • Пин 3 (1Y) —>Мотор 1 Штыревой вывод 1
  • Пин 4 —>Земля
  • Пин 5 —>Земля
  • Пин 6 (2Y) —>Мотор 1 Штыревой вывод 2
  • Пин 7 (2A) —> Мотор 1 Логический вывод 2
  • Пин 8 (VCC2) —>Питание для двигателей
  • Пин 9 —>Мотор 2 Вкл/Выкл (HIGH/LOW)
  • Пин 10 —>Мотор 2 Логический вывод 1
  • Пин 11 —>Мотор 2 Штыревой вывод 1
  • Пин 12 —>Земля
  • Пин 13 —>Земля
  • Пин 14 —>Мотор 2 Штыревой вывод 2
  • Пин 15 —>Мотор 2 Логический вывод 2
  • Пин 16 (VCC1) —>Питание Н-моста (5 В)

Шаг 6: Подключение компонентов





4 штыревых вывода Н-моста должны подключаться к четырем выводам. 4 логических вывода подключаются к Arduino (в этой статье это 8, 9, 10 и 11 выводы). На схеме видно, что для питания можно использовать внешний источник питания. Н-мост работает при напряжении в диапазоне 4,5-36 В.

Шаг 7: Загрузка кода и тест

Загрузите код в Arduino. Если вы ошиблись при подключении, мотор вместо вращения начнет вибрировать. Попробуйте разные скорости и направления вращения, чтобы понять, что вам нужно.