Страница 25 из 38
LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 22 май 2013, 18:07
Nick
Как некоторые уже заметили я пропал на недельку. И пропадал я не зря. Наконец-то решил сделать достойную замену ngcgui.
LinuxCNC Features это тулкит для создания "мастеров". Точнее это тулкит самих "мастеров". В общем и целом LinuxCNC Features работает схоже с ngcgui, но с некоторыми отличиями. Честно говоря, с ngcgui я до конца так и не разобрался, поэтому это я считаю, что он работает схоже

. (Название Features взято от кнопки в ngcgui - add feature.)
Текущий статус разработки
- Дописать обработки.
- Отловить баги
.
Возможности (для просмотра содержимого нажмите на ссылку)Что может LinuxCNC Features:
- Добавлять features - простые обработки
- Менять их порядок
- Группировать обработки
- Делать линейные и круговые массивы
- Встраиваться в axis LinuxCNC или работать как отдельной приложение
- Просматривать резултьтат в axis в редиме реального времени
- Сохранять шаблоны обработок
Это только пока

.
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 11 июл 2014, 14:26
verser
Nick писал(а):Сейчас сделаю фичу G41/G42..
Лучше всего её как доп. параметр в mill/set-tool-params.ini сделать , со значениями например
0 - нет компенсации
1 - G41
2 - G42
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 11 июл 2014, 14:50
Nick
сделал 41/42, но теперь зараза ругается на то что перемещение сдишком маленькое для такой компенсации... я так понимаю это в местах заглубления... там появляются короткие отрезки...
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 11 июл 2014, 15:44
Lexxa
Nick писал(а):Мне кажется это надо делать отдельной фиче
Зачем плодить одинаковые фичи, когда нужно просто дать возможность включить или не включить корректор???
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 11 июл 2014, 20:22
verser
Nick писал(а):сделал 41/42, но теперь зараза ругается на то что перемещение сдишком маленькое для такой компенсации... я так понимаю это в местах заглубления... там появляются короткие отрезки...
По этому поводу посмотрел в документации
The lead in move must be at least as long as the tool radius
Непонятное ограничение linuxcnc, убивающее весь смысл команд G41 G42, поскольку без коротких перемещений ну никак не обойтись.
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 11 июл 2014, 20:37
Serg
Дайте посмотреть код вокруг этой 164-й строки?..
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 11 июл 2014, 21:10
verser
Добавил компенсацию диаметра фрезы во все mill мастера кроме Draw и Chain. Теперь если параметр #<_global_tool_d> не 0, то будет выполняться зависящая от его величины компенсация. Для изменения направления обхода достаточно поставить "минус" перед значением #<_global_tool_d>. Обновил github
https://github.com/verser-git/features
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 11 июл 2014, 21:26
Сергей Саныч
verser писал(а):The lead in move must be at least as long as the tool radius
Читаем дальше
The lead in move can be a rapid move.
Речь про подвод инструмента по команде G0. Компенсацию надо включить заранее, и после включения выполнить G0 на расстояние не меньше радиуса инструмента. Что логично, иначе при включении компенсации мы оказываемся неизвестно где, может даже в толще материала. А
после этого перемещения (которое будет завершено в точке, уже с учетом компенсации, отрезки по G1/G2/G3 могут быть сколь угодно короткими.
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 12 июл 2014, 10:37
NightV
Сергей Саныч писал(а): Компенсацию надо включить заранее, и после включения выполнить G0 на расстояние не меньше радиуса инструмента.
солидкам так делает, но на G1
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 14 июл 2014, 14:43
Nick
UAVpilot писал(а):Дайте посмотреть код вокруг этой 164-й строки?..
Там все очень не просто

:
Если добавить холостое перемещение, то начинате работать.... Т.е. получается в G42 надо добавить доп поля для задания перемещения в нужную сторону?

Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 14 июл 2014, 14:52
Сергей Саныч
Nick писал(а):Если добавить холостое перемещение, то начинате работать...
дак ыть в букваре всё написано

Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 15 июл 2014, 11:07
verser
Добавил компенсацию диаметра инструмента с помощью G41.1 G42.1 в группу Chain, группу здесь описывал
http://cnc-club.ru/forum/viewtopic.php? ... 80#p125236(теперь концы смежных элементов обязательно должны совпадать), в качестве параметра диаметра используется все та же глобальная переменная #<_global_tool_d>. Для крорректной отработки G41.1 G42.1 требуется задать вручную угол наклона касательной к первому отрезку или дуге (на рисунках первый отрезок - тот что под фрезой). Вот исходный рисунок без компенсации #<_global_tool_d>=0
компенсация "изнутри" #<_global_tool_d>=5
компенсация "снаружи" #<_global_tool_d>=-5
Исходники здесь
https://github.com/verser-git/features
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 15 июл 2014, 11:23
Nick
verser писал(а):Для крорректной отработки G41.1 G42.2 требуется задать вручную угол наклона касательной к первому отрезку или дуге (на рисунках первый отрезок - тот что под фрезой).
А как он у тебя задается?
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 15 июл 2014, 14:00
verser
Nick писал(а):
А как он у тебя задается?
В параметрах группы LinkUP есть параметр угол "A" - это он. (На первой картинке стрелочкой показано). Может исправлю и назову его как-нить "Start angle" - угол наклона первого отрезка к оси X (если первая дуга - угол между касательной к дуге в начальной точке и осью X).
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 02 авг 2014, 20:57
Lexxa
verser писал(а):компенсация "изнутри" #<_global_tool_d>=5
компенсация "внутри" #<_global_tool_d>=-5
Неправильно это.
точнее не это, а то, что в Фичах вообще нужно прописывать диаметр инструмента.
Все сведения об инструментах должны браться ТОЛЬКО из таблицы инструментов и никак иначе быть не должно ибо возникает путаница.
Т.е. как быть если инструмент сел.
Предлагаю переименовать параметр #<_global_tool_d> в название Компенсация радиуса и использовать там хайденхайновские обозначения:
RR - Включить коррекцию слева
RL - включить коррекцию справа
R0 - не включать коррекцию.
Или же G41, G42, 0.
Но обязательно делать исходя из данных таблицы инструментов
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 02 авг 2014, 23:27
Lexxa
И еще критика по фичам в целом.
Сейчас я специально посмотрел, как реализовано диалоговое программирование в сименсе 808d, чтобы сравнить с Features.
Для тех кто не в курсе скажу что на 808d не устанавливается ShopMill и ShopTurn, а используется programGUIDE BASIC, нечто очень напоминающее фичи и называются циклы.
Так вот, идея фичи великолепная, а вот сами обработки на практике использовать лучше не стоит.
Во-первых этих самых фич через чур много. Да возможно для лазера, плоттера, и прочих станков не имеющих требований к компенсации инструмента фич достаточно, но... любой фрезерный - проблема.
Я приведу все циклы из 808d фрезерной версии.
1) Циклы сверления
Сверление, центрирование
Сверление, рассверливание
Глубокое сверление
Жесткое нарезание резьбы метчиком
Нарезание резьбы метчиком с компенсирующим патроном
Развертывание 1
Сверление
Сверление с остановом 1
Сверление с остановом 2
Развертывание 2
2) Циклы сверления по шаблону
Ряд отверстий
Круг отверстий
Произвольные положения
3) Циклы фрезерования
Торцевое фрезерование в т.ч. по замкнутому контуру
Прямоугольный выступ
Цилиндрический выступ
Пазы на круге
Круговой паз
Фрезерование прямоугольной выемки
Фрезерование круглой выемки
Этого достаточно, чтобы в трех осях запрограммировать весьма сложные детали прямо на станке. Все циклы при программировании отображаются с пояснениями и картинками. Я понимаю, что сименс это сименс, но что мешает стремиться, и там все весьма интуитивно понятно.
Предлагаю развивать Futures 2 взяв за основу принцип сименсовских или хайденхайновских циклов ибо они удачны.
Я прикреплю в архиве исходники циклов и описание от сименса.
Можно ли, а скорее всего можно транслировать эти циклы в linuxcnc?
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 03 авг 2014, 09:59
verser
Lexxa писал(а):verser писал(а):компенсация "изнутри" #<_global_tool_d>=5
компенсация "внутри" #<_global_tool_d>=-5
Неправильно это.
точнее не это, а то, что в Фичах вообще нужно прописывать диаметр инструмента.
Все сведения об инструментах должны браться ТОЛЬКО из таблицы инструментов и никак иначе быть не должно ибо возникает путаница.
И всё же полно людей, которые не пользуются таблицей инструментов, пусть возможность "компенсировать" будет у всех.
Lexxa писал(а):Так вот, идея фичи великолепная, а вот сами обработки на практике использовать лучше не стоит.
Использую обработки на практике и очень рекомендую Features - экономит массу времени при несложных обработках (заменяет трудоемкий процесс подготовки g-code).
Lexxa писал(а):Предлагаю развивать Futures 2 взяв за основу принцип сименсовских или хайденхайновских циклов ибо они удачны.
Сверловку, нарезание резьбы и "карманы" понятное дело еще предстоит добавить, можно без объявления Features 2.
(Кстати, пока сверловку вполне можно выполнять с помощью circle, надо только диаметр ставить типа 0.0001мм. Присутствуют также линейный и круговой массивы для любой обработки - аналог цикла.)
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 09 авг 2014, 08:36
verser
Немного расширил сделанную Nick-ом группу "мастеров" Probe.
Теперь группа выглядит так
-Probe down
-Probe hole
-Probe cylinder
-Probe cube
-Compensation Z map
Использовать "мастера" необходимо совместно с "Global probing params" (как на картинках).
Также задействован текущий диаметр инструмента (конкретнее - внутренний linuxcnc параметр #5410), поэтому на картинках присутствует "Tool change", он задает текущий инструмент(у меня probe прописана в таблице под №1)
Результаты можно отображать в виде сообщений (параметр Output = 0) или в файл filename.txt (параметр Output != 0).
(Для Compensation Z map результат только в файл)
Исходники:
https://github.com/verser-git/features
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 15 авг 2014, 20:37
verser
Понадобилось шлифануть детальки - сделал "мастер" Polish - плоское шлифование(полирование) прямоугольной области.
Возможности:
- поворот прямоугольной области на любой угол,
- можно задавать количество повторных "полетов" шлифовального круга без смещений,
- мультипроходы боковые и вглубь,
- если repeat_=1, а в шпиндель установлена фреза, получаем традиционную операцию Face mill (фрезеровка лицевой поверхности).
Закрепил дрель со шлифовальным(полировальным) камнем на шпинделе, так чтобы ось вращения камня = Y (или = X, или можно любой угол между X и Y) - готов плоскошлифовальный станок.
Использовать совместно с "Set cutting parameters".
Исходники
https://github.com/verser-git/features
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 18 авг 2014, 09:47
Nick
Покажи фото приспособы и фото результата шлифования!
Re: LinuxCNC Features - набор мастеров для LinuxCNC
Добавлено: 18 авг 2014, 10:32
verser
Приспособа:
Первый результат(деталь - сталь D=25мм, зерно камня 130 резино-алмазный, качество планирую улучшить

уменьшив зерно до 60 ):