Hallo liebes Forum,
Ich lese schon seit Jahren mit jedoch heute meine erste mir unverständliche Problemstellung die ich gerne erörtern würde.
Ich habe an einen Pi Zero W zwei Taster und zwei LED per GPIO angeschlossen.
Die Taster sollen einen python script bedienen und die LED Dienen der optischen Kontrolle, das Gehäuse ist aus Kunststoff, die Taster aus Edelstahl.
Die Taster sind so verkabelt: GPIO27 -> 10k Widerstand -> Taster -> GND
Und so angelegt: GPIO.setup(button1_pin, GPIO.IN, pull_up_down=GPIO.PUD_UP)
Ich habe das Problem, dass die Taster bereits auslösen, wenn ich sie nur berühre, und zwar reicht es, wenn ich einen der beiden Taster berühre um beide auszulösen, gleichzeitig lade ich mich anscheinend so stark auf, dass ich sobald ich ein geerdetes Gerät berühre sofort einen kleinen Schlag bekomme - das ist nicht immer so, aber nach einer gewissen Zeit eigentlich immer. Ich habe bereits verschiedene Netzteile versucht aber keinen Unterschied bemerkt, der Pi ist direkt an der Platine an die Stromversorgung angelötet und geht nicht über den USB Eingang.
Hat jemand eine Idee was das Problem sein könnte? Dank euch vielmals vorab für die Unterstützung!
Danke! Ist es dann nicht so, dass der interne pullup mit dem externen 10k genug sein sollte in kombination?
Wie meinst du mit besser? Der Taster sitzt ja aktuell zwischen GPIO und GND, wäre es besser gegen Vcc zu schalten oder wie meinst du? Danke vielmals für Deine Hilfe!
Wie meinst du mit besser? Der Taster sitzt ja aktuell zwischen GPIO und
GND, wäre es besser gegen Vcc zu schalten oder wie meinst du?
Dann male einen Schaltplan (gerne auf Papier und abfotografiert). Dann weiß jeder, wie deine Taster verschaltet sind. Aus deiner Prosa geht das nicht genau hervor!
Deshalb, umstöpseln, Taster direkt an GPIO, den dadurch freiwerdenden
Widerstand als Pullup verwenden.
Danke! Sprich wenn ich das doch in Prosa versuchen darf wiederzugeben, von Vcc gehe ich durch den 16k Widerstand zum Taster, fahre aber durch in den GPIO, sobald der Taster gedrückt wird, fließt der Strom aber zu GND und somit habe ich das Event in python, dass der Button gedrückt wurde?
Ist es dann nicht so, dass der interne pullup mit dem externen
10k genug sein sollte in kombination?
Meistens ja. Aber viele Taster halten nicht lange, wenn sie nur so wenig belastet werden. Ich lege den Pull-Up immer so aus, dass mindestens 1mA fließen.
Wo wäre der Unterschied 10k 16k oder 3k3 zu verwenden?
Je nach Kontaktmaterial im Taster kann sich da eine Oxid-Schicht bilden, die zu schlechtem Kontakt und Prellen führt. Ein höherer Strom "brennt" diese weg.
Ersetze den Serienwiderstand durch eine Drahtbrücke. Der Code deklariert den Pullup und das reicht.
NB: Gezeichnet hast du den Taster an GPIO25, sagst aber, das er an GPIO27 dran ist.
Danke,
Ich hab es jetzt mit 3k3 Ohm probiert und entsprechend die Verkabelung angepasst, leider aber kein Unterschied, sobald ich den Taster berühre schaltet er bereits, jedoch immer nur beim ersten Mal, soll ich das Metallgehäuse vom Taster mit GND verbinden oder hätte das keinen Sinn?
Welche Spannungsversorgung hat dein Pi?
Hast du ein Multimeter und kannst mal zwischen GND und Erde/PE messen, auch im AC-Messbereich?
Trägst du gut isolierende Schuhe, und hast trockene Luft im Zimmer?
Triggert der Schalter auch, wenn du dich vor dem Berühren erdest? (PC-Gehäuse, Heizkörper anfassen oder so)
Hallo Ernst,
Εrnst B. schrieb im Beitrag #7572040:
Welche Spannungsversorgung hat dein Pi?
Hast du ein Multimeter und kannst mal zwischen GND und Erde/PE messen,
auch im AC-Messbereich?
Trägst du gut isolierende Schuhe, und hast trockene Luft im Zimmer?
Triggert der Schalter auch, wenn du dich vor dem Berühren erdest?
(PC-Gehäuse, Heizkörper anfassen oder so)
Spannungsversorgung habe ich zwei unterschiedliche 10W USB Netzteile verwendet, eines von Apple, eines von Samsung, bei beiden das gleiche.
Multimeter kann ich morgen anlegen, hab den Raspberry in der Werkstatt, nicht zu Hause, was sollte hierbei herauskommen?
Ich trage im Winter meist Schuhe mit Gummisohle, Luft ist durch die Werkstattheizung relativ trocken bei guten 50%
Vor dem Berühren erden habe ich noch nicht getestet, aber ich kann definitiv sagen dass ich nach dem ich den Taster betätigt habe auch einen kleinen Schlag bekomme, sobald ich die kabelgebundene Tastatur mit Alurahmen berühre.
Welche Spannungsversorgung hat dein Pi?
Hast du ein Multimeter und kannst mal zwischen GND und Erde/PE messen,
auch im AC-Messbereich?
Trägst du gut isolierende Schuhe, und hast trockene Luft im Zimmer?
Triggert der Schalter auch, wenn du dich vor dem Berühren erdest?
(PC-Gehäuse, Heizkörper anfassen oder so)
Hallo Ernst, bin erst jetzt dazugekommen leider, habe laut Multimeter im AC Bereich circa 46v, sobald ich den GND pin berühre oder auch nur in die Nähe komme feuern die Buttons schon, ich hab noch ein Foto vom Pi mit den Buttons gemacht. Hätte es Sinn die Metallbuttons mit GND zu verbinden?
Hätte es Sinn die Metallbuttons mit GND zu
verbinden?
Kann helfen oder es schlimmer machen. Mit PE/Erde verbinden wär vmtl. besser, dann werden statische Entladungen ganz an der Elektronik vorbei abgeleitet.
Manchmal kann es da helfen, das Steckernetzteil einfach um 180°
gedreht in die Steckdose zu stecken. Dann wird N auf GND gekoppelt.
Ansonsten: Besseres Netzteil. Eines mit Schutzkontaktstecker (Erde!)
Danke, Ernst! Leider hat das schlichte drehen nichts genutzt, ich habe jetzt ein 5v Schaltnetzteil bestellt und werde sehen ob das was hilft.
Mir ist aufgefallen, dass es seit dem ich das Gehäuse geöffnet habe nicht mehr so empfindlich ist, kann das auch damit zutun haben, dass die Komponenten im Gehäuse sehr eng aneinander verbaut sind?
Die Taster sind so verkabelt: GPIO27 -> 10k Widerstand -> Taster -> GND
Und so angelegt: GPIO.setup(button1_pin, GPIO.IN,
pull_up_down=GPIO.PUD_UP)
16k in Reihe ist viel zu hoch, da muß der interne Pullup noch viel hochohmiger sein. Wahrscheinlicher ist, er ist nicht aktiv, d.h. der Pin floatet.
Ich hatte mal ein Problem mit einem Pin bei einem LPC von NXP. Ursache war ein C&P-Fehler im h-File, es wurde der falsche Port angesprochen.
Du schreibst nicht, wie Du ihn einliest. Per externem Interrupt ist ein schweres Foul. Typisch nimmt man einen Timerinterrupt (1..20ms) mit mindestens 4-facher Abtastung.
Ich trage im Winter meist Schuhe mit Gummisohle, Luft ist durch die
Werkstattheizung relativ trocken bei guten 50%
Vor dem Berühren erden habe ich noch nicht getestet, aber ich kann
definitiv sagen dass ich nach dem ich den Taster betätigt habe auch
einen kleinen Schlag bekomme, sobald ich die kabelgebundene Tastatur mit
Alurahmen berühre.
Phasenprüfer in die Hand nehmen, etwas herumlaufen und dann gegen den Schutzleiter einer Steckdose. Der wird kurz aufglimmen, weil Du statisch aufgeladen bist. Also ein typisches ESD-Problem.
Danke, Ernst! Leider hat das schlichte drehen nichts genutzt, ich habe
jetzt ein 5v Schaltnetzteil bestellt und werde sehen ob das was hilft.
Ja, Nein, vielleicht. Wenn es keine speziellen Gründe dagegen gibt, lege GND vom Ausgang des Netzteils auf den Schutzleiter und auch das Schaltergehäuse dran.
Ich trage im Winter meist Schuhe mit Gummisohle, Luft ist durch die
Werkstattheizung relativ trocken bei guten 50%
Vor dem Berühren erden habe ich noch nicht getestet, aber ich kann
definitiv sagen dass ich nach dem ich den Taster betätigt habe auch
einen kleinen Schlag bekomme, sobald ich die kabelgebundene Tastatur mit
Alurahmen berühre.
Phasenprüfer in die Hand nehmen, etwas herumlaufen und dann gegen den
Schutzleiter einer Steckdose. Der wird kurz aufglimmen, weil Du statisch
aufgeladen bist. Also ein typisches ESD-Problem.
Felix H. schrieb:
Danke, Ernst! Leider hat das schlichte drehen nichts genutzt, ich habe
jetzt ein 5v Schaltnetzteil bestellt und werde sehen ob das was hilft.
Ja, Nein, vielleicht. Wenn es keine speziellen Gründe dagegen gibt, lege
GND vom Ausgang des Netzteils auf den Schutzleiter und auch das
Schaltergehäuse dran.
Steve van de Grens schrieb:
Dann würde ich noch deutlich mehr als 1 mA fließen lassen, falls im
Datenblatt der Taster kein Wetting-Current angegeben ist.
Stefans Gebetsmühle dreht wieder, ohne dass diese zum aktuellen Problem
beiträgt.
Hilfreich ist, dass ein niederohmig(er)er PullUp die Störsicherheit
erhöht.
Danke, wie meinst du das genau? Also vom wiring her. Ich verwende jetzt ein meanwell schaltnetzteil, Gehäuse ist aus Kunststoff.