Build auf einem System ohne MATLAB® (Build Agent)

Wenn Sie Ihre TwinCAT-Objekte auf einem Entwicklungssystem ohne MATLAB®-Installation bauen möchten, wie zum Beispiel einem Build Agent, können Sie das sogenannte Pack-and-go-Feature (Pack’N Go) von MathWorks® nutzen. Das TwinCAT Target for Simulink® unterstützt und erweitert dieses Feature für TwinCAT-Entwicklungsprozesse.

Pack’N Go

Die Pack'N Go-Funktion ermöglicht das Verpacken eines Projekts und all seiner Abhängigkeiten. Das erleichtert den Transfer auf verschiedene Systeme, auf denen das Projekt kompiliert werden kann. Die ursprünglichen MATLAB®- oder TwinCAT-Umgebungen sind dafür nicht erforderlich. Ein solches Pack kann besonders in einem CI-Kontext von Vorteil sein, da eine effizientere Nutzung von MATLAB®-Agenten ermöglicht wird.

Erzeugen eines Pack-Outputs

Beispiel

TwinCAT.ModuleGenerator.Settings.Change('ConfigurationLevel', 'Advanced');
modelName = 'SimpleTempCtrl';
open_system(modelName);

TwinCAT.ModuleGenerator.Simulink.ModelExportConfig.ShowModelParam(modelName,'SolverType','Fixed-step');
TwinCAT.ModuleGenerator.Simulink.ModelExportConfig.ShowModelParam(modelName,'SystemTargetFile','TwinCatGrt.tlc'); 
% add your custom settings here
TwinCAT.ModuleGenerator.Simulink.ModelExportConfig.ShowModelParam(modelName,'TcProject_Publish', false); % disable publish step
TwinCAT.ModuleGenerator.Simulink.ModelExportConfig.ShowModelParam(modelName,'TcProject_PackOutputPath', fullfile(pwd,'simpleTempCtrl.zip')); % define name of pack output (also non zip is allowed 'simpleTempCtrlPack'

slbuild(modelName); % create pack output (without building)

Beispiel in MATLAB®: TwinCAT.ModuleGenerator.Samples.Start("Use Continuous Integration Principles with Code Generation").

Build

Sobald Sie eine Pack-Ausgabe erstellt haben, z. B. 'simpleTempCtrl.zip', können Sie diese Datei auf ein anderes Build-System kopieren. Das Build-System benötigt dann nur TwinCAT XAE und ein Visual Studio Professional oder ein gleichwertiges Programm (kein TwinCAT Target und keine MATLAB®-Installation). Für TwinCAT-Build 4026 installieren Sie auf dem Build-Agent:

Entpacken Sie die Pack-Ausgabe auf dem Build-Agent und navigieren Sie zur vcxproj-Datei. Sie können die Datei von hier aus in Visual Studio öffnen, um das Projekt zu bauen. Sie können auch das Projekt als vorhandenes Element zu Ihrer TwinCAT-Solution (im TwinCAT C++ Bereich) hinzufügen, oder das Projekt über die msbuild-Befehlszeilenschnittstelle bauen (siehe erste Zeile in allen PublishLog.txt-Dateien als Referenz).