2 Taster ein Kabel

Gast #4554718
Lesenswert?

Hallo,

Ich stehe vor folgendem Problem, zwei Taster sollen an "einen" Port des 
Raspberry Pi und dieser soll auswerten welcher Taster gedrückt wurde. 
Ich dachte mir, vielleicht gibt es einen IC, an welchem man mehrere 
Schalter anschließen kann und der dann auswertet, welcher gerade 
gedrückt wurde und dann einen codierten Wert an den Raspi schickt. Gibt 
es solch einen IC oder bin ich auf dem Holzweg und man löst das Problem 
auf andere Art eleganter? Für eure Antworten und Bemühungen danke ich 
bereits im Voraus.

MfG

Simon
#4554728
Lesenswert?

AD-Wandler für arme Leute.
Ein Pullup am Port, hochohmig, 100kOhm.
Jeder Taster schaltet einen Kondensator nach Masse an diesem Port, 10nF 
und 20nF als Beispiel.
0 ausgeben, sofort auf Eingang schalten und warten, bis 1 gelesen wird.
1 ist sofort da: Kein Taster betätigt.
1 ist nach wenigen Zyklen da: 10nF-Taster ist betätigt.
Es dauert länger, bis die 1 kommt: 20nF-Taster ist betätigt.
Es dauert noch länger: Beide Taster sind betätigt.
Gast #4554785
Lesenswert?

Simon schrieb:
> Ich dachte mir, vielleicht gibt es einen IC, an welchem man mehrere
> Schalter anschließen kann und der dann auswertet, welcher gerade
> gedrückt wurde und dann einen codierten Wert an den Raspi schickt.

Wie wäre es mit zwei Dioden? Das sind auch nur vier Beine zu löten.
Gast #4554824
Lesenswert?

Joe F. schrieb:
> Details bitte.

Wenn der Strom "links" rum durchs Kabel fließt, wird über die eine Diode 
in Serie zum Taster 1 der Zustand von Taster 1 abgefragt, wenn der Strom 
"rechts" rum fließt, entsprechend über die zweite Diode der Taster 2.

Andere Mögliochkeit: 3-adriges Kabel verwenden ...
Gast #4554846
Lesenswert?

Wolfgang schrieb:
> Joe F. schrieb:
>> Details bitte.
>
> Wenn der Strom "links" rum durchs Kabel fließt, wird über die eine Diode
> in Serie zum Taster 1 der Zustand von Taster 1 abgefragt, wenn der Strom
> "rechts" rum fließt, entsprechend über die zweite Diode der Taster 2.
>
> Andere Mögliochkeit: 3-adriges Kabel verwenden ...

Da lohnt sich ignorieren mehr als zu antworten.
Gast #4554866
Lesenswert?

Joe F. schrieb:
> Wie soll denn das alles mit einem Port-Pin funktionieren?
"ein Port-Pin" wirfst du hier erstmals in die Runde.

Vielleicht sollte man erstmal ein paar Grundlagen klären.
 - Geht es nun um einen Port oder um einen einzelnen Port-Pin
 - Wieviele Adern hat das Kabel?

högli schrieb:
> Da lohnt sich ignorieren mehr als zu antworten.

Sorry, wenn ich dich mit der Kurzbeschreibung etwas überfordert habe ...
Angehängte Dateien:
#4554871
Lesenswert?

Wolfgang schrieb:
> Joe F. schrieb:
>> Details bitte.
>
> Wenn der Strom "links" rum durchs Kabel fließt, wird über die eine Diode
> in Serie zum Taster 1 der Zustand von Taster 1 abgefragt, wenn der Strom
> "rechts" rum fließt, entsprechend über die zweite Diode der Taster 2.
>
> Andere Mögliochkeit: 3-adriges Kabel verwenden ...

Versuch das mal aufzubauen. ^^

Nette idee, aber so geht es leider nicht. Das wirst du in dem Moment 
merken indem du es mal aufzeichnest und durchspielst.

die beiden besten Vorschläge sind bislang:

Analogwert lesen oder ohne ADC das Zeitverhalten beobachten.

Wolfgang schrieb:
>> Wie soll denn das alles mit einem Port-Pin funktionieren?
> "ein Port-Pin" wirfst du hier erstmals in die Runde.

Ok, das wörtliche PIN hat gefehlt, aber bei einem Port mit mehreren Bits 
ist die Aufgabe ohne Witz.
Gast #4554876
Lesenswert?

Carsten R. schrieb:
> Nette idee, aber so geht es leider nicht. Das wirst du in dem Moment
> merken indem du es mal aufzeichnest und durchspielst.

Und warum nicht? Spiel das mal durch.

Abfrage Taster 1:
GPIO2 als Ausgang auf Low, Pegel GPIO1 lesen

Abfrage Taster 2:
GPIO1 als Ausgang auf Low, Pegel GPIO2 lesen

Das ganze nennt sich dann Zeitmultiplex
Gast #4554883
Lesenswert?

Hallo,

wow ich bin begeistert, in welch kurzer Zeit so viele konstruktive 
Antworten gepostet wurden. Nochmals vielen Dank.

@Soeren Die MCP AD-Wandler hatte ich auch schon entdeckt, deren 
Anbindung an den Raspi funktioniert aber nur über SPI, welcher mehr als 
ein Kabel voraussetzt. Trotzdem Danke.

@Georg Dein AD-Wandler für arme Leute sollte so wirklich funktionieren, 
dass werde ich mir mal näher anschauen.

@Joe Wie konnte ich nur den NE555 vergessen? Damit sollte es auf jeden 
Fall funktionieren und scheint mir die "schönste" Lösung zu sein. Vielen 
Dank

@Wolfgang hier muss ich mich den anderen anschließen, ich verstehe die 
deinen Ansatz mit zwei Dioden nicht wirklich. Trotzdem auch dir vielen 
Dank

MfG

Simon
Gast #4554903
Lesenswert?

@Carsten,

es geht um zwei Klingeltaster welche ihr Signal an den Raspi schicken 
sollen. Ich hab leider nicht die Möglichkeit einen weiteren Klingeldraht 
zu verlegen ohne das halbe Haus ein zu reißen.
Gast #4554954
Lesenswert?

Das ist eben der Knackpunkt. Wie viele Adern hat das Kabel, der 
Klingeldraht?

Aus Wikipedia: "Als Kabel wird allgemein ein mit Isolierstoffen 
ummantelter ein- oder mehradriger Verbund von Adern (Einzelleitungen) 
bezeichnet, welcher der Übertragung von Energie oder Information dient."

"Draht ist in der Regel dünn, lang und biegsam geformtes Metall oder 
Kunststoff mit oft kreisförmigem Querschnitt. " - Also eine einzelne 
Ader.

Ich weiß, dass vermutlich wieder einige Besserwisser, Egomanen und 
Glaskugelbesitzer behaupten werden, dass völlig klar ist, was sie 
persönlich vermutet oder geraten haben. Aber es bleibt der Fakt, dass 
die Darstellung mindestens widersprüchlich, eher aber unvollständig ist.

Was den TO angeht, kann man ihm das eigentlich nicht vorwerfen. Da kann 
man sich schon mal irren und annehmen, dass die Bezeichnung bezüglich 
der relevanten Fakten eindeutig ist. Aber das ist sie nicht.
Gast #4554958
Lesenswert?

Simon schrieb:
> es geht um zwei Klingeltaster welche ihr Signal an den Raspi schicken
> sollen. Ich hab leider nicht die Möglichkeit einen weiteren Klingeldraht
> zu verlegen

So langsam kommt doch Licht ins Dunkel ;-)

