Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

désinfectant automatique pour les mains

Composants et fournitures

Arduino Nano R3
× 1
Pilote Theremino DRV8825 pour moteurs pas à pas pour système Theremino
× 1
Câbles de raccordement (générique)
× 1
Planche à pain (générique)
J'ai utilisé 2 mini planches à pain mais tout ira bien
× 1
Batterie 9V (générique)
× 1
Clip de batterie 9V
× 1
Résistance 1k ohm
× 1
Condensateur 100 µF
× 1
28BYJ-48 Moteur pas à pas 4 phases DC 5V pour Arduino (OEM )
× 1
Vissez M3 n'importe quelle longueur de 8mm à 20mm
× 19
Module de capteur infrarouge d'évitement d'obstacles pour Arduino
× 1
Interrupteur de fin de course KW12-3 - Micro-bras de levier à galet normalement ouvert/ Fermer
× 1
Raccord rigide en aluminium 5mm à 8mm
× 1
Vis trapézoïdale T8-300mm avec écrou en laiton, pas de 2mm
× 1
Interrupteur marche-arrêt (générique)
× 1
Désinfectant pour les mains
× 1
Roulement à billes 688zz 8x16x5mm
× 1
Roulement linéaire en polymère solide LM8UU 8x15x24mm
× 1
attaches velcro
× 1

Outils et machines nécessaires

Imprimante 3D (générique)
Le mien est le Creality3D Ender 3 V 2
Fer à souder (générique)
(facultatif)
Scie à métaux (générique)

Applications et services en ligne

Arduino IDE
Programme de conception 3D
(facultatif) j'ai utilisé Onshape
Ultimaker Cura
(Slicer pour impression 3D)

À propos de ce projet

Au cours des derniers mois, la pandémie de COVID-19 a semé le chaos dans le monde entier. Il y a d'innombrables infections et malheureusement de nombreuses victimes. L'une des mesures les plus importantes suggérées par l'Organisation mondiale de la santé est le lavage constant des mains avec du savon ou des désinfectants pour les mains. Mais l'un des problèmes les plus importants est la façon dont nous le faisons et c'est en touchant physiquement le distributeur qui élimine tout le but de l'action et crée même un grand risque d'infection. Alors je , un garçon de 14 ans , a décidé de créer quelque chose en utilisant une carte Arduino Nano qui pourrait lutter contre ce problème, mais je voulais aussi qu'elle soit bon marché et puisse être attachée à de nombreux distributeurs différents facilement, rapidement et efficacement ! Et c'est exactement ce que j'ai fait, un accessoire qui peut être attaché à la plupart des distributeurs de désinfectant pour les mains/savon et retournez-les complètement mains libres et automatique

Regardez d'abord cette vidéo pour voir l'appareil en action et aussi pour comprendre comment il fonctionne et comment il a été fabriqué !

Étape 1 : Comprendre le mécanisme

Donc, fondamentalement, un moteur pas à pas est connecté avec un coupleur à une vis. Ensuite, le presseur imprimé en 3D est relié d'un côté à la vis à l'aide d'un écrou et de l'autre côté, il est soutenu par une tige imprimée en 3D. La tige ne permet pas à la force de rotation de la vis de faire tourner le presseur et à la place le presseur se déplace linéairement . De cette façon, nous pouvons commander au stepper de se déplacer dans n'importe quelle direction (aller et retour), à n'importe quelle vitesse et pour autant de pas que nous le souhaitons.

Étape 2 : comprendre le fonctionnement de l'appareil

Le concept est que lorsque le capteur d'obstacles IR, qui est attaché au support IR imprimé en 3D, est activé, en mettant simplement votre main quelques centimètres en dessous, le presseur descend une distance définie, (en appuyant sur le distributeur) attend 2 secondes puis revient à la position initiale en remontant simplement jusqu'à ce que l'interrupteur de fin de course soit activé. De même, lorsque l'appareil est allumé pour la première fois, le presseur monte jusqu'à ce que l'interrupteur soit activé, puis il s'arrête là, comme une sorte d'auto-étalonnage afin que le presseur soit prêt à l'emploi.

Ensuite, à l'aide des velcros, vous enveloppez le désinfectant pour les mains de votre choix et serrez-le autant que possible.

Maintenant, le distributeur automatique de désinfectant pour les mains est fonctionnel !!

