sparklab Feed-Sensor
Was wäre, wenn man sein Filament bis zum letzten Meter aufbrauchen könnte, ohne den Drucker permanent beaufsichtigen zu müssen? Wenn der Drucker erkennt, dass die Düse beginnt sich zu verstopfen? Wenn er erkennen könnte, wann die Leistungsgrenze des Extruders erreicht ist, um auftretende Fehler automatisch zu korrigieren?
Seit einiger Zeit beschäftigen wir uns nun, in Zusammenarbeit mit Roland Littwin (http://www.repetier.com/), mit diesen Fragen. Gemeinsam entwickeln wir ein zukunftsweisendes Filament-tracking-System, welches uns völlig neue Möglichkeiten offen hält.
Unsere Antwort: der sparklab Feed-Sensor
In der Praxis:
Mithilfe des sparklab Feed-Sensor lässt sich nicht nur der Drucker pausieren, wenn das Filament leer ist oder die Düse verstopft. Vielmehr kann nun der sparkcube beispielsweise beim Erkennen von leichtem Schlupf, welchen man mit bloßen Auge noch nicht erkennen kann, automatisch die Geschwindigkeit drosseln und so aktiv einem Filament-Stau vorbeugen. Dies ermöglicht uns einen wesentlich detaillierteren Einblick in den Extrusionsvorgang. Fertig eingestellt, liefert die Firmware Werte zur aktuellen Auslastung, etc. Der sparklab Feed-Sensor ist eine neue und effektive Art, die Grenzwerte des Extruders zu ermitteln, und der nächste Schritt in Richtung eines intelligenteren Druckers.
Funktionsweise des sparklab Feed-Sensors
Die beiden Kugelgelagerten Gummirollen laufen reibungslos und mit genug Grip am Filament um der Firmware zuverlässige Werte zum Filament Feed zu senden.
Die Sensorelektronik lässt sich direkt an einem freien Endschalter Port anschließen. Kompatibel zu allen gängigen Elektroniken (3,3v und 5V kompatibel)
Funktionsweise der Firmware
Ab 0.92.3 unterstützt die Repetier Firmware nun „jam“ und „out of filament“ Sensoren. Diese arbeiten wie folgt:
Das Filament läuft durch den Sensor hindurch, und streift ein Mitnehmer-Rädchen. Das Drehen dieses Rädchens sendet ein bool’sches Signal (0 oder 1) an einem Schalter. Der Schalter könnte sowohl mechanischer, als auch kontaktloser Natur sein, wobei kontaktlose Schalter, wie beispielsweise ein „Hall Sensor“ zu bevorzugen sind.
Nun zählt die Firmware die Schritte des Extruders, wobei jeder 0/1-Zyklus nun annähernd die gleiche Anzahl von Extruder-Schritten (JAM_STEPS) brauchen sollte, und damit einen Wert liefert, der Rückschluss auf das „Schlupf-Verhalten“ gibt.
Kommt das Signal in zu kurzer Zeit mehrmals, löst das keinen jam aus. Hierzu ist der Wert „JAM_MIN_STEPS“ festzulegen.
Beginnt der Extruder einen Schlupf auszubilden, braucht es mehr Extruder-Schritte für den Umlauf des Filament-Rädchens, und die Firmware bekommt das Signal, dass ein Problem vorliegt.
Hierbei unterscheidet die Firmware 2 Zustände:
Bei einem leichten Anstieg der Extruder-Schritte (> JAM_SLOWDOWN_STEPS) wird die Extrusion des Materials zäher, oder die Haftung am Filament-Rädchen sinkt. In diesem Fall wird der „speed multiplier“ auf einen gewünschten Wert (JAM_SLOWDOWN_TO) gesetzt.
Werden jedoch mehr Schritte benötigt, als in „JAM_ERROR_STEPS“ definiert, wird angenommen, dass ein Problem vorliegt, welches nicht mehr durch das Reduzieren der Geschwindigkeit behoben werden kann. In diesem Fall wird die Aktion „JAM_ACTION“ ausgeführt.
Action 0 gibt eine Warnung auf dem LCD des Druckers aus, sowie ein Akustisches Signal.
Action 1 blockiert die Kommunikation mit dem Host, um weiteres Drucken zu verhindern. Außerdem bewegt sich der Extruder zum Filament-Wechselpunkt, schaltet alle Heater und Motoren aus, und wartet auf eine Reaktion des Nutzers. Nach Abschluss der Routine kann der Drucker ein homing durchführen, und den Druck fortsetzen.
Action 2 startet die Pause-Routine.
Um die neuen Funktionen zu handhaben, wurden folgende Befehle in Repetier implementiert:
M513 – setzt das jam signal zurück
M601 S1 – pausiert und schaltet Extruder-Temperatur aus
M601 S0 – stellt Extruder-Temperatur vor Pause wieder ein
M602 S<1/0> P<1/0> – für jam debugging (S), oder um das jam control zu deaktivieren (P)
Bei aktiviertem debugging wird die Firmware keine Aktionen ausführen. Sie wird lediglich die Signal-Schritte und Prozentwerte in den Host-Log schreiben. Auf diesem Wege kann man den gewünschten 100%-Wert festlegen. Weiterhin kann so festgestellt werden, wann die Kräfte im Extruder zu hoch werden, sodass ein Schlupf entsteht.
Einrichtung [ToDo]
1. Firmware konfigurieren
2. Hostausgabe analysieren
3. Werte in Firmware eintragen
4. fertig
Wenn alle Tests abgeschlossen sind, stellen wir die Dateien zum Nachbauen im Downloadbereich zur Verfügung.
Sei live dabei: facebook.com/thesparklab // twitter.com/sparklabDE
Super Sache!
Ich hab mir die BOM zu dem Projekt angeschaut und scheitere an den von Euch verwendeten Gummipuffer. Die Puffer in M4 sind mit einem Durchmesser von 10mm. Woher habt ihr Eure Gummipuffer?
Gruß,
BlogLaus
Hallo BlogLaus,
derzeit scheinen die Puffer überall ausverkauft zu sein, ich habe die Rollen allerdings in unseren Shop eingestellt.
Hey,
die Idee mit dem Feed-Sensor ist echt gut. Könnt ihr aber noch sagen mit welcher Auflösung bzw. Genauigkeit das abrollende Filament gemessen wird?
Viele Grüße
Im Grunde hängt die theoretische Auflösung von den Steps/mm im Extruder ab. Da wir jeden Step registrieren haben wir bei 128 Steps und dem sparklab Extruder eine Auflösung von ca. 0,0006 mm, allerdings wird der Wert immer nur dann ausgegeben, wenn der FTS das Signal sendet, was immer nach ca. 5mm Filamentbewegung der Fall ist.
vincent.
Hallo, Welche Maße müssen die Gummipuffer haben?
Also welche Pufferstärke?
und welchen Durchmesser?
Viele Grüße
Hallo Christopher,
die Gummirolle hat 8mmx5mm (DxL), das Gewindestück ist M4. Du findest die Gummipuffer auch bei uns im Shop.
vincent.
Wie sieht es mit Marlin aus? Ist der Sensor kompatibel und gibt es Hinweise zur Einstellung? Oder geht der Sensor nur mit Repetier?
Marlin unterstützt zu diesem Zeitpunkt noch keine Feedsensoren.
Hallo,
wie erkennt man denn, ob der Magnet richtig auf der Welle sitzt, wenn keine Markierung am Magneten vorhanden ist?
Hallo Marcel,
der FTS kommt korrekt vormontiert. Wir haben dazu einen Referenzmagneten, der uns anzeigt wie die anderen ausgerichtet sind. Ohne Hilfsmittel baust du alles ein, schließt die Elektronik an und beobachtest ob die LED beim drehen blinkt. Falls nicht, musst du den Magneten um 90° drehen.