IMA4 2017/2018 P67 : Différence entre versions

De Wiki de Projets IMA
(Semaine 7)
(Présentation générale)
Ligne 7 : Ligne 7 :
 
==Objectifs==
 
==Objectifs==
  
L'objectif de ce projet et de réaliser un''' scanner 3D''' permettant de modéliser un objet existant, en '''fichier .STL '''exploitable par une '''imprimante 3D'''. L'idée étant de laisser ce scanner à disposition des élèves, au''' Fabricarium '''de l'école.
+
L'objectif de ce projet est de réaliser un''' scanner 3D''' permettant de modéliser un objet existant, en '''fichier .STL '''exploitable par une '''imprimante 3D'''. L'idée étant de laisser ce scanner à disposition des élèves, au''' Fabricarium '''de l'école.
  
 
==Description==
 
==Description==
Ligne 14 : Ligne 14 :
 
Les logiciels de modélisations sont de plus en plus nombreux et de plus en plus accessibles aux non initiés ( par exemple le logiciel de modélisation fourni avec Windows 10). Toutefois, la conception et la '''modélisation d'objets complexes''' du quotidien, est parfois '''délicate et chronophage'''.  
 
Les logiciels de modélisations sont de plus en plus nombreux et de plus en plus accessibles aux non initiés ( par exemple le logiciel de modélisation fourni avec Windows 10). Toutefois, la conception et la '''modélisation d'objets complexes''' du quotidien, est parfois '''délicate et chronophage'''.  
  
Tout comme une photocopieuse, l''''idée du projet et de « photocopier » un objet'''.
+
Tout comme une photocopieuse, l''''idée du projet est de « photocopier » un objet'''.
 
