Re: [vz-users] Protokoll-spezifische Schlüssel für S0

2020-03-26 Diskussionsfäden Andreas Götz
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

2020-03-26 Diskussionsfäden Daniel Lauckner
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

2020-03-26 Diskussionsfäden Daniel Lauckner
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

2020-03-26 Diskussionsfäden 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

2020-03-26 Diskussionsfäden rgb
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

2020-03-26 Diskussionsfäden Andreas Goetz
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

2020-03-26 Diskussionsfäden Daniel Schwarz
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

2020-03-26 Diskussionsfäden 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

2020-03-26 Diskussionsfäden 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



[vz-users] Protokoll-spezifische Schlüssel für S0

2020-03-26 Diskussionsfäden Daniel Schwarz

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