LinuxCNC Features - набор мастеров для LinuxCNC

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение Nick »

Снимок-features.ngc - AXIS 2.6.0-pre0-4385-g9c95855 on LinuxCNC-HAL-SIM-AXIS.png (200858 просмотров) <a class='original' href='./download/file.php?id=15468&sid=de6ebef246adf4e25286dab458c71e0c&mode=view' target=_blank>Загрузить оригинал (153.61 КБ)</a>
Как некоторые уже заметили я пропал на недельку. И пропадал я не зря. Наконец-то решил сделать достойную замену ngcgui.
LinuxCNC Features это тулкит для создания "мастеров". Точнее это тулкит самих "мастеров". В общем и целом LinuxCNC Features работает схоже с ngcgui, но с некоторыми отличиями. Честно говоря, с ngcgui я до конца так и не разобрался, поэтому это я считаю, что он работает схоже :freak:. (Название Features взято от кнопки в ngcgui - add feature.)
В wiki cnc-club добавлена страница о LinuxCNC Features, давайте вместе ее наполнять документацией, видео и прочими полезными материалами.
http://cnc-club.ru/wiki/index.php/LinuxCNC_Features

Текущий статус разработки

  • Дописать обработки.
  • Отловить баги :freak: .
Возможности (для просмотра содержимого нажмите на ссылку)
Что может LinuxCNC Features:
  1. Добавлять features - простые обработки
  2. Менять их порядок
  3. Группировать обработки
  4. Делать линейные и круговые массивы
  5. Встраиваться в axis LinuxCNC или работать как отдельной приложение
  6. Просматривать резултьтат в axis в редиме реального времени
  7. Сохранять шаблоны обработок
Это только пока :).
Скриншоты (для просмотра содержимого нажмите на ссылку)
Пара примеров обработки, созданной за 20 сек:
LinuxCNC-Features1.png (201147 просмотров) <a class='original' href='./download/file.php?id=14825&sid=de6ebef246adf4e25286dab458c71e0c&mode=view' target=_blank>Загрузить оригинал (158.39 КБ)</a>
LinuxCNC-Features.png (201147 просмотров) <a class='original' href='./download/file.php?id=14826&sid=de6ebef246adf4e25286dab458c71e0c&mode=view' target=_blank>Загрузить оригинал (166.41 КБ)</a>

Скрины предыдущих версий

Саме начало
LinuxCNC Features.png (201151 просмотр) <a class='original' href='./download/file.php?id=14824&sid=de6ebef246adf4e25286dab458c71e0c&mode=view' target=_blank>Загрузить оригинал (68.04 КБ)</a>
Аватара пользователя
verser
Мастер
Сообщения: 1895
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение verser »

Nick писал(а): Кстати, про копирование стандартных параметров из предыдущих обработок - там есть кнопочка copy - делает полную копию обработки... :roll:
Супер! Если хочешь последне-набранные параметры - создаешь обработку кнопочкой "copy". А если хочешь default параметры - создаешь обработку кнопочкой "+".
Аватара пользователя
verser
Мастер
Сообщения: 1895
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение verser »

verser писал(а): Супер! Если хочешь последне-набранные параметры - создаешь обработку кнопочкой "copy". А если хочешь default параметры - создаешь обработку кнопочкой "+".
А, а если начинаешь резать новую деталь, то "copy" делать неоткуда :thinking: Вот если бы с линеки меню наверху , в которой видны все последние операции, эти операции хранились с последне-набранными параметрами - было бы супер!
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение Nick »

А для этого надо сделать дефаултный шаблон и сохранить его в отдельный файл, и всегда начинать с такого шаблона.
Скажем у нас токарный станок - делаем шаблоны под разные начальные диаметры. Туда же можно и описания инструментов загнать...
Хотя, наверное инструменты лучше отдельным списком в каталоге хранить... можно с фото...
verser писал(а): Если хочешь последне-набранные параметры
вот это "последне-набранные параметры" не совсем понятное обозначение... последне-набранные или последние-в-списке-обработки...
Можно так сделать:
Храним в своем ini (там где хранится статистика по использованию обработок), список параметров
параметр = значение
И при любом изменении параметра меняем это значене, потом берем это значение за дефолтное.

О, кстати, можно еще кнопку добавить типо "x" для сброса параметра в дефалт....
Аватара пользователя
verser
Мастер
Сообщения: 1895
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение verser »

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

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение Serg »

Не, вы меня похоже не до конца поняли.
Представьте, что нужно сделать что-то типа посадочного углубления под квадратный фланец двгателя, для этого сначала делаем круглое отверстие, скажем, в точке X50 Y50 диаметром 40 на всю глубину, а потом на половину глубины делаем квадратную выемку с центром в тех-же X50 Y50 со стороной, скажем, в 45.
Это могло-бы выглядет так: создаём первую операцию "круг с центром в XY", заполняем X50, Y50, диаметр 40, глубина 10. Следом создаём операцию "квадрат с центром в XY" - в этой операции сразу подставляются значения X50, Y50, длина стороны вдоль X 40, длина стороны вдоль Y 40, глубина 10. Остаётся только обе стороны поправить на 45 и глубину на 5.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение Nick »

