Scanner DIY
Réalisation d'un scanner 3d à balayage laser
Contributeur·ice·s
Statut du projet
Fonctionnel
Statut de la publication
License
CC-by-sa-3.0
Inspiration
Fichiers source
Machines
Matériaux
Lien
Sommaire
Définition
Un scanner 3D mesure le positionnement d'un échantillonnage de points dans un système de coordonnées. Il existe plusieurs technologies pour numériser un objet en 3D. Le projet retient le principe de la triangulation qui utilise la lumière laser pour sonder son environnement. Le point laser, l'appareil photo et l'émetteur laser forment un triangle. L'angle du côté de l'appareil photo peut-être déterminé en regardant l'emplacement du point laser dans le champ de vision de l'appareil photo. Ces trois données déterminent la forme et les dimensions du triangle et donnent la position du point (ou bande) laser.
La technologie de scanner basée sur la triangulation date de 1978.
Objectif
Réaliser un scanner 3D open hardware et open software multi plateforme, ou à défaut, sous linux. Une bonne ergonomie du logiciel de commande sera recherchée pour un accès de l'ensemble au plus grand nombre. Le parti pris technologique est celui du balayage laser, pour des raisons essentiellement économiques, même si d'autres solutions existent. Elle seront abordées à titre documentaire. Il sera recherché une simplification dans les emprunts aux productions existantes.
Méthodologie
Aujourd'hui, il existe déjà des solutions ouvertes très intéressantes, des projets de recherche universitaires, des initiatives personnelles DIY (do it yourself) et bien sûr des produits commerciaux qui sont totalement opérationnels. La méthode de travail à développer est de recenser un certain nombre de ces solutions pour en étudier les caractéristiques et alimenter une réflexion concourante à la mise au point d'un résultat reproductible.
Etat de l'art
SCANNERS à BALAYAGE LASER
a - Les projets aboutis
MakerScanner
MakerScanner utilise la projection d'une ligne laser sur un objet et enregistre sa position par rapport à une surface de référence plane. IL propose la construction et l'assemblage de pièces imprimées en 3D, une camera et un pointeur laser.
Le logiciel possède une interface simple et intuitive. L'ensemble est par ailleurs très bien documenté sur un site dédié (L’existence du site est attribuable à la grandeur d'âme de la marque Makerbot). Le développement du projet semble cependant stoppé, la version du soft est la 0.3.1. Le code source est accessible via http://www.makerscanner.com/files/makerscanner-0.3.1.tar.gz L'édition du nuage de points obtenu est éditable dans un logiciel tiers comme Meshlab pour l'édition et le maillage du scan.
Un projet alternatif a été développé sur la base logicielle Makerscanner - https://www.thingiverse.com/thing:21672
Spinscan
http://www.thingiverse.com/thing:9972
En 2011 Tony Buser publie le Spinscan, un scanner 3D open source basé sur un laser et un appareil photo numérique équipé d'une table tournante.
Ce projet fondateur a inspiré de nombreux autres scanners open source et aurait inspiré le MakerBot®Digitizer.
Fabscan 100
Le projet Fabscan 100 est intéressant à plus d'un titre. Il a commencé par une thèse de septembre 2011 de Francis Engelmann dans le cadre d'un groupe de travail de l'université RWTH Aachen en Allemagne (The Media Computing Group). http://hci.rwth-aachen.de/FabScan
Il pose les bases de la fabrication d'un matériel technologiquement complexe, proposé et conçu comme un produit "Do-It-Yourself" accessible à toute personne ayant un intérêt suffisant pour construire son propre scanner. L'installation utilise une webcam ordinaire, un module laser abordable, un moteurs pas à pas et une carte Arduino Uno dans sa version la plus récente.
Le prototype de 2011 a été modifié en 2014 après la reprise du développement par René Bohne et Mario Lukas. La rotation du module laser, commandé par un moteur pas à pas dans la première version a été supprimé au profit d'un réglage à la main. La webcam utilisée est une logitech C270, le montage le l'ensemble contient moins de vis et l'électronique a été revue. Puis, la partie avant et le montage de la camera ont été modifiés. http://hci.rwth-aachen.de/fabscan2014_front.
Enfin, la dernière évolution corrige la découpe du boitier et porte le nom de FabScan CUBE http://hci.rwth-aachen.de/fabscanCUBE.
Le logiciel mis en oeuvre - FabScan - utilise OpenCV , l'algorithme Powercrust, C ++ et Objective-C. https://github.com/francisengelmann/FabScan100. Il est capable de cartographier un nuage de points en couleur de l'objet, transformer le nuage de points en surface maillée et la convertir en STL, format de fichier de stéréolithographie utilisé entre autres pour l'impression 3D. Aucun logiciel de post-traitement (comme MeshLab) n'est nécessaire, ce qui rend cette solution à la fois simple, compact et autonome.
Un tutoriel est disponible pour la version Linux puis un film décrivant le développement du projet. http://www.mariolukas.de/2014/07/scannen-mit-dem-fabscan/ - http://youtu.be/3Q2Xv1Y1mdU
Un logiciel doté d'une interface très conviviale Simple3DScan à été développé par Wolfgang Schmidt. Il n'existe malheureusement qu'une version Windows pour le moment. http://wolfgangschmidt.info/simple3dscan/
Compilation de FabScan100
Pour obtenir les sources :
git clone https://github.com/francisengelmann/FabScan100.git
La compilation a été faite sur linux fedora21 avec les dépendances déjà résolues
La compilation n'est pas directe :
- L'utilisation de qt-creator facilite les choses
- Il y a des modifications à faire dans le fichier qtTest.pro
Le fichier modifié est ici : Fichier:FabScan100-modifie QtTest.pro
C2scan
Le projet C2scan s'inscrit dans la filiation directe du projet Fabscan. http://c2scan.com/ Il exploite les principes concrétisés par son aïeul, tout en apportant des amélioration qui sont reprises par tous les projets de scanner 3d open source et commerciaux actuels. C2scan incorpore deux modules laser convergeant vers le centre du plateau tournant. Il s'agit maintenant d'un appareil ouvert, donc sans boitier, qui permet une plus grande liberté de manœuvre pour la mise en place des sujets à numériser et le réglage des faisceaux laser. De plus, ce modèle permet la translation verticale motorisée du bloc lasers.
Le logiciel de contrôle sur base Fabscan (Cebscan) a été modifié pour la gestion de la translation verticale du bloc lasers / caméra et le support du double laser.Il gère aussi la désactivation de la mise au point automatique de la camera qui représente un problème pour la numérisation. https://github.com/cebbaker/cebscan/tree/Current
Laser Scanner 3D SkanDal
Ce projet totalement documenté est d'un grand intérêt intérêt pédagogique. C'est un modèle avec 2 Lasers, piloté par des scripts en Python, sous Licence GPL V2, développé par la Labomedia. http://wiki.labomedia.org/index.php/Laser_Scanner_3D_SkanDal Ce modèle exige le recours à un logiciel tiers pour l'édition des nuages de points produits, notamment pour le maillage. Il dispose d'outils de réglage précis pour la position des lasers, de l'axe vertical de la camera, de la position de l'axe moteur. Tous ces paramètres sont ajustables par des sliders dans l'interface logicielle.
Le Laser Scanner 3D SkanDal s'utilise dans une chambre noire pour isoler les lignes laser.
Ciclop 3D Scanner
http://diwo.bq.com/en/presentacion-ciclop-horus/
Avec le projet Ciclop, on entre dans une nouvelle ère de production de scanner 3d de bureau DIY. L'offre matérielle et logicielle est particulièrement bien pensée, la documentation est abondante, l'ensemble est très homogène et professionnel.Le système a été conçu pour calculer les paramètres du scanner internes automatiquement par auto-étalonnage, garantissant ainsi sur chaque modèle assemblé une précision maximum. Cerise sur le gâteau, le logiciel est un modèle d'ergonomie et de simplicité.
Ce modèle, fait indéniablement sortir le scanner 3d personnel des garages des pionniers pour entrer dans une ère industrielle comme l'avait fait avant lui l'imprimante 3d personnelle. A ce titre le produit est proposé dans l'offre commerciale de la société HQ http://www.bq.com/gb/3d-world sous forme de kit à monter. Il reste cependant complètement open source. Tous les fichiers des composants de sa fabrication, les notices de montage et le code du logiciel sont téléchargeables et ouverts. http://www.bq.com/gb/support/ciclop
Ce produit est promis à un bel avenir et permettra à tout les passionnés de 3d de s'équiper à moindre coût d'un matériel libre et évolutif.
ATLAS 3D
ATLAS 3D est open source et open hardware. FreeLSS, le logiciel qui fait fonctionner le scanner a été publié sur Github sous la licence GPL. http://www.freelss.org/ La source des fichiers OpenSCAD pour toutes les pièces 3D imprimés sont pour le moment livrés dans un kit commercial.
Le produit a bénéficié d'une campagne de collecte de fonds pour son lancement. https://www.kickstarter.com/projects/1545315380/atlas-3d-the-3d-scanner-you-print-and-build-yourse/description La grande singularité de ce projet, est de fonctionner de manière autonome et de produire directement des modèles 3d maillés imprimables. Le logiciel fonctionne sur une carte Raspberry Pi, il n'y a donc pas de pilotes ou de logiciels à installer sur un ordinateur connecté en usb. Un navigateur Web est utilisé pour communiquer avec le scanner. Après la numérisation, le navigateur Web est employé pour télécharger les modèles qui en résultent.La solution technologique adoptée permet aussi d'abaisser les coût avec le module camera de 5 mégapixels du Raspberry Pi.
L'interface logiciel est claire et conviviale.
Raptor 3D
A peine mis au point et déjà copié. Le monde de l'open source est sans pitié pour le travail des développeurs et autres inventeurs. Le site reprapuniverse.com met déjà en vente un kit d'assemblage sur le même principe que le projet ATLAS 3D mais avec des pièces usinées à la découpe laser. http://reprapuniverse.com/catalog/raptor3dscanner.php?osCsid=5e7792b0e40ce643b7214dd99b6e6b82
Le résultat est cependant intéressant car il propose un kit d'assemblage complet.
Sardauscan
Le concepteur du Sardauscan, le designer belge Fabio Ferretti, définit son projet comme le "moins cher des scanner 3d de la terre" où "un scanner laser 3d pour moins de 30$". Sous ces appellations racoleuses se cache un projet étonnant, mais sérieux et opérationnel. https://www.thingiverse.com/thing:702470
Le materiel utilisé est un Arduino Nano, 1 à 4 modules lasers, un moteur pas à pas avec son contrôleur et une webcam hercule hd. Les instructions de montage sont disponibles sur l’excellent site instructables.com http://www.instructables.com/id/Build-a-30-laser/.
Le logiciel, écrit en C# et WinForms, est conpilé sur une version de Visual 2010, ce qui le destine aux utilisateurs Windows. Cependant, là encore la surprise est grande de découvrir la qualité de son interface et la richesse des menus.
Ce modèle surprenant représente un outsider de taille face à une offre de solutions grandissante et de plus en plus professionnelle.
b – Les projets en cours de développement, embryonnaires ou inaboutis
Pyscan 3D En cours de développement.
http://www.labfab.fr/portfolio/pyscan3d/
http://diablotronic.free.fr/Pyscan3d/pyscan3d.html
Open3DScanner
https://matthewshotton.wordpress.com/tag/3d-scanner/
Logiciel splinesweep code absent
https://code.google.com/p/splinesweep/
PyLatScan
https://github.com/mvhenten/pylatscan
https://www.flickr.com/photos/57913158@N05/
SCANNERS à LUMIÈRE STRUCTURÉE
Je signale au passage un logiciel très intéressant de scanner à lumière structurée http://www.real3d.pk/3dracs.html
3D underworld de scanner à lumière structurée open-source
Projector-Camera Calibration
http://mesh.brown.edu/calibration/ http://mesh.brown.edu/calibration/software.html Projet interessant de lumière structurée (logiciel sous windows)
SCANNERS IRM
Scanner open source IRM (imagerie par résonance magnétique - IRM) http://www.tricorderproject.org/blog/towards-an-inexpensive-open-source-desktop-ct-scanner/
Analyse et commentaires
Géométrie des châssis
Quatre modèles de scanner sont retenus pour un examen détaillé de leurs caractéristiques dimensionnelles. Le FABSCAN, le C2SCAN, le CICLOP et l'ATLAS 3D.
FABSCAN 100
C2SCAN
CICLOP
ATLAS 3D
Tableau de comparaison
Synthèse
En cours d'élaboration.
Webographie
Généralités:
http://makezine.com/2015/01/15/5-diy-3d-scanners-to-watch/
GNU:
http://www.gnu.org/software/libmicrohttpd/
Electronique:
http://fr.wikipedia.org/wiki/General_Purpose_Input/Output http://fritzing.org/home/ http://fr.wikipedia.org/wiki/Fritzing http://fr.wikipedia.org/wiki/Raspberry_Pi https://www.raspberrypi.org/introducing-raspberry-pi-model-b-plus/
Code: