Inspirée par une idée fausse d’une CNC « Cupcake », ce projet de semestre 1 mécatronique prend en entrée depuis une interface graphique comme peinture, envoie des commandes par le biais de Arduino et fonctionne par l’intermédiaire de moteurs pas à pas sur les tiges filetées.
Le logiciel est en Python, en utilisant TKinter. Il permet la sélection de la taille (jusqu'à 11 x 13" rectangulaire), forme (rectangle ou un cercle) et la couleur du gâteau, puis ouvre un canevas approprié avec une palette de couleurs et de conseils. Le Python enregistre les points dans un chemin d’accès et, à la pression d’un bouton, envoie la conception sur la série à deux Arduinos.
Parmi les deux Arduinos contrôle les moteurs pas à pas (contrôle des tiges en X filetées et Y) se déplacer à une vitesse constante entre des points situés dans le chemin d’accès. L’autre Arduino exécute un servo dans l’axe Z, qui utilise un système de crémaillère et broches piston pour distribuer le glaçage. Le servo s’arrête pour ramasser entre les points ou les pauses pour le changement de couleur/buse.
La plaque d’acrylique qui détient le gâteau est apposée sur un écrou qui monte sur la tige filetée de l’axe des abscisses ; le mécanisme de distribution se déplace dans l’axe des y. Ces deux axes sont également contrôlés avec fin de course, qui constituent le mécanisme de mise à zéro. Il y a aussi un axe z manuel qui déplace le mécanisme de distribution pour ajuster la hauteur du gâteau.
Ce produit est tout le travail original de cinq étudiants dans une classe à Franklin W. Olin College of Engineering. Il a été présenté dans le magazine Wired, Gizmodo et d’ailleurs. Nous étions tous seulement à apprendre Python, avait été présenté à microcontrôleurs quelques semaines plus tôt et avait seulement un peu d’expérience dans l’atelier d’usinage. Nous avons fait des esquisses de conception et de tableau blanc SolidWorks à projet fini !
Vous pouvez également consulter notre site Web, bien qu’à partir de 8/2012, la plupart du contenu a été migré ici !
Le système mécaniqueLe système mécanique a été conçu dans SolidWorks, avec l’aide des superviseurs machine shop Olin College.
La motion de caractéristiques de système en 3 axes à commande numérique d’axes X et Y, ainsi que deux propositions indépendantes dans l’axe z. Le tableau acrylique ci-dessus détient le gâteau, ce qui est déplacé en arrière le long de l’axe des x, tandis que la tête de buse de glaçage se déplace dans l’axe des y. Nous avons choisi de faire de chaque composant se déplacent dans un axe pour simplifier la conception et nécessitent moins de produit. Nous avons ensuite une poignée rotative qui permet à l’utilisateur de régler la machine pour des hauteurs allant de. 5 « à 4". Nous avons une distance totale de son voyage de 13" dans l’axe des x et 11" dans l’axe des y.
Axe x
Nous avons choisi de déplacer le gâteau sur l’axe des x au lieu de la tête de buse, parce que nous avons déterminé qu’il serait plus facile de changer le glaçage si la tête de buse déplacé uniquement dans un seul axe. Nous avons décidé d’utiliser les curseurs de tiroir comme guides, et un moteur pas à pas couplé à une vis de plomb comme moyen de déplacement le gâteau linéairement le long de l’axe. Comme l’arbre de sortie moteur tourne, il tourne la tige filetée, qui provoque l’écrou de contrôle (qui est fixé sur le support de la table de gâteau) aller de l’avant et en arrière.
Axe Y
Bien qu’ayant la buse de glaçage fixe rendrait encore plus facile de changer les bouts de glaçage ou de la buse, nous avons réalisé que déplacer le gâteau en deux axes wouldresult dans notre ayant besoin d’une taille de base de quatre fois la surface du gâteau (parce que nous aurions besoin de déplacer le gâteau de manière qui nous a permis de dessiner sur chaque partie de celui-ci). Nous avons décidé de sauver matériel et aller avec le déplacement de la tête de buse dans le y. La tête de buse entière se déplace dans l’axe des y, avec le même mouvement général comme le x. Le nombre total de voyages pour cet axe est de 11". Cela nous permet de dessiner le long de toute la hauteur du gâteau et conserve la taille de la machine vers le bas.
Axe Z
La tête de buse propose le réglage en hauteur, qui permet à l’utilisateur d’ajuster des tailles différentes de gâteau. La tête de buse comporte également le mécanisme de distribution de glaçage qui implique un servo, un piston, qui est monté sur un rack de conduite. Le panier est ensuite entraîné par le pignon, qui est monté sur le servo. Comme le servo tourne, il pousse le piston vers le bas, qui distribue à son tour le glaçage. Le servo dispense le glaçage à un taux fixé pendant que dessine la machine et s’arrête pour lui permettre de faire des lignes distinctes. Lorsque nous manquer de glaçage ou la couleur doit être changée, glaçage cesse de distribution afin de permettre à l’utilisateur de le modifier. Une fois que le glaçage est changé, l’utilisateur peut appuyer sur un bouton pour continuer le glaçage.
Fabrication
Alors que nous avons acheté quelques pièces, telles que la poignée, le distributeur de glaçage et la tige filetée, la grande majorité des pièces dans notre projet ont été usinée dans la maison. Cela gardé nos coûts vers le bas et nous a permis d’apporter des modifications à la conception que nous avons. Le design est léger, malgré sa taille, car nous avons utilisé des minces d’aluminium pendant la majeure partie de notre structure. Alors que la structure de la base est soudé TIG, le reste du projet est démontable pour le nettoyage ou le transport.
La partie électrique de notre projet axé sur le contrôle de nos moteurs pas à pas. Nous avons choisi d’utiliser un contrôleur Toshiba TB6560HQ pour chaque moteur. Ces contrôleurs peuvent accéder jusqu'à 3 ampères qui était certainement assez élevé pour alimenter nos moteurs. Nous avons dû plier et souder les broches du contrôleur afin de connecter correctement à la maquette. Dissipateurs thermiques ont été également reliés au contrôleur pour empêcher les contrôleurs de souffler. Nous avons utilisé 2 contrôleurs, entraînées par une alimentation 5 volts alimenté. Ces deux moteurs combinés provenant de 4 volts, avec une puissance totale de 12 volts.
ArduinoLes deux Arduinos (breadboardable iduinos) exploité à l’unisson pour des fonctions différentes. Arduino 1 interprété PySerial, envoyés en Python et envoyé des commandes sur deux broches de logique et de deux broches de pouls à deux moteurs pas à pas selon ces commandes. Les broches de logique déterminé le sens des flèches de défilement ; les broches de l’impulsion, leur fréquence de rotation. Il est également sortie sur une troisième broche de logique, qui de sortie à une LED et à 2 Arduino. 2 Arduino contrôlé le mouvement de l’asservissement qui a distribué le glaçage. Il a été codé pour lentement puiser, puis rentrer et faire une pause pour recharger jusqu'à ce qu’un bouton sur le circuit (une broche d’entrée à l’Arduino) a été activé. L’entrée pin sur Arduino 2, de la sortie de Arduino 1, était destiné à permettre des interprétations reçues via PySerial à envoyer via Arduino 1 à 2 de l’Arduino, telle que la dispensation de glaçage pourrait être suspendue par programme. Cette fonctionnalité, cependant, ne s’est jamais concrétisée.
Un Arduino analyse des distances et la logique variables envoyées par le GUI de Python sur la série. Il traduit ces signaux par impulsions qui exploitent des x et y moteur pas à pas. Le deuxième Arduino exécute le servo qui distribue le glaçage à un rythme régulier sur le gâteau. Cette deuxième ardino est contrôlé par une épingle de logique sur l’arduino première (distribution ou distribution ne pas) et par sa propre surveillance d’État du plongeur. Une fois que le piston de givrage a été vidé, le servo tire vers le haut et attend qu’un bouton, ce qui signifie que le glaçage a été rechargé.
Le code Arduino peut être trouvé ici.
Python GUIUtilisateurs de conçoivent des gâteaux sur une interface graphique de la peinture de style (GUI), et AutoFrost les transforme en réalité. Nous avons écrit notre GUI utilisant Python et Tkinter. Aspirants gâteau décorateurs peuvent contrôler glaçage de couleurs et de formes de buse tandis que la rédaction de leur gâteau de rêve. Comme les utilisateurs de tirage, nous accumuler des points à intervalles espacés régulièrement et stocker leur emplacement, leur couleur et forme. Puis nous analyser en forme de couleur et de la buse (intervention de l’utilisateur chaque fois qu’un changement s’impose) et envoyer la distance en x, y-distance et commandes de glaçage-ou-non à nos trois moteurs.
Code Python est téléchargeable ici.
Profitez !
-Karan, Tim, Kelsey, Tara et Ilana