Страница 1 из 1

G-код. Как независимо двигать несколько осей?

Добавлено: 15 июл 2017, 23:14
sdelkin
У меня есть задача:
Исходные данные: 5 осей (X, Y+B, Z - линейные фрезерные оси, A - поворотная ось, C - дополнительное приспособление). Все оси находятся в 0 позиции.
Необходимо задать команду: X300 Z300 C800

Проблема в том, что все движение станка осуществляется с наименьшей скоростью любой оси. Самая медленная ось - это С, она движется за 15 секунд. По отдельности ось X и Z может приехать за 7 секунд. И потом если дать вторую команду C800 - она приедет за 15 секунд. Суммарное время 23 секунды.
Если я задаю X300 Z300 C800 одной командой - оси XZ доезжают на медленной скорости за 15 секунд вместе с C. Мне нужно, чтобы оси XZ не подстраивались под скорость оси C, а приезжали за 7 секунд, и не ожидали ось C. Ось С пусть едет свои 15 секунд, но нужно не останаливать выполнение программы

Это вообще возможно в Mach3?

Re: G-код. Как независимо двигать несколько осей?

Добавлено: 20 июл 2017, 20:37
Kachik
Не в качестве ответа, а в качестве новой информации... а команды G0, G1 и подобные так-же подгоняют оси одновременно ?

Re: G-код. Как независимо двигать несколько осей?

Добавлено: 20 июл 2017, 21:49
Rom327
sdelkin писал(а):Мне нужно, чтобы оси XZ не подстраивались под скорость оси C, а приезжали за 7 секунд, и не ожидали ось C. Ось С пусть едет свои 15 секунд, но нужно не останаливать выполнение программы. Это вообще возможно в Mach3?
А если дать команду в 2 строки?
Х300 Z300
C800
или так, в одну строку: Х300 Z300; C800

Re: G-код. Как независимо двигать несколько осей?

Добавлено: 20 июл 2017, 23:18
KarakurT
Как вариант разбить на две команды - сначала движение всех осей в некую точку, которая - для быстрых осей конечная, а для медленных - та, куда ось бы приехала при нужном вам движении. А второй командой - доводим медленную ось до нужной точки.
Получается, если у нас 2 разные скорости (1 промежуточная точка), то имеем 2 команды, если 3 скорости - 3 команды и т.п.
Осталось только посчитать координаты этих точек

Re: G-код. Как независимо двигать несколько осей?

Добавлено: 21 июл 2017, 04:10
Serg
G1 - все задействованные оси будут двигаться равномерно и приедут в указанную точку одновременно.
G0 - каждая из задействованных осей будет двигаться со скоростью холостых перемещений и все оси приедут в указанную точку.

Читайте стандарты - они рулез!
Насколько Mach придерживается стандартов я не в теме.
Rom327 писал(а):А если дать команду в 2 строки?
Х300 Z300
C800
Сначала начнут и закончат движение оси из первой строчки, а потом из второй.

Re: G-код. Как независимо двигать несколько осей?

Добавлено: 21 июл 2017, 06:03
wldev
как вариант можно и так:

вводим перемещение оси C порционно в несколько кадров, так чтобы вклад перемещения этой оси не менял скорость всего перемещения в кадре:

старт X300 Z300 C200
след X330 Z200 С400
след X350 С500
след X600 Y100 С800

вот

Re: G-код. Как независимо двигать несколько осей?

Добавлено: 21 июл 2017, 20:18
sdelkin
Благодарю, именно так выкрутился