Ардуино уно как подключить шаговый двигатель
Ардуино уно как подключить шаговый двигатель
Коротко о том с чего все началось. Однажды появилась потребность в демонстрационном столике или как еще его называют вращающийся столик. Покупать готовый не стал в связи с тем что жалко портить новый, да и к тому же столики имеющиеся в продаже по некоторым характеристикам не подходят для моих целей. Для этой цели решил использовать Arduino и шаговый двигатель в связи с тем что он может вращаться на низких скоростях что и требуется для этой цели.
Если у вас возникнут вопросы по данной теме то вы можете их задать в комментариях под видео в YouTube перейдя по этой ссылке www.youtube.com/Мастер Колотушкин
1 шаг. Что понадобится для проекта:
Arduino UNO 1 штука.
USB кабель для подключения Arduino UNO к компьютеру 1 штука и конечно же сам компьютер с установленным приложением Arduino IDE
Униполярный шаговый двигатель 28BYJ-48 5V на 5 вольт и драйвер к нему на базе микросхемы ULN2003 который обычно идет в комплекте с шаговым двигателем, 1 комплект.
Соединительные провода мама мама для подключения линий питания 2 штуки.
Соединительные провода папа мама для подключения управляющих электрических цепей 4 штуки.
Потенциометр с сопротивлением от 3 до 50 киллоом 1 штука, с заранее припаяными проводами типа папа. Зеленый подпаян к средней ноге потенциометра!
2 шаг. Подключить Arduino UNO к компьютеру с помощью кабеля.
3 шаг. Запустить приложение Arduino IDE (подойдет любая версия).
4 шаг. Открыть скетч (прошивка для Arduino) Файл/ Примеры/ Stepper/ stepper_speedControl.
Если у вас по какой-то причине отсутствует данный скетч то вы можете его скопировать с окна ниже и вставить в чистое поле приложения ArduinoIDE. После чего можно приступать к 5 шагу.
//Начало скетча stepper_speedControl 1
//Конец скетча stepper_speedControl 1
А если у вас не оказалось библиотеки Stepper, то можете воспользоваться скетчем ниже, который работает без библиотек.
//Начало скетча stepper_speedControl 2
//Конец скетча stepper_speedControl 2
5 шаг. Если вы как и я решили использовать плату Arduino UNO то во вкладке Инструменты/Плата: выберите пункт Arduino/Genuino Uno который обведен красным на фото ниже.
6 шаг. Во вкладке Инструменты выбрать порт к которому подключена плата Arduino в моем случае это COM11 у вас может быть другой, то есть у меня галочка должна стоять на против COM11.
В нижнем правом углу должно быть Arduino/Genuino на COM(номер ком порта к которому подключена плата) если все верно то переходим к следующему шагу.
7 шаг. Загружаем скетч нажав кнопку Загрузки со стрелочкой.
Если вы используете скетч с этой страницы то приложение при загрузке предложит сохранить его. После чего загрузка продолжится
Через 5-45 секунд скетч загрузится и появится уведомление Загрузка завершена.
8 шаг. Отключаем Arduino от компьютера и подключаем потенциометр.
Зеленый провод который подпаян к средней ноге потенциометра подключаем контакту A0, остальные два к питанию GND (минус) и +5V (5 вольт) полярность на ваше усмотрение.
В моем случае если вращать потенциометр по часовой стрелке то скорость вращения шагового двигателя увеличивается, а если поменять местами серый с красным проводом то при вращении потенциометра так же по часовой стрелке скорость вращения шагового двигателя будет уменьшаться.
9 шаг. С помощью соединительных проводов папа мама подключаем драйвер шагового двигателя к Arduino UNO.
Линия 1N1 к 8 контакту, линия 1N2 к 9 контакту, линия 1N3 к 10 контакту и линия 1N4 к 11 контакту.
10 шаг. Проводами мама мама соединяем линии питания.
Такой способ подключения допустим лишь при использовании маломощных шаговых двигателей! При использовании нескольких, или более мощных шаговых двигателей следует использовать отдельный источник питания! При этом у ардуины и драйвера шагового двигателя должна быть общая земля!
11 шаг. Должно все получиться как на фото ниже! Если это так то подключаем Arduino к компьютеру или Павербанку и пробуем крутить потенциометр.
Доработка демонстрационного столика для которого была применена данная схема
Творческая мастерская Мастер Колотушкин 2021
Проекты на базе Arduino для начинающих, электронные самоделки своими руками.
Ардуино уно как подключить шаговый двигатель
Пошаговая инструкция о том как своими руками собрать регулятор скорости вращения для униполярного шагового двигателя.
А именно о том как собрать электронную часть, как загрузить прошивку в управляющий микроконтроллер, как запустить все в работу и что для всего этого понадобится.
Регулятор скорости вращения для биполярного шагового двигателя на базе Arduino Nano
Самодельный димер на базе платы Arduino Nano и драйвера DRV8825
Два варианта управления биполярным шаговым двигателем, с кнопками для пуска и смены направления вращения.
Привод для жалюзи на базе Arduino UNO и шаговых двигателях 28BYJ-48 5V
Как собрать привод для жалюзи, на базе Arduino UNO и двух шаговых двигателях 28BYJ-48 5V.
К данной статье прилагаются два готовых скетча.
Управление двумя шаговыми двигателями с помощью джойстика на базе Arduino UNO.
Статья о том, из чего и как своими руками собрать привод на базе Arduino UNO, джойстика и двух униполярных шаговых двигателях 28BYJ-48 5V
Имеется схема и скетч, работающий без библиотек.
Автоматическая фокусировка на Arduino и Digispark с датчиком расстояния VL53L0X и драйвером DRW8825.
Статья, содержащая материалы для изучения и сборки двух вариантов привода, для автоматической фокусировки микроскопа, на Arduino UNO и Digispark
Как объединить две платы Arduino и Digispark, для совместной работы над общей задачей.
Как подключить биполярный шаговый двигатель к Arduino Uno и к Digispark.
Управление двумя униполярными шаговыми моторами по Bluetooth.
Статья о том, как своими руками собрать беспроводное управление, для двух униполярных шаговых моторов 28BYJ-48 5V.
В качестве пульта подойдет любой ANDROID телефон с наличием Bluetooth.
Лучший эмулятор Arduino UnoArduSim V2.6. Первая серия.
Набор из 9 простых скетчей, которые использовались в этой серии.
В этой серии рассмотрены принципы работы таких модулей как: светодиод, кнопка, потенциометр, Serial порт, программный Serial порт, 4 фазный шаговый двигатель, 2 фазный шаговый двигатель и DC Motor.
Регулятор скорости вращения для униполярного шагового двигателя на базе Didgispark
Простой и не дорогой, регулятор скорости вращения, для униполярного шагового двигателя.
В статье есть перечень материалов, скетч, схема для сборки, и видео инструкция.
Arduino управление шаговыми двигателями по Bluetooth при помощи Android смартфона
Статья о том как написать код для электрического привода, для слайдера под видеокамеру, с управлением по Bluetooth, на базе Arduino Nano, драйверов DRV8825 и Bluetooth модуля HC-05.
Управление биполярным шаговым двигателем при помощи инкрементального энкодера
Статья о том как подключить инкрементальный энкодер EC11 к Arduino, как управлять биполярным шаговым двигателем при помощи энкодера, как проверить инкрементный энкодер, как подключить драйвер шагового двигателя drw8825 к Arduino.
Творческая мастерская Мастер Колотушкин 2021
Проекты на базе Arduino для начинающих, электронные самоделки своими руками.
CNC-DESIGN
В корзине пусто!
Сборка и настройка Arduino Uno и CNC Sheild v.3
Набор Arduino Uno и CNC Sheild v3 — это комплект электроники, позволяющий управлять шаговыми двигателями и различными периферийными устройствами для реализации проектов различных ЧПУ устройств, таких как фрезерные и токарные станки, лазерные граверы и т. п. Данный комплект позволяет реализовать параллельную работу шаговых двигателей, что необходимо для некоторых проектов, когда используются два мотора на одной оси, обычно это ось Y.
В комплект входят:
1. Плата Arduino Uno R3.0 ;
2. Плата расширения CNC Shield V3.0 ;
3. Четыре драйвера А4988 или DRV8825 для шаговых двигателей, с радиаторами;
4. Кабель для связи с компьютером USB.
Характеристики комплекта:
— совместим с прошивкой GRBL и стандартным G-кодом;
— к оличество осей: до 4 (X, Y, Z, A);
— до 6-ти концевых выключателей;
— управление шпинделем (включение, направление вращения, охлаждение) или другим исполнительным устройством;
— драйверы шаговых двигателей: A4988, DRV8825 или аналогичные;
— интерфейсы: UART, I2C
— напряжение питания: 12…36В;
— размеры — 65×55×20 мм;
С чего начать?
Для базовой настройки набора понадобится:
— компьютер для загрузки прошивки;
— шаговые двигатели NEMA17 с разъемом Dupont с 4 контактами;
— блок питания для моторов, обычно это 12В и не менее 3А;
Шаг первый.
Сборка «бутерброда» из плат Arduino Uno и CNC Sheild v. 3.
На фотографии показана установка платы CNC Sheild v. 3 на Arduino Uno. Перепутать достаточно сложно.
Шаг второй.
Плата CNC Sheild V.3 интересна тем, что позволяет распараллеливание шаговых двигателей для любой из осей. Это позволяет реализовывать проекты с двумя шаговыми двигателями на одну ось без дополнительных проблем.
Для реализации данной функции необходимо установить 2 джемпера в соответствующие выводы, напротив нужной оси.
Шаг третий.
Настройка тока драйверов шаговых двигателей.
Драйвера шаговых двигателей A4988 являются наиболее дешевыми и распространенными, но имеют два основных недостатка:
— шум при работе моторов;
— максимальное значение микрошага 1/16.
Замечательно подходят для построения максимально дешевой системы управления оборудованием.
Драйвера DRV8825 немного дороже, но позволяют реализовать более точную систему с микрошагом 1/32, с более низкими шумами при работе моторов.
При использовании драйверов шаговых двигателей А4988 или DRV8825 необходимо помнить, что драйвера при установке необходимо ориентировать по разному. Ориентиром может служить подстроечный резистор.
Настройку тока драйверов мы рассматривали в статье « Настройка тока драйвера шагового двигателя ».
Для настройки тока необходимо:
— установить драйвера в соответствующие слоты CNC Sheild v. 3;
— подключить плату к компьютеру при помощи USB кабеля;
Напомним основные моменты при настройке тока:
— настройка тока важна для правильной работы шагового двигателя, снижения нагрева моторов при работе и снижения вероятности пропуска шагов;
— настройка происходит при полном шаге, т. е. джемперы настройки микрошага нельзя устанавливать;
— настройка происходит для каждого драйвера отдельно, в том слоте, в котором он будет дальше использоваться.
После настройки тока необходимо удалить драйвера шаговых двигателей, чтобы перейти к следующему этапу.
Шаг четвертый.
Выбор и настройку микрошага для шагового двигателя мы описывали в статье « Микрошаг — выбор и применение ».
Напомним основные моменты:
— повышение значения микрошага ведет к потере крутящего момента на шаговом двигателе;
— высокие значения микрошага не ведет к кратному увеличению точности работы оборудования, из-за наличия люфта в подвижных элементах конструкции.
Например, при использовании ЧПУ станках трапецеидальных винтов с ходом 2 мм. Рассчитаем точность позиционирования при основном шаге. Двигатель Nema17 имеет 200 шагов на оборот.
Точность позиционирования получается следующая:
— перемещение на один оборот — 2 мм;
— шагов на оборот — 200 шагов;
2 мм/ 200 шагов = 0,01 мм/шаг
Подобная точность достаточна для самостоятельных проектов.
При использовании шкивов GT2 20 зубьев (дать ссылку) в приводе, получим следующие значения:
— перемещение на один оборот — 40 мм;
— шагов на оборот — 200 шагов;
40 мм/ (200 шагов * 16) = 0,0125 мм/шаг
После настройки микрошага необходимо установить драйвера шаговых двигателей.
Шаг пятый.
Помимо подключения к компьютеру кабелем USB необходимо подать силовое напряжение 12 В.
На CNC Sheild v. 3 это можно реализовать двумя путями:
— подключить блок питания с помощью разъема DC;
— подключит блок питания к клеммной колодке проводами.
Первый случай подходит для небольших проектов, типа мини лазерного гравера , второй для более энергоемких проектов, типа фрезерных станков.
При выборе мощности источника питания необходимо помнить, что его мощность должна быть больше суммарной энергоемкости устройства. Под энергоемкостью проекта надо понимать потребную мощность всех компонентов системы, таких как шаговые двигатели, исполнительный механизм (лазерный модуль или шпиндель).
Шаг шестой.
Подключение шаговых двигателей.
Подключение шаговых двигателей происходит посредством разъемов Dupont на 4 контакта, шаг разъема 2,54 мм.
Если вы купили двигатели без таких разъемов, то необходимо самостоятельно обжать их, соблюдая соответствие проводов вашего двигателя и выводом на плате CNC Sheild v.3.
На рисунке выделены подписанные контакты для подключения шагового мотора.
Они должны совпадать с описанием к выбранным шаговым двигателям.
Шаговый двигатель ноебходимо подключать в слот рядом с драйвером.
Шаг седьмой.
После подключения блока питания и шаговых двигателей необходимо залить в контроллер прошивку GRBL. Мы описывали это в статье «Прошивка GRBL — скачиваем, прошиваем» .
После того как вы убедитесь, что все двигатели вращаются можно приступать к установке двигателей и контроллера на устройстве и переходить к настройке параметров прошивки GRBL для конкретного проекта.
СТАНОК С ЧПУ СВОИМИ РУКАМИ
Последние публикации
- Гравировка CO2-лазером герба РФ на стеклянном стаканчике
Подробнее - Гравировка CO2-лазером фотографии на стекле
Подробнее - Интернет-сервис формирования G-кода из BMP, JPG, GIF, PNG
Подробнее - Рисуем в Paint эскиз для резки CO2-лазером
Читать - Определение величины задержки между шагами ШД
Читать - Гравировка CO2-лазером на металле с использованием пасты
Читать - Резка по изображению «от руки», чертежу или растровой картинке
Читать
Заметки
- Прошиваем GRBL в Ардуино UNO. Ошибка avrdude: stk500_recv(): programmer is not responding
Читать - Изготовление источника питания для двигателей из старых зарядников.
Читать - Муфта соединения оси шагового двигателя и оси винтовой передачи.
Читать - Каретка винтовой передачи скольжения станка с ЧПУ.
Читать - Подключение драйвера ШД на TB6560 к Ардуино, шаговому двигателю и БП.
Читать - Запуск CO2-лазера при отрицательной температуре
Читать
Подключаем к станку с ЧПУ на базе Ардуино более мощные и быстрые ШД 17HS3404N в корпусе Nema 17 и драйверы шаговых двигателей DM420A
Порывшись на любимом мной сайте китайских товаров выбрал, как мне кажется самый бюджетный и подходящий вариант: гибридные шаговые двигатели 17HS3404N в корпусе Nema 17 с четырьмя управляющими проводами и драйвера ШД DM420A.
С доставкой такой комплект обошелся в 88 долларов, что более чем в полтора раза увеличило стоимость простого станка с ЧПУ на базе Arduino. Теперь самодельный станок с числовым программным управлением стоит около 170 долларов или 5000 рублей.
Гибридные шаговые двигатели 17HS3404N в корпусе Nema 17 с четырьмя проводами
С шаговыми двигателями всё более или менее понятно. Четыре проводка: черный, зелёный, красный, синий. Обратите внимание, что имеет место следующее соответствие между цветом провода ШД 17HS3404N и выходами драйвера шагового двигателя DM420A:
Цвет провода двигателя 17HS3404N | Метка пина драйвера DM420A |
---|---|
черный | A+ |
зелёный | A- |
красный | B+ |
синий | B- |
Драйвер управления гибридными шаговыми двигателями DM420A. Подключение к Ардуино.
Драйвер крайне умный и умеет работать в двух режимах. Переключение между режимами автоматическое и никакие переключатели трогать не надо.
— режим управления отрицательным сигналом;
— режим управления положительным сигналом типа LOW (0, Сток) и HIGH (5 В), который используется для цифровых Pin’ов Arduino в режиме OUTPUT.
Драйвер DM420A. Управление отрицательным сигналом
Этот режим в чистом виде не подходит для подключения к Ардуино: необходимо использовать дополнительные электронные компоненты. Подключение DM420A в режиме управления отрицательными сигналами:
— на вход +5 драйвера ШД DM420A подаём +5;
— по умолчанию, без подключения сигнала, драйвер находится в состоянии Enable (включен). Если на ENBL подвести -5 В, то драйвер перестанет управлять ШД.
— направление вращения задаётся подачей -5 В (в одну сторону) или размыканием (в другую);
— на вход PUL подаём -5В и размыкаем цепь, это соответствует перемещению ШД на один шаг.
Драйвер DM420A. Подключение к Arduino и управление сигналами LOW-HIGH цифровых пинов в режиме OUTPUT.
Этот режим подходит для работы с Ардуино. Схема подключения представлена ниже:
Обратите внимание, что земля (Gnd) Ардуино НЕ идёт на DC- драйвера DM420A, как это иногда советуют сделать. Дело в том, что при установке значения LOW на цифровом пине Ардуино, находящемся в режиме OUTPUT, этот пин работает как «0», то есть «приёмник» тока.
Это подтверждается документацией по Ардуино, а также примером подключения диода к двум цифровым пинам, находящимся в режиме OUTPUT: на одном пине выставлено значение LOW, на другом HIGH.
Итак:
— на вход +5 драйвера шагового двигателя DM420A подаём +5В;
— если на ENBL подаётся значение LOW (0), то драйвер не управляет ШД, если HIGH, то переходит в состояние Enable (включен);
— направление вращения ШД определяется сигналом, поданным на DIR: LOW или HIGH;
— подача на PUL значения HIGH, а затем LOW определяет перемещение ротора ШД на один шаг;
Замечания по работе шагового двигателя 17HS3404N и драйвера ШД DM420A, подключенного к Ардуино в режиме управления значениями LOW-HIGH.
— Время переключения драйвера из режима Disabled в режим Enabled составляет 15 миллисекунд. Таким образом, если вы планируете программно управлять включением и отключением ШД, то после подачи на вход ENBL драйвера DM420A сигнала, включающего управление, необходимо сделать паузу 20 миллисекунд, и только после этого посылать управляющие сигналы на PUL.
— Если вы не собираетесь контролировать включение-выключение управления шаговым двигателем, то на вход ENBL драйвера DM420A можно подать +5В от выхода Ардуино. Также, если вообще ничего не подключать к входу ENBL драйвера DM420A, то он будет в состоянии включен (Enable).
— В режиме 200 шагов на оборот между пульсациями на входе PUL необходимо сделать паузу 2 миллисекунды, чтобы дать шаговому двигателю отреагировать на команду перемещения ротора. То есть, если на PUL передать следующие сигналы:
HIGH — LOW — [пауза 2мс] – HIGH – LOW — [пауза 2мс] – HIGH – LOW — [пауза 2мс],
то ротор ШД сделает 3 шага за 6 миллисекунд.
— Для выставления режима работы 200 шагов на оборот и подключения шагового двигателя 17HS3404N на драйвере ШД DM420A необходимо установить переключатели в следующее положение:
Обозначение переключателя | Положение переключателя |
---|---|
SW1 | ON |
SW2 | ON |
SW3 | ON |
SW4 | OFF |
SW5 | ON |
SW6 | ON |
SW7 | ON |
— Находясь в состоянии удержания шаговые двигатели 17HS3404N греются гораздо сильнее, чем во время вращения.
По аналогичной схеме подключаем ещё два комплекта драйвер ШД DM420A — шаговый двигатель 17HS3404N. Питание для ШД 17HS3404N я сделал общее из блока питания для роутера (12В, 2А).
Драйверы поставил стопочкой с небольшим смещением, чтобы иметь лёгкий доступ к входам. Всё собрал на листе фанеры.
На фото: 3 драйвера шаговых двигателей DM420A, установленные друг на друга, нижний прикручен к листу фанеры саморезами. За драйверами общий блок питания, приклеен двухсторонним скотчем. Справа плата Ардуино, прикручена саморезами. Пины 13,12,11,10,9,8 Arduino подключены к пинам DIR, PUL трёх драйверов ШД DM420A. Выход +5 Ардуино подключен ко входам +5 и ENBL драйверов. То есть, при включении схемы включается управление шаговыми двигателями 17HS3404N. Программное управление включением-выключением ШД не используется. Схема рабочая.
Прошивку для Ардуино для работы с драйверами шаговых двигателей DM420A можно скачать в разделе Прошивка.