Sw-motors.ru

Автомобильный журнал
1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Тахометр на Ардуино и датчике Холла

Тахометр на Ардуино и датчике Холла

П ривет. В этой статье расскажу, как я сделал цифровой тахометр на Ардуино (Arduino) и датчике Холла для китайского шпинделя 0,5кВт диаметром 52 мм.

Комплектующие для сборки тахометра

Итак, тебе понадобятся:

  • датчик Холла из стартового набора ардуинщика KY-003
  • отладочная плата Arduino Nano v3
  • семи сегментный индикатор на драйвере ТМ1637
  • соединительные провода XH2.54 4pin и 3pin
  • 2-ух жильный экранированный провод
  • набор «Все для паяния»
  • набор «Всё для изготовления печатных плат»
  • установленная на компьютере Arduino IDE желательно версии 1.6.5

Детали тахометра на Ардуино

И установи библиотеку tm1637 в свою Arduino IDE. Как это сделать? Просто добавь папку из архива в папку куда установлена Arduino. Например С > Program Files (x86) > Arduino > Libraries

Библиотека TM1637 скачать

Схема подключения тахометра на Ардуино

Сборка тахометра не представляет особых трудностей. Просто собирай по схеме, заливай скетч и проверяй работоспособность. После включения на индикаторе должен появится 0, а при мелькании магнитом перед одной из сторон датчика должен загораться светодиод и на индикаторе изменяться показания. Если что-то не так — пиши в комментариях — разберемся.

Скетч для тахометра на Ардуино

Сборка тахометра

Итак, начнем по порядку:

Индикатор

При изготовлении тахометра мне хотелось, чтобы индикатор был аккуратно и красиво установлен в корпус блока управления станком. В качестве корпуса я использовал корпус-рамку от вышедшего из строя вольт/ампер метра. Плата индикатора TM1637 практически идеально подходила в этот корпус. Только нужно было обработать напильником — снять по 1 мм с каждой стороны.
Также заменил стандартные пины на разъем XH2.54 4 pin. Получилось практически как заводское изделие.

Индикатор тахометра TM1637

Плата датчика Холла

Для аккуратного крепления датчика Холла на шпиндель пришлось сделать новую печатную плату. Кому интересно как я делаю печатные платы читай в этой статье. После изготовления платы, я перенес все детали с KY-003, а так же добавил разъем XH2.54 3 pin. И еще вырезал изоляционную прокладку из какого-то пластика толщиной 3 мм и просверлил в ней небольшие отверстия, чтобы плата ложилась на прокладку всей плоскостью.

Печатная плата тахометра на Ардуино

Также на плате предусмотрено место под SMD конденсатор, для устранения помех от шпинделя. Но пока он мне не понадобился — экранированный кабель справляется со своей задачей.

Установка платы датчика Холла

Во-первых, для реализации тахометра, мне нужен был небольшой неодимовый магнит, который нужно было прикрепить на вал шпинделя. Перерыл все ящики — я ничего подходящего не нашел. Зато нашел старый, нерабочий cd-rom от ноутбука. Вот в нем, в катушке электромагнита открывания, как раз и нашел, то, что нужно — небольшой, прямоугольный неодимовый магнит!

Определив высоту и полярность, я приклеил магнит к валу на «суперклей» и обтянул вал с магнитом термоусадкой. На копус шпинделя приклеил прокладку, а уже на прокладку — плату. Как видите — получилось довольно аккуратно. Защитный колпачек в процессе обдумывания, так что, пока без него

Установка платы на шпиндель

Датчик Холла 3144 реагирует каждой своей стороной либо на северный, либо на южный полюс магнита, так что перед установкой магнита — определи его положение!

Как протянуть провода от датчика, я расскажу в статье посвященной прокладке кабелей, а пока небольшое видео о работе тахометра на Arduino Nano и индикаторе TM1637

На этом всё. Если понравилось — ставьте лайки, делитесь с друзьями в соцсетях и подписывайтесь на уведомления о новых статьях!

EQDrive Standard

Доступно для свободного повторения не в коммерческих целях!

Файлы
Описание

