Wetterstation

Hallo,

ich bin auf der Suche nach einer guten Wetterstation, die ich in das IPS System ohne größere Probleme integrieren kann.
Folgende Parameter sollten aufgenommen werden:

  • Außentemperatur
  • Windgeschwindigkeit
  • Windrichtung
  • Regenmenge
  • eventuell Lichtmenge

Welche Station könnt Ihr empfehlen? Den KS300 fand ich ganz nett, nur dass dann Druck und WIndrichtung fehlen.

Vielen Dank
Schorsch

Ich hab nur die Oregon Scientific WMRS 200 geholt, günstig, sehr gute Funkverbindung und das USB-Protokoll war schnell entschlüsselt.
Ich lese und schreibe hier zwar mit, hab aber kein IPS, weil ich eine eigene Steuerung programmiert habe und kann Dir deswegen nicht sagen, ob du im IPS die Raw-Daten vom USB Port bekommen kannst.
Aber für €139 gibts nix besseres.

Wenn der USB Port über HID angesprochen ja. Wenn er einen virtuellen ComPort anlegt auch. Sollte es FTDI sein - auch kein Problem.

Die KS300 würde ich lieber nicht nehmen - Die macht mehr Ärger als Freude.

paresy

Hi,

lass dir zur KS300 noch eine WS250 (autarkes System, parallel zu IPS) und einen S300TH (den kannste so ohne weiteres in IPS leider nicht direkt nutzen) schenken und zahl nur 79€.

WS 250 Edition inkl. Kombi-Sensor KS 300, 2-m-Edelstahl-Steckmast und Batterien, weiß | ELV-Elektronik

Gibt es auch in schwarz, eine Artikelnummer höher. Läuft bei mir ohne Probleme mit ner FHZ1300; wobei man sagen muss, dass die Probleme mit dem Regensensor ja bekannt sind (also nicht jammern bei dem Preis, einfach mitleiden; oder lassen).

mfg

Bernd

Hallo,

das Angebot ist natürlich prima von ELV. Ich bin auch schon hin-und-hergerissen. Aber ich glaube die WMRS 200 gefällt mir besser, da die Windrichtung noch dabei ist.

Jetzt wird es nur noch spannend wie ich das ganze eingebunden bekomme. Aber probieren werde ich es mal.

Gruß
Schorsch

Ja, wird er.

@parsey:

Protokoll könnte ich Dir zur Verfügung stellen, wenn Du die direkt einbinden willst. Wäre eigentlich nicht wirklich eine schlechte Sache.

Prinzipiell gern - aber ETA für ein Modul wäre frühstens April.

paresy

@ Andiadm:
Es wär nett, wenn du mir auch eine kopie des Protokolls zusenden könntest.

Danke
Schorsch

Hallo,
ist wirklich nicht kompliziert, Du bekommst Pakete a 9 Bytes (bInputReport) von der HID (USB) Schnittstelle, in bData wird der Datensatz gesammelt:

//Für HID Erkennung
#define WMRS200_VENDOR_ID 0x0fde
#define WMRS200_PRODUCT_ID 0xca01

int   iloop=0;
   
  //bInputReport[1] = Anzahl gültiger Bytes im Paket
  //die gültigen Bytes hintereinanderhängen, bis am Ende 2 mal 0xFF steht, dann geht neuer Datensatz los
  //letzte 2 Bytes im Datensatz Checksumme

while (iloop<bInputReport[1])
{
 bData[iDataPos++]=bInputReport[2+iloop];

   if (iDataPos>3)
    //2 mal 0xff ganz hinten heisst Datensatz fertig
    if ((bData[iDataPos-1]==255)&&(bData[iDataPos-2]==255))
  {
   if (pWmrs200->ChecksumOK((LPBYTE)&bData,iDataPos))
    pWmrs200->ParseWMRS200Data((LPBYTE)&bData));
   iDataPos=0;
  }
 iloop++; 
}

Dann die Prüfsumme rechnen:

DWORD dwCheckSoll,dwCheckIst;
int loop;

//Im Datensatz ist die Prüfsumme die letzten 2 Bytes vor den 2 0xFFs
dwCheckIst=(lpbData[iDataPos-3]*256)+lpbData[iDataPos-4];

//Prüfsumme ist die Summe aller Bytes im Datensatz ohne die Prüfsumme
for (dwCheckSoll=loop=0;loop<iDataPos-4;loop++)
dwCheckSoll+=lpbData[loop];

return (BOOL)(dwCheckSoll==dwCheckIst);

Und dann hat man eben diese Datensätze variabler Länge, und das ist das „eigentliche“ Protokoll:

Hier ist der Typ des Datensatzes codiert
switch (lpbData[1])
{
//Regen
case 65:
{
//Regen ist in Inch
iInchRainThisHour=lpbData[5]*256+lpbData[4];
iInchRainLast24h=lpbData[7]*256+lpbData[6];
iInchRainSinceReset=lpbData[9]*256+lpbData[8];
}
break;

//Temperatur & Luftfeuchte
case 66:
{
//0=Innen, 1=Aussen, 2-10 zusätzliche Sensoren
iSensor=(lpbData[2]&15);
iTemp=((lpbData[4]&127)256+lpbData[3]);
if (lpbData[4]&128)
iTemp
=-1;
iHumidity=lpbData[5];
}
break;

//Luftdruck
case 70:
{
//es ist immer der Druck auf Seehöhe der zurückkommt
iPressLocal=((lpbData[3]&3)*256)+lpbData[2];
iPressSee=((lpbData[5]&3)*256)+lpbData[4];
iPresTrend=((lpbData[5]&252)<<4);
iPresStatus=((lpbData[3]&252)<<4);
fResult=TRUE;
}
break;

//Wind
case 72:
{
/*
0 N
1 NNe
2 ne
3 ene
4 e
5 ese
6 se
7 sse
8 s
9 ssw
10 sw
11 wsw
12 w
13 wnw
14 nw
15 nnw
*/
iWindDeg=lpbData[2]; /0-16 siehe oben
iWindSpitze=lpbData[4]; // in M/s
iWindAvg=(int)((lpbData[6]*256+lpbData[5])/16);// in M/s
}
break;
}

Wirklich, wenn man nicht Wert auf eine Software dazu legt oder ein Bedienterminal, dann ist das Ding für den Preis eigentlich unschlagbar. Und da es sich über das USB Kabel mit Strom versorgt, muss man nicht auch noch ein Netzteil nehmen.

Grüße
Andreas

plane gerade den Einstieg in IPS, bzw. insgesamt in die Homeautomation. Habe mich inzwischen auf Homematic festgelegt, weil für mich „intelligente“ Steuerung einfach Bidirektionale Kommunikation bedeutet!
Bei der Wetterstation komme ich aber ins Grübeln. Bei dem Preis der Homematic version kann ich mir ja gleich ne KS300 + ne FHZ Station kaufen.
Und habe dann auch noch die Möglichkeit für unwichtige Aufgaben billigere FS20 Teile zu benutzen. Gibts gravierende Nachteile bei der KS300 gegenüber der Homematic OC3? Auf die Windrichtung könnte ich verzichten…

Danke,
Pollibus

PS: Oder ist es vll keine gute Idee auch als komplett Neueinsteiger mit 2 Systemen an den Start zu gehen?

Hallo,

eher andersherum. Die meisten fingen mit einem System (FS20) an und haben inzwischen ueber WAGO, 1-Wire, LCN, Enocean, xControl usw. zum Teil mehr als 3 bis 4 Systeme parallel in Betrieb. Das eine fuer die Aufgaben, andere fuer andere Aufgaben. Immer so eingesetzt, wie es am optimalsten erscheint. Das ist ja gerade auch der Vorteil, den Du Dir mit IPSYMCON erkaufst: totale Kontrolle der verschiedenen Hardware Basen.

@Pollibus: Ich habe es mit meinem KS300 aufgegeben. Es gibt bekannte Probleme mit dem Regenmelder und der Empfang an der FHZ ist auch nicht gerade optimal. Ist jetzt eine Preis-Leistungfrage.

paresy

Dann werd ich wohl mit FS20 und Homematic einsteigen, die Wetterstation dafür auf die Zukunft verschieben. Das frei gewordene Geld kann man wunderbar in Zubehör für beide Systeme investieren :slight_smile:

Danke

Hallo Andiadm,

ich habe hier jetzt auch eine WMRS200 liegen und wollte nach Deiner Datenanalyse das ganze per PHP in IPS verarbeiten. Der HID-Debugger zeigt nun leider Datenpakete an, die deinen Angaben nicht entsprechen. Kannst Du mir vllt mal eine Demo-Applikation zukommen lassen?

