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

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

Thema: Wöchentliche Umschaltung

  1. #1
    Registriert seit
    12.12.2007
    Beiträge
    2
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    hallo helfer

    ich habe volgendes problem:
    ich soll mit einer CPU 312 eine pumpen-steuerung realieren. ich habe 2 pumpen, welche abwechslungsweise je eine woche laufen sollen. die umschaltung von pumpe 1 auf pume 2 (oder umgekehrt) sollte immer montags um 00.00 Uhr erfolgen.

    da ich lediglich ein paar einfache steuerungen in FUP (und, oder und ein paar timer) programiert habe, haben mir die AWL-beispiele in diesem forum nicht sehr geholfen...
    ich wollte dies zuerst über eine ausschaltverzögerung löse, aber die gehen ja bei der s7 ja nur bis 2h43min...

    gibt es da eine eifache lösung? (timer mit grösseren wertebereichen, oder so?)

    mfg
    freizeitphilosoph
    Zitieren Zitieren Wöchentliche Umschaltung  

  2. #2
    Registriert seit
    18.09.2004
    Ort
    Münsterland/NRW
    Beiträge
    4.718
    Danke
    729
    Erhielt 1.158 Danke für 969 Beiträge

    Standard

    Wenn du immer montags umschalten sollst, dann lese doch die
    aktuelle Uhrzeit aus und vergleiche auf Tag und Uhrzeit
    Oder suche hier im Forum mal nach Zeitschaltuhr
    Geändert von marlob (13.12.2007 um 11:32 Uhr)

  3. #3
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.222
    Danke
    533
    Erhielt 2.697 Danke für 1.949 Beiträge

    Standard

    Mit dem SFC1 oder in den Variablen des OB1 kannst du die aktuellen Datumsdaten auslesen, auch den Wochentag. Diesen überwachen, auch Änderung (Flanke) von So zu Mo (Ich glaube von 1 nach 2) und damit dann die Pumpe umschalten.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  4. #4
    Registriert seit
    18.09.2004
    Ort
    Münsterland/NRW
    Beiträge
    4.718
    Danke
    729
    Erhielt 1.158 Danke für 969 Beiträge

    Standard

    Und hier findest du noch den Aufbau des Datentypes Date_and_Time
    den du als Rückgabewert von SFC1 bekommst

  5. #5
    Registriert seit
    24.05.2006
    Beiträge
    234
    Danke
    14
    Erhielt 77 Danke für 57 Beiträge

    Standard

    Für genau solche Zwecke, also einmalige oder wiederkehrende Zeitpunkte gibt es die sogenannten Uhrzeitalarm-OBs (OB10-OB17).
    Die 312 hat davon zwar nur einen, aber das sollte ja ausreichen.

    Die Einstellungen für einen Uhrzeit-OB (in diesem Falle OB10) können entweder in der HW-Konfig vorgenommen werden oder programmtechnisch mit den System-Funktionen SFC 28 bis SFC 31
    · stellen (SFC 28 "SET_TINT")

    · stornieren (SFC 29 "CAN_TINT")

    · aktivieren (SFC 30 "ACT_TINT")

    · abfragen (SFC 31 "QRY_TINT").

    Ausführliche Info hierzu findet sich z.B. im Simatic Manager in der Hilfe für OBs und SFCs.

  6. #6
    Registriert seit
    03.11.2006
    Ort
    Niedersachsen
    Beiträge
    1.126
    Danke
    170
    Erhielt 303 Danke für 259 Beiträge

    Standard

    ich hatte da mal einen FC den man im OB1 aufruft, OB1_Date_Time übergeben und schwupps... Jahr, Monat, Tag, Stunde, Minute, Sekunde und Wochentag gab es als INT zurück.

    ...nur mal so als denkanstoss.
    Gruß
    crash

    Ich bin nicht bekloppt,
    ich bin verhaltensoriginell!

  7. #7
    Registriert seit
    03.01.2006
    Ort
    Im sonnigen Süden von Österreich!
    Beiträge
    1.377
    Danke
    227
    Erhielt 183 Danke für 168 Beiträge

    Standard

    Ja aber vergesst nicht: Die CPU 312 hat nur eine Softwareuhr ohne Speicherung!
    Also bei einem Spannungsausfall geht nichts mehr mit der Internen Uhr!

    Ich würde dir für solche Sachen eine CPU 313C oder CPU 314 empfehlen da ist eine Hardwareuhr drinn die gepuffert ist!

    godi

  8. #8
    Registriert seit
    08.07.2007
    Ort
    Burbach
    Beiträge
    366
    Danke
    80
    Erhielt 34 Danke für 32 Beiträge

    Standard

    Aber auch daran denken, dass die 312 keine gepufferte Uhrzeit hat.
    Spannungsversorgung aus = Uhr steht.
    Das bedeutet, Du musst dann in irgendeiner Form, die Uhr wieder stellbar machen (über OP oder halt mit der S7-Software.
    Lieber Feste feiern, als feste arbeiten.

  9. #9
    Registriert seit
    08.11.2006
    Ort
    Uckermark
    Beiträge
    903
    Danke
    201
    Erhielt 256 Danke für 208 Beiträge

    Standard

    Zitat Zitat von crash Beitrag anzeigen
    ich hatte da mal einen FC den man im OB1 aufruft, OB1_Date_Time übergeben und schwupps... Jahr, Monat, Tag, Stunde, Minute, Sekunde und Wochentag gab es als INT zurück.

    ...nur mal so als denkanstoss.
    Mit diesem Baustein kann man die Uhrzeit lesen, auch ohne die OB1_Date_Time zu übergeben (weil er die SFC1 nutzt).
    Einfach irgendwo im Programm aufrufen und glücklich sein.
    Angehängte Dateien Angehängte Dateien
    Neue Ideen begeistern jene am meisten, die auch mit den alten nichts anzufangen wussten.
    Karl Heinrich Waggerl (1897-1973)

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

    Freizeitphilosoph (14.12.2007)

  11. #10
    Registriert seit
    30.03.2005
    Beiträge
    2.096
    Danke
    0
    Erhielt 673 Danke für 541 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Man kann auch einfach mit der Systemfunktion SFC1 READ_CLK die Systemzeit (DATE_AND_TIME) aus der SPS auslesen und mit der IEC-Funktion FC7 DT_DAY aus der Systemzeit (DATE_AND_TIME) den Wochentag (INT) auslesen.

    Code:
    FUNCTION "FC_SYSTEMZEIT" : VOID
    TITLE =Systemzeit
    AUTHOR : KAI
    FAMILY : SPSFORUM
    NAME : SYSTZEIT
    VERSION : 1.0
     
    VAR_OUTPUT
      WOCHENTAG : INT ; 
    END_VAR
    VAR_TEMP
      SYSTEMZEIT : DATE_AND_TIME ;  
      READ_CLK_RET_VAL : INT ;  
    END_VAR
    BEGIN
    NETWORK
    TITLE =SYSTEMZEIT (DATE_AND_TIME)
    //SFC 1 READ_CLK
    //
    //Die Systemfunktion SFC 1 liest die Uhr in der CPU aus. Man erhält das aktuelle 
    //Datum und die aktuelle Uhrzeit im Datenformat DATE_AND_TIME. 
    //   
          CALL "READ_CLK" (
               RET_VAL                  := #READ_CLK_RET_VAL,
               CDT                      := #SYSTEMZEIT);
          NOP   0; 
    NETWORK
    TITLE =SYSTEMZEIT (DATE_AND_TIME) => WOCHENTAG (INT) 
    //FC 7 DT_DAY
    //
    //Die IEC-Funktion FC 7 liest den Wochentag aus dem Format DATE_AND_TIME. 
    //Der Wochentag liegt im Datenformat INTEGER vor:
    //
    //1 = Sonntag
    //2 = Montag
    //3 = Dienstag
    //4 = Mittwoch
    //5 = Donnerstag
    //6 = Freitag
    //7 = Samstag
    //   
          CALL "DT to DAY" (
               IN                       := #SYSTEMZEIT,
               RET_VAL                  := #WOCHENTAG);
          NOP   0; 
    END_FUNCTION
    Gruß Kai
    Angehängte Dateien Angehängte Dateien

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

    Freizeitphilosoph (14.12.2007)

Ähnliche Themen

  1. Pumpen Umschaltung
    Von Poldi007 im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 27.05.2011, 23:40
  2. Sommer Winterzeit Umschaltung
    Von Montancy im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 11.04.2011, 19:16
  3. Umschaltung AWL in FUP
    Von rerdma3s im Forum Simatic
    Antworten: 14
    Letzter Beitrag: 22.03.2010, 07:37
  4. Umschaltung für Transfermodus
    Von Outrider im Forum HMI
    Antworten: 5
    Letzter Beitrag: 10.07.2008, 17:53
  5. USB Umschaltung
    Von tomatensaft im Forum PC- und Netzwerktechnik
    Antworten: 2
    Letzter Beitrag: 31.08.2007, 11:11

Lesezeichen

Berechtigungen

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