Страница 2 из 18

Re: 4-я ось: как сбросить намотанные обороты

Добавлено: 05 май 2014, 21:53
nkp
понял - код не трогаем,
обучаем емс)))
============
нужно поставить фильтр , и при загрузке предпроцессировать код...
но чтоб написать его - необходимо больше вводных , как то:
всегда ли (без исключений) у нас задача крутить по кратчайшему пути?

Re: 4-я ось: как сбросить намотанные обороты

Добавлено: 05 май 2014, 22:02
verser
nkp писал(а): всегда ли (без исключений) у нас задача крутить по кратчайшему пути?
Всегда. Я пользуюсь SolidCam, а он всегда длинные повороты дробит на десятки мелких.

Re: 4-я ось: как сбросить намотанные обороты

Добавлено: 05 май 2014, 22:29
verser
На одном из форумов встретил
В Fanuc 0i в параметре 1008 написано:
RABx : В абсолютных командах ось вращается в направлении
0: В котором расстояние до мишени короче.
1: Заданном символом значения команды.
Т.е. даже в Fanuc 0i есть возможность задать такой параметр... нда-а, linuxcnc не Fanuc.. :cry:

Re: 4-я ось: как сбросить намотанные обороты

Добавлено: 05 май 2014, 22:39
verser
Еще один совет нашел :
программируйте углы в приращениях (G91)

Re: 4-я ось: как сбросить намотанные обороты

Добавлено: 05 май 2014, 22:47
Serg
nkp писал(а):всегда ли (без исключений) у нас задача крутить по кратчайшему пути?
Всегда нельзя! - Так можно и фрезу поломать.

Re: 4-я ось: как сбросить намотанные обороты

Добавлено: 05 май 2014, 22:58
nkp
UAVpilot писал(а):Всегда нельзя! - Так можно и фрезу поломать.
если так - то условие становится неопределенным до конца...

Re: 4-я ось: как сбросить намотанные обороты

Добавлено: 05 май 2014, 23:13
verser
UAVpilot писал(а): Всегда нельзя! - Так можно и фрезу поломать.
SolidCam отлично отводит фрезу на безопасное расстояние, за это не волнуемся.

Re: 4-я ось: как сбросить намотанные обороты

Добавлено: 05 май 2014, 23:21
Serg
nkp писал(а):если так - то условие становится неопределенным до конца...
Например 2 варианта:
1. всегда крутится по кратчайшему направлению. Если нужно по дальнему, то постпроцессор генерит 2 кадра.
2. например ось в позиции 350. по команде "g1 a10" крутится в направлении 350->0->10, по команде "g1 a-10" в направлении 350->180->10. Но постпроцессори CAM должны понимать, то абсолютные позиции 10 и -10 - это одно и тоже.
В обоих случая по g0 можно крутить кратчайшим путём.

Собственно в фануке реализованы оба варианта через переключатель RABx.
verser писал(а):SolidCam отлично отводит фрезу на безопасное расстояние, за это не волнуемся.
Во время обработки чтоль?.. :hehehe:

Re: 4-я ось: как сбросить намотанные обороты

Добавлено: 05 май 2014, 23:33
verser
350 и -10 - одно и то же, 10 и -10 не одно и то же

Re: 4-я ось: как сбросить намотанные обороты

Добавлено: 05 май 2014, 23:43
verser
UAVpilot писал(а): Во время обработки чтоль?.. :hehehe:
Нет, во время холостых переездов.
А во время обработки у Solidcama нет вообще варианта "длинная траектория" , т.к. он дробит любую длинную траекторию на десятки по-мельче.

Re: 4-я ось: как сбросить намотанные обороты

Добавлено: 05 май 2014, 23:57
verser
Но SolidCAM рассчитывает что переход с 359° на 1° будет произведен через поворот на +2°, а не -358°. Этого я и хотел бы добиться от linuxcnc.

Re: 4-я ось: как сбросить намотанные обороты

Добавлено: 06 май 2014, 02:37
Serg
verser писал(а):350 и -10 - одно и то же, 10 и -10 не одно и то же
Ну можно и так, в данном случае это не принципиально. Принципиально чтобы CAM понимал, что у каждой позиции есть несколько координат.
verser писал(а):Нет, во время холостых переездов.
Тогда твоя фраза не имеет смысла, ибо если в любой УП перед любыми перемещениями по G0 инструмент не отводится на безопасное расстояние, то эта УП и программист создавший её (с помощью любых инструментов/CAM) просто не заслуживают разговора о них. :)
verser писал(а):Но SolidCAM рассчитывает что переход с 359° на 1° будет произведен через поворот на +2°, а не -358°.
Для режима G91 это логично. Как крутиться в режиме G90?..

Re: 4-я ось: как сбросить намотанные обороты

Добавлено: 06 май 2014, 09:24
Nick
verser писал(а):А есть ли в linuxcnc возможность задавать для поворотных осей переходы по кратчайшему угловому расстоянию?
Как такового нет, если я правильно понял постановку задачи.
Есть такая шутка wrapped_rotary, но она работает немного не так... (http://wiki.linuxcnc.org/cgi-bin/wiki.p ... RotaryAxes http://www.linuxcnc.org/docs/devel/html ... _section_a)
Ей нужно четко задавать направление вращения. Т.е.

G01 A10 будет ехать до 10o по часовой, G01 A-350, поедет в те же 10o но против часовой.
Такой код

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

G0 A359
G0 A1 
Проедет в 359, потом 2 градуса вперед до 1. Но вот такой:

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

G0 A2
G0 A1 
Проедет в 2, а потом 359 градусов вперед до 1...

Зато в случае когда у тебя после выполнения будет стоять положение 3123123000, напишешь G0 A0 и станок приедет в 0 за 1 оборот.

Re: 4-я ось: как сбросить намотанные обороты

Добавлено: 06 май 2014, 10:32
verser
Nick писал(а): Есть такая шутка wrapped_rotary...
Nick - респект!
Немного подкрутил настройки SolidCAM и в сочетании с wrapped_rotary=1 проблема РЕШЕНА.
Добавляю это решение в первый пост вместе с файлом шаблоном для многоосевой фрезеровки SolidCAMa.

Re: 4-я ось: как сбросить намотанные обороты (РЕШЕНО)

Добавлено: 06 май 2014, 11:13
aftaev
verser, ты бы еще картинку с СолидКама в первый пост вставил для красоты и понятия процесса :)

Re: 4-я ось: как сбросить намотанные обороты (РЕШЕНО)

Добавлено: 06 май 2014, 11:35
verser
aftaev писал(а):verser, ты бы еще ..
Вставил ;)

Re: 4-я ось: переход через 360°, согласование угловых скорос

Добавлено: 09 май 2014, 15:03
verser
В LinuxCNC при наличии поворотной оси существует проблема согласования линейных и угловых скоростей.
Добавил в первый пост свой вариант решения этой проблемы.

Re: 4-я ось: переход через 360°, согласование угловых скорос

Добавлено: 25 июн 2014, 21:23
verser
Наверняка это уже проходили, но я не нашел:
Может кто знает как заставить gremlin отображать визуально 4-ю поворотную ось не вокруг оси Х, а вокруг Y? ( у меня в .ini 4-я ось названа A)

Re: 4-я ось: переход через 360°, согласование угловых скорос

Добавлено: 25 июн 2014, 21:44
ukr-sasha
Назовите В.

Re: 4-я ось: переход через 360°, согласование угловых скорос

Добавлено: 25 июн 2014, 22:34
verser
Назвал ось B вот так:

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

...
[DISPLAY]
DISPLAY = axis
GEOMETRY = XYZB
...
[TRAJ]
AXES = 4
COORDINATES = X Y Z B
...
# Fourth axis = B
[AXIS_3]
TYPE =                          ANGULAR
WRAPPED_ROTARY = 1
HOME =                          0.0
MAX_VELOCITY = 356.25
MAX_ACCELERATION = 4800.0
STEPGEN_MAXACCEL = 6000.0
INPUT_SCALE = -26.6666666667
FERROR = 1
MIN_FERROR = .25
BACKLASH = 0.000
OUTPUT_SCALE = 1.000
HOME_OFFSET =                    0.0
HOME_SEARCH_VEL =                0.0
HOME_LATCH_VEL =                 0.0
HOME_USE_INDEX =                 NO
HOME_IGNORE_LIMITS =             YES
HOME_SEQUENCE = 0
...
Axis вылетает с ошибкой

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

emcTrajSetAxes failing: axes=4 axismask=17
Что не так?