Непрерывное контактное сканирование
- verser
- Мастер
- Сообщения: 1897
- Зарегистрирован: 21 июл 2013, 22:28
- Репутация: 1282
- Настоящее имя: Сергей
- Откуда: Тбилиси
- Контактная информация:
Непрерывное контактное сканирование
В теме буду выкладывать процесс создания Vers CS - контактного сканера. Под контактным сканером здесь подразумевается не центроискатель (touch trigger probe), одномоментно срабатывающий при касании детали, а аналогово-цифровой контактный сканер (аnalog-to-digital scanning probe), выдающий расстояние, на которое смещается стилус при непрерывном обводе детали, с высокой частотой и точностью в виде потока координат.
Тема трудоемкая, очень рассчитываю на посильную интеллектуальную помощь сообщества. Приветствуются замечания, если общий ход мыслей, на Ваш взгляд, будет идти не туда .
Последний раз редактировалось verser 18 сен 2021, 07:45, всего редактировалось 11 раз.
- verser
- Мастер
- Сообщения: 1897
- Зарегистрирован: 21 июл 2013, 22:28
- Репутация: 1282
- Настоящее имя: Сергей
- Откуда: Тбилиси
- Контактная информация:
Re: Контактное сканирование в linuxcnc
Прежде чем создавать красивый интерфейс, надо бы разобраться какой g-code командой можно сканировать?..
Таких пока нет.
Linuxcnc позволяет определить новые g-code команды из перечня незадействованных. Думаю этим воспользоваться.
Набор новых g-code команд для сканирования (здесь полное раздолье для фантазии), которыми, на мой взгляд, можно отсканировать любые 3D поверхности, не содержащие уступов и полостей, скрытых от вида сверху :
G50.2 сканирование нижней плоскости
G50.4 сканирование боковой плоскости слева
G50.6 сканирование боковой плоскости справа
Эти команды легко запомнить, глянув на расположение цифр и стрелок боковой клавиатуры Например, сканирование боковой плоскости справаозначает "поехать в точку X10 Y10 на скорости F100, при встрече препятствия (стилус начал отклоняться) изменить направление движения так, чтобы препятствие оставалось справа, продолжать двигаться вдоль препятствия, движение при этом автоматически корректируется так, чтобы стилус не отклонялся более 1 мм (к примеру) и менее 0.1 мм. По Z смещаться равномерно от точки касания до точки выхода."
Пока ещё думаю как правильно определять точку выхода для G50.4 и G50.6, если вдруг X10 Y10 окажется недоступна для стилуса (окажется, например, внутри тела заготовки)?
сканирование нижней плоскостиозначает "опуститься по Z на скорости F100 до встречи с препятствием (стилус начал отклоняться), продолжать двигаться в точку X10 Y10, Z автоматически корректируется так, чтобы стилус не отклонялся более 1 мм (к примеру) и менее 0.1 мм."
Команды будут также выполнять главную цель сканирования - формировать облако точек, отображающее поверхность заготовки.
Таких пока нет.
Linuxcnc позволяет определить новые g-code команды из перечня незадействованных. Думаю этим воспользоваться.
Набор новых g-code команд для сканирования (здесь полное раздолье для фантазии), которыми, на мой взгляд, можно отсканировать любые 3D поверхности, не содержащие уступов и полостей, скрытых от вида сверху :
G50.2 сканирование нижней плоскости
G50.4 сканирование боковой плоскости слева
G50.6 сканирование боковой плоскости справа
Эти команды легко запомнить, глянув на расположение цифр и стрелок боковой клавиатуры Например, сканирование боковой плоскости справа
Код: Выделить всё
G50.6 X10 Y10 Z10 F100
Пока ещё думаю как правильно определять точку выхода для G50.4 и G50.6, если вдруг X10 Y10 окажется недоступна для стилуса (окажется, например, внутри тела заготовки)?
сканирование нижней плоскости
Код: Выделить всё
G50.2 X10 Y10 F100
Команды будут также выполнять главную цель сканирования - формировать облако точек, отображающее поверхность заготовки.
Последний раз редактировалось verser 15 окт 2017, 08:42, всего редактировалось 15 раз.
- NKS
- Мастер
- Сообщения: 2516
- Зарегистрирован: 30 окт 2014, 21:36
- Репутация: 1233
- Настоящее имя: Сергей
- Откуда: Волгоград
- Контактная информация:
Re: Контактное сканирование в linuxcnc
G54-G59 заняты, это заданные оператором системы координат.
- NKS
- Мастер
- Сообщения: 2516
- Зарегистрирован: 30 окт 2014, 21:36
- Репутация: 1233
- Настоящее имя: Сергей
- Откуда: Волгоград
- Контактная информация:
Re: Контактное сканирование в linuxcnc
Так гораздо лучше
- dinkata
- Мастер
- Сообщения: 1028
- Зарегистрирован: 05 сен 2014, 09:07
- Репутация: 391
- Настоящее имя: Диньо
- Откуда: Болгария
- Контактная информация:
Re: Контактное сканирование в linuxcnc
Хорошая идея !
На мой взгляд и потребности хочу отправит вопрос :
Будет очень хорошо получат файл которьй можно потом в CAD (SolidWorks например ) преобразоват в 3d модель
На мой взгляд и потребности хочу отправит вопрос :
ГДЕ ? только в Linuxcnc ?verser писал(а):(аnalog-to-digital scanning probe), выдающий расстояние, на которое смещается стилус при непрерывном обводе детали, с высокой частотой и точностью.
Будет очень хорошо получат файл которьй можно потом в CAD (SolidWorks например ) преобразоват в 3d модель
Простите ошибки, я иностранец.У моя клавиатура нету "э" и "ы"
- verser
- Мастер
- Сообщения: 1897
- Зарегистрирован: 21 июл 2013, 22:28
- Репутация: 1282
- Настоящее имя: Сергей
- Откуда: Тбилиси
- Контактная информация:
Re: Контактное сканирование в linuxcnc
Да, это обязательно будет.dinkata писал(а): Будет очень хорошо получат файл которьй можно потом в CAD (SolidWorks например ) преобразоват в 3d модель
Новые g-code команды G50.2, G50.4, G50.6 будут формировать облако точек, а новая красивая программа, похожая на Probe Screen, с названием типа Scanner Screen (под linuxcnc) , используя эти g-code, предоставит возможность в несколько кликов быстро и точно обмерять поверхности и выдавать результаты в CAD формате. Сейчас пока работаю над g-code командами - это фундамент.
- NKS
- Мастер
- Сообщения: 2516
- Зарегистрирован: 30 окт 2014, 21:36
- Репутация: 1233
- Настоящее имя: Сергей
- Откуда: Волгоград
- Контактная информация:
Re: Скоростное контактное сканирование
Было бы неплохо иметь ещё и возможность сравнивать обмерянную модель с теоретическойverser писал(а):предоставит возможность в несколько кликов быстро и точно обмерять поверхности и выдавать результаты в CAD формате
PS: Можно уже начинать разработку манипулятора?
- verser
- Мастер
- Сообщения: 1897
- Зарегистрирован: 21 июл 2013, 22:28
- Репутация: 1282
- Настоящее имя: Сергей
- Откуда: Тбилиси
- Контактная информация:
Re: Скоростное контактное сканирование
Посмотрел PowerInspect.NKS писал(а):Было бы неплохо иметь ещё и возможность сравнивать обмерянную модель с теоретической
обещаю, что конкурентом не буду .NKS писал(а):PS: Можно уже начинать разработку манипулятора?
- NKS
- Мастер
- Сообщения: 2516
- Зарегистрирован: 30 окт 2014, 21:36
- Репутация: 1233
- Настоящее имя: Сергей
- Откуда: Волгоград
- Контактная информация:
Re: Скоростное контактное сканирование
Я так понимаю есть куда стремиться?verser писал(а):Посмотрел PowerInspect.
Надеюсь на диаметрально-противоположное, на сотрудничествоverser писал(а):обещаю, что конкурентом не буду .
- selenur
- Почётный участник
- Сообщения: 4605
- Зарегистрирован: 21 авг 2013, 19:44
- Репутация: 1622
- Настоящее имя: Сергей
- Откуда: Новый Уренгой
- Контактная информация:
Re: Скоростное контактное сканирование
А подскажи размеры сканера
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
-
- Зачётный участник
- Сообщения: 34042
- Зарегистрирован: 04 апр 2010, 19:22
- Репутация: 6192
- Откуда: Казахстан.
- Контактная информация:
Re: Скоростное контактное сканирование
какой принцип действия?verser писал(а):В качестве "подопытного" прибора будет выступать Vers CS - контактный сканер собственного производства, прототип которого появится через пару месяцев.
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
- verser
- Мастер
- Сообщения: 1897
- Зарегистрирован: 21 июл 2013, 22:28
- Репутация: 1282
- Настоящее имя: Сергей
- Откуда: Тбилиси
- Контактная информация:
Re: Скоростное контактное сканирование
Vers CS: корпус Ø32мм L=34мм, хвостовик Ø6мм L=24мм, со стилусом пока не определился.
- verser
- Мастер
- Сообщения: 1897
- Зарегистрирован: 21 июл 2013, 22:28
- Репутация: 1282
- Настоящее имя: Сергей
- Откуда: Тбилиси
- Контактная информация:
Re: Скоростное контактное сканирование
Это пока конфиденциальная информация. Планируемые характеристики можно глянуть пост#45aftaev писал(а): какой принцип действия?
verser писал(а): Некоторые характеристики, закладываемые в Vers CS.
1. Точность 1 мкм.
2. Измеряемые отклонения стилуса в любом направлении до 2 мм.
3. Cкорость канала связи не менее 5 000 пространственных координат в секунду в реальном времени.
4. Цена не более 200$.
-
- Зачётный участник
- Сообщения: 34042
- Зарегистрирован: 04 апр 2010, 19:22
- Репутация: 6192
- Откуда: Казахстан.
- Контактная информация:
Re: Скоростное контактное сканирование
Знаю два варианта:verser писал(а):Это пока конфиденциальная информация.
1. Есть Ренишоу на тензодатчиках который на директе продаю.
2. Ренишоу с ПЗС матрицей.
https://www.youtube.com/watch?v=UMW_4pCekJU
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
- verser
- Мастер
- Сообщения: 1897
- Зарегистрирован: 21 июл 2013, 22:28
- Репутация: 1282
- Настоящее имя: Сергей
- Откуда: Тбилиси
- Контактная информация:
Re: Скоростное контактное сканирование
Выбор способа обмена данными сканер(Vers CS) <--> LinuxCNC.
Vers CS - как три абсолютных линейных энкодера, выдает некие координаты XYZ кончика стилуса. Думаю отправлять их по SPI пачкой из трёх 16-ти рязрядных чисел, максимальная частота отправки таких пачек у прибора - до 10кГц.
LinuxCNC без доп. железа такой поток в реальном времени не обработает.
Доп. железо думаю правильнее не изобретать, а выбрать популярное готовое, например, Mesa 7i92.
Поскольку Vers CS планируется как относительно бюджетное решение для широкого круга пользователей, хотелось бы иметь возможность подключиться к LinuxCNC напрямую,без доп. затрат без доп. железа, ценой потери скорости обмена данными, скажем, до 0.5кГц. Сканировать со скоростью 500 3Dточек в секунду часто может быть тоже вполне достаточно. SPI в этом случае можно подключить напрямую к LPT порту, задействовав 3 пина, считывать биты spi протокола в base-thread, и далее в servo-thread использовать полученные целиком координаты.
Начну с варианта без доп. железа, используя имеющиеся наработки SPI->LinuxCNC of Matt Wortley.
Vers CS - как три абсолютных линейных энкодера, выдает некие координаты XYZ кончика стилуса. Думаю отправлять их по SPI пачкой из трёх 16-ти рязрядных чисел, максимальная частота отправки таких пачек у прибора - до 10кГц.
LinuxCNC без доп. железа такой поток в реальном времени не обработает.
Доп. железо думаю правильнее не изобретать, а выбрать популярное готовое, например, Mesa 7i92.
Поскольку Vers CS планируется как относительно бюджетное решение для широкого круга пользователей, хотелось бы иметь возможность подключиться к LinuxCNC напрямую,
Начну с варианта без доп. железа, используя имеющиеся наработки SPI->LinuxCNC of Matt Wortley.
Последний раз редактировалось verser 21 окт 2017, 19:48, всего редактировалось 1 раз.
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Скоростное контактное сканирование
stm.comp вроде нет в архиве
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Скоростное контактное сканирование
не заметилverser писал(а):В папке l6480 не то?
- Сергей Саныч
- Мастер
- Сообщения: 9116
- Зарегистрирован: 30 май 2012, 14:20
- Репутация: 2858
- Откуда: Тюмень
- Контактная информация:
Re: Скоростное контактное сканирование
Терзают меня смутные сомнения...
Насчет передачи 500 48-битовых сообщений в секунду посредством программного драйвера SPI.
Это ж 24 кбит/сек. А на обработку одного бита тратится минимум два такта base-thread. То есть базовая частота должна быть минимум 48 кГц. Что возможно далеко не на каждом компьютере.
Насчет передачи 500 48-битовых сообщений в секунду посредством программного драйвера SPI.
Это ж 24 кбит/сек. А на обработку одного бита тратится минимум два такта base-thread. То есть базовая частота должна быть минимум 48 кГц. Что возможно далеко не на каждом компьютере.
Чудес не бывает. Бывают фокусы.