» » Микрошаговый контроллер шагового двигателя на базе PIC18F2320 V4.1
Информация к новости
  • Просмотров: 237200
  • Автор: Sergey_r
  • Дата: 7 января 2009
Изменил: administrator
Причина: Можно заказать в собранном и настроенном виде.
  • 100
7 января 2009

Микрошаговый контроллер шагового двигателя на базе PIC18F2320 V4.1

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

Контроллер униполярного шагового двигателя на основе микроконтроллера PIC18F2320. Контроллер поддерживает управляющие сигналы STEP, DIR и ENABLE. В контроллере реализован микрошаговый режим и режим удержания с понижением тока фаз.

Микрошаговый контроллер шагового двигателя на базе PIC18F2320 V4.1

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

  • Аппаратная ШИМ регулировка ограничения тока фаз

  • Режим удержания при отсутствии сигнала STEP более 2-х секунд (при указанных номиналах ~ 30% от номинала)

  • Реализован режим "fixed time off”.

  • Большой диапазон напряжения и тока фаз (зависит от силовой части контроллера)

  • Использование универсальных управляющих сигналов STEP, DIR, ENABLE.

  • Работа в режимах «полный шаг», «полушаг» и «микрошаг» (FULL STEP/ HALF STEP/MICRO STEP)

Микрошаговый контроллер шагового двигателя на базе PIC18F2320 V4.1

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

Перемычками Jmp1-Jmp3 на плате переключаются режимы работы «шаг», «полушаг» и «микрошаг»:

 

Режимы работы     Jmp1      Jmp2        Jmp3

1                                  off            off            off

1 m                              on             off            off

1/2                               off            on            off

1/2  m                          on             on            off

1/4                               off            off            on

Только в коммерческой версии прошивки:

1/8                               on             off            on

1/16                             off             on            on

1/32                             on              on            on

 

В режиме 1 m двигатель развивает большую мощность, чем в режиме 1.

Режим 1/2 имеет стандартную реализацию полушага.

Режим 1/2 m – с компенсацией момента на валу двигателя.

 

Режим удержания с понижением тока фаз будет работать при установленной перемычке «Удержание». Ток удержания зависит от номиналов R11 и R14, с уменьшением их номиналов уменьшится и ток удержания.

 

Любое изменение в конфигурации перемычек, требует перезапуск контроллера.

 

Контроллер тестировался с униполярным шаговым двигателем PL57H76-3.0-6 (1 Ом, 3 А),  нагрев двигателя был в пределах рабочего режима, нагрев контроллера минимальный (подаваемое напряжение 42 В, ток 2,7 А), но радиатор для силовой части крайне рекомендуется (габариты зависят от мощности двигателя). Максимальная частота следования сигнала STEP - 65 кГц. При тестах с выше указанными параметрами и двигателем получили максимальную скорость 1600 оборотов в минуту. В течении 10 минут (дальше просто двигатель рисковали перегреть) на данном двигателе тестировали при токе 5 А.

 

Печатная плата контроллера разведена в двухстороннем варианте под «ЛУТ». Силовые транзисторы T3 – T6 и стабилизатор VR1 монтируются на плату с нижней стороны печатной платы (пластиком к плате) для удобства крепления радиатора (как на фото). Изоляция транзисторов через теплопроводящие прокладки от радиатора ОБЯЗАТЕЛЬНА!!! Транзисторы не менее чем с двойным запасом по подаваемому напряжению на силовую часть.

Печатная плата контроллера

 

При использовании мощных ШД нужно уделить особое внимание блоку питания, он должен хорошо выдерживать импульсную нагрузку и иметь небольшие выходную индуктивность и сопротивление. Питание силовой части подают после того как подали напряжение 12 В. Если питание на силовую часть и на логику подаются одновременно, то необходимо установить резисторы с выводов 15 – 18 IC1 на массу, номиналом 10 – 47 кОм.

Так же стоит обратить внимание на то, что данная схема предполагает использование IC2 именно 74HC08, т.к. временные характеристики работы схемы имеют прямую зависимость от данного типа микросхемы. Эксперименты с другими типами полевых транзисторов тоже ни к чему хорошему не приведут.

 

РЕКОМЕНДАЦИИ ПО СБОРКЕ

Порядок монтажа, для удобства пайки со стороны деталей:

1.    Все резисторы кроме R2, R4, R27 и R28

2.    Все конденсаторы кроме C9, C10 и C12

3.    Диоды VD1 и VD2, все транзисторы

4.    Все микросхемы

5.    Стабилизатор VR1 и все разъемы

6.    Резисторы R2, R4, R27 и R28

7.    Конденсаторы C9, C10 и C12

 

НАСТРОЙКА

1.    До включения установить подстроечные резисторы R2 и R4 в одинаковое положение, рассчитав нужное сопротивление исходя из требуемого тока фазы: Rп = 27000 / ( 3,17 / ( R * I ) – 1 ))

      где R = R27 и R28, I = требуемый ток фазы. Формула под конкретные номиналы указанные в схеме!!!

2.    При наличии осциллографа проконтролировать напряжение и частоту на резисторах R27 и R28 в режиме 1 m, без сигнала STEP на входе и без перемычки «Удержание». При этом нас интересует только верхняя часть осциллограммы (выше ноля). Если напряжение отличается от расчетного значения (U = I*R), произвести подстройку резисторами R2 и R4. Частота ШИМ должна быть как минимум в два раза выше от максимальной частоты, которая будет подаваться по входу STEP. С выбором максимальной частоты ШИМ главное не переусердствовать, т.к. при частотах выше 200 кГц полевые транзисторы начинают ощутимо греться. Частота ШИМ зависит от индуктивности обмоток двигателя и номиналов R19, C5 и R20, C6 которые определяют время Toff.

Toff = - Ln(1 - Vm/Vp) * R * C    [Ln - это натуральный логарифм]

где:

Vm - пороговое напряжение срабатывания логической 1 по входу IC2

Vp - напряжение питания логики (в данном случае 5 вольт)

R - номинал R19, R20

C - номинал C5, C6

Т.е. к примеру Vm = 3,6 вольта и номиналы указанные в схеме: Toff = -Ln(1 - 3,6/5)*39000*0,00000000033 = 0,00001638 сек.

Время включенного состояния Ton в данном варианте можно регулировать только напряжением питания силовой части.

Хотя в большинстве случаев данное напряжение соответствует именно указанному в т.х. на ШД - source voltage.

Формы сигналов в контрольных точках схемы:

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

 

Схема контроллера в формате sPlan 6.0, разводка печатной платы под ЛУТ в формате Sprint-Layout 5.0 и файл прошивки в формате *.hex вы можете скачать ниже:

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

 

Прошивка для "некультурных" программаторов:

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

 

Вариант прошивки со следующими изменениями:

1. Введен контроль пропуска шагов, т.е. если частота сигнала STEP превысит скорость обработки шагов контроллером, при этом на 28-м выводе PIC контроллера устанавливается 1, далее, если установлена перемычка обозначенная на схеме как "Удержание", то дальнейшая работа блокируется и двигатель обесточивается, если нет, то работа продолжится, но на 28-м выводе логическая 1 так и останется.

2. Введен режим защиты от сбоев (к примеру по питанию), если по каким либо причинам контроллер глюканул, то через ~ 0,5 сек. контроллер обесточит двигатель и на 28-м выводе PIC контроллера с периодичностью 1 сек. будет поочередно устанавливаться 1, 0 и т.д. по циклу.

3. В данном варианте для того чтобы не использовать вариант с понижением тока в режиме "удержание" просто не впаиваем резисторы R11 и R14.

p.s. Удобно для контроля работы к 28-му выводу PICа подключить светодиод, который будет индицировать ошибку.

При включении контроллера на ~ 0,5 сек. на данном выводе устанавливается 1 и работа силовой части заблокирована (удобно для нормального старта импульсного БП), далее контроллер переходит в штатный режим работы.

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

Видео-ролик работы электронной части управления шаговыми двигателями. Деление шага 1/16, программа управления Mach3.

 

Печатная плата контроллера промышленного изготовления

 

P.S. Данная схема без особых проблем переделывается под мостовую, с использованием драйверов верхнего и нижнего плеча, например IR2101 (мостовой вариант вы делаете на свой страх и риск).

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

 
Полная версия прошивки (бывшая коммерческая) -  Вы не можете скачивать файлы с нашего сервера
Так как производства больше не будет  - пользуйтесь бесплатно  fellow  

 

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

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

28 июня 2009 17:22

Информация к комментарию
  • Группа: Журналисты
  • ICQ: {icq}
  • Регистрация: 13.07.2008
  • Статус: Пользователь offline
  • Публикаций: 10
  • Комментариев: 181
AlexUT4,
Да уж, движки ты конечно одни из самых хреновых выбрал, я думал действительно мощные ШД, поэтому такие рекомендации и привел. От них нормальной скорости и не добъешся, для этого они не предназначены, да и запитывать их надо вольт от 48 хотябы. От колебаний с такой индуктивностью никуда и не уйдешь. Лучше бы взял FL57STH56-3006 по всем параметрам бы выиграл, включая цену и габариты... А LM358 (в данном применении) вполне по частоте хватает.

