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 (198165 просмотров) <a class='original' href='./download/file.php?id=15468&sid=740c9eab7cbcc31ff922ae7e0beee267&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 (198454 просмотра) <a class='original' href='./download/file.php?id=14825&sid=740c9eab7cbcc31ff922ae7e0beee267&mode=view' target=_blank>Загрузить оригинал (158.39 КБ)</a>
LinuxCNC-Features.png (198454 просмотра) <a class='original' href='./download/file.php?id=14826&sid=740c9eab7cbcc31ff922ae7e0beee267&mode=view' target=_blank>Загрузить оригинал (166.41 КБ)</a>

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

Саме начало
LinuxCNC Features.png (198458 просмотров) <a class='original' href='./download/file.php?id=14824&sid=740c9eab7cbcc31ff922ae7e0beee267&mode=view' target=_blank>Загрузить оригинал (68.04 КБ)</a>
Аватара пользователя
going
Мастер
Сообщения: 522
Зарегистрирован: 29 сен 2013, 20:55
Репутация: 129
Настоящее имя: Леонид
Откуда: г.Киров
Контактная информация:

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

Сообщение going »

Nick писал(а):Было бы наверное не плохо, а если бы туда еще забить модель станка, инструмента и прочего и проверить на коллизии вообще былоб супер, но я так понимаю это совсем не простая задача :)
Правильность постановки задачи во многом определяет результат действий по реализации. Порядок действий вытекает из квалификации ( Знаем Python - пишем на нём, владеешь Си и Qt - используешь этот инструмент).
Если задачу не ставить вообще, то и результата не будет.
По большому счёту техническое задание надо нарисовать.
Тут нужен практический опыт работы на LinuxCNC и промышленных стойках. У меня такого опыта нет. Поэтому и спрашиваю мнение сообщества.

Путь имеет два направления.
1. Задаём обработки в fetures - FreeCAD отображает 3Д модель.
Например:
Задали фрезу д8 мм. длина режущей части 10мм. Это цилиндр с пространственными координатами по траектории движения, который нужно вычесть из заготовки "миллион раз", а результат отобразить.
Можно нарисовать сцену в полупрозрачном виде (условный станок в натуральный размер, цилиндрик фрезы, резец), которая к модели не будет иметь отношения, а отображаться будет.
2.
going писал(а):Рисуем в FreeCAD модель по принципу "убери лишнее". Например из прямоугольной заготовки вычтем цилиндр. Или ту фигуру, обработка которой реализована в features.
Вот это гораздо сложнее. Потребуется доработка features до модульной структуры кода, что бы из FreeCAD можно было вызывать модули обработок.
Платы: BPI-M3, BPI-A64, OPI-PC2
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

going писал(а):который нужно вычесть из заготовки "миллион раз", а результат отобразить
А ему не поплохеет? Или он в треугольниках работает и оптимизирует хорошо?
Аватара пользователя
going
Мастер
Сообщения: 522
Зарегистрирован: 29 сен 2013, 20:55
Репутация: 129
Настоящее имя: Леонид
Откуда: г.Киров
Контактная информация:

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

Сообщение going »

Nick писал(а):А ему не поплохеет?
Похоже на то. 114 цилиндров вычитал минуту, а 559 вычитал 11 минут.
Graf1.png (3896 просмотров) <a class='original' href='./download/file.php?id=54670&sid=740c9eab7cbcc31ff922ae7e0beee267&mode=view' target=_blank>Загрузить оригинал (83.88 КБ)</a>
Платы: BPI-M3, BPI-A64, OPI-PC2
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

То-то и оно, freecad работает в кривых. А вот если работать с треугольниками - все становится проще. Вообще самый простой способ - строить карту высот.
Аватара пользователя
going
Мастер
Сообщения: 522
Зарегистрирован: 29 сен 2013, 20:55
Репутация: 129
Настоящее имя: Леонид
Откуда: г.Киров
Контактная информация:

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

Сообщение going »

Дело в Python. Он грузит 100% одного из ядер i3. Остальные игнорирует.
Попробую в сторону Си посмотреть.

PS. Nick, главное попробуй задачу поставить.
Платы: BPI-M3, BPI-A64, OPI-PC2
sancta
Кандидат
Сообщения: 53
Зарегистрирован: 31 окт 2013, 11:20
Репутация: 8
Контактная информация:

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

Сообщение sancta »

Доброе всем!
Пытаюсь в axis поставить- не запускается.
Делал всё строго по инструкции. Правда python 2.6 стоит

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

sancta@sancta-desktop:~$ linuxcnc /home/sancta/мой-станок/мой-станок.ini
LINUXCNC - 2.5.0
Machine configuration directory is '/home/sancta/мой-станок'
Machine configuration file is 'мой-станок.ini'
Starting LinuxCNC...

(gladevcp:6659): libglade-WARNING **: could not find glade file 'features.ui'
**** GLADE VCP INFO:    Not a libglade project, trying to load as a GTK builder project
**** GLADE VCP ERROR:    With xml file: features.ui
<commandline>:0: gladevcp exited without becoming ready
Embeded tab command "halcmd loadusr -Wn gladevcp gladevcp -c gladevcp -x 71303331 -U --catalog=mill-mm features.ui" exited with error: 1
Shutting down and cleaning up LinuxCNC...
Cleanup done
LinuxCNC terminated with an error.  You can find more information in the log:
    /home/sancta/linuxcnc_debug.txt
and
    /home/sancta/linuxcnc_print.txt
as well as in the output of the shell command 'dmesg' and in the terminal
sancta@sancta-desktop:~$ 

явно где то путь неправильно прописался - как проверить?

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

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

Сообщение Nick »

sancta писал(а):Embeded tab command "halcmd loadusr -Wn gladevcp gladevcp -c gladevcp -x 71303331 -U --catalog=mill-mm features.ui" exited with error: 1
Не запускается gladevcp - где-то в панельке ошибка.
Какую версию ставишь?

python 2.6 - проблема, у меня с ним тоже не все запускалось... хотя, вроде в последней версии, что-то по этому поводу правил.
Лучше всего поставь образ на debian - там будет питон нормальный.
ЗЫ для работы features нужен linuxcnc не меньше 2,6...
sancta
Кандидат
Сообщения: 53
Зарегистрирован: 31 окт 2013, 11:20
Репутация: 8
Контактная информация:

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

Сообщение sancta »

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

Starting LinuxCNC...

(gladevcp:7265): libglade-WARNING **: could not find glade file 'features.ui'
**** GLADE VCP ERROR:    With xml file: features.ui : could not create GladeXML object
<commandline>:0: gladevcp exited without becoming ready
Embeded tab command "halcmd loadusr -Wn gladevcp gladevcp -c gladevcp -x 60817557 -U --catalog=mill features.ui" exited with error: 1
Shutting down and cleaning up LinuxCNC...
LinuxCNC terminated with an error.  You can find more information in the log:
    /home/sancta/linuxcnc_debug.txt
and
    /home/sancta/linuxcnc_print.txt
as well as in the output of the shell command 'dmesg' and in the terminal

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

sancta@linuxcnc:~$ python --version
Python 2.7.3
Дебиан с нуля переставил. Ничего не понимаю.

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

GLADEVCP = -U --catalog=mill features.ui
FEATURES_PATH = /home/sancta/linuxcnc/features
Может gladevcp для разработчиков надо ставить?
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

А ты выполнил всю процедуру установки? Файлы gladevcp подредактировал?
Запускаешь обычную версию, или rip?
Аватара пользователя
going
Мастер
Сообщения: 522
Зарегистрирован: 29 сен 2013, 20:55
Репутация: 129
Настоящее имя: Леонид
Откуда: г.Киров
Контактная информация:

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

Сообщение going »

Nick писал(а):В гит уже нова версия.
Посмотрел.
Радикально однако.

И можно пробовать новую версию? Там все обработки, которые были в предыдущей?
Платы: BPI-M3, BPI-A64, OPI-PC2
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

going писал(а):И можно пробовать новую версию? Там все обработки, которые были в предыдущей?
Честно говоря, не знаю какие были в предыдущей...
кстати, там есть пара багов со скоростью шпинделя, я исправил, но еще не залил - комп с ними у станка стоит.
Аватара пользователя
going
Мастер
Сообщения: 522
Зарегистрирован: 29 сен 2013, 20:55
Репутация: 129
Настоящее имя: Леонид
Откуда: г.Киров
Контактная информация:

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

Сообщение going »

Nick писал(а):Честно говоря, не знаю какие были в предыдущей...
Это та, в которую verser последний раз вносил изменения.
Платы: BPI-M3, BPI-A64, OPI-PC2
sancta
Кандидат
Сообщения: 53
Зарегистрирован: 31 окт 2013, 11:20
Репутация: 8
Контактная информация:

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

Сообщение sancta »

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

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

Сообщение verser »

Вроде как понятно, что если при запуске

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

halcmd loadusr -Wn gladevcp gladevcp -c gladevcp -x 60817557 -U --catalog=mill features.ui
выскакивает предупреждение

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

Starting LinuxCNC...

(gladevcp:7265): libglade-WARNING **: could not find glade file 'features.ui'
значит, что-то не так с путями, не видит linuxcnc в текущем каталоге (и в путях по-умолчанию) файла features.ui, вот и разобраться, куда пропал этот features.ui или что не так с путями.
Аватара пользователя
going
Мастер
Сообщения: 522
Зарегистрирован: 29 сен 2013, 20:55
Репутация: 129
Настоящее имя: Леонид
Откуда: г.Киров
Контактная информация:

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

Сообщение going »

sancta писал(а):sancta@sancta-desktop:~$ linuxcnc /home/sancta/мой-станок/мой-станок.ini
LINUXCNC - 2.5.0
"Ёжики колючие!." features с linuxcnc-2.5 работать не будет. Надо эту фразу в шапке темы написать.
sancta писал(а):Систему переустанавливал уже раз 10 и убунту и дебиан.
Linux в переустановках не нуждается. Это ничего не даёт. Лучше опишите все действия подробно и что при этом в терминале система пишет.
Или чего хотите сделать.
Посоветуем чего нибудь.
Платы: BPI-M3, BPI-A64, OPI-PC2
sancta
Кандидат
Сообщения: 53
Зарегистрирован: 31 окт 2013, 11:20
Репутация: 8
Контактная информация:

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

Сообщение sancta »

"Ёжики колючие!." features с linuxcnc-2.5 работать не будет. Надо эту фразу в шапке темы написать.
Это на убунте было. Сейчас дебиан. Linuxcnc 2.6.4 Python 2.7.3 версию gladevcp не знаю.
Распаковал архив в \home\sancta\features. Сам файл features.py запускается и с клика и с терминала с ключами.
Символьные ссылки на features.py и features.glade появились в /usr/lib/pymodules/python2.7/gladevcp и
/usr/share/pyshared/gladevcp/ - проверил
Сорри, портянку запостю, но уже три недели бьюсь :problem:
/usr/share/pyshared/gladevcp/hal_pythonplugin.py

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

from features import Features
from hal_widgets import HAL_HideTable
и далее...
/usr/share/glade3/catalogs/hal_python.xml

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

<glade-catalog name="gladevcp" library="gladepython" supports="libglade,gtkbuilder"
domain="glade-3" depends="gtk+">
 <init-function>glade_python_init</init-function>

 <glade-widget-classes>
	<glade-widget-class name="Features" generic-name="features" title="features">
	<properties>
	<property id="size" query="False" default="1" visible="False"/>
	<property id="spacing" query="False" default="0" visible="False"/>
	<property id="homogeneous" query="False" default="0" visible="False"/>
	</properties>
</glade-widget-class>
----- Там же далее----->
</glade-widget-classes>
   
 <glade-widget-group name="python" title="HAL Python">
   <glade-widget-class-ref name="Features"/>
   <glade-widget-class-ref name="HAL_HideTable"/>
в моем ini

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

[DISPLAY]
DISPLAY = axis
EDITOR = gedit
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 1.2
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/oleg/linuxcnc/nc_files
INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm
PYVCP = custompanel.xml

GLADEVCP = -U --catalog=mill features.ui
FEATURES_PATH = /home/sancta/features
строка запуска
linuxcnc /home/sancta/linuxcnc/configs/мой-станок/мой-станок.ini
Ошибка всё таже

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

Starting LinuxCNC...
.

