Modul für EM1010

Hallo Tommi!

Bei mir geht es um den Funk-Zwischenstecker, hab ich vergessen zu schreiben.

Gruß Gerald

Hallo Tommy.

Könnte man die Zählerkonstante des Gaszählers parametrierbar machen?
Es ist so, dass in der Tat der Zähler drei nachkommastellen hat, also 1000stel Kubikmeter messen kann. Allerdings dreht die letzte Stelle bisweilen so schnell, dass eine saubere Erfassung nicht mehr möglich ist. Daher steht auch in der Ableitung des EM1000GZS, dass man diesen auf die 2. Nachkommastelle positionieren sollte. Damit wären es hundertstel Kubikmeter und die Zählerkonstante dann 100. Wenn die parametrierbar wäre könnte jeder sich das so einichten, wie er den Sensor positioniert hat.
Wenn ich einen Reedkontakt an meinem Zähler verwenden würde, dann würde sogar nur ein Impuls pro 0,1m³ kommen, was dann eine Zählerkonstante von 10 bedeuten würde.

Hallo Tommi!

ich hab mal einen Screenshot vom Funkzähler gemacht und analog dazu die Werte vom EM1010PC abgeschrieben.

Lt. EM1010PC:
Cur_Power: 0,008
Stündlich: 0,114
Täglich:0,576
Wöchentlich: 4,032
Monatlich: 17,28
Jährlich: 210,2
Durchschnitt: 0,302

So ein Parameter für die Konstante am Gaszähler wird sicherlich drin sein. Wenn ich so die Werte Gerald anschaue, sehe ich das Stündlich stimmt, Durchschnitt=täglich ist und alles andere aber überhaupt nicht. Muss ich mir ansehen.

Ich habe auch mal ein paar Bilder gemacht. Diesmal allerdings mit 5 Minutenwerten in EnergyProfesional damit es mit den Einstellungen im EM1010-Modul passt.

ich habe ein wenig an dem Modul gefeilt. Zumindest bei meinem EMWZ stimmt die Anzeige zwischen EM1010PC und IPS. Die Variablen habe ich auch etwas durcheinandergewürfelt und ergänzt. Es wäre nett, wenn das auch jemand mit dem EMGZ und EMEM mit der beiliegenden Version probieren könnte. Ich bin mir allerdings mangels Testmöglichkeiten nicht ganz sicher, ob ich es nicht etwa verschlimmbessert habe, also besser vorher Backup machen.
Dazu IPS stoppen, die DLL austauschen, neustarten und dann gleich die existierenden EM101Device-Instancen löschen. Die werden dann neu angelegt.

Tommi

EM1010.zip (307 KB)

Hallo Tommi!

Ich hab das gestern Abend noch kurz getestet.
Die Anzeige am EM1010PC 0,005 in IPS 0,007.
Was mir auch noch aufgefallen/eingefallen ist, unter Ereignisse kann man nur auf 0.00 und nicht auf 0,000 abfragen.
Hab dann wieder auf das alte DLL umgestellt.

Gruß Gerald

Danke für’s Testen, aber ob das jetzt schon ein aussagekräftiger Test war…
Kann ich ein paar Screenshots im Vergleich bekommen? Es würde auch helfen, das Log zu aktivieren EM1010PC_SetLogfile(…) und da mitzugeben.
Die Anzahl der Stellen beim Gas habe ich bewusst auf 2 Nackommastellen beschränkt, weil lt. Doku nur mit 2Nachkommastellen gerechnet wird. Das ist im Profil hinterlegt, was man natürlich auch wieder ändern kann. Es sollte aber für den Event keinen Unterschied machen, ob nun 0.00 oder 0.000 angezeigt wird, Null bleibt null als Zahl, egal wie sie formatiert ist und damit den Event triggern. Dazu müßte Paresy was sagen.
Der Unterschied von 0.005 zu 0.007 kann auch ein Rundungsproblem sein. Dazu brauche ich die jetzt angezeigten Zählerstände und den Umrechnungsfaktor in der Anzeige und vom EM.
Oder es gab eine zeitliche Verschiebung und der 2.Wert wird erst beim nächsten Mal übertragen… Deshalb ist so ein single Try nicht so hilfreich.

Tommi

Hallo Tommi!

Darum hab ich auch geschrieben das ich es „NUR KURZ“ getestet hab. Ich wollte einfach bevor ich auf Dienstreise fahre das noch schnell testen.
Ich bin leider erst am Freitag wieder zu hause, dann mach ich natürlich einen ausführlichen Test und mache auch wieder Screenshots dazu, das Log werde ich auch aktivieren.
Bei dem Event hab ich mich etwas ungenau ausgedrückt, ich meinte natürlich nicht 0,000 sondern, es macht natürlich einen unterschied ob ich auf kleiner als 0,01 oder 0,001 abfrage.

Gruß Gerald

Ereignis ändern.jpg

Ich habe das Problem mit dem Event auch und deshalb jetzt hier eine Fehlermeldung erstellt. Trotz 3 Stellen im Profil werden nur 2 Stellen angeboten. Siehe Screenshots 1-3.

Anbei eine in großen Teilen weiter überarbeitete Beta-Version des Moduls. Es gibt neue Profile, ein paar selten genutzte Variablen und Funktionen habe ich ausgeblendet, die SetPreis-Funktion nimmt jetzt Euro statt Integer. Auch hierzu zwei Screenshots.
Ich überlege gerade, ob ich die History* und Total* Variablen auch rausnehme, weil sie eigentlich keine sinnvolle Aussage treffen.

Tommi

sw1.JPG

v1.JPG

em1010vars.JPG

EM1010.zip (307 KB)

Hallo Tommi!

ich hab das jetzt noch ausführlich getestet, hier mein Ergebnis:

Anzeige EM1010PC:
Cur_Power 0,005 NOK
Stündlich 0,024 OK
Täglich 66,06 OK
Wöchtentlich 641,7 NOK

Gruß Gerald

Hallo Gerald,

könntest Du das Bitte mit dem neuen Modul noch einmal testen. Dazu bitte den Baum mit den Sensoren löschen, damit sie neu angelegt werden können. Anschliessend IPS runterfahren, die DLL austauschen und wieder starten. Bitte dann auch einmal das Log aktivieren und mir neben den Screenshot zuschicken


EM1010PC_SetLogfile($id,'em1010.log'); 
IPS_ApplyChanges($id); 

Eine aktualisierte Beschreibung habe ich schon auf meine Webseite gelegt.
Danke!
Tommi

Hallo Tommi

Ich habe die neue DLL mal am Laufen. Scheint auch jetzt von den Werten zu stimmen. Zumindest wenn der Wert für EnergyConst beim Gassensor auf 100 steht, so wie es bei mir nötig ist. Das ist er aber nur direkt nach der Installation! Das komische ist nun, dass sich dieser Wert nach den ersten 5 Minuten immer wieder auf 1000 ändert. Damit ist dann wieder alles beim alten und die Werte liegen um den Faktor 10 daneben.

Hier mal ein Stück vom Log.

Date;Device;pulses;pulses_max;EnergyConst;Readings;devs;FirstPage;Cur_Power;Cur_Power_Max;Sum_H_Energy;Sum_D_Energy;Sum_W_Energy;Total_Energy;Price_cf;alarm_pa;iec;Cur_Energy;pulses_total;
2012-02-03 11:41:15;1;2;1414;75;6067;1;25;0.320;226.240;0.320;10.307;74.573;952.640;0.221;23000;75;0.027;71448;
2012-02-03 11:41:15;9;0;7124;100;6067;3;26;0.000;854.880;0.120;1.460;48.600;718.490;0.605;65535;100;0.000;71849;
2012-02-03 11:46:14;1;3;1108;75;6068;1;25;0.480;177.280;0.347;10.320;74.520;952.680;0.221;23000;75;0.040;71451;
2012-02-03 11:46:14;9;1;7125;1000;6068;3;26;0.012;85.500;0.012;0.147;4.861;71.850;0.605;65535;1000;0.001;71850;
2012-02-03 11:51:17;1;2;1139;75;6069;1;25;0.320;182.240;0.347;10.333;74.480;952.707;0.221;23000;75;0.027;71453;
2012-02-03 11:51:17;9;1;7126;1000;6069;3;26;0.012;85.512;0.012;0.148;4.862;71.851;0.605;65535;1000;0.001;71851;
2012-02-03 11:56:19;1;8;217;75;6070;1;25;1.280;34.720;0.427;10.387;74.453;952.813;0.221;23000;75;0.107;71461;
2012-02-03 11:56:19;9;0;7126;1000;6070;3;26;0.000;85.512;0.011;0.148;4.862;71.851;0.605;65535;1000;0.000;71851;
2012-02-03 12:01:21;1;4;233;75;6071;1;25;0.640;37.280;0.453;10.413;74.440;952.867;0.221;23000;75;0.053;71465;
2012-02-03 12:01:21;9;1;7127;1000;6071;3;26;0.012;85.524;0.011;0.149;4.863;71.852;0.605;65535;1000;0.001;71852;
2012-02-03 12:06:24;1;2;1378;75;6072;1;25;0.320;220.480;0.453;10.413;74.400;952.893;0.221;23000;75;0.027;71467;
2012-02-03 12:06:24;9;1;7128;1000;6072;3;26;0.012;85.536;0.010;0.150;4.864;71.853;0.605;65535;1000;0.001;71853;
2012-02-03 12:11:26;1;2;1648;75;6073;1;25;0.320;263.680;0.453;10.413;74.373;952.920;0.221;23000;75;0.027;71469;
2012-02-03 12:11:26;9;0;7128;1000;6073;3;26;0.000;85.536;0.009;0.150;4.864;71.853;0.605;65535;1000;0.000;71853;
2012-02-03 12:16:28;1;2;1568;75;6074;1;25;0.320;250.880;0.453;10.427;74.333;952.947;0.221;23000;75;0.027;71471;
2012-02-03 12:16:28;9;0;7128;1000;6074;3;26;0.000;85.536;0.008;0.150;4.864;71.853;0.605;65535;1000;0.000;71853;
2012-02-03 12:21:31;1;2;1334;75;6075;1;25;0.320;213.440;0.440;10.440;74.293;952.973;0.221;23000;75;0.027;71473;
2012-02-03 12:21:31;9;0;7128;1000;6075;3;26;0.000;85.536;0.008;0.150;4.864;71.853;0.605;65535;1000;0.000;71853;
2012-02-03 12:26:33;1;7;191;75;6076;1;25;1.120;30.560;0.507;10.520;74.333;953.067;0.221;23000;75;0.093;71480;
2012-02-03 12:26:33;9;0;7128;1000;6076;3;26;0.000;85.536;0.007;0.150;4.857;71.853;0.605;65535;1000;0.000;71853;

Da ist wohl noch ein Käfer im Getriebe. Das sollte natürlich nicht so sein. Hast Du SetEnergyConst und Apply_Settings ausgeführt oder alles so gelassen?
Tommi

Hier ist eine neue Version, wo die Abfrage hoffentlich besser funktioniert. Wenn nicht, brauche ich aus dem Debug-Log des Splitters die Zeilen mit …GetEC…

HTH
Tommi

EM1010.zip (307 KB)

Hallo Tommi

Zuerst mal Danke dafür, dass wir durch Deine Mühen das EM1010 in IPS intergrieren können.
Soweit habe ich auch alles eingerichtet.
EM1010 USB und Comport COM3 in Windows7 64 Bit.
In Ip-Symcon die Spitter-Instanz EM1010USB angelegt, ELV EM1000 IR Instanz angelegt, Seriell Prot Instanz angelegt und COM3 wird auch geöffnet.
Die Sofware von ELV EnergieProfessionell erkennt auch EM1010 USB.
Nun fehlen mir die Kenntnisse, die Varibalen mit Daten zu füllen, da ich noch am Anfang stehe mit PHP Kenntnissen.
Habe im Forum gesucht, aber leider zu wenig gefunden.
Danke für eine Antwort.

Gruß

unter www.tdressler.net - EM1000-Module ist mM. eigentlich alles beschrieben. Kurz: port.dll ins IPS-Verzeichnis und EM1010.dll ins modules Verzeichnis kopieren, IPS neustarten,Splitter anlegen, Comport zuweisen und 5-10min warten. Alles andere geht automatisch.
Wenn nichts kommt, einfach mal das Debugfenster aufmachen und das update manuell anstossen.

Tommi

Danke nochmal für Deinen Hinweis.
Habe noch folgendes Problem.
Beim ersten anstoßen des Scripts, wurden Daten in den Variablen eingetragen,
17:18:6. Danach nicht mehr, weil im em1010log immer die gleichen Werte eingetragen werden.

Und was sagt das Debug Fenster des Splitters? Wird nach 5min= Standard 300s ein Update-Vorgang gestartet?

Tommi

Das Debugfenster füllt sich nach der vorgebenen Zeit.