Самодельный драйвер для шагового двигателя своими руками. Управляем шаговыми движками и DC моторами, L298 и Raspberry Pi
Для работы практически всех электрических приборов, необходимы специальные приводные механизмы. Предлагаем рассмотреть, что такое шаговый двигатель, его конструкцию, принцип работы и схемы подключения.
Что такое шаговый двигатель?
Шаговый двигатель представляет собой электрическую машину, предназначенную для преобразования электрической энергии сети в механическую энергию. Конструктивно состоит из обмоток статора и магнитомягкого или магнитотвердого ротора. Отличительной особенностью шагового двигателя является дискретное вращение, при котором заданному числу импульсов соответствует определенное число совершаемых шагов. Наибольшее применение такие устройства получили в станках с ЧПУ, робототехнике, устройствах хранения и считывания информации.
В отличии от других типов машин шаговый двигатель совершает вращение не непрерывно, а шагами, от чего и происходит название устройства. Каждый такой шаг составляет лишь часть от его полного оборота. Количество необходимых шагов для полного вращения вала будет отличаться, в зависимости от схемы соединения, марки двигателя и способа управления.
Преимущества и недостатки шагового электродвигателя
К преимуществам эксплуатации шагового двигателя можно отнести:
- В шаговых электродвигателях угол поворота соответствует числу поданных электрических сигналов, при этом, после остановки вращения сохраняется полный момент и фиксация;
- Точное позиционирование – обеспечивает 3 – 5% от установленного шага, которая не накапливается от шага к шагу;
- Обеспечивает высокую скорость старта, реверса, остановки;
- Отличается высокой надежностью за счет отсутствия трущихся компонентов для токосъема, в отличии от коллекторных двигателей;
- Для позиционирования шаговому двигателю не требуется обратной связи;
- Может выдавать низкие обороты для непосредственно подведенной нагрузки без каких-либо редукторов;
- Сравнительно меньшая стоимость относительно тех же ;
- Обеспечивается широкий диапазон управления скоростью оборотов вала за счет изменения частоты электрических импульсов.
К недостаткам применения шагового двигателя относятся:
- Может возникать резонансный эффект и проскальзывание шагового агрегата;
- Существует вероятность утраты контроля из-за отсутствия обратной связи;
- Количество расходуемой электроэнергии не зависит от наличия или отсутствия нагрузки;
- Сложности управления из-за особенности схемы
Устройство и принцип работы
Рис. 1. Принцип действия шагового двигателяНа рисунке 1 изображены 4 обмотки, которые относятся к статору двигателя, а их расположение устроено так, что они находятся под углом 90º относительно друг друга. Из чего следует, что такая машина характеризуется размером шага в 90º.
В момент подачи напряжения U1 в первую обмотку происходит перемещение ротора на те же 90º. В случае поочередной подачи напряжения U2, U3, U4 в соответствующие обмотки, вал продолжит вращение до завершения полного круга. После чего цикл повторяется снова. Для изменения направления вращения достаточно изменить очередность подачи имп
Контроллер шагового двигателя схема | KAVMASTER
За какое-то время у меня скопилось много
Блок управления шаговым двигателем
Шаговые двигатели достаточно распространены в устройствах, в которых необходимо добиться точного перемещения механизмов. Существует очень много типов шаговых двигателей, но самыми простыми в плане управления являются 2-х фазные униполярные двигатели
Схема управления шаговым двигателем.
На рисунке 2 представлена схема управления шаговым двигателем.
Сперва хотел разработать схему на жесткой логике, но когда определился с функциями, которые она должна выполнять, пришло твердое решение использовать для этих целей микроконтроллер. И так, что можно определить с помощью данного блока управления.
- Можно определить количество шагов.
- Определить один из двух алгоритмов работы двигателя.
- Опробовать работу двигателя в полушаговом режиме.
- Можно опробовать работу в полношаговом режиме.
Программы управления шаговыми двигателями
Программа управления состоит из пяти подпрограмм, которые переключаются кнопкой BS3 – «Выбор программ». Номер выбранной подпрограммы отображается тремя светодиодами в двоичной системе счисления. При первом включении должен загореться светодиод HL1, индицирующий о том, что включена первая подпрограмма работы шагового двигателя в полушаговом режиме. Запуск двигателя осуществляется кнопками «Право» и «Лево». Право – двигатель должен крутиться по часовой стрелке, лево – против часовой, но направление вращения зависит еще и от того, как вы скоммутируете обмотки двигателя.
Возможно, придется экспериментировать. На скриншоте 1 (передняя панель виртуального осциллографа программы Proteus) можно наблюдать импульсную последовательность и коды полушагов работы двигателя. Некоторые из шаговиков по этому алгоритму у меня не работали.
Полношаговый алгоритм работы шагового двигателя
Подпрограмма №2 – светится второй светодиод. В этой подпрограмме двигатель будет работать по полно шаговому алгоритму, показанному на скрине 2.
Подпрограмма №3 – светятся первый и второй светодиоды. В этой подпрограмме двигатель будет работать по полношаговому алгоритму, показанному на скрине 3.
Количество шагов шагового двигателя
Подпрограмма №4 – светится третий светодиод. Данная подпрограмма обеспечивает один шаг двигателя при каждом нажатии на кнопку «Право». Кнопка «Лево» в данном случае не задействована. Короче говоря, нажимая каждый раз на кнопку, можно сосчитать количество шагов за один оборот проверяемого двигателя. Алгоритм работы двигателя в данной подпрограмме соответствует алгоритму на скрине 2.
Подпрограмма №5 – светятся первый и третий светодиоды. В этой подпрограмме творится тоже самое, только алгоритм работы двигателя в данной подпрограмме соответствует алгоритму на скрине 3.
Общий вид платы — на фото.
Файл прошивки, схему и рисунок печатной платы можно скачать по ссылке ниже.
Купить USB программатор PIC K150 ICSP
Подключение шагового двигателя: схема подключения
Подключение шагового двигателя
В общем и целом процесс подключения шагового двигателя не является затруднительным. В первую очередь нужно определить, какой тип ШД используется. Для этого следует обратить внимание на то, сколькими проводами снабжён электропривод. В зависимости от типа, шаговый двигатель может иметь 4, 5, 6 или 8 проводов.
Шаговый двигатель с 4 проводами может использоваться совместно только с биполярными устройствами. Каждая из двух фазных обмоток такого электродвигателя имеет пару проводов с непрерывной связью. Драйвер ШД в данном случае подключается пошагово.
Шаговый двигатель, оснащённый 6-ю или 8-ю проводами, помимо пары проводов для каждой из обмоток имеет также центр-кран для каждой из них. Такой электродвигатель считается униполярным и может быть подключён как к биполярным, так и к униполярным устройствам. Для разделения провода при подключении униполярного ШД рекомендуется использовать измерительный прибор. Если униполярный шаговый двигатель подключается к однополярному элементу, допускается использование всех проводов. Если же подключение необходимо произвести к биполярному оборудованию, используются один конец провода и один центральный кран для каждой из обмоток.
Шаговый двигатель с 5-ю проводами схож с шестипроводным, однако центральные клеммы такого электродвигателя соединяются внутри сплошным кабелем, после чего выводятся к одному проводу. Разделение проводов в таком механизме – довольно трудоёмкий процесс, который очень сложно произвести без разрывов. Наиболее безопасным и эффективным выходом из ситуации при подключении такого прибора является определение центра провода с последующим соединением его с другими проводниками.
Стандартной схемой, использующейся для подключения 4-выводного биполярного ШД к драйверу или контроллеру является подключение первой обмотки к разъёмам А и А*, а второй – непосредственно к контроллеру через разъёмы B и B*. Разъёмы контроллера Dir и Step при таком методе подключения не используются; программное управление осуществляется при помощи генератора импульсов.
ВНИМАНИЕ – всегда проверяйте цветовую схему выводов, шаговый двигатель от конкретного производителя отличается от абсолютно аналогичного ШД другого производителя, а значит, может иметь другую цветовую схему выводов!
По вопросу подключения шагового двигателя, вы всегда можете обратиться к нашим специалистам по телефону по России (звонок бесплатный) 8 800 5555 068 либо по электронной почте.
Простая схема управления шаговым двигателем
Опубликовал admin | Дата 10 января, 2014Схема управления шаговым двигателем приведена на рисунке 1. Схема реализована на микросхемах простой логики. В ней используются три микросхемы К561ЛА7 и одна К561ТМ2. В качестве мощных ключей для коммутирования обмоток шагового двигателя применены составные транзисторы КТ829А, способные выдерживать ток до семи ампер.
При нажатии на одну из кнопок двигатель начинает вращаться в ту или иную сторону. Кнопки использованы двойные, поэтому при их отпускании размыкается и цепь питания обмоток шагового двигателя, что исключает протекание сквозных токов при остановке двигателя. Но есть ситуации, когда для удержания ротора двигателя в нужном положении, необходимо, чтобы через одну из обмоток протекал удерживающий ток. В этом случае контроллер должен автоматически понизить напряжение питания обмоток двигателя до необходимой величины. В данной схеме этой опции нет, здесь напряжение питания снимается с обмоток двигателя полностью.
На микросхеме DD1 собран генератор импульсов, изменение частоты этого генератора влечет за собой изменение частоты вращения шагового двигателя. Каждый импульс данного генератора поворачивает ротор на один шаг. На микросхемах DD2 и DD3 собраны логические элементы «исключающие или» и совместно с двумя триггерами DD4.1 и DD4.2, микросхемы К561ТМ2, образуют схему двухразрядного кольцевого счетчика для коммутации обмоток. Схема обеспечивает работу шагового двигателя в полушаговом режиме. Осциллограммы импульсных последователей полушагов показаны на скриншоте 1. Все обмотки двигателя зашунтированы демпфирующими диодами, устраняющими коммутационные выбросы напряжения. Микросхемы питаются через стабилизатор напряжения DA1 — КР142ЕН8Б. Максимальное входное напряжение этой равно35В. Так что и максимальное напряжение питания двигателя будет равно 35В.
Почти все элементы схемы смонтированы на печатной плате. На плате нет микросхемного стабилизатора напряжения, демпфирующих диодов, кнопок и конденсаторов фильтра. При необходимости их можно разместить на плате, изменив немного ее топологию. Скачать схему и рисунок печатной платы можно здесь.
Скачать “простая схема управления шаговым двигателем” Shema-upravl-shagov-dvigatel.rar – Загружено 1986 раз – 31 KB
Обсудить эту статью на — форуме «Радиоэлектроника, вопросы и ответы».
Просмотров:35 215
Управление биполярным шаговым двигателем. Часть 1. Теория. Схема с контроллером PIC12F629 и драйвером LB1838
- Часть 1. Теория. Схема с PIC12F629 и драйвером LB1838
- Часть 2. Схема с PIC12F629 и драйвером L293D
Шаговые двигатели интересны тем, что позволяют повернуть вал на определённый угол. Соответственно, с их помощью можно повернуть вал и на определённое число оборотов, потому что N оборотов — это тоже определённый угол, равный 360*N, и, в том числе, на нецелое число оборотов, например на 0.75 оборота, 2.5 оборота, на 3.7 оборота и т.д. Этими возможностями шаговых двигателей определяется и область их применения. В основном они используются для позиционирования различных устройств: считывающих головок в дисководах, печатающих головок в принтерах и плоттерах и т.д.
Естественно такие возможности не могли обойти стороной и радиолюбители. Они с успехом используют шаговики в конструкциях самодельных роботов, самодельных станков с ЧПУ и т.д. Ниже описаны результаты моих опытов с шаговым двигателем, надеюсь, что кому-то это может оказаться полезным.
Итак, что нам понадобится для экспериментов. Во-первых, шаговый двигатель. Я брал 5-ти вольтовый китайский биполярный шаговик с загадочным названием, выдранный из старого 3,5″ дисковода, аналог M20SP-GW15. Во-вторых, поскольку обмотки двигателя потребляют значительный ток (в данном случае до 300 мА), то вполне понятно, что подключить шаговик к контроллеру напрямую не удастся, нужен драйвер.
В качестве драйвера для биполярных шаговых двигателей обычно используют схему так называемого H-моста или специальную микросхему (в которой всё равно встроен H-мост). Можно конечно ваять самому, но я взял готовую микруху (LB1838) из того же старого дисковода. Собственно, кроме всего вышеописанного, для наших экспериментов также понадобятся: PIC-контроллер (был взят PIC12F629, как самый дешёвый) и пара кнопок.
Перед тем, как перейти непосредственно к схеме, давайте немного разберёмся с теорией.
Биполярный шаговый двигатель имеет две обмотки и, соответственно, подключается по четырём проводам. Найти концы обмоток можно простой прозвонкой — концы проводов, относящиеся к одной обмотке, будут между собой звониться, а концы, относящиеся к разным обмоткам, — нет. Концы первой обмотки обозначим буквами «a», «b», а концы второй обмотки буквами «c», «d».
На рассматриваемом экземпляре есть цифровая маркировка контактов возле мотора и цветовая маркировка проводов (бог его знает, может это тоже какой-то стандарт): 1 — красный, 2 — голубой — первая обмотка; 3 — жёлтый, 4 — белый — вторая обмотка.
Для того, чтобы биполярный шаговый двигатель вращался, необходимо запитывать обмотки в порядке, указанном в таблице. Если направление обхода таблицы выбрать сверху вниз по кругу, то двигатель будет вращаться вперёд, если снизу вверх по кругу — двигатель будет вращаться назад:
За один полный цикл двигатель делает четыре шага.
Для правильной работы, должна строго соблюдаться указанная в таблице последовательность коммутаций. То есть, например, после второй комбинации (когда мы подали + на вывод «c» и минус на вывод «d») мы можем подать либо третью комбинацию (отключить вторую обмотку, а на первой подать — на «a» и + на «b»), тогда двигатель повернётся на один шаг вперёд, либо первую комбинацию (двигатель повернётся на один шаг назад).
То, с какой комбинации нужно начинать вращение, определяется тем, какая последняя комбинация подавалась на двигатель перед его выключением (если конечно его руками потом не крутили) и желаемым направлением вращения.
То есть, допустим мы повернули двигатель на 5 шагов вперёд, подавая на него комбинации 2-3-4-1-2, потом обесточили, а потом захотели повернуть ещё на один шаг вперёд. Для этого на обмотки надо подать комбинацию 3. Пусть после этого мы его опять обесточили, а через какое-то время захотели вернуть его на 2 шага назад, тогда нам нужно подать на двигатель комбинации 2-1. И так далее в таком же духе.
Эта таблица, кроме всего прочего, позволяет оценить, что будет происходить с шаговым двигателем, если мы перепутаем порядок подключения обмоток или концы в обмотках.
На этом мы закончим с двигателем и перейдём к драйверу LB1838.
У этой микрухи есть четыре управляющие ноги (IN1, IN2, EN1, EN2), на которые мы как раз и будем подавать сигналы с контроллера, и четыре выходных ноги (Out1, Out2, Out3, Out4), к которым подключаются обмотки двигателя. Обмотки подключаются следующим образом: провод «a» подключается к Out1, провод «b» — к Out2, провод «c» — к Out3, провод «d» — к Out4.
Ниже представлена таблица истинности для микросхемы драйвера (состояние выходов в зависимости от состояния входов):
IN1 | EN1 | Out1 (a) | Out2(b) | IN2 | EN2 | Out3(c) | Out4(d) |
Low | High | + | — | Low | High | + | — |
High | High | — | + | High | High | — | + |
X | Low | откл | откл | X | Low | откл | откл |
Теперь давайте нарисуем на диаграмме, какую форму должны иметь сигналы IN1, EN1, IN2, EN2 для одного полного цикла вращения (4 шага), т.е. чтобы на выходах появились последовательно все 4 комбинации подключения обмоток:
Если присмотреться к этой диаграмме (слева), то становится очевидно, что сигналы IN1 и IN2 можно сделать абсолютно одинаковыми, то есть на обе этих ноги можно подавать один и тот же сигнал. В этом случае наша диаграмма будет выглядеть так:
Итак, на последней диаграмме нарисовано, какие комбинации уровней сигналов должны быть на управляющих входах драйвера (EN1, EN2, IN1, IN2) для того, чтобы получить соответствующие комбинации подключения обмоток двигателя, а также стрелками указан порядок смены этих комбинаций для обеспечения вращения в нужную сторону.
Вот в общем-то и вся теория. Необходимые комбинации уровней на управляющих входах формируются контроллером (мы будем использовать PIC12F629).
Схема:
Элементы: R1..R2 = 1 кОм. Когда соответствующая кнопка не нажата — резистор подтягивает напряжение на входе контроллера к +5 В (высокий уровень). При нажатии на кнопку напряжение на входе подтягивается к земле (низкий уровень). С1, С2 = 0,1 мкФ — керамические конденсаторы. С3 = 470 мкФ х 16В — электролитический конденсатор. |
Готовый девайс:
Программа управления реализует следующий алгоритм: при нажатии кнопки КН1 двигатель поворачивается на один шаг в одну сторону, а при нажатии кнопки КН2 — на один шаг в другую сторону.
Простейшая программа управления (.asm + .hex)
Скачать плату в формате DipTrace 2.0
Собственно говоря, можно прикрутить сюда программный UART и реализовать управление от компьютера (передавать с компа скорость, количество шагов и направление вращения).
продолжение (для драйвера L293D)…