AXIS экран (DISPLAY) - тонкая настройка
- 
				Nikomas
 - Мастер
 - Сообщения: 721
 - Зарегистрирован: 07 янв 2012, 14:31
 - Репутация: 64
 - Откуда: Беларусь
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
А как загрубить в Axis значения координат вместо 1мкм, например, до 5мкм?
			
			
									
									
						- Сергей Саныч
 - Мастер
 - Сообщения: 9116
 - Зарегистрирован: 30 май 2012, 14:20
 - Репутация: 2858
 - Откуда: Тюмень
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
Задавался подобным вопросом Как изменить количество знаков после десятичной точки #1Nikomas писал(а):А как загрубить в Axis значения координат вместо 1мкм, например, до 5мкм?
Чудес не бывает. Бывают фокусы.
						- 
				nkp
 - Мастер
 - Сообщения: 8340
 - Зарегистрирован: 28 ноя 2011, 00:25
 - Репутация: 1589
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
https://youtu.be/aBDy3rGzUN4Nikomas писал(а):А как загрубить в Axis значения координат вместо 1мкм, например, до 5мкм?
Код: Выделить всё
--- a/glcanon.py	2019-05-25 16:09:18.000000000 +0300
+++ b/glcanon.py	2019-05-30 08:46:29.823952637 +0300
@@ -1344,7 +1344,7 @@
             for i in range(9):
                 a = "XYZABCUVW"[i]
                 if s.axis_mask & (1<<i):
-                    posstrs.append(format % (a, positions[i]))
+                    posstrs.append(format % (a, round(positions[i] * 2,2) * .5))
                     droposstrs.append(droformat % (a, positions[i], a, axisdtg[i]))
 
             droposstrs.append("")======================
найти файл glcanon.py
находим командой :
Код: Выделить всё
locate glcanon.py /usr/share/pysred/rs274/glcanon.py
------------
если собран из исходников - lib/python/rs274/glcanon.py
============
в этом файле ищем строку:
Код: Выделить всё
posstrs.append(format % (a, positions[i]))Код: Выделить всё
posstrs.append(format % (a, round(positions[i] * 2,2) * .5))следующая строка изменяет "точность" в большом dro:
Код: Выделить всё
droposstrs.append(droformat % (a, round(positions[i] * 2,2) * .5, a, round(axisdtg[i] * 2,2) * .5 ))в этой функции прописано еще отображение offsets и тд
всё меняется по такой же схеме ...
- 
				Skimen
 - Новичок
 - Сообщения: 8
 - Зарегистрирован: 29 авг 2019, 18:16
 - Репутация: 0
 - Настоящее имя: Николай
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
В одной из тем я уже описывал проблему отображения 4оси. Повторюсь здесь так как это относится к настройке AXIS экрана.   
Для правильной визуализации нужно сделать привязки по G5x такими ккак они сейчас отображаются для привязок инструмента ,а привязки инструмента следовательно на оборот.
Так я считаю будет правильнее.
Самостоятель я этого не сделаю потому что далёк от программирования и с линуксом общение до того не имел.
 
Прошу помощи в реализации моей затеи!
			
			
									
									
						Для правильной визуализации нужно сделать привязки по G5x такими ккак они сейчас отображаются для привязок инструмента ,а привязки инструмента следовательно на оборот.
Так я считаю будет правильнее.
Самостоятель я этого не сделаю потому что далёк от программирования и с линуксом общение до того не имел.
Прошу помощи в реализации моей затеи!
- 
				nkp
 - Мастер
 - Сообщения: 8340
 - Зарегистрирован: 28 ноя 2011, 00:25
 - Репутация: 1589
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
то есть - ты предлагаешь "поменять местами" (их функционал) вот эти две кнопки:Skimen писал(а):Для правильной визуализации нужно сделать привязки по G5x такими ккак они сейчас отображаются для привязок инструмента ,а привязки инструмента следовательно на оборот.
- 
				Skimen
 - Новичок
 - Сообщения: 8
 - Зарегистрирован: 29 авг 2019, 18:16
 - Репутация: 0
 - Настоящее имя: Николай
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
Не то чтобы функционал, а логику привязки. Сейчас привязки инструмента смещяет центре заготовки и от этого центра идёт привязка g5x а должно быть наоборот. Привязка по g5x должна смещять центр изделия. А привязка инструмента это просто отступить на длину инструмента . функция G92 остаётся прежней.
 