Mit freundlichem Gruß,
Horst

Hallo Horst,

Demo-App ist wirklich schwierig, das ist ein Teil meiner Steuerung und wenn die keine Moeller Schnittstelle und ne Wago 750 findet, macht die gar nix und ist auch nicht parametrierbar.

Bekommst Du denn immer 9 Byte Pakete von der HID Schnittstelle?

Da ist dann im 2ten Byte die Anzahl gültiger Bytes ab der 3ten Stelle drinnen, die hintereinanderhängen (auch Paketübergreifend), bis hinten 2 mal 0xff steht, dann ist ein Datensatz fertig. Ein Datensatz kann durchaus in 3-4 Paketen „Daherkommen“.

Andreas

Hallo Andiadm,

die WMRS200 hört sich nach genau dem an, was ich gesucht habe.
Hättest Du die Möglichkeit ein paar Datensätze mitzuschneiden und mir zuzusenden? Dann könnte ich schoneinmal überlegen, wie ich die Auswertung mache.

Gruß
Schorsch

Hallo,

nachdem ich nach dem Launch der neuen Homepage mal wieder etwas Zeit hatte, habe ich mir ein Script für IP-Symcon geschrieben, das alle Sensoren ausliest. Da ziemlich viele Pakete über den HID gehen hat man nur leider eine ziemlich volle Konsole und gut gefüllte Log-Files, ca 1,5MiB/h bzw. 13GiB/Jahr, mit tollen ASCII-Zeichen. Daher werd ich bei Gelegenheit mal ein natives IP-Symcon-Modul schreiben.
Protokoll ist das selbe wie bei der WMR100, daher wird die Station auch von Weather Display oder Virtual Weather Station verstanden.

@andiadm: Meine Pakete vom HID sind übrigens 8 Byte groß, die Datensätze nach dem Zusammensetzen sehen aber doch so wie bei Dir aus. :wink:

@Horst / Schorsch

Super, das freut mich.

Hier mal ein paar Datensätze „Wind“ von mir:

22.01.2009 07:58:02 07:58:02 (013) 000 072 011 012 000 000 000 000 032 127 000 255 255
22.01.2009 07:58:02 07:58:02 (013) 000 072 011 012 000 000 000 000 032 127 000 255 255
22.01.2009 07:58:13 07:58:13 (013) 000 072 011 012 000 000 000 000 032 127 000 255 255
22.01.2009 07:58:30 07:58:30 (013) 000 072 011 012 000 000 000 000 032 127 000 255 255
22.01.2009 07:58:43 07:58:43 (013) 000 072 011 012 000 000 000 000 032 127 000 255 255
22.01.2009 07:58:53 07:58:53 (013) 000 072 011 012 000 000 000 000 032 127 000 255 255
22.01.2009 07:58:55 07:58:55 (013) 000 072 011 012 000 000 000 000 032 127 000 255 255
22.01.2009 07:59:07 07:59:07 (013) 000 072 011 012 000 000 000 000 032 127 000 255 255
22.01.2009 07:59:23 07:59:23 (013) 000 072 011 012 000 000 000 000 032 127 000 255 255
22.01.2009 07:59:43 07:59:43 (013) 000 072 011 012 000 000 000 000 032 127 000 255 255
22.01.2009 07:59:48 07:59:48 (013) 000 072 011 012 000 000 000 000 032 127 000 255 255
22.01.2009 07:59:53 07:59:53 (013) 000 072 011 012 000 000 000 000 032 127 000 255 255
22.01.2009 08:00:03 08:00:03 (013) 000 072 011 012 000 000 000 000 032 127 000 255 255
22.01.2009 08:00:19 08:00:19 (013) 000 072 011 012 000 000 000 000 032 127 000 255 255
22.01.2009 08:00:31 08:00:31 (013) 000 072 011 012 000 000 000 000 032 127 000 255 255

Vielleicht kann Host sein Script für Schorsch hier reinstellen?

Ich hab da mal ein Modul geschrieben, dass sich ab jetzt im LiveUpdate befindet.
Damit gibt es endlich eine vernünftige native Alternative in IPS zur KS300.

Hallo Horst,

erstmal Lob fuer Deine Entwicklung.
Welche Wetterstationen werden denn von Deinem Modul unterstützt
und welche wuerdest Du empfehlen.

VG
Stephan