» » Контроллер униполярного шагового двигателя на базе PIC16F628 V2.1
Информация к новости
  • Просмотров: 119342
  • Автор: 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

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

21 февраля 2009 11:22

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

Во первых, а нафига мне вообще полушаг, если мой минимальный полный шаг получается 3 микрона, космических приборов делать я не собираюсь wink а в режиме полного шага, как мне кажется можно сделать так чтобы оставался включённым тот полевик на котором и закончился шаг
Внимание! У Вас нет прав для просмотра скрытого текста.


ЗЫ
Извиняюсь за ошибки редактирования текста feel
<
Sergey_r

21 февраля 2009 13:52

Информация к комментарию
  • Группа: Журналисты
  • ICQ: {icq}
  • Регистрация: 13.07.2008
  • Статус: Пользователь offline
  • Публикаций: 10
  • Комментариев: 181
Артём,
Да, сложно на разных языках разговаривать, дай свой номер телефона (в личку), отзвонюсь и все расскажу.
Ну и в догонку о выходах:
Режим 1/2 (полушаг):
A1 - H L
A2 - L L
B1 - H H
B2 - L L
к примеру так: первый шаг - 2 канала, второй шаг - 1 канал.

p.s. на данном сайте все схемы РАБОТАЮТ, не надо вносить своих изменений... Движки при эксперементах ты не спалил только потому что блок питания у тебя дохлый.
<
oleg__79

22 февраля 2009 00:00

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

22 февраля 2009 20:05

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

Sergey_r,
Может я чего не понимаю, но полушаг мне никчему и в полном шаге не плохо позиционирует, просто мне хотелось бы вникнуть в суть прошивки, простым, человеческим языком, но впрочем придётся и этот аспект изучать, но не сейчас а когда время будет, а сейчас пока я похоже пришёл к определённому решению, а точнее это так же мой, облегчённый вариант, но при 12 вольтах, движок греется не больше 60* и при этом развивает не плохую мощь, для работы хватает, к стати, Блок питания у меня довольно солидный, так что не надо;). На счёт работоспособности всех схем на данном сайте не сомневаюсь, возможно я в них вникну позже. А пока, спасибо за всё!
<
swq25

23 февраля 2009 10:57

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

23 февраля 2009 12:28

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

25 февраля 2009 07:06

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
При питании двигателя 12в падение напряжения на полевике составляет около 8в - в результате нагрев полевика. Может я что-то неправильно прочитал в даташите - управление логическим уровнем?
Степень открытия контролирую так : подключил нагрузку , подал 5в на затвор - на нагрузке 4в ,, подал 12в на затвор - на нагрузке больше 9в
а вот если на затвор подать больше 12в - тогда полевичок и ничинает нормально работать - падение напряжения на нем около 0,1в при 2а.
<
Sergey_r

25 февраля 2009 09:36

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

25 февраля 2009 11:20

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
Sergey_r
Сергей подскажите пожалуйста, я сравнил схемы конроллеров V2.1 и V2.0 заметил разницу включения 74НС08 (на схеме контролера V2.0 соеденены вместе выводы 2-5, 10-13 а на схеме V2.1 соеденены вместе выводы 2-4, 10-12). Так и должно быть, или это опечатка?
<
Sergey_r

25 февраля 2009 13:28

Информация к комментарию
  • Группа: Журналисты
  • ICQ: {icq}
  • Регистрация: 13.07.2008
  • Статус: Пользователь offline
  • Публикаций: 10
  • Комментариев: 181
oleg__79,
Ну так входы рвнозначные (1 и 2, 4 и 5, 9 и 10, 12 и 13), как удобней было рисовать, так и подключили.
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.