Raspi, Einstieg, Level Shifter

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Tach zusammen,

    nachdem meine Versuche einen Sensor an den Raspi anzuschließen gescheitert sind, dachte ich mir ich fang lieber mal etwas kleiner an und habe den Schaltkreis, der als Erstes in diesem Youtube-Tutorial http://www.youtube.com/watch?v=NAl-ULEattw&t=386s beschrieben wird, erfolgreich nachbauen können. Dabei erzeugt ein python-Skript die Ausgabe "open" bis der Button gedrückt wird, worauf dann die Ausgabe "closed" erzeugt wird (solange man den Button gedrückt hält und somit der Schaltkreis geschlossen ist).
    Für mein eigentliches Projekt mit dem Sensor werde ich einen Levelshifter (5V->3.3V) benötigen. Um ihn zu testen, dachte ich, ich könnte den Button aus dem beschriebenen Schaltkreis einfach mit dem Shifter ersetzen und die Ausgangsspannung von 3.3V auf 5V ändern, woraufhin das python-Skript ein "closed" ausgeben würde, sobald ich den Schaltkreis schließe. Hat aber nicht funktioniert. Kann mir zunächst mal jemand sagen, ob es zumindest theoretisch funktionieren sollte?

    Einmal editiert, zuletzt von ivlus (26. Dezember 2022 um 19:13)

  • Du möchtest also, statt einen Taster direkt anzuschleießen, diesen über einen Levelshifter verbinden?

    Was Für einen Levelshifter verwendest du?

    Prinzipiell geht das. Du könntest also auf der einen Seite mit 5 V ein Tastersignal reingeben und an der anderen Seite kommt das Signal mit 3,3 V passend für den Pi raus. Muss halt richtig angeschlossen sein.

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!

  • Moinsen,

    Ich verstehe einfach die Menschheit nicht, die sich 6 Jahre alte Video zu technischen Systemen reinzieht.
    Dank des Video-Links welchen du hier beigefügt hast wird dort noch eine längst nicht mehr supportete Version von Python verwendet.

    es hat sich zwar im Prinzip nichts an dieser Bibliothek RPI.GPIO geändert, wenn es um einfache Aufgaben wie einen Taster / Schalter abfragen, oder eine LED zum leuchten bringen geht, nur ist das nicht der Weisheit letzter Schluss.

    Und dann was ist das für eine Schaltkreis den du wahrscheinlich als Sensor verwenden willst ?
    Damit gleich das nächste Thema - der Levelshifter. Die sicherste Funktion, oder Wahl ist eine bidirektionaler Levelshifter, der im beiden Richtungen funktioniert. Noch immer kursieren ältere Anleitungen wo ein Levelshifter nur als Ausgang auf 5,0 V erhöhte, bzw. einen Eingang auf 3,3 V erniedrigt.

    Das ist ein einfacher bidirektionaler Levelshifter, der aber nur bis Schaltgeschwindigkeiten , bzw bei Bus-Protokollen ( I²C / SPI ) bis etwa 150 -180 kHz mitspielt. Willst du diesen Levelshifter für eine Buskommunikation nutzen, wo auch schneller Pegeländerungen ( von Low auf High , oder umgekehrt ) stattfinden, solltest du den BBS138 durch einen 2N7000 / 2N7002 ersetzen.

    Und ja du kannst einen Taster an diesen Levelshifter anschließen.

    Nur musst du dann den Taster entsprechend beschalten. Wenn Taster ein LOW hervorrufen soll, also der abzufragende GPIO auf LOW reagieren soll musst du ihn mit einem Pull-UP Widerstand versehen, und wenn der GPIO auf High abgefragt wird, mit einem Pull-Down Widerstand.

    Nur verstehe ich nicht warum du einen Schaltkreis durch einen Taster ersetzen willst ? Ein Schaltkreis hat normal eine ganz spezielle Funktion.

    Franky

  • @Franky07, das Tutorial habe ich nur verwendet um einen möglichst einfachen Schaltkreis zustande zu bekommen und ihn dann minimal zu modifizieren, um den Levelshifter testen zu können. Habe mir also nur die ersten 9 - 10 Minuten angeschaut. Ich kann den Taster natürlich da lassen und den Levelshifter dazwischen schieben.

    Gibt es einen besseren Weg herauszufinden, ob der Levelshifter funktioniert bzw. ob ich die Pins anständig verlötet habe? Kann ich einen Levelshifter mit dem Multimeter wie einen Widerstand testen?

    Es handelt sich um diesen Levelshifter:

    https://learn.sparkfun.com/tutorials/bi-d…er-hookup-guide

  • sprichst du von Schaltkreisen im Sinne eines Halbleiter-Chips, oder im Sinne von einer elektrischen / elektronischen Schaltung ?

    Elektrische / elektronische Schaltung.

    Wenn du einen solchen Levelshifter hast, dann lege doch über einen Umschalter die entsprechende Pegel an.

    Hier hast Du mich leider komplett abgehängt :conf:

    Soll mir das helfen herauszufinden, ob der Levelshifter funktioniert?

  • Moinsen,

    Elektrische / elektronische Schaltung.

    Dann gewöhne dir bitte für die Zukunft an, wenn du Begriffe verwendest, die eine Mehrfachbedeutung haben, diese entsprechend genauer zu beschreiben, oder verzichte einfach auf solche Worte. Weil es war und ist erst einmal eine sehr uneindeutige Sachlage entstanden. Eigentlich sollte man versuchen sich so klar wie nur möglich einem Gegenüber auszudrücken.

    Hier hast Du mich leider komplett abgehängt :conf:

    Soll mir das helfen herauszufinden, ob der Levelshifter funktioniert?

    Was ist das wohl ?
    Ganz links findest du die Anschlüsse an das RasPi.
    Dann findest du auch Connectoren die so auf deiner Levelshifter Platine zu finden sind.
    Weiterhin ist der Aufbau eines solches Channels mit genormten Schaltbildern der Bauelemente dargestellt, sowie einem klassischen Umschalter, wobei hier die Ausführung Kippschalter ohne Mittelstellung, oder eine Schiebeschalter gemeint sein könnte. Was aber für die Funktion unerheblich ist.

    LV ( Low Voltage ) , wie auch HV ( High Voltage ) und GND ( Masse ) findest du auf deiner Platine relativ in der Mitte. Wobei Masse nur durchgeschleift wird. Die Bezeichnungen LV1 bis LV4 und HV1 bis HV4 findest du seitlich neben der Stromzuführung für den Levelshifter.

    Um einen solchen Pegelwandler testen zu können, ( warum auch immer man so etwas machen möchte ist mir unklar ) muss man den Low Voltage Anschluss versehen mit einer Nummer ( LV1 - LV4 ) mit einem GPIO des Controllers ( RasPi ) verbinden, und auf der High Voltage Seite für einen klaren Pegel sorgen. Also 0 V ( GND ) oder 5,0 V !!! Damit du dabei keine Pegel ( Spannungen ) in einem ungültigen Bereich einspeist kann man einfach einen Umschalter nehmen. Oder du verwendest ein Bauelement mehr und schließt einen Taster in der Beschaltung mit einem Pull-UP- oder Pull-Down-Widerstand an ( siehe #3 ).

    Und schon kannst du über die Abfrage des GPIOs jeweils einen Channel dieser Levelshifter-Platine auf korrekte Funktion testen. Diese Schaltungsvariante eines Levelshifers kannst du auch für größere Spannungsunterschiede bis über 12 V verwenden. Das halten diese MOSFETs aus ! Nur musst du dann sicher stellen, dass im Falle eines Defektes diese 12 Volt nicht auf die GPIOs des RasPi treffenden -> das würde das RasPi zerstören.

    Franky

Jetzt mitmachen!

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