прошу помощи настроить pncconf для 6 осей

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
pkasy
Мастер
Сообщения: 1139
Зарегистрирован: 15 мар 2013, 09:39
Репутация: 45
Откуда: Владивосток

Re: прошу помощи настроить pncconf для 6 осей

Сообщение pkasy »

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

M3
G0 X1 Y2 Z3
M6 T3
M5
G1 X100 F100
M2
заменяется на

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

M3
G0 X1 Y2 Z3
o<toolchang> call T3
M5
G1 X100 F100
M2
ругается на 4 строку - "около строки 4"
и "встречен плохой символ '\<'
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: прошу помощи настроить pncconf для 6 осей

Сообщение nkp »

может нет в таблице инструмента №3
ага ;)
не то написал ...))))
pkasy
Мастер
Сообщения: 1139
Зарегистрирован: 15 мар 2013, 09:39
Репутация: 45
Откуда: Владивосток

Re: прошу помощи настроить pncconf для 6 осей

Сообщение pkasy »

нужно было писать только
M6
и в файле подпрограммы писать
o<toolchang> sub

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

Re: прошу помощи настроить pncconf для 6 осей

Сообщение nkp »

pkasy писал(а):объясни, пожалуйста, синтаксис этой строкиnkp писал(а):ngc = sed 's/M6/<toolchang>call/i ;s/M06/<toolchang>call/i ; s/m6/<toolchang>call/i
вот сейчас только заметил это сообщение (наверно RSS тупанул)
там конечно ошибки в замене - но вижу уже исправлены...
pkasy
Мастер
Сообщения: 1139
Зарегистрирован: 15 мар 2013, 09:39
Репутация: 45
Откуда: Владивосток

Re: прошу помощи настроить pncconf для 6 осей

Сообщение pkasy »

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

Re: прошу помощи настроить pncconf для 6 осей

Сообщение nkp »

в подпрограмму передаем "3" o<toolchang> call [3]
тогда не получается o<toolchang> call T3
по моему надо по другому организовать передачу номера инструмента...
а попробуй пока без передачи номера инструмента настроить
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: прошу помощи настроить pncconf для 6 осей

Сообщение nkp »

еще надо пинов цифровых добавить (по умолчанию три)
поставить например пять:
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES num_dio=5
надо будет больше - ставить больше...
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: прошу помощи настроить pncconf для 6 осей

Сообщение nkp »

в принципе можно передавать номер инструмента в подрограму той же заменой
есть в sed и более красивое решение - но для начала можно и так попробовать...
все команды для замен прописать в файл chang.sed:

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

s/M6/o<toolchang>call/i
s/M06/o<toolchang>call/i 
s/m6/o<toolchang>call/i
s/T0/[0]/i
s/T1/[1]/i
s/T2/[2]/i
s/T3/[3]/i
s/T4/[4]/i
s/T5/[5]/i
s/T6/[6]/i
s/T7/[7]/i
каждая команда в одну строку
потом в ини :
[FILTER]

PROGRAM_EXTENSION = .ngc Script sed
ngc = sed -f chang.sed

теперь строку вида M6 T2 должны видеть в емс как o<toolchang>call [2]
в подпрограмме переменные будут вида #1,#2 и т.д. до #30
pkasy
Мастер
Сообщения: 1139
Зарегистрирован: 15 мар 2013, 09:39
Репутация: 45
Откуда: Владивосток

Re: прошу помощи настроить pncconf для 6 осей

Сообщение pkasy »

М6 менять нельзя, только М06 и м06, иначе такая забавная каша получается.
вообщем, собрал все в кучу, исправил все синтаксические ошибки - заработала.
теоритически.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: прошу помощи настроить pncconf для 6 осей

Сообщение nkp »

pkasy писал(а):М6 менять нельзя, только М06 и м06, иначе такая забавная каша получается
а что за "каша"??
вроде sed меняет и " M6" на "o<toolchang>call"
??
=============
дошло - меняет команды вида М6х ...
pkasy
Мастер
Сообщения: 1139
Зарегистрирован: 15 мар 2013, 09:39
Репутация: 45
Откуда: Владивосток

Re: прошу помощи настроить pncconf для 6 осей

Сообщение pkasy »

не получается.
попробуй, может сможешь понять, в чем сейчас ошибка

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

M3 S18000
G0 X1
M5
o<toolchang> call [3]
M2
Вложения
toolchang.ngc
(2.72 КБ) 1068 скачиваний
pkasy
Мастер
Сообщения: 1139
Зарегистрирован: 15 мар 2013, 09:39
Репутация: 45
Откуда: Владивосток

Re: прошу помощи настроить pncconf для 6 осей

Сообщение pkasy »

вот так работает:

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

o100 sub
M5                        ( 1.шпиндель стоп )
G0 G53 Z199                    ( 2.ось Z в машинный ноль                    )
M64 P01                   ( 3.карусель поднять - релюшка клапана пневмоцилиндра 1 включена                  )
   M66 P0 L1 Q5           ( 4.ждем срабатывания концевика - карусель поднята         )
G53 Y0                    ( 5.y в машинный ноль. шпиндель въезжает инструментом в свободное гнездо карусели )
M64 P02                   ( 6.инструмент разжать - релюшка клапана пневмозажима 2 включена )
   M66 P1 L1 Q5           ( 7. ждем срабатывания датчика шпинделя - инструмент разжат )
M65 P01                   ( 8. карусель опустить - релюшка клапана пневмоцилиндра 1 выключена )
   M66 P2 L1 Q5           ( 8.а ждем срабатывания концевика - карусель опущена  )
