Направление вращения поворотной оси в mach3

Mach, популярные и не очень CAD, CAM. Обсуждение и разработка программ для управления станками.
tsipa740
Опытный
Сообщения: 162
Зарегистрирован: 16 июн 2020, 00:09
Репутация: 13
Настоящее имя: Sergei
Контактная информация:

Направление вращения поворотной оси в mach3

Сообщение tsipa740 »

Здравствуйте.

Подскажите пожалуйста, есть mach3 с поворотной осью
mach3.png (2595 просмотров) <a class='original' href='./download/file.php?id=193546&sid=16b819e349893d33c04cc95105e27dd3&mode=view' target=_blank>Загрузить оригинал (170.02 КБ)</a>
Галочки "шорт он G0" и "360 ролловер" стоят.

Наблюдаемое поведение при исходном состоянии X0 Y0 Z0 A0:

Код: Выделить всё

G0 A1
G0 A359
сделает градус по часовой и два против. Хорошо. Это то поведение которое не вызывает у меня изумления.

Код: Выделить всё

G1 A1
G1 A359
Сделает 359 градусов по часовой. < Не то чего я желаю, но это хотябы объяснимо

Код: Выделить всё

G1 A15
G1 A10
Полный оборот до 370 градусов. < Это чего вообще за поведение? Что за гоблины писали этот софт?

При убирании 360 ролловер, при исходном состоянии X0 Y0 Z0 A0:

Код: Выделить всё

G1 A1
G1 A359
Сделает 359 градусов по часовой. Плохо.

Код: Выделить всё

G1 A15
G1 A10
Сделает 15 градусов по часовой и 5 против. Хорошо.



Я поискал по форуму и нашел только тему 2016 года где человек остался доволен отключением 360 ролловер. Меня это немного не устраивает т.к. не убирает необходимость следить чтобы всегда 0 пересекался траекториями только по часовой стрелке, иначе mach3 вместо перемещения из 1 в 359 поедет пахая борозду через всю заготовку.

Поскольку в mach3 не так чтобы много опций было чтобы это настраивать, я, так понимаю, врядли я что-то смогу там исправить в этой чудесной программе.

Что вообще люди с этим делают?
Я вроде не особо экзотики-то и хочу, например вот в таком простом тулпафе
pm.png (2595 просмотров) <a class='original' href='./download/file.php?id=193547&sid=16b819e349893d33c04cc95105e27dd3&mode=view' target=_blank>Загрузить оригинал (159.93 КБ)</a>
если специально не придумывать ничего сгенерируется вот такой код https://paste2.org/pjBaGIk0 который и по часовой и против часовой и через ноль переедет.

Неужели все следят чтобы траектории были в одном направлении или 0 не пересекали?
Может можно в ПП как-нибудь заставить его работать с негативными углами?

Я потыкался по autodesk manufacturing post processor utility но толи я не понял куда там тыкать толи там в конструкторе никак не развернуться особо, гугление по "pmpost if condition" "pmpost current position" и прочие наивные попытки разобраться счастья мне не принесли.
Аватара пользователя
Kachik
Мастер
Сообщения: 1406
Зарегистрирован: 13 янв 2017, 16:22
Репутация: 308
Настоящее имя: Сергей
Откуда: Питер
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение Kachik »

Есть safe Z, и все g00 делаются на безопасной высоте, тогда и борозд не будет...
Но опция реально глючная - я у себя отключал.
tsipa740
Опытный
Сообщения: 162
Зарегистрирован: 16 июн 2020, 00:09
Репутация: 13
Настоящее имя: Sergei
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение tsipa740 »

Ну был бы G0 я бы ещё понял, он действительно выполняться должен на безопасной высоте, но я говорю про G1.
Т.е. Сделать я вот прям затрудняюсь сделать в powermill тулпаф так чтобы заготовка два раза провернулась против часовой.
Вот такой тулпаф, например,
roll-huyol.png (2565 просмотров) <a class='original' href='./download/file.php?id=193564&sid=16b819e349893d33c04cc95105e27dd3&mode=view' target=_blank>Загрузить оригинал (120 КБ)</a>
сгенерирует вот такой код:

