Erfahrungsbericht CNC Controller PlanetCNC

  • Mit meiner Hobbyline zusammen bestellte ich den CNC Controller von PlanetCNC. Drei Gründe waren für mich ausschlaggebend:

    1: USB-Anbindung

    2: Viele Features

    3. Nutzung unter Linux (kein LinuxCNC sondern das übliche UBUNTU oder Debian Image)


    Da es noch wenig Berichte über den CNC Controller von PlanetCNC gibt, will ich euch meine Erfahrungen nicht vorenthalten.


    Ich habe mich für den MK3/4 entschieden. Der hat schon von vorne herein schraubbare Terminals. Beim großen Bruder MK3 muss man das alles noch mit bestellen.

    Der MK3/4 hat als Nachteil jedoch nur 4 Eingänge und und drei Ausgänge. Für meine Anwendung hat das gereicht.

    Früher konnte man über Pfostensteckanschlüsse noch SPI/I2C und EXT nutzen. Bei meinem Controller sind das schon Mini-Anschlüsse, die einen besonderen Stecker brauchen. Es gibt derzeit noch keine Dokumentation von PlanetCNC, wie diese Kontakte beschalten sind.

    Der MK3/4 hat auch noch einen Pfostenanschluss für ein 25-Poliges Kabel. Dort kann man z.B. einen Offline-Controller anschließen.

    Der MK3/4 hat auch noch einen Pfostenanschluss für ein 16-Poliges Kabel. Dort kann man ein Jogging Keyboard anschließen.


    Die Software von PlanetCNC ist auf diesen Controller speziell zugeschnitten. Sie bietet einige Einstellungen und Nutzungsmöglichkeiten, die ich bei EstlCam oder BeamiCom nicht gefunden habe.

    So kann man über eine Tatstatur z.B. frei programmierte Zahlencodes zur Steuerung des Controllers nutzen (MDI-Schnittstelle). Diese Zahlencodes können dann über einen Mikrokontroller per USB-HID ausgegeben werden.

    Diese Feature nutzte ich für einen Eigenbau einer Handsteuerung.

    Ja. Über den Jog-Pfostenstecker ist das auch möglich. Allerdings kann man dann tatsächlich nur die Achsen steuern und deren Fahrgeschwindigkeit über ein Potentiometer regeln. Das war mein erster Ansatz gewesen. Funktioniert auch hervorragend, allerdings war mir das zu langweilig.

    Über MDI kannst du alles bedienen, was die Shortcut-Liste bietet.

    Bei mir hat allerdings das Bedienen des Jog-Modes über MDI Zahlencodes nicht so richtig funktioniert. Die Software meldete ständig, dass die Maschine nicht bereit sei.

    Ich habe dann den Ansatz verfolgt, das Ganze über GCODE zu steuern. Das heißt, wenn z.B X nach vorne soll wird ein GCODE für X ausgegeben. Ich bediene mich dabei den GCODES G90,G91,G00,G01. Über meinen Handsteuerung habe ich auch noch einen GCODE für das Messen mit belegt (G38.1). Außerdem kann ich den Feed bestimmen. Der ist ja durch GCODE F definiert.

    Damit das tadellos funktioniert, nutze ich die API der Software. Hierfür gibt es eine Beschreibung und Beispiele für C++,C# und Python. Mit dieser API habe ich es hinbekommen, zuerst die schon vorhandenen Positionswerte abzuholen, damit meine Handsteuerung genau auf diesem Positionspunkt aufsetzt (das wird ja auch bei über USB angeschlossene Handräder so gemacht)

    Natürlich habe ich mir auch das von PlanetCNC angebotene Handrad beschafft. Dieses wird über USB-HID-RAW betrieben. Dafür sind besondere Berechtigungen erforderlich. Die Installationsroutine von PlanetCNC, die mit der Software mitkommt, soll diese Berechtigungen einrichten. Allerdings muss man da noch mal hinschauen. Wer sich mit Linux beschäftigt, weiß z.B, dass die Berechtigungen in den udev-rules begraben ist. Dort muss man vor allem die Bus-Belegung des Dongles, der zur Handsteuerung gehört, berücksichtigen. Bei mir war der Dongle auf USB-Bus 5. Das war nicht eingetragen. Das ist wichtig. Ohne diesen Eintrag sieht die Software das Handrad nicht.

    Ich gehe davon aus, dass mit den richtigen Berechtigungen auch das China-Handrad WHB04B-4 funktioniert, da dies auch über USB-HID-RAW betrieben wird.


    Falls noch Fragen zu diesem Controller, zu der Software, zu meinem Aufbau oder zum Handrad sind; ihr seid herzlich willkommen.


    Schöne Grüße

  • Ich nutze PlanetCNC jetzt schon seit einem Guten Jahr an der fräse und seid kurzem auch an meiner umgebauten Drehmaschine und bin ziemlich zufrieden mit dem ganzen. Habe das System allerdings unter Windows mit dem MK3/9 Controller am laufen.

    Die Dokumentation ist leider immer wieder etwas lückenhaft. Aber wenn man sich durch kämpft und etwas Forscherdrang mit bringt kann man das system echt super auf die eigenen Bedürfnisse anpassen.

    Zur manuellen Steuerung nutze ich auch das Handrad von PlanetCNC, unter Windows ist das einfach Plug and Play.

    Ob das China Handrad funktioniert bin ich mir ehrlich gesagt nicht sicher. Das mapping der Handrad Funktionen in PlanetCNC ist leider nicht konfigurierbar und ich weiß nicht ob Planet das China gerät entsprechend erkennt.


    Da PlanetCNC im Deutschen raum scheinbar recht unbekannt ist habe ich vor einiger Zeit mit einer Video Reihe zu dem Thema angefangen:

    Viele Grüße,

    Klaus

  • Deine Videos schlagen zumindest eine gute Brücke zu allen, die mit dieser Software und dem Controller von PlanetCNC liebäugeln.


    Da ich das Ganze unter Linux laufen habe, benutze ich als CAM-Program FreeCad. Das ist frei verfügbar und leistet viel für meinen Geschmack. Es ist zwar teilweise etwas sperrig zu handhaben, aber je öfter ich damit arbeite, desto besser komme ich damit zurecht.

    Bei der Software von PlanetCNC habe ich noch ein wenig Schwierigkeiten mit der Kantenmessung. Er erkennt zwar mit meinem Tastkopf die Kante, fährt dann wieder in eine andere Position und ich sehe nirgendwo diese Positionswerte.

    Vielleicht hab ich da noch irgendwo einen Denkfehler, aber bisher hab ich das 'Origin' nicht über den Tastkopf messen können. Ich muss da immer mit dem Auge und manuellem Anfahren die Position anfahren.

    Hast du da einen Tipp?


    Daumen Hoch für deine Arbeit, da eine Videoserie aufzusetzen.:thumbup:


    Mittlerweile habe ich mir dein Video zur Werkzeuglängenmessung reingezogen. Da mein Z0 auch oben ist war ich vor allem interessiert, wie du die Position des Sensors bestimmt hast.

    Dabei fiel mir auf, dass (eigentlich logisch, wenn man darüber nachdenkt) Z ins Negative geht .... ja, ja ich Dummkopf bin ins Positive ... jetzt ist mir auch klar, warum vieles andere nicht sauber funktioniert hat. Mal aus dem Tellerrand raus, dann wärs schon eher klar gewesen ... aber na ja, irgendwann ist auch bei mir der Groschen gefallen. Immerhin hab ich mit dieser Maßnahme dann auch herausgefunden, dass auch mein X ins Negative fährt, weil X0 rechts im Koordinatensystem ist. Plötzlich sind auch meine Schriftzüge (ich graviere zur Zeit viel) richtig positioniert.


    Also: vielen Dank für dein Video und vor allem für die transparente Nachvollziehbarkeit. Ein echtes AHA-Erlebnis für mich!!! :):thumbup:

    Einmal editiert, zuletzt von de03221 () aus folgendem Grund: Ergänzung

  • Freut mich zu hören das dir die Videos geholfen haben.


    Was das antasten angeht, da habe ich tatsächlich aufm schirm noch mal ein Video zu zu machen.

    Seit der Version von ende Mai diesen Jahres hat sich da einiges getan wie das antasten Funktioniert.

    Was genau meinst du mit Tastkopf? Eine typische 3D Probe?


    Je nach genutzter Antastroutine ist das Verhalten etwas anders.

    Einige fahren auf den gemessenen 0 punkt. Andere fahren zurück auf die Start Position. Finde ich persönlich etwas unglücklich gemacht. Etwas einheitliches fände ich da besser und es ist nicht schwer das umzusetzen.

    Generell geben aber alle eine information im Output Panel aus (das Panel unter der 3D Darstellung), da würde ich dringend empfehlen das zu aktivieren falls du das nicht an hast.


    Glücklicherweise kann man die Skripte alle beliebig anpassen. Das ist kein großes Hexenwerk da die alle in GCode geschrieben sind.

    Geht aus den Settings heraus (Settings/Programm Options/Scripts/Home&Measure)


    Den Code für Machine.Measure.Edge_Position habe ich zum Beispiel folgendermaßen abgeändert:


    Hier wird jetzt eine Checkbox eingeblendet die abfragt ob er zu der gemessenen Position fahren soll, ist die ausgewählt fährt er erst Z auf die unter tool change eingestellte Safe Height und dann auf die gemessenen XY Position.

    Analog kann man für alle weiteren Routine verfahren die nicht genau das machen was man haben will

    Viele Grüße,

    Klaus

Jetzt mitmachen!

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