Плата управления шаговым двигателем – Модуль управления биполярным («двухфазным») шаговым двигателем БУШД-01N.04-02

Плата управления шаговыми двигателями (5axis mach4 interface)

Плата расширения L293D, ИК-датчик VS1838B, TFT LCD, Модем M590E GSM GPRS, «монитор TFT LCD, датчик движения HC-SR501, ИК-пульт дистанционного управления, Радиомодуль NRF24L01, SD Card Module, Звуковой модуль, 5-axis stepper motor driver, Шаговый двигатель, Модем M590E GSM GPRS, 5-axis stepper motor driver, Часы реального времени DS 3231/DS 1307, терморегулятор W1209 DC, Релейный модуль, датчик движения HC-SR501, Модуль Wi-Fi ESP8266-12E, датчик движения HC-SR501, Передатчик и приемник в диапазоне RF 433 Mhz, Блок питания, L293D, Микросхема контроллера коллекторного электродвигателя, ИК-пульт дистанционного управления, Датчики контроля температуры, Радиомодуль NRF24L01, OKI 120A2, Rotary Encoder, SD Card Module, Беспроводной пульт дистанционного управления, Микросхема контроллера коллекторного электродвигателя, Модуль Bluetooth HC-06,, Модем M590E GSM GPRS, Часы реального времени DS 3231/DS 1307, Mini 360 на схеме LM2596, MP3-TF-16P, L293D, Модуль LCD монитора, Инфракрасные датчики расстояния, Часы реального времени, USB Host Shield, HC-SR501, Cветочувствительный датчик сопротивления, блок питания Mini 360 на схеме LM2596, ЖК-дисплей TFT дисплей, Контроллер L298N, HC-SR501, Модуль MP3 Player WTV020, GSM GPRS, Сервоприводы, Модем M590E GSM GPRS, Часы реального времени DS 3231/DS 1307, Модуль Wi-Fi ESP8266-12E, Инфракрасные датчики расстояния, Card Module, Ультразвуковые дальномеры HC-SR04, Блок питания, Карта памяти SD, Mini 360, Ethernet shield, L293D, блок питания Mini 360 на схеме LM2596, Радиомодуль, датчик температуры DS18B20, ИК-пульт дистанционного управления, USB конвертер UART, ИК-пульт, Антена для модуля WiFi, Ethernet shield, Модуль блока питания XL6009, Микросхема контроллера коллекторного электродвигателя, Модуль качества воздуха MQ-135, Микросхема контроллера коллекторного электродвигателя, ИК-пульт дистанционного управления, SD Card Module, Радиомодуль NRF24L01, двигатель OKI, 5-axis stepper motor driver, L293D, TB6560, Драйвер шагового двигателя TB6600, Шаговый двигатель, Модуль камеры, Блок питания, L293D, блок питания Mini 360 на схеме LM2596, 5axis mach4 interface, Карта памяти SD, Ethernet shield, Контроллер L298N, датчик движения HC-SR501, Модуль Wi-Fi ESP8266-12E, Модуль LCD монитора LCD1602, Шаговый двигатель OKI 120A2, Шаговый двигатель, Шаговый двигатель.

www.progdron.com

Управление шаговым двигателем | Электроника для всех

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

Шаговый двигатель это, как понятно из его названия, двигатель который вращается дискретными перемещениями. Достигается это за счет хитрой формы ротора и двух (реже четырех) обмоток. В результате чего, путем чередования направления напряжения в обмотках можно добиться того, что ротор будет по очереди занимать фиксированные значения.
В среднем, у шагового двигателя на один оборот вала, приходится около ста шагов. Но это сильно зависит от модели двигателя, а также от его конструкции. Кроме того, существуют полушаговый и микрошаговый режим, когда на обмотки двигателя подают ШИМованное напряжение, заставляющее ротор встать между шагами в равновесном состоянии, которое поддерживается разным уровнем напряжения на обмотках. Эти ухищрения резко улучшают точность, скорость и бесшумность работы, но снижается момент и сильно увеличивается сложность управляющей программы — надо ведь расчитывать напряжения для каждого шага.

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

Типы шаговых двигателей
Если не углубляться во внутреннюю конструкцию, число шагов и прочие тонкости, то с пользовательской точки зрения существует три типа:

  • Биполярный — имеет четыре выхода, содержит в себе две обмотки.
  • Униполярный — имеет шесть выходов. Содержит в себе две обмотки, но каждая обмотка имеет отвод из середины.
  • Четырехобмоточный — имеет четыре независимые обмотки. По сути дела представляет собой тот же униполярник, только обмотки его разделены. Вживую не встречал, только в книжках.

