www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Kapazität messung ohne 555 oder anderen Timer


Autor: Yalda (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute
die Kapazität zwischen 1nf und 10nf möchte ich mit einen Atmega48 
mikrocontroller messen aber ohne einen externalen Timer. Einfach mit 
zwei Widerstände. Schauen Sie bitte den Schaltplan. Kapazität von 
gezeichneten Kondensator ist zu messen. Am anfang werde ich PB0 als 
Eingang definieren, Strom fließt Über R2 und C, und Kondensator wird 
eladen,(Wegen ein internal widerstand für 1M fließt kein strom in mikro 
rein). Ladezeit wird mit dem Timer0 gemessen.Dann wird PB0 als Ausgang 
definiert und da 1M nicht mehr da ist, wird der kondensator über 1K 
widerstand entladen. Gemessende Kapazität soll dann später auf einen 
LCD(PORTC)gezeigt werden. Meine Frage ist ob es möglich ist. Sieht 
jemand irgend ein Problem in dem Fall?
Grüße
Yalda

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Ladespannung würde ich nicht fest an Vcc legen, sondern an einen 
anderen µC Pin. Dann kann man laden - entladen dadurch steuern, dass man 
diesen (Ausgangs-) Pin auf 0 oder 1 legt.

Autor: Düsentrieb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das geht schon...
wenn du die messung nicht extrem genau brauchst, so gehts noch 
einfacher:
nur der c an nen pin :
out:0 -> c entladen
in+pullup -> c lädt auf
poll/zählschleife -> zeit messen, bis pin auf hi geht
fertisch

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Funktioniert präziser, wenn man den Analog Comparator verwendet.

Autor: Yalda (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
erstmal danke für alle Antworten.
Aber wird nicht viel Strom beim Entladen auf micro fließen besonderes 
wenn man kein außeren Wiederstand benutzt?
Yalda

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So geht's besser:
Pin1 ---------
             |
             R
             |
Pin2(AC) ----+
             |
             C
             |
            GND

Autor: Düsentrieb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
im prinzip ja..
bei 10nf ca 100ma 1us lang...das macht dem port keine sorgen
aber dir..? dann mach 100 ohm an den port, somit max. 50ma möglich, das 
entspricht dann dem db

Autor: Yalda (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Warum ist es nicht genau? Ich brauche die Genauigkeit von "0.001". Geht 
es?

Autor: Yalda (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dass heißt in piko bereich.

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
0.001pF oder 0.001% oder 0.1%? Wenn relative Genauigkeit: wie weit 
runter? 0,1% von 2pF würde interessant.

Autor: Yalda (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das heißt zum beispiel 2,004 nf

Autor: pq (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe sowas mal gemacht.
Genau wurde dann, als ich 2 Kondensatoren verwendet habe. Den, den Du 
messen willst, und einen Referenzkondensator.

Einmal wurde der eine, einmal der andere aktiviert, indem er auf Masse 
geschaltet wurde.

Habe ich zb 1.0nF als Referenz und messe ich einmal 3ms und beim 
Messkondensator 4.5ms, so ist der zu messende:

4.5/3*1nF=1.5nF

pq

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Yalda schrieb:

> Das heißt zum beispiel 2,004 nf

Also 0,1% bis runter auf 1pF, also 1,001pF?

Autor: Yalda (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein, Ich möchte die Kapazität auf meinem LCD so schreiben. 1,001 nF 
oder 1001 pF. Jetzt sehe ich die Kapazität ungenau in mein LCD, dass 
heißt die letzte Zahlen bleiben nicht konstant in LCD und ändern sich 
ständig. Zum Beispiel : 1,001 nf nach 100ms 1,003 nf und... . Ic wollte 
entdecken ob es mein Quellcode Problem ist oder Hardwareproblem. Bist du 
Fehlerrechnung Lehrer? Ich bin nicht gut in Fehlerrechnung, deswegen 
kein Ahnung 0,1% 0der 0.001 ;)

Autor: Klaus De lisson (kolisson)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo yalda,

hier ein project, wo das so gemacht wird:

http://www.aplomb.nl/TechStuff/Elmcie/Elmcie.html

gruss

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei Genauigkeiten gibt es in solchen Fällen immer zwei Angaben: eine 
relative Genauigkeit und eine absolute. Also beispielsweise 0,1% vom 
angezeigten Wert +/+ 10pF. Denn schon durch den Anschluss einen 
Kondensators an den Controller bist du mit einer parasitären und wohl 
kaum sonderlich konstanten Kapazität von mindestens 10pF dabei. Das 
macht eine Angabe von 1,001nF eher fragwürdig.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.