En 2012, mon activité dans le domaine de l'électronique a commencé, tandis qu'Internet m'a fait découvrir de nombreuses bonnes personnes, dont certaines avec lesquelles nous communiquons encore. Habituellement, nous partageons des expériences, des succès et des échecs, discutons de nouveaux produits électroniques, de diverses idées et des nouveautés que vous pouvez développer ou étudier.
Depuis, une tradition naît au début de chaque année pour rédiger une fiche TODO dans laquelle toutes les idées, y compris les folles, sont écrites. Au cours du processus, la liste a été reconstituée et, à la fin de l'année, les résultats ont été résumés, ce qui s'est passé, ce qui ne s'est pas produit.
Les vacances du Nouvel An, il est passé par-dessus une vieille vis et est tombé accidentellement sur ces mêmes disques. Il s'est avéré qu'une façon ou une autre a déjà été mise en œuvre. Tous les installateurs SMD sauf un.
Nous avons discuté de l'idée de sa création plus d'une fois, mais le mécanicien m'a effrayé - et si cela ne fonctionnait pas. Par conséquent, c'était encore plus comme un rêve impossible.
Sous l'influence de la nostalgie, il grimpe pour regarder des vidéos, soupire, réalisant que le rêve reste un rêve. Puis, par pure curiosité, j'ai regardé ce que le monde open source offre et suis tombé sur Openpnp. Je ne dirai pas que je n'en ai pas entendu parler auparavant, mais de toute façon peu de ceux qui ont répété la construction, c'était très alarmant. Cette fois, leur site a été étudié plus en détail, entre autres choses, il y avait une liste de bombes, un firmware pour le contrôleur et un programme pour le PC. Puis, éteignant le cerveau pendant une seconde, j'ai commandé la première partie de la liste et j'ai décidé qu'il était trop tard pour battre en retraite.
J'espère qu'à partir de cette introduction, il est devenu clair que l'auteur n'avait pas auparavant assemblé de machines de pick and place. Il n'y avait aucun but et faire un produit commercial. Par conséquent, je n'exclus pas que plus loin dans le texte, il y aura des erreurs de termes et certaines conclusions peuvent être incorrectes. Je voulais simplement répéter l'appareil, en trier les principes et essayer ma main. Je voudrais partager cela avec le lecteur.
La première chose qui est trompeuse est la raison d'être d'OpenPnP. Aujourd'hui encore, il est difficile de répondre à cette question. Le matériel peut être très différent, par exemple, ma construction est basée sur le matériel d'OpenBuilds et du contrôleur Smoothieboard, les deux sociétés n'ont rien à voir avec OpenPnP. Vous pouvez facilement jeter n'importe quel composant du morceau de fer et l'échanger contre un autre. Les principes restent communs: il existe un programme du même nom pour le PC dans lequel vous chargez le pick and place depuis votre traceur, puis le programme envoie des commandes au contrôleur, allez-y, allumez-le.
L'apparition du programme.

Comme mentionné ci-dessus, le cadre principal est tiré d'OpenBuilds, des rails à rainure en V sont utilisés comme guides. Pour moi, ce fut une révélation, en un mot, il est difficile d'expliquer tous leurs avantages, mais il est très simple d'en faire des dessins.

Si vous devez attacher quelque chose au rail, des plaques filetées y sont insérées sur le côté, leur nom officiel est t-nut.

Ils sont simples et doubles. Cela ressemble à une assiette ordinaire avec un fil, j'ai même suggéré au début de trouver quelque chose de similaire dans les magasins locaux, car ils ne sont pas bon marché. Cependant, ne vous laissez pas berner par leur simplicité apparente. Leur filet dépasse au-dessus de la plaque et cela s'est avéré très important lors du serrage de la vis. La monture est très solide.
Comment se passe le mouvement le long des axes? L'idée de base est qu'un simple chariot est inséré dans les évidements latéraux, sur la plate-forme supérieure dont vous pouvez déjà attacher quoi que ce soit.

Le chariot lui-même est simple - c'est une plaque à quatre rouleaux. La position des rouleaux est réglée par des écrous - excentriques, ils aident à régler la pression des roues sur le rail. Cela dépend de la force avec laquelle elle se déplacera.
Une plaque d'extrémité est portée à chaque extrémité du rail.

Il y a des trous sur le côté de la plaque sur lesquels un moteur Nema17 est monté. Une roue dentée est placée sur le moteur, ce qui tire la courroie, la courroie est attachée au chariot avec deux extrémités. Ainsi, lorsque le moteur tourne dans un sens, le chariot se déplace vers l'avant, dans l'autre - vers l'arrière.

À la deuxième extrémité du rail, il y a simplement un arbre le long duquel glisse la bande.

Maintenant, les subtilités qui ont surgi. Plaque d'extrémité. Je ne sais pas à quel point c'est dur dans l'original, le fait est que les prix des openbuilds sont pour la plupart adéquats, mais pas un prix adéquat pour la livraison. Par conséquent, presque tout a été acheté avec ali. Y compris ce détail.
Les plaques se plient très facilement et l'oreille inférieure s'efforce de se détacher. Dans l'assemblage d'origine, le cadre est fixé pour cela, j'ai dû utiliser les trous latéraux. Mais sinon, il n'a pas joué de rôle, il reste mort sur le rail.
À propos des rails. C'est l'une des rares pièces que j'ai achetées en Russie, car il y a une opinion selon laquelle elles sont chassées de la Chine courbée. Il n'y avait aucun désir de vérifier si c'était le cas, mais les acheter aux habitants était cette quête. Selon les annonces, elles sont partout, en fait ou non disponibles, ou personne ne veut vous contacter pendant 3m. Très souvent, sous le couvert de V-slot, ils proposent des T-slot, qui sont très similaires et plus abordables. Il y a une opinion qu'ils sont remplaçables dans ce cas, mais n'a pas osé vérifier. En conséquence, ils n'étaient disponibles qu'en un seul endroit, il s'agissait de payer pour la livraison plus que le prix des racks eux-mêmes.
Vis. Dans l'original, toutes les fixations à tête hexagonale. Au début, il n'était pas clair pourquoi. Premièrement, il est difficile d’obtenir la bonne longueur, et deuxièmement, ils coûtent un ordre de grandeur plus cher. Par conséquent, il a pris une partie de l'attache sous un tournevis cruciforme, l'a sincèrement regretté plus d'une fois. L'hexagone est beaucoup plus facile à dévisser parfois, et quand vous ne comprenez toujours pas comment cela fonctionne, vous avez dû le dévisser 10 fois.
La taille du champ. La longueur des lattes d'origine est de 400x400. Je pense que beaucoup de gens, comme moi, assemblent rarement des planches de grande taille. Par conséquent, la taille me semblait énorme. En pratique, ce n'était pas le cas. Bien qu'une petite partie, mais que les extrémités soient rongées, une autre partie va aux plaques d'angle, une autre partie à la tête, etc. En conséquence, le champ réel est un peu plus de 250x250, et ce n'est pas tellement.
Ressorts pour tendre la courroie. Au début, je les ai ignorés. Cela semblait être une chose inutile. En pratique, lors des premiers essais sur l'axe Y, il y avait toujours une légère erreur. Au final, j'ai dû comprendre ce qu'est un ressort avec un étrange marquage 7/32 ".

Sinon, il n'y a eu aucune question avec la base, la mécanique va être très simple. Le processus d'assemblage complet d'un rail est bien illustré dans la vidéo.
Vous aurez peut-être la même question que la mienne, pourquoi ne pas prendre une tige filetée comme guide? Pourquoi ces crémaillères, ceintures, engrenages? Il y a une opinion qui est apparue dans l'un des forums qu'un arbre sous son propre poids aura une légère courbure au centre, ce qui créera une erreur. Et faire un arbre exact sera beaucoup plus cher.
La question suivante se pose immédiatement, comment fonctionne exactement tout ce design? Honnêtement, je ne sais pas comment évaluer. Subjectivement - très précisément, dépassé les attentes. Si vous mettez une règle de fer et que vous la parcourez, en contrôlant le long de la caméra, alors d'un millimètre à un millimètre. Je n'ai pas remarqué une accumulation évidente d'erreur.
La prochaine partie de l'histoire est le contrôleur. Dans l'OpenPnP d'origine, il existe un Smoothieboard orienté vers les imprimantes 3D, mais cela ne les empêche pas de s'adapter à une machine pnp. Si vous creusez profondément, à bord, il a un microcontrôleur LPC1769 et une paire de pilotes de moteur pas à pas. Que certains lecteurs me condamnent, mais le prix de 150 euros, hors livraison, semblait insuffisant pour une planche de ce niveau. La chose la plus intéressante est que la carte est positionnée en open source, mais je n'ai pas pu trouver la version saine de pcb ou de gerberas.
En conséquence, le problème résolu par lui-même, il s'est avéré que les Chinois ont un conseil similaire.

