AXIS экран (DISPLAY) - тонкая настройка

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение Nick »

xentaur писал(а):G64 Хоть в строку состояния. Чтоб видеть P Q
Посмотри, тут оно есть: Machine > Show LinuxCNC Status? Если есть, то можно будет в pyvcp запихать...
xentaur
Опытный
Сообщения: 178
Зарегистрирован: 09 ноя 2010, 02:29
Репутация: 1
Откуда: Украина Харьков
Контактная информация:

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение xentaur »

Нет.
xentaur
Опытный
Сообщения: 178
Зарегистрирован: 09 ноя 2010, 02:29
Репутация: 1
Откуда: Украина Харьков
Контактная информация:

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение xentaur »

8. Индикацию выбранных переменных. [Частично решено]
использовать выражения в комментариях, их несколько видов.
(debug, для отладки #<count>) Выведет сообщение в углу экрана AXIS и переменную
(print, напечатать тоже #<count>) Выводит сообщение в stderr и переменную. I need help! пример бы хороший
можно внешним скриптом обрабатывать и всякие глупости делать. Например вавку проиграть!
(msg, Это вы увидите как есть #<count>) В AXIS как debug, но без значения переменной "Это вы увидите как есть #<count>"
2cme
Почётный участник
Почётный участник
Сообщения: 1043
Зарегистрирован: 24 янв 2012, 13:18
Репутация: -209

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение 2cme »

Nick писал(а):О, попробуй в ini в [DYSPLAY] написать
DEFAULT_LINEAR_VELOCITY = ...
Этот параметр задает "Скорость перемещений", а нужно "Максимальная скорость" (см принтскрин выше #34)
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение Nick »

2cme писал(а):а нужно "Максимальная скорость"
А что он вообще делает? :)
2cme
Почётный участник
Почётный участник
Сообщения: 1043
Зарегистрирован: 24 янв 2012, 13:18
Репутация: -209

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение 2cme »

Nick писал(а):А что он вообще делает?
Я применяю для ограничения перемещений G00.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение Nick »

Это наверное где-то здесь:

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

2821 vars.maxvel_speed.set(float(mv)*60)
2822 vars.max_maxvel.set(float(mv))
2823 root_window.tk.eval("${pane_top}.jogspeed.s set [setval $jog_speed $max_speed]")
2824 root_window.tk.eval("${pane_top}.ajogspeed.s set [setval $jog_aspeed $max_aspeed]")
2825 root_window.tk.eval("${pane_top}.maxvel.s set [setval $maxvel_speed $max_maxvel]")
только я в Tk совсем не разбираюсь. Nkp, может ты подскажешь, что с этим делать?
В коде это тут: http://git.linuxcnc.org/gitweb?p=linuxc ... 07cf#l2821
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение Serg »

Nick писал(а):Это наверное где-то здесь:
Этот код вроде просто выводит циферки с макс. скоростью рядом с движками-регуляторами.

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

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение Nick »

О, раз разбираешься тогда еще проще. :)
Как выставить значение этого движка регулятора? Наверное нужна какая-то строчка на Tk...
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение Serg »

Ацтавить! Ночью спать надо, а не в форумах тупить! :hehehe:

Это именно установка значения для виджетов.
${pane_top}.jogspeed.s - виджет
set - команда виджета для установки его значения
[setval $jog_speed $max_speed] - само значение, точнее подстановка результата функции setval.

Есть ещё один способ: привязать к виджету переменную (опция виджета -variable), тогда изменение значения этой переменной будет сразу отображаться на виджете (в цикле обработки событий), соотв. из неё всегда можно будет читать текущее значение. Но как этим пользоваться в питоне - x3.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение Nick »

Не, нам надо просто при запуске изменить значение (константу-число), для этого используем .axisrc - это скрипт на питоне, который выполняется после запуска программы.
Т.е. нам надо туда всего лишь дописать
root_window.tk.eval(...), вместо "..." то, что ты написал, правда я нифига не понял :).
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение Serg »

Перечитал ветку - понял.

Как-то так:

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

----------8<------- .axisrc ---------8<---------------
vars.maxvel_speed.set(float(mv)*10)
root_window.tk.eval("${pane_top}.maxvel.s set [setval $maxvel_speed $max_maxvel]")
--------------------8<-----------------------------
Что такое "mv" ниасилил - рабочий день кончился. :thinking:

P.S. Ахренеть! Это мой первый работающий код на питоне! :hehehe:
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение Nick »

т.е. число надо вместо "float(mv)*10" вставить?
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение Serg »

Ну да, в оригинале axis стартует со значением float(mv)*60, а я для пробы поставил *10.

Собственно про этот mv в axis чуть выше написано - это значение из ini-файла
TRAJ/MAX_LINEAR_VELOCITY
если оно не указано, то
AXIS_0/MAX_VELOCITY
а если и это не указано, то 1.

Что такое 60 и моё 10 думаю можно понять из этого:

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

proc setval {vel max_speed} {
    if {$vel == 0} { return 0 }
    if {$vel >= 60*$max_speed} { set vel [expr 60*$max_speed] }
    set x [expr {-1/(log($vel/60./$max_speed)-1)}]
    expr {round($x * 200.) / 200.}
}
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
2cme
Почётный участник
Почётный участник
Сообщения: 1043
Зарегистрирован: 24 янв 2012, 13:18
Репутация: -209

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение 2cme »

UAVpilot писал(а):Собственно про этот mv в axis чуть выше написано
Спасибо :good:

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

mv = inifile.find("TRAJ","MAX_LINEAR_VELOCITY") or inifile.find("AXIS_0","MAX_VELOCITY") or 1.0
vars.maxvel_speed.set(float(mv)*60)
В файле "Название конфигурации".ini

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

[TRAJ]
...
MAX_LINEAR_VELOCITY=...
...

или 

[AXIS_0]
...
MAX_VELOCITY=...
...
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение Lexxa »

Продолжим. Пока до взрослого интерфейса не доросли продолжим тему хотелок для Axis

14. Хочу видеть текущую систему координат на панели PyVCP или, что еще лучше, на окло ползунков с подачами и скоростями.

15. Хочу сделать кнопку "Задать относительный отступ" (подобно отступу относительной системы координат которая вызывается клавишей end). Кнопка будет делать отступ системы координат текущего инструмента относительно относительной текущей системы координат.

16. Хочу чтобы был нормальный режим быстрого хода с клавы - при нажатии стрелки едем с заданной скоростью. При нажатии шифта с уже нажатой стрелкой - БХ. При отпускании шифта без отпускания стрелки - заданная скорость.

17. Хочу редактор программ. Редактор программ можно и вкладкой сделать. Было б оч полезно.

Я тоже хочу начать прогу с нужного кадра.

18. Хочу чтоб в режиме Авто не делались неактивными чекбоксы СОЖ, Смазка и пр. Т.е. я хочу полноценной, независиой отработки М-команд а режиме Авто.
Скорее всего это через ладдер надо будет просто сделать, но тогда убрать эти чекбоксы.

19. В токарном режиме хочу всё в диаметрах. В токарном режиме всё в радиусах. Где это видано, чтоб на чертежах рисовали цилиндр и указывали ему радиус. Соответственно неудобно, приходится всё время делить всё на 2.

20. Хочу индикацию скорости резанья.

21. Хочу скрипт, который по нажатию кнопки будет заностиь в таблицу инструмента смещения текущего инструмента.
Скрипт должен решать 3 задачи:
В зависимости от режима Токарный или фрезерный.
Задача 1. Вычислить корректоры инструмента для токарного станка.
Решение:
1) Пусть Хд - истинный диаметр детали, тогда Хо - отображаемое значение координаты Х в G5х.
Найти Хк - корректор инструмента по координате Х.
Как выяснилось, LinuxCNC координату Х для токарного станка считает в радиусе, следовательно
Хк = Хо - Хд/2.
2) Тоже самое по Z, только делить на 2 Zд не нужно.

Задача 2. Вычислить корректоры инструмента для фрезерного станка.
Решение аналогично предыдущему.

Задача 3. Занести вычисленные корректоры Zк и Хк в таблицу инструментов для текущего инструмента и обновить её в LinuxCNC.

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

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение Nick »

Lexxa писал(а):14. Хочу видеть текущую систему координат на панели PyVCP или, что еще лучше, на окло ползунков с подачами и скоростями.
Смотри тему NightV, там мы вообще на железную панель это вывели.
Lexxa писал(а):15. Хочу сделать кнопку "Задать относительный отступ" (подобно отступу относительной системы координат которая вызывается клавишей end). Кнопка будет делать отступ системы координат текущего инструмента относительно относительной текущей системы координат.
Т.е. типо G92? Конкретизируй...
Lexxa писал(а):19. В токарном режиме хочу всё в диаметрах.
Все, это что? Были какие-то настройки на счет диаметров....
Lexxa писал(а):20. Хочу индикацию скорости резанья.
В смысле что-то типо constant surfase speed, только с отображением текущей скорости?
Lexxa писал(а):Задача 3. Занести вычисленные корректоры Zк и Хк в таблицу инструментов для текущего инструмента и обновить её в LinuxCNC.
Это мы уже обсуждали, давай конкретизируем, что это надо сделать или во время паузы, или вообще не останавливая обработки, так?
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение Lexxa »

