Übersicht zu automatisch generierten Dateien

Wenn ein Build-Prozess angestoßen wird, werden einige Dateien und Ordner automatisch erzeugt. „Wo liegen die Dateien?“, „Was kann damit gemacht werden?“ und „Was bedeuten die Dateien?“ Diese Fragen werden im Folgenden beantwortet.

Welche Kategorien an automatisch generierten Dateien gibt es?

Alle vom TwinCAT-Target erstellten Dateien werden im aktuellen MATLAB®-path im Ordner <SimulinkModelName>_tcgrt zusammengefasst. Der Ordner liegt neben dem von MathWorks® generiert slprj-Ordner.

Übersicht zu automatisch generierten Dateien 1:

Generierter Source Code

Zentrale Datei für den Source Code ist <SimulinkModelName>.vcxproj und liegt im <SimulinkModelName>_tcgrt Ordner. Die Datei öffnet ein TwinCAT C++ Projekt, welches zum Inspizieren des generierten Quellcodes, zum nachträglichen Bauen von TwinCAT-Objekten oder auch zum Debuggen in TwinCAT genutzt werden kann.

Übersicht zu automatisch generierten Dateien 2:

Hinsichtlich der Build-Möglichkeit aus dem generierten TwinCAT C++ Projekt heraus, ist wissenswert, dass Sie den Publish-Step, d.h. das Bauen für die konfigurierten Plattformen, in Simulink® ausschalten können.

Übersicht zu automatisch generierten Dateien 3:

Sie können in Simulink® die Code-Generierung ohne Build durch Abwählen von Run the publish step after project generation erreichen. Der publish step beinhaltet den Build der TwinCAT-Objekte für die ausgewählten Plattformen (TwinCAT RT x86, x64 …).

Übersicht zu automatisch generierten Dateien 4:

Weitere nützliche Informationen hierzu:

Generierte Logfiles

Die generierten Logfiles werden im Unterordner log zusammengefasst. Die erstellen Logfiles sind die erste Anlaufstelle beim Debugging.

Übersicht zu automatisch generierten Dateien 5:

In diesem Ordner befinden sich bis zu drei Logfiles. Hauptanlaufstelle ist die Zusammenfassung alles Logs in der Datei <ModelName>_ModuleGenerationLog.txt.

Übersicht zu automatisch generierten Dateien 6:

Beckhoff Support benötigt Logfile

Wenn Sie Hilfe bei unserem Support in Anspruch nehmen, senden Sie bitte mindestens folgende Datei aus dem log-Ordner mit: <ModelName>_ModuleGenerationLog.txt

Der Aufbau des ModuleGenerationLog ist in mehrere Segmente unterteilt, die unterschiedliche Schritte des TwinCAT-Targets repräsentieren. Die Schritte werden jeweils mit ### im Log angezeigt.

Beispiel:

2023-10-18 14:48:37: ### Starting build procedure for: SimpleTempCtrl
2023-10-18 14:48:43: ### Save TLC export
2023-10-18 14:48:47: ### Export block diagram
2023-10-18 14:48:47: Block diagram export succeeded
2023-10-18 14:48:48: ### Export TwinCAT C++ project
2023-10-18 14:48:53: ### Save project
2023-10-18 14:48:53: The TwinCAT C++ project "C:\Users\xyz\Documents\MATLAB\TE14xxSamples\2023-10-18_13-58_SimpleTemperatureController\SimpleTempCtrl_tcgrt\SimpleTempCtrl.vcxproj" was generated successfully

Treten keine Warnungen oder Fehler in den Schritten auf, werden in der Regel keine Einträge für die durchgeführten Schritte vorgenommen. In manchen fällen wird auf erstellte Dateien explizit hingewiesen, wie im obigen Beispiel die erstellte vcxproj-Datei. Es wird für detailliertere Informationen auch auf weitere Logfiles verwiesen, siehe folgendes Beispiel:

2023-10-18 14:48:53: ### Publish TMX
2023-10-18 14:48:53: Configuration: "Release"
2023-10-18 14:48:53: Platform(s): "TwinCAT RT (x86);TwinCAT RT (x64);TwinCAT OS (x64)"
2023-10-18 14:48:53: TwinCAT SDK: "C:\TwinCAT\3.1\SDK\" (Version 3.1.4024.50)
2023-10-18 14:48:53: Platform Toolset: V142 (Automatically selected)
2023-10-18 14:48:53: Microsoft (R) Build Engine version 16.11.2+f32259642 for .NET Framework
2023-10-18 14:48:53: Copyright (C) Microsoft Corporation. All rights reserved.
2023-10-18 14:49:06: Publish procedure completed successfully
2023-10-18 14:49:06: See log file "C:\Users\xyz\Documents\MATLAB\TE14xxSamples\2023-10-18_13-58_SimpleTemperatureController\SimpleTempCtrl_tcgrt\log\SimpleTempCtrl_PublishLog.txt" for details

Treten Warnungen oder Fehler auf, werden diese im ModuleGenerationLog angezeigt. Die detaillierten Logs beinhalten hingegen alle Ausgaben des durchgeführten Schritts. Beispielsweise sind hier Warnungen im Bereich der Signatur-Prüfung der erstellen tmx-Dateien zu sehen:

2023-10-18 14:49:06: ### Publish summary
2023-10-18 14:49:06: Configuration: "Release"
2023-10-18 14:49:06: Platform(s): "TwinCAT RT (x86);TwinCAT RT (x64);TwinCAT OS (x64)"
2023-10-18 14:49:06: TwinCAT SDK: "C:\TwinCAT\3.1\SDK\" (Version 3.1.4024.50)
2023-10-18 14:49:06: Platform Toolset: V142 (Automatically selected)
2023-10-18 14:49:06: Vendor name: TE140x Module Vendor
2023-10-18 14:49:06: Library name: SimpleTempCtrl
2023-10-18 14:49:06: Library version: 2.0.1.24
2023-10-18 14:49:06: Local installation folder: "C:\TwinCAT\3.1\Repository\TE140x Module Vendor\SimpleTempCtrl\2.0.1.24"
2023-10-18 14:49:06: TMX archive: -
2023-10-18 14:49:06: Signatures:
2023-10-18 14:49:06: File 'C:\TwinCAT\3.1\Repository\TE140x Module Vendor\SimpleTempCtrl\2.0.1.24\TwinCAT RT (x86)\SimpleTempCtrl.tmx' has signature.
2023-10-18 14:49:06: issuer TestSign123 (x.yz@beckhoff.com), certificate expires on 08/15/2025
2023-10-18 14:49:06: Warning: Signature found, but OEM certificate was not signed by Beckhoff. Driver can only be used in test mode.
2023-10-18 14:49:06: File 'C:\TwinCAT\3.1\Repository\TE140x Module Vendor\SimpleTempCtrl\2.0.1.24\TwinCAT RT (x64)\SimpleTempCtrl.tmx' has signature.
2023-10-18 14:49:06: issuer TestSign123 (x.yz@beckhoff.com), certificate expires on 08/15/2025
2023-10-18 14:49:06: Warning: Signature found, but OEM certificate was not signed by Beckhoff. Driver can only be used in test mode.
2023-10-18 14:49:06: File 'C:\TwinCAT\3.1\Repository\TE140x Module Vendor\SimpleTempCtrl\2.0.1.24\TwinCAT OS (x64)\SimpleTempCtrl.tmx' has signature.
2023-10-18 14:49:06: issuer TestSign123 (x.yz@beckhoff.com), certificate expires on 08/15/2025

Erstellte TwinCAT-Objekte

Die erstellten Binär-Dateien und Beschreibungsdateien, welche zur weiteren Nutzung im TwinCAT XAE verwendet werden können, liegen nach erfolgreichem Build im sogenannten Engineering Repository, d. h. auf dem Engineering PC unter:

%TwinCATInstallDir% \3.1\Repository\<Vendor>\<ModelName>\<Version>\

Übersicht zu automatisch generierten Dateien 7:

Verteilung von TwinCAT-Objekten auf andere XAE-Systeme: Wenn der Ordner auf Ebene <ModelName> auf andere PCs mit TwinCAT XAE in die lokalen Engineering Repositories kopiert wird, können deren Nutzer die erstellten TwinCAT-Objekte in ihren TwinCAT Solutions verwenden.

Vergleiche dazu auch Teilen von erstellten TwinCAT-Objekten.

Weitere Hinweise

Beschreibung der generieten C++ Dateien und Binärdateien

Versionierte C++ Projekte