TIA SCL - Schleifen mit Variablen Durchlauf

tomlei

Level-2
Beiträge
72
Reaktionspunkte
2
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich möchte nicht in FUP von 26 mal 4 Ausgängen den Status abfragen und habe deshalb versucht das in SCL zu lösen.

Code:
REGION RG_in_Operation
    // Rollgänge 1-26 - Prüfung, ob Antriebsmotor in Betrieb ist (langsam, schnell, vorwärts, rückwärts)
    
    FOR #scl_index := 1 TO 26 DO
        // alle RGs werden durchlaufen
        IF ("HRG" & chr$(#scl_index) & "V") OR ("HRG" & chr$(#scl_index) & "R") THEN
            // wenn TRUE dann in RUN
            #scl_RG_RUN[#scl_index] := TRUE;
        END_IF;
        
        ;
    END_FOR;
    
END_REGION

Wie könnte das funktionieren? Gibt es andere Ansätze?
 
Hast du FC oder FB für jeden Antrieb?
Da einen Ausgang mit Betrieb wäre da mal mein erster Ansatz.

Dann bleibt eigentlich nur ein Oder mit 26 Eingängen über (und das würde ich in FUP machen wegen der Übersicht beim Fehlersuchen
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Als zusätzliche Methode zu winnman's Vorschlag wäre wenn die Motoren alle ein gleiches UDT bekommen und dann ein Array of UDT in einem Datenbaustein genutzt würde.
So wäre es dann auch in SCL innerhalb einer Schleife nutzbar und kann auch an anderen Stellen (z.B. im HMI mittels Index-Variable nur einmalig ein Übersichtsbild programmieren und dann durch Direktbutton oder +/- die Motoren durchschalten) einfacher genutzt werden.
 
Das sind alles FCs (Programm von S5 über Step7 nach TIA).
Ich wollte vermeiden, in den bestehenden FCs drin herumzufuschen - deswegen der Versuch über einen neuen FB mit SCL.
 
Zurück
Oben