Dateibeschreibung
Bei der Entwicklung von TwinCAT C++ Modulen ist ein direkter Umgang mit Dateien des Dateisystems möglich. Dies ist von Interesse, entweder um zu verstehen wie das System funktioniert oder für spezielle Anwendungsfälle, wie z. B. manuelle Dateiübertragung, usw.
Hier eine Liste der Dateien, die in Zusammenhang mit C++ Modulen stehen.
Datei | Beschreibung | Weitere Informationen |
|---|---|---|
Engineering / XAE | ||
*.sln | Visual Studio Solution-Datei, beherbergt TwinCAT- und Nicht-TwinCAT-Projekte |
|
*.tsproj | TwinCAT Projekt, Sammlung aller verschachtelten TwinCAT-Projekte, wie TwinCAT C++ oder TwinCAT SPS-Projekt |
|
_Config/ | Ordner enthält weitere Konfigurationsdateien (*.xti), die zum TwinCAT-Projekt gehören. | Siehe Menü Tools| Options| TwinCAT| XAE-Environment| File Settings |
_Deployment/ | Ordner für kompilierte TwinCAT C++ Treiber |
|
*.tmc | TwinCAT Module Class Datei (XML-basiert) | |
*.rc | Ressourcendatei | |
*.vcxproj.* | Visual Studio C++ Projektdateien |
|
*ClassFactory.cpp/.h | Class Factory für diesen TwinCAT Treiber |
|
*Ctrl.cpp/.h | Treiber hochladen und entfernen für TwinCAT UM Plattform |
|
*Driver.cpp/.h | Treiber hochladen und entfernen für TwinCAT RT Plattform |
|
*Interfaces.cpp/.h | Deklaration der TwinCAT COM Schnittstellenklassen |
|
*W32.cpp./.def/.idl |
|
|
*.cpp/.h | Eine C++/Header-Datei pro TwinCAT Modul im Treiber. Benutzercode hier einfügen. |
|
Resource.h | Wird von *.rc Datei benötigt |
|
TcPch.cpp/.h | Wird für die Erstellung von vorkompiliertem Header verwendet |
|
%TC_INSTALLPATH%\Repository\<Vendor>\<PrjName>\<Version>\<Platform>\*.tmx | Kompilierter Treiber, der über das TcLoader geladen wird. TwinCAT 3.1.4024.x: C:\TwinCAT\3.1\Repository\C++ Module Vendor\Untitled1\0.0.0.1\TwinCAT RT *\Unititled1.tmx Ab TwinCAT 3.1.4026.x: C:\ProgramData\Beckhoff\TwinCAT\3.1\Repository\C++ Module Vendor\Untitled1\0.0.0.1\TwinCAT RT *\Unititled1.tmx | |
%TC_INSTALLPATH% \CustomConfig\Modules\* | Veröffentlichtes TwinCAT C++ Projekt normalerweise C:\TwinCAT\3.1\CustomConfig\Modules\* Ab TwinCAT 3.1.4026.x: C:\ProgramFiles (x86)\Beckhoff \TwinCAT\3.1\Config\Modules\* | Siehe Module exportieren
|
Laufzeit / XAR | ||
%TC_BOOTPRJPATH% \CurrentConfig\* | Derzeitiges Konfigurationssetup Windows: C:\TwinCAT\3.1\Boot Ab TwinCAT 3.1.4026.x: Windows: C:\ProgramData\Beckhoff \TwinCAT\3.1\Boot TwinCAT/BSD: /usr/local/etc/TwinCAT/3.1/Boot |
|
%TC_DRIVERAUTOINSTALLPATH% \*.sys/pdb | Kompilierter, plattformspezifischer Treiber, der über das Betriebssystem geladen wird. Windows: TwinCAT 3.1.4024.x: C:\TwinCAT\3.1\Driver\AutoInstall (vom System geladen) Ab TwinCAT 3.1.4026.x: <nicht verfügbar> |
|
%TC_INSTALLPATH%\Boot\Repository\<Vendor>\<PrjName>\<Version>\*.tmx | Kompilierter Plattform-spezifischer Treiber, der über den TcLoader geladen wird. Windows: TwinCAT 3.1.4024.x: C:\TwinCAT\3.1\Boot\Repository\C++ Module Vendor\Untitled1\0.0.0.1\Untitled1.tmx Ab TwinCAT 3.1.4026.x: C:\ProgramData\Beckhoff \TwinCAT\3.1\Boot\Repository\C++ Module Vendor\Untitled1\0.0.0.1\Untitled1.tmx TwinCAT/BSD: /usr/local/etc/TwinCAT/3.1/Boot\/Repository\C++ Module Vendor\Untitled1/0.0.0.1/Untitled1.tmx |
|
%TC_BOOTPRJPATH% \TM\OBJECTID.tmi | TwinCAT Module Instance Datei Beschreibt Variablen des Treibers Dateiname lautet ObjectID.tmi Windows: C:\TwinCAT\3.1\Boot\TMI\OTCID.tmi Ab TwinCAT 3.1.4026.x: Windows: C:\ProgramData\Beckhoff \TwinCAT\3.1\Boot\TMI\OTCID.tmi TwinCAT/BSD: |
|
Temporäre Dateien | ||
*.sdf | IntelliSense Datenbank |
|
*.suo / *.v12.suo | Benutzerspezifische und Visual Studio-spezifische Dateien |
|
*.tsproj.bak | Automatisch generierte Sicherungsdatei von tsproj |
|
ipch/ | Für vorkompilierten Header erstelltes Zwischen-Verzeichnis |
|
Ablauf der Kompilierung
Hier wird der Ablauf beschrieben, den ein Build oder Rebuild auf einem TwinCAT C++ Projekt im TwinCAT Engineering XAE auslöst. Dies ist beispielsweise zu berücksichtigen, wenn Firmen-spezifische Umgebungen und Bauprozesse integriert werden sollen.
Welche Konfiguration bei einem Build oder Rebuild gebaut wird, hängt von der aktuellen Auswahl im Visual Studio ab:

Die richtige Ziel-Architektur (TwinCAT RT (x64) hier) wird durch eine Auswahl des Zielsystems passend gesetzt.
Der Configuration Manager erlaubt die dezidierte Einstellung der Build-Konfiguration.
Bei Auswahl von Build oder Rebuild (und damit auch beim Activate Configuration) laufen die folgenden Schritte ab:
- 1. Die Quellen liegen im jeweiligen Projekt-Verzeichnis.
- 2. Die Kompilate werden architektur-spezifisch erzeugt unterhalb des Projekt-Verzeichnisses _products\TwinCAT RT (x64)\Release\<ProjectName>
- 3. Nach dem Linkvorgang wird danach die .tmx/.pdb-Datei in dem Projekt-Verzeichnis abgelegt.
- 4. Ein Druck auf den Activate Configuration-Button führt dazu, dass .tmx/.pdb von dem Engienering Repository auf das Zielsystem übertragen wird (ggf. ist das eine lokale Kopie).
Bei Auswahl von Publish auf dem Projekt baut für die ausgewählten Plattformen und legt das Ergebnis im Engineering-Repository ab: C:\ProgramData\Beckhoff\TwinCAT\3.1\Repository\<vendor>\<ProjectName>\<version>\TwinCAT RT (x64)\Release\, wobei auch die TMC Datei aktualisiert wird.