Наш двигатель является униполярным двухфазным. Как и большинство ШД такого типа, он имеет 6 выводов - 4 входа и 2 общих провода. Общие провода как правило подключаются к «+» источника питания, так оказалось и в моём случае общие провода подключаем к +12В.
Для того, чтобы определить последовательность подачи управляющих сигналов, необходимо найти даташит для двигателя. Для некоторых двигателей, извлечённых из принтеров, это становится немалой проблемой. По счастью, найти документацию на отечественный ДШР-39 оказалось несложно.
В итоге схема была собрана на куске макетной платы под пайку с использованием сокет под микросхемы, дабы не возникало проблем с перегревом в силу того, что в пайке я пока недостаточно опытен. Также можно сделать разводку схемы в SprintLayout - схема проста и содержит минимум элементов.
На рисунке показана схема получившегося в результате устройства. Электродвигатель изображен схематически, 4 входа схемы соответствуют 4м её выходам. Два конденсатора, необходимые для гашения низкочастотных и высокочастотных помех питания, на собранной плате отсутствуют ввиду того, что компьютерный БП способен обеспечить нужные характеристики питания и без них.
Несмотря на простоту схемы, для начала я нарисовал её в 'e и запустил моделирование. В ряде случаев это позволяет на ранней стадии обнаружить ошибки, дабы не искать их на собранной схеме, что куда сложнее.
Для драйвера существует масса различных схем, наиболее популярные из них основаны на связке микросхем L297+L298 или на специальном драйвере SLA7024M. Но в силу простоты задачи (заставить двигатель крутиться) и того, что я не электронщик, я решил использовать самую простую, требующую минимум расчётов и обвязки, схему с элементарной разводкой на базе массива ключей Дарлигтона, микросхемы ULN2003. Помимо того, в схему была включена микросхема-трансивер 74HC245N она попросту транслирует поступающие на неё сигналы с одного вывода на другой, и основная её роль в том, чтобы служить своеобразным «буфером» между МК и схемой управления двигателем, дабы в случае скачка напряжения перегорела эта микросхема, а не микроконтроллер. 74HC245N можно без проблем купить в радиотоварах, а вот ULN2003 может оказаться дефицитом я брал её у знакомых электронщиков, т.Pк. в паре близлежащих магазинов не нашел. При этом обе микросхемы дешевы и стоят 15-20 рублей каждая.
БП, как я уже говорил, был взят компьютерный у знакомого валялась масса ненужных корпусов AT, один из которых и стал донором блока питания. Плата микроконтроллера запитывается от компьютера через обычный USB-кабель.
Как уже отмечалось выше, шаговый двигатель можно извлечь из разной компьютерной и офисной техники. Чаще всего «самоделкины» добывают двигатели для своих нужд из принтеров, сканеров или дисководов. Двигатель для своего опыта я извлёк из сломанного кассового аппарата его я выбрал по причине напряжения питания 12В (а значит возможности питания от компьютерного БП без каких-либо дополнительных преобразователей напряжения). Многие ШД от принтеров или сканеров имеют напряжение питания 36 или 40В, так что блок питания для них придётся либо извлечь из того же устройства, откуда был извлечён двигатель (что не всегда возможно), либо изготовить.
Помимо этого нам необходим сам двигатель, источник питания для него и для микроконтроллера, а также схема-драйвер так как микроконтроллер не способен напрямую управлять индуктивной нагрузкой вроде ШД, нам необходим будет своеобразный «ключ», чтобы управлять при помощи импульсов напряжением 3.5 В нагрузкой напряжением 12-40В.
В качестве последнего был выбран МК семейства ARM Cortex M3, STM32F100RB, вместе с демонстрационной платой STM32 ValueLine Discovery. Причиной тому стала относительная дешевизна данной демоплаты (чуть больше 500р под заказ), довольно широкие возможности, а также простота прошивки и отладки с использованием USB-порта. Из минусов то, что к сожалению в обычных радиомагазинах купить такую отладочную плату сложно и как правило её приходится заказывать, а также то, что несмотря на дешевизну, сам микроконтроллер имеет TFQP-корпус для планарного монтажа с очень маленьким расстоянием между ножками при создании устройств на его базе сделать печатную плату с помощью будет нелегко, запаять 64 миниатюрных вывода тоже. Но так как я делал управление ШД прежде всего в экспериментальных целях, всё вышеперечисленное меня не очень беспокоило.
Существует множество разных схем по управлению подобными двигателями, многие из них можно найти в интернете. Последние как правило предназначены прежде всего для тех, кто решил создать свой ЧПУ-станок или 3D-принтер. В нашем же случае мы попытаемся создать максимально простую схему, которая заставляла бы двигатель делать определённое количество шагов в зависимости от команд, поступающих с микроконтроллера(МК).
[ ] Схема управления
Подробнее о шаговых двигателях можно прочитать здесь:
Главное свойство подобного двигателя в том, что угол поворота вала двигателя определяется количеством импульсов, поданным на вход. Именно поэтому эти двигатели так популярны там, где требуется точно задать перемещение или поворот определённых деталей при помощи электрических сигналов. В «самоделкинской» и радиолюбительской практике подобные двигатели широко используются при изготовлении самодельных станков ЧПУ, 3D-принтеров и прочих устройств, для которых требуется точное управление углом поворота вала двигателя.
Шаговый двигатель(ШД) это электромеханичское устройство, которое преобразует электрические импульсы в дискретные механические перемещения. Сегодня подобные двигатели применяются в целом ряде различных устройств принтерах, сканерах, дисководах.
[ ] Немного о шаговых двигателях
Управление шаговым двигателем с помощью микроконтроллера семейства ARM Cortext M3 - STM32F100RB.
Материал из LicrymWiki
Простой контроллер шагового двигателя на ARM
Простой контроллер шагового двигателя на ARM LicrymWiki
Комментариев нет:
Отправить комментарий