Полезная ветка начинает засорятся не по теме...
EMC2 и неровная поверхность гравировки [РЕШЕНО]
-
sandman
- Мастер
- Сообщения: 257
- Зарегистрирован: 31 мар 2011, 19:09
- Репутация: 19
- Откуда: Германия, Horb am Neckar
- Контактная информация:
Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]
Nick, тебе не кажется, что уже баны раздавать пора? 
Полезная ветка начинает засорятся не по теме...
Полезная ветка начинает засорятся не по теме...
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]
Я тоже об этом подумываю... Я надеюсь они все поняли и это больше не повториться!
Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]
Вот я нашел реализацию некоторых хороших идей http://things.onshoulders.org/software/ ... action.php
-
Романов Семен
- Почётный участник

- Сообщения: 646
- Зарегистрирован: 23 янв 2012, 23:25
- Репутация: -80
- Откуда: Самара
Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]
Как я понял (не особо профи в английском) программа адаптирует g-cod под неровность?
А в каком формате ему входные данные? в виде гкода или облако точек?
Тестировать будете?
Задумка имеет плюс относительно уже рабочий компенсации:
+ станок ТОЧНО не уедет за пределы оси
Но так же минус при мелкосерийном производстве:
- под каждую заготовку адаптировать каждый раз гкод.
А вообще по началу как только вставала необходимость компенсации - задумывался об этом варианте, но Ник меня переубедил вышеупомянутым минусом
А в каком формате ему входные данные? в виде гкода или облако точек?
Тестировать будете?
Задумка имеет плюс относительно уже рабочий компенсации:
+ станок ТОЧНО не уедет за пределы оси
Но так же минус при мелкосерийном производстве:
- под каждую заготовку адаптировать каждый раз гкод.
А вообще по началу как только вставала необходимость компенсации - задумывался об этом варианте, но Ник меня переубедил вышеупомянутым минусом
Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]
Программа работает с привязкой к микроконтроллеру, поэтому этот вариант в процессе, как будут результаты напишу.
Как я понимаю установил заготовку, отсканировал поверхность, включил компенсацию в linuxcnc, и затем программа фрезеровки. И другой подход, отсканировал заготовку, на основании этого подкоректировал исходный код, запуск программы полученной программы фрезеровки. И там и там при смене заготовки необходимо сканировать поверхность заготовки. И насколько я понимаю в первом случае корректировка идет "налету" при выполнении программы, во втором случае корректировка прощитывается до фрезеровки. Поверхность заготовки всегда будет разной по кривезне, объясните где выигрыш первого подхода по отношению ко второму?
to Nick
Чтот корректировка через раз работает, не пойму почему. Вод код который я применяю:
На рисунке во вложении, когда все индикаторы Enable, Reset, Error зеленые - все отлично работет. Но не всегда после сканирования индикаторы становятся зелеными (Бывает что Enable, Reset зеленые, а Error красный.), в чем загвоздка?
Как я понимаю установил заготовку, отсканировал поверхность, включил компенсацию в 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)
- Вложения
-
- comp.png (7.99 КБ) 2529 просмотров
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]
Если error красный, значит где-то произошла ошибка... Возможно при сканировании была создана не прямоугольная карта, т.е. сканирование выполнено не до конца.
Можешь попробовать отследить, при каких обстоятельствах появляется error?
Поставил заготовку, нажал "старт", пошел пиво пить,
потом поменял заготовку, нажал "старт" и пошел пиво допивать.
Можешь попробовать отследить, при каких обстоятельствах появляется error?
Выгода будет в том, что можно все автоматизировать.2cme писал(а):Поверхность заготовки всегда будет разной по кривезне, объясните где выигрыш первого подхода по отношению ко второму?
Поставил заготовку, нажал "старт", пошел пиво пить,
потом поменял заготовку, нажал "старт" и пошел пиво допивать.
-
Романов Семен
- Почётный участник

- Сообщения: 646
- Зарегистрирован: 23 янв 2012, 23:25
- Репутация: -80
- Откуда: Самара
Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]
Постараюсь уточнить.
Впринципе и при втором варианте можно пиво пить, после запуска фрезерования, НО
После каждого сканирования - нужно изменять оригинал G-кода.
Вот и все.
Хотя кстати, Ник, на счет на лету... Наверняка же поджирает ресурсы созданная компенсация?
Надо бы найти желающего потестировать на слабенькой машинке... будет влиять или нет.
2cme, тоесть нужен какойто доп. девайс собрать что ли? Или я не понял про микроконтроллер.
Впринципе и при втором варианте можно пиво пить, после запуска фрезерования, НО
После каждого сканирования - нужно изменять оригинал 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 и неровная поверхность гравировки [РЕШЕНО]
Ресурсы кушает, но ресурсы userspace, это значит, что на слабенькой машинке может начать тормозить компенсация, а сам LinuxCNC будет работать точноРоманов Семен писал(а):Хотя кстати, Ник, на счет на лету... Наверняка же поджирает ресурсы созданная компенсация?
Надо бы найти желающего потестировать на слабенькой машинке... будет влиять или нет.
также, т.к. он работает с приоритетом realtime.
Причем компенсация будет просто запаздывать, т.к. к ней будет реже передаваться процессорное время, в самом плохом случае - совсем перестанет компенсировать.
А чего мне об этом не сказалКстати, я каждый раз перезапускаю ЕМС при каждой заготовке, не знаю почему, так то уже привык, но раньше помоему с каким то косяком столкнулся, поэтому перезагружаю и все.
Попробуйте тоже каждый раз перезагружать, мб, попрет?
Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]
Заглянул в созданный файл 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 раз.
Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]
Насколько я понимаю, возможно ошибаюсь - поправьте, при варианте 1 всеравно вызывается утилита на питоне, которая осуществляет расчет компенсации, так почему не сделать чтобы она такимже/подобным макаром вызывалась до выполнения основного g-code, выполняла расчет с сохранением в файл, потом же его и подгружала и все это из шаблонного файла как в сообщении 290. Это возможно?
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]
Если я правильно понял-Вам не хочеться каждый раз ручками вставлять "Ваш g-код"?
Советую посмотреть с сторону ngcgui.
Делаем "мастер", шапку можно в Preamble,а можно сделать и динамически изменяемой(нужно ли -не вникал).
Советую посмотреть с сторону ngcgui.
Делаем "мастер", шапку можно в Preamble,а можно сделать и динамически изменяемой(нужно ли -не вникал).
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]
Да, ту скорее всего нужно в сторону ngcgui смотреть, т.к. как поменять Gкод в axis я так и не нашел. Наверное этому есть свои объяснения, например, потому, что с gкодом постоянно работает motion...
А в чем проблема в cam добавить в файл заголовок?
А в чем проблема в cam добавить в файл заголовок?
-
Романов Семен
- Почётный участник

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

- Сообщения: 646
- Зарегистрирован: 23 янв 2012, 23:25
- Репутация: -80
- Откуда: Самара
Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]
Можно поподробнее? или в личку? или сцыль =)
А от чего зависит латенси?
А от чего зависит латенси?
-
_taras_
- Мастер
- Сообщения: 546
- Зарегистрирован: 16 мар 2011, 15:19
- Репутация: 69
- Контактная информация:
Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]
Народ! Мне тут попалась на глазаl решение (post 127) аналогичной проблемы. Может пригодится?
Последний раз редактировалось _taras_ 20 мар 2012, 09:10, всего редактировалось 1 раз.
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]
По ссылке тема не открывается... кажется ...
который может вызывать задержку в 200 000 раз в 10-15 минут. Для обычного компьютера это не существенно, но для управления станками - такие задержки слишком велики.
Фактически реальный latency можно определить только проведя latency test. Т.к. latency зависит от всего
ю
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 латенси не будет меньше?
Или тогда, как добиться что бы латенси не переваливал за 10000-15000? (я имею ввиду покупать покупать покупать разное железо пока не попадеться то что может быстро реагировать) ?
Мне кажется - купил комп на хотяб каком нибудь i3 камне и его хватит, нет?
Ведь под это определение - попадает: частота шины процессора/ шины памяти, кеш процессора. поэтому я считаю что все таки от характеристики компа - влияет латенси.... может конечно я щас как баран уперся...Nick писал(а):Latency это то насколько быстро компьютер может среагировать на ту или иную ситуацию.
Или тогда, как добиться что бы латенси не переваливал за 10000-15000? (я имею ввиду покупать покупать покупать разное железо пока не попадеться то что может быстро реагировать) ?
Мне кажется - купил комп на хотяб каком нибудь i3 камне и его хватит, нет?
Re: EMC2 и неровная поверхность гравировки [РЕШЕНО]
Нестал дожидаться движка. Драйвера у меня способны в режиме микрошага работа 1/2, 1/4, 1/8, 1/16.
Вчера для z установил 1/2, результат получился хороший, стабильная глубина по всей площади.
Интерестно какие инструменты статаназиза можно применить для расчета шага сканирования, как на шаг будет влиять толщина заготовки?
Основкая причина того что мне не нравится userspace, то что это может стать "бутылочным горлышком". Посмотрите как проходят гонки на машинах по пересеченной местнности, у водителя до основной гонки есть карта дорог, штуман, предварительно проезжают, и всеравно бывают аварии.
to Семен, попробуйте для себя выяснить вопрос почему например два разных проца с одной тактовой частой, различатся в производительности, причем для некоторых задач в разы.
Вчера для z установил 1/2, результат получился хороший, стабильная глубина по всей площади.
Интерестно какие инструменты статаназиза можно применить для расчета шага сканирования, как на шаг будет влиять толщина заготовки?
Основкая причина того что мне не нравится userspace, то что это может стать "бутылочным горлышком". Посмотрите как проходят гонки на машинах по пересеченной местнности, у водителя до основной гонки есть карта дорог, штуман, предварительно проезжают, и всеравно бывают аварии.
to Семен, попробуйте для себя выяснить вопрос почему например два разных проца с одной тактовой частой, различатся в производительности, причем для некоторых задач в разы.
