Seite 1 von 2

Programmierer für ws_merge.csv Datei gesucht

Verfasst: 28 Sep 2008 16:52
von Luk
Hallo Forum,
ich suche einen der mir eine ws_merge.csv Datei so programmieren kann, das ich in nur einem WsWin die Station WS3600 und einen Klimalogger betreiben kann.

Falls noch weitere Infos benötigt werden, postet sie hier einfach.

Vielen Dank,
Luk

Verfasst: 28 Sep 2008 17:58
von weneu
Hallo,
die Frage ist vom Ansatz her falsch, eine Datei ws_merge.csv kann nicht "programmiert" werden.
Was Du möchtest, ist ein Skript (wenn ich Dein früheres posting richtig im Kopf habe), das die history.drf des Climaloggers so umformt, dass für WSWIN eine Datei ws_merge.csv entsteht, die WSWIN im Rahmen der Dateiüberwachung zugeführt werden kann.
Dein Dein Ziel ist doch (ich bin Hellseher :) ), die WS3600 per Dateiüberwachung auszulesen und WSWIN gleichzeitig die Temperaturdaten des Klimaloggers zur Verfügung zu stellen, richtig?

Verfasst: 28 Sep 2008 18:37
von Luk
Ganz genau, du hast mich durchschaut :D

Verfasst: 02 Okt 2008 14:27
von Luk
Schade, hat keiner eine Idee wie man das verwirklichen könnte ?

Verfasst: 05 Okt 2008 20:48
von Volker S
@ Werners, :D

wie muss sich die ws_merge.csv denn verhalten. Dürfen die jeweiligen Temperaturen in dieser Datei alle untereinander stehen, oder darf in dieser Datei nur die Temperatur vorhanden sein, die seit dem letzten Aktualisierungsintervall von WSWin mit eingepflegt werden muss?

Beispiel: (WSWin wird stündlich aktualisiert - augenblickliche Aktualisierung 18:15 Uhr)

ws_merge.csv (kumulativ):
05.10.2008,17:00,23.7,12.7,10.2,11.2,12.1,47,86,,,
05.10.2008,18:00,23.9,12.3,10.2,10.7,11.8,47,88,,,

ws_merge.csv (nur der neueste Wert steht drin):
05.10.2008,18:00,23.9,12.3,10.2,10.7,11.8,47,88,,,


-volker-

Verfasst: 05 Okt 2008 23:31
von Werner
@Volker,

der Sinn der ws_merge.csv ist es zu aktuellen Daten weitere hinzu zu nehmen.

Deshalb wird hier nur die letzte Zeile übernommen - der Rest wird ignoriert (die Daten sind ja auch nicht mehr aktuell).

Werner

Verfasst: 05 Okt 2008 23:35
von Volker S
Hallo Werner,

alles klar - Danke.


-volker-

Verfasst: 06 Okt 2008 01:47
von Volker S
Hallo Werner,

eigentlich wollte ich über kl2wswin die ws_merge.csv erzeugen lassen. Funktioniert auch soweit. Bloß ist bei mir die Version 0.62 (ist die Aktuellste) sehr unzuverlässig.
Die Config.ini hat immer mal wieder Fehler, so dass er die zu überwachende Textdatei (Export von der TFA-Software) mal findet - mal nicht. Auch eine Attrib-Änderung auf Readonly (bei richtiger config.ini) der config.ini brachte keinen Erfolg.

Weißt Du wo man noch andere Versionen von kl2wswin herbekommen kann?
Version 0.60 und 0.61 wären interessant zu testen.

EDIT: ...hat sich erledigt.


-volker-

Verfasst: 06 Okt 2008 17:51
von Volker S
so,

meine ws_merge.csv sieht nun so aus (wenn der Klimalogger einen Datensatz übertragen hat).

,,1,2,3,4,5,17,18,19,20,21
06.10.2008,18:00,23.1,13.0,10.8,11.8,12.5,51,89,,,


Die ws_merge.csv beinhaltet folgendes, wenn die Abfrage des Klimaloggers keine neuen Daten gebracht hat (t < t_intervall)

,,1,2,3,4,5,17,18,19,20,21


reicht das so?


-volker-

Verfasst: 06 Okt 2008 18:22
von Werner
@Volker,

wenn keine Daten vorliegen, sollten entweder die alten Daten noch einmal eingetragen werden oder keine neue ws_merge.csv zur Verfügung gestellt werden.

Werner

Verfasst: 06 Okt 2008 21:35
von Volker S
Hallo Werner,

die Umwandlung von einer Textdatei (das ist die Exportdatei vom Klimalogger) nach *.csv macht nun das Prog von Sebastian Luhn (KL2WsWIN Version 0.62). Das ursprünglich beigelegte au3-Script wurde komplett umgekrempelt (da das Prog. nicht das machen wollte, was ich wollte).

...aber darum geht es mir jetzt nicht - sondern um die programminterne Umwandlung von *.txt -> *.csv

Die Textdatei sieht folgendermaßen aus
"Date";"Indoor Temperature";"Indoor Humidity";"Outdoor Temperature 1";"Outdoor Humidity 1";"Outdoor Temperature 2";"Outdoor Humidity 2";"Outdoor Temperature 3";"Outdoor Humidity 3";"Outdoor Temperature 4";"Outdoor Humidity 4";"Outdoor Temperature 5";"Outdoor Humidity 5"
"06.10.2008 22:00";"23.7";"49";"11.8";"92";"10.8";"---";"10.3";"---";"11.4";"---";"---";"---"

daraus wird folgende ws_merge.csv (bei keinen Daten wird keine geschrieben):
,,1,2,3,4,5,17,18,19,20,21
06.10.2008,22:00,23.7,11.8,10.8,10.3,11.4,49,92,,,

Nun meine Frage:
Wenn ich jetzt - wie Luk - schon eine Datei in WSWin "einspeise", dann sind doch schon eine Menge Sensoren-ID's vergeben. Was passiert denn, wenn WSWin die merge einliest und Dein Prog. dann gleiche ID's vorfindet?


-volker-

Verfasst: 07 Okt 2008 00:07
von Werner
@Volker,

merge bedeuted, dass die Daten vom Hauptprogramm - wenn die gleiche ID verwendet wird - überschrieben werden (also verloren gehen).

Deshalb sollte man beim "mergen" immer solche ID's verwenden, die im Hauptprogramm nicht vorkommen, außer man möchte eben solche Werte mit gleichen ID's überschreiben.

Werner

Verfasst: 07 Okt 2008 09:06
von Volker S
Hallo Werner,

der einfachere Weg wäre dann wohl, sich die ws_merge.csv anzuschauen welche ID's vergeben werden - um danach diese ID's in der wswin.cfg "frei" zu machen. Oder kommen dann irgendwelche Archive/Statistiken der Wetteraufzeichnung von WSWin durcheinander?

Wieviel ID's kann denn WSWin verwalten? Default habe ich ja 43. Wenn ich nun (theoretischerweise) meinen ID's der merge-Datei...

,,1,2,3,4,5,17,18,19,20,21

...jeweils 43 dazuzählen lasse - könnte ich Diese dann zusätzlich in die WSWin.cfg eintragen? Denn nur so wäre ja sichergestellt, dass die merge-ID's nie mit den WSWin-ID's kollidieren.

Aber Option 1 (das Erste was ich angesprochen hab) wäre für mich einfacher (beschäftige mich gerade erst mal 2Tage mit der au3-Scripterei).


-volker-

Verfasst: 07 Okt 2008 19:39
von Werner
@Volker,

Bitte lies einmal in der Programmhilfe bei Importieren und hier speziell
die Information über Indexe.

Die Index-Nummer haben jeweils eine besondere Bedeutung:
z.B. ID 1 bis 16 sind für Temperatur-Werte.

Man kann nicht beliebige Nummer wählen - ist abhängig vom Wetterstationstyp. Wobei als Wetterstation die VantagePro und ELV WS2500 die kompletten ID-Nummern (fast) unterstützen - also auch
berücksichtigt werden!

Werner

Verfasst: 07 Okt 2008 21:39
von Volker S
Hallo Werner,

danke. Ich habe gerade die angesprochene Hilfedatei durchgelesen. Hatte das aber ja eher sowieso nicht vor - diese Option der Umbenennung der ID's in der merge-Datei sollte daher eher von theoretischer Natur sein.

Leider bist Du auf meine erste Frage nicht weiter eingegangen, welche ich eigentlich jetzt nun als einzige (wenn auch nicht glückliche) Alternative betrachte.

Kann ich die schon vorhandenen Temp-ID's (Default-Platzhalter-ID: 1-16) einfach verändern, ohne das WSWin in seinen Archiven/Aufzeichnungen durcheinander kommt?

Beispiel: 2x Klimalogger - dabei wurde ein Logger 6 Monate später angeschafft.
WSWin zeichnet 6 Monate lang einen Klimalogger auf (per Dateiüberwachung: ID1=Innentemperatur, ID2=Aussentemperatur).
Nach 6 Monaten kommt nun ein weiterer Logger hinzu. Dieser wird mittels ws_merge.csv eingebunden (leider mit den gleichen ID's). Wenn ich jetzt die alten ID's in der wswin.cfg auf ID3 und ID4 lege - was passiert mit den Aufzeichnungen der letzten 6 Monaten?

Meine Vermutung:
Da man nun 4 unterschiedliche ID's hat funktioniert die Aufzeichnung. Da es aber in der zurückliegenden Zeit die ID1 und die ID2 schon gegeben hat, verfälscht sich die Aufzeichnung (da ja nun die neuen ID1/ID2 diese Daten liefern). Stimmt diese Vermutung?


Die andere und bessere Alternative wäre natürlich die Merge ID's so zu verändern, dass sie auf einen unverbrauchten Platz in der WSWin.cfg landen können. Der Pferdefuß daran ist: Für mich ein erheblicher Mehraufwand. Ich muss die wswin.cfg auslesen (welche Temp-und Feuchteplätze frei sind), und anhand dieser Abfrage die ID's der "falschen" ws_merge umbenennen.


-volker-