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

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
sandman
Мастер
Сообщения: 257
Зарегистрирован: 31 мар 2011, 19:09
Репутация: 19
Откуда: Германия, Horb am Neckar
Контактная информация:

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

Сообщение sandman »

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

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

Сообщение Nick »

Я тоже об этом подумываю... Я надеюсь они все поняли и это больше не повториться!
2cme
Почётный участник
Почётный участник
Сообщения: 1043
Зарегистрирован: 24 янв 2012, 13:18
Репутация: -209

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

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

Вот я нашел реализацию некоторых хороших идей http://things.onshoulders.org/software/ ... action.php
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

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

Сообщение Романов Семен »

Как я понял (не особо профи в английском) программа адаптирует g-cod под неровность?
А в каком формате ему входные данные? в виде гкода или облако точек?
Тестировать будете?
Задумка имеет плюс относительно уже рабочий компенсации:
+ станок ТОЧНО не уедет за пределы оси
Но так же минус при мелкосерийном производстве:
- под каждую заготовку адаптировать каждый раз гкод.

А вообще по началу как только вставала необходимость компенсации - задумывался об этом варианте, но Ник меня переубедил вышеупомянутым минусом
2cme
Почётный участник
Почётный участник
Сообщения: 1043
Зарегистрирован: 24 янв 2012, 13:18
Репутация: -209

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

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

Программа работает с привязкой к микроконтроллеру, поэтому этот вариант в процессе, как будут результаты напишу.

Как я понимаю установил заготовку, отсканировал поверхность, включил компенсацию в linuxcnc, и затем программа фрезеровки. И другой подход, отсканировал заготовку, на основании этого подкоректировал исходный код, запуск программы полученной программы фрезеровки. И там и там при смене заготовки необходимо сканировать поверхность заготовки. И насколько я понимаю в первом случае корректировка идет "налету" при выполнении программы, во втором случае корректировка прощитывается до фрезеровки. Поверхность заготовки всегда будет разной по кривезне, объясните где выигрыш первого подхода по отношению ко второму?

to Nick
Чтот корректировка через раз работает, не пойму почему. Вод код который я применяю:

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

M65 P0  (это мы выключаем работу компенсатора)
T1 M6 (выдаем запрос на установку щупа)
#<h> = 40 
#<w> = 30 
#<x0> = 0
#<y0> = 0
#<step> = 10
#<search_feed> = 40
#<latch_feed> = 1
#<safe_z> = 0.5
#<search_z> = -1

(PROBEOPEN filename.txt)

G0 Z#<safe_z>
#<y> = #<y0>
o101 while [#<y> LT #<h>+#<y0>]
  #<x> = #<x0>
  o102 while [#<x> LT #<w>+#<x0>]
    G0 X[#<x>] Y[#<y>]
    F[#<search_feed>]
    G38.3 Z[#<search_z>]
    F[#<latch_feed>]
    G38.5 Z[#<safe_z>]
   G0 Z[#<safe_z>]
    #<x> = [#<x>+#<step>]
  o102 endwhile
  #<y> = [#<y>+#<step>]
o101 endwhile

(PROBECLOSE)

M65 P1 
G4 P10 (пауза на 10 секунды)
M64 P1 (это мы скажем нашему скрипту обновить карту высот и компенсаций)

G4 P10 (пауза на 10 секунды)
T2 M6 (Выдаем запрос на установку фрезы)
M64 P0  (это мы включаем работу компенсатора)
(***********************************) 
(Сюда твой Gкод для гравировки платы) 
(***********************************) 
M2 (end program)
На рисунке во вложении, когда все индикаторы Enable, Reset, Error зеленые - все отлично работет. Но не всегда после сканирования индикаторы становятся зелеными (Бывает что Enable, Reset зеленые, а Error красный.), в чем загвоздка?
Вложения
comp.png
comp.png (7.99 КБ) 2528 просмотров
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

Если error красный, значит где-то произошла ошибка... Возможно при сканировании была создана не прямоугольная карта, т.е. сканирование выполнено не до конца.
Можешь попробовать отследить, при каких обстоятельствах появляется error?
2cme писал(а):Поверхность заготовки всегда будет разной по кривезне, объясните где выигрыш первого подхода по отношению ко второму?
Выгода будет в том, что можно все автоматизировать.
Поставил заготовку, нажал "старт", пошел пиво пить,
потом поменял заготовку, нажал "старт" и пошел пиво допивать.
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

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

Сообщение Романов Семен »

Постараюсь уточнить.
Впринципе и при втором варианте можно пиво пить, после запуска фрезерования, НО
После каждого сканирования - нужно изменять оригинал G-кода.
Вот и все.

Хотя кстати, Ник, на счет на лету... Наверняка же поджирает ресурсы созданная компенсация?

Надо бы найти желающего потестировать на слабенькой машинке... будет влиять или нет.

2cme, тоесть нужен какойто доп. девайс собрать что ли? Или я не понял про микроконтроллер.
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

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

Сообщение Романов Семен »

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

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

Сообщение Nick »

Романов Семен писал(а):Хотя кстати, Ник, на счет на лету... Наверняка же поджирает ресурсы созданная компенсация?
Надо бы найти желающего потестировать на слабенькой машинке... будет влиять или нет.
Ресурсы кушает, но ресурсы userspace, это значит, что на слабенькой машинке может начать тормозить компенсация, а сам LinuxCNC будет работать точно
также, т.к. он работает с приоритетом realtime.

Причем компенсация будет просто запаздывать, т.к. к ней будет реже передаваться процессорное время, в самом плохом случае - совсем перестанет компенсировать.
Кстати, я каждый раз перезапускаю ЕМС при каждой заготовке, не знаю почему, так то уже привык, но раньше помоему с каким то косяком столкнулся, поэтому перезагружаю и все.
Попробуйте тоже каждый раз перезагружать, мб, попрет?
А чего мне об этом не сказал :pssdoff:??? Я бы чего-нибудь опять починил :freak: Что в консоли по этому поводу пишет?
2cme
Почётный участник
Почётный участник
Сообщения: 1043
Зарегистрирован: 24 янв 2012, 13:18
Репутация: -209

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

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

Заглянул в созданный файл filename.txt, бока были с разрядностью.
Вот так намного лучше...

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

M65 P0  (это мы выключаем работу компенсатора)
T1 M6 (выдаем запрос на установку щупа)
#<h> = 41.0000 (X)
#<w> = 31.0000 (Y)
#<x0> = -1.0000 
#<y0> = -1.0000
#<step> = 5.0000
#<search_feed> = 40
#<latch_feed> = 1
#<safe_z> = 0.5000
#<search_z> = -1.0000

(PROBEOPEN filename.txt)

G0 Z#<safe_z>
#<y> = #<y0>
o101 while [#<y> LT #<h>+#<y0>]
  #<x> = #<x0>
  o102 while [#<x> LT #<w>+#<x0>]
    G0 X[#<x>] Y[#<y>]
    F[#<search_feed>]
    G38.3 Z[#<search_z>]
    F[#<latch_feed>]
    G38.5 Z[#<safe_z>]
   G0 Z[#<safe_z>]
    #<x> = [#<x>+#<step>]
  o102 endwhile
  #<y> = [#<y>+#<step>]
o101 endwhile

(PROBECLOSE)

M65 P1
G4 P10 (пауза на 10 секунды)
M64 P1 (это мы скажем нашему скрипту обновить карту высот и компенсаций)
G4 P10 (пауза на 10 секунды)

M64 P0  (это мы включаем работу компенсатора)

T2 M6 (Выдаем запрос на установку фрезы)

(----------------------------------------------------------------------------------------)
(Сюда твой Gкод для гравировки платы)
(----------------------------------------------------------------------------------------)
M2 (end program)
А возможно вместо

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

(----------------------------------------------------------------------------------------)
(Сюда твой Gкод для гравировки платы)
(----------------------------------------------------------------------------------------)
Задать имя файла?
Последний раз редактировалось 2cme 19 мар 2012, 22:42, всего редактировалось 1 раз.
2cme
Почётный участник
Почётный участник
Сообщения: 1043
Зарегистрирован: 24 янв 2012, 13:18
Репутация: -209

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

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

Насколько я понимаю, возможно ошибаюсь - поправьте, при варианте 1 всеравно вызывается утилита на питоне, которая осуществляет расчет компенсации, так почему не сделать чтобы она такимже/подобным макаром вызывалась до выполнения основного g-code, выполняла расчет с сохранением в файл, потом же его и подгружала и все это из шаблонного файла как в сообщении 290. Это возможно?
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

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

Сообщение nkp »

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

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

Сообщение Nick »

Да, ту скорее всего нужно в сторону ngcgui смотреть, т.к. как поменять Gкод в axis я так и не нашел. Наверное этому есть свои объяснения, например, потому, что с gкодом постоянно работает motion...

А в чем проблема в cam добавить в файл заголовок?
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

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

Сообщение Романов Семен »

Nick писал(а):А чего мне об этом не сказал ??? Я бы чего-нибудь опять починил Что в консоли по этому поводу пишет?
Будет время - затестирую.
Nick писал(а):Ресурсы кушает, но ресурсы userspace, это значит, что на слабенькой машинке может начать тормозить компенсация, а сам LinuxCNC будет работать точно также, т.к. он работает с приоритетом realtime.
Ну вот он кажется тот минус, которого "боится" 2cme в этом варианте реализации как я понял.
У меня вроде бы хватает мощи почти, но попозже соберу для станка комп помощнее...
Ибо физически машина может 2000мм/мин выжать даже 3000
А щас максимум стоит 1680 =( изза латенси...
Nick писал(а):А в чем проблема в cam добавить в файл заголовок?
Лично для меня не проблемно и вручную потом добавить заголовок =)
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

Романов Семен писал(а):Ибо физически машина может 2000мм/мин выжать даже 3000
А щас максимум стоит 1680 =( изза латенси...
Латенси не зависит от мощности компа. Латенси, это не быстродействие. Для управления более быстрыми системами нужно выносить генератор шагов за пределы компа. Например, на месу. Кстати, если ты электронщик, мог бы и сам платку такую собрать, которая урпавляла бы шаговиками по заданному положению.
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

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

Сообщение Романов Семен »

Можно поподробнее? или в личку? или сцыль =)

А от чего зависит латенси?
_taras_
Мастер
Сообщения: 546
Зарегистрирован: 16 мар 2011, 15:19
Репутация: 69
Контактная информация:

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

Сообщение _taras_ »

Народ! Мне тут попалась на глазаl решение (post 127) аналогичной проблемы. Может пригодится?
Последний раз редактировалось _taras_ 20 мар 2012, 09:10, всего редактировалось 1 раз.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

По ссылке тема не открывается... кажется ...
Романов Семен писал(а):Можно поподробнее? или в личку? или сцыль =)
А от чего зависит латенси?
Latency это то насколько быстро компьютер может среагировать на ту или иную ситуацию. Latency-test выполняет base-thread кучу раз и смотрит насколько сильно отличаются base-period друг от друга. "Убийцами latency" называют различные новые технологии, например SMI (system managment interrupt)
который может вызывать задержку в 200 000 раз в 10-15 минут. Для обычного компьютера это не существенно, но для управления станками - такие задержки слишком велики.

Фактически реальный latency можно определить только проведя latency test. Т.к. latency зависит от всего :)ю
Романов Семен
Почётный участник
Почётный участник
Сообщения: 646
Зарегистрирован: 23 янв 2012, 23:25
Репутация: -80
Откуда: Самара

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

Сообщение Романов Семен »

Тоесть, хочешь сказать на core-i7-extreme латенси не будет меньше?
Nick писал(а):Latency это то насколько быстро компьютер может среагировать на ту или иную ситуацию.
Ведь под это определение - попадает: частота шины процессора/ шины памяти, кеш процессора. поэтому я считаю что все таки от характеристики компа - влияет латенси.... может конечно я щас как баран уперся...
Или тогда, как добиться что бы латенси не переваливал за 10000-15000? (я имею ввиду покупать покупать покупать разное железо пока не попадеться то что может быстро реагировать) ?
Мне кажется - купил комп на хотяб каком нибудь i3 камне и его хватит, нет?
2cme
Почётный участник
Почётный участник
Сообщения: 1043
Зарегистрирован: 24 янв 2012, 13:18
Репутация: -209

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

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

Нестал дожидаться движка. Драйвера у меня способны в режиме микрошага работа 1/2, 1/4, 1/8, 1/16.
Вчера для z установил 1/2, результат получился хороший, стабильная глубина по всей площади.

Интерестно какие инструменты статаназиза можно применить для расчета шага сканирования, как на шаг будет влиять толщина заготовки?

Основкая причина того что мне не нравится userspace, то что это может стать "бутылочным горлышком". Посмотрите как проходят гонки на машинах по пересеченной местнности, у водителя до основной гонки есть карта дорог, штуман, предварительно проезжают, и всеравно бывают аварии.

to Семен, попробуйте для себя выяснить вопрос почему например два разных проца с одной тактовой частой, различатся в производительности, причем для некоторых задач в разы.
Ответить

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