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.

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.

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.

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.

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.

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.

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