Erstellen versionierter Treiber
Jedes aus MATLAB® erstellte Objekt trägt eine Versionsinformation. Sie können entsprechend mehrere Versionen einer MATLAB® Funktion bauen und in TwinCAT versions-selektiv die erstellten Module instanziieren. Die Versionsnummer besteht aus vier Digits, z. B. 1.0.3.2 oder 2.12.123.14. Jede Stelle kann separat hochgezählt werden nach dem Schema: <Major>.<Minor>.<Build>.<Revision>
Versionierung in MATLAB® definieren
Die Konfiguration der Versionierung erfolgt über die Projekt-Parameter der Export-Konfiguration. Das Target for MATLAB® ermöglicht sowohl das automatische Inkrementieren als auch eine feste Vorgabe der Versionsnummer.
![]() | Verfügbares Beispiel in MATLAB® Führen Sie folgendes in der MATLAB® Kommandozeile aus, um das Beispiel zu öffnen: |
Automatische Versions-Inkremente
Die Basis-Version auf Basis derer ein Versionsupdate erstellt werden soll, wird über Project.VersionSrc angegeben. Im Standardfall ist dort $<LatestTMFile> angegeben. Dadurch wird auf dem lokalen Engineering PC nach der letzten verfügbaren Version des Modells gesucht und diese dann als Basis für den Versionsinkrement verwendet.
Jede Stelle der Versionsnummer kann separat hochgezählt werden nach dem Schema: <Major>.<Minor>.<Build>.<Revision>
Über Project.IncrementVersion kann ausgewählt werden, welche Stelle hochgezählt werden soll:
exportCfg.Project.IncrementVersion = 'Revision';Als Optionen stehen hier None, Revision, Build, Minor, Major zur Verfügung. Wird „None“ gewählt, erfolgt kein Versionsupdate und die letzte Version auf dem Engineering-PC wird überschrieben.
Ist beispielsweise die letzte Version eines Modells mit dem Namen „MyModelXY“ auf dem Engineering PC mit 1.2.12.4 gefunden und das Inkrement auf Revision gesetzt, wird eine Version 1.2.12.5 erstellt.
Vorgabe einer festen Versionsnummer
Eine feste Versionsnummer kann über Project.DrvFileVersion vorgegeben werde:
exportCfg.Project.DrvFileVersion = '1.2.12.5';Vorgabe einer Versionsnummer über ein externes File
Sie können ebenso eine externe Datei zur Vorgabe einer Version nutzen. Dies ist beispielsweise eine gängige Methode bei der Nutzung von Build Agents bei Continuous Integration.
Zur Konfiguration in MATLAB® schalten Sie das automatische Inkrementieren der Versionsnummer aus
exportCfg.Project.IncrementVersion = 'None';und geben Sie den Fullpath zu ihrem Version-File unter Project.VersionSrc an.
exportCfg.Project.VersionSrc = fullfile(pwd, 'version.xml');Aufbau der externen Datei:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appSettings>
<add key="major" value="1" />
<add key="minor" value="3" />
<add key="build" value="1301" />
<add key="revision" value="267" />
</appSettings>
</configuration>Versionierte Modelle im TwinCAT XAE verwenden
Alle im Engineering Repository verfügbaren Modelle können auch in jeder verfügbaren Version instanziiert werden. Navigieren Sie dazu, wie gewohnt, durch den Baum, um das TcCOM ihrer Wahl zu finden. In der letzten Hierarchieebene können Sie nun auch die Version des TcCOM auswählen.
Beispielhaft sind hier zwei Versionen (0.0.0.4 und 0.0.0.5) des SimpleTempCtrl verfügbar:

