Hallo, I am looking for a circuit that forms the average of a current over a given time (like as long as someone presses a push-button). Does anyone knows such a circuit? Please tell me the advantages and disadvantages, too. The reason why I am asking is because I have to develop a device that can measure a very low current and therefore it needs a very small resolution (0,001uA) but also has got a wide measuring range (10uA) - actually it should be able to measure up to 100mA but I divided the range in smaller pieces. Usually I could choose a clock-frequency for the uC independently from the resolution of the ADC but building a average joins these two separate aspects together. So, I am now thinking about using a ADC with a very high resolution, which means that I can do all the calculating within the uC, or building the average analog and using a ADC with a ordinary resolution of (10 or 12bit). Of course I have considered the solution to integrate first and then diving within a uC-program. But as I have to develop this device for my thesis I want to know something about every of the three solutions. And thats why I am especially asking now for the complete analog solution. Many thanks in advance! Gabriel
:
Verschoben durch Moderator
Ok, und hier noch einmal in Deutsch: ------------------------------------------------------------------------ - Ich suche nach einer Schaltung die den Mittelwert eines Stromes über eine bestimmte Zeit bildet. Bsp: Für die Dauer eines Tastendruckes wird der Mittelwert des Stromes in einem einzelnen Kabel gebildet. Es würden mich natürlich auch die Vor- und Nachteile der Schaltung interessieren. Warum ich frage: Ich soll ein Gerät entwickeln das sehr geringe Ströme messen kann. Dazu benötigt es eine sehr geringe Auflösung (0,001uA). Leider soll das Gerät gleichzeitig über einen relativ großen Messbereich verfügen (10uA). - Tatsächlich verfügt es noch über einen größeren Messbereich (bis 100mA) den ich bereits in Abschnitte aufgeteilt habe. Das Gerät benötigt auch einen Mikrocontroller, dem dieser Mittelwert über einen Analogen Eingang zugeführt werden soll. Gewöhnlich könnte man die Auflösung des ADC und den Takt des Mikrocontrollers getrennt festlegen. Doch da der Mittelwert beides miteinander verbindet muß ich mir nun überlegen ob ich mich für eine analoge Mittelwertbildung (hohe zeitliche Auflösung) mit einem gewöhnlichen ADC (10 oder 12Bit) oder für eine Berechnung im uC (geringere zeitliche Auflösung) mit einem ADC sehr hoher Auflösung entscheide. Natürlich ist mir auch die Möglichkeit bekannt, den Strom einfach nur analog aufzuintegrieren und dann das Teilen dem Mikrocontroller zu überlassen. Ich würde aber gerne etwas über alle drei Lösungen wissen. Und in diesem Fall ist es die komplett analoge Lösung, die mich interessiert. Vielen Dank im Vorraus!
Ich wage zu behaupten, dass ein 12 Bit ADC nicht reicht. Eine Auflösung von 0.001 uA bei max. 100 mA Messbereich entspricht einer Dynamik von ca. 160 dB, in Bits ausgedrückt sind das mindestens 26 oder 27 Bit.
Tobias Plüss schrieb: > Ich wage zu behaupten, dass ein 12 Bit ADC nicht reicht. Stimmt. > Eine Auflösung von 0.001 uA bei max. 100 mA Messbereich entspricht einer > Dynamik von ca. 160 dB, in Bits ausgedrückt sind das mindestens 26 oder > 27 Bit. Aus diesem Grund habe ich ja den Gesamtbereich (0,001 uA ... 100mA) in mehrere kleine Bereiche (mit je 1:10000, d.h. je 14Bit) geteilt. ----------------------- Es geht mir hier auch nicht um den Mikrocontroller oder ADC, sondern um eine prinzipielle analoge Schaltung, die mir eine Mittelwertbildung ermöglicht. Ein Buchtitel, Link oder dgl. würde mir auch schon reichen. Selbstverständlich muss ich mich dann noch mit dem Rauschen beschäftigen. Doch wenn mir von Euch keiner eine Komplettlösung liefert - wovon ich nicht ausgehe - würde ich sagen, daß wir das bei diesem Beitrag erst einmal ausklammern.
Eine solche analoge Schaltung lässt sich aus einem R und C bauen. Allerdings ist die Zeit, über die diese Schaltung den Mittelwert bildet, fix und lässt sich nicht einstellen. Es sei denn, du verwendest ein Poti. Am einfachsten wäre es, das Signal direkt mit dem Mikrocontroller zu messen, und dann in Software den Mittelwert zu bilden. Du willst ja über die Dauer eines Tastendrucks den Mittelwert bilden. Also müsste man irgend eine Schaltung erfinden, die das Signal über die Dauer dieses Tastendrucks integriert, und nachher durch die Zeit, wie lange der Tastendruck dauerte, teilt (oder so ähnlich). In Hardware geht sowas IMO nicht, denn das RC-Glied bildet den Mittelwert immer über eine Feste Zeit, nämlich R * C.
Tobias Plüss schrieb: > Eine solche analoge Schaltung lässt sich aus einem R und C bauen. > Allerdings ist die Zeit, über die diese Schaltung den Mittelwert bildet, > fix und lässt sich nicht einstellen. Es sei denn, du verwendest ein > Poti. Warum möchtest Du einen Poti verwenden und keinen Schalter? Vielen Dank schonmal für die Antwort!
Noch ein Gedanke: Wäre denn die Komlett-Analog-Version mit dem Tiefpass und einem normalen ADC nicht bzgl. des Rauschens das einfacher zu überschauende System, als eine Integrator-OP-Schaltung vor einem (ebensolchen) normalen ADC? Rauschvermeidung an einem Tiefpass sollte doch eigentlich eine Standardfrage in der Elektrotechnik sein. - Hmm, oder vermutlich wieder so einfach, daß es leichter ist etwas über Rauschvermeidung an einem OP zu finden. ------------- Ich glaube jetzt, da ich weiß daß ich einen Tiefpass brauche, wäre ich glücklicher über Eure vergleichende Meinungen zu den 3 beschriebenen Lösungsmöglichkeiten bzgl. dem Rauschen: - Strom über 10Ohm-Widerstand direkt mit ADC sehr hoher Auflösung gemessen. - ADC niedrigerer Auflösung und Integrator (Teilen per uC) - ADC niedrigerer Auflösung und Tiefpass (Mittelwertbildung schon vor dem uC) ------------- Anmerkung: Ich denke die Temperaturkompensation kann man vielleicht erst einmal beiseite lassen. Das Gerät ist sehr klein und benötigt nicht einmal Kühlung. Der Temperatureinfluß kommt also zum geringsten Teil von der Schaltung selbst, sondern haupsächlich durch Raumtemperaturunterschiede (Büro ohne Klimaanlage). Drift? Nun vielleicht kann man den auch vernachlässigen, zumindest vielleicht bei der Tiefpassvariante (da kein zusätzlicher Halbleiter). Das Gerät wird nicht im Dauereinsatz betrieben sondern befindet sich die längste Zeit im Schrank und wird dann ab und zu mal rausgeholt oder vielleicht auch einmal über mehrere Tage oder maximal Wochen tagsüber benützt. - Andererseits sollte natürlich ein Messgerät über viele Jahre relativ ähnliche Messergebnisse liefern können. Es geht hier jedoch mehr darum momentane Unterschiede (vmtl. nur) einmal an einem System zu messen, als darum Unterschiede an diesem System über Jahre zu vergleichen. Zum Vergleich verschiedener Systeme könnte man diese ja kurz hintereinander messen, so daß der Drift beim Vergleich kaum eine Rolle spielt. Bitte korrigiert mich, wenn ich falsch liege! Bin über Eure Tipps gespannt
@Walter, Naja, wenn du einen RC-Tiefpass baust, dann ist die Zeit, über die dieser den Mittelwert bildet, Abhängig vom Produkt R * C. Wenn du für R einen Festwiderstand und für C einen Festkondensator nimmst, kannst du ja nicht über beliebige Zeiten den Mittelwert bilden. Wenn man deinen Schalter einbauen würde anstatt des Widerstands erst recht. Dann hast du einfach einen Kondensator, welcher sich ein- und ausschalten lässt, was wohl nicht so ganz das ist, was der Threadersteller wollte. Das Poti muss sein, um die Zeit festlegen zu können, über die der Mittelwert gebildet wird. Grosser Widerstand = lange Zeit, kleiner Widerstand = kurze Zeit. @Gabriel, Wie man das genau macht, hängt auch von deinem Signal ab. Ändert es sich langsam, oder sehr schnell, oder sind da irgendwelche Spikes usw. drauf. Wenn es sich nur langsam ändert, wäre eine Mittelwertbildung im uC sicher am einfachsten; das ginge aber nicht, wenn es ein sehr hochfrequentes Signal ist, denn die Abtastrate des ADC ist ja begrenzt.
Gabriel schrieb: > I am looking for a circuit that forms the average of a current over a > > given time (like as long as someone presses a push-button). Does anyone > > knows such a circuit? Do a search for: ramp generator. That's what does the non-digital solution. > Please tell me the advantages and disadvantages, > > too. It does work like a charm, but it seems to be old-fashioned.