Inhaltsverzeichnis:
- Schritt 1: Spezifikationen prüfen
- Schritt 2: Komponenten sammeln
- Schritt 3: Nachbearbeitung von 3D-Drucken
- Schritt 4: Kabel & Verkabelung
- Schritt 5: Hardwareeinstellungen
- Schritt 6: Testschaltung und Komponenten
- Schritt 7: Montage
- Schritt 8: Schlauch einlegen
- Schritt 9: Machen Sie sich mit der Benutzeroberfläche vertraut (manuelle Steuerung)
- Schritt 10: Kalibrierung und Dosierung versuchen
- Schritt 11: Serielle Schnittstelle – Fernbedienung über USB
- Schritt 12: Teilen Sie Ihre Erfahrungen und verbessern Sie die Pumpe
- Schritt 13: Neugierig auf IGEM?
Video: Präzise peristaltische Pumpe - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:20
Wir sind ein studentisches Team aus verschiedenen Disziplinen der RWTH Aachen und haben dieses Projekt im Rahmen des iGEM-Wettbewerbs 2017 erstellt.
Nach all der Arbeit, die in unsere Pumpe gesteckt wurde, möchten wir unsere Ergebnisse mit Ihnen teilen!
Wir haben diese Schlauchpumpe als allgemein anwendbare Liquid-Handling-Lösung für jedes Projekt gebaut, das den Transport von Flüssigkeiten erfordert. Unsere Pumpe ist in der Lage, präzise zu dosieren und zu pumpen und bietet eine breite Palette von Dosiervolumen und Durchflussraten, um die möglichen Anwendungen zu maximieren. Durch 125 Dosierversuche konnten wir die Genauigkeit unserer Pumpe demonstrieren und quantifizieren. Für einen Schlauch mit 0, 8 mm Innendurchmesser und einem beliebigen Durchfluss oder Dosiervolumen innerhalb der Spezifikationen konnten wir eine Genauigkeit von besser als 2% Abweichung vom eingestellten Wert anzeigen. Aufgrund der Messergebnisse kann die Genauigkeit noch weiter verbessert werden, wenn die Geschwindigkeit der Kalibrierung an den erforderlichen Durchfluss angepasst wird.
Über das eingebaute LCD-Display und einen Drehknopf lässt sich die Pumpe ohne Programmierkenntnisse steuern. Darüber hinaus kann die Pumpe über USB durch serielle Befehle ferngesteuert werden. Diese einfache Art der Kommunikation ist mit gängigen Software- und Programmiersprachen (MATLAB, LabVIEW, Java, Python, C# etc.) kompatibel.
Die Pumpe ist einfach und kostengünstig herzustellen, wobei alle Teile insgesamt weniger als 100 US-Dollar kosten, verglichen mit 1300 US-Dollar für die billigste vergleichbare kommerzielle Lösung, die wir finden konnten. Neben einem 3D-Drucker werden nur gängige Werkzeuge benötigt. Unser Projekt ist in Bezug auf Hard- und Software Open Source. Wir stellen die CAD-Dateien für die 3D-gedruckten Teile, eine vollständige Liste aller erforderlichen kommerziellen Komponenten und deren Quellen sowie den in unserer Pumpe verwendeten Quellcode zur Verfügung.
Schritt 1: Spezifikationen prüfen
Überprüfen Sie die Spezifikationen und die unten angehängte Erläuterung der Genauigkeit.
Entspricht die Pumpe Ihren Anforderungen?
Schritt 2: Komponenten sammeln
1x Arduino Uno R3/ kompatibles Board1x Schrittmotor (BxHxT): 42x42x41 mm, Welle (ØxL): 5x22 mm1x Stromversorgung 12 V/ 3 A, Anschluss: 5,5 / 2,1 mm1x Schrittmotortreiber A49881x LCD-Modul 16x2, (BxHxT): 80x36x13 mm3x Nadellager HK 0408 (IØ x AØ x L) 4 mm x 8 mm x 8mm1x Encoder 5 V, 0,01 A, 20 Schaltpositionen, 360 °1x Pumpschlauch, 1,6mm Wandstärke, 0,2m4x Fuß selbstklebend (L x B x H) 12,6 x 12,6 x 5,7 mm3x Zylinderstift (Ø x L) 4 mm x 14 mm1x Drehknopf (Ø x H) 16,8 mm x 14,5 mm1x Potentiometer/ Trimmer 10k1x 220 Ohm Widerstand1x Kondensator 47µF, 25V
Verdrahtung:1x Leiterplatte (L x B) 80 mm x 52 mm, Rastermaß 2,54 mm (CS)2x Stiftleiste, gerade, CS 2.54, Nennstrom 3A, 36-polig1x Steckdosenleiste, gerade, CS 2.54, Nennstrom 3A, 40 Stifte1x Kabel, verschiedene Farben (zB Ø 2,5 mm, Querschnitt 0,5 mm²)Schrumpfschlauch (geeignet für Kabel, zB Ø 3 mm)
Schrauben:4x M3, L = 25 mm (Länge ohne Kopf), ISO 4762 (Sechskant)7x M3, L = 16 mm, ISO 4762 (Sechskant)16x M3, L = 8 mm, ISO 4762 (Sechskant)4x Blechschraube klein (für LCD, Ø 2-2,5mm, L = 3-6 mm)1x M3, L=10mm Madenschraube, DIN 9161x M3, Mutter, ISO 4032
3D-gedruckte Teile: (Thingiverse)1x Case_main2 x Case_side (3D-Druck nicht notwendig => Fräsen/Schneiden/Sägen)1x Pump_case_bottom1x Pump_case_top_120°1x Bearing_mount_bottom1x Bearing_mount_top
Schritt 3: Nachbearbeitung von 3D-Drucken
Die 3D-gedruckten Teile müssen nach dem Drucken gereinigt werden, um Rückstände aus dem Druckprozess zu entfernen. Als Nachbearbeitungswerkzeug empfehlen wir eine kleine Feile und einen Gewindeschneider für M3-Gewinde. Nach dem Druckvorgang müssen die meisten Löcher mit einem geeigneten Bohrer aufgeweitet werden. Für die Löcher, die M3-Schrauben enthalten, muss mit dem oben genannten Gewindeschneider ein Gewinde geschnitten werden.
Schritt 4: Kabel & Verkabelung
Der Kern der Schaltung besteht aus dem Arduino und einem Perfboard. Auf dem Perfboard befinden sich der Schrittmotortreiber, der Trimmer für das LCD, der 47µF Kondensator und Anschlüsse für die Stromversorgung der verschiedenen Komponenten. Um den Arduino per Netzschalter auszuschalten, wurde die Stromversorgung des Arduino unterbrochen und zum Perfboard geführt. Dazu wurde die Diode, die sich auf dem Arduino direkt hinter der Strombuchse befindet, abgelötet und stattdessen auf das Perfboard gebracht.
Schritt 5: Hardwareeinstellungen
Es gibt drei Einstellungen, die direkt an der Schaltung vorgenommen werden müssen.
Zuerst muss die Strombegrenzung für den Schrittmotortreiber eingestellt werden, indem die kleine Schraube am A4988 eingestellt wird. Wenn beispielsweise die Spannung V_ref zwischen Schraube und GND im eingeschalteten Zustand 1 V beträgt, beträgt die Stromgrenze den doppelten Wert: I_max = 2 A (diesen Wert haben wir verwendet). Je höher der Strom, desto höher das Drehmoment des Motors, was höhere Drehzahlen und Durchflussmengen ermöglicht. Allerdings steigt auch der Stromverbrauch und die Wärmeentwicklung.
Außerdem kann der Modus des Schrittmotors über die drei Pins eingestellt werden, die sich oben links am Schrittmotortreiber befinden (MS1, MS2, MS3). Wenn MS2 an + 5V liegt, wie im Schaltplan gezeigt, wird der Motor im Viertelschrittmodus betrieben, den wir verwendet haben. Das bedeutet, dass für vier Impulse, die der Schrittmotortreiber am STEP-Pin erhält, genau ein Schritt (1,8°) ausgeführt wird.
Als letzter einzustellender Wert kann der Trimmer auf dem Perfboard verwendet werden, um den Kontrast des LCD einzustellen.
Schritt 6: Testschaltung und Komponenten
Vor dem Zusammenbau empfiehlt es sich, die Bauteile und die Schaltung auf einem Steckbrett zu testen. Auf diese Weise ist es einfacher, mögliche Fehler zu finden und zu beheben.
Sie können unsere Software bereits auf den Arduino hochladen, um alle Funktionen vorab auszuprobieren. Wir haben den Quellcode auf GitHub veröffentlicht:
github.com/iGEM-Aachen/Open-Source-Schlauchpumpe
Schritt 7: Montage
Das Video zeigt den Zusammenbau der Komponenten in der vorgesehenen Reihenfolge ohne die Verdrahtung. Alle Anschlüsse sollten zuerst an den Komponenten befestigt werden. Die Verkabelung erfolgt am besten an der Stelle, an der alle Komponenten eingesetzt sind, die Seitenwände aber noch nicht befestigt sind. Die schwer zugänglichen Schrauben sind mit einem Inbusschlüssel leicht zu erreichen.
1. Stecken Sie den Netzschalter und den Encoder in die dafür vorgesehenen Löcher und befestigen Sie sie am Gehäuse. Bringen Sie den Drehknopf am Encoder an – seien Sie vorsichtig – wenn Sie den Knopf einmal angebracht haben, kann er den Encoder zerstören, wenn Sie versuchen, ihn wieder zu entfernen.
2. Befestigen Sie das LCD-Display mit kleinen Blechschrauben, achten Sie darauf, den Widerstand und die Verkabelung vor der Montage an das Display zu löten.
3. Befestigen Sie das Arduino Uno-Board mit 8 mm M3-Schrauben am Gehäuse.
4. Setzen Sie den Schrittmotor ein und befestigen Sie ihn zusammen mit dem 3D-gedruckten Teil (Pump_case_bottom) mit vier 10 mm M3-Schrauben am Gehäuse.
5. Befestigen Sie das Perfboard am Gehäuse – stellen Sie sicher, dass Sie alle Komponenten wie im Schaltplan gezeigt an das Perfboard gelötet haben.
6. Verdrahten Sie die elektronischen Teile im Gehäuse.
7. Schließen Sie das Gehäuse, indem Sie die Seitenwände mit 10x 8 mm M3-Schrauben anbringen.
8. Montieren Sie die Lagerhalterung wie im Video gezeigt und befestigen Sie sie mit einer 3 mm Madenschraube an der Welle des Motors
9. Zum Schluss die Gegenstütze zur Aufnahme des Schlauches (Pump_case_top_120°) mit zwei 25 mm M3-Schrauben befestigen und den Schlauch einführen. Setzen Sie zwei 25 mm M3-Schrauben ein, um den Schlauch während des Pumpvorgangs an Ort und Stelle zu halten
Schritt 8: Schlauch einlegen
Schritt 9: Machen Sie sich mit der Benutzeroberfläche vertraut (manuelle Steuerung)
Die Benutzeroberfläche bietet eine umfassende Steuerung der Peristaltikpumpe. Es besteht aus einem LCD-Display, einem Bedienknopf und einem Netzschalter. Der Bedienknopf kann gedreht oder gedrückt werden.
Durch Drehen des Knopfes kann zwischen verschiedenen Menüpunkten gewählt werden, der Menüpunkt in der oberen Zeile ist aktuell ausgewählt. Durch Drücken des Knopfes wird der ausgewählte Menüpunkt aktiviert, der durch ein blinkendes Rechteck angezeigt wird. Das blinkende Rechteck bedeutet, dass der Menüpunkt aktiviert ist.
Sobald der Menüpunkt aktiviert ist, startet dieser je nach ausgewähltem Menüpunkt entweder eine Aktion oder ermöglicht durch Drehen des Knopfes die Änderung des entsprechenden Wertes. Bei allen Menüpunkten, die mit einem numerischen Wert verbunden sind, kann der Knopf gedrückt gehalten werden, um den Wert auf Null zurückzusetzen, oder zweimal gedrückt werden, um den Wert um ein Zehntel seines Maximalwertes zu erhöhen. Um den ausgewählten Wert einzustellen und einen Menüpunkt zu deaktivieren, muss der Knopf ein zweites Mal gedrückt werden.
Der Netzschalter schaltet die Pumpe und alle ihre Komponenten (Arduino, Schrittmotor, Schrittmotortreiber, LCD) sofort aus, außer wenn die Pumpe über USB angeschlossen ist. Das Arduino und das LCD können über USB mit Strom versorgt werden, so dass der Netzschalter sie nicht beeinflusst.
Das Pumpenmenü hat 10 Punkte, die nachfolgend aufgelistet und beschrieben sind:
0|StartStart Pumpen, der Betriebsmodus hängt von dem Modus ab, der unter „6) Modus“ausgewählt wurde
1|VolumeSetzen Sie das Dosiervolumen, wird nur berücksichtigt, wenn „Dose“bei „6) Mode“ausgewählt ist
2|V. Unit:Stellen Sie die Volumeneinheit ein, Optionen sind: „mL“: mL„uL“: µL“rot“: Umdrehungen (der Pumpe)
3|SpeedSetze die Flussrate, wird nur berücksichtigt, wenn „Dose“oder „Pumpe“bei „6) Mode“ausgewählt ist
4|S. Unit:Stellen Sie die Volumeneinheit ein, Optionen sind: „mL/min“: mL/min „uL/min“: µL/min „rpm“: Umdrehungen/min
5|Richtung:Wählen Sie die Pumprichtung: „CW“für Rechtslauf, „CCW“für Linkslauf
6|Mode:Betriebsmodus einstellen:„Dose“: Dosieren des gewählten Volumens (1|Volumen) mit der gewählten Flussrate (3|Speed) beim Start„Pump“: Pumpen kontinuierlich mit der gewählten Flussrate (3|Speed) wenn gestartet“Kal.“: Kalibrierung, Pumpe führt beim Start 30 Umdrehungen in 30 Sekunden durch
7|Cal. Setzen Sie das Kalibriervolumen in mL ein. Zur Kalibrierung wird die Pumpe einmal im Kalibriermodus betrieben und das resultierende, gepumpte Kalibriervolumen gemessen.
8|Save Sett. Save alle Einstellungen in Arduinos EEPROM, Werte bleiben beim Ausschalten erhalten und werden neu geladen, wenn das Gerät wieder eingeschaltet wird
9|USB CtrlActivate USB Control: Pumpe reagiert auf serielle Befehle, die über USB gesendet werden
Schritt 10: Kalibrierung und Dosierung versuchen
Die Durchführung einer ordnungsgemäßen Kalibrierung vor der Verwendung der Pumpe ist für eine präzise Dosierung und Pumpenleistung von entscheidender Bedeutung. Die Kalibrierung teilt der Pumpe mit, wie viel Flüssigkeit pro Umdrehung bewegt wird, damit die Pumpe berechnen kann, wie viele Umdrehungen und welche Geschwindigkeit erforderlich ist, um die eingestellten Werte zu erreichen. Um die Kalibrierung zu starten, wählen Sie den Modus „Cal“. und starten Sie das Pumpen oder senden Sie den Kalibrierbefehl über USB. Der Standardkalibrierzyklus führt 30 Umdrehungen in 30 Sekunden durch. Das während dieses Zyklus gepumpte Flüssigkeitsvolumen (Kalibriervolumen) sollte genau gemessen werden. Stellen Sie sicher, dass die Messung nicht durch am Schlauch haftende Tropfen, das Gewicht des Schlauchs selbst oder andere Störungen beeinträchtigt wird. Wir empfehlen zur Kalibrierung eine Mikrogramm-Skala zu verwenden, da Sie das Volumen leicht berechnen können, wenn Dichte und Gewicht der gepumpten Flüssigkeitsmenge bekannt sind. Nachdem Sie das Kalibriervolumen gemessen haben, können Sie die Pumpe anpassen, indem Sie den Wert des Menüpunkts „7|Kal.“einstellen. oder an Ihre seriellen Befehle anhängen.
Bitte beachten Sie, dass jede Änderung nach der Kalibrierung an der Schlauchhalterung oder der Druckdifferenz die Präzision der Pumpe beeinflusst. Versuchen Sie die Kalibrierung immer unter den gleichen Bedingungen durchzuführen, unter denen die Pumpe später verwendet wird. Wenn Sie den Schlauch entfernen und wieder in die Pumpe einbauen, ändert sich der Kalibrierwert um bis zu 10 %, da zu geringe Unterschiede in der Positionierung und Krafteinwirkung auf die Schrauben auftreten. Durch Ziehen am Schlauch ändert sich auch die Positionierung und damit der Kalibrierwert. Wenn die Kalibrierung ohne Druckdifferenz durchgeführt wird und die Pumpe später zum Pumpen von Flüssigkeiten mit einem anderen Druck verwendet wird, beeinträchtigt dies die Genauigkeit. Denken Sie daran, dass bereits ein Höhenunterschied von einem Meter einen Druckunterschied von 0,1 bar erzeugen kann, der den Kalibrierwert geringfügig beeinflusst, selbst wenn die Pumpe mit dem 0,8 mm Schlauch einen Druck von mindestens 1,5 bar erreichen kann.
Schritt 11: Serielle Schnittstelle – Fernbedienung über USB
Die serielle Schnittstelle basiert auf der seriellen Kommunikationsschnittstelle des Arduino über USB (Baud 9600, 8 Datenbits, keine Parität, ein Stoppbit). Zur Kommunikation mit der Pumpe kann jede Software oder Programmiersprache verwendet werden, die Daten an einen seriellen Port schreiben kann (MATLAB, LabVIEW, Java, Python, C# usw.). Alle Funktionen der Pumpe sind zugänglich, indem der entsprechende Befehl an die Pumpe gesendet wird, am Ende jedes Befehls ist ein Zeilenumbruchzeichen '\n' (ASCII 10) erforderlich.
Dosis: d(Volumen in µL), (Geschwindigkeit in µL/min), (Kalibriervolumen in µL)'\n'
z. B.: d1000, 2000, 1462'\n' (Dosierung 1mL bei 2mL/min, Kalibriervolumen = 1,462mL)
Pumpe: p(Drehzahl in µL/min), (Kalibriervolumen in µL)'\n'
z. B.: p2000, 1462'\n' (Pumpe mit 2mL/min, Kalibriervolumen = 1,462mL)
Kalibrieren: c'\n'
Stopp: x'\n'
Die Arduino-Umgebung (Arduino IDE) verfügt über einen eingebauten seriellen Monitor, der serielle Daten lesen und schreiben kann, daher können serielle Befehle ohne geschriebenen Code getestet werden.
Schritt 12: Teilen Sie Ihre Erfahrungen und verbessern Sie die Pumpe
Wenn Sie unsere Pumpe gebaut haben, teilen Sie uns bitte Ihre Erfahrungen und Verbesserungen in Software und Hardware mit auf:
Thingiverse (3D-gedruckte Teile)
GitHub (Software)
Instructables (Anleitung, Verdrahtung, allgemein)
Schritt 13: Neugierig auf IGEM?
Die iGEM (international Genetically Engineered Machine) Foundation ist eine unabhängige, gemeinnützige Organisation, die sich der Bildung und dem Wettbewerb, der Förderung der synthetischen Biologie und der Entwicklung einer offenen Gemeinschaft und Zusammenarbeit widmet.
iGEM führt drei Hauptprogramme durch: den iGEM-Wettbewerb - ein internationaler Wettbewerb für Studenten, die sich für das Gebiet der synthetischen Biologie interessieren; das Labs-Programm – ein Programm für akademische Labore, das dieselben Ressourcen wie die Wettbewerbsteams nutzt; und das Register der biologischen Standardteile – eine wachsende Sammlung genetischer Teile, die zum Bau biologischer Geräte und Systeme verwendet werden.
igem.org/Main_Page
Empfohlen:
Präzise Temperaturkontrolle auf dem Raspberry Pi 4: 3 Schritte
Präzise Temperaturkontrolle auf dem Raspberry Pi 4: Das Pimoroni Fan Shim ist eine großartige Lösung, um die Temperatur Ihres Pi zu senken, wenn es heiß läuft. Die Hersteller liefern sogar eine Software, die den Lüfter auslöst, wenn die CPU-Temperatur über einen bestimmten Schwellenwert (z. B. 65 Grad) steigt. Die Temperatur q