S7: Betriebsstundenzähler läuft nur bis 32h

maxpapa

Level-1
Beiträge
40
Reaktionspunkte
22
Zuviel Werbung?
-> Hier kostenlos registrieren
Problem:
Wir haben in einer Anlage mit S7-317CPU(V3.x) einen Betriebsstundenzähler installiert, der nur bis 32 Betriebsstunden zählt.
Der Betriebsstundenzähler addiert bei Start immer die letzte Zykluszeit auf und hört bei 32h auf zu zählen.
In PLCSIM wird das gleiche Ergebnis geliefert.

Zum Testen den nachfolgenden Prg-Code in OB1 kopieren
**************************************************

//in MD2 letzte Zykluszeit in Sekunden (real-Format)

L #OB1_PREV_CYCLE
ITD
DTR
L 1.000000e-003
*R
T MD 2 //Zykluszeit_real


U E0.0 //Start_BSZ
SPBN M002
// --- Anpassung und Hochzählen der Zeit
L MD 10 // Betriebszeit_real
L 3.600000e+003 //Umrechnung in Sekunden
*R
L MD 2 //Zykluszeit_real
+R
L 3.600000e+003
/R
T MD 10 // Betriebszeit_real Zykluszeit_real

M002: NOP 0



MD 10 läuft bis 32.00 einwandfrei hoch, bleibt aber dann stehen.
Den BSZ in der Anlage haben wir jetzt umgeschrieben , aber warum funktioniert unser 1.Programmansatz nicht.

Für Rückmeldungen wäre ich sehr dankbar

Uwe
 
Zuletzt bearbeitet:
Dein Problem wird hier gefühlt alle 3 Monate angefragt. Es liegt daran, daß bei REAL-Zahlen nicht beliebig unterschiedlich große Zahlen addiert werden können, weil im REAL-Format nur höchsten 7 Ziffern enthalten sein können (siehe Step7-Hilfe zum Datentyp REAL)
--> benutze für Deinen Zähler ein Ganzzahl-Format (z.B. DINT) und/oder kaskadiere 2 Zähler (Millisekunden_Zähler + Stunden_Zähler), falls das nicht ausreicht.

Harald
 
Zurück
Oben