Projekt "Spritpumpe"

 

 

Mich hat kürzlich die Anfrage eines Freundes erreicht, ob ich dabei helfen kann eine exklusive "Schankanlage" für die bevorstehende Kirmes zu bauen.

Der Wunsch: Ein Mähdrescher soll über sein Abladerohr Schnapsgläser befüllen.
Also genau wie es sein soll: ein Mähdrescher, der Korn ausschenkt!

Das Projekt hat mich interessiert, also habe ich zugesagt die nötige Technik zu entwerfen.

Der Mähdrescher ist ein relativ realistisches Kinderspielzeug eines bekannten Spielwarenherstellers.

Für die Schnapsgläser sind Stellplätze vorgesehen über die das Abladerohr bewegt wird.

Wird ein Glas auf einen der Plätze abgestellt, soll das Abladerohr über das Glas schwenken und das Glas füllen.

Die Gläser werden durch RGB LEDs von unten beleuchtet.
Das dient neben dem Lichteffekt auch zur Signalisierung des Status.

Eventuelle Einstellarbeiten sollen später ohne Anpassung der Software durchgeführt werden können.

Technische Umsetzung:
Das Mähdreschermodell ist auf einem Unterbau (zwei verschraubte Holzkisten) verschraubt, in dem sich die gesamte Technik befindet.
Es wurden ursprünglich fünf Stellplätze für Gläser vorgesehen, aber der eingeschränkte Drehbereich des Abladerohrs hat nur vier zugelassen.

Die Ablaufsteuerung übernimmt ein Mikrocontroller der AVR Familie.

Das Abladerohr wird durch einen Modellbau Servo bewegt.
Diesen Servos kann mittels eines PWM Signals eine Position vorgegeben werden, die sie dann selbsttätig anfahren.
Das verwendete Modell ist zwar mit ~5€ eher günstig, hat aber ein fast spielfreies Metallgetriebe und eine hohe Wiederholgenauigkeit!

Als Halterung für den Servo wurde in den Korntank des Mähdreschers eine Sperrholzplatte eingezogen und entsprechende Ausschnitte im Kunststoff angefertigt.
Befestigt ist das alles mit Heißkleber, den man zur Not wieder mit sanfter Gewalt lösen kann.

Unter den Stellplätzen für die Gläser befindet sich je eine adressierbare RGB Led und ein Mikroschalter über welchen ein abgestelltes Glas erkannt wird.
Als Diffusor für das Licht und als Druckplatte dienen Plexiglasplättchen, die mit einem Sandstrahler mattiert wurden.
Alle Ausschnitte und Gravuren wurden mittels eines Lasercutters angefertigt.

Relativ schwierig war es, eine geeignete und bezahlbare Pumpe zu finden.
Sie muss verschiedene Kriterien erfüllen:

  • Lebensmittelecht
  • Eine angemessenes Fördervolumen um ein Schnapsglas zu befüllen.
  • Gute Dosierbarkeit
  • Selbstansaugend
  • Nach Möglichkeit mit Rückschlagventil, um nicht immer den Schlauch neu befüllen zu müssen
  • Somit sind wir letztlich bei einer Schlauchpumpe oder auch Peristaltikpumpe angekommen.
    Dieser Pumpentyp arbeitet nach dem Verfahren, dass ein eingelegter Schlauch durch Rollen gewalkt wird und so Volumen gefördert wird.
    Das Fördermedium kommt ausschließlich mit dem Schlauch in Kontakt, daher ist Hygiene kein Thema.
    Bei Bedarf kann der Schlauch auch komplett ersetzt werden.

    Es handelt sich um ein Modell welches einen Schrittmotor als Antrieb verwendet, somit ist eine exakte Dosierung problemlos möglich.
    Durch den dauerhaft gequetschten Schlauch wird ein Rückfluss zuverlässig verhindert.
    Das Fördervolumen ist vom Hersteller mit bis zu 400 ml / Minute angegeben.

    Leider sind diese Pumpen nicht gerade preiswert. Ich habe dieses Modell bei Amazon für gut 50€ gefunden.
    Allerdings funktioniert sie für diesen Zweck hervorragend und löst alle angesprochenen Probleme!

    Derzeit betreiben wir den Motor mit ~1000 Vollschritten / Sekunde, was ausreichend Fördermenge liefert und gut zu der 12V Versorgungsspannung passt.
    Wenn ich mich nicht verrechnet habe, entspricht das einer Rotordrehzahl von ~400 U/Min.
    Ganz genau ist das nicht, da die Impulse über "wait" Befehle generiert werden.

    Die Pumpe wird über ein fertiges Schrittmotor Treibermodul (DRV8825) angesteuert, was den Anschluss an einen Mikrocontroller erheblich vereinfacht.
    Der Mikrocontroller kann über Steuerleitungen das Modul einschalten, die Drehrichtung und über die Impulsdauer die Drehgeschwindigkeit bestimmen.

    Der Schaltplan ist recht einfach, da praktisch alle Funktionen vom Mikrocontroller gesteuert werden.
    Im Wesentlichen beschränkt sich die Schaltung auf die Bereitstellung und Filterung der nötigen Versorgungsspannungen von 5 und 12V.

    Die Wahl für einen Mikrocontroller ist auf einen ATMega8A gefallen, da er gerade verfügbar war und das Programm in den Speicher passt.
    Spezielle Features des Controllers werden nicht benutzt.
    Der Controller arbeitet mit seinem internen Takt von 8 MHz und die BrownOut Erkennung (zuverlässiger Reset!) wurde auf 2.7V programmiert.

    Das Gerät benötigt bei 12V und laufender Pumpe maximal 1 Ampere.
    Für die Unabhängigkeit vom Stromnetz sorgt ein 12V LiPo Akku.

    Die Software:
    Die Programmierung ist wie bei mir üblich, in Bascom erfolgt.

    Es werden zwei Libraries benutzt, die sich leider beeinflussen!
    Zur Ansteuerung des Servos wird die Servo Library benutzt und zu Ansteuerung der RGB LEDs die "Rainbow" Library.
    Wenn Daten in die LEDs übertragen werden, werden alle Interrupts abgeschaltet.
    Kollidiert das zu häufig mit dem Timer Interrupt von der Servo Ansteuerung, beginnt dieser zu zittern.
    Daher dürfen die Daten in den LEDs nur aktualisiert werden, wenn es absolut notwendig ist.
    Ein ständiges aktualisieren der LEDs in der Hauptschleife funktioniert nicht!

    Wie schon erwähnt sollen Einstellarbeiten (Position des Abladerohrs, Füllmenge des Glases) auch ohne Anpassung des Programmcodes möglich sein.
    Daher sind diese Parameter im EEPROM des Controllers gespeichert.

    Um das EEPROM einmalig mit sinnvollen Daten zu befüllen, wird beim Einschalten Pind.6 abgefragt.
    Wird dieser Pin beim Einschalten auf "low" gehalten, wird das EEPROM mit Standardwerten befüllt.

    Um eine Kalibrierung zu ermöglichen, wird ebenfalls beim Einschalten Pinc.5 abgefragt.
    Wird der dort angeschlossene Taster beim Einschaltvorgang gehalten, wird das Kalibrierprogramm aufgerufen und es können verschiedene Einstellungen vorgenommen werden.
    Mehr dazu in der Bedienungsanleitung.

    Später wurde noch eine Taste nachgerüstet, über welche die Pumpe auf Dauerbetrieb geschaltet werden kann um den Schlauch zu füllen oder zu reinigen.

    Der Basic Quellcode enthält entsprechende Kommentare, womit die Funktion nachvollzogen werden kann.

    Das Programm kann hier heruntergeladen werden Download

    Der Schaltplan der Steuerung: (Klick zum vergrößern!)

    Zum Schluss noch einige Bilder:

    Die Stellplätze in Betrieb Detail Stellplatz Antrieb Abladerohr
    Die Technik im Unterbau Steuerung Komplette Ansicht

     

     

    Zuletzt aktualisiert: 04/2023
    © klaus(at)taeubl.de