Шаговый электродвигатель — синхронный бесщёточный электродвигатель с несколькими обмотками, в котором ток, подаваемый в одну из обмоток статора, вызывает фиксацию ротора. Последовательная активация обмоток двигателя вызывает дискретные угловые перемещения (шаги) ротора.
Шаговые двигатели применяют в механических системах точного позиционирования – ЧПУ станках, 3d-принтерах, принтерах, роботах-манипуляторах. Шаговые двигатели преобразуют электрические импульсы в перемещение вала на определенный угол. Минимально возможный угол перемещения шагового двигателя, называется шагом.
В любительской робототехнике очень часто используют бюджетный шаговый двигатель 28BYJ-48, в комплекте с которым продается драйвер двигателя на микросхеме ULN2003, необходимый для подключения шагового двигателя к плате Arduino.
Характеристики шагового двигателя 28BYJ-48:
Двигатель за один оборот осуществляет 4075.7728395 шага. Данный двигатель поддерживает полушаговый режим и за один полный оборот может совершать 4076 шага, а точнее за 1° делает примерно 11,32 шага. (4076 / 360 = 11,32).
Чаще всего, при использовании шагового двигателя 28BYJ 48, используют два режима подключения.
Драйвер – это устройство, которое связывает контроллер и шаговый двигатель. Он нужен так как цифровой вывод микроконтроллера Arduino UNO может выдать ток максимум ~40 мА, а одна обмотка шагового двигателя 28BYJ-48 в пике потребляет ~320 мА, следовательно если подключить двигатель напрямую, микроконтроллер сгорит.
Для защиты микроконтроллера был разработан «Модуль шагового двигателя ULN2003», в котором используется микросхема ULN2003A (по сути, состоящая из 7 ключей), позволяющая управлять нагрузкой до 500 мА (один ключ). Данный модуль может работать с 5В и 12В двигателем 28BYJ-48, для переключения необходимо установить или убрать перемычку (по умолчанию перемычка установлена, питание 5В).
Схема не сложная, необходимо всего шесть проводов для подключения, сначала подключаем интерфейсные провода, IN1 (ULN2003) в 11 (Arduino UNO), IN2 (ULN2003) в 10 (Arduino UNO), IN3 (ULN2003) в 9 (Arduino UNO) и IN4 (ULN2003) в 8 (Arduino UNO), осталось подключить питание GND к GND и VCC к VIN и подключаем разъем двигателя в модуль ULN2003.
В пакете Arduino IDE есть стандартная библиотека Stepper.h для управления униполярными и биполярными шаговыми двигателями. Ее не надо искать и загружать из интернета. Она устанавливается вместе с пакетом Arduino IDE. Библиотека очень простая. Кроме конструктора имеет всего две функции: setSpeed и step.
Stepper( steps, pin1, pin2, pin3, pin4 ) — конструктор класса Stepper. Создает объект типа Stepper.
Параметры:
void setSpeed(long rpms) — устанавливает скорость вращения двигателя в оборотах в минуту.
Параметры:
void step(int steps) — вызывает поворот двигателя на заданное число шагов. Функция останавливает выполнение программы до тех пор, пока не завершится.
Параметры:
Пример простого скетча управления двигателем 28BYJ-48:
#include <Stepper.h>Stepper motor(48, 10, 12, 11, 13); // объект motor, 48 шагов на оборот void setup() { motor.setSpeed(60); // скорость 60 об. в мин.}void loop() { motor.step(240); // 5 оборотов (240 шагов) по часовой стрелке delay(1000); motor.step(-240); // 5 оборотов (240 шагов) против часовой стрелке delay(1000); }
Клиент удаленного рабочего стола (rdp) предоставляет нам возможность войти на сервер терминалов через консоль. Что…
В VMware Workstation есть несколько способов настройки сети гостевой машины: 1) Bridged networking 2) Network…
Встроенный брандмауэр Windows может не только остановить нежелательный трафик на вашем пороге, но и может…
Вопреки распространенному мнению, отключить IPv6 в Windows Vista и Server 2008 это не просто снять…
Параметры экранной заставки для текущего пользователя можно править из системного реестра, для чего: Запустите редактор…
В этой статье расскажу про возможность просмотра журналов событий из командной строки. Эти возможности можно…