Was bedeutet das Bit ganz links vom Zähler?

Jan

Level-1
Beiträge
813
Reaktionspunkte
79
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo.

Nach erfolgloser Suche bei google und in der Forumssuche, hoffe ich, dass ihr mir etwas erklären könnt.

S7-300

Wenn man sich einen Zähler in der Variablentabelle Binärkodiert (BIN) ansieht, ist im Normalfall das Bit ganz links 1.
Wenn man den Zähler dazu bringt sich aufzuhängen, ist dieses Bit 0.

Wofür ist dieses Bit?

Was bedeutet es, wenn das Bit 1 ist und was bedeutet es, wenn es 0 ist?

Das dieses Bit von 1 nach 0 wechselt, wenn man gleichzeitig setzt und zurücksetzt, habe ich schon herausbekommen. Nur warum passiert das?

Ich hoffe ihr könnt mir da weiterhelfen.
 
ja, es wird sicher einen sinn haben, dass S in den handbüchern explizit darauf hinweist, dass beim laden des zählerwertes in den akku die linken 6 bits immer 0 gemacht werden.

also an sich: schöne erkenntnis, dass es da was gibt, womit S intern noch arbeitet, aber dem anwender nutzt es nichts, da er nicht ran kommt, auch nicht gepointert oder geanyt ...

also ja, interessante erkenntnis und nein, in der praxis nicht relevant.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Diesen Hinweis habe ich in der Hilfe nicht finden können.

Grundsätzlich ist das auch keine Antwort auf meine Frage, oder ich habe die Frage undeutlich gestellt.
 
selbst wenn du wüßtest, was das bit bedeutet - ALLEIN DU KÖNNTEST ES NICHT VERWENDEN!

der hinweis befindet sich in den grafiken zu den lade befehlen von zählerwerten, die eideutig und nochmals darauf hinweisen, dass die bits IMMER 0 sind.

und ich finde, dass ist schon genug antwort, was auch immer das bit intern macht...kannst es weder beeinflußen (in einer zuweisung) nach auslesen
 
OK.

Dann habe ich eine andere Frage, die Ursächlich Schuld an meiner Fragerei ist.

Im Netzwerk 4 wird mein ZR mit M22.2 rückgesetzt.
Im Netzwerk 5 wird der Zähler mit M22.2 (SZ) gesetzt.

M22.2 wird einmal am Tag für einen Zyklus 1.

Warum hängt sich der Zähler nur gelegentlich auf?

Bekommt der Zähler nur gelegentlich mit, dass er gleichzeitig gesetzt und rückgesetzt wird?

Zusatz:
Der Baustein, bei dem das Problem auftritt, wird schon seit Jahren in verschiedenen S7-300 und 400 ohne Probleme verwendet.
 
Zuletzt bearbeitet:
Also ich mutmaße jetzt einfach mal, das die 4 Linken Bits in der Variablentabelle einfach Stati des Zählers sind.

Bit15 = Q des Zählers
Bit14 = ???
Bit13 = ZV
Bit12 = ZR

Bit11..0 = die 3 Stellen des Zählwerts (BCD-Codiert)

Wobei die Belegung so natürlich ausschließlich für die Variablentabelle gilt.

Mfg
Manuel
 
Im Netzwerk 4 wird mein ZR mit M22.2 rückgesetzt.
Im Netzwerk 5 wird der Zähler mit M22.2 (SZ) gesetzt.

Das ist doch schon prinzipiell Blödsinn ...

Mit
Code:
U M22.2
L C#100
S Z0
wird der Zähler mit dem Wert 100 vorbelegt, was soll nun also der Blödsinn, den Zähler gleichzeitig rückzusetzen?
Das ist wenigstens absolut nicht notwendig.

Mfg
Manuel
 
Das ist doch schon prinzipiell Blödsinn ...

Mit
Code:
U M22.2
L C#100
S Z0
wird der Zähler mit dem Wert 100 vorbelegt, was soll nun also der Blödsinn, den Zähler gleichzeitig rückzusetzen?
Das ist wenigstens absolut nicht notwendig.

Mfg
Manuel


Da hast du Recht. Das ist mir auch aufgefallen und ich habe das rücksetzen rausgenommen. Das hat, denke ich, das Problem gelöst.

Aber die Frage ist ja jetzt, warum geht es meistens gut und manchmal nicht? Und warum gab es in der Vergangenheit keine Probleme?
 
Hier der Teil um den es geht.

kotzsmiley.gif


[OT]
warum haben wir hier eigentlich immer noch keinen kotzsmilie???
[/OT]
 
kotzsmiley.gif


[OT]
warum haben wir hier eigentlich immer noch keinen kotzsmilie???
[/OT]

Ja, das es hier und da nicht schön ist, haben wir schon festgestellt.

Ich habe nun auch NW 5 in NW 4 eingebracht und den M22.2 am R entfernt.

Trotzdem frage ich mich immernoch, warum es jetzt plötzlich gelegentlich dieses Problem gibt.
 
Da steht ab er Schmiermerker ... :cool:

Sorry, hab ich jetzt selbst übersehen.

M200.3 und M200.4 sind tatsächlich TEMP (den Teil habe ich hier nicht mitgepostet).

Einer der Beiden ist 1, damit der Zähler zählt. M98.5 ist aus dem Taktmerkerbyte.

M22.2 wird um 0 Uhr für einen Zyklus 1.

Es ist ja eben das verwunderliche, dass alles sauber läuft (mehrere Wochen) und plötzlich bei mehreren Zählern dieses Phänomen auftritt.
Wenn ich die Zähler manuell (über VAT) auf einen beliebigen Wert z. B. C#5 setze, ist alles wieder OK, bis plötzlich das gleiche Problem auftritt.
Ich habe immer als erstes einen Bausteinvergleich gemacht. Es hat niemand etwas an dem Programm geändert.
 
Bezüglich den Stil des Bausteins *ACK* Vierlagig.
P.S. :sb5:
Code:
:sb5:
Ich würde einfach sagen, das Setzen und Rücksetzen gleichzeitig ein undefinierter Zustand ist,
von der Betrachtungsweise her ist auch das Ergebnis eher zufällig.

Es gibt viele Sachen die Jahrelang funktionieren, und dann bei der nächsten Bausteinänderung/Firmwareversion nicht mehr,
ist bei solchen Sachen auch nicht wirklich verwunderlicht ...

Mfg
Manuel
 
bei welchem zählerstand tritt denn das "phänomen" auf? irgendwas um die 1000 rum?

Nein.
Der Zähler kann nur einen Wert zischen 37 und 0 haben.

Er soll nur ständig von 37 bis 0 runterzählen und wieder bei 37 anfangen.

Durch das Aufhängen des Zählers zählt der ADD Zyklisch hoch.

Grob runtergerechnet, passiert es um etwa 0 Uhr, wenn M22.2 = 1 ist.
 
Zurück
Oben