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

Ergebnis 1 bis 4 von 4

Thema: Systemzeit in einzelne Bytes schieben

  1. #1
    Registriert seit
    10.07.2014
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,

    Software Tia Professionel V12 SP1

    Ich bin neu in der programmierung, und wollte mal fragen wie ich meine Systemzeit in einzelne Bytes wandeln kann.
    Bisher habe ich mir einen FB erstellen wo ich die Systemzeit auslese (RD_SYST_T), diese ist nun in eine DT Variable abgespeichert.
    Mit dieser variable gehe ich nun auf einen (T_CONV) und wandle die DT Variable in eine (DATE) Variable und (TIME_OF_DAY) Variable um.
    Ich möchte nun das Datum in Bytes schieben:

    2014 soll als Ganzzahl im Byte1 stehen
    07 soll als Ganzzahl im Byte2 stehen
    10 soll als Ganzzahl im Byte3 stehen
    (Datum heute)

    Das gleiche soll mit der Uhrzeit passieren.


    Was ich schon geschaft habe:
    Ich habe über den Instanz DB von meinen neu erstellen FB auf die einzelnen Bytes der DT Variable zugegriffen, und hatte somit den effekt wie wie oben beschieben (alle Daten und Zeiten in jeweils einzelne Bytes) allerdings wurden diese in Hex angezeigt, was mir nicht viel bringt.
    Und finde diese Variante nicht so sauber.
    hätte lieber einen FB wo ich 6 einzelne Bytes als Ausgang bekommte , wo der Wert als Ganzzahl hinterlegt ist.

    So.. und nun bräuchte ich ein wenig hilfe

    Mfg Christian
    Zitieren Zitieren Systemzeit in einzelne Bytes schieben  

  2. #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 Chrisxx8 Beitrag anzeigen
    2014 soll als Ganzzahl im Byte1 stehen
    das wird nicht gehen...

    und hier ein Ansatz aus der S7-classic Welt: Date_and_Time vom OB auslesen
    vielleicht kann deine nicht namentlich benannte CPU ja AWL
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  3. #3
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.190
    Danke
    923
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Zitat Zitat von Chrisxx8 Beitrag anzeigen
    allerdings wurden diese in Hex angezeigt, was mir nicht viel bringt.
    Na, dann schau sie Dir doch einfach in Dezimal an ...

    Ich schätze aber daß Du was anderes meinst:
    Vermutlich erhältst Du die einzelnen Datumsteile in den Bytes als binär codierte Dezimalzahl - Du müßtest diese dann von BCD nach Dezimal umwandeln.
    Wenn Du uns den Typ Deiner CPU verrätst, dann könnte man Dir sogar verraten wie das bei Deiner CPU geht.

    Wie können Sie in STEP 7 (TIA Portal) das Datum und die Uhrzeit für die CPU-Baugruppen der S7-300/S7-400/S7-1200/S7-1500 eingeben, lesen und weiter verarbeiten?
    Wie erfolgt im TIA Portal die Umwandlung von Datentypen für die S7-1200/1500?
    SIMATIC S7-300/400/1200/1500 Vergleichsliste Programmiersprachen


    Zitat Zitat von Chrisxx8 Beitrag anzeigen
    hätte lieber einen FB wo ich 6 einzelne Bytes als Ausgang bekommte , wo der Wert als Ganzzahl hinterlegt ist.
    Kennt Deine CPU denn ein 8-Bit-Ganzzahlformat? Sonst bekommst Du den Inhalt der Ausgangsbytes blos wieder in hex angezeigt und kannst vermutlich auch nicht mit den Werten rechnen ... als Datentyp wäre INT, UINT USINT... möglicherweise besser geeignet.

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  4. #4
    Registriert seit
    14.10.2010
    Ort
    Franken
    Beiträge
    116
    Danke
    47
    Erhielt 40 Danke für 32 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    wenn es eine S7-1200 oder eine S7-1500 CPU ist, kann mann Datum und Uhrzeit auch im Format DTL auslesen. Da sind die einzelnen Daten bereits in einer Struktur hinterlegt.

    Viele Grüße
    Klaus

Ähnliche Themen

  1. Uhrzeit in DB schieben
    Von bastler im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 17.04.2011, 12:06
  2. Doppelwörter Schieben
    Von Waelder im Forum Simatic
    Antworten: 12
    Letzter Beitrag: 08.03.2007, 16:35
  3. einzelne Bit eines Bytes ändern
    Von Farinin im Forum HMI
    Antworten: 10
    Letzter Beitrag: 29.09.2006, 11:24
  4. Daten im DB schieben
    Von otto99 im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 01.03.2006, 11:13
  5. Doppelwort im DB schieben
    Von Revave im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 07.12.2005, 10:49

Lesezeichen

Berechtigungen

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