# Archivierung von Betriebsdaten



## Matze001 (18 Juli 2012)

Guten Abend,

es geht mal wieder um eine Grundsatzfrage. Es geht jetzt nicht um "wie erstelle ich eine CSV mit einem Script", dafür gibt's genug Forenbeiträge, und das ist nicht mein Ziel!

Was habe ich? Einen IPC 477C mit WinLC RTX und WinCCflex 2008 SP3 RT

Also nun mal zum Thema:

Es geht um 16 DoubleInteger und 4 DATE_AND_TIME... ggf. kommen noch ein paar Dinge dazu, aber das war es im groben erstmal!

Zur Zeit habe ich die Variablen in einem DB (ARRAY) und zeige per Pointer aus der Visu auf diese Werte (Wie einige vielleicht wissen hab ich ein Powertag-spar-Problem)

Die Werte mit der Archivierungsfunktion von WinCCflexible in einer CSV-Datei zu speichern wäre zwar eine Option.
Da ich sie aber aufgrund der Powertag-Problematik gern in ein Array schmeissen würde, fällt diese Option aber flach.

Wie schon erwähnt könnte ich das Array nun per Script in eine CSV-Datei schubsen, bisher mein Favorit.

Die Werte nur im DB zu belassen bereitet mir Bauchschmerzen, da man ja nie weis was so alles mit dem DB passiert (übereifrige Programmierer, MRES, Geräteausfall)

Außerdem gibt es Kunden, welche die Daten gern auswerten würden, und da ist meiner Meinung nach CSV DAS Format!

Also genug Gelaber  Ich hab ein paar Dinge in den Raum geworfen, und würde mich nun freuen wenn ihr noch ein paar Vorschläge liefert, oder vielleicht eine richtig gute Diskussion wie bei der Busteilnehmerdiagnose bei raus kommt.

Grüße

Marcel


----------



## SoftMachine (18 Juli 2012)

Hallo Marcel !
So ganz kann ich eine klare Frage aber nicht erkennen 

Gruss


----------



## rostiger Nagel (18 Juli 2012)

Mach das doch per Script, was hindert dich?


----------



## PN/DP (18 Juli 2012)

Hallo Marcel,

wie akut ist denn Dein Powertag-spar-Problem? Hast Du noch nicht einmal die 20 Powertags für einen Datensatz Deiner Betriebsdaten?

Für mich ist Deine Aufgabe typisch ein speichern eines Datensatz-Arrays = Rezeptur-Array = ARRAY OF STRUCT in eine CSV-Datei. Dafür würden bei Dir etwa 23 Powertags reichen. 

Schau Dir mal das Konzept Beitrag #12 ff. an.
http://www.sps-forum.de/showthread.php/47637-Prozessdaten-einer-CPU-317-auf-Speicherkarte-eines-TP277-6-speichern 

Wenn Du den Übergabe-Datensatz als ARRAY OF BYTE oder ARRAY OF DINT in WinCCflex deklarierst und die Ursprungsvariablen im Script irgendwie wieder zusammensetzt, dann könnten auch schon 4 Powertags für beliebig viele Datensätze reichen (1 für den Datensatz und 3 für Hilfsvariablen). Oder mach' einfacher ein ARRAY OF DINT und ein ARRAY OF DATE_AND_TIME, dann brauchst Du auch nur 5 Powertags.

Harald


----------



## PN/DP (18 Juli 2012)

btw.: Braucht man bei einer WinCCflex RT nicht auch noch eine extra Lizenz, wenn man Archive nutzen will?

Harald


----------



## rostiger Nagel (19 Juli 2012)

Bei den PC Bundels mit Flex, die der Marcel nutzt, ist die immer dabei.


----------



## Matze001 (19 Juli 2012)

Danke schonmal für die Antworten!

Das keine Frage erkennbar ist, ist schade  ich versuche nochmal eine zu formulieren!

Frage: Ist eine der mir bekannten und erwähnten Lösungen die Richtige, oder gibt es sinnvollere, einfachere, .... Lösungen?

Mein PT-Problem ist noch nicht so akut, ich denke 20PT tun nicht weh, ABER es wird nicht bei so wenigen BDE-Daten bleiben.
Ich werde irgendwann in die Richtung 50 gehen, und das tut bei einer 128PT Lizenz dann schon weh (z.Zt. habe ich für die Basisvisu ohne Schnickschnack und Sonderwunsch 58PT, wenn ich dann noch 50PT für BDE verbrate, komme ich auf eine Reserve von 20PT für Kundenwünsche, da darf ruhig mehr bleiben).

Wie RN schon richtig erwähnt hat, ich habe die Lizenzen für alle von mir erwähnten Lösungsansätze!

Grüße

Marcel


----------



## Larry Laffer (19 Juli 2012)

Hallo Marcel,
ich habe den "Hilfe-Ansatz" bei deiner Frage auch noch nicht so richtig entdeckt.
Aber mal grundsätzlich :
Nach Flex ein Array_of_DWORD (oder so) zu übergeben ist ja nicht das Problem. Das dann in Flex Element für Element in eine CSV-Datei zu packen sicher auch nicht. Du mußt dir hier nur vorher dein S7-Programm anschauen um zu wissen, welche Werte wo stehen. Das wäre dann vielleicht nicht so elegant.
Solange du dann in Flex diese Daten wieder zergliedern kannst ist das sicher auch OK. INT, DINT, BYTE , BOOL wird schon gehen. DATE, TIME, TOD, DATETIME hat schon Anforderungscharakter. REAL hätte ich jetzt im Augenblick ein Ansatz-Problem.

Wie stellst du es dir weiter vor ?

So nebenher - eine PC-RT mit 128 Powertags laufen lassen zu wollen halte ich für asozial 

Gruß
Larry


----------



## rostiger Nagel (19 Juli 2012)

Larry Laffer schrieb:


> So nebenher - eine PC-RT mit 128 Powertags laufen lassen zu wollen halte ich für asozial



Das ist nicht asozial, sondern einfach nur Billig (nicht Preisgünstig) 

aber ich mache das auch ganz gerne...


----------



## Matze001 (19 Juli 2012)

Ohje es läuft aus dem Ruder!

Wie gesagt es geht mir nicht um die Grundsatz frage wie ich eine CSV erstelle oder wie ich die Daten hübsch in die Visu bekomme. 
Das ist alles kein Problem.

Mir geht es darum das ich ein paar Möglichkeiten habe, diese Daten zu archivieren, und gern von euch eure Meinungen, weitere Vorschläge oder eure Ansätze dazu gehört habe.


Eine PC-Runtime mit 128PT zu betreiben ist absolut nicht asozial! Wenn man sich ausreichend Gedanken macht kann man Powertags "sparen" und hat dazu noch ein sehr übersichtliches und optmiertes Programm.
Wenn man unendlich Ressourcen hat wird man irgendwie verschwenderisch. Für eine Palette mit 20x20 Reihen und Spalten und "unendlich" Ebenen brauche ich 21 PT! Würde ich das alles diskret verknüpfen und für jeden
Platz einen PT nutzen, wäre ich schon dafür bei 400PT! Die 500€ aufpreis (128PT -> 512PT) kann man sich hier mit 2h Programmieraufwand bei jeder zukünftigen Anlage sparen.

Außerdem muss ich dazu sagen das wir uns im Schnitt bei 32 E/A bewegen, also Hardwaremässig besteht keine Anforderung an einen IPC! Die Auswahl ist aus anderen Gründen gefallen, welche den Preis und den Einsatz eines
IPC mit 128PT rechtfertigen!

Grüße

Marcel


----------



## rostiger Nagel (19 Juli 2012)

Grundsätzlich eine Frage, wie soll den deine Archivierung laufen. Muß dieses sagen wir mal
kleiner 1-2 sec erfolgen oder reicht es Ereignisgesteuert, bei einen Bedienerwechsel, Produkwechsel
und Schichtwechsel oder vlt jede Minute.

Bei der Ereignisgesteuerten würde ich den Weg über das Script machen, so hast du auch zuätzlich noch
die möglichkeit die Datei, so zu gestalten das Sie später auch ohne Konvertierung Lessbar ist.


----------



## Matze001 (19 Juli 2012)

Also halten wir mal fest: Mit einem Script eine CSV-Datei erstellen ist das Mittel der Wahl!


Im Prinzip ändern sich meine Zähler ereignisgesteuert (Rohteil gegriffen, Fertigteil abgelegt, ...)
Die Zeiten werden auch eregnisgesteuert gespeichert (Ein Zyklus beendet, Maschinenzyklus beendet, ... )

Somit könnte ich mit einem Trigger das Script anwerfen, und die Werte in die CSV eintragen.
Wie ich meine CSV strukturiere ist ja noch nicht so wild, interessanter wird die Art der Ablage.
Pro Schicht/Tag/Monat eine CSV-Datei. Wäre ja per Script recht einfach Möglich, und meiner Meinung nach besser als eine Große CSV-Datei wo die Werte immer "aneinander geklatscht" werden,
und zur Auswertung manuell auseinandergeknibbelt werden müssen.

Grüße

Marcel


----------



## Larry Laffer (19 Juli 2012)

... hier ist dann ja erstmal die Frage : welche Daten sollen gespeichert werden ?

Bei meinen Anlagen ist es für die QS und auch die Produktion von Interesse, den kompletten Datensatz eines gefertigten Teils zu bekommen. Somit schreibe ich eine CSV, die bei jedem Entnahme-Vorgang aus der Anlage (IO und NIO ist hier nicht relevant) um eine Zeile erweitert wird. Die Anlage hält dann in einem "Schiebespeicher" die gesammelten Daten des jeweiligen Teils vor.

Darüber hinaus schreibe ich auch noch einen Chargen-Report. Das ist auch wieder eine CSV-Datei, die bei jedem Chargen- oder Produktwechsel um eine Zeile (nämlich den bis dahin gefertigten Stück- und Ausschußzahlen und den Chargen-Nummern der Teile) erweitert wird.

Jeder Tag erhält dann immer wieder eine neue Datei ...


Geht die Antwort jetzt mehr in deine Richtung ?

Gruß
Larry

Nachsatz:
Das mit den PT's konnte ich mir nicht verkneifen - sorry. Ich bekomme es beim besten Willen nicht hin, eine Visu mit weniger als 700 PT's zu erstellen - und das ist dann schon für eine kleine Anlage ...


----------



## Jochen Kühner (19 Juli 2012)

Es gibt natürlich auch noch die Möglichkeit das speichern ganz getrennt von der Visu über ein externes Tool zu machen! Oder muss es unbedingt in der Visu sein? Kann dir dazu z.B. meinen kostenlosen Protokoller (http://www.sps-forum.de/showthread.php/46470-DotNetSimaticDatabaseProtokoller) empfehlen. Mit dem kannst du die Daten auch in eine CSv speichern. (Oder auch in eine Datenbank)


----------



## Matze001 (19 Juli 2012)

@Larry : Die Richtung stimmt schonmal, ich denke sowas in der Art wird es werden! 
@Larry bzgl PT: Wie schaffst du es bei kleinen Visus auf 700PT zu kommen? Bzw. was ist bei dir klein?

@ Jochen: Es wäre schon schön wenn es aus der Visu herraus wäre, aber ich schaue mir das Tool trotzdem auf jeden Fall mal an!

Grüße

Marcel


----------



## rostiger Nagel (19 Juli 2012)

Nocheinmal ein anderer Ansatz, es gibt ja noch das ODK womit du direkt aus der RTX heraus
Datein schreiben kannst, das wäre doch eine einmal Investion wert. 

Als zweite Möglichkeit, du weißt ja das du ein OPC Server, bei deiner Plattform dabei hast.
Vielleicht kannst du da ja etwas selber scripten.


----------



## Matze001 (19 Juli 2012)

Ja wäre ein Ansatz, der nicht zu verachten ist!

Bei einem aktuellen Projekt geht es nicht (Kunde wünscht MP277 8" WinMP) aber das ist ja nicht das Maß aller Dinge.

An den OPC hab ich auch schon gedacht, aber da hab ich wieder zwei weitere Komponenten (OPC-Server + Dateiverwaltung).
Das ODK muss ich mir nochmal anschauen, so wie ich es in Erinnerung habe gab es da von Siemens sogar fertige Bausteine die eine CSV aus dem SPS-Programm heraus erstellen!

Grüße

Marcel


----------



## Larry Laffer (20 Juli 2012)

Matze001 schrieb:


> @Larry bzgl PT: Wie schaffst du es bei kleinen Visus auf 700PT zu kommen? Bzw. was ist bei dir klein?



Hallo Marcel,
klein ist bei mir ein Rundschalttisch mit ca. 12 Stationen.
Die Visu macht hier (wie schon beschrieben) die Datenaufzeichnung, die Parameter, Handbetrieb und jede Menge Status-Info auf dem Automatik-Bild.
Das läppert sich dann. 
Ich muß aber auch sagen, dass es mir selbst bei einem TP177, bei dem man dann ja naturgemäß auch viel weniger damit macht und es (aus meiner Sicht) wirklich nur bei einfachen Sachen einsetzt, schon schwerfällt, in dem Rahmen zu bleiben (aber da könnte es ggf. noch glücken) ...

Wie machst du jetzt was mit deiner Datenaufzeichnung weiter ?

Gruß
Larry


----------



## Matze001 (20 Juli 2012)

@Larry

Somit haben wir eine andere Definition von klein  Aber das ist ja auch nicht so schlimm!

Was ich nun einsetze: 

Ich habe mir das Tool von Jochen angeschaut, es gefällt mir sehr, aber ich werde es nicht nutzen.
Zum einen ist es Freeware auf die ich keinen Einfluss und keine Garantie habe, zum Anderen will ich eigentlich
gar kein externes Programm!

Ich habe mit dem Gedanken der Lösung mit Script + CSV nachgedacht, und das ist Favorit Nummer 2.

Ich werde mir die Lösung von RN mit dem ODK in Verbindung mit der WinAC ansehen, sieht bisher am saubersten aus!

Grüße

Marcel


----------



## Jochen Kühner (20 Juli 2012)

Matze001 schrieb:


> Ich habe mir das Tool von Jochen angeschaut, es gefällt mir sehr, aber ich werde es nicht nutzen.
> Zum einen ist es Freeware auf die ich keinen Einfluss und keine Garantie habe, zum Anderen will ich eigentlich
> gar kein externes Programm!



Hast du den einfluß auf die Programme für die du Geld bezahlst? Ich denke bei der allermeisten Software wird das nicht der Fall sein. Da mein Protokoller OpenSoure ist kannst du aber jederzeit selbst (oder jedanden den du dafür beauftragst) einfluß darauf nehmen. Und ich denke Garantie wirst du auch auf fast keine Bezahlsoftware bkeommen...

Da du aber eh kein externes Tool willst, ist das ja alles zweitrangig...


----------



## Matze001 (20 Juli 2012)

Jochen das ist nicht böse gemeint, ich finde solche Projekte klasse und arbeite gern damit.
Aber wenn hinter einem Tool Siemens steht, gibt es auch jemanden den ich mir dafür krallen kann.

Bei dem Tool könnte ich dich anschreiben, oder es selbst anpacken. Was nun schneller geht von den drei Optionen
lasse ich aber mal dahingestellt.

Das Totschlagargument ist halt auf ein externes Tool zu verzichten!

Grüße

Marcel


----------



## Jochen Kühner (21 Juli 2012)

Matze001 schrieb:


> Jochen das ist nicht böse gemeint, ich finde solche Projekte klasse und arbeite gern damit.
> Aber wenn hinter einem Tool Siemens steht, gibt es auch jemanden den ich mir dafür krallen kann.
> 
> Bei dem Tool könnte ich dich anschreiben, oder es selbst anpacken. Was nun schneller geht von den drei Optionen
> ...



Hab Ich auch nicht so aufgefasst... 

Aber das mit dem jemand krallen bei Siemens... Hast du hier mal im Forum gelesen wies beim TIA Portal seit einem Jahr aussieht, und was sich da bisher getan hat?


----------



## Matze001 (21 Juli 2012)

Ich weis wie du das meinst, und ich gebe dir recht.
Aber trotzdem hat man bei Siemens einen gewissen Support!

Grüße

Marcel

P.S: Ich habe jetzt ein wenig mit deinem Tool gespielt, ich schaffe es zu lesen und alles anzulegen, aber wenn ich testweise lese und eine Datei schreiben will, wird der Ordner und die Datei nicht erstellt. Muss ein vorhandener Pfad angegeben werden?


----------



## Rainer Hönle (21 Juli 2012)

Hallo Marcel,

Du kannst ja auch einmal unser *ACCON-S7-EasyLog* testen, dafür gibt es auch Support bei uns . Und wenn die Funktionalität nicht reichen sollte, dann gibt es davon sogar kundenspezifische Anpassungen.

Viele Grüße


----------



## Matze001 (21 Juli 2012)

Die Links für USB-Dongle oder Softwarelizenzierung funktionieren nicht (am Ende der Seite)!

Grüße

Marcel


----------



## Rainer Hönle (21 Juli 2012)

Danke für die Info. Gebe dies gleich weiter.
Dafür hier ein Link zur *Downloadseite*, damit Du Dir die Demoversion einmal ansehen kannst


----------