Код: Выделить всё

N135 G01 X0.0001 A4.6125 F3000.0 
...
N146 Z47.5862 A1.4826 
N147 Z47.458 A0.4779 
N148 Z47.3432 A359.4737 
N149 Z46.881 A356.0155 

при выключенном 360 ролловер доедет до нуля как и ожидается, а потом поедет в 359 через другой край, это же G1.
При включённом 360 ролловер он на каждую поедет строчку будет делать полный оборот + ещё немного.

Это настолько нелепо что я сомневаюсь что я не делаю какой-то очевидной дикости, вплоть до того что какие-то странные теории рассматриваю о том что "mach3 понял что он ворованный и специально делает всякую дичь чтобы портить вам заготовки".

У всех так-же не работает G1 через 0 в обратном направлении?
Аватара пользователя
Kachik
Мастер
Сообщения: 1406
Зарегистрирован: 13 янв 2017, 16:22
Репутация: 308
Настоящее имя: Сергей
Откуда: Питер
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение Kachik »

Если в кадре (в строчке) явно не указан код G01, то перемещение в данном кадре выполняется как G00. Опция матча как раз только для ускоренных перемещений G00. У Вас строка 135 это G01, а вот все остальные выполняются на ускоренном перемещении. А вообще - отключите эту галку и голова болеть не будет...

Просто, что бы пользоваться данной галкой нормально - КАМ программа (а вернее постпроцессор) должна понимать, что ось А с бесконечным вращением и имеет углы A0-A360 и не имеет А вне этих пределов.
Правда непонятно как будет проходиться стык 0-360 (вернее понятно - роторной обработки не будет).
Иначе, например делаем роторную обработку и деталь вращается подряд 10 раз вокруг оси. КАМ выдаст движение до А3600. И далее возврат возможен только отмотав 10 раз назад...
Это у Хаасов вроде поворотка 0-360 и эта галка для совместимости с их и им подобным, софтом.
tsipa740
Опытный
Сообщения: 162
Зарегистрирован: 16 июн 2020, 00:09
Репутация: 13
Настоящее имя: Sergei
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение tsipa740 »

Я настаивать не буду, но помоему это

Код: Выделить всё

G1 A4 F3000
A3
это один большой G1. Но сути это не меняет, ПП и повермилл когда хотят переехать из 1 в 359 сделают `G1 A359` не важно в каком синтаксисе.

Единственное что сработало бы нормально это если бы ПП и ПМ использовали линейную шкалу для А - т.е. от -бесконечности до +бесконечности и повороты считали в абсолютных величинах т.е. вместо `G1 A1 -> G1 A359` `G1 A1 -> G1 A-1` или там `G1 A721 -> G1 A719`. Как этого добиться я затрудняюсь понять - в мануале делкама по pmpost там описаны опции "Angle Styles", я их потыкал и вообще не заметил разницы.

Там можно как-нибудь этот ПП более продвинуто конфигурировать, без этого их визуального конструктора?
tsipa740
Опытный
Сообщения: 162
Зарегистрирован: 16 июн 2020, 00:09
Репутация: 13
Настоящее имя: Sergei
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение tsipa740 »

Окей, а может кто-нибудь подсказать какое поведение у linuxcnc в этом случае?

Это сильно не первая проблема у мака которая не решается в принципе и я уже серьёзно рассматриваю переезд на что-то менее кривое.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение Serg »

tsipa740 писал(а): Окей, а может кто-нибудь подсказать какое поведение у linuxcnc в этом случае?
Какое настроишь такое и будет.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
tsipa740
Опытный
Сообщения: 162
Зарегистрирован: 16 июн 2020, 00:09
Репутация: 13
Настоящее имя: Sergei
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение tsipa740 »

Я тут почитал краем глаза форум касательно linuxcnc и у меня слёзка проступила от этой ветки:
viewtopic.php?f=15&t=4887

ПО в линупсе небыло бы полноценным без потрясающих решений -
Тут тебе и предложение поставить четыре поворотки чтобы решить проблему с тем что linuxcnc тупит на поворотной оси
И ровно такая-же проблема с тем что либо переход `359 -> 1` работает либо переход `2 -> 1` работает, одно из двух.
И какие-то восхитительные решения про подмену 360 на `359.999 -> 0 -> 1`.

Не то чтобы я не любил приключения но поверхностно мне это не кажется тем приключением в которое я хочу. Там всё реально так плохо или я просто не тот тред прочитал и не те советы увидел?

А как обстоят дела у автономных контроллеров типа DDCSV может кто-нибудь подсказать? Стоит ли вообще смотреть в этом направлении?
Аватара пользователя
Kachik
Мастер
Сообщения: 1406
Зарегистрирован: 13 янв 2017, 16:22
Репутация: 308
Настоящее имя: Сергей
Откуда: Питер
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение Kachik »

Можно никуда не смотреть. Контроллер не знает куда можно вращаться в данный момент, а куда нельзя. Это знает только составитель программы обработки и только он может это учесть в траекториях... Даже КАМ в этом случае - только инструмент...
А железо должно чётко следовать программе и ни в коем случае не должно само принимать решение, куда ему сейчас хочется повращаться...
Аватара пользователя
hmnijp
Мастер
Сообщения: 1692
Зарегистрирован: 20 авг 2017, 15:02
Репутация: 515
Настоящее имя: Константин
Откуда: Ульяновск
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение hmnijp »

tsipa740 писал(а): Сделает 359 градусов по часовой. < Не то чего я желаю, но это хотябы объяснимо
tsipa740 писал(а): Полный оборот до 370 градусов. < Это чего вообще за поведение? Что за гоблины писали этот софт?
tsipa740 писал(а): Сделает 359 градусов по часовой. Плохо.
Нет. все движения там абсолютно логичны, просто вы не поняли, что для движения по часовой стрелки - угол положительный, а против часовой - отрицательный.
Чтобы из угла 15 вернуться в угол 10 не поворотом через всю окружность, а вращением в обратную сторону - нужно написать "А-10". вот и всё.
Соотвественно нужно пп настроить, чтобы при повороте против часовой писал "-" и нужную координату.

другое дело, что в некоторых других системах - поворотка всегда движется по кратчайшему пути, и это наоборот сложнее контролировать. приходится в ПП разбивать целый поворот(или дуги >180гр) на сегменты, чтобы сделать вращение. здесь же просто указание угла сделает однозначное вращение(хотя есть нюансы)
Kachik писал(а): Если в кадре (в строчке) явно не указан код G01, то перемещение в данном кадре выполняется как G00.
Нет, если до этого был "модальный" G1, то все последующие движения по координатам тоже G1, пока явно не появится G0 переключающий на ускоренные
tsipa740
Опытный
Сообщения: 162
Зарегистрирован: 16 июн 2020, 00:09
Репутация: 13
Настоящее имя: Sergei
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение tsipa740 »

Kachik писал(а): А железо должно чётко следовать программе и ни в коем случае не должно само принимать решение
Ну я могу предположить что код из повермилла таки работает где-то, не на маке и не на линупсцнц. Т.е. существуют контроллеры которые читают G код и чудесным образом "сами" принимают решение ехать из `G1 1` в `G1 359` не через всю заготовку. Я надеюсь что у людей с такими контроллерами всё хорошо, после ваших слов я за них волнуюсь немного.
hmnijp писал(а): что для движения по часовой стрелки - угол положительный, а против часовой - отрицательный.
При этом 359 -> 1 работает как ожидается, но 1 -> 359 - нужно через всю заготовку переехать. Ну да, логично.
hmnijp писал(а): все движения там абсолютно логичны
Я не то чтобы желал спорить с этим утверждением, у меня чисто прикладной интерес в этом вопросе - есть ощущение что в ПП повермилла невозможно сделать "логичное" поведение. Удавалось ли это кому-то или все вращают заготовку только по часовой стрелке, но делают это логично?
Аватара пользователя
Kachik
Мастер
Сообщения: 1406
Зарегистрирован: 13 янв 2017, 16:22
Репутация: 308
Настоящее имя: Сергей
Откуда: Питер
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение Kachik »

tsipa740 писал(а): Я не то чтобы желал спорить с этим утверждением, у меня чисто прикладной интерес в этом вопросе - есть ощущение что в ПП повермилла невозможно сделать "логичное" поведение. Удавалось ли это кому-то или все вращают заготовку только по часовой стрелке, но делают это логично?
Повермилл и его ПП это инструменты. Поведение у него очень логичное. Вы сразу напишите - хотите разобраться или хотите получить готовый ответ как надо?
Лучше разбирать всё на конкретных примерах...
Аватара пользователя
hmnijp
Мастер
Сообщения: 1692
Зарегистрирован: 20 авг 2017, 15:02
Репутация: 515
Настоящее имя: Константин
Откуда: Ульяновск
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение hmnijp »

tsipa740 писал(а): При этом 359 -> 1 работает как ожидается, но 1 -> 359 - нужно через всю заготовку переехать. Ну да, логично.
Нет, вы не правы. если в позиции A1 вы напишите A-359 = он сделает движение на 2 градуса. Если напишите A359 = будет путь через всю заготовку - на 358 градусов против часовой. Выбор полностью за вами. что напишите, то он и сделает.
tsipa740 писал(а): Я не то чтобы желал спорить с этим утверждением, у меня чисто прикладной интерес в этом вопросе - есть ощущение что в ПП повермилла невозможно сделать "логичное" поведение. Удавалось ли это кому-то или все вращают заготовку только по часовой стрелке, но делают это логично?
Тут не с чем спорить. Движения в маче однозначны.
Другое дело, что возможно у вас ПП не подходит к мачу и выдает не то что нужно.
Чтобы работало - нужно это исправить.
"Логичное поведение" -то есть четкую связь повермилла и системы чпу(не важно какой) - обеспечивает соответствующий постпроцессор.
Он берет сырые данные перемещений из программы, и преобразует их в G код понятный "конкретному" контроллеру, чтобы обеспечить правильные перемещения. Если он у вас пишет не то что вам нужно, и мач двигается не правильно - либо ищите нормальный пп, либо сами отредактируйте его, чтобы он выдавал подходящий код. Возможно я вам глаза открою - но бывает такое, что G-код не всегда стандартный, и есть вещи, которые в разных системах там интерпретируются по разному. То есть для одного контроллера он выглядит так, а для другого - иначе. Для этого и нужен ПП.
tsipa740 писал(а): Ну я могу предположить что код из повермилла таки работает где-то, не на маке и не на линупсцнц. Т.е. существуют контроллеры которые читают G код и чудесным образом "сами" принимают решение ехать из `G1 1` в `G1 359` не через всю заготовку.
То есть в этом вашем предложении не хватает той мысли что я описал выше.
tsipa740
Опытный
Сообщения: 162
Зарегистрирован: 16 июн 2020, 00:09
Репутация: 13
Настоящее имя: Sergei
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение tsipa740 »

Kachik писал(а): 19 мар 2021, 20:08
tsipa740 писал(а): Я не то чтобы желал спорить с этим утверждением, у меня чисто прикладной интерес в этом вопросе - есть ощущение что в ПП повермилла невозможно сделать "логичное" поведение. Удавалось ли это кому-то или все вращают заготовку только по часовой стрелке, но делают это логично?
Повермилл и его ПП это инструменты. Поведение у него очень логичное. Вы сразу напишите - хотите разобраться или хотите получить готовый ответ как надо?
Лучше разбирать всё на конкретных примерах...

Т.е. я понимаю что существует способ мышления при котором можно получить либо работающий кратчайшее перемещение `359 -> 1` либо кратчайшее перемещение `2 -> 1` но никак не оба сразу т.к. оба сразу это нелогично при таком способе мышления, окей я понял-принял, а как меня это приблежает к тому чтобы это поделие работать начало?
Если под "разобраться" имеется ввиду принять как данность что у мака поведение именно такое а в ПП повермилла это настроить невозможно, это "логично" и потому заготовку всегда придётся вращать только по часовой стрелке, то я, конечно, хочу готовый ответ как надо ну или какая там альтернатива к "разобраться".
Если под "разобраться" имеется ввиду найти и почитать главу мануала от autodesk manufacturing post processor utility где я смогу найти как это настроить то я, конечно, хочу разобраться.
hmnijp писал(а): Для этого и нужен ПП
Я это понимаю, но спасибо что объяснили (я это без сарказма).
Собственно это я и спрашиваю - возможно ли для повермилла, желательно используя pmpost а не дакт пост, сделать так чтобы код который генерирует ПП работал корректно с маком, или настроить мак таким образом чтобы он корректно работал с ПП повермилла. На мой взгляд тут возможны три варианта:
- Нет, никто не решил эту проблему, этого сделать невозможно
- Никто не использует ПМ с маком с поворотной осью
- Да, это возможно
Я даже предлагаю рассуждения о том логично это или не очень вынести за рамки этой беседы т.к. практической пользы они не несут.
Аватара пользователя
hmnijp
Мастер
Сообщения: 1692
Зарегистрирован: 20 авг 2017, 15:02
Репутация: 515
Настоящее имя: Константин
Откуда: Ульяновск
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение hmnijp »

tsipa740 писал(а): Т.е. я понимаю что существует способ мышления при котором можно получить либо работающий кратчайшее перемещение `359 -> 1` либо кратчайшее перемещение `2 -> 1` но никак не оба сразу т.к. оба сразу это нелогично при таком способе мышления
Автоматические кратчайшие перемещения вообще должны работать только в быстрых перемещениях g0 - в ту сторону, где минимальный угол поворота. Там есть отдельная галка в настройках для этого.
В рабочих G1 вы должны сами указать в какую сторону крутить - через короткий путь или через длинный. Тут направление нужно ЯВНО указывать знаком "+" или "-". У вас в пп, как понимаю, этого нет.
photo_2021-03-19_20-23-41.jpg (2357 просмотров) <a class='original' href='./download/file.php?id=193641&sid=16b819e349893d33c04cc95105e27dd3&mode=view' target=_blank>Загрузить оригинал (85.44 КБ)</a>
photo_2021-03-19_20-24-37.jpg (2357 просмотров) <a class='original' href='./download/file.php?id=193640&sid=16b819e349893d33c04cc95105e27dd3&mode=view' target=_blank>Загрузить оригинал (94.63 КБ)</a>
tsipa740 писал(а): 17 мар 2021, 19:57 Ну был бы G0 я бы ещё понял....

сгенерирует вот такой код:

Код: Выделить всё

N135 G01 X0.0001 A4.6125 F3000.0 
...
N146 Z47.5862 A1.4826 
N147 Z47.458 A0.4779 
N148 Z47.3432 A359.4737 
N149 Z46.881 A356.0155 

при выключенном 360 ролловер доедет до нуля как и ожидается, а потом поедет в 359 через другой край, это же G1.
При включённом 360 ролловер он на каждую поедет строчку будет делать полный оборот + ещё немного.

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

Код: Выделить всё

N146 Z47.5862 A-1.4826 
N147 Z47.458 A-0.4779 
N148 Z47.3432 A-359.4737 
N149 Z46.881 A-356.0155 
И всё будет работать правильно.
tsipa740 писал(а): обственно это я и спрашиваю - возможно ли для повермилла
Уверен, что возможно.
Но сам в пм не работаю, и с логикой его поста не особо знаком. Для примера, в постах autodesk HSM, которые знаю хорошо, можно как угодно, любой функцией описать поворотку.
tsipa740
Опытный
Сообщения: 162
Зарегистрирован: 16 июн 2020, 00:09
Репутация: 13
Настоящее имя: Sergei
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение tsipa740 »

hmnijp писал(а): 19 мар 2021, 22:13 photo_2021-03-19_20-23-41.jpg
Спасибо за картинки, они кое-что проясняют. В ПП ПМ если такая буква, я пробовал ставить самые разные варианты, но генерируемый код не меняется. Я на вкладке комманд может неправильно референшу Rotary Axis 1 и надо как-то особенно это делать через параметры?
274d.png (2348 просмотров) <a class='original' href='./download/file.php?id=193645&sid=16b819e349893d33c04cc95105e27dd3&mode=view' target=_blank>Загрузить оригинал (144.22 КБ)</a>
tsipa740
Опытный
Сообщения: 162
Зарегистрирован: 16 июн 2020, 00:09
Репутация: 13
Настоящее имя: Sergei
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение tsipa740 »

Окей, я поменял параметр Angle styles на RS274D на вкладке opt file -> mult-axis и ролловер на вкладке параметра линейного мува на -360; +360
и сгенерированный код выглядит так как нужно.
У меня сейчас нет доступа до станка проверить, но визуально всё отлично.

@hmnijp
@Kachik
Большое спасибо за помощь, джентльмены. Я извиняюсь если местами вёл себя мудаковато, я борюсь с собой и своей мерзкой натурой.
Вложения
274d.png (2342 просмотра) <a class='original' href='./download/file.php?id=193649&sid=16b819e349893d33c04cc95105e27dd3&mode=view' target=_blank>Загрузить оригинал (115.97 КБ)</a>
Аватара пользователя
hmnijp
Мастер
Сообщения: 1692
Зарегистрирован: 20 авг 2017, 15:02
Репутация: 515
Настоящее имя: Константин
Откуда: Ульяновск
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение hmnijp »

tsipa740 писал(а): Окей, я поменял параметр Angle styles на RS274D на вкладке opt file -> mult-axis и ролловер на вкладке параметра линейного мува на -360; +360
и сгенерированный код выглядит так как нужно.
У меня сейчас нет доступа до станка проверить, но визуально всё отлично.
Отлично, что нашлась настройка соответствующая..., но проверяйте аккуратно, тк кроме этого описания, всё равно есть отзывы что mach3 поглюкивает :hehehe:
Ещё вижу там строчку в настройках - sign output... может там варинаты разные ещё...
tsipa740
Опытный
Сообщения: 162
Зарегистрирован: 16 июн 2020, 00:09
Репутация: 13
Настоящее имя: Sergei
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение tsipa740 »

Нууу я добрался таки до станка и проверил и оно всеравно не работает.
На этот раз не работает `G1 A1 -> G1 A-0` - он едет через всю заготовку а не по кратчайшему пути
Аватара пользователя
hmnijp
Мастер
Сообщения: 1692
Зарегистрирован: 20 авг 2017, 15:02
Репутация: 515
Настоящее имя: Константин
Откуда: Ульяновск
Контактная информация:

Re: Направление вращения поворотной оси в mach3

Сообщение hmnijp »

tsipa740 писал(а): 20 мар 2021, 10:31 Нууу я добрался таки до станка и проверил и оно всеравно не работает.
На этот раз не работает `G1 A1 -> G1 A-0` - он едет через всю заготовку а не по кратчайшему пути
Ну что есть - то есть. это уже скорее косяк мача - не совсем логично работает, или -0 не понимает... :wik:
Если писать G1 A1 -> G1 A-0,0001, или G1 A1 -> G1 A-360(та же самая точка) то едет правильно...
попробуйте с лимитами поиграть в пп, или замену -0 на -360...
Ответить

Вернуться в «Windows / Mach»