Команда смены инструмента как в фануке.

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Команда смены инструмента как в фануке.

Сообщение Lexxa »

Параллельно возвращаюсь к этой теме.
nkp писал(а):кстати , можно чуть более системно изложить ее суть?
то есть - имеем станок с емс ,а программы (Gкоды) под него будут всегда фануковские ??
Коды не фануковские.
Суть такова.
Хочу чтоб всеми правдами и неправдами в таблице инструмента была инфа об износе инструмента
Пример
Имеем токарный станок XZ+S.
Стандартная таблица инструментов такая:

T1 P11 X0.1 Y0.0 Z0.4 A0.0 B0.0 C0.0 U0.0 V0.0 W0.0 D20.0 I0.0 J0.0 Q1.0 ;sclcr
где

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

T1 - номер инструмента 
P11 - ячейка в магазине (не актуально для токарного станка, ее надо скрыть)
X0.1 - офсет по Х 
Y0.33  - офсет по Y (не актуально для токарного станка, ее надо скрыть)
Z0.4  - офсет по Z 
A0.0  - офсет по (не актуально для токарного станка, ее надо скрыть)
B0.0  - офсет по (не актуально для токарного станка, ее надо скрыть)
C0.0  - офсет по (не актуально для токарного станка, ее надо скрыть)
U0.0  - офсет по (не актуально для токарного станка, ее надо скрыть)
V0.0  - офсет по (не актуально для токарного станка, ее надо скрыть)
W0.0  - офсет по (не актуально для токарного станка, ее надо скрыть)
D20.0 - значение диаметра
I0.0  - значение переднего угла
J0.0 - значение заднего угла
Q1.0 - ориентация
;sclcr - коммент
И добавить еще пару столбцов и в конечном итоге таблица инструмента будет выглядить вот так

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

T1 - номер инструмента 
P11 - ячейка в магазине (не актуально для токарного станка, ее надо скрыть)
X0.1 - офсет по Х 
WX0.33  - износ по Х
Z0.4  - офсет по Z 
WZ0.0  - износ по Z
D20.0 - значение диаметра
I0.0  - значение переднего угла
J0.0 - значение заднего угла
Q1.0 - ориентация
;sclcr - коммент
в G43 H_ записывалась сумма из офсета и износа.
Это был бы очень серьезный шаг на пути к нормальной эксплуатации станка.
Есть мысли?

upd: Есть фишка G43.2 как пользовать
И есть http://wiki.linuxcnc.org/cgi-bin/wiki.pl?ToolDatabase как пользовать?
:bender:
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Команда смены инструмента как в фануке.

Сообщение Nick »

Lexxa писал(а):upd: Есть фишка G43.2 как пользовать
И есть http://wiki.linuxcnc.org/cgi-bin/wiki.pl?ToolDatabase как пользовать?
А они реально есть?

О, прочитал про G43.2 (http://linuxcnc.org/docs/html/gcode/gco ... #sec:G43_2)
G43.2 H-
H - tool number

G43.2 applies an additional simultaneous tool offset.

G43.2 Example

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

G90 (set absolute mode)
T1 M6 (load tool 1)
G43 (or G43 H1 - replace all tool offsets with T1's offset)
G43.2 H10 (also add in T10's tool offset)
M2 (end program)
Т.е. можем просто хранить инструмент с значениями износа, тогда при смене инструмента будем делать как в примере и получать нужное значение.
А настраивать износ можно из отдельного окошка, или через G10 L1 (Set Tool Table).
Т.е. для тебя будет

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

G10 L1 P10 X-.05 Z-.02 ; износ
T1M6 
G43
G43.2 H10
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Команда смены инструмента как в фануке.

Сообщение Lexxa »

Допустим храним все в таблице и привим тоже таблицу.
Нельзя ли значение компенсации по Х как-то записать в Z?


2) Зачем токарному станку значение диаметра инструмента?
:bender:
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Команда смены инструмента как в фануке.

Сообщение Nick »

Записать то можно, но применять, скорее всего, только через параметры.

#5401-5409
Tool Offsets for X, Y, Z, A, B, C, U, V & W. Volatile.
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Команда смены инструмента как в фануке.

Сообщение Lexxa »

Окей, а как в них записать, они тольк для чтения(
:bender:
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Команда смены инструмента как в фануке.

Сообщение Nick »

G10 L1 P10 X-.05 Z-.02
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Команда смены инструмента как в фануке.

Сообщение Lexxa »

Nick писал(а):G10 L1 P10 X-.05 Z-.02
а чтоб в виде
#5403 = 0.05?
:bender:
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Команда смены инструмента как в фануке.

Сообщение Lexxa »

В файле /emc/rs274ngc/rs274ngc_pre.cc
Есть строки

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

2272:    _setup.parameters[5400] = _setup.tool_table[0].toolno;
2273:    _setup.parameters[5401] = _setup.tool_table[0].offset.tran.x;
2274:    _setup.parameters[5402] = _setup.tool_table[0].offset.tran.y;
2275:    _setup.parameters[5403] = _setup.tool_table[0].offset.tran.z;
2276:    _setup.parameters[5404] = _setup.tool_table[0].offset.a;
2277:    _setup.parameters[5405] = _setup.tool_table[0].offset.b;
2278:    _setup.parameters[5406] = _setup.tool_table[0].offset.c;
2279:    _setup.parameters[5407] = _setup.tool_table[0].offset.u;
2280:    _setup.parameters[5408] = _setup.tool_table[0].offset.v;
2281:    _setup.parameters[5409] = _setup.tool_table[0].offset.w;
2282:    _setup.parameters[5410] = _setup.tool_table[0].diameter;
2283:    _setup.parameters[5411] = _setup.tool_table[0].frontangle;
2284:    _setup.parameters[5412] = _setup.tool_table[0].backangle;
2285:    _setup.parameters[5413] = _setup.tool_table[0].orientation;
Как обратиться из python к _setup.parameters и можно ли вообще?
:bender:
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Команда смены инструмента как в фануке.

Сообщение Nick »

скорее всего, никак, а зачем тебе оно?
делай через G10.

Или если тебе текущий инструмент выставить - то через

G43.1: Dynamic Tool Length Offset
G43.1 axes
G43.1 axes - change subsequent motions by offsetting the Z and/or X offsets stored in the tool table. G43.1 does not cause any motion. The next time a compensated axis is moved, that axis’s endpoint is the compensated location.
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Команда смены инструмента как в фануке.

Сообщение Lexxa »

Таблицу инструментов сделать где на каждый инструмент есть геометрия и износ
:bender:
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Команда смены инструмента как в фануке.

Сообщение Serg »

Учёт износа инструмента реализуется легко: при каждой смене и/или периодически инструмент обмеряется об датчик и корректируются оффсеты.

P.S. Так делается не только в LinuxCNC, но и во многих пром.стойках. :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Команда смены инструмента как в фануке.

Сообщение Nick »

Даже у меня на китайском токарнике есть износ инструмента... правда не уверен в каких единицах он там измеряется.
Lexxa писал(а):Таблицу инструментов сделать где на каждый инструмент есть геометрия и износ
А почему не хочешь износ отдельным инструментом завести и использовать G43.2?
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Команда смены инструмента как в фануке.

Сообщение Lexxa »

Я так и сделаю, ищу альтернативу.
:bender:
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Команда смены инструмента как в фануке.

Сообщение nkp »

а ты эту тему с патчем видел?
Ответить

Вернуться в «LinuxCNC»