AXES = 3 - One more than the number of the highest joint number in the system. For an XYZ machine, the joints are numbered 0, 1 and 2; in this case AXES should be 3. For an XYUV machine using trivial kinematics, the V joint is numbered 7 and therefore AXES should be 8. For a machine with nontrivial kinematics (e.g., scarakins) this will generally be the number of controlled joints.
4-я ось: настройка поворотной оси (мини FAQ)
- Serg
 - Мастер
 - Сообщения: 21923
 - Зарегистрирован: 17 апр 2012, 14:58
 - Репутация: 5183
 - Заслуга: c781c134843e0c1a3de9
 - Настоящее имя: Сергей
 - Откуда: Москва
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
http://linuxcnc.org/docs/devel/html/con ... AJ-section
			
			
									
									Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
						- verser
 - Мастер
 - Сообщения: 1903
 - Зарегистрирован: 21 июл 2013, 22:28
 - Репутация: 1282
 - Настоящее имя: Сергей
 - Откуда: Тбилиси
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
То есть, если я хочу XYZB, то надо так?UAVpilot писал(а):http://linuxcnc.org/docs/devel/html/con ... AJ-section
AXES = 3 - One more than the number of the highest joint number in the system. For an XYZ machine, the joints are numbered 0, 1 and 2; in this case AXES should be 3. For an XYUV machine using trivial kinematics, the V joint is numbered 7 and therefore AXES should be 8. For a machine with nontrivial kinematics (e.g., scarakins) this will generally be the number of controlled joints.
(и [AXIS_3] типа пропускаем?):
Код: Выделить всё
...
[DISPLAY]
DISPLAY = axis
GEOMETRY = XYZB
...
[TRAJ]
AXES = 5
COORDINATES = X Y Z B
...
# Third axis = Z
[AXIS_2]
TYPE =                          LINEAR
#HOME =                          0.0
MAX_VELOCITY =                  18
MAX_ACCELERATION = 180
STEPGEN_MAXACCEL = 200
BACKLASH = 0.000
INPUT_SCALE =                   1280
OUTPUT_SCALE = 1.000
MIN_LIMIT =                     0.0
MAX_LIMIT =                     62
FERROR = 0.050
MIN_FERROR = 0.010
HOME_OFFSET =                    1.0
HOME =                           30
HOME_SEARCH_VEL =                -10.0
HOME_LATCH_VEL =                 0.390625
HOME_USE_INDEX =                 NO
HOME_IGNORE_LIMITS =             YES
HOME_SEQUENCE = 0
HOME_IS_SHARED = 1
# Fourth axis = B
[AXIS_4]
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
...- Serg
 - Мастер
 - Сообщения: 21923
 - Зарегистрирован: 17 апр 2012, 14:58
 - Репутация: 5183
 - Заслуга: c781c134843e0c1a3de9
 - Настоящее имя: Сергей
 - Откуда: Москва
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
Да. Ось B в любой конфигурации будет 5-ой, хотя-бы потому, что по стандарту (про g-код) переменные, содержащие какую-либо координату по оси В всегда должны быть 5-ми в своей группе.
			
			
									
									Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
						- verser
 - Мастер
 - Сообщения: 1903
 - Зарегистрирован: 21 июл 2013, 22:28
 - Репутация: 1282
 - Настоящее имя: Сергей
 - Откуда: Тбилиси
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
Получилось  
 Спасибо UAVpilot и ukr-sasha.
			
			
									
									
						- verser
 - Мастер
 - Сообщения: 1903
 - Зарегистрирован: 21 июл 2013, 22:28
 - Репутация: 1282
 - Настоящее имя: Сергей
 - Откуда: Тбилиси
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
Ок. А теперь что за фигня с привязкой к абсолютным координатам? Мне при смене инструмента надо менять отступы - но вся картинка в Gremline при этом расползается!
			
			
									
									
						- Serg
 - Мастер
 - Сообщения: 21923
 - Зарегистрирован: 17 апр 2012, 14:58
 - Репутация: 5183
 - Заслуга: c781c134843e0c1a3de9
 - Настоящее имя: Сергей
 - Откуда: Москва
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
Может менять не отступы, а делать коррекцию длины?..
А вообще непонятно что у тебя там происходит...
			
			
									
									А вообще непонятно что у тебя там происходит...
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
						- verser
 - Мастер
 - Сообщения: 1903
 - Зарегистрирован: 21 июл 2013, 22:28
 - Репутация: 1282
 - Настоящее имя: Сергей
 - Откуда: Тбилиси
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
При попытке задать новые нули X Z командой G92 отображение траектории оси B вместо того, чтобы сместиться в нужную точку, увеличивается в диаметре, т.е. получается что отображение оси B как то привязано в Gremline к машинным нулям по X Z ?UAVpilot писал(а): А вообще непонятно что у тебя там происходит...
А в чем разница?UAVpilot писал(а):Может менять не отступы, а делать коррекцию длины?..
- Nick
 - Мастер
 - Сообщения: 22776
 - Зарегистрирован: 23 ноя 2009, 16:45
 - Репутация: 1735
 - Заслуга: Developer
 - Откуда: Gatchina, Saint-Petersburg distr., Russia
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
Да, вращение ABC - это по идее вращения заготовки относительно осей XYZ. Меняешь положение оси X - меняется Gкод... 
Но лучше покажи пару скриншотов
			
			
									
									
						Но лучше покажи пару скриншотов
- verser
 - Мастер
 - Сообщения: 1903
 - Зарегистрирован: 21 июл 2013, 22:28
 - Репутация: 1282
 - Настоящее имя: Сергей
 - Откуда: Тбилиси
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
Вот так, когда все отступы совпадают с машинными - все правильно отображается
Теперь меняю инструмент на более длинный, фиксирую для него нулевое положение по Z   теперь Z отличается от абсолютного в данном примере на 10 мм, и получаю при отображении оси B увеличенный на 10мм радиус траектории, что не соответствует действительности.
Выглядит неправильное отображение так Ось B попрежнему вращается вокруг Y, на высоте Z=0
А мне надо, чтобы и ось вращения сместилась на 10мм вверх и вращалась на картинке вокруг Y на высоте Z=10 в абсолютных .
			
			
													Код: Выделить всё
G92 Z0Выглядит неправильное отображение так Ось B попрежнему вращается вокруг Y, на высоте Z=0
А мне надо, чтобы и ось вращения сместилась на 10мм вверх и вращалась на картинке вокруг Y на высоте Z=10 в абсолютных .
					Последний раз редактировалось verser 26 июн 2014, 18:43, всего редактировалось 2 раза.
									
			
									
						- Serg
 - Мастер
 - Сообщения: 21923
 - Зарегистрирован: 17 апр 2012, 14:58
 - Репутация: 5183
 - Заслуга: c781c134843e0c1a3de9
 - Настоящее имя: Сергей
 - Откуда: Москва
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
Помоему всё правильно: изменив смещение по Z ты изменил расстояние от центра дуги до её начала т.е. её радиус.
Показал-бы чтоль свой секретный G-код...
			
			
									
									Показал-бы чтоль свой секретный G-код...
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
						- verser
 - Мастер
 - Сообщения: 1903
 - Зарегистрирован: 21 июл 2013, 22:28
 - Репутация: 1282
 - Настоящее имя: Сергей
 - Откуда: Тбилиси
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
ВотUAVpilot писал(а): Показал-бы чтоль свой секретный G-код...
Код: Выделить всё
(4X-PC-fBces21)
G00 G90 X-1.57 Y-24.48 B0.  Z8 F1080 
G01 X-1.59 Y-24.49 Z7.1 F1080 
G93 B17.09 F500 
B35.53 F463 
B54.47 F451 
B72.91 F463 
B90. F500 
B107.09 F500 
B125.53 F463 
B144.47 F451 
B162.91 F463 
B180. F500 
B197.09 F500 
B215.53 F463 
B234.47 F451 
B252.91 F463 
B270. F500 
B287.09 F500 
B305.53 F463 
B324.47 F451 
B342.91 F463 
B0. F500 
G94 Z6.1 F1080 
G93 B17.09 F577 
B35.53 F535 
B54.47 F521 
B72.91 F535 
B90. F577 
B107.09 F577 
B125.53 F535 
B144.47 F521 
B162.91 F535 
B180. F577 
B197.09 F577 
B215.53 F535 
B234.47 F521 
B252.91 F535 
B270. F577 
B287.09 F577 
B305.53 F535 
B324.47 F521 
B342.91 F535 
B0. F577 
G94 Z5.1 F1080 
G93 B17.09 F681 
B35.53 F631 
B54.47 F614 
B72.91 F631 
B90. F681 
B107.09 F681 
B125.53 F631 
B144.47 F614 
B162.91 F631 
B180. F681 
B197.09 F681 
B215.53 F631 
B234.47 F614 
B252.91 F631 
B270. F681 
B287.09 F681 
B305.53 F631 
B324.47 F614 
B342.91 F631 
B0. F681 
G94 Z4.1 F1080 
G93 B17.09 F827 
B35.53 F766 
B54.47 F746 
B72.91 F766 
B90. F827 
B107.09 F827 
B125.53 F766 
B144.47 F746 
B162.91 F766 
B180. F827 
B197.09 F827 
B215.53 F766 
B234.47 F746 
B252.91 F766 
B270. F827 
B287.09 F827 
B305.53 F766 
B324.47 F746 
B342.91 F766 
B0. F827 
G94 Z3.1 F1080 
G93 B17.09 F1044 
B35.53 F968 
B54.47 F942 
B72.91 F968 
B90. F1044 
B107.09 F1044 
B125.53 F968 
B144.47 F942 
B162.91 F968 
B180. F1044 
B197.09 F1044 
B215.53 F968 
B234.47 F942 
B252.91 F968 
B270. F1044 
B287.09 F1044 
B305.53 F968 
B324.47 F942 
B342.91 F968 
B0. F1044 
G94 Z2.1 F1080 
G93 B17.09 F1381 
B35.53 F1280 
B54.47 F1247 
B72.91 F1280 
B90. F1381 
B107.09 F1381 
B125.53 F1280 
B144.47 F1247 
B162.91 F1280 
B180. F1381 
B197.09 F1381 
B215.53 F1280 
B234.47 F1247 
B252.91 F1280 
B270. F1381 
B287.09 F1381 
B305.53 F1280 
B324.47 F1247 
B342.91 F1280 
B0. F1381 
G94 Z1.1 F1080 
G93 B17.09 F1882 
B35.53 F1745 
B54.47 F1699 
B72.91 F1745 
B90. F1882 
B107.09 F1882 
B125.53 F1745 
B144.47 F1699 
B162.91 F1745 
B180. F1882 
B197.09 F1882 
B215.53 F1745 
B234.47 F1699 
B252.91 F1745 
B270. F1882 
B287.09 F1882 
B305.53 F1745 
B324.47 F1699 
B342.91 F1745 
B0. F1882 
G94 Z0.1 F1080 
G93 B17.09 F2285 
B35.53 F2119 
B54.47 F2063 
B72.91 F2119 
B90. F2285 
B107.09 F2285 
B125.53 F2119 
B144.47 F2063 
B162.91 F2119 
B180. F2285 
B197.09 F2285 
B215.53 F2119 
B234.47 F2063 
B252.91 F2119 
B270. F2285 
B287.09 F2285 
B305.53 F2119 
B324.47 F2063 
B342.91 F2119 
B0. F2285 
G94 X0 Y-24.48 Z-0.1 F1080
G93 B359.999 F1700
G94 F1080
G00 Z7.9 
Z8 
M2 
%
- verser
 - Мастер
 - Сообщения: 1903
 - Зарегистрирован: 21 июл 2013, 22:28
 - Репутация: 1282
 - Настоящее имя: Сергей
 - Откуда: Тбилиси
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
А как тогда народ инструмент выставляет ?UAVpilot писал(а):Помоему всё правильно: изменив смещение по Z ты изменил расстояние от центра дуги до её начала т.е. её радиус.
- Serg
 - Мастер
 - Сообщения: 21923
 - Зарегистрирован: 17 апр 2012, 14:58
 - Репутация: 5183
 - Заслуга: c781c134843e0c1a3de9
 - Настоящее имя: Сергей
 - Откуда: Москва
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
ini тоже покаж, а то у меня sim_9axis какую-то хрень рисует. 
			
			
									
									Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
						- verser
 - Мастер
 - Сообщения: 1903
 - Зарегистрирован: 21 июл 2013, 22:28
 - Репутация: 1282
 - Настоящее имя: Сергей
 - Откуда: Тбилиси
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
Такое чувство, что при задании смещения по Z, надо как-то дать команду на смещение высоты вращения оси B, только как?
			
			
													
					Последний раз редактировалось verser 26 июн 2014, 18:58, всего редактировалось 1 раз.
									
			
									
						- verser
 - Мастер
 - Сообщения: 1903
 - Зарегистрирован: 21 июл 2013, 22:28
 - Репутация: 1282
 - Настоящее имя: Сергей
 - Откуда: Тбилиси
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
Тут я согласен. Но траектория в Gremline по идее должна отображать кончик фрезы, а не фиксированную точку на шпинделе.UAVpilot писал(а):Помоему всё правильно: изменив смещение по Z ты изменил расстояние от центра дуги до её начала т.е. её радиус.
- verser
 - Мастер
 - Сообщения: 1903
 - Зарегистрирован: 21 июл 2013, 22:28
 - Репутация: 1282
 - Настоящее имя: Сергей
 - Откуда: Тбилиси
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
Вот здесь Marled переписал кинематику, чтобы сделать компенсацию длины инструмента на XYZA станке, неужели и меня это ждет? http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Rot4thaxiskins
			
			
									
									
						- Nick
 - Мастер
 - Сообщения: 22776
 - Зарегистрирован: 23 ноя 2009, 16:45
 - Репутация: 1735
 - Заслуга: Developer
 - Откуда: Gatchina, Saint-Petersburg distr., Russia
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
А отступ на длину инструмента не работает?
			
			
									
									
						- verser
 - Мастер
 - Сообщения: 1903
 - Зарегистрирован: 21 июл 2013, 22:28
 - Репутация: 1282
 - Настоящее имя: Сергей
 - Откуда: Тбилиси
 - Контактная информация:
 
