Страница 6 из 9

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

Добавлено: 28 май 2019, 16:16
Nikomas
А как загрубить в Axis значения координат вместо 1мкм, например, до 5мкм?

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

Добавлено: 28 май 2019, 16:23
Сергей Саныч
Nikomas писал(а):А как загрубить в Axis значения координат вместо 1мкм, например, до 5мкм?
Задавался подобным вопросом Как изменить количество знаков после десятичной точки #1

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

Добавлено: 30 май 2019, 08:39
nkp
Nikomas писал(а):А как загрубить в Axis значения координат вместо 1мкм, например, до 5мкм?
https://youtu.be/aBDy3rGzUN4

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

--- 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 и тд
всё меняется по такой же схеме ...

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

Добавлено: 30 авг 2019, 09:17
Skimen
В одной из тем я уже описывал проблему отображения 4оси. Повторюсь здесь так как это относится к настройке AXIS экрана.

Для правильной визуализации нужно сделать привязки по G5x такими ккак они сейчас отображаются для привязок инструмента ,а привязки инструмента следовательно на оборот.

Так я считаю будет правильнее.
Самостоятель я этого не сделаю потому что далёк от программирования и с линуксом общение до того не имел.

Прошу помощи в реализации моей затеи!

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

Добавлено: 30 авг 2019, 10:55
nkp
Skimen писал(а):Для правильной визуализации нужно сделать привязки по G5x такими ккак они сейчас отображаются для привязок инструмента ,а привязки инструмента следовательно на оборот.
то есть - ты предлагаешь "поменять местами" (их функционал) вот эти две кнопки:
Выделение_256.png (12477 просмотров) <a class='original' href='./download/file.php?id=168331&mode=view' target=_blank>Загрузить оригинал (47.77 КБ)</a>

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

Добавлено: 30 авг 2019, 13:09
Skimen
Не то чтобы функционал, а логику привязки. Сейчас привязки инструмента смещяет центре заготовки и от этого центра идёт привязка g5x а должно быть наоборот. Привязка по g5x должна смещять центр изделия. А привязка инструмента это просто отступить на длину инструмента . функция G92 остаётся прежней.

(Пишу с телефона ,печатать не удобно, за ошибки в орфографии прошу не пинать.)

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

Добавлено: 06 сен 2019, 07:48
Skimen
У меня тут появился ещё один вопрос.

А можно ли как-то задать центр поворотной оси , чтобы он находился в не нулевых координатах и привязки на его положение не влияли?

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

Добавлено: 06 сен 2019, 16:13
Serg
Отображение траектории в LinuxCNC нельзя считать полноценным симулятором, это всего лишь вспомогательный инструмент позволяющий приблизительно оценивать ход работы.
Однако LinuxCNC позволяет создать/нарисовать виртуальную копию станка для симуляции, в штатных примерах есть пример. :)

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

Добавлено: 07 сен 2019, 08:09
Skimen
А где и как нарисовать копию станка.

Я с линуксцнц только ещё начинаю общаться.
Собрал 4-х координатных станок под управлением линукса.

И обнаружил некорректное отображение поворотной оси.

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

Добавлено: 07 сен 2019, 22:37
Serg
Skimen писал(а):А где и как нарисовать копию станка.
Смотри примеры конфигов в подразделе vismach.

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

Добавлено: 08 сен 2019, 08:10
Skimen
В понедельник попробую посмотреть.

А вообще мой замысел про изменение логики привязки. Реально сделать.

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

Добавлено: 06 апр 2020, 00:09
nkp

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

Добавлено: 06 апр 2020, 00:16
iMaks-RS
Tool sensor один фиг отсутствует в стоке ((( Ждём ещё 10 лет (((

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

Добавлено: 06 апр 2020, 00:30
nkp
iMaks-RS писал(а):Tool sensor один фиг отсутствует в стоке
доделай что тебе не нравится
если достойно будет - может включат
или чукча читателя,не писателя :hehehe:

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

Добавлено: 02 май 2020, 12:04
nkp
mc во вкладке Axis (может кто то привыкший к этой прожке пожелает держать ее "поближе" ;) )
в 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)
табуляция в отступе
(для просмотра содержимого нажмите на ссылку)
Выделение_197.png (8138 просмотров) <a class='original' href='./download/file.php?id=180807&mode=view' target=_blank>Загрузить оригинал (107.61 КБ)</a>
но будет (вроде!) срабатывать только если емс запущен не_из_терминала
==================
если в функцию 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)
наверно можно это в .axisrc прописать

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

Добавлено: 14 авг 2020, 10:08
eekot
Всем привет!
Подскажите пожалуйста, как подправить надпись на панели. Например струя, изменить на ****** чего нибудь

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

Добавлено: 14 авг 2020, 12:19
Serg
Можно поправить системный файл перевода /usr/share/locale/ru/LC_MESSAGES/linuxcnc.mo на свой страх и риск, но для этого придётся разобраться с пакетом gettext.

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

Добавлено: 14 авг 2020, 12:57
eekot
UAVpilot писал(а):Можно поправить системный файл перевода /usr/share/locale/ru/LC_MESSAGES/linuxcnc.mo на свой страх и риск, но для этого придётся разобраться с пакетом gettext.
Ок, спасибо. Сейчас буду смотреть.

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

Добавлено: 14 авг 2020, 16:11
eekot
gettext не осилил. Поставил poedit. Конвертнул файл здесь: ezgif.com/mo-to-po. Открыл поедитом, исправил. Он сам компильнул в .mo. Красота! UAVpilotу - спасибо!
Проба:

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

Добавлено: 10 ноя 2021, 11:34
nkp

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

для желающих вести лог выполненных работ:
##############################################

    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"
в лог имя программы - время запуска
успешное завершение - время
(для просмотра содержимого нажмите на ссылку)
374.png (3433 просмотра) <a class='original' href='./download/file.php?id=199523&mode=view' target=_blank>Загрузить оригинал (24.1 КБ)</a>