SML Stromzähler per USB Schreib-Lesekopf?

Begonnen von matzefisi, 04 August 2013, 14:14:48

Vorheriges Thema - Nächstes Thema

Crawler

Wie sieht die Schaltung mit der Diode aus?
hast schon mal Versucht mit minicom Daten direkt auszulesen?
FHEM auf Raspi + HMLan + 14 Aktoren + OBIS(Strom) über GPIO

Edi77

Es ist eine TEMIK K135P
GPIO Pin 1 an Kollektor +3,3V
GPIO Pin 10 an Emitler
GPIO PIN 10 und Emitter für 1kOhm an GPIO Pin 6 GND

Bekomme auf dem Oszilloskop schöne Ausschläge, sollte also gehen, dachte ich mir.
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

Crawler

Der Pegel down muss bei min 1v liegen sonst wird es nicht als 0 erkannt

Gesendet von meinem SM-G900F mit Tapatalk

FHEM auf Raspi + HMLan + 14 Aktoren + OBIS(Strom) über GPIO

Crawler

Vielleicht liegt es auch an der Pegel Richtung ich lese immer das die meisten mit invertierter Logik arbeiten. Bei mir geht es z.b mit dieser Schaltung

Gesendet von meinem SM-G900F mit Tapatalk

FHEM auf Raspi + HMLan + 14 Aktoren + OBIS(Strom) über GPIO

Edi77

Hallo,

Ich hatte einen positiven Pegel, am Anfang hatte ich auch einen negativen das habe ich aber gefixt.
Pegelhub 3V, sollte also auch gehen.
Vielleicht ist das Signal trotzdem zu unsauber?!
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

Edi77

#260
Hi

Habe mir jetzt einen Zählerkopf von Udo machen lassen, läuft auch soweit.
Allerdings müsste die Kommastelle um 3 Ziffern nach links rücken.

Zählerstand-Tarif-1-Bezug      35670796.30
Zählerstand-Tarif-1-Lieferung  24082627.30

Das sollte dann 35670.79630 und 24082.62730 sein.
Wo kann ich das einstellen?


1B1B1B010101017607001F062E1A4B620062007263010176010107001F0AE05E190D313930303030303334303835010163CC65007607001F062E1A4C620062007263070177010D31393030303030333430383501726201650AE094F67777078181C78203FF0101010104454D480177070100000000FF010101010D3139303030303033343038350177070100010801FF628201621E52FF56001543018A0177070100020801FF628201621E52FF56000E5AB7A101770700006001FFFF010101010B303030323236363139380177070100010700FF0101621B52FF5500003C250177070100020700FF0101621B52FF550000000001010163


Edit:
Hat sich erledigt, das sind dann keine kWh sondern Wh ;)

Mein anderes Problem ist jetzt wie kann ich die momentane Leistung berechnen da ich ja nur die Wh alle 30 Sekunden habe?
Leider sind es auch nicht immer genau 30 Sek. manchmal auch 31 Sek.


2016-02-10_21:51:08 powerzaehler Zählerstand-Tarif-1-Bezug: 35672566.40
2016-02-10_21:51:08 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:51:39 powerzaehler Zählerstand-Tarif-1-Bezug: 35672577.40
2016-02-10_21:51:39 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:52:09 powerzaehler Zählerstand-Tarif-1-Bezug: 35672588.40
2016-02-10_21:52:09 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:52:40 powerzaehler Zählerstand-Tarif-1-Bezug: 35672600.40
2016-02-10_21:52:40 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:53:11 powerzaehler Zählerstand-Tarif-1-Bezug: 35672611.90
2016-02-10_21:53:11 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:53:42 powerzaehler Zählerstand-Tarif-1-Bezug: 35672623.40
2016-02-10_21:53:42 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:54:13 powerzaehler Zählerstand-Tarif-1-Bezug: 35672634.90
2016-02-10_21:54:13 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:54:44 powerzaehler Zählerstand-Tarif-1-Bezug: 35672646.40
2016-02-10_21:54:44 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:55:15 powerzaehler Zählerstand-Tarif-1-Bezug: 35672657.90
2016-02-10_21:55:15 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:55:46 powerzaehler Zählerstand-Tarif-1-Bezug: 35672669.40
2016-02-10_21:55:46 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:56:17 powerzaehler Zählerstand-Tarif-1-Bezug: 35672680.90
2016-02-10_21:56:17 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:56:48 powerzaehler Zählerstand-Tarif-1-Bezug: 35672692.40
2016-02-10_21:56:48 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:57:19 powerzaehler Zählerstand-Tarif-1-Bezug: 35672703.90
2016-02-10_21:57:19 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:57:49 powerzaehler Zählerstand-Tarif-1-Bezug: 35672715.60
2016-02-10_21:57:49 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:58:20 powerzaehler Zählerstand-Tarif-1-Bezug: 35672728.00
2016-02-10_21:58:20 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:58:50 powerzaehler Zählerstand-Tarif-1-Bezug: 35672740.00
2016-02-10_21:58:50 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:59:20 powerzaehler Zählerstand-Tarif-1-Bezug: 35672752.00
2016-02-10_21:59:20 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_21:59:50 powerzaehler Zählerstand-Tarif-1-Bezug: 35672764.00
2016-02-10_21:59:50 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_22:00:21 powerzaehler Zählerstand-Tarif-1-Bezug: 35672776.00
2016-02-10_22:00:21 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_22:00:51 powerzaehler Zählerstand-Tarif-1-Bezug: 35672788.00
2016-02-10_22:00:51 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30

Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

