Контроллер И Драйвер Для Шагового Двигателя Своими Руками
Биполярный двигатель можно подключить к моему контроллеру. Но надо спец драйвера (силовая часть эл.
- Контроллер И Драйвер Для Шаговым Двигателем Своими Руками
- Контроллер И Драйвер Для Шаговых Двигателей Своими Руками
Схемы) я делал по этой схеме (см. Рис) но выявился один недостаток: с тм7 логический ноль равен 0.6в. (может мне такие микрухи попались?) и потому при ноле транзистры (973) не закрывались. И идет большая утечка. Надо еще добавлять 4 транзистора чтобы они полностью закрывали транзистры. Но у меня нет времени на эксперемены. Тем более что в электронике не очень шарю.
Sep 6, 2013 - В статье описывается step/dir контроллер униполярных шаговых двигателей. Ток двигателей - до 2А, индивидуально для каждой оси ( больше 2А не проверялось, схема позволяет); - питание. Она содержит ШИМ генератор, компаратор тока, RS триггер и драйвер полевого транзистора.
- » Двигатель своими руками. В качестве драйвера. Шагового двигателя.
- Драйвер шагового двигателя » Электрик Из серии 'станок с ЧПУ своими руками'. Как вариант - использовать расширитель портов для микроконтроллера и драйверы шаговых двигателей, или специальные драйверы шаговых двигателей с последовательным интерфейсом и адресацией.
Товариши электроники-кибернетики! Помогите доработать схему. Сразу предупрежу: будите испытывать включите в проге 'полный шаг'!!! В полу шаговом режиме сожгете транзистры (т.к. Получится что открыты два пчета = коротыш).
Давайте обсудим мою очередную ночную схему. К сожалению, мне не чем ее проверить, но кажется, она вполне работоспособна и именно для программы Романа. Смысл заключается в использовании типового драйвера для биполярных двигателей, микросхемы L298 и еще пары элементов 'ИЛИ' разрешающих работу правого или левого 'мостов' при наличии сигнала на одном из его входов. Обращаю вгнимание, что к выходам регистров входы драйвера и элементов ИЛИ должны подключатся именно как нарисовано на схеме.
Регистры ТМ7 или ТМ5 желательно оставить как есть. Я еще не думал как будет вести себя схема в полушаговом режиме, но по крайней мере - не сгорит. Отредактировано Трудоголик (2007-12-17 01:26:54).
Создавая, большинство на начальном этапе останавливается на выборе покупного (чаще всего — китайского) контроллера для шаговых двигателей, потому как это экономит время. Но уже после того, как станок готов и запущен, начинает закрадываться ощущение, что что-то не то Чего-то не хватает или что-то сделано не правильно, или не доделано Появляется некоторое недовольство, вопросы, связанные с точностью станка с ЧПУ. Люди начинают долго и мучительно читать форумы в поисках волшебного рецепта исцеления своего родного станочка от постоянного непопадания «в десятку» (имеются в виду десятые доли миллиметра, которые должен стабильно отрабатывать даже самый пластилиновый станок с ЧПУ, сделанный своими руками). Моя бабушка всегда говорит: «Где узко, там и рвется».
И так действительно происходит! Это же справедливо и для основы основ станка с ЧПУ — механизма линейного перемещения и электроники управления, а именно — контроллера шагового двигателя. О какой точности можно говорить, если человек поставил дешевый китайский контроллер, включил на нем микрошаг 1/8 или даже 1/16 и пытается выдавить из станка микронные перемещения? Я ничего не имею против китайских контроллеров.
У меня самого стоит сейчас самый дешевый китайский контроллер. Но его я брал осознанно, чтобы понять, чего мне не хватает в промышленном контроллере и что я хочу получить в итоге, создавая контроллер шагового двигателя своими руками.
Первое, что я хочу получить от своего контроллера шагового двигателя — это калиброванный микрошаг, который бы настраивался под конкретный экземпляр шагового двигателя. О нелинейности характеристик шаговых двигателей я уже писал в своей статье про. Если вам лень перейти по ссылке, то вкратце скажу, что в режиме микрошага вы посылаете двигателю команду повернуться на 1/8 шага (к примеру), а он поворачивается вообще не известно на сколько или вообще не поворачивается! Все это как раз из-за нелинейности характеристики шагового двигателя. Вот почему нельзя использовать микрошаговый режим в обычных китайских контроллерах для повышения точности (разрешающей способности) перемещений своего станка с ЧПУ! Кто-то, возможно, задастся вопросом — откуда берется эта нелинейность?
А все дело в том, что на самом деле шаговый двигатель вообще не предназначен для работы в режиме микрошага! Шаговый двигатель предназначен только для того, чтобы шагать — ать, два! Это мы — ЧПУшники от своей голытьбы решили привнести в мир цифрового двигателя (двигателя с конечными состояниями) немного аналоговости и придумали «микрошаг», в котором шаговый двигатель «зависает» в некотором промежуточном состоянии между двумя шагами. А производители контроллеров радостно подхватили эту фишку и преподносят микрошаг, как некий стандарт де-факто!
И впаривают свои контроллеры невдумчивым потребителям. Если вы — «счастливый» обладатель контроллера с микрошагом, то сказанное мной выше вы сможете сами очень легко проверить по методу лазерной калибровки, описанному мной выше в статье про калибровку шагового двигателя. Достаточно снять со станка шаговик, приделать к нему лазерную указку, включить в контроллере режим микрошага (хотя он, конечно же, у вас включен!) и подавать ему на вход импульсы STEP.
Можно прямо из Mach3 или LinuxCNC, выбрав самую минимальную подачу в ручном режиме или задавая микро-перемещения через G-коды. После каждого микрошага делайте отметки на листе бумаги, закрепленному на стене скотчем, в том месте, куда светит луч лазера. Уже после нескольких микрошагов, вы заметите, что между насечками получилось ну просто неприлично разное расстояние! Закончим на этом ругать производителей.
Они на самом деле ничего плохого не делают. Люди хотели микрошаг — люди его получили! Сосредоточимся лучше на том, чего на самом деле хотели получить конечные пользователи от своего контроллера шагового двигателя?
А хотели они получить не деление управляющего шаговыми двигателями сигнала на 8, на 16 и т.д., а деление угла поворота шагового двигателя на указанные делители! Но какое же для этого нужно подавать управляющее напряжение?
Отвечу однозначно — хрен его знает! Поясню Дело в том, что разные производители делают разные двигатели, применяют разные технологии с разным качеством и разной погрешностью. И получается так, что все шаговые двигатели разные! Даже в пределах одного типа и одной партии. Легла где-то в обмотке шагового двигателя проволочка слегка не на ту сторону — характеристика поменялась! У одного двигателя X витков, у другого двигателя X+Y витков в обмотке — опять характеристики разные. Ну и так далее — до фанатизма Именно поэтому микрошаг нужно настраивать под каждый конкретный двигатель, и это должно настраиваться в контроллере шагового двигателя!
Контроллер И Драйвер Для Шаговым Двигателем Своими Руками
И именно такой контроллер я сейчас и разрабатываю. Схема контроллера шаговых двигателей Схема моего контроллера будет очень проста. Силовыми элементами, непосредственно управляющими обмотками двигателя, будут являться ключевые MOSFET-транзисторы, подключенные в виде Н-моста.
Ключами будет управлять микроконтроллер. Никаких дорогостоящих микросхем-драйверов в моей схеме не будет. Вместо них будет парочка ферритовых колечек из сгоревших энергосберегающих ламп, которые отлично подходят для управления затворами MOSFET-транзисторов.
В общем, я стараюсь сделать контроллер шагового двигателя доступным для повторения в домашних условиях. Также одним из его достоинств будет являться высокая ремонтопригодность (например, если сгорит какой-либо MOSFET-транзистор в силовой части, то стоимость замены составит 20-30 рублей). Слева представлена схема управления затвором силового MOSFET-ключа моего контроллера шаговых двигателей. Как видно, управление затвором осуществляется через повышающий импульсный трансформатор на ферритовом кольце. Повышающий трансформатор нужен, чтобы силовой ключ полностью открывался от 5-тивольтового сигнала управления, поступающего с выхода микроконтроллера. Для полного гарантированного открытия силовым MOSFET-ам обычно требуется от 10 вольт (более детально характеристику MOSFET-а можно посмотреть на графиках в его datasheet). Особенность такого включения заключается в том, что емкость затвора MOSFET используется в режиме памяти, т.е.
При прохождении открывающего импульса через диод D1, транзистор будет открыт сколь угодно долго до тех пор, пока его не закроет открывшийся транзистор Q2, разрядив емкость затвора на «землю». Благодаря такой схеме при управлении ШИМ-сигналом (PWM) удается получить до 100% глубины модуляции (в англоязычных источниках — duty circle или «цикл загрузки»). В стандартной же схеме включения трансформатора затвора (GDT — gate drive transformer), когда положительный импульс открывает MOSFET, а следующий за ним отрицательный импульс восстановления разряжает емкость затвора, удается получить лишь менее 50% периода ШИМ-сигнала.
Программа управления шаговым двигателем Программа управления шаговым двигателем может быть условно разделена на несколько взаимосвязанных функциональных блоков. Подробнее об этих блоках и о их работе я постараюсь написать в ближайшее время.
Следите за обновлениями — проект находится в активной разработке Written By:. Ну да, «подрубил» в смысле отрубил половину моста. Инструкция настройки kerio mailserver.
Как только я понял, что мне паять 3 таких платы мозг сразу стал думать как бы схему упростить. Громыхание шаговиков у меня несоизмеримо со сверлящим мотором да и самим процессом сверления. Из-за этого и приостановил «проект», соседи по батарее стучат, зла на них не хватает)) Есть вероятность что может в ближайшее время что-то поменяется в жилищных условиях, посмотрим. Между силовым блоком и портом у меня ещё плата разводки на дешифраторах, питание 5 вольт. Ибо линий у порта 8, а у 3-х силовых блоков — 12. Поэтому на оптопары забил.,Одна микруха на этой плате уже горела, вытащил её из разъёма, вставил новую)) Они дешёвые. Лучше бы подсказали, где ошибка!
Эта же схема начального уровня. Она вполне имеет право на жизнь, особенно если движки не ставить амперные. Ну, поставят радиаторы побольше! Есть даже микросхема L298 с двумя мостами на биполярниках — я как раз первые драйвера для шаговиков на ней собирал. Да — яичницу пожарить реально можно Я сам только относительно недавно начал с MOSFET-ами играться, а до этого даже боялся к ним притрагиваться — внушили в детстве на кружке радиотехники, что полевики выбивает от любого чиха и паять их можно только 10-ваттным паяльником, привязав себя заземлением к батарее и надев шапочку из фольги. Теперь-то, конечно, полевики уже не те.
Хы, по порядку. Сия схема у меня не греется. Транзистор всего импульс отправляет шаговику, потом отдыхает до следующего.
Винтовая передача такой подход позволяет использовать. Как и автор только недавно попробовал полевики. Разница конечно ощутима — проще управляются, нет гемора с подбором резисторов, мощность выше. Но вот последняя моя схема h-моста получилась не идеальной. Работает, но мощность утекает, транзисторы сильно греются, движок постоянного тока вращает слабее чем хотелось. Такое впечатление, что во время работы через выключенное плечо протекает ток. Всерьёз разбираться в чём дело я пока не лез, но если кто-то сходу скажет в чём проблема, это будет замечательно.зы: Автор блога, ты не подумай, я картинки с именем сайта не пиара ради постчу.
Просто они у меня там все удобно лежат, оттуда и копирую. Как-то лет 6 назад я читал статью с использованием импульсных трансформаторов в подобном управлении мосфетом. Я помню, что там использовалось последовательное включение полевиков и микромощьные импульсные трансы. Схема отличается немного, но сути не меняет — заряд затвора очень коротким импульсом и разряд через Q1, а ключевое состояие поддерживается только ёмкостью затвора. Суть работы схемы — в достаточно высокочастотном диапазоне. Ни где не встречал реализацию подобной схемы в жизни.
Сложность реализации этой схемы — в управляющих импульсах на транс. Ни один мне известный ШИМ контроллер не обеспечит реализацию управдления данным методом. Вам придется использовать микроконтроллер для реализации данного процесса с собственной программой управления.
Еще — один очень существенный бок схемы — затвор полевика находится в подвешенном состоянии при отсутствии закрывающих импульсов. А это точно не айс. Будет интересно увидеть реализацию вопроса в вашем варианте. И если не трудно, киньте ссылку на статью, будет интересно еще раз прочесть.
Я как раз и ориентируюсь исключительно на микроконтроллер, т.к. Я больше программист, чем схемотехник Но непонятно, почему обычный ШИМ-контроллер не справится?
Я с микроконтроллера загоняю на GDT тот же стандартный ШИМ: передний фронт дает прямой импульс, задний фронт дает обратный импульс закрытия на Q2. И с подвешенным состоянием затвора я пока не знаю, как бороться Прям хоть резистор на землю через реле ставить Может кто подскажет Хотя при работе схемы последним импульсом обязательно должен быть импульс закрытия, даже если отключить питание, т.к. Трансформатор в любом случае должен восстановиться. А вот насчет частоты работы — у меня, напротив, получается, что частота ШИМ должна быть всего 1-2кГц. Только так удается получить широкий и плавный диапазон регулировки. Когда поднимаешь ШИМ до десятков килогерц, то длительность импульсов в трансформаторе становится сравнима с самим периодом ШИМ, и уже вся схема с «памятью» практически превращается в обычный GDT с duty circle близким к 50%. По сути всё зависит от ёмкости затвора, но уверен — ёмкости силового хватит и для работы на 50 гц.
Если поставить в затвор резистор — тогда теряется весь смысл замысла. Хотя, если время разряда будет больше, чем длина импульсов на рабочей частоте- возможно из этого что-то и выйдет. Транс должен работать в режиме насыщения и обеспечивать очень короткий и мощный импульс для зарядки затвора, а соответственно и выходной драйвер, обеспечивающий этот ток в несколько ампер, ка минимум. На мой взгляд заманчивая простота схемы на самом деле не оправдает себя по итогу, т.к. На самом деле не всё так просто и вся обвязка по итогу сведет простоту на нет. Цель очень простая, и об этом я написал в самой статье — сделать драйвер с калиброванным микрошагом, которого не делает пока ни один производитель (или я об этом просто не знаю).
Ну и вторая цель — действительно научиться управлять десятками ампер. А спектр решаемых задач тут действительно широк, особенно в производственных приложениях. Взять хотя бы мою недоделанную водородную горелку (на блоге есть статья про нее) — я как раз уткнулся в отсутствие подходящего источника питания.
Ну и всякие там инверторы, частотники, индукционки, высоковольтники — все это по сути одно и то же: мост или полумост. Только нагрузка разная и режимы управления. А вот до сервы я еще пока не добрался:) Шаговики-то на четверть только загружены.
Как раз из-за применения стандартного китайского драйвера на Тошибовском чипе. Да и сами сервоприводы пока для меня экономически не выгодны Не дорос еще! Не-е-ет, про резистор с релюшкой — это что-то вроде шутки. Он подключен через контакт реле, когда устройство выключено или контроллер еще не загрузился. А потом первое, что делает контроллер — это отключает это реле.
Но это в порядке бреда. Резистор, конечно, можно подобрать, но тогда теряется универсальность схемы, которую без резистора можно даже использовать как обычный электронный выключатель. Про транс вы, как мне кажется, ошибаетесь.

