EMC2 и неровная поверхность гравировки [РЕШЕНО]

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.

Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]

Сообщение MadGuest » 14 июл 2017, 16:30

Здравствуйте.
Надеюсь тема еще не умерла. Понадобилось вот прикрутить к ЧПУ компенсацию неровности, но столкнулся с одной проблемой: если в gcode использовать код G92, компенсация перестает работать. Ниже пробный gcode, доезжает до угла заготовки, ищет ноль по Z (заготовка металлическая, поиск до касания фрезой поверхности :cheesy: ), затем строит карту, включает компенсацию и проходит точки X,Y карты повторно. При этом если изменить значения параметров: #<x0> = #<xx0>; #<y0> = #<yy0> и убрать строчку G92 X0 Y0, т.е. использовать абсолютные значения координат - все работает как положено. А с относительными координатами индикатор Current compensation показывает последнее найденное в результате сканирования значение и для всех X, Y это значение не меняется. В принципе, логично, ведь в filename.txt в таком случае пишутся относительные значения координат X,Y (для ниже приведенного скрипта: {0;0} {5;0} {10;0}; {5;0} {5;5} {5;10} и так далее), а значения compensation.x-map/compensation-y.map соответствуют абсолютным. Собственно вопрос в том, возможно ли заставить компенсацию работать с относительными координатами?
Код: Выделить всёРазвернуть
#<h> = 10 (Y) 
#<w> = 10 (X)
#<x0> = 0
#<y0> = 0
#<stepx> = [#<w>/2]
#<stepy> = [#<h>/2]
#<search_feed> = 40
#<latch_feed> = 0
#<safe_z> = 1
#<search_z> = -1
#<safe_fast_z> = 0.5
#<xx0> = 163.7
#<yy0> = 231.7

G92.1 (сбрасываем оносительную СК)
(X0=X0, Y0=Y0, Z0=Z0)
G00 X#<xx0> Y#<yy0> (переходим в ноль заготовки)
G92 X0 Y0 (обнуляем оси X,Y)
(MSG,подключите датчик)
o<probez> call [#<safe_z>] (поиск поверхности заготовки)
o<scan> call [#<x0>] [#<y0>] [#<h>] [#<w>] [#<stepx>] [#<stepy>] [#<search_feed>] [#<latch_feed>] [#<safe_z>] [#<search_z>] [#<safe_fast_z>]
(X0 = X163.7, Y0=Y231.7, Z0=-37.195)
G00 X#<x0> Y#<y0>
(DEBUG,5063=#5063)
M65 P1
G4 P1
M64 P1
G4 P4
M64 P0

F250
G1 Z0
#<y> = #<y0> (сохраняем y)
O101 WHILE [#<y> LE #<h>+#<y0>] (пока y<y+h)
   #<x> = #<x0> (сохраняем x)
  O102 WHILE [#<x> LE #<w>+#<x0>] (пока x<x+w)
  G0 X[#<x>] Y[#<y>]
  G1 Z0
  G0 Z[#<safe_z>]
  #<x> = [#<x>+#<stepx>]
   O102 ENDWHILE
   #<y> = [#<y>+#<stepy>]
   G0 Z[#<safe_z>]
O101 ENDWHILE
M65 P0
G0 Z30
G0 X0 Y0
M2
MadGuest
Новичок
 
Сообщения: 1
Зарегистрирован: 14 июл 2017, 12:06
Репутация: 0
Настоящее имя: Руслан

Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]

Сообщение evgenymcp » 27 авг 2017, 12:05

Есть ли готовое решение для компенсации неровной поверхности под linuxcnc??? Раньше был какой-то Autoleveller. Нужно не костыльное рабочее решение для фрезеровки плат.
Аватара пользователя
evgenymcp
Новичок
 
Сообщения: 30
Зарегистрирован: 23 апр 2017, 05:37
Откуда: Абакан
Репутация: 0
Настоящее имя: Евгений

Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]

Сообщение nkp » 27 авг 2017, 13:51

evgenymcp писал(а):Нужно не костыльное рабочее решение

что в твоем понимании - "не костыльное решение" ??
емс - сам по себе( патч реалтайм) уже как бы костыльное решение)))
nkp
Мастер
 
Сообщения: 6954
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1084
Медальки:

Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]

Сообщение evgenymcp » 27 авг 2017, 14:02

Я по жизни линуксойд. Начинал со слаки и закончил гентой, но некоторые решения в linuxcnc костыльные ибо если бы они были не костыльные их бы включили в основной релиз. Даже для меня, любителя консоли и красноглазия многие вещи в linuxcnc кажутся сырыми и не доделанными. В том же GRBL есть неплохое, работающее, сканирование поверхности. Хотелось бы простого и рабочего решения.
Аватара пользователя
evgenymcp
Новичок
 
Сообщения: 30
Зарегистрирован: 23 апр 2017, 05:37
Откуда: Абакан
Репутация: 0
Настоящее имя: Евгений

Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]

Сообщение nkp » 27 авг 2017, 14:18

nkp
Мастер
 
Сообщения: 6954
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1084
Медальки:

Пред.

Вернуться в LinuxCNC

Кто сейчас на конференции

Зарегистрированные пользователи: Байкалец, BEBRAS, Bing [Bot], Duhas, Enot_1, evgenymcp, exe, Google [Bot], nevkon, TStarik, Yahoo [Bot], Yandex [bot]

Поделиться

Reputation System ©'