Люфт шагового двигателя и сервоприводов. Имитация.

Для того чтобы спрогнозировать люфт есть набор параметров, которые вы можете ввести:

Если вы немного почитали и, возможно, у вас есть хотя бы интеллектуальное представление о концепциях шаговых двигателей, сервоприводов, люфта, замкнутого цикла и операции разомкнутого цикла. Вы наверняка слышали, что люфт очень плох, и что замкнутая система или сервосистема намного лучше, чем система на основе разомкнутого контура или шагового двигателя для ЧПУ. Чего не хватает, так это интуитивного ощущения почему? Или насколько это плохо на самом деле? Что произойдет, если я выберу систему с открытым контуром на основе шагового двигателя с большим люфтом?

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

Если вы хотите поиграть с моделью, загрузите ее, нажав здесь. У меня есть примеры и выводы ниже, если вы не хотите тратить время на то, чтобы поиграть с этим самостоятельно.

Для того чтобы понять какие значения нужно вводить вам, стоит прочитать материал о том как уменьшить люфт вашего станка!

Есть набор параметров, которые вы можете ввести:

Диаметр круга в дюймах. Довольно очевидно, но мне нравится делать круги размером 1 дюйм или меньше, потому что ошибки «увеличиваются» на графиках, размер которых превышает 1 дюйм.

Люфт по осям X и Y в дюймах. Введите величину люфта в вашей системе. Загляните в Словарь ЧПУ, чтобы узнать, что такое люфт и как его измерить.

% ошибок: круг имитируется как 360 управляемых движений или 1 градус по окружности за каждое управляемое движение. % Ошибок определяет, какой процент времени эти перемещения будут игнорироваться из-за потерянных шагов или проблем в машине, кроме люфта. Взгляните на «Потерянные шаги», чтобы увидеть, каковы некоторые потенциальные источники этих ошибок, и знать, что сервосистема способна снова «догнать» ошибки. Обратите внимание, что потеря шага происходит сразу по обеим осям, что делает результат необычно симметричным. Это нереально — каждая ось должна иметь независимую симуляцию ошибок, но она служит для образовательных целей, для которых предназначена эта симуляция. Еще один источник неточности модели состоит в том, что потерянные шаги действительно случайны. В реальной машине, если вы потеряете шаг, вероятность потери соседнего шага намного выше (возможно, сопротивление в этой точке на этой оси по какой-то причине необычно велико), поэтому ошибки будут иметь тенденцию «сгущаться». Опять же, это вряд ли имеет значение для образовательных целей.

Скорость захвата сервопривода — это грубый способ измерения того, какая часть следующей ошибки. Может быть устранена на каждом этапе. Другими словами, если я введу здесь «4», на каждом шаге будет устраняться 1/4 из следующих ошибок. Это опять же без люфта и полностью относится к ошибкам, внесенным параметром «% Errors». Как и чрезмерное упрощение проигрышных шагов, эта модель также слишком проста для реального мира. Например, он предполагает постоянную скорость устранения ошибок, в то время как реальный сервопривод имеет усиление и будет ускоряться по мере увеличения ошибки.

Сама модель сегментирована столбцами, заголовки которых чередуются синим и желтым цветом следующим образом:

— Управляемая позиция: Заданная позиция — это идеализированные координаты X и Y, в которые машина должна перейти, если она работала идеально и точно оставалась на круге.

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

— Шаговый двигатель без люфта: этот блок столбцов показывает результат работы шагового двигателя, который получает ошибки оси, как определено, но не имеет люфта. Шаг X, Шаг Y показывают, где остановилась машина, в то время как Step Dev X, Step Dev Y показывают, как далеко он находится от заданной позиции.

— Perfect Motor w / Backlash: этот блок показывает результат идеального двигателя (то есть такого, который никогда не получает ошибки) с люфтом. Люфт X, Y показывают, где возникает ошибка люфта. Обратите внимание, что модель предполагает максимальный люфт для оси всякий раз, когда ось меняет направление, а также вначале, что, по общему признанию, является наихудшим случаем. Cmd + Bklsh X, Y показывает, где заканчивается ось, и есть Dev X, Y, чтобы показать ошибку.

— Stepper w / Backlash: этот блок суммирует эффекты потерянных шагов и люфта. Результат иногда может быть ужасным, если все происходит правильно, вызывая люфт в большем, чем обычно, количестве мест.

— Сервопривод без люфта: Наконец, мы показываем эффекты управления по замкнутому контуру, когда серводвигатель «догоняет», систематически исправляя ошибку с течением времени, чтобы вернуться в нужное русло.

Сервопривод с люфтом показывать не стал. Как только вы увидите различия только в этих моделях, станет ясно, какое влияние оказывает каждая из них. Более того, я моделирую систему с замкнутым контуром, которая измеряет вращение ходового винта, а не фактическое движение стола с помощью линейных шкал, поэтому в любом случае нельзя исправить люфт таким образом. Сервосистема получит характерные «уши» люфта, как и идеализированный «Идеальный двигатель с люфтом».

Над заголовками столбцов находится строка с надписью «Максимальное отклонение». Это своего рода абсолютная мера того, насколько далека от идеала каждая модель в худшем случае.

На вкладке «Графики» есть набор диаграмм, которые наглядно показывают, что происходит. Они находятся на листе шириной 2, поэтому прокрутите по вертикали, чтобы добраться до тех, которые вы не видите:

— Командная фигура: Очень скучный, но идеальный круг.

— Commanded + Backlash: с этого момента я показываю команду как одну линию, желтую, а другие — другими цветами. На этом вы можете увидеть характерные люфтовые «уши» или глюки при описании круговой траектории:

Люфт «Уши»: круг диаметром 1 ″, люфт 0,020 ″ по осям X и Y
Люфт «Уши»: круг диаметром 1 ″, люфт 0,020 ″ по осям X и Y

Вы можете видеть, что маленькие синие «ушки» довольно ярко выражены и были бы неприятным результатом, если бы вы пытались обработать круг. 0,020 ″ — это довольно большой люфт, но, конечно, не редкость.

— Шаговый без люфта: этот график показывает эффект потерянных шагов. Как упоминалось выше, вы можете настроить вероятность потери шагов. Я понятия не имею, что такое разумное реальное значение, но поиграв с симуляцией, я могу ясно понять, почему люди настраивают шаговые системы на такие низкие скорости, что почти нет шанса потерять шаг! Вот график с потерей шага 2%:

Шаговая система теряет 2% шагов
Шаговая система теряет 2% шагов

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

— Шаговый двигатель с люфтом:

Прогноз люфта шагового двигателя
Люфт шагового двигателя

Этот график особенно глючный и плохой. Происходит то, что потерянные ступеньки вызывают люфт из-за смены направления, когда машина колеблется. Вероятно, это не такая реалистичная симуляция, но если бы она была правильной только наполовину, она показывает, насколько плохи могут быть вещи, если вы возьмете систему с большим количеством люфтов и запустите ее без обратной связи.

Сервоприводы без люфта: этот график представляет собой сравнение сервопривода и шагового двигателя без люфта.

Сервопривод против шагового двигателя, при условии отсутствия люфта
Сервопривод против шагового двигателя, при условии отсутствия люфта

В образце предполагается, что 2% потерянных шагов (очень много, делает шаговый двигатель плохим) и что сервосистема может исправить только 10% ошибки в данном шаговом цикле (мне кажется медленным, но я действительно не знаю какое может быть «настоящее» число). Что очевидно, так это то, что сервопривод может очень хорошо отслеживать и в основном остается прямо на круге (не совсем, вы можете видеть маленькие кусочки синего), а шаговый двигатель делает преувеличенный ход по пути, который мы видели раньше.

Выводы

Хотя это моделирование является грубым, оно дает интуитивное представление о влиянии люфта и замкнутого контура на точность.

Мы можем ясно видеть, что люфт приводит к появлению «глюков» каждый раз, когда ось меняет направление (часто это круг). Да, в каком-то софте есть компенсация люфта, но она заставит ось останавливаться, пока откручивает люфт от винта, так что глюк какой-то все равно будет.

Кажется, что люфт тоже может сбить с толку систему с разомкнутым контуром. Мы также можем видеть, что система с замкнутым контуром может довольно быстро догнать и устранить ошибку. Единственный ответ, доступный в системе с разомкнутым контуром, — это то, что не должно быть потерянных шагов. Можно приблизиться к этому идеалу, используя большие шаговые двигатели и консервативные скорости, добавляя некоторую передачу для дальнейшего увеличения крутящего момента, поэтому еще не все потеряно.

Точно так же Замкнутый цикл не исправляет все грехи. Это случай, когда частота потерянных шагов очень высока (25%), а возможность исправления потерянных шагов медленная (за 100 шагов). Нам здесь немного лучше, чем с системой без обратной связи (также изображенной):

Медленные сервоприводы при замкнутом цикле
Медленные сервоприводы при замкнутом цикле

Когда вы слышите, как кто-то обсуждает необходимость снизить скорость, чтобы их сервосистема достигла точности, подумайте об этом графике. Также подумайте о приобретении более мощных двигателей, чтобы уменьшить количество ошибок!

Вам может также понравиться...

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *


Срок проверки reCAPTCHA истек. Перезагрузите страницу.