# Stepper mit Klemme 750-673 eCockpit  Library Wago Stepper 1.6.1.1



## Matt7887 (6 Mai 2021)

Hallo, Hallo, leider gelingt es mir nicht zuverlässig einen Stepper mit Linearspindel zu referenzieren.
Verfahren, Absolut Positionieren Funktioniert.
Ich habe am Negativen punkt einen Sensor der über eine Welle ein High Signal liefert mit der Stepper in seiner Negativen Endlage ist. Dann ist der Sensor Low.
Einen Positiven oder einen Referenzschalter gibt es nicht.
Ich habe den Sensor bei der Klemme auf X1 15 und X1 13 ausprobiert.
Auf X15 leuchtet die LED des Digitaleingangs 6. Auf X1 13 leuchtet keine LED. Elektrisch dürfte es hier keinen Unterschied machen, oder?  GND ist auf X1 6.
Folgende Parameter verwende ich:
…yStepperConf.Ptr_Stop1_N := 1;
…lrPositionFactor := 6400;
…yStepperConf.Ptr_LimitSwitch_Pos:= 52;
…yStepperConf.Ptr_LimitSwitch_Neg:=53;
…yStepperConf.Reference_Mode := 1;
…vStepper1.BasicPos := FALSE;
…vStepper1.BasicNeg := TRUE;
…xRefAtReset := TRUE; 

Hat jemand eine Idee was ich noch falsch mache?
Das Problem ist auch der Sensor der ja ständig ein High Liefert und erst wechselt, wenn die Endposition überfahren wurde. Er darf dann noch weiterfahren aber für den Ablauf der Library ist das wohl verkehrt?
Danke


----------



## test14 (6 Mai 2021)

Hallo , hatte ein aehnliches Problem.
Bei mir hat die folgende Einstellung im IO Check geholfen:
Ptr_LimitSwitch_Pos = 168
Ptr_LimitSwitch_Neg = 169
Ptr_FILT1 = 52
Ptr_FILT1 = 53
Filter1_Funktion = Invertierung
Filter2_Funktion = Invertierung
VG


----------



## Matt7887 (7 Mai 2021)

test14 schrieb:


> Hallo , hatte ein aehnliches Problem.
> Bei mir hat die folgende Einstellung im IO Check geholfen:
> Ptr_LimitSwitch_Pos = 168
> Ptr_LimitSwitch_Neg = 169
> ...




Vielen  Dank, habs versucht leider bewegt er sich jetzt gar nicht mehr bzw. geht sofort in Fehler.
Warum 168 und 169?

Danke


----------



## Matt7887 (10 Mai 2021)

Hallo, mit dem Wago Support konnte ich zumindest den einen negativen Endlagensensor invertieren.
Leider kann ich den Liniearstepper immer noch nicht bewegen. Das Referenzieren scheint zu klappen.
Wenn ich dann eine Abs. Pos vorgebe Fährt er dort hin und ohne Kommando wieder auf 0.
Dann hat er Störung.

Das Negieren scheint nicht geklappt zu haben oder nur in der Referenzfahrt. 

Wenn ich nur einen Sensor als Endlage habe, benötige ich hier einen Wert?
yStepperConf.Reference_Offset??

Ich habe den negative Endlagensensor im IO-Config gefiltert und nochmal im Programm als
.yStepperConf.Ptr_LimitSwitch_Neg:=53; beschrieben.

Hat jemand noch eine Idee oder ein Beispiel welche Werte der Stepper braucht ? 
Das Thema ist wirklich frustrierend. :shock:


----------



## test14 (18 Mai 2021)

Hallo, ich hatte eine 750-671 im Betrieb.
_Mit Ptr_LimitSwitch_Pos = 168 verlinkt man die Funktion auf den __Ptr_FILT1 
danach wird mit __Ptr_FILT1 = 52 zurück auf auf den __Ptr_LimitSwitch_Pos verlinkt.
Mit __Filter1_Funktion = Invertierung kann jetzt der Eingang als Invertiert ausgewertet werden.
Dann ueber die _WagoAppStepper.FbStepperControlBasic und WagoAppStepper.FuModeSelect Referenzfahrt und MoveAbsolute ausgeführt.
_Im Handbuch werden die Verlinkungen beschrieben.
VG_


----------



## Matt7887 (20 Mai 2021)

test14 schrieb:


> Hallo, ich hatte eine 750-671 im Betrieb.
> _Mit Ptr_LimitSwitch_Pos = 168 verlinkt man die Funktion auf den __Ptr_FILT1
> danach wird mit __Ptr_FILT1 = 52 zurück auf auf den __Ptr_LimitSwitch_Pos verlinkt.
> Mit __Filter1_Funktion = Invertierung kann jetzt der Eingang als Invertiert ausgewertet werden.
> ...



 Danke, habs hinbekommen  

Noch was anderes. 
Wenn ich die SPS neustarte, ist die diActualPosition=> auf 0. Egal wo die Spindel steht.
Für meinen Anwendungsfall würde ich gerne die letzte Position im Controller speichern bzw. dass er bei einem Neustart dort anfängt wo er aufgehört hat.

Ich habe mir den Actual-Wert in der Steuerung  als PERSISTENT RETAIN    zwar Kopiert, leider finde ich keinen weg den Wert in den Regler zu schreiben.

Gibt es überhaupt eine Möglichkeit? Auch dass er nach dem Hochfahren kein Homing braucht?

Danke


----------



## Matt7887 (25 Mai 2021)

Hallo, ich habe immer noch das Problem mit dem Setzen  der Position auf 0. Ich hab erfahren das ich den fb SetPosition aus der Library dafür benutzen kann.
Leider finde ich keine Doku über den FB.
Wann kann man die Library einsetzen und in welchem Zustand muss der Stepper sein?


----------



## Matt7887 (2 Juni 2021)

Hi, hat keiner eine Idee? 
Komme einfach nicht weiter.

Ich deklariere unter VAR die  die Stepper Library WagoAppStepper.FbSetPosition; 
SetPosition(
    xExecute := FALSE,
    I_POrt := I_Port,  
    diPosition := 0);

Ich rufe sie auf und Force xExecute zu True. 
Leider passiert nichts im typStepperVisu_673; Aufruf. Egal ob xEnable True oder False ist.

Hat noch jemand eine Idee? 
Danke


----------



## Tobsucht (2 Juni 2021)

Hallo,

am I_Port gibst Du die Funktionsbausteininstanz des Stepper Moduls an. Diese findest Du in der Variablenliste IoConfig_Globals.
Der Code sieht aus, als wenn du selbst eine Instanz angelegt hast. Diese hat dann aber keine Verbindung zur Hardware.

Grüße


----------



## Matt7887 (8 Juni 2021)

Tobsucht schrieb:


> Hallo,
> 
> am I_Port gibst Du die Funktionsbausteininstanz des Stepper Moduls an. Diese findest Du in der Variablenliste IoConfig_Globals.
> Der Code sieht aus, als wenn du selbst eine Instanz angelegt hast. Diese hat dann aber keine Verbindung zur Hardware.
> ...


Danke, ich habe es über den eJobType hinbekommen 
eJobType := WagoAppStepper.eMode.SetPosition;

Jetzt habe ich noch ein letztes Problem zu dem ich einfach eine Lösung finde.
Wenn der Stepper Stillsteht Pfeift er extrem hochfrequent.
Das geht auf die Ohren mit der Zeit.
Mit er Current oder Stand Still Current habe ich schon erfolglos experimentiert.
Freq_Div steht auf 4. Bei 8 oder 16 ist es auch nicht anders.

Hat jemand noch eine Idee? Welchen Wert muss ich verändern? 

Danke


----------



## schlittk (9 Juni 2021)

Hallo,

unter den Expert Einstellungen findest du den Parameter 
Currrent_Ctrl_TZMax, 
mit dem kannst du ein wenig spielen. Nach meiner Erfahrung bekommt man das Geräusch so etwas erträglicher aber nicht ganz weg.

Wenn du den Parameter Currrent_Ctrl_TZMax änderst musst du ebenfalls 
Current_Pass2 
entsprechend anpassen.

Passwort für Stromreglerparameter.
Password = Currrent_Ctrl_Hysteresis
XOR Currrent_Ctrl_TZMin XOR
Currrent_Ctrl_TZMax XOR
Current_Ctrl_Type XOR 0xC0DE.
Wenn das Password falsch ist, wird die
Fehlermeldung
CONFIG_WRONGPASSWORD
(1162) erzeugt.

Güße


----------



## Matt7887 (10 Juni 2021)

schlittk schrieb:


> Hallo,
> 
> unter den Expert Einstellungen findest du den Parameter
> Currrent_Ctrl_TZMax,
> ...


Danke  
Jap ganz weg geht es nicht erst wenn ich mit Current_Ctrl_Hysteresis auf 30 mA gehe. Laut Manual soll man nicht unter 50 mA


Bei den anderen Genannten Parametern höre ich keinen Unterschied.

Das mit dem Passwort über XOR ist echt mies. Da wäre ich in 100 Jahren nicht darauf gekommen.


----------



## Matt7887 (8 Juli 2021)

Hallo, noch immer bekomme ich den Stepper Controller nicht zuverlässig zum Laufen.

Es ist echt frustrierend das es zu der Stepper Library keine richtige Doku gibt.

Wago teilte mir mit man kann wen man nur einen Referenzsensor hat, ohne Endlagensensor ein Homing durchführen. Das klappt aber nicht. Der Stepper fährt einfach weiter bis auf Crash.

Im Programm: Ich frage den Sensor ab. Kommt er nicht fährt er ins Positive bis er kommt. Dann wird die Richtung gewechselt. Und er soll vom Sensor runterfahren. Dabei stoppt er nicht bzw. es kommt kein Done aus dem FB.

Im IO-Check steht die Auswahl „Reference_to_Ref_Switch“ auf Referenzschalter.

Reference Offset ist auf 0.




Definiere ich im IO-Check das Endlagensensor und Referenzsensor der gleiche ist. Funktioniert das homing. Leider kann ich in dieser Einstellung nicht auf 0 Fahren, weil 0 ist gleichzeitig die Endlage bzw. ich komme dann nicht mehr weg vom Endlagensensor.



Gibt e irgendwo eine Beschreibung oder ein Beispiel wie so ein Homing ausschauen könnte.

Es kann doch nicht so schwer sein. Ich verstehe nicht warum es keine Doku gibt. Die Doku in der Library selbst ist ein Witz.


----------



## schlittk (8 Juli 2021)

Hallo,

ich will mal wild vermuten, da ich den Referenzschalter noch nie verwendet habe, aber ich denke du benötigst zu einem Referenzschalter noch einen Endschalter ausser du hast z.B. eine senkrechte Achse, die ohne Strom allein runterfällt, so dass eine Referenzfahrt sicher in die Richtung des Referenzschalters beginnt.

Verwendest du deinen Referenzschalter als Endlagenschalter und du machst eine Referenzfahrt zum negativen Endschalter kannst du natürlich danach nur noch in positive Richtung fahren und führst du die Referenzfahrt zum positiven Endschalter aus kannst du danach nur noch in negative Richtung fahren.


----------

