Шаговый двигатель - это бесщеточный двигатель постоянного тока, который можно вращать на небольшие углы, эти углы называются ступенями. Обычно шаговый двигатель использует 200 шагов для полного вращения на 360 градусов, что означает его вращение на 1,8 градуса за шаг. Шаговый двигатель используется во многих устройствах, которым требуется точное вращательное движение, таких как роботы, антенны, жесткие диски и т. Д. Мы можем повернуть шаговый двигатель на любой конкретный угол, дав ему соответствующие инструкции.
Шаговые двигатели в основном бывают двух типов: униполярные и биполярные. Униполярный шаговый двигатель обычно имеет пять или шесть проводов, в которых четыре провода являются одним концом четырех катушек статора, а другой конец всех четырех катушек связан вместе, что представляет собой пятый провод, это называется общим проводом (общая точка). Обычно есть два общих провода, образованных путем соединения одного конца двух-двух катушек, как показано на рисунке ниже. Униполярный шаговый двигатель очень распространен и популярен из-за простоты использования.
В биполярном шаговом двигателе всего четыре провода выходят из двух наборов катушек, что означает, что нет общего провода.
Шаговый двигатель состоит из статора и вращателя. Статор представляет собой четыре катушки электромагнита, которые остаются неподвижными вокруг ротатора, а ротатор представляет собой постоянный магнит, который вращается. Каждый раз, когда катушки возбуждаются за счет подачи тока, создается электромагнитное поле, в результате чего вращается ротатор (постоянный магнит). Катушки должны быть запитаны в определенной последовательности, чтобы вращатель вращался. На основе этой «последовательности» мы можем разделить метод работы униполярного шагового двигателя на три режима: режим волнового привода, режим полного шага и режим полушагового привода.
Режим волнового привода: в этом режиме одна катушка запитывается за раз, все четыре катушки запитываются одна за другой. Он производит меньший крутящий момент по сравнению с режимом полного шага, но потребляет меньше энергии. Ниже приведена таблица для создания этого режима с использованием микроконтроллера. Это означает, что нам нужно последовательно передать логику 1 на катушки.
Шаги |
А |
B |
C |
D |
1 |
1 |
0 |
0 |
0 |
2 |
0 |
1 |
0 |
0 |
3 |
0 |
0 |
1 |
0 |
4 |
0 |
0 |
0 |
1 |
Режим полного привода: в этом режиме одновременно возбуждаются две катушки, создавая высокий крутящий момент. Потребляемая мощность выше. Нам нужно передать Logic 1 двум катушкам одновременно, затем следующим двум катушкам и так далее.
Шаги |
А |
B |
C |
D |
1 |
1 |
1 |
0 |
0 |
2 |
0 |
1 |
1 |
0 |
3 |
0 |
0 |
1 |
1 |
4 |
1 |
0 |
0 |
1 |
Режим Half Drive: в этом режиме поочередно запитываются одна и две катушки, это означает, что сначала подается питание на одну катушку, затем на две катушки, затем снова на одну катушку, затем снова на две и т. Это комбинация режима полного и волнового привода, используемая для увеличения углового вращения двигателя.
Шаги |
А |
B |
C |
D |
1 |
1 |
0 |
0 |
0 |
2 |
1 |
1 |
0 |
0 |
3 |
0 |
1 |
0 |
0 |
4 |
0 |
1 |
1 |
0 |
5 |
0 |
0 |
1 |
0 |
6 |
0 |
0 |
1 |
1 |
7 |
0 |
0 |
0 |
1 |
8 |
1 |
0 |
0 |
1 |
Подключение шагового двигателя к микроконтроллеру 8051
Взаимодействие с 8051 очень простое, нам просто нужно дать 0 и 1 четырем проводам шагового двигателя в соответствии с приведенными выше таблицами в зависимости от того, в каком режиме мы хотим запустить шаговый двигатель. Остальные два провода должны быть подключены к правильному источнику питания 12 В (в зависимости от шагового двигателя). Здесь мы использовали униполярный шаговый двигатель. Мы подключили четыре конца катушек к первым четырем контактам порта 2 8051 через ULN2003A.
8051 не обеспечивает достаточный ток для управления катушками, поэтому нам нужно использовать ИС драйвера тока ULN2003A. ULN2003A - это массив из семи пар транзисторов Дарлингтона NPN. Пара Дарлингтона построена путем соединения двух биполярных транзисторов для достижения высокого усиления тока. В ULN2003A 7 контактов являются входными контактами, 7 контактов - выходными контактами, два контакта предназначены для Vcc (источник питания) и заземления. Здесь мы используем четыре входных и четыре выходных контакта. Мы также можем использовать L293D IC вместо ULN2003A для усиления тока.
Вам нужно очень внимательно найти четыре провода катушки и два общих провода, иначе двигатель не будет вращаться. Узнать это можно, измерив сопротивление мультиметром, мультиметр не покажет никаких показаний между проводами двух фаз. Общий провод и два других провода в одной и той же фазе должны иметь одинаковое сопротивление, а две конечные точки двух катушек в одной и той же фазе будут иметь двойное сопротивление по сравнению с сопротивлением между общей точкой и одной конечной точкой.
Поиск проблемы
Если ваш двигатель не вращается ИЛИ не вибрирует, но не вращается, вы должны проверить следующий контрольный список:
- Сначала проверьте соединения цепи и код.
- Если схема и код в порядке, убедитесь, что шаговый двигатель получает надлежащее напряжение питания (обычно 12 В), в противном случае он просто вибрирует, но не вращается.
- Если с питанием все в порядке, проверьте четыре конечные точки катушки, которые подключены к ULN2003A. Сначала найдите две общие конечные точки и подключите их к 12 В, затем подключите оставшиеся четыре провода к ULN2003A и попробуйте все возможные комбинации, пока двигатель не запустится. Если вы не подключите их в правильном порядке, мотор просто будет вибрировать, а не вращаться.
Вот код для пошагового режима волны и пошагового режима полной волны, вы можете легко вычислить значение для PORT P2 для полуволнового режима.