Hallo zusammen,
Ich möchte eine Lichtstärkemessung mit Hilfe eines µC und LDRs
durchführen.
Als LDR habe ich den A906014, ausgesucht, da dieser einen hohen R
(weniger Belastung für den µC), fast lineare Kennline und geringe T_on,
T_off zeiten.
Ich bin mir nicht ganz sicher wie ich den Vorwiderstand auswählen soll?
Welchen Kriterien muss ich beachten, da doch der Vorwiderstand Einfluss
auf die Linearität des LDRs hat, oder irre ich mich?
LDRs werden mit dem 2. Widerstand als Spannungsteiler aufgebaut. Man
kann daher nicht von einem Vorwiderstand sprechen. Auch ist der
Widerstandswert des LDR dem µC völlig egal, was eine "Belastung" angeht.
Bei Spannungsteilern interessiert zur Messung nur die Spannung, und die
belastet in dem Fall gar niemanden. Also LDR von +5V auf den Widerstand
schalten und diesen dann an Masse. Am Verbindungspunkt zwischen beiden
kommt der ADC-Pin dran. Wenn Du eine lineare Lichtmessung haben willst,
mußt Du anstelle des 2. Widerstandes eine Konstantstromquelle nehmen. In
dem Falle muß der LDR aber niederohmiger sein, da es sonst zu keinem
ausreichendem Stromfluß mehr kommt.
Vielen Dank!
Wie realisiere ich eine konst. Stromquelle? Ich habe im den Foren
gesucht und die Möglichkeit über einen LM317(3-Terminal Adjustable
Regulator) gefunden. Dabei wird die Referernzspannung des LM317 für die
Erzeugung der 1mA genutzt.
Das ist ja nicht wirklich eine saubere Angelegenheit ;-). Gibt es eine
andere Möglichkeit?
Im Datenblatt angegeben ist "Ratio of Set Current to Bias Current", also
das Verhältnis der beiden Ströme. Der Wert ist allerdings vom Strom
abhängig, die entsprechende Kurve (typischer Wert!) ist auf Seite 5 ganz
oben rechts.
Wie man mit diesem Wert in deiner Formel rechnet steht übrigens auf
Seite 5 direkt im ersten Application Hint und genau unter der von dir
genannten Formel. Das Ding mit dem n/(n-1) ist es.
Danke nochmals,
wenn die konst Stromquelle durch einen jfet realsiere müsste es so
aussehen(Anhang). An A hänge ich dann den LDR an.
Ist es richtig, dass IL=Id ist? Was fällt an Ugs ab wenn Ub=3,3V und
Id=1mA sein soll. Wenn ich den JFET Bf145B
(http://www.nxp.com/acrobat_download/datasheets/BF245A-B-C_2.pdf)
benutzte?
Mir ist es nicht ganz klar. Der Rs und der LDR bilden doch einen
Spannungsteiler. Aber durch den Rs soll doch der konst. Strom ID erzeugt
werden?
U_RS ist vom LDR abhängig, der wierderum von der Temperaturabhg ist.
D.h. U_RS ändert sich somit auch ID?????????
Was du da gefunden hast ist die Konstantstromquelle, bestehend aus FET
und Widerstand. Die wird in Reihe mit deinem Fotowiderstand geschaltet.
Der FET ist so was wie ein veränderlicher Widerstand, und der stellt
sich eben so ein, dass an den beiden Kontakten des Festwiderstands eine
konstante Spannung anliegt. Also ne Art einfache Version der
Konstantstromquelle mit LM317.
Ich glaub, ich steh auf dem Schlau. sorry wenn ich nerve!
D.h. der Rs ist sowieso konst ,Ugs ist durch den JFET konst, d.h.
logischerweise ist auch der Strom also Id konst. Damit ich den Rs
dimensioniern kann, muss mir Ugs bekannt sein. Wie kann ich diesen
bestimmen?
Wenn der Wert im Datenblatt dir zu ungenau ist: Bau diese
Konstantstromquelle auf (Widerstand so ein Kiloohm oder so, ergibt dann
einen Strom im mV-Bereich) und häng sie z.B. an einen 9V-Block oder 5V
oder was auch immer du grade zur Verfügung hast (sollte aber schon so 5V
haben). Jetzt misst du einfach die Spannung am Widerstand, voila. Jetzt
den Widerstand durch einen für den gewünschten Strom geeigneten ersetzen
und fertig.
Und man sollte nicht gerade einen JFET nehmen, der eine hohe Ugs hat,
diese Spannung muss mindestens an diesem Teil des Spannungsteilers
abfallen, sonst funktioniert der Konstantstrom nicht.
Ich will ja nicht nicht pingellich sein.
Rs=(Uges/Id)
In Fig.8(oben Datenblatt) ist Ugs bei 15V und 1mA ca. -0,5V
Ist es den so, dass bei 3,3V an Uges -0,11V abfällt?(Dreisatz).
Ich komme auf keinen grünen Zweig. Es ist bestimmt trivial eine
Stromquelle mit 1mA und 3,3V Spannungsversorung, aber ich werde aus dem
Datenblatt nicht schlau.
In der Fig.3 des Datenblatts kann man ablesen, dass bei 15V Vds, Id =
1mA und Ugs=1V ist. Kann ich davon ausgehen, dass bei 3,3V
Ugs=(1V/15V)*3,3V=0,22V ist? Oder wo sollte ich Ugs bzw. Uds ablesen.
bzw. woher weis ich was an Uds abfällt? Das hängt doch von
Lichtwiderstand ab.
Ich habe ein zeichnug erstellt, das mein Problem veranschaulichen soll.
Dabei muss ich das Problem zur Erstellung einer 1mA Quelle, rechnerisch
lösen!
Ich wär euch wirklich sehr dankbar über jede Hilfe!!!!
Hallo,
kleine Anmerkung...
bevor Du mit Deiner Stromquelle kämpfst: Du hast mal gemessen, welchen
Widerstand der LDR bei der geringsten und größten Beleuchtung hat, die
Du auswerten willst?
Diese Widerstandswerte und die sich ergebenen Spannungswerte, die Du ja
auswerten willst, errechnet?
Passt das überhaupt zusammen?
Beispiel: LDR recht wenig beleuchtet -> 100k (bei Dunkelheit habe die
meist mehrere MOhm), erwartete Meßspannung z.B. 2,5V -> sind 2,5V/100k =
0,025mA = 25µA.
Das müßte Deine Stromquelle also liefern.
Der eigene minimale Spannungsabfall der Stromquelle muß in jedem Fall
merklich kleiner als die Differenz zur Betriebsspannung sein, wären bei
5V also 2,5V, bei 3,3V wären es nur 0,8V.
Unter 0,8V für die Stromquelle zu bleiben halte ich mit einfachen
Mitteln für unrealistisch, unter 2,5V würde mit obiger Schaltung wohl
sogar noch machbar sein.
Der Emitterwiderstand wäre da dann (Uled - Ube)/Ice (1,6V-0,65V)/0,025mA
= 38k. Ob das praktisch noch klappt könnte man ja mal probieren.
Gruß aus Berlin
Michael
>In der Fig.3 des Datenblatts kann man ablesen, dass bei 15V Vds, Id =>1mA und Ugs=1V ist.
Sag' es lieber so: Wenn am Gate (bezogen auf source) -1V
anliegen, kann ein Strom von 1mA fließen (Fet als steuerbarer R).
Wenn man nun eine Stromquelle mit einem mA haben will, muß an R6
1V abfallen --> R6 = 1kOhm.
Aus Fig.4 kannst Du ablesen, daß ab einer Vds von 4V der Strom ziemlich
konstant bleibt. Wenn Du Dir klarmachst, wieviel bei 1mA am LDR abfällt,
kannst Du ausrechnen, ab welcher Versorgungsspannung das ganze
funktioniert. Bestimmt nicht bei 3,3V.
Mit LDRs einen leidlich grossen Helligkeitsbereich per Spannungsmessung
zu erfassen ist nicht sinnvoll möglich. Dazu ist der Widerstandsbereich
zu gross - ändert sich um 3-4 Zehnerpotenzen.
Was wesentlich besser geht: Mit dem LDR und NE555 einen Oszillator
(astabilen Multivibrator) bauen, und davon die Entladezeit messen. Die
ist direkt proportional zum Widerstandwert des LDR. Und ändert sich zwar
auch entsprechend von zig Mikrosekunden bis hunderte Millisekunden, aber
das lässt sich besser erfassen.
Hallo,
@A.K.: hmmm... sollte sich doch eigentlich auch ganz gut mit dem
Analog-Comparator des AVR machen lassen?
LDR von Ub gegen Comparator, passendes C gegen GND, 1k zum
Comparator-Pin (ich habe schon einen gut beleuchteten LDR abbrennen
sehen... ;)).
Referenz auf BandGap und dann C mit Pin als Ausgang entladen, DDR
umschalten und messen, bis der Comaparator anspricht.
Gruß aus Berlin
Michael
So geht's natürlich auch. Ich habe das mit dem NE555 gemacht, weil damit
die Leitung zwischen Controller (Keller) und LDR (draussen) beliebig
lang werden darf ohne Störungen einzufangen.
Hallo,
schon klar, aber manch einer nimmt ja heutzutage lieber einen ATiny als
einen 555...
Ich habe mein obiges Posting gerade nochmal durchdacht, ist ungünsig mit
dem Schutzwiderstand, 1k kann ein LDR schnell erreichen und dann klappt
das nicht. Ich würde also lieber ein Pin des AVR opfern, den LDR da
dran, den Comparator direkt an LDR/C. LDR-Pin auf tristate, Comparator
auf Ausgang L, dann auf Eingang tristate und LDR-Pin auf Ausgang H und
messen.
So sollten es alle beteiligten überleben, das C dürfte ja praktisch
ziemlich klein ausfallen. Müßte ich glatt mal zusammenstecken...
Gruß aus Berlin
Michael
So arg klein ist der C nicht. Beim NE555 hatte ich bei unbekanntem
LDR-Type sowohl 2,2nF als auch 100nF probiert und bin bei 100nF
geblieben, damit ich im prallen Licht deutlich unterhalb von MHz bleibe.
ok,
ich merk schon das geht hier etwas weiter als mein Horizont erlaubt
(BandGap , Ozillator, astabiler Multivibrator) ;-).
Ich möchte nur eine halbwegs genaue Lichtmessung durchführen. Einfach
den LDR an den ADC des µC wurde mir oben gesagt, wäre zu ungenau.
Deswegen dachte ich mir, dass ich es wohl mit der konst Stromquelle
versuchen muss.
Gibt es denn eine andere "einfache" Möglichkeit zur Messung der
Lichtstärke, vielleicht smart-sensoren, wie bei
Temperatursensoren(dallas mit 1-wire)?
@Michael
Wenn ich doch die Spannungsversorgung erhöhe, sagen wir mal auf 5V, und
die ADC-Spannung, die dann unter Umständen über 3,3V (3,3V max des ADC
im µC) sein kann, über einen Spannungsteiler auf meine maximale
"helligkeit" runterbreche, kann ich doch eine kontst Stromquelle
benutzten?
ich habe es so verstanden, dass man mit dem R1 aus deiner Zeichung den
Strom einstellen kann. An R1 fallen die 1,6V wie bei der Diode ab. Ist
es denn nicht so, wenn die Spannung an dem LDR berechnung will,dass ich
das über dem Maschensatz ausrechnen: Uldr=5V-Uled-Ube?
"Beispiel: LDR recht wenig beleuchtet -> 100k (bei Dunkelheit habe die
meist mehrere MOhm), erwartete Meßspannung z.B. 2,5V -> sind 2,5V/100k =
0,025mA = 25µA."
Mit ist schon klar, das dort 25µA fliesen, aber ist nicht das ziel der
konst stromquelle dort 1mA fliesen zu lassen bzw. wo ist da mein
Denkfehler?
Ich weiss viele viele Fragen,.....
Rechne mal mit Hellwiderstand 500 Ohm, Dunkelwiderstand 5 MOhm.
Egal was für einen Strom du verwendest, entweder kriegst du bei Licht
Spannungen um Mikrovolt-Bereich, oder im Dunkeln zig Volt. Und eine
dafür Messbereichsumschaltung mit verschiedenen Widerständen vgl.
Multimeter zu implementieren, ist m.E. offensichlicher Unfug.
Ein LDR mit Spannungsteiler (oder auch Stromquelle) eigent sich nur, um
eine Schwellwertmessung durchzuführen. Beispielsweise um ein Gartenlicht
helligkeitsabhängig ein- oder auszuschalten. Für mehr ist das nicht zu
gebrauchen.
Mit LDR ist eine Zeitmessung der richtige Weg.
Andere Möglichkeiten
- Der TSL 230 (235??) wandelt Lichtintensität in Frequenz (ich glaube
proportional)
- Der Typ TSL (240..260???, musst Du googeln) wandelt Lichtintensität in
Spannung.
- Mit einer LDR- C Reihenschaltung kannst Du in Bascom sehr leicht die
Ladezeit des Kondensators über den LDR messen, klappt aber nur bis
10KOhm beim vorgeschlagenen C=100nF. Wenn Du also auf sehr kleine
Lichtmengen verzichtest (ab R>10KOhm), ist dies eine einfache Lösung.
Bascom-Befehl: Getrc(..)
Inwieweit diese Möglichkeiten Deinen Messanforderungen genügen, weiß ich
nicht. Relative Helligkeitsvergleiche sind mit der 3.Methode superleicht
zu realisieren.
Hallo,
@A.K.: Du hast völlig recht, mit dem LDR aus der Kramkiste
(Dunkelwiderstand > 2M, direkt an einer Leuchtstoffröhre < 100 Ohm)
komme ich erst mit 1µ auf sinnvolle Capturewerte bei 8MHz Takt.
Ist vermutlich auch nicht das günstigste Exempla dafür bzw. ich solle
eine eine Lochblende davor machen, wenn mich Dunkelheit nicht so sehr
interessiert. Andererseits quäle ich gern (privat) AVRs, bei 1,23V am C
(BandGap) und der Schaltfolge erst den LDR + Pin nach GND legen und dann
den Comparator, sollte das nichtmal so schlimm sein, kann ja dazwischen
noch etwas warten, dann ist der C über den LDR schon merklich entladen.
Ist zumindest eine Möglichkeit, mit nur 2 Bauteilen (LDR und C) und 2
Pins am AVR einen großen Bereich Helligkeit über Software zu erfassen,
wenn es Dunkel wird, muß eben der Prescaler umgeschaltet werden, wenn
der Counter überläuft, wieder zurück.
@Rainer:
>Mit ist schon klar, das dort 25µA fliesen, aber ist nicht das ziel der>konst stromquelle dort 1mA fliesen zu lassen bzw. wo ist da mein>Denkfehler?
Damit dort weiter 1mA fließen, muß die Konstantstromquelle aber dann
auch die nötige Spannung liefern können. Das wären im Beispil dann bei
100k/1mA = 100V...
Die Stromquelle müßte an den LDR also 100V anlegen, dann würde weiter
1mA fließen. Deren Betriebsspannung müßte also höher als 100V sein und
außerdem hättest Du dann 100V über dem LDR zum Messen, nutzt Dir also
nichts.
Zu meiner Version (gerade mal getestet):
LDR an einen Portpin, anderes Ende den - Eingang des Analog-Comparators,
von dort ein Kondensator nach GND. Werte siehe oebn...
Jetzt beide Pins auf Ausgang mit L-Pegel. Damit ist der Kondensator
kurzgeschlossen und Entladen.
Den Comparator so einstellen, daß er an seinem + Eingang die interne
Bandgap-Spannungsquelle benutzt und daß er den Capture von Timer 1
triggert.
Zum Messen jetzt Timer 1 Prescaler setzen und Counteregister auf 0
setzen.
Den Comparator-Eingang auf Eingang programmieren und den Pin, wo der LDR
allein dranhängt, auf H setzen.
Jetzt wird der Kondensator über den LDR aufgeladen, das dauert je nach
Helligkeit verschieden lange. Wenn die Spannung am Kondensator höher
wird als die der Bandgap-Quelle, löst der Comparator ein Capture des
Timers aus, setzt das Captureflag und Du holst Dir den Wert aus dem
Capture-Register ab, Das ist Deine Helligkeit...
Jetzt den Timer stoppen, den Pin mit dem LDR auf L setzen, jetzt wird
der Kondensator über den LDR entladen. Wenn das C sehr groß ist, etwas
warten, dann den Comparator + Eingang auch als Ausgang L setzen, damit
der C richtig entladen wird.
Inzwischen kannst Du über den Meßwert nachdenken lassen, wenn neu
gemessen werden soll, geht es wieder wie oben von vorn los.
Alles nötige zur Programmierung ist im AVR-Datenblatt zu finden, ich muß
jetzt erstmal weg, kann aber nachher mein Testprogramm und Testschaltung
noch hier reinstellen...
Gruß aus Berlin
Michael
> komme ich erst mit 1µ auf sinnvolle Capturewerte bei 8MHz Takt.> wenn es Dunkel wird, muß eben der Prescaler umgeschaltet werden
Ich habe das an einem LPC2000 dran. 32-bit Timer mit 59MHz Takt sind
dafür ganz praktisch ;-).
Hallo,
ich habe mich bei elko umgeschaut. Dor fand ich diesen beitrag
(http://www.elektronik-kompendium.de/sites/slt/0210253.htm).
Wie kann ich den Spannugsabfall am RC messen?, denn diese muss ich mit
dem ADC des µC bearbeiten. Wenn ich den ADC oberhalb des Rc anlegen,
messe ich die Spannungsabfall der ganzen Schaltung, und nicht die des
Rc.
Hallo,
indem Du meine Schaltung von oben nimmst, die ist deshalb andersrum mit
einem pnp...
Ob Du 2 normale Dioden (Uf ~ 1,4V) nimmst oder eine rote LED (Uf ~ 1,6V)
ist prinzipiell egal.
PS: welchen AVR willst Du nehmen (ich kann Dir nur Software für AVR
hinlegen, mit PIC usw. habe ich nichts am Hut).
Mega8/16/32 oder 90S8515/Mega8515/Mega162 oder Tiny2312 liegen irgendwo
greifbar.
Was willst Du zum Testen mit den Daten machen? Gibt es da schon was
(Display oder so) oder über UART zum PC schicken?
UART (bei den Megas) kann ich reinhängen, dann welcher AVR-Takt und
welche Baudrate?
Mir ist da nämlich eine ganz andere Idee gekommen, wofür ich das
gebrauchen kann, es ist also insofern kein Aufwand für mich.
Gruß aus Berlin
Michael
Ich habe eine leider einen LPC2148. Die UART<=>PC funktioniert.
Mit der Software habe ich nicht so grosse Problem wie mit der Elektronik
;-).
Die Daten, die vom ADC des LPC über eine Uart gesendet werden, werden in
einer GUI, die in Java geschrieben ist, ausgegeben. Ich weiss, dass für
Elektrotechniker Java ein "no go" ist. Jedoch ist es schnell zu
programmieren.
In deiner Schaltung dient R1 zur Einstellung des Strom(I3), der durch R1
bzw. R3 fliesst.
Uled=1,6V
Ube=0,65V
I3=1mA
Bei einem mA heißt das: Ur1=Uled-Ube => R1=(Ur1-Ube)/I3=ca.1K
Ich habe max. 12V zu Verfügung damit könnte der LDR maximal:
R3_max laut dem Link von elko (oben): R3_max=(Ub-U1)/I3=11K gross
werden.
Wie du schon gesagt hast, wenn es dunkel ist, sind es mehere Mohm.
Was würde den passieren wenn der LDR größer wird als max. Die
Stromquelle würde einbrechen, aber was hat das für Auswirkung auf die
ADC-Messung?
Wenn es du also partout mit dem ADC machen willst, pass auf: Wenn bei
den LPCs einer der Pins vom ADC >3,3V wird, messen alle ADC-Kanäle
Unfug.
Ich wüsste übrigens gern, was das mit der Konstantstromquelle soll.
Linear wird der LDR dadurch m.E. auch nicht.
Hallo,
wenn ich mich jetzt nicht furchtbar irre, hat der Stromverlauf einer
Fotodiode im Elementbetrieb eine ziemlich gute logarithmische Kennlinie.
Also recht niederohmigen Widerstand über eine Fotodiode und die
Fotospannung messen. Irgendwo gab es da mal was drüber...
Hat den Vorteil, daß über einen recht großen Bereich der Helligkeit
gemessen werden kann und vermutlich den Nachteil, daß bei wenig Licht
auch sehr wenig oder garnichts bei rauskommt.
Gruß aus Berlin
Michael
@A.K. hab dies unter Anderem auch hier gelesen. Ich wüsste auch nicht
anders ,wie man es machen könnte, den in den Datenblätter zu ldr stehen
durch die Werte zu R10,R10,R01,R05,Ton,Toff, weder eine Formel noch
sonst was
Linearisierung: Zeit eines über LDR geladenen oder entladenen
Kondensators messen und davon den Logarithmus nehmen. Mit den
32bit-Timer-Captures eines LPC2000 bleibt dir ein Überlauf erspart, das
von Michael erwähnte Spiel mit dem Prescaler entfällt daher.
So grad gestern realisiert mit LPC2129 und NE555-LDR-Oszillator. Da der
LPC keinen Analog Comparator hat, ist Michaels Variante nicht direkt
anwendbar (einen NE555 durch eine 8pin-ATTiny zu ersetzen mag Spass
machen, muss aber nicht wirklich sein - der könnte dann zwar auch die
Linearisierung übernehmen, aber Logarithmen rechnen kann der LPC
besser).
Wenn du es hinkriegst, mit ADC einem LDR den Wert für einen leidlich
grossen Helligkeitsbereich zu entlocken, gib Laut. Interessiert mich
auch. Vielleicht indem ein Logarithmierer per OPV den LDR linearisiert?
(bitte nicht erst nehmen).
>Ich wüsste übrigens gern, was das mit der Konstantstromquelle soll.>Linear wird der LDR dadurch m.E. auch nicht.
Fotowiderstände sind weitgehend linear, verglichen mit zum Beispiel
Fototransistoren. Die Konstantstromquelle soll also nicht den
Fotowiderstand linearisieren sondern nur einen "idealen" Spannungsteiler
realisieren. Es gibt übrigens auch Fotowiderstände mit lediglich 100k -
200k Dunkelwiderstand. Die könnten mit dem ADC noch erfasst werden.
Konstantstromquellen mit OVs können auch recht genau sehr kleine Ströme
liefern.
@A.K.
Ich habe mir den Quellcode, sowie die Zeichnung angeschaut. Ich werde es
mal versuchen.
@Travel Rec.
Oh, da habe ich wohl was nicht ganz verstanden. d.h. also, dass nur den
idealen Spannungsteiler eine höhere Meßgenauigkeit erreicht wird?