IMA4 2017/2018 P67 : Différence entre versions
(→Semaine 2) |
(→Semaine 3) |
||
Ligne 450 : | Ligne 450 : | ||
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. | 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== | ==Semaine 3== | ||
Ligne 474 : | Ligne 476 : | ||
[code micro version 1] | [code micro version 1] | ||
+ | [[Fichier:global2.jpg||left|vignette|upright=1|]] | ||
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. | 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. | ||
Ligne 482 : | Ligne 485 : | ||
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.''' | 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] | |
− | [video montage fonctionnel | ||
Version du 4 février 2018 à 22:01
Sommaire
Présentation générale
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.
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 et 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 (voir 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.
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é (qu'on scanne ou non la 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
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
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
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 | |||||||||
Code et mise en rotation optimisée des moteurs | 3H | 3H | 4H | |||||||||
rédaction du wiki | 4H | 3H | 2H30 | 3H | ||||||||
conception et réalisation de pièce (découpe laser / Imprimante 3D) | 1H30 | |||||||||||
Test de la kinect | ||||||||||||
etape | ||||||||||||
etape | ||||||||||||
etape | ||||||||||||
etape | ||||||||||||
total | 19H | 11H | 8H30 | 10H30 |
Prologue
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
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.
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.
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.
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.
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
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).
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
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 !
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.
[code micro version 1]
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)).
Fin de semaine
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é.