Загрузка страницы

Регулятор скорости вращения для биполярного шагового двигателя на базе Arduino Nano.

Скетч и схема https://kolotushkin.com/article.php?id=27

Как стать спонсором канала за 1$, чтобы помочь с закупкой расходных материалов, и недостающих инструментов https://kolotushkin.com/ads.php

Внимание! Забыл указать на схемах, что контакты драйвера Reset и Sleep надо подключить к +5 вольт! На сайте схемы уже исправлены!

Проекты на базе Arduino Nano:
Меню для дисплея LCD 1602 https://youtu.be/_dQzjDCKhCQ
Автоматический привод для шасси квадрокоптера https://youtu.be/IkO81w7DcTA
Дубликатор домофонных ключей https://youtu.be/CJEHb01H05A
Как переделать сервомотор с 180 на 360 градусов https://youtu.be/MNwVBK2mwaA
Управление двумя униполярными шаговыми моторами по Bluetooth https://youtu.be/IQTHzujhRys
Самодельный rgb контроллер для 2 rgb лент https://youtu.be/g521YF8iQqg
Полезные программы:
Arduino IDE для начинающих https://youtu.be/V69K_tCfA58
Симулятор Arduino UnoArduSim https://youtu.be/qJUYlKSfdr8

Так как единственный NEMA17, который у меня есть, установлен на ЧПУ станок, то буду показывать на примере Японского шагового двигателя Mitsumi. Он такой же биполярный с четырех проводным подключением, только имеет более крупное деление шага.
Еще буду использовать плату Arduino Nano, и драйвер DRV8825.
Мне показалось не достаточно площади охлаждения родного радиатора, поэтому я добавил куски алюминиевой проволоки, которые пришлось зажать между ребрами радиатора.
Да это не эстетично, зато эффективно!
Также использую 2 кнопки, потенциометр на 3,3 килоома, безпаечную макетную плату и соединительные провода.
И так поехали!
Одна кнопка используется для запуска и остановки шагового двигателя.
Вторая для изменения направления вращения.
Изменять направление вращения можно, как в состоянии покоя, так и во время вращения шагового двигателя, не зависимо от скорости вращения.
Изменять скорость вращения можно при помощи потенциометра.
Так как этот двигатель имеет большое деление шага в 7,5 градуса, то при низких скоростях ощущается сильная вибрация.
Изменение направления вращения на полном ходу, не оказывает негативных влияний на используемую электронику, и на сам шаговый двигатель. Но при этом, в момент смены направления вращения, могут происходить пропуски одного или двух шагов.
Теперь второй вариант.
Во втором варианте кнопки не нужны, поэтому я их уберу и уберу провода, которые к ним подходят.
Драйвер шагового двигателя включается, подачей минуса на контакт Enable, и так как кнопка, которая за это отвечает, теперь отсутствует, то провод подключенный к 12 контакту платы Arduino, переключаем на минус.
И можно управлять скоростью вращения шагового мотора.
Теперь рассмотрим скетч на примере приложения UnoArduSim.
Написал его без использования библиотек, чтобы можно было загружать его в любые микроконтроллеры.
Кнопка Старт/Стоп назначена на 8 пин, кнопка Реверс на 9 пин. Задача этих кнопок, изменять состояние сигнала на 12 и 13 контактах.
Этот модуль симулирует работу биполярного шагового двигателя подключенного через драйвер, который управляется сигналами Step, Dir и Enable. К таким драйверам относятся DRV8825 и A4988, и я подключил его на контакты 11, 12 и 13.
Переменные I и j используются в функции для опроса кнопки Старт/Стоп, а переменные k и l используются в функции для опроса кнопки Реверс. Да эти функции получились громоздкие, зато они написаны, без использования задержек при помощи delay.
Переменная stepState нужна для хранения состояния сигнала на 11 пине, и она используется в этом генераторе импульсов. Это аналог стандартного примера Blink, только без использования задержек при помощи delay. Этот генератор дополнен возможностью изменения частоты, при помощи потенциометра подключенного к контакту A3.
Ну и так как здесь все построено на таймерах, то здесь имеются переменные, для хранения значений этих таймеров.
Теперь копируем это все, открываем приложение Arduino IDE, затем Файл/Новый, и вставляем сюда то, что скопировали из приложения UnoArduSim. Загружаем скетч на плату! Кстати ссылку на скетч, как всегда найдете в описании под видео. Когда скетч загрузится, соберите все как показано на этой схеме.
Или если вам больше понравился второй более простой вариант, то соберите по этой схеме.
Так как во втором варианте кнопки не участвуют, то можно удалить не используемую часть кода. Получился простой регулятор скорости вращения, для биполярного шагового двигателя.
#arduinoprojects #stepper #arduino

