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

Ergebnis 1 bis 4 von 4

Thema: sfc1

  1. #1
    Anonymous Gast

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    hallo leute

    ich habe mit dem sfc1 baustein datum und uhrzeit ausgelesen. wie kann man beim datum den monat und tag einzeln auslesen. das ich dann jeweils ein wert für den monat und ein wert für den tag habe?
    Zitieren Zitieren Gelöst: sfc1  

  2. "
    Zitat Zitat von verona
    das von haraldg versteh ich nicht.
    wieso nicht? ist doch eigentlich klar.

    rufe sfc1 auf und schreibe an den cdt-ausgang eine temporäre variable vom ty date_and_time.
    eine date_and_time variable belegt 8 byte.
    schau dir auch mal den fc6-8 aus dem iec functionblocks an.

    Code:
    //datum und uhrzeit lesen
          CALL  "READ_CLK"
           RET_VAL:=#ret_val1
           CDT    :=#clk
          NOP   0
    
    
    //wenn clk deine 1. temp-var ist belegt #clk die lokalbytes 0-7
    
          L     LB     0                    //Byte n Jahr 
          T     MB    10
    
          L     LB     1                    //Byte n+1 Monat 
          T     MB    11
    
          L     LB     2                    //Byte n+2 Tag 
          T     MB    12
    
          L     LB     3                    //Byte n+3 Stunde 
          T     MB    13
    
          L     LB     4                    //Byte n+4 Minute 
          T     MB    14
    
          L     LB     5                    //Byte n+5 Sekunde 
          T     MB    15
    
          L     LB     6                    //Byte n+6 höchstwertige Ziffern der Millisekunden 
          T     MB    16
    
          L     LB     7                    //Byte n+7 linke 4 Bits: niederwertigen Ziffern der Millisekunden (?) 
          T     MB    17
    "


  3. #2
    Registriert seit
    17.04.2004
    Beiträge
    28
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Servus!

    Laut S7-Hilfe:
    Byte n Jahr
    Byte n+1 Monat
    Byte n+2 Tag
    Byte n+3 Stunde
    Byte n+4 Minute
    Byte n+5 Sekunde
    Byte n+6 höchstwertige Ziffern der Millisekunden
    Byte n+7 linke 4 Bits: niederwertigen Ziffern der Millisekunden (?)
    rechte 4 Bits: Wochentag (1= Sonntag, 2=Montag, (?)
    3= Dienstag...)

    Also, wenn Du das Datum und die Uhrzeit in DB10 ab Adresse 0.0
    abgelegt hast dann steht im DB10.dbb0 das Jahr, im DB10.dbb1 der Monat, etc.

    Im Zweifelsfall hilft die Variablentabelle Online
    mit den einzelnen Bytes weiter.

    Hoffe das hilft Dir für's erste weiter.

    Gruß, Harald

  4. #3
    Registriert seit
    08.09.2004
    Beiträge
    18
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    hallo

    möchte möchte dem gast anschließen. bin jetzt seit 3 tagen dabei irgendwie das datum und die uhrzeit aus dem sfc1 auszulesen. bekomme es aber nicht vernünfitg hin. möchte gerne das ich z.b. ein paar merker haben wo dann einzeln das jahr, montag, tag,stunde und minute drin steht. am besten wenn die das dezimal ausgeben. kann mir jemand ein beispiel geben? das von haraldg versteh ich nicht. vielleicht reicht ja auch ein ansatz. bin echt am verzweifeln.

  5. #4
    Registriert seit
    20.06.2003
    Ort
    Sauerland.NRW.Deutschland
    Beiträge
    4.850
    Danke
    78
    Erhielt 800 Danke für 543 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von verona
    das von haraldg versteh ich nicht.
    wieso nicht? ist doch eigentlich klar.

    rufe sfc1 auf und schreibe an den cdt-ausgang eine temporäre variable vom ty date_and_time.
    eine date_and_time variable belegt 8 byte.
    schau dir auch mal den fc6-8 aus dem iec functionblocks an.

    Code:
    //datum und uhrzeit lesen
          CALL  "READ_CLK"
           RET_VAL:=#ret_val1
           CDT    :=#clk
          NOP   0
    
    
    //wenn clk deine 1. temp-var ist belegt #clk die lokalbytes 0-7
    
          L     LB     0                    //Byte n Jahr 
          T     MB    10
    
          L     LB     1                    //Byte n+1 Monat 
          T     MB    11
    
          L     LB     2                    //Byte n+2 Tag 
          T     MB    12
    
          L     LB     3                    //Byte n+3 Stunde 
          T     MB    13
    
          L     LB     4                    //Byte n+4 Minute 
          T     MB    14
    
          L     LB     5                    //Byte n+5 Sekunde 
          T     MB    15
    
          L     LB     6                    //Byte n+6 höchstwertige Ziffern der Millisekunden 
          T     MB    16
    
          L     LB     7                    //Byte n+7 linke 4 Bits: niederwertigen Ziffern der Millisekunden (?) 
          T     MB    17
    .
    mfg Volker .......... .. alles wird gut ..

    =>Meine Homepage .. direkt zum Download

    Meine Definition von TIA: Total Inakzeptable Applikation

Ähnliche Themen

  1. Probleme mit dem SFC1
    Von Magni im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 19.08.2014, 22:32
  2. Aufruf in SCL SFC1
    Von Carsten77 im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 23.05.2011, 11:38
  3. SFC1 und Zeitformate
    Von mariob im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 12.05.2011, 12:13
  4. S7-300 / SFC1 einfügen...
    Von pinolino im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 06.04.2009, 07:43
  5. Sfc1
    Von crazygerman im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 09.01.2008, 15:00

Lesezeichen

Berechtigungen

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