Forum: Analoge Elektronik und Schaltungstechnik Richtige Benutzung eines 8:1 Muxers / Grundlagen


von Newby (Gast)


Lesenswert?

Hallo Leute,

ich würde gerne Muxer einsetzten, da ich deutlich mehr DC-Spannungen 
messen muss als mein Mikrocontroller ADC Eingänge hat, und ein Muxer 
deutlich günstiger wäre als ein externer ADC - und deutlich einfacher in 
der Ansteuerung.
Allerdings habe ich noch ein paar generelle Fragen, die ich durch das 
lesen von Datenblättern mir nicht komplett erklären konnte.

Ein paar Infos vorab:
Die DC-Signale, die ich auf den Muxer legen will liegen im Bereich von 0 
bis etwa 2,5V. Der Muxer soll mit 3,3V versorgt werden (da ich auf der 
angedachten Schaltung keine negative Versorgung habe und diese den 
Aufwand deutlich verkomplitizieren würde). Ich dachte darum an einen 8:1 
74LV4051 (NXP), da seine Input Voltage von 0V bis zu Vcc reicht (also 
bei mir 3,3V) und das genau mein Arbeitsbereich ist. Dahinter sitzt ein 
12Bit ADC meines Mikrocontrollers, der gegen die VCC mit 3,3V 
referenziert. Ich weiß, Vcc als Referenz ist nicht schön, aber die 
Tendenz der Spannung (steigt/fällt) ist wichtiger als der absolute Wert. 
Der komplette Muxer sollte ungefähr in 10ms durchgefahren werden, also 
für jeden Kanal stünden etwa 1,25ms zur Verfügung. Hierzu steht im DaBla 
des Chips, das er max 63ns zum "Enablen", "nE zu Yn" 66ns und "Sn zu Yn" 
54ns benötigt - ich würde ihm größzügige 100ns je Schritt einräumen 
wollen ;).

1. Frage: Ist meine Zeitvorgabe ungefähr richtig? Wenn ich im 
Zeitfenster gut 300ns für Enable/Disbale plus An.- und Abwahl gewähre, 
habe ich noch gute 1,2497ms zum ADC-Sampeln.

2. Frage:  Sollte ich ggf. die ersten Sampels des ADC verwerfen? Und wie 
viele Sampels würdet ihr da anstreben? Ich kann ja anschließend noch 
einen Diff über x Sampels machen.

3. Wann wählt man Kanäle? Im Datenblatt finde ich leider kein richtiges 
Timing Diagram für die Digitalen Signale, nur den Hinweis auf "Typical 
‘break before make’ built in". Muss ich die Kanalwahl im Disable Modus 
machen, also so: Chip Disablen -> neuen Kanal wählen -> Chip Enablen? 
(Und jedem Schritt mindestens 100ns Zeit einräumen - hab das noch gar 
nicht überflogen, ob der Mikrokontroller überhaupt schneller kann als 
100ns Zykluszeit und ich mir hier vielleicht zu viele sorgen mach), oder 
ist das dem Chip durch die Break-before-make wirklich egal?

4. Frage: Um die Signale etwas zu befiltern würde ich gerne RC-Filter 
benutzen. Sollte jeder Muxer-Eingang einen Filter haben, oder würde es 
reichen einen Filter am Ausgang des Muxers vorzusehen?

5. Frage: Wie niederimpedant müssen die Quellen (also meine 
Spannungsmessungen) vor dem Muxer sein? Aktuell benutze ich 
Spannungsteiler (Gesamtwiderstand um die 100k), um von Spannungen 
(24V/12V/5V/...) auf max 2,5V runterzuteile und diese auf den Muxer 
gebe, oder sollte ich diese noch durch einen Impedanzwandler jagen (der 
ADC hat überigens max. 50kOhm Impedanz laut DaBla)? Alternativ kann ich 
die Spannungsteiler auch niederohmiger machen.

6. Ich habe ganz viel negatives hier im Forum über Crosstalk gelesen, 
wenn gleich es hauptsächlich um die Urväter CD/HEF4051 ging und diese 
auch mit deutlich höherer Spannungen (10-15V) bzw. sogar bipolarer 
Versorgung (+/-5 bis 12V) gespeist wurden. Kann ich dem im Vorfeld 
irgendwie konstruktiv entgegenwirken?

Entschuldigt meine vielleicht unbeholfenen Fragen, aber ich habe bislang 
noch nicht mit Muxern gearbeitet - würde dies aber gerne :)

von Clemens L. (c_l)


Lesenswert?

Newby schrieb:
> Sollte ich ggf. die ersten Sampels des ADC verwerfen?

