Hallo, folgendes Problem: ein C mit 47nF wird über einen Widerstand von +Ub 5V aufgeladen. Das C hängt am Analogcomparatoreingang AIN1 (-) eines tiny2313, AIN0 (+) ist auf die Bandgap-Spannung gesetzt (1,23V). Counter 1 läuft (im Moment) ohne Vorteiler. Ich suche den rechnerischen Zusammenhang zwischen Widerstandswert und Zählerstand, wenn der Comaprator den Capture auslöst. Zeitkonstante ist ja klar, aber wie berechnet sich die bei Ladespannung 5V bis zum Erreichen der 1,23V??? Ich könnte es von Capturewert zurückrechnen, da die ganze Sache aber noch ein paar Ungenauigkeiten hat, ist mir das erstmal zu unzuverlässig. Letztlich soll das Ding Widerstände messen, nicht sonderlich genau, nur zum Sortieren von Standardwerten. Hat da jemand die passende Formel zur Hand? Danke im voraus. Gruß aus Berlin Michael
Hallo, @???: naja, da bin ich durchaus vorbeigewandert... Mein Problem ist eher, daß meine Schulzeit schon knapp 40 Jahre her ist und ich mir schon an der Umstellung der Formel etwas die Ohren breche und einfach hoffe, jemand hat das "mal schnell" drauf. Rs muß doch eine halbwegs einfache Näherung zwischen Widerstandswert und Zeit unter den gegeben Umständen geben oder irre ich mich da schon? Gruß aus Berlin Michael
Näherungsweise kannst du ja "Tau" verwenden. Also R mal C. Tau ist die sogenannte Zeitkonstante die z.B. angibt wann dein Kondensator zu 63% geladen ist. Das ganze ist zwar eine Expotentialfunktion aber du kannst bis zum Zeitpunkt Tau durchaus einen linearen Zusammenhang von Spannung und Zeit annehmen. Ist zwar mathematisch nicht richtig aber du hast eine einfache Näherung zum Kopfrechnen.
Eine Näherungslösung ist diese: Der Widerstand R, könnte zum Beispiel 10 kOhm sein, liegt während des Aufladevorgangs im Mittel an etwa 4,4 V. Anfangs 5,0 V, am Ende 3,77 V. Dann ist der Strom durch R gleich 4,4 V / R, hier also 0,44 mA. Mit dem Strom wird Dein C aufgeladen. Q = C * U, also die Ladung des vollen Kondensators ist 47 nF * 1,23 V = 57,8 nC. Diese Ladung muss der Strom nun liefern. Q = I * t, also t = Q / I. 57,8 nC / 0,44 mA = 131 us. Mit anderen Werten für R ganz ähnlich.
Könnte mal jemand meine Ableitung kontrollieren (d ist das Tau vom Wiki Artikel) U(t) = Umax * ( 1 - e^(-t/d)) U(t) / Umax = 1 - e^(-t/d)) U(t) / Umax - 1 = -e^... 1 - U(t)/Umax = e^(-t/d) ln( 1 - U(t)/Umax ) = -t/d d = ln( 1 - U(t)/Umax ) / -t | d = R * C R = ln( 1 - U(t)/Umax ) / (-t*C)
Hallo, @Currywurst: das ist ja gerade mein Problem... Tau sagt mir zwar, wann der C auf 63% aufgeladen ist, also auf 3,15V. Mein Problem ist nun, sozusagen "Tau" für 1,23V zu bestimmen. Weil es eine Exponetialfunktion ist, verzweifle ich daran etwas. Es müßte doch ein R C x gegen, bei dem x der Faktor ist, der nahe genug an 1,23V (24,6%) rankommt. Ich bekomme es aber irgendwie nicht gebacken. Gruß aus Berlin Michael
>d = ln( 1 - U(t)/Umax ) / -t
müsste doch d = -t / ln(1-U(t)/Umax) heißen, oder? Also Zähler und
Nenner vertauschen.
So sollte es stimmen:
Ub ist die Betriebsspannung mit der der Kondensator geladen wird, Uref die Spannung, an der der Komparator anspricht, tau die Zeitkonstante RC. Ah, endlich konnte ich die [math]-Funktion des Forums einmal sinnvoll anwenden :)
Andrew wrote: >>d = ln( 1 - U(t)/Umax ) / -t > > müsste doch d = -t / ln(1-U(t)/Umax) heißen, oder? Also Zähler und > Nenner vertauschen. Ja du hast recht (ich hatte vorher nach t aufgelöst, bevor ich gemerkt habe, dass wir ja eigentlich nach R gehen und ich das R über d kriege) d = -t / ln( 1 -U(t)/Umax) für d einsetzen R * C = -t / ln( .... ) -t R = ------------------------ C * ln( 1 - U(t)/Umax) Aber das muesste es jetzt sein. klingt auch plausibel: Je länger die Zeit, desto größer war der Widerstand da 1 - ... kleiner 1 ist, ist der ln davon negativ, daher muss t auch negativ sein, damit der Bruch positiv wird.
also: R = -t/[C*ln(1-U(t)/Umax] und mit eingesetzten Werten: R= 7.535 * 10^7 * t
Hallo, @Tom: das sieht erstmal sehr interessant aus, zumal der Weg µC-günsig wäre. Das spiele ich mal durch. @Karl heinz Buchegger: ich nicht. ;))) Sind der Sache ist es, ohne Aufwand eine "Widerstands-Sortierhilfe" zu bauen. Ich kann also gewisse Restfehler entweder ignorieren, kann sie aus einer Tabelle kompensieren oder mit einer E-Reihe im Flash abgleichen. Deshalb gefällt mir auf Anhieb auch Toms Ansatz so gut. Gruß aus Berlin Michael
Hallo, Ihr seit einfach zu schnell. :)) Ich muß das wohl alles erstmal in Ruhe lesen. :) Gruß aus Berlin Michael
Michael U. wrote: > Hallo, > > @Tom: das sieht erstmal sehr interessant aus, zumal der Weg µC-günsig > wäre. Das spiele ich mal durch. > > @Karl heinz Buchegger: ich nicht. ;))) > > Sind der Sache ist es, ohne Aufwand eine "Widerstands-Sortierhilfe" zu > bauen. Ich kann also gewisse Restfehler entweder ignorieren, kann sie > aus einer Tabelle kompensieren oder mit einer E-Reihe im Flash > abgleichen. > > Deshalb gefällt mir auf Anhieb auch Toms Ansatz so gut. Wo hast du das Problem? Falls du den Rechenprobleme befürchtest: der ganze ln( ... ) ist eine Konstante, da U(t) ja konstant ist ( = deine Comperator Spannung) Aber: ist ok. Meine kleinen grauen Zellen brauchten sowieso etwas Gymnastik :-)
>>Sind der Sache ist es, ohne Aufwand eine "Widerstands-Sortierhilfe" zu >>bauen. Ich kann also gewisse Restfehler entweder ignorieren, kann sie >>aus einer Tabelle kompensieren oder mit einer E-Reihe im Flash >>abgleichen. Ist die Spannung an der R liegt groß gegenüber den 1,25 Volt dann kannst du ja lineare zusammenhänge annehmen. Der Widerstand ist ja für einen fast konstanten Spannungsabfall eine fast konstante Stromquelle. Für das sortieren in einer E12 Reihe reicht es bestimmt. Nehme mal an die Zeit T bis zum erreichen von 1,25Volt ist proportional zu R. Bei bekannter Kapazität C ergibt sich ein fast linearer zusammenhang von T und R. Der Rest ist Dreisatzrechnung und ausprobieren.
Er braucht doch keine lineare Näherung, die Rechnung ist auch mit der Exponentialfunktion einfach aufzulösen und endet in einer Multiplikation mit einer Konstanten.
> Er braucht doch keine lineare Näherung, die Rechnung ist auch mit der > Exponentialfunktion einfach aufzulösen und endet in einer Multiplikation > mit einer Konstanten. Kommt aber das gleiche dabei raus. Konstante von Andrew: R= 7.535 * 10^7 * t d.h. t = 132,7 us bei R = 10 kOhm Die lineare Näherung ergibt 131 us für 10 kOhm. Diese Konstante muss nun Grundlage für die Programmierung sein - egal wie ermittelt. Bei dem Projekt wäre noch zu bedenken, dass Kondensatoren große Toleranzen haben können. Damit wird die Messung sehr ungenau. Kann man aber durch Kalibrieren mit einem bekannten Widerstand rausrechnen.
Hallo, @Tom: ok, das nehme ich dann mal, Danke nochmal an alle. Alles daran hat Toleranzen, Bandgap-Spannung, Betriebsspannung, Kondensator. Wie Du schon richtig sagst, kann ich das dann aber mit für mich ausreichender Genauigkeit rausrechnen. Gruß aus Berlin Michael
Wegen der e-Funktion dauert es eigentlich unendlich lange, bis C voll ist. Für die Praxis nimmt man an, das C nach 5 Tau voll ist.
Hi! Einen Gedanken hätte ich noch. In Anlehnung an Tom, den Rx aber in einen Stromtreiber einsetzen und mit Konstantstrom laden. Die e-Funktion ist dann komplett raus. t= C*dU/I (gerade um U0 rum wirkt die e-Funkt. doch heftig) Wenn du den Stromtreiber geschickt aufbaust kann die gemessene Zeit direkt dem Rx zugeordnet werden. Viel Erfolg, Uwe .
Hallo, @GeraldB: der Fall tritt ja nicht auf. Ladespannung am Widerstand ist Ub des AVR, also 5V. Schaltpunkt ist die Bandgap-Spannung also rund 1,23V. Weiter wird nicht geladen, nach dem Capture wird das C erst über den Messwiderstand und dann durch L am AVR-Pin entladen. Ist bei kleinen Widerständen und damit großen nötigen Kondensatoren für sinnvolle Capturewerte sowieso nahezu AVR-Mißhandlung... @Uwe: Im Moment besteht der Testaufbau aus 4x 7-Segment im Multiplex mit Stellentriebern und Segmentwiderständen, dem Tiny2313, 2 Cs und den Meßklemmen. Wenn irgendwie möglich, will ich es dabei belassen, irgendwie bin ich gerade auf dem "Minimal-Trip". ;))) Gruß aus Berlin Michael
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.