network.lib > Modulentwicklung

DATA-LOGGER

(1/3) > >>

peewit:
Hallo

Wir werden für die oscat-network.lib einen Daten-Logger erstellen

1. Prozesswerte werden in eine lokale Datei geschrieben
2. Prozesswerte werden in eine Datei direkt auf einen FTP-Server (nicht auf der SPS) geschrieben.

Um hier für möglichst viele eine interessante Lösung zu erstellen, bitte ich euch hier eure Wünsche, Ideen mir mitzuteilen


--- bislang in die wunschliste aufgenommen ---

- schreiben von logdaten in eine datei auf der steuerung
- fertige logdatei auf einen ftp-server zur archivierung übertragen
- ftp transfer mit aktiv und passiv mode wegen firewall
- Adressierung des FTP per reiner URL, damit ich die Daten auch in die "Cloud" schicken kann.
- CSV File Format mit frei definierbaren Trennzeichen
- ein Puffer, der die Daten lokal für eine definierte Zeit oder Menge oder bis zur Verfügbarkeit der Verbindung speichert und  dann versendet
- CVS-Daten in eine rrdtool Datenbank schreiben


tja inzwischen wurde die wunschliste zur realität

zeitgleich zur bald erscheinenden oscat 3.21 wird des die network.1.10 geben, die neben vielen anderen sachen auch das oben genannte enthalten wird.

Majaestix:
Hallo peewit,

hier ein paar Ideen meinerseits:

- Adressierung des FTP per reiner URL, damit ich die Daten auch in die "Cloud" schicken kann.
- File Format CSV, wobei es schön wäre, wenn das Trennzeichen beim Aufruf definiert werden könnte
- ein Puffer, der die geloggten Daten lokal für eine definierte Zeit oder eine definierte Menge oder bis zur Verfügbarkeit der Verbindung zwischenspeichert und dann in einem Rutsch versendet

Das wär's erstmal.

Gruss

Majaestix

NetFritz:
Hallo
Ich würde es klasse finden, wen der Logger ein Script auf den externen Rechner aufrufen könnte, das die CVS-Daten in eine rrdtool Datenbank schreibt.
Gruß NetFritz

NetFritz:
Hallo
Hier ein Link der erklärt was rrdtool ist.http://de.wikipedia.org/wiki/RRDtool
Bevor man die rrd-DB mit Daten füttern kann muß man eine rrd-DB anlegen.
Die DB heißt hier z.B. solar.rrd.
Ich rufe rrdtool über ein PHP-Script so auf .

--- Code: ---$erg = system("/usr/bin/rrdtool update /var/www/myhouse/rrd/solar.rrd N:$wert[0]:$wert[1]:$wert[2]:$wert[3]:$wert[4]:$wert[5]:$wert[6]:$wert[7]:$wert[8]");

--- Ende Code ---
/usr/bin/rrdtool update = ruft das Prg. zum füttern der rrd-DB auf
/var/www/myhouse/rrd/solar.rrd = das ist die DB
N:$wert[0]:$wert[1]:$wert[2]:$wert[3]:$wert[4]:$wert[5]:$wert[6]:$wert[7]:$wert[8] = in diesen Variablen stehen die Werte die abgelegt werden
Man kann auch aus der Konsole die DB updaten z.B. rrdtool update solar.rrd N:10:15:20:25:30:35:40:45
Ich hoffe das ich ein bisschen Klarheit in rrdtool gebracht habe.
Gruß NetFritz

NetFritz:
Hallo
Das PHP-Script auf dem Server ist PHP-CLI-Script.
Das PHP-Script könnte die CVS-Werte aus der Steuerung in die RRD-DB schreiben.
Dazu muss das Skript nur regelmäßig gestartet werden wenn neue CVS-Werte auf dem Server sind.
Gruß NetFRitz

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln