Hallo Alex,
das mit den Rohdaten ist Quatsch, vergiss das bitte. -----Ursprüngliche Nachricht----- Von: r...@nord-com.net <r...@nord-com.net> Gesendet: Donnerstag 19 Dezember 2019 19:21 An: 'volkszaehler.org - users' <volkszaehler-users@demo.volkszaehler.org> Betreff: Re: [vz-users] Frage zu virtuellen Kanälen Hallo Thomas, der Betriebsstundenzähler arbeitet genau so wie Du es beschreibst. Das Can-Modul meiner Junkers sendet eine 1, wenn der Brenner läuft, und eine 0 wenn nicht, das genau alle 6 Sekunden. Mein Skript loggt jeden Wert direkt in den Betriebsstundensensor. Wenn der letzte Wert eine 0 war, wird zusätzlich eine 1 in den Impulskanal für Brennerstarts geschrieben… mehr ist es auch schon nicht. Abfragen lässt sich die Junkers nicht, ich kann nur „mitschreiben“ was Therme und Regler von sich aus so mitteilen. Grüsse, Alex PS - Der Log des beigefügten Shellskriptes sieht dann so aus… 13:12:13 - Brenner Ein: 0 (can0 209 [1] 00) 13:12:13 - Heizung Ein: 1 (can0 20A [1] 01) 16:12:16 - Vorlauf Soll: 44.0 (can0 252 [1] 58) 16:12:16 - Vorlauf Ist: 29.0 (can0 201 [1] 3A) 19:12:19 - Brenner Ein: 0 (can0 209 [1] 00) 19:12:19 - Heizung Ein: 1 (can0 20A [1] 01) 21:12:21 - Vorlauf Soll: 44.0 (can0 252 [1] 58) 22:12:22 - Vorlauf Ist: 29.0 (can0 201 [1] 3A) 23:12:23 - Warmwasser Ist: 24.5 (can0 203 [1] 31) 25:12:25 - Brennerstart 25:12:25 - Brenner Ein: 1 (can0 209 [1] 01) 25:12:25 - Heizung Ein: 1 (can0 20A [1] 01) 25:12:25 - Vorlauf Max: 65.0 (can0 200 [1] 82) 26:12:26 - Vorlauf Soll: 44.0 (can0 252 [1] 58) 28:12:28 - Vorlauf Ist: 29.0 (can0 201 [1] 3A) 31:12:31 - Brenner Ein: 1 (can0 209 [1] 01) 31:12:31 - Vorlauf Soll: 44.0 (can0 252 [1] 58) 31:12:31 - Heizung Ein: 1 (can0 20A [1] 01) 34:12:34 - Vorlauf Ist: 29.5 (can0 201 [1] 3B) From: volkszaehler-users [mailto:volkszaehler-users-boun...@demo.volkszaehler.org] On Behalf Of Thomas Höpfner Sent: Thursday, December 19, 2019 5:13 PM To: volkszaehler.org - users Subject: Re: [vz-users] Frage zu virtuellen Kanälen Hallo Alex, bei val(in) arbeiten die virtuellen Zähler meines Wissens nach mit den Rohdaten. Für den Impulszähler ist das 0 oder 1. Für die Aussage einer Durchschnittlichen Laufzeit muss wahrscheinlich ein externes Script programmiert werden. Hätte der Betriebsstundenzähler Impulse wäre die Auswertung schon fertig. Das Programm dafür muss nur fragen läuft der Brenner, dann erzeuge einen impuls und warte n Sekunden. Kannst du die Abfrage des CAN-Bus ändern / erweitern? Es müsste nur “Brenner läuft“ irgendwie in Python greifbar sein, dann habe ich etwas fertiges. Thomas Am 19.12.2019 um 13:36 schrieb "r...@nord-com.net" <r...@nord-com.net>: Hallo an alle “Volkszähler”, Ich habe mich die Tage etwas mit den virtuellen Kanälen gespielt, bin aber nicht so recht ans Ziel gekommen. Mein VZ hat einen Betriebsstundensensor, der die gesamte Brennerlaufzeit pro Zeitraum aufaddiert. Zudem einen Impulszähler, der die Anzahl der Brennerstarts hochzählt. Das funktioniert so einwandfrei. Das könnte der Denkfehler sein. VZ addiert nicht auf, das Frontend interpretiert die Daten im Zeitraum from= to=. Für deinen Betriebsstundensensor sind das Summe-N*f(Faktor), für die Brennerstarts nur Summe-N. In deiner Grafik siehst du max=1 für beide Sensoren. Ein weiteres Problem könnte die Einheit von Brennerstarts sein. Mein Plan wäre jetzt ein virtueller Kanal, der die durchschnittliche Brennerlaufzeit pro Start in Minuten anzeigt. Ergo: (Brennerlaufzeit in Dezimalstunden) geteilt durch (Anzahl der Brennerstarts) mal 60 (Umrechnung in Minuten). Also: val(in1) / val(in2) * 60. (Funktioniert so nicht, der Kanal zeigt dann nichts an). Wenn ich testweise die (*60) weglasse, bekomme ich Ergebnisse, aber nicht die gewünschten. Ich konnte nicht wirklich herausfinden, was genau er dann berechnet/anzeigt. Wo liegt mein Denkfehler? Grüsse von Alex PS – der dicke schwarze Balken mit der Bezeichnung „Testkanal“ zeigt meinen Versuch. Was für Ergebnisse (Beispiele) erwartest du? Wie soll die Kurve dazu Aussehen? Mit freundlichen Grüßen, Thomas