Stepper-Encoder an einem Stepper via Parallelport nachrüsten
13 Sep 2023 09:02 #280612
by Jensner
Replied by Jensner on topic Stepper-Encoder an einem Stepper via Parallelport nachrüsten
OK, vielen Dank für diese Infos.
Das zeigt einmal mehr dass ich leider viel zu wenig Ahnung von LinuxCNC habe.
Aber Gott sei Dank gibt es ja dieses tolle Forum mit all den kompetenten Leuten.
Ich werde das umgehend umsetzen!
Vielen Dank und viele Grüße
Jens
Das zeigt einmal mehr dass ich leider viel zu wenig Ahnung von LinuxCNC habe.
Aber Gott sei Dank gibt es ja dieses tolle Forum mit all den kompetenten Leuten.
Ich werde das umgehend umsetzen!
Vielen Dank und viele Grüße
Jens
Please Log in or Create an account to join the conversation.
13 Sep 2023 17:21 #280650
by Jensner
Jedoch ist mir bei der Referrenzfahrt (Z-Endschalter handisch betätigt) aufgefallen, dass bei dieser der CL Stepper völlig normal reagierte.
Anschließend, beim manuellen Verfahren hat er wieder wie vorher (falsch) reagiert.
Es muss also irgendwie mit der Acceleration zu tun haben.
Jedoch habe ich diesen Wert bei der Z-Achse nun mal auf 100 eingestellt und das Problem ist noch immer vorhanden.
Ferner habe ich nun auch 2 x den Latency test durchgeführt.
Währenddessen dann Youtube-Videos angesehen, Fenster verschoben und das sieht für mich jetzt mal gar nicht so schlecht aus.
Es sei denn, ich habe al wieder etwas übersehen...
Replied by Jensner on topic Stepper-Encoder an einem Stepper via Parallelport nachrüsten
Ich habe nun alle o.g. Einstellungen entsprechend vorgenommen. jedoch ohne Erfolg (mit dem neuen Closed Loop Stepper)Datenblatt vom Stepper sagt "For reliable response, pulse width should be longer than 2.5 μs for 200 kHz MAX input frequency.", das ist mit 2000ns = 2,0µs zu knapp. Ich würde mindestens 5000 als reset-time nehmen.
Jedoch ist mir bei der Referrenzfahrt (Z-Endschalter handisch betätigt) aufgefallen, dass bei dieser der CL Stepper völlig normal reagierte.
Anschließend, beim manuellen Verfahren hat er wieder wie vorher (falsch) reagiert.
Es muss also irgendwie mit der Acceleration zu tun haben.
Jedoch habe ich diesen Wert bei der Z-Achse nun mal auf 100 eingestellt und das Problem ist noch immer vorhanden.
Ferner habe ich nun auch 2 x den Latency test durchgeführt.
Währenddessen dann Youtube-Videos angesehen, Fenster verschoben und das sieht für mich jetzt mal gar nicht so schlecht aus.
Es sei denn, ich habe al wieder etwas übersehen...
Attachments:
Please Log in or Create an account to join the conversation.
13 Sep 2023 17:30 #280653
by Jensner
Replied by Jensner on topic Stepper-Encoder an einem Stepper via Parallelport nachrüsten
Natürlich auch diese Einstellungen..ich würde die Zeilen
[/code]addf parport.0.write base-thread addf parport.0.reset base-thread addf parport.1.write base-thread addf parport.1.reset base-thread so anordnen [code]addf parport.0.write base-thread addf parport.1.write base-thread addf parport.0.reset base-thread addf parport.1.reset base-thread und testweise die reset-time hinaufschrauben, z.B. auf 10000.
Please Log in or Create an account to join the conversation.
13 Sep 2023 20:43 - 13 Sep 2023 20:49 #280674
by chris@cnc
Replied by chris@cnc on topic Stepper-Encoder an einem Stepper via Parallelport nachrüsten
Am Rechner scheint es nicht zu liegen. Das sieht gut aus.
Fällt mir nur noch die Velocity und Acceleration auf.
die Max Werte sind auf den Einzelnen Achsen deutlich unter der Basis von [TRAJ] [Display]
Diese Werte würde ich so ausprobieren. Ich weiß nicht was die Stepper können aber sollten die Werte zu hoch sein kannst du es ja in der Display oder TRAJ Section auf 100 oder weniger begrenzen und nicht im Joint. Ich glaube es ist nicht gut wenn der motion planer deutlich schneller unterwegs ist als die Achse. Andersrum ist der motion planer begrenzt bekommt die achse auch nicht schneller ihre pulse.
[DISPLAY]
DEFAULT_LINEAR_VELOCITY = 500.00 -> 200
MIN_LINEAR_VELOCITY = 0
MAX_LINEAR_VELOCITY = 5000.00 -> 200
[TRAJ]
DEFAULT_LINEAR_VELOCITY = 500 -> 200
MAX_LINEAR_VELOCITY = 5000.00 ->200
[AXIS_X]
MAX_VELOCITY = 47.8830645161 -> 200
MAX_ACCELERATION = 50.0 ->200
[JOINT_0]
MAX_VELOCITY = 47.8830645161 ->200
MAX_ACCELERATION = 50.0 -> 200
STEPGEN_MAXACCEL = 62.5 -> 250
setp parport.0.reset-time 5000
setp stepgen.0.dirhold 35000
setp stepgen.0.dirsetup 35000
Fällt mir nur noch die Velocity und Acceleration auf.
die Max Werte sind auf den Einzelnen Achsen deutlich unter der Basis von [TRAJ] [Display]
Diese Werte würde ich so ausprobieren. Ich weiß nicht was die Stepper können aber sollten die Werte zu hoch sein kannst du es ja in der Display oder TRAJ Section auf 100 oder weniger begrenzen und nicht im Joint. Ich glaube es ist nicht gut wenn der motion planer deutlich schneller unterwegs ist als die Achse. Andersrum ist der motion planer begrenzt bekommt die achse auch nicht schneller ihre pulse.
[DISPLAY]
DEFAULT_LINEAR_VELOCITY = 500.00 -> 200
MIN_LINEAR_VELOCITY = 0
MAX_LINEAR_VELOCITY = 5000.00 -> 200
[TRAJ]
DEFAULT_LINEAR_VELOCITY = 500 -> 200
MAX_LINEAR_VELOCITY = 5000.00 ->200
[AXIS_X]
MAX_VELOCITY = 47.8830645161 -> 200
MAX_ACCELERATION = 50.0 ->200
[JOINT_0]
MAX_VELOCITY = 47.8830645161 ->200
MAX_ACCELERATION = 50.0 -> 200
STEPGEN_MAXACCEL = 62.5 -> 250
setp parport.0.reset-time 5000
setp stepgen.0.dirhold 35000
setp stepgen.0.dirsetup 35000
Last edit: 13 Sep 2023 20:49 by chris@cnc.
Please Log in or Create an account to join the conversation.
14 Sep 2023 08:04 - 14 Sep 2023 08:33 #280709
by Jensner
ich habe jetzt diese Werte mal testweise eingestellt.
Hier bekomme ich auf allen 3 Achsen nahezu sofort einen "error - Motor [X] Positionsfehler" ([X) steht für 0, 1 oder 2)
Sind denn hier die Beschelunigungswerte nicht viel zu hoch?
Wenn ich das richtig interprätiere, fahren die Stepper doch mit diesen Werten schlagartig von 0 auf 200?
Gruß Jens
Replied by Jensner on topic Stepper-Encoder an einem Stepper via Parallelport nachrüsten
hallo,Am Rechner scheint es nicht zu liegen. Das sieht gut aus.
Fällt mir nur noch die Velocity und Acceleration auf.
die Max Werte sind auf den Einzelnen Achsen deutlich unter der Basis von [TRAJ] [Display]
Diese Werte würde ich so ausprobieren. Ich weiß nicht was die Stepper können aber sollten die Werte zu hoch sein kannst du es ja in der Display oder TRAJ Section auf 100 oder weniger begrenzen und nicht im Joint. Ich glaube es ist nicht gut wenn der motion planer deutlich schneller unterwegs ist als die Achse. Andersrum ist der motion planer begrenzt bekommt die achse auch nicht schneller ihre pulse.
[DISPLAY]
DEFAULT_LINEAR_VELOCITY = 500.00 -> 200
MIN_LINEAR_VELOCITY = 0
MAX_LINEAR_VELOCITY = 5000.00 -> 200
[TRAJ]
DEFAULT_LINEAR_VELOCITY = 500 -> 200
MAX_LINEAR_VELOCITY = 5000.00 ->200
[AXIS_X]
MAX_VELOCITY = 47.8830645161 -> 200
MAX_ACCELERATION = 50.0 ->200
[JOINT_0]
MAX_VELOCITY = 47.8830645161 ->200
MAX_ACCELERATION = 50.0 -> 200
STEPGEN_MAXACCEL = 62.5 -> 250
setp parport.0.reset-time 5000
setp stepgen.0.dirhold 35000
setp stepgen.0.dirsetup 35000
ich habe jetzt diese Werte mal testweise eingestellt.
Hier bekomme ich auf allen 3 Achsen nahezu sofort einen "error - Motor [X] Positionsfehler" ([X) steht für 0, 1 oder 2)
Sind denn hier die Beschelunigungswerte nicht viel zu hoch?
Wenn ich das richtig interprätiere, fahren die Stepper doch mit diesen Werten schlagartig von 0 auf 200?
Gruß Jens
Last edit: 14 Sep 2023 08:33 by Jensner.
Please Log in or Create an account to join the conversation.
14 Sep 2023 08:11 - 14 Sep 2023 08:11 #280710
by Jensner
Replied by Jensner on topic Stepper-Encoder an einem Stepper via Parallelport nachrüsten
Kurzer Zusatz.
Auch mit verringerter Acceleration (50) beschleunigt die jeweilige Achse kurz und läuft dann ebenfalls nach ca. einer Sekunde in die o.g. Fehlermeldung.
Gruß Jens
Auch mit verringerter Acceleration (50) beschleunigt die jeweilige Achse kurz und läuft dann ebenfalls nach ca. einer Sekunde in die o.g. Fehlermeldung.
Gruß Jens
Last edit: 14 Sep 2023 08:11 by Jensner.
Please Log in or Create an account to join the conversation.
14 Sep 2023 09:26 #280719
by rmu
Replied by rmu on topic Stepper-Encoder an einem Stepper via Parallelport nachrüsten
Die Beschleunigungen und Geschwindigkeiten von den stepgens müssen ein wenig über den Werten der Achsen liegen, empfohlen werden glaub ich 10%. Ansonsten läuft man in diese Positions-Fehler, da die Motoren der Achse nicht folgen können wenn die stepgen-Werte kleiner sind.
Please Log in or Create an account to join the conversation.
14 Sep 2023 14:59 #280747
by Jensner
Replied by Jensner on topic Stepper-Encoder an einem Stepper via Parallelport nachrüsten
Hallo,
ich habe heute mal ausgibig getestet.
Erkenntnisse
1: Ich haber viel zu wenig Ahnung von LinuxCNC ;o)
2. Die Probleme mit dem Closed Loop Stepper gibt es immer nur im Eilgang (Manuelles Verfahren)
Sobald mit G1-Befehlen mit moderater Geschwindigkeit gearbeitet wird, funktioniert der CL Stepper ganz normal
3. Auch beim CL Stepper verändert sich der Nullpunkt im Laufe des Programmes,
(Andere Parallelportkarte, anderes Breakout-Board)
Deutlich zu beobachten war dieses Verhalten sobald ein G0 - Z... Befehl (Eilgang) im Code stand!
(Leider kann ich diese Befehle in Fusion 360 nicht vollständig unterdrücken)
Logisches Schlussfolgerung
das Problem hat, wie viele von Euch auch mehrfach vermutet hattet, offensichtlich weder etwas mit dem Stepper der Z-Achse, noch mit der Lewetz-Steuerung zu tun.
Da ich nun auch auf beiden Parallelport-Karten mit unterschiedlichen Steuerungen und Motoren das gleiche Problem hatte, bleibt nur noch ein Problem mit dem Rechner selbst oder, was naheliegender ist, hier gibt es wohl ein Problem bei den Parametern in der ini.
Gut, dass ich den Closed Loop Stepper nur in einer kleinen Test-Verkabelung angeschlossen und nicht meine komplette Z-Achse umgebaut hatte. Somit kann ich mich nun mit vorhandener Steuerungs- und Antriebs-Hardware weiter durcharbeiten.
Die Frage wäre nun, wo ich hier anfangen soll..
Was für mich leider noch immer nicht logisch ist, warum nur die Z-Achse und nicht alle...
Gruß Jens
ich habe heute mal ausgibig getestet.
Erkenntnisse
1: Ich haber viel zu wenig Ahnung von LinuxCNC ;o)
2. Die Probleme mit dem Closed Loop Stepper gibt es immer nur im Eilgang (Manuelles Verfahren)
Sobald mit G1-Befehlen mit moderater Geschwindigkeit gearbeitet wird, funktioniert der CL Stepper ganz normal
3. Auch beim CL Stepper verändert sich der Nullpunkt im Laufe des Programmes,
(Andere Parallelportkarte, anderes Breakout-Board)
Deutlich zu beobachten war dieses Verhalten sobald ein G0 - Z... Befehl (Eilgang) im Code stand!
(Leider kann ich diese Befehle in Fusion 360 nicht vollständig unterdrücken)
Logisches Schlussfolgerung
das Problem hat, wie viele von Euch auch mehrfach vermutet hattet, offensichtlich weder etwas mit dem Stepper der Z-Achse, noch mit der Lewetz-Steuerung zu tun.
Da ich nun auch auf beiden Parallelport-Karten mit unterschiedlichen Steuerungen und Motoren das gleiche Problem hatte, bleibt nur noch ein Problem mit dem Rechner selbst oder, was naheliegender ist, hier gibt es wohl ein Problem bei den Parametern in der ini.
Gut, dass ich den Closed Loop Stepper nur in einer kleinen Test-Verkabelung angeschlossen und nicht meine komplette Z-Achse umgebaut hatte. Somit kann ich mich nun mit vorhandener Steuerungs- und Antriebs-Hardware weiter durcharbeiten.
Die Frage wäre nun, wo ich hier anfangen soll..
Was für mich leider noch immer nicht logisch ist, warum nur die Z-Achse und nicht alle...
Gruß Jens
Please Log in or Create an account to join the conversation.
14 Sep 2023 15:10 #280748
by Jensner
Replied by Jensner on topic Stepper-Encoder an einem Stepper via Parallelport nachrüsten
Nächster Schritt.
Ich hatte mit vor ein paar Wochen einen Optiplex GX980 mit Onboard-Parallelport zugelegt und auch schon LinuxCNC installiert.
Der wird jetzt testweise angeschlossen und dann schaue ich mal ob das Problem evtl. weg ist.
... Es bleibt spannend.
Gruß Jens
Ich hatte mit vor ein paar Wochen einen Optiplex GX980 mit Onboard-Parallelport zugelegt und auch schon LinuxCNC installiert.
Der wird jetzt testweise angeschlossen und dann schaue ich mal ob das Problem evtl. weg ist.
... Es bleibt spannend.
Gruß Jens
The following user(s) said Thank You: tommylight
Please Log in or Create an account to join the conversation.
14 Sep 2023 19:08 #280766
by chris@cnc
Replied by chris@cnc on topic Stepper-Encoder an einem Stepper via Parallelport nachrüsten
Ich glaube nicht das es an dem Rechner liegt. Es ist mehr das zusammenspiel der Parameter
BASE_PERIOD = 100000
SERVO_PERIOD = 1000000
MAX_VELOCITY = 100.0
MAX_ACCELERATION = 100.0
SCALE = 320.0
Ich habe mal etwas im Simulator mit den Prametern gespielt. Und mit einer Acceleration von 50 beobachte ich auch im Simulator ein nachlaufen.
Je höher dein Scale ist umsomehr Pulse muss stepgen auch über die Parallele Schnittstelle an den Stepper bringen. Diese kommt aber schnell an die Leistungsgrenze. Ich konnte auch sofort der Fehler "Positionsfehler" ([X)" bobachten. Verringere ich z.b. den Scale auf 100 funktioniert es auch mit einem Velocity und Acceleration von 100 oder 200. Zweiter Test war den BASE_PERIOD = 100000 auf z.B. 50000 zu verringern. Damit trat der Fehler "Positionsfehler" ([X)" auch nicht mehr auf.
Leider habe ich überhaupt keine Praktische Erfahrung mit den Steppern und kann keine Tuning Empfehlung geben. Nur würden Servos an einer Parallelen Schnittstelle keinen Sinn machen, da du so kastrieren musst dass der Vorteil einem Stepper gegenüber wider verloren geht.
Ich denke wir sollten irgendwie diese Werte sauber einstellen und dann die Beschleunigung und Eilgang 25% unter Alarmgrenze einstellen.
Mit welchen Parametern ist diese Steuerung früher gelaufen?
Leider kann ich diese Werte auch nicht wirklich berechnen.
Im Handbuch steht das beschrieben. Und den "TRAJ_PERIOD = 100000" habe ich noch gar nicht gesehen?
linuxcnc.org/docs/stable/html/config/ini...html#_emcmot_section
Mein Vorschlag wäre
BASE_PERIOD = 50000
SERVO_PERIOD = 1000000
MAX_VELOCITY = 50.0
MAX_ACCELERATION = 50.0
SCALE = 320.0
setp parport.0.reset-time 5000
setp stepgen.0.dirhold 35000
setp stepgen.0.dirsetup 35000
Funktioniert es mit den Werten?
BASE_PERIOD = 100000
SERVO_PERIOD = 1000000
MAX_VELOCITY = 100.0
MAX_ACCELERATION = 100.0
SCALE = 320.0
Ich habe mal etwas im Simulator mit den Prametern gespielt. Und mit einer Acceleration von 50 beobachte ich auch im Simulator ein nachlaufen.
Je höher dein Scale ist umsomehr Pulse muss stepgen auch über die Parallele Schnittstelle an den Stepper bringen. Diese kommt aber schnell an die Leistungsgrenze. Ich konnte auch sofort der Fehler "Positionsfehler" ([X)" bobachten. Verringere ich z.b. den Scale auf 100 funktioniert es auch mit einem Velocity und Acceleration von 100 oder 200. Zweiter Test war den BASE_PERIOD = 100000 auf z.B. 50000 zu verringern. Damit trat der Fehler "Positionsfehler" ([X)" auch nicht mehr auf.
Leider habe ich überhaupt keine Praktische Erfahrung mit den Steppern und kann keine Tuning Empfehlung geben. Nur würden Servos an einer Parallelen Schnittstelle keinen Sinn machen, da du so kastrieren musst dass der Vorteil einem Stepper gegenüber wider verloren geht.
Ich denke wir sollten irgendwie diese Werte sauber einstellen und dann die Beschleunigung und Eilgang 25% unter Alarmgrenze einstellen.
Mit welchen Parametern ist diese Steuerung früher gelaufen?
Leider kann ich diese Werte auch nicht wirklich berechnen.
Im Handbuch steht das beschrieben. Und den "TRAJ_PERIOD = 100000" habe ich noch gar nicht gesehen?
linuxcnc.org/docs/stable/html/config/ini...html#_emcmot_section
Mein Vorschlag wäre
BASE_PERIOD = 50000
SERVO_PERIOD = 1000000
MAX_VELOCITY = 50.0
MAX_ACCELERATION = 50.0
SCALE = 320.0
setp parport.0.reset-time 5000
setp stepgen.0.dirhold 35000
setp stepgen.0.dirsetup 35000
Funktioniert es mit den Werten?
Please Log in or Create an account to join the conversation.
Time to create page: 0.118 seconds