Униполярный отличается от биполярного только тем, что ему нужна куда более простая схема управления, а еще у него значительно слабее момент. Так как работает он только половинами обмоток. НО! Если оторвать нафиг средний вывод униполярника, то мы получим обычный биполярный. Определить какой из выводов средний не сложно, достаточно прозвонить сопротивление тестером. От среднего до крайних сопротивление будет равно ровно половине сопротивления между крайних выводов. Так что если тебе достался униполярник, а схема подключения для биполярного, то не парься и отрывай средний провод.

Где взять шаговый двигатель.
Вообще шаговики встречаются много где. Самое хлебное место — пятидюймовые дисководы и старые матричные принтеры. Еще ими можно поживиться в древних винчестерах на 40Мб, если, конечно, рука поднимется покалечить такой антиквариат.
А вот в трехдюймовых флопарях нас ждет облом — дело в том, что там шаговик весьма ущербной конструкции — у него только один задний подшипник, а передним концом вал упирается в подшипник закрепленный на раме дисковода. Так что юзать его можно только в родном креплении. Либо городить высокоточную крепежную конструкцию. Впрочем, тебе может повезет и ты найдешь нетипичный флопарь с полноценным движком.

Схема управления шаговым двигателем
Я разжился контроллерами шаговиков L297 и мощным сдвоенным мостом L298N.

Лирическое отступление, при желании можно его пропустить

Именно на нем был сделан мой первый силовой блок робота. Кроме него там еще два источника питания на 5 и на 3.3 вольта, а также контроллер двух движков на L293 (такой же как и во второй реализации силового блока). В качестве контроллера тогда был выбран АТ89С2051. Это антикварный контроллер архитектуры MSC-51 в котором из периферии только два таймера, порты да UART, но я его люблю нежно и трепетно, так как первая любовь не проходит никогда =). К сожалению исходники его мега прошивки канули в Лету вместе с убившимся винтом, так что я не могу поделиться теми извращенскими алгоритмами, которые были туда засунуты. А там был и двухканальный ШИМ, и I2C Slave протокол, и контроль за положением шаговика с точным учетом его перемещения. Короче, знатный был проект. Ныне валяется трупом, т.к. все лень запустить Keil uVision и написать новую прошивку. Да и ассемблер С51 я стал уже забывать.

Схема включения L298N+L297 до смешного проста — надо тупо соединить их вместе. Они настолько созданы друг для друга, что в даташите на L298N идет прямой отсыл к L297, а в доке на L297 на L298N.

Осталось только подключить микроконтроллер.

  • На вход CW/CCW подаем направление вращения — 0 в одну сторону, 1 — в другую.
  • на вход CLOCK — импульсы. Один импульс — один шаг.
  • вход HALF/FULL задает режим работы — полный шаг/полушаг
  • RESET сбрасывает драйвер в дефолтное состояние ABCD=0101.
  • CONTROL определяет каким образом задается ШИМ, если он в нуле, то ШИМ образуется посредством выходов разрешения INh2 и INh3, а если 1 то через выходы на драйвер ABCD. Это может пригодится, если вместо L298 у которой есть куда подключать входы разрешения INh2/INh3 будет либо самодельный мост на транзисторах, либо какая-либо другая микросхема.
  • На вход Vref надо подать напряжение с потенциометра, которое будет определять максимальную перегрузочную способность. Подашь 5 вольт — будер работать на пределе, а в случае перегрузки сгорит L298, подашь меньше — при предельном токе просто заглохнет. Я вначале тупо загнал туда питание, но потом передумал и поставил подстроечный резистор — защита все же полезная вещь, плохо будет если драйвер L298 сгорит.
    Если же на защиту пофигу, то можешь заодно и резисторы, висящие на выходе sense выкинуть нафиг. Это токовые шунты, с них L297 узнает какой ток течет через драйвер L298 и решает сдохнет он и пора отрубать или еще протянет. Там нужны резисторы помощней, учитывая что ток через драйвер может достигать 4А, то при рекомендуемом сопротивлении в 0.5 Ом, будет падение напряжения порядка 2 вольт, а значит выделяемая моща будет около 4*2=8 Вт — для резистора огого! Я поставил двухваттные, но у меня и шаговик был мелкий, не способный схавать 4 ампера.

Правда на будущее, когда я буду делать роботу шаговый привод, я возьму не связку L297+L293, а микруху L6208 которая может и чуть слабей по току, но зато два в одном! Сразу подключай двигатель и работай. Если же их покупать, то на L6208 получается даже чуть дешевле.

Документация по микросхемам:

easyelectronics.ru

Схема для проверки ШД | Все своими руками

Опубликовал admin | Дата 10 июня, 2013

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

     Шаговые двигатели достаточно распространены в устройствах, в которых необходимо добиться точного перемещения механизмов. Существует очень много типов шаговых двигателей, но самыми простыми в плане управления являются 2-х фазные униполярные двигатели. Этот тип двигателей имеет две независимые (см. Рис.1)обмотки с выводами от середины. Их можно встретить в таких аппаратах, как принтер, копир, дисковод и т.д.

     Схема управления шаговым двигателем представлена на рисунке 2.

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

1. Можно определить количество шагов.
2. Определить один из двух алгоритмов работы двигателя.
3. Опробовать работу двигателя в полушаговом режиме.
4. Можно опробовать работу в полношаговом режиме.
Еще раз повторюсь, что разновидностей шаговиков много и не для всех подойдет данный контроллер.

     Программа управления состоит из пяти подпрограмм, которые переключаются кнопкой BS3 – «Выбор программ». Номер выбранной подпрограммы отображается тремя светодиодами в двоичной системе счисления. При первом включении должен засветиться светодиод HL1, индицирующий о том, что включена первая подпрограмма работы шагового двигателя в полушаговом режиме. Запуск двигателя осуществляется кнопками «Право» и «Лево». Право – двигатель должен крутиться по часовой стрелке, лево – против часовой, но направление вращения зависит еще и от того, как вы скоммутируете обмотки двигателя. Возможно, придется эксперементировать. На скриншоте 1 (передняя панель виртуального осциллографа программы Proteus) можно наблюдать импульсную последовательность и коды полушагов работы двигателя. Некоторые из шаговиков по этому алгоритму у меня не работали.

     Подпрограмма №2 – светится второй светодиод. В этой подпрограмме двигатель будет работать по полношаговому алгоритму, показанному на скрине 2.

     Подпрограмма №3 – светятся первый и второй светодиоды. В этой подпрограмме двигатель будет работать по полношаговому алгоритму, показанному на скрине 3.

     Подпрограмма №4 – светится третий светодиод. Данная подпрограмма обеспечивает один шаг двигателя при каждом нажатии на кнопку «Право». Кнопка «Лево» в данном случае не задействована. Короче говоря, нажимая каждый раз на кнопку, можно сосчитать количество шагов за один оборот проверяемого двигателя. Алгоритм работы двигателя в данной подпрограмме соответствует алгоритму на скрине 2.

     Подпрограмма №5 – светятся первый и третий светодиоды. В этой подпрограмме творится тоже самое, только алгоритм работы двигателя в данной подпрограмме соответствует алгоритму на скрине 3.

     Общий вид платы — на фото.

Файл прошивки, схему и рисунок печатной платы можно скачать здесь. Успехов всем. До свидания. К.В.Ю.

Скачать “Контроллер для проверки ШД” Shagov-dvigatel.rar – Загружено 828 раз – 20 KB

Обсудить эту статью на — форуме «Радиоэлектроника, вопросы и ответы».

Просмотров:22 349

www.kondratev-v.ru

Шаговый 4-х фазный двигатель 5V с платой управления ULN2003

Шаговый 4-х фазный двигатель 28BYJ-48-5V с платой управления ULN2003

 


Такие двигатели разработаны для применения в механизмах, где детали поворачиваются точно на требуемый угол. Вращение вала шагового двигателя состоит из малых перемещений – шагов. 28BYJ-48-5V – шаговый двигатель низкой мощности. Чаще всего мы видим результат работы маломощного шагового двигателя интересуясь который час глядя на стрелки циферблата электромеханических часов. Работа более мощных шаговиков нам видна когда мы следим за перемещением каретки матричного или струйного принтера.
 
ПРИМЕНЕНИЕ 28BYJ-48-5V
 
Одно из множества применений 28BYJ-48-5V в любительской робототехнике – использование для привода колес шасси. Используя 28BYJ-48-5V легко получить модель электропривода робота относящегося к классу мотор-колесо. Это позволяет собирать роботов способных развернуться на месте и обладающих точным позиционированием в пространстве благодаря цифровому управлению двигателем. Смотрим видео.
 


 
Используя шаговый двигатель можно собрать локатор для обнаружения препятствий движению подвижной платформы. Ультразвуковой  или ИК датчик отраженного излучения благодаря работе 28BYJ-48-5V могет поворачиваться в обоих направлениях в пределах требуемого угла. Будет происходить сканирование сектора окружающего пространства. Зная положение вала мотора благодаря импульсному управлению и дистанцию до препятствия получаемую от датчика, можно сформировать картину расположения окружающих предметов.
Существует модификация 24BYJ48-12V предназначенная для питания от 12 вольт используемая в кондиционерах для тяги шторок.
 
Немного теории
 



Схема фаз двигателя 28BYJ-48-5V.
 

Дискретное перемещение вала двигателя 28BYJ-48-5V позволяет повернуть вал ровно на 60 или 279 градусов и зафиксировать. Двигатель содержит две обмотки, причем каждая имеет отвод от середины. Получается 4 фазы. Такой электромагнитный прибор называют шаговый 4-х фазный двигатель. Отводы обмоток соединены вместе как изображено на схеме, к ним подключен красный провод. В результате каждый из контактов четырех фаз соединен с красным проводом. Двигатель относится к однополярным благодаря схеме соединения фаз. К красному проводу подключается питание. Фазы коммутируются силовой электроникой. Перемещение вала на шаг происходит под действием импульса тока.
Ротор мотора намагничен особым образом. На роторе 28BYJ-48-5V путем применения специальных технологий намагничивания сформировано 8 магнитов. Полюса магнитов ротора чередуются, перемещаясь мимо обмоток статора. Каждый магнит имеет 2 полюса. Происходит чередование шестнадцати полюсов. Магнитное поле фаз должно то притягивать, то отталкивать полюса магнитов. Это требование в сочетании со сменой полюсов при вращении требует смены полярности тока в фазах. Схема соединения фаз, имеющая отводы от середины обмоток позволяет использовать однополярное питание и исключить коммутационный компонент на линии питания.
Один из процессов происходящих в 28BYJ-48-5V можно представить следующим образом. Если красный провод подключен к положительному полюсу питания, то соединяя розовый или оранжевый провод двигателя с общим проводом питания, мы будем создавать магнитные поля в разных фазах одной обмотки. Поля розовой и оранжевой фаз будут направлены противоположно. При этом ток будет протекать в начале по верхней розовой фазе, а затем по нижней оранжевой. Также будет происходить формирование магнитного поля и в двух других фазах: желтой и синей.
Вращение ротора происходит за счет коммутации фаз шаг за шагом. Для поворота на требуемый угол или выполнения некоторого количества оборотов на фазы двигателя подают серию импульсов, под действием которых вал поворачивается на серию шагов.


Импульс тока вызывает перемещение вала на угол обусловленный углом, занимаемым на роторе одним магнитом. Увеличение количества полюсов ротора уменьшает шаги, что позволяет нарастить точность позиционирования. Поворот вала на нужный угол под действием известного количества импульсов тока дает возможность исключить из системы управления механическим приводом контроль угла поворота.
 Шаговый двигатель предназначен для вращения деталей механизмов с точно задаваемой скоростью регулируемой цифровым способом. Импульсы подают на фазы в определенной последовательности. 28BYJ-48-5V содержит пластмассовый понижающий редуктор.
 

Передаточное число редуктора двигателя 28BYJ-48-5V примерно 64:1.
 

 
Чаще всего используются два способа управления: 4 ступени импульсов и 8 ступеней. В 4-ступенчатом управлении всегда подключены к питанию две из четырех обмоток двигателя – полношаговый метод управления. Программная библиотека Stepper для Arduino IDE использует именно такой способ управления. Если фазам по цвету проводов присвоить обозначения А синий, Б розовый, В желтый, Г оранжевый, то получим наименования фаз А, Б, В, Г. Их поочередное включение можно представить в виде последовательной смены сочетаний включенных фаз АБ-БВ-ВГ-ГА-АБ.
В 8-ступенчатой последовательности включается сначала одна фаза потом две, потом опять одна следующая, снова две и так далее. Управление мотором происходит в соответствии с последовательностью: А-АБ-Б-БВ-В-ВГ-Г-ГД-Д-ДА-А.
Более наглядно теория изложена в следующем видео о подключении 28BYJ-48-5V к Raspberry Pi.
 


 
ХАРАКТЕРИСТИКИ 28BYJ-48-5V
 
Cкорость вращения
            номинальная 15 об/мин
            максимальная 25 об/мин
Питание
            напряжение 5 В
            ток
                        каждая обмотка 160 мА,
                        в 4-шаговом режиме 320 мА,
                        при быстром вращении 200 мА.
Сопротивление фаз при измерении от провода питания 41 Ом
Количество шагов ротора 64
Коэффициент редукции 1/63,68395
Угол шага двигателя без учета редуктора
            при 4-ступенчатой последовательности 11,25 ° (32 шага на оборот)
            при 8-ступенчатой последовательности 5,625 ° (64 шага на оборот)
Количество шагов вала мотора 28BYJ-48 за один оборот
            в 4-ступенчатой последовательности 32 x 64 = 2048
            в 8-ступенчатой последовательности 64 x 64 = 4096
Крутящий момент не менее 34,3 мНм (120 Гц)
Тормозящий момент            600–1200 гсм
Тяга     300 гсм
Изоляция класса А
Шум на расстоянии 0,1 м не более 35 dB
Вес 33 г
 

Размеры мотора 28BYJ-48-5V.
 
