Коррекция износ инструмента ?

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
dinkata
Мастер
Сообщения: 1028
Зарегистрирован: 05 сен 2014, 09:07
Репутация: 391
Настоящее имя: Диньо
Откуда: Болгария
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение dinkata »

UAVpilot писал(а): Почитай RS274NGC - там всё по полочкам разложено.
да,да :walk: много , много надо читат :oops:
а как хорошо когда подскажет, кто читал :hehehe:
Простите ошибки, я иностранец.У моя клавиатура нету "э" и "ы"
Аватара пользователя
dinkata
Мастер
Сообщения: 1028
Зарегистрирован: 05 сен 2014, 09:07
Репутация: 391
Настоящее имя: Диньо
Откуда: Болгария
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение dinkata »

UAVpilot писал(а):И ремапить надо в первую очередь M6.
Т.е. все что подсказал Lexxa неправильно ?
Я сделал все (пост #45 )и работает :wik: ,только вот ест другие неполадки .
Простите ошибки, я иностранец.У моя клавиатура нету "э" и "ы"
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение Lexxa »

зачем м6 в токарном станке.
О ней вообще надо забыть...
dinkata, тоже заметил такой косячек, что если запустить программу смены с нужного кадра, то все сначала делаются все смены инструмента до указанного кадра. Интересно, без ремапа это так же работает?
:bender:
Аватара пользователя
dinkata
Мастер
Сообщения: 1028
Зарегистрирован: 05 сен 2014, 09:07
Репутация: 391
Настоящее имя: Диньо
Откуда: Болгария
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение dinkata »

Lexxa писал(а):зачем м6 в токарном станке
Lexxa М6 должно бьйт ,без М6 и tool-change-confirmed не берет офсет.
Кстати в твой вариант М6 ест :

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

O<toolchange> sub
#<wear> = [100 + #<tool>]
#<tool> = [#<tool>]
T#<tool>
G49
M6
G43 H#<tool>
G43.2 H#<wear>
O<toolchange> endsub [0]
Насколько правильна ето субпрограма я неуверен ,не хватает у меня знания ,
но думаю что здесь кое что недоделано.
Простите ошибки, я иностранец.У моя клавиатура нету "э" и "ы"
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение nkp »

интересно - а какие общие требования к корректору?
ну вот PP сделали всё это в виде таблицы (наряду со всеми настройками инструметнов)
а вот сам алгоритм - как это должно вводиться и работать?
как вариант:
1. коррекция должна работать (почти)) на лету - то есть во время выполнения программы можем внести коррекцию...
2. "срабатывать" она будет после очередной смены инструмента
3. значение ,введенное в окно должно отработать один раз(если его не поменяли - то есть - не ввели новое)
потому как ,если пользовать нанее предложенное:

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

G10 L1 P#<_hal[iocontrol.0.tool-number]> X[#<_hal[motion.tooloffset.x]>+#102 ]
то в таком виде #102 будет прибавляться при каждой смене...
4. после перезагрузки емс в таблице инструментов остается tooloffset с введенной поправкой,а
окошко коррекции загружается пустым
==============================================
пробовал накидать remap для подобной схемы...
что "интересного":
хоть с pyvcp , хоть glade отмечается какая то странность - значение в spinbox читается через раз (в
прямом смысле :

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

o<changetool> sub

#101 = #<_hal[gladevcp.hal_spinbutton1-f]>
#102 = #<_hal[gladevcp.hal_spinbutton2-f]>
#103 = #<_hal[gladevcp.hal_spinbutton3-f]>
#104 = #<_hal[gladevcp.hal_spinbutton4-f]>
#105 = #<_hal[gladevcp.hal_spinbutton5-f]>
#106 = #<_hal[gladevcp.hal_spinbutton6-f]>

#121 = [#101 - #111]
#122 = [#102 - #112]
#123 = [#103 - #113]
#124 = [#104 - #114]
#125 = [#105 - #115]
#126 = [#106 - #116]

o101 if [#<_lathe_diameter_mode> ne 0]
    #<flag> = 1
o101 endif

    G8
    o100 if [#<_hal[iocontrol.0.tool-number]> eq 1]
        G10 L1 P1 X[#<_hal[motion.tooloffset.x]>+#121 ]
        (debug,number = #<_hal[iocontrol.0.tool-number]>)
        (debug,101 = #101)
        (debug,111 = #111)
        (debug,121 = #121)
    o100 endif
    o103 if [#<_hal[iocontrol.0.tool-number]> eq 2]
        G10 L1 P2 X[#<_hal[motion.tooloffset.x]>+#122 ]
                (debug,number = #<_hal[iocontrol.0.tool-number]>)
        (debug,102 = #102)
        (debug,112 = #112)
        (debug,122 = #122)
    o103 endif    
    o104 if [#<_hal[iocontrol.0.tool-number]> eq 3]
        G10 L1 P3 X[#<_hal[motion.tooloffset.x]>+#123 ]
                (debug,number = #<_hal[iocontrol.0.tool-number]>)
        (debug,103 = #103)
        (debug,113 = #113)
        (debug,123 = #123)
    o104 endif    
    o105 if [#<_hal[iocontrol.0.tool-number]> eq 4]
        G10 L1 P4 X[#<_hal[motion.tooloffset.x]>+#124 ]
    o105 endif    
     o106 if [#<_hal[iocontrol.0.tool-number]> eq 5]
        G10 L1 P5 X[#<_hal[motion.tooloffset.x]>+#125 ]
    o106 endif   
     o107 if [#<_hal[iocontrol.0.tool-number]> eq 6]
        G10 L1 P6 X[#<_hal[motion.tooloffset.x]>+#126 ]
    o107 endif   

o102 if [#<flag> ne 0]
    G7
o102 endif

#111 = #<_hal[gladevcp.hal_spinbutton1-f]>
#112 = #<_hal[gladevcp.hal_spinbutton2-f]>
#113 = #<_hal[gladevcp.hal_spinbutton3-f]>
#114 = #<_hal[gladevcp.hal_spinbutton4-f]>
#115 = #<_hal[gladevcp.hal_spinbutton5-f]>
#116 = #<_hal[gladevcp.hal_spinbutton6-f]>

G43   
M6

o<changetool> endsub

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

o<changetool1> sub
G49
#101 = #<_hal[pyvcp.spinbox]>

#121 = [#101 - #111]

o101 if [#<_lathe_diameter_mode> ne 0]
    #<flag> = 1
o101 endif

    G8

    o100 if [#<_hal[iocontrol.0.tool-number]> eq 1]
        G10 L1 P1 X[#<_hal[motion.tooloffset.x]>+#121 ]
        (debug,number = #<_hal[iocontrol.0.tool-number]>)
        (debug,101 = #101)
        (debug,111 = #111)
        (debug,121 = #121)
    o100 endif
 
o102 if [#<flag> ne 0]
    G7
o102 endif

#111 = #<_hal[pyvcp.spinbox]>

G49  
M6 
G43 
o<changetool1> endsub
M2
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение Serg »

nkp писал(а):хоть с pyvcp , хоть glade отмечается какая то странность - значение в spinbox читается через раз (в
А если после ввода значения Enter нажать?..
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение Сергей Саныч »

UAVpilot писал(а):
nkp писал(а):хоть с pyvcp , хоть glade отмечается какая то странность - значение в spinbox читается через раз (в
А если после ввода значения Enter нажать?..
Причем не всякий Enter. Тот, что на цифровой клавиатуре, в данном случае не работает. По крайней мере у меня так. Numlock, понятное дело, включен.
Чудес не бывает. Бывают фокусы.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение nkp »

UAVpilot писал(а):А если после ввода значения Enter нажать?..
жал(
пробовал по разному - там что то на другом уровне(возможно на уровне remap)
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение Сергей Саныч »

nkp писал(а):#101 = #<_hal[pyvcp.spinbox]>
А что, прямо так можно? :thinking:
я такие вещи через M66 делал.
Чудес не бывает. Бывают фокусы.
Аватара пользователя
dinkata
Мастер
Сообщения: 1028
Зарегистрирован: 05 сен 2014, 09:07
Репутация: 391
Настоящее имя: Диньо
Откуда: Болгария
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение dinkata »

nkp писал(а):пробовал по разному
Спасибо nkp для участие в тема !
Если позволите скажу следущее
- так вот установил на станок трехосной и на два токарньйе новая система ЧПУ Linuxcnc . На трехосной
http://www.cnc-club.ru/forum/viewtopic. ... 33#p240433
операторьй пока справляются , но с токарньйм
http://www.cnc-club.ru/forum/viewtopic. ... 36#p275436
http://www.cnc-club.ru/forum/viewtopic. ... 18#p292018
проблем разобратся с оператором как надо работат ,
инструкция сделаю ,но надо закончит все.
Одна из претензии оператором почему не могут задат корекция износ инструмента или просто
сдвинут немножко его после настройка
nkp писал(а):как это должно вводиться и работать?
Во время работа оператор заметил что диаметр увеличился т.е. инструмент износ или другое .
По моему корекция надо ввести однократно ,например для Т5офсет Х -100.00 (отметите в Linuxcnc ето радиус ),
вводим коррекция -0.1 и офсет Х -100.10 должен стат сразу и однократно .
Я удивляюс в новая система не предусмотрено ето ,надо ремапит и куча доработки :pssdoff:
а как говорят и наши оператори в сорок летная (ЗИТ 500 - аналог Фанук ) система ето делается бьйстро и легко :wik:
Потом другое ,оператор говорит
- мне надо обнулит стоимост на оси и хочу от туда смотрет сколько проехал , а не смотрет только
Абсолютное и G54 , наверно ест решение для ето , но не дошел еще .Ето другая тема
Простите ошибки, я иностранец.У моя клавиатура нету "э" и "ы"
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение nkp »

Сергей Саныч писал(а):А что, прямо так можно?
почему нет)
хотя может здесь и загвоздка ;)
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение nkp »

dinkata писал(а):Потом другое ,оператор говорит- мне надо обнулит стоимост на оси и хочу от туда смотрет сколько проехал , а не смотрет только Абсолютное и G54 , наверно ест решение для ето , но не дошел еще .Ето другая тема
можно подробней здесь описать проблему-хотелку
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение Сергей Саныч »

nkp писал(а):почему нет)
А вот эта фраза не смущает
The variables are read during read-ahead and should not be used for run time evaluation of current position or other execution time variables.
я такими вещами пользуюсь только для чтения настроечных параметров.
Чудес не бывает. Бывают фокусы.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение nkp »

dinkata писал(а):По моему корекция надо ввести однократно ,например для Т5офсет Х -100.00 (отметите в Linuxcnc ето радиус ),вводим коррекция -0.1 и офсет Х -100.10 должен стат сразу и однократно .
вопрос:
"однократно" , это без занесения (сохранения) в файл таблицы инструментов?
тогда можно использовать вместо G10 L1 Pn код G43.1
или возможность выбирать - сохранять коррекцию или нет...
потому как если это реально резец притупился,то сохранять надо по любому (размер не восстановится)))
а вот если мы просто корректируем размер - тут можно и не "запоминать"
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение nkp »

Сергей Саныч писал(а):я такими вещами пользуюсь только для чтения настроечных параметров.
ok,не проблема ;)
можно и M66 ,или даже таблицу на питоне написать,как в gscreen ,только с коррекцией износа...
тут пытаюсь выяснить - как это должно в общих чертах работать...
Аватара пользователя
dinkata
Мастер
Сообщения: 1028
Зарегистрирован: 05 сен 2014, 09:07
Репутация: 391
Настоящее имя: Диньо
Откуда: Болгария
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение dinkata »

nkp писал(а):однократно" , это без занесения (сохранения) в файл таблицы инструментов?
надо изменит текущий офсет по Х или Z в таблица инструментов однократно и немедлено
при остановленое вьйполнение УП конечно .
tooltableCT16102.JPG (2622 просмотра) <a class='original' href='./download/file.php?id=87794&mode=view' target=_blank>Загрузить оригинал (107.74 КБ)</a>
Простите ошибки, я иностранец.У моя клавиатура нету "э" и "ы"
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение Serg »

nkp писал(а):пробовал по разному - там что то на другом уровне(возможно на уровне remap)
В в glade натыкался, что спинбокс не всегда генерит событие, что данные изменились. Например если вбить новое значение в поле и уйти с него на другое TAB'ом или мышом, то о изменении никто не узнает...
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение nkp »

с м66 вроде заработало нормально:

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

o<changetool1> sub
#<flag> = 0
G49
M66 E0 L0 
#101 = #5399

#121 = [#101 - #111]

o101 if [#<_lathe_diameter_mode> ne 0]
    #<flag> = 1
o101 endif

    G8

    o100 if [#<_hal[iocontrol.0.tool-number]> eq 1]
        G10 L10 P1 X[#<_hal[motion.tooloffset.x]>+#121 ]
        (debug,number = #<_hal[iocontrol.0.tool-number]>)
        (debug,101 = #101)
        (debug,111 = #111)
        (debug,121 = #121)
    o100 endif
 
o102 if [#<flag> ne 0]
    G7
o102 endif

#111 = #5399

G49  
M6 
G43 
o<changetool1> endsub
=======================================
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение nkp »

для оси X и 6-ти инструментов
("расширить" думаю не представит труда))

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

[DISPLAY]

EMBED_TAB_NAME=corrector
EMBED_TAB_COMMAND=halcmd loadusr -Wn gladevcp gladevcp -c gladevcp -u ./corrector.py -x {XID} ./corrector.glade

[RS274NGC]

REMAP=M6 modalgroup=6 ngc=changetool5

[HAL]

POSTGUI_HALFILE = postgui_glade.hal
changetool5.ngc

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

o<changetool5> sub
G49
#<flag> = 0
#101 = #<_hal[gladevcp.hal_spinbutton1-f]>
#102 = #<_hal[gladevcp.hal_spinbutton2-f]>
#103 = #<_hal[gladevcp.hal_spinbutton3-f]>
#104 = #<_hal[gladevcp.hal_spinbutton4-f]>
#105 = #<_hal[gladevcp.hal_spinbutton5-f]>
#106 = #<_hal[gladevcp.hal_spinbutton6-f]>

#121 = [#101 - #111]
#122 = [#102 - #112]
#123 = [#103 - #113]
#124 = [#104 - #114]
#125 = [#105 - #115]
#126 = [#106 - #116]

o101 if [#<_lathe_diameter_mode> ne 0]
    #<flag> = 1
o101 endif
M6 
    G8
    o100 if [#5400 eq 1]
        G10 L1 P1 X[#5401+#121 ]       
        (debug,T = #5400)
        (debug,101 = #101)
        (debug,111 = #111)
        (debug,121 = #121)
        #111 = #101
    o100 endif
    o103 if [#5400 eq 2]
        G10 L1 P2 X[#5401+#122 ]      
        (debug,T = #5400)
        (debug,102 = #102)
        (debug,112 = #112)
        (debug,122 = #122)
        #112 = #102
    o103 endif    
    o104 if [#5400 eq 3]
        G10 L1 P3 X[#5401+#123 ]       
        (debug,T = #5400)
        (debug,103 = #103)
        (debug,113 = #113)
        (debug,123 = #123)
        #113 = #103
    o104 endif    
    o105 if [#5400 eq 4]
        G10 L1 P4 X[#5401+#124 ]
        #114 = #104
    o105 endif    
     o106 if [#5400 eq 5]
        G10 L1 P5 X[#5401+#125 ]
        #115 = #105
    o106 endif   
     o107 if [#5400 eq 6]
        G10 L1 P6 X[#5401+#126 ]
        #116 = #106
    o107 endif   

o102 if [#<flag> ne 0]
    G7
o102 endif

   
G43

o<changetool5> endsub
corrector.tbl

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

T1 P1 D0.300000 ;
T2 P2 D0.300000 ;
T3 P3 D0.300000 ;
T4 P4 D0.300000 ;
T5 P5 D0.300000 ;
T6 P6 D0.300000 ;
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
если использовать M66, то нужен
postgui_glade.hal

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

net spinbutton1        gladevcp.hal_spinbutton1-f    motion.analog-in-00
net spinbutton2        gladevcp.hal_spinbutton2-f    motion.analog-in-01
net spinbutton3        gladevcp.hal_spinbutton3-f    motion.analog-in-02
net spinbutton4        gladevcp.hal_spinbutton4-f    motion.analog-in-03
net spinbutton5        gladevcp.hal_spinbutton5-f    motion.analog-in-04
net spinbutton6        gladevcp.hal_spinbutton6-f    motion.analog-in-05
начало remap будет выглядеть так:

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

G49
#<flag> = 0
M66 E0 L0 
#101 = #5399
M66 E1 L0 
#102 = #5399
M66 E2 L0 
#103 = #5399
M66 E3 L0 
#104 = #5399
M66 E4 L0 
#105 = #5399
M66 E5 L0 
#106 = #5399

#121 = [#101 - #111]
#122 = [#102 - #112]
#123 = [#103 - #113]
#124 = [#104 - #114]
#125 = [#105 - #115]
#126 = [#106 - #116]
===============================
работают только spinbox-Ы )
задаем значение в соответствующем инструменту поле ,и после смены этого инструмента
его оффсет изменяется ...
Вложения
corrector.glade
(16.83 КБ) 503 скачивания
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Коррекция износ инструмента ?

Сообщение nkp »

кстати - в PP коррекция сделана тоже этой командой:
Выделение_026.png (2569 просмотров) <a class='original' href='./download/file.php?id=87929&mode=view' target=_blank>Загрузить оригинал (210.19 КБ)</a>
Ответить

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