Оглавление:

3D-сканер тела с использованием камер Raspberry Pi: 8 шагов (с изображениями)
3D-сканер тела с использованием камер Raspberry Pi: 8 шагов (с изображениями)

Видео: 3D-сканер тела с использованием камер Raspberry Pi: 8 шагов (с изображениями)

Видео: 3D-сканер тела с использованием камер Raspberry Pi: 8 шагов (с изображениями)
Видео: Механический паук с самонаведением на Raspberry Pi. Проекты Амперки 2024, Июль
Anonim
Image
Image
Кодирование Raspberry Pis
Кодирование Raspberry Pis

Этот 3D-сканер является совместным проектом BuildBrighton Makerspace с целью сделать цифровые технологии доступными для общественных групп. Сканеры используются в индустрии моды, для настройки дизайна одежды, в игровой индустрии для виртуальной реальности и в спортзалах для контроля здоровья. Если они также будут доступны в производственных пространствах, которые предоставляют доступ к инструментам для производства, у них может быть больше возможностей для социальных инноваций.

Я собираюсь использовать сканер, чтобы помочь себе создавать одежду. Для начала я вырезал свою модель с помощью бесплатного программного обеспечения и вырезал из картона манекен портниха, который является моей точной формой тела. Затем я планирую посмотреть, как одежда будет выглядеть на 3D-модели в виртуальной реальности, прежде чем приступить к ее изготовлению.

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

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

По экологическим соображениям мы выбрали PLA для разъемов, напечатанных на 3D-принтере, и картонных трубок для конструкции. Картон легко изменить, если детали не подходят идеально, поэтому из него получается отличный инструмент для создания прототипов, а трубки толщиной 3 мм получаются прочными и жесткими.

Было замечательно работать над этим совместным проектом. Спасибо Артуру Гаю за написание кода и другим членам BuildBrighton, которые приходили и помогали по средам вечером или приходили, когда они были нужны.

Материалами для этого проекта были:

27 Малина Pi Zero W

27 модулей камеры Raspberry Pi

27 нулевых кабелей для камеры Raspberry Pi

27 кабелей USB - Micro USB

20 картонных туб 125 см длиной x 32 мм диаметром с сердечником диаметром 29 мм

8 Заглушки для трубок

PLA нить для 3D-печати

8 крышек от одноразовых пивных бочонков

2 листа А3 3мм, березовая фанера лазерного качества

Преобразователь питания 230 В-12 В (поскольку в Великобритании напряжение сети 230 В)

12 регуляторов мощности CRT 5v

Пластинчатые предохранители и держатели 3 x 30 А

Электрический кабель

Коробка с разъемами на 2, 3 и 5 рычажных проводов.

50 наконечников

Кабельный модем-роутер

сетевой кабель

27 SD-карт (16 ГБ)

Гофрированная карта с одинарными стенками, 5 мм

Самоклеящаяся липучка Velcro® длиной 2 м

4 аккумуляторных блока USB

Мы использовали следующие инструменты:

Компьютер Apple® (программное обеспечение сервера камеры было написано для операционной системы Apple®, но также может работать в Linux)

Компьютер ПК, поскольку Autodesk Remake ™ прекратил поддержку пользователей Mac в середине этого проекта.

Интернет (проводной и беспроводной)

Бесплатная версия Autodesk Remake ™

3д принтер

Лазерный резак

Обжимной наконечник

Резак для кабеля

Режущая пила и ленточная пила

Шлифовальный станок

Шаг 1. Кодирование Raspberry Pis

Этот шаг требует некоторых знаний кодирования с помощью Raspberry Pi.

Установите облегченную версию операционной системы Raspbian на каждый Raspberry Pi и включите камеру и SSH.

Программное обеспечение nodejs предварительно установлено на Raspbian, но может быть устаревшей версией.

Следующие команды обновят его. Примечание: гиперссылка во второй строке кода была автоматически сокращена Instructables®. Полную ссылку для копирования кода можно найти, нажав на нее.

Обновление до узла v7