Еще любителям самодельной электроники рекомендую
канал Заметки Ардуинщика https://www.youtube.com/channel/UC4axiS76D784-ofoTdo5zOA
и канал Alex Gyver https://www.youtube.com/channel/UCgtAOyEQdAyjvm9ATCi_Aig
это каналы безумного инженера, у которого я сам многому научился.

Видео Регулятор скорости вращения для биполярного шагового двигателя на базе Arduino Nano. канала Master Kolotushkin Arduino
Показать
Комментарии отсутствуют
Введите заголовок:

Введите адрес ссылки:

Введите адрес видео с YouTube:

Зарегистрируйтесь или войдите с
Информация о видео
3 июня 2020 г. 2:59:11
00:06:02
Другие видео канала
Управление шаговым двигателем. Драйвер A4988, подключение и настройкаУправление шаговым двигателем. Драйвер A4988, подключение и настройкаАнтикризисная замена Arduino - LGT8F328P! Дефицит полупроводниковАнтикризисная замена Arduino - LGT8F328P! Дефицит полупроводниковМини ЧПУ Лазерный Гравер на Arduino своими рукамиМини ЧПУ Лазерный Гравер на Arduino своими рукамиПроект на Arduino - 004 - Станок для намотки катушекПроект на Arduino - 004 - Станок для намотки катушекControl Position and  Speed of Stepper motor with L298N module using ArduinoControl Position and Speed of Stepper motor with L298N module using ArduinoСкрываемые технологии из серии «Сделай сам»Скрываемые технологии из серии «Сделай сам»Генератор импульсов и шаговый двигатель. ПРОСТАЯ СХЕМА ПОДКЛЮЧЕНИЯ.Генератор импульсов и шаговый двигатель. ПРОСТАЯ СХЕМА ПОДКЛЮЧЕНИЯ.Уроки Arduino - управление бесколлекторным моторомУроки Arduino - управление бесколлекторным моторомУроки Arduino. Работа с энкодеромУроки Arduino. Работа с энкодеромПОДКЛЮЧАЕМ ШАГОВЫЙ ДВИГАТЕЛЬ К ARDUINO [Уроки Ардуино #14]ПОДКЛЮЧАЕМ ШАГОВЫЙ ДВИГАТЕЛЬ К ARDUINO [Уроки Ардуино #14]Крутейший генератор сигналов на Arduino!Крутейший генератор сигналов на Arduino!Arduino UNO & ESP8266 and control using smartphoneArduino UNO & ESP8266 and control using smartphoneA4988 Tutorial | Control NEMA17 Stepper Motor with A4988 Stepper Motor Driver Module & ArduinoA4988 Tutorial | Control NEMA17 Stepper Motor with A4988 Stepper Motor Driver Module & ArduinoСервопривод – Подключение к Ардуино без написания кода!Сервопривод – Подключение к Ардуино без написания кода!Простое управление оборотами шагового двигателя.Простое управление оборотами шагового двигателя.HC-06 настройка Bluetooth модуля, а также Android приложения для управления проектами по Bluetooth.HC-06 настройка Bluetooth модуля, а также Android приложения для управления проектами по Bluetooth.Урок: Управление шаговым двигателем NEMA17. Работа со скетчемУрок: Управление шаговым двигателем NEMA17. Работа со скетчемУправление моторами с ArduinoУправление моторами с ArduinoАвтофокус для лазерного ЧПУ на Arduino и Digispark с датчиком расстояния VL53L0X и драйвером DRW8825Автофокус для лазерного ЧПУ на Arduino и Digispark с датчиком расстояния VL53L0X и драйвером DRW8825ЧПУ станок для намотки трансформаторов на Arduino и Digispark. 1 Часть. Обзор, корпус, механика.ЧПУ станок для намотки трансформаторов на Arduino и Digispark. 1 Часть. Обзор, корпус, механика.
Яндекс.Метрика