Hilfe bei Programmierung( verriegeln von 10 Ausgängen)
Moderatoren: Matthias, Weiss_MHJ
-
- SPSTreff-User
- Beiträge: 3
- Registriert: 16 Jan 2014, 10:43
Hilfe bei Programmierung( verriegeln von 10 Ausgängen)
Hallo SPSler..
Ich möchte gerne folgendes realisieren:
Ein Auswahlbord mit 10 Köpfen welche Magnetventile steuern.
Bedingung:
Es darf nur immer 1 von 10 aktiv sein.
Beispiel:
Ich wähle ein Ventil aus. Dies wird für 10 min Füllzeit aktiviert und danach zurückgesetzt.( das iss kein Problem mit Timer und RS) Da ich jedoch darauf achten muss das immer nur 1 Kreis aktiviert sein darf muss ich natürlich die anderen 9 als Bedingung mit einfliessen lassen. Wie kann ich das Programmiertechnisch einfach implementieren? die klassische Verriegelung mit RS gliedern wird ja megaaufwendig. Wer würde mir das programmieren? Die Software für FBD Programmierung würde ich dann zukommen lassen. Bei Interesse: frankydoo73@yahoo.de
Ich möchte gerne folgendes realisieren:
Ein Auswahlbord mit 10 Köpfen welche Magnetventile steuern.
Bedingung:
Es darf nur immer 1 von 10 aktiv sein.
Beispiel:
Ich wähle ein Ventil aus. Dies wird für 10 min Füllzeit aktiviert und danach zurückgesetzt.( das iss kein Problem mit Timer und RS) Da ich jedoch darauf achten muss das immer nur 1 Kreis aktiviert sein darf muss ich natürlich die anderen 9 als Bedingung mit einfliessen lassen. Wie kann ich das Programmiertechnisch einfach implementieren? die klassische Verriegelung mit RS gliedern wird ja megaaufwendig. Wer würde mir das programmieren? Die Software für FBD Programmierung würde ich dann zukommen lassen. Bei Interesse: frankydoo73@yahoo.de
Zuletzt geändert von frankydoo73 am 01 Apr 2014, 12:59, insgesamt 1-mal geändert.
-
- SPSTreff-User
- Beiträge: 3
- Registriert: 16 Jan 2014, 10:43
Hallo,
wenn wir annehmen, dass alle Ventile an den Ausgängen
A0.0 - A1.1 angeschlossen sind:
Damit belegen die Ausgänge das Ausgangsbyte AB0 und AB1.
Folglich wird das Ausgangswort AW0 belegt.
Jetzt kann man einen Integervergleich mit diesem Ausgangswort durchführen:
Wenn das Merkerbit M10.0 '1' ist, dann sind alle Ventile ausgeschaltet.
Wenn der Merkerbit M10.0 '0' ist, ist mindestens ein Ventil eingeschaltet.
wenn wir annehmen, dass alle Ventile an den Ausgängen
A0.0 - A1.1 angeschlossen sind:
Damit belegen die Ausgänge das Ausgangsbyte AB0 und AB1.
Folglich wird das Ausgangswort AW0 belegt.
Jetzt kann man einen Integervergleich mit diesem Ausgangswort durchführen:
Code: Alles auswählen
L AW 0 //alle Ventile
L 0
==I //mit Null vergleichen
= M 10.0 //Alle Ventile ausgeschaltet
Wenn der Merkerbit M10.0 '0' ist, ist mindestens ein Ventil eingeschaltet.