cd ~ wget https://nodejs.org/dist/v7.9.0/node-v7.9.0-linux-… tar -xvf node-v7.9.0-linux-armv6l.tar.gz cd node-v7.9.0-linux -armv6l / sudo cp -R * / usr / local / sudo reboot # Привести в порядок компакт-диск ~ rm node-v7.9.0-linux-armv6l.tar.gz.gz rm -r node-v7.9.0-linux-armv6l.tar.gz # Обновить NPM sudo npm install -g npm

После установки nodejs загрузите файлы для клиентского программного обеспечения:

cd ~ git clone

Затем установите программное обеспечение, используя следующие команды:

cd 3dCamera

npm install

Протестируйте программное обеспечение, запустив его с помощью следующей команды:

узел app.js

Сохранение программного обеспечения в рабочем состоянии

Запуск программного обеспечения и поддержание его работы - это работа «супервизора». Эта программа обеспечивает постоянную работу программного обеспечения камеры и была установлена с помощью следующей команды:

sudo apt-get install git supervisor

Затем Supervisor был настроен с помощью приложения 3D-сканера путем копирования предоставленного файла конфигурации в окончательное расположение с помощью следующей команды:

cp /home/pi/3dCamera/camera.conf /etc/supervisor/conf.d/camera.conf

Чтобы сообщить супервизору, что нужно определить новый файл конфигурации и начать работу:

sudo supervisorctl перечитать

sudo supervisorctl обновить sudo service supervisor restart

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

Дополнительная опция

Программное обеспечение можно обновить с помощью команды обновления, встроенной в веб-интерфейс пользователя, альтернативой является принудительное обновление при каждой загрузке Raspberry Pi. Для этого замените сценарий запуска по умолчанию на тот, который будет выполнять обновление:

cp /home/pi/3dCamera/rc.local /etc/rc.local

Шаг 2: Настройка сервера камеры

Настройка сервера камеры
Настройка сервера камеры

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

Настраивать

Проверьте, запущен ли узел, открыв окно терминала и набрав:

узел -v

Если узел не установлен, его можно загрузить с NodeJS.

Скачайте файлы

Этот репозиторий необходимо загрузить в папку на компьютере. Это можно сделать с помощью следующей команды:

git clone

Установите зависимости

Они должны быть в новой папке, содержащей загруженный код:

cd 3dCameraServer

npm install

Наконец запустите код

Серверное приложение должно быть запущено с помощью приведенной ниже команды, это запустит сервер websocket на порту 3000 и веб-сервер на порту 8080.

узел server.js

Если все прошло успешно, появится сообщение «Приложение 3D-камеры прослушивает порты 8080 и 3000». Чтобы использовать приложение, откройте браузер и используйте следующий URL-адрес https:// localhost: 8080 /

Использование системы

Сервер использует фиксированный IP-адрес, по которому камеры узнают, куда отправлять фотографии.

Клиентское программное обеспечение ожидает подключения к серверу по IP-адресу 192.168.10.100. Мы используем выделенный маршрутизатор с фиксированным IP-адресом, но чтобы использовать сканер без него, необходимо было бы вручную установить этот IP-адрес. Чтобы упростить задачу, настройте MAC-адрес компьютера на маршрутизаторе, чтобы ему автоматически назначался указанный IP-адрес.

Маршрутизатор представляет собой кабельный модем (не ADSL-маршрутизатор). Это позволяет камерам оставаться в замкнутом состоянии, но также позволяет им подключаться к Интернету для получения обновлений программного обеспечения. Необходимо изменить диапазон DHCP маршрутизатора со значения по умолчанию, чтобы он назначал IP-адреса в диапазоне 192.168.10.1 - 192.168.10.255.

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

Когда клиенты подключились, им можно приказать сделать снимок с помощью кнопки «Сделать фото» в заголовке, которая запускает процесс захвата фотографии, и в течение 30 секунд все они должны отправить изображения обратно на компьютер. Они отображаются в браузере и сохраняются в папке в каталоге установки, находящейся при поиске папки 3dCameraServer.

Код, полученный с GitHub, содержит предварительно созданное изображение, которое будет пытаться подключиться к сети Wi-Fi с именем 3DScanner. Пароль для этого: poppykalayana.

Шаг 3: лазерная резка и 3D-печать

Лазерная резка и 3D-печать
Лазерная резка и 3D-печать
Лазерная резка и 3D-печать
Лазерная резка и 3D-печать
Лазерная резка и 3D-печать
Лазерная резка и 3D-печать
Лазерная резка и 3D-печать
Лазерная резка и 3D-печать

Лазерная резка корпусов Raspberry Pi

Скачали файлы ниже и вырезали:

27 ящиков Pi из гофрированного картона с одинарными стенками толщиной 5 мм. Мы не используем картон с двойными стенками, потому что он может загореться под воздействием лазера.

Соединители для трубок для 3D-печати

Мы напечатали на 3D-принтере следующие файлы: 8 x крестообразных соединений, 4 x T-образных соединений.

и удалил поддерживающий материал плоскогубцами и наждачной бумагой, где это необходимо.

Перспективное планирование пристройки крыши

Эта информация относится к самой базовой версии сканера, который работал. Он создает модель, которая подходит для изготовления манекена для шитья одежды или для 3D-печати головы (программа Autodesk Remake ™ заполняет макушку головы там, где есть зазор). Дополнительные камеры в дополнительных слоях или на потолочных балках позволят сканировать все тело, поэтому для упрощения модернизации сканера верхний слой вертикальных стоек имеет поперечные соединения и короткие удлинительные стойки с торцевыми заглушками. 3D-соединители для крепления опор крыши доступны для загрузки вместе с другими соединениями. Чак Соммервилль создал шестиконечную звезду, размер которой можно было изменять, чтобы использовать ее для соединения полюсов наверху.

Шаг 4: Подключение и тестирование Raspberry Pis

Подключение и тестирование Raspberry Pis
Подключение и тестирование Raspberry Pis
Подключение и тестирование Raspberry Pis
Подключение и тестирование Raspberry Pis
Подключение и тестирование Raspberry Pis
Подключение и тестирование Raspberry Pis

Для этого шага маршрутизатор должен быть включен и подключен к Интернету.

Подключение компьютера к серверу

Подключите компьютер к сети Wi-Fi под названием 3DCamera. Откройте терминал. При появлении запроса введите 3Dcamera и нажмите Enter. В следующем запросе введите 3Dcamera-start и нажмите Enter. Откройте веб-браузер и введите https:// localhost: 8080 / в адресной строке, чтобы открыть панель управления.

Тестирование малиновой писи

Используя кабель камеры, подключите камеру к Raspberry Pi. Подключите Raspberry Pi к источнику питания 5 В (например, компьютеру) с помощью кабеля micro USB. Через несколько минут Raspberry Pi должен подключиться к системе и появиться на панели управления с автоматически назначенным именем персонажа Marvel. проверьте, работает ли Raspberry Pi. В столбце «Статус» на панели управления должно быть указано, когда выполняется съемка и отправка фотографии, а затем фотография должна отображаться в верхней части панели управления. Если это не работает, проверьте, правильно ли подключена камера и на Pi горит зеленый свет, и попробуйте еще раз.

Фотографии автоматически сохраняются в папке «Изображения», которая находится внутри папки 3dCameraServer, созданной на предыдущем шаге.

Сборка корпусов Raspberry Pi

Мы склеили 5 слоев картонного корпуса Pi вместе, вставив Raspberry Pi со слоем 2, сложив камеру на месте на слое 3, которое удерживается на месте слоем 4, и протолкнули линзу на слой 5. Это было повторено для все камеры.

Маркировка малинового писа

На панели инструментов мы заменили имя персонажа Marvel, присвоенное каждому Пи, введя число в текстовое поле и нажав Enter.

Для устранения неполадок полезно написать номер на корпусе каждого Пи.

Повторите этот процесс для каждого Raspberry Pi, присвоив каждому другой номер.

Шаг 5: Подготовьте конструкцию и электрическую схему

Подготовьте конструкцию и электрическую схему
Подготовьте конструкцию и электрическую схему
Подготовьте конструкцию и электрическую схему
Подготовьте конструкцию и электрическую схему
Подготовьте конструкцию и электрическую схему
Подготовьте конструкцию и электрическую схему

Подготовка

Картонные трубки были разрезаны и подготовлены на следующие длины:

6 трубок по 80 см для основания стоек с отверстием 1,2 см на расстоянии 2 см от одного конца

6 трубок по 40 см для средней стойки

6 трубок по 10 см для верхних стоек с крышками на одном конце

Трубки 10 x 125 см для турников с отверстием 0,5 см посередине

2 трубки по 125 см для отдельно стоящих стоек на липучке, куда будут помещаться Raspberry Pis и батареи

Проводка

Предупреждение: не пытайтесь подключиться к электрике, если у вас нет соответствующей квалификации. Мы не предоставляем все подробности о проводке, потому что они предназначены в качестве примера того, как мы это сделали, а не как инструкции, которым нужно следовать. Ошибки могут сжечь Raspberry Pi, вызвать возгорание или поражение электрическим током!

Совет: мы обнаружили, что камеры, расположенные дальше по линии, не работают, когда мы последовательно соединили их вместе, поэтому мы подключили 3 предохранителя к 3 отдельным цепям от источника питания 12 В с 4 регуляторами по 5 В. Каждый из них может питать до 3 нулей Raspberry Pi. Это означало, что у нас было по 2 электрических кабеля, идущих к каждому полюсу, с возможностью подключения 6 выводов для камер. Нам нужно было всего четыре для головы и плеч, но было бы полезно иметь дополнительную емкость, чтобы добавить больше камер для других целей.

Мы отрезаем большой USB-разъем на конце 22 USB-кабеля и обрезаем 6 из них короче, примерно до 30 см. Затем, игнорируя любые провода для передачи данных, мы прикрепили наконечники к концам проводов питания и заземления.

Взяв короткие выводы, мы вставили по одной паре наконечников в каждый из 12 разъемов, напечатанных на 3D-принтере, до тех пор, пока провод не вышел из нижнего конца.

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

Изготовление и электромонтаж оснований

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

Мы горячим образом приклеили кольцо к верхней и нижней части винтовой части в середине крышки пивного бочонка, повторив то же самое со второй крышкой. Затем мы поставили столб 125 см в каждом и прикрепили камеру к верхней части каждого столба с помощью липучки Velcro®.

и еще на 40 см ниже. Мы подключили аккумуляторную батарею USB к каждой камере и прикрепили аккумулятор к стойке с помощью липучки, где доходит провод.

Базовые посты

Для остальных 6 крышек мы взяли по 2 фанерных кольца для каждой и приклеили их горячим клеем, сверху и снизу всех компонентов. В промежутке между кольцами каждого из них были 2 регулятора на 5 В, кабели и их разъемы, к которым мы прикрепили кабель 2 x 80 см и вставили оба кабеля через отверстие 1,2 см вверх по трубке. Все компоненты плотно прилегали к опоре, которую мы поставили в центре.

Они, наверное, выглядели бы лучше раскрашенными!

Шаг 6: Постройте структуру и электрическую схему

Постройте структуру и электрическую схему
Постройте структуру и электрическую схему
Постройте структуру и электрическую схему
Постройте структуру и электрическую схему
Постройте структуру и электрическую схему
Постройте структуру и электрическую схему

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

Затем мы создали раму для камер, прикрепив картонные трубки к разъемам, напечатанным на 3D-принтере, пропустив выступающие провода с прикрепленными наконечниками через полюса к опорным стойкам и прикрепив рычажные соединители проводов в верхней части каждой опорной стойки перед закреплением. секции рамы на месте.

Затем мы подключили камеры к микро-USB на полпути вдоль каждой горизонтальной полосы. Картонный футляр для Pi был разработан таким образом, что USB-порт частично скрыт внутри, а другая часть USB-порта может быть слегка вдавлена в картонную трубку, так что камера находится заподлицо на вершине штанги. USB удерживает его на месте.

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

Затем мы разместили свободно стоящие вертикальные стойки камеры на равном расстоянии друг от друга через проем.

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

Есть одна запасная камера на случай, если какая-то перестанет работать.

Шаг 7. Сделайте фотографии

Делать фотографии
Делать фотографии

Чтобы использовать сканер, встаньте или сядьте внутри рамы прямо посередине.

Попросите кого-нибудь нажать «Сделать фото» на панели управления. Все фотографии должны быть сделаны в один и тот же момент, но поскольку сигнал передается по Wi-Fi, иногда у одного или нескольких есть небольшая задержка. Так что оставайтесь неподвижными в течение нескольких секунд, пока все фотографии не будут отправлены.

Фотографии будут сохранены в папке изображений в папке 3DCameraServer.

Советы по созданию хороших фотографий см. В этом видео.

Шаг 8: преобразовать фотографии в 3D-модель

Обработка фотографий в 3D-модели
Обработка фотографий в 3D-модели
Обработка фотографий в 3D-модели
Обработка фотографий в 3D-модели
Обработка фотографий в 3D-модели
Обработка фотографий в 3D-модели

Следующие инструкции относятся к Autodesk Remake ™ (версия 17.25.31). Это бесплатный продукт, но я считаю, что бесплатного режима вполне достаточно. Вот список дополнительных программ для сшивания фотографий.

Настройка

Создайте учетную запись Autodesk®

Установите Autodesk Remake ™ на компьютер

Превращение фотографий в 3D-модель

Перенесите фотографии с компьютера Mac на ПК с помощью USB-накопителя или загрузите фотографии в облачное хранилище Autodesk®, называемое A360 Drive, используя данные для входа в учетную запись Autodesk®.

Откройте Autodesk Remake ™

Нажмите кнопку камеры под Create 3D.

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

На следующем всплывающем экране выберите «Выбрать фотографии из: Локальный диск», если вы передали фотографии на ПК через USB-порт, или нажмите «Диск A360», если вы загрузили фотографии.

Выберите фотографии и нажмите "Открыть".

Когда все фотографии появятся на экране, нажмите «Создать модель».

В появившемся меню «Параметры» введите имя в текстовое поле. Выберите Качество: Стандартное, Автообрезка: Выкл. И Смарт-текстура: Выкл. (Или поэкспериментируйте с этими настройками).

Обработка

Экран вернется к панели инструментов Remake ™, и в My Cloud Drive появится окно с прогрессом вашей модели. По нашему опыту, обработка занимает около 10 минут, но может показаться, что он перестал отвечать, потому что процент перестанет увеличиваться, а затем, через некоторое время, число внезапно увеличится. Когда обработка будет завершена, вы получите электронное письмо от Autodesk®.

Когда в поле появится надпись «Готово к загрузке», наведите указатель мыши на поле, и появится синяя стрелка загрузки. Щелкните синюю стрелку и выберите место для сохранения модели.

Затем модель загрузится и появится в разделе «Мой компьютер» на панели инструментов Remake®. Щелкните по нему, чтобы открыть.

Постобработка

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

Используйте инструменты выбора, чтобы удалить ненужные части модели, выбрав части и нажав Удалить.

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

Если модель перевернута, перейдите на вкладку «Параметры модели» в левой части экрана и следуйте настройкам в разделе «Установить вертикальное положение сцены».

Чтобы сделать плоскую поверхность для вашей модели, перейдите в Edit - Slice & Fill.

Чтобы проверить наличие дыр и исправить, перейдите на вкладку «Анализ» и нажмите «Выявить и исправить проблемы модели».

Экономия

Чтобы сохранить модель, перейдите в Экспорт - Экспорт модели.

Чтобы создать видео вращения вашей модели, перейдите в Экспорт - Экспорт видео.

Рекомендуемые: