Страница 1 из 53
GladeVCP и PyVCP для начинающих
Добавлено: 12 июн 2012, 20:47
Виталий
хочу в этой теме обратится к знающим людям, для меня и я думаю для многих начинающих линуксоедов есть много непонятного ,а когда дело касается (начинающего програмирования) то здесь полный капец .
итак, что я знаю про -PyVCP .знаю что с помощью этой абривиатуры создают чудо кнопки,да я бороздил интернетом ,да выдел много англоязычных премеов,пытался повторыть ,но все заканчивалось длинной чередой ошибок.
так с чего начать ?
Re: PyVCP для начинающих
Добавлено: 12 июн 2012, 21:05
Виталий
Re: PyVCP для начинающих
Добавлено: 12 июн 2012, 21:30
Nick
Виталий писал(а):давайте расмотрим конкретный пример
В этом примере делается кнопка быстрого переезда в home, т.е. быстрого выполнения G0 X0Y0Z0
В ini добавляем следующие строчки:
Что это нам дает, это говорит, что при появлении 1 на пине halui.mdi-command-00 будет выполнена строчка Gкода. Если написать еще строчек вида
MDI_COMMAND =
они будут вызываться соответствующими пинами halui.mdi-command-ХХ
Потом загружаем панель PyVCP, для этого добавляем строку в ini раздел [DISPLAY]
В принципе, можно панель загрузить и из hal, но проще сделать так как написано выше.
Также т.к. мы используем пины компонента halui нужно его загрузить, проще всего следующим образом: в раздел [HAL] в ini добавляем (или точнее проверяем, что эти строчки там есть):
Код: Выделить всё
[HAL]
HALUI=halui
POSTGUI_HALFILE = postgui.hal
Потом нам нужен файл который описывает нашу панель. Файл в формате xml.
Код: Выделить всё
<button>
<halpin>"rapid-to-home"</halpin>
<text>"Rapid to Home"</text>
<font>('Fixed',16)</font>
</button>
Здесь описывается 1 кнопка. По идее надо еще написать о самой панеле. Т.е.
Код: Выделить всё
<pyvcp>
<button>
<halpin>"rapid-to-home"</halpin>
<text>"Rapid to Home"</text>
<font>('Fixed',16)</font>
</button>
</pyvcp>
И в заключении, наша панель будет иметь пин pyvcp.rapid-to-home, который срабатывает при нажатии кнопки, и в LinuxCNC будет пин halui.mdi-command-00 нам надо их связать, поэтому пишем в postgui.hal следующие строчки (пишем именно в _post_gui т.к. он исполняется после загрузки графическго интерфейса и соответственно нашей панели (до этого нет нужного пина pyvcp)):
Код: Выделить всё
# set up the rapid to home button
net remote-rapid-to-home halui.mdi-command-00 <= pyvcp.rapid-to-home
ЗЫ по pyvcp на русском можно почитать здесь:
EMC2 Integrators Manual Перевод на русский язык #66
Re: PyVCP для начинающих
Добавлено: 12 июн 2012, 21:35
nkp
ну все - иду на курсы быстрой печати
Re: PyVCP для начинающих
Добавлено: 12 июн 2012, 22:26
Виталий
в моем распоряжении есть файлы те что на картинке.но нет этого (создать?)
Nick писал(а):Также т.к. мы используем пины компонента halui нужно его загрузить, проще всего следующим образом: в раздел [HAL] в ini добавляем (или точнее проверяем, что эти строчки там есть):Код: Выделить всё[HAL]HALUI=haluiPOSTGUI_HALFILE = postgui.hal
потом файл xml.-его надо создать и дать имя?
ну,а так вроде бы предельно ясно.
Re: PyVCP для начинающих
Добавлено: 13 июн 2012, 00:00
Nick
да, создать файл с именем, которое указано здесь: PYVCP=panel.xml
Re: PyVCP для начинающих
Добавлено: 13 июн 2012, 19:28
Виталий
первая кнопка созданая с помощью Ника.
а как добавлять новые кнопки,ограничено ли их количество,и по поводу размещения ,только справа?
Re: PyVCP для начинающих
Добавлено: 13 июн 2012, 20:09
psha
Даешь gladevcp
Re: PyVCP для начинающих
Добавлено: 13 июн 2012, 20:19
nkp
psha писал(а):Даешь gladevcp
Всем желающим изучать pyvcp - изучать gladevcp
(почти перлы русского языка
)
Re: PyVCP для начинающих
Добавлено: 14 июн 2012, 11:02
Nick
Да, попробуй GladeVCP, там все проще
.
PyVCP для таких ... которые все любят руками писать. Для меня Glade это как DreamWeaver для верстальщика
.
PS в консоле sudo apt-get install glade, потом заходишь в Программы-Программирование -Glade. И там ищешь панель которая связана с LinuxCNC/
PSS У тебя LinuxCNC версии 2.5?
Re: PyVCP для начинающих
Добавлено: 14 июн 2012, 11:27
Виталий
Nick писал(а):PSS У тебя LinuxCNC версии 2.5?
да ,сделал обновление.
Nick писал(а):PS в консоле sudo apt-get install glade, потом заходишь в Программы-Программирование -Glade. И там ищешь панель которая связана с LinuxCNC/
вечерком буду баловатся,спасибо.
Re: PyVCP для начинающих
Добавлено: 14 июн 2012, 21:50
Виталий
установил GladeVCP.где пример создания чегото поглядеть?
или конкретный урок .
Re: PyVCP для начинающих
Добавлено: 14 июн 2012, 21:59
Nick
ман по нему есть, но на английском:
http://www.linuxcnc.org/docview/html/gui/gladevcp.html
В двух словах суть примерно та же. Нужно:
1. Нарисовать панель.
2. Загрузить панель прописав в ini
или так
Код: Выделить всё
EMBED_TAB_NAME=GladeVCP demo
EMBED_TAB_COMMAND=halcmd loadusr -Wn gladevcp gladevcp -c gladevcp -x {XID} -u ../gladevcp/hitcounter.py ../gladevcp/manual-example.ui
или так:
Код: Выделить всё
[DISPLAY]
# add GladeVCP panel where PyVCP used to live:
GLADEVCP= -u ../gladevcp/hitcounter.py ../gladevcp/manual-example.ui
3. Подключить ее пины к пинам hal в файле postgui.hal, при помощи команд net.
PS а есть какая-то конкретная задача? Может сразу на основе ее решения будем обучение проводить?
Re: PyVCP для начинающих
Добавлено: 14 июн 2012, 22:12
Виталий
если чесно,я даже представить пока не могу что можна с помощью этой програмы сделать.Ник опиши на простом примере,если тебя не затруднит.
Re: PyVCP для начинающих
Добавлено: 14 июн 2012, 22:18
Nick
Ну например, на картинке из мана есть (справа, сверху вниз):
Отображение оборотов шпинделя
Номер инструмента подготовленного к смене
Номер текущего инструмента
... всякие кнопочки и пимпочки для примера...
и внизу три кнопки, чтобы поехать в 0 текущей системы координат, чтобы поехть в 0 станка и чтобы выполнить какую-то подпрограмму.
А какой у тебя станок? Давай попробуем из этого исходить.
Re: PyVCP для начинающих
Добавлено: 14 июн 2012, 22:31
Виталий
станок обычный самодел 800*500*70.шпиндель -фрезер бош,электроника самодельная.
поповоду кнопок в первую очередь хотелось бы сделать пробу z, то что в теме про джойстик,заганять оси одной кнопкой в дом.вот пожалуй то что очень нужно.
Re: PyVCP для начинающих
Добавлено: 14 июн 2012, 22:40
Nick
Оси в дом 1 кнопкой. Просто кнопку заводин на пин halui.home-all.
А вот с пробой надо будет разобраться...
Может с GladeVCP это будет проще, чем с PyVCP... Рядом с glade часто пишут о подпрограммах Окодах...
ЗЫ похоже надо тему переименовывать
.
Re: GladeVCP и PyVCP для начинающих
Добавлено: 14 июн 2012, 22:42
Виталий
Nick писал(а):ЗЫ похоже надо тему переименовывать .
точно
Re: GladeVCP и PyVCP для начинающих
Добавлено: 14 июн 2012, 22:45
Виталий
Nick писал(а):Оси в дом 1 кнопкой. Просто кнопку заводин на пин halui.home-all.
как (нарисовать) с GladeVCP
Re: GladeVCP и PyVCP для начинающих
Добавлено: 14 июн 2012, 23:48
Nick
Открываешь Glade, потом создаешь в нем окно (в левой вкладке) Window.
Потом на него добавляешь кнопку из раздела EMC2.
Но, лучше сначала добавить "контейнер". (Контейнеры и либо Вертикальный/Горизонтальный либо сразу таблицу.) Таблицу, если это не продиктовано требованиями имхо лучше не использовать.