p.s. Скорее всего в скором времени опубликуем мостовой драйвер, сейчас обкатываем. Элементная база останется практически та же, просто кое что добавится и печатка будет только под SMD. Твои движки с ней будут работать получше.
<
AlexUT4

28 июня 2009 21:10

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
Сергей, движок взял который был. Конечно, надо брать с наименьшей индуктивностью. Мощный он для меня, так как до этого крутил только маленькие от дисководов. Там для моих задач никаких хитростей с ШИМ и прочим не надо было. Теперь пришло время "повзрослеть".
Возникли вопросы:
1. С мостовой схемой можно будет включать униполярные ШД, так как у меня в основном всё униполярные за редким исключением. Конечно биполярные лучше, но приходится использовать то что есть.
2. Какие из современных UltraFast диодов можно применить? Нарыл у себя UF4007 только. Почти не греются. Хотелось бы СМД применить.
3. Пробовал включать советские шаговики из принтеров, ШДИ-200-2-1 вроде. Колебаний нет, но вращаются ещё хуже чем этот FL57STH. Скорость вообще невозможно поднять. Что это может быть?
4. В чём суть компенсации момента на валу?
5. Крутил под нагрузкой в режиме 1/4, заметил, что где то через каждые 4 шага двигатель как бы больше даёт импульс (сильнее дёргается). Это так и должно быть по теории микрошага или что-то неправильно работает?
6. Точно не проконтролировал, но возникло ощущение что на вашем контроллере после подачи сигнала включения ОЕ на обмотки не подаётся напряжение, пока не будет сделан шаг. Или это зависит от состояния сигнала STEP ?.
7. Можете дать ссылочки на литературу по теории и практике построения драйверов и систем управления ШД. Алгоритм в общих чертах понятен, но хотелось бы глубже разобраться.

С уважением, Александр.
<
Sergey_r

29 июня 2009 14:44

Информация к комментарию
  • Группа: Журналисты
  • ICQ: {icq}
  • Регистрация: 13.07.2008
  • Статус: Пользователь offline
  • Публикаций: 10
  • Комментариев: 181
AlexUT4,
1. Можно.
2. UF4007 для твоих ШД даже с запасом, про SMD подсказать не могу.
3. Для получения нормальной скорости нужно поднять напряжение питания ШД (12 вольт очень мало) и обеспечить плавный разгон.
4. Один из режимов 1/2 шага реализован по принципу микрошага.
5. Это зависит от конструктива ШД и разброса его параметров (точность позиционирования). В данном варианте ток в микрошаге изменяется по sin/cos. Плюс к этому паразитное влияние незадействованных обмоток, в идеале их надо закорачивать при отсутствии напряжения на них, но схема тогда по сложности сравнится с мостовой.
6. Это только в первой версии прошивки, мне так было удобнее. Прошей эту - drv_2320.rar
7. Журнал "Oсновы схемoтехники", №6-7/2001. Автор - Л.Pидико. Лучше этого описания не встречал.
<
zopuh

1 июля 2009 09:45

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
Как у Вас приобрести платы для шаговиков v 4.1? Мне нужны только платы детали я уже приобрел и сколько это будет стоить?
<
administrator

1 июля 2009 10:02

Информация к комментарию
  • Группа: Администраторы
  • ICQ: {icq}
  • Регистрация: 26.02.2008
  • Статус: Пользователь offline
  • Публикаций: 66
  • Комментариев: 747
zopuh, комплектации и цены расписаны в конце статьи. Платы продаются минимум с прошитым контроллером, отдельно не продаются.
<
zopuh

1 июля 2009 15:04

Информация к комментарию
  • Группа: Гости
  • ICQ: {icq}
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 0
То есть 950 рябчиков с доставкой. Акак их у Вас приобрести?
<
Тропик

2 июля 2009 01:25

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

2 июля 2009 08:41

Информация к комментарию
  • Группа: Журналисты
  • ICQ: {icq}
  • Регистрация: 13.07.2008
  • Статус: Пользователь offline
  • Публикаций: 10
  • Комментариев: 181
Тропик,
ШД с наименьшей индуктивностью обмоток. Например:
FL57STH51-3006A
FL57STH56-3006A
FL57STH76-3006A
<
zopuh

2 июля 2009 13:44

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

2 июля 2009 20:20

Информация к комментарию
  • Группа: Администраторы
  • ICQ: {icq}
  • Регистрация: 26.02.2008
  • Статус: Пользователь offline
  • Публикаций: 66
  • Комментариев: 747
zopuh, тебе в личные сообщения всю информацию скинули
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.