4.6 Conversie analogic-digitală

4.6.1 Conversie digital-analogică

4.6.2 Conversie analogic-digitală

4.6.3 Circuite Sample-and-Hold

4.6.4 Multiplexoare

Intrările la un dispozitiv digital (de obicei, un computer digital) și ieșirile de la un dispozitiv digital sunt neapărat prezente în forma digitală. Prin urmare, când un dispozitiv digital este conectat la un dispozitiv analogic, hardware de interfață și software de driver asociat trebuie să îndeplinească mai multe funcții importante. Două dintre cele mai importante funcții de interfață sunt conversia digital-analogică (DAC sau D/A) și conversia analogic-digitală (ADC sau A/D). O ieșire digitală de la un dispozitiv digital trebuie convertită în forma analogică pentru a fi transmisă la un dispozitiv analogic, cum ar fi actuatorul sau unitatea de înregistrare sau afișare analogică. De asemenea, un semnal analogic trebuie convertit în forma digitală, conform unui cod adecvat, înainte de a fi citit de un procesor sau computer digital.

Sistemele mecatronice folosesc achiziția de date digitale pentru o varietate de scopuri, cum ar fi monitorizarea condițiilor și evaluarea performanței, detectarea și diagnosticarea defectelor, evaluarea calității produsului/serviciului, testarea dinamică, identificarea sistemului (adică, modelarea experimentală) și control. Luați în considerare sistemul de control cu feedback prezentat în figura 4.23. De obicei, răspunsurile (ieșirile) măsurate ale unui sistem fizic (numit proces sau instalație) sunt disponibile în formă analogică ca semnale continue (funcții de timp continuu). Mai mult, de obicei, semnalele de excitație (sau intrările de control) pentru un sistem fizic trebuie să fie furnizate în formă analogică. Un computer digital este o componentă integrată a unui sistem mecatronic tipic și este comun încorporat în forma unui microcontroller pe un singur-cip și computere pe o singură-placă împreună cu alte componente single-IC precum DSP.

Ambele elemente ADC și DAC sunt componente într-o placă de intrare/ieșire (I/O) tipică (sau card de achiziție și control de date, sau DAQ). Carduri I/O complete pentru aplicații mecatronice sunt disponibile de la companii precum National Instruments®, Servo to Go, Inc., Precision MicroDynamics, Inc. și Keithly Instruments (Metrabyte), Inc. O placă I/O poate fi conectată la slotul unui computer personal (PC) și conectată automat cu magistrala PC-ului. Principalele componente ale unei plăci I/O sunt arătate în figura 4.24.

FIGURA 4.23 Componente ale unei achiziții de date (DAQ) și bucla de control

FIGURA 4.24 Componentele principale ale unei plăci I/O a unui computer

Multiplexorul selectează canalul de intrare corespunzător. Semnalul este amplificat de un amplificator programabil (prog amp) înainte de conversia analogic-digitală. Elementul sample-and-hold (S/H) eșantionează semnalul analog și menține valoarea sa la nivelul eșantionat până la conversia ADC. Elementul first-in-first-out (FIFO) stochează ieșirea ADC până este accesat de PC pentru procesare digitală. Placa I/O poate furniza o ieșire analogică prin DAC. În plus, o placă I/O tipică poate oferi și ieșiri digitale. Un encoder (adică un senzor de poziție generator de impulsuri) poate fi interfațat direct cu plăci I/O care sunt destinate utilizării în aplicații de control al mișcării. Specificațiile unei plăci tipice I/O sunt prezentate în Box 4.3. O notă specială trebuie făcută despre rata de eșantionare. Aceasta este viteza cu care un semnal analogic de intrare este eșantionat de ADC. Frecvența Nyquist (sau limita lățimii de bandă) a datelor eșantionate ar fi jumătate din acest număr (50 kHz pentru placa I/O specificată în Box 4.3). Când se folosește multiplexarea (adică se citesc mai multe canale de intrare în același timp), rata efectivă de eșantionare pentru fiecare canal va fi redusă cu un factor egal cu numărul de canale. Pentru placa I/O specificată în Box 4.3, când 16 canale sunt eșantionate simultan, viteza efectivă de eșantionare va fi de 100 kHz/16 = 6,25 kHz, oferind o frecvență Nyquist de 3,125 kHz.

BOX 4.3 SPECIFICAȚII TIPICE A UNEI PLĂCI I/O PLUG-IN SAU DAQ PENTRU UN PC

Număr de canale analogice de intrare = 16 intrări simple sau 8 diferențiale
Intervale de intrare analogice = ± 5 V; 0–10 V; ± 10 V; 0–20 V
Game de câștig de intrare (programabile) = 1, 2, 5, 10, 20, 50, 100
Rata de eșantionare pentru conversia A/D = 100.000 eșantioane/s (100 kHz)
Dimensiunea cuvântului (rezoluție) de ADC = 12 biți
Număr de canale de ieșire D/A = 4
Dimensiunea cuvântului (rezoluție) de DAC = 12 biți
Intervalele de ieșire analogică = 0-10 V (mod unipolar); ± 10 V (mod bipolar)
Număr de linii de intrare digitale = 12
Tensiunea low a logicii de intrare = 0,8 V (maxim)
Tensiunea high a logicii de intrare = 2,0 V (minim)
Număr de linii de ieșire digitale = 12
Tensiunea low a logicii de ieșire = 0,45 V (maxim)
Înalta tensiune a logicii de ieșire = 2,4 V (minim)
Număr de contoare/cronometre = 3
Rezoluția unui contor/cronometru = 16 biți

Hardware DAQ comercial suportă software scris de utilizator (de ex., în C++) pentru sarcini de achiziție, prelucrare, comunicare și control de date. De asemenea, instrumente software comerciale (de exemplu, LabVIEW®) pot fi utilizate în aceleași scopuri. DAC și ADC sunt discutate acum. Convertoarele digital-analogice sunt mai simple și costuri mai mici decât convertoarele analogic-digitale. Mai mult, unele tipuri de convertoare analogic-digitale utilizează un convertor digital-analogic pentru a-și îndeplini funcția. Din aceste motive, vom discuta mai întâi despre DAC.

4.6.1 Conversie digital-analogică

Funcția unui convertor digital-analogic (DAC) este de a converti în semnal analogic o secvență de cuvinte digitale, stocate într-un registru de date (numit registru DAC), de obicei în forma binară directă. Datele din registrul DAC pot fi sosite de la o magistrală de date a unui computer. Fiecare cifră (bit) binară de informații din registru poate fi prezentă ca o stare a unui dispozitiv logic bistabil (în două etaje), care poate genera un impuls de tensiune sau un nivel de tensiune pentru a reprezenta acel bit. De exemplu, „starea off” a unui element logic bistabil, „absența” unui impuls de tensiune, „nivelul low” al unui semnal de tensiune sau „nicio variație” a unui nivel de tensiune pot reprezenta 0 binar. În schimb, „starea on” a unui dispozitiv bistabil, „prezența” unui impuls de tensiune, „nivelul high” al unui semnal de tensiune sau „variația” unui nivel de tensiune vor reprezenta 1 binar. Combinația acestor biți, care formează cuvântul digital în registrul DAC, va corespunde unei anumite valori numerice pentru semnalul de ieșire analogic. Atunci, scopul DAC este de a genera o tensiune de ieșire (nivel de semnal) care are această valoare numerică și de a menține valoarea până când următorul cuvânt digital este convertit în forma analogică. Întrucât o ieșire de tensiune nu poate fi în mod arbitrar mare sau mică din motive practice, o anumită formă de scalare ar trebui să fie utilizată în procesul DAC. Această scală va depinde de tensiunea de referință vref folosită în circuitul DAC particular.

O unitate DAC tipică este un circuit activ sub forma IC și poate consta dintr-un registru de date (circuite digitale), circuite de comutare solid-state, rezistoare sau op-amp alimentate de o sursă de alimentare externă, care poate furniza tensiunea de referință pentru DAC. Tensiunea de referință va determina valoarea maximă a ieșirii (tensiune scală-maximă). După cum s-a menționat anterior, cipul IC care reprezintă DAC este de obicei unul dintre numeroasele componente montate pe o placă de circuit imprimat (PC), care este placa I/O (sau card I/O, placă de interfață sau placă de achiziție și control date). Această placă este conectată într-un slot al PC-ului de achiziție și control date (vezi Figurile 4.23 și 4.24).

Există multe tipuri și forme de circuite DAC. Forma va depinde în principal de producător și cerințele utilizatorului sau ale aplicației particulare. Cele mai multe tipuri de DAC sunt variații ale două tipuri de bază: tipul ponderat (sau tip summer sau tip adder) și tipul scară (ladder). Acest din urmă tip de DAC este mai de dorit, chiar dacă primul tip ar putea fi ceva mai simplu și mai puțin costisitor.

4.6.1.1 DAC cu rezistoare ponderate

În figura 4.25 este prezentată o reprezentare schematică a unui DAC cu rezistoare ponderate (sau summer DAC sau adder DAC). Rețineți că acesta este un DAC general cu n-biți și n este numărul de biți din registrul de ieșire. Cuvântul binar din registru este w = [bn−1bn−2bn−3 ... b1bo] în care bi este bitul în poziția i și poate lua valoarea 0 sau 1 în funcție de valoarea ieșirii digitale. Valoarea zecimală a acestui cuvânt binar este dată de

(4.32)

Notă: Bitul cel mai puțin semnificativ (LSB) este bo și cel mai semnificativ bit (MSB) este bn−1. Tensiunea analogică de ieșire v a DAC trebuie să fie proporțională cu D.

FIGURA 4.25 DAC cu rezistoare ponderate (adder).

Fiecare bit bi din cuvântul digital w va activa un micro-comutator solid-state în circuitul de comutare, de obicei prin trimiterea unui impuls de tensiune de comutare. Dacă bi = 1, conductorul de circuit va fi conectat la sursa de alimentare -vref furnizând o tensiune de intrare vi =-vref la rezistorul de ponderare corespunzătoare 2n-i-1 R. Dacă, pe de altă parte, bi = 0, atunci conductorul de circuit va fi conectat la masă, oferind astfel o tensiune de intrare vi = 0 la același rezistor. Rețineți că MSB este conectat la cel mai mic rezistor (R) și LSB este conectat la cel mai mare rezistor (2n-1 R). Prin scrierea însumării curenților la nodul A al op-amp-ului de ieșire, obținem

Pentru a scrie această ecuație, am folosit cele două fapte principale pentru un op-amp: tensiunea este aceeași la ambele conductoare de intrare, iar curentul prin fiecare conductor este zero. Notă: Terminalul + este împământat și, prin urmare, nodul A trebuie să aibă tensiune zero.

Acum, deoarece vi = −bi vref unde bi = 0 sau 1 în funcție de valoarea bitului (starea comutatorului corespunzător), avem

(4.33)

În mod clar, după cum este necesar, tensiunea de ieșire v este proporțională cu valoarea D a cuvântului digital w. Valoarea la scală maximă (FSV) a ieșirii analogice apare atunci când toți bi sunt egali cu 1. Prin urmare,

Folosind formula cunoscută în mod obișnuit pentru suma unei serii geometrice 1 + r + r2 +.....+rn-1 = (1 – rn)/(1 – r) obținem

(4.34)

Notă: Această valoare este puțin mai mică decât tensiunea de referință vref.

Un dezavantaj major al DAC cu rezistoare-ponderate este faptul că intervalul valorii de rezistență în circuitul de ponderare este foarte larg. Aceasta prezintă o dificultate practică, în special când dimensiunea (numărul de biți n) a DAC este mare. Utilizarea de rezistoare cu mărimi larg diferite în același circuit poate crea probleme de acuratețe. De exemplu, deoarece MSB corespunde la cel mai mic rezistor de ponderare, rezultă că rezistoarele trebuie să aibă o precizie foarte mare.

4.6.1.2 DAC Ladder (Scară)

Un convertor digital-analogic care utilizează un circuit ladder R-2R este cunoscut sub numele de DAC scară. Acest circuit folosește doar două tipuri de rezistoare: una cu rezistență R și cealaltă cu 2R. Prin urmare, precizia rezistoarelor nu este la fel de strictă ca cea necesară pentru DAC cu rezistoare-ponderate. În figura 4.26 este prezentată o reprezentare schematică a unui R-2R ladder DAC. În acest dispozitiv, circuitul de comutare poate opera la fel ca într-un DAC cu rezistențe-ponderate. Pentru a obține ecuația de intrare-ieșire pentru ladder DAC, presupunem că, la fel ca mai înainte, tensiunea de ieșire de la comutatorul solid-state asociată cu bi-ul cuvântului digital este vi. Mai mult, presupunem că este tensiunea la nodul i al circuitului scară, așa cum se arată în figura 4.26. Acum, scriind însumarea de curenți la nodul i obținem

FIGURA 4.26 DAC ladder

Prin urmare,

(i)

Ecuația (i) este valabilă pentru toate nodurile, cu excepția nodului 0 și a nodului n−1. Se vede că însumarea curenților pentru nodul 0 dă

, prin urmare

(ii)

Însumarea curenților pentru nodul n−1 dă

Acum, deoarece conductorul + al op-amp este împământat, avem n-1 = 0. Prin urmare,

(iii)

În continuare, folosind ecuațiile (i) ... (iii) împreună cu faptul că n-1 = 0, putem scrie următoarea serie de ecuații:

(iv)

Dacă adunăm aceste n ecuații, notăm mai întâi

obținem

În cele din urmă, deoarece vi = -bivref, avem ieșirea analogică ca

(4.35)

Acest rezultat este identic cu ecuația 4.33, pe care am obținut-o pentru DAC cu rezistențe-ponderate. Prin urmare, ca și înainte, ieșirea analogică este proporțională cu valoarea D a cuvântului digital și, în plus, valoarea de scală maximă a ladder DAC este dată și de ecuația anterioară 4.34.

4.6.1.3 Surse de eroare DAC

Pentru un cuvânt digital dat, tensiunea de ieșire analogică de la un DAC nu ar fi exact egală cu cea dată de formulele analitice (de ex., Ecuația 4.33) care au fost obținute anterior.

eroare DAC = ieșire reală - ieșire ideală

Eroarea poate fi normalizată în raport cu valoarea la scală maximă. Există multe cauze ale erorii DAC. Sursele tipice de eroare includ incertitudini și variații parametrice, constante de timp ale circuitului, erori de comutare și variații și zgomot în tensiunea de referință. Mai multe tipuri de surse de eroare și reprezentări sunt discutate mai jos.

4.6.1.3.1 Ambiguitatea codului

În multe coduri digitale (de exemplu, în codul binar direct), creșterea unui număr cu un LSB va implica mai mult decât comutarea cu 1 bit. Dacă viteza de comutare de la 0 la 1 este diferită de cea de la 1 la 0 și dacă impulsurile de comutare nu sunt aplicate circuitului de comutare simultan, comutarea biților nu va avea loc simultan. De exemplu, într-un DAC de 4 biți, incrementarea de la 3 zecimal la 4 zecimal presupune schimbarea cuvântului digital de la 0011 la 0100. Aceasta necesită două comutări de bit de la 1 la 0 și comutarea unui bit de la 0 la 1. Dacă trecerea de la 1 la 0 este mai rapidă decât comutarea de la 0 la 1, atunci o valoare intermediară dată de 0000 (zero zecimal) va fi generată cu o ieșire analogică corespunzătoare. Prin urmare, va exista o ambiguitate de cod momentală și o eroare asociată în semnalul DAC. Această problemă poate fi redusă (și eliminată în cazul creșterilor unui singur bit) dacă se folosește un cod Gray pentru a reprezenta datele digitale. Îmbunătățirea circuitelor de comutare va ajuta, de asemenea, la reducerea acestei erori.

4.6.1.3.2 Timpul de stabilire

Hardware-ul circuitului dintr-o unitate DAC va avea o anumită dinamică cu constante de timp asociate și, probabil, cu oscilații (răspuns subamortizat). Prin urmare, tensiunea de ieșire nu se poate stabili instantaneu la valoarea sa ideală la comutare. Timpul necesar pentru ca ieșirea analogică să se stabilească într-o anumită bandă (să zicem ± 2% din valoarea finală sau rezoluția ± 1/2), în urma aplicării datelor digitale, se numește timp de stabilire. Desigur, timpul de decontare ar trebui să fie mai mic pentru o performanță mai bună (mai rapidă și mai precisă). De regulă, timpul de stabilire ar trebui să fie aproximativ jumătate din timpul de sosire a datelor. Notă: Timpul de sosire a datelor este intervalul de timp dintre sosirea a două valori succesive de date și este dat de inversul ratei de sosire a datelor.

4.6.1.3.3 Glitch-uri

Comutarea unui circuit va implica variații bruște ale fluxului magnetic datorită variațiilor de curent. Aceasta va induce tensiunile care produc componente de semnal nedorite. Într-un circuit DAC, aceste tensiuni induse datorită comutării rapide pot cauza vârfuri de semnal, care vor apărea la ieșire. Eroarea datorată acestor semnale de zgomot nu este semnificativă la rate de conversie mici.

4.6.1.3.4 Erori parametrice

Așa cum s-a discutat anterior, elementele rezistoare dintr-un DAC ar putea să nu fie foarte precise, în special atunci când se folosesc rezistoare dintr-o gamă largă de mărimi, ca în cazul DAC cu rezistoare-ponderate. Aceste erori apar la ieșirea analogică. Mai mult, îmbătrânirea și variațiile de mediu (în primul rând, variația temperaturii) vor modifica valorile parametrilor circuitului, în special rezistența. Aceasta va duce, de asemenea, la o eroare DAC. Aceste tipuri de erori datorate impreciziei parametrilor circuitului și variațiilor valorilor parametrilor sunt denumite erori parametrice. Efectele unor astfel de erori pot fi reduse prin mai multe moduri, inclusiv utilizarea hardware-ului de compensare (și poate software), și direct folosind componente de circuit precise și robuste și folosind bune practici de fabricație.

4.6.1.3.5 Variații ale tensiunii de referință

Deoarece ieșirea analogică a unui DAC este proporțională cu tensiunea de referință vref, orice variație a tensiunii de alimentare va apărea direct ca o eroare. Această problemă poate fi depășită folosind surse de tensiune stabilizate cu o impedanță de ieșire suficient de mică.

4.6.1.3.6 Monotonia

În mod clar, ieșirea unui DAC ar trebui să se schimbe prin rezoluția sa (δy = vref/2n) pentru fiecare treaptă a unui increment LSB în valoarea digitală. Acest comportament ideal ar putea să nu existe în unele DAC-uri practice din cauza erorilor menționate mai sus. Cel puțin ieșirea analogică nu ar trebui să scadă pe măsură ce valoarea intrării digitale crește. Aceasta este cunoscută sub denumirea de cerință de monotonie și ar trebui să fie îndeplinită de un convertor digital-analogic practic.

4.6.1.3.7 Neliniaritate

Să presupunem că intrarea digitală la un DAC este variată de la [0 0 ... 0] la [1 1 ... 1] în pași de un LSB. După cum am menționat mai sus, ideal, ieșirea analogică ar trebui să crească în salturi constante de δy = vref/2n dând o ieșire analogică în formă de scară. Dacă trasăm cea mai bună aproximare liniară pentru acest răspuns de scării ideal monoton, aceasta va avea o pantă egală cu rezoluția/treaptă. Această pantă este cunoscută drept factorul de scală ideală. Neliniaritatea unui DAC este măsurată prin cea mai mare abatere a ieșirii DAC de la această cea mai bună aproximare liniară. Rețineți că, în cazul ideal, neliniaritatea este limitată la jumătate din rezoluție 1/2(δy).

O cauză a neliniarității o constituie în mod clar tranzițiile de biți defecte. O altă cauză este neliniaritatea circuitului în sens convențional. Mai exact, din cauza neliniarităților din elementele de circuit, cum ar fi op-amp-uri și rezistoare, ieșirea analogică nu va fi proporțională cu valoarea cuvântului digital dictat de comutatorii de biți (defect sau nu). Acest ultim tip de neliniaritate poate fi contabilizat folosind calibrarea.

4.6.2 Conversie analogic-digitală

Semnalele analogice, care sunt definite continuu în raport cu timpul, trebuie să fie eșantionate la puncte de timp discrete, iar valorile eșantionului trebuie să fie reprezentate în forma digitală (conform unui cod adecvat) pentru a fi citite într-un sistem digital, cum ar fi un microcomputer. Pentru a realiza acest lucru, este utilizat un convertor analogic-digital (ADC). De exemplu, deoarece măsurătorile răspunsului unui sistem mecatronic sunt de obicei disponibile sub formă de semnale analogice, aceste semnale trebuie convertite în forma digitală înainte de a fi transmise unui computer digital pentru analiză și, eventual, pentru a genera o comandă de control. Prin urmare, interfața computerului pentru canalele de măsurare ar trebui să conțină unul sau mai multe ADC-uri (a se vedea figura 4.23).

DAC-urile și ADC-urile sunt de obicei situate pe aceeași placă de interfață digitală (DAQ) (a se vedea figura 4.24). Dar, procesul de conversie analogic-digitală este mai complex și consumator de timp decât procesul de conversie digital-analogică. Mai mult, multe tipuri de ADC folosesc DAC-uri pentru a realiza conversia analogic-digitală. Prin urmare, ADC-urile sunt de obicei mai costisitoare, iar rata de conversie a acestora este de obicei mai lentă în comparație cu DAC-urile. Mai multe tipuri de convertoare analogic-digitale sunt disponibile comercial. Principiul de operare poate varia în funcție de tip. Câteva tipuri cunoscute sunt discutate aici.

4.6.2.1 ADC cu aproximații succesive

Acest tip de convertor analogic-digital este foarte rapid și este potrivit pentru aplicații de mare viteză. Viteza de conversie depinde de numărul de biți din registrul de ieșire al ADC, dar este practic independentă de natura semnalului de intrare analogic. În figura 4.27 este prezentată o diagramă schematică pentru un ADC cu aproximații succesive. Rețineți că un DAC este o componentă integrantă a acestui ADC. Semnalul analogic eșantionat (dintr-un circuit de eșantionare și memorare S/H) este aplicat unui comparator (de obicei un amplificator diferențial). Simultan, un impuls de control „start conversion” (SC) este trimis în unitatea logică de control de către dispozitivul extern (poate un microcomputer) care controlează operarea ADC. Atunci, ADC nu va accepta noi date până când unitatea logică de control nu va transmite afară un impuls de „conversie completă” (CC). Inițial, registrele sunt șterse astfel încât să conțină toți biții zero. Acum, ADC este pregătit pentru prima sa aproximare a conversiei.

FIGURA 4.27 ADC cu aproximații succesive

Prima aproximare începe cu un impuls de tact. Apoi, unitatea logică de control va seta MSB-ul registrului temporar (registrul de control DAC) la 1, toți biții rămași din acel registru fiind zero. Acest cuvânt digital din registrul temporar este furnizat la DAC. Rețineți că ieșirea analogică a DAC este acum egală cu jumătate din valoarea de scală maximă. Acest semnal analogic este scăzut din intrarea analogică de către comparator. Dacă ieșirea comparatorului este pozitivă, unitatea logică de control va păstra MSB-ul registrului temporar la 1 binar și va trece la următoarea aproximare. Dacă ieșirea comparatorului este negativă, unitatea logică de control va schimba MSB în 0 binar înainte de a trece la următoarea aproximare.

A doua aproximare va începe cu un alt impuls de tact. Această aproximare va avea în vedere al doilea MSB al registrului temporar. Ca și până acum, acest bit este setat la 1 și se face comparația. Dacă ieșirea comparatorului este pozitivă, acest bit este lăsat la valoarea 1 și se consideră al treilea MSB. Dacă ieșirea comparatorului este negativă, valoarea bitului va fi modificată la 0 înainte de a trece la al treilea MSB.

În acest mod, toți biții din registrul temporar sunt setați succesiv începând de la MSB și terminând cu LSB. Conținutul registrului temporar este apoi transferat în registrul de ieșire și un semnal „validat date” este transmis de unitatea logică de control, semnalând dispozitivul interfațat (computer) pentru a citi conținutul registrului de ieșire. Dispozitivul interfațat nu va citi registrul dacă nu este prezent un semnal data valid pentru date. În continuare, un impuls CC este trimis afară de unitatea logică de control și registrul temporar este șters. ADC este acum gata să accepte un alt eșantion de date pentru conversie digitală. Notați că procesul de conversie este esențial același pentru fiecare bit din registrul temporar. Prin urmare, timpul total de conversie este de aproximativ n ori timpul de conversie pentru un bit. De obicei, conversia unui bit poate fi completă într-o perioadă de tact.

Ar trebui să fie clar că, dacă valoarea maximă a unui semnal de intrare analogic depășește valoarea de scală maximă a unui DAC, atunci valoarea excesului de semnal nu poate fi convertită de ADC. Valoarea în exces va contribui direct la eroarea de la ieșirea digitală a ADC. De aici, această situația trebuie evitată fie prin scalarea corectă a intrării analogice, fie prin selectarea corectă a tensiunii de referință pentru unitatea DAC internă.

În discuția de mai sus, am presupus că valoarea semnalului de intrare analogic este întotdeauna pozitivă. În caz contrar, semnul semnalului trebuie să fie contabilizat prin anumite mijloace. De exemplu, semnul semnalului poate fi detectat din semnul ieșirii comparatorului inițial, atunci când toți biții sunt zero. Dacă semnul este negativ, atunci același proces de conversie A/D ca pentru un semnal pozitiv se realizează după comutarea polarității comparatorului. În sfârșit, semnul este corect reprezentat în ieșirea digitală (de exemplu, prin reprezentarea complementului lui doi pentru cantități negative). O altă abordare pentru a ține cont de semnalele de intrare (bipolare) cu semn este de a decala semnalul cu o tensiune constantă suficient de mare, astfel încât intrarea analogică să fie întotdeauna pozitivă. După conversie, numărul digital corespunzător acestui decalaj este scăzut din datele convertite în registrul de ieșire pentru a obține o ieșire digitală corectă. În ceea ce urmează, vom presupune că semnalul de intrare analogic este pozitiv.

4.6.2.2 ADC cu pantă dublă

Acest convertor analogic-digital folosește un circuit de integrare RC. Prin urmare, este cunoscut și ca ADC integrator. Acest ADC este simplu și ieftin. În particular, nu este utilizat un DAC intern și, prin urmare, erorile DAC, menționate anterior, nu vor intra la ieșirea ADC. Mai mult, parametrii R și C din circuitul de integrare nu intră la ieșirea ADC. Ca urmare, dispozitivul se autocompensează în ceea ce privește variațiile parametrilor circuitului datorate temperaturii, îmbătrânirii, etc. O deficiență a acestui ADC este rata de conversie lentă, deoarece, pentru rezultate precise, integrarea semnalului trebuie să continue mai mult timp în comparație cu timpul de conversie pentru ADC cu aproximații succesive.

Conversia analogic-digitală într-un ADC cu pantă dublă se bazează pe cronometrare (adică numărarea numărului de impulsuri de tact în timpul unui proces de încărcare a condensatorului). Principiul de operare poate fi explicat cu referire la circuitul de integrare prezentat în figura 4.28a. Rețineți că vi este o tensiune de intrare constantă în circuit și v este tensiunea de ieșire. Deoarece terminalul „+” al op-amp este pus la pământ, terminalul „-” (și nodul A) va avea și el tensiune zero. De asemenea, curenții prin terminalele op-amp sunt neglijabili. Prin urmare, balanța de curent la nodul A dă vi/R + C(dv/dt) = 0. Integrând această ecuație pentru vi constantă, avem

(4.36)

Ecuația 4.36 va fi utilizată pentru obținerea unui rezultat principal pentru ADC cu pantă dublă.

În figura 4.28b este prezentată o diagramă schematică pentru ADC cu două pante. Inițial, condensatorul C din circuitul integrator este descărcat (tensiune zero). Apoi, semnalul analogic vs este furnizat elementului de comutare și ținut constant de circuitul S/H. Simultan, un semnal de control „start conversion” (SC) este trimis unității logice de control. Acesta va șterge cronometrul și registrul de ieșire (adică toți biții sunt setați la zero) și va trimite un impuls către elementul de comutare pentru a conecta intrarea vs la circuitul de integrare. De asemenea, un semnal este trimis cronometrului pentru a iniția cronometrarea (numărarea). Condensatorul C va începe să se încarce. Ecuația 4.36 este acum aplicabilă cu intrarea vi = vs și starea inițială v(0)=0. Să presupunem că ieșirea integratorului v devine −vc la momentul t = t1. De aici, din Ecuația 4.36, avem

(i)

FIGURA 4.28 (a) Circuitul de integrare RC. (b) ADC cu pantă dublă.
(c) Curba de încărcare-descărcare cu pantă dublă

Cronometrul va ține evidența timpului de încărcare a condensatorului (ca număr de impulsuri de tact n) și va informa unitatea logică de control atunci când timpul scurs este t1 (adică, când numărul este n1). Rețineți că t1 și n1 sunt parametri ficși (și cunoscuți), dar tensiunea vc depinde de valoarea lui vs și nu este cunoscută.

În acest moment, unitatea logică de control va trimite un semnal către unitatea de comutare, care va conecta cablul de intrare al integratorului la o tensiune de alimentare negativă −vref. Simultan, este trimis un semnal către cronometru pentru a-i șterge conținutul și a începe din nou cronometrarea (numărarea). Acum condensatorul începe să se descarce. Ieșirea circuitului de integrare este monitorizată de unitatea „zero-detect”. Când această ieșire devine zero, unitatea de detectare-zero trimite un semnal către cronometru pentru a opri contorizarea. Unitatea de detectare-zero poate fi un comparator (amplificator diferențial) având unul dintre cele două terminale de intrare setate la potențial zero.

Acum să presupunem că timpul scurs este t2 (cu un număr corespunzător de n2). Ar trebui să fie clar că Ecuația 4.36 este valabilă și pentru procesul de descărcare a condensatorului. Rețineți că vi = −vref și v(0) = −vc în acest caz. De asemenea, v(t)=0 la t = t2. Prin urmare, din Ecuația 4.36, avem 0 = −vc + (vreft2)/RC. Deci,

(ii)

Când împărțim Ecuația (i) la (ii), obținem vs = vref (t2/t1). Dar, numărul de impulsuri al cronometrului este proporțional cu timpul scurs. Prin urmare, t2/t1 = n2/n1. Acum avem

(4.37)

Deoarece vref și n1 sunt cantități fixe, vref/n1 poate fi interpretat ca un factor de scalare pentru intrarea analogică. Atunci, rezultă din Ecuația 4.37 că al doilea număr n2 este proporțional cu eșantionul semnalului analogic vs. Rețineți că ieșirea cronometrului este disponibilă în forma digitală. În consecință, numărul n2 este utilizat ca ieșire digitală a ADC.

La sfârșitul perioadei de descărcare a condensatorului, numărul n2 din cronometru este transferat în registrul de ieșire al ADC și este setat semnalul „data valid”. Conținutul registrului de ieșire este acum gata de citit de sistemul digital interfațat, iar ADC este gata să convertească un nou eșantion.

Curba de încărcare-descărcare pentru condensator în timpul procesului de conversie este prezentată în figura 4.28c. Panta curbei în timpul încărcării este −vs/RC, iar panta în timpul descărcării este + vref/RC. Prin urmare, motivul utilizării termenului „dublă pantă” pentru denumirea acestui ADC este clar.

