Betriebsstundenzähler S7

Stift1802

Level-1
Beiträge
35
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Zusammen,

für eine Anlage benötige ich mehrer Betriebsstundenzähler. Jetzt habe ich bischen im Netz herum gesucht auch was gefunden nur als ich es getest habe hat es nicht wirklich geklappt. Nun dachte ich mir dann baue ich es mir eben selber. Nach bischen überlegen und herum spielen mit Zählern habe ich aber gemerkt das mein Zähler bei 999 nicht mehr weiter Zählt. Hat jemand eine Idee wie man einen Betriebsstundenzähle programmiert.
Am liebsten wäre mir natürlich FUB wenn AWL wäre super wenn es mir jemand Stück für Stück erklären könnte das ich es auch verstehe.

Vielen Dank im Vorraus.

Stift1802
 
Hast du einen "normalen" Siemenszähler benutz (Zx)?

Wenn ja probiers mal mit:

SFB 0 CTU (Vorwärtszählen mit dem SFB 0)

Findet man in der Standart Libary oder du schreibst eine mathematische Rechenoperation in AWL.
 
Zuletzt bearbeitet:
Hallo IBN-Christian danke für die schnelle Antwort. Dann muss ich mir mal die Zähler anschauen habe noch nie was mit SFB 0 CTU zutun gehabt. allerdings habe ich auch keine Ahnung von einer mathematische Rechenoperation in AWL.

@PN/DP auch dir danke die suche habe ich schon gemacht nur dringt nichts wenn ich es nicht verstehe :) trotzdem danke
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Paule,

langsam versteh ich das gar nicht mehr werde mit den SFB noch das mit dem addieren.

Wie macht ihr denn so Betriebsstundenzähler???

Habe jetzt nochmal in den Beiträgen gesucht aber da sind immer AWL-Cods die ich nicht versteh ich will doch nur ein ganz normaler Betriebsstundenzähler wenn möglich nichts einfach rein kopieren sondern selber programmiert das auch was hängen bleibt :(
 
langsam versteh ich das gar nicht mehr werde mit den SFB noch das mit dem addieren.

Wie macht ihr denn so Betriebsstundenzähler???

Habe jetzt nochmal in den Beiträgen gesucht aber da sind immer AWL-Cods die ich nicht versteh ich will doch nur ein ganz normaler Betriebsstundenzähler wenn möglich nichts einfach rein kopieren sondern selber programmiert das auch was hängen bleibt :(
Also ich mach mir immer meinen eigenen, und dabei passiert folgendes:

Wenn der Antrieb läuft wird vom Sekundentakt die positive Flanke genommen.
Mit diesem Verknüpfungsergebnis (Antrieb & Sekundentakt) wird ein Merker- oder Datenwort um eins hoch gezählt.
Wenn es ein Merkerwort ist muss es auf jeden Fall remanent sein.
(Das ganze wird dann später in einen FB gepackt und mit einer Stat-Var) gezählt. Für den Anfang aber erst mal vergessen)
Wurden 3600 Sekunden gezählt wird der Betriebsstundenzähler der auch wieder ein Merker- oder ein Datenwort ist um eins erhöht und der Sekundenzähler wird wieder auf Null zurückgesetzt.
Somit wurde eine Stunde gezählt.

Vielleicht schaust Du Dir jetzt mit dieser Beschreibung irgendeinen Code noch mal an (werden alle ähnlich sein) und schreibst dann an welcher Stelle es nicht klar ist.
 
Hallo Stift,

schreckt Dich die Vorstellung vom Selber-Suchen und Selber-Denken ab?

In dem von mir verlinkten Thema ist gleich im Beitrag #6 ein FUP-Beispiel eines Betriebsstundenzählers.
Der benötigt gerade mal 1 Netzwerk, um Betriebs-Sekunden zu zählen. Teile das Zählergebnis durch 3600,
dann hast Du Betriebs-Stunden. Wenn Du kein Wartungsintervall brauchst, dann laß das einfach weg.
Und Du brauchst als Zähltakt noch einen Sekundenimpuls, der genau 1 Zyklus lang ist.

Dort im Beitrag #7 habe ich ausführlich in Worten erklärt, wie ein Betriebsstundenzähler funktioniert,
das bräuchtest Du nur in FUP umzusetzen.

Nun dachte ich mir dann baue ich es mir eben selber. Nach bischen überlegen und herum spielen mit Zählern habe ich aber gemerkt das mein Zähler bei 999 nicht mehr weiter Zählt. Hat jemand eine Idee wie man einen Betriebsstundenzähle programmiert.
Am liebsten wäre mir natürlich FUB wenn AWL wäre super wenn es mir jemand Stück für Stück erklären könnte das ich es auch verstehe.
Du hast also schon was programmiert und irgendwas gezählt. Dein Problem ist doch eigentlich nur noch,
daß Dein Zähler bei 999 stehen bleibt und nicht weiterzählt. Nimm also den FUP-Zähler aus dem Beitrag #6
in Dein bestehendes Programm und Dein Betriebsstundenzähler dürfte fertig sein.

Sollte der dann nicht wie gewünscht funktionieren, dann stell hier rein, was Du bis dahin programmiert
hast und wir finden die letzten Kleinigkeiten, die Deinem Ziel entgegenstehen.

Programme in FUP kann man hier im Forum nur als Screenshot einstellen, oder vorher in Step7 die Ansicht
auf AWL umstellen und den AWL-Code hier in [CODE]-Tags einfügen (der #-Button im Beitragseditor).


Gruß
Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Forums-Suche sucht nicht nach "Betriebsstundenzähler"

Liebe Forums-Administratoren,

unsere Forums-Suche weigert sich, nach "Betriebsstundenzähler" zu suchen. :ROFLMAO:
Forum-Suche Betriebsstundenzähler.gif

Könnt Ihr da vielleicht etwas machen?
Der arme Stift und andere interessierte User können so leider nicht nach dem häufigen Thema
"Betriebsstundenzähler" suchen, selbst wenn sie wollten.
Deshalb hatte ich dem Stift auch empfohlen, nach "Betriebsstunden" zu suchen. Das geht. ;)

Danke!
Harald
 
Also ich mach mir immer meinen eigenen, und dabei passiert folgendes:

Wenn der Antrieb läuft wird vom Sekundentakt die positive Flanke genommen.
Mit diesem Verknüpfungsergebnis (Antrieb & Sekundentakt) wird ein Merker- oder Datenwort um eins hoch gezählt.
Wenn es ein Merkerwort ist muss es auf jeden Fall remanent sein.
(Das ganze wird dann später in einen FB gepackt und mit einer Stat-Var) gezählt. Für den Anfang aber erst mal vergessen)
Wurden 3600 Sekunden gezählt wird der Betriebsstundenzähler der auch wieder ein Merker- oder ein Datenwort ist um eins erhöht und der Sekundenzähler wird wieder auf Null zurückgesetzt.
Somit wurde eine Stunde gezählt.

Vielleicht schaust Du Dir jetzt mit dieser Beschreibung irgendeinen Code noch mal an (werden alle ähnlich sein) und schreibst dann an welcher Stelle es nicht klar ist.
Hallo Paule!!

das habe ich auch gedacht, aber bei mir geht nicht!was habe ich falsch gemacht!????


nw2:
UN #Reset // alle Werte auf Null setzen
SPB m000
L 0
T #Sek
T #Min
T #Std

m000: U #Takt // Takt M0.5 1 Sekunde
U #Start/stop //Start und Stop Befehl
L #Sek
L 1 // Sekunden um 1 erhoehen
+I
T #Sek
//;
L 60
>=I
SPB M001

//; // --------------------------------

M001: L 0
T #Sek
L #Min
L 1 // Minuten um 1 erhoehen
+I
T #Min
L 60
>=I
SPB M002
//; // --------------------------------
M002: L 0
T #Min
L #Std
L L#1 // Tage um 1 erhoehen
+D
T #Std
// --------------------------------
 
hiert fehlt ein sprung
Code:
*
m000: U #Takt // Takt M0.5 1 Sekunde
      U #Start/stop //Start und Stop Befehl
      L #Sek



und hier ein alternativer SPA
Code:
*
>=I 
SPB M001

//; // --------------------------------

M001: L 0
 
Zuviel Werbung?
-> Hier kostenlos registrieren
hiert fehlt ein sprung
Code:
*
m000: U #Takt // Takt M0.5 1 Sekunde
      U #Start/stop //Start und Stop Befehl
      L #Sek



und hier ein alternativer SPA
Code:
*
>=I 
SPB M001
 
//; // --------------------------------
 
M001: L 0

m000: U #Takt // Takt M0.5 1 Sekunde
U #Start/stop //Start und Stop Befehl
L #Sek
SPB ENDZ



>=I
SPB M001
SPA ENDZ

ENDZ: NOP 0

So meinst du???
Danke!

Ich hab es probiert, aber die Zeit läuft sehr schnell und ohne das der Start Befehl betätigt ist,Warum???
Danke
 
Zuletzt bearbeitet:
kopfschüttel...

der_iwan hatte heut die selben probleme: http://sps-forum.de/showthread.php?t=45854


UUUHH!! Sorry! ich bin heute nicht so Schlau!

Wo habe ich den Fehler???Konntest du mir bitte helfen??

Und Wenn ich Reset betätigt, werden Alle WErte auf Null gesetzt ausser Sek auf 1,warum??
Danke!!

Ich habe schon geschafft!!der Fehler war der Sprung...

UN #Reset // alle Werte auf Null setzen
SPB m000
L 0
T #Sek
T #std
T #Min
m000: U #Takt // Takt
FP #FP
U #Start_Stop
SPBN ENDZ
//; // --------------------------------
//;
L #Sek
L 1 // Sekunden um 1 erhoehen
+I
T #Sek
//;
L 60
>=I
SPB M001
SPA ENDZ
//; // --------------------------------
M001: L 0
T #Sek
L #Min // Minuten um 1 erhoehen
L 1
+I
T #Min
//;
L 60
>=I
SPB M002
SPA ENDZ
//; // --------------------------------
M002: L 0
T #Min
L #std
L L#1 // Stunden um 1 erhoehen
+D
T #std
//; // --------------------------------
//;
ENDZ: NOP 0
 
Zuletzt bearbeitet:
es war kein sarkasmus.

wiki schrieb:
Der Begriff Sarkasmus bezeichnet beißenden, bitteren Spott und Hohn.

es war rhetorische ironie

wiki schrieb:
Die einfachste Form der rhetorischen Ironie besteht darin, das Gegenteil von dem zu sagen, was man meint.

aber

Volker Pispers schrieb:
...das kann man doch alles nachlesen! Lesen muß man können, das ist das Hauptproblem ...
 
wie weit zählt den ein sfb 0 ?

mir ist auserdem aufgefallen das wenn der baustein neu geladen wird seine werte wieder auf 0 gesetzt werden kann man dass irgendwei schreibschützen oder anders lösen ? mit einem PW?
 
Zurück
Oben