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

Begonnen von Icinger, 08 April 2016, 19:54:44

Vorheriges Thema - Nächstes Thema

Kermit20

Zitat von: gvzdus am 11 April 2021, 14:57:39
Dann hast Du die falsche Bedienungsleitung verlinkt.
Eine andere gute Quelle ist die Doku von powerfox:
https://poweropti.powerfox.energy/wp-content/uploads/2020/07/Whitelist-Z%C3%A4hler.pdf

Hier findet sich zu Deinem Zähler:
Kunde muss selbstständig die Info-DDS freischalten.

Ich würde Dir aber vorschlagen, Deinem Messstellenbetreiber auf die Nerven zu gehen - ganz konkret mit den Fragen hier. Es ist hilfreich, wenn die Messstellenbetreiber mitbekommen, mit welchen Geräten es Ärger gibt. CRC-Fehler könnte auch falsche Baudrate / Parität sein, aber dann dürfte eigentlich eher gar nichts ankommen.

DANKE. Toll ist, das ich die Beschreibung / Link vom Betreiber bekommen habe. Ich werde nun mal weiter suchen. Danke für die Hilfe.
RPi1: FHEM mit HMLAN und CUL Eigenbau: diverse Homematic Geräte; Technoline Temp/Feuchte 868 MHz // Schalsteckdosen 433 MHz
RPi2: FHEM mit Viessmann(optolink) mit VControl und 1W Sensoren
RPi3: Apache / Owncloud 9

fritzmeier

#1231
Hallo zusammen,
ich habe auf meinem PI 2 Model B Raspberry Pi 3 Model B Rev 1.2 mit FHEM das OBIS Modul installiert und möchte meinen Stromzähler Easymeter Q3A auslesen

DEF                 /dev/ttyAMA0@9600,7,E,1
DeviceName   /dev/ttyAMA0@9600,7,E,1
FD                  10
FUUID            60733fb4-f33f-0f40-537b-51088226c3fea2fa
MeterType     Unknown
NAME            Stromzaehler
NR                339
PARTIAL       
STATE           opened
TYPE            OBIS

Readings
state     opened  2021-04-11 20:56:52

verbose habe ich auf 5 gestellt

jedoch können es noch viele Fehlerquellen sein :-(

a) am Zähler wurde noch nicht mit einer PIN freigeschaltet
b) Der Schreib Leskopf Hitchi wurde per TTY an
3,3 V PIN 1
GND PIN 6
GPIO14 TX PIN 8
GPIO15 RX PIN 10

angeschlossen, das ganze habe ich über ein 10m Patchkabel mit dem Raspberry verbunden

c) Der Zähler hat kein Metall, d.h. den Kopf habe ich mit Klebeband befestigt (schön passt dieser nicht auf den Zähler)
d) Leskopf richtig rum? Kabel steht nach vorn (nicht zur Zählerbefestigung)

IR Diode Zähler ist mit HandyKamera sichtbar, vom Lesekopf kurz beim Boot vom Raspberrry

Wo beginnt man am besten?

Grüße
fritzmeier

gvzdus

Zur Machbarkeit:
Die Kollegen von powerfox schreiben:
"Q3A geht, außer die Modellnummer endet mit einer 0"

Bei schnellem googlen komme ich eher auf 9600 8N1 als 8E1 für die serielle Schnittstelle.

PIN einzugeben und ggf. Schnittstelle auf geschwätzig stellen kann natürlich nicht schaden:
https://www.easymeter.com/downloads/products/zaehler/Q3A/Betriebsanleitung_Q3A.pdf

Die "Hardware" (Position richtig, Kabellänge, PINs) ist remote einerseits natürlich schwer zu debuggen, außerdem nicht so mein Thema.

fritzmeier

#1233
Hi,

Raspberry = Raspberry Pi 3 Model B Rev 1.2
das mit der PIN kann lt. Energieversorger noch dauern > liegt noch nicht vor.

Jedoch sollten auch jetzt schon Werte kommen.
hab es mal so probiert
   
define Stromzaehler OBIS /dev/ttyAMA0@9600,8,N,1 SML

> auch nichts

Auf dem Lesekopf sehe ich mit der Kamera kein Licht am Zähler schon :-(

Kabel habe ich jetzt mal kürzer zum Testen > geht auch nicht (1m)

Kann der Lesekopf getestet werden?

@ Admin > besser eigenen Beitrag eröffnen?

Grüße
fritzmeier


gvzdus

Nunja, ich bin halt Software-Maintainer und wollte mich mit Hardware nie rumärgern - ich habe "USB fertig" gekauft. Insofern kann ich Dir da nicht wirklich weiterhelfen - ob Du mit einem eigenen Thread mehr Glück hast, weiß ich aber auch nicht.

fritzmeier

Hi,
weiß nicht ob ich den seriellen Anschluß richtig anspreche

define Stromzaehler OBIS /dev/ttyS0@9600,8,N,1 SML
oder
define Stromzaehler OBIS /dev/ttyAMA0@9600,8,N,1 SML

sonstige Anpassungen:
pi@raspberrypi:~ $ cat /boot/cmdline.txt
dwc_otg.lpm_enable=0 console=tty1 console=serial0,115200 root=PARTUUID=424abaaf-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait

cat /boot/config.txt
....
enable_uart=1

dtoverlay=pi3-disable-bt

seit das ich dies hinzugefügt habe "dtoverlay=pi3-disable-bt" um Bluetooth zu deaktiviren, ist der Status "disconnected"

USB hätte ich auch genommen, aber wegen der Kabellänge dann seriell

aktiviert habe ich seriell wie hier https://wiki.fhem.de/wiki/Raspberry_Pi_3:_GPIO-Port_Module_und_Bluetooth

A7 Serial auf enabled setzen

Grüße

fritzmeier


gvzdus

console=serial0,115200 wirkt auf jeden Fall falsch.
/dev/ttyS0 ist wesentlich üblicher als AMA.

Icinger

Das

Zitatconsole=serial0,115200

und das

ZitatGPIO14 TX PIN 8
GPIO15 RX PIN 10

kann jedenfalls in Kombination gar nicht gehen.

Mit console=serial0,115200 aktivierst du die serielle Konsole, damit kannst du den Raspberry an RX/TX über ein Terminal-Programm steuern.
Dadurch ist aber RX/TX auf für andere Programme nicht ansprechbar.

Das also auf jeden Fall wieder rausnehmen aus der config.txt
Brauchst du auch wirklich nur im Notfall bzw. zum Einrichten des Raspberry, falls du keinen SSH-Zugang und keine Tasta/Monitor angeschlossen hast.
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

fritzmeier

Hi,
config.txt ist nur das aktiv
dtparam=audio=on
enable_uart=1

dtoverlay=pi3-miniuart-bt
force_turbo=1


pi@raspberrypi:~ $ cat /boot/cmdline.txt
dwc_otg.lpm_enable=0 console=tty1 root=PARTUUID=424abaaf-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait

so wie hier beschrieben https://wiki.fhem.de/wiki/Raspberry_Pi_3:_GPIO-Port_Module_und_Bluetooth

somit, wenn ich richtig verstehe ttyAMA0 = richtig

Internals:
   CFGFN     
   DEF              /dev/ttyAMA0@9600,8,N,1 SML
   DeviceName /dev/ttyAMA0@9600,8,N,1
   FD                11
   FUUID          607494c8-f33f-0f40-83e6-7216606e06cae3a0
   MeterType   SML
   NAME           Stromzaehler
   NR               347
   PARTIAL   
   STATE          opened
   TYPE           OBIS
   READINGS:
     2021-04-12 20:43:20   state           opened

trotzdem sehe ich mit der Handykamera keine LED auch ein test mit der Fernbedienung ohne Erfolg.

den Leskopf habe ich mal mit hterm und der Fernbedienung getestet, da kommt eine Antwort zurück.

Grüße
fritzmeier

fritzmeier

Hi,

nochmal Sensor an den Stromzähler und siehe da

ManufID        ESY         2021-04-13 12:24:21
PublicKey      xxxxx      2021-04-13 12:24:21
Serial            11-22-33-44-55 2021-04-13 12:24:21
power           3725.02 2021-04-13 12:24:21
power_L1    1942.4    2021-04-13 12:24:21
power_L2   -582.15    2021-04-13 12:24:21
power_L3    2364.76  2021-04-13 12:24:21
state           opened    2021-04-13 12:22:22
total_consumption     76696.1692       2021-04-13 12:24:21
total_consumption_Ch1 213.9585       2021-04-13 12:24:21
total_consumption_Ch2 76482.2107   2021-04-13 12:24:21
total_feed                      196952.8848 2021-04-13 12:24:21
voltage_L1                     238.2             2021-04-13 12:24:21
voltage_L2                     235.9             2021-04-13 12:24:21
voltage_L3                     232.8             2021-04-13 12:24:21

Besten Dank

Grüße
fritzmeier

gvzdus

Klasse! Und, für die Nachwelt? Eine Idee, woran es zum Schluss hing?

fritzmeier

Hi,

ging mal kurz ohne Änderung, dann wieder nicht.
hab noch mal nachgelötet, denke kalte Lötstelle, beobachte ich noch...., aktuell kommen Daten an.

Trotzdem besten Dank!
Zum Aufbau: Patchkabel mit RJ45 Stecker an Sensor (Pin 3,4,5,6) verwendet > RJ45 Buchse im Zählerschrank > 10 m Verlegekabel > Parchfeld > Patchkabel zum Raspi
Wegen Zähler, da habe ich ein kleines Blech mit ganz wenig Silikon oben angeklebt. Das pass für den Sensor optimal :-), dann mit Magnet aufgelegt.

Problem habe ich noch wegen der vielen Einträge im DBLog.
Trotz event-min-interval 1800 und interval 1800 sind diese im Sekunden Takt

Grüße
fritzmeier

gvzdus

Wenn Du nur stündlich o.ä. Daten haben willst -> interval + pollMode setzen.
Wenn Du nur z.B. alle 20 Sekunden Daten haben willst -> event-aggregator

RalfRog

#1243
Hallo fritzmeier
Was gvzdus hier anmerkt wäre für die Nachwelt echt hilfreich  ;)

Zitat von: gvzdus am 13 April 2021, 12:41:04
Klasse! Und, für die Nachwelt? Eine Idee, woran es zum Schluss hing?

und zwar weniger die Hardware als die Konfiguration des Raspi3 um das richtige serielle Interface anzusprechen.

...wobei Homematic User die "/dev/ttyAMA0" eventuell mit dem "HM-MOD-RPI-PCB " belegt haben  :-\
FHEM auf Raspi 2B mit nanoCUL, HM-MOD-RPI-PCB und über LAN MAX!Cube mit a-culFW (Stack 868 + 433)
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder

fritzmeier

#1244
Hi,
so:
define haus.stromzaehler OBIS /dev/ttyAMA0@9600,8,N,1 SML
attr haus.stromzaehler DbLogExclude power_L1,power_L2,power_L3
attr haus.stromzaehler alias Stromzähler
attr haus.stromzaehler event-on-change-reading .*
attr haus.stromzaehler interval 30
attr haus.stromzaehler pollingMode on
attr haus.stromzaehler room Zaehler
attr haus.stromzaehler stateFormat {"Einspeisung: ".sprintf("%.0f kWh", (ReadingsVal($name,"total_feed",0) / 1000) ) ." | Bezug: ".sprintf("%.0f kWh", (ReadingsVal($name,"total_consumption",0) / 1000) ) . " | aktuelle Leistung: ". sprintf("%.0f W", ReadingsVal($name,"power",0)). " | status: ".ReadingsVal($name,"state",0)}

Grüße
Fritzmeier