[vz-users] ingress Tests (was: GoSDM630 (was: Wiki-Eintrag fuer DZG DVH4013 Modbus))

Andreas Goetz cpuidle at gmail.com
Sun Dec 30 15:56:57 CET 2018


Hi Frank,

> On 30. Dec 2018, at 14:05, Frank Richter <frank.richter83 at gmail.com> wrote:
> 
> Hi Andreas,
> 
> 0.0.7 läuft seit kurzem hier, ich werde berichten ob die mehr als 1000 Datensätze schafft.

Danke, ich schätze Deine Tests sehr! Damit wir hier die Liste nicht vollmüllen kannst Du auch gerne Issues in Github aufmachen.

> 
> Weitere Beobachtung: ingress ignoriert das Topic cosphil1 (taucht nicht bei discovered... auf). Vermutlich weil $datatype fehlt?

Ja, das ist laut Spezifikation nämlich Pflicht. Mittels https://github.com/gonium/gosdm630/pull/99 <https://github.com/gonium/gosdm630/pull/99> gefixt.

> 
> Außerdem hab ich für meinen SDM120 in der sdm.go die Opcodes auskommentiert, die beim einphasigen Zähler keinen Sinn machen oder mich nicht interessieren.
> 
> func NewSDMProducer() *SDMProducer {
> 	/**
> 	 * Opcodes as defined by Eastron.
> 	 * See http://bg-etech.de/download/manual/SDM630Register.pdf <http://bg-etech.de/download/manual/SDM630Register.pdf>
> 	 * Please note that this is the superset of all SDM devices -
> 	 * some opcodes might not work on some devicep.
> 	 */
> 	ops := Measurements{
> 		VoltageL1: 0x0000,
> 		//VoltageL2: 0x0002,
> 		//VoltageL3: 0x0004,
> 		CurrentL1: 0x0006,
> 		//CurrentL2: 0x0008,
> 		//CurrentL3: 0x000A,
> 		PowerL1:   0x000C,
> 		//PowerL2:   0x000E,
> 		//PowerL3:   0x0010,
> 		//ImportL1:  0x015a,
> 		//ImportL2:  0x015c,
> 		//ImportL3:  0x015e,
> 		Import:    0x0048,
> 		//ExportL1:  0x0160,
> 		//ExportL2:  0x0162,
> 		//ExportL3:  0x0164,
> 		Export:    0x004a,
> 		CosphiL1:  0x001e,
> 		//CosphiL2:  0x0020,
> 		//CosphiL3:  0x0022,
> 		//L1THDCurrent: 0x00F0, // current
> 		//L2THDCurrent: 0x00F2, // current
> 		//L3THDCurrent: 0x00F4, // current
> 		//AvgTHDCurrent: 0x00Fa, // current
> 		//THDL1:     0x00ea, // voltage
> 		//THDL2:     0x00ec, // voltage
> 		//THDL3:     0x00ee, // voltage
> 		//THD:       0x00F8, // voltage
> 		Frequency: 0x0046,
> 	}
> 	return &SDMProducer{
> 		MeasurementMapping{ops},
> 	}
> }
> 
> Beim Start schickt GoSDM allerdings trotzdem jede Menge Homie-Messages für diese Messwerte raus:
> 
> homie/meter1/meter/voltagel2/$name
> homie/meter1/meter/voltagel2/$unit
> homie/meter1/meter/voltagel2/$unit

