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

Seite 3 von 3 ErsteErste 123
Ergebnis 21 bis 27 von 27

Thema: Heizung Ladepumpe Ansteuerung mit Kaltanlauf

  1. #21
    Registriert seit
    24.01.2012
    Beiträge
    511
    Danke
    92
    Erhielt 21 Danke für 20 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Teil 3:

    NETWORK
    TITLE =Schaltzeit nach gewählter Funktion
    //Abfrage welche Funktion gewählt ist, danach die Istzeit mit der eingestellten
    //Schaltzeit vergleichen und mit VKE=1 eine Variable setzen.
    //Funktion 1: Montag bis Freitag
    //Funktion 2: Samstag & Sonntag
    //Funktion 3: Montag bis Sonntag
    //================================================Funktion 1
    U( ;
    U #Mo_bis_Fr; //Funktion Montag bis Freitag
    UN #Sa_bis_So;
    UN #Mo_bis_So;
    U #Woche;
    ) ;
    SPB MoFr;
    SPA FKT2;
    //--------------------------------------
    MoFr: U #Schaltzeit1_aktiviert; // Kanal 1 aktiv?
    SPB ON2;
    SPA NXT3;
    ON2: L #Uhrzeit; // Istzeit mit
    L #Einschalten_1; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    S #Funktion_MoFr_T1_Ein; // Fkt1 T1 Einschalten

    L #Uhrzeit; // Istzeit mit
    L #Ausschalten_1; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    R #Funktion_MoFr_T1_Ein; // Fkt1 T1 Ausschalten
    //--------------------------------------
    NXT3: U #Schaltzeit2_aktiviert; // Kanal 2 aktiv?
    SPB ON3;
    SPA NXT4;
    ON3: L #Uhrzeit; // Istzeit mit
    L #Einschalten_2; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    S #Funktion_MoFr_T2_Ein; // Fkt1 T2 Einschalten

    L #Uhrzeit; // Istzeit mit
    L #Ausschalten_2; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    R #Funktion_MoFr_T2_Ein; // Fkt1 T2 Ausschalten
    //--------------------------------------
    NXT4: U #Schaltzeit3_aktiviert; // Kanal 3 aktiv?
    SPB ON4;
    SPA NXT5;
    ON4: L #Uhrzeit; // Istzeit mit
    L #Einschalten_3; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    S #Funktion_MoFr_T3_Ein; // Fkt1 T3 Einschalten

    L #Uhrzeit; // Istzeit mit
    L #Ausschalten_3; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    R #Funktion_MoFr_T3_Ein; // Fkt1 T3 Ausschalten
    //--------------------------------------
    NXT5: U #Schaltzeit4_aktiviert; // Kanal 4 aktiv?
    SPB ON5;
    SPA NXT6;
    ON5: L #Uhrzeit; // Istzeit mit
    L #Einschalten_4; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    S #Funktion_MoFr_T4_Ein; // Fkt1 T4 Einschalten

    L #Uhrzeit; // Istzeit mit
    L #Ausschalten_4; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    R #Funktion_MoFr_T4_Ein; // Fkt1 T4 Ausschalten

    NXT6: NOP 0;

    //================================================Funktion 2
    FKT2: U( ;
    U #Sa_bis_So;
    UN #Mo_bis_Fr;
    UN #Mo_bis_So;
    U #Wochenende;
    ) ;
    SPB SaSo;
    SPA FKT3;
    //--------------------------------------
    SaSo: U #Schaltzeit1_aktiviert; // Kanal 1 aktiv?
    SPB ON6;
    SPA NXT7;
    ON6: L #Uhrzeit; // Istzeit mit
    L #Einschalten_1; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    S #Funktion_SaSo_T1_Ein; // Fkt2 T1 Einschalten

    L #Uhrzeit; // Istzeit mit
    L #Ausschalten_1; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    R #Funktion_SaSo_T1_Ein; // Fkt2 T1 Ausschalten

    //--------------------------------------
    NXT7: U #Schaltzeit2_aktiviert; // Kanal 2 aktiv?
    SPB ON7;
    SPA NXT8;
    ON7: L #Uhrzeit; // Istzeit mit
    L #Einschalten_2; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    S #Funktion_SaSo_T2_Ein; // Fkt2 T2 Einschalten

    L #Uhrzeit; // Istzeit mit
    L #Ausschalten_2; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    R #Funktion_SaSo_T2_Ein; // Fkt2 T2 Ausschalten

    //--------------------------------------
    NXT8: U #Schaltzeit3_aktiviert; // Kanal 3 aktiv?
    SPB ON8;
    SPA NXT9;
    ON8: L #Uhrzeit; // Istzeit mit
    L #Einschalten_3; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    S #Funktion_SaSo_T3_Ein; // Fkt2 T3 Einschalten

    L #Uhrzeit; // Istzeit mit
    L #Ausschalten_3; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    R #Funktion_SaSo_T3_Ein; // Fkt2 T3 Ausschalten
    //--------------------------------------
    NXT9: U #Schaltzeit4_aktiviert; // Kanal 4 aktiv?
    SPB ON9;
    SPA NX10;
    ON9: L #Uhrzeit; // Istzeit mit
    L #Einschalten_4; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    S #Funktion_SaSo_T4_Ein; // Fkt2 T4 Einschalten

    L #Uhrzeit; // Istzeit mit
    L #Ausschalten_4; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    R #Funktion_SaSo_T4_Ein; // Fkt2 T4 Ausschalten

    NX10: NOP 0;

    //================================================Funktion 3
    FKT3: U #Mo_bis_So;
    UN #Mo_bis_Fr;
    UN #Sa_bis_So;
    SPB MoSo;
    SPA NX14;
    //--------------------------------------
    MoSo: U #Schaltzeit1_aktiviert; // Kanal 1 aktiv?
    SPB ON10;
    SPA NX11;
    ON10: L #Uhrzeit; // Istzeit mit
    L #Einschalten_1; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    S #Funktion_MoSo_T1_Ein; // Fkt3 T1 Einschalten

    L #Uhrzeit; // Istzeit mit
    L #Ausschalten_1; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    R #Funktion_MoSo_T1_Ein; // Fkt3 T1 Ausschalten

    //--------------------------------------
    NX11: U #Schaltzeit2_aktiviert; // Kanal 2 aktiv?
    SPB ON11;
    SPA NX12;
    ON11: L #Uhrzeit; // Istzeit mit
    L #Einschalten_2; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    S #Funktion_MoSo_T2_Ein; // Fkt3 T2 Einschalten

    L #Uhrzeit; // Istzeit mit
    L #Ausschalten_2; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    R #Funktion_MoSo_T2_Ein; // Fkt3 T2 Ausschalten

    //--------------------------------------
    NX12: U #Schaltzeit3_aktiviert; // Kanal 3 aktiv?
    SPB ON12;
    SPA NX13;
    ON12: L #Uhrzeit; // Istzeit mit
    L #Einschalten_3; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    S #Funktion_MoSo_T3_Ein; // Fkt3 T3 Einschalten

    L #Uhrzeit; // Istzeit mit
    L #Ausschalten_3; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    R #Funktion_MoSo_T3_Ein; // Fkt3 T3 Ausschalten
    //--------------------------------------
    NX13: U #Schaltzeit4_aktiviert; // Kanal 3 aktiv?
    SPB ON13;
    SPA NX14;
    ON13: L #Uhrzeit; // Istzeit mit
    L #Einschalten_4; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    S #Funktion_MoSo_T4_Ein; // Fkt3 T4 Einschalten

    L #Uhrzeit; // Istzeit mit
    L #Ausschalten_4; // Schaltzeit vergleichen
    >=D ; // größer gleich?
    R #Funktion_MoSo_T4_Ein; // Fkt3 T4 Ausschalten

    NX14: NOP 0;
    //--------------------------------
    NETWORK
    TITLE =Schaltuhrausgang

    U #Mo_bis_Fr;
    U( ;
    O #Funktion_MoFr_T1_Ein;
    O #Funktion_MoFr_T2_Ein;
    O #Funktion_MoFr_T3_Ein;
    O #Funktion_MoFr_T4_Ein;
    ) ;
    O ;
    U #Sa_bis_So;
    U( ;
    O #Funktion_SaSo_T1_Ein;
    O #Funktion_SaSo_T2_Ein;
    O #Funktion_SaSo_T3_Ein;
    O #Funktion_SaSo_T4_Ein;
    ) ;
    O ;
    U #Mo_bis_So;
    U( ;
    O #Funktion_MoSo_T1_Ein;
    O #Funktion_MoSo_T2_Ein;
    O #Funktion_MoSo_T3_Ein;
    O #Funktion_MoSo_T4_Ein;
    ) ;
    = #Schaltuhr_aktiviert;
    END_FUNCTION_BLOCK
    -----------------------------------------------------------------------------------------
    Programmierumgebung: Step 7 V5.5 + SP3
    WinCC flexible 2008 Advanced + SP3
    -----------------------------------------------------------------------------------------

  2. #22
    Registriert seit
    24.01.2012
    Beiträge
    511
    Danke
    92
    Erhielt 21 Danke für 20 Beiträge

    Standard

    zugegeben, wenn das hier so steht erschlägt es einen fast.
    könnte dir den FB auch per mail zukommen lassen.
    -----------------------------------------------------------------------------------------
    Programmierumgebung: Step 7 V5.5 + SP3
    WinCC flexible 2008 Advanced + SP3
    -----------------------------------------------------------------------------------------

  3. #23
    OKL ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    10.04.2010
    Beiträge
    132
    Danke
    15
    Erhielt 3 Danke für 2 Beiträge

    Standard

    Hallo Matze,

    vielen Dank. Ich habe derweil eine schöne Lösung, die ich dir auch gern zukommen lassen kann. Dazu später.

    Ich habe schnell eine Krücke zusammengeschustert und möchte euch gern um Rat fragen. Anbei ein PDF mit einem FC.

    Netzwerke 7, 8 und 9 sind die drei Wochenzeitprogramme. Ich überprüfe mit dem FC20, ob eine Einschaltzeit vorliegt, und zwar für Heizung, Warmwasser und Zirkulation. Wenn ja, wird ein Bit gesetzt. Mein Problem ist nur, dass ich am Anfang des Bausteins die Bits manuell zusücksetzen muss, da wenn sich die Betriebsart ändert, ich das 0 von dem FC20 teilweise ja gar nicht mehr erhalte und das Bit auf eins stehen bleibt. Gleiches passierte, als ich für alle Netzwerke nur eine Variable für Heizung ein, WW ein und Zirk ein verwendet habe. Vielleicht hat jemand eine schönere Idee?

    Netzwerk17: Wenn ich dieses Netzwerk weiter vorn im Baustein platziere, dann sind auf einmal andere Bits mit gesetzt. Wieso auch immer, die Adressierung ist eindeutig. Vielleicht sieht jemand dort gleich den Fehler. Derzeitig funktioniert es zwar, mir gefällt es aber nicht so ganz.

    Die Betriebsarten sind von 0 bis 6, 0 ist aus, 1 Wochenprogramm 1, 2 Wopro2, 3 Wopro3 (jeweils eigene Zeitschaltzeiten)...

    Danke euch.


    MfG

    Olaf

    FC4.pdf

  4. #24
    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

    Zitat Zitat von DerMatze Beitrag anzeigen
    zugegeben, wenn das hier so steht erschlägt es einen fast.
    könnte dir den FB auch per mail zukommen lassen.
    Wenn du es so machst, sieht es nicht mehr gaaaanz so wild aus http://sps-forum.de/misc.php?do=bbcode#code
    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)

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

    DerMatze (20.03.2012)

  6. #25
    Registriert seit
    24.01.2012
    Beiträge
    511
    Danke
    92
    Erhielt 21 Danke für 20 Beiträge

    Standard

    Zitat Zitat von OKL Beitrag anzeigen
    Ich überprüfe mit dem FC20, ob eine Einschaltzeit vorliegt, und zwar für Heizung, Warmwasser und Zirkulation. Wenn ja, wird ein Bit gesetzt. Mein Problem ist nur, dass ich am Anfang des Bausteins die Bits manuell zusücksetzen muss, da wenn sich die Betriebsart ändert, ich das 0 von dem FC20 teilweise ja gar nicht mehr erhalte und das Bit auf eins stehen bleibt.
    FC4.pdf
    Hallo Olaf,
    wo bekommst du die Schaltzeiten her, gibst du die fest vor oder hast du ein HMI?
    Wie der FC20 funktioniert habe ich grad nicht vorm Auge.
    Aber du kannst doch bei der Vorgabe der Schaltzeit auf TOD#00:00:00.000 vergleichen, wenn ungleich hast du eine Schaltzeit, wenn gleich dann nicht.
    Die Bits am Anfang manuell Rücksetzen ist nicht die eleganteste Lösung, denke ich. Da du entsprechend der Zykluszeit ein "flankerndes Bit" hättest - wenn ich mich nicht täusche.
    mfg
    DerMatze
    -----------------------------------------------------------------------------------------
    Programmierumgebung: Step 7 V5.5 + SP3
    WinCC flexible 2008 Advanced + SP3
    -----------------------------------------------------------------------------------------

  7. #26
    OKL ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    10.04.2010
    Beiträge
    132
    Danke
    15
    Erhielt 3 Danke für 2 Beiträge

    Standard

    Hallo,

    ich erhalte eine 0 oder eine 1 von dem FC, also 1 wenn die Zeitschaltuhr geschaltet hat und die Heizung heizen sollte. Wenn aber ein anderes Wochenprogramm aktiv ist, dann erhalte ich natürlich von dem FC keinen neueren Wert mehr von dem alten Aufruf.

    Daher habe ich die FC-Temp-Bits zurückgesetzt. Die von dem DB notfalls gestern auch.

    Eine bessere Lösung wäre schon erstrebenswert, das war das, was ich nachts schnell hingeschustert habe, da ich meine alte Steuerung nun demontiert habe. Es ist ja nun Frühling
    Geändert von OKL (20.03.2012 um 08:32 Uhr)

  8. #27
    Registriert seit
    24.01.2012
    Beiträge
    511
    Danke
    92
    Erhielt 21 Danke für 20 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von OKL Beitrag anzeigen
    Wenn aber ein anderes Wochenprogramm aktiv ist, dann erhalte ich natürlich von dem FC keinen neueren Wert mehr von dem alten Aufruf.
    Einfach den FC gegen einen FB tauschen, die Temp Variablen in Stat schieben und für jedes Wochenprogramm einen IDB anlegen fertig. Dann rufst du den FB mit dem jeweiligen zugehörigen IDB auf und du brauchst nix manuell rücksezten.
    z.B. Heizung FB20/DB120
    Zirkulation FB20/DB121
    Warmwasser FB20/DB122

    mfg
    DerMatze
    -----------------------------------------------------------------------------------------
    Programmierumgebung: Step 7 V5.5 + SP3
    WinCC flexible 2008 Advanced + SP3
    -----------------------------------------------------------------------------------------

Ähnliche Themen

  1. Heizung mit 4 Heizelementen
    Von datasys im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 09.09.2011, 17:28
  2. BLKMOV in FB mit variabler Ansteuerung
    Von Knut333 im Forum Simatic
    Antworten: 18
    Letzter Beitrag: 27.01.2009, 08:53
  3. Fernwärme Heizung Reglen mit Logo
    Von frankuc45 im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 17.11.2008, 09:47
  4. Temperatur von Heizung mit SPS messen
    Von Toddy80 im Forum Elektronik
    Antworten: 11
    Letzter Beitrag: 20.09.2008, 22:08
  5. mit GSM Modul Heizung einschalten
    Von chocolate im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 01.03.2006, 13:26

Lesezeichen

Berechtigungen

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