Table des matières:

Machine de tri à vis : 7 étapes (avec photos)
Machine de tri à vis : 7 étapes (avec photos)

Vidéo: Machine de tri à vis : 7 étapes (avec photos)

Vidéo: Machine de tri à vis : 7 étapes (avec photos)
Vidéo: Le Plus Grand Point Noir Du Monde ?😱 2024, Novembre
Anonim
Image
Image
Faire la boîte à lumière
Faire la boîte à lumière

Un jour au labo (FabLab Moscou), j'ai vu mon collègue occupé à trier une boîte pleine de vis, écrous, bagues et autre matériel. S'arrêtant à côté de lui, j'ai regardé pendant une seconde et j'ai dit: "Ce serait un travail parfait pour une machine." Après un rapide coup d'oeil sur google j'ai vu que différents systèmes mécaniques ingénieux existaient déjà mais ils n'ont pas pu résoudre notre problème car dans notre boite se trouve une grande variété de pièces. Faire quelque chose de purement mécanique serait assez compliqué. L'autre bonne raison d'aller vers un système plus "robotique" était que cela nécessiterait tous les domaines techniques que j'aime: vision industrielle, bras robotisés et actionneurs électromécaniques !

Cette machine récupère les vis et les place dans différentes boîtes. Il se compose d'un bras robotisé qui manipule un électro-aimant, une table de travail translucide au-dessus des lumières et une caméra sur le dessus. Après avoir étalé quelques vis et écrous sur la table de travail, les lumières sont allumées et une photo est prise. Un algorithme détecte les formes des pièces et renvoie leurs positions. Enfin le bras avec l'électro-aimant place les pièces une à une dans les cases souhaitées.

Ce projet est encore en développement mais maintenant j'obtiens des résultats décents que je veux partager avec vous.

Étape 1: Outils et matériel

Outils

  • Découpeur laser
  • Meuleuse d'angle
  • Scie à métaux
  • Tournevis
  • Pinces (plus il y en a, mieux c'est)
  • Pistolet à colle chaude

Matériel

  • Contreplaqué 3mm (1 m2)
  • Contreplaqué 6 mm (300 x 200 mm)
  • Plastique blanc translucide 4mm (500 x 250 mm)
  • Ordinateur (j'essaie de passer à raspberry pi)
  • Webcam (Logitech HD T20p, tout le monde devrait travailler)
  • Arduino avec 4 sorties PWM / analogWrite (trois servos et la bobine de l'électroaimant) (j'utilise le ProTrinket 5V)
  • Carte de prototypage
  • Fil électronique (2m)
  • Transistor de commutation (n'importe quel transistor pouvant piloter une bobine de 2W) (j'ai S8050)
  • Diode (Schottky c'est mieux)
  • 2 résistances (100Ω, 330Ω)
  • Alimentation 5V, 2A
  • Micro servo (largeur 13 longueur 29 mm)
  • 2 servos standard (largeur 20 longueur 38 mm)
  • Colle à bois
  • 4 coins métalliques avec vis (facultatif)
  • Tige en bois (30 x 20 x 2400)
  • Colle chaude
  • Fil de cuivre émaillé (0,2, 0,3 mm de diamètre, 5 m) (ancien transformateur ?)
  • Fer doux (16 x 25 x4 mm)
  • 3 ampoules avec douille
  • Barrette de connexion (230V, 6 éléments)
  • Fil électrique avec prise (230V) (2 m)
  • Roulement 625ZZ (diamètre intérieur 5 mm, diamètre extérieur 16 mm, hauteur 5 mm)
  • Roulement 608ZZ (diamètre intérieur 8 mm, diamètre extérieur 22 mm, hauteur 7 mm)
  • Roulement rb-lyn-317 (diamètre intérieur 3 mm, diamètre extérieur 8 mm, hauteur 4 mm)
  • Courroie de distribution GT2 (pas de 2 mm, largeur de 6 mm, 650 mm)
  • Vis M5 x 35
  • Vis M8 x 40
  • 8 vis M3 x 15
  • 4 vis M4 x 60
  • 6 vis à bois 2 x 8 mm
  • Vis M3 x 10
  • Module de carte relais (directement contrôlable par contrôleur)

Étape 2: Fabriquer la boîte à lumière

Faire la boîte à lumière
Faire la boîte à lumière
Faire la boîte à lumière
Faire la boîte à lumière
Faire la boîte à lumière
Faire la boîte à lumière

La boîte à lumière a quatre parties principales et quelques accolades. Téléchargez ces pièces et collez-les ensemble sauf le plastique translucide. J'ai commencé avec le demi-disque en bois et le mur incurvé. Vous devez garder le mur serré autour du disque pendant le séchage. J'ai utilisé des pinces pour fixer le demi-disque et la base du mur incurvé. Ensuite, du ruban adhésif maintient la paroi autour du demi-disque. Deuxièmement, j'ai collé un rebord pour résister à la table de travail translucide. Enfin, le mur plat est ajouté avec des bords droits en bois (intérieur) et métalliques (extérieur).

Une fois le boîtier terminé, il vous suffit d'ajouter les ampoules et de connecter le fil et la prise avec la barrette de connexion. Coupez le fil 230V à votre convenance et insérez le module relais. J'ai enfermé le relais (230V !) dans une boite en bois pour des raisons de sécurité.

Étape 3: Fabriquez le bras du robot

Faire le bras du robot
Faire le bras du robot
Faire le bras du robot
Faire le bras du robot
Faire le bras du robot
Faire le bras du robot

Téléchargez les pièces et coupez-les. Pour fixer la courroie sur le servomoteur j'ai utilisé des morceaux de trombones. J'ai cloué les courroies en deux parties sur le servomoteur et j'ai ajouté de la colle pour être sûr que rien ne bouge.

Pour le guidage vertical linéaire, le piston doit être poncé pour éviter tout blocage. Il doit glisser en douceur. Une fois assemblé, la hauteur peut être ajustée en coupant le guidage à la longueur souhaitée. Cependant, gardez-le aussi longtemps que possible pour éviter un verrouillage trop centré. Le piston est simplement collé au boîtier du bras.

Les roulements sont enfermés à l'intérieur des poulies. Une poulie est constituée de deux couches de contreplaqué. Ces deux couches ne se touchent pas forcément donc au lieu de les coller ensemble, collez-les sur leur plaque de bras respective. Les plaques de bras haut et bas sont maintenues par quatre vis et écrous M3 x 15. Le premier axe (le grand) est simplement la vis M8 x 40 et le second (le petit) la vis M5 x 35. Utilisez des écrous comme entretoises et verrous pour les pièces du bras.

Étape 4: Faire l'électro-aimant

Faire l'électro-aimant
Faire l'électro-aimant
Faire l'électro-aimant
Faire l'électro-aimant
Faire l'électro-aimant
Faire l'électro-aimant

Un électro-aimant est simplement un noyau de fer doux entouré de fil de cuivre émaillé. Le noyau de fer doux guide le champ magnétique à l'endroit souhaité. Le courant dans le fil de cuivre émaillé crée ce champ magnétique (il est proportionnel). De plus, plus vous faites de tours, plus vous avez de champ magnétique. J'ai conçu un fer en forme de U pour concentrer le champ magnétique près des vis accrochées et augmenter la force de préhension.

Coupez une forme en U dans un morceau de fer doux (hauteur: 25 mm, largeur: 15 mm, section du fer: 5 x 4 mm). Il est très important d'enlever les arêtes vives avant d'enrouler le fil autour du fer en forme de U. Attention à garder le même sens d'enroulement (notamment lorsque vous sautez de l'autre côté, vous devez changer le sens de rotation de votre point de vue mais vous gardez le même sens du point de vue fer en U)(https://en.wikipedia.org/wiki/Right-hand_rule) Avant de brancher la bobine au circuit, vérifiez la résistance de la bobine avec un multimètre et calculez le courant avec la loi d'Ohm (U=RI). J'ai plus de 200 tours sur ma bobine. Je vous suggère d'enrouler jusqu'à ce que vous n'ayez que 2 mm d'espace à l'intérieur de la forme en U.

Un support en bois a été fabriqué et le fer en forme de U a été fixé avec de la colle chaude. Deux fentes permettent de fixer le fil aux deux extrémités. Enfin deux épingles sont clouées sur le support en bois. Ils font la jonction entre le fil de cuivre émaillé et le fil électronique. Pour éviter tout endommagement de la bobine, j'ai ajouté une couche de colle chaude tout autour de la bobine. Sur la dernière photo vous pouvez observer une pièce en bois qui ferme le fer en forme de U. Sa fonction est d'éviter que des vis ne se coincent à l'intérieur du fer en U.

Le fil de cuivre émaillé provient d'un transformateur cassé. Si vous le faites, vérifiez que le fil n'est pas cassé ou n'a pas de court-circuit dans la partie utilisée. Retirez le ruban sur le noyau ferromagnétique. A l'aide d'un cutter, détachez une à une toutes les tranches de fer. Retirez ensuite le ruban adhésif sur la bobine et déroulez enfin le tonnelier en fil émaillé. L'enroulement secondaire (la bobine de grand diamètre) a été utilisé (transformateur entrée 230V, sortie 5V-1A).

Étape 5: faire le circuit

Faire le circuit
Faire le circuit
Faire le circuit
Faire le circuit

Sur une carte de prototypage, j'ai construit le schéma ci-dessus. Un transistor bipolaire (S8050) a été utilisé pour commuter la bobine de l'électroaimant. Vérifiez que votre transistor peut supporter le courant calculé à l'étape précédente. Un MOSFET est probablement plus adapté dans cette situation mais j'ai pris ce que j'avais sous la main (et je voulais une faible résistance à l'état passant). Ajustez les deux résistances à votre transistor.

Dans le schéma ci-dessus, les icônes VCC et GND sont connectées aux + et - de mon alimentation. Les servomoteurs ont trois fils: Signal, VCC et GND. Seul le fil de signal est connecté au contrôleur, les autres sont connectés à l'alimentation. Le contrôleur est alimenté par le câble du programmateur.

Étape 6: le code

Dernier point mais non le moindre: le code. Vous le trouverez ici:

Il y a un programme pour le contrôleur (type arduino) et un autre qui tourne sur l'ordinateur (j'espère bientôt sur raspberry). Le code sur le contrôleur est responsable de la planification de la trajectoire et celui sur l'ordinateur effectue le traitement de l'image et envoie la position résultante au contrôleur. Le traitement des images est basé sur OpenCV.

Le programme informatique

Le programme prend une image avec la webcam et les lumières, détecte le centre et le rayon de la table de travail translucide et corrige la rotation éventuelle de l'image. A partir de ces valeurs, le programme calcule la position du robot (On connait la position du robot en fonction de la plaque). Le programme utilise la fonction de détection de gouttes d'OpenCV pour détecter les vis et les boulons. Les différents types de blobs sont filtrés avec les paramètres disponibles (surface, couleur, circularité, convexité, inertie) afin de sélectionner le composant souhaité. Le résultat du détecteur de blobs est la position (en pixels) des blobs sélectionnés. Ensuite, une fonction transforme ces positions de pixels en positions millimétriques dans le système de coordonnées du bras (orthogonal). Une autre fonction calcule la position requise de chaque jointure de bras afin d'avoir l'électro-aimant à la position désirée. Le résultat consiste en trois angles qui sont finalement envoyés au contrôleur.

Le programme du contrôleur

Ce programme reçoit les angles de jointure et déplace les parties du bras pour atteindre ces angles. Il calcule d'abord la vitesse maximale de chaque jointure afin d'effectuer le déplacement pendant le même intervalle de temps. Ensuite, il vérifie si ces vitesses de pointe sont jamais atteintes, dans ce cas le mouvement suivra trois phases: accélération, vitesse constante et décélération. Si la vitesse maximale n'est pas atteinte, le mouvement ne suivra que deux phases: accélération et décélération. Les moments auxquels il doit passer d'une phase à l'autre sont également calculés. Enfin le mouvement est exécuté: A intervalles réguliers, les nouveaux angles réels sont calculés et envoyés. S'il est temps de passer à la phase d'imbrication, l'exécution passe à la phase suivante.

Étape 7: les touches finales

Les touches finales
Les touches finales

Le cadre

Un cadre a été ajouté pour tenir la caméra. J'ai choisi de le faire avec du bois car il est bon marché, facile à travailler, facile à trouver, écologique, agréable à façonner et il reste dans le style avec lequel j'ai commencé. Faites un test d'image avec la caméra pour décider de la hauteur nécessaire. Assurez-vous également de le rendre rigide et fixe car j'ai remarqué que la position résultante est très sensible aux mouvements de la caméra (au moins avant d'ajouter la fonction de détection automatique de la table de travail). La caméra doit être située au centre de la table de travail et, dans mon cas, à 520 mm de la surface blanche translucide.

Les boîtes

Comme vous pouvez le voir sur la photo, les boîtes de rangement mobiles se trouvent sur la partie plate de la table de travail. Vous pouvez créer autant de boîtes que nécessaire, mais avec ma configuration actuelle, l'espace est assez limité. Néanmoins j'ai des idées pour améliorer ce point (cf. futures améliorations).

Améliorations futures

  • Pour le moment la courroie de distribution est fermée par une pièce en bois mais cette solution limite la zone que peut atteindre le bras. Je dois ajouter plus d'espace entre le gros servo et l'axe du bras ou faire un système de fermeture plus petit.
  • Les boîtes sont le long du bord plat de la table de travail, si je les mets le long du bord du demi-cercle, j'aurais beaucoup plus d'espace pour ajouter des boîtes et trier de nombreux types de composants.
  • Maintenant le filtre de détection de blob suffit pour trier les pièces mais comme je veux augmenter le nombre de boites, il va falloir que j'augmente la sélectivité. Pour cette raison, je vais essayer différentes méthodes de reconnaissance.
  • Maintenant, les servomoteurs que j'utilise n'ont pas assez de portée pour atteindre toute la table de travail en demi-disque. Je dois changer les servos ou changer le facteur de réduction entre les différentes poulies.
  • Certains problèmes surviennent assez souvent, l'amélioration de la fiabilité est donc la priorité. Pour cela, je dois classer le type de problèmes et me concentrer sur les plus probables. C'est déjà ce que j'ai fait avec le petit morceau de bois qui ferme le fer en forme de U et l'algorithme du centre de détection automatique mais maintenant les problèmes deviennent plus compliqués à résoudre.
  • Faire un PCB pour le contrôleur et le circuit électronique.
  • Migrer le code vers Raspberry pi pour avoir une station autonome
Concours d'organisation
Concours d'organisation
Concours d'organisation
Concours d'organisation

Deuxième prix du concours d'organisation

Conseillé: