GUI
Der TwinCAT 3 Machine Learning Model Manager ist das zentrale UI zum Bearbeiten von ML-Modellbeschreibungsdateien. Das Werkzeug ist in Visual Studio integriert und kann über die Menüleiste unter TwinCAT > Machine Learning geöffnet werden.
Voraussetzung an Visual Studio Version Die graphische Oberfläche des TwinCAT 3 Machine Learning Model Managers ist kompatibel mit Visual Studio 2017 und 2019 sowie der TcXaeShell. Sollten Sie eine andere Version nutzen, können Sie die Oberfläche als Standalone Executable ausführen. Diese liegt unter <TwinCATInstallDir>\3.1\Components\TcMachineLearning\ML_VS_Extension\ ModelManagerStandalone.exe. |
Alternativ zur Bearbeitung der ML-Modellbeschreibungsdateien über die Oberfläche des TwinCAT 3 Machine Learning Model Manager können Sie auch ein Command Line Tool, siehe CLI, oder eine Python Library, siehe Python API nutzen.
Konvertieren von ML-Modelldateien
Unter dem Reiter Convert tool befindet sich ein Konvertierungswerkzeug für ML-Modellbeschreibungsdateien. Es können XML und ONNX Dateien selektiert und in XML oder BML Format konvertiert werden.
Hinweis | |
Konvertieren von Beckhoff BML zurück zu XML ist nicht vorgesehen Ziel der Beckhoff BML ist es, den Inhalt als Binärdatei nicht frei lesbar zu repräsentieren. Daher ist der Konvertierungsvorgang von Beckhoff BML zu Beckhoff XML nicht vorgesehen. |
Über Select files öffnet sich der File Browser und es können ML-Modellbeschreibungsdateien ausgewählt werden (multi-select möglich durch Strg-Click). Selektierte ML-Modelldateien werden auf der linken Seite mit ihrem Pfad und Dateinamen gelistet. Dateien können durch Remove selected from list wieder aus dieser entfernt werden.
Gelistete ML-Modellbeschreibungsdateien können in der linken Liste ausgewählt (auch hier ist ein multi-select mit Strg-Click möglich) und mit Convert files in das, über das Drop-Down-Menü, gewählte Format konvertiert werden. Die konvertierten Dateien werden im converted file path abgelegt. Default ist der Pfad <TwinCATPath>\Functions\TF38xx-Machine-Learning\ConvertToolFiles. Durch Click auf Open converted file path kann der converted file path im File Browser geöffnet werden.
Mit Select converted files path kann der Pfad verändert werden. Die Änderung bleibt auch nach Neustart des PCs erhalten.
Erstellen einer Multi-Engine Beschreibung
Zum Erstellen einer Multi-Engine sind mit Select files mehrere ML-Modellbeschreibungen zu laden. In der Liste auf der linken Seite werden dann Engine-basiert die Einträge sichtbar. Sind in einer Beschreibungsdatei bereits mehrere Engines vorhanden, werden diese einzeln in der Liste aufgeführt.
Das Feld MergeReferenceName ist frei editierbar. Hier kann ein Referenzname der selektierten Engine eingetragen werden, sodass diese Engine in der SPS über diese Referenz adressierbar ist, vgl. PredictRef und GetEngineIdFromRef. Wird in der SPS nicht mit dem Referenznamen, sondern mit der EngineId gearbeitet gilt, dass die oberste Engine in der Liste die ID = 0 trägt und die folgenden entsprechend 1, 2, 3 usw.
Über die Checkbox IsIncluded ist einstellbar, ob eine selektierte Engine in die zusammengeführte Beschreibungsdatei übernommen werden soll oder nicht.
Im Mittelteil der Benutzeroberfläche können Engines in der Liste hinsichtlich ihrer Position manipuliert werden. Selektierte Engines können nach oben oder unten in der Liste verschoben werden (Pfeil hoch und runter). Hier sind beliebig viele Engines gleichzeitig auswählbar. Ebenso kann über das Kreuz-Symbol eine beliebige Anzahl von Engines gleichzeitig bzgl. der Checkbox IsIncluded manipuliert werden. Sind zwei Engines selektiert, können diese den Platz tauschen, indem das kreisförmige Doppelpfeil-Symbol verwendet wird. Engines können aus der Liste mit dem Papierkorb-Symbol entfernt werden.
In dem Textfeld im Mittelteil kann der Name der zusammengeführten ML-Beschreibungsdatei eingetragen werden. Mit Merge wird die Datei erzeugt und im Dateipfad <TwinCATPath>\Functions\TF38xx-Machine-Learning\MergeToolFiles abgelegt. Mit Select target path kann der Pfad verändert werden.
Extrahieren von Multi-Engine Beschreibungen
Mit dem Extract tool ist es möglich, zusammengeführte Beschreibungsdateien wieder zu trennen. Über Select file to extract kann eine ML-Modellbeschreibungsdatei geladen werden. In der Liste auf der linken Seite erscheinen alle darin enthalten Engines. Wird eine Engine selektiert, kann diese durch Extract in eine eigenständige ML-Beschreibungsdatei überführt werden. Der Name der generierten neuen Datei ist im Textfeld einzutragen. Ist die Checkbox Auto file name aktiv, wird der Originaldateiname um den String im Textfeld ergänzt. Ist die Checkbox inaktiv, wird nur der String im Textfeld als neuer Dateiname genutzt. Die neu erzeugte Datei wird im Dateipfad <TwinCATPath>\Functions\TF38xx-Machine-Learning\ExtractToolFiles abgelegt. Mit Select target path kann der Pfad verändert werden.
Metadaten zum Modell erstellen
Über den Reiter Configuration tool wird der Konfigurator angezeigt für:
Eine ML-Beschreibungsdatei kann über Select file ausgewählt und dann bearbeitet werden. Nach Bearbeitung wird mit Save changes die Originaldatei überschrieben.
Die Bearbeitung der Custom Attributes erfolgt über die Buttons:
- Add attribute entry: Fügt dem ausgewählten Tree item ein Attribut hinzu. Das Tree item ist in der linken Liste zu selektieren.
- Wird ein Attribut angelegt, ist der Name, der Datentyp und der Wert bzw. die Werte anzugeben.
- Löschen von Attributen erfolgt durch Selektieren des Attributes und Drücken der Taste Entfernen.
- Add tree entry: Fügt ein Tree item unter dem selektierten Tree item (als Sub Tree Item) an.
- Rename tree entry: Das selektierte Tree Item kann umbenannt werden.
- Remove tree entry: Das selektierte Tree Item, inkl. der Sub Tree Items, wird gelöscht.
Durch Aktiveren der Checkbox Trafo active lässt sich die Editierungsfläche für Input- und Output Transformationen freischalten. Je nach Anzahl der Ein- und Ausgänge wird eine entsprechende Anzahl von Zeilen angeboten, in denen jeweils Scaling und Offset einzutragen ist, vgl. XML Tag AuxilliarySpecifictaions. Über die Buttons Paste Scaling und Paste Offset kann aus einer Liste von Zahlen aus der Zwischenablage ein Wert als Offset oder Scaling eingefügt werden. Die Zahlenfolge kann dabei durch Komma, Semikolon oder Leerzeichen getrennt sein. Lediglich die Anzahl der Zahlen der Liste muss zu der Anzahl der Ein- bzw. Ausgänge passen.
Die Producer und Target Version Information wird automatisch vom TwinCAT 3 ML Model Manager gesetzt. Die Target Version wird auf Basis des verwendeten Feature Sets der Modellbeschreibungsdatei automatisch ermittelt. Wird eine ältere ML Runtime Version genutzt, um diese Modelldatei zu laden, erfolgt eine Warnmeldung bei der Ausführung der Configure-Methode.
Im unteren rechten Teil des Fensters wird die Anzahl der Ein- und Ausgänge des Modells sowie der Modell-Typ angezeigt. Dies kann nicht editiert werden und dient nur zur Information.