Așa cum am menționat anterior, orice variație în R și C nu afectează exactitatea ieșirii. Dar, din discuțiile de mai sus, ar trebui să fie clar că timpul de conversie depinde de timpul de descărcare a condensatorului t2 (rețineți că t1 este fixat), care la rândul său depinde de vc și, prin urmare, de valoarea semnalului de intrare vs (a se vedea Ecuația (i)) . Rezultă că, spre deosebire de ADC cu aproximații succesive, ADC cu pantă dublă are un timp de conversie care depinde direct de magnitudinea eșantionului de date de intrare. Acesta este un dezavantaj într-un fel, deoarece în multe aplicații preferăm să avem o rată de conversie constantă.

Discuția de mai sus a presupus că semnalul de intrare este pozitiv. Pentru un semnal negativ, trebuie modificată polaritatea tensiunii de alimentare vref. În plus, semnul trebuie să fie reprezentat în mod corespunzător în conținutul registrului de ieșire ca, de exemplu, în cazul ADC cu aproximații succesive.

4.6.2.3 ADC contor

ADC tip-contor are câteva aspecte în comun cu ADC cu aproximații succesive. Ambele sunt ADC-uri de tip comparație (sau cu buclă-închisă). Ambele folosesc o unitate DAC intern pentru a compara semnalul de intrare cu semnalul convertit. Principala diferență este că într-un ADC contor comparația începe cu LSB și continuă în jos. Rezultă că, într-un ADC contor, timpul de conversie depinde de nivelul semnalului, deoarece numărarea (comparația) se oprește atunci când se face o potrivire, rezultând timpi de conversie mai mici pentru valori ale semnalului mai mici.

În figura 4.29 este prezentată o diagramă schematică pentru un ADC contor. Rețineți că acest lucru este destul de similar cu figura 4.27. Inițial, toate registrele sunt șterse (adică, toți biții și numerele sunt setați la zero). Pe măsură ce un semnal analogic de date (din circuitul sample and hold) ajunge la comparator, un impuls SC este trimis la unitatea logică de control. Când ADC este gata pentru conversie (adică, atunci când semnalul „data valid” este on), unitatea logică de control inițiază contorul. Acum, contorul își stabilește numărul la 1, iar LSB-ul registrului DAC este setat și el la 1.

FIGURA 4.29 ADC contor

Ieșirea DAC este scăzută din intrarea analogică cu ajutorul comparatorului. Dacă ieșirea comparatorului este pozitivă, numărul este incrementat cu unu și acest lucru face ca numărul binar din registrul DAC să fie incrementat cu un LSB. Noua (crescută) ieșire a DAC este acum comparată cu semnalul de intrare. Acest ciclu de creștere a numărului și comparație se repetă până când ieșirea comparatorului devine mai mică sau egală cu zero. În acel moment, unitatea logică de control trimite afară un semnal CC și transferă conținutul contorului în registrul de ieșire. În cele din urmă, semnalul „data valid” este comutat on, ceea ce indică faptul că ADC este pregătit pentru un nou ciclu de conversie, iar conținutul registrului de ieșire (ieșirea digitală) este disponibil pentru a fi citit de sistemul digital interfațat.

Numărul contorului este disponibil în forma binară, care este compatibilă cu registrul de ieșire, precum și cu registrul DAC. Prin urmare, numărul poate fi transferat direct în aceste registre. Numărul când semnalul analogic este egal cu (sau puțin mai mic decât) ieșirea DAC este proporțional cu valoarea semnalului analogic. Prin urmare, acest număr reprezintă ieșirea digitală. Din nou, semnul semnalului de intrare trebuie să fie contabilizat adecvat pentru operarea bipolară.

4.6.2.4 Caracteristici de performanță ale ADC

Pentru ADC-urile care folosesc un DAC intern, se vor aplica aceleași surse de eroare care au fost discutate anterior pentru DAC-uri. Ambiguitatea codului la registrul de ieșire nu va fi o problemă, deoarece cantitatea digitală convertită este transferată instantaneu în registrul de ieșire. Ambiguitatea codului în registrul DAC poate provoca în continuare erori în ADC-urile care folosesc un DAC. Timpul de conversie este un factor major, acesta fiind mult mai mare pentru un ADC. Pe lângă rezoluție și gama dinamică, eroarea de cuantificare va fi aplicabilă pentru un ADC. Aceste considerente, care guvernează performanța unui ADC, sunt discutate în continuare.

4.6.2.4.1 Rezoluție și eroare de cuantizare

Numărul de biți n dintr-un registru ADC determină rezoluția și gama dinamică (DR) ale unui ADC. Pentru un ADC n-bit, dimensiunea registrului de ieșire este de n biți. Prin urmare, cel mai mic increment posibil al ieșirii digitale este un LSB. Variația intrării analogice care are ca rezultat o variație de un LSB la ieșire este rezoluția ADC. Pentru cazul unipolar (fără semn), gama disponibilă la ieșirile digitale este de la 0 la 2n - 1. Aceasta reprezintă gama dinamică. Rezultă că, la fel ca pentru un DAC, gama dinamică a unui ADC n-bit este dată de raportul DR = 2n-1 sau în decibeli DR = 20 log10 (2n-1) dB. Valoarea la scală maximă a unui ADC este valoarea intrării analogice care corespunde la ieșirea digitală maximă.

Să presupunem că un semnal analogic din gama dinamică a unui anumit ADC este convertit de acel ADC. Deoarece intrarea analogică (valoarea eșantionului) are o rezoluție infinitezimală și reprezentarea digitală are o rezoluție finită (un LSB), o eroare este introdusă în procesul de conversie analogic-digitală. Aceasta este cunoscută sub denumirea de eroare de cuantizare. Un număr digital suferă creșteri succesive în trepte constante de 1 LSB. Dacă o valoare analogică cade într-un punct intermediar în cadrul unei trepte de un LSB, ca urmare rezultă o eroare de cuantizare. Rotunjirea ieșirii digitale poate fi realizată după cum urmează: magnitudinea erorii atunci când este cuantizată în sus este comparată cu cea când este cuantizată în jos; să spunem, folosind două elemente de reținere și un amplificator diferențial. Atunci, reținem valoarea digitală corespunzând mărimii de eroare mai mici. Dacă valoarea analogică este sub valoarea de 1/2 LSB, atunci valoarea digitală corespunzătoare este reprezentată de valoarea de la începutul treptei. Dacă valoarea analogică este peste valoarea de 1/2 LSB, atunci valoarea digitală corespunzătoare este valoarea de la sfârșitul treptei. Rezultă că, prin acest tip de rotunjire, eroarea de cuantizare nu depășește 1/2 LSB.

4.6.2.4.2 Monotonia, neliniaritatea și eroarea de offset

Considerațiile privind monotonia și neliniaritatea sunt importante atât pentru un ADC, cât și pentru un DAC. În cazul unui ADC, intrarea este un semnal analogic, iar ieșirea este digitală. Nerespectând eroarea de cuantizare, ieșirea digitală a unui ADC va crește în trepte constante sub forma unei funcții scară ideale, atunci când intrarea analogică este crescută de la 0 în trepte ale rezoluției dispozitivului (δy). Acesta este cazul ideal de monotonie. Cea mai bună aproximare în linie dreaptă la această curbă are o pantă egală cu 1/δy (LSB/volți). Acesta este factorul de câștig ideal sau de scală ideală. Cu toate acestea, va exista o eroare de offset de 1/2 LSB, deoarece cea mai bună aproximare liniară nu va trece prin origine. Se pot face ajustări pentru această eroare de offset.

Într-un ADC, pot avea loc tranziții incorecte de biți, din cauza diverselor erori care ar putea fi prezente și, de asemenea, posibil din cauza proastei funcționări a circuitului. Cea mai bună aproximare liniară în astfel de condiții defecte va avea o pantă diferită de la câștigul ideal. Diferența este eroarea de câștig.

Neliniaritatea este abaterea maximă a ieșirii de la cea mai bună aproximare liniară. Este clar că, cu tranziții perfecte de biți, în cazul ideal, ar fi prezentă o neliniaritate de 1/2 LSB. Neliniarități mai mari decât aceasta ar rezulta din tranziții incorecte de biți. Ca și în cazul unui DAC, o altă sursă de neliniaritate într-un ADC sunt neliniaritățile de circuit, care ar deforma semnalul de intrare analogic înainte de a fi convertit în forma digitală.

4.6.2.4.3 Viteza ADC

Este clar că conversia analogic-digitală este mult mai mare consumatoare de timp decât conversia digital-analogică. Timpul de conversie este un factor foarte important, deoarece rata la care poate avea loc conversia reglementează multe aspecte ale achiziției de date, în special în aplicațiile în timp real. De exemplu, rata de eșantionare a datelor trebuie să se sincronizeze cu rata ADC. Aceasta, la rândul său, va determina frecvența Nyquist (jumătate din rata de eșantionare), care corespunde lățimii de bandă a semnalului eșantionat și este valoarea maximă a frecvenței utile care este păstrată ca urmare a eșantionării. În plus, rata de eșantionare va dicta cerințele de stocare și memorie. O altă considerație importantă legată de rata de conversie a unui ADC este faptul că un eșantion de semnal trebuie menținut la aceeași valoare pe întregul proces de conversie în forma digitală. Acest lucru ar necesita un circuit de memorare, iar acest circuit ar trebui să execute cu exactitate la cel mai mare timp de conversie posibil pentru unitatea ADC particulară.

Timpul necesar pentru ca o intrare analogică eșantionată să fie convertită în forma digitală va depinde de tipul de ADC. De obicei, într-un ADC tip comparație (care utilizează un DAC intern), fiecare tranziție de bit va avea loc într-o singură perioadă de tact Δt. De asemenea, într-un ADC integrator (pantă dublă), fiecare număr de tact va avea nevoie de un timp de Δt. Pe această bază, pentru cele trei tipuri de ADC despre care am discutat, următoarele cifre pot fi date pentru timpii lor de conversie.

1. ADC de aproximații succesive

În acest caz, pentru un ADC cu n-biți, sunt necesare n comparații. Prin urmare, timpul de conversie este dat de

(4.38)

în care Δt este perioada de tact. Rețineți că pentru acest ADC, tc nu depinde de nivelul semnalului (intrare analogică).

2. ADC cu pantă dublă (integrator)

În acest caz, timpul de conversie este timpul total necesar pentru a genera cele două numere n1 și n2 (a se vedea figura 4.28c). Prin urmare,

(4.39)

Rețineți că n1 este un număr fix. Dar n2 este un număr variabil, care reprezintă ieșirea digitală și este proporțional cu intrarea analogică (nivel de semnal). Prin urmare, în acest tip de ADC, timpul de conversie depinde de nivelul de intrare analogic. Cea mai mare ieșire pentru un convertor cu n-biți este 2n-1. Prin urmare, cel mai mare timp de conversie poate fi dat de

(4.40)

3. ADC contor

Pentru un ADC contor, timpul de conversie este proporțional cu numărul de tranzacții de biți (1 LSB pe pas) de la zero la ieșirea digitală no. Prin urmare, timpul de conversie este dat de

(4.41)

în care no este valoarea de ieșire digitală (în zecimal).

Rețineți că și pentru acest ADC, tc depinde de magnitudinea eșantionului de date de intrare. Pentru un ADC pe n-biți, deoarece valoarea maximă a lui no este 2n −1, avem timpul de conversie maxim

(4.42)

Prin compararea ecuațiilor 4.38, 4.40 și 4.42, se poate concluziona că ADC-aproximații succesive este cel mai rapid dintre cele trei tipuri discutate.

Timpul total necesar pentru a converti un semnal analogic va depinde de alți factori, în afară de timpul necesar conversiei datelor eșantionate în formă digitală. De exemplu, în achiziția de date multi-canal (multiplexare), timpul necesar pentru a selecta canalele trebuie luat în considerare. În plus, trebuie să se includă timpul necesar pentru eșantionarea datelor și timpul pentru transferul datelor digitale convertite în registrul de ieșire. De fapt, rata de conversie pentru un ADC este inversă acestui timp general necesar pentru un ciclu de conversie. Totuși, în mod obișnuit, rata de conversie depinde în primul rând de timpul de conversie în biți în cazul unui ADC de tip-comparație și de timpul de integrare în cazul unui ADC de tip-integrare.

Exemplul 4.5

O perioadă de timp tipică pentru o treaptă de comparație sau o treaptă de numărare într-un ADC este Δt = 5 μs. Prin urmare, pentru un ADC cu aproximații succesive pe 8 biți, timpul de conversie este de 40 μs. Rata de eșantionare corespunzătoare ar fi de ordinul (mai puțin ca) 1/40 × 106 = 25 × 103 eșantioane/s (sau 25 kHz). Rata maximă de conversie pentru un ADC contor de 8 biți ar fi de aproximativ 5 × (28 - 1) = 1275 μs. Rata de eșantionare corespunzătoare ar fi de ordinul a 780 de eșantioane/s.

Notă: Acest lucru este considerabil lent. Timpul maxim de conversie pentru un ADC cu pantă dublă ar fi probabil mai mare (adică, rata mai lentă).

Exemplul 4.6

Luați în considerare un ADC de 8 biți. Pentru un semnal de intrare în intervalul 10 V, eroarea de cuantizare va fi de 10/(28 −1) V = 39,2 mV. Să presupunem că timpul de conversie A/D este de 100 ns (adică 0,1 μs). Dacă semnalul de intrare are o frecvență maximă tranzitorie de 0,5 kHz și o rată tranzitorie corespunzătoare de 5 × 103 V/s, semnalul se va schimba cu o cantitate maximă de 5×103× 0,1×10-6 V = 0,5 mV. Aceasta este incertitudinea semnalului (incertitudine în amplitudine) datorită naturii tranzitorii a semnalului în timpul conversiei. Această incertitudine trebuie să fie mai mică decât eroarea de cuantificare, ceea ce este cazul în acest exemplu.

4.6.3 Circuite Sample-and-Hold (eșantionare și memorare) S/H

Aplicațiile tipice de achiziție de date utilizează conversia analogic-digitală. Intrarea analogică la un ADC poate fi foarte tranzitorie și, în plus, procesul de conversie analogic-digitală în sine nu este instantaneu (timpul ADC poate fi mult mai mare decât timpul de conversie digital-analogică). Mai exact, semnalul analogic de intrare ar putea varia cu o rată mai mare decât rata ADC. Atunci, valoarea semnalului de intrare va varia pe durata perioadei de conversie și va exista o ambiguitate cu privire la ce valoare de intrare analogică corespunde o anumită valoare de ieșire digitală. Prin urmare, este necesar să eșantionăm semnalul de intrare analogic și să menținem intrarea la ADC la această valoare eșantionată până când se finalizează conversia analogic-digitală. Cu alte cuvinte, întrucât avem de obicei de-a face cu semnale analogice care pot varia cu viteză mare, ar trebui să fie necesar S/H (sample and hold) pentru semnalul de intrare în timpul fiecărui ciclu de conversie analogic-digitală. Fiecare eșantion de date trebuie generat și capturat de circuitul S/H la emiterea semnalului de control SC, iar nivelul de tensiune capturat trebuie să fie menținut constant până când un semnal de control CC este emis de unitatea ADC.

Elementul principal dintr-un circuit S/H este condensatorul de reținere (holding). În figura 4.30 este prezentată o diagramă bloc a unui circuit de eșantionare și reținere. Semnalul de intrare analogic este furnizat printr-un repetor de tensiune la un comutator solid-state. Comutatorul utilizează de obicei un FET, cum ar fi MOSFET. Comutatorul este închis ca răspuns la un „sample pulse” și este deschis ca răspuns la un „hold pulse”. Ambele impulsuri de control sunt generate de unitatea logică de control a ADC. În intervalul de timp dintre aceste două impulsuri, condensatorul de reținere este încărcat la tensiunea de intrare eșantionată. Această tensiune a condensatorului este apoi furnizată către ADC printr-un al doilea repetor de tensiune.

FIGURA 4.30 Un circuit sample and hold

Funcțiile celor două repetoare de tensiune sunt explicate în această secțiune. Când comutatorul FET este închis ca răspuns la o comandă de eșantionare (impuls), condensatorul trebuie să fie încărcat cât mai repede. Constanta de timp asociată (constantă de timp de încărcare) τc este dată de τc = RsC în care Rs este rezistența sursei și C este capacitatea condensatorului de reținere. Deoarece τc trebuie să fie foarte mic pentru încărcare rapidă, și deoarece C este fixat de necesitățile de memorare (de obicei C este de ordinul a 100 pF unde 1 pF = 1×10-12 F), avem nevoie de o rezistență de sursă foarte mică. Cerința este îndeplinită de repetorul de tensiune de la intrare (despre care se știe că are o impedanță de ieșire foarte mică), oferind astfel un Rs foarte mic. Mai mult, având în vedere că un repetor de tensiune are un câștig unitate, tensiunea la ieșire a acestui repetor de tensiune de la intrare ar fi egală cu tensiunea semnalului de intrare analogic, după cum este necesar.

Atunci, după ce comutatorul FET este deschis ca răspuns la o comandă de reținere (impuls), condensatorul nu trebuie să se descarce. Această cerință este îndeplinită datorită prezenței următorului repetor de tensiune de la ieșire. Deoarece impedanța de intrare a unui repetor de tensiune este foarte mare, curentul prin terminalele sale ar fi aproape zero. Din această cauză, condensatorul de reținere va avea o rată de descărcare aproape zero în condiția de „reținere”. Mai mult, ne dorim ca ieșirea acestui al doilea repetor de tensiune să fie egală cu tensiunea condensatorului. Această condiție este de asemenea satisfăcută datorită faptului că un repetor de tensiune are un câștig unitate. Prin urmare, eșantionarea ar fi aproape instantanee, iar ieșirea circuitului S/H ar fi menținută (aproape) la o constantă în perioada de menținere, datorită prezenței celor două repetoare de tensiune. Rețineți că circuitele S/H sunt dispozitive de memorie-de-ordin-zero.

4.6.4 Multiplexoare

Un multiplexor (MUX) este utilizat pentru a selecta un canal la un moment dat dintr-un grup de canale de semnal și a-l conecta la o unitate hardware comună. În acest fel, o unitate hardware costisitoare și complexă poate fi distribuită în timp între mai multe canale de semnal. De obicei, selecția canalului se face în mod secvențial, la o rată de selectare a canalului fixă. Există două tipuri de multiplexoare: multiplexoare analogice și multiplexoare digitale. Un multiplexor analogic este utilizat pentru a scana un grup de canale analogice.Alternativ, un multiplexor digital este utilizat pentru a citi un cuvânt de date la un moment secvențial dintr-un set de cuvinte de date digitale.

Procesul de distribuire a unui singur canal de date între mai multe canale de ieșire este cunoscut sub numele de demultiplexare. Un demultiplexor (sau distribuitor de date) îndeplinește funcția inversă a unui multiplexor (sau scanner). Un demultiplexer poate fi utilizat, de exemplu, atunci când același semnal (procesat) de la un computer digital este necesar pentru mai multe scopuri (de exemplu, afișare digitală, citire analogică, trasare digitală sau control).

4.7 Circuite în punte