Simon schrieb:
> @Wolfgang hier muss ich mich den anderen anschließen, ich verstehe die
> deinen Ansatz mit zwei Dioden nicht wirklich.

Die Sache mit den Dioden funktioniert so, dass derselbe Draht 
nacheinander für zwei verschiedene Stromrichtungen benutzt wird. Über 
die Dioden wird jeder Stromrichtung einer der beiden Taster zugeordnet. 
Der Raspberry läßt durch Schalterei an zwei GPIO-Pins abwechselnd den 
Strom in der einen oder anderen Richtung fließen und guckt dabei den 
Pegel am anderen der beiden Port-Pins an (wie bei Anfrage eines 
Einzeltasters). Damit fragt man dann unter Verwendung eine 2-adrigen 
Kabels beide Taster immer abwechselnd ab.
Gast #4554965
Lesenswert?

ok, ich hab mich da wirklich unklar ausgedrückt. Das Wort Kabel ist in 
dem Zusammenhang wirklich schlecht gewählt. Um es jetzt eindeutig zu 
machen:Es handelt sich um eine Ader die ich zur Verfügung habe.
Gast #4554983
Lesenswert?

Simon schrieb:
> ok, ich hab mich da wirklich unklar ausgedrückt. Das Wort Kabel ist in
> dem Zusammenhang wirklich schlecht gewählt. Um es jetzt eindeutig zu
> machen:Es handelt sich um eine Ader die ich zur Verfügung habe.

Hm. Bist Du da GANZ sicher?
Falls ja, dann gibt es keine Lösung, denn mit nur einer leitenden 
Verbindung kannst Du keinen Stromkreis herstellen.

Schau Dir bitte mal das oberste Bild in dem Artikel 
https://de.wikipedia.org/wiki/Stromkreis an. Dort siehst Du drei 
Adern. Eine zwischen der Spannungsquelle und der Lampe, eine zweite 
zwischen der Lampe und dem Schalter und die dritte zwischen Schalter und 
Spannungsquelle.
Denke Dir die Lampe als Klingel. Den Schalter als Klingeltaster. Denke 
Dir die Spannungsquelle und die Klingel nahe beieinander (etwas einige 
Zentimeter bis zu einem Meter, wie es häufig in Wohnungen der Fall ist). 
Dann ist die eine Verbindung zwischen Klingel und Spannungsquelle ebenso 
kurz. Dennoch hast Du zwei Adern zum Schalter. Eine von der 
Spannungsquelle zum Taster. Eine zweite vom Taster zur Klingel. Diese 
beiden führen meistens bis in Deine Wohnung.

Ist das bei Dir so? Oder anders?


An sich wäre eine Ader auch unüblich für eine Verkabelung, die 
zwischen Klingel und Klingeltaster besteht (oder bestanden hat). 
Andererseits ist es auch nicht ausgeschlossen, dass die zweite 
Verbindung für Dich nur an den Endpunkten zugänglich ist und auf einem 
Potential liegt. Wo ist denn der Klingeltrafo? Wo die Klingel?
Gast #4555026
Lesenswert?

Zweifellos funktioniert es auch mit einem AD-Wandler und R2R-Netzwerk.

Einem Anfänger aber ist es vielleicht nützlich, wenn er die potentiellen 
Schwierigkeiten und die notwendigen Schritte vergleichen kann.

1. Wolfgangs Lösung
a) Schaltplan kann einfach nachgebaut werden.
b) Zum Verständnis und Implementierung der Funktion ist die Kontrolle 
der Port-Richtungen sowie die Funktionsweise von Dioden notwendig.
c) Kabelverbindungen sind an sich nicht perfekt. Die Toleranz der 
Eingänge mit der High und Low unterschieden werden spielt eine Rolle. 
(Siehe unten bei Sörens Lösung). Leitungslänge spielt bei den üblichen 
Längen fast keine Rolle.

2. Sörens Lösung
a) Schaltplan ist "komplizierter". Je nach Erfahrung wird evtl. eine 
Schwelle überschritten, die kein Verständnis mehr erlaubt.
b) Neben der Port-Kontrolle ist auch die AD-Wandlung zu implementieren 
(hat der Pi einen AD-Wandler? Keine Ahnung) und/oder die Schnittstelle 
zu dem Wandler sowie die Berechnung des R2R-Netzwerkes (dazu gibt es 
allerdings auch Applets im Netz).
c) Je nach Auslegung des R2R-Netzwerkes kann man den Einfluss von 
imperfekten Kabelverbindungen verringern. In dem man höhere Ströme 
fliessen lässt. Aber dazu muss man wissen was man tut. Leitungslänge 
begrenzt aber den Spielraum.

Ich will mich hier nicht für eine der beiden Lösungen aussprechen. 
Mindestens aber wollte ich einen Eindruck vermitteln was die 
Unterschiede sind.
#4997629
Lesenswert?

ich bin der Suche auf diesen Beitrag gestoßen, denn ich habe ein 
ähnliches Problem und bevor ich Wolfgangs-Dioden Lösung ausprobieren 
wollte ich mir noch Expertenrat einholen.

Situation:
Ich habe am Haus einen Sickerschacht mit ein Tauchpumpe. Dorthin führt 
ein 5-adriges Stromkabel (1,5mm^2) von denen 3 Adern die Pumpe mit Strom 
versorgen. Ein weiters Kabel zu legen ist sehr auswändig und steht außer 
Disskussion. Zudem herrscht in dem Schacht ein sehr 
Elektronik-unfreundliches Klima (feucht) so das ich dort keine 
zusätzliche Elektronik nebst Netzteil installieren möchte.
Die Leitung ist etwa 30m lang, die Tauchpumpe hat einen Nennleistung von 
300W jedoch sicher einen höheren Anlaufstrom.

Nun möchste ich zwei Schwimmschalter im Schacht installieren:
1. Wasserstand unter dem Einschaltpunkt der Tauchpumpe
2. Wasserstand über dem Einschaltpunkt der Pumpe

Schalter 1 sagt mir ob überhaupt Wasser im Schacht vorhanden ist, 
welches nicht von selbst versickert.
Schalter 2 sagt mit ob die Wassermenge entweder die Pumpenleistung 
übersteigt oder wenn dauerhaft an ob die Pumpe evtl. defekt ist, oder 
hängt.

Ein Raspberry PI soll diese beiden Signale auswerten und regelmäßig in 
eine Datei zur Auswertung sichern.

Ich habe Bedenken bezüglich der Leitungslänge und dem induzierten Strom 
auf die Steuerleitung, wenn die Pumpe anspringt.

Auf Seite des Raspi sind noch min 3 GPIOs frei und dort liesse sich auch 
eine aufwändigere Schaltung (24V ist vorhanden) mit Optokopplern zu 
galvanischen Trennung aufbauen.

Ideal wäre noch ein 3ter Schwimmschalter, der sich zwischen 
Aus-/Einschaltpunkt der Pumpe befindet und anhand dessen sich auf die 
Einschaltdauer der Pumpe schliessen lässt.

Es muss aber alles über 2 Drähte...

Danke für die Tipps und Grüße
vdb
Gast #4997794
Lesenswert?

Ich weiss nicht ob Du jetzt nen neuen Thread aufgemacht hast, aber 
letztendlich ist doch Dein Problem ganz einfach, sofern Deine 
Schwimmerschalter für 230V zugelasen sind

- die Pumpe hat L, N und PE, sicher wird nur L geschaltet, N ist also 
immer vorhanden
- die beiden Schwimmerschalter an N, dann die beiden geschaltete N über 
die freien Adern zurück

- im Haus 2 Kleine Trafos zwischen L und den geschalteten N, 
Sekundärseitig dann zum Raspi

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren