» » Контроллер униполярного шагового двигателя на базе PIC16F628 V2.1
Информация к новости
  • Просмотров: 123787
  • Автор: Sergey_r
  • Дата: 5 января 2009
  • 80
5 января 2009

Контроллер униполярного шагового двигателя на базе PIC16F628 V2.1

Категория: Домашнее ЧПУ (CNC)

Представляем краткое описание, схему и прошивку контроллера униполярного шагового двигателя на основе микроконтроллера PIC16F628A (доработанный вариант V2.0). Контроллер поддерживает управляющие сигналы STEP, DIR и ENABLE. Реализован режим удержания.

 

Особенности контроллера униполярного двигателя PIC BINAR CNC 2.1:

  • Аппаратная ШИМ регулировка ограничения тока фаз.
  • Аппаратная ШИМ регулировка ограничения тока фаз в режиме удержания.
  • Реализован режим “fixed time off”.
  • Больший диапазон тока фаз (проверен до 5А).
  • Использование универсальных управляющих сигналов STEP, DIR, ENABLE.
  • Работа в режимах «полный шаг», «полушаг» (FULL STEP/ HALF STEP).

Контроллер униполярного шагового двигателя на базе PIC16F628 V2.1

 

Регулировка тока фаз осуществляется с помощью подстроечного резистора R11.

Регулировка ограничения тока в режиме удержания осуществляется подстроечным резистором R9 и настраивается относительно рабочего тока. Программа контроллера переходит в режим «удержание» автоматически при отсутствии сигнала STEP – это снижает потребление энергии  и уменьшает нагрев двигателя.

 

Time off зависит от номиналов R15, C4 и R16, C5. Расчеты не приводим, т.к. на практике при указанных номиналах хороше работали все имеющиеся в наличии ШД. Ток изменяли в пределах 0.5 – 5 А. Нагрев полевых транзисторов практически отсутствовал (габариты радиатора 70 х 50 мм, высота ребер 15 мм). Т.к. защитные диоды в схеме не установлены, полевые транзисторы должны иметь как минимум двойной запас по напряжению.

 

Транзисторы Т1 и Т2 любые маломощные - 2SC945, 2N2222 и т.д. Диоды VD1 и VD2 - 1N4148.

 

Резисторы R25 и R26 рассчитываем в зависимости от требуемого тока. Падение напряжения на них должно находиться в пределах 0.2 – 0.8 вольта (R=U/I). Мощность выбираем соответственно (P=U*I или P=R*I*I).

 

Сигнал ENABLE управляется низким логическим уровнем. Включение и отключение режима работы сигнала ENABLE осуществляется перемычками JMP1 и JMP2. Так же перемычкой  JMP3 переключаются режимы работы «шаг» и «полушаг», при изменении режимов работы необходим перезапуск контроллера.

 

Схема контроллера в формате sPlan 6.0 и файл прошивки в формате *.hex вы можете скачать ниже:

Вы не можете скачивать файлы с нашего сервера

 

Прошивка для PIC16F628 (без буквы А) не тестировалась:

Вы не можете скачивать файлы с нашего сервера

Метки к статье: cnc, чпу, драйвер двигателя, контроллер шагового, шаговый двигатель, PIC16F628

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

26 февраля 2009 02:22

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
Сергей, я опять по поводу irlz44n, которые не хотят открываться от логических уровней. Цоколевку я не перепутал - вывод 2 +, вывод 3 -,
ну и 1- затвор. купил с дуру 20 шт. неужели все бракованные?
<
Артём

26 февраля 2009 20:35

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
swq25,
Номиналы R25-26 правильно подобрал? проверь
<
dizzyy

27 февраля 2009 20:54

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
Артём,
он же подавал +5 на затвор, резюки не причём
а правильно подключить вольтметр на полевик и замерять напряжение на нём(сток - исток) при открытом положении


как то страно звучал пост, почти с наездом - почему не открывается полевик, может к продавцу обратится почему даташиту не соответствуют, автор контролёра 100% не виноват
<
Артём

28 февраля 2009 19:10

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
dizzyy,
wink А лучше прямо производителю - Эй ты производитель почему твои транзюки, понимаш, не соответствуют!!?? am
<
oleg__79

8 марта 2009 14:30

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
Sergey_r, скажите пожалуйста у меня в наличии есть транзисторы IRL510, можно их использовать в данном контроллере?
<
Sergey_r

9 марта 2009 10:27

Информация к комментарию
  • Группа: Журналисты
  • ICQ: {icq}
  • Регистрация: 13.07.2008
  • Статус: Пользователь offline
  • Публикаций: 10
  • Комментариев: 181
oleg__79,
Смотря какой движок, если ампера на полтора, то можно.
<
dizzyy

10 марта 2009 20:39

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
народ подскажите по сигналу Enable, а именно когда идёт включение и выключение сигнала

<
Sergey_r

11 марта 2009 10:14

Информация к комментарию
  • Группа: Журналисты
  • ICQ: {icq}
  • Регистрация: 13.07.2008
  • Статус: Пользователь offline
  • Публикаций: 10
  • Комментариев: 181
Сигнал ENABLE в данной версии имеет следующую реализацию:
ессли стоит перемычка Jmp2 то при отсутствии сигнала STEP срабатывает режим "удержания", если стоит перемычка Jmp1 то при логическом 0 по входу ENABLE также срабатывает режим "удержания". Т.е. если нужно по сигалу ENABLE обесточить двигатель то резистор R9 надо выставить в 0-е сопротивление. Если перемычки Jmp1 и Jmp2 не установлены то в режим "удержания" перехода никогда не будет.
Сигнал STEP имеет приоритетное значение над сигналом ENABLE.
<
dizzyy

11 марта 2009 20:04

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
а в программах сигнал ENABLE каким то М-кодом включают или автоматом проги реализуют переключение состояния,
например в ккаме и в маче есть возможност задать ENABLE но как вывести в порт не понял
обясните незнающим request
<
oleg__79

15 марта 2009 00:21

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
Sergey_r
sobral kontroller i interfeysnuyu platu v 2.1, podklyucil ispolzoval kcam, relle srabatuvayut, a hagovik daje ne dergaetsa, podskajite pojaluysta kak proverit rabotosposobnost kontrollera otdelno. Na vuhodah tranzistorov zameril napryajenie, na vseh odnovremenno 5v.
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.