NEWS
GPI wird mehrfach geloggt
-
Hi,
ich habe mir nach diversen Anleitungen im Netz einen Gaszähler gebastelt. Es handelt sich um einen einfachen Reedkontakt der an einen GPI eines Raspberry angeschlossen ist. Nun habe ich gesehen, dass die Impulse (True) teilweise direkt hintereinander geloggt werden ohne ein False dazwischen.
Die beiden Werte für True haben einen abstand von ca 40s.
Hat jemand eine Idee, was da los ist?VG Schmidti
PS: Falls ich im falschen Unterforum gelandet bin, gerne verschieben.

<xml xmlns="https://developers.google.com/blockly/xml"> <block type="create" id="Z%NzZ.a@$%Q58Ee~J8T+" x="-313" y="62"> <field name="NAME">GaszählerStand</field> <value name="VALUE"> <block type="math_number" id="N;KE}kpuR#pWKI/uS_v@"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="YUabK4ncqu.r8m69O|m]"> <field name="TEXT">{"type":"number","unit":"m³"}</field> </block> </value> <next> <block type="create" id="wQ.JIo;:4qFY^Ve/{_#$"> <field name="NAME">GaszählerStandkWh</field> <value name="VALUE"> <block type="math_number" id="JDj4hSv@MakI~~gq4Q#1"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id=",g,:JZBAlf}H(G72%j]3"> <field name="TEXT">{"type":"number","unit":"kWh"}</field> </block> </value> <next> <block type="on" id="q#pjV~=(qF0Y.KbtZ;yg"> <field name="OID">rpi2.0.gpio.22.state</field> <field name="CONDITION">true</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="update" id="5mGQ~.#?}B,L+{i0KTzw" inline="false"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.GaszählerStand</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="xL8Y(ws;7EE;8v[x5^+h"> <field name="n">2</field> <value name="x"> <shadow type="math_number" id="q`@SnMU4I$:e#j~`$0h/"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="e_KkJKDHsRM*6Ika;v0D" inline="false"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="CLQC7!$DtI3y*H*8mo3|"> <field name="NUM">1</field> </shadow> <block type="get_value" id="(]2!|YxY}6(A*HJ7V$[6"> <field name="ATTR">val</field> <field name="OID">javascript.0.GaszählerStand</field> </block> </value> <value name="B"> <shadow type="math_number" id="T8VS}{!pKuZ~~v*zDpYK"> <field name="NUM">0.01</field> </shadow> </value> </block> </value> </block> </value> <next> <block type="debug" id="bL=V0canwtIPBrNniX:k"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="[7@D#7I3vZkm.8g|n+7y"> <field name="TEXT">Zähler + 0.01</field> </shadow> </value> </block> </next> </block> </statement> <next> <block type="on" id="QGxvG[?Oq:JxqEk/7ALV"> <field name="OID">javascript.0.GaszählerStand</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="update" id="$!:k6vFc/r=V/b:-y$ln" inline="false"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.GaszählerStandkWh</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="u~i4,ZS%8P;Dv2cw#7%1"> <field name="n">2</field> <value name="x"> <shadow type="math_number" id="wN(t!Y}Ft{JWQlPJwl?C"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="k#vw#tApZ/FA]{c]bLYw" inline="false"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="%eaxf);%gdJFZEkn9?}N" inline="false"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="on_source" id="Kfkm[GU=SPY-lixX@2eM"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <shadow type="math_number" id="ODgtvQ/7*ekgypm+:X06"> <field name="NUM">0.9683</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="FTF1yFHod6!BzTn)wM9g"> <field name="NUM">11.39</field> </shadow> </value> </block> </value> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </xml> -
Hi,
ich habe mir nach diversen Anleitungen im Netz einen Gaszähler gebastelt. Es handelt sich um einen einfachen Reedkontakt der an einen GPI eines Raspberry angeschlossen ist. Nun habe ich gesehen, dass die Impulse (True) teilweise direkt hintereinander geloggt werden ohne ein False dazwischen.
Die beiden Werte für True haben einen abstand von ca 40s.
Hat jemand eine Idee, was da los ist?VG Schmidti
PS: Falls ich im falschen Unterforum gelandet bin, gerne verschieben.

