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

Ergebnis 1 bis 9 von 9

Thema: Datentyp DATE zerlegen

  1. #1
    Registriert seit
    13.06.2008
    Beiträge
    30
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Guten Abend zusammen,

    Steuerung: CPU 315-2 PN/DP
    Software: Simatic Manger V5.5

    kann ich das Datentyp DATE zerlegen das heißt jede einzelne Zahl in ein Byte Transferieren?
    Ich muss das Datum Zahl für Zahl einer Steuerung schicken.

    Danke für eure Hilfe

    Gruß Kuni
    Zitieren Zitieren Datentyp DATE zerlegen  

  2. #2
    Registriert seit
    28.02.2006
    Ort
    Ostsee 5 min zum Strand
    Beiträge
    780
    Danke
    92
    Erhielt 110 Danke für 98 Beiträge

    Standard

    Moin,

    einfach mal nach "DATE zerlegen" suchen

    von Larry Laffer
    Gruß von der Ostsee

    Nordischerjung
    _____________________

    Wenn man seinem Paßbild ähnlich zu sehen beginnt, sollte man schleunigst Urlaub machen. (Vico Torriani, schw. Entertainer)

    Ich habe eine Diät gemacht und fettem Essen und Alkohol abgeschworen - in zwei Wochen verlor ich 14 Tage. (Joe E. Lewis)

  3. #3
    Registriert seit
    13.09.2010
    Beiträge
    2.292
    Danke
    178
    Erhielt 375 Danke für 355 Beiträge

    Standard

    Hallo, ich habe mir mal den letzten Link angeschaut.

    Zitat Zitat von Larry Laffer Beitrag anzeigen
    Nachsatz:
    Auf Anregung von Ingeborg, die da in dem Script noch einen Bug (!!!) entdeckt hat, habe ich das Ganze noch einmal überarbeitet.
    Es arbeitet nun bis zum 31.12.2099 (nach menschlichem Ermessen) fehlerfrei. Danach nicht mehr, da Siemens ab 2099 mit dem DATE-Format einen Fehler macht.
    Mal mit einfachen Worten, obwohl es mich wohl nicht mehr belasten wird :

    Also, welchen Fehler macht "S" ab 2099 ?

    Gruss
    kind regards
    SoftMachine

  4. #4
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.716
    Danke
    398
    Erhielt 2.399 Danke für 1.999 Beiträge

    Standard

    ... weiß ich jetzt so "ad hoc" auch nicht mehr - ist ein bißchen lange her ...

    Ich denke aber mal, dass es damit zu tun hat, dass ja die Anzahl der Tage seit einem Datum x (01.01.1990) dargestellt werden und das in einem INT - der ist dann irgendwann einmal verbraucht.
    Es kannn aber auch sein, dass der DATE selber das nicht darstellen kann - oder nicht richtig ...

    Gruß
    Larry

  5. Folgender Benutzer sagt Danke zu Larry Laffer für den nützlichen Beitrag:

    SoftMachine (21.08.2012)

  6. #5
    Registriert seit
    26.05.2009
    Beiträge
    541
    Danke
    35
    Erhielt 78 Danke für 69 Beiträge

    Standard

    Allerdings wird offiziell der:

    D#2168-12-31
    als Enddatum angegeben. (Dual-Zahl ohne VZ)

    Gruß wolder
    Geändert von wolder (22.08.2012 um 09:24 Uhr)
    Wenn du denkst du denkst, dann denkst du nur, dass du denkst, denn beim Denken der Gedanken, kommt dir der Gedanke, dass das Denken der Gedanken ein gedankenloses Denken ist

  7. #6
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.716
    Danke
    398
    Erhielt 2.399 Danke für 1.999 Beiträge

    Standard

    ... wie schon geschrieben : ist schon eine Weile her.
    Aber wenn von Siemens her der Date das hergibt dann ggf. mein Tool ja auch ...

    Gruß
    Larry

  8. #7
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.181
    Danke
    923
    Erhielt 3.289 Danke für 2.658 Beiträge

    Standard

    Zitat Zitat von SoftMachine Beitrag anzeigen
    Also, welchen Fehler macht "S" ab 2099 ?
    Ich meine, das DATE-Format hat keinen Fehler. Es beinhaltet bis zum höchstzulässigen Datum 31.12.2168 korrekt die Anzahl Tage seit dem 01.01.1990 (es sind 65378 Tage).

    Mit einer Modifikation müßte das DATE-Zerlegungs-Skript von LL auch bis zu D#2168-12-31 funktionieren:
    Code:
       Schaltjahr := 0 ; IF (Jahr MOD 4) = 0 AND (Jahr <> 2100) THEN Schaltjahr := 1 ; END_IF ;
    Möglicherweise hat bei der Skript-Funktion noch niemand den kompletten Wertebereich des DATE-Formates benötigt, weil wenn das DATE aus einem DATE_AND_TIME stammt, dann ist eh' schon beim 31.12.2089 Schluß ...

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  9. Folgender Benutzer sagt Danke zu PN/DP für den nützlichen Beitrag:

    SoftMachine (23.08.2012)

  10. #8
    Registriert seit
    13.09.2010
    Beiträge
    2.292
    Danke
    178
    Erhielt 375 Danke für 355 Beiträge

    Standard

    Danke,
    das schau´ich mir mal genauer an

    Grüsse
    kind regards
    SoftMachine

  11. #9
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.181
    Danke
    923
    Erhielt 3.289 Danke für 2.658 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich habe jetzt leider kein Step7 zur Verfügung, meine aber, diese Programmzeile muß wohl auch noch angepasst werden für Jahre ab 2100:
    Code:
       Anz_SJ := (Diff_J + 2) / 4 ;
    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

Ähnliche Themen

  1. RSLogix5000 Datentyp für Date and Time
    Von Dariusum im Forum Sonstige Steuerungen
    Antworten: 11
    Letzter Beitrag: 26.04.2013, 21:55
  2. Word im FB zerlegen
    Von Willy im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 27.12.2010, 11:43
  3. Format Date zerlegen
    Von online im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 05.11.2010, 13:08
  4. Uhrzeit zerlegen
    Von Hardy81 im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 01.06.2009, 15:43
  5. Datentyp "ANY" in SCL zerlegen
    Von hubert im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 28.02.2006, 09:42

Lesezeichen

Berechtigungen

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