Блок управления EQDrive Standart, предназначен для автоматизации работы экваториальной монтировки.
Блок управления может работать практически с любой EQ монтировкой, управляемой шаговыми двигателями (ШД), поддерживает большой диапазон редукции осей, позволяет управлять монтировкой телескопа как автономно пультом, так и через астрономические программы с установленной платформой ASCOM6.х + EQMOD на Вашем персональном компьютере.

  • Электропитание: 12в 3А.
  • Тип ШД: Биполярный.
  • Напряжение питания драйверов ШД: 24в
  • Ток обмотки ШД: Регулируемый 0,1 — 0,8А.
  • Плавный разгон и торможение ШД: Регулируемый 0 — 10сек.
  • Коррекция нелинейности хода ШД: Есть.
  • Коэффициент редукции оси: Не ограничен. Рекомендуемый 1:1 — 1:2000.
  • Корпус изделия: Анод. алюминиевый 100мм х 75мм(90мм) х 35мм (Д х Ш х В)
  • Вес изделия: 230 грамм.

Все настройки EQDrive Standart производятся в программе EQDrive Config и сохраняются в энергонезависимой памяти.
Настройки под выбранную монтировку можно сохранить на PC в созданном для этого файле и в последствии считать и записать в eqdrive.
Всего одним блоком EQDrive вы можете управлять всем своим парком экваториальных монтировок.

Из схемотехнических особенностей в управлении использованы самые современные компоненты: 32-разрядный контроллер с тактовой частотой 72 мГц, четыре канала 12-бит ЦАП, современные драйвера шаговых двигателей, драйвера запитаны 24 вольтами от внутреннего преобразователя напряжения.
Как опция защита от переполюсовки входного напряжения, гальваническая развязка входов USB и Пульта(HC).
Контроллер с 32-битной архитектурой дал нам бонус скорости для отработки совершенно иного алгоритма управления ШД, нет шагов в классическом виде, все без шагово. Шаговый двигатель работает как синхронный мотор. Это дает нам точность перемещения, бесшумность, плавность разгона/торможения монтировки. Разгон/торможение присутствует на любых скоростях будь то изменение от 0..0,5х,
от 1х до 5х или от 1х до 800х.

Разъемы передней панели

На передней панели расположено четыре разъема, Power, HC, ACC, USB и индикатор состояния (светодиод).
Разъем Power для подачи постоянного напряжения питания, имеет защиту от переполюсовки (если Вы во время подключения EQDrive
к блоку питания ошибетесь полярностью подключения то нечего не произойдет, прибор не сгорит, EQDrive просто не включится).
Разъем НС (Hand Controller) для подключения пульта управления. Имеет гальваническую развязку от основной схемы блока упр.
Дополнительные функции, может работать как второй COM порт, через который можно управлять монтировкой также как и через порт USB.
На него вы можете к примеру подключить блютус модуль (НС-04, 05, 06) и управлять монтировкой удалено.
Разъем Accessories (ACC) (в данный момент в разработке).
1. Режим Auto Guide. Вход авто гида. Скорость гидирования настраивается отдельно на каждую ось.
2. Режим Пульта. Режим активизируется удержанием 1-3сек кнопки (RA+ & RA-) после включения устройства.
Разъем USB для подключения блока управления к компьютеру. Имеет гальваническую развязку от основной схемы блока упр.

Читать еще:  Что такое дефорсировать двигатель

Разъем Power
Разъем питания PC-2.1/5.5
Центральный контакт плюс.
Боковой контакт минус
Защита от переполюсовки: есть.

Разъем Hand Controller (HC)
1. +3,3v (100mA max.)
2. Rx.
3. Tx.
4. Gnd (масса)

Разъем Accessories (ACC).
В режиме Auto Guide
1. nc.
2. Gnd.
3. RA+
4. DEC+
5. DEC-
6. RA-
Скорость гидирования прописывается в флеш память устройства программой EQDriveConfig.

Пульт
1. RA-
2. Gnd.
3. DEC+
4. MODE
5. DEC-
6. RA+

Активация драйверов ЩД кнопки RA+ & RA- (подается напряжение питания на моторы).
Де активация драйвера ШД кнопки DEC+ & DEC- (снятие напряжения питания с моторов).
Звездная скорость кнопки MODE & RA- .
Лунная скорость кнопки MODE & DEC+.
Солнечная скорость кнопки MODE & RA+.
Стоп кнопки MODE & DEC-.
Переключение скорости наведения Low/High кнопка MODE.
1-но кратное нажатие кнопки MODE устанавливает 40 x или 1000 x
2-x кратное — 20x
3-x кратное — 10x
4-x кратное — 5x
5-ти кратное — 2.5x
6-ти кратное — 1.2x
7-ти кратное — 0.6x
8-ти кратное — 0.4x

Разъемы задней панели.

На задней панели расположено два 9-ти контактных разъема, для подключения шаговых двигателей.

Разъемы RA Motor, DEC Motor. (Winding Configurations)
1. Обмотка А1.
2. Обмотка А2.
3. nc.
4. Обмотка В1.
5. Обмотка В2.
6, 7, 8, 9. Масса (Gnd).

Список рекомендуемых моторов

(их аналог смотрим и подбираем самостоятельно).
SY42STH47-1206A (работают на токе 0,75А, коррекция cor1 0,07)
QSH4218-51-10-049 (работают на токе 0,6 — 0,75А)
42STH47-0806MA
42STH47-0406MA

ULN2003 драйвер нагрузок на 7 каналов, ULN2803 — на 8 каналов

Схема одного из каналов в микросхемах ULN2003A, ULQ2003A и ULN2003AI.

Каждый из семи каналов содержит по два биполярных транзистора, резистор 2,7 кОм ограничивающий базовый ток, и два резистора на 7,2 кОм и 3 кОм защищающие транзисторы от открывания обратным током коллектора. Кроме того к схеме добавлены три защитных диода: первый защищает вход от отрицательного напряжения, два других защищают выход от отрицательного напряжения и от превышения напряжения на транзисторах выше питающего.

Наличие защитных выходных диодов актуально при работе на индуктивную нагрузку: диод для шунтирования обмотки реле или обмотки шагового двигателя уже встроен в микросхему и не нужно устанавливать внешний диод. А при использовании 7 каналов – 7 внешних диодов.

Arduino, шаговый двигатель 28-BYJ48 и драйвер ULN2003

Шаговый двигатель — это мотор, который управляется несколькими электромагнитными катушками.
На центральном валу — роторе — расположены магниты. В зависимости от от того, есть ток на катушках, которые находятся вокруг вала, или нет, создаются магнитные поля, которые притягивают или отталкивают магниты на роторе. В результате вал шагового двигателя вращается.

Подобная конструкция позволяет реализовать очень точное управление углом поворота ротора шагового двигателя относительно катушек — статора. Можно выделить два основных типа шаговых моторов: униполярные и биполярные шаговые двигатели.

В данной статье мы рассмотрим работу униполярного шагового двигателя 28-BYJ48 с драйвером ULN2003.

Униполярные шаговые двигатели имеют пять или шесть контактов для подключения и четыре электромагнитные катушки в корпусе (если быть более точными, то две катушки, разделенные на четыре). Центральные контакты катушек соединены вместе и используются для подачи питания на двигатель. Эти шаговые моторы называются униполярными, потому-что питание всегда подается на один из этих полюсов.

Управление ULN2003

Входная часть сборок ULN2003A, ULN2003AI, ULQ2003A спроектирована так чтобы работать совместно с ТТЛ и 3,3 В и 5 В К-МОП логикой.

ULN2002A создана для p-МОП логики. Во входных цепях ULN2002A добавлен стабилитрон на 7 В и увеличено сопротивление базового резистора до 10,5 кОм, благодаря этому сборка может работать с входными напряжениями от 14 до 25 В.

Сборка ULN2004A, ULQ2004A предназначена для К-МОП логики с уровнем напряжений от 6 до 15В. По сравнению с ULN2003, у ULN2004 просто увеличено сопротивление базового резистора до 10,5 кОм.

Как можно видеть на структурной схеме, входы и выходы расположены напротив друг друга, что весьма удобно при разводке печатной платы.

ULN2003 выпускается как для объемного монтажа: PDIP, так и для поверхностного: SOIC, SOP и TSSOP.

Спецификация и драйвер шагового двигателя

Существуют разные модели драйверов (контроллеров) шаговых двигателей. Среди них можно выделить самые популярные в DIY разработках на базе Arduino: L293, ULN2003, A3967SLB.

Как правило, шаговый двигатель 28-BYJ48 используют в паре с драйвером ULN2003.

Спецификацию шагового двигателя 28-BYJ48 на английском языке вы можете скачать здесь. Краткие выдержки основных технических характеристик приведены ниже:

  • Напряжение питания: 5 В (постоянный ток);
  • Количество фаз: 4;
  • Количество шагов: 64;
  • Угол поврота на один шаг: 5.625 градуса
  • Частота: 100 Герц;
  • Частота холостого хода по часовой стрелке: > 600 Герц;
  • Частота холостого хода против часовой стрелки: > 1000 Герц;
  • Крутящий момент > 34.3 миллиньютон на метр;
  • Сопротивление вращению: 600-1200 грамм на сантиметр;
  • Класс элетробезопасности: A;

Внешний вид и схемы подключения ULN2003 приведены на изображениях ниже

Примечание. Если вы захотите использовать плату L293 вместо ULN2003, красный контакт подключать не надо.

Аналоги ULN2003

Разные зарубежные производители выпускают свои аналоги ULN2003: L203, MC1413, SG2003, TD62003. Так же есть и отечественный аналог: К1109КТ22.

8-ми канальный драйвер нагрузки ULN2803A, ULN2804A

Для работы с микроконтроллерами может быть более удобнымы 8-ми канальные драйверы. И у семиканальных ULN2003, ULN2004 есть их восьмиканальные братья ULN2803, ULN2804.

Точно также как и ULN2003 — ULN2803 рассчитан на управление от ТТЛ-логики и низковольной К-МОП, а ULN2804 от К-МОП питающейся в диапазоне 6 .. 15 В. Отличия ULN280X от ULN200X только в дополнительном канале и 18-выводном корпусе. У ULN2803А есть отечественный аналог: К1109КТ63.

Читать еще:  Давление в цилиндре двигателя тойота

Работа с шаговым мотором 28BYJ-48 и драйвером ULN2003

Сегодня вы узнаете о четырехфазном шаговом двигателе 28BYJ-48, работающим от постоянного напряжения 5 Вольт. Также существует его модификация на 12 Вольт. Двигатель потребляет значительный ток, а это значит, что мы не можем подключить его напрямую к выводам Arduino. Воспользуемся для этого драйвером двигателя на микросхеме ULN2003.

Технические параметры двигателя 28BYJ-48

  • Модель: 28BYJ-48
  • Тип двигателя: Униполярный
  • Напряжение питания: 5 Вольт, DC
  • Количество фаз: 4
  • Частота: 100 Гц
  • Сопротивление: 50Ω ± 7% (при 25 ℃)

Общие сведения о движке

4-х фазный шаговый двигатель 28BYJ-48 — это бесколлекторный двигатель, имеющий дискретное перемещение (вращение вала осуществляется шагами). На роторе (валу), расположен магнит, а вокруг него находятся катушки. Подавая поочередно ток на эти катушки, создается магнитное поле, которое отталкивает или притягивает магнитный вал, заставляя двигатель вращаться. Такая конструкция позволяет с большой точностью управлять валом, относительно катушек. Принципиальная схема четырехфазного шагового двигателя 28BYJ-48 приведена ниже.

Двигатель называется четырех фазным, из-за того, что в нем содержится две обмотки, которые, в свою очередь, разделены на четыре. (Это отражено на схеме выше). Центральные отводы катушек подключены вместе и служат для питания двигателя. Так как каждая обмотка подключена к питанию, такие двигатели называют униполярными. На роторе 28BYJ-48 расположено 8 магнитов, с чередующимися полюсами (то есть, четыре магнита с двумя полюсами).