D.h. unit kommt sogar mehrfach? Auch doof :(

> 
> In homie/meter1/meter/$properties sind die deaktivierten Opcodes dagegen nicht enthalten:
> 
> homie/meter1/meter/$properties > cosphil1,currentl1,export,frequency,import,powerl1,voltagel1

Super schaue ich mir auch noch an.

> 
> Viele Grüße
> Frank

Viele Grüße,
Andreas

> 
> 
> Am So., 30. Dez. 2018 um 12:19 Uhr schrieb Andreas Goetz <cpuidle at gmail.com <mailto:cpuidle at gmail.com>>:
> Moin Frank,
> 
> Danke für Hinweise! Hab in den letzten Tagen viele interne Verbesserungen gemacht, aber nix an der Funktionalität.
> 
>> On 29. Dec 2018, at 23:59, Frank Richter <frank.richter83 at gmail.com <mailto:frank.richter83 at gmail.com>> wrote:
>> 
>> Hallo Andreas,
>> 
>> ich habe heute Abend ingress 0.0.5 getestet, jetzt klappt es bei mir auch mit Homie.
>> Frage hierzu: beim mapping brauche ich ja nur den letzten Teil vom Homie-Topic. Cool bei einem Zähler, aber was passiert, wenn ich einen zweiten habe (homie/meter2/meter/powerl1)?
> 
> Muss ich drüber nachdenken. So gehts natürlich nicht :O
> 
>> 
>> Weitere Beobachtung: nach ein paar Stunden und ca. 1000 Datensätzen konnte ingress nix mehr an vz übergeben. Fehlermeldung:
>> 2018/12/29 23:20:16 vz: send failed (Post http://localhost/middleware.php/data/2dea02c0-05f6-11e9-9be9-f996ff707c56.json <http://localhost/middleware.php/data/2dea02c0-05f6-11e9-9be9-f996ff707c56.json>: dial tcp 127.0.0.1:80 <http://127.0.0.1/>: socket: too many open files) 
> 
> Ist behoben, schau mal 0.0.7 an. Die hat jetzt auch ein übersichtlicheres Logging.
> 
>> 
>> Den neuesten Commit mit Aggregation habe ich eben entdeckt und direkt getestet, es wurde allerdings nix aggregiert. Noch unfertig oder sollte das gehen?
> 
> Die Funktionen sind jetzt da, sind aber noch nicht in den “wire” eingebunden. Kommt als Nächstes.
> 
>> 
>> Viele Grüße
>> Frank
> 
> Viele Grüße,
> Andreas
> 
>> 
>> Am So., 23. Dez. 2018 um 13:19 Uhr schrieb Andreas Goetz <cpuidle at gmail.com <mailto:cpuidle at gmail.com>>:
>> Nächster Bug- ist mit ingress 0.0.5 behoben.
>> 
>> Schöne Bescherung :)
>> 
>>> On 22. Dec 2018, at 21:51, Frank Richter <frank.richter83 at gmail.com <mailto:frank.richter83 at gmail.com>> wrote:
>>> 
>>> Hi Andreas,
>>> 
>>> nach git pull und make bekomme ich jetzt regelmäßig neue Werte mit kleingeschriebenem Topic, ingress macht allerdings trotzdem nach
>>> 
>>> 2018/12/22 21:45:16 homie: discovered homie/meter1/meter/voltagel1
>>> 
>>> nicht weiter. Irgendwas mach ich wohl noch falsch.
>>> 
>>> Was muss bei homie-source beim Mapping angegeben werden?
>>> 
>>> Viele Grüße
>>> Frank 
>>> 
>>> Am Sa., 22. Dez. 2018 um 18:54 Uhr schrieb Andreas Goetz <cpuidle at gmail.com <mailto:cpuidle at gmail.com>>:
>>> Danke Frank, das ist ein Bug. Homie spec sagt alles klein, mache ich anscheinend nur bei der Initialisierung. Hab grad nach dem Gassi gehen Fix gepusht 🤗
>>> 
>>> Viele Grüße, Andreas 
>>> 
>>> Am 22.12.2018 um 17:28 schrieb Frank Richter <frank.richter83 at gmail.com <mailto:frank.richter83 at gmail.com>>:
>>> 
>>>> Hi,
>>>> 
>>>> mittlerweile hab ich auch ein kleines Testsetup aus einem SDM120 und einem Pi mit VZ, Go, GoSDM630 und ingress laufen.
>>>> 
>>>> Übergabe von MQTT an VZ funktioniert super, mit Homie komme ich allerdings auch nicht weiter:
>>>> 
>>>> pi at raspberrypi:~/ingress $ bin/ingress -d
>>>> Parsed configuration
>>>> ---
>>>> sources:
>>>> - name: homie
>>>>   type: homie
>>>>   url: tcp://192.168.178.39:1883 <http://192.168.178.39:1883/>
>>>>   user: ""
>>>>   password: ""
>>>>   topic: ""
>>>> targets:
>>>> - name: vz
>>>>   type: http
>>>>   url: http://localhost/middleware.php/data/%name%.json <http://localhost/middleware.php/data/%name%.json>
>>>>   user: ""
>>>>   password: ""
>>>>   topic: ""
>>>>   method: POST
>>>>   headers:
>>>>     Accept: application/json
>>>>     Content-type: application/json
>>>>   payload: '[[%timestamp%,%value%]]'
>>>> wires:
>>>> - sources:
>>>>   - homie
>>>>   targets:
>>>>   - vz
>>>>   mappings:
>>>>   - homie-to-volkszaehler
>>>>   actions: []
>>>> mappings:
>>>> - name: homie-to-volkszaehler
>>>>   entries:
>>>>   - from: VoltageL1
>>>>     to: 2dea02c0-05f6-11e9-9be9-f996ff707c56
>>>> actions:
>>>> - name: agg5min
>>>>   type: aggregate
>>>>   mode: avg
>>>> 
>>>> 2018/12/22 17:12:27 homie: connected to tcp://192.168.178.39:1883 <http://192.168.178.39:1883/>
>>>> 2018/12/22 17:12:27 wiring: wiring homie -> vz
>>>> 2018/12/22 17:12:27 connector: starting homie
>>>> 2018/12/22 17:12:28 homie: discovered homie/meter1/meter/currentl1
>>>> 2018/12/22 17:12:28 homie: discovered homie/meter1/meter/export
>>>> 2018/12/22 17:12:28 homie: discovered homie/meter1/meter/powerl1
>>>> 2018/12/22 17:12:28 homie: discovered homie/meter1/meter/import
>>>> 2018/12/22 17:12:28 homie: discovered homie/meter1/meter/frequency
>>>> 2018/12/22 17:12:28 homie: discovered homie/meter1/meter/voltagel1
>>>> 
>>>> Und mehr passiert nicht.
>>>> 
>>>> Was mir aufgefallen ist: GoSDM630 liefert die Properties von homie/meter1/meter in Kleinbuchstaben:
>>>>  
>>>> pi at raspberrypi:~ $ mosquitto_sub -t 'homie/+/+/$properties' -v
>>>> homie/meter1/meter/$properties cosphil1,currentl1,export,frequency,import,powerl1,voltagel1
>>>> 
>>>> Ebenso die zu voltagel1 gehörigen Property Attributes:
>>>> 
>>>> pi at raspberrypi:~ $ mosquitto_sub -t homie/+/+/voltagel1/# -v
>>>> homie/meter1/meter/voltagel1/$name L1 Voltage
>>>> homie/meter1/meter/voltagel1/$unit V
>>>> homie/meter1/meter/voltagel1/$datatype float
>>>> 
>>>> Den eigentlichen Messwert aber mit Großbuchstaben im Topic:
>>>> 
>>>> pi at raspberrypi:~ $ mosquitto_sub -t homie/+/+/VoltageL1 -v
>>>> homie/meter1/meter/VoltageL1 229.600
>>>> homie/meter1/meter/VoltageL1 229.000
>>>> homie/meter1/meter/VoltageL1 229.600
>>>> 
>>>> MQTT ist ja case sensitive, kann es daran liegen?
>>>> 
>>>> Viele Grüße
>>>> Frank
>>>> 
>> 
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20181230/44c4ce98/attachment-0001.html>


More information about the volkszaehler-users mailing list