FHEM - Hausautomations-Systeme > Sonstige Systeme

[OBIS V2] - Jetzt auch mit SML-Unterstützung

(1/270) > >>

Icinger:
Hi Folks,

Ab sofort unterstützt 47_OBIS auch den SML-Standard.
Da SML ja nichts anderes als codierte OBIS-Meldungen sind, habe ich gemeinsam mit matzefisi das SMLUSB mit meinem OBIS verschmolzen.

Somit sollten jetzt ziemlich viele Smartmeter, die über USB, RS232, RS485 und sonstiges ausgelesen werden, mit einem Modul erreicht.

Die Grundfunktionalität ist gelich geblieben, neu ist hinzugekommen:

1) MeterType: SML
Wie der Name schon sagt, werden hiermit SML-Meter ausgelesen.
Die SMLDaten werden ins OBIS-Format konvertiert und als Readings bereitgestellt.
zB:

--- Code: ---define MyObis OBIS /dev/ttyVoltcraft@9600,7,E,1 SML
--- Ende Code ---

2) Attribut unitReadings
Wer es unbedingt will, kann hiermit an die Readings die passenden Units anhängen

Das Update bekommt ihr ab morgen früh mittels FHEM-Update automatisch.

Danke nochmal an matzefisi und immi fürs Testen, Tips und die allgemeine Unterstützung.

Für zusätzliche Wünsche, Anregungen, Beschwerden uns sonstiges bin ich natürlich jederzeit für euch erreichbar.

lg, Stefan

Icinger:
So, da ich gestern Abend wenig Zeit hatte, hier nochmal ein paar weitere Infos zum Modul:

1) Define:

--- Code: ---define myObis OBIS <schnittstelle> <metertyp>
--- Ende Code ---
Metertyp kann hier sein:
VSM102 -> Voltcraft VSM102
Dieser Meter (und manche andere) senden nicht automatisch ihre Daten, sondern brauchen erst eine Anfrage vom Programm.
Soweit ich bisher gesehen habe, ist diese Anfrage bei vielen gleich, also kann das VSM102 evtl. auch bei anderen Metern genutzt werden.

Standard -> Plain OBIS
Für Smartmeter, die ihre Daten als reine OBIS-Meldungen ohne auffroderung senden.

SML -> SML-codierte OBIS-Daten
Wie der Name schon sagt :) Mit diesem Metertyp wird das SMLUSB-Modul ersetzt.

2) Attribute:
interval
Das Interval in Sekunden, in denen die Daten vom Smartmeter abgerufen werden.
Wird einerseits benutzt beim VSM102-Typ, wo die Daten ja abgerufen werden müssen.
Andererseits auch in Kombination mit dem Polling-Mode (siehe unten) interessant.

offset_feed
offset_energy
Hiermit kann der Gesamt-Zählerstand um den angegebenen Wert angepasst werden.
Mein Zähler hängt zB hinter dem Ferraris-Zähler meines Stromversorgers.
Damit kann ich meinen Zähler an den offiziellen Zählerstand anpassen.

channels
Wenn man die Channel-Readings umbenennen will, oder einen Channel hat, der vom Modul nicht abgedeckt wird,
kann hiermit ein Perl-Array angegeben werden, welches zusätzlich zu den Internen Zuordnungen durchsucht wird.
zB:
--- Code: ---attr myObis channels {"21"=>"energy_L1","41"=>"energy_L2","61"=>"energy_L3","31"=>"power_L1","51"=>"power_L2","71"=>"power_L3","1"=>"energy_current","1.8"=>"energy_total","2.8"=>"feed_total"}
--- Ende Code ---

directions
Manche Zähler senden die Stromrichtung (von / zum) EVU in einem Statusbyte mit.
Dies ergibt dann zusätzliche Readings:

--- Code: ---     2016-04-08 19:41:54   dir_total_consumption in
     2016-04-08 19:41:45   dir_total_feed  out

--- Ende Code ---
"in/out" sind hier als Standard vorgegeben, können aber mit diesem Attribut geändert werden.
zB:

--- Code: ---{"<"=>"←",">"=>"→"}
--- Ende Code ---
um die Richtung als Pfeile zu erhalten (← / →)

alignTime
Nur in Kombination mit interval nutzbringend.
Mit diesem Attribut wird das Interval auf die hier angegebene Zeit angepasst.
Selbe funktionalität wie beim at.
Bei einem interval von 600 (=10 Minuten) und aligbTime von "00:00:00" wird immer um hh:00:00, hh:10:00, hh:20:00 usw. abgerufen.

pollingMode
Da es bei Metern, die ihre Daten im Sekundentakt senden, teilweise zu erhöhter CPU-Last kommt, kann hiermit auf den FHEM-internen Polling-Mechanismus umgeschaltet werden.
Hierbei werden die Daten nicht mehr Event-basiert abgerufen, sondern nur mehr ca. alle 5 Sekunden.
Nachteil: Damit kann sich evtl. eine leichte Verzögerung im Abrufen der Daten ergeben.

So, hoffe mal, das war ein wenig Informativ :)

Schönes Wochenende euch allen,

Stefan

KölnSolar:
Hi Stefan, da musste ich natürlich sofort aktualisieren, um zu testen,ob dann auch die bekannten kleineren Fehler bereinigt sind. Sind sie ! Danke !

Läuft für ASCII-OBIS fast wie gehabt, lediglich an den Readings zu current und power hat sich etwas unschön verändert: Wie vom device gelesen, werden nun führende Nullen angezeigt, by power(channels x1) auch das ggfs. vorhandene + Vorzeichen
Schönes Wochenende
Markus

Icinger:
Hi Markus,

danke für die Meldung.
Sollte beides mit dem Fix von morgen früh beseitigt sein (oder du holsts dir gleich aus dem SVN).

lg, Stefan

KölnSolar:
prima. geht.
macht das automatische setzen von event-on-change-reading beim define eigentlich Sinn ? Ich lösch es nach jedem Restart wieder, da ich nur die Leistung logge.
Grüße Markus

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln