Аналоги реле Phoenix Contact, Finder, Omron, ABB, Schneider

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

Albert La

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

Шаговые двигатели были куплены в местном комиссионном магазине. Их достали из старых жестких дисков и принтеров и продавали отдельно. Как правило, с ними можно договориться о хорошей цене, те, что были использованы в схеме, обошлись примерно по $3 за штуку. Эти моторчики представляют собой униполярные шаговые двигатели. Это можно определить по количеству проводов, выходящих из моторчика. У нашего есть 6 выходящих проводов: 2 зеленых, 1 голубой, 1 желтый, 1 красный и 1 белый. В 4 фазном униполярном двигателе есть 2 катушки с отводом из центра и выводом для каждой фазы. Если все провода отличаются цветом или есть только 5 проводов, тогда вам понадобится омметр, чтобы отличить фазовые провода от центральных отводов. К счастью для меня 2 провода были одинакового цвета, следовательно, это центральные отводы. Другим плюсом было то, что провода были сгруппированы по три.

Есть много online литературы про шаговые двигатели и управление ими. Поиск в Google выдал схему, приведенную ниже. В ней использован PIC микроконтроллер для задания последовательности шагов, пары Дарлингтона TIP120 для схемы коммутации, и hex буфер 4050 для обеспечения логических уровней и защиты схемы. 
 

Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

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

Для своей первой схемы я использовал PIC 16F628A для тестирования шагового двигателя и исследования как быстро он может работать. А теперь отмечу для тех, кто сделал или собирается сделать низковольтный источник, у меня возникли проблемы с работой внутреннего генератора. Возможно, это особенность работы именно этого чипа или проблема в установке битов конфигурации. Но для тестовой схемы я использовал кварц на 4 МГц. Шаговый двигатель работал при подаче на каждую фазу определенной последовательности. Задержка между паузами определяет, как быстро поворачивается вал. Начиная с 50 мс задержки, я смог уменьшить ее до 3 мс для своего двигателя.

Произведя несколько быстрых вычислений:

На двигателе написано, что шаг равен 7.5 градуса. Из этого следует, что один полный оборот происходит за 48 шагов.
4 фазы/шаг x 3 мс/фазу x 48 шагов/оборот = 576 мс/оборот
Преобразуя в количество оборотов в секунду, получим грубо 1.736
1.736 оборотов/секунду x 60 секунд/минуту = 104.16 RPM (об/мин), неплохая скорость.
По спецификации питание двигателей должно быть 24 В, но я подключал к 13 В, т.к. у меня был источник только такого напряжения.

Исходный код

Скомпилированный hex файл
 

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



Вторая схема сделана на PIC 16F877A микроконтроллере. Он запускает 2 шаговых двигателя, осуществляя управление направлением и остановкой. У 16F877A больше I/O выводов, чем у 628A. Я смог добавить другой мотор, кнопки и светодиоды, не беспокоясь, что не хватит выводов. Убедитесь, что регистр ADCON1 установлен правильно (это касается любого PIC с АЦП), это хорошая практика, которая позволяет избежать большой головной боли в будущем.

Моторы настроены на независимое управление. Оба мотора работают от одного источника 13 В. Я не проверял еще ток, однако, если еще не появился дым, я уверен, что все будет хорошо.

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

Исходный код

Скомпилированный hex файл
 



Перевод: Павел Катлеров, по заказу РадиоЛоцман

На английском языке: Stepper Motor Controller

Электронные компоненты. Бесплатная доставка по России
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя