Страница 39 из 53
Re: GladeVCP и PyVCP для начинающих
Добавлено: 22 июл 2015, 09:30
Nick
raddd писал(а):даже когда приперло для AVR простенькую прошивку написать писал на ASSEMBLER (там в отладке проще) си и прочие высокоуровневые языки мне непонятны...
В питоне все гораздо проще и дебагить проще, вставил куда хочешь print "debug" и сморишь, что как работает.
Первый кусок кода - класс для работы с конфигами. Там две основные функции - getpref и putpref - запись и чтение.
verser, а ты сам писал этот код, почему-то обе функции пишут в файл... И обычно имя класса пишут с большой буквы.
verser писал(а): def get_preference_file_path(self):
Это функция должна возвращать имя файла с настройуами.
verser писал(а):self.prefs = preferences( self.get_preference_file_path() )
Это мы создаем объект нашего класса (который будет обладать всеми
прелестями функциями описанного класса).
verser писал(а):self.prefs.putpref( "param_for_saving", self.param_for_saving, float )
Ну а это собственно пользуемся функцией.
Осталось добавить заполнение значений в окошках.

Re: GladeVCP и PyVCP для начинающих
Добавлено: 22 июл 2015, 10:31
verser
Nick писал(а):verser, а ты сам писал этот код, почему-то обе функции пишут в файл...
Этот код писал Chris Radek. Читающая функция пишет в файл только когда не нашла что прочитать, тогда default value на всякий будущий случай записывает.
Re: GladeVCP и PyVCP для начинающих
Добавлено: 26 авг 2015, 08:06
nkp
есть вот такой код:
Код: Выделить всё
o100 repeat[10]
M6 T1
M68 E0 Q#5410
G21 G90 G42
F140
G1 X 10.000 Y 0.000
G1 X 10.000 Y 13.000
G2 X 13.000 Y 16.000 I 3.000 J 0.000
G1 X 55.000 Y 16.000
G2 X 58.000 Y 13.000 I 0.000 J -3.000
G1 X 58.000 Y -13.000
G2 X 55.000 Y -16.000 I -3.000 J 0.000
G1 X 13.000 Y -16.000
G2 X 10.000 Y -13.000 I 0.000 J 3.000
G1 X 10.000 Y 0.000
G1 X 0.000 Y 0.000
G40
M0
G4 P2
G10 L1 P1 R[[#5410/2]+[#<_hal[pyvcp.spinbox]>]]
(debug,spinbox=#<_hal[pyvcp.spinbox]>)
o100 endrepeat
M2
в нем мы пытаемся скорректировать диаметр(радиус) инструмента после каждого повторения(repeat)
так вот - после первого прохода ,когда стоим по М0 на паузе,меняем в панельке значение коррекции в spinbox...
но емс "не видит" введенное значение(пишет ,что ноль) ...
на следующих проходах всё нормально
значение менял в spinbox по разному (и редактированием с выделением,и стрелочками)
что бы это значило??
Re: GladeVCP и PyVCP для начинающих
Добавлено: 26 авг 2015, 08:36
verser
nkp писал(а):значение менял в spinbox по разному (и редактированием с выделением,и стрелочками)
Я тоже сталкивался с таким. Простая вставка числа игнорировалась. А вот если после вставки числа нажимать Enter(курсор при этом надо чтобы был в spinboxe), то, вроде, работает тогда.
Re: GladeVCP и PyVCP для начинающих
Добавлено: 26 авг 2015, 11:27
Nick
Да, скорее всего не отдается сигнал update у спинбокса...
Re: GladeVCP и PyVCP для начинающих
Добавлено: 26 авг 2015, 11:31
nkp
verser писал(а):Я тоже сталкивался с таким. Простая вставка числа игнорировалась. А вот если после вставки числа нажимать Enter(курсор при этом надо чтобы был в spinboxe), то, вроде, работает тогда.
вот в том то и дело - что даже так не работает...
потом (после первого прохода) ничего в spinbox не трогаешь(значение с первого "несработавшего " раза осталось) и срабатывает нормально
что ему первый раз не хватает...
это в PyVCP , надо еще в GladeVCP попробовать...
Re: GladeVCP и PyVCP для начинающих
Добавлено: 26 авг 2015, 11:32
Nick
А пин когда меняется? Попробуй отследить через halmeter.
Re: GladeVCP и PyVCP для начинающих
Добавлено: 26 авг 2015, 12:13
nkp
Nick писал(а):А пин когда меняется? Попробуй отследить через halmeter.
меняется сразу после ввода(после нажатия Enter) , как и положено...
скорей затык в системе передачи данных из Hal в G-код
Re: GladeVCP и PyVCP для начинающих
Добавлено: 26 авг 2015, 12:26
nkp
сделал так:
M68 E1 Q#<_hal[corr.hal_spinbutton1-f]>
появляется значение на втором "круге" по M0
Re: GladeVCP и PyVCP для начинающих
Добавлено: 26 авг 2015, 12:48
Nick
Может планировщик код заранее прогоняет...
Re: GladeVCP и PyVCP для начинающих
Добавлено: 26 авг 2015, 13:08
nkp
Nick писал(а):Может планировщик код заранее прогоняет...
да ,что то похожее есть...
не знаю , как правильно описать,но на лицо какая то очередь(последовательность ) значений spinbox...
введено в spinbox значение 0.1
запускаем жкод
первый проход - видит значение 0
пока идет "первый круг" , меняем значение на 0.2
"второй круг"
видит значение 0.1
ничего не трогаем
на 3-м "круге" видит значение 0.2
сумбурно как то получилось описать...
Re: GladeVCP и PyVCP для начинающих
Добавлено: 27 авг 2015, 07:53
nkp
подправив немного,беру значение коррекции по М66:
Код: Выделить всё
o100 repeat[10]
M6 T1
M68 E0 Q#5410
G21 G90 G42
F140
o101 IF[#<_hal[corr.hal_spinbutton1-f]> ne 0]
(msg,check corr)
M0
o101 ENDIF
G1 X 10.000 Y 0.000
G1 X 10.000 Y 13.000
G2 X 13.000 Y 16.000 I 3.000 J 0.000
G1 X 55.000 Y 16.000
G2 X 58.000 Y 13.000 I 0.000 J -3.000
G1 X 58.000 Y -13.000
G2 X 55.000 Y -16.000 I -3.000 J 0.000
G1 X 13.000 Y -16.000
G2 X 10.000 Y -13.000 I 0.000 J 3.000
G1 X 10.000 Y 0.000
G1 X 0.000 Y 0.000
G40
M0
G1 X 0.100 Y 0.000
M66 E0 L0
G10 L1 P1 R[[#5410/2]+#5399]
(debug,spinbox=#<_hal[corr.hal_spinbutton1-f]>)
o100 endrepeat
M2
так работает нормально...
Re: GladeVCP и PyVCP для начинающих
Добавлено: 10 сен 2015, 17:11
Serg
Что я не так делаю?
Нарисовал панельку для gladevcp. Если запускать её так:
то всё замечательно работает. А если запускать так:
то тоже всё работает, но пишет
Код: Выделить всё
Waiting for component 'gladevcp' to become ready.............
и рисует точки (ждёт) пока не завершишь прогу.
В доках никаких запретов на использование "-c" в этом варианте не нашёл.
P.S. Желающим поэксперементировать:
Re: GladeVCP и PyVCP для начинающих
Добавлено: 10 сен 2015, 18:34
Nick
вроде как он при этом обзывает компонент не gladevcp, а тест. Может надо добавить -Wn test
Re: GladeVCP и PyVCP для начинающих
Добавлено: 10 сен 2015, 18:52
Serg
Код: Выделить всё
gladevcp: error: no such option: -W
<commandline>:0: waitpid failed gladevcp gladevcp
<commandline>:0: gladevcp exited without becoming ready
Embeded tab command "halcmd loadusr -Wn gladevcp gladevcp -c gladevcp -x 35651726 -Wn test -c test test.glade" exited with error: 1
Похоже надо патчить...
попробуйте кто-нибудь на других версиях, а то у меня пока доступна только 2.8.0.
Re: GladeVCP и PyVCP для начинающих
Добавлено: 10 сен 2015, 19:33
nkp
емс 2.6
не очень понял ,что нужно проверить...
Re: GladeVCP и PyVCP для начинающих
Добавлено: 11 сен 2015, 01:28
Serg
Твой эксперимент неправильный - в твоём случае есть EMBED_TAB_COMMAND, который "подсовывает" другой компонент с именем gladevcp.
Попробуй без строчек EMBED_TAB_*
Re: GladeVCP и PyVCP для начинающих
Добавлено: 11 сен 2015, 05:47
nkp
UAVpilot писал(а):Попробуй без строчек EMBED_TAB_*
Re: GladeVCP и PyVCP для начинающих
Добавлено: 11 сен 2015, 07:25
Serg
Понятно, значит так было всегда и историю версий можно не лезть...

Re: GladeVCP и PyVCP для начинающих
Добавлено: 11 сен 2015, 09:48
Nick
У меня такая же штука выскочила, когда я экран для Probe ставил, не помню точно как, но как-то я это поборол....
Кстати, а в твоем test есть компонент? Как он называется?