Automation Interface Unterstützung

Das Static Analysis kann teilweise über das Automation Interface (AI) bedient werden. Die AI-Unterstützung umfasst folgende Befehle/Aktionen:

Bitte beachten Sie hierzu auch die Automation Interface Dokumentation:
Produktbeschreibung

Explizite Durchführung der Statischen Analyse per Automation Interface

Die beiden folgenden Befehle können explizit per Automation Interface aufgerufen werden:

Für die Methode RunStaticAnalysis() kann bCheckAll als optionaler Parameter angegeben werden. Die Methode kann aber auch parameterlos aufgerufen werden.

Parameter

Aufruf

RunStaticAnalysis()

Ausführung des Befehls Statische Analyse durchführen

RunStaticAnalysis(bCheckAll = FALSE)

RunStaticAnalysis(bCheckAll = TRUE)

Ausführung des Befehls Statische Analyse durchführen [Überprüfe alle Objekte]

PowerShell-Beispiel:

$p = $sysMan.LookupTreeItem("TIPC^MyPlcProject^MyPlcProject Project")
$p.RunStaticAnalysis()

C#-Beispiel:

ITcPlcIECProject4 plcIec4 = sysMan.LookupTreeItem("TIPC^Untitled1^Untitled1 Project") as ITcPlcIECProject4;
plcIec4.RunStaticAnalysis();

Implizite Durchführung der Statischen Analyse per Automation Interface

Alternativ besteht die Möglichkeit, die Einstellung Statische Analyse automatisch durchführen zu aktivieren und das Projekt per Automation Interface zu erstellen, sodass bei diesem Erstellungsvorgang implizit die Statische Analyse durchgeführt wird.

Einstellungen/Konfiguration per Automation Interface speichern

Automation Interface Unterstützung 1:

Verfügbar ab TwinCAT 3.1 Build 4026

Die Einstellungen vom Static Analysis können per Automation Interface in eine *.csa-Datei gespeichert bzw. exportiert werden.

Für die Methode SaveStaticAnalysisSettings(string bstrFilename) muss der Zielpfad der Datei als Übergabeparameter angegeben werden.

Hinweis: Die Methode RunStaticAnalysis ist ab dem Interface ITcPlcIECProject3 verfügbar. Die Methoden SaveStaticAnalysisSettings und LoadStaticAnalysisSettings werden ab dem Interface ITcPlcIECProject4 angeboten.

C#-Beispiel:

// Path to the location to export the SAN configuration 
string saveCsaPath = @"C:\Users\UserName\Desktop\SaveTest.csa";
[…]
// Navigate to PLC project
ITcPlcIECProject4 plcIec4 = sysMan.LookupTreeItem("TIPC^Untitled1^Untitled1 Project") as ITcPlcIECProject4;
// Save SAN configuration
plcIec4.SaveStaticAnalysisSettings(saveCsaPath);

Einstellungen/Konfiguration per Automation Interface laden

Automation Interface Unterstützung 2:

Verfügbar ab TwinCAT 3.1 Build 4026

Eine vorgefertigte Static Analysis Konfiguration (*.csa-Datei) kann per Automation Interface ins PLC-Projekt geladen werden. Die hierdurch geladenen Einstellungen können anschließend per AI überprüft werden, indem das Static Analysis ausgeführt wird (s.o.).

Für die Methode LoadStaticAnalysisSettings(string bstrFilename) muss der Pfad der zu ladenden Datei als Übergabeparameter angegeben werden. 

Hinweis: Die Methode RunStaticAnalysis ist ab dem Interface ITcPlcIECProject3 verfügbar. Die Methoden SaveStaticAnalysisSettings und LoadStaticAnalysisSettings werden ab dem Interface ITcPlcIECProject4 angeboten.

C#-Beispiel:

// Path to load a SAN configuration
string loadCsaPath = @"C:\Users\UserName\Desktop\LoadTest.csa";
[…]
// Navigate to PLC project
ITcPlcIECProject4 plcIec4 = sysMan.LookupTreeItem("TIPC^Untitled1^Untitled1 Project") as ITcPlcIECProject4;
// Load SAN configuration
plcIec4.LoadStaticAnalysisSettings(loadCsaPath);
// Optionally run SAN afterwards
plcIec4.RunStaticAnalysis();

Metriken exportieren

Automation Interface Unterstützung 3:

Verfügbar ab TwinCAT 3.1 Build 4026.4

Die Standard-Metriken können per Automation Interface in eine Textdatei (*.csv) exportiert werden. Dabei findet implizit eine aktuelle Berechnung der Metriken statt. Eine manuelle Ausführung dieses Vorgangs würde die beiden folgenden Befehle beinhalten:

Für die Methode ExportStandardMetrics(string bstrFilename) muss der Pfad, an dem die Exportdatei gespeichert werden soll, als Übergabeparameter angegeben werden. 

Automation Interface Unterstützung 4:

Die Methode ExportStandardMetrics ist ab dem Interface ITcPlcIECProject5 verfügbar.

C#-Beispiel:

// Path to save the csv file
string savePath = @"C:\Users\UserName\Desktop\Metrics.csv";
[…]
// Navigate to PLC project
ITcPlcIECProject5 plcIec5 = sysMan.LookupTreeItem("TIPC^Untitled1^Untitled1 Project") as ITcPlcIECProject5;
// Export standard metrics
plcIec5.ExportStandardMetrics(savePath);