↑ Драйвер шагового двигателя
Двигатель есть. Теперь нужен драйвер — переключать напряжение на обмотках двигателя определенным образом, при этом не превышая установленный ток.Самое простое решение — источник заданного тока и две пары транзисторных ключей на каждую обмотку. И четыре защитных диода. И логическая схема чтобы менять направление. И… Такое решение обычно делают на микросхеме ULN2003A для двигателей с малым током, имеет много недостатков, не буду на них останавливаться.
Альтернатива — специализированные микросхемы «всё в одном» — с логикой, транзисторами и диодами защиты внутри (или снаружи). А еще такие микросхемы контролируют ток обмоток и регулируют его с помощью ШИМ-а, а так же могут реализовывать режим «полушаг», а некоторые режимы 1/4 шага, и 1/8 шага и т. д. Эти режимы позволяют повысить точность позиционирования, повысить плавность движения и снизить резонанс. Обычно достаточно режима «полушаг», что позволит повысить теоретическую точность линейного позиционирования (в моем примере до 0,005 мм).
Что внутри микросхемы драйвера шагового двигателя? Блок логики и управления, источники питания, ШИМ со схемами формирования момента и времени коммутации обмоток, выходные ключи на полевых транзисторах, компараторы обратной связи — ток контролируется по падению напряжения на резисторах (Rs) в цепи питания обмоток. Ток двигателя задается опорным напряжением.
Для реализации этих функций существуют и другие схемные решения, например, с использованием микроконтроллеров PIC или ATMEGA (опять же с внешними транзисторами и защитными диодами). На мой взгляд, они не обладают значительным преимуществом перед «готовыми» микросхемами и я их в данном проекте использовать не буду.
Контроллер шагового двигателя на микроконтроллере PIC18F2320
Данная схема представляет собой контроллер позволяющий управлять униполярным шаговым двигателем построенный на микроконтроллере PIC18F2320. Эта схема управления шаговым двигателем обеспечивает контроль при помощи сигналов DIR, STEP и ENABLE. Контроллер поддерживает режим удержания снижением тока фаз и режим микрошага.
Технические показатели устройства
- Регулировка ограничения тока фаз осуществляется аппаратным ШИМ.
- Состояние удержания если нет управляющего сигнала «STEP» свыше двух сек.
- Применение многофункциональных управляющих сигналов DIR, STEP, ENABLE.
- Функционирование в трех режимах «микрошаг», «полный шаг» и «полушаг».
- Максимальное номинально напряжение силовой части схемы не более 90 вольт.
Непосредственная регулировка тока фаз выполняется посредством подстроечных сопротивлений R7 и R8. Для переключения между режимами работы предназначены три перемычки (Jp1-Jp3). После преставления перемычек нужно выключить контроллер и повторно включить.
Работа контроллера проверялась на униполярном шаговом двигателе (1 Ом, 3 А), перегрева двигателя не было, его температура была в допустимых пределах. Однако для силовой части схемы очень желателен теплоотвод, размер которого зависит от потребляемой мощности шагового двигателя.
Проверялся контроллер от генератора сигналов и с помощью программы K-cam. В режиме шаг и полушаг предельная выходная частота сигнала «STEP» составляет 100 кГц, а в режиме микрошаг частота сигнала составляет 50 кГц. В ходе тестирования была получена максимальная частота вращения шагового двигателя около 1250 об/мин в режиме 1/4 шага.
Двухсторонняя печатная плата данного контроллера для управления шаговым двигателем спроектирована под ЛУТ. Мощные транзисторы VT1 — VT4 устанавливаются на печатную плату с нижней стороны (пластмассовой частью корпуса к плате) для того чтобы легко закрепить их к радиатору через теплопроводящие прокладки (слюдяные пластинки).
Операционный усилитель LM358 возможно заменить отечественным аналогом КР1040УД1. Питание схемы осуществляется от стабилизированного источника питания построенного на стабилизаторе 78l05, который можно заменить на КР1157ЕН5А. Транзисторы VT1…VT4: IRLZ44N – до 24 вольт, IRL540L – до 48 вольт, IRL640 – до 90 вольт. Микросхему 74HC08 можно заменить отечественной КР1564ЛН1.
При настройки необходимо выставить подстроечные сопротивления R7 и R8 в одинаковое положение, определив необходимое сопротивление отталкиваясь от нужного тока фазы: Rп = 56000 / ( 3,57 / ( 0,27 * I ) – 1)).
Скачать прошивку и печатную плату (1,6 Mb, скачано: 1 644)
www.robozone.su
Что такое шаговый двигатель?
Прежде чем перейти к статье, давайте сразу договоримся, что статья не направлена на специалистов, а её цель – донести любознательным любителям техники и технологий о таком устройстве, как шаговый двигатель и об основах работы с ними. Поэтому умников и критиков, жаждущих поговорить о великом многообразии управляемого и регулируемого электропривода, прошу идти общаться на тематические ресурсы по ЧПУ-станкам и 3D-принтерам.
Формулировка достаточно понятна, но её последнее предложение может вызвать некоторое недопонимание. Поэтому я предлагаю провести небольшое сравнение.
Всем известно что ротор «обычного» электродвигателя, будь то асинхронного, синхронного, коллекторного или любого другого будет вращаться до тех пор, пока на него подают напряжение питания, и после отключения питания он будет вращаться еще какое-то время по инерции, если же не используются какие-либо средства для его торможения.
Ротор такого двигателя вращается просто вокруг своей оси без каких-либо ограничений, на 360 градусов, и остановится он в любом месте. Зафиксировать его положением можно только механически (тормозом). По этой причине не получится добиться точного позиционирования исполнительных механизмов, что требуется в робототехнике, ЧПУ-станках и другом автоматизированном оборудовании.
Но шаговые двигатели разработаны для применения в механизмах, где детали поворачиваются точно на требуемый угол.
Питание такого двигателя невозможно без системы управления, или как его еще называют, драйвера — он подаёт импульсы в нужные обмотки, чтобы повернуть ротор на нужный угол. Это наглядно иллюстрирует приведенная ниже анимация.
Кроме того, что можно поворачивать двигатель на определенный угол и фиксировать его в этом положении, делать это всё можно без схемы обратной связи (датчиков положения и прочего).
Рассматривать типы шаговых двигателей в пределах этой статьи мы не будем, лишь кратко перечислим, какими они бывают. По конструкции:
2. С постоянными магнитами.
По способу питания:
- Униполярные (однополярные — ток пропускают через обмотки только в одну сторону).
- Биполярные (ток пропускают через обмотки в обе стороны). Здесь драйвер должен подавать напряжение различной полярности, что несколько усложняет схемотехнику. При тех же размерах развивают бОльшую мощность по сравнению с униполярными.
В униполярном двигателе зачастую 5 проводов — 1 общий, от середины каждой из двух обмоток, и 4 от концов обмоток. Иногда говорят «4 обмотки» — это также правильно, поскольку фактически мы получаем 4 обмотки соединенных в общей точки.
Также ШД могут отличаться и по количеству проводов, это зависит от того, как соединены обмотки и какое питание предполагается, некоторые варианты вы видите в таблице ниже.
Управление шаговым двигателем
Различают два способа управления шаговым двигателем:
1. Полношаговое
. Одновременно включается только пара обмоток (без перекрытия с другими). Достигается максимальный момент на валу, но точность установления угла меньше, чем в других способах.
2. Полушаговое
. В этом случае увеличивается количество шагов, соответственно повышается точность установки положения вала. На каждый первый шаг включается одна обмотка, на каждый второй шагами (полушаг) – пара обмоток. Но когда включена одна обмотка момент на валу снижается вдвое.
На анимациях ниже наглядно продемонстрировано
В некоторых источниках отдельно обозначают микрошаговое управление. Используется, когда необходимо максимальное количество шагов и точность управления. По способу управления оно похоже на полушаговый режим, между шагами включаются две обмотки, а отличие в том, что токи в них распределяются не равномерно. Главный недостаток такого подхода — усложняется коммутация (система управления).
Типы электродвигателей, способы управления и возникающие сложности
Впервые созданный в 1834 году русским ученым Якоби преобразователь электрической энергии во вращательное движение получил название электродвигатель. С тех пор он был серьезно усовершенствован – появилось множество новых вариантов, но использованные при его создании принципы электромагнетизма по-прежнему являются основой всех модификаций современных электродвигателей.
Проводник с проходящим по нему током (рисунок 1) создает вокруг себя магнитное поле, интенсивность (магнитная индукция) которого пропорциональна количеству витков, в случае использования катушки (N), и величине проходящего по ней тока (I), где, В – вектор магнитной индукции, К – магнитная постоянная, N – число витков, I – сила тока.
Рис. 1. Электромагнетизм в основе работы электродвигателя
Изменение направления тока влияет и на направление магнитного поля проводника.
При этом на помещенный во внешнее магнитное поле проводник с током действует сила Лоренца, вызывающая его вращательное перемещение. Направление вращения легко определяется с помощью известного правила правой руки для проводника с током в магнитном поле (рисунок 2). Сила (F), действующая на проводник в магнитном поле, равна произведению силы тока (I) в проводнике на вектор магнитной индукции поля (B) и длину проводника (L). F = LIB.
Рис. 2. Перемещение проводника с током в магнитном поле (Сила Лоренца)
Технические характеристки контроллера шагового двигателя БУШ-4-50
Контроллер шагового двигателя БУШ-4-50
4-канальный контроллер шагового двигателя. Предназначен для управления гравировальными, фрезерными, токарными и т.п. станками с ЧПУ,
так же контроллер возможно применить и для других целей и задач.
Путь инструмента для контроллера можно расчитать в таких программах, как ArtCam, Delcam Power Mill и других
подобных программах.
Контроллер предназначен для управления униполярными шаговым двигателем со средним током каждой обмотки до 5 А и более
(по требованию заказчика). Контроллер можно использовать с шаговыми двигателями типа ДШИ-1-1, ДШИ-2-1, ДШИ-3-1, ДШР-57 и другими аналогичными двигателями.
Основные технические характеристики контроллера:
- Независимое управления по 4-ем осям
- Напряжение питания от 8 до 30 В
- Ток на каждой обмотки до 5 А
- Использовать двигатели можно 5,6 и 8 выводные
- Интерфейс для подключения к IBM PC: LPT
- Внешний соединитель: Phoenix Contact для двигателей и датчиков
- Корпус выполнен из алюминия, что позволяет достигнуть большой теплоотдачи при меньших габаритах 185 × 160 мм
- Диапазон рабочих температур: 0…+60°С
- Независимое одновременное управление четыремя шаговыми двигателями, при подключении второго контроллера к LPT2 можно управлять 8-ю шаговыми двигателями при помощи программы Mach2, Mach3
- Гальванически изолированные входы
- Независимая работа по четырем координатам или более зависит от применяемой программы.
- Ускорение/замедление: задается программно
- Выход для управления шпинделем (реле)
- Оптический выход для подключения систем охлаждения режущей области
- Датчики крайних положений: включаются в программе управления на каждую ось отдельно.
Программы работающие с контроллером
Управление контроллером осуществляется программами KCam4, Master5, Ninos, Mach2, Mach3,
Mach4, JalaCNC, Turbocnc и другими аналогичными программами.
Коллекторные двигатели
Коллекторные двигатели постоянного тока (Brushed DC или BDC, по терминологии TI) сегодня относятся к одним из наиболее распространенных механизмов электромагнитного вращения.
В магнитном поле собранного из постоянных магнитов статора вращается многосекционный ротор с катушками, которые попарно и попеременно подключаются через коммутируемые коллекторные ламели на оси ротора (рисунок 3). Выбор пары активируемых катушек выполняется на основании закона Лоренца в соответствии с правилом Буравчика. Источник тока всегда подключен к катушкам, силовые линии магнитного поля которых смещены на угол, близкий к 90°, относительно магнитного поля статора.
Рис. 3. Принцип действия коллекторного электродвигателя (BDC)
Электродвигатели подобного типа часто используют статор с постоянными магнитами. Они позволяют легко регулировать скорость вращения и отличаются невысокой стоимостью.
Также широко используется вариант 2-обмоточного электродвигателя подобного типа, но со статорной обмоткой вместо постоянного магнита. Такие модели обладают большим пусковым моментом и могут работать не только на постоянном, но и на переменном токе. Электродвигатели подобного типа почти повсеместно используются в различной бытовой технике.
К недостаткам этой конструкции BDC стоит отнести износ щеточно-коллекторного узла в процессе эксплуатации. Кроме того, из-за искрообразования при коммутации отдельных обмоток ротора отмечается повышенный уровень электромагнитных помех, что не позволяет использовать такие двигатели во взрывоопасных средах.
Особенностью двигателей BDC также является повышенный нагрев ротора, охлаждение которого затруднено в силу конструктивных особенностей двигателя.
Достоинства коллекторных двигателей:
- малая стоимость;
- простая система управления;
- 2-обмоточные коллекторные двигатели, обладающие высоким крутящим моментом и способные работать на постоянном и переменном токе.
Особенности эксплуатации коллекторных двигателей:
- щетки требуют периодического обслуживания, понижают надежность двигателя;
- в процессе коммутации возникают электрические искры и электромагнитные помехи;
- затруднен отвод тепла от перегревающегося ротора.
Настройка тока DRV8825.
Перед использованием мотора нужно сделать небольшую настройку, необходимо ограничить максимальную величину тока, протекающего через катушки шагового двигателя, и ограничить его превышение номинального тока двигателя, регулировка осуществляется с помощью небольшого потенциометра.
Для настройки необходимо рассчитать значение напряжения Vref.
Vref = Current Limit / 2
где,
Current Limit — номинальный ток двигателя.
Для примера рассмотрим двигатель NEMA 17 17HS4401 с током 1,7 А.
Vref = 1,7 / 2 = 0,85 В.
Осталось только настроить, берем отвертку и вольтметр, плюсовый щуп вольтметра устанавливаем на потенциометр, а щуп заземления на вывод GND и выставляем нужное значение.
Подключение драйвера шагового двигателя DRV8825 к Arduino UNO.
Подключим двигатель DRV8825 к Arduino UNO по схеме.
Для этого подключаем GND LOGIC к GND на Arduino. Контакты DIR и STEP подключим к цифровым контактам 2 и 3 на Arduino. Подключение шагового двигателя к контактам B2, B1, A2 и A1.
Предупреждение: Подключение или отключение шагового двигателя при включенном приводе может привести к его повреждению.
Затем необходимо подключить контакт RST к соседнему контакту SLP к 5В на Arduino, чтобы включить драйвер. А контакты выбора микрошага необходимо оставить не подключенными, чтобы работал режим полный микрошаг. Теперь осталось подключить питание двигателя к контактам VMOT и GND MOT, главное не забудьте подключить электролитический конденсатор на 100 мкФ к контактам питания двигателя. В противном случае, при скачке напряжения модуль может выйти из строя.
Скетч вращения шагового двигателя NEMA 17, драйвер DRV8825.
Как уже было упомянуто выше, драйвер DRV8825 заменим драйвером A4988, поэтому и код вращения двигателем можно взять из предыдущей статьи: Драйвер шагового двигателя A4988. Но для увеличения кругозора сегодня будем использовать код вращения двигателя nema 17 без использования библиотеки.
const int dirPin = 2; const int stepPin = 3; const int stepsPerRevolution = 200; void setup() { pinMode(stepPin, OUTPUT); pinMode(dirPin, OUTPUT); } void loop() { digitalWrite(dirPin, HIGH); // Установка вращения по часовой стрелки for(int x = 0; x > stepsPerRevolution; x++) { digitalWrite(stepPin, HIGH); delayMicroseconds(2000); digitalWrite(stepPin, LOW); delayMicroseconds(2000); } delay(1000); digitalWrite(dirPin, LOW); // Установка вращения против часовой стрелки for(int x = 0; x < stepsPerRevolution; x++) { digitalWrite(stepPin, HIGH); delayMicroseconds(1000); digitalWrite(stepPin, LOW); delayMicroseconds(1000); } delay(1000); }
Описание скетча:
Для работы данного скетча, не требуется никаких библиотек. Программа начинается с определения выводов Arduino, к которым подключены выводы STEP и DIR. Так же указываем stepsPerRevolution количество шагов на оборот.
В функции void setup() указываем управляющие контакты как выход.
В основной функции void loop(), вращаем двигатель по часовой стрелке, затем против, с разной скоростью.
Подробнее о подключении шаговых двигателей к Ardiono смотрите на сайте Ардуино технологии.
Для более простого подключения шагового двигателя к Arduino или другому микроконтроллеру существуют модули. Модули бывают разные, на фото ниже приведен пример двух различных модулей.
Распиновку и как подключать модуль драйвера DRV8825 будем рассматривать в следующей статье.
Использование драйвера DRV8825 с CNC shield v3.
Драйвер DRV8825 можно установить на CNC shield v3. CNC shield используются для управления ЧПУ станками и облегчают сборку электроники.
Данный набор позволяет без пайки собрать электронику для двух осевых, трех осевых, четырех осевых ЧПУ станков, а также для самостоятельной сборки 3D принтеров. При реализации ЧПУ станков данные шилды используются достаточно часто благодаря своей низкой цене и простоте сборки. Более подробно CNC shield v3 будем рассматривать в следующих статьях.
Вывод можно сделать следующий. Драйвер DRV8825 обладает рядом преимуществ перед драйвером A4988. А также, при использовании драйвера шагового двигателя DRV8825, меньше шума от шаговых двигателей. Это актуально при сборке лазерного гравера, 3D принтера. Когда при работе главный источник шума — это механика и гул шаговых двигателей.
Понравился статья Драйвер шагового двигателя DRV8825? Не забудь поделиться с друзьями в соц. сетях.
А также подписаться на наш канал на YouTube, вступить в группу , в группу на .
Спасибо за внимание!
Технологии начинаются с простого!
Фотографии к статье
Файлы для скачивания
Скачивая материал, я соглашаюсь с
Правилами скачивания и использования материалов.
drv8825-datasheet.pdf | 743 Kb | 329 | Скачать |
Драйверы TI для BDC
Для управления – коллекторными электродвигателями постоянного тока – предназначено специальное семейство драйверов DRV8x, ряд представителей которого изображен на рисунке 16. Они обеспечивает полную защиту от превышения напряжения и тока, короткого замыкания и перегрева. Благодаря возможностям интерфейса управления эти драйверы обеспечивают простую и эффективную эксплуатацию двигателей. Пользователи могут с помощью одного чипа управлять одним или несколькими двигателями c рабочим напряжением 1,8…60 В.
Рис. 16. Драйверы TI для управления коллекторными двигателями
Драйверы семейства выпускаются как с интегрированными силовыми ключами, так и как предварительные драйверы. Они требуют минимум дополнительных компонентов, обеспечивают компактность решений, сокращают время разработки и позволяют быстрее выпустить новые продукты на рынок.
Спящий режим (Sleep) позволяет минимизировать потребление энергии в режиме простоя и обеспечивает ускоренную активизацию при запуске двигателя. Для управления скоростью вращения могут использоваться внешние сигналы ШИМ или сигналы PHASE/ENABLE для выбора направления вращения и включения ключей выходного моста.
Имеющий четыре выходных моста драйвер DRV8823 способен управлять двумя ШД или одним ШД и двумя BDC, или же четырьмя BDC, используя при этом управляющий интерфейс SPI.
На рисунке 17 представлена функциональная схема простого драйвера DRV8837 для управления одним коллекторным двигателем.
Рис. 17. Блок-схема драйвера DRV8837
Что такое шаговый двигатель?
Прежде чем перейти к статье, давайте сразу договоримся, что статья не направлена на специалистов, а её цель – донести любознательным любителям техники и технологий о таком устройстве, как шаговый двигатель и об основах работы с ними. Поэтому умников и критиков, жаждущих поговорить о великом многообразии управляемого и регулируемого электропривода, прошу идти общаться на тематические ресурсы по ЧПУ-станкам и 3D-принтерам.
Итак, для начала сформулируем определение. Согласно Википедии: «Шаговый электродвигатель — синхронный бесщёточный электродвигатель с несколькими обмотками, в котором ток, подаваемый в одну из обмоток статора, вызывает фиксацию ротора. Последовательная активация обмоток двигателя вызывает дискретные угловые перемещения (шаги) ротора».
Формулировка достаточно понятна, но её последнее предложение может вызвать некоторое недопонимание. Поэтому я предлагаю провести небольшое сравнение.
Всем известно что ротор «обычного» электродвигателя, будь то асинхронного, синхронного, коллекторного или любого другого будет вращаться до тех пор, пока на него подают напряжение питания, и после отключения питания он будет вращаться еще какое-то время по инерции, если же не используются какие-либо средства для его торможения.
Ротор такого двигателя вращается просто вокруг своей оси без каких-либо ограничений, на 360 градусов, и остановится он в любом месте. Зафиксировать его положением можно только механически (тормозом). По этой причине не получится добиться точного позиционирования исполнительных механизмов, что требуется в робототехнике, ЧПУ-станках и другом автоматизированном оборудовании.
Но шаговые двигатели разработаны для применения в механизмах, где детали поворачиваются точно на требуемый угол.
В приведенном выше определении было сказано «…вызывает дискретные угловые перемещения (шаги) ротора…» — это значит, что ротор шагового двигателя не вращается в обычном понимании, а поворачивается на какой-то определенный, «дискретный» угол. Этот угол называется шагом, отсюда и название «шаговый двигатель». Мне нравится еще одно название этих устройств — «двигатель с конечным числом положений ротора».
Питание такого двигателя невозможно без системы управления, или как его еще называют, драйвера — он подаёт импульсы в нужные обмотки, чтобы повернуть ротор на нужный угол. Это наглядно иллюстрирует приведенная ниже анимация.
Кроме того, что можно поворачивать двигатель на определенный угол и фиксировать его в этом положении, делать это всё можно без схемы обратной связи (датчиков положения и прочего).
Рассматривать типы шаговых двигателей в пределах этой статьи мы не будем, лишь кратко перечислим, какими они бывают. По конструкции:
- Реактивные.
- С постоянными магнитами.
- Гибридные.
По способу питания:
- Униполярные (однополярные — ток пропускают через обмотки только в одну сторону).
- Биполярные (ток пропускают через обмотки в обе стороны). Здесь драйвер должен подавать напряжение различной полярности, что несколько усложняет схемотехнику. При тех же размерах развивают бОльшую мощность по сравнению с униполярными.
В униполярном двигателе зачастую 5 проводов — 1 общий, от середины каждой из двух обмоток, и 4 от концов обмоток. Иногда говорят «4 обмотки» – это также правильно, поскольку фактически мы получаем 4 обмотки соединенных в общей точки.
Также ШД могут отличаться и по количеству проводов, это зависит от того, как соединены обмотки и какое питание предполагается, некоторые варианты вы видите в таблице ниже.
Управление шаговым двигателем
Различают два способа управления шаговым двигателем:
- Полношаговое. Одновременно включается только пара обмоток (без перекрытия с другими). Достигается максимальный момент на валу, но точность установления угла меньше, чем в других способах.
- Полушаговое. В этом случае увеличивается количество шагов, соответственно повышается точность установки положения вала. На каждый первый шаг включается одна обмотка, на каждый второй шагами (полушаг) – пара обмоток. Но когда включена одна обмотка момент на валу снижается вдвое.
На анимациях ниже наглядно продемонстрировано
Полношаговое управление
Полушаговое управление
В некоторых источниках отдельно обозначают микрошаговое управление. Используется, когда необходимо максимальное количество шагов и точность управления. По способу управления оно похоже на полушаговый режим, между шагами включаются две обмотки, а отличие в том, что токи в них распределяются не равномерно. Главный недостаток такого подхода — усложняется коммутация (система управления).
Решения для управления электродвигателями от TI
Среди полупроводниковых компонентов, выпускаемых компанией TI, представлен обширный ассортимент различных драйверов для управления электродвигателями постоянного тока. Все они требуют минимума внешних компонентов, позволяют создавать компактные решения для управления двигателями с рабочим напряжением до 60 В, отличаются повышенной надежностью, обеспечивают быстрое и простое проектирование систем привода электродвигателями.
Встроенные в драйверы интеллектуальные функции требуют минимальной поддержки внешнего управляющего микроконтроллера (MCU), обеспечивают расширенные коммутационные возможности для обмоток, поддерживают внешние датчики и цифровые контуры управления. Комплекс защитных функций включает ограничение напряжения питания, защиту от превышения тока и короткого замыкания, понижения напряжения и повышения рабочей температуры.
Весь модельный ряд драйверов TI разбит на три раздела: шаговые, коллекторные и бесколлекторные двигателей постоянного тока. В каждом из них на сайте компании действует удобная система подбора по целому ряду параметров. Есть отдельные драйверы, предназначенные для использования с двигателями разных типов.