G1 A #1                ( 9. повернуть карусель шаговиком на нужный инструмент. можно задействовать датчики. это вторично. )
T #1
M64 P01                   ( 10. карусель поднять - релюшка клапана пневмоцилиндра 1 включена )
   M66 P0 L1 Q5            ( 10.а ждем срабатывания концевика - карусель поднята )
M65 P02                   ( 11. инструмент зажать - релюшка клапана пневмозажима 2 выключена )
   M66 P3 L1 Q5           ( 12. ждем срабатывания датчика шпинделя - инструмент зажат )
                          ( 13. ось Y возврат. шпиндель выезжает и освобождает гнездо карусели. )
M65 P01                   ( 14. карусель опустить - релюшка клапана пневмоцилиндра 1 выключена )
   M66 P2 L1 Q5           ( 8.а ждем срабатывания концевика - карусель опущена  )
M3
o100 endsub

M3 S18000
T1
G0 Z -1
G1 X5 F50
M6 T3
(debug, toolnumber #5400)
o100 call [3]
G1 Y10
G1 X20
o100 call [10]
M5
M2
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: прошу помощи настроить pncconf для 6 осей

Сообщение nkp »

то есть - не читает подпрограмму с файла , только надо ее в сам код прописывать??
или все таки видит ее в отдельном файле ,но ошибки по коду??
pkasy
Мастер
Сообщения: 1139
Зарегистрирован: 15 мар 2013, 09:39
Репутация: 45
Откуда: Владивосток

Re: прошу помощи настроить pncconf для 6 осей

Сообщение pkasy »

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

Re: прошу помощи настроить pncconf для 6 осей

Сообщение nkp »

может ему M3 без S не нравиться...
может в if-ах дело (ну <M66> может поменять на какое нибудь <xxx>)
вроде все не то конечно - но пробовать последовательно убирать - только так найдется ошибка
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: прошу помощи настроить pncconf для 6 осей

Сообщение nkp »

(для просмотра содержимого нажмите на ссылку)

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

o<toolchang> sub
M5                     
G53 X0                                        
M64 P01                                    
   M66 P0 L1 Q5                 
   O<M66> if [#5399 LT 0] 
      M64 P00               
   O<M66> endif
G53 X0                   
M64 P02                   
   M66 P1 L1 Q5          
   O<M67> if [#5399 LT 0] 
      M64 P00  
   O<M67> endif
M65 P01                   
   M66 P2 L1 Q5          
   O<M68> if [#5399 LT 0] 
      M64 P00  
   O<M68> endif
G1 Z #1                
T #1
M64 P01                  
   M66 P0 L1 Q            
   O<M69> if [#5399 LT 0] 
      M64 P00               
   O<M69> endif
M65 P02                   
   M66 P3 L1 Q5           
   O<M65> if [#5399 LT 0] 
      M64 P00  
   O<M65> endif
G53 Z40			 
M3			  
M65 P01                   
   M66 P2 L1 Q5          
   O<M64> if [#5399 LT 0] 
      M64 P00  
   O<M64> endif
o<toolchang> endsub
в if название блока повторялось...
=============
подача F при ж1 не указана...
===============
возле Q не было значения: теперь все вроде работает....
pkasy
Мастер
Сообщения: 1139
Зарегистрирован: 15 мар 2013, 09:39
Репутация: 45
Откуда: Владивосток

Re: прошу помощи настроить pncconf для 6 осей

Сообщение pkasy »

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

Re: прошу помощи настроить pncconf для 6 осей

Сообщение nkp »

а что говорит при запуске из терминала с -d:

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

linuxcnc -d
====================================
у меня "все" работает: файл с подпрограммой подкорректирован - токарка все ж...
(для просмотра содержимого нажмите на ссылку)

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

o<toolchang> sub
M5                     
G53 X0                                        
M64 P01                                    
   M66 P0 L1 Q5                 
   O<M66> if [#5399 LT 0] 
      M64 P00               
   O<M66> endif
G53 X0                   
M64 P02                   
   M66 P1 L1 Q5          
   O<M67> if [#5399 LT 0] 
      M64 P00  
   O<M67> endif
M65 P01                   
   M66 P2 L1 Q5          
   O<M68> if [#5399 LT 0] 
      M64 P00  
   O<M68> endif
G1 F30 Z #1                
T #1
M64 P01                  
   M66 P0 L1 Q5            
   O<M69> if [#5399 LT 0] 
      M64 P00               
   O<M69> endif
M65 P02                   
   M66 P3 L1 Q5           
   O<M65> if [#5399 LT 0] 
      M64 P00  
   O<M65> endif
G53 Z40			 
M3			  
M65 P01                   
   M66 P2 L1 Q5          
   O<M64> if [#5399 LT 0] 
      M64 P00  
   O<M64> endif
o<toolchang> endsub
но вцелом - файл видит- весь читает,пины срабатывают, ошибок не выдает...
да...исходный код:
M3 S180
G0 X1
M5
M06 T1
M2
pkasy
Мастер
Сообщения: 1139
Зарегистрирован: 15 мар 2013, 09:39
Репутация: 45
Откуда: Владивосток

Re: прошу помощи настроить pncconf для 6 осей

Сообщение pkasy »

значит, ошибка на моей стороне. буду разбираться.
но тут есть еще одна засада.
эта подпрограмма не влияет но номер инструмента.
то есть он не меняется, и таблица не используется, и прочее.
после T1 что у тебя внизу? все равно "нет инструмента".
М61 поможет?
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: прошу помощи настроить pncconf для 6 осей

Сообщение nkp »

pkasy писал(а):но тут есть еще одна засада.
сейчас посмотрим...
Ответить

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