Nous devons immédiatement faire une réserve que les planches sont très similaires, mais pas identiques. Les pierres sont les mêmes et la disposition GPIO est similaire, donc le logiciel convient. Néanmoins, il existe des différences mineures. Tous les paramètres sont stockés dans un fichier texte sur la carte mémoire. Il y a beaucoup de paramètres et c'est un sujet pour un article séparé. Il y a Ethernet à bord, si vous l'activez, vous pouvez parcourir les axes via un navigateur Web.
Sinon, tout le contrôle de la carte est effectué via USB-UART, sur un PC, il est défini comme un port COM virtuel ordinaire, c'est-à-dire le programme lance des codes G sur Wart et le contrôleur ne les exécute que. Au total, la machine a 3 axes principaux: X - le faisceau supérieur, lorsque la tête va de gauche à droite, un seul moteur tire. Y - abaisser 2 rails, monter et descendre tirer deux moteurs en même temps. Z - abaissement de la buse vers le haut, vers le bas. Dans ce cas, la machine utilise un système de coordonnées droitier, c'est-à-dire coin inférieur droit - la maison est 0, 0. La maison est déterminée par les interrupteurs de fin de course, en fait le GPIO habituel. Un axe C supplémentaire est également utilisé, qui est responsable de la rotation du composant.
Sur les problèmes du contrôleur, il n'y a rien de spécial à dire, mais globalement toutes les plaies inhérentes au port COM sont évidentes - parfois le port lui-même se bloque jusqu'au redémarrage de la carte. Il y avait un bug que le contrôleur allait parfois dans la mauvaise direction, mais il a été traité avec un nouveau firmware.
Maintenant, la chose la plus importante est la tête. Ici, avec elle, il y avait surtout des incompréhensions. Il convient d'expliquer comment le composant est généralement capturé - par le vide. Pour cela, une pompe 12V est utilisée, à partir de laquelle le tube va à la valve. Dans l'original, la pompe ne fonctionne que lorsqu'elle s'approche du composant, je n'avais pas de gros poteau sur la carte, comme sur la carte d'origine, j'ai donc temporairement laissé la pompe cliqueter constamment.
La vanne est en condition normale fermée, c'est-à-dire l'air n'est pas aspiré. Lorsque la tête s'approche du composant, un signal est donné, la valve s'ouvre et la pompe aspire de l'air à travers le tube. Le tube s'accroche au moteur avec un arbre creux, de l'autre côté du moteur une buse est connectée via un adaptateur.
À quoi devait faire face. Le tube doit être en polyuréthane, car il est suffisamment rigide pour ne pas se coincer. Les moteurs Nema8 sont exactement les mêmes sur la photo, mais le vendeur n'a pas envoyé le moteur avec un arbre lisse, ce qui n'a pas permis de fixer l'adaptateur avec la buse. J'ai dû en commander de nouveaux.
La buse elle-même dans le bom d'origine était comme ça

Les expériences ont montré qu'il est impossible de l'utiliser, comme on le voit sur la photo, c'est un morceau de tube. Pour cette raison, il y a beaucoup de problèmes avec l'étalonnage, car la buse repose toujours fermement sur le composant. Pendant ce temps, sur les vidéos pour lesquelles je priais, il y avait une autre buse avec un ressort, qui a finalement dû être commandée.

La buse est abaissée grâce au moteur Z, c'est-à-dire il tourne et la bascule appuie sur la pièce tenant le moteur en C (la même chose avec un arbre creux).

Qui, à son tour, se déplace le long d'un guide linéaire et est connecté par un ressort, c'est-à-dire lorsque le moteur n'appuie pas sur l'axe Z, puis à cause du ressort, la tête revient à son état d'origine. L'axe C, le même moteur à arbre creux :) est conçu pour déployer le composant.
Maintenant, la chose la plus importante est de savoir comment fonctionne toute cette conception en assemblage? Le programme s'exécute sur le PC. Choisissez et placez à partir de votre traceur est chargé dedans. Vous sélectionnez les composants nécessaires et spécifiez le point de repère, c'est-à-dire enclenchez des points sur la planche. Ils ressemblent à des cercles de cuivre sur la planche.

Vous allez à la "maison", c'est à dire dans le coin inférieur droit jusqu'aux fins de course, afin que la machine comprenne ses coordonnées. Ensuite, vous devez indiquer où se trouve la carte. Pour ce faire, vous devez conduire vos mains dans le coin inférieur gauche de la planche, très approximativement. Nous commençons la recherche de point fiducial, cette procédure est nécessaire pour comprendre l'origine exacte et l'angle de la planche. La recherche est effectuée par la caméra, qui est située sur la tête - haute vision. La reconnaissance des points se fait en utilisant opencv.
Au total, la position de la planche est connue, en raison de la vue de dessus et des composants, en raison des coordonnées relatives déchargées du pick and place. Il ne reste plus qu'à entamer le processus de placement.
Voici le moment où je me suis arrêté jusqu'à présent. Il s'est avéré que commencer le mouvement le long des axes et abaisser la buse n'est pas la chose la plus importante dans cette affaire.

Le problème était la fourniture de composants. L'option la plus simple suppose que le ruban avec les composants sera collé quelque part près de la carte. Comme pour les coordonnées de la carte, pour chaque composant, vous devez indiquer où se trouve la bande. Pour vous dire la vérité, le processus s'avère assez fastidieux, vous devez donc faire immédiatement la fourniture automatique de composants, mais c'est une histoire complètement différente.
Donc, pour tracer une ligne à tout ce qui précède. L'expérience a été intéressante. Et oui, cela en valait la peine, même si ce n'est pas une solution complète. La mécanique n'est pas aussi effrayante qu'elle est peinte. Le monde open source, bien qu'il ne soit toujours pas aussi accueillant, doit encore être remercié à tous ceux qui travaillent de manière désintéressée pour le bien des gens. J'espère vraiment qu'il y aura quelque chose de plus à dire sur ce sujet à l'avenir.
Premiers tests avec une vieille buse
Tests avec une nouvelle buse