Digitale Werte von analogen Sensoren

  • Hallo zusammen,


    ich lese schon länger hier im Forum und möchte zuerst einmal meckern, weil ihr mich schon oft mit interessanten Themen von wichtigen Dingen abgehalten habt. ;)


    Meine Frage: Ich habe einen Fotowderstand (der ja bekanntlich analog ist) und möchte den am Raspi auslesen. Dabei interessiert mich aber kein genauer Helligkeitswert, sondern nur "hell" oder "dunkel". Deshalb würde ich gerne auf A/D-Wandler oder die Lösung mit dem Kondensator verzichten.



    Was willst Du Protokollieren? Helligkeit oder Licht An/Aus ?
    Die Daten kann man messen aber der Pi hat nur digitale Eingänge, unterschiedliche Helligkeiten kannst Du nur erfassen, wenn Du einen Analog/Digital-Wandler dazwischen schaltest.


    Das klingt für mich als sei es generell möglich. Leider bin ich ein ziemlicher Anfänger was Elektronik angeht... Kann mir jemand auf die Sprünge helfen?


    Gruß
    Waschmaschine

  • Hallo waschmaschine,


    dein Vorhaben ist vorab natürlich möglich - jedoch ist der Begriff "auslesen" etwas zu hoch angesetzt.


    Du kannst natürlich gewisse Werte, die als analoges Eingangssignal irgendwo verarbeitet werden, in digitale Schaltzustände darstellen, wollen wir uns doch mal so ausdrücken :thumbs1:



    Die Aussage Fotowiderstand ist so, als würdest du sagen, ich fahre ein Auto....


    Eine Typenbezeichnung wäre schon praktisch, da die Dinger weit unterschiedliche Widerstandsbereiche haben.


    Als erstes fällt mir dazu ein --> 74HC14 --> Schmitt-Trigger (high speed cmos)
    oder CD 4093 CMOS


    damit kannst du dein analoges Signal so darstellen, wie du es brauchst. also, ob Hell, oder Dunkel.


    Vorsicht:


    Auf die richtige Bauteilbezeichnung achten, da meist mit 5V Pegeln gearbeitet wird, hier eine bis 3,6V Variante:


    74 LV-Logikbaustein (LV entspricht demnach low voltage)




    als Tip: Hier ein simpler Versuchsaufbau, wie es realisierbar wäre...


    [Blocked Image: http://www.strippenstrolch.de/grafiken/schmitt03.GIF]
    Der Ausgang wäre dann dein logisches Signal "Hell" oder "Dunkel"


    mfg

  • Meine spontane Idee wäre:
    Einen Operationsverstärker als Komparator einsetzen.
    Und wenn du dann noch in das LDR Widerstandsnetzwerk ein Poti einbaust, kannst du die Helldunkelgrenze exakt einstellen.


    Ob du statt des OP einen Schmitt-Trigger einsetzen willst....?
    Da ist auf jeden Fall ein großer Totbereich zwischen den Schaltschwellen zu erwarten.

  • Danke für eure Antworten! Ich hatte irgendwie gehofft es gäbe eine simple Lösung, die ich übersehen hätte. :D
    Es ging mir um generelle Möglichkeiten, deswegen habe ich nur geschrieben dass ich "ein Auto" habe. Der LDR ist dieser hier.


    Ich hab mal bei Wikipedia recherchiert und kaum was verstanden. :D
    Schmitt-Trigger: Ein Bauteil, das die Spannung misst und bei erreichen einer bestimmten Spannung HIGH ausgibt, sonst LOW.
    Operationsverstärker: Ein Bauteil, das die Spannung verstärkt und...?


    combie: Was meinst du mit dem Totbereich? Hat der Schmitt-Trigger zwei Schaltschwellen? Wenn die obere überschritten ist => HIGH. Wenn die untere unterschritten ist => LOW. Dazwischen...? Ich stehe auf dem Schlauch.


    Ich werde jetzt erstmal versuchsweise einen Arduino verwenden und das dann später nochmal auf "was vernünftiges" umstellen.


    Danke für eure Hilfe! :)

  • Quote


    Hat der Schmitt-Trigger zwei Schaltschwellen?


    Richtig!
    Er hat eine Schalthysterese.


    Der Haupteinsatz dieses Bausteins ist, verschliffene, verrauschte, Digitalsignale wieder in Form zu bringen.


    Auch eine OP-Amp Komparator-Schaltung wird man mit einer kleinen Hysterese versehen wollen, um übermäßiges Zappeln in Schaltpunktnähe zu vermeiden. 1 bis 2 Widerstände reichen dafür.
    Baut man Potis ein, kann man sowohl Hysterese, als auch Schaltschwelle einstellen.


    Sinn und Zweck: Schalt Hysterese

  • Ich muss mich mal einmischen, natürlich ist es richtig, was hier geschrieben wurde und auch technisch elegant und vernünftig. Aber da beim RasPi die Pegel spannungsmäßig definiert sind, würde man mit einem Spannungsteiler ohne OPV bzw. Trigger zurechtkommen. Voraussetzung ist, es gibt nur die Zustände hell und dunkel (wie z.B. im Kühlschrank). Ist da eine Dämmerung zwischen klappt das natürlich nicht mehr, weil der GPIO in einen nicht definierten Zustand gerät und dann Unsinn erzeugt wird.

  • Das klingt doch sehr nach der einfachen Lösung die ich gesucht habe! :)
    Ich verstehe es allerdings nicht. Wie kann ich mit einem Spannungsteiler feststellen, ob es hell oder dunkel ist?


    Zwei Zustände reichen völlig. Ich will damit erkennen, ob eine LED leuchtet, damit meine Waschmaschine twittern kann. :D Ich setze den LDR direkt auf eine LED, die anzeigt, wenn die Waschmaschine fertig gewaschen hat.

  • > Das klingt doch sehr nach der einfachen Lösung die ich gesucht habe!
    Technisch nicht ganz sauber, aber einfach


    > Ich verstehe es allerdings nicht. Wie kann ich mit einem Spannungsteiler feststellen, ob es hell oder dunkel ist?
    Die GPIOs reagieren auf die Spannung am Eingang.


    Fuer das Projekt braucht es also eine Spannung, die von der Helligkeit abhaengig ist.
    Der LDR ist ein Widerstand der von der Beleuchtung abhaengt. Wenn es hell ist,
    hat er einen kleinen Widerstand, wenn es dunkel ist einen grossen.


    Die Spannung ist gegeben und fix: 3.3V. Also kann sich nur der Strom durch den
    Widerstand aendern.


    Wie gesagt, braucht der Eingang aber eine Spannung. Normalerweise schaltet
    er etwa in der Mitte, also um ca. 1.6V herum. (Das ist nicht so genau definiert,
    deshalb wurde zu einem Schmitt-Trigger oder Komparator geraten)


    Es gilt also jetzt, einen Widerstand zu finden, der bei einem beleuchteten LDR
    ueber 1.6V Spannungsabfall hat, und bei einem LDR im dunklen unter 1.6V.


    Das Vorgehen ist deshalb: messen wie hoch der Widerstand des LDR im
    Licht und im Dunkel ist. Der Mittelwert zwischen diesen beiden Werten ist
    der gesuchte Widerstand.


    Der LDR aus meiner Bastelkiste hat einen Widerstand von 15k im Licht und
    100k im Dunkel. (Auf dem Tisch und direkt unter der Tischplatte)


    Der Mittelwert ist 57k, aber einen solchen Widerstand gibt es nicht. Nehmen
    wir also einen 56k.


    Jetzt rechnen wir mal: der LDR in Serie zu 56k. (Ein kleiner Strom fliesst
    natuerlich auch durch den GPIO, aber den vernachlaessigen wir einfach.)


    Hell: 3.3 / (15000 + 56000) * 56000 => 2.6V am Eingang -> muesste eine 1 geben
    Dunkel: 3.3 / (100000 + 56000) * 56000 => 1.18V -> Unter 1.6, aber ob das sicher reicht ?


    Der Widerstand muesste eher kleiner sein, damit wir tiefer kommen. Ich wuerd's mal
    mit 33k probieren. Das gibt ca. 2.2 und 0.8V.


    > Ich will damit erkennen, ob eine LED leuchtet, damit meine Waschmaschine twittern kann.
    Den LDR schoen lichtdicht draufsetzen und messen wie hoch der Widerstand ist wenn
    die LED drauf scheint. Dann rechnen und probieren :D
    [hr]
    Nachdem ich schon so schoen gerechnet habe, wollte ich es auch probieren.


    Mit dem LDR und 33k funktioniert es :thumbs1:


    Raum hell -> 1
    Raum dunkel -> 0

    Edited once, last by Tell ().