Lexxa писал(а):14. Хочу видеть текущую систему координат на панели PyVCP или, что еще лучше, на окло ползунков с подачами и скоростями.
Смотри тему NightV, там мы вообще на железную панель это вывели.
Посмотрю.

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

[quote="Lexxa"]15. Хочу сделать кнопку "Задать относительный отступ" (подобно отступу относительной системы координат которая вызывается клавишей end). Кнопка будет делать отступ системы координат текущего инструмента относительно относительной текущей системы координат.[/quote]
Т.е. типо G92?  Конкретизируй...
Нет. Это для привязки инструмента. Сейчас привязку инструмента делаем ручками по технологии как в задаче 1.
Хотелка предполагает кнопку, которая вызовет скрипт из хотелки 21 (это как максимум)
Уже реализованная кнопка Задать отступ в Аксисе открывает диалоговое окно "Задать отступ", которая задает отступ G5х ситсемы координат относительно системы координат станка.
Нужно точно такм же способом задать отступ текущего инструмента относительно текущей системы координат.
Lexxa писал(а):19. В токарном режиме хочу всё в диаметрах.
Все, это что? Были какие-то настройки на счет диаметров....
Например корректор по Х, перемещения итд.
Lexxa писал(а):20. Хочу индикацию скорости резанья.
В смысле что-то типо constant surfase speed, только с отображением текущей скорости?
Да. Для токарника полезная фича.
Lexxa писал(а):Задача 3. Занести вычисленные корректоры Zк и Хк в таблицу инструментов для текущего инструмента и обновить её в LinuxCNC.
Это мы уже обсуждали, давай конкретизируем, что это надо сделать или во время паузы, или вообще не останавливая обработки, так?[/quote]
:bender:
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение Nick »

Lexxa писал(а):Нужно точно такм же способом задать отступ текущего инструмента относительно текущей системы координат.
Если для инструмента, тогда G43, или хочется задать отступ для текущей системы координат, для текущего инструмента, да еще так, чтобы при смене инструмента мы все это забыли?
Lexxa писал(а):В смысле что-то типо constant surfase speed, только с отображением текущей скорости?
Да. Для токарника полезная фича.
Попробуем придумать...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: AXIS экран (DISPLAY) - тонкая настройка

Сообщение Nick »

Nick писал(а):
Nick писал(а):В смысле что-то типо constant surfase speed, только с отображением текущей скорости?Да. Для токарника полезная фича.
Попробуем придумать...
По идее это должно быть равно чему-то вроде r*spindle-speed... а r = Текущей координате X...
Ответить

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