Как раз вся суть MOSFET-ов (и об этом везде написано), в малой энергии, требуемой для управления. Поэтому для открытия хватает короткого, но совсем не мощного импульса. У меня после МК стоит простенький ключик на биполярнике bf422, нагруженный на малюсенькое ферритовое колечко из люминисцентной лампы. У него по паспорту макс. Стоит себе холодненький. Несколькими амперами там и близко не пахнет. Да и куда там в затвор амперы-то закачивать?
Может вы с IGBT путаете? Я вообще сперва хотел феррит сразу на выход МК, да пожалел его. Хотя у него по паспорту до 30 мА выход держит.
Про обвязку вы правы. Там как минимум не хватает защитных цепей, которые уже нужно подбирать исходя из характера нагрузки и от конкретного применяемого MOSFET-а. У меня, например, есть ключик с уже встроенным защитным стабилитроном (или как там его.) на затворе.
У некоторых такой защиты нету. Да и паразитный диод везде разный. Кто-то говорит, что его хватает для индуктивной нагрузки, кто-то говорит, что все-равно надо быстрые диоды в параллель внутреннему ставить В общем, вся обвязка нарастет по результатом дальнейшего макетирования и испытаний. Может и правда окажется, что овчинка не стоит выделки. Но я, все же, проверю. Откалибровать двигатель на микрошаг невозможно, при разной нагрузки все уплывет, ориентироваться надо только на шаг!
Микрошаг это средство борьбы с резонансом, а не способ увеличить разрешающею способность станка. Да и глупость все это, в реальной жизни Вам нужны эти микроны? Куда их?) Десятки ампер в драйверах вообще не нужны, 2-3 ампера за глаза, а вот динамические характеристики движков зависят прежде всего от напряжения, 80 — 100 вольт хороший стимул движку крутится по шустрее Сейчас Китайцы делают драйвера на TB6600HQ, ставьте и не парьтесь 5ампер 40вольт Для управления мосфетом действительно надо не так уж и много энергии, затвор мосфета это мелкий кондюк, и чем дольше этот кондюк меняет своё состояние тем сильнее греется мосфет. Весь смысл в том чтобы за наносекунды вкачать в затвор эту мелкую кучу энергии, а как следствие имеем режимы на затворе близкие к КЗ, и токи будь здоров. Естественно этим можно пренебречь и рулить мосфетом микросекундами имея на борту комфортные токи и как бонус обогреватель Давно посматриваю Ваш блог, собственно тоже радовался LinuxCNC, но вот что-то сейчас подсел на GRBL. А вы это проверяли?
Откуда такие данные? Я думаю, что если компенсировать нелинейность характеристики, то проседать от нагрузки движок уже будет линейно. Я это знаю, и даже писал об этом в одной из статей. Но как тогда делать настройки в софте?
В том же LinuxCNC нет такого, чтобы вместо одного импульса STEP он выдавал 8 или 16, или сколько там дробление в драйвере А если даже где-то и есть возможность так настроить управляющий софт, то представьте, насколько медленнее все будет двигаться! Компу придется ждать, пока на каждый свой STEP драйвер отработает 8/16/n микрошагов! Я пробовал отказаться от микрошага, но меня постигла такая вибрация, что даже кривой китайский микрошаг давал в итоге более точные результаты! Тут даже не о микронах речь. Тут в десятку бы попасть, да к сотке хоть слегка приблизиться. А с полным или даже полушагом я себе с трудом представляю железо, которое хоть как-то более-менее внятно шевелилось и давало бы при этом разрешение хоть сотки 2 или 5. Я под GRBL и начинал все городить Даже Arduino себе купил под проект.
Но поняв, насколько сильно я буду ограничен, решил отказаться от него в пользу, так сказать, PC-based решения. Не знаю, насколько далеко развился с тех пор GRBL, но авторы его задумывали именно под ATmega328 и не больше. Есть более продвинутые Stand-alone контроллеры на базе более мощных процессоров. В основном это форки GRBL — тот же Marlin или Sprinter с заточкой под 3D-принтеры. Есть и еще, только уже ссылки посеял на них. Микрошаг это по сути весы, с одной стороны одна обмотка с другой стороны другая, они тянут каждая в свою сторону и вал останавливается в положении равновесия этих сил, но стоит приложить еще силы как система равновесия рухнет, и вал отклонится. А внешних сил: частота вращения, ускорение, кривая строительная шпилька, сопротивление подшипников, резонансы, давление фрезы на заготовку.
Где тут линейность, это идеальный генератор случайных чисел Я только ЗА микрошаг, его надо использовать! Но максимальная теоретическая точность кратна шагу, а все что внутри шага случайная погрешность и не более Про мосфеты надо смотреть предметно, где и как там ставят эти 5 — 10 ом, при 12 вольтах это по закону ома 2-1 ампера. Нагрев мосфета на высоких частотах происходит в основном в момент переключения, когда он выхватывает на себя пучек энергии и чем дольше мосфет переключается, тем дольше он под ударом. Не знаю что было раньше. Сейчас грбл отрабатывает стандартный гкод генерируемый арткамом под мачь на ура! Это все верно, конечно. Никто не спорит.
Но если убрать нелинейность двигателя — все же лучше будет! Я в этом уверен. И что впустую об этом спорить.
Надо сделать, да проверить С резистором по току затвора я разобрался. Он там стоит, чтобы не попалить выход стандартных интегральных драйверов током КЗ заряда емкости затвора, о котором вы говорили. Резистор там совсем не для MOSFET-а стоит, а для его обвязки, и является компромисным между скоростью и безопасностью. Вот это немного непонятно, что значит «стандартный» G-код. Разные постпроцессоры генерят разный G-код под конкретный совместимый тип станка. Есть те, которые поддерживают круговую интерполяцию, есть те, которые дуги превращают в отрезки.
Контроллер И Драйвер Для Шаговых Двигателей Своими Руками
Есть постпроцессоры с поддержкой циклов, условий и подпрограмм, а есть с преобразованием повторяющихся операций в длинные-длинные портянки, потому как станок не поддерживает циклы и подпрограммы. Тот же мачь, если не ошибаюсь, поддерживает мастера на VB-Script (или на чем там). GRBL же не сможет такое отработать. Вот взять, к примеру, радиатор. Я под LinuxCNC написал «мастера», в котором вводишь длину, ширину, глубину пропила и ширину ребра. Я кладу заготовку любого размера, задаю пару цифр и тыкаю «Пуск» — радиатор готов!
Этот мастер — тот же G-код, только с циклами и с параметрами, передаваемыми в подпрограмму. Под GRBL мне придется каждый раз перерисовывать модель под каждую заготовку, импортировать в CAM, там генерить под каждую G-код Это хорошо, когда стоит ферма станков и каждый массово пилит несколько стандартных деталей. Тогда экономия на управляющих компах выйдет действительно значительная. Я тоже не против GRBL.
Автор: Маркс Карл + Энгельс Фридрих, Книга: Манифест Коммунистической партии, Издание: 1848 г. Карл маркс манифест коммунистической партии аудиокнига. Фридрих Энгельс, Карл Маркс. Манифест Коммунистической партии. «Манифест Коммунистической партии. Партии» Маркс. Партии, аудиокнига.

