NNP
Dipl.-Ing. Johannes Hofer
Letzte Bearbeitung: 23.04.2026
Nachdem ich einige neue Wege der KNN ausprobiert habe, bin ich nun bei folgendem Ergebnis hängen geblieben.
Wie heißt es so schön: back to the roots
Die Neuronentechnik ist sicherlich faszinierend und hat mich nach der Erkenntnis, dass künstliche Neuronen für die SPS immer feuern (spikes), zum NNP geführt. Hier steht NNP für neuronalen Netzwerkplan und ist nicht mit einem neuronalen Netzwerkdiagramm zu verwechseln.
Die Anwendung eines neuronalen Netzwerkes bis hin zum neuronalen Netzwerkplan innerhalb einer SPS war bei meinen ersten Versuchen mit dem TIA-Portal in der Programmiersprache SCL zwar erfolgreich, aber mit erheblichen Nachteilen bezüglich des Editors begleitet. Ganz besonders der notwendige Serverteil innerhalb der SPS, welcher die Anwendung mit einem handelsüblichen Browser ermöglichen sollte, ist aus verschiedenen Gründen ungeeignet. Näher möchte ich darauf nicht eingehen, da zudem die Sprache SCL nicht dafür geplant wurde, solche intelligenten Strukturen zu entwerfen. Dies führte letztendlich so zu einigen Problemen, diese Idee praktisch umzusetzen.
Aus diesem Grund habe ich parallel einen Weg über eine andere SPS gesucht und bin schließlich bei verschiedenen SPSen gelandet, welche ebenfalls bezüglich der Geschwindigkeit zur Abarbeitung der Neuronen erfolgreich waren und unter Berücksichtigung der IEC 61131-Sprachen kompatibel sind. Es fehlt also nicht an der Ausführungsgeschwindigkeit der Hardware, sondern an der Möglichkeit des Editors in SCL oder ST, mit Schleifen und Arrays zu arbeiten und vor allem diese zu debuggen.
Das war sehr mühselig und zudem zeitaufwendig. Eine verständliche Verarbeitung für den Anwender (Elektriker) zu erreichen, wurde letztendlich dadurch möglich, dass die Neuronenwerte (LReal) aus den verschiedenen Layern wieder zu einem Stromlaufplan führten. Back to the Roots ist im wahrsten Sinne des Wortes tatsächlich gelungen.
Es ist damit nicht unbedingt notwendig, einen Programmierer zur Lösung für einen NNP einzusetzen, sondern nur ein Training, welches normalerweise der Konstrukteur der Anlage durchführen sollte. Zur Kontrolle des so trainierten Netzwerkplanes wird zusätzlich daraus ein Stromlaufplan generiert. 😎

Im Bild ist die Simatic-Lösung ersichtlich. Insgesamt sind im FL=First-Layer über 16T Neuronen zu sehen. Im Beispiel für den Ausgang A0.7 sieht man den Strompfad mit den Schaltern dazu, welcher aus den neuronalen Werten generiert wird. Da das TIA-Portal weiterhin notwendig ist, sehe ich hier keinen direkten Vorteil mehr. Deswegen wird derzeit die Arduino Opta auf Herz und Nieren getestet!
Speichertrainierbare Steuerung kontra SPS 😎 (STS, PTC)
Zielsetzung ist es, eine SW zu entwickeln, welche ein Training am Gerät (SPS) ermöglicht und damit eine völlige Unabhängigkeit zu einer kostenpflichtigen Programmierumgebung bietet. Die Opta wurde von mir mit einer Software (PTC, programmable trainable control) vorinstalliert und bietet nun so die Möglichkeit, diese über einen User-Button zu trainieren. Dazu wurde der klassische Browser Google Chrome verwendet.

Bildquelle: https://store.arduino.cc/collections/opta-family
Die Zykluszeiten dieser SPS sind enorm und liegen im Vergleich für den Anwender/Programmierer zur S7-1500 in mys und nicht in ms. Vom Speicherausbau im Giga-Bereich ganz zu schweigen. Da kann ein ausgiebiger NNP trainiert werden. Abgesehen von den Zykluszeiten ist die Programmierung mit der IDE in C/C++ wesentlich eleganter und debugfähig (falls notwendig). Diese Programmierung ist allerdings für die Anwendung nicht notwendig, sondern wurde von mir nur für die Entwicklung des Trainingssystems genutzt.
Das Training erfolgt für den Anwender über einen Browser, ebenso die Kontrolle des Trainings über die Strompfade des Stromlaufplanes, welche aus den Daten des NNP’s und deren WF auf den Browser abgeleitet werden.
Das Training kann somit, wie in einem späteren Video ersichtlich sein wird, nachvollzogen werden, was üblicherweise bei Machine-Learning nicht der Fall ist. Der aus den Trainingsdaten abgeleitete Stromlaufplan bietet zudem auch im Browser zusätzliche Möglichkeiten für die Editierung nach dem Training. Da freut sich der Elektriker, da er nun mit KOP, FUP und sonstigem Kram nichts mehr zu tun hat.
Ein ausführliches Beispiel für eine Schranke an einem Parkhaus soll zeigen, dass die OPTA eine ausgezeichnete Alternative zur Simatic-Plc darstellt. Sie wird zur Ki2Plc-OPTA!
Also, was will man mehr? 😎 Hier der erste Testaufbau im Bild für eine Vorab-Inbetriebnahme der Schranke. Die Opta hat eine Erweiterung mit zusätzlichen 16 Dig. Ein- und 8 Dig-Ausgängen. Insgesamt werden damit 24 Dig. Eingänge und 12 Dig. Ausgänge trainiert.
Auf der rechten Seite sieht man ein Training ohne besonderen Sinn. Aber es werden bereits komplette Neuronen im Strompfad integriert (M0.0 z.B. u.a.)
Im Mittelfeld entstehen dann noch die zusätzlichen Funktionen, welche für eine echte Inbetriebnahme notwendig werden.

