4. Achse für die Hobby-Line (was es da alles so zu beachten gibt...)

  • Vielleicht wolltet ihr auch schon immer mal eine synchrone 4. Achse (A-Achse als Drehachse) auf der Hobby-Line integrieren?

    Hier zeige ich euch, wie ich das (mit nur geringen Zusatzkosten) realisiert habe...


    pasted-from-clipboard.png


    Nach vielen sehr zufriedenen Stunden mit meiner Hobby-Line 6045 mit ESTLCAM-Steuerung über USB->LPT-Adapter->Interface Advance PRO im klassischen 3-Achs-Modus wollte ich mir eine 4. Achse als Drehachse (A-Achse) dazu bauen. Natürlich sollte das Ganze kein Vermögen kosten und so stellte ich dabei, wie viele vor mir wahrscheinlich ebenfalls, folgende Einschränkungen bei der Ausstattung meiner Hobby-Line mit Standard-Midi-Steuerung per ESTLCAM fest:

    1. ESTLCAM ist nur für 3-Achs-Maschinen ausgelegt (und wird es wohl auch bleiben), eine Drehachse wird nicht unterstützt

    2. Der in meiner Hobby-Line-Steuerung verbaute ESTLCAM-LPT-Adapter ist wahrscheinlich ungeeignet, um Steuersignale für eine 4. Achse zu verarbeiten (kenne die interne Programmierung nicht)

    3. Zum Betreiben der Hobby-Line mit einer 4. Achse sind mindestens folgende Ergänzungen notwendig:

    • klar: Zukauf der 4. Achse mit Schrittmotor ist notwendig
    • auch klar: 4. Schritt-Motor-Treiber (Platz in der Standard Midi-Box ist vorhanden, und meine Interface Advance PRO kann 4 Achsen) muss integriert werden
    • Notwendig: Neue Ansteuerelektronik anstelle von ESTLCAM LPT-Port Adapter
    • Notwendig: Neue Software mit GUI (auf Laptop in der Werkstatt) zur Ansteuerung des Interface Advance PRO


    Nach längerem Hin und Her habe ich mir also folgendes überlegt:

    • Ganz wichtig: Der Umbau soll möglichst wenig kosten und möglichst viel Spass machen! 8o
    • Die Drehachse (inkl. Ansteuerelektronik) lässt sich einfach zukaufen: bei Amazon ein günstiges Nachrüstset (Nema 23-Schrittmotor (6:1) K12-100 mm 4-Backen-Bohrfutter 100 mm CNC 4. Achse A Axis Drehachse + Reitstock für CNC-Fräser (mit DM542-Antrieb))
    • Als neue Steuerelektronik soll ein Arduino Mega 2560 mit GRBL-Mega-5X zum Einsatz kommen: https://github.com/fra589/grbl-Mega-5X
    • Das Breakout-Board (Aufsteck-PCB) für den Arduino -> Interface Advance PRO LTP-Port wird auf der Hobbi-Line selbst hergestellt (schließlich kann Fusion360 inzwischen auch PCB-Design) [Bei Bedarf stelle ich mein PCB-Design gern zur Verfügung]
    • Aufgrund mangelnder (kostenfreier) Alternativen wird die Steuersoftware mit GUI für den Betrieb aller 4 Achsen selbst programmiert (soll möglichst so gut wie ESTLCAM funktionieren)
    • Die Tool-Chain von der 3D-Modellierung bis zur Maschinenbewegung für die Hobby-Line soll weiterhin wie folgt bestehen: Fusion360 3D Modell -> Fusion 360 CAM (für 4-Achs-Bearbeitung) -> GCODE -> Eigene GRBL-GUI-Software auf Werkstatt-Laptop -> USB -> Arduino Mega 2560 im Midi-Steuergehäuse -> eigenes Breakout-Board für LPT-Adapter -> Interface Advance PRO

    So weit so gut - dann ging es an die Umsetzung (ca. 3 Monate Elektronik-Umbau, Arduino-Programmierung, C# WPF GUI-Programmierung (hier hat mich die Echtzeitfähigkeit des GUIs in Verbindung mit dem USB-Serial-Interface zum Arduino so einige graue Haare gekostet)). Nachdem die Endschalter im Arduino richtig erkannt, die Spindel-Ansteuerung meines AMB Fräsmotors mit PWM über den Arduino richtig konfiguriert und die echtzeitfähige 4D-Visiualisierung im neuen SOROTEC Community-GRBL-GUI richtig lief, sah es wie folgt aus (ich habe mir erlaubt das SOROTEC-Hobby-Line Community Build in der GUI-Software zu integrieren):


    pasted-from-clipboard.png pasted-from-clipboard.png

    Die neue Software ist zwar noch in den Kinderschuhen, macht aber bisher einen guten Job im Betreiben des Arduino Mega mit GRBL über USB und die GCODE-Generierung mit Fusion360 CAM benötigte nur kleine Anpassungen im Post-Prozessor, um die A-Achse zu integrieren.


    Fazit


    Der Umbau der Hobby-Line zum Betreiben einer 4. Achse ist auf Hardware-Ebene sehr einfach. Drehachse kaufen, draufschrauben, fertig! Die Kosten dafür belaufen sich auf ca. 200 EUR für die Achse inkl. Motor-Treiber, 15 EUR für den Arduino Mega, < 10 EUR für Kleinteile, Kabel, Lötmaterial...


    Nur die kleinen aber feinen Details machen richtig Arbeit: Die Softwareentwicklung war wohl der aufwendigste Teil, da kostenfreie 4-Achs-GRBL-GUIs im Internet noch auf sich warten lassen. Für 3 Achsen gibt es diese in großer Vielzahl, aber bei 4 Achsen sieht es leider dünn aus, wenn meine gewünschten Funktionen dabei sein sollen. Da ich auch eine schöne 3D-Visualisierung des GCODES mit Pan-, Zoom- und Tilt-Funktion im GUI haben wollte, musste ich mir zunächst einen GCODE-Parser und die 3D Visualisierung der Bewegungsbahnen programmieren (siehe Beispiele dazu in den Bildern) - am liebsten hätte ich das zukunftstauglich mit Windows UWP gemacht, hier gibt es aber noch keine guten 3D-Visualisierungs-Libraries. Also musste noch das klassische C# .NET WPF mit DirectX Visualisierung her halten. Immerhin ist das GUI so schön skalierbar und lässt sich auch auf meinem Werkstatt-Laptop per Touch-Screen prima bedienen. Vielleicht wäre das auch in Phyton oder Java gegangen (um die Linux-Fangemeinde dabei zu haben), das war mir aber zu aufwendig.


    Die Achsen laufen im JOG-Modus inzwischen sowohl per Tastatur, als auch per Gamepad (ja, ich habe gleich ein Interface für einen Playstation 4-Controller integriert) tadellos. Der GCODE wird fehlerfrei in Echtzeit zum Arduino gestreamt und Nothalt, Spindel- und Drehzahlregulierung und die Ansteuerung meiner Absaugung (Werkstatt-Staubsauger über integriertes Midi-Steuerungs-Relais angeschlossen) laufen prima.


    Ausblick


    Nachdem ich nun einmal damit angefangen habe, kommen mir natürlich noch viele Ideen. Als erstes wird die Werkzeug-Längenmessung auf der Softwareseite noch integriert (hier kann GRBL-5X alle nötigen Funktionen bereits per G38.2 umsetzen). Danach baue ich mir wohl einen eigenen 3D Taster und integriere diesen zur Vermessung von Werkstückdurchmessern auf der 4. Achse. Die GCODE-Generierung für rotationssymmetrische Freiformflächen in Fusion360 ist noch etwas umständlich - vielleicht finde ich hier bald eine passende Lösung, oder ihr habt Ideen?


    Lasst mich wissen, wie ihr den Umbau findet und welche Ideen euch dabei kommen...

    3 Mal editiert, zuletzt von TomR ()

  • DAS gefällt mir, ich finde estlcam schon ziemlich einfach gestrickt, und leicht zu bedienen. So daß ich für due geplante 4. Achse Eding oder ähnliches studiert hatte, aber diese Lösung Schaltschrankes werde ich mir die Tage mal genauer durch den Kopf gehen lassen...


    Magst du mal Bilder des Schaltschranks machen, damit ich ungefähr ne Idee hab was ich tun muss...


    Gruß

    Gruß Frank


    "It's better to burn out than to fade away"

    Einmal editiert, zuletzt von mightyeasy ()

  • Hallo Frank,


    anbei die Bilder vom Innenleben meiner neuen 4-Achs Midi-Steuerung (selbst verkabelt als Nicht-Fachmann). Das Breakout-Board für den Arduino werde ich noch neu machen, um einen SUB-D Stecker direkt ankoppeln zu können. Die Auflöt-Lösung des Flachbandkabels war hauptsächlich für Testzwecke - wie so oft halten Provisiorien aber eben zu lange ;)

    pasted-from-clipboard_autoscaled.png  pasted-from-clipboard_autoscaled.png


    Der Halter für das Arduino-Board kommt aus dem 3D-Drucker. Die 45°-Drehung war notwendig, da sonst der USB-Stecker zu lang für das Midi-Gehäuse ist.


    Gruß Tom.

    Einmal editiert, zuletzt von TomR ()

  • Hi Tom!


    Meinen Respekt! Ich finde es klasse!

    Solltest du das Programm zur Verfügung stellen, könnte ich mir vorstellen das es viele Interessenten geben wird. Eine 4. Achse ist später vielleicht auch für mich interessant, daher verfolge ich gerne die weitere Entwicklung! :thumbup::thumbup:

    Gruß,

    Chris

  • Hi Tom,


    da hast Du ja echt mal was Tolles gezaubert! Ich kann mir vorstellen, wieviele Stunden in die Entwicklung der Software geflossen sein müssen. Da werden die Nächte schnell mal sehr kurz... ;)


    Ich bin ja bei meiner MIDI-Steuerung relativ schnell bei EdingCNC gelandet, da mir ein Anschluss per TCP/IP wichtig war.

    Deine Version sieht aber von der Hard- und Software sehr stimmig und gut aus.


    Vielleicht magst Du mal ein paar kurze Videos vom Betrieb der 4. Achse posten, wenn alles gut läuft.


    Weiter viel Erfolg bei der Entwicklung und dem Verbessern. :)


    Gruß

    Axel

  • Tach zusammen,


    habe mir die Bilder mal zu Gemüte geführt und wie oben schon geschrieben, wäre das definitv eine Option für mich.

    Ich habe allerdings das "Problem", das ich die "Mini-Platine" von Sorotec habe und nicht das Interface Advance Pro. Aber die Mini kann ja schon die 4. Achse, nur halt mit Estlcam nicht, weclhes ich zur Zeit nutze.

    Wobei das "Problem" wäre doch, wenn ich das richtig verstehe und gesehen habe, gelöst, wenn ich einen Adapter von dem 25poligen Stecker der Mini zum Arduino Mega hin baue und gut wäre doch, oder? Denn eigentlich ist doch die "Mini-Platine" ja vergleichbar mit dem Interface Advance Pro, oder habe ich einen Denkfehler?


    Gruß

    Gruß Frank


    "It's better to burn out than to fade away"

  • Hallo Frank,


    ja, die Mini kann die 4. Achse ebenfalls ansteuern und bietet dir die gleichen Möglichkeiten wie die Advance Pro bezogen auf die Drehachse. Wenn du sie entsprechend mit dem Arduino verdrahtest sollte das gehen. Das bedeutet, wir machen mal ein "ordentliches" Design für das Adapter-Board mit SUB-S-Stecker am Arduino Mega, dann haben wir gleich beide etwas davon?


    Gruß Tom.

  • Ich habe jetzt mal ein kurzes Video vom ersten vorsichtigen Inbetriebnehmen der 4. Achse mit neuer Software aufgenommen. Die Werkzeuglängenmessung ist nun auch implementiert. Wie man sieht läuft es, wie gehofft, einwandfrei durch. :thumbup: Hier der Link zum Video: https://youtu.be/mZxrFOxH_3c


    Ich habe aus Fusion alle 3 Varianten der Rotations-Bearbeitung für diesen Test-Freiformzylinder einmal ausprobiert (Linear, Zirkular und Spirale). Leider lässt sich die Vorschubgeschwindigkeit der Drehachse für die Bahnparameter nicht separat in °/min in Verbindung mit den Linearachsen in mm/ min vorgeben. Fusion interpretiert offensichtlich alles als mm / min. Bei einem Achs-Vorschub von 2000 mm / min macht die Drehachse eben leider nur 5.5 Umdrehungen pro Minute - das ist zu langsam für ordentliches Fräsen. Hat da jemand evtl. Erfahrung in der Bahnparameter-Konfiguration?


    Gruß Tom.

  • Hi,


    Das bedeutet, wir machen mal ein "ordentliches" Design für das Adapter-Board mit SUB-S-Stecker am Arduino Mega, dann haben wir gleich beide etwas davon?

    das kling gut. Ich würde einen Adapter bauen, welcher auf der einen Seite den passenden Stecker für auf die Mini hat, ist wohl kein Sub-D sondern irgendwas eckiges, welcher ggf mit einem Halter auf die 2 oder 4 schrauben wo der Estlcam-Adapter normalerweise sitz, angeschraubt witd. Auf der anderen Seite die passenden Stecker für den Arduino. Der kann ja mit den Beinen nach unten aufgesteckt werden.

    Einen passenden Halter könnte man ggf 3D drucken.

    Was passiert, wenn die 4. Achse nicht abgeschlossen wird? Wird die A-Achse dann ausgeblendet?

    Was ist denn mit einem Handrad? Oder geht nur ein Controller?


    Und die Pinbelegung des Mini Steckers müsste ich googlen...

    Würdest Du denn die Software freigeben, da müsste ich mich allerdings durch kämpfen. Gäbe es auch Makros? Spindelwarmlauf, Kantentasten wie bei Estlcam auch?


    Was müsste denn da noch programmieren? Denn da bin ich eher Lehrling....


    Gruß

    PS: wo kommst her?

    Gruß Frank


    "It's better to burn out than to fade away"

    Einmal editiert, zuletzt von mightyeasy ()

  • Hi Frank,


    gib mir noch ein bisschen Zeit mit der neuen Software, sie steckt noch in den Kinderschuhen. Makros, Spindelwarmlauf o.Ä. ist da noch nicht implementiert. Was sicher dazu kommen wird sind Messfunktionen für Kanten, Kreise und Parallelitätsmessungen.


    Wenn die 4. Achse nicht angeschlossen wird passiert nichts. Der Arduino merkt ja nicht, dass die Achse ggf. fehlt. Das GUI sieht also weiterhin so aus wie immer, nur wenn die 4. Achse bewegt wird, passiert eben nichts.


    Bezüglich Handrad-Benutzung müsste ich die Schnittstelle zum Handrad kennen - wird das bei dir direkt an die Hardware gekoppelt, oder an den PC angeschlossen?


    Ich bin gerade in der Bodenseeregion ansässig - wo bist du?


    Gruß Tom.

  • Moin Tom,


    ja immer nur mit der Ruhe, käme heute und morgen eh nicht dazu "Emma" umzubauen ;-)


    Ich nutze den orginalen Estlcam-Adapter auf der Mini, somit schließe ich das Handrad direkt am Adapter an.


    Bodensee? Schick da, ich komme aus dem Rheinland, Düsseldorf / Neuss


    Schönes Wochenende

    Gruß Frank


    "It's better to burn out than to fade away"

  • Liebe Community,


    mit freundlicher Unterstützung der Firma Arction (LightningChart) habe ich nun eine nicht-kommerzielle Gratis-Lizenz für die Echtzeit-3D-Datenvisualisierung unter der Universal Windows Plattform erhalten. Wem das nichts sagt - macht nichts, ist aber gewaltig cool! So konnte ich dieses GUI zum Leben erwecken:


    Sorotec_GRBL_GUI_UWP_autoscaled.png


    Damit ist es mir nun auch möglich, der Community mein HobbyLine GRBL GUI zum Betrieb eines Arduino mit GRBL inkl. 4 Achse gratis bereit zu stellen. Anbei einige Eindrücke meiner letzten Gehversuche mit der nun komplett in UWP realisierten Plattform (lauffähig auf x86, x64, ARM32, ARM64). So könnte man das GUI also auch auf einem RaspberryPI laufen lassen (noch nicht getestet).


    Im Einsatz hat sich das GUI inzwischen gut bewiesen und beinhaltet folgende getestete Funktionen auf einem Windows Tablet (Bedienung per Touch):

    • Referenzfahrt über alle Linearachsen
    • Werkzeuglängenmessung
    • Jogging über alle 4 Achsen per Mausklick oder Tastatur (Nummernblock) [bald auch per Gamepad]
    • Manuelles & automatisches Zuschalten einer Absaugung / Kühlschmiermittelzuführung
    • Durchlauf von GCodes (gleiche Syntax wie für ESTLCAM)
    • Zoom / Pan / Tilt (touch-fähig) des visualisierten GCodes
    • Abspeichern eines zusätzlichen Zielpunkts im GUI (z.B. für Längensensor-Taster-Anfahrten)
    • Save / Restore der letzten Maschinenposition nach GUI- und Arduino-Neustart

    Hier noch ein paar Praxisergebnisse zur Herstellung von Salz- und Pfeffermühlen aus Nussbaum - das GUI-Bild (oben) zeigt den GCode für die Bauteilbearbeitung:


    Action1.jpgAction2.jpgAction3.jpgAction4.jpgAction5.jpgPfeffermühle.png


    Wer Lust hat das GUI mal bei sich zu testen kann sich hier gern melden.


    Gruß Tom.

  • Hallo Tom,


    Wow, ich bin echt sprachlos. Das sieht richtig spitze aus. Und das ganze dann auch noch in so kurzer Zeit zu realisieren ist mega.


    Ich stelle mich gerne freiwillig als Testperson zur Verfügung 😁


    In welcher Sprache hast du das programmiert?


    Gruß

    Jerry

  • Danke Jerry,

    das GUI ist in C# mit UWP programmiert. Den Quellcode darf ich leider nicht teilen, da LightningChart sonst ein Problem mit meiner Lizenz hat. Wenn du mir aber deine Emailadresse zukommen lässt schicke ich dir einen Download-Link zu einer kompilierten Version (Windows 10 App) zum Testen.

    Gruß Tom

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!