Sonntag, 5. März 2023

  Copyright ©  Dipl.-Ing. Johannes Hofer 2022                                           

 

Ki2Plc

Die Möglichkeiten einer Programmierung im TIA-Portal, um diese am Geschehen der künstlichen Intelligenz zu beteiligen

 

Neuronen und Synapsen für die KI-PLC

Was wir hier sehen, ist eine völlig andere Betrachtung der KI-PLC. Dieses mal nicht nur für das TIA-Portal, sondern auch für Geräte mit der Option, diese in Python als SPS zu betreiben.




In einem praktischen Modell-Versuch, wie im Bild dargestellt, werden Daten von einer SPS über den Pico-EVB an einen PC gesendet. Selbstverständlich geht das auch im dargestellten Netz direkt zum PC, ohne den Pico.

Der Vorteil die Daten über den Pico zu senden, besteht u. a. darin, dass diese Option auch nach der Inbetriebnahme zur weiteren Datenübertragung bestehen bleiben kann.
 

Was passiert hier?

Der SPS-Programmierer sorgt für die Daten zur Inbetriebnahme eines FB‘s und sendet diese an die KI2Plc. Das ist der sogenannte Input-Layer (IPL), welcher dann in eine Matrix mit künstlichen Neuronen und Synapsen übernommen werden. Eine Inbetriebnahme des FBs erfolgt danach in der KI2PLC-Software mittels Deep-Learning und dessen Training. Diese sendet dann das Ergebnis in Form einer Matrix an die SPS und kann nun dort im FB mittels einer Standard-Prozedur angewendet werden.

Geräte (SPS / IOT) mit integriertem Python-Interpreter erhalten eine Matrix in Python geschrieben, welche speziell aus dem Training als Datei.py abgeleitet wird.


Aufgabenstellung

Die Daten von der SPS oder Pico, werden im Eingangslayer aufgenommen und über Synapsen für das Deep-Learning zur Verfügung gestellt. Hier können die Synapsen mit zusätzlichen Eigenschaften versehen werden. Danach erfolgt die Übergabe in den Eingangslayer. 

Das Training sorgt nun dafür, dass die Hiddenlayer bearbeitet werden und diese dann am Ausgangslayer zur weiteren Bearbeitung zur Verfügung stehen. Diesen Vorgang schauen wir uns im folgen Video (ohne Ton) an:


Ergebnis

Ein Ergebnis aus einem Training, ist ein Ausgangslayer, welcher für die SPS als Daten oder ein Python-File zur weiteren Bearbeitung zur Verfügung steht. Insgesamt wurden bei diesem Durchlauf 920 Aufnahmen gemacht (Bild unten) und in den Layern ausgewertet. Daraus entsteht nun eine Matrix, welche hier den Zylinder interpretiert. Vergleichbar mit den Aufnahmen von Katzen, um diese von z. B. Hunden zu differenzieren.



Das funktioniert wunderbar auch für PLCs, nur mit anderen Gewichtungsmethoden für das Training, wie es üblicherweise für Erkennung von Katzen dokumentiert wird.

Natürlich werden mehrere Layers mit künstlichen Neuronen benötigt, wie hier im Video gezeigt wird. Das Video soll uns also nur einen möglichen Weg darstellen und die Fantasie anregen einmal darüber nachzudenken. 

Wie nun so eine Umsetzung der Matrix in der SPS oder in einem Pico praktisch aussieht, zeige ich bei meinem nächsten Blog-Beitrag 🙋


https://youtu.be/uzpAZC_Ag_4



Mein KI-Berater: