PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Gelöst: ADC für Anfänger - wie Fotosensor anschließen?



mathias172
26.03.2008, 00:41
Hallo liebe Leute,

ich taste mich mal wieder langsam zum nächsten Ding vor und hänge gerade beim ADC.

Ich habe an mein STK500 mit ATMeg32 einen Fotowiderstand angeklemmt. Dieser hat einen gemessenen(stammt aus einem Sortiment) Widerstand von fast 2000kOhm bei Dunkelheit und geht fast auf Null wenn Licht auftrifft.

Ich habe folgendes Programm leicht aus dem Wiki angepasst:

$baud = 57600
$crystal = 8000000
$regfile "m32def.dat"
Config Porta = Input
Config Adc = Single , Prescaler = Auto
Start Adc
Dim W As Word , Channel As Byte

Do

W = Getadc(7)
Print "ADC-Pin " ; ": Wert " ; W
Waitms 500

Loop
End

Ich kann mich auf den Kopf stellen aber ich bekomme keine unterschiedlich schwankenden Werte - egal ob hell oder dunkel.

Ich habe den Fotowiderstand einfach zwischen AD-Eingang (in meinem Fall die Sieben) und VTG oder GND angeschlossen.

Wo gehört er eigentlich hin, an Masse oder VTG? Mir fiel auch auf, dass wenn kein Fotowiderstand angeschlossen ist der Wert der Ausgabe sich auf etwa 480 einpegelt.

Was mache ich falsch oder was habe ich übersehen? Die Wiki hilft mir leider nicht weiter und das Forum habe ich gestern Nacht abgesucht und bin nicht wesentlich weiter gekommen.


Beste Grüße,
Mathias

sehreilig
26.03.2008, 06:39
Hallo, du musst noch einen 2. festen Widerstand hinzufügen. Wenn du den Fotowiderstand mit VTG und dem Eingang des ADC verbindest, so muss der zusätzliche Festwiderstand vom ADC nach Masse gehen.
Der Widerstandswert sollte so um 47 KOhm sein.
So erhältst du eine Reihenschaltung und der Spannungswert am Festwiderstand ist abhängig vom Widerstandswert des Fotowiderstandes..
Grüße von Jens

vklaffehn
26.03.2008, 10:25
Moin!
Mit dem ADC werden Spannungen gemessen, wenn Du also einfach einen Widerstand vom ADC an Vcc legst, fällt ja immer die gleiche Spannung am Widerstand ab, egal, wie groß dieser ist. In Deinem Fall mußt Du einen Spannungsteiler aus einem festen und Deinem veränderlichen Widerstand bauen, also z.B. von VCC über den Fotowiderstand an den ADC und von da mit einem normalen Widerstand an Masse.
MfG
Volker

mathias172
27.03.2008, 01:12
Dank Euch beiden! Das erste Posting brachte eine Reaktion, das zweite die Erleuchtung \:D/

Das sind so Kleinigkeiten, die man am Anfang nicht sieht oder versteht, die aber selbstverständlich sind sobald man es einmal gesagt bekommt.

Ich hoffe, ich kann der Gemeinde hier bald mal etwas durch Programmierhilfe zurückgeben. Bis dahin werde ich aber kräftig weiter mit Grundsatzfragen kommen ;)

Gruß und gute Nacht!

sehreilig
28.03.2008, 18:16
Hallo Mathias, sorry, ich hatte einen Fehler in meiner ersten Antwort, den ich eben berichtigt habe. Du hast ihn ja bemerkt, wie aus deinem letzten Beitrag hervorging.
Grüße von Jens

cni
23.07.2009, 21:14
Hallo,

mal eine Frage dazu, wie wandelt man nun den bekommen Digital-Wert in z.B. Lux oder mcd um?

Besserwessi
23.07.2009, 22:32
Die LDRs sind nicht besonders linear und auch nicht gerade Temperaturunabhängig. Man wird daher vermutlich nicht um eine Tabelle mit einigen Kalibrierwerten herumkommen. So wirklich zum messen sind LDR eher weniger geiegnet. Da sollte man besser eine Fotodioden mit passendem Filter nehemen.

Wenn schon wird man mit dem LDR Werte in Lux kriegen, denn man mißt das einfallende Licht. Für die Helligkeit einer Lichtquelle müßte man dann noch den Abstand mit eingehen lassen.

cni
23.07.2009, 22:55
Der LDR soll ja nur grob die Sonnen-Einstrahlung in ein Gewächshaus messen und als Wert ausgeben. Nur nicht den Digital-Wert (0-1024) sondern eben eine lichttechnische Messgröße. Und die auch nich ganz genau!
Was ist da am besten (Lux, Lumen, mcd)?