mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 16Bit PWM mit Ripple <5uV -> Filter ?


Autor: Torsten B. (torty)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Morgen

Ich möchte gerne mit einer 16 Bit PWM die Offsetspannung (ca.3 V) eines 
Sensors kompensieren. Ich muss das Nutzsignal jedoch mit einer Auflösung 
von 5 uV messen können.

Bei 16 Bit PWM Auflösung sollte ja theoretisch 5V / 65535 = 0,76 uV --> 
0,76uV/Bit kein Problem darstellen.

Was ist aber mit verbleibenden Ripplen hinter dem Tiefpass ?
Habe ich eine Chance, die PWM so zu filtern, dass ich einen Ripple von < 
5uV habe, aber dennoch eine Einschwingzeit von ca. 10 ms ?

Der Vergleich zwischen PWM und Sensorsignal soll alle 100ms Durchgeführt 
werden.

Mit welcher Filtertechnik könnte das funktionieren ? Reicht da ein 
Sallen Key 2. Ordnung ?

Danke
Torsten

Mit welcher Filtertechnik könnte das funktionieren ?

Danke
Torsten

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Torsten B. (torty)

>Ich möchte gerne mit einer 16 Bit PWM die Offsetspannung (ca.3 V) eines
>Sensors kompensieren.

In welchem Bereich liegt die Offsetspannung? Bei 1,6V? Oder eher 0,1V.
Im letzteren Fall ist ein Spannungsteiler sinnvoll.

> Ich muss das Nutzsignal jedoch mit einer Auflösung
> von 5 uV messen können.

>Bei 16 Bit PWM Auflösung sollte ja theoretisch 5V / 65535 = 0,76 uV -->
>0,76uV/Bit kein Problem darstellen.

Kleiner Kommafehler, das sind 76µV Auflösung. Das hat aber nur bedingt 
was mit dem Ripple zu tun.

>Was ist aber mit verbleibenden Ripplen hinter dem Tiefpass ?

Er rippelt ;-)

>Habe ich eine Chance, die PWM so zu filtern, dass ich einen Ripple von <
>5uV habe, aber dennoch eine Einschwingzeit von ca. 10 ms ?

Mit genügend Filterstufen ja. Aber wozu die Eile? Den Offset verstellst 
du doch nicht dauernd. Selbst wenn der 1s zum Einschwingen braucht, 
sollte das reichen, oder?

>Der Vergleich zwischen PWM und Sensorsignal soll alle 100ms Durchgeführt
>werden.

???

>Mit welcher Filtertechnik könnte das funktionieren ? Reicht da ein
>Sallen Key 2. Ordnung ?

Wahrscheinlich nicht, es sei denn, man macht die Bandbreite SEHR klein. 
Pi mal Daumen brauchst du ein Dämpfung von 1 Million (5V/5µV), das sind 
schlappe 120dB!!!. Wenn wir mal von 8 MHZ PWM-Takt ausgehen, kommt man 
auf ca. 120Hz PWM-Frequenz. Ein Tiefpass 2. Ordnung macht 40dB/Dekade, 
für deine 120 dB brauchst du also 3 Dekaden, sprich, dein Filter müsste 
eine Grenzfrequenz von 0,12 Hz haben :-0
Ein Filter 6. Ordnung braucht nur 1 Dekade, sprich ca. 12Hz.

Klingt nicht gut. Aber generell ist eine normale 16 Bit-PWM für sowas 
eher ungünstig. Besser ist hier ein Sigma-Delta Modulator bzw. ein 
Binary Rate Multiplier. Diese erzeugen ein "verwirbeltes" PWM-Signal, 
das deutlich höherfrequenter ist als die normale PWM (bei gleichem 
Takt), dadurch ist die Filterung um Größenordnungen einfacher.

Aber wie auch immer, ein Signal mit 5uV Rauschen und weniger sauber 
hinzubekommen ist nicht ganz trivial. Da kommt e stark auf das Layout 
und die Bauteile an.

MFG
Falk

Autor: noname (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die PWM wechselt immer zwischen 0 und 1. Dadurch entsteht der Ripple. 
Vielleicht kannst Du einen digitalen Regler realisieren, der Dir die 
Offsetspannung regelt. Bei einem großen Kondensator und geringer 
Belastung der Offsetspannung müsste da relativ schnell Ruhe einkehren. 
Der Regler dürfte natürlich nur Lade- oder Entladeimpulse durchführen. 
Die Messung der Offsetspannung muss natürlich auch entsprechend genau 
sein.

Autor: Der Trog (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und was soll das Ganze bringen ? Dassn man ohne den Offset nochmals 
verstaerken kann ? Wuerd ich seinlassen. Nimm einen vernuenftigen ADC, 
der genuegend Aufloesung bringt, sodass der Offset egal ist.

Autor: Torsten B. (torty)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Welchen ADC würdest Du empfehlen. Wahrscheinlich einen mit SPI, da ich 
nicht viel Platz habe, um zb 24Bit parallel zu übertragen.

Danke
Torsten

Autor: Der Trog (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja. genau, einen 24bitter mit SPI. Gibt's wie Sand am Meer. Analog 
Devices hat welche, Linear Technology auch. Ich mach damit 
Thermoelemente und PT1000, NTC, alles, ohne zwischengeschaltete 
Verstaerker

Autor: Torsten B. (torty)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man liest immer  wieder, dass 24 bit ADC effektiv 16 Bit Auflösung 
haben.
Hast Du mal einen konkreten (Bauteil)tip für mich, mit dem Du gute 
Erfahrungen gemacht hast ?
Wahrscheinlich werde ich bei der Auflösung auch Aufwand mit der 
Versorgung des ICs (rauschen, Platinenlayout, etc.) treiben müssen.

Kannst Du mal ein wenig aus dem Nähkästchen plaudern ?

Danke
Torsten

Autor: Der Trog (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich verwend mehrere von Analog Devices. Den AD7799, den AD7794, den 
AD7739.
Das Datenblatt enthaelt ein paar Tips zum Layout.

Autor: Anja (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Torsten B. schrieb:
> Ich muss das Nutzsignal jedoch mit einer Auflösung
> von 5 uV messen können.

In deinem anderen Thread waren es noch 50 uV.
Auch dort haben dir einige schon einen 24 Bit Wandler empfohlen:

Beitrag "Ladeschaltung für Differenzierglied"

Was brauchst Du eigentlich wirklich?

Gruß Anja

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
;-)

Was will der OP denn WIRKLICH messen?

Autor: Reinhard Kern (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
noname schrieb:
> Die PWM wechselt immer zwischen 0 und 1. Dadurch entsteht der Ripple.

Klar. Ich würde einen ganz normalen DAC nehmen, dann existiert das 
Problem nicht.

Gruss Reinhard

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.