Table des matières:
- Étape 1: Vérifier les spécifications
- Étape 2: Rassemblez les composants
- Étape 3: Post-traitement des impressions 3D
- Étape 4: Câbles et câblage
- Étape 5: Paramètres matériels
- Étape 6: Testez le circuit et les composants
- Étape 7: Assemblage
- Étape 8: Insérez le tube
- Étape 9: Familiarisez-vous avec l'interface utilisateur (contrôle manuel)
- Étape 10: Calibrage et essai de dosage
- Étape 11: Interface série – Télécommande via USB
- Étape 12: Partagez vos expériences et améliorez la pompe
- Étape 13: Curieux de connaître IGEM ?
Vidéo: Pompe péristaltique précise : 13 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:09
Nous sommes une équipe d'étudiants de différentes disciplines de l'Université RWTH d'Aix-la-Chapelle et avons créé ce projet dans le cadre du concours iGEM 2017.
Après tout le travail qui a été consacré à notre pompe, nous aimerions partager nos résultats avec vous !
Nous avons construit cette pompe péristaltique comme solution de gestion des liquides généralement applicable pour tout projet nécessitant le transport de liquides. Notre pompe est capable de doser et de pomper avec précision, offrant une large gamme de volumes de dosage et de débits pour maximiser les applications possibles. Grâce à 125 expériences de dosage, nous avons pu démontrer et quantifier la précision de notre pompe. Pour un tube avec un diamètre intérieur de 0,8 mm et tout débit ou volume de dosage dans les spécifications, nous pourrions montrer une précision meilleure que 2% d'écart par rapport à la valeur définie. Compte tenu des résultats des mesures, la précision peut être encore améliorée si la vitesse de l'étalonnage est ajustée au débit requis.
La pompe peut être contrôlée sans connaissances en programmation via l'écran LCD intégré et un bouton rotatif. De plus, la pompe peut être contrôlée à distance via USB par des commandes série. Ce moyen de communication simple est compatible avec les logiciels et langages de programmation courants (MATLAB, LabVIEW, Java, Python, C#, etc.).
La pompe est simple et peu coûteuse à fabriquer, toutes les pièces totalisant moins de 100 $, contre 1 300 $ pour la solution commerciale comparable la moins chère que nous ayons pu trouver. Outre une imprimante 3D, seuls des outils courants sont nécessaires. Notre projet est open source en termes de matériel et de logiciel. Nous fournissons les fichiers CAO des pièces imprimées en 3D, une liste complète de tous les composants commerciaux requis et leurs sources, ainsi que le code source utilisé dans notre pompe.
Étape 1: Vérifier les spécifications
Vérifiez les spécifications et la discussion sur la précision ci-dessous.
La pompe répond-elle à vos exigences ?
Étape 2: Rassemblez les composants
1x Carte compatible Arduino Uno R3/1x Moteur pas à pas (LxHxP): 42x42x41 mm, Axe (ØxL): 5x22 mm1x Alimentation 12 V/ 3 A, connecteur: 5,5/2,1 mm1x Pilote de moteur pas à pas A49881x Module LCD 16x2, (LxHxP): 80x36x13 mm3x Roulement à aiguilles HK 0408 (IØ x OØ x L) 4 mm x 8 mm x 8 mm1x Encodeur 5 V, 0,01 A, 20 positions de commutation, 360 °1x Tube de pompe, 1,6 mm d'épaisseur de paroi, 0,2 m4x Pied autocollant (L x L x H) 12,6 x 12,6 x 5,7 mm3x Broche droite (Ø x L) 4 mm x 14 mm1x Bouton de commande (Ø x H) 16,8 mm x 14,5 mm1x Potentiomètre/ Trimmer 10k1x Résistance 220 Ohm1x Condensateur 47µF, 25V
Câblage:1x PCB (L xl) 80 mm x 52 mm, espacement des contacts 2,54 mm (CS)2x barrette à broches, droite, CS 2,54, courant nominal 3A, 36 broches1x barrette à douilles, droite, CS 2,54, courant nominal 3A, 40 broches1x Câbles, différentes couleurs (par exemple Ø 2,5 mm, section 0,5 mm²)Rétractable à chaud (convient pour câbles, par exemple Ø 3 mm)
Vis: 4x M3, L = 25 mm (longueur sans tête), ISO 4762 (tête hexagonale) 7x M3, L = 16 mm, ISO 4762 (tête hexagonale) 16x M3, L = 8 mm, ISO 4762 (tête hexagonale) 4x Petite vis taraudeuse (pour LCD, Ø 2-2.5mm, L = 3-6 mm)1x M3, L=10mm vis sans tête, DIN 9161x M3, écrou, ISO 4032
Pièces imprimées en 3D: (Thingivere)1x Case_main2 x Case_side (impression 3D non nécessaire => fraisage/découpe/sciage)1x Pump_case_bottom1x Pump_case_top_120°1x Bearing_mount_bottom1x Bearing_mount_top
Étape 3: Post-traitement des impressions 3D
Les pièces imprimées en 3D doivent être nettoyées après l'impression pour éliminer les résidus du processus d'impression. Les outils que nous recommandons pour le post-traitement sont un petit fichier et un coupe-fil pour les filetages M3. Après le processus d'impression, la plupart des trous doivent être élargis à l'aide d'une perceuse appropriée. Pour les trous qui contiennent des vis M3, un filetage doit être coupé avec le coupe-fil mentionné ci-dessus.
Étape 4: Câbles et câblage
Le cœur du circuit se compose de l'Arduino et d'un perfboard. Sur le perfboard se trouve le driver du moteur pas à pas, le trimmer pour l'écran LCD, le condensateur 47µF et les connexions pour l'alimentation des différents composants. Afin d'éteindre l'Arduino par l'interrupteur d'alimentation, l'alimentation de l'Arduino a été interrompue et dirigée vers le Perfboard. À cette fin, la diode située sur l'Arduino directement derrière la prise d'alimentation a été dessoudée et amenée à la carte de perforation.
Étape 5: Paramètres matériels
Il y a trois réglages qui doivent être faits directement sur le circuit.
Tout d'abord, la limite de courant pour le pilote du moteur pas à pas doit être définie, en ajustant la petite vis sur l'A4988. Par exemple, si la tension V_ref entre la vis et GND à l'état passant est de 1V, la limite de courant est le double de la valeur: I_max = 2A (c'est la valeur que nous avons utilisée). Plus le courant est élevé, plus le couple du moteur est élevé, permettant des vitesses et des débits plus élevés. Cependant, la consommation d'énergie et le développement de chaleur augmentent également.
De plus, le mode du moteur pas à pas peut être réglé via les trois broches situées en haut à gauche du pilote du moteur pas à pas (MS1, MS2, MS3). Lorsque MS2 est à + 5V, comme indiqué sur le schéma de câblage, le moteur fonctionne en mode quart de pas, ce que nous avons utilisé. Cela signifie qu'exactement une étape (1,8 °) est effectuée pour quatre impulsions que le pilote du moteur pas à pas reçoit sur la broche STEP.
Comme dernière valeur à régler, le trimmer sur le perfboard peut être utilisé pour ajuster le contraste de l'écran LCD.
Étape 6: Testez le circuit et les composants
Avant l'assemblage, il est recommandé de tester les composants et le circuit sur une maquette. De cette façon, il est plus facile de trouver et de corriger les erreurs possibles.
Vous pouvez déjà télécharger notre logiciel sur l'Arduino, pour essayer toutes les fonctions au préalable. Nous avons publié le code source sur GitHub:
github.com/iGEM-Aachen/Open-Source-Peristaltic-Pump
Étape 7: Assemblage
La vidéo montre l'assemblage des composants dans l'ordre prévu sans le câblage. Tous les connecteurs doivent d'abord être attachés aux composants. Le câblage est mieux fait au point où tous les composants sont insérés, mais les parois latérales n'ont pas encore été fixées. Les vis difficiles à atteindre peuvent être facilement atteintes avec une clé hexagonale.
1. Insérez l'interrupteur d'alimentation et l'encodeur dans leur trou désigné et fixez-les au boîtier. Attachez le bouton de commande à l'encodeur - soyez prudent - une fois que vous avez attaché le bouton, il peut détruire l'encodeur si vous essayez de le retirer à nouveau.
2. Fixez l'écran LCD avec de petites vis autotaraudeuses, assurez-vous de souder la résistance et le câblage à l'écran avant l'assemblage.
3. Fixez la carte Arduino Uno au boîtier à l'aide de vis M3 de 8 mm.
4. Insérez le moteur pas à pas et fixez-le au boîtier avec la pièce imprimée en 3D (Pump_case_bottom) à l'aide de quatre vis M3 de 10 mm.
5. Fixez le panneau perforé au boîtier – assurez-vous d'avoir soudé tous les composants au panneau perforé comme indiqué sur le schéma de câblage.
6. Câblez les composants électroniques à l'intérieur du boîtier.
7. Fermez le boîtier en ajoutant les panneaux latéraux à l'aide de vis M3 10x 8 mm.
8. Assemblez le support de roulement comme indiqué dans la vidéo et fixez-le à l'arbre du moteur à l'aide d'une vis sans tête de 3 mm
9. Enfin, fixez le contre-support de maintien du tube (Pump_case_top_120°) avec deux vis M3 de 25 mm et insérez le tube. Insérez deux vis M3 de 25 mm pour maintenir le tube en place pendant le processus de pompage
Étape 8: Insérez le tube
Étape 9: Familiarisez-vous avec l'interface utilisateur (contrôle manuel)
L'interface utilisateur fournit un contrôle complet de la pompe péristaltique. Il se compose d'un écran LCD, d'un bouton de commande et d'un interrupteur d'alimentation. Le bouton de commande peut être tourné ou poussé.
Tourner le bouton permet de sélectionner parmi différents éléments de menu, l'élément de menu sur la ligne supérieure est actuellement sélectionné. Appuyez sur le bouton pour activer l'élément de menu sélectionné, indiqué par un rectangle clignotant. Le rectangle clignotant signifie que l'élément de menu est activé.
Une fois l'élément de menu activé, il lance en fonction de l'élément sélectionné soit une action, soit permet le changement de la valeur correspondante en tournant le bouton. Pour tous les éléments de menu connectés à une valeur numérique, le bouton peut être maintenu enfoncé pour remettre la valeur à zéro ou enfoncé deux fois pour augmenter la valeur d'un dixième de sa valeur maximale. Pour définir la valeur sélectionnée et désactiver un élément de menu, le bouton doit être enfoncé une deuxième fois.
L'interrupteur d'alimentation arrête immédiatement la pompe et tous ses composants (Arduino, moteur pas à pas, pilote de moteur pas à pas, LCD), sauf lorsque la pompe est connectée via USB. L'Arduino et l'écran LCD peuvent être alimentés par USB, de sorte que l'interrupteur d'alimentation ne les affectera pas.
Le menu des pompes comporte 10 éléments, qui sont répertoriés et décrits ci-dessous:
0|Démarrer le pompage, le mode de fonctionnement dépend du mode sélectionné dans « 6) Mode »
1|VolumeRéglez le volume de dosage, n'est pris en compte que si « Dose » est sélectionné dans « 6) Mode »
2|V. Unit: définissez l'unité de volume, les options sont: « mL »: mL« uL »: µL« rot »: rotations (de la pompe)
3|VitesseRéglez le débit, n'est pris en compte que si « Dose » ou « Pompe » est sélectionné dans « 6) Mode »
4|S. Unit: définissez l'unité de volume, les options sont: « mL/min »: mL/min« uL/min »: µL/min« rpm »: rotations/min
5|Direction: Choisissez la direction de pompage: « CW » pour une rotation dans le sens des aiguilles d'une montre, « CCW » pour une rotation dans le sens inverse des aiguilles d'une montre.
6|Mode: Régler le mode de fonctionnement: « Dose »: doser le volume sélectionné (1|Volume) au débit sélectionné (3|Vitesse) au démarrage « Pompe »: pomper en continu au débit sélectionné (3|Vitesse) lorsque a démarré « Cal. »: étalonnage, la pompe effectuera 30 rotations en 30 secondes au démarrage
7|Cal. Définir le volume d'étalonnage en ml. Pour l'étalonnage, la pompe est lancée une fois en mode d'étalonnage et le volume d'étalonnage résultant qui a été pompé est mesuré.
8 | Enregistrer le réglage. Enregistrez tous les paramètres dans l'EEPROM Arduinos, les valeurs sont conservées pendant la mise hors tension et rechargées, lorsque l'alimentation est remise sous tension
9|USB CtrlActiver le contrôle USB: la pompe réagit aux commandes série envoyées via USB
Étape 10: Calibrage et essai de dosage
Effectuer un étalonnage approprié avant d'utiliser la pompe est crucial pour un dosage et un pompage précis. L'étalonnage indiquera à la pompe la quantité de liquide déplacée par rotation, afin que la pompe puisse calculer le nombre de rotations et la vitesse nécessaires pour atteindre les valeurs définies. Pour démarrer l'étalonnage, sélectionnez le mode « Cal ». et commencer à pomper ou envoyer la commande d'étalonnage via USB. Le cycle d'étalonnage standard effectuera 30 rotations en 30 secondes. Le volume de liquide pompé pendant ce cycle (volume d'étalonnage) doit être mesuré avec précision. Assurez-vous que la mesure n'est pas affectée par des gouttes collant au tube, le poids du tube lui-même ou toute autre interférence. Nous vous recommandons d'utiliser une échelle de microgrammes pour l'étalonnage, car vous pouvez facilement calculer le volume, si la densité et le poids de la quantité de liquide pompée sont connus. Une fois que vous avez mesuré le volume d'étalonnage, vous pouvez régler la pompe en réglant la valeur de l'élément de menu « 7|Cal. » ou en l'attachant à vos commandes série.
Veuillez noter que tout changement après l'étalonnage du support de tube ou de la différence de pression affectera la précision de la pompe. Essayez d'effectuer l'étalonnage toujours dans les mêmes conditions dans lesquelles la pompe sera utilisée plus tard. Si vous retirez la tubulure et la réinstallez dans la pompe, la valeur d'étalonnage changera jusqu'à 10 %, en raison de petites différences de positionnement et de force appliquée aux vis. Tirer sur la tubulure modifiera également le positionnement et donc la valeur d'étalonnage. Si l'étalonnage est effectué sans différence de pression et que la pompe est ensuite utilisée pour pomper des liquides à une autre pression, cela affectera la précision. N'oubliez pas que même une différence de niveau d'un mètre peut créer une différence de pression de 0,1 bar, ce qui aura une légère influence sur la valeur d'étalonnage, même si la pompe peut atteindre une pression d'au moins 1,5 bar en utilisant le tuyau de 0,8 mm.
Étape 11: Interface série – Télécommande via USB
L'interface série est basée sur l'interface de communication série de l'Arduino via USB (Baud 9600, 8 bits de données, pas de parité, un bit d'arrêt). Tout logiciel ou langage de programmation capable d'écrire des données sur un port série peut être utilisé pour communiquer avec la pompe (MATLAB, LabVIEW, Java, python, C#, etc.). Toutes les fonctions de la pompe sont accessibles en envoyant la commande correspondante à la pompe, à la fin de chaque commande un nouveau caractère de ligne '\n' (ASCII 10) est requis.
Dose: d(volume en µL), (vitesse en µL/min), (volume d'étalonnage en µL)'\n'
Ex.: d1000, 2000, 1462'\n' (dosage de 1 ml à 2 ml/min, volume d'étalonnage = 1,462 ml)
Pompe: p(vitesse en µL/min), (volume d'étalonnage en µL)'\n'
Ex: p2000, 1462'\n' (pompe à 2mL/min, volume d'étalonnage = 1,462mL)
Calibrer: c'\n'
Arrêt: x '\n'
L'environnement Arduino (Arduino IDE) dispose d'un moniteur série intégré, qui peut lire et écrire des données série, donc les commandes série peuvent être testées sans aucun code écrit.
Étape 12: Partagez vos expériences et améliorez la pompe
Si vous avez construit notre pompe, veuillez partager vos expériences et améliorations logicielles et matérielles sur:
Thingiverse (pièces imprimées en 3D)
GitHub (logiciel)
Instructables (instructions, câblage, général)
Étape 13: Curieux de connaître IGEM ?
La fondation iGEM (international Genetically Engineered Machine) est une organisation indépendante à but non lucratif dédiée à l'éducation et à la compétition, à l'avancement de la biologie synthétique et au développement d'une communauté ouverte et d'une collaboration.
iGEM gère trois programmes principaux: le concours iGEM - un concours international pour les étudiants intéressés par le domaine de la biologie synthétique; le programme Labs - un programme permettant aux laboratoires universitaires d'utiliser les mêmes ressources que les équipes de compétition; et le Registre des pièces biologiques standard - une collection croissante de pièces génétiques utilisées pour la construction de dispositifs et de systèmes biologiques.
igem.org/Page_principale
Conseillé:
Pompe péristaltique DIY : 5 étapes (avec photos)
Pompe péristaltique DIY : Dans ce projet, nous examinerons les pompes péristaltiques et découvrirons s'il est logique de fabriquer notre propre version de celle-ci ou si nous devrions plutôt nous en tenir à l'option d'achat commercial. En cours de route, nous créerons un circuit de pilote de moteur pas à pas
Détection d'erreur de pompe à chaleur et alarme ESP8266, Openhab, télégramme, MQTT alimenté par batterie : 5 étapes
Détection et alarme d'erreur de pompe à chaleur ESP8266, Openhab, Telegram, MQTT alimenté par batterie : ma pompe à chaleur pour le chauffage de ma maison et de l'eau reçoit de temps en temps une erreur. Cette erreur n'est pas facile à remarquer, car il n'y a pas de lumière rouge ou quelque chose du genre, seulement un petit "P" sur un petit écran LCD. J'ai donc fait ce détecteur pour détecter l'erreur et
Visuino - Obtenez une heure précise à partir du serveur Internet NIST à l'aide de NodeMCU : 8 étapes
Visuino - Obtenez une heure précise à partir du serveur Internet NIST à l'aide de NodeMCU : dans ce didacticiel, nous utiliserons NodeMCU Mini, OLED Lcd et Visuino pour afficher l'heure Internet en direct du serveur NIST sur Lcd. Regardez une vidéo de démonstration. Le mérite de l'inspiration revient à l'utilisateur de youtube "Ciprian Balalau"
Fréquence précise de 1 Hz à partir du secteur CA : 9 étapes
Fréquence précise de 1 Hz à partir du secteur CA : la fréquence de la ligne est, selon le pays, de 50 Hz ou 60 Hz. Cette fréquence a de petites fluctuations à court terme, mais est compensée quotidiennement par la centrale électrique, ce qui donne une source de fréquence assez précise pour de nombreuses applications de synchronisation
Alternative DIY pas chère et précise pour le gant Flex Sensor : 8 étapes (avec photos)
Alternative bon marché et précise de bricolage pour le gant de capteur Flex : Bonjour à tous, il s'agit de mon premier instructable et dans ce instructable, je vais vous apprendre à fabriquer un gant de capteur Flex bon marché et précis. J'ai utilisé de nombreuses alternatives au capteur flexible, mais aucune d'entre elles n'a fonctionné pour moi. Alors, j'ai cherché sur Google et j'ai trouvé un nouveau