Grundlegendes zur AVCC-Pin-Verkabelung bei ArduinoLeonardo (Tiefpassfilter?)

10

Der Arduino Leonardo hat einen interessanten Unterschied zu früheren Karten: Der AVCC-Pin des ATMEGA32U4 ist über eine MH2029-300Y-Ferritperle mit +5 V und über einen 1uF-Kondensator mit GND verbunden.

In ArduinoUno und ArduinoMega2560 wurde dieser Pin einfach mit VCC verbunden. Laut atmel-Datenblatt sollte dieser Pin bei Verwendung des konvertierten ADC mit einem Tiefpassfilter verbunden werden.

Geben Sie hier die Bildbeschreibung ein

Arduino Leonardo Schema

Ist das wirklich ein Tiefpassfilter? Wenn ja, wie funktioniert es? Wie würden Sie diese Art von Schaltung nennen? Wie modellierst du es?

sarfata
quelle
1
Nun, die Ferritperle liefert Induktivität und der Kondensator liefert Kapazität, also ist es eine Form von LC-Filter.
AndrejaKo
3
Whoa, schreckliche Schaltpläne.
Connor Wolf
Es stellt sich heraus, dass Sie keinen herkömmlichen RC-Filter verwenden können. Lesen Sie die folgenden Kommentare, um mehr darüber zu erfahren. Auf Seite 302 des Atmega 32u4-Datenblattes finden Sie hierzu einige Erklärungen (24.7.2 Analoge Rauschunterdrückungstechniken).
Sarfata

Antworten:

11

Geben Sie hier die Bildbeschreibung ein

Der Induktor plus Kondensator bilden einen frequenzabhängigen Spannungsteiler.

VOUTVIN=ZCZC+ZL

Für Gleichstrom und niedrige Frequenzen ist die Impedanz von L1 ( ) niedrig und die von C1 ( ) hoch, so dass die Eingangsspannung nicht stark gedämpft wird. Bei hohen Frequenzen ist es umgekehrt: ist hoch und ist niedrig. Die Dämpfung ist hoch und je höher die Frequenz, desto höher die Dämpfung. Das ist also in der Tat ein Tiefpassfilter.Z C Z L Z C.ZLZCZLZC

Der verwendete Induktor ist jedoch nicht gut. Es ist ein Hochfrequenz-EMI-Suppressor, der auf Frequenzen von mehreren zehn MHz abzielt. (Der verwendete Typ hat eine Impedanz von 30 Ω bei 100 MHz.)

Geben Sie hier die Bildbeschreibung ein

Die Impedanzkurve zeigt eine Steigung von 0,5 Ω / MHz, so dass bei 100 Hz der reaktive Teil der Induktivität vernachlässigbar ist.

Was tatsächlich benötigt wird, ist die Unterdrückung von Niederfrequenzrauschen, wie z. B. 100-Hz-Welligkeit von der Stromversorgung. Dann ist dieser Induktor ziemlich nutzlos und es ist, als hätte man nur den Kondensator.

Für Niederfrequenzen können Induktoren unpraktisch groß sein, dann wäre ein Widerstand anstelle des Induktors die bessere Wahl gewesen. Das Datenblatt besagt, dass AVCC nicht niedriger als VCC sein sollte - 0,3 V, aber ich konnte nicht finden, wie viel aktuelles AVCC verwendet. Das ist nicht viel, sagen wir maximal 10 µA. Die Grenzfrequenz eines RC-Filters beträgt

fC=12πRC

Wenn wir also einen 15,9 kΩ-Widerstand mit dem 1 µF-Kondensator verwenden, haben wir eine Grenzfrequenz von 10 Hz, und der Frequenzgang sieht folgendermaßen aus:

Geben Sie hier oder hier eine Bildbeschreibung ein

Die 10µA bis 15,9 kΩ sind ein Abfall von 159 mV, das liegt also innerhalb der Spezifikation. Eine 100-Hz-Welligkeit wird um 20 dB gedämpft, das ist 1:10, was nicht viel ist, aber VCC sollte bereits richtig entkoppelt sein, sodass die 20 dB nur extra sind. Oberhalb von 1 kHz wird das Rauschen um mindestens 40 dB reduziert, das ist ein Faktor 1: 100.

stevenvh
quelle
Tolle Antwort Steven. Danke vielmals! (und danke für das hinzugefügte Bild in der Frage;)
Sarfata
@sarfata - ich freue mich, danke für die Annahme. Aber ich habe das Bild nicht hochgeladen, das war Jippie . Ich habe deine Unterschrift entfernt :-) (sie sind auf der Seite nicht erlaubt)
Stevenvh
Dank dir weiß ich jetzt, wie man den Bearbeitungsverlauf betrachtet;) Vielen Dank an alle, die die Frage aufgeräumt und verbessert haben!
Sarfata
1
WICHTIG - LESEN SIE DIESES, BEVOR SIE EINEN WIDERSTAND VERWENDEN! Ich baue eine Karte mit einem Atmega 32U4 und dem auf dieser Seite beschriebenen Tiefpassfilter (15,8k Widerstand + 1 uF Kondensator). Es stellt sich heraus, dass der an AVCC aufgenommene Strom viel höher ist als erwartet: Ich messe 2,58 V an AVCC mit VCC an 3,30 V (also I = (3,30-2,58) / 15,8) = 45 uA. Der Spannungsabfall beträgt 0,72 V, was dem doppelten zulässigen Abfall entspricht. Das Ergebnis ist, dass der Chip nicht programmiert werden kann. Sie können es lesen, aber das Schreiben schlägt immer fehl. Ich habe den Widerstand entfernt und AVCC direkt an VCC angeschlossen und kann nun den Chip programmieren. [CC @stevenh]
Sarfata
1
@sarfata - Sie können dann immer noch einen Widerstand verwenden, müssen jedoch einen niedrigeren Wert wie 4,7 k verwenden.
Stevenvh
9

Einige wirklich gute Antworten. Ich gehe davon aus, dass das Ziel des LC-Filters nicht darin besteht, die Welligkeit der Stromversorgung herauszufiltern. Dies geschieht am besten mit steifen (niedrigen ESR) Kappen an den Stromleitungen / -ebenen und der Auswahl des richtigen Reglerteils. Wenn Sie Ihren Arduino über einen USB-Anschluss mit Strom versorgen, ist das niederfrequente Rauschen vernachlässigbar. Eine billige Wandwarze ist ein Umschalter im Bereich von zehn bis hundert kHz und wird elektrisch verrauscht, aber der Spannungsregler und die Kapazität des Dort sollen digitale Stromschienen helfen.

Der LC-L / P-Filter entfernt die scharfen Kanten der digitalen Signale, die auf die digitalen Stromleitungen gelangen, und würde, wenn sie direkt mit den AVCC-Pins verbunden sind, in die A / D-Wandlerschaltung gelangen.

Der Grund, warum die Karte nicht mit dem größeren Widerstand (in der RC-Schaltung) booten würde, ist, dass die PLL im ATMega-Teil eine analoge Schaltung ist und dieselben AVCC-Pins wie die A / D-Wandler verwendet und nicht genügend Strom erhält . Vielleicht werden nicht wirklich beide Pins im Teil auf die gleiche Weise verwendet, aber es gibt keine Unterscheidung im Datenblatt (beide werden als AVCC bezeichnet). In Bezug auf das Layout ist es ein Problem, wenn die Pins 24 und 44 an AVCC gehen, da sie sich auf gegenüberliegenden Seiten des Chips befinden und wer sich die Mühe macht, ihnen einen ganzen Energieplan zu widmen? Am Ende leiten Sie ein Signal über das Teil, wahrscheinlich mit Durchkontaktierungen auf beiden Seiten usw. Schmerzhaft. Das Datenblatt erwähnt dieses hässliche Stück Realität kaum, fast so, als wäre der zusätzliche Stift ein zweiter Gedanke von ATMEL.

Wie auch immer, diese verrauschten Signale kommen aus dem Mikroprozessor selbst, wenn er intern schaltet, und sie beeinträchtigen die digitale Logik nicht, aber der Versuch, eine analoge Genauigkeit von 10 Bit zu erreichen, erfordert auf der Stromversorgungsseite etwas mehr Aufwand. Diese digitalen Rauschkanten liegen möglicherweise im zehn-nS-Zeitrahmen (100 MHz), sodass Filter mit dieser Eigenschaft ziemlich gut funktionieren. Wenn Sie die Zahlen durcharbeiten, beträgt bei Verwendung von AVCC = 5 V und 10 Bit A / D jedes LSB etwa 5 mV. Scheint, als müssten Sie weniger als die Hälfte davon als Faustregel haben, um "leises" Rauschen zu haben.

Das Datenblatt MH2029-300Y zeigt 20 Ohm bei 100 MHz. Wenn der Typ, der den RC-Filter ausprobiert hat, die Kniefrequenz auf 1 MHz eingestellt hätte, hätte es wahrscheinlich besser funktioniert, weil er einen viel kleineren Widerstand hätte wählen können. So etwas wie ein 22-Ohm-Widerstand (passend zur Impedanz des Induktors bei 100 MHz) und eine 0,01-uF-Kappe hätten aufgrund der Eingangsbelastung einen ausreichend kleinen Gleichspannungsabfall (etwa 45 uA x 22 Ohm = 1 mV von seinen Zahlen). Er würde in der Frequenz von Interesse um 40 dB gesunken sein.

Ich würde nicht darauf wetten, dass ein Layout weitergegeben wird, aber wenn die Teile einen gewissen Platzbedarf hätten, könnte ich es versuchen (wählen Sie einen 0805-Fußabdruck für beide?), Aber wenn der Induktor ein 0,10-Dollar-Teil von Mouser ist, warum bleiben Sie nicht einfach dabei ?

DougG
quelle
1

Ja, es ist ein Tiefpassfilter. Die Ferritperle ist eine verlustbehaftete induktive Komponente, die ähnlich wie ein frequenzabhängiger Widerstand wirkt, wobei L bei niedrigen Frequenzen und R bei hohen Frequenzen dominiert. Der Kondensator leitet höhere Frequenzen nach Masse. Zusammen bilden sie ein LC-Filter mit niedrigem Q, das nicht den scharfen Resonanzpeak erfährt (solange sich der Cutoff im Widerstandsbereich der Perle befindet), der Probleme in einem "Standard" -LC-Filter verursachen kann.
Wie Steven jedoch bemerkt, ist dieser Teil für diese Anwendung nicht besonders geeignet, da es sich um einen Hochfrequenzteil handelt und der ADC eine relativ niedrige Frequenz aufweist. Es wäre nützlich für etwas, das das Filtern bei viel höheren Frequenzen erfordert, wie ein FPGA-Design, ein Hochfrequenz-ADC usw.

Oli Glaser
quelle