RoboEtch
Visitenkarten kann man, wenn man will auch aus Aluminium machen. Wie geht das? Eloxierte Rohlinge bestellen, gravieren -fertig?
Nein! Wenn die Vorder- und Rückseite graviert werden sollen, heisst das zwei Arbeitsgänge pro Karte, bei sagen wir mal vielen Karten, gibt das doppelt so viele Arbeitsgänge. Und wenn man aber eine Industriellen CoBot zur Hand hat dann…
Robotergestützte Gravur von Visitenkarten aus Aluminium
Projektübersicht & Motivation
Aus der tiefen Faszination für Robotik heraus ergab sich die Gelegenheit, ein Ausstellungs- und Vorführmodell eines sechsachsigen Industrie-Roboterarms vom Typ Universal Robots UR5e zu erwerben. Nach ersten spielerischen Versuchen um mich mit der Bedienung des Roboterarms vertraut zu machen beginnt hier die erste “industrielle” Fertigungsaufgabe: Dem vollautomatisierten, beidseitigen Gravieren von Aluminium-Visitenkarten mittels eines Galvanometer-gesteuerten Faserlasers.
Die primäre Herausforderung: Der Faserlaser verfügte weder über eine dokumentierte, quelloffene API noch über externe digitale Steuerschnittstellen. Um ein zeitintensives, manuelles Neuladen von Laser G-Code für Vorder- und Rückseite zu vermeiden, musste ich ein System entwickeln, welches beide Seiten synchron in einem einzigen Laservorgang graviert und die Beschickung an den Roboter delegiert.
Setup
Roboterarm Universal Robots UR5e mit integriertem Kraft-Moment-Sensor
Manipulator (3D-Druck) mit 4 Vakuum Saugnäpfen
Adapterflansch (3D-Druck) für die Standardaufnahme an der 6.Achse
Unterdruckschlauch 6mm Quick-Fit
Teach-Pendant (Toch-Display zur Steuerung und Programmierung)
Integrierte I/O-Box (
Drehteller
Pneumatischer Schwenkantrieb (Schwenkfügel-Antrieb) mit justierbaren Endanschlägen
Halterung zur Montage in die Lochrasterplatte (3D-Druck)
Drehteller zweiseitig mit jeweils zwei Vertiefungen für Forder- und Rückseite
Induktiver Näherungssensor zur verifizierung des Erreichens der Endpositionen (Nach dem ersten zersplitterten Drehteller und zu forscher Optimierung der Zykluszeiten… Grins!)
Laser Gravierer xTool F1 (Galvanometer gesteuerter Laser)
Zusatz-Auslöser zum externen Starten des Laser-Vorgangs
Kartenstapel
Kartenschacht (3D-Druck)
Ablageschacht (3D-Druck)
Technik
Robotersteuerung
Vakuumpumpe
Druckluftanschluss
Solenoid-2/5-Wege 4-Fach-Ventilblock
Drehteller
2-Wege-Zylinder “Startknopfdrücker”
Exhaust-Air (Nach realisation, dass einfaches Zuschalten von Atmosphärendruck keinen zuverlässigen Kartenabwurf erzeugt)
Solenoid-1-Wege-Ventil zur Vakuum Steuerung
Vakuum-Sensor mit digitalem Ausgang und Schwellenwertdefinition
Basis
Werkzeugwagen aus Edelstahl
Lochrasterplatte 50×50mm mit M-8-Innengewinde aus Multiplex
Adapterplatte für Roboter-Basis aus Multiplex
Steuerung
Virtuelle Umgebung
Sichere Zonen
Virtuelle Begrenzungen
Koordinatensysteme für die verschiedenen Baugruppen
Exakte Koordinaten im Bezugssystem
Sicherheits-Einstellungen
Crash-Empfindlichkeit
Not Halt
Beschleunigung
usw.
Programm-Code
Genereller Ablauf
Funktionsblöcke für repetitive Sequenzen
Init-Phase
Exit-Phase
Geschwindigkeiten
Beschleunigung
Background Thread für Vakuumüberwachung
Software
Autodesk Fusion 360 (CAD Modellierungssoftware)
Prusa Slicer (3D-Druck vorbereitung)
xTool Studio (Laser Dienstprogramm)
Design / Prototyping / Fallstricke
Manipulator auf Adapterflansch
Manipulator
Den Manipulator mit den 4 Saugnäpfen habe ich (wie alle Teile) in Autodesk Fusion 360 designt. Die Modellierung der Internen Kavitäten für die Luftwege waren leicht und schnell mit Sweeping entlang einer 3D-Skizze erstellt. Das Innengewinde für das Fitting für den 6mm Quick-Fit-Schlauch mit dem internen Gewinde-Generator schnell erstellt. Die Pilzförmigen Basen für die 4 Saugnäpfe auf den ersten Versuch passend. Jedoch ist ein 3D-Druck durch die inhärente Mikroporosität nicht Gasdicht. Das hat dann dazu geführt, dass ich in den Slicer Einstellungen in Prusa Slicer mehrere Iterationen gebraucht habe, um die Anzahl der Perimeter und den Extrusionsfaktor so anzupassen, dass der Druck annähernd Gasdicht geworden ist. Das geplante kurzzeitige fluten der internen Luftleitungen mit hochviskosem Zyan-Acrylat (Sekundenkleber flüssig) war somit nicht mehr nötig.
Vereinzelung / Kartenschacht
Mein erster entwurf für die Kartenseparation war eine art Schlitten oder eine Schublade, welche durch eine Vertiefung in Kartenform, die Vereinzelung handhaben sollte. Die Karten haben eine sehr glatte Oberfläche, welche beim Versuch der Vereinzelung mit einer starken Adhäsion (Van-der-Waals-Kräfte) und einem Mikrovakuum (zwischen den planaren Oberflächen - braucht Zeit und Kraft um sich abzubauen) der Separation widerstehen. Leider war es ein totaler Fehlschlag, bei dem ca. 2-3 Karten mitfuhren und den schlitten blockierten, so dass ich das Konzept kurzerhand verwarf.
Da ich jedoch bereits einen Kartenschacht als Ablagestapel entworfen und gedruckt habe, muss es doch möglich sein, ohne weitere Hilfsmittel, also rein mit der Roboterkinematik ein Separation zu erreichen. Also habe ich mehrere schnelle Zyklen von Wackel-/Drehbewegungen um die Kartenmitte herum implementiert, welche die Karten zuverlässig separieren. Die Raue Oberfläche des 3D-Gedruckten Schachtes unterstützt die Separation insbesonders.
Drehteller
Da die Karten synchron beidseitig Graviert werden (Karte n auf Vorderseite, Karte n-1 auf der Rückseite) muss der Drehteller 2 Rotationssymmetrische Teile haben, welche jeweils zwei Vertiefungen für die Karten haben. Da die Karten jedoch einseitig angesaugt werden, was immer die Vorderseite ist, muss im Ablagefach 2 respektive 2’ ein Ausschnitt sein, um die Karten mit der Rückseite nach oben ablegen zu können. Nach initialem Modellieren des bereits vorhanden Adaprerflansches war es ein leichtes, ein Teil zu Konstruieren, welches sich mit Einschmelz-Gewindehülsen und M3 Schrauben aneinander und mit den jeweils zwei von unten kommenden Schrauben am Flansch zu befestigen.
Die Drehgeschwindigkeit des Pneumatischen Schwenkantriebes mit verstellbaren Endanschlägen habe ich mit ausgangsseitigen direktionalen Drosseln gedämpft, um Slip-n-Stick Verhalten zu reduzieren und das wegschleudern der Karten als mörderische Geschosse durch den ganzen Raum zu unterbinden. Den Systemdruck reguliere ich über ein Druckreduzierventil.
Laser-Gravierer Ansteuerung
Da der Laser kein digitales Startsignal verarbeiten konnte, wurde die Ansteuerung mechanisch gelöst: Ein pneumatischer Kurznhubzylinder ist über dem physischen Startknopf des Lasers montiert. Meldet der induktive Sensor das Einrasten des Drehtellers, löst die Robotersteuerung ein Magnetventil aus, und der Zylinder triggert den Laserprozess.
Da auch kein digitales "Fertig"-Signal vom Laser kommt, läuft die Taktung aktuell über ein empirisch ermitteltes Zeitfenster. Für die finale Ausbaustufe ist jedoch bereits das nächste Feature geplant: Das Abgreifen der Schaltspannung des internen Abluftlüfters des Lasers, welcher exakt mit dem Gravurvorgang startet und stoppt, um ein Closed-Loop-Rückmeldesignal zu generieren.
Integration
Vertrauen ist gut - Kontrolle ist besser!
Da ich feststellen musste, dass es unvorhergesehene Ereignisse gibt, Vakuumpumpe vergessen einzuschalten, Luftdruck abfall, Werkzeug liegen gelassen musste ich die relevanten Prozessschritte systematisch verifizieren.
Der Drehteller rotiert um 180°. Da reine Zeitsabhängigkeit der Rotation durch Luftdruckschwankungen oder mechanische Blockaden (z. B. im Weg liegendes Werkzeug) im Entwicklungsprozess zu Ausschuss führten (Drehteller abgebrochen), habe ich einen induktiven Näherungssensor nachgerüstet. Dieser detektiert eine Justierschraube an den Endanschlägen der Drehplatte und gibt das Erreichen der Zielposition über einen digitalen Eingang (DI) der Robotersteuerung frei. Erst wenn dieses Signal anliegt, startet der Prozess des Karten-Handlings und der neuerlichen Beschickung.
Der Erhalt des Vakuums ist ein Indikator für verschiedene Failure-Modes. Also habe ich einen Digitalen Vakuumsensor mit einstellbarem Schwellenwert nachgerüstet. Der Wert wird über einen Background-Thread in der Steuerung überwacht, welcher in den phasen, wo ein Unterdruck aufgebaut oder gehalten werden soll eine initiale respektive kontinuierliche Abfrage durchgeführt, welche die Exekution des Programms im Fehlerfall augenblicklich stoppt.
Detektion von mechanischem Versagen
Vakuumpumpe defekt
Leitungsdefekt
Materialermüdung
Elektrischer Defekt
Detektion von fehlender Karte (Verliert den Unterdruck nach Ansaugen und Wegfahrbewegung)
Detektion von menschlichem Versagen - Ooops!
Vakuumpumpe nicht eingeschaltet / angeschlossen
Karten vergessen abzuzählen
Kamera zu nahe hingehalten
Ablauf
Init
Während der Laser auf der einen Seite des Tellers arbeitet, fährt der Roboter in Warteposition.
Sobald die Drehplatte nach dem Laservorgang zurückschwenkt, saugt der Roboter die beidseitig gravierte Karte an und bewegt die in den Ablagestapel. In Folge saugt er die einseitig gravierte Karte an, wendet sie im Raum und legt sie durch einen Ausschnitt im Drehteller umgedreht (Rückseite nach oben) in Fach B ab.
Das Problem der elastischen Rückfederung (Springback)
Beim Ablegen der gewendeten Karte passierte es anfangs regelmäßig, dass die Karte durch materialspezifischen Verzug (Flexing) elastisch nach oben federte, sobald das Vakuum abgestellt wurde. Ein reines Belüften der Leitung unter Atmosphärendruck war viel zu träge.
Die Lösung brachte die Integration eines Druckluft-Überdruckimpulses: Über ein feinfühlig eingestelltes Durchflussreduzierventil (Drosselventil) wird im Moment des Lösens ein minimaler, dosierter Druckluftstoß auf die Saugnäpfe gegeben. Durch die exakte softwareseitige Abstimmung von Vakuum-Unterbrechung und Abwurf-Timing wird die Karte nun kontrolliert in das Fach gedrückt, ohne dass sie springt oder sich verschiebt.
5. Pipeline-Management: Steady-State, Init & Exit
Befinden sich alle Karten im Durchlauf, arbeitet das System im hocheffizienten Steady-State: Bei jedem Zyklus wird eine fertige Karte in den Auswurfschacht gestapelt, eine teilgravierte Karte gewendet und ein neuer Rohling eingezogen.
Die größte logische Denkarbeit im Programmcode floss in das Pipeline-Management (Anfangs- und Schlusssequenz):
Die Init-Phase: Beim ersten Start des Systems ist der Drehteller leer. Der Roboter darf nicht versuchen, eine nicht vorhandene Karte zu wenden oder zu greifen, da der fehlende Unterdruck sonst sofort einen Not-Halt auslösen würde. Die Beladungssequenz muss daher schrittweise aufgebaut werden.
Die Exit-Phase: Ist der Kartenschacht leer (detektiert über den UR5e-Nullpunkt-Tiefenanschlag), schaltet das System in eine sequenzielle Entleerung. Die verbleibenden Karten auf dem Drehteller werden sauber zu Ende graviert und ausgeworfen, ohne dass neue Karten nachgeholt werden.
Es kann eine voreingestellte anzahl Karten definiert werden.
Learnings & Kompetenzgewinn
Roboterprogrammierung & Sensorik: Nutzung von Kraft-Momenten-Sensorik zur adaptiven Bauteilsuchfahrt sowie Implementierung asynchroner Hintergrund-Threads zur Sicherheitsüberwachung.
Pneumatik & Fluidtechnik: Beherrschung von Unterdrucksystemen, Object-Pooling im Luftstrom (Abwurfsicherung via Drosselventilen) und EMV-sicherer Sensorintegration.
Kreative Problemlösung: Entwicklung mechanischer und elektrischer Schnittstellen ("Hardware-Hacking") für geschlossene Fremdsysteme ohne offene Software-Schnittstellen.
Türe mit Blendrahmen aus Fichte
Im Zuge der Fertigstellung des Praxisraumes für meine Frau, habe ich ja bereits eine neue Eingangstüre und ein neues Schaufenster eingebaut.
Der neu kreierte Durchgang zum Hauptbereich des Hauses, welcher durch die Zusammenlegung der beiden WC’s und der Nutzung der bestehenden Türöffnungen entstanden ist, braucht noch eine neue Tür zum Praxisraum. Da die Durchgangshöhe durch den gedämmten Bodenaufbau und die Breite auch den Dämmputz abgenommen hat, wollte ich nicht noch mehr Raum verlieren und habe mich für einen Blendrahmen entschieden.
Materialbeschaffung
Als Rohmaterial habe ich mir für den Rahmen Fichtenstaffeln mit 44 mm * 90 mm vom Sägewerk geholt, für die Tür zwei 3-Schicht Platten und 5 mm * 60 mm Fichtenleisten vom Baumarkt.
Da es eine WC-Türe ist, braucht es auch einen entsprechenden WC-Beschlag mit typischem Schlosskasten, welcher sogar im Baumarkt mit höher Qualität (dormakaba) verfügbar war und zur erleichterung ein verstellbares Schliessblech (dormakaba). Die Beschläge sind in Messing gehalten. Die Drückergarnitur vom Fachhandel (bestes Design) und die Türbänder vom Baumarkt. Ich weiss, klingt langweilig, für die Konstruktion (oder den Nachbau) aber essentiell. Die Türdichtungen sind von Amazon.
Konstruktion
Nach ein paar Tagen des nebenläufigen Nachdenkens über Details, habe ich mit der digitalen Konstruktion in Fusion 360 begonnen.
Das erstellen der Werkzeugwege in der Fusion 360 CAM-Umgebung (Computer Aided Manufacturing), hat wie üblich viel Zeit und Konzentration in Anspruch genommen.
Fertigung
Die Rahmenteile zu fräsen hatte aufgrund der Dichtungen eine besondere Herausforderung parat. Die Dichtung brauch eine 4 mm-Nut, welche jedoch im Rahmenfalz ist und somit einen langen dünnen Fräser braucht bei 6,5 mm Nuttiefe, mit, Nutgrund um 33,5 mm abgesetzt von der Oberkante.
Nachdem anfänglich die Nut trotz nur 1 mm Zustellung pro Arbeitsgang fast 5 mm breit und sehr unansehnlich geworden ist, ist bei der ersten Berührung eines kleinen Astes im Holz, der Fräser natürlich abgebrochen. Nach Überlegungen hin zu Oberfräse mit Scheibennutfräser oder Tischkreissäge mit 2. Durchgang mit seitlicher Zustellung (Kreissägeblatt nur knapp 3 mm breit), habe ich glücklicherweise einen 4mm-Fräser, einschneidig mit 8 mm-Schaft und einer Arbeitslänge von 10 mm, neu, scharf und unbenutzt, in der Oberfräsenkiste gefunden - der Tag war gerettet!
Nach einem Weiteren Teststück, in welchem ich ausserdem noch die Grösse der Bohrung für die Türbänder ausprobiert habe, konnte ich endlich mit der Produktion beginnen.
Dank der Waagrecht-Niederzugspanner von Bessey und dem entsprechenden Lochraster mit 20mm-Bohrungen mit 100 mm Abstand (versetzt dazu M8 Innengewinde für Spannpratzen), ist die Werkstückbearbeitung ein Traum. Man unterschätzt gerne wie viel Aufwand, das Befestigungskonzept und dessen Ausführung erfordert.
Die Aussparung für das Schliessblech und die Befestigungslöcher für die Türbänder wurden präzise eingefräst, der Falz und die Nut sind perfekt geworden.
Für die Ausrichtung des 3-Schichtigen aufbaus der Tür, bestehend aus zwei 3-Schicht-Platten (Fichte) und einem schmalen Zwischenrahmen, um die für das Schloss benötigte Türstärke zu erreichen, habe ich bereits Löcher für Holzdübel gefräst. Beim verleimen konnte ich somit entspannt den Leim auftragen und dank der Dübel alle schichten aufeinanderlegen und mit Hilfe von grossen Kanthölzern auf den Frästisch niederspannen.
Montage
Zur Montage habe ich eine 3D-Gedruckte Lehre entworfen, welche sich mit einer Zwinge am Blendrahmen befestigen lässt, und es mir erlaubt, genau im Falz eine manuelle Bohrung zu erstellen. Im ersten arbeitsschritt mit einem Holzbohrer, welcher es dem Schraubenkopf spater erlaubt ohne ausriß versenkt zu werden. Im Zweiten durchgang (nach versetzen der Lehre) mit einem 6mm Schlangenborher ein Loch bis auf den Putz, um später mit dem Bohrhammer das Loch in die Mauer zu erweitern. Die Würth Fensterschrauben wurden je nach beim Bohren gefühlten Untergrundverhälltnissen mit einer länge zwischen 160-300mm versenkt, um die benötigte Stabilität zu erreichen. Das Anbringen der Türbürste als finale Aktion vervollständigt die für meine größe geeignete Türe.
Ergebnis
Die Tür schließt nach erfolgter Einstellung der Beschläge einwandfrei und dicht. Nach dem zeihen aller Acrylfugen und der Montage der Beschläge bemerkt man eine schöne Holztüre, welche von den meisten Besuchern nur für ihre Holzoptik geschätzt wird, jedoch nicht als Eigenbau erkannt wird. Somit bin ich sehr mit meinem Ergebnis zufrieden.
Messing-Schalterpaneel Praxisraum
Messing-Schalterpaneel Praxisraum
Als Krönung des bereits wunderschönen Praxisraumes, habe ich mir für meine Frau etwas besonderes überlegt.
Bekekanntlich erhellt erst die Beleuchtung einen Raum mit vielfältigen Stimmungen.
Wo es Licht gibt, gibt es aber auch Schatten, in diesem Falle Lichtschalter, noch schlimmer - viele Lichtschalter.
So habe ich mir ein Konzept überlegt, bei dem die Lichtschalter nicht nur wegfallen, sondern durch etwas Schönes ersetzt werden. So wurde aus dem Schandfleck ein Schmuckstück.
Wie im Bild zu sehen, ist die Positionierung der einzelnen Taster, der Aufteilung des Raumes nachempfunden, was die Usability gemeinsam mit der für sich sprechenden Laser-Gravur (Galvo-Laser X-Tool F1) abrundet.
Da ich, durch den Exzessiv aufgetragenen Kalk-Perlite-Innen-Dämmputz und der damit einhergehenden schweren Einschätzbarkeit der benötigten Putzmenge, alle Steckdosen, Abzweigdosen, Lampendübel usw. eher konservativ (lieber zu tief in der Wand als überstehend) platziert habe, ergibt sich bei dieser großen Abzweigdose ein unregelmässiges Bild, bei welchem die Parallelität der 200er Abzweigdose mit der Wandoberfläche nicht gegeben ist. Nach kurzem Herumspielen am CAD-Programm habe ich gemerkt, dass eine Ausrichtung der Ebene kombiniert mit der Erhaltung / Erzeugung der horizontalen Ausrichtung aufwändig würde und in vielen Einzelteilen mündete.
Kurzentschlossen habe ich meinen 3D-Scanner (Shining EinStar) ausgepackt und die Dose gescannt.
Beim dritten Versuch habe ich die richtigen Einstellungen erwischt und konnte aus der Punktewolke eine sinnvolle Referenz-Oberfläche gestalten, welche ich im stl-Format in Fusion exportiert habe. Nach der Anfänglichen Fehlskalierung (import standartmässig in cm statt mm) des imporiterten Netzkörpers und dem dazugehörigen Workaround, und der Reduktion der (zu) zahlreichen Dreiecke um 95% haben auch Pan und Zoom wieder ordentlich funktioniert.
So habe ich einen Rahmen designt, welcher den Versatz und die Rotation der Ebenen korrigiert und mit meinem 3D-Drucker gedruckt.
Wie das beim prototypisieren immer mal wieder vorkommt, habe ich dann m5-Innengewinde gedruckt, anstatt der zu den bestellten m4-Messing-Hutmuttern passenden Gewinden, an den Toleranzen konnte ich auch noch ein wenig feilen - der 2te Druck hat Spot-On gepasst.
Nach dem Ausfräsen der Kontur, der Befestingungslöcher und der Taster, mit der althergebrachten Technik der Kreppband-Sekundenkleber-Aktivator-Methode, und einigem Entgraten, habe ich die Taster befestigt und mit dem Lasern begonnen.
Nach mehreren Test-Arrays, um die geeigneten Einstellungen zu finden, hatte ich schon die Vermutung, dass die Reflexionseigenschaften des verwendeten Messing-Dünnbleches, das Gravieren nur im zentralen Bereich erlaubt. Beim versuch den Maximalen Gravurbereich zu verwenden hat sich das bestätigt, im Zentralen Bereich eine angenehm dunkle Gravur, in den Randbereichen teilweise kaum sichtbar. So hat sich dann die Gravur schwieriger gestaltet als angenommen. Da die XTool Creative Space Software, welche den Laser steuert, erlaubt keine Elemente ausserhalb des Gravurbereiches, somit musste ich für jede Beschriftung einen Durchgang Flächengravur und einen Durchgang Konturgravur vorbereiten und ausrichten, und jeweils alle anderen Elemente löschen.
Nachdem anstatt der geschätzten Stunde der ganze Abend mit mit dem ganzen Hin und Her vergangen war, war keine Zeit mehr für die Installation da, schade.
Am nächsten Tag in neuer Frische habe ich die zwei Netzwerkkabel, welche zum Elektro-Unterverteiler führen entsprechend angelötet.
Das ganze Projekt wurde erst möglich, durch die Verwendung von Reiheneinbaugeräten der Firma Eltako. Im Programm sind sowohl 4 Stück der LED-Universaldimmer EUD12D-UC und auch der 4-Fach universal Stromstossrelais ESR12Z-4DX-UC. Beide unterstützen UC (Universal Current), was so viel heisst, wie dass Gleich- oder Wechselspannung von 12 - 230 Volt zur Ansteuerung genutzt werden können. Ausserdem unterstützen beide den Zentralen Ein respektive Aus Befehl, was die Möglichkeit gibt, alle Leuchten (18 + 1 Deckenspots und 6 Wandleuchten) zentral auszuschalten, oder wieder auf die letztgewählte Dimmstufe einzuschalten.
(In weiterer Folge habe ich unser Haus bereits zu grossen Teilen mit KNX automatisiert, somit werde ich einen 8-Fach KNX-Dimmaktor und einen mehrfachen digitalen eingangsbaustein verwenden, um auch diesen Raum auf die App-/Zentralsteuerung zu bringen.)
Durch das jeweiligen Tasters, wird die Dimmstufe abwechselnd erhöht oder verringert, ein kurzer Tastendruck schaltet Ein, respektive Aus. Den Finalen Touch gibt die Soft-Ein-Aus-Funktion, welche das Licht durch Dimmen sehr angenehm entstehen oder vergehen lässt, wenn geschaltet wird.
Insgesamt wirkt das Ergebnis auf mich Stimmig und integriert sich als Blickfang wunderbar in die angenehme Atmosphäre des Praxisraumes meiner Frau.