Так как основное назначение мотора управление шторкой кондиционера то коэффициент редуктора не точно соответствует 1:64, а на самом деле 1:63,68395. Это означает, что будет не 4096 шагов на оборот, а 4075,772.
 
 
ПЕРЕДЕЛКА В БИПОЛЯРНЫЙ – УВЕЛИЧЕНИЕ МОЩНОСТИ
 
При необходимости удвоения крутящего момента выполняют простую доработку схемы соединения фаз в двигателе. При этом красный провод питания будет не задействован, а мотор 28BYJ-48-5V  становится двухфазным биполярным. В схеме управления будет использовано 4 провода. Доработка заключается в разрыве дорожки как изображено на фото.
 

Модернизация мотора 28BYJ-48-5V.
 



Схема двухфазного биполярного шагового двигателя.

Отводы от центров обмоток отсоединяются друг от друга и не используются. Теперь фазы и обмотки становятся одним и тем же.
Две фазы вместо четырех содержат витки, распределенные между двумя а не четырьмя фазами. Теперь у одной фазы вдвое большее количество витков. Одна фаза имеет контакты розовый, оранжевый другая желтый, синий. Магнитное поле при удвоенном количестве витков удваивается и крутящий момент возрастает. Но схема управления сложнее. Она должна коммутировать обмотки так, чтобы ток мог протекать в обоих направлениях. Поэтому двигатель 28BYJ-48-5V после доработки становится биполярным. Управление двумя фазами, а не четырьмя снижает дискретность перемещения в два раза. Более подробно о переделке рассказано в видеофрагменте.
 
 


 

Модуль ULN2003 управления шаговым двигателем

 



 

 

Электронный модуль содержащий микросхему ULN2003A предназначен для управления однополярным четырехфазным шаговым двигателем. Модуль принимает на себя нагрузку по силовой коммутации токов фаз мотора, защищая управляющую логическую схему от перегрузки по току и от перегрева. Например, при возрастании нагрузки на валу, в этот момент потребление тока увеличивается.
 
 
ХАРАКТЕРИСТИКИ ULN2003A
 
Ток нагрузки одного выхода предельный 500 мА
Напряжение питания 5 или 12 В
Размеры 28 x 28 x 20 мм
 
ЭЛЕКТРИЧЕСКАЯ СХЕМА ULN2003A

Схема модуля ULN2003A.
 
На входы модуля IN1…IN4 поступают сигналы управления мощными ключами, входящими в состав микросхемы U1. Схема мощного ключа U1 на составном транзисторе приведена в верхнем левом углу изображения. Нагрузка подключается к соединителю CONM-MTR. В нашем случае это фазы двигателя. Вспомним, что все фазы мотора подключены одним контактом к положительному полюсу питания схемы. Под действием управляющего сигнала на входе Input X открывается выходной транзистор микросхемы и соединяет выход Output X с общим проводом. К выходам Output подключены вторые контакты фаз. Диод в схеме составного транзистора подключен к контакту COM, здесь это провод питания. Роль этого диода состоит в ограничении выходного напряжения не выше напряжения питания микросхемы плюс примерно 0,6 вольт. Такая защита цепей схемы необходима из-за импульсов напряжения появляющихся при коммутации фаз двигателя.
Светодиоды показывают какой выход микросхемы подключен к общему проводу. Для их работы следует установить перемычку J1. Она устанавливается только при питании модуля 5 В. Отслеживание свечения светодиодов помогает отладить схему соединения двигателя и управляющую программу. В дальнейшем для экономии тока питания перемычка J1 снимается.
 
ПОДКЛЮЧЕНИЕ ULN2003A
 



Назначение контактов модуля ULN2003A.

 Соединитель на жгуте двигателя устанавливается в ответную часть разъема на плате модуля. Питание подключается к штырям + и – возле перемычки. Для питания следует использовать отдельный источник, дающий ток до 1 А.
 
 
 
 
 


Соединения двигателя 28BYJ-48-5V и модуля управления ULN2003A.
 
ПРОГРАММИРОВАНИЕ В ARDUINO IDE
 
Stepper – программная библиотека входит в Arduino IDE и предназначенная для работы с шаговыми двигателями без редуктора. Библиотека Stepper поддерживает только полношаговый метод управления и имеет сильно ограниченные возможности. Предназначена для решения простых задач при управлении одним двигателем.
Stepper2.ino – программа, содержащая полный набор функций, которые могут быть использованы для запуска 28BYJ-48-5V. Обсуждение программы на  странице куда ведет ссылка. Планы преобразовать программу в полноценную библиотеку так и не были реализованы.
Custom Stepper  – библиотека может быть использована для управления различными шаговиками, но настройки по умолчанию для 28BYJ-48-5V.
AccelStepper  – библиотека работает  эффективно. Нагрев двигателя меньше, поддерживает изменение скорости.
Имеет объектно-ориентированный интерфейс для 2, 3 или 4-выводных шаговых двигателей.
Поддержка регулировки скорости.
Поддержка нескольких шаговых двигателей.
Функции API не используют функцию delay и не прерывают работу.
Поддержка выбора функции для шага позволяет работать совместно с библиотекой AFMotor.
Поддержка низких скоростей.
Расширяемый API.
Поддержка подклассов.
 

 

 
Набор для использования шагового двигателя в различных приборах. Поставка вместе с двигателем платы управления ULN2003A сокращает время на наладку и сборку электромеханического прибора. Шаговый двигатель и управляющий им модуль имеют соединители одного типа. Использование набора совместно с микроконтроллерным модулем позволяет собирать различные моторизованные системы. Набор ориентирован на специалистов хорошо владеющих программированием и не имеющих большого опыта монтажа пайкой. Предназначен для привода широкого спектра механизмов.
Шаговый 4-х фазный двигатель 5V с платой управления ULN2003 должны подключаться к одному источнику питания 5 В.

Описание мотора
            на английском
            на китайском

Параметры модификаций мотора
Описание модуля
Wiki
Подключение и управление

 
 

arduino-kit.ru

Драйвер шагового двигателя (Troyka-модуль) [Амперка / Вики]

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

Элементы платы

Подключение двигателя

На контакты 1, 2 подключается первая обмотка биполярного шагового двигателя. На контакты 3, 4 — вторая обмотка. Униполярный двигатель подключается точно также, просто не используются выводы из середин обмоток.

Питание двигателя

На колодки Vin подаётся напряжение 4,5–25 В постоянного тока. Для питания двигателя рекомендуется использовать отдельный контур питания, не связанный с цепью питания управляющего контроллера.

К примеру, если вы используете Arduino, не рекомендуется использовать питание с пина 5V Arduino. Это может привести к перезагрузке управляющего контроллера, или к перегрузке регулятора напряжения Arduino. В некоторых случаях допускается использовать для питания шагового двигателя пин Vin Arduino. Например, если Arduino запитана от мощного внешнего источника питания 7–12 В, напряжение которого при включении двигателя не падает ниже 7 В.

Контакты подключения 3-проводного шлейфа

Troyka-Stepper подключается к управляющей электронике по трём 3-проводным шлейфам.
Назначение контактов 3-проводных шлейфов:

  • Питание (V) — красный провод. На него должно подаваться напряжение 3,3–5 В, которое используется для питания логической части драйвера шагового двигателя.

  • Земля (G) — чёрный провод. Должен быть соединён с землёй микроконтроллера.

  • Сигнальный — жёлтый провод. Через него происходит управление соответствующим пином модуля.

Для управления модулем используется от одного до трёх сигнальных контакта:

  • Step. Каждый раз, когда напряжение на этом контакте переходит из низкого уровня напряжения в высокий, шаговый двигатель делает следующий шаг.

  • Direction. Направление вращения шагового двигателя зависит от схемы подключения его обмоток и от напряжения на этом пине. Если на пине direction установлен высокий уровень напряжения, двигатель вращается в одну сторону. Если низкий — в другую. Если изменять направление вращения двигателя не нужно, вы можете не подключать этот контакт к микроконтроллеру.

  • Enable. Высокий уровень на этом пине включает подачу напряжения на двигатель. При остановке шагового двигателя в определённом положении, питание продолжает поступать на его управляющую обмотку. Это приводит к нагреву шагового двигателя и излишнему расходу электроэнергии. Чтобы отключить подачу питания на двигатель, достаточно выставить низкий уровень напряжения на этом контакте. При остановке двигателя бывает полезно подать на этот контакт ШИМ-сигнал. Это позволит оставить на двигателе небольшое усилие, необходимое для удержания вала в текущем положении. Электроэнергии в таком случае будет тратится значительно меньше. Если нет необходимости управлять включением двигателя, вы можете не подключать этот контакт к микроконтроллеру. Тогда ток через обмотки двигателя будет течь всегда, если есть напряжение питания.

Индикатор вращения двигателя

Светодиодный индикатор. Горит зелёным при шаге в одну сторону, красным — при шаге в другую сторону.

Пример использования

troykaStepper.ino
// Troyka-Stepper подключён к следующим пинам:
const byte stepPin = 7;
const byte directionPin = 8;
const byte enablePin = 11;
 
// Выдержка для регулировки скорости вращения
int delayTime = 20;
 
void setup() {
  // Настраиваем нужные контакты на выход
  pinMode(stepPin, OUTPUT);
  pinMode(directionPin, OUTPUT);
  pinMode(enablePin, OUTPUT);
 
}
 
void loop() {
 
  // Подаём питание на двигатель
  digitalWrite(enablePin, HIGH);
 
  // Задаём направление вращения по часовой стрелке
  digitalWrite(directionPin, HIGH);
 
  // Делаем 50 шагов
  for (int i = 0; i < 50; ++i) {
    // Делаем шаг
    digitalWrite(stepPin, HIGH);
    delay(delayTime);
 
    digitalWrite(stepPin, LOW);
    delay(delayTime);
  }
 
  // Переходим в режим экономичного удержания двигателя...
  analogWrite(enablePin, 100);
  //... на три секунды
  delay(3000);
 
  // Меняем направление вращения
  digitalWrite(directionPin, LOW);
 
  // Включаем двигатель на полную мощность
  digitalWrite(enablePin, HIGH);
 
  // Делаем 50 шагов
  for (int i = 0; i < 50; ++i) {
    digitalWrite(stepPin, HIGH);
    delay(delayTime);
 
    digitalWrite(stepPin, LOW);
    delay(delayTime);
  }
 
  // Ничего не делаем без отключения двигателя
  delay(3000);
 
  // Отключаем двигатель
  digitalWrite(enablePin, LOW);
 
  // Ничего не делаем до перезагрузки
 
  while (true) {
    ;
  }
 
}

Характеристики модуля

Номинальное напряжение питания двигателя 4,5–25 В
Пиковое напряжение на контактах Vin 35 В
Напряжение питания логической части 3,3–5 В
Длительно допустимый ток до 600 мА
Пиковый ток 1200 мА

Ресурсы

wiki.amperka.ru

Управление шаговым мотором. Силовая часть.


				

	
	
	
Дата: 22 Марта 2014. Автор: Алексей


	
	

Всем привет! Наконец-то пришла весна, потеплело и солнышко стало прогревать.
Птички запели )) Ну ладно, хватит лирики. Продолжаю писать про шаговые двигатели.
А точнее не про них, а как я с ними работаю. Может кому-то будет полезно, а кому
нет, решать вам. Поехали. В прошлой статье я писал как подключить ШД к силовому
драйверу на базе микросхемы L298N. Получил я тут на днях посылочку вот с такими
моторами.







А на моторах написано: «1.8° 2.5А». Вот эти 2.5А меня озадачили, ток как при
подключении к выше описанным драйверам, микросхемам поплохело через минуту. Ну
думал, думал и нашел в своих запасах MOSFEты. Я ими в свою очередь пытался
управлять мотором на фрезерном станке, но так все и заглохло. С передачей 1:2
обороты регулировать просто не понадобилось. Вот я и подумал, а не собрать ли
свой силовой драйвер для шаговиков на этих транзисторах. Смотрим на картинку
ниже. (это из даташита на L298).







Давайте разберемся по подробнее. Ножка +Vs получает напряжения для мотора.
+Vss питание схемы. In1…In4 задают управляющие сигналы. EnA, EnB задают ШИМ.
SENSE A, SENSE B нужны для определения протекающего тока. Для этих целей стоят
два резистора Rsa и Rsb. OUT1…OUT4 соответственно идут к выводам мотора.
Посмотрев на схему я решил сделать такую же но на рассыпухе. Биполярные
транзисторы заменил на MOSFET IRFZ44, они самые распространенные. Логику для
управления сначала хотел сделать на биполярникак, но нашел им замену в виде
готового драйвера от той же фирмы IR2104. Драйвер конечно хороший, но…
Жутко боится статики. Сжег 7 микросхем. Понял когда уже со злости перепаивал
седьмую микросхему, на нервном срыве выключил музыку и при полной тишине касаясь
жалом до ножки микросхемы, слышу «чпок». Следующие ноги сделали тоже самое.
От сюда вывод, паять только феном. Второй касяк, драйверы боятся быть грязными.
Убил уйму времени пока не помыл в УЗ ванне. Если оставить флюс на плате, то
осцил такое выдает )) В связи с копированием данной схемы, решил логику работы
переложить на специализированную микросхему L297. Они в принципе созданы друг
для друга. Смотрим схему.