ToSchu

Hallo Edi, ich musste an meinem Zähler die Momentanleistung erst aktivieren, dies geht normalerweise mit einer Pin, die dein Netzbetreiber bei der Übergabe des Zählers bereitstellen sollte. Dies meist jedoch nicht tut. Du kannst sie dort anfordern.
Da du einen Zweirichtungszähler hast musst Du dir aber die Werte genau ansehen ,  bei mir ist die Momentanleistung = Momentanbezug - Einspeisung .

Gruß,

Tobias

Gesendet von meinem SM-N9005 mit Tapatalk


Edi77

Hallo,

Das klingt ja schon mal gut.
Doofe Frage:
Und wie gebe ich die PIN ein?  ???
Der Zähler hat ja kein Tastenfeld.

Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

ToSchu

Hi, ich musste dies an dem IR Modul im Zähler mit einer starken Lampe über Lichtimpulse tun ( siehe Manual).

Gruß,

Tobias

Gesendet von meinem SM-N9005 mit Tapatalk


Edi77

DANKE,

Habs gelesen, "optischer Taster" bin mal gespannt.
Der Netzbetreiber macht mir nur etwas Probleme, keine hat die PIN ........ :o
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

ToSchu

Ist nicht zufällig Westnetz?

Gesendet von meinem SM-N9005 mit Tapatalk


Edi77

