Сканирование поверхности

Oleg_Pvk
Posts: 17
Joined: Mon May 28, 2018 4:35 am

Сканирование поверхности

Post by Oleg_Pvk » Tue Nov 20, 2018 8:05 pm

Добрый день!
Есть латунная пластина размерами 220*450. На ней нужно выгравировать символы. Было бы посто если бы пластина была идеально ровной. Но к сожалению она имеет изгиб. В другом софте я решал эту проблему с помощью "сканирования" щупом поверхности.
Выглядело это следующим образом:
-Задаю область сканирования прямоугольником например х0у0 до х100у100
-Задаю плотность сетки х10у10 и скорость перемещения от точки к точке F500 в случае если при перемещении щуп сработал остановить движение по текущей координате, сделать отход на заданное расстояние добавить к безопасной высоте некую заданную оператором константу например 10
-Задаю безопасную высоту с которой начинается опускание щупа z30 спервой высокой скоростью F500
-Задаю дистанцию для отхода по z для повторного измерения с меньшей скоростью Z3 F50
После ввода всех данных нажимаем стар и станок выполняет сканирование следующим образом:
- Переместился в точку х0у0 на безопасной z30 и начал проводить измерение щупом опуская z с первой скоростью F500
- Получив сигнал от щупа записывает значение всех координат в файл, делает отход по Z на 3 вверх и снова производит измерение в этой же точке перезаписывает прошлые координаты
- Поднимается по Z на + 3 и передвигается к следующей точке x10y0
- Если на пути движения сработает щуп - остановить движение по текущей координате, и передвинуться в Z13 (текущая z3 + z10 заданная оператором) проверить сигнал от щупа в случае его отсутствия продолжить следование в следующую точку сканирования. В случае если сигнал от щупа присутствует перейти в Z23 (3+10+10)
- Повторить цикл измерения в точке z10y10
И так всю сетку 220*450 с шагом 10мм
Итого на выходе получим фай *.txt с 990 строчками и тремя столбцами данных. Столбцы x,y,z.
Дальше этот файл (облако точек) можно использовать разными образами. Например то чем я пользовался:
1. Создаём в Rhino обрабатываемую поверхность из полученного со станка облака точек и "натягиваем" на неё определённый рельеф. Получаем очень хороший результат.
2. Гравировка печатных плат без вакуумного стола. Например закрепили лист под будущую печную плату на станке, в следствии не идеальности самого листа появился изгиб материала. Провели сканирование. Получили файл. Включили внутри софта заветную кнопочку коррекции по z и загружаем вполне обычную программу для выборки (гравировки) печатной платы. А станок ориентируясь на полученный файл сканирование подкручивает ось Z в + или - что даёт гарантированно минимальные отклонения от глубины гравировки ДАЖЕ не только что лист материала повело но и при "хобийных/кривых" направляющих

Реализовано ли подобное в MYCNC? Если да то где посмотреть пример? Если нет то будет ли? Или как такое возможно реализовать?

П.с. Этим я пользовался в EMC. Было весьма удобно. Очень хотелось бы иметь подобное и в MYCNC . Наверняка вы эту тему читали на одном форуме... чтобы не рекламировать гуглица по словам "неровная поверхность гравировки"

philip
Posts: 56
Joined: Tue Oct 16, 2018 10:45 am

Re: Сканирование поверхности

Post by philip » Tue Nov 20, 2018 9:12 pm

Не имею желания Вас обидеть, но знающие специалисты говорят, что аппендицит можно через ж..у вырезать !? :D
Ну, если уж хочется померить, то можно и лазерный ,ультразвуковой или ёмкостной измеритель применить, для "on fly" измерения.
Почему, просто не использовать пневматический роликовый прижим на шпинделе?

Oleg_Pvk
Posts: 17
Joined: Mon May 28, 2018 4:35 am

Re: Сканирование поверхности

Post by Oleg_Pvk » Wed Nov 21, 2018 7:16 am

philip wrote:
Tue Nov 20, 2018 9:12 pm
Не имею желания Вас обидеть, но знающие специалисты говорят, что аппендицит можно через ж..у вырезать !? :D
Ну, если уж хочется померить, то можно и лазерный ,ультразвуковой или ёмкостной измеритель применить, для "on fly" измерения.
Почему, просто не использовать пневматический роликовый прижим на шпинделе?
Подкол оценил :D
С тонким листовым материалом согласен. Можно использовать прижим. С латунной плитой 10 мм, не выйдет. Да и частенько она специально изогнута так сказать "по месту" Речь идёт о памятниках.
Ультрозвуковое измерение - пока что я не встречал датчиков способных дать хотя бы +\- 0.1 мм,
ёмкостный - на сколько я знаю работает только с металлами, хотя могу заблуждаться

А что делать например с прикладом ружья\карабина? Или другие предметы не простой формы на которых требуется нанести гравировку?
Покупать 3д сканер - достойный сканер будет стоить достойно )) да и после сканера очень много приходиться дополнительно обрабатывать полученное облако точек.
Собственно из-за этих условий и выбрал метода "щупанья" поверхности
Да и ещё один плюс. деталь уже спозиционирована в координатах и некуда не сбежит )

philip
Posts: 56
Joined: Tue Oct 16, 2018 10:45 am

Re: Сканирование поверхности

Post by philip » Wed Nov 21, 2018 2:50 pm

Вариант 1) Если штучные детали, то пневматический роликовый прижим. Конструкция оси шпинделя, в таком прижиме, другая - ролики скользят по поверхности, а расстояние между роликами и инструментом и есть ось Z шпинделя. Т.е. весь шпиндель с приводом оси - падает при помощи пневматики, а шпиндель ходит вверх вниз от роликов. Единственное ограничение - одна из осей (X или Y) не будет плавающей по огибающей детали.
Вариант 2) Если деталей есть несколько, то тогда старый добрый копировально-фрезерный в помощь. Только в современном варианте : рядом крепится "шпиндель2" , конструкция простая - линейный энкодер на конце шариковая опора. "Шпиндель2" - катается по эталонной детали, а его энкодер передает кривизну (вносит смещение на высоту) детали основному шпинделю. Элементарно сделать на myCNC.

mycnc
Posts: 403
Joined: Thu May 10, 2018 2:42 pm

Re: Сканирование поверхности

Post by mycnc » Wed Nov 21, 2018 10:47 pm

Тема известная, гравировка по камню, фрезеровка печатных плат - периодически об этом спрашивают.

Первое приближение для реализации коррекции сделано.
Описано в англоязычной ветке - viewtopic.php?f=9&t=2

Делается программа создания массива измерений, в нем есть код пробинга с сохранением результата в log.
После выполнения можно получить файл данных в желаемом формате, который отдается стороннему софту для подготовки УП с коррекцией.

Следующим этапом планируется делать скорректированную по высоте УП самостоятельно без стороннего софта.
В последующем попытаемся полностью автоматизировать процесс.

Клиент, который вызывался потестировать данную функцию, не выходит на связь несколько месяцев (как видно из ветки форума), поэтому тема зависла. При появлении свободного времени и бета-тестера тему оживим.

Oleg_Pvk
Posts: 17
Joined: Mon May 28, 2018 4:35 am

Re: Сканирование поверхности

Post by Oleg_Pvk » Thu Nov 22, 2018 2:57 pm

mycnc wrote:
Wed Nov 21, 2018 10:47 pm
Тема известная, гравировка по камню, фрезеровка печатных плат - периодически об этом спрашивают.

Первое приближение для реализации коррекции сделано.
Описано в англоязычной ветке - viewtopic.php?f=9&t=2

Делается программа создания массива измерений, в нем есть код пробинга с сохранением результата в log.
После выполнения можно получить файл данных в желаемом формате, который отдается стороннему софту для подготовки УП с коррекцией.

Следующим этапом планируется делать скорректированную по высоте УП самостоятельно без стороннего софта.
В последующем попытаемся полностью автоматизировать процесс.

Клиент, который вызывался потестировать данную функцию, не выходит на связь несколько месяцев (как видно из ветки форума), поэтому тема зависла. При появлении свободного времени и бета-тестера тему оживим.
По тестить в принципе и я могу дома :-) правда дома станок для пенопласта и пластика. Не то чтобы из г... и палок но высокой жёсткостью и точностью похвастаться не может. В принципе наверное для тестов самое то. В случае чего не сломается с амортизирует :D
На работе же так поиграться не дадут. Да и в принципе подключить Ваш контроллер не дадут. По этому предлагаю свой станок контроллер ET-6
В место щупа предлагаю использовать медный пруток подпружиненый ( воткнусь в поверхность будет время для нажатия кнопки стоп пока гнётся пруток), а в качестве поверхности у меня есть бронзовый лист, текстолит с фольгой (для печаток)
Вообщем осталось дело в свободном времени и желании ;-)

Oleg_Pvk
Posts: 17
Joined: Mon May 28, 2018 4:35 am

Re: Сканирование поверхности

Post by Oleg_Pvk » Thu Feb 14, 2019 5:54 am

mycnc wrote:
Wed Nov 21, 2018 10:47 pm
....
Описано в англоязычной ветке - viewtopic.php?f=9&t=2
....
Прочитал.
Прочитал ветку в FAQ http://docs.pv-automation.com/plc/plc_height_map
Взял за основу макрос поиска поверхности и попробовал разобраться.
*****
M555 (Имя нового макроса)
#10= 3 (Sensor Nr)
#11=0 (Sensor Normally opened)
G10 L81 P103 Q5023 (Store Z position in reg 103)
M88 P#10 L#11 (Smooth stop if sensor activated)
G91 G0 Z-30 F500 (Fast scren surf)
G04 P0.1
G91 G0 Z2 F500(Rebound 2mm)
M89 P#10 L#11 (Stop if sensor activated)
G91 G0 Z-30 F50 (Slow scren surf)
G04 P0.1 (Pause)
G90
M80 P1
M85 (saving the coordinates in log - в абсолютных надеюсь)
M85 P0
G91 G0 Z10 F500 (Gap Safe height)
****
На что я рассчитываю?)
Вот такой G-cod запускаем:
G90
G00 x100 y100
M555
G00 x200y200
M555
На выходе я рассчитываю в логе получить координаты двух точек.
Подскажите где должен лежать лог и правильным ли путём я иду?

Oleg_Pvk
Posts: 17
Joined: Mon May 28, 2018 4:35 am

Re: Сканирование поверхности

Post by Oleg_Pvk » Fri Feb 15, 2019 5:55 am

Что я сделал:
Добавил и прошил процедуры M80.plc

Code: Select all

main()
{
  gvarset(5740,eparam);
  exit(99);
};
M85.plc

Code: Select all

main()
{
  gvarset(5730,0);
  exit(99);
};
Написал макрос M555

Code: Select all

#10= 3 (Sensor Nr)
#11=0 (Sensor Normally opened)
G10 L81 P103 Q5023 (Store Z position in reg 103)
M88 P#10 L#11 (Smooth stop if sensor activated)
G91 G0 Z-30 F500 (Fast scren surf)
G04 P0.1
G91 G0 Z2 F500(Rebound 2mm)
M89 P#10 L#11 (Stop if sensor activated)
G91 G0 Z-30 F50 (Slow scren surf)
G04 P0.1 (Pause)
G90
M80 P1
M85 (saving the coordinates in log - в абсолютных надеюсь)
M85 P0
G91 G0 Z10 F500 (Gap Safe height)
Запускаю G-cod

Code: Select all

G90
G0 X100Y100Z15
M555
G0 X200Y200Z15
Станок едет, "щупает" но результаты не сохраняет. Либо я не могу найти куда он их сохраняет.
Настройки в CFG:
Image скрин настроек

Очень нужна помощь. Подскажите что я делаю не правильно? Где я ошибся?

mycnc
Posts: 403
Joined: Thu May 10, 2018 2:42 pm

Re: Сканирование поверхности

Post by mycnc » Fri Feb 15, 2019 2:19 pm

Постараемся проверить.
Это было сделано несколько месяцев назад, с тех пор не проверялось.
Насколько срочно это надо?
Срхранение измерений в файл было сделано как промежуточное решение.
У нас в ближайших планах (несколько недель) сделать полный цикл с автоматической конвертацией управляющих программ и внесением коррекции по высоты внутрь программы.

Oleg_Pvk
Posts: 17
Joined: Mon May 28, 2018 4:35 am

Re: Сканирование поверхности

Post by Oleg_Pvk » Fri Feb 15, 2019 2:46 pm

mycnc wrote:
Fri Feb 15, 2019 2:19 pm
....
Насколько срочно это надо?
....
Уже гравирую :)
Вышел из ситуации костыльным способом:
- создал облако точек в которых нужно измерить высоту Z
- написал макрос: приехал на точку измерил высоту и остался на 10 сек в нижнем положении (значиние в рукопашную с экрана я забивал в эксель пока идут 10 сек паузы)
- создал G-код движения с логикой: приехал на точку - измерил-поднялся на безопасную высоту - поехал на следующую
Потом из экселя перенёс кординаты точек с измеренными Z в сторонний софт. Там составил карту высот и УП для гравировки.

Вообще периодический нужная штука. Есть определённое количество работы для неё.
По факту мне бы было достаточно того что он бы сохранял измерения в лог файл. И даже в этом есть определённый плюс. А именно я могу создавать массив точек произвольной формы и плотности. В рино делается достаточно просто и быстро. На основании его могу создать G-код для измерений. И потом из лог файла скинуть данные обратно в рино, сделать карту высот а по ней уже вести обработку.
Ещё один плюс это в принципе делать измерения в нужных областях после обработки например.
А также конечно в более простой форме эта же функция была бы полезна для гравировки печатных плат с коррекций прямо в MyCNC

Post Reply