Étape 3 :Rassemblez les composants nécessaires

Tous les liens des composants nécessaires se trouvent dans la section "Choses".

Étape 4 :Concevoir des pièces personnalisées

Toutes les pièces imprimées en 3D ont été conçues par moi sur Onshape, mais vous n'avez pas à vous soucier de la conception 3D car j'ai fourni tous les fichiers.stl dans la section "Pièces jointes".

Étape 5 : Impression 3D de pièces en plastique personnalisées

J'ai imprimé les pièces en 3D sur ma Creality3D Ender 3 V2 en PLA gris et blanc à une hauteur de couche de 0,2 mm et à 20% de remplissage. Si vous n'avez pas accès à une imprimante 3D, vous pouvez essayer d'utiliser du carton ou du bois.

Étape 6 :Modifier le stepper

Le moteur pas à pas 28BYJ-48 est un petit moteur pas à pas vraiment bon marché. C'est un moteur pas à pas unipolaire et a un couple d'environ 300 g/cm qui fonctionne avec notre projet mais je veux qu'il soit plus fort pour de meilleurs résultats. Nous pouvons augmenter le couple à 800+ g/cm en convertissant à un bipolaire moteur avec un mod simple et facile !

Les moteurs pas à pas bipolaires ont des bobines plus grosses et par conséquent beaucoup plus de couple .

Tout d'abord, vous voulez retirer le couvercle bleu avec un tournevis.

Une fois retiré, vous souhaitez couper entièrement la trace du milieu qui monte jusqu'au fil rouge à l'aide d'un couteau.

Vous voulez vous assurer que ce n'est pas plus de connexion.

Vous pouvez maintenant couper le fil rouge des deux côtés.

Vous pouvez maintenant remettre le couvercle bleu en place. J'ai dû couper 2 de ses supports pour pouvoir le remettre en place.

Vous avez maintenant votre propre stepper bipolaire 28BYJ-48. Il a environ 2,5 fois le couple initial. Cependant, vous devrez maintenant vous procurer un pilote pas à pas bipolaire tel que le DRV8825 que j'utilise. L'alimentation en tension minimale pour le pilote est évaluée à 8,4 V et notre moteur est évalué à 5 V. Mais ne vous inquiétez pas, la version bipolaire du moteur peut facilement gérer cette tension !

Étape 7 : 2 attaches velcro à faire soi-même

C'est le moment de réaliser les attaches velcro qui fixeront l'accessoire au distributeur. Si vous avez déjà des serre-câbles velcro, n'hésitez pas à les utiliser.

Vous pouvez les faire aussi longs ou aussi courts que vous le souhaitez, mais je suggère de couper une partie à 30 cm - 40 cm et l'autre à 4 cm - 7 cm.

Maintenant, vous voulez agrafer les deux parties ensemble. Assurez-vous que les côtés qui seront agrafés ensemble sont à la fois rugueux ou mous.

Votre attache velcro est maintenant prête à l'emploi !

Vous en aurez besoin de deux.

Étape 8 :Circuit

Il est temps de créer le circuit électronique ! Pour commencer, connectez la terre de la batterie 9V à la terre Arduino avec un condensateur électrolytique 100μF entre les deux (rappelez-vous que le côté du condensateur avec la ligne blanche est la terre/cathode). Connectez le 9V à un interrupteur générique On-Off puis à Vin sur l'anode du condensateur. J'utilise deux mini planches à pain car elles s'intègrent bien dans le boîtier, utilisez n'importe quelle planche à pain que vous aimez mais tenez compte de l'espace limité.

Connectez le capteur d'obstacles IR VCC à 5V, terre à terre et enfin OUT à la broche numérique 9.

Nous allons maintenant connecter l'interrupteur de fin de course. Connectez la jambe commune à 5V et le normalement ouvert à la broche numérique 8 et à la terre via une résistance de 1kΩ.

Ajoutez le pilote de moteur bipolaire DRV8825 à la maquette. Connectez le Vmot au Vin de l'Arduino. Connectez les deux masses à la masse. Connectez la broche Dir à la broche numérique 2, la broche Step à la broche numérique 3, la broche Enable à la broche numérique 4. Connectez les broches Reset et Sleep l'une à l'autre.

Enfin, connectez le câble bleu du 28BYJ-48 à A2, le câble jaune à A1, le câble orange à B1 et le câble rose à B2.

L'électronique est enfin connectée !

Étape 9 :Programmation

const int dirPin =2 ; 

Nous définissons la broche Dir du pilote comme la broche numérique 2.

const int stepPin =3 ; 

Nous définissons la broche Step du pilote comme la broche numérique 3.

const int enablePin =4 ; 

Nous définissons la broche Activer du pilote comme la broche numérique 4.

const int stepsPerRevolution =6000 ; 

Nous définissons le nombre de pas par révolution comme 6000, une rotation de 360 ​​degrés équivaut à 2048 pas.

int endStop =8 ; 

Nous définissons la broche d'entrée du commutateur endStop comme la broche numérique 8.

int irSensor =9 ; 

Nous définissons la broche d'entrée du capteur d'obstacle IR comme la broche numérique 9.

configuration vide()
{
pinMode(endStop, INPUT);
pinMode(irSensor,INPUT);

Dans la configuration, nous déclarons les broches endStop et irSensor comme entrées.

pinMode(stepPin, OUTPUT);
pinMode(dirPin, OUTPUT);
pinMode(enablePin, OUTPUT);

Nous déclarons les stepPin, dirPin et enablePin comme sorties.

digitalWrite(enablePin, LOW); 

Nous définissons le enablePin LOW pour activer le pilote DRV8825

while(digitalRead(endStop) ==LOW)
{

Tant que la valeur numérique du commutateur endStop est FAIBLE (le commutateur n'est pas enfoncé.)

digitalWrite(dirPin, HIGH); 

le sens de rotation du moteur est réglé dans le sens inverse des aiguilles d'une montre

for(int x =0; x <1; x++)
{
digitalWrite(stepPin, HIGH);
delayMicroseconds(2000);
digitalWrite( stepPin, LOW);
delayMicroseconds(2000);
}

et le moteur pas à pas tournera pas à pas dans le sens inverse des aiguilles d'une montre jusqu'à ce que la condition de l'instruction While soit fausse.

digitalWrite(enablePin, HIGH);
}

Cela désactive notre pilote afin que lorsqu'il n'est pas utilisé, le pilote ne consomme pas beaucoup de courant.

boucle vide()
{

if(digitalRead(irSensor)==0)
{

Dans la boucle si la valeur numérique de l'irSensor est 0 (il y a un obstacle (main) devant le capteur IR Obstacle)

digitalWrite(enablePin, LOW); 

Le pilote est activé.

digitalWrite(dirPin, LOW); 

Le sens de rotation du moteur est réglé dans le sens des aiguilles d'une montre.

for(int x =0 ; x {
digitalWrite(stepPin, HIGH);
delayMicroseconds(2000);
digitalWrite( stepPin, LOW);
delayMicroseconds(2000);
}

Le stepper tournera dans le sens des aiguilles d'une montre pendant 6000 pas.

retard(2000); 

Il attendra 2 secondes.

while(digitalRead(endStop) ==LOW) 
{

Tant que la valeur numérique du commutateur endStop est FAIBLE (le commutateur n'est pas enfoncé.

digitalWrite(dirPin, HIGH); 

le sens de rotation du moteur est réglé dans le sens inverse des aiguilles d'une montre.

for(int x =0; x <1; x++)
{
digitalWrite(stepPin, HIGH);
delayMicroseconds(2000);
digitalWrite( stepPin, LOW);
delayMicroseconds(2000);
}
}

et le moteur pas à pas tournera pas à pas dans le sens inverse des aiguilles d'une montre jusqu'à ce que la condition de l'instruction While soit fausse.

digitalWrite(enablePin, HIGH);
}
}

Ensuite, le pilote sera désactivé jusqu'à ce que la condition de l'instruction If soit vraie et que le code soit lu à nouveau.

Étape 10 :Assemblage

Assemblage du couvercle

Placez simplement l'attache Velcro dans l'espace, ajoutez-y le support et vissez-les ensemble.

x2

Vissez la poignée Velcro au couvercle. L'assemblage du couvercle est maintenant terminé !

x2

Assemblage du presseur

Poussez le roulement linéaire dans le trou de droite jusqu'à ce qu'il soit au milieu. Vissez l'écrou T8 dans le trou gauche du presseur avec 4 vis.

Assemblage du boîtier électronique

Mettez votre circuit dans le boîtier électronique. Faites passer les câbles du stepper, de l'interrupteur et du capteur d'obstacles IR à travers le trou.

Ensemble de support de capteur d'obstacles IR

Vissez le capteur d'obstacles IR dans le trou et utilisez un écrou pour serrer l'ajustement et ajuster la position.

Assemblage final !

Insérez le roulement.

Ajoutez la vis T8 et l'assemblage du presseur. (La vis T8 doit mesurer 70 mm à 82 mm de long . Si vous avez une vis plus longue, vous devez la couper à la taille souhaitée à l'aide d'un outil comme une scie à métaux. Sinon, vous pouvez essayer d'en imprimer un en 3D.)

Serrez le coupleur sur l'arbre du moteur. Serrez-le ensuite à la vis T8. Vissez enfin le moteur à la base avec deux vis.

Ajoutez l'interrupteur de fin de course.

Vissez le couvercle à la base avec 5 vis.

Vissez le support de capteur d'obstacles IR à l'avant de la base avec 2 vis.

Vissez finalement le boîtier électronique au couvercle avec 3 vis ! Bravo le projet est terminé !

Conclusion

Ce projet d'accessoire qui peut transformer la plupart des distributeurs de désinfectant pour les mains/savon complètement automatique et mains libres est enfin terminé !!

Merci pour votre temps !!

Code

  • Automatic_Hand_Sanitizer_Transformer.code
Automatic_Hand_Sanitizer_Transformer.codeArduino
Le code du gadget
// Définir les connexions des broches et les pas du moteur par révolutionconst int dirPin =2; //on définit le pin dir du driverconst int stepPin =3;//on définit le pas du driverconst int enablePin =4;//on définit le pin d'enable du driverconst int stepsPerRevolution =6000; // une rotation complète (360 degrés) correspond à 2048 pasint endStop =8 ; // nous définissons la broche d'entrée du commutateur de fin de course irSensor =9 ; // nous définissons la broche d'entrée du capteur d'obstacle IR void setup(){ pinMode(endStop , INPUT);// Déclarer les broches comme entrées pinMode(irSensor,INPUT); pinMode(stepPin, OUTPUT);// Déclarer les broches comme sorties pinMode(dirPin, OUTPUT); pinMode(enablePin, OUTPUT); digitalWrite(enablePin, LOW);// Ceci active notre pilote pendant (digitalRead(endStop) ==LOW)// Lorsque le code démarre, le moteur pas à pas tournera jusqu'à ce que l'interrupteur d'arrêt final { // l'interrupteur d'arrêt soit activé digitalWrite(dirPin, HIGH ); // les directions sont définies dans le sens inverse des aiguilles d'une montre // Faites tourner le moteur lentement pour (int x =0; x <1; x++) { digitalWrite(stepPin, HIGH); délaiMicrosecondes (2000) ; digitalWrite(stepPin, LOW); délaiMicrosecondes (2000) ; } }digitalWrite(enablePin, HIGH);// Ceci désactive notre pilote afin que // lorsqu'il n'est pas utilisé, le pilote ne consomme pas de courant}boucle vide(){ if(digitalRead(irSensor)==0)// S'il y a un obstacle (main) devant le capteur d'obstacle IR {digitalWrite(enablePin, LOW);//Nous activons le driverdigitalWrite(dirPin, LOW);// la direction est définie dans le sens des aiguilles d'une montre // Faites tourner le moteur lentement pour (int x =0; x  

Pièces et boîtiers personnalisés

La base principale de l'appareil. C'est le composant qui appuie réellement sur le distributeur. Le couvercle de l'appareil. Agit comme un boîtier pour l'électronique. Crée le mécanisme d'attache Velcro.
Vous en aurez besoin de deux. Agit comme support pour la partie presseur. Il se connecte à la base et agit comme support pour le capteur infrarouge. Maintient les velcros sur le couvercle.
Vous aurez besoin de 2 d'entre eux.

Schémas


Processus de fabrication

  1. Attaque d'OVNI !
  2. Contrôle automatique des trains
  3. Ardulock 3D RVB
  4. MyRiver
  5. Iron Man
  6. Jeu de manette
  7. Trouvez-moi
  8. Contrôle de l'humidificateur Arduino
  9. Petit Rover