Nein, das sind die Pf.......e
Werde immer zwischen 2 Tel. hin und her geschickt, beide sind nicht zuständig.  :o  >:(
Schönes Ping Pong Spiel was die da mit mir treiben
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

Edi77

#267
Hallo,

Habe jetzt eine Antwort von meinem Netzbetreiber bekommen.
Leider kann mein Stromzähler keine Leistung anzeigen.
Er kann nur:
Zählerstand-Tarif-1-Lieferung: 24082627.30
Zählerstand-Tarif-1-Bezug: 35670401.70

Man hat mir angeboten den Zähler für 60Euro zu tauschen.

Die Frage ist nun wie kann ich die Leistung berechnen?
Wie ich das mit dem "Taschenrechner" mache ist mir klar.
Aber wie mache ich das mit den Werten hier, vor allen dingen da es nicht immer 30 Sek. sind? ???


2016-02-10_20:22:13 powerzaehler Zählerstand-Tarif-1-Bezug: 35670396.20
2016-02-10_20:22:13 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_20:22:14 powerzaehler Zählerstand-Tarif-1-Bezug: 35670396.70
2016-02-10_20:22:14 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_20:22:28 powerzaehler Zählerstand-Tarif-1-Bezug: 35670401.70
2016-02-10_20:22:28 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_20:22:59 powerzaehler Zählerstand-Tarif-1-Bezug: 35670412.70
2016-02-10_20:22:59 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_20:23:30 powerzaehler Zählerstand-Tarif-1-Bezug: 35670423.70
2016-02-10_20:23:30 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_20:24:01 powerzaehler Zählerstand-Tarif-1-Bezug: 35670434.70
2016-02-10_20:24:01 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_20:24:32 powerzaehler Zählerstand-Tarif-1-Bezug: 35670445.70
2016-02-10_20:24:32 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_20:25:03 powerzaehler Zählerstand-Tarif-1-Bezug: 35670456.70
2016-02-10_20:25:03 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
2016-02-10_20:25:34 powerzaehler Zählerstand-Tarif-1-Bezug: 35670467.70
2016-02-10_20:25:34 powerzaehler Zählerstand-Tarif-1-Lieferung: 24082627.30
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

Crawler

Hi Edi77
lösbar durch UserReadings mit
attr Hausstrom_Zaehler userReadings P_Bezug_temp:energy_total differential { ReadingsVal("Hausstrom_Zaehler","energy_total",0)*3600000 }, P_Einsp_temp:feed_total differential { ReadingsVal("Hausstrom_Zaehler","feed_total",0)*3600000 },  P_Bezug_Watt { sprintf("%.0f",ReadingsVal("Hausstrom_Zaehler","P_Bezug_temp",0)) },  P_Einsp_Watt { sprintf("%.0f",ReadingsVal("Hausstrom_Zaehler","P_Einsp_temp",0)) }
schaue dir mal diesen Thread an da müsste alles nötige erklärt sein
Auf der 3ten Seite ist jemand der auch keine Momentanleistung hat und es über UserReadings löst
http://forum.fhem.de/index.php/topic,48143.msg409490.html#msg409490
Gruß
FHEM auf Raspi + HMLan + 14 Aktoren + OBIS(Strom) über GPIO

majorshark

#269
Momentanleistung habe ich so gelöst. Mir reicht da ein schnitt über fünf Minuten. Mein Solardatenlogger macht das auch nicht anders.

Hier mal mein Versorger Zähler als List.

Internals:
   CHANGED
   DEF        /dev/ttyUSB0@9600
   DeviceName /dev/ttyUSB0@9600
   FD         20
   NAME       VersorgerZaehler
   NR         276
   PARTIAL
   STATE      opened
   TYPE       SMLUSB
   Readings:
     2016-02-16 21:25:00   Bezug_Alt       12705.11
     2016-02-16 21:25:00   Bezug_Momentanleistung 960.00
     2016-02-16 21:25:00   Differenz_Max   0
     2016-02-16 21:25:00   Differenz_Min   -960
     2016-02-16 21:25:00   Lieferung_Alt   11286.25
     2016-02-16 21:25:00   Lieferung_Momentanleistung 0.00
     2016-02-16 21:26:46   Zählerstand-Tarif-1-Bezug 12705.14
     2016-02-16 21:26:46   Zählerstand-Tarif-1-Lieferung 11286.25
     2016-02-16 08:54:40   state           opened
   Fhem:
     interfaces power
   Helper:
     PARTIAL    1B1B010101017607000********
Attributes:
   event-min-interval .*:30
   room       Stromzähler
   verbose    3


Die Readings werden durch ein fünf Minuten AT aktualisiert.

Internals:
   COMMAND    {
my $Bezug = ReadingsVal("VersorgerZaehler","Zählerstand-Tarif-1-Bezug","");
my $Lieferung = ReadingsVal("VersorgerZaehler","Zählerstand-Tarif-1-Lieferung","");
my $Erzeugung = ReadingsVal("SolaranlageZaehler","Zählerstand-Tarif-1-Lieferung","");

my $Bezug_Alt = ReadingsVal("VersorgerZaehler","Bezug_Alt","");
my $Lieferung_Alt = ReadingsVal("VersorgerZaehler","Lieferung_Alt","");
my $Erzeugung_Alt = ReadingsVal("SolaranlageZaehler","Erzeugung_Alt","");

fhem("setreading VersorgerZaehler Bezug_Alt ".$Bezug);
fhem("setreading VersorgerZaehler Lieferung_Alt ".$Lieferung);
fhem("setreading SolaranlageZaehler Erzeugung_Alt ".$Erzeugung);

my $Bezug_Momemtanleistung = (sprintf("%.2f",($Bezug - $Bezug_Alt)*12000));
my $Lieferung_Momemtanleistung = (sprintf("%.2f",($Lieferung - $Lieferung_Alt)*12000));
my $Erzeugung_Momemtanleistung = (sprintf("%.2f",($Erzeugung - $Erzeugung_Alt)*12000));

if(($Erzeugung_Momemtanleistung-$Bezug_Momemtanleistung) > 0)
{
  fhem("setreading VersorgerZaehler Differenz_Max ".($Erzeugung_Momemtanleistung-$Bezug_Momemtanleistung));
  fhem("setreading VersorgerZaehler Differenz_Min 0");
}
elsif(($Bezug_Momemtanleistung-$Erzeugung_Momemtanleistung) > 0)
{
  fhem("setreading VersorgerZaehler Differenz_Max 0");
  fhem("setreading VersorgerZaehler Differenz_Min ".($Erzeugung_Momemtanleistung-$Bezug_Momemtanleistung));
}

fhem("setreading VersorgerZaehler Bezug_Momentanleistung ".$Bezug_Momemtanleistung);
fhem("setreading VersorgerZaehler Lieferung_Momentanleistung ".$Lieferung_Momemtanleistung);
fhem("setreading SolaranlageZaehler Erzeugung_Momentanleistung ".$Erzeugung_Momemtanleistung);

}
   DEF        +*00:05 {
my $Bezug = ReadingsVal("VersorgerZaehler","Zählerstand-Tarif-1-Bezug","");
my $Lieferung = ReadingsVal("VersorgerZaehler","Zählerstand-Tarif-1-Lieferung","");
my $Erzeugung = ReadingsVal("SolaranlageZaehler","Zählerstand-Tarif-1-Lieferung","");

my $Bezug_Alt = ReadingsVal("VersorgerZaehler","Bezug_Alt","");
my $Lieferung_Alt = ReadingsVal("VersorgerZaehler","Lieferung_Alt","");
my $Erzeugung_Alt = ReadingsVal("SolaranlageZaehler","Erzeugung_Alt","");

fhem("setreading VersorgerZaehler Bezug_Alt ".$Bezug);
fhem("setreading VersorgerZaehler Lieferung_Alt ".$Lieferung);
fhem("setreading SolaranlageZaehler Erzeugung_Alt ".$Erzeugung);

my $Bezug_Momemtanleistung = (sprintf("%.2f",($Bezug - $Bezug_Alt)*12000));
my $Lieferung_Momemtanleistung = (sprintf("%.2f",($Lieferung - $Lieferung_Alt)*12000));
my $Erzeugung_Momemtanleistung = (sprintf("%.2f",($Erzeugung - $Erzeugung_Alt)*12000));

if(($Erzeugung_Momemtanleistung-$Bezug_Momemtanleistung) > 0)
{
  fhem("setreading VersorgerZaehler Differenz_Max ".($Erzeugung_Momemtanleistung-$Bezug_Momemtanleistung));
  fhem("setreading VersorgerZaehler Differenz_Min 0");
}
elsif(($Bezug_Momemtanleistung-$Erzeugung_Momemtanleistung) > 0)
{
  fhem("setreading VersorgerZaehler Differenz_Max 0");
  fhem("setreading VersorgerZaehler Differenz_Min ".($Erzeugung_Momemtanleistung-$Bezug_Momemtanleistung));
}

fhem("setreading VersorgerZaehler Bezug_Momentanleistung ".$Bezug_Momemtanleistung);
fhem("setreading VersorgerZaehler Lieferung_Momentanleistung ".$Lieferung_Momemtanleistung);
fhem("setreading SolaranlageZaehler Erzeugung_Momentanleistung ".$Erzeugung_Momemtanleistung);
}

   NAME       ZaehlerAt
   NR         277
   NTM        21:35:00
   PERIODIC   yes
   RELATIVE   yes
   REP        -1
   STATE      Next: 21:35:00
   TIMESPEC   00:05
   TRIGGERTIME 1455654900
   TRIGGERTIME_FMT 2016-02-16 21:35:00
   TYPE       at
   Readings:
     2016-01-31 08:50:00   Next_avg_day    08
     2016-01-31 08:50:00   Next_avg_month  08
     2016-01-31 08:50:00   Next_cum_day    254400
     2016-01-31 08:50:00   Next_cum_month  21681600
     2016-01-31 08:50:00   Next_max_day    08
     2016-01-31 08:50:00   Next_max_month  08
     2016-01-31 08:50:00   Next_min_day    08
     2016-01-31 08:50:00   Next_min_month  08
     2016-02-16 21:30:00   state           Next: 21:35:00
Attributes:
   alignTime  00:00
   room       Stromzähler


Da ich die Momentanleistung auch nicht "jede Sekunde" brauche - ich kann ja auch nicht jede Sekunde den Geschirspühler ein und wieder ausschalten -wäre es für die meisten Anwendungen sinnvoll so eine Art Timer im Modul zu haben. Timer auf x Sekunden einstellen und dann werden die Modul-Readings aktualisiert. Würde auch etwas Last von der CPU nehmen als ständig den Zähler zu lesen. Dann kann man auch ein Notify bemühen um die UserReadings zu aktualisieren. Ist dann auch genauer weil ein möglicher Zeitversatz wie beim AT nicht vorkommt.  Ein einfache disabled im Modul würde auch schon helfen.
Grüße aus Dewitz

VM auf Synology DS718+ mit FHEM 5.9 auf Debian 9.5/32-Bit (stretch)
Nächster Leipziger Stammtisch: