Step 7 Step 7 Problem mit Zähler

extrogy

Level-2
Beiträge
9
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
Ich programmiere im Moment eine Verladesteuerung wo ich über eine Visualisierung (Galileo 8 ) einen Wert vorgebe. (z.B. 22500 kg)
Dieser Wert wird dann in einen Datenbaustein meiner S7-300 geschrieben (Typ: INT). In den Datenbaustein wird mir der Wert 22500 angezeigt.
Der Datenbaustein Wert wird dann in einen Rückwärtszähler verarbeitet, aber bei den Rückwärtszähler wird mir dann der wert "C#57e4" angezeigt.
Wenn ich nun versuche den "Verladevorgang" zu starten und der Rückwärtszähler runter zählen soll geht die CPU auf SF.


Meine Frage ist was muss ich ändern damit der Zähler rückwärts zählt ?
 
Was sagt der diagnosepuffer. Evtl. Falsches Datenformat. In welchen Format liegt der Wert vor und was verarbeitet dein Zähler.

Gesendet von meinem Redmi Note 5 mit Tapatalk
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich hab einfach mal die Hilfe aus Step7 für dich kopiert.

Format


S <Zähler>




Operand Datentyp Speicherbereich Beschreibung
<Zähler> COUNTER Z Zähler, der voreingestellt werden soll; Bereich hängt von der CPU ab.
Beschreibung


S <Zähler> lädt den Zählwert aus AKKU1-L in den adressierten Zähler, wenn das VKE von "0" auf "1" wechselt. Der Zählwert in AKKU 1 muß als BCD-Zahl zwischen "0" und "999" vorliegen.


Statuswort


BIE A1 A0 OV OS OR STA VKE /ER
schreibt: - - - - - 0 - - 0
Beispiel


AWL Erläuterung
U E 2.3 //Frage den Signalzustand am Eingang E 2.3 ab.
L C#3 //Lade den Zählwert 3 in AKKU1-L.
S Z1 //Setze den Zähler Z1 auf den Zählwert, wenn das VKE von "0" auf "1" wechselt.

Will heißen, max 999 und BCD-Format. Das wären deine Fehler.
Du soltest einfach eine DINT nehmen und dir einen eigenen Zähler programmieren.
Es muß ja ein Signal existieren, mit dem du den Zähler zurückzählen willst.
Daraus eine Flanke erzeugen und mit jeder Flanke eine 1 von Zählwert abziehen.
Dann noch ein Vergleicher, der dir sagt, wann dein Zähler einen Wert X unterschreitet bzw. gleich ist (<=)
 
Zurück
Oben