На схеме справа внизу видно разъем для подключения вентилятора охлаждения, но
при испытани я заметил что транзисторы не греются вообще, а стабилизатор на 12в
греется. Также добавил режим тока удержания. Это нужно для того чтобы в момент
простоя мотора ток был минимален. Мотор не греется, экономия электроэнергии ))
Если требуется держать вал мотора намертво, можно резистор R16 выкинуть из
схемы, а выводы замкнуть между собой. После сборки регулировка не требуется.
Точнее требуется. Если стоят два резистора то регулировать нужно так: Сначала
нужно вычислить опорное напряжение. Для этого нужно по закону Ома умножить
сопротивление резистора R9, это тот 5-ти ваттный, на требуемый ток. Например мне
нужно 2,5А. 0.22Ом * 2,5А = 0,55В. То есть требуется подать на ногу 15 Vref
микросхемы L297 0.55В. Чтобы это сделать нужно на разъеме J10 на вывод
«Ток удержания» подать , а на вывод «Диагностика Vref» повесить тестер.
Вращая регулировочный винт резистора R17 добиться 0.55В. Далее не отключая
тестер, снять и прижать к земле. Напряжение должно упасть. Далее вычислить
ток удержания. Я решил дать 0,75А. Вал сам не провернется но и если что, то рукой
можно провернуть. Для моих целей то что надо. 0,22Ом * 0,75А = 0,165В. Значит
вращаем резистор R16 до получения требуемого напряжения. Потом снова подаем и
корректируем до 0,55В. Подать 0В и проверить ток удержания, если убежал,
подправить. Ну короче переключать и регулировать пока требуемые напряжения не
установятся. Подаем 5В на вывод «Ток удержания», получаем 0,55В. Подаем ,
получаем 0,165В. Есть одно но… После остановки мотора, ток удержания сразу
уменьшать не надо. Мотор остановили, подождали пол секунды, а потом смело
уменьшаем. Да, вот еще один плюс к уменьшению тока, мотор при удержании вала с
рабочим током сильно пищит. Если ток уменьшить писк пропадает. Внизу будет видео
работы всего этого безобразия и там это хорошо слышно.
Резюме: Для того чтобы мотор сделал шаг, нужно на вывод «Ток удержания» подать 1.
На вывод «Направление» подать 1 или 0, в зависимости от направления и подать
импульс на вывод «Шаги». Один импульс, один шаг. Затем подождать пол секунды и
подать 0 на вывод «Ток удержания». Вот весь алгоритм для управления мотором. Ой,
чуть не забыл! Разъём J8 нужен для выбора режима Шаг/Полушаг. Если джампера нет,
то полношаговый режим, если установлен то полушаговый. Также можно управлять
режимом с МК. Если подать 0 на вывод №2 будет шаг, если 1 то полушаг.
Страссированную плату не дам. Я не жадный, я просто ее делал для тестов и
отработки схемы. В ней много чего есть, что не нужно для работы мотора. Что-то
вроде тестовых подсхем )) Не, поделюсь )) Я выкинул из нее все лишние и
перетрассировал. Как она будет выглядеть можно посмотреть на 3D модель ниже.







Это реальная плата, но с добавками.







Вот архив с проектом в DipTrace. Да, я предал P-CAD. Меня купили за 3D-модели ))
Архив с проектом.




На плате нет ни одной перемычки. Все детали у которых можно подлезть с паяльником
к ножке, обязательно пропаять. Разъёмы J5, J8, J9, J10 паять таким образом:
Поднять корпус по выводам до самого верха, затем вставить в отверстия таким
образом чтобы выводы с другой стороны вылезли на 1 мм и пропаять их. Затем
перевернуть плату и пропаять сверху. Затем опустить корпус вниз. Корпус сядет
прямо на плату. Это из-за того что в корпусе снизу есть канавка, припой не
помешает. Ну вроде все. Будут вопросы, пишите.





Вот конечный результат. Три платы на три оси. Платы страссированны в более
компактном варианте.
Архив с новым проектом.







JW Player goes here








www.avrki.ru

КОНТРОЛЛЕР УПРАВЛЕНИЯ ШАГОВЫМ ДВИГАТЕЛЕМ

Двухфазный контроллер управления шаговым двигателем можно собрать на STK682-010 — это гибридная микросхема, которая может обеспечить ток до 2.5 Ампер при питании до 32 В постоянного тока. Она имеет множественные значения микро-степпинга: полный шаг, 1/2-й шаг, 1/4-ый шаг, 1/8-й шаг, 1/16-й шаг, 1/32-й шаг, 1/64-й шаг и 1/128-й шаг.

Схема контроллера на STK682-010

Частота установлена на 83,3 кГц с помощью конденсатора C5 100 пФ. Режимы работы можно установить с помощью перемычек J1, J2, J3. Стабилизатор U2 обеспечивает 5 В питания для цепи логики. Все входные сигналы могут подаваться через CN3. Микросхема имеет встроенные автоматические функции стабилизации, чтобы уменьшить вибрации и ток, пока двигатель находится в статическом режиме. Смотрите таблицу установки джамперов для режимов микро-степпинга ШД.

Обратите внимание, то микросхема требует теплоотвода.

Технические характеристики драйвера

  • Диапазон напряжения питания 9-32 В
  • Максимальный ток нагрузки 2,5 А
  • Стабилизатор LM317 на 5 вольт
  • Встроенная защита от перегрузки по току
  • Защита от перегрева микросхемы

Драйвер предназначен для фрезерно-гравировального оборудования, 3D-принтеров, копиров автоматизации управления, элементов робототехники. Скачать файл проекта можно тут


el-shema.ru