Wozu dann den ADC überhaupt laufen lassen? Du kannst genauso gut die 
Pause vorher verlängern.

> Wann wählt man Kanäle?

"Break before make" heißt, dass "disable" garantiert schneller als 
"enable" ist, dass du also einfach die neue Adresse auf die Sx-Pins 
legen kannst.

> Ist meine Zeitvorgabe ungefähr richtig?

Der Mux selbst braucht nur 63 ns.

Du solltest ausrechnen, wie lange dein RC-Filter benötigt, bis er die 
neue Spannung erreicht hat. Länger warten brauchst du nicht.

> Wie niederimpedant müssen die Quellen (also meine Spannungsmessungen) vor
> dem Muxer sein?

Möglichst niedrig; siehe ADC-Datenblatt. Aber du kannst auch direkt am 
ADC-Eingang einen Kondensator platzieren.

> Sollte jeder Muxer-Eingang einen Filter haben, oder würde es reichen
> einen Filter am Ausgang des Muxers vorzusehen?

Der Mux selbst hat ca. 80 Ω, und mit einem C am ADC-Eingang hast du eh' 
schon einen Filter.

Dir ist anscheinend Geschwindigkeit wichtiger als absolute Genauigkeit.

> Crosstalk

Ist bei DC-Signalen kein Problem.

von my2ct (Gast)


Lesenswert?

Newby schrieb:
> ich würde gerne Muxer einsetzten, da ich deutlich mehr DC-Spannungen
> messen muss als mein Mikrocontroller ADC Eingänge hat

Nur für's Protokoll:
Du hast wahrscheinlich nur einen ADC, dessen Eingang überhaupt nicht auf 
einen Pin heraus geführt ist. Im Mikrocontroller sitzt meist schon ein 
"Muxer" vor den du dann einen weiteren "Muxer" hängst. Wie das bei 
deinem ist, kannst nur du wissen. Beim Umschalten müssen dort 
Kapazitäten umgeladen werden, was bei zu hoher Ausgangsimpedanz deines 
"Muxers" und zu kurzer Umschaltzeit zu Kanalübersprechen führt.
Simuliere deinen ganzen Signalweg, damit du siehst, wo es eng ist.

von Falk B. (falk)


Lesenswert?

Newby schrieb:

> ich würde gerne Muxer einsetzten, da ich deutlich mehr DC-Spannungen
> messen muss als mein Mikrocontroller ADC Eingänge hat, und ein Muxer
> deutlich günstiger wäre als ein externer ADC - und deutlich einfacher in
> der Ansteuerung.

Kommt drauf an. Es gibt auch externe ADC mit vielen Eingängen, die per 
I2C oder SPI angesteuert werden, was auch nicht wirklich schwierig ist.

> referenziert. Ich weiß, Vcc als Referenz ist nicht schön, aber die

Ist nicht soo wild, es gibt auch relativ genaue und stabile 3,3V Regler.

> Tendenz der Spannung (steigt/fällt) ist wichtiger als der absolute Wert.
> Der komplette Muxer sollte ungefähr in 10ms durchgefahren werden, also
> für jeden Kanal stünden etwa 1,25ms zur Verfügung.

Eine Ewigkeit.

> 1. Frage: Ist meine Zeitvorgabe ungefähr richtig?

Ja.

> Wenn ich im
> Zeitfenster gut 300ns für Enable/Disbale plus An.- und Abwahl gewähre,
> habe ich noch gute 1,2497ms zum ADC-Sampeln.

Die brauchst du im Leben nicht, eher Faktor 100 weniger.

> 2. Frage:  Sollte ich ggf. die ersten Sampels des ADC verwerfen?

Nein. Warum auch?

> Und wie
> viele Sampels würdet ihr da anstreben?

Im Normalfall reicht 1, wenn man keine extrem verrauschten Signale hat.

> Ich kann ja anschließend noch
> einen Diff über x Sampels machen.

> 3. Wann wählt man Kanäle? Im Datenblatt finde ich leider kein richtiges
> Timing Diagram für die Digitalen Signale, nur den Hinweis auf "Typical
> ‘break before make’ built in". Muss ich die Kanalwahl im Disable Modus
> machen, also so: Chip Disablen -> neuen Kanal wählen -> Chip Enablen?

Nein, das macht der IC allein. Einfach die Kanalnummer anlegen und gut.

> (Und jedem Schritt mindestens 100ns Zeit einräumen - hab das noch gar
> nicht überflogen, ob der Mikrokontroller überhaupt schneller kann als
> 100ns Zykluszeit und ich mir hier vielleicht zu viele sorgen mach),

Das tust du.

> oder
> ist das dem Chip durch die Break-before-make wirklich egal?

JA!

> 4. Frage: Um die Signale etwas zu befiltern würde ich gerne RC-Filter
> benutzen. Sollte jeder Muxer-Eingang einen Filter haben,

Ja.

 oder würde es
> reichen einen Filter am Ausgang des Muxers vorzusehen?

Geht auch, aber dann muss dein Filter nach jedem Umschalten den neuen 
Wert annehmen (Sprungantwort). Wenn deine Filter eher wenig Bandbreite 
haben, kann das (zu) lange dauern.

> 5. Frage: Wie niederimpedant müssen die Quellen (also meine
> Spannungsmessungen) vor dem Muxer sein? Aktuell benutze ich
> Spannungsteiler (Gesamtwiderstand um die 100k), um von Spannungen
> (24V/12V/5V/...) auf max 2,5V runterzuteile

D.h. du hast ca. 24/2,5 10:1 Teilerverhältnis, d.h. dein unterer 
Widerstand ist ca. 10k. Der statische Ausgangswiderstand eines 
Spannungsteilers ist die PARALLELschaltung der Widerstände, hier ~10k.

> und diese auf den Muxer
> gebe, oder sollte ich diese noch durch einen Impedanzwandler jagen

Muss man nicht. Es reicht ein kleiner Kondensator von 10-100nF, der 
speichert genügend Ladung für die Messung durch den ADC. Deine 
Abtastrate ist gering, dafür reicht es.

> 6. Ich habe ganz viel negatives hier im Forum über Crosstalk gelesen,
> wenn gleich es hauptsächlich um die Urväter CD/HEF4051 ging und diese
> auch mit deutlich höherer Spannungen (10-15V) bzw. sogar bipolarer
> Versorgung (+/-5 bis 12V) gespeist wurden. Kann ich dem im Vorfeld
> irgendwie konstruktiv entgegenwirken?

Nicht zu wilden Steckbrettaufbau nutzen sondern besser Lochraster oder 
noch besser gleich eine geätzte Platine mit gescheiter Signalführung. Im 
Idealfall mit Massefläche, wenn gleich man das auch ohne hinbekommt. 
Entkoppelkondendsatoren nicht vergessen.

von Firlefanz (Gast)


Lesenswert?

Newby schrieb:
> Entschuldigt meine vielleicht unbeholfenen Fragen, aber ich habe bislang
> noch nicht mit Muxern gearbeitet - würde dies aber gerne :)

Du solltest Dich mal im GANZEN im Bereicht TTL, bzw cmos-Logic 
beschäfftigen. Dann wird klar, wann ich welchen Baustein einsetze.

Es stellt sichschon mal die Frage, wie genau das hinten sein muss, was 
am 'Muxer' hinten rauskommt.

von Falk B. (falk)


Lesenswert?

Firlefanz schrieb:
> Du solltest Dich mal im GANZEN im Bereicht TTL, bzw cmos-Logic
> beschäfftigen. Dann wird klar, wann ich welchen Baustein einsetze.

Was für ein erbärmliches GESCHWÄTZ!

von Firlefanz (Gast)


Lesenswert?

Falk B. schrieb:
> Was für ein erbärmliches GESCHWÄTZ!

Ja, von Dir.

Erzähl mal, wie er sonst in Logic anfangen soll.

von Axel S. (a-za-z0-9)


Lesenswert?

Mir stößt die Sprache unangenehm auf. Das Bauteil ist ein
Analog-Multiplexer. Umgangssprachlich geht vielleicht auch
noch MUX, aber das bezeichnet dann eher einen Mutiplexer für
Digitalsignale. Den gab es nämlich schon etliche Jahre eher
als seinen analogen Kollegen. Aber Muxer geht gar nicht.

von Firlefanz (Gast)


Lesenswert?

Firlefanz schrieb:
> Es stellt sich schon mal die Frage, wie genau das hinten sein muss, was
> am 'Muxer' hinten rauskommt.

Das hab ich auch so interpretiert. Nur kommt es darauf an, was hinten 
erwünscht ist, und dann kann man das mit 40er Analog-Muxer tun, oder man 
greift nach LTC...., wenn das Analgo noch zu verwenden sein soll. Und 
dann spielt bei den 40er noch eine Rolle, ob mit 12V oder mit 5V. Mit 5 
Volt wirds dann wieder hackelig.

von Falk B. (falk)


Lesenswert?

Axel S. schrieb:
> Aber Muxer geht gar nicht.

Warum nicht? Wenn er kaputt geht, gibt er keinen MUX mehr von sich ;-)

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
Noch kein Account? Hier anmelden.