На рисунке видно, что внутри расположен редуктор, с примерным передаточным числом в 1:64, если быть точнее 1:63,68395. Это значит, что двигатель за один оборот осуществляет 4075.7728395 шага. Данный двигатель поддерживает полушаговый режим и за один полный оборот может совершать 4076 шага, а точнее за 1° делает примерно 11,32 шага. (4076 / 360 = 11,32).

Режимы работы двигателя:

Чаще всего, при использовании шагового двигателя 28BYJ 48, используют два режима подключения.

  • Полушаговый режим — за 1 такт, ротор делает ½ шага.
  • Полношаговый режим — за 1 такт, ротор делает 1 шаг.

Ниже представлены таблицы последовательности тактов:

Модуль управления шаговым двигателем ULN2003:

Цифровой вывод микроконтроллера выдает ток до

40 мА, а одна обмотка 28BYJ-48 в пике потребляет

320 мА, то есть, если подключить двигатель напрямую, микроконтроллер сгорит. Для защиты был разработан модуль шагового двигателя ULN2003, в котором используется микросхема ULN2003A (состоящая из 7 ключей), которая позволяет управлять нагрузкой до 500 мА (один ключ). Данный модуль может работать с 5 Вольтовым и 12 Вольтовым двигателем 28BYJ-48. Для переключения необходимо установить или убрать перемычку (по умолчанию перемычка установлена на питание 5 Вольт).

С принципиальной схемой модуля ULN2003 можно ознакомиться на рисунке ниже

  • 1 — GND: «-» питание модуля
  • 2 — Vcc: «+» питание модуля (5В или 12В)
  • 3 — Vcc: «+» питание модуля (перемычка, только при 5В)
  • 4 — Vcc: «+» питание модуля (перемычка, только при 5В)

Подключение шагового двигателя к Ардуино

Подключение будет рассмотрено на примере униполярного двигателя 28BYj-48 и драйверов L298 и ULN2003. В качестве платы будет использоваться Arduino Uno.


Подключение шагового двигателя к Ардуино

Еще один вариант схемы с использованием L298:


Подключение шагового двигателя к Ардуино на базе L298

Схема подключения на базе ULN2003 изображена на рисунке ниже. Управляющие выходы с драйвера IN1-IN4 подключаются к любым цифровым контактам на Ардуино. В данном случае используются цифровые контакты 8-11. Питание подключается к 5В. Также для двигателя желательно использовать отдельный источник питания, чтобы не перегрелась плата Ардуино.


Подключение шагового двигателя к Ардуино

Принципиальная схема подключения.


Принципиальная схема подключения шагового двигателя

Еще одна схема подключения биполярного шагового двигателя Nema17 через драйвер L298 выглядит следующим образом.

Обзор основных моделей шаговых двигателей для ардуино

Nema 17 – биполярный шаговый двигатель, который чаще всего используется в 3D принтерах и ЧПУ станках. Серия 170хHSхххА мотора является универсальной.

Основные характеристики двигателя:

  • Угловой шаг 1,8°, то есть на 1 оборот приходится 200 шагов;
  • Двигатель – двухфазный;
  • Рабочие температуры от -20С до 85С;
  • Номинальный ток 1,7А;
  • Момент удержания 2,8 кг х см;
  • Оснащен фланцем 42 мм для легкого и качественного монтажа;
  • Высокий крутящий момент – 5,5 кг х см.

28BYJ-48 – униполярный шаговый двигатель. Используется в небольших проектах роботов, сервоприводных устройствах, радиоуправляемых приборах.

  • Номинальное питание – 5В;
  • 4-х фазный двигатель, 5 проводов;
  • Число шагов: 64;
  • Угол шага 5,625°;
  • Скорость вращения: 15 оборотов в секунду
  • Крутящий момент 450 г/сантиметр;
  • Сопротивление постоянного тока 50Ω ± 7% (25 ℃).

Описание библиотеки для работы с шаговым двигателем