L'objectif principal sera de scanner l'objet et d'ensuite le sauvegarder en format STL sur une carte SD ou dans un dossier. Les logiciels qui permettent d'imprimer en 3D, comme CURA par exemple, ont plusieurs fonctions qui permettent des modifications (d'échelle notamment), à partir du fichier STL. Ainsi, l'utilisateur pourra modifier quelques paramètres de son objet avant de le dupliquer.
 
L'objectif principal sera de scanner l'objet et d'ensuite le sauvegarder en format STL sur une carte SD ou dans un dossier. Les logiciels qui permettent d'imprimer en 3D, comme CURA par exemple, ont plusieurs fonctions qui permettent des modifications (d'échelle notamment), à partir du fichier STL. Ainsi, l'utilisateur pourra modifier quelques paramètres de son objet avant de le dupliquer.
  
Pour ce faire, il existe deux méthodes (voir même trois).
+
Pour ce faire, il existe deux méthodes (voire même trois).
En effet, il existe le scan via '''technologie laser '''(capteur de distance), le scan via utilisation d'une '''caméra permettant de créer un nuage de points via un émetteur laser infrarouge et un récepteur infrarouge''' (type kinect), et enfin la '''photogrammétrie'''. Les deux premières techniques seront exploités et nous essaierons de les mêler afin d'obtenir le meilleur scan possible en combinant les avantages des deux méthodes sans en avoir les inconvénients.
+
En effet, il existe le scan via '''technologie laser '''(capteur de distance), le scan via utilisation d'une '''caméra permettant de créer un nuage de points via un émetteur laser infrarouge et un récepteur infrarouge''' (type kinect), et enfin la '''photogrammétrie'''. Les deux premières techniques seront exploitées et nous essaierons de les mêler afin d'obtenir le meilleur scan possible en combinant les avantages des deux méthodes sans en avoir les inconvénients.
  
 
Une attention toute particulière sera apporté à la tenue à jour de l'avancement du projet. Effectivement, l'ensemble des membres du '''Fabricarium '''doit pouvoir connaître l'avancement exacte du projet, qu'il s'en intéresse de près ou de loin.
 
Une attention toute particulière sera apporté à la tenue à jour de l'avancement du projet. Effectivement, l'ensemble des membres du '''Fabricarium '''doit pouvoir connaître l'avancement exacte du projet, qu'il s'en intéresse de près ou de loin.
  
Ensuite selon la complexité demandée et l'avancement du projet, il sera possible de l'améliorer avec différentes options.
+
Ensuite, selon la complexité demandée et l'avancement du projet, il sera possible de l'améliorer avec différentes options.
 
La première étant de corriger automatiquement le scan avant son rendu en fichier STL. En effet, si par exemple le support de l'objet est scanné, il faut en faire abstraction. Les trous, bien qu'en nombre limité, seront sûrement présents pour les objets complexes, il faudra alors les combler. Cette tâche peut être réalisée manuellement mais il convient qu'il serait plus agréable et pratique pour l'utilisateur, que le scanner s'en charge automatiquement.
 
La première étant de corriger automatiquement le scan avant son rendu en fichier STL. En effet, si par exemple le support de l'objet est scanné, il faut en faire abstraction. Les trous, bien qu'en nombre limité, seront sûrement présents pour les objets complexes, il faudra alors les combler. Cette tâche peut être réalisée manuellement mais il convient qu'il serait plus agréable et pratique pour l'utilisateur, que le scanner s'en charge automatiquement.
 
Ensuite, il pourrait être utile de lier directement le scanner et l'imprimante. Afin de ne pas avoir à transférer la carte SD d'une machine vers l'autre, encore une fois pour des raisons pratiques.
 
Ensuite, il pourrait être utile de lier directement le scanner et l'imprimante. Afin de ne pas avoir à transférer la carte SD d'une machine vers l'autre, encore une fois pour des raisons pratiques.
Puis, il serait intéressant que le fichier scanné puisse également s'enregistrer dans un format modifiable par un logiciel de modélisation. Par exemple une tasse avec une anse cassée, pourrait être rapidement réparé (qu'on scanne ou non la anse).
+
Puis, il serait intéressant que le fichier scanné puisse également s'enregistrer dans un format modifiable par un logiciel de modélisation. Par exemple une tasse avec une anse cassée, pourrait être rapidement réparée (qu'on scanne ou non l'anse).
 
Enfin, la version la plus aboutie du projet serait d'ajouter une interface graphique au scanner afin de pouvoir faire toutes les étapes précédentes facilement et de manière agréable.
 
Enfin, la version la plus aboutie du projet serait d'ajouter une interface graphique au scanner afin de pouvoir faire toutes les étapes précédentes facilement et de manière agréable.
  

Version du 11 mars 2018 à 15:01


Présentation générale

Objectifs

L'objectif de ce projet est de réaliser un scanner 3D permettant de modéliser un objet existant, en fichier .STL exploitable par une imprimante 3D. L'idée étant de laisser ce scanner à disposition des élèves, au Fabricarium de l'école.

Description

A l'heure actuelle, l'idée de duplication et de clonage d'objet est en pleine extension. En effet, les futuristes s'accordent à dire que l'imprimante 3D sera disponible dans les habitations au même titre qu'une imprimante classique papier, d'ici quelques années. Que ce soit pour de la vaisselle, des jouets ou encore de la décoration. Les logiciels de modélisations sont de plus en plus nombreux et de plus en plus accessibles aux non initiés ( par exemple le logiciel de modélisation fourni avec Windows 10). Toutefois, la conception et la modélisation d'objets complexes du quotidien, est parfois délicate et chronophage.

Tout comme une photocopieuse, l'idée du projet est de « photocopier » un objet. L'objectif principal sera de scanner l'objet et d'ensuite le sauvegarder en format STL sur une carte SD ou dans un dossier. Les logiciels qui permettent d'imprimer en 3D, comme CURA par exemple, ont plusieurs fonctions qui permettent des modifications (d'échelle notamment), à partir du fichier STL. Ainsi, l'utilisateur pourra modifier quelques paramètres de son objet avant de le dupliquer.

Pour ce faire, il existe deux méthodes (voire même trois). En effet, il existe le scan via technologie laser (capteur de distance), le scan via utilisation d'une caméra permettant de créer un nuage de points via un émetteur laser infrarouge et un récepteur infrarouge (type kinect), et enfin la photogrammétrie. Les deux premières techniques seront exploitées et nous essaierons de les mêler afin d'obtenir le meilleur scan possible en combinant les avantages des deux méthodes sans en avoir les inconvénients.

Une attention toute particulière sera apporté à la tenue à jour de l'avancement du projet. Effectivement, l'ensemble des membres du Fabricarium doit pouvoir connaître l'avancement exacte du projet, qu'il s'en intéresse de près ou de loin.

Ensuite, selon la complexité demandée et l'avancement du projet, il sera possible de l'améliorer avec différentes options. La première étant de corriger automatiquement le scan avant son rendu en fichier STL. En effet, si par exemple le support de l'objet est scanné, il faut en faire abstraction. Les trous, bien qu'en nombre limité, seront sûrement présents pour les objets complexes, il faudra alors les combler. Cette tâche peut être réalisée manuellement mais il convient qu'il serait plus agréable et pratique pour l'utilisateur, que le scanner s'en charge automatiquement. Ensuite, il pourrait être utile de lier directement le scanner et l'imprimante. Afin de ne pas avoir à transférer la carte SD d'une machine vers l'autre, encore une fois pour des raisons pratiques. Puis, il serait intéressant que le fichier scanné puisse également s'enregistrer dans un format modifiable par un logiciel de modélisation. Par exemple une tasse avec une anse cassée, pourrait être rapidement réparée (qu'on scanne ou non l'anse). Enfin, la version la plus aboutie du projet serait d'ajouter une interface graphique au scanner afin de pouvoir faire toutes les étapes précédentes facilement et de manière agréable.

Cette duplication rapide et accessible gratuitement permettra aux étudiants de l'école de dupliquer leur objets facilement.

Analyse du projet

Il existe déjà plusieurs techniques permettant de scanner des objets. Parmi elles, trois sont assez pratiquées mais contiennent toutes des inconvénients non négligeables.

Analyse du premier concurrent

FabScanPi
Result3d.jpg

La détection des contours de l'objet par un détecteur de distance laser est la technique la plus répendue pour les utilisateurs non professionnels. L'idée est d'utiliser un faisceau laser projeté sur l'objet de manière verticale. Ce faisceau est alors analyser par le capteur. L'avantage de ce système est que les points du faisceau laser ne se dilate pas avec la distance. L'objet est ensuite mis en rotation sur l'axe verticale afin d'en faire le contour complet. L'ensemble de ces données de distance est alors enregistré sur une carte SD. Un logiciel permet ensuite d’exploiter toute les sauvegardes en un fichier STL. Le scan est stable et correct.

Cependant, la précision du rendu laisse à désirer. En effet, ce type de scanner permet de contenter les utilisateurs ne cherchant pas un résultat professionnel mais est loin de convenir dans le cadre d'une reproduction fidèle. Un scanner de ce type est disponible en open source : le FabScanPI. De plus ce type de scanner ne prend pas en compte la vison vue du « haut » de l'objet. Une tasse serait alors représentée comme étant un cylindre plein (pour le contenant) avec un disque encastré dedans (correspondant à la anse).

Analyse du second concurrent

Kinect.jpg

Il existe ensuite la possibilité de scanner avec une caméra qui créer un nuage de points en 3D. Le principe est sensiblement le même que celui expliqué précédemment mais dans un environnement en 3 dimensions. La caméra envoie des ondes qui seront ensuite réfléchies sur l'environnement extérieurs et analysées par le capteur présent sur la caméra. Cette technique présente comme avantage de pouvoir ajouter la couleur au scanner grâce à la caméra (ce qui ne nous importe pas vraiment dans le cas d'une duplication d'objet, mais éventuellement dans celui d'une modification par logiciel de modélisation). Il est possible de déplacer la caméra et ainsi de scanner des objets plus grands (pièce à vivre, habitation, etc). Il est alors possible de survoler nos objets et d'en détecter les éventuelles complexités (comme la tasse évoquée juste avant) Cependant la présence de « bruits » comme les trous ou les mauvais scan, sont ainsi plus présents . De plus, la caméra scanne tout l’environnement de part sa puissance. Les murs de la pièces, le support etc... tout est scanné. Contrairement à la technique précédente, il ne suffit plus de « descendre » le fichier scanné à un axe en z=0 pour supprimer le support. En effet ici, le scan s'étant réalisé avec une mobilité de la caméra, l'objet scanné ne donne pas forcément un scan droit. Une retouche est alors nécessaire pour corriger les défauts du scan. Enfin ce type de scanner utilisant cette technologie est très onéreux.

Cependant il existe une caméra peu chère que la communié s'est accaparé. La caméra qui nous intéresse est la kinect. Effectivement, cette caméra, originalement prévue pour l'utilisation avec la console de salon Xbox 360 de Microsoft, est désormais complètement « Reverse Engineered » et la communauté peut désormais utiliser la caméra pour des projets comme le notre. Son faible coup et son abondance sur les marché permettent un accès à une technologie précise, à moindre coup. Il est conseillé de la programmer en C#, mais ceci n'est pas indispensable. Des logiciels tels que Skanect ou Kinect-Fusion, totalement openSource, permettent de retoucher les scans faits avec la caméra de manière assez simple et de les rendre sous forme STL.

Analyse du troisième concurrent

Homme scanné via photogrammetrie
Femme.jpg

Enfin il existe aussi la technique de photogrammétrie. L'idée est de prendre une centaine de photos d'un objet avec un appareil photo puissant, comme un reflex. Ensuite un logiciel payant (environ 40 euros par mois) vous permet de « build » votre objet sous forme de fichier STL après plusieurs heures de traitement. Ce système est donc onéreux et chronophage. Il ne sera donc normalement pas exploité dans ce projet, cependant je tenais à l'évoqué car il constitue à l'heure actuelle, la façon la plus précise et la plus « simple » de scanner un objet. Le coté pécuniaire étant sont seul très gros inconvénient.


Il faut noter que toutes ses méthodes ont une limite communes : le transparent ! Un verre de lunettes ne permettra pas pas un scan précis, de par le phénomène de réflexion. Il faut alors peindre l'objet avec de la peinture temporelle pour pouvoir le scanner. Ce qui n'est pas pratique.

Positionnement par rapport à l'existant

L'idée va ainsi être de tester les techniques évoquées précédemment et essayer de les combiner afin d'obtenir un système qui combine les avantages des systèmes sans en avoir les inconvénients. Afin d'en faciliter l'utilisation par un étudiant Lambda.

Le but de mon projet de Scanner 3D est d'être accessible facilement et gratuitement, par tous, via le fabricarium de l'école. La tenue à jour de l'avancement du projet est essentielle dans l'élaboration du scanner. Le wiki servira de point d'avancement pour toutes les personnes voulant s'intéresser de près ou de loin au projet. Afin de limiter les coûts et de conserver le maximum de qualité du scan, je vais utiliser la caméra kinect. Cette dernière sera mise en rotation à 360 degrés, via un système de moteurs, autour d'un objet à scanner en position fixe. Cette caméra montera le long d'un bras incurvé en forme d'arc de cercle. Une fois arrivée en haut elle aura scan l’intégralité de la pièce sous tous les points de vue d'une demi sphère (l'hémisphère sud n'étant pas exploitable à cause du support). Ensuite je tenterai de modifier un logiciel existant via api ou documentation, pour qu'il fasse exactement ce que je veux, afin de paramétrer au mieux le build et d'optimiser le rendu du fichier STL. Ce système stable limitera le bruit d'un mouvement de caméra (avantage du concurrent 1) avec la qualité de scan du concurrents 2.

Enfin, le projet sera suivi par l'équipe des FabManagers que je formerai une fois le scanner réalisé (et tout au long de son élaboration). Je mettrai aussi une documentation papier et informatique pour quiconque souhaitant en apprendre plus sur le système et/ou l'améliorer par la suite.

Ce scanner 3D serait donc un projet d'un étudiant fait pour les étudiants afin de leur permettre de dupliquer leur objets, dans quelques but que ce soit.

Scénario d'usage du produit ou du concept envisagé

Imaginons Bill, un étudiant en MECA3, tout récemment arrivé à Polytech en début d'année. Il a peu de revenu et souhaite limiter au maximum ces dépenses mensuelles.

Pourtant, un soir, un peu trop énervé après un examen de thermodynamique il ouvre son réfrigérateur un peu trop violemment et casse la poignée en deux. Impossible pour lui de la réparer car elle est fendue en deux et le point de colle qu'il a mis ne suffit pas. Une poignée de frigo ça ne se trouve pas si facilement ! Puis c'est un vieux qu'il avait récupéré de sa famille. Impossible de retrouver une poignée neuve. Devrais-t-il renoncer à ouvrir son garde manger réfrigérant ? Non !

Comme tous les étudiants de Polytech Lille, il a accès au Fabricarium de l'école. Après avoir pris connaissance de l'existence d'un scanner 3D à l'école, il décide de se renseigner sur son utilisation via la documentation mise à disposition des élèves. Comme toutes machines du Fabricarium, il se fait formé à son utilisation par un des membres du Fabricarium.

Il place donc sa poignée, rafistolée vulgairement avec un point de colle, dans le scanner. Quelques minutes plus tard, il dispose d'un fichier STL, de la forme de sa poignée de réfrigérateur. Il lance donc l'impression du fichier sur l'imprimante 3D du FAB. Le soir même, Bill peut de nouveau utiliser son réfrigérateur comme au premier jour.

Il se dit que cet outil est vraiment utile et qu'il serait utile d'en profiter ! Il duplique alors sa coque de téléphone . Il met ce fichier STL sur un drive. On ne sait jamais ! Peut être qu'un jour il oubliera sa coque de téléphone chez ses parents, et il sera bien heureux de pouvoir en réimprimer une identique le moment voulu, lorsque son pauvre portable sera nu, sans défense. En plus les imprimantes 3D se démocratise de plus en plus. Il y en a dans les bureaux de postes, dans les magasins de type LeroyMerlin, chez des particuliers, etc... ça ne devrait pas être trop difficile de trouver un endroit ou imprimer ce dont il a besoin.

Ensuite, dans l'année, après avoir découper une pièce de bois, il l'a travaillé avec minutie afin d'en faire un axe complexe, contenant une roue demi crantée. La pièce est parfaite pour son projet en cours de dynamique du solide. Il utilise alors le scanner pour faire une sauvegarde de cet axe avant de le retravailler et éventuellement le modifier de façon irréversible.

Et c'est ainsi que Bill a également pu se faire un deuxième porte manteau mural, lui qui en avait qu'un seul, pour son manteau d'hiver . Ou encore, en utilisant la même méthode, il a pu dupliquer sa petite figurine Pikachu qu'il avait étant enfant.

En ouverture, on peut supposer que ce système de scanner devienne de plus en plus développé. Au point d'être utilisé par les entreprises. Imaginez qu'une pièce du meuble de Bill casse ! Alors IKEA qui possède une base de donnée de fichier scannés de ses meubles, lui envoie le fichier STL à imprimer, pour son pied d'étagère Shtomël ! Ce scanner à donc permis de faciliter la vie des étudiants de Polytech Lille. Comme ce fut le cas pour Bill, le scanner a permis de dupliquer des objets et d'en faire des copies sous forme de fichier STL, que ce soit dans un but ludique, utile, ou dans le cadre d'un projet d'études.

Réponse à la question difficile

Les deux questions qui me durent posées lors de la première présentation étaient : "Jusqu'à quelle taille d'objet pouvons nous scanner ?" ainsi que "Combien de temps durera un scan ?"

Selon les différentes dispositions auxquelles j'ai pensé lors de l'élaboration d'un "prototype" sur papier, la taille de l'objet à scanner devrait être au maximum d'environ 30 cm cube et de minimum 3 cm cube pour avoir un scan précis. Pour ce qui est du temps du scan (hors temps d'impression du fichier STL), il devrait être de moins d'environ 5 minutes pour être considéré comme efficace.

Préparation du projet

Le projet sera amené à évolué dans le temps, en fonction des réussites, des échecs et de ce que le Fabricarium souhaite ou non.


Cahier des charges

Le scanner devra être le plus simple possible d'utilisation ! Il devra permettre dans un premier temps, de remplir l'objectif principal : permettre de pouvoir réimprimer une pièce en 3D, le plus fidèlement possible par rapport à la pièce d'origine. Peu importe la technique utilisée. La suite de ce projet consistera à améliorer ces différents scans et optimiser la duplication des objets pour le rendre accessible au non initiés. L'objet scanné devra avoir une taille raisonnable pour permettre un scan optimal (ni trop petit, ni avec de trop grande dimensions). Le scanner doit être "autonome" et une fois lancé, l'utilisateur n'a pas à intervenir sur le scanner (à part pour récupérer le fichier .STL sur la carte SD à la fin du scan.


De plus, j'ai décider d'utiliser le plus de matériel déjà à disposition. L'idée étant d'utiliser les ressources disponibles au Fabricarium, à l'école (à disposition des IMAs) ou encore disponible dans ma réserve de matériel personnelle. Cela me permet alors de limiter les dépenses, afin de réaliser le projet le moins coûteux possible pour l'école. En effet, il va s'en dire que si les frais de mon projet étaient trop grands, il serait plus intéressant pour le Fabricarium d'investir dans un scanner à plusieurs centaines d'euros chez un professionnel.

Choix techniques : matériel et logiciel

Je vais utiliser dans un premier temps le scanner avec capteur de distance laserafin d'en tester les limites et d'en tirer les avantages. Ensuite j'utiliserai la méthode du scan via la caméra kinect afin de saisir les fondamentaux de la procédure à suivre (tolérance aux vibrations, création de trous,...) pour obtenir un scan optimal. J'essayerai alors de combiner les deux techniques afin de faire une sorte de scanner hybride, possédant les avantages des deux techniques, sans en avoir les inconvénients.


Liste des tâches à effectuer

Les différentes tâches à effectuer :

étape 1 :Élaborer un scanner avec le capteur de distance et l'analyser en profondeur afin de s'en inspirer un maximum pour en tirer les avantages de cette méthode de scan.

étape 2 : Faire un scan avec la caméra kinect afin d'en tirer les enseignements d'un scan avec caméra

étape 3 : Faire des nombreux points avec l'équipe du Fabricarium pour répondre à leurs attentes et faire quelque chose qui correspond le mieux a leur besoins.

étape 4 : Conception d'un modèle hybride permettant un scan de meilleur qualité que les deux méthodes précédentes et de manière plus facile.

étape 5 : Améliorations de ce dernier système réaliser afin d'en faire un scanner le plus aboutit possible.

Calendrier prévisionnel

Le projet étant à rendre au moi de mai, mais comptant une marge d'erreurs et d'améliorations éventuelles, le calendrier prévisionnel optimal serait donc :

Fin de l'étape 1 : Début février,la première technique de scan, par capteur de distance laser, a été testée, exploitée et étudiée.

Fin de l'étape 2 : Fin Février, la seconde technique de scan, via caméra kinect, a été testée, exploitée et étudiée.

Fin de l'étape 3 : Mi mars, les réunions avec le fabricarium ont abouti sur un modèle final a confectionner.

Fin de l'étape 4 : Fin Avril, le scanner final est réalisé et opérationnel.

Fin de l'étape 5 : Le temps restant sera consacré à l'amélioration de ce dernier modèle, et à l'analyse du projet (erreurs commises, décisions judicieuses ou non). Je consacrerais également un temps de formation pour les membres de Fabricarium, afin qu'ils puissent eux même former les étudiants par la suite, pour pouvoir utiliser ce scanner. Si le projet n'est pas totalement terminé ou encore améliorable, ces mêmes membres pourront poursuivre le projet afin d'atteindre l'objectif principal : donner accès à un scanner 3D aux étudiants de l'école.

Réalisation du Projet

Feuille d'heures

Étant présent à chacune des séances facultatives de 2h du lundi, et responsable de la salle E306le jeudi de 8h à 10h, en plus des séances obligatoires de 4h le mercredi après midi, mon temps de travaille consacré à ce projet est de minimum 8h par semaine à l'école (sauf cas exceptionnel). S'ajoute à ces heures, les heures personnelles faites chez moi le week end et lors de la semaine (trou dans l'emploi du temps et/ou séance prolongée). En effet, il faut que je compense le fait d'être seul pour avoir une avancée similaire aux autres groupe en binôme.


Tâche Prélude Heures S1 Heures S2 Heures S3 Heures S4 Heures S5 Heures S6 Heures S7 Heures S8 Heures S9 Heures S10 Total
Analyse du projet / recherche 15H 2H 2H 1H
Récupération du matériel 1H 1H (au frabricarium)
Mise en place de l'alimentation / soudure 2H 2H 1H 1H30
Code et mise en rotation optimisée des moteurs 3H 3H 4H 1h30
rédaction du wiki 4H 3H 2H30 3H 1H 4H 1H
conception et réalisation de pièce (découpe laser / Imprimante 3D) 3H30 2H 2H
Installation des drivers, découverte et paramétrage de SKANECT 1H30 2H
Test de la kinect 2H 2H
Formation Fabricarium 1H30 Imprimante 3D
etape
etape
etape
total 19H 11H 8H30 10H30 8H30 11H 4H30

Prologue : Partons sur de bonnes bases

Avant d'entamer officiellement le projet, avec des créneaux horaires prévus à cet effet, un travail en amont à dû être réalisé.


En effet, premièrement, un long travail de recherche à était fait. Il fallait que je puisse voir les technologies existantes. De plus je devais m'assurer que le fait de réaliser "une photocopieuse d'objet" était faisable !

Parallèlement, je me suis rapproché de Rodolphe Astori afin de soumettre mon projet et de demander si celui ci intéresserait éventuellement le Fabricarium. L'idée lui plu aussitôt !

Après avoir étudier longuement les différentes technologies existantes, ainsi que leur défauts,j'ai décidé de proposer l'idée de proposer mon projet aux professeurs responsables.

Une fois le sujet approuvé par ces derniers, je pouvais alors me rapprocher des membres du fabricarium pour leur exposé le projet oralement, et commencer à réunir les personnes suscitant un plus ou moins grand intérêt pour le scanner. Cela me permis alors de fixer un premier cahier des charges.

Une fois ceci fait, j'ai alors continuer longuement mes recherches et ai opté pour différents composants, sélectionné selon leur qualité, leur prix, et les avis des internautes, les suggestions des professeurs et de certains IMA les ayant testé.


J'ai donc dès le début du moi d'octobre, commencé à élaborer différents prototype sur papier et exploré différentes options pour réaliser le scanner.

De plus la présentation devant une partie de la classe et un professeur référent, m'a permis de confirmer certains choix et également de voir différentes options à étudier, auxquelles je n'avais pas pensé !

Puis, un temps fut également consacré à la recherche de matériel nécessaire. La plupart du matériel étant déjà disponible à l'école, chez moi, ou à faible coût sur internet, j'ai décidé de commander une petite partie du matériel afin de pouvoir manipuler certains éléments qui m'étaient jusqu'alors inconnus. Finalement les délais de livraison étant très longs, je me suis retrouvé avec des livraisons en "compte gouttes", sans vraiment pouvoir tester grands chose. Ce n'est pas très dérangeant étant donné que cette partie de "test" était "facultative", le projet ne commençant officiellement qu'au second semestre.

Enfin, la rédaction du wiki fut également un peu chronophage mais nécessaire. Surtout que ce wiki est également le seul moyen simple que chacun (professeurs et membres du fabricarium notamment) puisse connaître l'avancement du projet ainsi que les lignes directrices du travail effectué.

Semaine 1 : Alimentations, soudures et test du matériel

Cette semaine, le projet fut officiellement lancé ! Comme le conseillé le sujet du projet, je devait tester les deux types de scans possibles (par capteurs de mesure de distance et par kinect). J'ai alors décidé de commencer par la première méthode.

Certaines concertations avec les professeur furent nécessaires pour voir différentes options à choisir concernant le matériel qui était à disposition.

Par exemple, afin d'éviter les coûts liés à l'achat d'une alimentation 12 V continu', j'ai repris une alimentation de PC utilisée pour un ancien PFE et prenant la poussière depuis quelques temps.


Les premières heures furent donc consacré aux désossement de certaines pièces d'anciens projets ainsi qu'au fait de rassembler les différents pièces nécessaires déjà à disposition.

Suite à quoi je décidai de commencer par la partie alimentation. En effet, pensant avoir une alimentation sur secteur classique, je n'avais pas prévu de me retrouver avec une alimentation de PC. Cependant, cette modification est un avantage car elle me permettra d'alimenter l'ensemble de mes composants. Mais surtout, le poids assez important de l'alimentation servira de contrepoids éventuel pour la caméra Kinect.

Effectivement, je ne connais pas encore la forme finale de mon scanner mais il est probable qu'un bras tourne autour de l'objet à dupliqué. Auquel cas il sera nécessaire de compenser le poids de la caméra lorsque celle si sera éloigné de l’objet, et donc lorsqu'elle créera un déséquilibre évident de l'ensemble. Ce contrepoids créer par l'alimentation permettra ainsi d'éviter de devoir scellé le scanner sur une grande plaque.

J'ai d'abord du me renseigner sur comment fournir du 12 Volt (nécessaire au pilotage des moteurs) avec l'alimentation mise à ma disposition. Après quelques recherche, j'ai donc boucler l'alimentation sur la terre, pour la court-circuiter. Après quoi je pouvais normalement disposer de 5V (fil rouge) et de 12V (fil jaune de l'alimentation). L'alimentation ne démarrait pas cependant.

Mot2.jpg
Cont.jpg

J'ai donc décidé de dénuder de nouveaux câbles et de souder de nouveau les extrémités afin de les rendre de nouveaux exploitables. En effet le problème venait de là et une fois les nouveaux câbles mis en place, l'alimentation démarrait normalement. Les anciens câbles devaient très certainement avoir un peu mal vieilli depuis le temps. J'en ai alors profiter pour découper quelques câbles d'avances, anticipant le fait de devoir alimenter l’Arduino et sûrement d'autre composant pas la suite. L'alimentation marche (photo avec le voltmètre à l'appui), il faut alors que je procède aux soudures de mes différents composants pour pouvoir les tester !

L'étape fut donc un peu minutieuse sachant que je devait souder les pins sur mes deux contrôleurs moteurs, sur mon Arduino pro micro reçu récemment et sur les mes moteurs pour pouvoir les connecter facilement à une Breadboard/planche à pain.

125.jpg

Une fois ceci réaliser, j'ai donc upload un code simpliste de rotation de moteur sur l’Arduino UNO dont je disposais afin de vérifier la bonne transmission de l'information des moteurs et de contrôler mes soudures par la même occasion. J'ai alors réalisé le montage correspondant pour procéder aux tests. Bien entendu, cela n'a pas marché du premier coup, j'avais une soudure un peu grossière que j'ai eu à retoucher rapidement. Le deuxième essai fut le bon ! J'ai donc pu vérifier que mes deux moteurs ainsi que les deux contrôleurs moteurs fonctionnait correctement. C'était le cas !

J'avais donc à la fin de ma deuxième séance une alimentation qui fonctionnait correctement; des moteurs et un circuits permettant une mise en rotation efficace d'un moteur. Il me suffit alors de reproduire un second montage identique et de modifier légèrement le code pour contrôler deux moteurs. L’idée étant d'utiliser un moteur pour mettre en rotation l'objet et un autre pour permettre l'élévation du capteur de mesure de distance le long de l'objet à scanner.


J'ai alors essayé de remplacer mes moteur NEMA 17 par ceux du projet de Jean Wasilewski. Les moteurs étaient censés faire la même chose, car de modèle identiques. Cependant, ce deuxième types de moteurs ne réagissait pas de la même façon et faisait des sorte de "sursaut". Je n'ai pas eu le temps de déterminer l'origine du problème. Plus tard je reviendrais sur ce problème. Sachant que les moteurs fonctionnait avec un autre contrôleur moteurs sur le projet de Jean, je reprendrais donc ses mêmes contrôleurs si j'ai besoin d'utiliser ses moteurs. Le problème vient peut être aussi du code. Je décide de poursuivre sur une autre partie du projet. En effet, même si les deux moteurs de J.W. ne fonctionnait pas, les deux miens marchaient correctement et pour le moment je n'en n'avait besoin que de deux. Je prendrais donc le temps de venir régler ce problème (sûrement très simple à résoudre) lorsque j'aurai besoin de plus de moteurs, sûrement dans la suite du projet.

Pour conclure la première séance de 4H, j'ai donc était acheté du bois à Leroy Merlin (avec de l'argent prêté par Monsieur Redon), découpé aux dimensions de la découpeuse laser du Fabricarium, afin de refaire le stock disponibles pour les IMA cette année.

J'ai ensuite dans la semaine, utiliser un peu des mon temps libre lors des pauses pour aller demander quelques conseils à Rodolphe Astori (notamment son point de vue sur la réalisation d'un prototype en bois, face à celui en aluminium). Il m'a alors conseillé de commencer sur un système en bois pour prototyper le tout, et si les résultats sont satisfaisant, nous pourront passer sur un modèle plus rigide en aluminium, éventuellement découpé chez un de leur partenaire, le TechShop.


adaptateur soudé pour permettre l'alimentation de l'Arduino grâce à l'alimentation du PC

Le week end, j'ai repris la caisse de matériel pour mon projet (avec l'accord de Monsieur Redon) pour pouvoir continuer le projet chez moi. J'ai alors pu dénuder et souder d'autre câbles, ainsi qu'un adaptateur Arduino. Cela me permet ainsi d'alimenter mon Arduino directement avec l'alimentation du PC mise à disposition. Elle est là, autant l'exploiter au maximum !

N'ayant pas encore le capteurs de mesure de distance (seule pièce à réellement indispensable à commander), il faudra donc que je commence d'autres tâches avant de tester ce composant. Les différentes tâches à réaliser sont explicités ci après, dans les objectifs pour les semaines suivantes.

Fin de la semaine 1, fonctionnement des moteurs

L'objectif pour les prochaines semaines est de finir le premier type de scanner pour respecter le calendrier prévisionnel. Il faut donc faire fonctionner les moteurs issus du projet de Jean Wasilewski ainsi qu'entamer une première modélisation 3D des pièces nécessaires pour la réalisation du premier scanner à mesure de distance laser. Suite à ça je devrait faire la carte électronique de l'ensemble. Il faudra également que j'organise une réunion avec certains membres du Fabricarium intéressés par le projet, pour leur présenter l'avancement de ce dernier. Une fois ceci réalisé, je pourrais passer aux second type de scanner et il faudra que je tente un scanner avec la kinect. Et commencer à proposer des schémas prototypes pour la réalisation de mon scanner final, à Rodolphe et aux membres du Fabricarium.

Semaine 2 : rassemblement du matériel, les idées prennent formes

Cette semaine fut un peu moins une réussite que la précédente malheureusement. Bien que j'ai continué à travailler sur le sujet lors des deux séances "facultatives" du lundi et jeudi et celle du mercredi, je me suis retrouvé confronté à certains problèmes. En effet, premièrement, j'ai souhaité upload mon code (qui fonctionnait parfaitement sur une arduino uno), sur une arduino pro micro. Malheureusement cela ne marchait pas. Après plusieurs heures à comprendre le problème, à réupload, déconnecter-reconnecter, etc... Il s'est avéré qu'une mauvaise soudure couplée à un faux contact entre la pro micro et le câble USB (câble défectueux) était à l'origine du dysfonctionnement (Je ne m'en apercevrait qu'après plusieurs heures de frustration).

partie mécanique "élévatrice du capteur"
partie mécanique "rotation du plateau"

Je n'ai pas non plus réussi à faire fonctionnait les moteur de Jean Wasilewski. Je pense que ceci était dû à de mauvaise valeur de capacité. Je reviendrais sur le problème plus tard car je n'ai pas besoin de faire tourner plus de deux moteurs pour le moment.


L'idée du scanner est de faire s'élever un capteur de mesure de distance qui enregistrera des données sur une carte SD. L’élévation peut se faire avec corroie ou avec le rotation d'une vis d’Archimède. Je verrai selon les avantages et les inconvénients de chacune des deux méthodes, celle que je décide d'utiliser. Le capteurs de mesure de distance n'étant pas encore arrivé, je décide alors de me lancer dans la recherche de nouveaux éléments de matériel pour confectionner la structure de mon scanner.


J'ai ainsi pu beaucoup avancer sur la recherche et la récupération de matériel. Cela m'a permis de m'éclaircir certains points sombres et de résoudre certains problèmes. Le Fabricarium est une véritable mine d'or lorsqu’on cherche une pièce de récupération ! J'ai donc pris plusieurs composants (non électronique) que je n'avais pas prévu d'utiliser à la base mais qui sans doute faciliterons tôt ou tard mon projet (roulements à billes, barre de métal, coupleurs etc...). Il me manquait également un coupleur permettant de faire la jonction entre un moteur (axe de 5 mm) et l'axe de type hélicoïdale (vis d’Archimède)( 8 mm). Finalement je dû attendre le week end pour en récupérer un chez mes parents, ceux du fabricarium n'étant pas au bon diamètre.


J'avais ainsi lors de cette semaine peu avancé d'un point de vue physique et visible. Mais j'avais cependant rassembler différents éléments qui m’éviteront d'être freiné plus tard.


L'apparence du scanner prend peu à peu forme. L'idée sera de mettre en rotation un objet sur un plateau situé au dessus d'un premier moteur nema 17. Le capteur de mesure de distance enregistrera les informations sur une carte SD (il faudra voir comment cela est possible (via Raspberry ou l’Arduino sera peut être suffisante). Une autre partie du scanner permettra de faire s’élever la capteurs de mesure de distance petit a petit de sorte à scanner l'objet de sa base à son sommet. Il me reste à déterminer la méthode d’élévation qui a le plus d'avantages. Le test devra être fait une fois que le capteur de mesure de distance sera reçu.

De plus j'ai pu récupérer vendredi soir, des capacités avec des valeurs correspondantes à celles dont j'avais besoin pour faire tourner les moteurs de l'ancien projet de 5A (à savoir 47 µF).


Enfin, après avoir un peu échanger avec Ropdolphe du Fabricarium, ce dernier m'a conseillé d'utiliser le logiciel "onshape", qui est un logiciel de CAO en ligne qui permet, tout comme un drive, de partager ses fichiers de modélisations et de pouvoir les modifier. Cela permettra l'échange et l'éventuelle amélioration des pièces que j'aurais commencé à créer, avant de les imprimer.


Pour la semaine prochaine il faudrait que je fasse tourner mes moteurs ensembles, que j'implémente le code sur mon arduino pro micro et de me décider sur le fait que je fasse monter le capteurs de mesure de distance via une corroie ou alors via un axe en forme de vis d'Achimède permettant l'ascension du capteur.

Semaine 3 : une belle avancée mais également quelques erreurs

C'est reparti ! Les choses vont de nouveau mieux ! Bien que je n'ai pas encore reçu le capteur de mesure de distance, j'ai tout de même réussi à régler pas mal des problèmes de la semaine dernière !


La soudure défectueuse de l’Arduino pro Micro a était détectée et réparée ! De plus le petit problème de connexion dû au câble USB défectueux fut détecté également assez rapidement. En effet après avoir exploré toute les différentes sources éventuelles de problème, le problème ne pouvait venir que d'une erreur "bête" mais ce sont souvent les plus dures à détecter !

En plus de cela, un problème de bread Board est venu également jouer un peu avec mes nerfs. En effet, il s’avérait que la masse commune n'était pas commune sur toute la planche à essai, mais uniquement sur une moitié ! J'ai perdu un peu de temps sur ce léger problème, simpliste, mais face auquel je n'avais encore jamais était confronté jusqu'alors. Je savais, de par mes tests de la première semaine que le problème ne pouvait pas venir de mes contrôleurs moteurs ni de mon code ! Je pu donc trouver la source du souci rapidement et procéder à la suite !

Cod.jpg

Effectivement, tout ceci étant réglé, je me lance sur le montage global  ! Je me muni alors de la BreadBoard, de l’Arduino pro Micro et des deux contrôleurs moteurs ! j'y ajoute les deux moteurs Nema 17 et je les associe à leur partie respective. Le premier est attaché à un axe type vis d’Archimède, qui permettra de faire s'élever le capteur de mesure de distance, via le coupleur que j'ai pu récupérer chez moi le week end. Il est un peu trop "souple" mais je compenserai cette flexibilité via l'ajout de tuteurs en métal, trouvé au FAB et de toute manière essentiels pour éviter que le capteur ne "tourne" en même temps que l'axe sur lequel il est fixé. Le second moteur Nema sera quand à lui relié à un plateau tournant. La logique de solidité et de facilité de fixation voudrait que je modélise et imprime un plateau avec un axe de 8mm pour fixer à un des coupleurs dont je dispose. Cependant l'état du scanner étant encore au rang de prototype, je décide de gagner un peu de temps en découpant un simple disque à la découpeuse laser, que j'ai ensuite fixé à un coupleur via de la colle. Le montage est un peu grossier mais me permettra de faire mes premiers tests. Je referais alors la pièce en version finale à l'impression 3D un peu plus tard. Le but étant d'avancer le plus loin possible, de sorte à pouvoir procéder ensuite le plus rapidement aux tests de scans avec la caméra kinect (deuxième type de scanner à explorer dans mon sujet de projet). Je découpe alors ce disque à la découpeuse laser du Fabricarium (j'avais anticipé le fait de devoir l'utiliser pour le projet, j'ai donc ainsi suivi la formation obligatoire du Fabricarium sur cette machine lors du premier semestre). Le résultat, suite au collage, n'est pas transcendant mais fera amplement l'affaire pour faire les premiers tests.


J'ai donc ensuite upload un code simpliste sur une Arduino UNO et le même sur une Arduino pro micro afin de vérifier le fonctionnement des deux micro contrôleurs (surtout pour contrôler une fois de plus les soudures faites par mes soins sur la Micro). Le code est simple mais permet de comprendre le contrôle des moteurs qui n'est pas forcément si évident aux premiers abords. Voici le code qui a était mis sur les deux Arduino. Ce code sera bien entendu modifier par la suite, et adapté à la situation, une fois la partie mécanique terminée et assemblée.

Montage global avec plateau découpé au laser

A noter que malheureusement, quelques heures plus tard la découpeuse laser tombera en panne (hors service suite à un problème de filtre). Je ne sais pas pour combien de temps la machine sera inaccessible, mais je serai sûrement obligé de procédé exclusivement à une création de pièces via imprimante 3D par la suite si le problème persiste. Cela risque de me ralentir dans les jours et semaines à venir. En effet, la découpe laser étant beaucoup plus rapide qu'une conception et une impression chronophage de pièces sur une imprimante.


Ainsi après quelques petits réglages j'ai donc un montage global fonctionnel où mon alimentation de PC permet de rendre "autonome" une Arduino UNO ou MEGA (non utilisée pour le moment mais sûrement utile par la suite), ainsi que de fournir le courant et la tension nécessaire pour alimenter mon Arduino pro micro, et les deux moteurs Nema 17.

Comme on peut le voir sur le montage générale présent dans la vidéo ci jointe, le montage fonctionne parfaitement ! Le plateau avec l'objet tournant permet de mettre en rotation un objet sans avoir besoin d'un couple trop important. Le tout n'est cependant pas très stable. Ceci est due à la fixation et aux matériaux un peu rudimentaires utilisés. Comme déjà précisé précédemment, cette partie sera ensuite normalement améliorée via la création d'une pièce en 3D.

[video montage fonctionnel]


Un problème est survenu, sans gravité pour le moment mais à surveiller. En effet les contrôleurs moteurs chauffent de manière anormale. Pas d'odeur de brûlé ni de fumée apparente mais il semblerait que cela chauffe trop malgré tout. A surveiller. Afin de compenser cette augmentation de chaleur, j'ai donc récupérer un dissipateur (et un ventilateur de petite taille facultatif pour la suite éventuellement) afin de refroidir les deux pièces. La taille n'est pas tout à fait adaptée mais elle fera l'affaire. Effectivement le dissipateur est un peu gros mais je peux le mettre sur les deux contrôleurs moteurs en même temps si cela est possible (il faudra prendre ceci en compte lors du routage de la carte électronique (selon la disposition, la carte électronique devra être adaptée)).

Fonctionnement de l'ensemble

Fin de semaine : prise de conscience de l'erreur, heureusement sans gravité ni dégâts matériel

J'ai compris mon erreur, cause du fonctionnement anormal, origine de l'échauffement... En effet, mes moteurs ont besoin de 2A pour fonctionner et mes contrôleurs moteurs ont un fonctionnement conseillé jusque 0.725 Ampère... Je pensais gagner du temps et éviter un coût en utilisant mes contrôleurs moteurs personnels, mais ceux ci n'étaient pas tout à fait adaptés. Après avoir vu avec Mr Boé, il faut que l'on change de contrôleurs moteurs. Je vais donc me tourner vers les contrôleurs moteurs de l'ancien PFE. Il faut donc absolument que je me fasse fonctionner correctement les moteurs de Jean Wasilewski. Auquel cas nous serons obligé de rajouter des contrôleurs moteurs à la liste de matériel nécessaire au projet. Je vais donc me focaliser sur le fonctionnement de ces moteurs qui utilisent un pont en H pour fonctionner. Le fonctionnement est différent mais n'a pas l'air plus difficile.

Je vais donc rapidement (ce week end si possible) me focaliser là dessus, pour essayer de régler ce problème afin d'éviter d'avoir à engendrer de nouveaux achats de composants et ainsi devoir attendre les délais de livraison. Le problème n'est pas dramatique mais aurait pu être évité, je suis totalement responsable de cette erreur et j'aurais dû prêter davantage attention à la datasheet de mes contrôleurs moteurs. Je m’étais basé sur plusieurs sources d'internet faisant fonctionner les moteurs Nema 17 avec les mêmes contrôleurs moteurs sans prêter attention au fait que ceux ci pouvaient ne pas être totalement adaptés. La priorité est donc désormais de refaire remarcher le tout avec mes nouveaux composants.

Ensuite, plus tard, les différentes étapes qui sont la suite logique de l'avancement du projet (et donc a travaillé les semaines suivantes) sont donc de penser à commencer la carte électronique (bien que d'autres éléments vont venir s'y ajouter) mais le fait d'avoir une idée de ses dimensions me permettra de savoir où et comment la placer sur le montage final. De plus il faudrait que je commence à modéliser et imprimer certaines pièces pour faire la partie mécanique du projet. Je pense me tourner vers l'impression 3D car je ne sais pas pendant combien de temps la découpeuse laser va être hors service). Si tout se passe bien, cette partie sera terminée à la réception du capteur de mesure de distance, et je pourrais ainsi procéder au différents tests dès que le capteur sera arrivé.

Semaine 4 : optimisation de rotation des moteurs, premier scan avec la kinect et modélisations 3D : Avancée dans de nombreux points !

Cette semaine, j'ai travaillé durant les nombreuses heures de trous que nous avions, et également chez moi les soirs de la semaine et le week end, ainsi, j'ai pu avancer largement cette semaine ! En voici un détail :

le TB6560 à "réparer"

De façon à ne plus reproduire la même erreur, j'ai donc réétudié mes datasheets dans le détail. Résultat : j'ai donc deux types de moteurs NEMA 17 like. Un type à 12V et 0.7 Ampère et un a 12V et 1.7A. De plus j'ai deux types de contrôleurs, un ayant une possibilité de fonctionnement de 475 à 875 milliampère, ainsi que ceux de l'ancien PFE que je n'arrive pas à faire fonctionner pour une raison toujours inconnue. Ou plutôt si, j'arrive à les faire fonctionner mais pas avec une rotation fluide. En effet, je constate des soubresauts qui sont dus à un mauvais réglage du potentiomètre pour le courant de phase. Je vais donc continuer avec les moteurs de 0.7A et avec les contrôleurs moteurs de 0.475 à 0.875A. Ceux ci fonctionnent très bien ensemble et je pourrais revenir sur le problème si j'ai besoin de plus de moteurs ou de changer la méthode de contrôle des moteurs.


Plus tard dans la semaine, Alexandre Boé me donnera un contrôleur moteur pouvant supporter jusqu'à 3 Ampères pour mon deuxième type de moteur à 1.7A. Le TB6560, utilisé actuellement sur un projet d'IMA5. Malheureusement, le mien étant cassé, je ne peux pas le tester sur des valeurs supérieures à 1.4A (le switch numéro 1 étant cassé). Je corrigerai donc ceci avec une soudure pour feinter un switch activé sur la valeur 1.


En parallèle j'ai décidé de réaliser mes premiers tests avec la caméra kinect. En effet, il était selon moi temps de commencer à exploiter cette méthode de scan. De plus, la commande des composants venant d'être lancée, il fallait que j'attende la réception de mon capteur de mesure de distance. Je ne pouvait donc guère avancer sur la méthode de scanner avec ce dit capteur. Je décide alors de tester la caméra de Microsoft.

J'ai donc commencé par beaucoup me renseigner sur la caméra, son fonctionnement et sur les différents drivers à installer. J'en ai profité pour essayer également d'installer les drivers pour la version de la seconde caméra kinect, le KINECT V2, disponible avec la console XBOX ONE. J'ai testé rapidement avec ma KINECT V2 personnelle, mais très peu de logiciels gratuits permettent un scan avec cette caméra. Je reste donc sur ma première idée, celle de rester avec la caméra, largement reverse engineering, la caméra KINECT for Microsoft, première version.

J'ai donc du téléchargé en premier un SDK version 1.8 (fonctionnant avec la première version de la caméra). Celui si permet de faire fonctionner la caméra sur un système d'exploitation et de pouvoir commencer certains premiers test de bon fonctionnement de la caméra (détection, couleur, profondeur, etc...)

J'ai ensuite chercher à téléchargé un logiciel permettant un scan et la création d'un fichier STL. Des logiciels de ce type existent en effet et permettent un scan correct pour le commun des mortels. Cependant, la qualité que nous recherchons doit ici être optimale afin de scanner avec précision un objet complexe.

Mes prédécesseurs d'IMA5 ayant également travaillé sur un scanner il y a de ça quelques années, utilisaient KinectFusion(aussi appelé KinFu). Après quelques recherches il s'avère que ce logiciel est devenu un peu obsolète et il convient mieux d'utiliser de nouveaux logiciels, optimisés et étant apparu récemment. Je décide alors de tester un logiciel dont j'ai beaucoup vu ressortir le nom lors de mes recherches sur le sujet : Skanect.

interface de SKANECT

L'installation et le paramétrage de la caméra et du logiciel ne sont pas si intuitifs que cela aux premiers abords. Cependant après quelques minutes de prise en main, le paramétrage a tendance à se répéter, voir même à être rébarbatif. Il suffit de le faire correctement une fois, et d'enregistrer les réglages afin de gagner du temps par la suite.

J'ai alors tenté de scanner un buste d'un étudiant de l'école. Pourquoi un buste ? Tout simplement parce que le logiciel proposait une option de scan de personne, déjà paramétrée, d'environ 2m cube. De plus, il est plus facile de s’apercevoir de la qualité des détails sur un visage d'un charmant étudiant en mécanique, que sur une tasse de café (bien que...)


Voici mes différents retours sur le test :

Les points positifs :

Le logiciel, une fois configuré correctement est assez facile d'utilisation et propose une correction du scan (remplissage des trous, lissage, amélioration divers) Skanect permet un rendu en STL, ce qui est en accord parfait avec le projet. La qualité du scan et la puissance de la caméra sont assez surprenantes, je m'attendais à un résultat de qualité moindre.

Les points négatifs :

message d'erreur lors de la rotation trop rapide de la caméra

Malheureusement il y a de très gros points négatifs, notamment la difficulté de scanner ! En effet, pour mon premier scan, j'ai dû m'y reprendre environ à 20 fois avant d'avoir mon premier scan de réalisé, et encore, de bien mauvaise qualité ! Effectivement, la stabilité de la caméra est extrêmement dure à gérer ! Dès que la caméra bouge un peu trop rapidement (dans le cas d'une rotation de la caméra autour de l'objet immobile, à scanner) ou que l'objet à scanner bouge un peu trop (dans le cas d'une rotation de l'objet sur un plateau), le scan plante. Il est alors possible de rectifier le tir, mais cela est à double tranchant : soit le logiciel redetecte l'objet correctement et le scan peut reprendre, soit le logiciel détecte de façon erronée l'objet et on peut se retrouver avec des formes qui ne ressemblent en rien à l'objet de départ (visage avec un nez qui en fait la taille d’environ 5 nez)

La mise en rotation stable de la caméra est très difficile et délicate.

Les corrections automatiques proposées ont tendance à corriger l'objet de manière un peu "brute" et les détails sont alors perdus. Ce qui est problématique, lorsqu'on souhaite reproduire un objet scanné à l’identique;

Le rendu peut paraître correct, une fois ramener à des dimensions imprimables (environ 10cm cube), mais cela est assez évident. En effet, cela revient au même que de prendre une photo avec un appareil photo de qualité moyenne et de rendre la photo en dimensions très petites, la qualité semble augmentée ! Il en est de même dans notre cas, des contours grossiers paraissent ainsi très précis une fois le buste réduit fortement de taille. Le résultat sera bien moins satisfaisant sur un objet d'environ 15 cm cube que nous souhaiterions reproduire à l'échelle 1/1.

Kinectun.jpg
scan erroné à cause d'une correction automatique ratée, suite à une rotation non stable de la caméra

Comme évoqué précédemment, il a fallu que je m'y reprenne à de nombreuses reprises pour avoir mon premier scan ! Soit je tournais trop vite autour de la personne, soit la personne en question n'était pas à la bonne "profondeur" (distance de la caméra), soit le scan plantait pour une raison inconnue,... il fallait donc recommencer de 0 ! Et quand le scan parvenait à être réalisé, il était très peu convaincant (trous dans la tête, menton digne d'un frère Bogdanov, pas d'oreilles, etc...

J'ai donc tenté diverses techniques : - rotation de la caméra autour de l'objet -> beaucoup de ratés à cause des la faibles stabilité de la caméra (je la portais simplement dans mes mains) - rotation de la personne (sur une chaise de bureau) et caméra fixe -> "trous" au dessus de la tête car hors champs de la caméra, et rotation parfois trop rapide de l'intéressé, engendrant un échec de scan. Ou encore des modifications terrifiantes du faciès (dûes à la modification de position, en effet il est très difficile de rester totalement immobile lorsque l'on est mis en rotation).


En conclusion les premiers scans étaient donc plutôt difficiles à réaliser de part le manque d'expérience ! Je m'attendais à un résultat très moche mais facile à obtenir, j'ai finalement un scan très difficile à obtenir mais pour un résultat plus correct que ce que je pensais !


Lors des prochaines séances il faudra que je retente de nombreuses conditions de scan (obscurité, différentes distances de la caméra, différentes vitesses de rotation de l'objet, ou de la caméra, différentes tailles d'objets, etc...) Je n'ai en effet' pas eu le temps de tester de nombreuses configurations cette semaine, les heures défilant trop vite !

Désormais il faudra déterminer si il est plus judicieux et facile de scanner via une mise en rotation de la caméra kinect ou via une mise en rotation de l'objet. Un compromis peu également être fait avec, imaginons, une rotation de l'objet à scanner et la caméra montant sur un bras (comme un arc de cercle) selon l'axe z et légèrement selon y, pour s’incliner une fois au dessus de l'objet.

L'avantage de la mise en rotation de la caméra, c'est que si le montage est fonctionnel dans un cas, il le sera dans tous les autres ! En effet, la caméra ne changeant pas de poids et effectuant à chaque scan la même action, il suffit juste de trouver une solution qui fonctionne une fois, pour que celle ci fonctionne tout le temps. Le problème c'est qu'elle est plus compliquée à mettre en place mécaniquement (rails pour la caméra ? Support pour l'objet ? Moteurs assez puissants ? problème d'équilibre de l'ensemble du montage....)

Si à l'inverse je dois mettre uniquement l'objet en rotation (avec une caméra immobile), bien que je gagne en facilité pour l'aspect programmation (un simple plateau en rotation) et en "conception" mécanique, il y a un risque de non fonctionnement dans certains cas. En effet, imaginons qu'un objet trop lourd soit disposés sur le plateau, il pourrait faire pencher le plateau sous son poids et donner un scan oblique. De plus, si l'objet est vraiment trop lourd, il peut augmenter le couple nécessaire à la mise en rotation du plateau, jusqu'à éventuellement bloquer ce dernier, sous un poids trop important... Enfin cette technique empêche aussi le scannage en vue du haut, de l'objet... Autant de questions auxquelles il faut encore répondre !

Je déterminerais la configuration optimaleau fur et à mesure des tests et des conseils des différents professeurs et membres du Fabricarium.


Puis, pris dans un élan de courage, j'ai décidé de modéliser en 3D mes premières pièces. Bien que Rodolhe Astori m'ait conseillé de faire mes modélisations sur ONSHAPE (sorte de drive ou les utilisateurs ayant l'autorisation, peuvent modifier les pièces), j'ai modélisé les pièce simplistes sur FreeCAD. Utilisant ce logiciel depuis la PeiP, je pouvais modéliser rapidement, et cela me permettait de me refamiliariser avec un logiciel de CAO basique, car je n'avait plus touché à un logiciel de ce type depuis plusieurs mois (modélisation 3D de la manette de jeux vidéo pour la partie Bonus du tutorat système au S7). De plus, les deux pièces que j'ai modélisé étaient relativement simples : un plateau tournant pour remplacé celui fait à la découpeuse laser précédemment et trop peu stable lorsqu'un objet lourd est positionné dessus. Ainsi qu'un "tuteur" servant à éviter la rotation de ce qui supportera le capteur de mesure de distance, lorsque celui ci sera positionné sur la vis sans fin, lui permettant de s'élever. Les pièces plus complexes seront modélisées via ONSHAPE, pour faciliter la modification et les vérifications de Rodolphe et des membres du FAB.

tuteur
tuteur imprimé


L’impression du tuteur à était une semi réussite (légère torsion due au décollement de la pièce avec le plateau, lors de l'impression (surface pas assez adhérente sur ma Dagoma personnelle)) mais cela devrait faire l'affaire.

Cependant, mon impression du plateau tournant fut une catastrophe (torsion du plateau, impression ratée car trop grossière,... La quantité de PLA diminuant a vue d’œil sur ma bobine personnelle, j'ai donc décidé de tenter une nouvelle impression au Fabricarium la semaine prochaine. Effectivement, cette pièce allant être scannée de manière inévitable, car elle est en contact direct avec l'objet à scanner, il faut que cette pièce soit la plus parfaite possible (lisse et droite, non voilée) afin de pouvoir la faire disparaître rapidement au moment du rendu (descendre le rendu 3D sous un plan horizontal jusqu'à ce que le plateau tournant scanné, disparaisse sous ce plan, et ensuite réaliser une troncature). Si le plateau est voilé ou avec des défauts, le résultat ne sera jamais correct et une erreur constante se répétera à chaque scan, il faut donc éviter cela en créant à tout prix une pièce impeccable !





La semaine prochaine, il faudra que je teste les moteurs 1.7A avec le nouveau contrôleur fourni par Alexandre Boé. Pour ce faire, il faudra que je répare dans un premier temps le switch. De plus, mon alimentation ayant subit quelques dommages (soudure cassées à cause des diverses manipulations, je devrai faire une petite session réparation en début de semaine. Si le capteur de mesure de distance est reçu, je pourrais réaliser mes premiers tests dessus. Je pourrais ainsi commencer à concevoir un premier jet de carte électronique, en vue d'avoir un PCB satisfaisant, assez rapidement. Dans le cas contraire je poursuivrai les modélisations 3D des pièces nécessaires, cette fois ci en m'initiant à ONSHAPE, afin de pouvoir recevoir une aide éventuelle via le système de modification à distance proposé par cette application. J'ai actuellement un léger retard par rapport à mon calendrier prévisionnel mais cela n'est pas dramatique, un investissement constant et régulier devrait me permettre de vite rattraper ce retard. Enfin, je pense organiser une petite réunion informative sur mes avancées, auprès des membres du Fabricarium intéressés par le projet !

Semaine 5 : continuons les impressions, la découverte de Skanect, et mettons le wiki à jour !

J'ai commencé cette semaine par imprimer la pièce du plateau tournant dont l'impression avait échoué la semaine dernière. Je me suis orienté vers une technique d'encastration. Ça évite l'ennui et le coup d'un coupleur et son système de visserie. Effectivement, la force s'opposant à la rotation (et agissant sur la liaison "axe du moteur encastré dans la pièce 3D") est finalement assez faible puisque que l'objet est centré. La force dominante est le poids qui agit selon l'axe du moteur. Ainsi le fait d'encastrer permet d'assurer une fixation suffisante et facilement modélisable en 3D.

fichier .STL à réimprimer

Le résultat de l'impression est bien plus satisfaisant ! Le plateau est, presque parfaitement lisse, et résistant (33% renforcé à l'impression pour éviter de plier sous le poids des objets placés dessus)!


plateau imprimé et encastré dans le moteur

S'en ait suivi une longue session de mis à jour du WIKI. En effet, bien que nous ne soyons même pas encore à la moitié des séances, mon wiki fait déjà plus de 10 000 mots. J'ai donc fait une petite séance de relecture permettant de prendre un certain recul sur le travail déjà effectué et celui restant. Cela m'a permis de faire une sorte de bilan et de voir là où les erreurs ont étaient faites. J'ai modifié aussi la mise en page et j'ai fais une petite correction des fautes d'orthographes et lexicographiques. Le travail fait en amont sur le wiki, facilitera à la fin du projet, la rédaction de la documentation que je laisserai à disposition au Fabricarium. Mon wiki est certes très détaillé mais il permettra également de servir de témoin d'avancement pour les membres du fabricarium. Il sera sûrement amené à être consulté de nombreuses fois par des étudiants de Polytech Lille et du Fabricarium en cas de souci et/ou de besoin de se former sur le scanner, le comprendre, l'améliorer etc... Ainsi une attention toute particulière est apporté à la rédaction de ce wiki et à sa mise à jour régulière. Ceci étant essentiel pour qu'il soit consulté et que l'avancement soit suivi facilement par les personnes souhaitant proposés leur aide éventuelle pour une partie spécifique par exemple. (La tenue irréprochable du wiki était d'ailleurs précisé dans l'intitulé du sujet de mon projet).


Ensuite, comme précisé précédemment dans le compte rendu de la semaine dernière, lors des différentes manipulations et tests, mes soudures ont étaient très largement abîmées et dégradées. Certaines ont d'ailleurs cédés et rendent donc le montage et l'alimentation inutilisable. J'ai ainsi pris un peu plus d'une heure pour redécoupé, dénuder et ressouder mes câbles afin d'avoir des fils nets et propres, et pouvoir ainsi éviter tout faux contact, etc... Bien que ce résultat sera sûrement éphémère et nécessitera sans doute une nouvelle session de rafistolage, ses modifications me permettront de poursuivre mes tests sans souci pendant plusieurs semaines.


J'ai alors pu refaire de nouveaux tests sur les moteurs Nema 17 issu du projet de la placeuse de composants pour PCB. Et mes problèmes de soubresauts évoqués dans la séance précédente, se sont très nettement améliorés ! En effet, le sursauts du moteurs s'estompent très largement en ajustant le potentiomètre présents sur le contrôleur moteurs (ce n’était pas le cas avant). Ces derniers ne chauffent donc plus autant qu'avant (le courant est sûrement mieux dissipé). Leur température est donc nettement plus correcte que ce qu'elle eut été ! Les sursauts ne sont plus du tout ressenti aux bruits et en mouvement (rotation du plateau homogène et constante). Lorsque qu'on garde le moteur en main on sent des très légers "claquements" particuliers au moteurs pas à pas. J'ai alors comparé mon vibrement de mes moteurs à celui des moteurs identiques fixés sur la placeuse de LEGO, pour le projet de Eloi et Justine. Leur états est sensiblement le même. J'ai fais constaté la comparaison à Monsieur Redon, et il a jugé mon vibrement comme négligeable. Effectivement, les moteurs de la placeuse LEGO étant fixés à une armature, il est possible que leur vibrement éventuel soit encore moins perceptibles. Nous en avons donc déduis que mes réglages étaient correctes et que je pouvais me focaliser sur une autre étape ! Éventuellement si je fini le projet en avance, je tenterais de régler parfaitement les moteurs si cela est possible (avec un analyseur, oscillo, etc... en C201)

Je n'ai pas eu le temps de me focaliser sur le TB6560 pour faire tourner mon moteur 1.7A, ni même de regarder les contrôles de moteurs avec les A4988. Je reviendrai sur ces étapes plus tard. En effet je n'ai pas besoin de faire tourner plus de deux moteurs pour le moment, je me chargerait donc de ses étapes lorsque le besoin s'en fera sentir. Je préfère en effet me focaliser sur les étapes essentielless désormais, à savoir essayer d'améliorer les scans avec la kinect et proposer des solutions à mettre en place pour le faire. Il faudra ensuite que je fasse des prototypes à tester et à présenter au FAB. En attendant la livraison du capteur de mesure de distance, je travaille donc sur d'autres étapes de mon projet.


Enfin, j'ai pu profiter de mes quelques heures libres dans mon emploi du temps pour aller échanger un peu avec Rodolphe Astori sur mes ressentis de différents tests et pour voir éventuellement quand je pourrais faire une petite présentation/bilan de mi-projet aux personnes du FAB souhaitant en savoir un peu plus sur le sujet. Nous fixerons une petite réunion prochainement.

J'ai pu poursuivre la configuration et les tests de scanning via skanect.

trou au sommet du crâne
trous divers

Cette fois ci j'ai décidé de faciliter la réalisation du scan en me mettant moi même en rotation sur une chaise de bureau, avec la caméra fixe. Il s'avère que le scan à donné un résultat plus que correct ! Il y avait tout de même la présence de certains trous dus à l’impossibilité pour les rayons IF de la caméra d'accéder au sommet de mon crâne ou encore, derrière certains plis de ma capuche. Finalement, après correction automatique du logiciel, les trous furent comblé de manière grossière mais acceptable. Le but étant surtout de découvrir les différentes possibilités du logiciel et de la caméra afin de trouver la combinaison optimale pour un scan. Le scan fut réalisé grâce à une mise en rotation très lente et délicate.

J'ai enregistré en vidéo la réalisation du scan. Ceci nous permet de nous apercevoir de la minutie dont il faut faire preuve. De plus, sur la vidéo on constate bien les différentes couches de profondeurs grâce au différentes couleurs (selon la distance de réflexion des ondes infrarouges) La difficulté réside également dans l'ajustement de la distance maximum et minimum de portée de scan. Effectivement, si le paramétrage possède une portée trop longue, le scan sera totalement raté car il prendra en compte la rotation de l'objet, mais également les objets fixes qui l'entourent... le scan plante donc très rapidement après son lancement dans ce cas.

portée trop grande de scan, scannant ainsi l'objet et le décor en arrière plan

J'ai cependant réussi à obtenir un résultat final exploitable. La version gratuite de Skanect possède un nombre de face limitée. Ce qui diminue la qualité sur un scan complexe comme celui de mon buste, mais qui ne devrait pas poser trop de problème avec une pièce simple (cube, tasse, clé, etc)

Finalement voici le résultat final du scan de mon buste ainsi que le fichier .STL qui en fut généré :

scan après corrections
mon buste en fichier .STL

A noté que Monsieur Redon a constaté le résultat du scan et a jugé le résultat correct ainsi que "rassurant pour espérer qu'on puisse finalement avoir un résultat à la fin (rire)". L'objectif dans les jours à venir va donc désormais être de réaliser différents tests de scan et dans diverses conditions. Je me chargerai de faire varier la luminosité, la vitesse mobilité de la caméra, son orientation selon les différents axes, la distance de scan, la taille de l'objet a scanner, etc... L’objectif sera de déterminer les facteurs susceptibles de faire planter le scan, et ceux permettant une reproduction fidèle et optimale de l'objet original.


Voici la vidéo de la réalisation du scan en vitesse réelle :


Je décide enfin, de profiter du week end pour m’initier à ONSHAPE et commencer la modélisation des parties restantes pour le scanner avec capteur de mesure de distance. Les pièces plus ou moins complexes sont: - le support du moteur "élévateur" soutenant la vise sans fin, le tuteur et les deux barres métalliques empêchant la rotation du capteur. - la pièce où je viendrai fixé le capteur de mesure de distance et qui sera attaché à la vis sans fin. - une coque éventuelle pour carte électronique (que je modéliserai ultérieurement, une fois le PCB définitif réalisé) - une pièce permettant de rassembler les différents éléments en 1 seul, une sorte de squelette qui liera les deux moteurs. J'avais pensé faire cette pièce avec deux grands axes en métal récupéré au FAB, permettant d'ajuster la distance séparant le plateau tournant et le capteur de distance. Facilitant ainsi l'amélioration des mesures et l'ajustation parfaite des réglages grâce à la facilité de modifier les conditions de tests. Je vois en effet le projet comme étant un projet sur le long terme que j'essaierais de mener le plus loin possible et qui, je l'espère sera amené à évoluer dans le temps et à être amélioré. Je dois donc le concevoir avec une notion d'amélioration éventuelle, et ainsi prévoir les choses de façon à faciliter son évolution. Ainsi, cette distance ajustable, en plus de permettre de faire facilement différents tests de distance, permettra aussi de pouvoir ajuster le scanner en fonction de la taille de l'objet que l'on a à scanné. Nous créerons ainsi un scanner évolutif et adaptable, toujours dans le but d'avoir un scanner des plus efficace et précis possible.

Il serait également judicieux de commencer à concevoir des plans et des dessins de projet de scanner utilisant la caméra kinect. La réalisation et la création de ce scanner étant sans doute la partie la plus chronophage du projet, il faut que je l'anticipe rapidement. Je compte d'abord, afin de limiter les coûts et le temps, concevoir l'essentiel de ce 2ième scanner (au moins pour le prototypage) en découpeuse laser. Nous verrons ensuite grâce au différents tests, si il n'est pas plus judicieux de s'orienter vers un modèle en aluminium ou vers des pièces imprimées en 3D. Je ferrais donc dans les séances suivantes, beaucoup de découpe laser (excepté pour la partie "support" de la caméra, que je pense uniquement modélisable en 3D via logiciel de CAO.).

Semaine 6 : Pièce 3D toutes terminées, on attend plus que le capteur de mesure distance !

Cette semaine, l'avancée fut un peu moins flagrante que les deux précédentes. Effectivement, premièrement nous avions bien moins d'heures de libre dans l'emploi du temps. De plus la prise en main de ONSHAPE fut un peu plus complexe que ce à quoi je m'attendais. En effet, après avoir fait mes dernières pièces sur FreeCAD et m'être beaucoup formé à l'utilisation de SolidWorks, il fallait qu'une fois de plus je me force à maîtriser un nouveau "logiciel".

Le principe d'apprentissage fut tout de même assez rapide, les logiciels de CAO repose tous plus ou moins sur la même méthodologie : création via dessin d'une pièce en 2D, puis extrusion et ajout de matières, etc... La partie la plus longue est donc de devoir retrouver où ce trouve telle ou telle fonction dans les barres des taches, etc... Cependant je dois avouer que ONSHAPE est vraiment très puissant ! Pour faire simple, c'est l’équivalent d'un google drive ou d'un git, mais pour les pièces en 3D. Chacun peut faire ces pièces sur son PC, pas besoin d'installer quoi que ce soit, tout ce fait en ligne après une création de compte. Libre à chacun à de partager ses créations comme bon lui semble, avec les personnes de son choix.

De plus, selon les différents droits attribués, les personnes peuvent visionner, cloner ou même modifier les pièces pour les améliorer. Je pense que ONSHAPE va être amené à grandir et à devenir de plus en plus connu. Quoi qu'il en soi je ne regrette absolument d'avoir suivi le conseil de Rodolphe à propos de cette application, je pense désormais l'utiliser à la place des logiciels ce CAO sur lesquels je modélisais jusqu'à présent et qui sont "ressource-ivores".

Cependant, fonctionnant en ligne, ONSHAPE peut rendre la modélisation un peu compliquée lorsque la connexion internet n'est pas bonne. C'est ce qui m'est arrivé durant la séance de 4h Mercredi aprés midi en E306... Chaque modification, chaque ajustement de valeur, se met à jour une ou deux secondes après le click de souris. Les modélisations des pièces nécessaires au scanner par capteur de mesure de distance ont donc étaient un peu plus longues que prévues... Cependant, j'ai tout de même réussi à finir de toutes les modéliser avant la fin de la séance.

Ainsi après quelques heures de modélisation je disposais des trois pièces que je comptais créer ! A savoir :

tuteur pour capteur de mesure de distance
support moteur du plateau tournant
support capteur de mesure distance


La première pièce, le "tuteur pour capteur de mesure de distance", maintient l'écart entre les deux barres "tutrices" permettant lélévation du capteur. Elle assure aussi que la distance objet-capteur de distance est bien conservée tout au long du scan. Enfin, elle garde le moteur maintenu afin d'éviter les soubresauts ou le déplacement non souhaité du moteur.

La seconde pièce, "support capteur de mesure de distance", est une partie mécanique plus complexe, permettant de maintenir le capteur de mesure de distance droit et orienté vers l'objet à scanner, tout en le faisant s'élever grâce à l'axe hélicoïdale.

Enfin la dernière, "le support moteur du plateau tournant", permet le maintien du moteur et facilite le maintien de la distance plateau tournant-capteur.


Ne maîtrisant véritablement que l'imprimante Dagoma jusqu'à présent, j'ai également utilisé une partie mon temps libre pour faire une formation au Fabricarium dans le but de maîtriser toutes les imprimantes 3D mises à disposition. Je pourrais ainsi imprimer mes différentes pièces une fois celles ci modélisées.


De plus, la commande Farnel étant arrivée juste avant le début des vacances, j'ai pu récupérer le capteur de mesure de distance que j'attendais. Je vais ainsi pourvoir éventuellement procéder à quelques tests sur son fonctionnement pendant les vacances, pour m'avancer un peu.



note pour moi même :

finioler wiki cf remarque rex

capteur de distance reçu

tableau

datasheet à joindre

dessin dans cahier a poursuivre et mettre sur wiki

faire fichier pour découpe laser

penser a voir pcb

imprimer moi

Semaine 7

wiki semaine 6 et vacances et semaine 7 a poursuivre corrigr fautes d'orthograĥes ordre du jour : test capteur mesure distance test scaner différentes conditions réimpression fab ?- papa noel alim 300watt ! Abaisseur de tension carte PCB ?

Semaine 8

Semaine 9

Semaine 10

Semaines supplémentaires

Documents Rendus