Управление контроллерами шаговых двигателей и как запустить его посредством драйверов

Как управлять шаговым двигателем без контроллера

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

Все отдельные передвижения одинаковой величины, и вместе они формируют полный оборот (цикл). Поэтому, подсчитав их количество, можно без труда и с высокой точностью вычислить абсолютную позицию инструмента. Общее их число, кстати, зависит от ряда моментов: характер подключения, вид устройства, способ задания команд и другие факторы.

Общие сведения о шаговых двигателях

Речь идет о бесколлекторных агрегатах, роторы которого вращаются не плавно, а дискретно. В одном обороте ротора определенное количество шагов. Количество шагов всегда указано в тех.документах двигателя. К примеру, роторы шаговых движков за 1 полный шаг могут повернуться почти на 2 градуса Получается, что для поворота ротора на 360 градусов движок обязан совершить около 180 полных шагов.

Ограничение тока фаз

У большинства драйверов получается понизить напряжение фазы, которые протекает по обмотке оборудования. Чтобы выбрать напряжение фазы, нужно обязательно воспользоваться инструкцией к драйверу. В таблице всегда указывают действующие токи. Чем они выше, тем выше сила двигателя. Чрезмерное напряжение будет приводить к тому, что движок перегреется и сломается, слишком небольшой приведет к пропуску шагов или отсутствию стабильного вращения ротора. Если имеется потенциометр, то именно он выполняет ограничение тока по драйверам поворотным способом.

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

За что отвечают управляющие сигналы STEP, ENABLE и DIR:

  • вход драйверов DIR — предназначаются для того, чтобы выбрать направление вращения движка;
  • вход драйверов STEP — нужны для того, чтобы получить тактовые импульсы, а один импульс ротора движка будет поворачиваться на один микрошаг (работают либо по спаду импульса, либо по фронту), чем выше скорость вращения ротора, тем выше частота импульсов;
  • вход драйверов ENABLE — именно они разрешат работу двигателя (у большинства драйверов данные являются инверсными, а действие агрегата разрешается в том случае, если нет напряжения на входе. У некоторых двигателей не могут действовать драйвера, тогда его обмотка электрическим образом будет отключена и вал движка не удержится.

Прежде чем начнет движение вал, нужно разрешить работу движка и выбрать направление движения. затем выполняют движение подачи импульса. Все импульсы поворачивают ротор ровно на один микрошаг.

Микро шаги

У большинства драйверов получается делить полные шаги движка на микро шаги. Выбирают микро шаги согласно таблицы, указанной в инструкции к драйверам. В ней всегда указано, сколько микрошагов на полный шаг и каково количество тактов на полные обороты валов.

Когда для того, чтобы целый поворот ротора движка в ракурсе он повернулся на полный шаг, нужно 180 тактов, то при варианте четыре микрошага на 1 шаг понадобится уже 720 тактов. Следовательно, чем больше микрошагов в шагах, тем более точным и плавным будет поворот ротора шагового движка. А чтобы поддерживать ту же скорость, нужно не забывать учитывать частоты тактового импульса.

Распиновка драйвера A4988

Драйвер A4988 имеет всего 16 контактов, которые связывают его с внешним миром. Распиновка у A4988 следующая:

Давайте ознакомимся со всеми контактами по очереди.

Выводы питания

На самом деле A4988 требует подключения двух источников питания.

Подключение питания к A4988

VDD и GND используется для управления внутренней логической схемой. Напряжение питания должно находиться в пределах от 3 до 5,5 В.

Vmot и GND для обеспечения питания шагового двигателя. Тут напряжение в пределах от 8 до 35 В.

Согласно datasheet, для питания двигателя требуется соответствующий разделительный конденсатор рядом с платой, способный выдерживать ток 4 А.

Предупреждение:

Этот драйвер имеет на плате керамические конденсаторы с низким ESR , что делает его уязвимым для скачков напряжения. В некоторых случаях эти выбросы могут превышать 35 В (максимальное номинальное напряжение A4988), и это может потенциально необратимо повредить плату и даже двигатель.

Один из способов защитить драйвер от таких скачков — подключить электролитический конденсатор емкостью 100 мкФ (или как минимум 47 мкФ) к контактам источника питания двигателя.

Выводы выбора микрошага

Драйвер A4988 допускает использование режима микрошага. Это достигается за счет подачи питания на катушки с промежуточными уровнями тока.

Выводы выбора микрошага

Например, если вы решите управлять шаговым двигателем NEMA 17 с шагом 1,8 градуса (200 шагов на оборот) в режиме 1/4 шага, то двигатель будет выдавать 800 микрошагов на оборот.

Драйвер A4988 имеет три вывода селектора размера шага (разрешения), а именно: MS1, MS2 и MS3. Установив соответствующие логические уровни на эти контакты, мы можем настроить двигатели на одно из пяти ступенчатых разрешений.

Выводы выбора микрошага

По умолчанию эти три контакта подтянуты к земле внутренним резисторам. Если мы оставим эти выводы не подключенными, то двигатель будет работать в режиме полного шага.

Выводы управления

Драйвер A4988 имеет два управляющих входа, а именно: STEP и DIR.

Выводы управления A4988

STEP — управляет микрошагом мотора. Каждый высокий импульс, отправляемый на этот вывод, приводит двигатель в действие на количество микрошагов, заданное выводами Microstep Selection (MS1, MS2 и MS3). Чем быстрее импульсы, тем быстрее будет вращаться двигатель.

DIR — управляет направлением вращения двигателя. Если на него подать высокий уровень, то двигатель будет вращается по часовой стрелке, а если низкий — против часовой стрелки.

Если вы просто хотите, чтобы двигатель вращался только в одном направлении, то вы можете соединить вывод DIR непосредственно с VCC или GND соответственно.

Выводы STEP и DIR не подтянуты внутренними резисторами, поэтому вы не должны оставлять их не подключенными.

Выводы управления питанием A4988

A4988 имеет три различных вывода для управления состоянием питания, а именно. EN, RST и SLP.

Выводы управления питанием A4988

EN — вывод включения (0)/ выключения (1) драйвера A4988. По умолчанию на этом выводе установлен низкий уровень, поэтому драйвер всегда включен.

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

RST — при подаче сигнала низкого уровня все входные данные STEP игнорируются, до тех пор пока не будет установлен высокий уровень. Низкий уровень также сбрасывает драйвер, устанавливая внутренний транслятор в предопределенное состояние Home. Исходное состояние — это в основном начальное положение, с которого запускается двигатель, и оно различается в зависимости от разрешения микрошага.

Если вам не нужно использовать вывод RST, вы можете подключить его к соседнему контакту SLP / SLEEP, чтобы вывести его на высокий уровень и включить драйвер.

Выводы для подключения шагового двигателя

Выходные контакты: 1B, 1A, 2A и 2B.

выходные контакты

К этим выводам можно подключить любой биполярный шаговый двигатель с напряжением питания от 8 до 35 В.

Каждый выходной контакт модуля может обеспечить ток до 2 А. Однако величина тока, подаваемого на двигатель, зависит от источника питания системы, системы охлаждения и настройки ограничения тока.

Режимы функционирования шагового двигателя

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

Режим полного шага (Full Step Mode)

В этом режиме мы можем совершить полный оборот оси шагового двигателя (на 360°) с помощью минимального числа шагов. Но это приводит к меньшей инертности системы и вращение будет не очень гладким. Режим полного шага разделяют на следующие два режима: однофазный и двухфазный режим.

Внешний вид шагового двигателя и назначение его контактов

1. Однофазный режим. В этом режиме в каждый конкретный момент времени возбуждается (запитывается) только один контакт (фаза) шагового двигателя. Это позволяет совершить полный оборот за меньшее число шагов. Поскольку число шагов маленькое, то и потребление тока в этом режиме также очень низкое. В следующей таблице показана последовательность запитывания контактов (фаз) для 4-х фазного шагового двигателя.

Шаг Phase 1 (Blue) Phase 2 (Pink) Phase 3 (Yellow) Phase 4 (Orange)
1 1 0 0 0
2 0 1 0 0
3 0 0 1 0
4 0 0 0 1

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

Шаг Phase 1 (Blue) Phase 2 (Pink) Phase 3 (Yellow) Phase 4 (Orange)
1 1 1 0 0
2 0 1 1 0
3 0 0 1 1
4 1 0 0 1

Режим половины шага (Half Step Mode)

Этот режим является комбинацией рассмотренных однофазного и двухфазного режимов и позволяет объединить достоинства этих режимов.

В этом режиме для полного оборота двигателя нам уже необходимо совершить 8 шагов, а не 4 как в предыдущих рассмотренных режимах. В следующей таблице показана последовательность запитывания контактов (фаз) для 4-х фазного шагового двигателя для этого режима.

Шаг Phase 1 (Blue) Phase 2 (Pink) Phase 3 (Yellow) Phase 4 (Orange)
1 1 0 0 0
2 1 1 0 0
3 0 1 0 0
4 0 1 1 0
5 0 0 1 1
6 0 0 0 1
7 1 0 0 1
8 1 0 0 0

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

Более подробно об шаговых двигателях можно узнать из статьи про управление шаговым двигателем с помощью Arduino и потенциометра.

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

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

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

Преимущества применения шаговых двигателей

  • угол поворота ротора определяется числом импульсов, которые поданы на двигатель;
  • если обмотки запитаны, то двигатель в режиме остановки обеспечивает полный момент;
  • хорошие шаговые двигатели обеспечивают точность 3-5% от величины шага, при этом ошибка не накапливается от шага к шагу;
  • возможность быстрого старта/остановки/реверсирования;
  • высокая надежность, связанная с отсутствием щеток, срок службы шагового двигателя фактически определяется сроком службы подшипников;
  • однозначная зависимость положения от входных импульсов обеспечивает позиционирование без обратной связи;
  • возможность получения очень низких скоростей вращения для нагрузки, присоединенной непосредственно к валу двигателя без промежуточного редуктора;
  • может быть перекрыт довольно большой диапазон скоростей, скорость пропорциональна частоте входных импульсов.

Недостатки применения шаговых двигателей

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

Применение шаговых двигателей:

  • приводы осей координатных столов и манипуляторов;
  • системы линейного перемещения;
  • упаковочные и конвейерное оборудование;
  • оборудование для текстильного и пищевого производств;
  • полиграфическое оборудование;
  • устройство подачи, дозирования;
  • сварочные автоматы.

Принцип работы шагового двигателя

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

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

В данной работе описывается алгоритм управления шаговыми двигателями двухфазного (биполярного) и четырёхфазного (униполярного) типа с помощью модуля управления шаговым двигателем с интерфейсом CAN ZET 7160-S StepMotor-CAN или интерфейсом RS-485 ZET 7060-S StepMotor-485.

Биполярный (двухфазный) шаговый двигатель

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

Рис. 1 Внутренняя схема биполярного Ш.Д. Рис. 2 Схема выводов биполярного Ш.Д. Рис. 3 Схема подключения биполярного Ш.Д. к ZET7X60-S

Униполярный (четырёхфазный) шаговый двигатель

Четырёхфазный шаговый двигатель (униполярный шаговый двигатель) также имеет одну обмотку в каждой фазе, но от середины обмотки сделан отвод. Это позволяет изменять направление магнитного поля, создаваемого обмоткой, простым переключением половинок обмотки. При этом существенно упрощается схема драйвера. Драйвер должен иметь только 4 простых ключа. Таким образом, в униполярном двигателе используется другой способ изменения направления магнитного поля. Средние выводы обмоток могут быть объединены внутри двигателя, поэтому такой двигатель может иметь 5 или 6 выводов.

Рис. 4 Внутренняя схема униполярного Ш.Д. Рис. 5 Схема выводов униполярного Ш.Д. Рис. 6 Схема подключения униполярного Ш.Д. к ZET7X60-S

Режимы работы шагового двигателя

Существует несколько способов управления фазами шагового двигателя. Наиболее распространёнными из них являются полношаговый и полушаговый режим. Существуют также режимы управления с 1/4, 1/8, 1/16 шага. Но эти режимы нужны только для узкого круга задач, и они требуют значительного усложнения схемы микроконтроллера и алгоритма управления. Ниже приводится последовательность генерируемых импульсов для различных режимов работы шагового двигателя, на примере униполярного двигателя.

Рис. 7 Полношаговый режим, с 1-ой активной обмоткой на каждом шаге

Рис. 8 Полношаговый режим, с 2-мя активными обмотками на каждом шаге

Рис. 9 Полушаговый режим

Разгон и торможение шагового двигателя

Такой параметр шагового двигателя, как зависимость момента от скорости является важнейшим при выборе типа двигателя, выборе метода управления фазами и выборе схемы драйвера. При конструировании высокоскоростных драйверов шаговых двигателей нужно учитывать, что обмотки двигателя представляют собой индуктивность. Эта индуктивность определяет время нарастания и спада тока. Поэтому если к обмотке приложено напряжение прямоугольной формы, форма тока не будет прямоугольной. При низких скоростях (рис. 10а) время нарастания и спада тока не способно сильно повлиять на момент, однако на высоких скоростях момент падает. Связано это с тем, что на высоких скоростях ток в обмотках двигателя не успевает достигнуть номинального значения (рис. 10б).

Рис. 10 Зависимость тока в обмотках Ш.Д. от частоты

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

Управление шаговым двигателем с помощью модуля ZET7X60-S StepMotor

Перед началом работы с шаговым двигателем необходимо выставить необходимые параметеры на вкладке «Настройки»:

  • Частота опроса — частота, с которой будет обновляться информация в канале о количестве проделанных шагов;
  • Тип двигателя — тип двигателя, подключенного к модулю ZET 7X60-S StepMotor.

После этого с помощью вкладки «Управление» можно начинать управление шаговым двигателем.

  • Старт/Стоп — начать /остановить движение шагового двигателя;
  • Направление вращения — задаём направление вращения шагового двигателя, по или против часовой стрелки;
  • Кол-во шагов до остановки — количество шагов, которое проделает шаговый двигатель после запуска;
  • Время одного шага — скорость вращения шагового двигателя.

Во время выполнения команды, контроллер сообщает о количестве проделанных шагов на данный момент с частотой заданной в настройках (Настройки —> Частота опроса).

Рис. 13 Отображение количества проделанных шагов в программе ZETLAB «Многоканальный осциллограф»

Система управления шаговым двигателем с обратной связью

Система управления шаговым двигателем с обратной связью строится на базе модуля управления шаговым двигателем ZET 7060-S StepMotor-485 (ZET 7160-S StepMotor-CAN) и интеллектуального энкодера ZET 7060-E Encoder-485 (ZET 7160-E Encoder-CAN). Для подключения к системе ZETLAB

используется преобразователь интерфейса ZET 7070. Управление шаговым двигателем осуществляется подачей сигналов с модуля ZET7060-S StepMotor-485 (ZET 7160-S StepMotor-CAN). Контроль состоянием шагового двигателя осуществляется энкодером, сигнал с которого обрабатывается модулем ZET 7060-E Encoder-485 (ZET 7160-E Encoder-CAN). Обработка сигналов с интеллектуального энкодера и программное управление модулем ZET7060-S StepMotor-485 (ZET 7160-S StepMotor-CAN) осуществляется с помощью программного обеспечения
ZETLAB
.

Схема системы управления шаговым двигателем с обратной связью

Схема системы управления шаговым двигателем с обратной связью

Состав системы управления шаговым двигателем с обратной связью

Описание
Управляющий модуль ZET 7060-S StepMotor-485 или ZET 7160-S StepMotor-CAN Цифровой модуль управления шаговым двигателем с интерфейсом RS-485 или CAN.
Датчик углового перемещения Преобразование углового перемещения в последовательность электрических сигналов, содержащих информацию о величине и направлении этого перемещения. Диаметр корпуса 50 мм. Разрешающая способность до 320000 дискрет на оборот.
Измерительный модуль ZET 7060-E Encoder-485 или ZET 7160-E Encoder-CAN Преобразование сигнала с датчика в значения углового перемещения и передача этих данных по протоколу Modbus по интерфейсу RS-485 или CAN 2.0.
ZET 7070 RS-485↔USB или ZET 7174 CAN-USB Модуль передачи данных с измерительных модулей на ПК
MODBUS OPC Сервер Программа «Сервер данных интеллектуальных датчиков»
Кабели для подключения измерительных и управляющих модулей к ZET 7070 или ZET 7174
Программное обеспечение ZETLAB Программы для отображения результатов измерений интеллектуальных датчиков в численном и графическом виде на плоскости и в объеме.
SCADA ZETVIEW Графическая среда разработки приложений для автоматизации измерений

Adblock
detector