8/16 Schalter - Problem

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Hallo Community,

    nach dem Programmierproblem von gestern Abend, welches ich noch lösen konnte, stehe ich nun vor einem Logistik-/Verkabelungsproblem ...

    Insgesamt möchte ich nach her mehrere Schalter und Sensoren über den Pi ansteuern/auslesen, soweit alles klar... da Model B+ und genügend GPIO's vorhanden sind, Problem ist nun das ich nur 8 GND Ports habe und sowohl jeder der 8 Schalter, als auch der 8 Magnetkontakte als auch der Stepmotor etc.... immer nen GND brauchen..


    bin also hingegangen und und habe mir gedacht ich nehme für jeden ("part") jeweils ein GND-PIN

    GPIO ==> 3,3v ==> 10kR ==> Lüsterklemmschiene (8x einzeln)
    GND ================> Andere Lüsterklemmschiene (8x gebrückt)

    meine Idee, da die obere schiene von einander unabhängige gpios verteilt (die ja Standard durch den 3.3v auf 1 stehen, schließe ich das andere ende des Schalters auf die gebrückte gnd schiene, tja.. das Problem:

    !!! Lege ich EINEN der schalter um (um 0 zu bekommen) schalten ALLE auf 0, nicht nur dieser eine den ich umlegte....

    mache ich da was falsch, bzw. habe ich nen Denkfehler drin? letztlich sind die einzelnen GND's doch sowieso untereinander verbunden oder nicht?

    wie löse ich das Problem am besten?!

    :helpnew:

  • Hallo.


    bin also hingegangen und und habe mir gedacht ich nehme für jeden ("part") jeweils ein GND-PIN
    GPIO ==> 3,3v ==> 10kR ==> Lüsterklemmschiene (8x einzeln)
    GND ================> Andere Lüsterklemmschiene (8x gebrückt)


    Was soll das darstellen ?
    Alle GPIO's auf 3,3 V, dann von den 3,3V auf 10 K ???

    Wenn du nen Schalter darstellen willst, dann s.Anhang
    und.. warum sollten die GPIO's untereinander verbunden sein.. sind sie nicht.


    gruß root

  • ggfs. sagt ein Bild da mehr als 1000 Worte, bin jetzt nicht so der Künstler, aber hoffe du erkennst was ich meine:

    20150110_144828vku7h.png

    jeder GPIO ist mit dem 3,3v(+10k) gekoppelt und steckt in der leiste (jeder für sich und von einander unabhängig)

    der GND ist über die ganze leiste gebrückt, mein ziel:

    ich stecke L und N von meinem Schalter oben und unten in die jeweilige leiste und kann somit steuern.

    Problem: lege ich einen Schalter um, wird aus allen GPIOs die auf 1 stehen 0, statt nur aus dem einen den ich umlege.

    Einmal editiert, zuletzt von BitterRiver4905 (10. Januar 2015 um 15:04)

  • ...nö... sorry aber wenn ich das so sehe, ziehst du die 3,3V brutal gegen Masse

    gruß root

    Einmal editiert, zuletzt von root (10. Januar 2015 um 15:05)

  • Jetzt ja.....
    Du gehts mit EINEM R auf ALLE GPIO's.
    Klar geht dann alles auf null...
    Du brauchst für JEDEN GPIO ein R. und die sind NICHT verbunden.
    ...überleg doch mal logisch ...:)

    Siehe mein Anhang oben.

    gruß root

    Einmal editiert, zuletzt von root (10. Januar 2015 um 15:16)

  • genau da liegt ja das problem, das teil hat zu wenig GND's.. 8 an der zahl, die benötige ich dann schon für meine 8 schalter...

    hab aber noch 8 magnetkontakte, nen schrittmotor und nen seperaten taster (system) die irgendwie an GND müssten... (18stk, bräuchte ich, hab aber nur 8)

    deswegen frage ich mich ja ob man das irgendwie brücken kann...

  • Hallo Nasthran,


    vor einiger Zeit habe ich hier mal einen Beitrag gepostet, in dem es um Taster-Abfrage in Icon ging.

    Die übliche Schaltung eines Taster und Abfrage über GPIOs des Rapsberry Pi funktioniert beispielsweise so:
    - Schaltplan als Einzeiler:
    GPIO14 ==> R=330 Ohm ==> Kathode-LED-Anode ==> 3.3V ==> Taster ==> R=620 Ohm ==> GPIO10 ==> R=11 kOhm ==> GND

    attachment.php?aid=2949

    Wenn man den Teil mit der LED wegnimmt, dann bleibt übrig
    3.3V ==> Taster ==> R=620 Ohm ==> GPIO10 ==> R=11 kOhm ==> GND

    Das heißt, der Taster verbindet 3V3 über einen Widerstand mit einem GPIO. Dieser GPIO ist über einen mind. 10 kOhm-Widerstand mit GND verbunden, um in beiden Schaltzuständen definierte Pegel am GPIO zu erzeugen.

    Wird der Taster betätigt, gibt es einen Pegelwechsel am GPIO.

    Dabei ist es vollkommen egal, ob jeder Taster seinen eigenen GND zugeordnet hat. Viel wichtiger ist der Widerstand zwischen Taster und GPIO - und der fehlt bei Dir bei jedem GPIO.

    Also: 3V3 geht an alle Taster, jeder Taster führt über einen eigenen Widerstand zu einem ein-eindeutig zuordenbaren GPIO, alle beteiligten GPIO sind über einen einzigen 10k mit einem einzigen GND verbunden.

    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

    2 Mal editiert, zuletzt von Andreas (9. Oktober 2017 um 23:37)

  • Hey Andreas,

    danke das du dich dazu gesellst und mir helfen magst.

    nun ist es so das ich durch deinen Satz irgendwie nicht durchblicke....

    Keine Ahnung, vllt. einfach schon zuviel den kopf zerbrocken aber so dumm das klingen mag, aber meinst du, du könntest mir da ne einfache Grafik dazu machen? ähnlich wie die weiße die ich oben gemacht habe...

    also für die 8 schalter mit den 2 lüsterklemmen?

    versuche das halt mit so wenig R's und kabeln etc zu lösen wie mir nur irgendwie einfällt, da der einbaukasten nicht sehr groß ist...

    Einmal editiert, zuletzt von BitterRiver4905 (10. Januar 2015 um 15:41)

  • Hallo...


    genau da liegt ja das problem, das teil hat zu wenig GND's.. 8 an der zahl, die benötige ich dann schon für meine 8 schalter...

    deswegen frage ich mich ja ob man das irgendwie brücken kann...


    ...jetzt hab ich dich verstanden....
    Klar kannst du "brücken"... :)
    das gleiche gilt für die +3,3V

    etwa so.

    gruß root

  • Hallo.


    versuche das halt mit so wenig R's und kabeln etc zu lösen wie mir nur irgendwie einfällt, da der einbaukasten nicht sehr groß ist...


    ...mir noch eingefallen.
    Das wäre dann um die Widerstände auch noch zu sparen, die "Geiz ist geil" Lösung :thumbs1:

    Die GPIO's stehen auf in, und die internen Pull-up's sind aktiviert... fertig.
    Bei offenem Schalter liegt an ihnen ne "1"...
    Die Schalter auch noch wegoptimieren ... bin ich noch dran.
    Nen GPIO mit aktiviertem Pull-up per Telepathie auf Masse zu ziehen ... es will einfach net :lol:

    gruß root

  • oh mann.. was ich auch tuh, ich habe versucht andreas's vorschlag nach bestem Verständnis umzusetzen, bin sogar um 17h noch extra ne 3/4 Stunde nach Essen gefahren um mehr Widerstände zu kaufen (1k 10k und 330 + noch mal ein mischpaket für 2,50€) aber wie ich es drehe und wende... ich bekomme es zum verrecken nicht so hin das ich mit einem GND jeden schalter für sich steuern kann...

    schalte ich einen, schaltet er alle... (über gpio read X - getestet) bitte helft mir alle 8 schalter mit nur einem GND seperat steuern können... am besten mit einfacher Zeichnung :( :( :(

    PS: muss auch nichts aufweniges sein, hauptsache ich kann sehen wie es für alle aussehen wird... ;(

    Einmal editiert, zuletzt von BitterRiver4905 (10. Januar 2015 um 22:07)

  • Hallo.


    oh mann.. was ich auch tuh, ich habe versucht andreas's vorschlag nach bestem Verständnis umzusetzen, bin sogar um 17h noch extra ne 3/4 Stunde nach Essen gefahren um mehr Widerstände zu kaufen (1k 10k und 330 + noch mal ein mischpaket für 2,50€) aber wie ich es drehe und wende... ich bekomme es zum verrecken nicht so hin das ich mit einem GND jeden schalter für sich steuern kann...

    schalte ich einen, schaltet er alle... (über gpio read X - getestet) bitte helft mir alle 8 schalter mit nur einem GND seperat steuern können... am besten mit einfacher Zeichnung :( :( :(

    Zitat

    alle 8 schalter mit nur einem GND seperat steuern können.


    Das habe ich doch schon oben gezeigt.

    also keine Panik, so schwer ist das nicht, zeig mal deine aktuelle Schaltung.

    gruß root

    Einmal editiert, zuletzt von root (10. Januar 2015 um 22:27)


  • ...
    also keine Panik, so schwer ist das nicht, zeig mal deine aktuelle Schaltung.
    ...

    ja... naja... das würde ich gern, aber da bisher alle versuche nicht erfolgreich waren habe ich alle abgemacht, ordentlich hingelegt und warte auf anweisungen eurerseits... das letze was ich probiert habe war allerdings:

    circuit_schemvtsr8.png


    quelle: google

    (nur halt mit mehreren tasten...)

    aber, wie gesagt, das ergebnis ist genau das gleiche wie den ganzen tag schon, lege ich einen Schalter um, schaltet er einfach alle auf einmal statt nur dein einen...

    :(

    Einmal editiert, zuletzt von BitterRiver4905 (10. Januar 2015 um 22:33)

  • Hm.. da ist nichts falsch.
    Diese "verbindung" zwischen S2 und S3 ist aber nicht echt oder ?

    Also von daher alles ok.
    Jetzt ... wie und mit was fragst du die GPIO's ab, evtl hat sich da ein Fehler eingeschlichen.

    gruß root

  • ne die Verbindung scheint ein Grafikfehler zu sein, hab ich auch so nicht umgesetzt^^

    abfrage zum test bisher immer über console => gpio read 9 und gpio read 4 (zum test immer erst einmal mit 2 pins)

    beide sind auf 0 ich lege den schalter um und für 9, wird aus 0 => 1, bei 4 aber das gleiche
    lege ich 4 um hab ich ebenfalls auf beiden 1

    mein endscript sollte allerdings dieses sein, da ich da mit einem relay arbeite (mit einem schalter auch funktional, sobald ich alle anmache rastet er aus xD)


    aber wenn er in der konsole schon nicht richtig arbeitet, also beim read befehl, dann brauche ich garnicht das script auszuführen (was ich bisher auch nicht tat)

    PS: ich hätte auch nen Teamspeak server anzubieten, falls du eher reden statt schreiben möchtest^^

    Einmal editiert, zuletzt von BitterRiver4905 (10. Januar 2015 um 22:52)

  • hallo.
    also, ich hasse Python wie die Pest, aber ist meine Meinung... ;)

    aber das hier


    erscheint mir iwie faul, aber will mich nicht festlegen, da sind Pythoner gefragt.
    Da wird sich sicher einer melden.

    Aber das muss auch über die Konsole funktionieren, ohne Programm.
    Da gibt's genug Anleitungen.z:B
    dann:

    Zitat

    beide sind auf 0 ich lege den schalter um und für 9, wird aus 0 => 1, bei 4 aber das gleiche
    lege ich 4 um hab ich ebenfalls auf beiden 1


    ähm.. wenn die Schalter offen sind ist alles auf "1", wenn einer geschlossen ist geht eben der GPIO auf "0".
    ...versteh ich net ganz wie du das meinst.

    gruß root

    Einmal editiert, zuletzt von root (10. Januar 2015 um 23:17)

  • oh mann.. xD

    also wie gesagt, der python-code läuft, habs abwechselnd mit allen ports geprüft und alles O.K.

    danach hab ich mich eigentlich an die Schaltung setzen wollen und alle schalter anklemmen, und wenn ich deine Frage richtig verstehe dann hast du noch net ganz aufm schirm was ich eigentlich bewältigen will ^^

    ich versuch's noch einmal:

    8 Schalter
    8 GPIO ports
    1 Ground-PIN (da ich die anderen brauche...)

    gesuchte ist die Lösung, alle unabhängig voneinander von 0 auf 1 und zurück zu schalten OBWOHL alle auf einem GND klemmen.. xD

    am besten Grafisch in form einer Zeichnung das ich weiß wie ich was, wo verkabeln soll ^^


    aktuell ist es halt so das zwar jeder schalter, schaltet.. aber nicht jeder für sich, sondern egal welcher betätigt wird, er schaltet einfach alle. und das ist das problem.

    Einmal editiert, zuletzt von BitterRiver4905 (10. Januar 2015 um 23:23)


  • oh mann.. xD
    danach hab ich mich eigentlich an die Schaltung setzen wollen und alle schalter anklemmen, und wenn ich deine Frage richtig verstehe dann hast du noch net ganz aufm schirm was ich eigentlich bewältigen will ^^


    ..anscheinend, aber wer ist schon perfekt...
    bin zwar nicht mehr der jüngste,aber wenn ich schon das nicht mehr raffe... kann ich ja gleich einpacken und mich mal zum probeliegen anmelden :D

    ...letzter Versuch von mir...hab nur 4 gezeichnet... ist mir zu blöde ..:)

    gruß root

  • hehe ich danke dir dafür, und generell für deine mühe, aber das bild.. ist das nicht genau das was ich schon gemacht habe? xD
    also quasi das hier? (nur ohne klemme)

    circuit_schemvtsr8.png

    sobald ich da den "gpio read X" befehl eingebe sehe ich ja das er mit jedem schalter ALLE pins schaltet, statt nur jeden einzelnen... oder bin ich jetzt völlig durch?!

    Einmal editiert, zuletzt von BitterRiver4905 (11. Januar 2015 um 00:08)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!