фильтр G кода
- Dmaster
- Мастер
- Сообщения: 1271
- Зарегистрирован: 15 июл 2011, 13:36
- Репутация: 476
- Контактная информация:
фильтр G кода
появилась странная задача установить чпу на странный универсально-фрезерный с чпу не контурный.
станок на швп и от одного мотора переключается от оси к оси. Переделывать механику смысла нет. На нем всё равно только сверлить.
Так вот задача поставить фильтр в LINUXCNC что-б ругался на наличие двух осей в одной строке, наличие G2 G3, наличие резьбовых циклов итд.
http://linuxcnc.org/docs/html/config/in ... er_section
Вот некий мануал из которого мне нифига не понятен принцип. да и возможно я смотрю не туда.
Если это не возможно, то отправить станок в аварию при попытке двигать 2 оси - не проблема, но хотелось сделать красиво)
станок на швп и от одного мотора переключается от оси к оси. Переделывать механику смысла нет. На нем всё равно только сверлить.
Так вот задача поставить фильтр в LINUXCNC что-б ругался на наличие двух осей в одной строке, наличие G2 G3, наличие резьбовых циклов итд.
http://linuxcnc.org/docs/html/config/in ... er_section
Вот некий мануал из которого мне нифига не понятен принцип. да и возможно я смотрю не туда.
Если это не возможно, то отправить станок в аварию при попытке двигать 2 оси - не проблема, но хотелось сделать красиво)
" Linux CNC - наше всё"
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: фильтр G кода
sed тебе в помощь
несколько примеров есть на форуме
с ним всё решишь
несколько примеров есть на форуме
с ним всё решишь
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: фильтр G кода
и даже не так)
если менять ничего в жкоде не собираешься,то
хоть на питоне ,хоть на любом скриптовом языке :
1. изловить нашу строку(и)
2. выдать сигнал(действие)
что в итоге должно произойти?
просто окошко с предупреждением?
какой gui ?
если менять ничего в жкоде не собираешься,то
хоть на питоне ,хоть на любом скриптовом языке :
1. изловить нашу строку(и)
2. выдать сигнал(действие)
что в итоге должно произойти?
просто окошко с предупреждением?
какой gui ?
- Dmaster
- Мастер
- Сообщения: 1271
- Зарегистрирован: 15 июл 2011, 13:36
- Репутация: 476
- Контактная информация:
Re: фильтр G кода
axisnkp писал(а):какой gui ?
именно) желательно с указанием строки.nkp писал(а):1. изловить нашу строку(и)
2. выдать сигнал(действие)
что в итоге должно произойти?
просто окошко с предупреждением?
Вопрос в том, куда скрипт прикручивать?
" Linux CNC - наше всё"
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: фильтр G кода
в ини напиши
в папку конфига положи файл из вложения(сделай его исполняемым)
положу два варианта - один с yadом
захочешь - установишь - будет окошко вылезать - в нем напишешь и выведешь - что пожелаешь
это рыба(звиняй)
не разберешься - подмогну
Код: Выделить всё
[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image
PROGRAM_EXTENSION = .py Python Script
ngc = ./p.py
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python
положу два варианта - один с yadом
захочешь - установишь - будет окошко вылезать - в нем напишешь и выведешь - что пожелаешь
это рыба(звиняй)
не разберешься - подмогну
- Вложения
-
- p.py.tar
- (10 КБ) 201 скачивание
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: фильтр G кода
это установка YAD
http://www.cnc-club.ru/forum/viewtopic. ... 69&p=96928
./configure
make
sudo make install
http://www.cnc-club.ru/forum/viewtopic. ... 69&p=96928
./configure
make
sudo make install
- Вложения
-
- yad-0.40.0.tar
- (1.56 МБ) 225 скачиваний
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: фильтр G кода
это рыба без YAD
будет работать сразу
"рыба" потому как там только одно условие прописано
"если на одной строке мы нашли x и y"
надо прописать все "ненужные" варианты и комбинации
будет работать сразу
"рыба" потому как там только одно условие прописано
"если на одной строке мы нашли x и y"
надо прописать все "ненужные" варианты и комбинации
- Вложения
-
- p.py.tar
- (10 КБ) 232 скачивания
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5181
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: фильтр G кода
Проще обычным фильтром в строке с запрещённым кодом дописать пояснение обычными словами (не коментом!) - при загрузке УП LinuxCNC ругнётся на строчку с указанием её номера.nkp писал(а):положу два варианта - один с yadом
захочешь - установишь - будет окошко вылезать - в нем напишешь и выведешь - что пожелаешь
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: фильтр G кода
если вместо
просто напишем
то этот фильтр как раз и будет делать такое , как выше предложил UAVpilot
ну как всегда - решений много
но если таки хочется теплого_лампового, или просто поиграть в "а вот я могу это одной строчной написать" - то тогда sed ( скорей всего его выше было названо "обычным фильтром" )
хотя если быть точным,то это просто сторонняя программа
Код: Выделить всё
print 'error'
Код: Выделить всё
print line, 'error'
ну как всегда - решений много
но если таки хочется теплого_лампового, или просто поиграть в "а вот я могу это одной строчной написать" - то тогда sed ( скорей всего его выше было названо "обычным фильтром" )
хотя если быть точным,то это просто сторонняя программа
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: фильтр G кода
как по мне - тут условия правильно выписать
ну например - символ X и Y может встретиться и в комментариях
это надо учесть
и тд и тп
а уже на каком языке это донести - дело второстепенное
ну например - символ X и Y может встретиться и в комментариях
это надо учесть
и тд и тп
а уже на каком языке это донести - дело второстепенное
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5181
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: фильтр G кода
А не надо искать всякие "X" и "Y", надо искать "[xX] *[0-9.][0-9.]*".
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: фильтр G кода
это кому?UAVpilot писал(а):А не надо искать всякие "X" и "Y", надо искать "[xX] *[0-9.][0-9.]*
вроде бы всё написано выше - правильно прописать условия...
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: фильтр G кода
та давай уже рыбу (ну ,не ту ,что у меня,а ту - из подписи твоей)UAVpilot писал(а):Это пример.
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: фильтр G кода
в питоне есть модуль re
там весь инструментарий для парсинга
Код: Выделить всё
import re
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5181
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: фильтр G кода
Как-то так:nkp писал(а):та давай уже рыбу (ну ,не ту ,что у меня,а ту - из подписи твоей)
Код: Выделить всё
$ cat - | sed -e 's/\(^.*X[0-9.][0-9.]* *[YZ][0-9.][0-9.]*.*$\)/Bad command: \1/i' -e 's/\(^.*Y[0-9.][0-9.]* *[XZ][0-9.][0-9.]*.*$\)/Bad command: \1/i' -e 's/\(^.*Z[0-9.][0-9.]* *[XY][0-9.][0-9.]*.*$\)/Bad command: \1/i' -e 's/\(^.*G[23][^0-9].*$\)/Bad command: \1/i'
N123 G0 X123 Y234 Z345
Bad command: N123 G0 X123 Y234 Z345
G1 X222 Y333
Bad command: G1 X222 Y333
X444 Z777
Bad command: X444 Z777
G2 X555
Bad command: G2 X555
G1 X444
G1 X444
G0 Y777
G0 Y777
$
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: фильтр G кода
почему говорят: рыба ( в смысле - заготовка документа)?
Это просто сокращение от выражения "сырая рыба", то есть продукт, который еще надо приготовить, хотя основа уже имеется.
найдено на просторах интернета
но доработать напильником еще надо:
Это просто сокращение от выражения "сырая рыба", то есть продукт, который еще надо приготовить, хотя основа уже имеется.
найдено на просторах интернета
как рыба - пойдетUAVpilot писал(а):Как-то так:
но доработать напильником еще надо:
Код: Выделить всё
N123 G0 X 123 Y 234 Z 345