SPS-Anwendungen automatisch laden

logi.CAD 3  stellt ein Werkzeug zum automatisierten Laden einer SPS-Applikation auf die SPS (= das Zielsystem) zur Verfügung.
(warning) Bei SPS mit einer Kommunikation über Gateway wird das automatisierte Laden der Anwendung nicht unterstützt.

Gut zu wissen

(grey lightbulb) Das Werkzeug ist zur Verwendung durch einen fortgeschrittenen Anwender von logi.CAD 3  vorgesehen.

(grey lightbulb)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.

(grey lightbulb)Die Ausgaben des Werkzeugs erfolgen nur in englischer Sprache.

Inhalt dieses Artikels:

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 geladen werden soll
      Das Projekt darf keine Syntaxfehler enthalten. Alle Einstellungen (z.B. erforderliche Compiler-Einstellungen) müssen für das Zielsystem vorhanden sein (so wie es erforderlich ist, wenn die Anwendung innerhalb der grafischen Benutzeroberfläche von  logi.CAD 3  geladen wird).
    • der Name der →Konfiguration, die beim Laden verwendet werden soll (kann im SPS-Objekt des Projekts gefunden werden)
      Die Anwendung für diese Konfiguration muss bereits erstellt worden sein – z.B. durch einen vorherigen Aufruf für das automatisierte Erstellen einer SPS-Anwendung. Darüber hinaus muss 
      logi.CAD 3  in der Lage sein, eine Verbindung mit dem Zielsystem herzustellen, das aufgrund der vorgegebenen Konfiguration angesprochen wird.
    • 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. Ö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.uploader.lc3uploader.application -noSplash -projectPath <PROJECTPATH> -configurationName <CONFIGURATIONNAME> -data <WORKSPACE> -checkEmptyWorkspace -vmargs -Dlog4j.configuration=file:<LOG-CONFIGURATION>

(warning) 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:

ParameterBeschreibungBeispiel

<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.

C:\LC3Projects\MyProject

<CONFIGURATIONNAME>

Name der Konfiguration

Normalerweise wird die Anwendung nur auf entfernte Zielsysteme (= Remote-Zielsysteme) geladen.

Falls Sie das Werkzeug für LocalConfiguration (= die integrierte SPS) aufrufen wollen, starten Sie am besten logi.CAD 3  vor dem Aufruf. Der Start von logi.CAD 3  startet auch die integrierte SPS. Daher wird die Verbindung zur integrierten SPS bereits hergestellt, bevor das Werkzeug aufgerufen wird.

RemoteConfiguration

<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 -Projekt 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 -Projekt. Das bedeutet, dass das logi.CAD 3 -Projekt 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

<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 -Projekt wird nur importiert, falls der Arbeitsbereich leer ist.
    Beim Standardaufruf (wenn dieser Parameter nicht angegeben wird) wird das  logi.CAD 3 -Projekt immer in den Arbeitsbereich importiert – unabhängig davon, ob der Arbeitsbereich leer ist oder nicht. Ist das  logi.CAD 3 -Projekt bereits im Arbeitsbereich vorhanden, wird das  logi.CAD 3 -Projekt 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, inkl. Prüfung des leeren Arbeitsbereichs
logiCAD3c --launcher.ini logiCAD3.ini -application com.logicals.uploader.lc3uploader.application -noSplash -projectPath C:\LC3Projects\MyProject -configurationName RemoteConfiguration -data C:\temp\LC3Workspace -checkEmptyWorkspace -vmargs -Dlog4j.configuration=file:C:\LC3LogConfig\log4j.xml
Beispiel 2 für Aufruf, nur mit der Angabe des Projektnamens, da das Projekt bereits in den Arbeitsbereich importiert wurde
logiCAD3c --launcher.ini logiCAD3.ini -application com.logicals.uploader.lc3uploader.application -noSplash -projectPath MyProject -configurationName RemoteConfiguration -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>

Fehlerbehebung

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

Rückgabe-CodeMeldung (ausgegeben auf STDOUT oder STDERR)UrsacheLösung
0Upload successful (0)

13<keine Meldung>Ein falscher Wert wurde für -application angegeben.Rufen Sie das Werkzeug wie oben angegeben auf.
-1Upload failed (Parameter Error, -1): NameEin Argument oder Parameter fehlt.Rufen Sie das Werkzeug wie oben angegeben auf.
-2Upload failed (-2): Project not foundDas angegebene Projekt existiert nicht.Geben Sie ein vorhandenes Projekt an. Oder rufen Sie das Werkzeug mit dem absoluten Pfad für das Projekt auf.
-3Upload failed (-3): Configuration "Name" not foundDie angegebene Konfiguration existiert nicht.Geben Sie eine vorhandene Konfiguration an.
-4Upload failed (-4): MessageDas Code-Image konnte nicht erstellt werden.

Siehe "Anwendung kann nicht erstellt oder geladen werden".

-5Upload failed (-5): Project contains errorsDas Projekt enthält Syntaxfehler.

Öffnen Sie das Projekt in  logi.CAD 3  und beheben Sie die Fehler, die in der Sicht Fehler angezeigt werden.

-6Upload 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.
-7Upload failed (-7): Target not connected

logi.CAD 3  kann keine Verbindung zum Zielsystem herstellen.

Stellen Sie sicher, dass das Zielsystem erreicht werden kann.
-8Upload failed (-8): Timeout occurredWährend des Ladens ist ein Timeout aufgetreten.Stellen Sie sicher, dass das Laden in der grafischen Benutzungsoberfläche ausgeführt werden kann.
-9Eine der folgenden Meldungen:
Upload failed (-9): Code image does not exist
Upload failed (-9): path\RTSCode.dll not found
Die Anwendung wurde noch nicht erstellt.Erstellen Sie die Anwendung.
-10Upload failed (-10): Platform "Name" does not existDie Plattform, die in der Konfiguration angegeben ist, existiert nicht.

Korrigieren Sie die Plattform, die im SPS-Objekt angegeben ist. Dieses SPS-Objekt enthält auch die Konfiguration.

-11Eine der folgenden Meldungen::
Upload failed (-11): Cannot connect to target system.

Upload failed (-11): Faulty PLC-object. The application for the PLC (platform toolkit "Name") cannot be created/loaded. ...
Upload failed (-11): There are no binary files to load. First build the application and then load the application anew.
Das Laden ist aus einem der Gründe, die in der Meldung angegeben sind, nicht möglich.Beheben Sie die Fehlerursache. Versuchen Sie, die Anwendung erneut zu laden.
-12Upload failed (-12): messageEs ist ein Fehler beim Plattform-Toolkit aufgetreten.

Bitten Sie den Lieferanten des Plattform-Toolkits, die Plattformkonfiguration (PTK) zu prüfen/korrigieren.

-13Upload failed (-13): Error when executing target commandEin unerwarteter Fehler ist aufgetreten.

Kontaktieren Sie  logi.cals .

-14Upload failed (-14): Resource not found

Eine Ressource, die in der Konfiguration angegeben ist, existiert nicht.

Korrigieren Sie die Ressource, die im SPS-Objekt angegeben ist. Dieses SPS-Objekt enthält auch die Konfiguration.

-127Upload (Details: exception message)Ein unerwarteter Fehler ist aufgetreten.

Kontaktieren Sie  logi.cals .