Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 3 von 3 ErsteErste 123
Ergebnis 21 bis 30 von 30

Thema: Laufzeit bestimmen auch wenn Steuerung abgeschaltet ist

  1. #21
    Registriert seit
    19.07.2010
    Beiträge
    1.288
    Danke
    213
    Erhielt 267 Danke für 233 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich würde den Einlagerzeitpunkt von der aktuellen Systemzeit subtrahieren, dann bekommst du die Einlagerdauer. Diese wäre dann leicht mit der Vorgabe zu vergeichen.

    Mit welchem Datentyp berechnest du deine Schleife? Time kanns ja nicht sein.

    Beispiel:
    Aktuelle Zeit : 27.3.2013, 12:39:00 --> Date als Int dargestellt 8486; TOD als DINT L#45540000

    Einlagerzeitpunkt: 13.01.2013, 17:03:00 --> Date als Int dargestellt 8047; TOD als DINT L#L#61380000
    also streichst du die letzten drei stellen der TODs
    45540s m 61380s= -15840s

    8486t - 8047t = 439t

    439 * 24 * 60 * 60 = 37929600s

    37929600s - 15840s = 37913760s Einlagerdauer...

    Und damit kannst du was anfangen. Mit Vergleicher prüfen ob das Verfallsdatum überschritten ist oder suchen wer am längsten liegt....
    mfG Aventinus

  2. #22
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.709
    Danke
    398
    Erhielt 2.397 Danke für 1.997 Beiträge

    Standard

    Zitat Zitat von Aventinus Beitrag anzeigen
    Mit welchem Datentyp berechnest du deine Schleife? Time kanns ja nicht sein.
    Doch ... hat er geschriben. Er benutzt den FC1 aus der Standard-Bibliothek (Add Time to DT). Und da TIME ja, wie du ja schon beschrieben hast, in seiner Größe ein wenig eingeschränkt ist, macht er es als Schleife ...
    Ich würde es dann in etwa so machen, wie du es beschrieben hast. Mir wäre es hier auch wichtiger zu wissen, wie lange ich noch kann.
    Aber das muß der TE für sich entscheiden ...

    Gruß
    Larry

  3. #23
    Registriert seit
    14.01.2013
    Beiträge
    45
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Zitat Zitat von Larry Laffer Beitrag anzeigen
    Doch ... hat er geschriben. Er benutzt den FC1 aus der Standard-Bibliothek (Add Time to DT). Und da TIME ja, wie du ja schon beschrieben hast, in seiner Größe ein wenig eingeschränkt ist, macht er es als Schleife ...
    Ich würde es dann in etwa so machen, wie du es beschrieben hast. Mir wäre es hier auch wichtiger zu wissen, wie lange ich noch kann.
    Aber das muß der TE für sich entscheiden ...

    Gruß
    Larry
    Hey Larry
    mit einem FC 34 (Libary) mehr, weiß ich auch die Restlaufzeit
    also denke ich die Lösung ist gar nicht so schlecht

  4. #24
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.709
    Danke
    398
    Erhielt 2.397 Danke für 1.997 Beiträge

    Standard

    ... das deine Lösung schlecht ist sollte auch nicht rüberkommen ...
    Ich spreche jetzt mal für Aventinus mit - wir wollten halt nur mögliche Alternativen aufzeigen ... (das hat dann natürlich schnell den Touch, Bekehren zu wollen ...)

    Gruß
    Larry

  5. Folgende 2 Benutzer sagen Danke zu Larry Laffer für den nützlichen Beitrag:

    Aventinus (27.03.2013),themenstarter234 (28.03.2013)

  6. #25
    Registriert seit
    14.01.2013
    Beiträge
    45
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Zitat Zitat von Larry Laffer Beitrag anzeigen
    ... das deine Lösung schlecht ist sollte auch nicht rüberkommen ...
    Ich spreche jetzt mal für Aventinus mit - wir wollten halt nur mögliche Alternativen aufzeigen ... (das hat dann natürlich schnell den Touch, Bekehren zu wollen ...)

    Gruß
    Larry
    Hey zusammen
    ich hatte auch nicht das Gefühl das meine Lösung schlecht geredet wird.

    Die Möglichkeit von Aventinus habe ich erst jetzt verstanden. Das werden wir morgen mal ausprobieren.
    Was ich gerade noch bei meiner Variante erweitert habe:
    Die Eingabe der Alterung ist immer noch INT ich kann aber noch die Einheit ändern [m] oder [h] oder [d]
    dieses werte ich vor dem loop aus und addiere dann entweder T#1m oder T#1h oder T#1d
    Das funzt auch.

    Vielen Dank aber für eure Bemühungen und Tips. [Daumen hoch]

  7. #26
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.745
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Hier gibts einen fc der dir aus der zeit ein unixtimestamp macht:
    S7 und UNIX-Timestamp

    Mit dem unixtimestamp kannst du dann einfach subdrahieren, da dieser die sekunden sei 1.1.1970 enthält!

  8. Folgender Benutzer sagt Danke zu Jochen Kühner für den nützlichen Beitrag:

    Aventinus (28.03.2013)

  9. #27
    Registriert seit
    06.10.2003
    Beiträge
    3.403
    Danke
    447
    Erhielt 502 Danke für 406 Beiträge

    Standard

    Zitat Zitat von themenstarter234 Beitrag anzeigen
    ..Hier kann es aber auch passieren, das die Anlage einen Monat (größer 24Tage) ausgeschaltet ist..
    Wie lange tickt denn eigentlich die Uhr weiter, wenn die Spannungsversorgung abgeschaltet ist? Um welche CPU geht es?
    Es gibt viel mehr Leute, die freiwillig aufgeben, als solche, die echt scheitern.
    Henry Ford

  10. #28
    Registriert seit
    14.01.2013
    Beiträge
    45
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard

    @Onkel Dagobert
    Wir haben eine CPU 314C-2 PN/DP; Aber wie lange die Uhr weiter "tickt" kann ich dir auch nicht sagen.


    @Aventinus und Larry

    wir haben das Beispiel von Aventinus mal nachgestellt und nun doch endlich verstanden was ihr die ganze Zeit in euren Beiträgen gemeint habt. Diese Variante ist super.
    Knackpunkt war dass, das DATE als INT dargestellt die Tage seit 1.1.1990 beschreibt und der TOD die Zeit seit 00:00:00
    Wenn das begriffen wurde, ist es ganz einfach.
    Ich denke das wir es noch häufiger einsetzen werden.

    Nochmals [Daumen hoch] an euch.

    mfg Themenstarter

  11. #29
    Registriert seit
    19.07.2010
    Beiträge
    1.288
    Danke
    213
    Erhielt 267 Danke für 233 Beiträge

    Standard

    Freut mich wenn wir dir helfen konnten.
    mfG Aventinus

  12. Folgender Benutzer sagt Danke zu Aventinus für den nützlichen Beitrag:

    themenstarter234 (28.03.2013)

  13. #30
    Registriert seit
    01.10.2007
    Ort
    Waiblingen
    Beiträge
    3.317
    Danke
    767
    Erhielt 536 Danke für 419 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Onkel Dagobert Beitrag anzeigen
    Wie lange tickt denn eigentlich die Uhr weiter, wenn die Spannungsversorgung abgeschaltet ist? Um welche CPU geht es?
    Zitat Zitat von themenstarter234 Beitrag anzeigen
    @Onkel Dagobert
    Wir haben eine CPU 314C-2 PN/DP; Aber wie lange die Uhr weiter "tickt" kann ich dir auch nicht sagen.
    sechs Wochen.

  14. Folgender Benutzer sagt Danke zu Perfektionist für den nützlichen Beitrag:

    themenstarter234 (28.03.2013)

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 16.07.2012, 18:09
  2. CoDeSys, Zeit eines Timers durch Variable bestimmen.
    Von Junior im Forum CODESYS und IEC61131
    Antworten: 6
    Letzter Beitrag: 13.03.2012, 20:27
  3. Antworten: 1
    Letzter Beitrag: 23.07.2011, 10:58
  4. Bekommt ihr auch zur Zeit so schlecht Komponenten?
    Von rostiger Nagel im Forum Stammtisch
    Antworten: 25
    Letzter Beitrag: 21.03.2011, 09:01
  5. Wert in einer bestimmen Zeit hochzählen
    Von CheGuevara83 im Forum Programmierstrategien
    Antworten: 8
    Letzter Beitrag: 07.03.2008, 07:04

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •