"Schaltpunkte" korrekt programmieren (4-Punkt Regler)

superkato

Level-1
Beiträge
220
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi,

ich messe zur Zeit über einen Analogeingang einen Strömungswert von 5.00 - 10.00 m³/min (mit FC105 skaliert und wunderbar).

Zu diesem s7 Projekt hab ich "Schaltpunkte" programmiert. Vergleicher-Glieder mit einem Impuls-Glied damit wenn der Wert, wenn er kurz hoch und runter schwankt nicht noch mal diesen "schaltpunkt" auslöst.

(bspw: 5.60, 5.50<=schaltet, 5.48, 5.51<=schwenkt kurz nach oben und dank Imp-Glied löst er nicht nochmal aus, 5.46, 5.43, 5.40)

1. Frage: ist das so korrekt oder gibt es bessere "Schaltpunkt-Schalter" welche intelligenter sind. Bspw.

2. Frage: Es handelt sich ja hierbei um einen 4-Punkt-Regler bzw. gibts einfach innerhalb von 5- 10.00 m³/min zwei untere Punkte(5.5 und 6.0) die Ventilatoren einschalten und zwei obere Punkte(7.0 und 8.0) die Ventilatoren ausschalten.
Gibt es da vielleicht einen Baustein?
Es gibt den 2pkt und 3pkt regler mit und ohne schalthysterese in s7 aber vielleicht hat ja einer von euch mal etwas vergleichbares gemacht.

Für Hilfe oder Tipps wäre ich sehr dankbar!

Viele Grüße
Sk
 
Nachfolgend ein Programmbeispiel für einen einfachen Vierpunktregler für zwei Ventilatoren.

Für jeden der zwei Ventilatoren wird ein eigener Zweipunktregler und damit insgesamt ein Vierpunktregler verwendet.

Code:
FUNCTION_BLOCK FB 100
TITLE =Vierpunktregler für zwei Ventilatoren
//Für jeden der zwei Ventilatoren wird ein eigener Zweipunktregeler und damit
//insgesamt ein Vierpunktregler verwendet.
//   
AUTHOR : Kai
FAMILY : SPSForum
NAME : '45507'
VERSION : 1.0
 
VAR_INPUT
  Ventilator_1_Aus : REAL ; //Volumenstrom Ventilator 1 Aus [m3/h]
  Ventilator_2_Aus : REAL ; //Volumenstrom Ventilator 2 Aus [m3/h]
  Ventilator_1_Ein : REAL ; //Volumenstrom Ventilator 1 Ein [m3/h]
  Ventilator_2_Ein : REAL ; //Volumenstrom Ventilator 2 Ein [m3/h]
  Volumentstrom : REAL ; //Volumenstrom [m³/h]
END_VAR
VAR_OUTPUT
  Ventilator_1 : BOOL ; //Ventilator 1 Ein
  Ventilator_2 : BOOL ; //Ventilator 2 Ein
END_VAR
VAR
  Ventilator_1_Betrieb : BOOL ; //Ventilator 1 Betrieb
  Ventilator_2_Betrieb : BOOL ; //Ventilator 2 Betrieb
END_VAR
BEGIN
NETWORK
TITLE =Ventilator 1
//Volumenstrom [m³/h] < Volumenstrom Ventilator 1 Ein [m³/h] => Ventilator 1 Ein
//Volumenstrom [m³/h] > Volumenstrom Ventilator 1 Aus [m³/h] => Ventilator 1 Aus
//    
      U(    ; 
      L     #Volumentstrom; 
      L     #Ventilator_1_Ein; 
      <=R   ; 
      )     ; 
      S     #Ventilator_1_Betrieb; 
      U(    ; 
      L     #Volumentstrom; 
      L     #Ventilator_1_Aus; 
      >=R   ; 
      )     ; 
      R     #Ventilator_1_Betrieb; 
      U     #Ventilator_1_Betrieb; 
      =     #Ventilator_1; 
NETWORK
TITLE =Ventilator 2
//Volumenstrom [m³/h] < Volumenstrom Ventilator 2 Ein [m³/h] => Ventilator 2 Ein
//Volumenstrom [m³/h] > Volumenstrom Ventilator 2 Aus [m³/h] => Ventilator 2 Aus
//    
      U(    ; 
      L     #Volumentstrom; 
      L     #Ventilator_2_Ein; 
      <=R   ; 
      )     ; 
      S     #Ventilator_2_Betrieb; 
      U(    ; 
      L     #Volumentstrom; 
      L     #Ventilator_2_Aus; 
      >=R   ; 
      )     ; 
      R     #Ventilator_2_Betrieb; 
      U     #Ventilator_2_Betrieb; 
      =     #Ventilator_2; 
END_FUNCTION_BLOCK

Gruß Kai
 

Anhänge

  • OB1.pdf
    6,5 KB · Aufrufe: 23
  • FB100.pdf
    7,2 KB · Aufrufe: 34
  • 45507.zip
    31,5 KB · Aufrufe: 9
Zuviel Werbung?
-> Hier kostenlos registrieren
Vielen Dank!
Gute Idee aus 2 z.p.r's einen 4er zu machen.
Habe es auch nun so gemacht. ich musste nur in meinem fall nicht direkt an die ventilatoren sondern an den baustein zur ventilator steuerung.


Ich versuch gerade aus 4 Eingängen einen "Anzahl der laufenden Maschinen Zähler zu machen". Ich poste das Ergebnis dann hier rein falls es jemanden interessiert.
=> Gelöst mit dem FC99

Edit: "falsch ausgedrückt"
 
Zuletzt bearbeitet:
Vielen Dank!
Das wird sicherlich jemandem helfen können der dies so realisieren mag. Leider kann ich meinem Fall das so nicht benutzen weil ich noch paar bedingungen habe bevor ich an die Ausgänge gehe.

Du würdest uns und dir helfen, wenn endlich sinnvolle Fragen stellen würdest.
Es ist doch Mist, dass du immer irgend einen Schmarrn fragst, Hinweise nicht annimmst und dann einen auf dicke Hose machst.

Übrigens dein Hinweis zu dem PID Regler in einem andern Threat war falsch.


bike

P.S: kann mir eigentlich nicht vorstellen, dass das Programm jemand interessiert, da die Aufgabenstellung ja geheim ist.
 
ne dann hab ich mich falsch formuliert eben. das ist eigentlich genau das was ich wissen wollte und ist auch super so werde ich das oben verwenden ich muss das nur ein bissl abändern mit den ausgängen! top! danke!

zum zweiten die anzahl der "bits" hab ich mit dem FC99 "bitsum" bewerkstelligt.

- es ist überhaupt nicht falsch! ein i-anteil ist dazu da um bleibende regeldifferenzen auszumärzen! ich hab regelungstechnik an der uni!
http://www.chemgapedia.de/vsengine/...regelung/grundlagen/regler/pi_ctrl.vscml.html

ps. geheim ist nix. ich hab ein projekt an der uni das ich versuche zu realisieren zum thema effizientem haus. Wenn du fragen hast dann frag mich doch zu dem Projekt. geheim ist nix!
 
Zuletzt bearbeitet:
Zurück
Oben