Kommt auf den Umfang der Anlage an.
aber Prinzipell:
OB1 Aufrufe der verschiedenen Zustände
eventuell in einem FC die Verzweigung in die Betriebsarten, von dort dann die einzelnen FC aufrufen.
VAT: mach ich bei der IBN möglichst auf den Jeweiligen Abschnitt zugeschnitten, so dass dessen Funktion ersichtlich wird, ev. noch eine die Über den Gesamtzustand (Betriebsart, . . .) Auskunft gibt.
Nach der grundlegenden HW Configuration Starte ich mit der Symbolik.
Dann eine Struktur der zu erfüllenden Aufgabe, Unterteilung in vernünftige Anlagenteile, die dann wider nach Funktionen (zb. Antriebe, Analogwerterfassungen, . . .)
Aber das kommt wie gesagt auf die Anlage an.
Ziel stell ich mir immer so:
Die Grundlegenden Anlagenabschnitte / Teilbereiche und deren Abarbeitung im Programm sollen möglichst schon in der Bausteinübersicht erkennbar sein.
Hab zumeist einen FC den ich "Programmaufrufe" nenne.
In dem mach ich dann zb die Unterscheidung in die Betriebszustände.
Nicht zutreffende Betriebszustände werden übersprungen (dadurch keine unnütze Zykluszeitverschwendung)
Trifft der Betriebszustand zu, dann werden die entsprechenden Funktionen aufgerufen.
Allgemeine Funktionen die Betriebszustandunabhängig sind zb Analogwertverarbeitung (Normieren, Denormieren), Störungsbehandlung, . . . kommen jeweils an den Anfang bzw das Ende (AW denormierung) des Zyklus.
Ganz am ende des Zyklus stehen meist noch spezielle Ausgaben für kritische Antriebe, . . . (damit kannn Schaden von der Anlage abgehalten werden wenn sich doch irgendwo ein Bug einschleicht)
Fast jeder Programmierer hat beim Aufbau der Struktur eine andere Herangehensweise.
Wichtig ist, dass vernünftige Kommentare das Verstehen der folgenden Schritte beschreiben.