Hal-Pin - Werte aus dem Programm heraus in eine Datei schreiben lassen

More
1 year 8 months ago #322018 by zinsade
Hallo zusammen,
es gibt ja die Möglichkeit, Inhalte eines Parameters während dem das NC-Programm ausgeführt wird, in eine Textdatei schreiben zu lassen.
Zum Beispiel hier:
.......
N10 (LOGOPEN, ausgabeX.txt)          (Neue Logdatei erstellen oder bei vorhandener Datei die Inhalte löschen)
N20 (LOGAPPEND, ausgabeX.txt)     (Messwerte zu Logdatei hinzufügen)
N30 (LOG, <#5061> X-Achse)            (Werkzeugradius, aus dem Parameter #5061 in Logdatei schreiben)
N40 (LOGCLOSE)                               (Logdatei schließen)
.......
Meine Frage ist, ob es möglich ist den Wert des Pins "hm2_5i25.0.encoder.01.count" während der Programmausführung, also ähnlich wie oben in eine Textdatei schreiben zu lassen?
Oder alternativ den Wert des Pins "hm2_5i25.0.encoder.01.count" in einen freien Parameter ablegen zu können?

Gruß Peter

Please Log in to join the conversation.

More
1 year 8 months ago #322039 by Aciera
Ja das sollte gehen mit '#<_hal[HAL item]>'

Für aktuelle Werte musst du jedoch vorher den read ahead mit einem queue buster synchronisieren. Zum Beispiel so:
Code:
M66 E0 L0 (LOG, #<_hal[hm2_5i25.0.encoder.01.count]>)


linuxcnc.org/docs/html/gcode/overview.ht...:overview-parameters

Please Log in to join the conversation.

More
1 year 8 months ago #322087 by zinsade
Vielen Dank
funktioniert wunderbar.
Wieder was gelernt
Auch vielen Dank für den Link:
linuxcnc.org/docs/html/gcode/overview.ht...:overview-parameters
Da sollte ich doch öfters mal reinschauen.
Wofür brauch ich das?
Ich möchte eine Pitch-Error-Datei bzw. Leadscrew-comp-Datei halbautomatisch erstellen lassen.
Das Programm funktioniert schon.
Code:
#100 = 0 G1 B-1 F1000 (LOGOPEN, ausgabe.txt) (LOG, >>> ausgabe.txt <<<) (LOG, ---)                o100 repeat [181] G1 B#100 F100                                       G4 P1 M66 E0 L0 (LOG, #<_hal[axis.b.pos-cmd]> = PosB) M66 E0 L0 (LOG, #<_hal[hm2_5i25.0.encoder.01.position]> = EncB-) #100 = [#100-1] G1 B#100 F100 G4 P1 #100 = [#100+1] G1 B#100 F100 G4 P1 M66 E0 L0 (LOG, #<_hal[hm2_5i25.0.encoder.01.position]> = EncB+) (LOG, ---) #100 = [#100-0.5] o100 endrepeat (LOGCLOSE) M30

Gruß Peter

Please Log in to join the conversation.

Time to create page: 0.089 seconds
Powered by Kunena Forum