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

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.

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

Сообщение pkasy » 23 мар 2013, 16:23

Код: Выделить всёРазвернуть
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"
и "встречен плохой символ '\<'
pkasy
Мастер
 
Сообщения: 1139
Зарегистрирован: 15 мар 2013, 09:39
Откуда: Владивосток
Репутация: 45

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

Сообщение nkp » 23 мар 2013, 16:29

может нет в таблице инструмента №3
ага ;)
не то написал ...))))
nkp
Мастер
 
Сообщения: 8260
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1539
Медальки:

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

Сообщение pkasy » 23 мар 2013, 16:34

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

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

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

Сообщение nkp » 23 мар 2013, 16:38

pkasy писал(а):объясни, пожалуйста, синтаксис этой строкиnkp писал(а):ngc = sed 's/M6/<toolchang>call/i ;s/M06/<toolchang>call/i ; s/m6/<toolchang>call/i

вот сейчас только заметил это сообщение (наверно RSS тупанул)
там конечно ошибки в замене - но вижу уже исправлены...
nkp
Мастер
 
Сообщения: 8260
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1539
Медальки:

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

Сообщение pkasy » 23 мар 2013, 16:43

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

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

Сообщение nkp » 23 мар 2013, 16:46

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

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

Сообщение nkp » 23 мар 2013, 16:53

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

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

Сообщение nkp » 23 мар 2013, 18:04

в принципе можно передавать номер инструмента в подрограму той же заменой
есть в 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
nkp
Мастер
 
Сообщения: 8260
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1539
Медальки:

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

Сообщение pkasy » 24 мар 2013, 04:16

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

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

Сообщение nkp » 24 мар 2013, 09:48

pkasy писал(а):М6 менять нельзя, только М06 и м06, иначе такая забавная каша получается

а что за "каша"??
вроде sed меняет и " M6" на "o<toolchang>call"
??
=============
дошло - меняет команды вида М6х ...
nkp
Мастер
 
Сообщения: 8260
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1539
Медальки:

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

Сообщение pkasy » 24 мар 2013, 11:09

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

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

Сообщение pkasy » 24 мар 2013, 11:11

вот так работает:
Код: Выделить всёРазвернуть
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
pkasy
Мастер
 
Сообщения: 1139
Зарегистрирован: 15 мар 2013, 09:39
Откуда: Владивосток
Репутация: 45

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

Сообщение nkp » 24 мар 2013, 13:35

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

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

Сообщение pkasy » 24 мар 2013, 14:01

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

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

Сообщение nkp » 24 мар 2013, 14:06

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

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

Сообщение nkp » 24 мар 2013, 15:36

(для просмотра содержимого нажмите на ссылку)
Код: Выделить всёРазвернуть
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 не было значения:

теперь все вроде работает....
nkp
Мастер
 
Сообщения: 8260
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1539
Медальки:

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

Сообщение pkasy » 25 мар 2013, 03:18

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

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

Сообщение nkp » 25 мар 2013, 07:41

а что говорит при запуске из терминала с -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
nkp
Мастер
 
Сообщения: 8260
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1539
Медальки:

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

Сообщение pkasy » 25 мар 2013, 09:46

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

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

Сообщение nkp » 25 мар 2013, 09:53

pkasy писал(а):но тут есть еще одна засада.

сейчас посмотрим...
nkp
Мастер
 
Сообщения: 8260
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1539
Медальки:

Пред.След.

Вернуться в LinuxCNC

Кто сейчас на конференции

Зарегистрированные пользователи: 1240, admin, Bing [Bot], diman78, eekot, evgenymcp, Google [Bot], Kachik, Majestic-12 [Bot], MGG, Mishagz, NikolayUa24, Okser, r_v, SeReGa Sh, vbif, Yandex [bot], Зерноед, Ильюшина

Reputation System ©'