Regeln für Projekte automatisch prüfen

logi.CAD 3 stellt ein Werkzeug zur automatisierten Regelprüfung für ein logi.CAD 3-Projekt oder für einige Objekte eines logi.CAD 3-Projekts zur Verfügung. Dieses Werkzeug wird auch als Modell-Regel-Prüfer oder als Möglichkeit zur Validierung einer Anwendung bezeichnet.

Gut zu wissen

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/lightbulb.svg Das Werkzeug ist zur Verwendung durch einen fortgeschrittenen Anwender von logi.CAD 3 vorgesehen.

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/lightbulb.svg Bedingung für die erfolgreiche Verwendung des Werkzeugs sind Kenntnisse über die durchzuführende Aktion, wie sie in der grafischen Benutzeroberläche von logi.CAD 3 ausgeführt werden würde.

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/lightbulb.svg Die Ausgaben des Werkzeugs erfolgen nur in englischer Sprache.

Vorbereitungen

  1. Stellen Sie sicher, dass logi.CAD 3 installiert ist. Halten Sie die folgenden Informationen bereit:

    • der Pfad zum Installationsverzeichnis von logi.CAD 3

    • der Pfad zu einem Verzeichnis, das als Arbeitsbereich verwendet wird
      Falls das Verzeichnis nicht existiert, wird es vom Werkzeug erstellt. Falls der optionale Parameter
      -checkEmptyWorkspace verwendet wird (siehe die Beschreibung dieses Parameters weiter unten), muss das Verzeichnis leer sein.

    • der Pfad zum Projekt, das geprüft werden soll

    • optional: der Name des Ordners/Objekts oder der Ressource/Bibliothek, die geprüft werden soll

    • der Pfad zur Konfigurationsdatei für das Protokoll (siehe unten für weitere Informationen)
      Eine Datei mit einer Beispielkonfiguration ist in der Installation von logi.CAD 3 enthalten.

  2. Stellen Sie sicher, dass die Regeln in den Eigenschaften des Projekts entsprechend konfiguriert sind. Details: Siehe "Konfiguration der Regeln ändern".

  3. Öffnen Sie eine Befehlszeile: z.B. cmd.exe unter Windows und wechseln Sie in das Installationsverzeichnis von logi.CAD 3 .

Aufruf

logiCAD3c --launcher.ini logiCAD3.ini -application com.logicals.mrc.application -noSplash -projectPath <PROJECTPATH> -objectToValidate <OBJECT> -data <WORKSPACE> -outputPath <REPORTPATH> -outputFile <REPORTFILE> -checkEmptyWorkspace -vmargs -Dlog4j.configuration=file:<LOG-CONFIGURATION>

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/warning.svg Der Aufruf des Werkzeugs wird nicht offiziell für Linux unterstützt. Wenn Sie dennoch versuchen wollen, das Werkzeug unter Linux aufzurufen, ersetzen Sie den Teil logiCAD3c --launcher.ini logiCAD3.ini -application des oben genannten Aufrufs durch logiCAD3 -application . Der restliche Teil des Aufrufs ist identisch mit dem oben genannten Aufruf.

Beschreibung der Parameter:

Parameter

Beschreibung

Beispiel

<PROJECTPATH>

absoluter Pfad zum Projekt
Falls das Projekt bereits innerhalb des Arbeitsbereichs existiert (z.B. aufgrund eines früheren automatischen Imports des Projekts), ist es auch möglich, nur den Projektnamen anzugeben.

Falls Sie das Tool für ein Projekt aufrufen, werden die entsprechenden Objekte des Projekts laut den Regeln und entsprechend der Konfiguration für das Projekt geprüft.

C:\LC3Projects\MyProject

<OBJECT>

Name des Ordners/Objekts innerhalb des Projekts, für das die Validierung ausgeführt werden soll, d.h. ein projektrelativer Pfad
Beim Standardaufruf (wenn dieser Parameter nicht angegeben ist) werden die entsprechenden Objekte des Projekts validiert.

Es ist möglich, die folgenden Objekte als Parameter anzugeben:

  • ein Ordner des Projekts
    Falls das Werkzeug für einen Ordner aufgerufen wird, werden die entsprechenden Objekte des Ordners laut den Regeln und entsprechend der Konfiguration für das Projekt geprüft.

  • ein einzelnes Objekt des Projekts, z.B. ein SPS-Objekt, eine Bibliothekskonfiguration oder ein Objekt, das einen Baustein enthält
    Falls das Werkzeug für ein SPS-Objekt aufgerufen wird, werden alle Objekte, die beginnend bei der Ressource verwendet werden, laut den Regeln und entsprechend der Konfiguration für die Ressource geprüft. Falls das Werkzeug für eine Bibliothekskonfiguration aufgerufen wird, werden die Objekte, die in der Bibliothekskonfiguration angegeben sind, laut den Regeln für das Projekt und eines vordefinierten Regelsatzes geprüft. Falls das Werkzeug für eine POE (z.B. ein ST-Objekt) aufgerufen wird, wird die POE laut den Regeln und entsprechend der Konfiguration für das Projekt geprüft.
    images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/information.svg Wenn Sie ein Objekt angeben, fügen Sie die entsprechende Objekterweiterung hinzu (siehe Beispiele auf der rechten Seite).

für einen Ordner: srcfür ein SPS-Objekt: local.iecplcfür ein ST-Objekt: program.iecst oder plc\common\myblock.iecst
für eine Bibliothekskonfiguration: myLib01.lc3lib

<WORKSPACE>

absoluter Pfad zu einem Arbeitsbereich, in den das Projekt importiert werden soll
Beachten Sie::

  • Das Verzeichnis des Arbeitsbereichs darf sich nicht innerhalb eines Verzeichnisses befinden, bei dem es sich um ein logi.CAD 3-P rojekt handelt.

  • Möglicherweise muss dieses Verzeichnis leer sein – dies hängt vom optionalen Parameter -checkEmptyWorkspace ab (siehe Beschreibung dieses Parameters weiter unten).

  • Nach dem Aufruf enthält der Arbeitsbereich einen Verweis auf das logi.CAD 3-P rojekt. Das bedeutet, dass das logi.CAD 3-P rojekt nicht in den Arbeitsbereich kopiert wurde.
    Dies ist das gleiche Verhalten wie innerhalb der grafischen Benutzeroberfläche von logi.CAD 3 , wenn Sie den Befehl Importieren... und den Importtyp Vorhandene Projekte in den Arbeitsbereich mit der deaktivierten Option Projekte in Arbeitsbereich kopieren verwenden würden.

  • Falls aufgrund eines früheren Imports der Verweis auf das logi.CAD 3-Projekt bereits im angegebenen Arbeitsbereich vorhanden ist, wird der Import nicht erneut durchgeführt, um die Leistung des Werkzeugs zu verbessern.

C:\temp\LC3Workspace

<REPORTPATH>

absoluter oder relativer Pfad, wo die Berichtsdatei erstellt werden soll
Falls das Verzeichnis nicht existiert, wird es vom Werkzeug erstellt.
Beim Standardaufruf (wenn dieser Parameter nicht angegeben ist) wird der Bericht so erzeugt, als ob die Validierung innerhalb der grafischen Benutzeroberfläche von logi.CAD 3 gestartet wird .
Details: Siehe "Ergebnisse der Prüfung in Sicht "Validieren"" und Überschrift "Bericht für Validierung".

C:\temp\validation

<REPORTFILE>

Dateiname des erzeugten Berichts
Falls die Datei bereits existiert, überschreibt das Werkzeug diese Datei.

Beim Standardaufruf (wenn dieser Parameter nicht angegeben ist) wird der Bericht so erzeugt, als ob die Validierung innerhalb der grafischen Benutzeroberfläche von logi.CAD 3 gestartet wird. Es ist möglich, einen solchen Bericht in die Sicht Validieren v on logi.CAD 3 zu laden.
Details zum Bericht: Siehe "Ergebnisse der Prüfung in Sicht "Validieren"" und Überschrift "Bericht für Validierung".

report01.mrclog

<LOG-CONFIGURATION>

Pfad zur Konfigurationsdatei für das Protokoll
Alle Meldungen des Werkzeugs werden an das Gerät ausgegeben, das in der Konfigurationsdatei für das Protokoll angegeben ist.

C:\LC3LogConfig\log4j.xml

  • Der Parameter -noSplash ist optional. Wird er nicht angegeben, wird der Startbildschirm von logi.CAD 3 nach dem Aufruf angezeigt.

  • Der Parameter -checkEmptyWorkspace ist ebenfalls optional. Geben Sie diesen Parameter an, um zu prüfen, ob der angegebene Arbeitsbereich leer ist. Das logi.CAD 3-P rojekt wird nur importiert, falls der Arbeitsbereich leer ist.
    Beim Standardaufruf (wenn dieser Parameter nicht angegeben wird) wird das logi.CAD 3-P rojekt immer in den Arbeitsbereich importiert – unabhängig davon, ob der Arbeitsbereich leer ist oder nicht. Ist das logi.CAD 3-P rojekt bereits im Arbeitsbereich vorhanden, wird das logi.CAD 3-P rojekt neu importiert.

  • Der Parameter -Dlog4j.configuration ist ebenfalls optional. logi.cals empfiehlt jedoch, diesen Parameter anzugeben, damit Protokoll-Ereignisse ausgegeben werden.

Beispiel 1 für Aufruf, mit der Validierung der Objekte eines Projekts inkl. Prüfung des leeren Arbeitsbereichs
logiCAD3c --launcher.ini logiCAD3.ini -application com.logicals.mrc.application -noSplash -projectPath C:\LC3Projects\MyProject -data C:\temp\LC3Workspace -checkEmptyWorkspace -vmargs -Dlog4j.configuration=file:C:\LC3LogConfig\log4j.xml
Beispiel 2 für Aufruf, mit der Validierung der Objekte eines Projekts, wobei nur der Projektname angegeben wird (da das Projekt bereits in den Arbeitsbereich importiert wurde)
logiCAD3c --launcher.ini logiCAD3.ini -application com.logicals.mrc.application -noSplash -projectPath MyProject -data C:\temp\LC3Workspace -vmargs -Dlog4j.configuration=file:C:\LC3LogConfig\log4j.xml
Beispiel 3 für Aufruf, mit der Validierung der Objekte in einem angegebenen Projekt-Ordner und der Umleitung des erzeugten Berichts
logiCAD3c --launcher.ini logiCAD3.ini -application com.logicals.mrc.application -noSplash -projectPath MyProject -objectToValidate src -outputPath C:\temp\validation -outputFile report01.mrclog -data C:\temp\LC3Workspace -vmargs -Dlog4j.configuration=file:C:\LC3LogConfig\log4j.xml

Konfigurationsdatei für das Protokoll

Diese Datei wird zur Konfiguration des log4j-Protokollierungsmechanismus benötigt. Die Datei gibt an, wie Protokoll-Ereignisse ausgegeben werden.

Konfigurationsdatei für das Protokoll (Beispiel)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration debug="false" xmlns:log4j='http://jakarta.apache.org/log4j/'>
<!-- This configuration logs to console. -->
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="target" value="System.out"/>
<param name="immediateFlush" value="true"/>
<param name="encoding" value="UTF-8"/>
<param name="threshold" value="info"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5p: %m%n" />
</layout>
</appender>
 
<!-- This configuration logs to a file, with more information than for the console. -->
<appender name="file" class="org.apache.log4j.DailyRollingFileAppender">
<param name="file" value="C:\\temp\\logfile.log" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{HH:mm:ss} %-5p [THREAD ID=%t] [Method:%M] %c{1}:%L - %m%n" />
</layout>
</appender>
<root>
<level value="INFO" />
<appender-ref ref="console" />
<appender-ref ref="file" />
</root>
</log4j:configuration>

Ergebnis

Ein Bericht wird mit der Dateierweiterung .mrclog im Projekt-Ordner erzeugt. Details zum Bericht: Siehe "Ergebnisse der Prüfung in Sicht "Validieren"" und Überschrift "Bericht für Validierung".

Fehlerbehebung

Die Datei, die in der Konfigurationsdatei für das Protokoll angegeben ist, enthält Informationen über das Prüfen der Regeln. Falls das Prüfen der Regeln nicht erfolgreich war, beheben Sie das Problem gemäß der folgenden Tabelle.

Rückgabe-Code

Meldung (ausgegeben auf STDOUT oder STDERR)

Ursache

Lösung

0

Check successful (0)



-1

Check failed (Parameter Error, -1): Name

Ein Argument oder Parameter fehlt.

Rufen Sie das Werkzeug wie oben angegeben auf.

-2

Check failed (-2): Project not found

Das angegebene Projekt existiert nicht.

Geben Sie ein vorhandenes Projekt an. Oder rufen Sie das Werkzeug mit dem absoluten Pfad für das Projekt auf .

-6

Check failed (-6): Workspace not empty

Der Arbeitsbereich enthält bereits Daten (z.B. ein oder mehrere logi.CAD 3 -Projekte).

Verwenden Sie einen leeren Arbeitsbereich oder entfernen Sie alle vorhandenen Daten aus dem aktuellen Arbeitsbereich.
Alternative: Rufen Sie das Werkzeug ohne den Parameter -checkEmptyWorkspace auf.

-7

Check failed (-7): The object "name" does not exist in the project "name".

Das angegebene Objekt existiert nicht.

Geben Sie ein vorhandenes Objekt an. Oder rufen Sie das Werkzeug ohne den P arameter -objectToValidate auf.

-127

(Details: exception message)

Ein unerwarteter Fehler ist aufgetreten.

Kontaktieren Sie logi.cals.