Re: 4-я ось: переход через 360°, согласование угловых скорос
Еще не доводилось пользоваться "отступами на длину инструмента", планировал знакомство с ними когда буду делать автосмену на своем станке. Теперь ознакомился. Теперь понял что имел в виду UAVpilotNick писал(а):А отступ на длину инструмента не работает?
И оно таки работает! Проблема решена! Nick и UAVpilot спасибо!UAVpilot писал(а):Может менять не отступы, а делать коррекцию длины?..
Внес подробности решения в шапку.
- verser
 - Мастер
 - Сообщения: 1903
 - Зарегистрирован: 21 июл 2013, 22:28
 - Репутация: 1282
 - Настоящее имя: Сергей
 - Откуда: Тбилиси
 - Контактная информация:
 
Re: 4-я ось: настройка поворотной оси (мини FAQ)
Нужен совет.
Параметр WRAPPED_ROTARY = 1 позволяет задавать максимальную угловую координату 359.9999°, но не 360°(на 360°linuxcnc выдает ошибку превышения абсолютной координаты для WRAPPED оси)
При выполнении финишной фрезеровки поверхности прутка(цилиндра), чтобы все правильно проворачивалось, приходится применять в цикле такую пару команд
Проблема в том, что после каждого полного оборота происходит ненужная пауза движения. 
Как можно от этой паузы избавиться?
			
			
									
									
						Параметр WRAPPED_ROTARY = 1 позволяет задавать максимальную угловую координату 359.9999°, но не 360°(на 360°linuxcnc выдает ошибку превышения абсолютной координаты для WRAPPED оси)
При выполнении финишной фрезеровки поверхности прутка(цилиндра), чтобы все правильно проворачивалось, приходится применять в цикле такую пару команд
Код: Выделить всё
G1 Y<#new_y> B359.999 F<#calculated_feed>
G1 B0 (доворот до полного оборота)Как можно от этой паузы избавиться?