В среде разработки Ардуино IDE существует стандартная библиотека Strepper.h для написания программ шаговых двигателей. Основные функции в этой библиотеке:

  • Stepper(количество шагов, номера контактов). Эта функция создает объект Stepper, которая соответствует подключенному к плате Ардуино двигателю. Аргумент – контакты на плате, к которым подключается двигатель, и количество шагов, которые совершаются для полного оборота вокруг своей оси. Информацию о количестве шагов можно посмотреть в документации к мотору. Вместо количества шагов может быть указан угол, который составляет один шаг. Для определения числа шагов, нужно разделить 360 градусов на это число.
  • Set Speed(long rpms) – функция, в которой указывается скорость вращения. Аргументом является положительное целое число, в котором указано количество оборотов в минуту. Задается после функции Step().
  • Step(Steps) –поворот на указанное количество шагов. Аргументом может быть либо положительное число – поворот двигателя по часовой стрелке, либо отрицательное – против часовой стрелки.

Шаговый двигатель – принцип работы

Шаговый двигатель – это мотор, перемещающий свой вал в зависимости от заданных в программе микроконтроллера шагов и направления. Подобные устройства чаще всего используются в робототехнике, принтерах, манипуляторах, различных станках и прочих электронных приборах. Большим преимуществом шаговых двигателей над двигателями постоянного вращения является обеспечение точного углового позиционирования ротора. Также в шаговых двигателях имеется возможность быстрого старта, остановки, реверса.

Шаговый двигатель обеспечивает вращения ротора на заданный угол при соответствующем управляющем сигнале. Благодаря этому можно контролировать положение узлов механизмов и выходить в заданную позицию. Работа двигателя осуществляется следующим образом – в центральном вале имеется ряд магнитов и несколько катушек. При подаче питания создается магнитное поле, которое воздействует на магниты и заставляет вал вращаться. Такие параметры как угол поворота (шаги), направление движения задаются в программе для микроконтроллера.

Читать еще:  Что такое заднее расположение двигателя

Упрощенные анимированные схемы работы шагового двигателя

Основные виды шаговых моторов:

  • Двигатели с переменными магнитами (применяются довольно редко);
  • Двигатели с постоянными магнитами;
  • Гибридные двигатели (более сложные в изготовлении, стоят дороже, но являются самым распространенным видом шаговых двигателей).

Шаговый двигатель биполярный схема подключения

Настройка драйверов TMC 2209, подключение по UART к robin nano

Datasheet на микросхему драйвера:

Описание модулей драйверов от BIGTREETECH:

Видео о работе шаговых двигателей:

Описание управления шаговым двигателем:

Есть две важных настройки драйвера: деление шагов и ток на моторы.

Этот параметр задает, сколько «шагов» сделает шаговый двигатель, на один импульс по линии STEP. Эти настройки задаются либо программно, если подключен интерфейс UART, либо в ручную установкой перемычек MS1 и MS2. В случае ручной установки, шаги задаются так:

На плате robin nano, эти перемычки находятся под драйвером. В данном случае, можно считать, что GND в таблице это снятая перемычка, а VCC_IO это установленная.

Значение по-умолчанию — 16 микрошагов. Т.е. для того, чтобы сделать 1 полный шаг шагового двигателя, нужно отправить 16 импульсов по линии STEP. Или, иначе говоря, если отправить 1 импульс по линии STEP, шаговый двигатель повернется на 1/16 шага. Учитывая количество шагов двигателя на 1 оборот и передаточное отношение привода, для FB4S, например, получается, что при делении шага 1/16, для перемещения по оси X на 1 мм нужно сделать 80 импульсов. Или, иначе говоря, на 1 импульс перемещение по оси X составит 0,0125мм.

Если увеличить значение делителя шагов, например до 64, то для перемещения на 1мм по оси X понадобится уже 320 импульсов по линии STEP. Таким образом, на один импульс, перемещение по оси X составит 0,003125 мм.

В ручном режиме максимальный ток, который будет выдавать драйвер на шаговый двигатель, устанавливается вращением переменного резистора на драйвере. Контролируется напряжение на выводе Vref. Формула для расчета:

Следует учитывать, что в формуле значение тока стоит RMS.

На практике, рекомендуемое значение Vref=1.2V соответствует току в 900мА (для драйверов от BIGTREETECH).

Управление драйвером по UART

Настраивать режим работы драйвера можно не только перемычками MS1 и MS2 и переменным резистором, но и программно. Драйвер использует однопроводную шину UART. Более того, на одну шину можно подключить до 4 драйверов одновременно. Схема из datasheet на драйвер:

В схеме показаны два варианта подключения: полноценный (read/write) слева и режим только записи справа (write only).

Для того, чтобы обращаться на одной линии к конкретному драйверу, существует возможность задать драйверу адрес.

Устанавливается адрес перемычками MS1 и MS2. Двумя битами можно выставить 4 разных комбинации, что соотвествует максимальному количеству драйверов на одной линии.

При управлении драйвером по UART есть возможность задавать ток двигателя и устанавливать делитель шагов. Делитель шагов, при установке программно, имеет следующие возможные значения: 1/1, 1/2, 1/4, 1/8, 1/16, 1/32, 1/64, 1/128, 1/256 (биты 24-27 регистра 0x6C).

Практическая реализация на плате robin nano

На плате robin nano не разведены дорожки для подключения драйверов по UART, поэтому подключить драйвера можно только проводами. На драйверах от BIGTREETECH ноги UART сделаны удлиненными, поэтому к ним можно подключиться при помощи обычных dupont проводов. Положение ноги UART на драйвере зависит от запаянной перемычки PDN и в состоянии по-умолчанию находится на 4-той ноге драйвера. Подробнее в руководстве на драйвер

На плате для управления драйверами можно использовать свободные ноги управления вторым экструдером. Перед разъемом для драйвера находится стандартный штырьковый разъем с линиями En, Step, Dir.

Для подключения драйверов используются ноги Step и Dir. Я пробовал подключать к одной ноге, без резистора на линию TX и все так же работало. В итоговом варианте, я сделал схему как рекомендует производитель драйвера — напрямую в RX и через резистор в TX. Провод для подключения (на белом проводе внутри термоусадки резистор на 1K):

Подключение на одну ногу:

В обоих случаях, при подключении только на ногу STEP и при подключении к STEP и DIR, драйвера работают в режиме read-write, управляется каждый драйвер индивидуально.

Для переключения драйверов в режим UART нужно снять перемычку MS3. Это довольно важный момент. Питание драйверов осуществляется от 5V, поэтому при установленной перемычке MS3, нога UART драйвера замкнута на линию 5V. Если подключить ногу UART драйвера к линии STEP и не убрать перемычку, на линию STEP попадет 5V, что может вызвать повреждение МК.

Адреса драйверов задаются перемычками MS1 и MS2. В данном случае, нумерация следующая: X — 0, Y — 1, Z — 2, E — 3.

В Marlin есть полная поддержка драйверов TMC 2209, включая задание адреса.

Установка типа драйвера (Marlin/Configuration.h):

Для работы по UART нужно задать ноги в Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO.h:

В данном случае, используются две ноги, как рекомендовано в datasheet. Если используется только одна нога, RX и TX pin нужно поставить одинаковыми.

Настройки адресов драйверов (Marlin/Configuration_adv.h):

Установка тока и делителя шагов (Marlin/Configuration_adv.h):

В данном случае для всех драйверов установлен ток в 800мА и деление 1/32.

Установка шагов для делителя 1/32 (Marlin/Configuration.h)

Режим работы драйвера (Marlin/Configuration_adv.h):

Для контроля за драйверами нужно включить (Marlin/Configuration_adv.h):

На этом настойка закончена. После прошивки важно сначала сделать Initialize eeprom.

Посмотреть состояние драйверов можно командой M122 S0. Если в выводе команды значение Driver registers не 00:00:00:00 или FF:FF:FF:FF, то связь с драйвером установлена.

Драйвера TMC 2208

У драйвера TMC2208 отсутствует возможность задать адрес. Поэтому для подключения этих драйверов не получится использовать всего 1 ногу. Их можно подключить используя как минимум 4 ноги. Если к плате не подключено никакого дополнительного оборудования, то можно использовать 3 свободных ноги второго экструдера (En, Step, Dir) и ногу PB2.

голоса
Рейтинг статьи
Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector