Rudis-Hobbysite.de
Hier finden Sie meine Projekte
 
 

Kutty-CNC


Kutty-CNC ist ein kostenloses G-Code-Sendeprogramm mit grafischer Vorschau für CNC-Maschinen mit GRBL-Steuerung. Es kann sowohl für CNC-Fräsen als auch für CNC-Styroschneiden mit Linearachsen verwendet werden.
Kutty bietet für Fräsen bis zu fünf Achsen, wobei die Grafik normales XYZ anzeigt. Unter anderem ist auch eine Routine für manuellen Fräserwechel integriert. Kutty arbeitet mit den aktuellen GRBL-Versionen ab 1.1. Getestet ist es auf einem alten Centrino unter XP und mit Windows 10 auf einem neueren Rechner. Die Grundfunktionen sollten soweit selbsterklärend sein.

Kutty kommt auf den Rechner und GRBL auf den Arduino. Das ergibt eine gute und kostenlose Kombination um eine Maschine mittels CNC zu steuern.

Features:

3-Achs Grafikeinstellung:

kutty_f.png
Die Fräswege sind in XYZ abgebildet. Eine eventuelle vierte Achse wird nicht simuliert.

Pfeiltasten und Gamepad

Text? Mit den Funktionstasten F1-F3(F4) kann in die verschiedenen Tabs gewechselt werden. Ist der Tab Manuell angewählt sind die Pfeiltasten für das Verfahren reserviert.
Mit einem angeschlossenen Nintendo Gamepad kann ebenfalls gejoggt werden. Dessen Pfeiltasten sind für X und Y, Select und Start für die Z-Achse. Zusammen mit der grünen Taste fährt die Maschine im eingestellten Vorschub. Wird zusätzlich noch die linke vordere Taste gedrückt ist der maximale Vorschub aktiv. Die blaue (1) rote (2) und gelbe (3) Taste können in den Einstellungen mit Schrittwerten belegt und dann so schrittweise verfahren werden. Zusammen mit der rechten vorderen Taste führen die vier farbigen Tasten die benutzerdefinierten Befehle 1-4 aus. Die vorderen linke und rechte Taste zuammen machen die Werkzeuglängenbefehle.

Benutzerdefinierte Befehle:

Die erste Zeile ist die Infozeile. Ab der zweiten Zeile sind die eigentlichen CNC-Befehle einzugeben.
Ein kleines Beispiel:
Z nach oben
G53 G0 Z0

Werkzeugwechsel Befehle:

Der obere Bereich ist für die Wechselposition gedacht. Dieser wird aufgerufen, wenn in den Einstellungen der Werkzeugwechsel angehakt ist.
M5 für Spindelhalt wird automatisch gesendet. Ein kleines Beispiel hierfür:

G53 G0 Z0
G53 G0 X0 Y-200

Das zweite Feld ist für die Werkzeuglängenmessung. Diese Zeilen werden nur bei Klick auf Längenmessung ausgeführt.
Beispielcode:

G53 G0 Z0 (ganz nach oben)
G91 (Kettenmaßeingabe)
G38.2 Z-70 F500 (Tastfahrt nach unten)
G38.4 Z3 F20 (Tastfahrt nach oben)
G92 Z11.91 (Setzen des Punktes (Tasterhöhe))
G90 (Absolutmaßeingabe)
G0 Z20 (Freifahren des Tasters)

Zurücksetzen mit G92.1

Der G92-Offset wird nicht dauerhaft gespeichert. Wenn dies gewünscht ist, die Höhe merken, dann Rücksetzen und eine Z-Nullpunktverschiebung im Werkstück-Koordinatensystem mit der gemerkten Höhe ausführen.

Loops und Variablen

Kutty unterstützt neben den Standardfunktionen Loops, Variablen und die vier Grundrechenarten. In den NC-Zeilen wird alles was zwischen LOOP (Anzahl) und NEXT steht, der Anzahl entsprechend wiederholt. Es können auch mehrere verschachtelte LOOPs sein.
Es werden 10 Variablen von #0 bis #9 unterstützt. Jede Variable enthält den mit = zugewiesenen Wert. Es darf nur eine Variablenzuweisung in einer extra Zeile geben.
Z.B. #1=10.
Des Weiteren stehen die vier Grundrechenarten zur Verfügung. Diese müssen in eckigen Klammern stehen.
Z.B. G1 F100 X[10*#1] Y[10*#1] Z[1+#2].

Folgende Zeilen fräsen eine Tasche:
Text? G21 G90 G40
G00 Z10.0
#1=0
#2=0
G17
M3 S6000
Loop 3
Loop 5
G00 Z10.0
G00 X[10+#1] Y[10+#1]
G00 Z5.3
G01 F500.0 Z[0-#2]
G01 X[20-#1] Y[10+#1]
G01 X[20-#1] Y[20-#1]
G01 X[10+#1] Y[20-#1]
G01 X[10+#1] Y[10+#1]
G00 Z10.0
#1=[#1+1]
NEXT
#1=0
#2=[#2-1]
NEXT
M5
M30
M5

Sprachen

Mit dem "Poedit translation editor" können weitere Sprachdateien erstellt werden. Zum Beispiel Kutty.fr.po für französich. Dabei wird das Kürzel zwischen den beiden Punkten in der Sprachauswahl erscheinen. Die Sprachdatei muss ins Kutty-Programmverzeichnis.



Tipps:

Homing oder Referenzfahrt:

G53 ist das Maschinenkoordinaatensystem. Beim Einschalten des Arduinos steht die Position bei X0, Y0, Z0. Es ist zu empfehlen entweder vor dem Ausschalten die Maschine in die 0-Position zu fahren oder besser, Referenzschalter zu montieren. Mit diesen kann dann eine Referenzfahrt (Homing) gemacht werden. Grbl setzt dann entsprechend der Konfiguration den Nullpunkt. Somit hat man eine definierte Maschinenposition und kann z.B. nach Programmfehlern eine Position erneut anfahren.
Hinweis: Der Maschinenursprung ist bei Grbl nach dem Homing rechts hinten oben. Das heist, der Maschinenraum (G53) ist negativ. Erst nach entsprechend gesetztem Offset (G54-G59) kann man mit positiven Werkstück-Koordinaten arbeiten.

Rundachse:

Eine Rundachse ist endlos und Limits sind hier störend. Trotz gesetztem Softlimit kann man diese bei einer einzelnen Achse ausschalten, in dem man Max Travel auf 0 setzt.

Arduino Mega:

Text? Für den Arduino Mega 2560 und den Mega 2560 Pro gibt es so gut wie keine Boards. Das macht aber nichts, es werden auch keine benötigt. Einfach die Kabel direkt einlöten, das hat sich sehr gut bewährt.





Tastplatte:

Text? Die Tastplatte habe ich gefedert ausgeführt. So kann relativ schnell auf die Platte gefahren werden. Die Position wird nach dem langsamen Rückfahren genommen. Es funktioniert der obige Code.








Meine Fräsmaschine:


Die Fräse hat eine vierte Achse und läuft mit GRBL-Q auf dem Arduino Mega. Durch den größeren Sendepuffer und schnelleres Polling läuft das ganze ruckelfrei auch bei vielen kurzen NC-Bewegungen wie Gravuren.
Ein praktisches Hilfsmittel beim Fräserwechsel ist ein Werkzeuglängensensor. Wenn die Maschine mit Gnd verbunden ist, muss die Krokoklemme an Gnd und die Kontaktplatte an A5 (A15). Mehr braucht es im Grunde nicht.
Z0 ist bei mir die Oberseite der Opferplatte, die Werkstückhöhen werden im Cam eingegeben. Die Offsets der Arbeitskoordinatensysteme sind im Arduino gespeichert. So kann man gleich nach der Referenzfahrt losfräsen.


Bekannte Probleme:


Grafik: Diese passt sich nicht an jeden Rechner optimal an.


Download:

Kutty-CNC kann als kostenlose Freeware heruntergeladen werden.
Neu hinzugekommen sind:
1.3
-Warnung bei Grenzüberschreitung
-Manueller Werkzeugwechsel
-Konturversatz bei den Profilen
-Grafikprobleme (hoffentlich) beseitigt
1.4
-Jogging mit Tastatur und Gamepad
1.5
-Ausschnitte bei Profil
-LOOPs und Variablen
1.6
-Neuer Skin
-Sprachen
1.7
-2D-Vorschau bei Wire
1.8
-Menue für GRBL-Einstellungen


Kutty Version 1.8.1 beta vom 06.02.2023

Zum Download.


Kutty wird gelegentlich weiterentwickelt. Schauen Sie einfach wieder mal vorbei.



Gefahrenhinweis:


WARNUNG - Nur für private Nutzung auf eigene Gefahr. Das Programm ist eine Beta-Testversion. Der Autor übernimmt keinerlei Haftung für Schäden oder Ausfälle irgendwelcher Art.
Bitte beachten sie die allgemeinen Sicherheitsrichtlinien. Maschinen bergen Gefahren.
Nicht in den Fräsraum greifen, die Maschine könnte eine unvorhergesehene Bewegung machen.
Nothalt anbringen, das hat schon manches gerettet.
Sichtschutz, Gehörschutz tragen, für Staubschutz sorgen, usw.. .


Rudis-Hobbysite.de