Контроллер шагового двигателя

     

Принципиальная схема контроллера шагового двигателя.


Основой устройства (рис. 30) является микроконтроллер U1 типа AT90S2313 фирмы Atmel. Сигналы управления обмотками двигателя формируются на портах PB4 – PB7 программно. Для коммутации обмоток используются по два включенных параллельно полевых транзистора типа КП505А, всего 8 транзисторов (VT1 – VT8). Эти транзисторы имеют корпус TO-92 и могут коммутировать ток до 1.4А, сопротивление канала составляет около 0.3 ома. Для того, чтобы транзисторы оставались закрытыми во время действия сигнала «сброс» микроконтроллера (порты в это время находятся в высокоимпедансном состоянии), между затворами и истоками включены резисторы R11 – R14. Для ограничения тока перезарядки емкости затворов установлены резисторы R6 – R9. Данный контроллер не претендует на высокие скоростные характеристики, поэтому вполне устраивает медленный спад тока фаз, который обеспечивается шунтированием обмоток двигателя диодами VD2 – VD5. Для подключения шагового двигателя имеется 8-контактный разъем XP3, который позволяет подключить двигатель, имеющий два отдельных вывода от каждой обмотки (как, например, ДШИ-200). Для двигателей с внутренним соединением обмоток один или два общих контакта разъема останутся свободными.

Необходимо отметить, что контроллер может быть использован для управления двигателем с большим средним током фаз. Для этого только необходимо заменить транзисторы VT1 – VT8 и диоды VD2 – VD5 более мощными. Причем в этом случае параллельное включение транзисторов можно не использовать. Наиболее подходящими являются МОП-транзисторы, управляемые логическим уровнем. Например, это КП723Г, КП727В и другие.

Стабилизация тока осуществляется с помощью ШИМ, которая тоже реализована программно. Для этого используются два датчика тока R15 и R16. Сигналы, снятые с датчиков тока, через ФНЧ R17C8 и R18C9 поступают на входы компараторов U3A и U3B. ФНЧ предотвращают ложные срабатывания компараторов вследствие действия помех. На второй вход каждого компаратора должно быть подано опорное напряжение, которое и определяет пиковый ток в обмотках двигателя.
Это напряжение формируется микроконтроллером с помощью встроенного таймера, работающего в режиме 8-битной ШИМ. Для фильтрации сигнала ШИМ используется двухзвенный ФНЧ R19C10R22C11. Одновременно резисторы R19, R22 и R23 образуют делитель, который задает масштаб регулировки токов фаз. В данном случае максимальный пиковый ток, соответствующий коду 255, выбран 5.11А, что соответствует напряжению 0.511В на датчиках тока. Учитывая тот факт, что постоянная составляющая на выходе ШИМ меняется от 0 до 5В, необходимый коэффициент деления равен примерно 9.7. Выходы компараторов подключены к входам прерываний микроконтроллера INT0 и INT1.

Для управления работой двигателя имеются два логических входа: FWD (вперед) и REW (назад), подключенных к разъему XP1. При подаче НИЗКОГО логического уровня на один из этих входов, двигатель начинает вращаться на заданной минимальной скорости, постепенно разгоняется с заданным постоянным ускорением. Разгон завершается, когда двигатель достигает заданной рабочей скорости. Если подается команда изменения направления вращения, двигатель с тем же ускорением тормозится, затем реверсируется и снова разгоняется.

Кроме командных входов, имеются два входа для концевых выключателей, подключенных к разъему XP2. Концевой выключатель считается сработавшим, если на соответствующем входе присутствует НИЗКИЙ логический уровень. При этом вращение в данном направлении запрещено. При срабатывании концевого выключателя во время вращения двигателя он переходит к торможению с заданным ускорением, а затем останавливается.

Командные входы и входы концевых выключателей защищены от перенапряжений цепочками R1VD6, R2VD7, R3VD8 и R4VD9, состоящими из резистора и стабилитрона.

Питание микроконтроллера формируется с помощью микросхемы стабилизатора 78LR05, которая одновременно выполняет функции монитора питания. При понижении напряжения питания ниже установленного порога эта микросхема формирует для микроконтроллера сигнал «сброс». Питание на стабилизатор подается через диод VD1, который вместе с конденсатором C6 уменьшает пульсации, вызванные коммутациями относительно мощной нагрузки, которой является шаговый двигатель.


Питание на плату подается через 4-контактный разъем XP4, контакты которого задублированы.

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

Главной задачей программы является формирование импульсных последовательностей для 4-х обмоток двигателя. Поскольку для этих последовательностей временные соотношения являются критичными, формирование выполняется в обработчике прерывания таймера 0. Можно сказать, основную работу программа делает именно в этом обработчике. Блок-схема обработчика приведена на рис. 31.





Содержание раздела