Сравнение бюджетных систем управления ЧПУ
- michael-yurov
- Почётный участник
- Сообщения: 11625
- Зарегистрирован: 26 июл 2012, 00:10
- Репутация: 4634
- Настоящее имя: Михаил Львович
- Откуда: Новоуральск
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
PKM, ну вот смотри, например, мы рассматриваем случай, когда фреза проходит по окружности с диаметром 2 мм (ну, например, при трохоидальной обработке) и траектория сохранена линейными сегментами и KMotinCNC строит скругления на стыках, и мы задали такие параметры, что радиус этих скруглений равен радиусу участка траектории, т.е. 1 мм.
При стандартных настройках эти скругления будут разбиты на кусочки с углом изменения траектории в 1°.
Допустим, в настройках системы ЧПУ задано предельное ускорение по осям 500 мм/сек², тогда исходя из центростремительного ускорения в 500 мм/сек² получим, линейную скорость 22,36 мм/сек (1341 мм/мин).
Полная окружность была бы пройдена за 0,281 сек, т.е. в случае LinuxCNC была бы разбита на 281 кусочек.
KFlop с настройками по умолчанию разделит ее на 360 кусочков, и потом еще "подравняет" фильтром и выдаст результат, плавно изменяя скорость 3100 раз за время прохождения полной окружности!
И это при достаточно низких значениях ускорения, и при настройках по умолчанию!
Если бы речь шла про дорогой станок с большими значениями ускорения - разница была бы намного больше. И при этом никто не мешает настроить KMotionCNC на более мелкое разбиение изменив один единственный параметр.
Полагаю, и в LinuxCNC можно "повысить точность", но есть ли в этом смысл?
Так что на счет "проигрывает полностью", "корявый способ" и "детские недостатки" - это ты явно не прав.
При стандартных настройках эти скругления будут разбиты на кусочки с углом изменения траектории в 1°.
Допустим, в настройках системы ЧПУ задано предельное ускорение по осям 500 мм/сек², тогда исходя из центростремительного ускорения в 500 мм/сек² получим, линейную скорость 22,36 мм/сек (1341 мм/мин).
Полная окружность была бы пройдена за 0,281 сек, т.е. в случае LinuxCNC была бы разбита на 281 кусочек.
KFlop с настройками по умолчанию разделит ее на 360 кусочков, и потом еще "подравняет" фильтром и выдаст результат, плавно изменяя скорость 3100 раз за время прохождения полной окружности!
И это при достаточно низких значениях ускорения, и при настройках по умолчанию!
Если бы речь шла про дорогой станок с большими значениями ускорения - разница была бы намного больше. И при этом никто не мешает настроить KMotionCNC на более мелкое разбиение изменив один единственный параметр.
Полагаю, и в LinuxCNC можно "повысить точность", но есть ли в этом смысл?
Так что на счет "проигрывает полностью", "корявый способ" и "детские недостатки" - это ты явно не прав.
- PKM
- Почётный участник
- Сообщения: 4263
- Зарегистрирован: 31 мар 2011, 18:11
- Репутация: 705
- Настоящее имя: Андрей
- Откуда: Украина
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
Это не совсем так.michael-yurov писал(а):В реальности в момент ступенчатого изменения скорости возникает возникает всплеск ускорение бесконечно большой величины.
Сервопериод 0.001с, значит при ускорении 1000 мм/с2 изменение скорости за сервопериод не должно превышать 1мм/с, так? Не вижу здесь проблемы.
Иначе любой принтер на ардуино имеет хороший планировщик, почему нет? И это мы еще на jerk не смотрим, там вообще мрак будет
А вот это может быть математически верно при некоторых условиях. Потому что каждый импульс дает некое перемещение за конечный период времени. При этом скорость конечна, а ускорение бесконечно.michael-yurov писал(а):Если так рассуждать - то у нас с каждым импульсом Step возникает бесконечно большое ускорение
Насчет этих требований мы уже не раз спорили. Они на станках дешевле 100К зеленых совершенно бессмысленны. Синдром принцессы на горошине.michael-yurov писал(а):Сомневаюсь, что расчетной единицей в данном случае является сервопериод. Кстати, у KFlop он в 11 раз меньше, чем у LinuxCNC! И я считаю, что это имеет значение для систем с очень высокими требованиями.
Я этого не заметил. На графиках явно показано отклонение от вершины. Это обычный ФНЧ, такой же как у тебя в плате. Он не имеет отношения к планировщику траектории, просто сглаживает выбросы постфактум.michael-yurov писал(а):А сможешь ты его поставить так, чтобы он не влиял на траекторию и станок проходил точно по координатам вершин? KFlop делает именно так.
Есть конечная смена скорости, которая не превышает заданного ускорения. Но НЕ бесконечная смена скорости.michael-yurov писал(а):Ну так а между сервоциклами что происходит?
Да, здесь принципиально разный подход. Интерполяция окружностями и отрезками. Конечно, разбиение на бесконечное количество отрезков даст окружность. Но тогда почему они по умолчанию не забили деление на бесконечное количество кусочков? Вот и приходится крутиться со всякими ФНЧ...michael-yurov писал(а):Там, вроде бы речь про разбиение на отрезки участков скругления, а круговая интерполяция в KFlop честная - дуговые сегменты так и передаются в контроллер в виде дуг.
А угол разбиения для участков скругления задается в настройках планировщика - хочешь 1°. Хочешь - 0,1°.
А вот применение ФНЧ к интерполированной траектории LinuxCNC даст уже S-кривую.
Я с LinuxCNC вожусь уже лет 5, и не устаю поражаться ее возможностям. Был единственный серьезный недостаток - планировщик без предпросмотра, и тот исправили.
Сегодня поставил KMotionCNC, такое впечатление, что пересел с ПК на советский игровой автомат
Да, неплохая по сравнению с Mach3, довольно настраиваемая. Но это система чуть выше начального уровня и не более того.
Там практически нет планировщика, просто кусочный аппроксиматор. Например они сами пишут: вот при таких параметрах the velocity is much smoother and the Acceleration is less Jerky. То есть это ничего не меняет, а только сглаживает выбросы скорости. А если вам еще сильнее надо сгладить выбросы, то включайте ФНЧ. И только тогда (!) реально впишетесь в пределы по ускорениям.
А в настоящем планировщике LinuxCNC от параметров точности реально зависит скорость прохождения траектории, соблюдаются все ограничения.
Это ты просто не знаешь LinuxCNC, см. выше...michael-yurov писал(а):Так что на счет "проигрывает полностью", "корявый способ" и "детские недостатки" - это ты явно не прав.
ПС: самое главное подтверждение - не встречал ни одного человека с глубокими знаниями LinuxCNC, которого удалось бы заставить купить KFLOP
Мой совет - разберись в LinuxCNC, не пожалеешь! Замечательная ЧПУ, чем свою писать - лучше что-то доработать в LinuxCNC!
- PKM
- Почётный участник
- Сообщения: 4263
- Зарегистрирован: 31 мар 2011, 18:11
- Репутация: 705
- Настоящее имя: Андрей
- Откуда: Украина
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
michael-yurov, хоть убей не пойму, как мач3 работает!
Вот свежий пример Mach3 срезает углы. #1
Но как он может срезать угол 90 градусов, если ему явно сказано в настройках НЕ СРЕЗАТЬ больше 20 градусов?
Это не ЧПУ, а недоразумение...
Вот свежий пример Mach3 срезает углы. #1
Но как он может срезать угол 90 градусов, если ему явно сказано в настройках НЕ СРЕЗАТЬ больше 20 градусов?
Это не ЧПУ, а недоразумение...
- michael-yurov
- Почётный участник
- Сообщения: 11625
- Зарегистрирован: 26 июл 2012, 00:10
- Репутация: 4634
- Настоящее имя: Михаил Львович
- Откуда: Новоуральск
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
Да и нет никакой проблемы.PKM писал(а):Сервопериод 0.001с, значит при ускорении 1000 мм/с2 изменение скорости за сервопериод не должно превышать 1мм/с, так? Не вижу здесь проблемы.
Но в момент ступенчатого изменения скорости теоретически получаем бесконечно большое мгновенное ускорение, т.к. ΔV / Δt (при Δt стремящемся к нолю) = бесконечность.
Так у нас и теоретическая мгновенная скорость в момент каждого шага тоже бесконечна.PKM писал(а):А вот это может быть математически верно при некоторых условиях. Потому что каждый импульс дает некое перемещение за конечный период времени. При этом скорость конечна, а ускорение бесконечно.
Мне кажется ты путаешь график ускорения со скоростью.
Там дальше написано, что контроллер используя этот фильтр последние шаги все же строит именно через вершину. Т.е. фильтр применяется только к плавным участкам.PKM писал(а):Я этого не заметил. На графиках явно показано отклонение от вершины. Это обычный ФНЧ, такой же как у тебя в плате. Он не имеет отношения к планировщику траектории, просто сглаживает выбросы постфактум.
Конечная смена скорости- это и есть бесконечно большое мгновенное ускорение.PKM писал(а):Есть конечная смена скорости, которая не превышает заданного ускорения. Но НЕ бесконечная смена скорости.
Ну а что же ты тогда докопался до KMotionCNC у которого есть ступеньки смены скорости (при чем при стандартных настройках на порядок мельче, чем у LinuxCNC), и KMotionCNC стал для тебя "системой чуть выше начального уровня и не более того", "Там практически нет планировщика" и т.п?PKM писал(а):Насчет этих требований мы уже не раз спорили. Они на станках дешевле 100К зеленых совершенно бессмысленны. Синдром принцессы на горошине.
Это как интересно, ступенчатая смена скорости может не превышать заданного ускорения, когда ускорение в этот момент равно бесконечности?PKM писал(а):Есть конечная смена скорости, которая не превышает заданного ускорения.
Ты, видимо, половину моих слов мимо пропускаешь.PKM писал(а):Интерполяция окружностями и отрезками.
KMotionCNC не разбивает дуговые сегменты на линейные! Линейными сегментами передаются лишь данные скругления участков траектории.
Деление чего? Участков стыковки сегментов? А что же у самой УП не сохранили с бесконечно мелким разбиением? KMotionCNC только улучшает исходную траекторию, но до необходимого, заданного в настройках уровня.PKM писал(а):Конечно, разбиение на бесконечное количество отрезков даст окружность. Но тогда почему они по умолчанию не забили деление на бесконечное количество кусочков?
Да не приходится никому крутиться. Если его не использовать - никто ничего и не заметит.PKM писал(а):Вот и приходится крутиться со всякими ФНЧ...
Так и KMotionCNC даст. Хочешь - используй.PKM писал(а):А вот применение ФНЧ к интерполированной траектории LinuxCNC даст уже S-кривую.
Интерфейс программы - сырой, не спорю. Но все необходимое работает практически идеально.PKM писал(а):Сегодня поставил KMotionCNC, такое впечатление, что пересел с ПК на советский игровой автомат
Ну, это уже какое-то "бросание какашками".PKM писал(а):Там практически нет планировщика, просто кусочный аппроксиматор.
Планировщик - лучше некуда. Чего тебе там не хватает?
Не выбросы скорости, а выбросы jerk (скорости изменения ускорения).PKM писал(а):Например они сами пишут: вот при таких параметрах the velocity is much smoother and the Acceleration is less Jerky. То есть это ничего не меняет, а только сглаживает выбросы скорости.
Ну это уже какой-то бред.PKM писал(а):И только тогда (!) реально впишетесь в пределы по ускорениям.
Я так и не увидел ничего, чем планировщик LinuxCNC был бы лучше планировщика KMotionCNC (особенно учитывая, что это одна и та же библиотека, но с небольшими изменениями).PKM писал(а):А в настоящем планировщике LinuxCNC от параметров точности реально зависит скорость прохождения траектории, соблюдаются все ограничения.
Ну так расскажи, чего я про него такого не знаю.PKM писал(а):Это ты просто не знаешь LinuxCNC, см. выше...
Я сравнивал лишь те параметры и возможности, которые были мне интересны.
То, что LinuxCNC открытая система, я я там могу изменить все - меня мало волнует.
Для KMotionCNC тоже есть исходники программы, но мне от этого не легче.
Банально - приставляешь к виску пистолет, даешь денег и он его покупает.PKM писал(а):ПС: самое главное подтверждение - не встречал ни одного человека с глубокими знаниями LinuxCNC, которого удалось бы заставить купить KFLOP
А встречал хоть одного человека с глубокими знаниями KMotionCNC, которого удалось бы заставить поставить на свой станок LinuxCNC?
Чем лучше - не могу понять.PKM писал(а):Мой совет - разберись в LinuxCNC, не пожалеешь! Замечательная ЧПУ, чем свою писать - лучше что-то доработать в LinuxCNC!
Я хочу написать свою простую, понятную, относительно недорогую, без существенных недостатков, красивую, простую в установке, настройке, освоении и использовании систему ЧПУ.
Основные цели - заполнить брешь на рынке, применить свои знания, и заработать себе на жизнь. Как в этом случае мне может помочь "что-то доработать в LinuxCNC"?
- michael-yurov
- Почётный участник
- Сообщения: 11625
- Зарегистрирован: 26 июл 2012, 00:10
- Репутация: 4634
- Настоящее имя: Михаил Львович
- Откуда: Новоуральск
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
Ну то, что это недоразумение, полагаю, ни для кого не секрет - достаточно взглянуть на внешний вид программы.PKM писал(а):michael-yurov, хоть убей не пойму, как мач3 работает!
Вот свежий пример Mach3 срезает углы. #1
Но как он может срезать угол 90 градусов, если ему явно сказано в настройках НЕ СРЕЗАТЬ больше 20 градусов?
Это не ЧПУ, а недоразумение...
А вот о чем там говорит Bert - я не знаю.
Скорее всего смотрит на визуализацию на экране.
Она не соответствует реальной траектории.
Где УП, где фото результата?
- PKM
- Почётный участник
- Сообщения: 4263
- Зарегистрирован: 31 мар 2011, 18:11
- Репутация: 705
- Настоящее имя: Андрей
- Откуда: Украина
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
michael-yurov, давай дадим некоторые определения.
Пускай есть два состыкованных линейных сегмента с неким углом между ними.
Если в этом углу НЕТ скругления, значит ускорение бесконечно большое, т.к. конечное изменение скорости происходит за (условно) нулевое время.
Если же скругление ЕСТЬ - ускорение конечное, т.к. конечное изменение скорости происходит за конечный интервал времени прохождения скругления.
Согласен?
Пускай есть два состыкованных линейных сегмента с неким углом между ними.
Если в этом углу НЕТ скругления, значит ускорение бесконечно большое, т.к. конечное изменение скорости происходит за (условно) нулевое время.
Если же скругление ЕСТЬ - ускорение конечное, т.к. конечное изменение скорости происходит за конечный интервал времени прохождения скругления.
Согласен?
- PKM
- Почётный участник
- Сообщения: 4263
- Зарегистрирован: 31 мар 2011, 18:11
- Репутация: 705
- Настоящее имя: Андрей
- Откуда: Украина
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
LinuxCNC уже является такой системой... выпускай под нее железо и продавай. Сделай свою конфигурацию для этого железа и наслаждайся жизнью. Красивую - напиши интерфейс! Добавь то, чего в ней не хватает, заполни брешь на рынке. Но зачем писать с нуля новую ЧПУ?michael-yurov писал(а):Я хочу написать свою простую, понятную, относительно недорогую, без существенных недостатков, красивую, простую в установке, настройке, освоении и использовании систему ЧПУ.
Основные цели - заполнить брешь на рынке, применить свои знания, и заработать себе на жизнь. Как в этом случае мне может помочь "что-то доработать в LinuxCNC"?
- michael-yurov
- Почётный участник
- Сообщения: 11625
- Зарегистрирован: 26 июл 2012, 00:10
- Репутация: 4634
- Настоящее имя: Михаил Львович
- Откуда: Новоуральск
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
С небольшим уточнением.PKM писал(а):michael-yurov, давай дадим некоторые определения.
Пускай есть два состыкованных линейных сегмента с неким углом между ними.
Если в этом углу НЕТ скругления, значит ускорение бесконечно большое, т.к. конечное изменение скорости происходит за (условно) нулевое время.
Если же скругление ЕСТЬ - ускорение конечное, т.к. конечное изменение скорости происходит за конечный интервал времени прохождения скругления.
Согласен?
Если скругление есть, то мгновенное значение ускорения равно (V(t+Δt) - V(t)) / Δt при Δt стремящемся к нолю.
т.е. нужно брать не весь участок скругления, а минимальный, стремящийся у к нолю участок, на котором мы сможем определить наклон графика скорости (ускорение).
Даже если не смотреть на финансовую сторону вопроса (а я не готов работать бесплатно), мне проще написать с ноля, чем довести LinuxCNC до такого уровня, как я хочу.PKM писал(а):Но зачем писать с нуля новую ЧПУ?
- PKM
- Почётный участник
- Сообщения: 4263
- Зарегистрирован: 31 мар 2011, 18:11
- Репутация: 705
- Настоящее имя: Андрей
- Откуда: Украина
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
Собственно планировщикаmichael-yurov писал(а):Планировщик - лучше некуда. Чего тебе там не хватает?
Давай посмотрим на их же графики, первые три. Траектория же кусочная, так? Как ее нужно нормально проходить, чтобы не было запредельных выбросов ускорения, о которых ты говоришь? Нужно остановиться в конце каждого отрезка, потом разогнаться в начале следующего. Мы это видим на графиках? Нет. На графиках мы видим, что "планировщик" тупо прет с заданной скоростью подачи, на углах скорость не сбрасывается, что дает в моменты перехода на следующий отрезок выбросы ускорения в 10 раз превышающие норму!
Хваленое "сглаживание" состоит в дроблении отрезков и соответственном уменьшении выбросов ускорения. Внимательно смотрим на следующие графики, сравниваем с первыми - средняя скорость прохождения даже не изменилась.
Где здесь планирование? Это просто загонять ускорение в заданные рамки, вот и все. Причем дальше сами признаются, что это проблему решает не полностью, а For still further motion smoothing an additional KFLOP feature can be used.
Ты говоришь, что ФНЧ проходит через заданные точки? Где же? Например на графике The case below is with 3 milliseconds of filtering with a path error of ~ 0.1 mil (2.5um)
Что же с такой траекторией делает настоящий планировщик LinuxCNC?
При работе в режиме точной остановки G61 он будет полностью останавливаться в каждом углу. Иначе добиться точного прохождения кусочной траектории невозможно.
При работе в режиме сглаживания G64 задается максимальное отклонение от заданной траектории, исходя из которого планировщик строит скругления между сегментами. Которые и позволяют пройти эти углы без полной остановки, а всего лишь с некоторым снижением скорости при полном выполнении ограничений по ускорению. Чем больше допустимое отклонение, тем больше величина скругления, тем меньше сбрасываем скорость. Так работают настоящие системы ЧПУ. Вот пример прохождения по квадрату со скругленными углами
Разница есть?
Настоящее планирование траектории полностью использует возможности станка, генерирует траекторию под заданную точность и заданное ускорение.
Псевдопланирование гонит без разбору с заданной скоростью невзирая на углы, а допустимое отклонение использует всего лишь для сглаживания выбросов ускорения.
Это совсем разные библиотекиmichael-yurov писал(а):Я так и не увидел ничего, чем планировщик LinuxCNC был бы лучше планировщика KMotionCNC (особенно учитывая, что это одна и та же библиотека, но с небольшими изменениями).
- PKM
- Почётный участник
- Сообщения: 4263
- Зарегистрирован: 31 мар 2011, 18:11
- Репутация: 705
- Настоящее имя: Андрей
- Откуда: Украина
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
С этим я согласен. Но это не настоящее сглаживание, все-таки. Иначе фильтр бы просто не понадобился.michael-yurov писал(а):KFlop с настройками по умолчанию разделит ее на 360 кусочков, и потом еще "подравняет" фильтром и выдаст результат, плавно изменяя скорость 3100 раз за время прохождения полной окружности!
И это при достаточно низких значениях ускорения, и при настройках по умолчанию!
Если бы речь шла про дорогой станок с большими значениями ускорения - разница была бы намного больше. И при этом никто не мешает настроить KMotionCNC на более мелкое разбиение изменив один единственный параметр.
Если бы они не выложили эти ужасные графики, у меня бы сохранилась иллюзия крутого планировщика в Кфлопе.
То есть я не говорю что в Кфлопе вообще нет планировщика. Конечно он взял планировщик из первого ЕМС, он разгоняется, тормозит. Но вот эти кусочные траектории проходит по-тупому без снижения скорости. Я это нормальным признать не могу.
Качественный планировщик Том не потянул, а скорость на кусочных траекториях в ЕМСшном была очень низкой. И он решил "плевать на ускорения, кто там будет разбираться! Зато скорость обработки повысим"
И был прав! Нафига вообще эти планировщики, ограничения... если клиенты и Мачем довольны, Кфлоп тем более хорош.
Интересно, Фанук и Сименс тоже плюют на ускорения?
- michael-yurov
- Почётный участник
- Сообщения: 11625
- Зарегистрирован: 26 июл 2012, 00:10
- Репутация: 4634
- Настоящее имя: Михаил Львович
- Откуда: Новоуральск
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
Да, для примера взяли кусочную траекторию (такой был файл УП, что нижняя правая дуга состоит из линейных сегментов).PKM писал(а):Давай посмотрим на их же графики, первые три. Траектория же кусочная, так?
По идее - остановится в каждой вершине,PKM писал(а): Как ее нужно нормально проходить
но, поскольку мы понимаем, что речь о дуге разбитой на линейные сегменты - нужно пройти ее так, как если бы это была идеальная дуга.
Ничего такого не говорил.PKM писал(а):чтобы не было запредельных выбросов ускорения, о которых ты говоришь
Путаешь теорию и практику.
Нет, на графиках не работа планировщика. На графиках теоретические изыскания - как бы было, если бы было все по простому...PKM писал(а):На графиках мы видим, что "планировщик" тупо прет с заданной скоростью подачи, на углах скорость не сбрасывается
Зачем ее сбрасывать, если по идее там должна быть дуга?, просто ее в УП сохранили сегментами.PKM писал(а):на углах скорость не сбрасывается,
Еще раз повторюсь - график просто для наглядности. Выбросы ускорения зависят от интервала дискретизации. Какой он там - никто не знает.PKM писал(а):то дает в моменты перехода на следующий отрезок выбросы ускорения в 10 раз превышающие норму!
Не в дроблении отрезков - а в построении скругления с необходимой точностью (по умолчанию - 1°, чего более чем достаточно для типовых задач).PKM писал(а):Хваленое "сглаживание" состоит в дроблении отрезков и соответственном уменьшении выбросов ускорения.
Она и не должна была измениться - траектория то ведь прежняя!PKM писал(а):Внимательно смотрим на следующие графики, сравниваем с первыми - средняя скорость прохождения даже не изменилась.
Ну еще траектория была сглажена. А что еще требовалось?PKM писал(а):Где здесь планирование? Это просто загонять ускорение в заданные рамки, вот и все.
Полностью - это на сколько? До состояния передачи контроллер криволинейной траектории вместо линейных сегментов? А есть ли в этом реальная необходимость? Я сильно сомневаюсь.PKM писал(а):Причем дальше сами признаются, что это проблему решает не полностью,
Можно вообще передавать данные в виде коэффициентов ряда Фурье, но зачем?
Да может быть еще применен фильтр нижних частот. Ну, и хорошо. Я считаю это хорошей идеей.
В конце написано, что для достижения точного перехода в вершину рассчитывается кубический сплайн:PKM писал(а):Ты говоришь, что ФНЧ проходит через заданные точки? Где же?
Последний график довольно сложен для понимания, но он показывает реальную ситуацию.To complete the path the final position and velocity of each of the coordinated axes are used to calculate a Cubic Spline to complete the final small motion. The Cubic Spline allows continuous velocity from the end of the smoothed path to the target position in a manner where the velocity also reaches zero at the target position. A Time duration of the Cubic Spline set at 2xTau of the low pass filter provides a relatively constant deceleration to the Target.
Ну это понятно. Нет никаких проблем использовать G61 в KMotionCNC.PKM писал(а):Что же с такой траекторией делает настоящий планировщик LinuxCNC?
При работе в режиме точной остановки G61 он будет полностью останавливаться в каждом углу.
Ну и как он их строит? Полагаю, что точно так же.PKM писал(а):При работе в режиме сглаживания G64 задается максимальное отклонение от заданной траектории, исходя из которого планировщик строит скругления между сегментами.
С чего ты это взял?PKM писал(а):Которые и позволяют пройти эти углы без полной остановки, а всего лишь с некоторым снижением скорости при полном выполнении ограничений по ускорению.
Если LinuxCNC строит скругление из отрезков, как KMotionCNC - то разницы в результате не будет. Разве что в KMotionCNC можно задать точность построения скруглений.
Это график того что LinuxCNC старается сделать, а не то, что реально делает.PKM писал(а):Вот пример прохождения по квадрату со скругленными углами
И график приведен с шагом в 1 мсек, что явно больше, чем графики KMOtionCNC.
И ты говоришь про квадрат со скругленными углами - так там дуговые сегменты, или линейные в исходной УП?
ну это уже какая-то отсебятина не имеющая к вопросу никакого отношения.PKM писал(а):Настоящее планирование траектории полностью использует возможности станка, генерирует траекторию под заданную точность и заданное ускорение.
Псевдопланирование гонит без разбору с заданной скоростью невзирая на углы, а допустимое отклонение использует всего лишь для сглаживания выбросов ускорения.
Чего это вдруг?PKM писал(а):Но вот эти кусочные траектории проходит по-тупому без снижения скорости.
Все прекрасно рассчитывает и проходит ровно так, чтобы не превысить допустимые ускорения по осям.
Ну опять бросание какашками.PKM писал(а):Качественный планировщик Том не потянул,
Вот именно! Даже сравнивать не было смысла.PKM писал(а):а скорость на кусочных траекториях в ЕМСшном была очень низкой.
Выдаешь желаемое за действительное.PKM писал(а):И он решил "плевать на ускорения, кто там будет разбираться! Зато скорость обработки повысим"
Так как ты описал работает "планировщик" PlanetCNC (вот там реально "нет планировщика"). Там реально дикие превышения ускорения и т.п.
Такая же фигня и у EdingCNC - на кривых из линейных сегментов жуткие превышения допустимых ускорений.
Ну опять какая-то фигатень, не имеющая отношения к вопросу.PKM писал(а):И был прав! Нафига вообще эти планировщики, ограничения... если клиенты и Мачем довольны, Кфлоп тем более хорош.
Ведешь себя, как тролль!
Кстати, а какую величину ускорения на графиках превысили в 10 раз?
- michael-yurov
- Почётный участник
- Сообщения: 11625
- Зарегистрирован: 26 июл 2012, 00:10
- Репутация: 4634
- Настоящее имя: Михаил Львович
- Откуда: Новоуральск
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
Я так понимаю - график отсюда: http://wiki.linuxcnc.org/cgi-bin/wiki.p ... oryControlPKM писал(а):Вот пример прохождения по квадрату со скругленными углами
Ну и чего? Там квадрат со скруглениями, которые записаны командами G2.
Код: Выделить всё
%
(1" square with 1/4"r corners)
G90 G54 G20
G64
G0 X0 Y.25 Z.25
z0
G1 Y.75 F999
G2 X.25 Y1 I.25
G1 X.75
G2 X1 Y.75 J-.25
G1 Y.25
G2 X.75 Y0 I-.25
G1 X.25
G2 X0 Y.25 J.25
G0z.25
M30
- PKM
- Почётный участник
- Сообщения: 4263
- Зарегистрирован: 31 мар 2011, 18:11
- Репутация: 705
- Настоящее имя: Андрей
- Откуда: Украина
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
michael-yurov писал(а):Еще раз повторюсь - график просто для наглядности. Выбросы ускорения зависят от интервала дискретизации. Какой он там - никто не знает.
Давай хотя бы разберемся, что там изображено...michael-yurov писал(а):Нет, на графиках не работа планировщика. На графиках теоретические изыскания - как бы было, если бы было все по простому...
To see more clearly the improvement the X Axis motion was captured in real-time (180us sample rate) and plotted.
Это разве не реальные данные, а теоретические изыскания?
At constant velocity the facet angle change causes the x velocity to drop while the y velocity increases
Сами признают, что с постоянной скоростью движутся через углы, то есть не считают нужным тормозить.
Далее этот же эффект просто уменьшается за счет сокращения длины отрезков и угла между ними. Признать полноценным планировщиком это нельзя.
michael-yurov писал(а):Все прекрасно рассчитывает и проходит ровно так, чтобы не превысить допустимые ускорения по осям.
На графиках выбросы ускорения до 300"/с2. Думаешь, это реальные пределы ускорений станка?michael-yurov писал(а):Кстати, а какую величину ускорения на графиках превысили в 10 раз?
А вот после фильтров выбросы снижаются примерно до 30"/с2, вот это уже похоже на "допустимые ускорения по осям".
Мы понимаем, а ЧПУ не так просто это понять, между прочим.michael-yurov писал(а):но, поскольку мы понимаем, что речь о дуге разбитой на линейные сегменты - нужно пройти ее так, как если бы это была идеальная дуга.
Вот это делает LinuxCNC - строит по отрезкам дуговую траекторию и проходит ее.
Это реальный график работы планировщика. Давай мне любую траекторию и я тебе построю графики из линукса.michael-yurov писал(а):Это график того что LinuxCNC старается сделать, а не то, что реально делает.
Дай мне кфлоп и я тебе из него построю реальные графики и сравним. К сожалению, без своей платы он не запускается.
LinuxCNC строит траекторию со скруглениями на стыках, а Кфлоп из мелких отрезков. В этом и разница, отсюда и выбросы ускорений.michael-yurov писал(а):Если LinuxCNC строит скругление из отрезков, как KMotionCNC - то разницы в результате не будет. Разве что в KMotionCNC можно задать точность построения скруглений.
Вот же сам Том записал дикие превышения ускорения в Кфлопе, какие еще доказательства нужны?michael-yurov писал(а):Так как ты описал работает "планировщик" PlanetCNC (вот там реально "нет планировщика"). Там реально дикие превышения ускорения и т.п.
- PKM
- Почётный участник
- Сообщения: 4263
- Зарегистрирован: 31 мар 2011, 18:11
- Репутация: 705
- Настоящее имя: Андрей
- Откуда: Украина
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
Да, просто показывает как на скруглениях без всяких выбросов ускорения работает планировщик. Точно так же хороший планировщик работает и на скруглениях, которые добавляет между отрезками кусочной траектории.michael-yurov писал(а):Я так понимаю - график отсюда: http://wiki.linuxcnc.org/cgi-bin/wiki.p ... oryControl
Ну и чего? Там квадрат со скруглениями, которые записаны командами G2.
Выбросов быть не должно.
- michael-yurov
- Почётный участник
- Сообщения: 11625
- Зарегистрирован: 26 июл 2012, 00:10
- Репутация: 4634
- Настоящее имя: Михаил Львович
- Откуда: Новоуральск
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
Прошу извинить - не перечитывал статью перед обсуждением.PKM писал(а):Я читать умею. To see more clearly the improvement the X Axis motion was captured in real-time (180us sample rate) and plotted.
Это разве не реальные данные, а теоретические изыскания?
Да, графики очень похожи на захват данных с таким интервалом.
Если взять интервал в 1 мс - никаких всплесков не останется.
Так это намеренно сделано каким-то способом!PKM писал(а):Сами признают, что с постоянной скоростью движутся через углы, то есть не считают нужным тормозить.
Так тут, вроде бы про планирование скоростей и ускорений ни слова не было.PKM писал(а):Далее этот же эффект просто уменьшается за счет сокращения длины отрезков и угла между ними. Признать полноценным планировщиком это нельзя.
Допустимая скорость движения по этой кривой рассчитывалась где-то раньше.
речь про то, что планировщик достраивает скругления на стыках, чтобы избежать всплесков ускорения. Что тебе не нравится - не пойму.PKM писал(а):Далее этот же эффект просто уменьшается за счет сокращения длины отрезков и угла между ними.
Так же и говорят - если двигаться по траектории в том виде, как она сохранена в УП - придется ступенчато изменять скорость, это приведет к сильным всплескам ускорения в вершинах траектории, что плохо,
поэтому KMotionCNC достраивает в углах такой траектории скругления и это сильно снижает всплески ускорения.
Про допустимую скорость движения по такой кривой там ничего не говорится. Как она рассчитывается - я не знаю.
Знаю только что при движении по окружности состоящей из линейных сегментов скорость очень близка к теоретически допустимой рассчитанной на основе центростремительного ускорения.
Это я проверял.
Так о том и идет речь в той статье. Рассказывается, что результат в итоге очень близок к идеалу.PKM писал(а):Мы понимаем, а ЧПУ не так просто это понять, между прочим.
Правда что ли?PKM писал(а):Вот это делает LinuxCNC - строит по отрезкам дуговую траекторию и проходит ее.
Где ты такое узнал?
Ну так возьми квадрат, как в той статье со скруглением радиусом в 1 дюйм, и разбиением на сегменты с изменением угла в 3°,PKM писал(а):Это реальный график работы планировщика. Давай мне любую траекторию и я тебе построю графики из линукса.
задай такие же настройки, и посмотри, что будет.
Не хотелось бы раздирать станок. Я им все же иногда пользуюсь.PKM писал(а):Дай мне кфлоп и я тебе из него построю реальные графики и сравним. К сожалению, без своей платы он не запускается.
Да и отправлять далеко - ты, вроде бы из Украины?
Боюсь, что просто не дойдет.
Могу попробовать записать данные с выхода осциллографом.
А в чем здесь заключается работа планировщика?PKM писал(а):Да, просто показывает как на скруглениях без всяких выбросов ускорения работает планировщик.
рассчитывает допустимую скорость движения по дуге?
- michael-yurov
- Почётный участник
- Сообщения: 11625
- Зарегистрирован: 26 июл 2012, 00:10
- Репутация: 4634
- Настоящее имя: Михаил Львович
- Откуда: Новоуральск
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
С чего ты так решил?PKM писал(а):Точно так же хороший планировщик работает и на скруглениях, которые добавляет между отрезками кусочной траектории.
Выбросов быть не должно.
Скругления, насколько я понимаю - это не дуга, а парабола, или гипербола, или еще что-то подобное.
- Сергей Саныч
- Мастер
- Сообщения: 9116
- Зарегистрирован: 30 май 2012, 14:20
- Репутация: 2857
- Откуда: Тюмень
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
"Пусть расцветают сто цветов!" (с) Мао Цзэдун
Хочет Михаил делать свою систему - ради бога! И неважно, какой алгоритм будет у планировщика. И если удастся довести ее до выпуска, я буду рад и за Михаила, и за пользователей его системы.
А LinuxCNC имеет один, но очень крупный недостаток - он под линуксом. И портировать его под винду вряд ли кто возьмется, да и смысла особого нет - большинство удовлетворено ломаным Мачем.
Хочет Михаил делать свою систему - ради бога! И неважно, какой алгоритм будет у планировщика. И если удастся довести ее до выпуска, я буду рад и за Михаила, и за пользователей его системы.
А LinuxCNC имеет один, но очень крупный недостаток - он под линуксом. И портировать его под винду вряд ли кто возьмется, да и смысла особого нет - большинство удовлетворено ломаным Мачем.
Чудес не бывает. Бывают фокусы.
- PKM
- Почётный участник
- Сообщения: 4263
- Зарегистрирован: 31 мар 2011, 18:11
- Репутация: 705
- Настоящее имя: Андрей
- Откуда: Украина
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
Начинаем приходить к общему знаменателю.
А вот линукс не будет так двигаться по такой кривой. Он либо добавляет скругления, либо отрабатывает полный останов между отрезками - в зависимости от режима.
Хотя теоретически при бесконечно мелком разбиении их быть не должно, но зачем тогда еще приплетать ФНЧ??? А затем же, зачем и степмастер сделан... устранить рывки и повысить плавность работы станка, чтобы можно было поднять допустимые ускорения Выходит, без ФНЧ задача сглаживания Кфлопом полностью не решается, так? А в линуксе спокойно решается с заданной точностью, там выбросов ускорения вообще нет.
Не уверен.michael-yurov писал(а):Если взять интервал в 1 мс - никаких всплесков не останется.
В том и беда, что он по кусочной кривой движется как по непрерывной. И выбросы также есть на второй серии графиков, просто они меньше за счет сглаживания, разумеется.michael-yurov писал(а):Так тут, вроде бы про планирование скоростей и ускорений ни слова не было. Допустимая скорость движения по этой кривой рассчитывалась где-то раньше.
А вот линукс не будет так двигаться по такой кривой. Он либо добавляет скругления, либо отрабатывает полный останов между отрезками - в зависимости от режима.
Правильно! Но принцип к сожалению не меняется - были выбросы до сглаживания, остались после сглаживания, только меньшие.michael-yurov писал(а):Так же и говорят - если двигаться по траектории в том виде, как она сохранена в УП - придется ступенчато изменять скорость, это приведет к сильным всплескам ускорения в вершинах траектории, что плохо,
поэтому KMotionCNC достраивает в углах такой траектории скругления и это сильно снижает всплески ускорения.
Похоже что планировщик расчитывает среднюю скорость исходя из допустимого ускорения по осям, но выбросы эти игнорирует. Согласен? Ведь даже в сглаженной траектории есть выбросы, так?michael-yurov писал(а):Знаю только что при движении по окружности состоящей из линейных сегментов скорость очень близка к теоретически допустимой рассчитанной на основе центростремительного ускорения.
Это я проверял
Хотя теоретически при бесконечно мелком разбиении их быть не должно, но зачем тогда еще приплетать ФНЧ??? А затем же, зачем и степмастер сделан... устранить рывки и повысить плавность работы станка, чтобы можно было поднять допустимые ускорения Выходит, без ФНЧ задача сглаживания Кфлопом полностью не решается, так? А в линуксе спокойно решается с заданной точностью, там выбросов ускорения вообще нет.
Ну это я скорее шучу, конечно не нужно отправлять, слишком много хлопот.michael-yurov писал(а):Не хотелось бы раздирать станок. Я им все же иногда пользуюсь.
Да и отправлять далеко - ты, вроде бы из Украины?
michael-yurov писал(а):Вот это делает LinuxCNC - строит по отрезкам дуговую траекторию и проходит ее.
Правда что ли? Где ты такое узнал?
Такие условия ставились при разработке нового планировщика LinuxCNC. Все эти выбросы вылавливались месяцами в разных ситуациях и устранялись математически планированием сглаживающей траектории, а не дроблением отрезков. Если этого не будет - придется значительно уменьшать допустимые ускорения приводов, чтобы не было срыва шагов, ну да не автору степмастера мне рассказывать про выбросыmichael-yurov писал(а):Выбросов быть не должно С чего ты так решил? Скругления, насколько я понимаю - это не дуга, а парабола, или гипербола, или еще что-то подобное.
Именно. Как он делает это и при сглаживании кусочных кривых.michael-yurov писал(а):А в чем здесь заключается работа планировщика?
рассчитывает допустимую скорость движения по дуге?
Попробую сделатьmichael-yurov писал(а):Ну так возьми квадрат, как в той статье со скруглением радиусом в 1 дюйм, и разбиением на сегменты с изменением угла в 3°,
задай такие же настройки, и посмотри, что будет.
- shalek
- Почётный участник
- Сообщения: 3019
- Зарегистрирован: 25 авг 2014, 10:40
- Репутация: 2576
- Настоящее имя: Александр
- Откуда: РБ Бобруйск
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
Уважаемые! Ничего, что вклиниваюсь? А нам что делать?
Студент готовится к экзамену. Товарищ спрашивает его: почему сопромат вверх ногами читаешь. А какая нафик разница - отвечает студент ему.
Последний раз редактировалось shalek 09 мар 2015, 21:16, всего редактировалось 1 раз.
Если ты не можешь решить проблему, значит это не твоя проблема!
Мой канал на YouTube: YouTube
ЧПУ "Бобр" 600x500 мм
shalek64@gmail.com
Мой канал на YouTube: YouTube
ЧПУ "Бобр" 600x500 мм
shalek64@gmail.com
- PKM
- Почётный участник
- Сообщения: 4263
- Зарегистрирован: 31 мар 2011, 18:11
- Репутация: 705
- Настоящее имя: Андрей
- Откуда: Украина
- Контактная информация:
Re: Сравнение бюджетных систем управления ЧПУ
Снова-таки - я не говорю, что Кфлоп не работает. Но он решает задачу сглаживания лобовым методом, некрасиво и неправильно. Хотя это решение вполне сойдет для большинства станков.
Но все-таки раз существует степмастер, актуальность правильного качественного сглаживания траектории в ЧПУ доказывать никому не нужно
Все переходят на АРМ, а там сплошной линукс-андроид, даже винда совсем не так что на десктопе...
Но все-таки раз существует степмастер, актуальность правильного качественного сглаживания траектории в ЧПУ доказывать никому не нужно
Кто знает, такой ли это большой недостаток например в 10-летней перспективе.Сергей Саныч писал(а):А LinuxCNC имеет один, но очень крупный недостаток - он под линуксом. И портировать его под винду вряд ли кто возьмется, да и смысла особого нет - большинство удовлетворено ломаным Мачем.
Все переходят на АРМ, а там сплошной линукс-андроид, даже винда совсем не так что на десктопе...