[vz-users] Cyble Sensor an Raspberry - vzlogger - Problem gelöst
rgb at nord-com.net
rgb at nord-com.net
Fri Dec 6 10:01:39 CET 2019
Hallo Thomas,
mein Problem hat sich in der Zwischenzeit gelöst…
Ich habe es nun mal mit einem “normalen” GPIO mit internen Pull-Down-Widerstand versucht, also so wie Du. Allerdings musste ich letzteren softwaremässig einschalten, mit „gpio -g mode 21 down“ im rc.local. Das Programm „gpio“ ist Teil des nachladbaren Paketes „wiringpi“. Ohne das hat es nicht funktioniert, im Sourcecode des vzloggers habe ich auch nicht sehen können, dass „configureGPIO“ den internen Pull-Down konfiguriert. Es kann aber sein, dass er bei manchen GPIOs standardmässig aktiviert ist.
Nun habe ich keine Fehlimpulse mehr. Allerdings bin ich mir nicht sicher, ob das an der Schaltung liegt, und/oder an einem nun komplett anderen Verhalten des vzloggers. Ursprünglich (also in der Schaltung mit dem Pull-Up und einem bis auf die Unterbrechungen ja dauerhaft hohen Pegel am GPIO) hatte ich ein debounce_delay von 700 eingestellt, obwohl der Cyble ja ein elektronischer Kontakt ist. Wurde hier in dieser Liste mal von einem anderen Benutzer des Cyble so als notwendig dokumentiert.
Die Impulse vom Cyble kamen regelmässig (das war nie das Problem) und der vzlogger hat jede „1“ auch an die Datenbank geschickt. Jetzt, mit 3,3V gegen GPIO mit Pull-Down ist letzterer ja, solange kein Impuls eintrifft, auf GND. Damit fiel schonmal der eine (logisch ja falsche) einmalige „Einschaltimpuls“ beim Starten des vzloggers weg. Soweit gut.
Allerdings hat der vzlogger nun auch die regelmässig und richtig kommenden „1“en des Cyble zwar im Debug angezeigt, aber nicht mehr an die DB geschickt. Ich habe dann mal testweise das debounce_delay auf 0 gesetzt. Nun sah man plötzlich nicht nur einen Impuls vom Sensor, sondern jedesmal 2, zeitgleich. Das war wohl mal der Grund für das debounce_delay.
Der Vzlogger aber hat daraus Power und Impulse gemacht, also wie bei einem E-Zähler, und (entsprechend meiner Config) natürlich nur den Impuls (einen!) geloggt und auch per curl auch an die DB gesendet. Entweder haben Entwickler des Cyble und Programmierer des vzloggers mehr gemein als man denkt – oder vielleicht ist genau dieses Verhalten für das Protokoll als Standard definiert. Auf jeden Fall funktioniert es so.
Es scheint dass der Vzlogger eine Impulsmindestlänge für analoge Impulsgeber (Reed) und bei digitalen einen zweifachen Impuls vorraussetzt. Und vielleicht siebt genau das die eventuell ja noch vorhandenen Störimpulse aus, die diese Vorgaben nicht erfüllen…
Danke & Gruss,
Alex
From: volkszaehler-users [mailto:volkszaehler-users-bounces at demo.volkszaehler.org] On Behalf Of Thomas Höpfner
Sent: Wednesday, December 04, 2019 4:23 AM
To: volkszaehler.org - users
Subject: Re: [vz-users] Cyble Sensor an Raspberry - Störimpulse
Hi Alex,
gute Frage. Genau das soll Verhalten soll mit pull-up oder -down vermieden werden.
Wie genau hast du deinen aktiviert?
Welche Spannung liegt am GPIO an?
Ist I2C sicher deaktiviert?
Vielleicht ist der GPIO auch nur ungeeignet.
Ich habe folgendes erfolgreich an GPIO 23 getestet:
- in vzlogger.conf : "configureGPIO": true, // aktiviert vermutlich den internen pull-down
- Optokoppler schaltet von +3.3V auf GPIO
Mit freundlichen Grüßen,
Thomas
-----Ursprüngliche Nachricht-----
Von: rgb at nord-com.net <rgb at nord-com.net>
Gesendet: Dienstag 3 Dezember 2019 18:52
An: 'volkszaehler.org - users' <volkszaehler-users at demo.volkszaehler.org>
Betreff: Re: [vz-users] Cyble Sensor an Raspberry - Störimpulse
Hmmm, ich habe gerade ein großes Fragezeichen auf meiner Stirn.
Aus purem Interesse habe ich mit einem Multimeter in meinem Raspberry herumgemessen. Unter anderem auch ausprobiert, ob eine direkte Verbindung zwischen dem GPIO meiner Wahl und Ground im Vzlogger einen Impuls auslöst. Ja, das funktioniert, wie sollte es auch anders sein.
Durch Zufall habe ich dann festgestellt, dass ich ebenso einen Impuls auslöse, wenn ich mit dem Messkabel an den GPIO komme, das andere Ende jedoch in der Luft hängt – ich habe es noch nichtmal mit der Hand berührt.
Ist das Gerät wirklich so empfindlich, oder läuft hier etwas ganz falsch?
-fragt sich Alex
From: volkszaehler-users [mailto:volkszaehler-users-bounces at demo.volkszaehler.org] On Behalf Of Thomas Höpfner
Sent: Saturday, November 30, 2019 6:44 PM
To: volkszaehler.org - users
Subject: Re: [vz-users] Cyble Sensor an Raspberry - Störimpulse
Hallo Alex,
Zwei Fragen noch: Ich gehe davon aus dass ich weiterhin einen Pull-Up Widerstand benötige,
Ja
ist der momentane (interne) von 1,8 kOhm an GPIO3 dafür tauglich?
Ja
So wie ich es verstehe: Niedrigerer Widerstand à höhere Stromstärke
Ja
à geringere Fehleranfälligkeit für Störimpulse (die ja theorethisch auch auf der vielleicht dann 10cm langen Strecke zwischen Raspberry und Optokoppler einschlagen könnten) ?
Nein! Die Verbesserung ist, das an deinen GPIO nur noch eine kurze Antenne ist, die viel weniger Energie einfängt. Theoretisch kann immer noch eine Störung auftreten, dann ist aber bei der Quelle etwas oberfaul.
Und bezüglich des Optokopplers: wäre dieser hier - LTV817 <https://www.reichelt.de/optokoppler-5kv-35v-50ma-50-dip4-ltv-817-p76173.html> - für die Schaltung geeignet?
Ja
Mit freundlichen Grüßen,
Thomas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20191206/9ca71158/attachment.html>
More information about the volkszaehler-users
mailing list