Re: [vz-users] Protokoll-spezifische Schlüssel für S0
Stimmt! Mein Alzheimer... Viele Grüße, Andreas > Am 26.03.2020 um 20:28 schrieb Daniel Lauckner : > > am Donnerstag, 26. März 2020 um 16:53 hat Andreas Goetz geschrieben: >> Die Direction definiert m.e. einfach ob high oder low Flanke >> gezählt wird. Sollte für S0 m.E. egal sein. > > Hm, das letzte mal hast du mich darüber aufgeklärt das es eine > Zählrichtugnsumkehr ist. Flanke wird immer die selbe ausgewertet. > > > mfg Daniel >
Re: [vz-users] Protokoll-spezifische Schlüssel für S0
Hallo, am Donnerstag, 26. März 2020 um 19:22 hat r...@nord-com.net geschrieben: > Wenn Du einen internen > Pull-Down verwenden möchtest, geht das z.B. mit dem Kommando "gpio" > des Paketes "wiringpi". Die Verwendung von wiringpi hat in der Vergangenheit leider schon Probleme mit vzlogger bereitet. Wobei ein externer Widerstand eine vernünftigere Wahl sein kann weil der direkt mit anlegen der Versorgungsspannung aktiv ist. mfg Daniel
Re: [vz-users] Protokoll-spezifische Schlüssel für S0
Hallo, am Donnerstag, 26. März 2020 um 16:50 hat Daniel Schwarz geschrieben: > @Daniel Lauckner: Bist du ein Entwickler von der Hardware oder der > Software oder beidem? Weder noch. Wiki, Image und Low-Level-TechSupporter. mfg Daniel
Re: [vz-users] Protokoll-spezifische Schlüssel für S0
am Donnerstag, 26. März 2020 um 16:53 hat Andreas Goetz geschrieben: > Die Direction definiert m.e. einfach ob high oder low Flanke > gezählt wird. Sollte für S0 m.E. egal sein. Hm, das letzte mal hast du mich darüber aufgeklärt das es eine Zählrichtugnsumkehr ist. Flanke wird immer die selbe ausgewertet. mfg Daniel
Re: [vz-users] Protokoll-spezifische Schlüssel für S0
Hallo Daniel, Lass' mich vorausschicken, dass ich mit der Entwicklung des Vzloggers absolut nichts zu tun habe... ich bin auch erst vor einem halben Jahr eingestiegen, als es die Erweiterungen schon nicht mehr zu kaufen gab... war auch bei mir erst ein trial and error. Was configureGPIO macht, kann man im Sourcecode (MeterS0.cpp).sehen: 1. der GPIO wird exportiert: if (_configureGPIO) { fd = ::open("/sys/class/gpio/export", O_WRONLY); [ ... ] name.append(std::to_string(_gpiopin)); [ ... ] res = write(fd, name.c_str(), name.length() + 1); 2. als Eingang konfiguriert: name.append("/sys/class/gpio/gpio"); name.append(std::to_string(_gpiopin)); name.append("/direction"); [ ... ] res = ::write(fd, "in\n", 3); 3. die Flanke auf "rising" gesetzt (hat nichts mit gpio_dir zu tun) name.append("/edge"); [ ... ] res = ::write(fd, "rising\n", 7); 4. Active_low auf 0 gesetzt, d.h. positive Impulse werden gezählt, nicht die Unterbrechungen dazwischen name.append("/active_low"); [ ... ] res = ::write(fd, "0\n", 2); Letzteres heisst Du müsstest mit einem Pull-Down Widerstand arbeiten. VZlogger hat keine Möglichkeit die internen Pull-Up/Down-Widerstände zu konfigurieren. Wenn Du einen internen Pull-Down verwenden möchtest, geht das z.B. mit dem Kommando "gpio" des Paketes "wiringpi". Letzteres ist standardmäßig nicht installiert, lässt sich per "apt-get install wiringpi" nachinstallieren. Dann z.B. mit dem Eintrag [Service] ExecStartPre=/usr/bin/gpio -g mode 21 down ExecStart=/usr/local/bin/vzlogger -c /etc/vzlogger.conf im /etc/systemd/system/vzlogger.service automatisch vor dem Start des vzloggers setzen. Ich mache es so. Meines Wissens kannst Du alle GPIOs verwenden, welche es gibt und auch wie sie benannt werden kannst Du übrigens via „gpio readall“ sehen. Sollte ich irgendetwas übersehen haben, man verzeihe mir bitte… Gruss, Alex > -Original Message- > From: volkszaehler-users [mailto:volkszaehler-users- > boun...@demo.volkszaehler.org] On Behalf Of Daniel Schwarz > Sent: Thursday, March 26, 2020 1:18 PM > To: volkszaehler.org - users > Subject: [vz-users] Protokoll-spezifische Schlüssel für S0 > > Hallo zusammen, > > ich baue derzeit eine Schaltung, mit der ich meinen Wasserzähler an den > VZ anschliessen kann. Am Ende sollen dabei S0-Pulse rauskommen. Dazu > kann ich ja im VZ-Logger entsprechend konfigurieren. > > Vorab: Bei mir laufen bereits zwei Stromzähler (SML). Als Hardware > verwende ich einen RaspberryPi der ersten Generation, auf dem läuft das > Image von volkszaehler.org. > > Für die Konfiguration eines S0-fähigen Kanales ist mir folgendes aber > noch nicht ganz klar (ich beziehe mich auf die Seite > https://wiki.volkszaehler.org/software/controller/vzlogger/vzlogger_conf_ > parameter): > > - Parameter "gpio": Kann ich hier wahlfrei einen Pin nehmen, der in der > Tabelle angegeben ist? > > - Parameter "configureGPIO": Was konfiguriert der Vzlogger denn? > Ausgewählter Pin als Input, mit Pulldown oder Pullup? Oder kann ich das > selbst noch irgendwo bestimmen? Andernfalls müsste ich ggf. auf "false" > setzen und beim Boot den Pin entsprechen konfigurieren (mit allen > notwendigen Skripten und Bibliotheken usw. Bäh.). Das wäre die > wichtigste Frage, denn danach richtet sich die Beschaltung meines Lesers. > > Parameter "gpio_dir": Normalerweise wird ja der High-Impuls (oder die > Flanke low -> high?) gezählt. Ist mit "Zählrichtung negativ" die Zählung > bei high -> low gemeint? > > Meine Hardware generiert derzeit einen positiven 5V-Impuls mit > einstellbarer Dauer (30 ms und höher). Damit kann ich aber nicht direkt > an den RaspberryPi, weil der Spannungspegel nicht passt. Ich würde also > einen Optokoppler ansteuern und wäre potentialfrei. Am einfachsten wäre > es, den GPIO am Pi mit einem Optokoppler nach low ziehen (= Zählimpuls). > Ansonsten ist der Ausgang hochohmig und der interne Pullup am Pin zieht > auf definiertes Potential. > > Danke für eure Hilfe und Anregungen. > > Daniel
Re: [vz-users] Protokoll-spezifische Schlüssel für S0
Die Direction definiert m.e. einfach ob high oder low Flanke gezählt wird. Sollte für S0 m.E. egal sein. Aber wie Du sagst- Du kannst es auch einfach ausprobieren da Du das Gerät ja in der Hand hast ;) Viele Grüße, Andreas > On 26. Mar 2020, at 16:50, Daniel Schwarz wrote: > > Also: Wenn ich so über den Schaltplan drüberschaue > (https://wiki.volkszaehler.org/_detail/hardware/controllers/raspi-b_6xs0_1x1-wire_1xir_2xein_rtc_stromlaufplan.png?id=hardware%3Acontrollers%3Araspberry_pi_erweiterung_mit_schaltausgaengen_rev.1), > wird eigentlich nur eine Frage beantwortet: Ja, die GPIOs können frei > gewählt werden. > > Über die anderen beiden Fragen kann ich weiter nur die Glaskugel reiben. > > - Was macht "gpio_dir"? Im Schaltplan sehe ich die S0-Signale, die vermutlich > von der Kontaktleiste links über einen Optokoppler (z. B. IC5) an den > Entprellbaustein (IC7) gehen. Dessen Ausgänge gehen an die Raspi-Extension. > Meine Vermutung zur Schaltung (sorry, ich bin kein Hardwerker): geht der > S0-Puls auf low, wird die CE-Strecke am Optokopplerausgang leitend und über > den Pullup (z.B. R11) bekomme ich ein high am Eingang von IC7. Ist der > S0-Puls high, sperrt der Optokoppler und ich kriege ein low. Um nun wieder > ein Norm-gerechtes S0-Signal (Highflanke wird gezählt) zu bekommen, könnte > ich ja das gpio_dir auf "1" setzen. Das Wiki schweigt sich aber leider aus, > was denn die "Zählrichtung" eigentlich ist, warum ich die Funktion auch > deaktivieren kann usw. > > Was macht "configureGPIO": Ich wüsste nicht, wie ich das anhand des > Schaltplanes klären kann. Der gewählte GPIO wird wohl als Eingang geschaltet. > Pullup/Pulldown? > > Klar kann ich das jetzt auch selbst ausprobieren, indem ich einfach einen > Kanal erstelle und an einem GPIO rumspiele. Weil meine eigene Schaltung aber > noch nicht fertig gebaut ist - und sie wird anders aussehen als die > Erweiterung von euch - müsste ich entsprechendes Equipment am RaspberryPi > anschließen, der aber schon fest verdrahtet ist. Den Aufwand wollte ich mir > sparen und habe versucht, über die Dokumentation ranzugehen. > > @Daniel Lauckner: Bist du ein Entwickler von der Hardware oder der Software > oder beidem? > > Viel Grüße > Daniel > > Am 26.03.2020 um 15:18 schrieb Daniel Schwarz: >> Hallo Daniel, >> >> danke für deine Antwort. Dann versuche ich mal rauszufinden, welche meiner >> Fragen über die Erweiterungen beantwortet werden ;-) >> >> Ich komme dann wieder auf die Newsgroup zurück. >> >> Gruß >> Daniel >> >> Am 26.03.2020 um 14:56 schrieb Daniel Lauckner: Hallo, ein Teil der Fragen dürfte geklärt sein wenn du dir die Schaltungen der Rpi-Erweiterungen im Wiki anschaust. Dazu passend wurde der vzlogger programmiert. mfg Daniel >>> Hallo zusammen, >>> >>> >>> ich baue derzeit eine Schaltung, mit der ich meinen Wasserzähler an den >>> VZ anschliessen kann. Am Ende sollen dabei S0-Pulse rauskommen. Dazu >>> kann ich ja im VZ-Logger entsprechend konfigurieren. >>> >>> >>> >>> Vorab: Bei mir laufen bereits zwei Stromzähler (SML). Als Hardware >>> verwende ich einen RaspberryPi der ersten Generation, auf dem läuft das >>> Image von volkszaehler.org. >>> >>> Für die Konfiguration eines S0-fähigen Kanales ist mir folgendes aber >>> noch nicht ganz klar (ich beziehe mich auf die Seite >>> https://wiki.volkszaehler.org/software/controller/vzlogger/vzlogger_conf_parameter): >>> >>> >>> - Parameter "gpio": Kann ich hier wahlfrei einen Pin nehmen, der in der >>> Tabelle angegeben ist? >>> >>> - Parameter "configureGPIO": Was konfiguriert der Vzlogger denn? >>> Ausgewählter Pin als Input, mit Pulldown oder Pullup? Oder kann ich das >>> selbst noch irgendwo bestimmen? Andernfalls müsste ich ggf. auf "false" >>> setzen und beim Boot den Pin entsprechen konfigurieren (mit allen >>> notwendigen Skripten und Bibliotheken usw. Bäh.). Das wäre die >>> wichtigste Frage, denn danach richtet sich die Beschaltung meines Lesers. >>> >>> Parameter "gpio_dir": Normalerweise wird ja der High-Impuls (oder die >>> Flanke low -> high?) gezählt. Ist mit "Zählrichtung negativ" die Zählung >>> bei high -> low gemeint? >>> >>> >>> Meine Hardware generiert derzeit einen positiven 5V-Impuls mit >>> einstellbarer Dauer (30 ms und höher). Damit kann ich aber nicht direkt >>> an den RaspberryPi, weil der Spannungspegel nicht passt. Ich würde also >>> einen Optokoppler ansteuern und wäre potentialfrei. Am einfachsten wäre >>> es, den GPIO am Pi mit einem Optokoppler nach low ziehen (= Zählimpuls). >>> Ansonsten ist der Ausgang hochohmig und der interne Pullup am Pin zieht >>> auf definiertes Potential. >>> >>> Danke für eure Hilfe und Anregungen. >>> >>> Daniel >>> >>
Re: [vz-users] Protokoll-spezifische Schlüssel für S0
Also: Wenn ich so über den Schaltplan drüberschaue (https://wiki.volkszaehler.org/_detail/hardware/controllers/raspi-b_6xs0_1x1-wire_1xir_2xein_rtc_stromlaufplan.png?id=hardware%3Acontrollers%3Araspberry_pi_erweiterung_mit_schaltausgaengen_rev.1), wird eigentlich nur eine Frage beantwortet: Ja, die GPIOs können frei gewählt werden. Über die anderen beiden Fragen kann ich weiter nur die Glaskugel reiben. - Was macht "gpio_dir"? Im Schaltplan sehe ich die S0-Signale, die vermutlich von der Kontaktleiste links über einen Optokoppler (z. B. IC5) an den Entprellbaustein (IC7) gehen. Dessen Ausgänge gehen an die Raspi-Extension. Meine Vermutung zur Schaltung (sorry, ich bin kein Hardwerker): geht der S0-Puls auf low, wird die CE-Strecke am Optokopplerausgang leitend und über den Pullup (z.B. R11) bekomme ich ein high am Eingang von IC7. Ist der S0-Puls high, sperrt der Optokoppler und ich kriege ein low. Um nun wieder ein Norm-gerechtes S0-Signal (Highflanke wird gezählt) zu bekommen, könnte ich ja das gpio_dir auf "1" setzen. Das Wiki schweigt sich aber leider aus, was denn die "Zählrichtung" eigentlich ist, warum ich die Funktion auch deaktivieren kann usw. Was macht "configureGPIO": Ich wüsste nicht, wie ich das anhand des Schaltplanes klären kann. Der gewählte GPIO wird wohl als Eingang geschaltet. Pullup/Pulldown? Klar kann ich das jetzt auch selbst ausprobieren, indem ich einfach einen Kanal erstelle und an einem GPIO rumspiele. Weil meine eigene Schaltung aber noch nicht fertig gebaut ist - und sie wird anders aussehen als die Erweiterung von euch - müsste ich entsprechendes Equipment am RaspberryPi anschließen, der aber schon fest verdrahtet ist. Den Aufwand wollte ich mir sparen und habe versucht, über die Dokumentation ranzugehen. @Daniel Lauckner: Bist du ein Entwickler von der Hardware oder der Software oder beidem? Viel Grüße Daniel Am 26.03.2020 um 15:18 schrieb Daniel Schwarz: Hallo Daniel, danke für deine Antwort. Dann versuche ich mal rauszufinden, welche meiner Fragen über die Erweiterungen beantwortet werden ;-) Ich komme dann wieder auf die Newsgroup zurück. Gruß Daniel Am 26.03.2020 um 14:56 schrieb Daniel Lauckner: Hallo, ein Teil der Fragen dürfte geklärt sein wenn du dir die Schaltungen der Rpi-Erweiterungen im Wiki anschaust. Dazu passend wurde der vzlogger programmiert. mfg Daniel Hallo zusammen, ich baue derzeit eine Schaltung, mit der ich meinen Wasserzähler an den VZ anschliessen kann. Am Ende sollen dabei S0-Pulse rauskommen. Dazu kann ich ja im VZ-Logger entsprechend konfigurieren. Vorab: Bei mir laufen bereits zwei Stromzähler (SML). Als Hardware verwende ich einen RaspberryPi der ersten Generation, auf dem läuft das Image von volkszaehler.org. Für die Konfiguration eines S0-fähigen Kanales ist mir folgendes aber noch nicht ganz klar (ich beziehe mich auf die Seite https://wiki.volkszaehler.org/software/controller/vzlogger/vzlogger_conf_parameter): - Parameter "gpio": Kann ich hier wahlfrei einen Pin nehmen, der in der Tabelle angegeben ist? - Parameter "configureGPIO": Was konfiguriert der Vzlogger denn? Ausgewählter Pin als Input, mit Pulldown oder Pullup? Oder kann ich das selbst noch irgendwo bestimmen? Andernfalls müsste ich ggf. auf "false" setzen und beim Boot den Pin entsprechen konfigurieren (mit allen notwendigen Skripten und Bibliotheken usw. Bäh.). Das wäre die wichtigste Frage, denn danach richtet sich die Beschaltung meines Lesers. Parameter "gpio_dir": Normalerweise wird ja der High-Impuls (oder die Flanke low -> high?) gezählt. Ist mit "Zählrichtung negativ" die Zählung bei high -> low gemeint? Meine Hardware generiert derzeit einen positiven 5V-Impuls mit einstellbarer Dauer (30 ms und höher). Damit kann ich aber nicht direkt an den RaspberryPi, weil der Spannungspegel nicht passt. Ich würde also einen Optokoppler ansteuern und wäre potentialfrei. Am einfachsten wäre es, den GPIO am Pi mit einem Optokoppler nach low ziehen (= Zählimpuls). Ansonsten ist der Ausgang hochohmig und der interne Pullup am Pin zieht auf definiertes Potential. Danke für eure Hilfe und Anregungen. Daniel
Re: [vz-users] Protokoll-spezifische Schlüssel für S0
Hallo Daniel, danke für deine Antwort. Dann versuche ich mal rauszufinden, welche meiner Fragen über die Erweiterungen beantwortet werden ;-) Ich komme dann wieder auf die Newsgroup zurück. Gruß Daniel Am 26.03.2020 um 14:56 schrieb Daniel Lauckner: Hallo, ein Teil der Fragen dürfte geklärt sein wenn du dir die Schaltungen der Rpi-Erweiterungen im Wiki anschaust. Dazu passend wurde der vzlogger programmiert. mfg Daniel Hallo zusammen, ich baue derzeit eine Schaltung, mit der ich meinen Wasserzähler an den VZ anschliessen kann. Am Ende sollen dabei S0-Pulse rauskommen. Dazu kann ich ja im VZ-Logger entsprechend konfigurieren. Vorab: Bei mir laufen bereits zwei Stromzähler (SML). Als Hardware verwende ich einen RaspberryPi der ersten Generation, auf dem läuft das Image von volkszaehler.org. Für die Konfiguration eines S0-fähigen Kanales ist mir folgendes aber noch nicht ganz klar (ich beziehe mich auf die Seite https://wiki.volkszaehler.org/software/controller/vzlogger/vzlogger_conf_parameter): - Parameter "gpio": Kann ich hier wahlfrei einen Pin nehmen, der in der Tabelle angegeben ist? - Parameter "configureGPIO": Was konfiguriert der Vzlogger denn? Ausgewählter Pin als Input, mit Pulldown oder Pullup? Oder kann ich das selbst noch irgendwo bestimmen? Andernfalls müsste ich ggf. auf "false" setzen und beim Boot den Pin entsprechen konfigurieren (mit allen notwendigen Skripten und Bibliotheken usw. Bäh.). Das wäre die wichtigste Frage, denn danach richtet sich die Beschaltung meines Lesers. Parameter "gpio_dir": Normalerweise wird ja der High-Impuls (oder die Flanke low -> high?) gezählt. Ist mit "Zählrichtung negativ" die Zählung bei high -> low gemeint? Meine Hardware generiert derzeit einen positiven 5V-Impuls mit einstellbarer Dauer (30 ms und höher). Damit kann ich aber nicht direkt an den RaspberryPi, weil der Spannungspegel nicht passt. Ich würde also einen Optokoppler ansteuern und wäre potentialfrei. Am einfachsten wäre es, den GPIO am Pi mit einem Optokoppler nach low ziehen (= Zählimpuls). Ansonsten ist der Ausgang hochohmig und der interne Pullup am Pin zieht auf definiertes Potential. Danke für eure Hilfe und Anregungen. Daniel
Re: [vz-users] Protokoll-spezifische Schlüssel für S0
Hallo, ein Teil der Fragen dürfte geklärt sein wenn du dir die Schaltungen der Rpi-Erweiterungen im Wiki anschaust. Dazu passend wurde der vzlogger programmiert. mfg Daniel
[vz-users] Protokoll-spezifische Schlüssel für S0
Hallo zusammen, ich baue derzeit eine Schaltung, mit der ich meinen Wasserzähler an den VZ anschliessen kann. Am Ende sollen dabei S0-Pulse rauskommen. Dazu kann ich ja im VZ-Logger entsprechend konfigurieren. Vorab: Bei mir laufen bereits zwei Stromzähler (SML). Als Hardware verwende ich einen RaspberryPi der ersten Generation, auf dem läuft das Image von volkszaehler.org. Für die Konfiguration eines S0-fähigen Kanales ist mir folgendes aber noch nicht ganz klar (ich beziehe mich auf die Seite https://wiki.volkszaehler.org/software/controller/vzlogger/vzlogger_conf_parameter): - Parameter "gpio": Kann ich hier wahlfrei einen Pin nehmen, der in der Tabelle angegeben ist? - Parameter "configureGPIO": Was konfiguriert der Vzlogger denn? Ausgewählter Pin als Input, mit Pulldown oder Pullup? Oder kann ich das selbst noch irgendwo bestimmen? Andernfalls müsste ich ggf. auf "false" setzen und beim Boot den Pin entsprechen konfigurieren (mit allen notwendigen Skripten und Bibliotheken usw. Bäh.). Das wäre die wichtigste Frage, denn danach richtet sich die Beschaltung meines Lesers. Parameter "gpio_dir": Normalerweise wird ja der High-Impuls (oder die Flanke low -> high?) gezählt. Ist mit "Zählrichtung negativ" die Zählung bei high -> low gemeint? Meine Hardware generiert derzeit einen positiven 5V-Impuls mit einstellbarer Dauer (30 ms und höher). Damit kann ich aber nicht direkt an den RaspberryPi, weil der Spannungspegel nicht passt. Ich würde also einen Optokoppler ansteuern und wäre potentialfrei. Am einfachsten wäre es, den GPIO am Pi mit einem Optokoppler nach low ziehen (= Zählimpuls). Ansonsten ist der Ausgang hochohmig und der interne Pullup am Pin zieht auf definiertes Potential. Danke für eure Hilfe und Anregungen. Daniel