Контактный сканер с помощью EMC2

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
gendos
Мастер
Сообщения: 1117
Зарегистрирован: 06 июл 2011, 15:26
Репутация: 81
Настоящее имя: Геннадий
Откуда: Ростов-на-дону
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение gendos »

gendos писал(а):Как бы это сделать красиво?
и желательно ,чтоб A менялось от 0 до 360
Надо использовать тот же цикл, что и раньше. только добавить в него M3 M5.
gendos писал(а):Колодки обычно вырезают фрезой которая в точности повторяет размеры сканирующего ролика, поэтому у колодки не может на поверхности быть вогнутостей меньше радиуса сканирующего ролика,поэтому ролик в худшем случае,
все равно будет касаться всей своей поверхностью.Но все это мои рассуждения могут быть ошибочны.
Когда сделаю точный скан можно будет поэкспериментировать.
Это хорошо. Может тогда отступ вообще не делать?
А как редактируются колодки? Тупо масштабируются по размеру, или что-то хитрее?


Когда я использовал тот же цикл,мне не удалось получить большую скорость вращения
(в HAL увеличивал все что можно) ,не помогло,но попробую еще раз может что не внимательно сделал.
Если не делать отступ получается тот кривой скан ,что я выкладывал.С отступом скан нормально выглядит.
Колодки масштабируются по размеру только с разными коэффициентами по длине и ширине
Вот фото с экрана симулятора 2D ,где показывается путь фрезы и видно результат где видно реальные контуры
колодки(на фото 1 оборот колодки)
Вложения
2d симулятор сканера.GIF (2713 просмотров) <a class='original' href='./download/file.php?id=11385&mode=view' target=_blank>Загрузить оригинал (102.79 КБ)</a>
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение Nick »

gendos писал(а):Колодки масштабируются по размеру только с разными коэффициентами по длине и ширине
Вот фото с экрана симулятора 2D ,где показывается путь фрезы и видно результат где видно реальные контуры
колодки(на фото 1 оборот колодки)
Это можно сделать прямо в Gкоде, просто прописать два параметра scale-x и scale-z и все.
Хотя у тебя станок с поворотной осью... ну по крайней мере по z можно прямо в Gкоде, а x-y можно через скрипт.
gendos писал(а):Вот фото с экрана симулятора 2D ,где показывается путь фрезы и видно результат где видно реальные контуры
колодки(на фото 1 оборот колодки)
В том то и дело, что контур колодки будет не просто радиальный отступ, а слегка другой... :(
gendos
Мастер
Сообщения: 1117
Зарегистрирован: 06 июл 2011, 15:26
Репутация: 81
Настоящее имя: Геннадий
Откуда: Ростов-на-дону
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение gendos »

Nick писал(а):
gendos писал(а):Пробывал изменять цифру 1000 результатов не дало
Это цифра - длинна буфера на частоту не влияет.
Надо делать отдельный поток:
по идее как-то так:
loadrt threads name1=scan-thread period1=25000000

Это помогло .
Спасибо.
Остался пока еще один вопрос. Как обнулять энкодер.Сейчас обнуляю выключением питания платы месса,но это как то не правильно, к тому же иногда (очень часто) при запуске EMC на индекаторе Y(покозания энкодера) появляются
цифры -832 если обнулить координаты на индекаторе ноли , а в файле -832 плюс покозания энкодера.
Приходится по десять раз включать выключать питание (закономерности не могу увидеть)
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение nkp »

encoder.N.reset bit in пробовал ?
gendos
Мастер
Сообщения: 1117
Зарегистрирован: 06 июл 2011, 15:26
Репутация: 81
Настоящее имя: Геннадий
Откуда: Ростов-на-дону
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение gendos »

Нет.
Можно подробнее
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение nkp »

для начала в halshow попробуй сбросить показания
Выделение(012).jpg (2701 просмотр) <a class='original' href='./download/file.php?id=11408&mode=view' target=_blank>Загрузить оригинал (192.6 КБ)</a>
найди свой подобный пин и пропиши внизу как на скрине
нажмии выполнить
то есть установи на пине True
если работает - прицепи его к кнопке на панели или железной
gendos
Мастер
Сообщения: 1117
Зарегистрирован: 06 июл 2011, 15:26
Репутация: 81
Настоящее имя: Геннадий
Откуда: Ростов-на-дону
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение gendos »

В halshow сбросить показания энкодера получилось,дальше пока нет.
Буду завтра пробовать.
gendos
Мастер
Сообщения: 1117
Зарегистрирован: 06 июл 2011, 15:26
Репутация: 81
Настоящее имя: Геннадий
Откуда: Ростов-на-дону
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение gendos »

Вот сделал скан всей колодки.Радиус сканирующего ролика 40 мм.
Думаю как убрать припуск.
Вложения
скан.GIF (2689 просмотров) <a class='original' href='./download/file.php?id=11457&mode=view' target=_blank>Загрузить оригинал (73.35 КБ)</a>
fileскан.zip
(413.06 КБ) 377 скачиваний
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение Nick »

А чего она такая "шероховатая"?

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

Re: Контактный сканер с помощью EMC2

Сообщение Nick »

А можешь выложить модельку в другом формате?
stl, obj или 3ds
gendos
Мастер
Сообщения: 1117
Зарегистрирован: 06 июл 2011, 15:26
Репутация: 81
Настоящее имя: Геннадий
Откуда: Ростов-на-дону
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение gendos »

Nick писал(а):А чего она такая "шероховатая"?

Надо искать cad, который умеет делать offset...

"шероховатая" я думаю нужно подобрать оптимальный scan-thread period1=25000000
или скорость вращения уменьшить.
В stl модельку пришлю
gendos
Мастер
Сообщения: 1117
Зарегистрирован: 06 июл 2011, 15:26
Репутация: 81
Настоящее имя: Геннадий
Откуда: Ростов-на-дону
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение gendos »

Вот stl
Вложения
file2.zip
(3.57 МБ) 401 скачивание
gendos
Мастер
Сообщения: 1117
Зарегистрирован: 06 июл 2011, 15:26
Репутация: 81
Настоящее имя: Геннадий
Откуда: Ростов-на-дону
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение gendos »

Всем привет.
Удалось убрать толщину на диаметр сканирующего ролика 40мм пока только с помощью CAD.
Первый снимок результат.
Второй результат после обрезки лишнего.
Теперь нужно проверять соответствие скана реальным размерам колодки.
Вложения
колодка1.gif (2583 просмотра) <a class='original' href='./download/file.php?id=13592&mode=view' target=_blank>Загрузить оригинал (231.97 КБ)</a>
колодка.gif (2583 просмотра) <a class='original' href='./download/file.php?id=13593&mode=view' target=_blank>Загрузить оригинал (224.9 КБ)</a>
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение Nick »

Сколько оффсет считался? Небось очень долго?
Кстати, а сколько раз в день/на сколько пар обуви делается сканирование?
gendos
Мастер
Сообщения: 1117
Зарегистрирован: 06 июл 2011, 15:26
Репутация: 81
Настоящее имя: Геннадий
Откуда: Ростов-на-дону
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение gendos »

Офсет считается не долго пару минут.Это мне кажется нормально.А вот размер текстого файла координат которое выдает halsampler до 100 мегобайт. хотелось бы ,чтоб он сохранял данные координаты например с шагом 0,1 или 0,01 мм
И еще если бы кто смог подсказать возможно ли построение эквидистанты и stl файла с помощью скрипта
из координат точек.
Колодок в день нужно отсканировать немного.Сканер сканирует колодку 10-15 минут.
Я думаю больше времени прийдется с ней работать в CAD программе ,чтобы она имела нужную сетку и точность,я
еще в этом не разобрался
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение Nick »

То-то и оно, чтобы была ровная сетка надо сканировать через Gкод... через hal sampler можно просто уменьшить количество точек - надо создать дополнительный поток с определенной частотой и засунуть sampler туда. Скинь свой последний конфиг.
gendos
Мастер
Сообщения: 1117
Зарегистрирован: 06 июл 2011, 15:26
Репутация: 81
Настоящее имя: Геннадий
Откуда: Ростов-на-дону
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение gendos »

Nick писал(а):
gendos писал(а):Пробывал изменять цифру 1000 результатов не дало
Это цифра - длинна буфера на частоту не влияет.
Надо делать отдельный поток:
по идее как-то так:
loadrt threads name1=scan-thread period1=25000000
Мы так уже делали. Уменьшать количество данных , таким способом у меня получается,
но на острый гранях колодки точность не достаточна,а на пологих избыточна.Скорость я выбираю по требуемой точности
на острых гранях, а избыточная точность на пологих захламляет файл.Если бы например была бы возможность перед записью координаты в файл ее сравнивать например с 0,1 если больше то записывать,если меньше то пропускать.
Или добавить эту функцию в скрипт при преобразовании полярных координат в обычные
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение Nick »

gendos писал(а):.Если бы например была бы возможность перед записью координаты в файл ее сравнивать например с 0,1 если больше то записывать,если меньше то пропускать
Вот это не так просто и все зависит от того в каком потоке работает sampler...
gendos писал(а):Или добавить эту функцию в скрипт при преобразовании полярных координат в обычные
Это можно попробовать...

скинешь последний скрипт?
gendos
Мастер
Сообщения: 1117
Зарегистрирован: 06 июл 2011, 15:26
Репутация: 81
Настоящее имя: Геннадий
Откуда: Ростов-на-дону
Контактная информация:

Re: Контактный сканер с помощью EMC2

Сообщение gendos »

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

Re: Контактный сканер с помощью EMC2

Сообщение Nick »

Попробуй так:

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

#!/usr/bin/env python

import sys
from math import sin, cos, radians

xl,yl,zl = None,None,None
for l in sys.stdin:
	x,a,r = map(float, l.split())
	x,y,z = x,r * cos(radians(a)), r * sin(radians(a))
	if xl==None or (xl-x)**2+(yl-y)**2+(zl-z)**2 > 0.1**2 :
		print x, y, z
		xl,yl,zl = x,y,z 
Ответить

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