FabScan - это open-source, DIY 3D лазерный сканер. Начало проекта было положено во время разработки бакалаврского проекта Франциска Энгелманна. Официальная страница проекта находится здесь.
На основании этого проекта, разработан аналог, который и рассмотрен в статье. Для бокса используется мдф. Электронная начинка тоже несколько отличается.
Программа для Arduino взята с оригинального проекта. Так что спасибо команде FabScan за отличный open-source 3D сканер!
Детали и узлы, которые используются в этой инструкции:
- Arduino UNO;
- Шаговый двигатель NEMA 17 (200 шагов);
- Драйвер шагового двигателя L298N;
- Модуль лазера на 5 мВт - производитель Red Line;
- Источник питания 12 В - 2 А;
- Веб-камера Logiteck C270;
- Для корпуса надо 4 листа из МДФ. Размеры - 600 мм на 300 мм. Толщина - 5 мм.
Процесс и результат разработки корпуса нашего 3D сканера показаны на фотографиях. Основная сложность - максимально точная установка камеры, модуля лазера и шагового двигателя.
Подключается все предельно просто. Особенно если вы закажете оригинальный шилд.
1. С шилдом.
Установите FabScan шилд на Arduino. Драйвер шагового двигателя A4988 устанавливается на предусмотренные рельсы. Шаговый двигатель подключается к соответствующим контактам на шилде. Модуль лазера подключается к аналоговому пину A4. После этого можете подключать питание и USB кабель. Более детальная иструкция находится здесь.
2. Без шилда.
Если вы решили собрать сканер без использования шилда, подключите драйвер шагового двигателя L298 к контактам 10, 11, 9, 8 на Arduino (в принципе, эти контакты можно изменить с соответствующими правками в скетче). Модуль лазера подключается к пину A4 на Arduino. Все. Можно подключать питание и USB кабель.
Скачайте плагин Codebender с сайта РадиоГИД и нажмите кнопку "Run on Arduino", чтобы прошит ваш Arduino.
Все! Вы загрузили скетч на ваш Arduino напрямую из браузера!
Если вы не использовали шилд, нажмите кнопку Edit и:
Добавьте строки
#include <Stepper.h>
const int stepsPerRevolution = 200; // измените этот параметр, чтобы настроить количество шагов на поворот вала вашего шагового мотора
Stepper myStepper(stepsPerRevolution, 10, 11,8,9);
Замените функцию step():
void step() {
myStepper.setSpeed(1);
myStepper.step(1);
}
В качестве ПО на компьютере Используется образ "FabScan Ubuntu Live DVD". На образе диска залито программное обеспечение FabScan. Можно записать образ на флэш-носитель с помощью Win32DiskImager и использовать его без установки linux os на ваш персональный компьютер.
Следуйте инструкции, фотографии к которой приведены ниже:
- Выберите SerialPort;
- Выберите Camera;
- File - Control Panel;
- Нажмите detect laser (пока что не устанавливайте никаких объектов перед сканером) и выберите 'enable';
- Нажмите "Fetch Frame" и убедитесь, что синяя горизонтальная линия касается вершины вращающегося стола, а желтая горизонтальная линия касается нижней части вращающегося стола. Кроме того, желтая вертикальная линия должна совпадать с центром вращающегося стола. Если камера установлена некорректно, результат сканирования будет не четким!
После настройки закройте окно, установите объект в 3D-сканере и нажмите кнопку Start Scan.
Когда процесс 3Д сканирования завершится, вы сможете сохранить сканированный 3D объект с расширением .pcd или .ply. Можно сохранить и в формате 3D stl файла, но эта возможность доступна не на всех платформах. Открыть сканированный и сохраненный ранее объект можно, выбрав File - OpenPointCloud.
Вы можете использовать MeshLab для обработки сканированного 3Д объекта и распечатать его на 3D принтере!
При обработке файла в MeshLab:
- 1. Убедитесь, что вы сохранили объект как .ply файл.
- 2. Откройте файл с помощью MeshLab.
- 3. В MeshLab рассчитайте нормали (Filters/Point Set/Compute normals).
- 4. После этого перестройте поверхность, используя Poisson reconstruction (Filters/Point Set/Surface Reconstruction: Poisson)
Источник: Arduinо-diy.cоm |
Категория: Проекты на Arduino | Добавлен: 13.06.2016
| Автор: Франциск Энгелманн
| Просмотров: 4673
|