Im Prinzip hatte ich das so auch gedacht, aber
Ich habe hier das Problem, dass eine Anlage (Montrac-Bahn) mit Events (signal und wert) arbeitet, weil es besser passte und letztlich die Sache sehr einfach machte. Die Konsequenz daraus ist, dass HMI eigentlich ebenfalls mit Events arbeiten können muss, die in einem FIFO-speicher liegen, der mit 2 Zeigern und einem Array gebildet wird. So ein Event hat einen Wert für das Signal wie SIGNAL_PROCESS_READY und ein Wert Feld, so dass eben Prozess-Ergebnisse gesendet werden können.
Daher es gibt keine eindeutige Zuordung Variable zum HMI-Element. Daher schlage ich folgende Layer vor:
1) SPS ADS
2) ADS-Verwaltung . Kopplung zur PLS, Abfangen von Problemen, inkl. der Verwaltung von Items in Layer 3) bei Verbindungsaufbau oder -Abbruch.
3) Items. Dynamische Items zum einmaligen Lesen oder einmaligen Ändern von Werten. Feste Items für ständiges Lesen oder Ändern
4) Verarbeitung der Werte der Items
5) HMI-Objekte (Controls)
Was machen wir mit Authentifizierung zur Maschine und Betrieb mit Datenbanken? Meine Vision ist die, dass gerade bei festen Anlagen eine Kopplung zu einer Datenbank zwingend ist, um hier Rezepte herauszuholen bzw. Daten von der Anlage abzulegen.
Dh. wäre es evtl. praktisch Layer 5 und 3 aufzuteilen in :
1) SPS ADS
2) ADS-Verwaltung . Kopplung zur PLS, Abfangen von Problemen, inkl. der Verwaltung von Items in Layer 3) bei Verbindungsaufbau oder -Abbruch.
3a) SPS-Items 3b) DB-Items
4) Verarbeitung der Werte der Items
5a) HMI-Objekte (Controls) 5b) DB-Objekte
Damit wären wir in der Lage auch die Anlagendaten über einen längeren Zeitraum zu beobachten und auszugeben, wie z.B. eine Statistik über Prozessresultate, die etwas über die Prozessstabilität aussagen.
Eine weitere Frage ist, welches Ziel haben wir bei der Präsentation? Wollen wir das von einem Webserver präsentieren oder konserativ ein Programm starten? Bei erstem habe ich in Sachen Java und Co. recht wenig Ahnung. Wir haben hier ein Monitor-Projekt, in dem der Anbieter eine Webseite mit Java-Applets aufruft, die sich ständig aktualisieren, ohne dass die Webseite neu aufgerufen wird. Das liegt jedoch noch ausserhalb meines Horizontes. Ich würde die 2. Variante bevorzugen.