Mach3. Помогите настроить пульт (РГИ, MPG)
- Курдль
- Мастер
- Сообщения: 2010
- Зарегистрирован: 20 мар 2018, 16:55
- Репутация: 261
- Настоящее имя: Курдль Энтеропийский
- Откуда: Msk
- Контактная информация:
Mach3. Помогите настроить пульт (РГИ, MPG)
Привет всем!
Не могу справиться с простой вроде бы задачей.
Необходимо, чтобы по одному щелчку энкодера, выбранная ось передвинулась за заданное расстояние.
Как я понимаю, для этого нужно выбрать режим Single Step.
В режиме velosity Only или Step/velosity оси двигаются, но как-то странно.
На одиночные щелчки энкодера приводы не реагируют. При вращении энкодера шаги ШД исполняются только после множества щелчков энкодера (всегда разное количество).
При этом сигналы от энкодера принимаются Mach3 исправно. На каждый щелчок в окне Velosity появляется +1.0 или -1.0, а в окне Count значение инкрементируется или уменьшается. Пытался как-то настроить режимы velosity Only и Step/velosity, получал разные коэффициенты от 80% до 110%, но это ничего не меняло.
Буду признателен за советы.
Не могу справиться с простой вроде бы задачей.
Необходимо, чтобы по одному щелчку энкодера, выбранная ось передвинулась за заданное расстояние.
Как я понимаю, для этого нужно выбрать режим Single Step.
В режиме velosity Only или Step/velosity оси двигаются, но как-то странно.
На одиночные щелчки энкодера приводы не реагируют. При вращении энкодера шаги ШД исполняются только после множества щелчков энкодера (всегда разное количество).
При этом сигналы от энкодера принимаются Mach3 исправно. На каждый щелчок в окне Velosity появляется +1.0 или -1.0, а в окне Count значение инкрементируется или уменьшается. Пытался как-то настроить режимы velosity Only и Step/velosity, получал разные коэффициенты от 80% до 110%, но это ничего не меняло.
Буду признателен за советы.
Мой сайт: https://cnc1310.ru
- Mamont
- Мастер
- Сообщения: 1979
- Зарегистрирован: 10 дек 2015, 12:21
- Репутация: 384
- Настоящее имя: Виталий
- Откуда: РБ Минск
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
Настраивать надо в закладке порты и пины. Скорость и шагов на мм. Скорость методом проб и ошибок подбирать. Малое значение, будет на щелчок несколько шагов выдавать. Большое - начнет двигаться не сразу.
Режим работы step\velocity.
Режим работы step\velocity.
- Курдль
- Мастер
- Сообщения: 2010
- Зарегистрирован: 20 мар 2018, 16:55
- Репутация: 261
- Настоящее имя: Курдль Энтеропийский
- Откуда: Msk
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
О! У меня стоит Counts/unit = 1000, Velosity = 1
Понятия не имею, откуда эти значения взялись.
Попробую поменять. Спасибо.
Но разве это не компенсируется калибратором MPG?
А Single Step работает вообще? Меня бы он полностью устроил.Mamont писал(а): Режим работы step\velocity.
Но и step\velocity сойдет, если удастся настроить.
А вот эти параметры в генеральных настройках что дают? У меня их изменения никак не отразились.
Мой сайт: https://cnc1310.ru
- Mamont
- Мастер
- Сообщения: 1979
- Зарегистрирован: 10 дек 2015, 12:21
- Репутация: 384
- Настоящее имя: Виталий
- Откуда: РБ Минск
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
Особенности режима сингл степ - чтобы шагнул двигатель, надо чтобы пульт выслал достаточно большую пачку импульсов с хорошей скоростью.
Для следующего шага необходимо выдержать небольшую паузу, не слать импульсы.
Мульти степ - пачка требуется покороче и не на высокой скорости. Паузу выдерживать необязательно.
Велосити и велосити/степ - шагает двигателем на каждую фазу квадратуры энкодера. По мне так самый удобный режим(ы). Разницу между обоими я не ощутил
В настройках порты и пины у меня 80 импульсов на мм (т.к. шд двигатели в режиме полушага, мпг работает с той же дискретностью что и шд), скорость -58 ("минус" чтобы изменить направление)
Коротко о моем пульте. Физически энкодер делает 100 полных квадратур на 1 оборот (и соответственно 400 изменений фаз). Внутри стоит микроконтроллер, который делит рубит в 4 раза. Т.е. в комп заходит 25 полных квадратур (100 изменений фаз).
В комп приходит 4 сигнала, 2 квадратурных и 2 выбор оси.
На пульте 5 кнопок. Х Y Z О Spd.
Нажатие на одну из ХУ3 отключит перемещение с клавиатуры и включит режим МПГ. Нажатие на О отключит с МПГ и включит перемещение с клавиатуры. Что удобно, не надо на клавиатуре предварительно что-то тыкать. Это настраивается в BRAIN-логикe мача.
Выбор скорости - удержание кнопки выбора оси и кручение энкодера выключает делитель на 4. Ось перемещается в 4 раза быстрее.
Нажатие кнопки Spd - частоту умножит на 4. Ось будет ехать в 16 раз быстрее. Но стоит ограничение на выходную частоту импульсов, чтобы не было дерганного движения на около максимальных скоростях, у меня от такого бывало срывало вращение ШД.
Для следующего шага необходимо выдержать небольшую паузу, не слать импульсы.
Мульти степ - пачка требуется покороче и не на высокой скорости. Паузу выдерживать необязательно.
Велосити и велосити/степ - шагает двигателем на каждую фазу квадратуры энкодера. По мне так самый удобный режим(ы). Разницу между обоими я не ощутил
Они работают в режиме сингл-степ мульти-степ. Перемещение координаты будет кратно этим значениям. Перемещение со скоростью мпг феедрате.
В настройках порты и пины у меня 80 импульсов на мм (т.к. шд двигатели в режиме полушага, мпг работает с той же дискретностью что и шд), скорость -58 ("минус" чтобы изменить направление)
Коротко о моем пульте. Физически энкодер делает 100 полных квадратур на 1 оборот (и соответственно 400 изменений фаз). Внутри стоит микроконтроллер, который делит рубит в 4 раза. Т.е. в комп заходит 25 полных квадратур (100 изменений фаз).
В комп приходит 4 сигнала, 2 квадратурных и 2 выбор оси.
На пульте 5 кнопок. Х Y Z О Spd.
Нажатие на одну из ХУ3 отключит перемещение с клавиатуры и включит режим МПГ. Нажатие на О отключит с МПГ и включит перемещение с клавиатуры. Что удобно, не надо на клавиатуре предварительно что-то тыкать. Это настраивается в BRAIN-логикe мача.
Выбор скорости - удержание кнопки выбора оси и кручение энкодера выключает делитель на 4. Ось перемещается в 4 раза быстрее.
Нажатие кнопки Spd - частоту умножит на 4. Ось будет ехать в 16 раз быстрее. Но стоит ограничение на выходную частоту импульсов, чтобы не было дерганного движения на около максимальных скоростях, у меня от такого бывало срывало вращение ШД.
- Курдль
- Мастер
- Сообщения: 2010
- Зарегистрирован: 20 мар 2018, 16:55
- Репутация: 261
- Настоящее имя: Курдль Энтеропийский
- Откуда: Msk
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
Вот придумают же! Насколько было бы понятнее, если б этот режим работал "сингл щелчой энкодера - сингл степ"
Вечером попробую поиграться с настройками.
А не слишком сложно для пульта?
У меня тупейший пассивный ящик с энкодером и переключателями (ну еще немного притягивающих резисторов и конденсаторов от помех).
На моем тупом пульте тоже ничего не надо тыкать. Может за него контроллер что-то Mach3 сообщает, но как только замыкается одна из цепей выбора оси, Mach3 переводит управление на пульт. Скорость движения выбирается вторым переключателем (1:1, 1:10, 1:100).
Я сначала его на макете собрал и протестировал. Вроде работал, как надо, только с другим контроллером (STB5100).
На стенде вёл себя прилично, а как собрал в "железе" и подключил к штатному контроллеру STB 4100 - настроить не могу.
https://youtu.be/2jxWlMlAcXs?si=74GAAF4-xUHNhneq&t=47
Мой сайт: https://cnc1310.ru
- Курдль
- Мастер
- Сообщения: 2010
- Зарегистрирован: 20 мар 2018, 16:55
- Репутация: 261
- Настоящее имя: Курдль Энтеропийский
- Откуда: Msk
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
Ничего я так и не добился.
Какое бы значение скорости и шагов на мм я не вводил, на движении исполнительных механизЬмов это никак не отражается.
Вводил значения Counts/Unit от 1000 до 1. Значение Velosity менял то 1 до 100 с разными Counts/Unit.
На экране настроек (см. ниже) в красном окошке на один щелчок высвечиавлось от 1 до 1000, а в синем - на каждый щелчок значение менялось на +/- 1. При этом даже для значения скорости 1000, после одного щелчка энкодера никакого импульса на ШД не поступало.
Зато в режиме Single Step оси стали двигаться (с низкой скоростью отрабатывая кол-во нащёлканных значений). Такой режим мне не нужен.
И еще странная вещь: параметры стали сохраняться, только если запустить Mach3 в режиме администратора.
Мой сайт: https://cnc1310.ru
- Mamont
- Мастер
- Сообщения: 1979
- Зарегистрирован: 10 дек 2015, 12:21
- Репутация: 384
- Настоящее имя: Виталий
- Откуда: РБ Минск
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
Получается надо использовать плату 5100. 4100 косячная?
Думаю купить для экспериментов 5100, хотя не решил, надо оно мне или нет.
Лпт-шный мач иногда зависает. Иногда в усмерть, что мышка даже не шевелится (сброс надо жать), иногда только драйвер (надо перезапустить мач).
Думаю купить для экспериментов 5100, хотя не решил, надо оно мне или нет.
Лпт-шный мач иногда зависает. Иногда в усмерть, что мышка даже не шевелится (сброс надо жать), иногда только драйвер (надо перезапустить мач).
- Курдль
- Мастер
- Сообщения: 2010
- Зарегистрирован: 20 мар 2018, 16:55
- Репутация: 261
- Настоящее имя: Курдль Энтеропийский
- Откуда: Msk
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
"У каждой задачи есть простое, очевидное неправильное решение"
Простое решение - постановить, что виновата карта. Но как же так? Mach3 получает от неё четкий импульс на каждый щелчок энкодера и корректный статус переключателей. Что еще нужно Mach3 для правильной реакции? У меня пока нет идей, где карта вносит свое негативное влияние
А что до выбора между 5100 и 4100 - так они все косячные. У меня полный флеш-рояль этих карт (разного наименования и цвета).
Но 4100 менее косячная из них. Хотя я держу наготове 2 версии её плагинов и подставляю по ситуации то один, то другой.
С одним плагином работает хоть как-то пульт, но не работает съем карты высот. А с другим - наоборот.
С STB5100 карта высот вообще не снимается ни с одним плагином.
Но хуже всего другое - нестабильность частоты управляющих импульсов, генерируемая ими.
Понимаете, о чем я? Протокол USB, по которому они управляются, асинхронный, в отличие от LPT. Это значит, что пакет данных от ПК к контроллеру уходит, когда процессор решит, что настало его время между выполнением других процессов. Т.е. может быть через 1мс, а может быть через 1мкс. А значит и карта дрыгает ногами в эти моменты. В результате ШД на прямой траектории должен вроде как получать чистую гребенку импульсов, идущих четко через одинаковый промежуток времени, ан нет - он получает то же кол-во импульсов, но чередующихся через произвольные интервалы.
Казалось бы "А что такого? Результат же один: исполнительный механизм доедет из точки А до точки Б точно на заданное расстояние за заданное время!".
Доедет, но изрядно продолбленный незапланированными микро-рывками.
Так вот, карта STB1400 умеет более-менее справляться с этой проблемой, а 5100 - нет.
Кроме того, 5100 в последнее время стали продаваться уж совсем подвального качества. У меня на одной рванул конденсатор (рассчитанный на 16 В при заявленном питании платы 24 В). Я писал об этом здесь
И приводил сравнение здесь
Мой сайт: https://cnc1310.ru
-
- Мастер
- Сообщения: 1492
- Зарегистрирован: 23 июн 2022, 14:13
- Репутация: 55
- Настоящее имя: Максим
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
о майн гот(( ну во первых нет никакого протокола LPT (у вас же не принтер?).
А устройства USB вполне справляются с выводом в реальном времени с параметрами недостижимыми для LPT. что значит асинхронный? в смысле нет явных синхроимпульсов? они скрыты в данных. а кадры и миникадры идут строго по времени. а вот у LPT вывод по времени типа "и так сойдет".
если платы что вы юзаете не поддерживают USB, а пытаются изобразить LPT через USB - то USB то не виновато?
- Курдль
- Мастер
- Сообщения: 2010
- Зарегистрирован: 20 мар 2018, 16:55
- Репутация: 261
- Настоящее имя: Курдль Энтеропийский
- Откуда: Msk
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
Я и в прошлый раз усвоил Вашу точку зрения и спорить не стал. Хорошо, не принтер и LPT а "Параллелоьный порт стандарта IEEE-1284".
Однако ради справедливости оговорюсь, что может быть не во всем виноват USB.
Я не эксперт по Mach3, но я считаю, что эта программа имеет 2 основных контура.
1. Вычисление траектории по командам G-кода и преобразование её в управляющие сигналы параллельного порта.
2. Обслуживание API для устройств, подключаемых не по параллельному порту.
Так вот, по моему мнению, второй вариант (который используется и для USB-контроллеров) куда хуже обеспечивает режим реального времени.
Это связано с тем, что API получают данные по остаточному принципу. Т.е. они получают не управляющие импульсы, а координаты исполнительного механизма с DRO, а потом плагины снова пересчитывают их в управляющие импульсы. Таким образом временнЫе ошибки обновления DRO накладываются на ошибки, связянные с процессом пересчета и далее - с асинхронностью USB.
Мой сайт: https://cnc1310.ru
-
- Мастер
- Сообщения: 1492
- Зарегистрирован: 23 июн 2022, 14:13
- Репутация: 55
- Настоящее имя: Максим
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
ой вряд ли мач использует принтерный порт именно как принтерный. просто использует халявные порты ввода-вывода.
ну так если драйвер служит для обслуживания виртуального LPT (или сделан по образу и подобию) - то там и нет соблюдения никаких времен. и конечно картина может ухудшится. а если бы думали о временах - то физический LPT и рядом бы не стоял со своими скоростными и временнЫми параметрами.
- Курдль
- Мастер
- Сообщения: 2010
- Зарегистрирован: 20 мар 2018, 16:55
- Репутация: 261
- Настоящее имя: Курдль Энтеропийский
- Откуда: Msk
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
Не просто халявные, а еще которые мгновенно передают сигнал и способны мгновенно доставить его обратно.
Казалось бы Mach3 давно исчерпал себя вместе с ушедшим в историю параллельным портом.
Однако LinuxCNC работает на тех же портах и успешно развивается. И для него специально адаптировано ядро реального времени.
Что значит "обслуживания виртуального LPT"? USB-контроллеры, которые мы обсуждаем, получают определенные данные от Mach3 и в соответствии с ними генерируют импульсы для исполнительных устройств. Например Step, Dir для ШД или PWM для шпинделя. Причем здесь LPT?
Как Вы думаете, зачем на этих контроллерах установлен STM32? Тупо дрыгать ногами сообразно указанному в пакете номеру?
Я раньше был уверен, что это какая-то серьезная разработка приличной компании, бездарно скопированная китайцами. Но первоисточника так и не нашел. Зато нашел некоторую логику в информации, передаваемой в пакетах. Жаль, что я так и не могу довести эту работу до конца, но кое что понять удалось. И это перекликается с моими представлениями об алгоритмах для поддержания режима реального времени при асинхронной передаче.
Ниже приведена диаграмма одного из сэмплов, снятого мной траффика. На верхнем графике - временнЫе метки пакета, которые контроллер мог бы использовать для синхронизации генерируемых импульсов с предназначенным для них временем срабатывания.
Мой сайт: https://cnc1310.ru
- Mamont
- Мастер
- Сообщения: 1979
- Зарегистрирован: 10 дек 2015, 12:21
- Репутация: 384
- Настоящее имя: Виталий
- Откуда: РБ Минск
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
Иметь в составе устройство реального времени и не реализовать стабильный генератор шагов это надо было постараться.
Плата выдает на драйвера только степ-дир, нет возможности переключения на квадратурные сигналы?
Плата выдает на драйвера только степ-дир, нет возможности переключения на квадратурные сигналы?
- Курдль
- Мастер
- Сообщения: 2010
- Зарегистрирован: 20 мар 2018, 16:55
- Репутация: 261
- Настоящее имя: Курдль Энтеропийский
- Откуда: Msk
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
А китайцам пофигу. "Пипл хавает" и еще этот пипл спорит со мной, что оно и не надо. Раз шпиндель докатывается в нужную точку, то так и хрен с ним.
Что такое квадратурные сигналы?
Мой сайт: https://cnc1310.ru
- Mamont
- Мастер
- Сообщения: 1979
- Зарегистрирован: 10 дек 2015, 12:21
- Репутация: 384
- Настоящее имя: Виталий
- Откуда: РБ Минск
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
Сигналы как с энкодера.
Типы управляющего сигнала: step-dir Cw-CCw, квадратурный
У квадратурного сигнала повышенная стабильность. Одиночная помеха не будет приведет к появлению ошибки.
Но Мач может генерить как простую, так и 3-фазную квадратуру А-B-C, устойчивость которой к помехам еще выше. Но лишняя нога на каждый порт требуется
Типы управляющего сигнала: step-dir Cw-CCw, квадратурный
У квадратурного сигнала повышенная стабильность. Одиночная помеха не будет приведет к появлению ошибки.
Но Мач может генерить как простую, так и 3-фазную квадратуру А-B-C, устойчивость которой к помехам еще выше. Но лишняя нога на каждый порт требуется
-
- Мастер
- Сообщения: 1492
- Зарегистрирован: 23 июн 2022, 14:13
- Репутация: 55
- Настоящее имя: Максим
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
помехоустойчивость сомнительное преимущество.
я так понимаю быстродействие учетверенное у него если все фронты задействованы. по сравнению со степдир. но тоже .. тут же не про мегагерцы речь. на полтора метра можно и ттл-степдиром надежно передавать.
- Курдль
- Мастер
- Сообщения: 2010
- Зарегистрирован: 20 мар 2018, 16:55
- Репутация: 261
- Настоящее имя: Курдль Энтеропийский
- Откуда: Msk
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
А. Нет. Ничего подобного эти платы не выдают.
Мой сайт: https://cnc1310.ru
- Mamont
- Мастер
- Сообщения: 1979
- Зарегистрирован: 10 дек 2015, 12:21
- Репутация: 384
- Настоящее имя: Виталий
- Откуда: РБ Минск
- Контактная информация:
Re: Mach3. Помогите настроить пульт (РГИ, MPG)
Прошивки от этих 5100 и 4100 нигде не было? Мог бы в блю-пилюлю залить и проанализировать работу