Mit LinuxCNC über PyVCP Buttons *.ngc Dateien aufrufen

Hallo zusammen,

ich habe die letzten Tage etwas mit den PyVCP Oberflächen für LinuxCNC rumgespielt. Ich wollte ein paar Knöpfe haben mit denen ich G-Code Files direkt aufrufen kann.
Da ich keine vernünftige Anleitung im Netz gefunden habe hier kurz und knapp was wo einzustellen ist um diese Funktionalität zu bekommen:

Alle Dateien liegen in diesem Beispiel später im config Ordner der Fräsmaschine.

1. PyVCP Oberflächen Datei erstellen ( fraese.xml )

<?xml version='1.0' encoding='UTF-8'?>
<pyvcp>
<button>
<halpin>"btntool"</halpin>
<font>("Helvetica",12)</font>
<pady>20</pady>
<text>"Z0 dann X0 Y0 anfahren via G-Code"</text>
</button>
</pyvcp>

2. In der Datei custom_postgui.hal wird der Knopf mit einem Port belegt

net remote-xyz-anfahren classicladder.0.in-12 <= pyvcp.btntool
net remote-xyz-anfahren => halui.mdi-command-00

3. In der Maschinen *.ini Datei müssen folgende Einträge gesetzt werden

[DISPLAY]
PYVCP = fraese.xml

[RS274NGC]
SUBROUTINE_PATH = /home/dds/linuxcnc/configs/my-mill/ ( Pfad zu den Maschinen Dateien... wird für das Finden der *.ngc Dateien benötigt. )

[HAL]

HALUI = halui
POSTGUI_HALFILE = custom_postgui.hal

[HALUI]

MDI_COMMAND = O<test> CALL

4. die G-Code Datei anlegen ( test.ngc )

O<test> sub

G00 Z0
G00 X0 Y0

O<test> endsub


So hoffe ich hab nix vergessen.

Als nächstes schau ich wie man Variablen über Eingabeboxen im G-Code File abfragen kann. So kann man sich dann einfache Funktionen bauen um z.B. Kreise mit einer Variablen für Größe und Durchmesser direkt aus der Oberfläche zu fräsen.

Gruß Axel
 
Hallo,

ist es möglich, ohne Classicladder zu arbeiten? Bin gerade dabei einen Werkzeuglängentaster zu implementieren, bei dem ich zuerst mit einem Werkzeug mit bekannter Länge (Welches sich nicht ändern soll) ein anderes Work-offset verschieben möchte (Kalibrieren) und danach mehrere Werkzeuge unabhängig voneinander Einmessen kann (Absolute länge von Spindelnase zu Fräserspitze), damit ich nachher bei der Bearbeitung einfach das Werkzeug einspannen kann und losfräsen kann. Es wäre schön (auch wenn schon fast 4 Jahre her sind) wenn mir jemand helfen könnte.

Mfg
 

helijoy

User
Hallo MMD,

das was du suchst, wird über die Werkzeugliste (Tool Table) realisiert, einmal deine Referenz auf Null setzen und dann dazu die einzelnen Z-Höhenunterschiede in der Tool Table, für ein jeweils eigen angelegtes/n Tool/Fräser, den Z-Offset eintragen. Die Tools dann über T1...Tx über die CAM aufrufen. Vorsicht mit der Radius Kompensation, hier wird dann die aus der Tool Table dazu genommen.

Denke Englisch ist für dich kein Problem, schau mal im Wiki von LinuxCNC und hier, dort ist unteranderem die ganze Abhängigkeit und der entsprechende G-Code beschrieben.

Auch werden bei LinuxCNC (LinuxCNC Menu Item) die ganzen Betriebshandbücher mit installiert, da findet man eigentlich immer den passenden Einstieg, um dann im Netz nach entsprechenden verfeinerten Funktionen oder weitere Hilfe zu suchen.

Grüße Jörg
 
Ansicht hell / dunkel umschalten
Oben Unten