Kl2531 geht nach Motorfreischaltung in Error Modus, warum?

Darkghost

Level-1
Beiträge
210
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

eigentlich bin ich m.E. schon ganz gut (auch dank mancher Beispielscripte) recht weit gekommen, um mit dem Schrittmotor eine Position anzufahren.
Nur geht kurz nach der Freischaltung der Motorsteuerung in Klemme in den Errormodus und ich weiß nicht wirklich was das Problem ist.

Nach Schritt 1040 (* Register-Kommunikation beenden *) liegen folgende Werte an:

Status: 130
Position: 11264
ExStatus: 0
CRTL: 130
Velocity: 0
ExStatus: 0

Nach Schritt 1050 (* Motorsteuerung freischalten *) liegen folgende Werte an:
Status: 130
Position: 11264
ExStatus: 0
CRTL: 5
Velocity: 0
ExStatus: 0



Anbei ein Video, dass den Wechseln in den Errormodus kurz nach der Freischaltung zeigt.
D.h. es blinkt gerade die LED B und man soll in SW9 bis SW13 nachschauen.

Folgende Infos habe ich herausbekommen:
Versorgungs- oder Last-Fehler
- Versorgungsspannung (24 V[SUB]DC[/SUB]) zu niedrig (Bit SW.9 im Status-Wort ist gesetzt)
- offene Last an Brücke A (Bit SW.11 im Status-Wort ist gesetzt)
- offene Last an Brücke B (Bit SW.12 im Status-Wort ist gesetzt)
- Überstrom an Brücke A (Bit SW.13 im Status-Wort ist gesetzt)
- Überstrom an Brücke B (Bit SW.11 im Status-Wort ist gesetzt)

SW müsste dann der Wert von Position sen? -> 11264
Bin: 10 1100 0000 0000



SW.14NoControlPower1[SUB]bin[/SUB]Ausfall der 24 V Steuerspannung (die LED Error B blinkt und die Klemme schaltet den Motor selbsttätig ab). Die Klemme wird automatisch Re-Initialisert, wenn die Spannung wieder kommt.
ACHTUNG: eine Quittierung dieser Fehlermeldung muss vom Anwender durch setzen von Bit CB.6 des Control-Bytes erfolgen!
SW.12OverCurrent Br A1[SUB]bin[/SUB]Überstrom, Brücke A (die LED Error B blinkt und die Klemme schaltet den Motor selbsttätig ab).
ACHTUNG: eine Quittierung dieser Fehlermeldung muss vom Anwender durch setzen von Bit CB.6 des Control-Bytes erfolgen!
SW.11OpenLoad Br B1[SUB]bin[/SUB]offene Last, Brücke B (die LED Error B blinkt und die Klemme schaltet den Motor selbsttätig ab).
ACHTUNG: eine Quittierung dieser Fehlermeldung muss vom Anwender durch setzen von Bit CB.6 des Control-Bytes erfolgen!



Kann es sein, dass evtl. der Motor falsch an der Klemme angeschlossen ist?

A ist an 1 angeschlossen
A\ ist an 5 angeschlossen
B ist an 2 angeschlossen
B\ ist an 6 angeschlossen

Habt Ihr eine Idee warum die Klemme in den Errormodus geht?

Grüße
Stefan
 

Anhänge

  • Code.zip
    755,3 KB · Aufrufe: 7
  • Error.zip
    8,5 MB · Aufrufe: 8
Hallo Stefan,
sorry, aber meine Glaskugel ist gerade zur Reparatur, ich kann Dir leider nicht helfen. 😉
Aber im Ernst, es fehlen die Infos welchen Motor Du angeschlossen hast und welche Werte (Strom, Spannung, usw.) Du in der Klemme eingestellt hast?

Von irgendwas mit Internetzugang gesendet
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Oliver,
danke für die Rückmeldung.
Das war keine Absicht etwas zu vergessen. Mir war nicht bewusst, dass diese Eigenschaften wichtig sind.

Motor:
http://www.mechapro.de/pdf/KH56QM2.pdf

Eigenschaften:• 1,8° Schrittwinkel (200 Vollschritte/Umdrehung)• 2-Phasen Motor, 4 Anschlüsse• Bipolar ansteuerbar• Maße: 56x56x76mm, Wellen-Ø: 6,35mm (1/4“)• Rotorträgheit 269x10-7 kg*m²• Rastmoment: 69 mNm• Gewicht: 1,0 kg
Beschaltung: Bipolar
Haltemoment 1,323 V
Phasenstrom 2,0A
Spannung 4,0V
Widerstand 2,0 [Ohm/Phase]
Induktivität 7,35 [mH/Phase]

Im Code habe ich folgende Eigenschaften eingestellt:
1. Codewort-Register => Schreiben in EEPROM und RAM
stepper_input.Ctrl := RegAccess_On OR WriteAccess OR 31;
stepper_input.Velocity := 16#1235;

2. Register - Page auswählen
stepper_input.Ctrl := RegAccess_On OR WriteAccess OR 4;
stepper_input.Velocity := 0;


3. Fahrmodi auswählen
stepper_input.Ctrl := RegAccess_On OR WriteAccess OR 32;
stepper_input.Velocity := 2#0000100000011000;

4. (* Spulenstrom A *)
stepper_input.Ctrl := RegAccess_On OR WriteAccess OR 35;
stepper_input.Velocity := 100;

5. (* Spulenstrom B *)
stepper_input.Ctrl := RegAccess_On OR WriteAccess OR 36;
stepper_input.Velocity := 100;

6. (* Motorvollschritte pro Umdrehung *)
stepper_input.Ctrl := RegAccess_On OR WriteAccess OR 33;
stepper_input.Velocity := 200;

7. (* Microstepping *)
stepper_input.Ctrl := RegAccess_On OR WriteAccess OR 46;
stepper_input.Velocity := 6;

8. (* Codewort-Register => Schreiben nur in RAM *)
stepper_input.Ctrl := RegAccess_On OR WriteAccess OR 31;
stepper_input.Velocity := 16#0000;

9. (* Geschwindigkeit MIN *)
stepper_input.Ctrl := RegAccess_On OR WriteAccess OR 38;
stepper_input.Velocity := step_speed_min;

10. (* Geschwindigkeit MAX *)stepper_input.Ctrl := RegAccess_On OR WriteAccess OR 39;
stepper_input.Velocity := step_speed_max;

11. (* Zielposition Low *)
stepper_input.Ctrl := RegAccess_On OR WriteAccess OR 2;
stepper_input.Velocity := step_position_low;


12. (* Zielposition High *)
stepper_input.Ctrl := RegAccess_On OR WriteAccess OR 3;
stepper_input.Velocity := step_position_high;

13. (* Register-Kommunikation beenden *)
stepper_input.Ctrl := RegAccess_On OR ReadAccess OR 2;
stepper_input.Velocity := 0;

14. (* Motorsteuerung freischalten *)
stepper_input.Ctrl.0 := TRUE;
stepper_input.Ctrl.1 := FALSE;
stepper_input.Ctrl.2 := TRUE;
stepper_input.Ctrl.3 := FALSE;
stepper_input.Ctrl.4 := FALSE;
stepper_input.Ctrl.5 := FALSE;
stepper_input.Ctrl.6 := FALSE;
stepper_input.Ctrl.7 := FALSE;
IF stepper_output.ExtStatus.3 THEN
stepper_input.Ctrl.2 := 0; ---> Nach ca. 1 Sekunde geht die Klemme in den Fehlerzustand <---

END_IF;


Nach jedem Schritt wird stepper_output.Status überprüft, ob das richtige Register geschrieben wurde.

Hab ich noch Infos vergessen?
Bin jetzt schon sehr lange mit dem Schrittmotor bzw. an diesem Fehler dran und ohne Hilfe komme ich glaube ich nicht mehr weiter. :-/
Bin für jede Idee dankbar ;-)
 
Habe gerade nur mein Handy zur Hand und kann nichts nachschlagen, aber warum schreibst Du bei Spulenstrom eine 100 rein? Ich kenne nur die EL70X7 von Beckhoff und da wird der Strom in mA angegeben, in Deinem Fall wäre es eine 2000 die da rein müsste. Soweit die Klemme den Strom in 10mA Schritten erwartet müsstest Du eine 200 eintragen.

Von irgendwas mit Internetzugang gesendet
 
Zuletzt bearbeitet:
Hab mir gerade einen CHM Reader heruntergeladen und kann jetzt mehr sagen. Die Klemme ist für den Motor ungeeignet behaupte ich mal. Laut Hilfe zieht der Motor 2,0A, die Klemme liefert bei 100% (Jetzt weiß ich auch was die 100 soll) 1,5A. Ich kenn mich mit Schrittmotoren nicht so aus, kann also sein, dass das geht, aber dann wird der Motor auf jeden Fall nie die volle Leistung bringen können.

Von irgendwas mit Internetzugang gesendet
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke für die Infos.
Laut meinen Infos geht das. Natürlich wird der Motor nicht mit voller Leistung fahren.
Den Motor hab ich schon mit einer anderen Endstufe Tinystep.plus (http://www.mechapro.de/tinystep.html) angeschlossen und dort konnte ich über Dip-Schalter den Motor auch mit weniger Strom (u.a. auch 1,5 A) betreiben.

Ich werde aber gleich mal schauen, wie das mit dem Spulenstrom aussieht.
 
Leide steht bei der Beschreibung des Register:
[h=3]R35: maximaler Spulenstrom A[/h]Dieses Register legt die Strombegrenzung für Wicklung A fest (Angabe in 0 bis 100 % vom Nennstrom der Klemme):
KL2531-0000: 100% = 1,5 A
KL2541-0000: 100% = 5,0 A

Bedeutet wenn ich das richtig verstehe, dass mit 100 100% gemeint ist.
 
Zurück
Oben