Вопрос по редактированию G кода.

Общие вопросы станкостроения и организиции труда.
Аватара пользователя
Mohawk
Новичок
Сообщения: 24
Зарегистрирован: 05 окт 2017, 16:07
Репутация: 1
Настоящее имя: Максим
Контактная информация:

Вопрос по редактированию G кода.

Сообщение Mohawk »

Может кто-нибудь с этим сталкивался. При редактировании G кода я вручную меняю скорость подачи в определенных местах. Я задался вопросом, есть ли специальная программа (или некий скрипт), что-бы в конце строки вставлялась определенная подача, если в самой строке стоит определенный символ. К примеру если в строке стоит символ, обозначающий поворотную ось "A", то в конце этой строки вставляется подача F4000.
Т.е. мне НЕ нужна программа, предназначеная именно для работы с G кодом. Подойдет любая программа для работы с текстом, выполняющая вышеозначенную функцию. Может даже страница, написанная на PHP с каким-нибудь подходящим скриптом.
Я пытался найти что-то подобное, но не могу правильно сформулировать, что-бы забить в поисковую строку Гугла.
Последний раз редактировалось Mohawk 08 дек 2017, 13:59, всего редактировалось 1 раз.
Nixon
Мастер
Сообщения: 348
Зарегистрирован: 07 ноя 2016, 15:45
Репутация: 28
Настоящее имя: Алексей
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение Nixon »

Adobe InDesign. Дикие возможности по части "поиск и замена". Но, это так, шутка.
Попробуйте пошарить в CIMCO Edit V6, там вроде бы много вкусняшек для работы с кодом.
Аватара пользователя
Mohawk
Новичок
Сообщения: 24
Зарегистрирован: 05 окт 2017, 16:07
Репутация: 1
Настоящее имя: Максим
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение Mohawk »

Nixon писал(а):Adobe InDesign. Дикие возможности по части "поиск и замена". Но, это так, шутка.
Попробуйте пошарить в CIMCO Edit V6, там вроде бы много вкусняшек для работы с кодом.
Я посмотрел эту CIMCO Edit V6. На данный момент я пользуюсь прогой NC Corrector v4.0. Что та, что та программа - обе служат для визуализации G кода для более удобного редактирования. Это немного не то, что мне нужно. Мне бы просто вставить "F4000" в строки, где есть буква "A". Автоматически. Мне даже не нужно смотреть на визуализацию в данном случае.
Аватара пользователя
MX_Master
Мастер
Сообщения: 7488
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3113
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение MX_Master »

Нужен текстовый редактор с поиском/заменой и "регулярными выражениями". Например Notepad++.

Открываем в нем файл, жмём CTRL + F (поиск) и заходим во вкладку Заменить.
Включаем регулярные выражения и вбиваем в строку поиска (A[0-9.-]+)
В строку замены вбиваем $1 F4000
Жмём на Заменить всё.
2017-11-06_003304.png
2017-11-06_003304.png (10.56 КБ) 5406 просмотров
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение Serg »

MX_Master писал(а):Нужен текстовый редактор с поиском/заменой и "регулярными выражениями". Например Notepad++.
Тоже самое можно сделать и например bat скриптом с помощью утилиты sed.

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

sed -e 's/\(^[^(]*[Aa].*$\)/\1 F4000/p' infile >outfile
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Mohawk
Новичок
Сообщения: 24
Зарегистрирован: 05 окт 2017, 16:07
Репутация: 1
Настоящее имя: Максим
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение Mohawk »

MX_Master писал(а):Нужен текстовый редактор с поиском/заменой и "регулярными выражениями". Например Notepad++.

Открываем в нем файл, жмём CTRL + F (поиск) и заходим во вкладку Заменить.
Включаем регулярные выражения и вбиваем в строку поиска (A[0-9.-]+)
В строку замены вбиваем $1 F4000
Жмём на Заменить всё.
2017-11-06_003304.png
Да, все получилось. Большое спасибо. А подскажите еще, пожалуйста, скрипт что-бы вставить F с другим значением (например F1000) в строки, где не присутствует A.
Аватара пользователя
Predator
Мастер
Сообщения: 9583
Зарегистрирован: 18 июл 2013, 18:26
Репутация: 2531
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение Predator »

Mohawk, Так почитай в инете, о регулярных выражениях и меняй, что угодно потом.
Аватара пользователя
Mohawk
Новичок
Сообщения: 24
Зарегистрирован: 05 окт 2017, 16:07
Репутация: 1
Настоящее имя: Максим
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение Mohawk »

Predator писал(а):Mohawk, Так почитай в инете, о регулярных выражениях и меняй, что угодно потом.
Спасибо за подсказку насчет "регулярных выражений". До этого не знал, как это называется, следовательно не знал что искать. Нашел методичку, начал разбираться. Но не могу понять, как сделать поиск "от обратного" - т.е. поиск строки, в которой нет определенного символа.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение Serg »

Мой пример меняет строчки в которых встречается "А" и не встречается "(" - коментарий. :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Mohawk
Новичок
Сообщения: 24
Зарегистрирован: 05 окт 2017, 16:07
Репутация: 1
Настоящее имя: Максим
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение Mohawk »

UAVpilot писал(а):Мой пример меняет строчки в которых встречается "А" и не встречается "(" - коментарий. :)
Вы назвали некую "утилиту sed.". Я, увы, даже не смог найти где эту программу скачать.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение Serg »

Гугл первой-же ссылкой даёт: https://ru.wikipedia.org/wiki/Sed
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
AndyBig
Мастер
Сообщения: 3971
Зарегистрирован: 07 мар 2014, 04:01
Репутация: 1121
Откуда: юг России
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение AndyBig »

Mohawk писал(а):Я, увы, даже не смог найти где эту программу скачать.
http://gnuwin32.sourceforge.net/packages/sed.htm
Аватара пользователя
MX_Master
Мастер
Сообщения: 7488
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3113
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение MX_Master »

Mohawk писал(а):Да, все получилось. Большое спасибо. А подскажите еще, пожалуйста, скрипт что-бы вставить F с другим значением (например F1000) в строки, где не присутствует A.
Да почти также, но строка поиска будет чуть длиннее

Заменить ^((G[0-9]+\ *)?([XYZIJKR][0-9.-]+\ *)+)$
На $1 F1000
2017-11-06_194756.png
2017-11-06_194756.png (11.11 КБ) 5315 просмотров
Последний раз редактировалось MX_Master 06 ноя 2017, 16:52, всего редактировалось 1 раз.
Аватара пользователя
Mohawk
Новичок
Сообщения: 24
Зарегистрирован: 05 окт 2017, 16:07
Репутация: 1
Настоящее имя: Максим
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение Mohawk »

Я кажется разобрался с программой Notepad++. Может кому пригодится:

Все строки с "A" обрабатываются скриптом (A[0-9.-]+), задавая первую подачу. (Спасибо MX_Master'у).
Затем для обработки оставшихся строк я включаю скрипт (Y[0-9.-]+$), задающий вторую подачу. (после проставления первой подачи оставшиеся строки заканчиваются на "Y").
Таким образом весь код поделен на 2 разные подачи.

Еще раз спасибо всем отписавшимся. Крайне признателен)
Аватара пользователя
Mohawk
Новичок
Сообщения: 24
Зарегистрирован: 05 окт 2017, 16:07
Репутация: 1
Настоящее имя: Максим
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение Mohawk »

MX_Master писал(а):
Mohawk писал(а):Да, все получилось. Большое спасибо. А подскажите еще, пожалуйста, скрипт что-бы вставить F с другим значением (например F1000) в строки, где не присутствует A.
Да почти также, но строка поиска будет чуть длиннее

Заменить ^((G[0-9]+\ *)?([XYZIJKR][0-9.-]+\ *)+)$
На $1 F1000
2017-11-06_194756.png
Большое спасибо вам за помощь. Теперь постоянно пользуюсь этим редактором, очень мне помогает.
Но подскажите еще, есть ли в этом редакторе возможность складывания чисел? Т.е. мне необходимо собирать несколько G кодов в один файл. Но проблема в том, что ось A при работе крутится от нуля до + бесконечности. Т.е. к примеру, при отработке первого кода, положение оси А +345000. А следующая программа управления начинается с А 0. Т.е. если я объединю эти два кода, то в промежутке между программ станок начнет вращать поворотную ось в обратную сторону, чтоб сбросить значение +345000 до нуля.
Есть ли возможность в данном редакторе добавлять цифровое значение к значению, идущему после буквы А? Т.е. в следующей программе я добавляю ко всем значениям оси А последнее значение оси А от предыдущей программы. И вторая программа будет начинаться не с нуля, а с +345001.
Аватара пользователя
AndyBig
Мастер
Сообщения: 3971
Зарегистрирован: 07 мар 2014, 04:01
Репутация: 1121
Откуда: юг России
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение AndyBig »

Mohawk писал(а):Т.е. в следующей программе я добавляю ко всем значениям оси А последнее значение оси А от предыдущей программы. И вторая программа будет начинаться не с нуля, а с +345001.
G92 в начале каждой программы не спасет?
Аватара пользователя
MX_Master
Мастер
Сообщения: 7488
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3113
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение MX_Master »

Mohawk писал(а):Большое спасибо вам за помощь. Теперь постоянно пользуюсь этим редактором, очень мне помогает.
Я думаю, для вас настал долгожданный час знакомства с программой CIMCO Edit :hehehe:
Аватара пользователя
Mohawk
Новичок
Сообщения: 24
Зарегистрирован: 05 окт 2017, 16:07
Репутация: 1
Настоящее имя: Максим
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение Mohawk »

AndyBig писал(а):
Mohawk писал(а):Т.е. в следующей программе я добавляю ко всем значениям оси А последнее значение оси А от предыдущей программы. И вторая программа будет начинаться не с нуля, а с +345001.
G92 в начале каждой программы не спасет?
Хм.. Не нашел G92 в своем справочнике по G коду. Он сбрасывает все значения осей до нуля? Если да, то это мне не подходит. Ведь мне нужно периодически сбрасывать до нуля только одну ось - крутящую ось A.
Аватара пользователя
AndyBig
Мастер
Сообщения: 3971
Зарегистрирован: 07 мар 2014, 04:01
Репутация: 1121
Откуда: юг России
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение AndyBig »

G92 присваивает указанным осям указанные значения, необязательно ноль :)
Конечно, если она поддерживается станком.
Аватара пользователя
Mohawk
Новичок
Сообщения: 24
Зарегистрирован: 05 окт 2017, 16:07
Репутация: 1
Настоящее имя: Максим
Контактная информация:

Re: Вопрос по редактированию G кода.

Сообщение Mohawk »

AndyBig писал(а):G92 присваивает указанным осям указанные значения, необязательно ноль :)
Конечно, если она поддерживается станком.
Да, станком поддерживается. Координата исправно обнуляется по команде G92. Спасибо)
Ответить

Вернуться в «Общие вопросы»