Fangen wir mal an:
Als Erstes fällt auf, dass Dein Schaltplan kaum lesbar ist, da sich zum Teil mehrere, nicht miteinander verbundene Linien überlagern (siehe
Screenshot). Ich vermute mal, dass selbst Du, mit etwas zeitlichem Abstand zu Deinem Programm, nicht mehr nachvollziehen kannst, was Du Dir da so gedacht hast.
Um da Abhilfe zu schaffen, gibt es 2 Optionen:
1. Linien verschieben - wenn man die Verbindungslinien mit dem Selektionspfeil aus dem linken Werkzeugmenü auswählt, erscheinen verschiedene Ziehpunkte an der Verbindungslinie, mit deren Hilfe man sich die Linien so hinschieben kann, dass sie sich nicht überlappen und gut nachvollziehbar sind.
2. Linien auftrennen (Rechtsklick auf die gewünschte Linie) - dadurch wird die Linie (wie der Name schon sagt) aufgetrennt, und erhält am Start und Ziel jeweils einen Pfeil mit dem zugehörigen Gegenpunkt. Bei umfangreichen Verknüpfungen kann man dadurch aber eventuell den Faden verlieren. Für wiederkehrende Verbindungen bietet sich m.M.n. diese Methode geradezu an. In Deiner Schaltung z.B. die freigeschalteten Ausgänge der Uhren zu den ODER-Gliedern für das Setzen/Rücksetzen der Stromstoßschalter.
Das Zweite war die Vorrangwahl der Gänge, wie ich schon weiter oben geschrieben habe.
Die Verküpfung über UND-Gatter ist meistens die 1. Wahl, wird aber mit jedem weiteren zu verarbeitenden Eingang immer aufwendiger, wie Du sicher auch festgestellt hast. Ich find's da übersichtlicher, den höchsten aktiven Eingang durch einen entsprechenden Analogwert anzeigen zu lassen. Das bietet auch den Vorteil, dass man den aktiven Gang auf dem Logodisplay mittels des Analogwertes anzeigen kann.
In Deinem Fall würde ich da auf den Analogmultiplexer zurückgreifen. Wie der funktioniert, findest Du in der Hilfe.
Mit Hilfe des analogen Schwellwertschalters kannst du dann diesen Analogwert zum Freigeben der jeweiligen Uhr nutzen
Wenn Du meinen Schaltplan aus dem Anhang simulierst, kann man diese beiden Funktionen m.M.n. gut nachvollziehen.
Als Nächstes ist mir aufgefallen, dass Du den Uhren immer einen Zeitimpuls nachgeschaltet hast. Dir ist sicher entgangen, dass man bei den Wochenschaltuhren einstellen kann, dass sie zum Schaltzeitpunkt nur einen Impuls ausgeben. Damit kannst du dir den nachgeschalteten Impuls einsparen. Auch hier kannst Du in der Hilfe genaueres zu lesen.
Du hast Dich dafür entschieden, für das Ein- und Auschalten je 2 getrennte Uhren mit Impulsausgabe zu verwenden. Da ab Gang 3 immer die gleichen Einschaltzeiten verwendet werden, kann man da ein paar Bausteine einsparen.
Ich persönlich würde trotzdem lieber die herkömmliche Ausgabe der Uhr verwenden und die Momente des Ein- bzw. Ausschalten durch eine pos. bzw negative Flankenabfrage erfassen und über die Freigabegatter zu den Stromstoßrelais weiterleiten. So hat man die Schaltzeiten für den jeweiligen Gang immer zusammen in einer Uhr. Aber das ist sicher Geschmackssache.
Zusammengenommen ergibt sich so
meine Programmvorstellung (die bei Bedarf auch recht einfach zu erweitern wäre, da sich die Programmteile ohne komplizierte Verknüpfungen einfach immer wiederholen):
Die Stromstoßrelais mit den Zentraltastern, die Du so ja schon hattest, nur das sich die verschiedenen Linien nicht überlagern:
Dann die Wahltaster und die zugehörigen Uhren für die ersten 4 Gänge:
Und die Taster und Uhren für die Gänge 4 bis 8 (mit dem letzten Multiplexer als Eingang für alle Schwellwertschalter):
Als Vergleich noch die von Dir gewählte Variante mit getrennten Uhren (die Stromstoßschalter dürften ja noch klar sein):
Auf dem 2.Bild unten rechts hab' ich mal die Ganganzeige auf dem Logodisplay eingefügt. Einfach mal simulieren.
PS: Du hast die Logo 0BA7 ausgewählt. Da könnte man die 5 Gatter, die die jeweilige Ganguhr selektieren auch noch in ein UDF packen und dann dieses immer wieder aufrufen (Erstellung UDF -> Übername Parameter Schwellwertschalter in Parameter UDF -> Gang 7 und 8 als UDF -> Gang 5 bis 8 als UDF):
Ich hoffe, das gibt Dir ein paar Anregungen. Wenn Dir irgendwelche Programmteile unklar sind, frag' einfach. Dieser Weg erschien mir hier einfacher, als die noch unbekannten Sachen zu erarbeiten. Initiative hast Du durch ein eigenes Programm bereits bewiesen, also denke ich, dass Du auch versuchen wirst, dieses Programm (erhebt aber keinen Anspruch, das Nonplusultra zu sein) zu verstehen.