Там можно на отдельном контроллере и LCD прикрутить и чтение с SD-карты. Тоже красиво получится и без кнопок на китайском Но мне больше нравится гибкость и возможность запрограммировать под свои нужды. Суть то про мосфеты та-же, как и про ИГБТ, и ни чего я не путаю, мои слова подтверждает вам Сергей. Это вы не совсем понимаете суть. Большие токи управления затвором возникают в момент переключения состояния полевика, либо ИГБТ, и суть как раз в том, чтоб «мгновенно» его открыть или закрыть, дабы избежать потери на переключение в линейном режиме.
А колечко и биполяник не греются только по простой причине — импульс тока при переключении ничтожно короток по сравнению с общим временем переключения. У меня, например, есть ключик с уже встроенным защитным стабилитроном (или как там его.) на затворе. У некоторых такой защиты нету. Да и паразитный диод везде разный. Кто-то говорит, что его хватает для индуктивной нагрузки, кто-то говорит, что все-равно надо быстрые диоды в параллель внутреннему ставить Стабилитрон на входе — хорошо, а вот диод, как вы его назвали паразитный, не всегда отвечает необходимым параметрам, поэтому его дублируют более скоростным и мощным. Вот как то не понятно сортируются ответы.
Раз уж мне посчастливилось собрать вокруг этой статьи в комментариях специалистов, которые помогли мне, и, возможно, многим читателям, разобраться в сути управления затворами MOSFET-ов, то хотелось бы направить дискуссию на выяснение основного вопроса, связанного с микрошагом. Не раз уже говорилось, что микрошаг используется только для подавления резонанса, а сама разрешающая способность станка должна обеспечиваться в пределах шага. Это, в общем-то, никто и не оспаривает. Это как раз то, на что рассчитывались шаговые двигатели. Но вопрос-то остается! КАК ЖЕ на практике применять микрошаг для снижения резонанса, сохраняя при этом разрешение в пределах шага? Как настроить LinuxCNC или Мач, или GRBL, чтобы на китайских драйверах шагового двигателя выставить микрошаг и радоваться стабильному позиционированию и отсутствию резонанса при перемещениях?
Отвечаю — забросить заново изобретать велосипед )). Всё уже за нас возможное и не возможное сделано. Кстати — по поводу схемы, приведенной в начале, ведь она ориентирована исключительно для гальванической изоляции первичной и вторичной цепей.
И применима только для верхнего плеча. А управлять нижним плечом не составляет никакого труда. Думаю вам следует уделить внимание другой проблеме — а именно контролю тока через полевики. И вот вам в помощь могу подсказать отличный на мой взгляд девайс от IR -IR25750L. Который дешев и доступен и имеет неоспоримое преимущество — нет необходимости использовать шунт для измерения тока. А продолжая свою мысль — хочу заметить — никаких микро шагов и головняка по резонансу нет у сервоприводов (условно конечно).
И если вы мне на почту кинете свой вайбер или скайп — мы это можем обсудить за пределами этого блога. У меня очень давно есть желание использовать коллекторный двигатель на привод оси. А еще большее желание есть создать контроллер свой, понимающий G- code и работающий по ЮСБ. Для этого нужен программист, понимающий и имеющий опыт работы с CNC, как вы. У меня есть программист, который мне пишет вещи, но он далёк от CNC.
Считайте это предложением к взаимовыгодному сотрудничеству, если хотите )). Нет, не изобрести. А сделать свой. Для этого не нужна команда энтузиастов и Arduino (ничего против этого всего не имею, но таким путём не пойду -это бессмысленная трата времени, как по мне — есть опыт, никогда такой проект не будет доведен до логического завершения), а нужно просто сделать свой, специализированный контроллер под определенные нужды. Я имею многолетний опыт разработки в спарке с программистами, и поверьте, коллективный разум — это хорошо, и что-то типа Arduino тоже, но это всё не эффективно. Гораздо быстрее делается устройство, заточенное под конкретные задачи, заинтересованными людьми. Так, что моё предложение остаётся в силе.
Дело в том, что микрошаг в наших случаях за пределами точности станка. Стоит прикрепить измерительную головку и по нажимать пальцем в разных направления на шпиндель или стол с усилием в 1кг и все резина я сам офигел первый раз Хорошо если в десятке будет погрешность, это если СИЛЬНО повезло Представим что мне повезло )) У меня винт катаная трапеция 3мм/200шагов = 0,015мм на шаг, т.е.
В моем случае даже в пределах 5 шагов будет будет все что угодно Вот она горькая правда И чтобы приблизится к проблеме озвученной Вами, мне надо залить фундамент, и из камня и чугуна сделать станок весом н-тон. И вот когда реально упрусь в дискретность шаговика, а бюджет станка приблизится к 1 000 000р. Я просто поставлю сервы, и опять этот микрошаг меня не будет волновать И кстати, я не отказываюсь от своего утверждения, что стабильность микрошага обеспечить НЕВОЗМОЖНО. Сергей, все это понятно Я уже про другое спрашиваю! Как применить микрошаг для снижения вибрации перемещений? Разрешение зафиксируем на уровне шага!
Мне 2мм/200 шагов = 0,01мм хватает выше крыши! Все говорят «микрошаг применяется только для снижения резонанса».
Ну так КАК, черт возьми, его применить с обычным китайским контроллером? Мне пока не видится на это ответа, т.е. А со своим собственным контроллером я могу, получив 1 сигнал STEP послать на движки 8 микрошаговых сигналов. В итоге у меня LinuxCNC просто будет в 8 раз медленнее слать сигналы STEP (чтобы мой контроллер успевал превратить их в 8 микрошагов), а скорость перемещения у меня в итоге останется прежней, но уже я буду обеспечивать разрешение в пределах шага, а перемещение — в микрошагах для снижения вибрации. Вот так я себе это вижу. И не представляю, как сделать тоже самое на стандартных китайских контроллерах. Вот, собственно, теперь в чем вопрос.
Помогите в этом разобраться! От чего ушли, к тому и вернулись У меня все сейчас именно так и настроено!
Вы, видимо, не понимаете суть проблемы. Инструкция к intel raid web console 2017. Указывая в настройках микрошаг, мы просто говорим LinuxCNC, сколько импульсов STEP нужно скормить нашему станку на 1 мм.
В итоге все это пересчитывается в один лишь только параметр SCALE (конкретно для LinuxCNC, который потом можно править в конфиге), который в итоге ОПРЕДЕЛЯЕТ РАЗРЕШАЮЩУЮ СПОСОБНОСТЬ СТАНКА. В итоге в планировщике траекторий будут использоваться ВСЕ эти импульсы ДЛЯ ПОЗИЦИОНИРОВАНИЯ. Говоря проще, LinuxCNC или Мач, или GRBL НЕ ЗНАЕТ, что вот именно в этом месте траектории шаговый двигатель зависнет в микрошаговом положении! Ему на это плевать! Я не знаю, как вы умудрились не столкнуться с такой проблемой при выпиливании деталей. Понятное дело, что в CAD вы чертите модели, привязывая их к миллиметровой сетке (например). Вы на этапе проектирования изделия стараетесь избежать тех мест, которые не будут кратны разрешающей способности станка.
Но ведь на практике детали могут содержать и окружности, и сплайны, да даже простые диагональные перемещения! Тут уже мимо микрошаговых состояний станку ну уж никак не пройти с такими настройками и контроллером. А в LinuxCNC вообще в ядре зашита точность в 3 знака после запятой, и он ее старается отрабатывать, зараза И вот тут уже и всплывает, что размеры немного не те, подшипник в посадочное гнездо не лезет, зубчики в шестеренках не стыкуются и круги овальные. Если продолжать идею разработки своего контролера, то оправдать целесообразность его создания можно только для LinuxCNC и Матч которые не способны шагать быстрее 20кгц Если уж делать то тогда сразу под под табличную синусойду, пусть плавненько движку крутит Но возникает не решаемая проблема: как узнать период этой синусойды, шаг отрабатывать за секунду или 1/1000 секунды. Можно конечно нагородить алгоритмов, которые будут на лету адаптироваться к частоте шагов, подстраиваясь, сжимая или растягивая периоды итд итп. Это будет работать, с небольшой оговоркой: добавится погрешность порядка 2х шагов. Если уж очень хочется можно в таблицу синусойды добавить корректировки на линейность вращения конкретного движка.
Если прикинуть 20кгц. 256синусойда = 5120кгц что-то многовато еще же ток контролировать да и полевики согласятся ли работать на таких частотах Или может поставить TB6600HG и отказаться от лпт порта? Да не пытаюсь я сделать станок точнее, чем позволяет его механика. Я пытаюсь получить от него точность хотя бы ту, которую он физически может обеспечить, как если бы я крутил винтовую передачу потихонечку рукой, ориентируясь на показания часового индикатора. Я физически могу спозиционировать свой станок с разрешением цены деления моего индикатора, а это 0,01 мм! Более того, уверен, что внутри этого деления я смогу относительно точно выставить еще 4-5 положений, т.е.
Руками я смогу спозиционировать с разрешением 0,002 мм! Этого же самого я хочу добиться от электроники и двигателей — чтобы на каждый свой STEP станок ПРОВОРАЧИВАЛ двигатель, а не то ехал, то стоял из-за нелинейности. И на холостом двигателе, благодаря калибровке, у меня это получается сделать. Про нагрузки я вот что хотел сказать. Ведь есть же паспортные данные, в которых указан момент на валу, гарантированный производителем.
Если не превышать эти паспортные данные, то влиянием разной нагрузки в принципе можно пренебречь, потому как мы знаем, что производитель нам что-то таки может гарантировать. Давайте будем считать, что я разрабатываю контроллер для выпиливания бумаги с большой точностью на низкой скорости Просто, как мне кажется, когда заходит разговор о нагрузках, то это уже подразумевается обработка какого-либо металла. Все, что мягче — это для станка просто бумага и о нагрузках говорить не очень-то уместно при правильно подобранных режимах резания. Ну а сталюку и люминь промышленно разумнее пилить на сервах — это уже совсем другая история. Опять же не согласен! Не надо улучшать то что и так хорошо работает. Надо искать узкие места, искать то что плохо работает и постараться сделать хорошо.
Я тоже в душе идеалист, хочется сделать идеально, так чтобы сам был доволен — произведение искусства. Однако сколько смысла в фразе: лучшее — враг хорошего. А принцип Парето В общем предлагаю завершить нашу дискуссию и остаться каждый при своем мнении И напоследок напомню: я считаю что невозможно обеспечить стабильность микрошага работающего ШД, так он нагружен динамически.
По поводу обратной связи согласен с Сергеем. Мое мнение,( вы хотите доработать станок полностью доработав только электронику) это же нецелесообразно. Следует в первую очередь обеспечить жесткость всех узлов и самой станины, обеспечить обратную связь т.е. На каждый движок поставить по инкодеру и прописать их и использовать высоко скоростной шпиндель 40 000 об/мин.(позволит за ед. Времени снимать больше с меньшей нагрузкой) И кстати раздробить шаг проще механически, поставьте ШВП с шагом 3 или 1,5 мм, и пользуйте в удовольствие на полушаге.
А у вас ШВП или ТРАПЕЦИЯ? Представьте, что механика уже доведена до максимума — все жестко и дальше уже некуда. И на этом шедевре механической мысли стоит китайский драйвер с кривым микрошагом. Все усилия по обеспечению максимальной жесткости обнуляются, т.к. Станок начинает работать по факту как картонный хоббийник. Выхода два — переходить на механическое дробление шагов (но при этом сохранятся все резонансные прелести шаговика) или дорабатывать электронику, которая бы обеспечивала нормальный микрошаг.
У меня стоит строительная шпилька с шагом 2 мм. Механически я могу подбирать дробление путем замены шестеренок на валу двигателя и на винте (можно подбирать любое соотношение, т.к.
У меня кручение передается через зубчатый ремень), но мне очень не нравится, как все ревет и трясется при полном шаге! И Вы, опять же, забываете, что ЧПУ бывает не только со шпинделем, но и с лазером, экструдером, Не всегда нагрузки вообще имеют место быть.
И по поводу обратной связи — это уже выходит за рамки хоббийных бюджетов. Потребуются уже платы вроде Mesa с кучей входов, потому как на один LPT уже все это не влезает.