Биполярный контроллер шагового двигателя схема
Контроллер биполярного шагового двигателя
Теория.
Управление биполярным шаговым двигателем (4 выхода) осуществляется последовательным переключением обмоток через двойной H-мост (H-мост коммутирует необходимые токи, которые не может выдать микроконтроллер, и позволяет использовать напряжение, отличное от 5В). В зависимости от вида последовательности переключений, существуют несколько режимов работы ШД: полношаговый, полушаговый и микрошаговый.
Полношаговый режим обеспечивает номинальное кол-во шагов ШД на оборот и 90% момента двигателя. Полушаговый — двойное кол-во шагов от номинального и меньший момент, нежели чем в полношаговом режиме. Wave drive обеспечивает 50% момента и полное кол-во шагов; не реализован из-за ненадобности, но возможен на железе контроллера. Микрошаговый в данном контроллере не применяется, так что предлагаем читателям ознакомиться с документацией самостоятельно.
Описание.
Контроллер предназначен для управления одним биполярным шаговым двигателем. Основа схемы — микроконтроллер ATMega8 (или Mega48/88/168, главное чтобы был корпус TQFP32 и достаточно памяти для прошивки), обеспечивающий логику работы и двойной H-мост L293B(КР1128КТ3А), который обеспечивает коммутацию обмоток двигателя. Согласно документации L293B в схему включены 8 диодов 1N4001, чтобы защитить микросхему от выбросов обратного напряжения.
Цель создания контроллера — управление ШД для разных радаров или других устройств, не требующих большого момента. Если нужен большой момент (и ток), следует прикрепить к H-мосту радиатор, а лучше вообще переразвести плату и использовать L298. В качестве радиатора в штатном режиме выступают две области меди слева сверху и справа снизу.
Для напряжения питания 5В впаивается диод Шоттки (1N5820, можно заменить практически на любой), для других напряжений — регулятор напряжения 78L05. Напряжение электролитического конденсатора на входе (C8) должно быть больше напряжения питания! Иначе он быстро скончается.
В качестве сенсора нуля может применять оптопары с floppy-дисководов (с 3,5″ опробованы), оптопары с мышей или просто оптопары а также любые другие сенсоры, дающие логическую 1 на отметке о нулевом положении.
Подтягивающие резисторы (R7, R8, R10) припаиваются только если очень нужно. По умолчанию, их роль выполняют встроенные в МК.
Электрические характеристики.
Uп (напряжение питания) = 5В(6.7В-35В).
Iмакс. (максимальный потребляемый ток) = 1А.
Принципиальная схема.
Описание разъемов.
Примечание №1: везде, где у разъемов важен порядок пинов, первый пин отмечен круглой контактной площадкой.
Примечание №2: Для защиты от кривых рук неправильного включения рекомендуются разъемы с ключом (WF, например).
CONTROL Разъем управления.
- DIR — направление вращения двигателя. 0 — CW, 1 — CCW.
- ZERO — перевести двигатель в нулевое положение. До остановки двигатель движется в направлении DIR.
- ZERO_POS — выдаёт 1, когда двигатель находится в нулевом положении.
- STEP — по восходящему фронту сигнала происходит шаг двигателя.
PROGRAM SPI Интерфейс для программирования.
- GND.
- RESET.
- SCK.
- MISO.
- MOSI.
SENSOR Разъем сенсора нулевого положения.
- SENSOR — линия сенсора, 1 — соотв. нулевому положению.
- Vсс.
- GND.
POWER Питание. Плюс предусмотрительно помечен плюсом.
J1 Джампер полношагового/полушагового режима. Когда джампер установлен — полношаговый режим.
MOTOR 1 Разъем мотора. Относительно линий мотора замечены следующие виды подключений (относительно контактов двигателя): 1234 (шаговики с принтеров Epson) 1324 (c CDROMов). В зависимости от того, как воткнуть (1234 или 4321) меняется направления вращения. Если ШД дергается туда-сюда, не двигаясь, или дергается туда-сюда при движении, значит, мотор включен неправильно.
UART и PWM Пока не используются => распаивать их не надо. Вообще, через PWM и ближний пин разъема программатора можно вывести ШИМ или какой-то сигнал с waveform генератора МК (36КГц например), что полезно для создания радара на базе железа контроллера. UART тоже можно использовать. Но в прошивке этого нету, поэтому придется докодить самостоятельно.