DISPLAY = axis
MyGUI
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: MyGUI
А точно! Это же фичи axis все
также как pyvcp и прочее, вообще все, что в DYSPLAY обрабатывается индивидуально, кроме разве что самого
DISPLAY = axis
DISPLAY = axis
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: MyGUI
дописал в скрипт :
и все стало работать
(инфа по os.spawnvp)
Код: Выделить всё
if __name__ == "__main__":
app = Mygui()
res = os.spawnvp(os.P_WAIT, "halcmd", ["halcmd", "-f", "/home/nkp/emc2-dev-80db2a2/configs/MyGUI/mode.hal"])
if res: raise SystemExit, res
gtk.main()(инфа по os.spawnvp)
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: MyGUI
А разве из питона нельзя команды hal напрямую вызывать?
Хотя оно наверное не нужно
....
ЗЫ лучше стырить кусочек кода из axis и брать название файла прямо из ini.
И вообще добавить метод Mygui.postgui и в нем все что надо сделать.
Хотя оно наверное не нужно
ЗЫ лучше стырить кусочек кода из axis и брать название файла прямо из ini.
И вообще добавить метод Mygui.postgui и в нем все что надо сделать.
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: MyGUI
конечно так и будетNick писал(а):лучше стырить кусочек кода из axis и брать название файла прямо из ini
тут главнее сейчас общую картину работы скрипта выписать в плане взаимодействия с железными кнопками...
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: MyGUI
Nick,используя твой код из https://github.com/cnc-club/hw-buttons/tree/ сделал смену режимов от внешних кнопок
все работает-переключает и в емс и в gui
сейчас использую hbox для кнопок но там легко поменять и на вкладки
возвращаясь к вопросу как должна проходить обработка нажатия-по номеру кнопки или по названию
так вот я так и не понял- какие объективные недостатки в первом способе(тогда назывался случай ,что мол можно поменять местами кнопки и будет ошибка
но кто их менять то будет? таким макаром можно что хош нарушить
а вот со вторым способом ....
можешь общий примерчик .так сказать направление-а то не пойму с чего начать
все работает-переключает и в емс и в gui
сейчас использую hbox для кнопок но там легко поменять и на вкладки
возвращаясь к вопросу как должна проходить обработка нажатия-по номеру кнопки или по названию
так вот я так и не понял- какие объективные недостатки в первом способе(тогда назывался случай ,что мол можно поменять местами кнопки и будет ошибка
но кто их менять то будет? таким макаром можно что хош нарушить
а вот со вторым способом ....
можешь общий примерчик .так сказать направление-а то не пойму с чего начать
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: MyGUI
Мое предложение было такое:
1. Обращаемся к кнопке по названию. Т.е. в Glade в названии пишем название пина!
2. В ini делаем раздел соответствия "название пина" => "название которое писать на кнопке"
3. При создании интерфейса пробегаем по всем кнопкам в Builder, смотрим их названия а лучше даже не названия, а Label. Если название есть в массиве пинов, то:
а. создаем пин
б. присоединяем к нему кнопку
в. переименовываем кнопку в соответствии с разделом соответствия.
С положением плохо то, что при неправильно упаковке (например -1 кнопка) кнопки могут растянуться и сместиться.
1. Обращаемся к кнопке по названию. Т.е. в Glade в названии пишем название пина!
2. В ini делаем раздел соответствия "название пина" => "название которое писать на кнопке"
3. При создании интерфейса пробегаем по всем кнопкам в Builder, смотрим их названия а лучше даже не названия, а Label. Если название есть в массиве пинов, то:
а. создаем пин
б. присоединяем к нему кнопку
в. переименовываем кнопку в соответствии с разделом соответствия.
С положением плохо то, что при неправильно упаковке (например -1 кнопка) кнопки могут растянуться и сместиться.
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: MyGUI
имена кнопок и режимов должны быть уникальными.
Функция кнопки = ИмяКнопки_Режим_Функция. Применив такую систему имен, путаницы избежать легко
p.s. Как же я жалею, что не могу полноценно заняться интерфейсом, вроде разобрался в питоне, но вот беда - командировок три недели уже(((
Функция кнопки = ИмяКнопки_Режим_Функция. Применив такую систему имен, путаницы избежать легко
p.s. Как же я жалею, что не могу полноценно заняться интерфейсом, вроде разобрался в питоне, но вот беда - командировок три недели уже(((
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: MyGUI
сколько бы у нас не было кнопок (всего с изменениями) в ладдер зайдет только "один комплект" входов
то есть ,если у нас 7 кнопок по горизонтали - то и пинов в ладдер - 7
а изменять в зависимости от режима в ладдере коммутацией? или как по другому???
то есть ,если у нас 7 кнопок по горизонтали - то и пинов в ладдер - 7
а изменять в зависимости от режима в ладдере коммутацией? или как по другому???
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: MyGUI
Зачем ладдер?
Я почему ратовал за организацию всего в питоне - т.к. кнопки на экране перерисовывает питон, то и обрабатывать событие нажатия на "железную кнопку" должен питон.
Я почему ратовал за организацию всего в питоне - т.к. кнопки на экране перерисовывает питон, то и обрабатывать событие нажатия на "железную кнопку" должен питон.
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: MyGUI
А почему бы и нет?
По крайней мере, все, что требует изменений на экране и не требует крайне быстрых скоростей обработки можно.
ЗЫ кстати, ладдер будет в rt работать или в userspace?
По крайней мере, все, что требует изменений на экране и не требует крайне быстрых скоростей обработки можно.
ЗЫ кстати, ладдер будет в rt работать или в userspace?
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: MyGUI
+1nkp писал(а):без ладдера ?? сомневаюсь........
Ник,1есть фанук, есть симменс, есть хх. никто там не делает стойку под станок, все эпроизводители делают и пульты и все остальное только через электроавтоматику- ладдер
Последний раз редактировалось Lexxa 20 сен 2012, 19:22, всего редактировалось 1 раз.
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: MyGUI
например халуи.аборт требует, и вообще все что касается движений (в ручном) требуетNick писал(а):По крайней мере, все, что требует изменений на экране и не требует крайне быстрых скоростей обработки можно.
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: MyGUI
В том то и дело, что ладдеру пофигу, что на кнопке написано, он будет отрабатывать нажатие на железную кнопку с положением N при условии текущего режима M.
Поэтому не вижу смысла писать на железных кнопках пины.
Поэтому не вижу смысла писать на железных кнопках пины.
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: MyGUI
как раз наоборот. пин режима + нардкнопки даст четкое и однозначное её функционирование, а система имен нужна для отладки.
Т.е.
например, имеем кнопки hbutton1..8 и vbutton1..8
и пин режима mode 1..6
тогда например в режиме1 кнопка hbutton1 имеет функцию func1
т.е. в ладдере будет
-----|MyGUI_on|--------|mode1|----------|hbutton1|-------------(func1)---------
и проблем никаких
Т.е.
например, имеем кнопки hbutton1..8 и vbutton1..8
и пин режима mode 1..6
тогда например в режиме1 кнопка hbutton1 имеет функцию func1
т.е. в ладдере будет
-----|MyGUI_on|--------|mode1|----------|hbutton1|-------------(func1)---------
и проблем никаких
