3в сканер для замеров детали своими руками

SLS сканер своими руками

Подпишитесь на автора

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

Отписаться от уведомлений вы всегда сможете в профиле автора.

Самый первый вопрос будет к администрации, почему нет рубрики ‘3d-Сканирование’?

Второй вопрос будет к сообществу и продавцам : почему информации об устройствах, которые стоят как пол машины (а в некоторых случаях и дороже) настолько мало в интернете? Если она и существует, то в основном на англоязычных форумах, далеко не каждый человек способен адекватно воспринимать разговорный/сленговый английский. Поэтому я столкнулся прежде всего практически с полным отсутствием информации на этот счет. Частично меня спасла данная статья и я даже спсиался с автором по скайпу и он мне разъяснил достаточно много вещей, но потом он уехал в длительный отпуск и я остался один на один со своим колхозом, который выглядел в первом исполнении вот так:

За основу был взят проектор ACER p1500 имеющий разрешение FullHD, насколько мне известно, то этот проектор используется в некоторых дорогущих сканерах (не будем упоминать названия), штатив для фото/видео аппаратуры, уголок 10*40, вэбка (о ней будет подробнее чуть ниже). Самый доступный софт для всего этого дела это конечно же DAVID, благо есть бесплатная версия с некоторым ограниченным функционалом.

К выбору камеры надо подходить осторожно, прежде всего надо обратить внимание на наличие автофокуса, его не должны быть, либо он должен быть отключаем, либо он должен настраиваться в ручном режиме, именно по последнему пункту я выбрал Defender G-lense hd 720, но, как уже позже выяснилось это был единственный плюс в ней, программная начинка и софт не выдержали даже первого испытания:

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

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

Можете заметить, насколько не родной объектив не гармонирует с корпусом 🙂

А теперь вопросы знатокам, потому как пока я не могу найти логическое объяснение происходящему. Почему при сканировании объекта в 360 градусов в конце можно получить не совпадение сканов:

Я был несколько озадачен данным явлением, конечно пришлось помучатся и найти пока один способ, как это исправить, это тупо разбить скан на две части и каждую подгонять по своему участку, тогда это смещение уходит, но меня терзают смутные сомнения, что может происходить геометрическое искажение объекта в таких случаях, так как неизвестно, какая из точек находится в правильном положении. Вообщем это пока моя главная проблема.

Также я пока не до конца осознал еще одну вещь — можно ли менять в процессе сканирование расстояние до объекта, то есть можно ли проектор ставить к объекту ближе или дальше, или же поднимать над объектом или опускать ниже, чтобы достать до нужных мест при сканировании, вообщем этот вопрос остается открытым.

Вот что получатся с модернизированной вэбкой:

Надо еще конечно играться с настройками, так как они порой сильно влияют на результат.

Ради интереса зашел посмотреть, сколько стоит родная камера David, почти 700 баксов, даже не знаю, есть ли смысл покупать такую камеру, с нынешним курсом это совсем не бюджетно.

Подпишитесь на автора

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

Отписаться от уведомлений вы всегда сможете в профиле автора.

Читайте также:  Вяжем домашние сапожки своими руками

Источник

Создание 3D сканера из вебкамеры, лазера, и еще кучки радиодеталей

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

Первый прототип

Сначала мы решили собрать лазерный дальномер. Сделан он был по мотивам статьи на радиолюбительском форуме. Просто лазерная указка и камера. Для обработки изображений была написана программа на Java. Для одного измерения делались две фотографии: с лазером и без лазера. После их сравнения мы могли однозначно найти лазерную точку. После того, как это заработало, дальномер был установлен на платформу, которая могла вращаться в двух плоскостях. Прежде чем я покажу то, что получилось, нужно предупредить — на летней школе не так много материалов, а потому мы собрали прототип из того, что у нас было:

Камеру видно сразу, а лазер — это тот латунный цилиндрик над ней. Для вращения платформы мы применили два шаговых двигателя, которые в свою очередь были подключены к плате управления на микроконтроллере Atmega32. К ней же подключался лазер. Сама плата соединялась с компьютером посредством USB->UART переходника. Программа на компьютере делала снимки, обрабатывала их, заносила координаты полученных точек в файл и отсылала команды плате управления.

Результат был интересный. Да, мы находили расстояние. Да, мы могли «нацелиться» на любую точку в полусфере над сканером. И радости нашей не было предела. Но когда мы провели оценку времени сканирования этой полусферы, то оно оказалось равным 48 часам. И дело не в камере. И даже не в Java. А в том, что установка была настолько хлипкой, что колебалась после каждого поворота в течение пяти секунд. Приходилось делать измерение, поворачиваться и ждать пять секунд, пока она не перестанет качаться. А вдобавок библиотека для камеры перед каждым снимком включала ее, а затем выключала. На это уходило 1-2 секунды. Но летняя школа заканчивалась, и переделывать было некогда: это была уже ночь перед сдачей проекта. Вернее утро. На следующий день мы представляли наш проект на конкурсе перед научным жюри и неожиданно выиграли. Наверное, именно из-за этой победы мы решили продолжить нашу работу над этим проектом.

Версия два

На самом деле лето закончилось, а учебный год начался. Желание работать пропало. Установку планировали закончить к следующему конкурсу, до которого был целый месяц. Месяц. А потом внезапно три дня. Но за месяц мы решили изменить установку. Собрать ее крепкой, установить на лазерную указку линзу, которая будет создавать лазерную линию. Это позволило бы сканировать сразу 720 точек (в сканере стояла HD камера). Вот только три дня внесли свои коррективы:

Собран второй сканер из визирных пластиковых линеек, клея, малярного скотча и держится только благодаря синей изоленте. Вместо линзы стоит пробирка. На эту пробирку светит зеленый лазер. Отразившийся луч создает на экране более-менее равномерную лазерную полоску. Дальномер закреплен лишь на одном моторе, который вращает его в горизонтальной плоскости. Плату управления заменили на STM32VLDiscovery. Просто STM32 я знаю лучше, да еще и Atmega сгорела, а программатор был давно утерян. Выглядит не очень, зато работает! Колебания уменьшились, а скорость соответственно увеличилась. Но не сильно. Тут был обнаружен очень интересный подвох — китайская лазерная указка включалась не сразу, а плавно увеличивала свою мощность в течение секунды. Таким образом, секунда на колебания, секунда на прогрев лазера, секунда на снимок, а их два. Вот и получаем 4 секунды. Но за одно измерение мы находим расстояние до 720 точек! Выглядел процесс сканирования приблизительно так:

Читайте также:  Инструменты для изготовления ульев своими руками

А результат так:

Картинка выглядит не очень интересно, но кружка была в программе объемной. Можно было посмотреть ее с разных сторон.

А что собственно конкурс? А вот ничего! Мы закончили сканировать все подряд в 4 часа ночи, а в 9 утра на стенде обнаружили, что лазер сгорел. Как оказалось, пока мы несли его из гостиницы к стенду, в него попал дождь, и при включении он сгорел. А выглядит она в нерабочем состоянии так, что поверить в слова «оно работало 5 часов назад» сложно. Мы расстроились. Желание продолжать улетучилось с дымком из лазера. Но все же была собрана…

Третья версия

И собрана она была опять же к конкурсу. Причем к нему мы готовились долго и основательно. Больше недели. И вот результат:

Первое что бросается в глаза — это то, что теперь мы сканируем не область вокруг сканера, а объект, который вращается на платформе. А так же мы достали нужную линзу, собрали все нормально, переписали программу, а еще заменили отладочную плату на самодельную. И еще теперь мы делаем только один снимок на измерение. Лазер достаточно мощный, а линза достаточно хороша для того, чтобы однозначно находить лазер на фотографии. Благодаря этому мы не дожидаемся прогрева лазера — он всегда включен. А еще камеру теперь включаем только один раз. То есть время тратится по большей части на поворот платформы и обработку изображения. В программе добавили меню выбора точности. Время сканирования — от двух до десяти минут. В зависимости от выбранной точности. При максимальной точности получается, что платформа за шаг поворачивается на 0,5 градуса, а расстояние определяется с точностью 0,33 мм. Платформа приводится в движение шаговым мотором через редуктор. Собственно платформа — большой диск, а резиновый валик на валу мотора — маленький. Мотором и лазером управлял микроконтроллер STM32F050F4 через полевые транзисторы. В самом начале статьи как раз скан игрушки, полученный с помощью этого сканера. Так как сканер выдает облако точек в формате .obj, то после триангуляции мы можем напечатать отсканированный объект на 3D принтере, что и видно на той же фотографии. На экране мы можем видеть модель после триангуляции. Никакой ручной работы над моделью не проводилось.

На конкурсе мы победили. А он давал проход на международный конкурс Intel ISEF. А потому мы начали работать над следующим сканером.

Четвертая версия

На данный момент это последняя версия сканера, которую мы собрали. Для сравнения на платформе стоит вторая версия. К разработке четвертого сканера мы постарались подойти со всей основательностью, с какой только могли. Установка была начерчена в САПРе, детали вырезаны лазером, все покрашено, ничего лишнего снаружи не торчит. Изменения: теперь платформа действительно является шестерней. Она вырезана из оргстекла и по краям у нее 652 зубчика. Это решает проблему, которая сильно портила сканы в предыдущем сканере: резиновый валик немного проскальзывал, из-за чего платформа часто поворачивалась не на 360 градусов. Сканы были либо с «вырезанным кусочком», либо с перекрытием. Здесь же мы всегда точно знали насколько повернута платформа. Мощность лазера сделали регулируемой программно. Благодаря этому можно было на ходу менять мощность лазера, избегая засветки ненужных частей при малой освещенности помещения. Для управления всей электронникой решили не разводить новую плату, а просто применить отладочную F401RE-Nucleo. На ней установлен ST-LinkV2.1, который работает отладчиком и USB->UART адаптером.

Точность получилась потрясающая: Угловое разрешение 0.14 градуса. По расстоянию 0,125 мм. Область сканирования представляет собой цилиндр высотой 20 см и диаметром 30 см. Цена всех деталей и резки лазером на момент его создания (май 2014) составляла менее 4000 рублей.

В процессе использования мы всего один раз ставили максимальную точность. Сканирование длилось 15-20 минут. Получили почти 2 миллиона точек. Ноутбук отказался рассчитывать модель из облака точек. Эксперимент больше не повторяли.

Читайте также:  Домик для собак своими руками дома

Заключение

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

Спасибо всем, кто дочитал до конца!

UPD:
Коллега нашел видео о работе сканера, которое мы снимали на ISEF:

Да, большая часть видео не интересная, но в конце моделька на ноутбуке.

Источник

Свой собственный 3D-сканер

Моя цель была сделать полнофункциональный сканер, который сможет делать компьютерные 3d модели.
При этом я не хотел тратить на всё это больше $20. Правда, я не считал стоимость материалов, но всё-равно получилось не дороже $100.

Подготовка

Для того, чтобы найти точки в 3D пространстве, существует несколько способов.

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

Другой способ — использовать 3 плоскости или плоскость и линию.

Как видите, проще всего пользоваться третьим способом, а потом привести его результат к первому.

Однако возникает вопрос, как найти плоскости и её точки?

Как оказалось, первое реализуется аппаратной частью, а второе программным обеспечением.

Аппаратная реализация

Сначала я люблю объяснить основную идею, а затем переходить к реализации. Это поможет вам находить свои собственные решения.

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

Хотя многие используют для этого нахождение краёв тени, я решил пойти другим путём.

Я нашёл у себя очень яркий зелёный лазер (можно использовать лазер от обычной лазерной указки, если у вас нет такого).

Лазер я направил через цилиндрическую линзу, которая превращает его в линию. Эту линию я и использовал для нахождения плоскости. Это отлично работает, но имейте в виду, что размер вашего сканера будет сильно ограничен размерами объектива: мой объектив примерно в треть дюйма в диаметре, и я ограничен сканируемым пространством примерно 2′ на 6″ на 6″. Линзы меньшего размера будут работать лучше, но мне это не нужно.

Корпус

Для начала нам нужно сделать ящик, в котором будет находиться сканер. Низ и задняя стенка ящика сделаны из меламина, боковые стороны из фанеры. После того, как всё было сделано, я решил, что меламин является ненужным: возьмите фанеру и закрасьте её белым цветом. Это сэкономит вам несколько долларов.

Установка лазера


Следующим шагом является установка и крепление лазера.
Я использовал старый кусок дерева. Ролики установлены таким образом, что лазер катится по рельсам в верхней части окна. Там лазер и объектив монтируется так, чтобы плоскость света падала перпендикулярно верхней и нижней части окна.

Установка камеры

Камера должна быть установлена сбоку, выше объекта. Это гарантирует, что лазерная линия будет отклоняться должным образом.
Теперь можно поставить какой-нибудь объект. Я использовал гнома. Посмотрите на камеру, и убедитесь, что лазер заметно отклоняется над объектом. Посмотрите на фотографию ниже, чтобы получить представление о том, что я имею в виду.

Программное обеспечение

Идея, лежащая в основе программного обеспечения, также довольно проста. Есть ряд точек, каждая из которых соответствует пикселю на камере. Фокус в том, чтобы узнать, как перевести точки между двумя пространствами. Как оказалось, это сводится к довольно простым уравнением.

Выполняем сканирование

Пришло время испытать наш сканер!

Сейчас сканируется лишь одна часть объекта — та, которая направлена в камеру. Однако можно доработать сканер.

Дальнейшее развитие

Ещё некоторые идеи, которые можно реализовать.

  • Автоматизация. Matlab, возможно, не лучший выбор в данном случае. Можно написать своё ПО и добавить больше моторчиков.
  • Добавить поворот камеры. Наряду с автоматизацией, это позволит вам сделать полную 3d модель.
  • В идеале, программное обеспечение должно убирать шум.

От переводчика: Если вам нужны исходные коды, то напишите автору оригинального текста.

Источник

Оцените статью