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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: Date_and_Time vom OB auslesen

  1. #1
    Registriert seit
    14.02.2006
    Beiträge
    61
    Danke
    21
    Erhielt 4 Danke für 3 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo, habe ein Problem was ich mir nicht erklären kann. Lese die aktuelle Uhrzeit vom OB 1 aus unter den Lokaldaten und es funktioniert auch alles bis auf den Wochentag. Habe keine Ahnung wieso der nicht richtig ausgelesen wird.

    Die Standartdeklaration von Siemens im OB 1:
    OB1_DATE_TIME Adresse:12.0

    Das ist der Code dafür:
    L LB 12 //Jahr
    BTI
    T "Jahr"

    L LB 13 //Monat
    BTI
    T "Monat"

    L LB 14 //Tag
    BTI
    T "Tag"

    L LB 15 //Stunde
    BTI
    T "Stunde"

    L LB 16 //Minute
    BTI
    T "Minute"

    L LB 17 //Sekunde
    BTI
    T "Sekunde"

    L LB 18 //Millisekunden
    BTI
    T "Millisekunden"

    L LB 19 //Wochentag
    BTI
    T "Wochentag"

    das Problem ist das der Wochentag von 0-100 (INT) läuft???
    Habe es auch schon mit dem READ_CLK versucht und da ist es das selbe- irgendwie komme ich drauf auf diesen Fehler.

    Der Aufbau des Formats ist ja: Byte n ist Jahr, Byte n+1 ist das Monat und Byte n+7 ist der Wochentag usw...
    Zitieren Zitieren Date_and_Time vom OB auslesen  

  2. Folgender Benutzer sagt Danke zu taucherd für den nützlichen Beitrag:

    win98 (14.09.2009)

  3. #2
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    Zitat Zitat von taucherd Beitrag anzeigen
    das Problem ist das der Wochentag von 0-100 (INT) läuft???
    und du bist dir sicher, dass deine anzeige INT ist?

    bei S fängt die woche sonntag mit 1 an und endet samstag mit 7
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  4. #3
    Registriert seit
    14.02.2006
    Beiträge
    61
    Danke
    21
    Erhielt 4 Danke für 3 Beiträge

    Standard

    Ja meine Variablen sind als INT definiert, hier eine Abbildung der Sysmboltabelle.
    Wie gesagt es funktioniert auch nicht mit dem SFC1- der macht das selbe.

    Sysmboltabelle

    Jahr MW 30 INT
    Monat MW 32 INT
    Tag MW 34 INT
    Stunde MW 36 INT
    Minute MW 38 INT
    Sekunde MW 40 INT
    Millisekunden MW 42 INT
    Wochentag MW 44 INT

  5. #4
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    benutze den FC7 DT_DAY aus den IEC-funktionen, der funktioniert sicher ...
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  6. #5
    Registriert seit
    08.04.2008
    Ort
    Köln
    Beiträge
    844
    Danke
    39
    Erhielt 244 Danke für 199 Beiträge

    Standard

    Hallo Taucherd,

    im letzte Byte im DATE_AND_TIME steht auch noch die letzte Stelle der ms BCD-Codiert.
    Wenn Du mit
    Code:
    SLW 12
    SRW 12
    die ms rausschiebst hast Du dann im AKKU1 den Wochentag von 1-7 (INT).


    Grüße
    Gebs

  7. Folgender Benutzer sagt Danke zu Gebs für den nützlichen Beitrag:

    vierlagig (09.12.2008)

  8. #6
    Registriert seit
    14.02.2006
    Beiträge
    61
    Danke
    21
    Erhielt 4 Danke für 3 Beiträge

    Standard

    Steht die letzte Stelle von den Millisekunden vielleicht im Byte n+7 an erster Stelle? und der Wochentag an zweiter Stelle? denn das würde stimmen 3=Dienstag

    Und laut Siemens steht im Byte n+6 die Milisekunden von 000...999 als BCD, wie soll das gehen? dafür ist ein byte ein bischen zu klein, oder...

  9. #7
    Registriert seit
    08.04.2008
    Ort
    Köln
    Beiträge
    844
    Danke
    39
    Erhielt 244 Danke für 199 Beiträge

    Standard

    für die ms mit 3 Stellen BCD-Codiert brauchst Du auch 3 Nibble.
    d.h. Byte 6 linkes Nibble : 100er -Stelle (BCD)
    Byte 6 rechtes Nibble: 10er-Stelle (BCD)
    Byte 7 linkes Nibble: 1er-Stelle (BCD)
    Byte 7 rechtes Nibble: Wochentag (INT)

    Grüße
    Gebs

  10. Folgender Benutzer sagt Danke zu Gebs für den nützlichen Beitrag:

    taucherd (09.12.2008)

  11. #8
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    ich würde einfach die IEC-funktionen

    Zusammenfassen DATE und TIME_OF_DAY zu DT D_TOD_DT FC 3
    Extrahieren DATE aus DT DT_DATE FC 6
    Extrahieren des Wochentags aus DT DT_DAY FC 7
    Extrahieren TIME_OF_DAY aus DT DT_TOD FC 8

    verwenden, das spart ne menge nerven
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

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

    taucherd (09.12.2008)

  13. #9
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    so sieht es aus, wenn man sich an Gebs vorgaben hält - danke dafür auch von mir.

    Code:
    *
          L     LW    18
          SRW   4
          BTI   
          T     "Millisekunden"
    
          L     LW    18
          SLW   12
          SRW   12
          BTI   
          T     "Wochentag"
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  14. #10
    Registriert seit
    18.04.2005
    Ort
    Fast an der Schweiz
    Beiträge
    856
    Danke
    208
    Erhielt 108 Danke für 76 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi

    ich hab es mit folgendem Link gemacht :

    http://support.automation.siemens.co...elled=&lang=de

    ich hoff er funktioniert.

    Da kannst Du 3 Beispiele benutzten mit anleitung die sind sehr einfach gehalten. Incl. WCF Bilder. Da ist alles ausprogramiert.

    Gruss Wälder
    Code:
     RTFM ! Read The F..ing Manual
    Arbeitet mit : Step7 V5.5 SPx / WinCC Flex 2008 SPx / Intouch / Winmod /TIA V14 (abgestürzt...Zitat der Hotline : "Sie dürfen nicht so viel rumdrücken....." TIA, so isses halt)

    ║▌║█║║▌║█║ Warnung! Falscher oder fehlender Kaffee - Benutzer angehalten --(◔̯◔)--
    1334566890111

Ähnliche Themen

  1. FC mit Date_And_Time
    Von Heinz2011 im Forum Simatic
    Antworten: 14
    Letzter Beitrag: 07.02.2011, 22:28
  2. String-->date_and_time
    Von rolusch im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 14.12.2009, 09:16
  3. Date_and_time
    Von uz71 im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 31.03.2006, 15:05
  4. Date_And_Time
    Von pm im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 17.01.2005, 12:18
  5. Date_and_time
    Von Anonymous im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 06.10.2003, 16:05

Lesezeichen

Berechtigungen

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