adc schwankt (ATMega16)

#1102144
Lesenswert?

Hallo ich habe ein seltsames Verhalten am ADC, das ich mir nicht 
erklären kann. Vielleicht hat ja jemand einen Tip?

Also ich benutze Avcc. mit 47Ohm gegen Vcc und 100nf gegen Gnd. Wie im 
tut beschreiben. Die ADC Werte kommen von einem cny70.

Was mich nun wundert ist folgendes Verhalten:

Wenn ich mir die ADC Werte ausgeben lasse schwanken die Werte um ca. 100 
Stellen (bei gelichbleibender Umgebung).

Wenn ich nun mit dem Multimeter die Spannung nachmesse bleiben plötzlich 
die ADC Werte konstant (schwanken nur noch um +- 1) woran könnte das 
liegen???

Hat jemand ne Idee?

Gruß Cs
#1103496
Lesenswert?

Hallo also mein adc hat 10 bit Auflösung -> 1024 Werte, bzw. Stufen -> 
die Analoge Spannung wird durch eine Zahl dargestellt und dieser 
Zahlenwert schwankt um 100

                         |-----------|
Vcc----R=47Ohm--o--------|AVcc   ARef|---C=100nf----|GND
                |        |           |
               C=100nf   |   AVR     |
                |        |           |
               GND       |        GND|---|GND
                         |           |
                         |        AD0|-----Signal CNY70
                         |-----------|

So hier die erweiterte Schaltung das CNY 70 Signal wird noch über einen 
BC485 verstärkt bevor es an den AD0 Anglegt wird.
#1103507
Lesenswert?

Nö ich lese ein wort das passt schon ich denke nicht, dass es am 
Programm liegt, ich habe Werte über den gesammten Bereich. Nur leider 
schwanken diese so sehr...

Hier noch der Bascom Code:

Dim Analogval As Word
'adc settings
Config Adc = Single , Prescaler = Auto , Reference = Avcc

Start Adc

Enable Interrupts

Do
  Analogval = Getadc(0)
  Waitms 800
  Locate 1 , 1
  Lcd "value at adc0:"
  Locate 2 , 1
  Lcd Analogval
  Waitms 800
  Cls

Loop
End
Gast #1103529
Lesenswert?

Der CNY70 ist doch ein Koptoppler, äh Optokoppler, der auf der 
Empfängerseite nur einen Transistor hat. Zeige mal die Schaltung, mit 
der
Du das Signal aufbereitest. Ich habe im Datenblatt gesehen, daß der 
Kollege
seinen Kollektorstrom bei einer Distanzänderung von 2mm von ca 0,5 auf
1mA verändert. Wenn Du im Kollektorkreis einen Widerstand von 4,7K 
hättest,
würde die Spannung über diesem zwischen 2,35 und 4,7 Volt liegen.

Da muß es ganz schön erschütterungsfrei sein, dmit ein stabiler Wert 
kommt.

MfG Paul
#1103588
Lesenswert?

Okay danke erstmal für den Hinweis.

Ja... die Spannung am Eingang schwankt ja auch ein wenig allerdings nur 
um 0,05V bis 0,1V und nicht um 0,5V.

Bei einer Auflösung von ca. 0,004V je Stufe -> Sollte bei einer 
Schwankung von 0,05 V die Abweichung bei 12-13 Stufen liegen. Bei ca. 
0,1 V Schwankung am Eingang bei ca. 25 Stufen.

Also wo kommen dann die restlichen Fehler her? Immerhin schwanken die 
Werte mit der Batterie jetzt nur noch um 50, was allerdings immer noch 
sehr schlecht ist - wie ich finde-
#1103622
Lesenswert?

Habe jetzt den ad0 mal ein ein 10kPoti gehängt... -> einwandfreie Werte 
schwanken maximal um eine Stufe.

Kann jetzt höchstens noch sein dass der Transistor defekt ist..

Oder ich schalt mal noch am Signalausgang nen Kondensator gegen GND, 
dann sollte doch das Ausgangssignal nochmlas geglättet werden oder? Am 
besten doch nen kleinen damit er nicht zu viel verfälscht 20 nf oder so?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren