Einstellungen des TwinCAT-Modulgenerators
Der TwinCAT-Modulgenerator wird genutzt, um den vom MATLAB® Coder™ generierten C/C++ Code in TwinCAT-Objekte zu überführen. Dabei kann über die Konfigurationsparameter Einfluss auf die erstellten TwinCAT-Objekte genommen werden. Dieses Oberkapitel gibt den Einstieg in die Konfiguration mit TwinCAT.ModuleGenerator.ProjectExportConfig und führt Sie zu den vertiefenden Unterkapiteln.
Wichtig für das Verständnis ist die Trennung zwischen Projekt- und Funktions-Ebene:
ProjectExportConfigarbeitet auf Projekt-Level.FunctionExportConfigarbeitet auf Funktions-Level und wird im Kontext derProjectExportConfigauch alsClassExportCfgbezeichnet. Dieses Objekt spiegelt die zu exportierenden MATLAB®-Funktionen wider.- Auf dem Funktions-Level wird wiederum zwischen TcCOM Modul (
TcCom) und SPS-Funktionsbaustein (PlcFb) unterschieden.
Die ProjectExportConfig besitzt mit ClassExportCfg ein Array von Einträgen, die jeweils auf eine FunctionExportConfig verweisen. Dadurch können mehrere MATLAB®-Funktionen in einer einzigen ProjectExportConfig zusammengefasst und gemeinsam verwaltet werden.
Erstellen einer Projekt-Export-Konfiguration
Der Einstieg in die Konfiguration erfolgt über ein Objekt der Klasse TwinCAT.ModuleGenerator.ProjectExportConfig. Dieses Objekt bildet den Projekt-Rahmen und sammelt in seinem Property ClassExportCfg die einzelnen FunctionExportConfig-Einträge der zu exportierenden MATLAB®-Funktionen.
exportCfg = TwinCAT.ModuleGenerator.ProjectExportConfig('FullPath',FullPathToVSproj);Dem Property 'FullPath' wird der vollständige Pfad und Name des zu erstellenden Visual Studio-Projekts übergeben.
Rückgabe ist ein Objekt der Klasse TwinCAT.ModuleGenerator.ProjectExportConfig.
Beispielaufruf:
FullPathToVSproj = 'C:\BuildDir\MyMATLABFcn';
exportConfig = TwinCAT.ModuleGenerator.ProjectExportConfig('FullPath',FullPathToVSproj);Methoden der Klasse TwinCAT.ModuleGenerator.ProjectExportConfig
| Fügt eine Export-Konfiguration zum Projekt hinzu. Zur Erstellung einer Export-Konfiguration siehe Abschnitt Erstellen einer Export Konfiguration. Die Export-Konfiguration wird unter Properties im Cell-Array ClassExportCfg angehängt. Beispielaufruf siehe Modul-Generator-Quickstart.
|
| Erstellt ein mat-File und speichert darin die Projekt-Export-Konfiguration. Übergabeargument ist ein Pfad, in dem das mat-File abgelegt werden soll. Beispielaufruf: exportCfg Speichert die Projekt-Export-Konfiguration im aktuellen Pfad.
|
| Lädt eine gespeicherte Projekt-Export-Konfiguration. Übergabeargument ist der Pfad, in dem das mat-File mit der gespeicherten Konfiguration liegt. Beispielaufruf: exportCfg Lädt die Projekt-Export-Konfiguration aus dem aktuellen Pfad. |
| Öffnet eine grafische Konfigurationsoberfläche zur Konfiguration der Projekt-Export-Konfiguration.
|
| Gibt eine Übersicht im MATLAB® Command Window über die aktuelle Projekt-Export-Konfiguration. Siehe Modul-Generator-Quickstart. Beispielaufruf: exportCfg
|

Properties der Klasse TwinCAT.ModuleGenerator.ProjectExportConfig
Die Properties sind in der Übersichtstabelle über alle Konfigurationsparameter zusammengefasst.
Erstellen und Laden einer Export-Konfiguration
Bei Nutzung des TwinCAT Target for MATLAB® wird zunächst der MATLAB® Coder™ benutzt, um C++-Sourcen zu erzeugen. Diese C++-Sourcen können dann zu einer Export-Konfiguration im TwinCAT-Modulgenerator zusammengefasst werden durch:
TwinCAT.ModuleGenerator.Matlab.FunctionExportConfig('MFile',Name,'BuildDir',cppDir)Als Properties wird mit 'BuildDir' der Pfad zu den, vom MATLAB® Coder™ erstellen, C++-Sourcen und mit 'MFile' der Name der MATLAB®-Funktion übergeben. Wird als Name bspw. BaseStatistics gewählt, so wird das TcCOM-Objekt diesen Namen tragen und der Funktionsbaustein in der SPS den Namen FB_BaseStatistics bekommen.
Wird das TwinCAT Target for Simulink® genutzt, ist die Herangehensweise etwas verändert. Starten Sie den Build-Vorgang aus Simulink® heraus mit deaktivierter Option „Run the publish step after project generation“. Laden Sie dann den erstellten <modelname>_tcgrt Ordner wie folgt, um die C++-Sourcen des Simulink®-Modells zur Projekt-Export-Konfiguration hinzuzufügen.
TwinCAT.ModuleGenerator.ProjectExportConfig.Load(<modelname>_tcgrt);Erstellen von TwinCAT Objekten mit dem Modul-Generator
TwinCAT.ModuleGenerator.ProjectExporter()Mit TwinCAT.ModuleGenerator.ProjectExporter() wird der Build-Vorgang für die im Property Project eingestellten Plattformen angestoßen. Als Argument wird das Objekt der Klasse TwinCAT.ModuleGenerator.ProjectExportConfig übergeben. Dadurch wird auf dem lokalen Dateisystem im Repository ein Ordner angelegt und die erstellten Treiber und Beschreibungsdateien abgelegt.
Beispielaufruf:
projExporter = TwinCAT.ModuleGenerator.ProjectExporter(exportCfg);