(gladevcp:4917): libglade-WARNING **: could not find glade file 'features.ui'
**** GLADE VCP ERROR:    With xml file: features.ui : could not create GladeXML object
<commandline>:0: gladevcp exited without becoming ready
Embeded tab command "halcmd loadusr -Wn gladevcp gladevcp -c gladevcp -x 69206165 -U --catalog=mill features.ui" exited with error: 1
Shutting down and cleaning up LinuxCNC...
LinuxCNC terminated with an error.  You can find more information in the log:
    /home/sancta/linuxcnc_debug.txt
and
    /home/sancta/linuxcnc_print.txt
as well as in the output of the shell command 'dmesg' and in the terminal

что ему надо? :wik:
Аватара пользователя
going
Мастер
Сообщения: 522
Зарегистрирован: 29 сен 2013, 20:55
Репутация: 129
Настоящее имя: Леонид
Откуда: г.Киров
Контактная информация:

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

Сообщение going »

sancta писал(а):GLADEVCP = -U --catalog=mill features.ui
FEATURES_PATH = /home/sancta/features
(gladevcp:4917): libglade-WARNING **: could not find glade file 'features.ui'

Ну не может она найти этот файл. Потому что где смитрит там его нет.
Попробуй добавить ссылку

cd /usr/lib/pymodules/python2.7/gladevcp
sudo ln /home/sancta/features/features.ui -s

PS.
Я просто прописал поный путь к файлу.

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

# Sections for display options ------------------------------------------------
[DISPLAY]

# Name of display program, e.g., xemc
DISPLAY = axis
GLADEVCP = -U --catalog=lathe /home/leo/linuxcnc-features-master/features.ui
FEATURES_PATH = /home/leo/linuxcnc-features-master
Потом до установил кучу библиотек. Смотри внимательно вывод ошибок.
Грузится с lathe  прописано lathe/ Прописал mill его и стала грузить (3707 просмотров) <a class='original' href='./download/file.php?id=55369&sid=740c9eab7cbcc31ff922ae7e0beee267&mode=view' target=_blank>Загрузить оригинал (85.94 КБ)</a>
Грузится с lathe прописано lathe/ Прописал mill его и стала грузить
Платы: BPI-M3, BPI-A64, OPI-PC2
Аватара пользователя
going
Мастер
Сообщения: 522
Зарегистрирован: 29 сен 2013, 20:55
Репутация: 129
Настоящее имя: Леонид
Откуда: г.Киров
Контактная информация:

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

Сообщение going »

У меня почему то пишет, что

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

Exception in Tkinter callback
Traceback (most recent call last):
  File "/usr/lib64/python2.7/lib-tk/Tkinter.py", line 1486, in __call__
    return self.func(*args)
  File "/home/leo/linuxcnc-dev/bin/axis", line 1317, in jogspeed_listbox_change
    if i == unicode(value, 'utf-8'):
TypeError: decoding Unicode is not supported
но при этом работает. ----???----
Платы: BPI-M3, BPI-A64, OPI-PC2
Аватара пользователя
going
Мастер
Сообщения: 522
Зарегистрирован: 29 сен 2013, 20:55
Репутация: 129
Настоящее имя: Леонид
Откуда: г.Киров
Контактная информация:

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

Сообщение going »

sancta писал(а):строка запуска
linuxcnc /home/sancta/linuxcnc/configs/мой-станок/мой-станок.ini
sancta писал(а):PYVCP = custompanel.xml
custompanel.xml ------ это из какой оперы, к чему относится и если нужен, что в нем? У меня этой строки нет
Платы: BPI-M3, BPI-A64, OPI-PC2
sancta
Кандидат
Сообщения: 53
Зарегистрирован: 31 окт 2013, 11:20
Репутация: 8
Контактная информация:

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

Сообщение sancta »

going писал(а):custompanel.xml ------ это из какой оперы, к чему относится и если нужен, что в нем? У меня этой строки нет
Это мои две кнопки - на поиск заготовки и еще одна проба гравера.
going писал(а):Я просто прописал поный путь к файлу.
дай я тебя расцелую :good:
Я это пробовал еще на убунту, но там версия 2.5 была - не запускалась. Поэтому далее пробовать не стал...
Внесите исправления на гитхаб! Сколько же мучений из-за этого я пережил.... :evil:
Ответить

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