Uhrzeit auslesen und vergleichen

Sch.junior

Level-1
Beiträge
21
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich habe mich bereits hier im Forum informiert und auch einige Sache ausprobiert. Leider alles ohne Erfolg.

Ich habe einen Betriebsstundenzähler programmiert. Dieser funktioniert ohne Probleme. Nur muss ich den Zähler zum Schichtwechsel wieder zurücksetzen.
Demnach um 06:00, 14:00 und um 22:00.

Ich habe schon Zeitschaltuhren ausprobiert. Wie kann ich die Uhrzeit aus dem SFC 1 auslesen und in andere Bausteine zum Vergleich übertragen?
Es soll quasi der Vergleich Uhrzeit mit den oben genannten Zeiten verglichen werden und zu dem Zeitpunkt ein Signal ausgegeben werden.

Bin für jede Hilfe dankbar.
 
entweder so im ob1 aufrufen
Code:
      CALL  "DT_TOD"
       IN     :=#OB1_DATE_TIME
       RET_VAL:=MD400
oder woanders und mit der sfc1 dt lesen und dann fc8 nehmen
 
Wenn Du Dir mal das DT-Format in Byte's aufgelöst und einzeln anschaust, kannst Du direkt auf die Stunde und Minute zugreifen! Einfach mal die in der Variablen-Tabelle byteweise auflisten und ansehen.

Ich habe leider Step-7 grad zur Hand, aber so in etwa ist das DT-Format aufgebaut und man kann direkt drauf zugreifen:

Byte 1 = Tag
Byte 2 = Monat
Byte 3 = Jahr
Byte 4 = Stunde
Byte 5 = Minute
Byte 6 = Sekunde
 
Zuletzt bearbeitet:
Hallo,
ich habe mich bereits hier im Forum informiert und auch einige Sache ausprobiert. Leider alles ohne Erfolg.

Ich habe einen Betriebsstundenzähler programmiert. Dieser funktioniert ohne Probleme. Nur muss ich den Zähler zum Schichtwechsel wieder zurücksetzen.
Demnach um 06:00, 14:00 und um 22:00.

Ich habe schon Zeitschaltuhren ausprobiert. Wie kann ich die Uhrzeit aus dem SFC 1 auslesen und in andere Bausteine zum Vergleich übertragen?
Es soll quasi der Vergleich Uhrzeit mit den oben genannten Zeiten verglichen werden und zu dem Zeitpunkt ein Signal ausgegeben werden.

Bin für jede Hilfe dankbar.

Schau mal hier:
http://www.sps-forum.de/showthread.php?t=15738&highlight=schaltuhr
 
Zuviel Werbung?
-> Hier kostenlos registrieren
ich habe das nun mit dem auslesen und vergleichen hinbekommen.
nun überspringt die uhrzeit aber einfach meine eingestellte zeit.
liegt es daran dass auch die ms gezählt werden und diese nicht schnell genug übertragen werden?kann man die zeiten bis auf sekunden, minuten und stunden reduzieren?
 

Anhänge

  • fup.JPG
    fup.JPG
    18,2 KB · Aufrufe: 352
nun überspringt die uhrzeit aber einfach meine eingestellte zeit.
Du hast noch nicht sonderlich viel mit SPS zu tun gehabt, oder?
sagt Dir der Begriff "Zykluszeit" etwas?
Du darfst die Millisekunden natürlich nicht mit auswerten, außer, Du schaffst es, so zu programmieren, dass Dein Programm in einer Millisekunde durchlaufen wird.
Was könnte man machen, wenn man eine Zahl braucht, die nur noch ein Tausendstel der ursprünglichen Zahl ist?
 
Wie kannst du TOD in einer CMP Funktion Einfügen ? Bei mir kommt dort nur eine Fehlermeldung, dass die Typen nicht passen würden
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Auch wenn es schon eine Zeit her ist das hier einer geschrieben hat, möchte ich mich bedanken für den ganzen Thread und besonders für volker seinen Beitrag #11. Mit dem habe ich endlich den "Durchbruch" geschafft was diese eine Thematik (Zeiten vergleichen) betrifft.
Es bleiben noch genug Baustellen für mich übrig, aber Steinchen für Steinchen wird ein Haus gebaut.

Gruß
 
Zurück
Oben