<xml xmlns="https://developers.google.com/blockly/xml"> <block type="create" id="Z%NzZ.a@$%Q58Ee~J8T+" x="-313" y="62"> <field name="NAME">GaszählerStand</field> <value name="VALUE"> <block type="math_number" id="N;KE}kpuR#pWKI/uS_v@"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="YUabK4ncqu.r8m69O|m]"> <field name="TEXT">{"type":"number","unit":"m³"}</field> </block> </value> <next> <block type="create" id="wQ.JIo;:4qFY^Ve/{_#$"> <field name="NAME">GaszählerStandkWh</field> <value name="VALUE"> <block type="math_number" id="JDj4hSv@MakI~~gq4Q#1"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id=",g,:JZBAlf}H(G72%j]3"> <field name="TEXT">{"type":"number","unit":"kWh"}</field> </block> </value> <next> <block type="on" id="q#pjV~=(qF0Y.KbtZ;yg"> <field name="OID">rpi2.0.gpio.22.state</field> <field name="CONDITION">true</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="update" id="5mGQ~.#?}B,L+{i0KTzw" inline="false"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.GaszählerStand</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="xL8Y(ws;7EE;8v[x5^+h"> <field name="n">2</field> <value name="x"> <shadow type="math_number" id="q`@SnMU4I$:e#j~`$0h/"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="e_KkJKDHsRM*6Ika;v0D" inline="false"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="CLQC7!$DtI3y*H*8mo3|"> <field name="NUM">1</field> </shadow> <block type="get_value" id="(]2!|YxY}6(A*HJ7V$[6"> <field name="ATTR">val</field> <field name="OID">javascript.0.GaszählerStand</field> </block> </value> <value name="B"> <shadow type="math_number" id="T8VS}{!pKuZ~~v*zDpYK"> <field name="NUM">0.01</field> </shadow> </value> </block> </value> </block> </value> <next> <block type="debug" id="bL=V0canwtIPBrNniX:k"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="[7@D#7I3vZkm.8g|n+7y"> <field name="TEXT">Zähler + 0.01</field> </shadow> </value> </block> </next> </block> </statement> <next> <block type="on" id="QGxvG[?Oq:JxqEk/7ALV"> <field name="OID">javascript.0.GaszählerStand</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="update" id="$!:k6vFc/r=V/b:-y$ln" inline="false"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.GaszählerStandkWh</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="u~i4,ZS%8P;Dv2cw#7%1"> <field name="n">2</field> <value name="x"> <shadow type="math_number" id="wN(t!Y}Ft{JWQlPJwl?C"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="k#vw#tApZ/FA]{c]bLYw" inline="false"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="%eaxf);%gdJFZEkn9?}N" inline="false"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="on_source" id="Kfkm[GU=SPY-lixX@2eM"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <shadow type="math_number" id="ODgtvQ/7*ekgypm+:X06"> <field name="NUM">0.9683</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="FTF1yFHod6!BzTn)wM9g"> <field name="NUM">11.39</field> </shadow> </value> </block> </value> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </xml>@schmidti
Hast Du es mal so versucht?

Der DP könnte durch andere Einflüsse als den Impulsgeber aktualisiert werden.
Dann reagiert Dein Trigger ebenfalls und zählt zu viel.Hatte ich bei mir zunächst auch. Seitdem ich das umgestellt habe, zählt mein Script zuverlässig.
P.S.: Außerdem habe ich noch einen Timeout (1 s) zum Entprellen eingebaut (nach dem Debug).
-
@schmidti
Hast Du es mal so versucht?

Der DP könnte durch andere Einflüsse als den Impulsgeber aktualisiert werden.
Dann reagiert Dein Trigger ebenfalls und zählt zu viel.Hatte ich bei mir zunächst auch. Seitdem ich das umgestellt habe, zählt mein Script zuverlässig.
P.S.: Außerdem habe ich noch einen Timeout (1 s) zum Entprellen eingebaut (nach dem Debug).
@codierknecht Ahhhhh, das werde ich mal probieren.
Danke dir! -
@schmidti
Hast Du es mal so versucht?

Der DP könnte durch andere Einflüsse als den Impulsgeber aktualisiert werden.
Dann reagiert Dein Trigger ebenfalls und zählt zu viel.Hatte ich bei mir zunächst auch. Seitdem ich das umgestellt habe, zählt mein Script zuverlässig.
P.S.: Außerdem habe ich noch einen Timeout (1 s) zum Entprellen eingebaut (nach dem Debug).
@codierknecht ICh ahbe es ausprobiert. Leider hat es immer noch ab und zu doppelte Impulse gegeben. Ich habe noch mal den Trigger auf: "ist größer als letztes" gesetzt. Nun is - bis jetzt - alles gut.....
Danke dir nochmal für die Hilfe!
VG
Schmidti
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden