PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit Berechnung bei Simatic S5



021aet04
22.12.2013, 11:27
Hallo Community,
Ich muss in der Firma bei einer Simatic S5 die Abstandsmessung ändern.

Das System ist ein RBG (Lagerroboter). Dieser ist gekürzt worden, dadurch stimmen die Positionen nicht mehr. Den Hersteller gibt es noch, es gibt aber niemanden der sich damit auskennt (Bj1996/97).

Ich habe mir gedacht das ich einfach 2 Messwerte aufnehme und die Differenz rechne ich zum aktuellen Messwert dazu. Das funktioniert soweit auch, jedoch nur bei kleinen Werten.

Der Messwert steht in 2 DW (dw24 und dw25).

Ich müsste jetzt (dw24 und Dw25) + Differenz rechnen. Wie kann ich das machen? Gibt es eine Möglichkeit?

Aktuell habe ich Urlaub, könnte es erst ab 7.1. Testen. Am 13.1. Muss es wieder funktionieren (Produktionsbeginn).

MfG Hannes

PICture
22.12.2013, 11:56
Hallo!

Ich habe über Simatic S5 k.A., denke aber, dass am einfachsten, falls möglich, eine Verschiebung des Senders (virtuelle Verlängerung des Roboters evtl. auch mit "Spiegeln" bzw. "Rohr") wäre. ;)

ihle
22.12.2013, 12:24
Hallo,
bei mir ist es lange her mit SPS, aber soweit ich mich erinnern kann sind die DW Speicher für Konstanten usw.
in denen man keine operationen durchführen kann.
Du musst die Werte in deinen aktuellen Baustein laden und verrechnen.
Ich such mal meine Unterlagen und melde mich später wieder.
Oder versuchs mal hier, vielleicht kann dir da jemand helfen.

http://www.sps-forum.de/

mfg ihle

021aet04
22.12.2013, 13:31
Danke für die Antworten.

Den Laser mit Spiegeln umlenken wäre zu kompliziert. Es ist auch nicht einfach das man wieder exakt auf die Position kommt.

Ich habe es zum Testen so gemacht (mit bereits versetzten Reflektor):
Eine bestimmte Position mit Handbediengerät im Lager angefahren (z.B. Spalte 99) => Messwert mit PG ausgelesen
Anschließend mit Terminal eine Spule von der Spalte 99 angefordert. Sobald die Position erreicht wurde Notaus gedrückt. => Messwert ausgelesen
Differenz zwischen den Positionen berechnet und das Programm geändert.

Programm alt, laut Kommentar wird der Wert gelesen und durch 8 geteilt. Das ganze wird 3 mal gemacht (einmal LW, einmal HW und einmal 2tes und 3tes Byte). Warum weiß ich nicht (habe mir das Programm nicht genau angeschaut).

L DW24
SRW 3
T MW140

Ich habe das Programm geändert in (genaue Wert der Konstante weiß ich jetzt nicht):

L DW24
SRW 3
T MW140

L MW140
L KH03a0
+F
T MW140

Das funktioniert jedoch nicht.
Deswegen müsste ich den Wert von DW24 und DW25 als einen Wert sehen und die Differenz hinzurechnen und anschließend wieder im Programm als 2 Werte (LW und HW) sehen. Da scheitere ich aber mit meinem SPS Wissen (Grundlagen und was ich mir selbst beibringe).

Wenn es hilft, es ist eine S5-115 mit einer Drehgeberkarte für 5 Drehgeber (Typ weiß ich aktuell nicht)

PS: Für die Berechnung des 2ten und 3ten Bytes sieht der Code etwas anders aus.

MfG Hannes