Ein Spül-FC (FB) für 10 Filter

DerTheo

Level-2
Beiträge
8
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich arbeite auf einer Kläranlage mit einer Filtration. Diese besteht aus 10 Filterkammern, welche identisch aufgebaut sind.
Als Steuerung ist eine S7400 mit 412 2DP Cpu im Einsatz.
Die Anlage wurde vor einigen Jahren von S5 auf S7 umgebaut, leider machte die ausführende Firma pleite und so haben wir nun ein recht unfertiges aber lauffähiges Programm welches immer mal wieder optimiert und fehlerbereinigt wird.
Die Filter werden alle 24h gespült. Der Ablauf erfolgt über FC's, wo ein FC nacheinander 10 fast identische FC's für die Filter aufruft.
Nun sollte ich im Spülprogramm etwas ändern, was in sofern lästig war, als dass ich es 10x ändern musste.
Ich überlege, die Spülung in einem FC abzulegen, der über einen DB mit UDT -Einträgen zugreift. In dem UDT sollen die Ein- und Ausgaben zu den jeweiligen Filterventilen und Pumpen rangiert werden und als Lokalvariablen im FC zur verfügung stehen.
Ich hätte also einen DB mit 10 UDT-Einträgen.
Ein Zähler soll vorgeben, welcher Filter an der Reihe ist. Wie erzähle ich dem Spül-FC, welche DB-Adresse zu welchem Zählerstand gehört. Soll ich ihn 10x über verschiedene Enable-Merker aufrufen, von denen nur einer aktiv ist oder mit 10 IN-Variablen versehen, die verschiedene Pointer auf die DB-UDT's aktivieren?
Gefällt mir noch nicht, hat jemand eine elegantere Idee?
 
Hi,
ich habe das folgendermaßen gemacht:

Es gibt einen Spülprogramm-FB mit entsprechenden benötigten IN / OUTs. Dieser wird nur einmal aufgerufen.

Dann gibt einen FC der entsprechend des aktuell zu spülenden Filters den Spülprogramm-FB mit den passenden Eingangssignalen (Endlagen, Niveaus, etc.) versorgt, sowie einen weiteren FC der die Ausgangssignale des Spül-FBs dem Filter entsprechend an die zugehörigen Antriebe weiterleitet.

Die Spülgebläse, Spülwasserpumpen etc. versorgt der FB direkt.
 
Zurück
Oben