Я - то как раз понял все именно так, просто лень это писать :freak:, вот и выдумываю способы :)
Аватара пользователя
Алексс
Почётный участник
Почётный участник
Сообщения: 2210
Зарегистрирован: 20 июл 2012, 15:49
Репутация: 266
Заслуга: IQ32
Настоящее имя: Алексей
Откуда: Прага
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение Алексс »

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

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение Serg »

Nick писал(а):вот и выдумываю способы
Наверно надо просто завести внутренние переменные типа _Last_Start_X, _Last_Start_Y, _Last_Delta_X, _Last_Delta_Y, _Last_Depth и т.п. и запоминать/подставлять их значения в подходящие по смыслу:
_Last_Start_X, _Last_Start_Y - координаты угла прямоугольника или центра круга,
_Last_Delta_X, _Last_Delta_Y - стороны прямоугольника или диаметр круга/овала
и т.п.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
nERV
Мастер
Сообщения: 1518
Зарегистрирован: 27 сен 2013, 19:00
Репутация: 624
Настоящее имя: Александр
Откуда: Ульяновск
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение nERV »

Что-то не работает. Создаю элементы, а их кагбэ нет.
Вложения
Снимок.png (3441 просмотр) <a class='original' href='./download/file.php?id=30116&sid=de6ebef246adf4e25286dab458c71e0c&mode=view' target=_blank>Загрузить оригинал (127.32 КБ)</a>
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение Serg »

Кнопку "обновить" нажимал?
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
nERV
Мастер
Сообщения: 1518
Зарегистрирован: 27 сен 2013, 19:00
Репутация: 624
Настоящее имя: Александр
Откуда: Ульяновск
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение nERV »

Конечно. И галочку ставил.
Аватара пользователя
verser
Мастер
Сообщения: 1895
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение verser »

Значит есть ошибки. Нужен log.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение Nick »

Чистовой проход слелай поменьше... может он... и глубину поставь отрицательной...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение Nick »

Что-то начинает вырисовываться :cheesy:
Честно говоря, выглядит все очень безумно, но работает :cheesy:
Все как я и писал - сначала загоняем в MillDraw все линии, потом их него по 1 строке забираем gкод через milldraw.get_line(), парсим его на Gкоде и выдаем на обычные G0-G1 (пока с дугами не сделал)

И уже есть заглубление под углом! :D

Надо добавить передачу всех параметров, как для multipass, сейчас они задаются статически.
Исходники тут: https://github.com/cnc-club/linuxcnc-fe ... piral-mill
Вложения
Снимок-40.png (3402 просмотра) <a class='original' href='./download/file.php?id=30153&sid=de6ebef246adf4e25286dab458c71e0c&mode=view' target=_blank>Загрузить оригинал (172.46 КБ)</a>
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение Nick »

И даже работает для незамкнутых контуров!
Вложения
Снимок-41.png (3396 просмотров) <a class='original' href='./download/file.php?id=30160&sid=de6ebef246adf4e25286dab458c71e0c&mode=view' target=_blank>Загрузить оригинал (184.12 КБ)</a>
Аватара пользователя
verser
Мастер
Сообщения: 1895
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение verser »

Nick, это серьезная работа! Спасибо тебе огромное!
Аватара пользователя
verser
Мастер
Сообщения: 1895
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение verser »

Пробую запустить Draw с одной линией (abs-line) - файл ngc создается
features.ngc
(5.06 КБ) 1028 скачиваний
но выскакивает ошибка:

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

...
G-Code error in features.ngc
Near line 150 of
../../nc_files//features.ngc
py_execute(milldraw.draw_start(interpreter.this.params['draw_tmp_x'],interpreter.this.params['draw_tmp_y'])):
Traceback (most recent call last):

  File "<string>", line 1, in <module>

NameError: name 'interpreter' is not defined
Аватара пользователя
verser
Мастер
Сообщения: 1895
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение verser »

Нашел в чем дело - у меня в default.ngc не было

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

;py,import interpreter
Работает! :good:
Аватара пользователя
nERV
Мастер
Сообщения: 1518
Зарегистрирован: 27 сен 2013, 19:00
Репутация: 624
Настоящее имя: Александр
Откуда: Ульяновск
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение nERV »

У меня теперь вот так говорит.
Вложения
Снимок-1.png (3330 просмотров) <a class='original' href='./download/file.php?id=30220&sid=de6ebef246adf4e25286dab458c71e0c&mode=view' target=_blank>Загрузить оригинал (464.11 КБ)</a>
Аватара пользователя
verser
Мастер
Сообщения: 1895
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: LinuxCNC Features - набор мастеров для LinuxCNC

Сообщение verser »

Сделал себе новую группу мастеров для 4х-осевой XYZB обработки.
Из возможностей:
-форма детали вращения задается комбинацией lines и arcs
-настройка черновых и финишных проходов как по Z, так и по Y
-компенсация диаметра инструмента
-корректная угловая скорость подачи
-доработка фасок в концах проходов автоматически
-к примеру такое создается за 30 сек.
xyzb_4axis.png (3322 просмотра) <a class='original' href='./download/file.php?id=30244&sid=de6ebef246adf4e25286dab458c71e0c&mode=view' target=_blank>Загрузить оригинал (128.97 КБ)</a>
Делюсь https://github.com/verser-git/features
Ответить

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