(Пишу с телефона ,печатать не удобно, за ошибки в орфографии прошу не пинать.)
			
			
									
									
						(Пишу с телефона ,печатать не удобно, за ошибки в орфографии прошу не пинать.)
- 
				Skimen
 - Новичок
 - Сообщения: 8
 - Зарегистрирован: 29 авг 2019, 18:16
 - Репутация: 0
 - Настоящее имя: Николай
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
У меня тут появился ещё один вопрос.
А можно ли как-то задать центр поворотной оси , чтобы он находился в не нулевых координатах и привязки на его положение не влияли?
			
			
									
									
						А можно ли как-то задать центр поворотной оси , чтобы он находился в не нулевых координатах и привязки на его положение не влияли?
- Serg
 - Мастер
 - Сообщения: 21923
 - Зарегистрирован: 17 апр 2012, 14:58
 - Репутация: 5183
 - Заслуга: c781c134843e0c1a3de9
 - Настоящее имя: Сергей
 - Откуда: Москва
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
Отображение траектории в LinuxCNC нельзя считать полноценным симулятором, это всего лишь вспомогательный инструмент позволяющий приблизительно оценивать ход работы.
Однако LinuxCNC позволяет создать/нарисовать виртуальную копию станка для симуляции, в штатных примерах есть пример.
			
			
									
									Однако LinuxCNC позволяет создать/нарисовать виртуальную копию станка для симуляции, в штатных примерах есть пример.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
						- 
				Skimen
 - Новичок
 - Сообщения: 8
 - Зарегистрирован: 29 авг 2019, 18:16
 - Репутация: 0
 - Настоящее имя: Николай
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
А где и как нарисовать копию станка.
Я с линуксцнц только ещё начинаю общаться.
Собрал 4-х координатных станок под управлением линукса.
И обнаружил некорректное отображение поворотной оси.
			
							
			
									
									
						Я с линуксцнц только ещё начинаю общаться.
Собрал 4-х координатных станок под управлением линукса.
И обнаружил некорректное отображение поворотной оси.
- Serg
 - Мастер
 - Сообщения: 21923
 - Зарегистрирован: 17 апр 2012, 14:58
 - Репутация: 5183
 - Заслуга: c781c134843e0c1a3de9
 - Настоящее имя: Сергей
 - Откуда: Москва
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
Смотри примеры конфигов в подразделе vismach.Skimen писал(а):А где и как нарисовать копию станка.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
						- 
				Skimen
 - Новичок
 - Сообщения: 8
 - Зарегистрирован: 29 авг 2019, 18:16
 - Репутация: 0
 - Настоящее имя: Николай
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
В понедельник попробую посмотреть. 
А вообще мой замысел про изменение логики привязки. Реально сделать.
			
			
									
									
						А вообще мой замысел про изменение логики привязки. Реально сделать.
- iMaks-RS
 - Мастер
 - Сообщения: 1807
 - Зарегистрирован: 10 июл 2017, 09:25
 - Репутация: 205
 - Настоящее имя: Maks
 - Откуда: От туда.
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
Tool sensor один фиг отсутствует в стоке ((( Ждём ещё 10 лет (((
			
			
									
									
						- 
				nkp
 - Мастер
 - Сообщения: 8340
 - Зарегистрирован: 28 ноя 2011, 00:25
 - Репутация: 1589
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
доделай что тебе не нравитсяiMaks-RS писал(а):Tool sensor один фиг отсутствует в стоке
если достойно будет - может включат
или чукча читателя,не писателя
- 
				nkp
 - Мастер
 - Сообщения: 8340
 - Зарегистрирован: 28 ноя 2011, 00:25
 - Репутация: 1589
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
mc  во вкладке Axis (может кто то привыкший к этой прожке пожелает держать ее "поближе" 
 )
в INI :
размер подобрать свой
======================
чтоб нам загружать файлы Gcode непосредственно в емс -
в файл ~/.config/mc/mc.ext
добавляем:
табуляция в отступе
но будет (вроде!) срабатывать только если емс запущен не_из_терминала
==================
если в функцию def open_file_name(f):
добавить root_window.tk.eval(pane_top + ".right raise preview")
то будет и "переходить" во вкладку предпросмотра жкода(вкладка Вид)
наверно можно это в .axisrc  прописать
			
			
									
									
						в INI :
Код: Выделить всё
[DISPLAY]
EMBED_TAB_NAME = mc
EMBED_TAB_COMMAND = uxterm -into {XID} -geometry 162x42 -e mc======================
чтоб нам загружать файлы Gcode непосредственно в емс -
в файл ~/.config/mc/mc.ext
добавляем:
Код: Выделить всё
# ngc
shell/.ngc
	Open=(axis-remote %f)==================
если в функцию def open_file_name(f):
добавить root_window.tk.eval(pane_top + ".right raise preview")
то будет и "переходить" во вкладку предпросмотра жкода(вкладка Вид)
Код: Выделить всё
    def open_file_name(f):
        root_window.tk.eval(pane_top + ".right raise preview")
        open_file_guts(f)
        if str(widgets.view_x['relief']) == "sunken":
            commands.set_view_x()
        elif str(widgets.view_y['relief']) == "sunken":
            commands.set_view_y()
        elif str(widgets.view_z['relief']) == "sunken":
            commands.set_view_z()
        elif  str(widgets.view_z2['relief']) == "sunken":
            commands.set_view_z2()
        else:
            commands.set_view_p()
        if o.canon is not None:
            x = (o.canon.min_extents[0] + o.canon.max_extents[0])/2
            y = (o.canon.min_extents[1] + o.canon.max_extents[1])/2
            z = (o.canon.min_extents[2] + o.canon.max_extents[2])/2
            o.set_centerpoint(x, y, z)- 
				eekot
 - Кандидат
 - Сообщения: 76
 - Зарегистрирован: 16 дек 2010, 01:51
 - Репутация: 15
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
Всем привет!
Подскажите пожалуйста, как подправить надпись на панели. Например струя, изменить на ****** чего нибудь
			
							
			
									
									
						Подскажите пожалуйста, как подправить надпись на панели. Например струя, изменить на ****** чего нибудь
- Serg
 - Мастер
 - Сообщения: 21923
 - Зарегистрирован: 17 апр 2012, 14:58
 - Репутация: 5183
 - Заслуга: c781c134843e0c1a3de9
 - Настоящее имя: Сергей
 - Откуда: Москва
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
Можно поправить системный файл перевода /usr/share/locale/ru/LC_MESSAGES/linuxcnc.mo на свой страх и риск, но для этого придётся разобраться с пакетом gettext.
			
			
									
									Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
						- 
				eekot
 - Кандидат
 - Сообщения: 76
 - Зарегистрирован: 16 дек 2010, 01:51
 - Репутация: 15
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
Ок, спасибо. Сейчас буду смотреть.UAVpilot писал(а):Можно поправить системный файл перевода /usr/share/locale/ru/LC_MESSAGES/linuxcnc.mo на свой страх и риск, но для этого придётся разобраться с пакетом gettext.
- 
				eekot
 - Кандидат
 - Сообщения: 76
 - Зарегистрирован: 16 дек 2010, 01:51
 - Репутация: 15
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
gettext не осилил. Поставил poedit. Конвертнул файл здесь: ezgif.com/mo-to-po. Открыл поедитом, исправил. Он сам компильнул в .mo.  Красота!  UAVpilotу - спасибо! 
Проба:
			
							
			
									
									
						Проба:
- 
				nkp
 - Мастер
 - Сообщения: 8340
 - Зарегистрирован: 28 ноя 2011, 00:25
 - Репутация: 1589
 - Контактная информация:
 
Re: AXIS экран (DISPLAY) - тонкая настройка
Код: Выделить всё
для желающих вести лог выполненных работ:
##############################################
    def update(self):
        .............
        .............
        ...........
        
        
        if vars.len_program.get():
            if self.stat.motion_line > (vars.len_program.get() - 4):
                vars.len_program.set(0)
                try:
                    fl = open('/home/nkp/emc2/logfile', "a")
                    fl.write("successful" + 18*' ' + time.ctime() + "\n")       
                    fl.close()        
                except :
                    print "nkplogerror"
                    
                    
         user_live_update()  
         
         
#######################################################         
         
vars = nf.Variables(root_window,         
         
         ....
         ....
         ....
    ("len_program", IntVar),
) 
###############################
    def task_run(*event):
        ...
        ...
        try:
            s.poll()
            count = 0
            for line in open(s.file).xreadlines(): count += 1
            vars.len_program.set(count)
            fl = open('/home/nkp/emc2/logfile', "a")
            lnf = len(os.path.basename(s.file))
            fl.write(os.path.basename(s.file) + (28-lnf)*' ' + time.ctime() + "\n")       
            fl.close()        
        except :
            print "nkplogerror"успешное завершение - время