Weg Codiersystem WCS mit Siemens S7 verarbeiten via Profibus

swisscrane

Level-1
Beiträge
87
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo an alle.
Bräuchte Hilfe beim auslesen des Wertes eines WCS3B Weg Codier System von Pepperl + Fuchs.

Ich kapier die Anleitung nicht, oder bin einfach nur zu dämlich.
Aus der Antwort von P+F werde ich auch nicht schlauer, oder es ist für micht nicht die Lösung auf meine Frage an P+F (CH)

Konf:
Siemens CPU 315-2DP
Profibus anbindung des WCS via Interface WCS-PG210E von P+F


In der Anleitung wird unter Punk 2.8 das Datenformat beschrieben.
Da der Wert jedoch 19 (bit) gross ist, passt das irgenwie nicht.
Sehe ich das falsch.
Des weiteren wird er unter 4.3 beschrieben. Hilft mir auch nicht weiter.




Anleitung von Pepperl + Fuchs

Anhang anzeigen WCS Interface Anleitung__ger.pdf



Hier noch die Antwort von P+F (CH)

Es verhält sich so, dass es sich bei den Werten zunächst um Positionswerte handelt die nicht
direkt in mm auslesbar sind. Bei 19 Positionsbits (P00-P19) ergeben sich theoretisch 524288 Positionen.


Die Auflösungen der WCS-Leseköpfe (siehe auch Datenblatt) sind wie folgt:

WCS3B +/- 0,40mm (0,8mm), 1250 Positionen pro m.

WCS2B +/- 0,42mm (0,84mm), 1200 Positionen pro m.


Die Werte vom Interface-Modul müssen daher von den Positionswerten in reale mm umgerechnet werden.


Was evtl. noch verwirrend sein kann ist der Umstand, soweit meine Kenntnis, dass mansche SPS das

Datenformat vom Interfacemodul „gespiegelt“ ausgeben.

Das bedeutet das das erste und folgende Wort (8byte), zerlegt in low-byte und high-byte, bei manchen SPS

das low-byte und bei anderen (glaube Siemens) SPS das high-byte immer zuerst dargestellt/ausgelesen wird.



Wie soll ich das mit den Positionsbits verstehen?

Wie lese ich den Wert aus?

Wird das nicht via PED oder so gemacht?


Hier noch ein PrtScr. HwKonfig

Anhang anzeigen HWK_VFA.pdf

Danke im Voraus für alle Anworten
 
Zuletzt bearbeitet:
WCS an S7 mit Profibus

Hallo swisscrane

Habe vor einigen Wochen ein WCS3B mit WCS-PG210E inbetriebgenommen, allerdings ohne Geschwindigkeitsmessung.
Ich würde im HW-Config das Modul: "P+F (1 reading head pos only)" verwenden.

Dann kansst Du mit "L PED 310" die Position mit Statusbits laden und in einem DB ablegen.
Anschliessend musst Du das Doppelwort mit "SRD 8" um 8 Bits nach rechts schieben um die Statusbits auszublenden.
Dieser Wert muss jetzt durch 1,25 geteilt werden. (
Umrechnung von Digit in mm: 1000 mm = 1250 Digit: 1mm = 1,25 Digit).
Beim Kopf WCS2B muss durch 1,2 dividiert werden.
Wenn jetzt die Fehlerbits E 313.2 und E 313.3 = "0" sind, dann hast Du die Position in mm,
ansonsten muss eine Fehlerauswertung gemacht werden.

Gruss Harti
 
Harti ich hätte da noch eine frage.
Wie sieht der Wert im PED aus?

Möchte das PED im PLCSim simulieren.
Steuerung ist noch nicht IB bereit.

Als FUP User bin ich mir beim Code nicht sicher.

Vielleicht siehst du ob das funktionert.

L PED 310 //Einlesen Wert ab Interface
T "Temp-Daten".PEW310_org //Schreiben in DB
L "Temp-Daten".PEW310_org //laden aus DB
SRD 8 //8bit nach rechts schieben.
T "Temp-Daten".PEW310_geschoben //schreiben in DB
L "Temp-Daten".PEW310_geschoben //neu lesen
DTR //von D zu Real wandeln
L 1.250000e+000 //laden von Divisor in Akku1 (Gewandelter Wert in Akku2)
/R //dividiren von Akku 2 durch Akku 1
RND // Ergebnis zu Dint wandeln
T "Temp-Daten".PosKran_mm //Dint in DB schreiben als (mm)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hey Hati.
Nochmals vielen Dank.
Ich bin jedoch froh das ich das im Grundsatz richtig interpretiert habe.
Deine Finesse mit der Fehlerbitauswertung direkt im Wert ist toll, und werde ich so übernehmen.
Ich wollte die Bit anderweitig nur für die Freigabe und Fehlermeldung nutzen.
Werde ich noch dazu nehmen.
Aber wirklich grossen Dank an dich.:D
 
Zurück
Oben