Service & Support
Answers for industry.
Mit Deckblatt
Wie können Chargendaten bzw. archivierte Daten über ein HMI-Bediengerät ausgegeben werden?
WinCC flexible 2008 SP2
FAQ September 2011
Fragestellung
2 Batch report
V1.0, Beitrags-ID: 52716819
Dieser Beitrag stammt aus dem Service&Support Portal der Siemens AG, Sector Industry, Industry Automation and Drive Technologies. Es gelten die dort genannten Nutzungsbedingungen (www.siemens.com/nutzungsbedingungen).
Durch den folgenden Link gelangen Sie direkt zur Downloadseite dieses Dokuments.
http://support.automation.siemens.com/WW/view/de/52716819
Hinweis zur Security Die in diesem Beitrag beschriebenen Funktionen und Lösungen beschränken sich überwiegend auf die Realisierung der Automatisierungsaufgabe. Bitte beachten Sie darüber hinaus, dass bei Vernetzung Ihrer Anlage mit anderen Anlagenteilen, dem Unternehmensnetz oder dem Internet entsprechende Schutzmaßnahmen im Rahmen von Industrial Security zu ergreifen sind. Weitere Informationen dazu finden Sie unter der Beitrags-ID !50203404!.
Frage Wie können Chargendaten über ein HMI-Bediengerät ausgegeben werden?
Antwort Folgen Sie zur umfassenden Beantwortung dieser Frage den in diesem Dokument aufgeführten Handlungsanweisungen und Hinweisen.
Inhaltsverzeichnis
Batch report V1.0, Beitrags-ID: 52716819 3
Inhaltsverzeichnis 1 Einleitung ........................................................................................................... 4 2 Automatisierungslösung .................................................................................. 6
2.1 Wie funktioniert die Projektierung? ...................................................... 6 2.2 Übersichtsschema................................................................................ 7
3 Projektierung...................................................................................................... 8 3.1 HMI Projektierung................................................................................. 8 3.1.1 Projektierte Bilder ................................................................................. 8 3.1.2 Variablen ............................................................................................ 14 3.1.3 Rezepturen......................................................................................... 16 3.1.4 Sonstige verwendete Funktionen....................................................... 16 3.2 STEP 7 Projektierung......................................................................... 17
4 Bedienung der Beispielapplikation................................................................ 20 4.1 Beispiel 1............................................................................................ 20 4.2 Beispiel 2............................................................................................ 21 4.3 Tipps und Hinweise............................................................................ 23
1 Einleitung
4 Batch report
V1.0, Beitrags-ID: 52716819
1 Einleitung
Ziel des Beitrages
Ziel dieses Beitrages ist es Ihnen eine Möglichkeit aufzuzeigen, wie Sie mit WinCC flexible Chargeninformationen archivieren bzw. eine Langzeitarchivierung durchführen können.
Des Weiteren wird gezeigt, wie Sie die archivierten Einträge in eine „*.csv Datei“ exportieren und speichern können.
Damit auch Bediengeräte verwendet werden können, die keine Skripte unterstützen, wird in dieser Beispielanwendung auf die Verwendung von Skripten verzichtet.
Welche Bediengeräte werden unterstützt?
Die nachfolgende Anleitung gilt für alle Bediengeräte, die die nachfolgenden Funktionalitäten unterstützen:
Rezepturen
ExportiereDatensaetze
Steckplatz für eine Speicherkarte
Eine Übersicht über die Funktionen der verschiedenen Bediengeräte erhalten Sie unter der Beitrags-ID 40227286.
In dieser Anwendung wird exemplarisch ein TP177B PNDP 4“ verwendet.
Kurzbeschreibung der Applikation
Die Applikation enthält zwei Anwendungsbeispiele:
Beispiel 1: Das erste Beispiel ist sehr einfach gehalten und soll die Funktionalität - Auslesen von Werten aus einem Datenbaustein mit Hilfe zweier „Rezepturfunktionalitäten“ des HMI Bediengerätes und anschließenden Export der Daten als „*.csv Datei“ - zeigen. Die Daten des Datenbausteins sind in diesem Beispiel fest hinterlegt und stellen „Maschinenparameter“ da, die als Chargeninformation ausgegeben werden. Diese Daten würden Sie als Anwender programmtechnisch in der S7 Steuerung bereitstellen und dem Datenbaustein entsprechend zuweisen.
Beispiel 2: Im Beispiel 2 wird dieselbe Funktionalität verwendet wie im Beispiel 1. Der Unterschied liegt darin, dass hier mit dem „Start der Maschine“ „Messwerte“ sekündlich ausgelesen und in einem Datenbaustein nacheinander abgespeichert werden. Zu Beginn einer neuen Minute werden diese Werte automatisch über „Rezepturfunktionalitäten“ ausgelesen und in eine *.csv Datei“ gespeichert. Der Name der „*.csv Datei“ wird zur Laufzeit über das STEP 7 Programm automatisch erstellt und als Dateiname übergeben. Der Name der Datei setzt sich wie folgt zusammen: \Ablagepfad\Name_Datum_Uhrzeit.csv
1 Einleitung
Batch report V1.0, Beitrags-ID: 52716819 5
Beispiel: \Storage Card MMC\LogData_110810_1419.csv
– Ablagepfad: \Storage Card MMC\
– Name: LogData
– Datum: 11 (Jahr) 08 (Monat) 10 (Tag)
– Uhrzeit: 14 (Stunde) 19 (Minute)
Hinweis Der Ablagepfad, der Name sowie die Schreibweise des Datums und der Uhrzeit kann über das STEP 7 Programm angepasst werden.
Beispiel archivierter Daten
Abbildung 1-1
Entry at 2011.08.10 13:57 hours
Entry at 2011.08.10 14:04 hours
Testen der Applikation
Die beiliegende Projektierung können Sie auch mit S7-PLCSIM und der WinCC flexible Runtime testen. (S7-PLCSIM und die Runtime Software muss auf dem Projektierungsrechner installiert sein).
2 Automatisierungslösung
6 Batch report
V1.0, Beitrags-ID: 52716819
2 Automatisierungslösung
Hintergrund für die Automatisierungslösung
Siemens bietet eine Vielzahl an HMI Bediengeräte an, die unterschiedliche Leistungsmerkmale besitzen. Nicht alle HMI Bediengeräte unterstützen z. B. die Funktionen:
Variablenarchive
Skripting
Hinweis Des Weiteren erlauben die Systemgrenzen für die Archivierung von Variablenwerten auf Bediengeräten bzw. PC Runtime Systemen nur eine bedingte Langzeitarchivierung. Bei einem MP 277 sind dieses z. B. 10.000 Einträge je Archiv (incl. aller Archivsegmente).
Beispiel Wenn Sie z. B. bei einem MP 277 eine Variable sekündlich archivieren, dann wir nach ca. 2,5 Stunden die Systemgrenzen von „10.000“ Einträgen erreicht. Bei der Verwendung von einem „Umlaufarchiv“ würden anschließend die ältesten Einträge mit den neuen Werten überschrieben.
In dem FAQ mit der Beitrags-ID 48015332 finden Sie eine Beispielanwendung, wie Sie eine Langzeitarchivierung mit Hilfe von Skripten umsetzen.
Dieses Beispiel verwendet keine Skripte. Des Weiteren können somit auch HMI Bediengeräte mit geringeren Leistungsumfang verwendet werden.
2.1 Wie funktioniert die Projektierung?
Die Erfassung/Archivierung der Daten erfolgt in diesem Fall nicht über „Variablenarchive“ am HMI Bediengerät, sondern über Datenbausteine in der S7 Steuerung.
Über einen „Trigger“ (Impuls) wird z. B. sekündlich der aktuelle Wert eines Maschinenparameters abgefragt und dieser in einem Datenbaustein gespeichert. Jeder einzelne Wert wird innerhalb des Datenbausteins einem Datenwort automatisch zugewiesen.
Die Ausgabe dieser „archivierten“ Daten aus dem Datenbaustein erfolgt am HMI Bediengerät über eine projektierte Rezeptur.
Bei Rezepturen besteht die Möglichkeit, die Werte aus der Steuerung auszulesen und anschließend als „*.csv“ Datei auf eine Speicherkarte zu exportieren.
Somit können Sie die in der S7 Steuerung vorliegenden Daten als „Datei“ auf einer Speicherkarte archivieren.
2 Automatisierungslösung
Batch report V1.0, Beitrags-ID: 52716819 7
2.2 Übersichtsschema
Die nachfolgende Abbildung stellt einen Überblick über die einzelnen „Funktionsabläufe“ für das „Beispiel 2“ dar.
Abbildung 2-1
Start Messung(Start Maschine)
Alte Messwerte zurücksetzen
Minuteabgelaufen ?
Vorhandene Daten in einen zweiten DB speichern.Der DB wird im HMI Bediengerät für die „Rezeptur“
verwendet
Dateinamen für die Datei erstellen
Anstoß „CSV Datei erzeugen“(Wird über das HMI Bediengerät ausgeführt)
Messwerte einlesen und in einem DB speichern
nein
ja
FB100
FB100
FB101
FB102
FC10
Beschreibung
Mit dem Start der Messung bzw. mit Beginn einer neuen „Minute“ werden vorhandene Daten zunächst auf „null“ zurückgesetzt.
Anschließend wird pro Sekunde ein Messwert ausgelesen und in einem Datenbaustein gespeichert.
Die Archivierung erfolgt über einen Zeitraum von einer Minute.
Mit Ablauf einer Minute werden die nachfolgenden Schritte über das STEP 7 Programm ausgeführt.
Die zuvor archivierten Daten werden in einen zweiten Datenbaustein umkopiert. Der zweite Datenbaustein wird im HMI Bediengerät in einer „Rezeptur“ verwendet.
Es wird der Dateiname für die zu exportierende „*.csv Datei“ erstellt.
Die Funktionen zum Auslesen der Daten aus der Steuerung und anschließenden Export der Daten über das HMI Bediengerät angestoßen.
3 Projektierung
8 Batch report
V1.0, Beitrags-ID: 52716819
3 Projektierung Dieses Kapitel beinhaltet die wesentlichen Projektierungsschritte zum Nachstellen der Projektierung.
HMI Projektierung
STEP 7 Programm
Details entnehmen Sie bitte dem beiliegenden Projekt. Zum besseren Verständnis ist es sinnvoll, die beiliegende Projektierung zu öffnen.
Hinweis In der beiliegenden Projektierung sind alle beschriebenen Einstellungen bereits vorgenommen.
3.1 HMI Projektierung
3.1.1 Projektierte Bilder
In der beiliegenden Projektierung sind drei Bilder projektiert. Nachfolgend werden die in den Bildern projektierten Funktionen beschrieben.
Permanentfenster
Tabelle 3-1
Nr. Beschreibung Bild
1. Permanentfenster Im Permanentfenster sind vier Schaltflächen projektiert. Über diese Schaltflächen werden …
einzelne Bilder direkt aufgerufen.
die Sprache der Bedienoberfläche (Deutsch/Englisch) umgeschaltet.
die Runtime beendet. An den Schaltflächen „Bild 1“, „Bild 2“ und „Bild 3“ ist eine Animation projektiert (Eigenschaften > Animation > Gestaltung). Beim Aufbau des entsprechenden Bildes wird die Hintergrundfarbe der Schaltfläche „grün“ dargestellt. Die Variable wird beim Aufbau des Bildes gesetzt und beim Abbau des Bildes wieder zurückgesetzt (Link). Dadurch können Sie erkennen, in welchem Bild Sie sich befinden.
Permanentfenster:
====================================== Animation – Gestaltung:
3 Projektierung
Batch report V1.0, Beitrags-ID: 52716819 9
Bild 1
Über das „Bild 1“ wird das Beispiel 1 bedient.
Tabelle 3-2
Nr. Beschreibung Bilder
1. „Bild 1“ – Eigenschaften des Bildes Öffnen Sie die Eigenschaften von „Bild 1“.
Ereignisse - Aufgebaut – „SimuliereVariable“
Die „Messwerte“ für das „Beispiel 2“ werden über die Funktion „SimuliereVariable“ erzeugt. „SetzeBit“ Die Hintergrundfarbe der Schaltfläche „Bild 1“ wird über eine Animation verändert. Beim Aufbau des Bildes wird das „Bit“ der zugewiesenen Variablen gesetzt (Link). „RuecksetzeBit“ Mit dem Beenden der Runtime wird über den „Aufgabenplaner“ ein „Bit“ gesetzt. Bei einem Neustart des Bediengerätes wird dieses Bit durch diese „Startseite“ wieder zurückgesetzt.
Ereignisse - Abgebaut – „RuecksetzeBit“
Die Hintergrundfarbe der Schaltfläche „Bild 1“ wird über eine Animation verändert. Beim Abbau des Bildes wird das „Bit“ der zugewiesenen Variablen wieder zurückgesetzt.
2. „Bild 1“ – „Lese Datensatz“ Über die Schaltfläche wird der „Datensatz aus der Steuerung“ ausgelesen. Der Datensatz enthält die „Chargendaten“ für die hinterlegten „Maschinenwerte“ (Link).
3 Projektierung
10 Batch report
V1.0, Beitrags-ID: 52716819
Nr. Beschreibung Bilder
3. „Bild 1“ – „Export Datensatz“ Über die Schaltfläche wird der zuvor geladene „Datensatz“ als „*.csv Datei“ exportiert - auf eine Speicherkarte gespeichert. Der Name der „*.csv Datei“ kann über das nachfolgend beschriebene „Textfeld“ individuell vorgegeben werden.
4. „Bild 1“ – „Textfeld“ Über das Textfeld kann individuell ein Dateiname für die zu exportierende „*.csv Datei“ vorgegeben werden. Die Variable ist mit einem „Standardnamen“ vorbelegt. (Ablagepfad + Dateiname + .csv) Beispiel: \Storage Card MMC\DataLog_xxx.csv Der Bediener muss somit nur noch den „Dateinamen“ anpassen/eingeben.
3 Projektierung
Batch report V1.0, Beitrags-ID: 52716819 11
Bild 2
Über das „Bild 2“ wird das Beispiel 2 bedient.
Tabelle 3-3
Nr. Beschreibung Bilder
1. „Bild 2“ – Eigenschaften des Bildes Öffnen Sie die Eigenschaften von „Bild 2“.
Ereignisse - Aufgebaut – „SimuliereVariable“
Die „Messwerte“ für das „Beispiel 2“ werden über die Funktion „SimuliereVariable“ erzeugt. „SetzeBit“ Die Hintergrundfarbe der Schaltfläche „Bild 2“ wird über eine Animation verändert. Beim Aufbau des Bildes wird das „Bit“ der zugewiesenen Variablen gesetzt (Link).
Ereignisse - Abgebaut – „RuecksetzeBit“
Die Hintergrundfarbe der Schaltfläche „Bild 2“ wird über eine Animation verändert. Beim Abbau des Bildes wird das „Bit“ der zugewiesenen Variablen wieder zurückgesetzt.
2. „Bild 2“ – Eigenschaften Schaltflächen Animation: An den Schaltflächen „Start“ und „Stopp“ ist eine Animation projektiert. Eigenschaften > Animation > Gestaltung. Mit betätigen der entsprechenden Schaltfläche wird die Hintergrundfarbe der Schaltfläche „grün“ bzw. „orange“ dargestellt.
3 Projektierung
12 Batch report
V1.0, Beitrags-ID: 52716819
Nr. Beschreibung Bilder
3. „Bild 2“ – Eigenschaften Schaltfläche „Start“ Ereignisse - Drücken: Mit betätigen der Schaltfläche wird das Bit zum Start der „Messung“ in der Steuerung gesetzt. (In diesem Beispiel wird kein „reeller“ Antrieb eingeschaltet). Des Weiteren wird das Bit für die „Animation“ der Schaltfläche gesetzt. Ereignisse -Loslassen: Beim Loslassen der Schaltfläche wird das Bit zum Start der „Messung“ wieder zurückgesetzt.
4. „Bild 2“ – Eigenschaften Schaltfläche „Stopp“ Ereignisse - Drücken: Mit betätigen der Schaltfläche wird das Bit zum Stoppen der „Messung“ in der Steuerung gesetzt. (In diesem Beispiel wird kein „reeller“ Antrieb ausgeschaltet). Des Weiteren wird das Bit für die „Animation“ der Schaltfläche zurückgesetzt. Ereignisse -Loslassen: Beim Loslassen der Schaltfläche wird das Bit zum Stoppen der „Messung“ wieder zurückgesetzt.
5. „Bild 2“ – „Textfeld“ Über das Textfeld wird der Ablagepfad der zu exportierenden „*.csv Datei“ ausgegeben. Der Name der Datei wird über das STEP 7 Programm automatisch erstellt. (Ablagepfad + Dateiname + Datum + Uhrzeit.csv) Beispiel: \Storage Card MMC\DataLog_110812_1637.csv
3 Projektierung
Batch report V1.0, Beitrags-ID: 52716819 13
Bild 3
Das „Bild 3“ dient als „Serviceseite“ für das „Beispiel 2“. Es wird hier der Status der einzelnen „Rezepturfunktionen“ ausgegeben. Im Fehlerfall kann hierüber auch der Status wieder zurückgesetzt werden.
Tabelle 3-4
Nr. Beschreibung Bilder
1. „Bild 3“ – „EA-Felder“ Über die EA-Felder wird der Status der Rezepturfunktionen
LeseDatensatzAusSteuerung
ExportiereDatensaetze ausgegeben. Im unteren Bereich des Bildes sind in Textform die möglichen Status und dessen Bedeutungen aufgeführt.
2. „Bild 3“ – Eigenschaften Schaltfläche „Reset“ Ereignisse - Klicken: Mit betätigen der Schaltfläche wird den vier Variablen der Wert „0“ übergeben. Hinweis: Das Rücksetzen der Werte auf „0“ geschieht standardmäßig automatisch über das STEP 7 Programm. Sollte dieses im Fehlerfall nicht passieren, dann können Sie dieses über die Schaltfläche „Reset“ manuell durchführen. (Siehe hierzu auch die Beschreibung unter dem folgenden Link).
3 Projektierung
14 Batch report
V1.0, Beitrags-ID: 52716819
3.1.2 Variablen
Die Variablen sind entsprechend ihrer Verwendung in „Unterordnern“ zusammengefasst.
An den Variablen sind teilweise „Eigenschaften“, bezogen auf die Standardeinstellung wie z. B. die „Erfassungsart“, angepasst worden.
Nachfolgend wird gezielt auf diese Variablen eingegangen.
Variablenordner „01_HMI_Internal“
In diesem Ordner befinden sich Variablen, die keine Steuerungsanbindung besitzen. Sie dienen an Schaltflächen zur „grafischen“ Signalisierung von „Schaltzuständen“ (Link).
Variablenordner „02_ProgData“
Die Variablen besitzen alle eine Steuerungsanbindung. Sie dienen dazu, um „Programmfunktionen“ wie z. B. „Start der Messung“ usw. durchzuführen.
Tabelle 3-5
Nr. Variable Beschreibung
1. StorageLocationName Allgemein > Datentyp: StringChar
Der Dateiname der „*.csv Datei“ wird für das „Beispiel 2“ über das STEP 7 Programm vorgegeben. Durch die Verwendung von „StringChar“ können die Texte ohne „String Header“ übergeben werden. „String Header“: Der „String Header“ enthält Informationen über die maximale- und aktuelle Länge des String.
2. StoppMeasuringRT_Stopp Allgemein > Erfassungsart: Zyklisch fortlaufend
Über den Aufgabenplaner wird mit beenden der WinCC flexible Runtime diese Variable gesetzt. In der Steuerung wird dadurch eine laufende Messung abgebrochen. Hinweis: Vor Beenden der Runtime sollte der Bediener eine laufende Messung beenden (Maschine ausschalten). Sollte dieses vergessen werden, wird mit beenden der Runtime die laufende Messung beendet.
3. HMI_AchieveGetDataRecord Allgemein > Erfassungsart: Zyklisch fortlaufend Eigenschaften >Grenzen: Übergrenze: 2 Ereignisse > Obergrenze Überschritten Systemfunktion
Das Auslesen der Werte aus der Steuerung zum HMI Bediengerät erfolgt im „Beispiel 2“ automatisch. Damit dieses ausgeführt wird, wird über die Steuerung ein Wert > 2 vorgegeben und somit die vorgegebene Obergrenze überschritten. Die Systemfunktion „LeseDatensatzAusSteuerung“ wird ausgeführt.
3 Projektierung
Batch report V1.0, Beitrags-ID: 52716819 15
Nr. Variable Beschreibung
4. HMI_AchieveExportDataRec Allgemein > Erfassungsart: Zyklisch fortlaufend Eigenschaften >Grenzen: Übergrenze: 2 Ereignisse > Obergrenze Überschritten Systemfunktion
Das Exportieren der ausgelesenen Werte auf eine „MMC Speicherkarte“ erfolgt im „Beispiel 2“ automatisch. Damit dieses ausgeführt wird, wird über die Steuerung ein Wert > 2 vorgegeben und somit die vorgegebene Obergrenze überschritten. Die Systemfunktion „ExportiereDatensaetze“ wird ausgeführt.
Variablenordner „03_BatchProtocol“
Die Variablen sind alle der Rezeptur „BatchReport“ zugewiesen und enthalten die zusammengestellten Daten aus dem Steuerungsprogramm (in diesem Fall Chargen-informationen).
Der Inhalt dieser Variablen kann als „*.csv Datei“ auf einer Speicherkarte gespeichert/exportiert werden.
Variablenordner „04_LogData“
Die Variablen sind alle der Rezeptur „LogData“ zugewiesen und enthalten die archivierten Daten aus dem Steuerungsprogramm für die „Maschine 01“.
Der Inhalt dieser Variablen kann als „*.csv Datei“ auf einer Speicherkarte gespeichert/exportiert werden.
3 Projektierung
16 Batch report
V1.0, Beitrags-ID: 52716819
3.1.3 Rezepturen
Die projektierten Rezepturen dienen dazu, die archivierten Daten aus dem Steuerungsprogramm auszulesen und anschließend auf eine Speicherkarte zu speichern/exportieren.
Die Projektierung enthält aus diesem Grund auch keine „Rezepturanzeige“. (Kann natürlich auch zusätzlich im HMI Bediengerät projektiert werden).
Die Anzahl an verwendbaren Variablen hängt vom Mengengerüst des verwendeten Bediengerätes ab.
Rezeptur „BatchReport“
Die Rezeptur enthält die zusammengefassten „Chargendaten“ aus dem Datenbaustein DB15. Die Rezeptur beinhaltet einen Datensatz.
Rezeptur „LogData“
Die Rezeptur enthält die archivierten Maschinendaten der Maschine 01. Die Rezeptur enthält insgesamt 60 Einträge - für jede Sekunde einen Wert. Die Werte wurden zuvor im DB12 archiviert und dann in den DB13 umkopiert. Die Rezeptur beinhaltet einen Datensatz.
3.1.4 Sonstige verwendete Funktionen
Aufgabenplaner
Über den Aufgabenplaner wird mit beenden der Runtime ein Bit in der Steuerung gesetzt.
Hintergrund: Über das STEP 7 Programm werden die Rezepturfunktionen „LeseDatensatzAusSteuerung“ und „ExportiereDatensaetze“ angestoßen. Das Steuerungsprogramm wertet unter anderem den Bearbeitungsstatus der einzelnen „Rezepturfunktonen“ aus. Dieses kann aber nur dann erfolgen, wenn die Runtime des HMI Bediengerätes online ist. Aus diesem Grund ist es wichtig, dass vor dem Beenden der Runtime eine laufende Messung beendet wird.
Wie dieses überwacht wird, liegt im Ermessen des Programmierers.
In dieser Anwendung wird es über den Aufgabenplaner umgesetzt.
3 Projektierung
Batch report V1.0, Beitrags-ID: 52716819 17
3.2 STEP 7 Projektierung
Die projektierten FBs haben Ein- und Ausgangsparameter, sodass innerhalb der FBs nur geringe Anpassungen nötig sind, um diese individuell an Ihre Anwendung anzupassen. Die FBs und FCs sind mit entsprechenden Überschriften und Kommentaren versehen.
Nachfolgend werden die verwendeten Programmbausteine erläutert.
OB1, CYCL_EXC
Über den OB1 werden die einzelnen Programmbausteine
FB100, PLC_LogData
FB101, PLC_CopyLogData
FB102, PLC_StoragePath
FC10, HMI_CopyLogData
aufgerufen.
OB35, CYC_INT5
Der OB35 wird dazu verwendet, einen „Sekunden Trigger“ für das Anwendungsbeispiel 2 zu erzeugen.
Dazu wird der OB35 alle 500 ms aufgerufen.
FB100, PLC_LogData
Über den FB100 werden die vorgegebenen „Messwerte“ eingelesen und in einem Datenbaustein gespeichert.
Die Adressierung (Zuweisung der Messwerte innerhalb des DBs) erfolgt über einen Pointer. Als „Index“ für den Pointer wird die aktuelle Sekunde der SPS-Uhrzeit ausgewertet.
Das Speichern der Werte erfolgt im „Sekundentakt“ (Trigger OB35). Jeder Messwert wird einem Datenwort zugewiesen.
FB101, PLC_CopyLogData
Über den FB101 werden zwei Funktionen ausgeführt.
Ermittlung, wann eine neue Minute beginnt.
– Über den SFC1 wird die aktuelle Uhrzeit der SPS ausgelesen. Aus der Uhrzeit wird die aktuelle Minute ermittelt. Mit Beginn einer neuen Minute wird ein Bit in der Steuerung gesetzt und das Signal weiter verarbeitet.
Daten kopiert (DB12 -> DB13).
– Die Beispielanwendung ist so projektiert, dass zu Beginn einer neuen Minute die zuvor gespeicherten Messwerte über „Rezepturfunktionalitäten“ als „*.csv Datei“ über das HMI Bediengerät auf eine Speicherkarte exportiert/gespeichert werden. In diesem Fall werden die Daten des DB12 in den DB13 umkopiert. Der DB13 wird im HMI Bediengerät für die Rezeptur „LogData“ verwendet.
3 Projektierung
18 Batch report
V1.0, Beitrags-ID: 52716819
FB102, PLC_StoragePath
Über den FB102 wird der Ablagepfad sowie der Datei-Name der *.csv Datei“ zur „Laufzeit“ zusammengestellt.
Der Name setzt sich zusammen aus
Ablagepfad + Dateiname + Datum + Uhrzeit + .csv Beispiel: \Storage Card MMC\ LogData_110815_1458.csv
Der Ablagepfad und der Dateiname ist hier fest vorgegeben.
\Storage Card MMC\LogData_ (siehe DB110)
Zur „Laufzeit“ wird dem vorgegebenen Namen jetzt noch das aktuelle Datum und Uhrzeit angefügt.
Dadurch wird jeder Datei ein eindeutiger Name zugewiesen.
Bei der Projektierung ist dabei zu beachten, dass von der aktuellen Uhrzeit „eine“ Minute abgezogen werden muss. Hintergrund: Das Speichern der Datei erfolgt nach Abschluss einer vollen Minute. Somit stammen die archivierten Werte nicht von der „aktuellen“ Minute, sondern von der „vorherigen“ Minute. Aus diesem Grund wird für den Dateinamen nicht die aktuelle Uhrzeit verwendet. Ausnahme: Wenn eine laufende Messung beendet wird, dann wird die aktuelle Uhrzeit verwendet.
FC10, HMI_CopyLogData
Der FC10 dient dazu, die Rezepturfunktionalitäten „LeseDatensatzAusSteuerung“ und „ExportiereDatensaetze“ über die S7 Steuerung zu aktivieren.
Beispiel: Die Variable „ProgData.HMI_AchieveGetDataRecord“ wird im HMI Bediengerät verwendet. An dieser Variablen wird beim Überschreiten einer festgelegten Obergrenze die Systemfunktion „LeseDatensatzAusSteuerung“ ausgeführt.
Über das Steuerungsprogramm wird dieser Variablen ein Wert > 2 zugewiesen und somit die Systemfunktion am HMI Bediengerät ausgeführt.
Über die Statusrückmeldung der Systemfunktion wird ausgewertet, wann die Funktion abgeschlossen ist. Anschließend wird analog dazu die zweite Systemfunktion „ExportiereDatensaetze“ angestoßen.
Hinweis Die Statusrückmeldung wird automatisch über die verwendete HMI Systemfunktion erzeugt und entsprechend ausgelesen. Aus diesem Grund ist es wichtig, dass eine laufende Messung beendet wird, bevor die HMI-Runtime heruntergefahren wird.
DB10, ProgData
Der DB10 enthält allgemeine Daten für die Umsetzung der Beispielanwendungen.
3 Projektierung
Batch report V1.0, Beitrags-ID: 52716819 19
DB12, Current_LogData
Der DB12 enthält die aktuell gespeicherten Maschinenwerte der „Maschine 01“.
Der Datenbaustein ist so ausgelegt, dass 60 Werte (1 Minute) gespeichert werden können.
DB13, Copy_LogData
Der DB13 enthält die kopierten Daten aus dem DB12 und wird im HMI Bediengerät für die „Rezeptur“ verwendet.
Der Datenbaustein ist so ausgelegt, dass 60 Werte (1 Minute) gespeichert werden können.
DB14, Overwrite_LogData
Nachdem die Daten des DB12 in den DB13 kopiert worden sind, werden die „alten“ Daten des DB12 mit den Daten des DB14 überschrieben.
Der Datenbaustein ist so ausgelegt, dass 60 Werte (1 Minute) mit „null“ überschrieben werden können.
DB15, BatchProtocol
Der DB15 enthält die Daten für ein „Chargenprotokoll“.
Die Daten sind in diesem Fall fest hinterlegt und dienen als „Anwendungsbeispiel“.
DB100, InstanceDB_FB100
Instanz DB für den FB100
DB101, InstanceDB_FB101
Instanz DB für den FB101
DB102, InstanceDB_FB102
Instanz DB für den FB102
DB110, StorageLocationName
Der DB110 enthält den über das STEP 7 Programm zusammengesetzten Namen der zu exportierenden „*.csv Datei“.
DB112, AdditionalCharacter
Der DB120 enthält eine Vorlage von Zeichen, die für den zusammengesetzten Dateinamen benötigt werden.
„0“ (um einer Ziffer eine „Null“ voranzustellen)
„_“ (um einer Ziffer einen „Unterstrich“ voranzustellen)
„.csv“ (um dem Dateinamen am Ende eine Dateikennung hinzuzufügen)
4 Bedienung der Beispielapplikation
20 Batch report
V1.0, Beitrags-ID: 52716819
4 Bedienung der Beispielapplikation In diesem Kapitel erfolgt eine Anleitung zur Bedienung der Applikation.
Voraussetzung
S7 Steuerung
TP177B PNDP mit MMC-Speicherkarte für die Ablage der exportierten „*.csv Dateien“.
Alternativ können Sie auch die beiliegende Projektierung mit PLCSIM und der WinCC flexible Runtime testen.
4.1 Beispiel 1
Chargendaten auslesen und exportieren.
Tabelle 4-1
Nr. Beschreibung Bilder
1. Bild 1 Daten importieren und exportieren: Zum Auslesen des fest hinterlegten Datensatzes (Chargenprotokoll) aus der S7 Steuerung, betätigen Sie die Schaltfläche „Lese Datensatz“. Zum Exportieren des ausgelesenen Datensatzes (Chargenprotokoll) betätigen Sie die Schaltfläche „Export Datensatz“. Die exportierte Datei erhält den Namen, der in dem Textfeld vorgegeben worden ist.
2. Bild 1 Name der Export Datei festlegen: Durch Anklicken des EA-Textfeldes öffnet sich die Systemtastatur des Bediengerätes. Der Dateiname ist mit einem „Standard Namen“ vorbelegt (\Storage Card MMC\DataLog_xxx.csv). Der Bediener muss somit nur noch den Namen „DataLog_xxx“ entsprechend anpassen.
4 Bedienung der Beispielapplikation
Batch report V1.0, Beitrags-ID: 52716819 21
4.2 Beispiel 2
Automatisches archivieren von Maschinendaten und exportieren als *.csv Datei“.
Tabelle 4-2
Nr. Beschreibung Bilder
1. Bild 2 Über die Schaltfläche „Start“ wird die Messung der Maschinendaten gestartet.
Pro Sekunde wir ein „Simulierter Wert“ in einem DB gespeichert.
Mit Beginn einer neuen Minute wird automatisch eine *.csv Datei“ erstellt. Die Datei enthält die bis zu diesem Zeitpunkt angefallenen Daten.
Über die Schaltfläche „Stopp“ wird die Messung beendet. Das Text-Ausgabefeld gibt den Dateinamen der zuletzt gespeicherten Datei wieder. In diesem Beispiel wurde die letzte Datei am 16.08.2011 um 16:02 erzeugt.
2. Bild 2 Ansicht erstellte *.csv Dateien“: In diesem Fall wurde die „erste“ Datei am 16.08.2011 um 15:23 erzeugt *). Die nachfolgenden Dateien sind jeweils mit Beginn einer neuen Minute angelegt worden. *) Sehen Sie sich hierzu auch den nachfolgenden Punkt an.
4 Bedienung der Beispielapplikation
22 Batch report
V1.0, Beitrags-ID: 52716819
Nr. Beschreibung Bilder
3. Bild 2 Dateiinhalt der *.csv Datei“: Das Bild zeigt den Dateiinhalt der Datei „LogData_110816_1523.csv“. Der angezeigte „Index“.
DB_VAR[0];
DB_VAR[1],
DB_VAR[2]
usw. zeigt die aktuelle „Sekunde“, an dem der erste Wert archiviert wurde. In diesem Beispiel wurde die Archivierung der Messwerte am 16.08.2011 um 15:23:12 Uhr begonnen.
4 Bedienung der Beispielapplikation
Batch report V1.0, Beitrags-ID: 52716819 23
4.3 Tipps und Hinweise
Es werden keine Daten auf der Speicherkarte archiviert
Überprüfen Sie den Speicherort den Sie an Ihrem Bediengerät verwenden mit dem, den Sie projektiert haben. (USB, SD-Karte, MMC-Karte usw.).
Kontrollieren Sie für das „Beispiel 2“ den „Status“ der Systemfunktionen „LeseDatensatzAusSteuerung“ und „ExportiereDatensaetze“. Den Status können Sie sich im „Bild 3“ der HMI Projektierung anschauen und gegebenenfalls über die Schaltfläche „Reset“ zurücksetzen.
Die Archivierung kann nur automatisch durchgeführt werden, wenn die Runtime des Bediengerätes läuft.
Im Textausgabefeld vom Beispiel 2 steht als Dateiname eine „2“
Vor der erstmaligen Ausführung der „Exportfunktion“ im Beispiel 2 wird im Textausgabefeld als Dateiname eine „2“ ausgegeben.
Dieses hängt mit dem verwendeten Datentyp zusammen und hat keine funktionelle Auswirkung. Sollte Sie das als Anwender stören, können Sie die Variable über das Steuerungsprogramm mit einem „Standardwert“ vorbelegen.
Dateinamen ändern bzw. bearbeiten
Im FB102 wird der Dateiname „zusammengesetzt“.
Es ist hilfreich, wenn Sie sich in der Projektierungsphase eine „Variablentabelle“ erstellen (siehe „VAT_StoragePathName“).
Über die „Variablentabelle“ können Sie schnell erkennen, ab welchen „Byte“ ein neuer „Name“ beginnt.
Anzahl der Werte die archiviert werden können
Die Anzahl der zu archivierenden Werte ist in diesem Anwendungsbeispiel abhängig von der Anzahl an möglichen Einträgen innerhalb einer Rezeptur.
Die Anzahl an Einträgen ist abhängig von den Systemgrenzen des verwendeten Bediengerätes.
Schauen Sie hierzu z. B. in die Onlinehilfe von WinCC flexible. Stichwort: „Systemgrenzen“.
Zeitraum der Archivierung
In diesem Anwendungsbeispiel werden die Werte sekündlich über einen Zeitraum von einer Minute archiviert.
Der Zeitraum kann beliebig angepasst werden.
Sekunden-Trigger: In diesem Anwendungsbeispiel über den OB35
Auswertung Minute: Auslesen und auswerten der aktuellen CPU-Uhrzeit.
Sehen Sie sich hierzu die Onlinehilfe von STEP 7 an. Stichwort: „Format des Datentyps DATE_AND_TIME“
Dort ist eine Tabelle aufgeführt, die den Inhalt der Bytes beschreibt, die die Information zu Datum und Uhrzeit beinhalten.
4 Bedienung der Beispielapplikation
24 Batch report
V1.0, Beitrags-ID: 52716819
Simulierte „Messwerte“
Die „Messwerte“ für das „Beispiel 2“ werden über die Funktion „SimuliereVariable“ erzeugt. Die Funktion ist unter den Eigenschaften der einzelnen Bildern projektiert (Ereignisse > Aufgebaut).
Wenn Sie „reelle“ Werte vorgeben, dann wird diese Funktion nicht mehr benötigt. Übergeben Sie der Variablen „DB10.DBW2“ (ProgData.PressureMeasurement) den entsprechenden Messwert.