Zum Inhalt

Import / Export eines S7 DB

Zum Projektieren der Datenerfassung werden Datenbausteine zwischen der Siemens S7 Projektierung und externen Projektierungstools (Adam-Software) ausgetauscht.

Importieren eines S7 Datenbaustein aus einer STL Quelle in das TIA Projekt

Ein extern erstellter S7 Datenbaustein in Form einer STL oder AWL Quelle (Text Datei) soll in ein S7 Projekt (TIA) importiert werden. Eine Quelldatei muss dem Siemens S7 STL (Statement List) Datenformat (auch als AWL Anweisungsliste bekannt) entsprechen, hier ist ein kurzes Beispiel:

DATA_BLOCK "Prozessdaten"
TITLE = Datenerfassung
   STRUCT 
      TriggerDatenBereit : Bool;   // von SPS
      DatenuebertragungOK : Bool;   // von PC
      Messwert : Real;   // K0001 Messwert
   END_STRUCT;
BEGIN
END_DATA_BLOCK

Durch einen Doppelklick auf „Neue externe Datei hinzufügen“ unter „Externe Quellen“ unter der CPU des geöffneten Projekts können Sie eine Quelle als Datei mit der Endung .db (oder .AWL) öffnen, s. Abbildung 1.

Quelle eines Datenbausteins einlesen
Abbildung 1: Quelle eines Datenbausteins einlesen.

Nach dem Einlesen erscheint die Datei unter „Externe Quellen“ und mit einem Rechtsklick darauf kann man aus dem Kontextmenü die Option „Bausteine aus Quelle generieren“ wählen, s. Abbildung 2.

DB aus Quelle generieren
Abbildung 2: Datenbaustein aus Quelle generieren.

Es erscheint eine Meldung welche davor warnt, dass bestehende Datenbausteine (mit gleichem Namen) überschrieben werden, s. Abbildung 3. Wenn Sie das verhindern wollen sollten Sie die bestehenden Datenbausteine umbenennen um Sie vor dem Überschreiben zu schützen.

Warnung: Überschreiben?
Abbildung 3: Warnung vor Überschreiben bestehender DBs mit gleichem Namen.

Nach dem erfolgreichen Generieren des DBs erscheint er unter „Programmbausteine“. Die DB Nummer wurde automatisch auf die nächste freie DB Nummer gesetzt, so dass Sie jetzt noch in den Eigenschaften des DBs unter „Allgemein“ die DB Nummer auf die gewünschte Nummer „Manuell“ setzen müssen, s. Abbildung 4.

Ändern der DB Nummer
Abbildung 4: Ändern der DB Nummer.

Änderungen der Namen einzelner Strukturen und Symbole sollten vermieden werden um bei einem erneuten Import, wegen Änderungen oder Erweiterungen, keinen erhöhten Aufwand wegen dadurch verlorener Verwendungen im Programm zu erzeugen.

Importierter DB
Abbildung 5: Aus einer Quelldatei importierter Datenbaustein.

Exportieren eines S7 Datenbaustein als AWL Quelle aus dem TIA Projekt

Aus einem in der S7 Programmierung bestehenden Datenbaustein soll eine Quelldatei generiert werden.

Durch Rechtsklick auf den Datenbaustein und Auswahl „Quelle aus Bausteinen generieren – Einschließlich abhängige Bausteine“ im Kontextmenü wird eine Datei mit Endung .db generiert.

Quelle generieren
Abbildung 6: Quelle aus Baustein generieren – einschließlich UDTs.

Diese Datei enthält sowohl die Definition des Datenbausteins selbst wie auch die Definitionen eventuell enthaltener UDTs (User Defined Type), auch geschachtelte UDTs. Der Dateiname soll außer der Bezeichnung des Datenbausteins auch unbedingt, zwischen eckigen Klammern, den Text „DB“ gefolgt von der DB Nummer enthalten, da die DB Nummer in der Datei selbst nicht enthalten ist, nach folgendem Muster:

<Baustein Bezeichnung>[DB<Nummer>].db

zum Beispiel: „Prozessdaten[DB200].db“.

Der Inhalt der generierten Datei sieht dann z.B. wie folgt aus, wobei hier ein UDT mit dem Namen „Merkmal“ im Datenbaustein "Prozessdaten" mehrmals verwendet wurde:

TYPE "Merkmal"
VERSION : 0.1
   STRUCT
      MES : Real;   // Messwert 
      ATT : Int;    // Attribut 
      NOM : Real;   // Nennmaß 
      USG : Real;   // Untere Spezifikationsgrenze 
      OSG : Real;   // Obere Spezifikationsgrenze 
      ERR : Bool;   // Ereignis
   END_STRUCT;
END_TYPE
DATA_BLOCK "Prozessdaten"
TITLE = Datenerfassung
   STRUCT 
      Handshake : STRUCT
         TriggerDatenBereit : Bool;   // von SPS
         DatenuebertragungOK : Bool;   // von PC
      END_STRUCT;
      Prozessmerkmale : STRUCT 
         "Schraube 1 Drehmoment" : Merkmal;   // Moment Schraube 1
          Schraube 1 Drehwinkel" : Merkmal;   // Winkel Schraube 1
      END_STRUCT;
   END_STRUCT;
BEGIN
END_DATA_BLOCK

S7, TIA sind eingetragene Markenzeichen der Siemens AG