Den allmänna principen för drift av ADC. Vad är ADC. Bitbalanserad analog-till-digital-omvandlare

Navigationskartor kan behövas som mest olika situationer... Antingen är du vilse i skogen, eller så letar du efter den nödvändiga gatan i staden. En tjänst som kan hjälpa dig att hantera detta är Google Maps. Den består av ett par applikationer. Nämligen: från sajten Google kartor och Google Transit (ruttplaneringsprogram). På grund av det faktum att Google överför data direkt från satelliten kan du med hjälp av dessa kartor ta reda på detaljerat diagram rutt, husnummer, gatunamn och hur du kan gå eller resa (med bil, buss, cykel) till din destination.
Den här tjänsten är en utmärkt referens som täcker många områden i livet, från resor till att planera en promenad eller åka på semester.

Utseende

Kartan för användare kan visas på två sätt:
  • traditionellt (topografisk karta, analog av Mercator);
  • satellitbilder (ej med uppkopplat läge, men gjorde för ett tag sedan).
Enligt Mercator-projektionen skapades kartornas skala, som är konstant: mot ekvatorn från polerna minskar den och vice versa.
Ett relaterat projekt till Google Maps - Google Planet (motsvarar världen) kompletterar tjänsten med bilder av jordens poler.

Egenheter

Alla länder avslöjar inte var sina fastigheter ligger. Därför platser på kartan där det finns klassificerade områden skuggad... Dessa inkluderar till exempel Vita huset, Capitolium.

Olika tomter har olika upplösning på kartan. Ju lägre befolkningstäthet ett territorium har, desto mindre detaljer är kända om det. Vissa platser på kartan är gömda under molnen. Även om inte alla föremål fångades med satellit. Bilder på några av dem kom från flygfoton från en höjd av 300 meter eller mer. På sådana platser når terrängdetaljer höga värden.

Servicegränssnitt

Google Maps är mycket lätt att hantera. Den här appen är gjord för människor och det är så det fungerar. På vänster sida finns en knapp för att byta utseende på kort ( topografisk eller satellitvy). Och på höger sida av skärmen kan användaren hitta zoomknappar ( öka och minska).
Systemet tillåter sina användare att ange adressen eller namnet på objektet och få information om dess plats, adress, koordinater, utseende... För vissa zoner är igenkänningstjänsten "vad finns där" tillgänglig, medan Google Maps visar vilket föremål (bensinstation, museum, butik, teater) som finns där.

Google kartor online mycket flitigt använda javascript-tjänsten. Nya områden på kartan visas på sidan när användaren flyttar den runt på skärmen. Om adressen till ett specifikt objekt har angetts, laddas sidan om och platsen för den önskade platsen visas på kartan med en dynamisk röd markörikon.

Så att kartan kunde vara värd för ägarna av andra sajter, meddelade Google gratis tjänst: API-kartor (Application Programming Interface) 2005. Den här kartan kan läggas till vilken del av webbplatsen som helst. De på det här ögonblicket det finns mer än 350 tusen över hela världen.

Om Google Maps

Från och med 2011 har Google meddelat att de tillhandahåller sina karttjänst för över 150 miljoner kunder. Detta gör tjänsten till en av de största och mest ambitiösa internetnavigeringstjänsterna.
Interaktiva Google Maps är gratis tjänst, med tillstånd av Google, som inte innehåller annonser, utan endast tillhandahåller högkvalitativ och verifierad information om platsen och syftet med objekt runt om i världen.

Låt oss titta på huvudområdet av frågor som kan hänföras till handlingsprincipen olika typer... Sekventiell räkning, bitvis balansering - vad döljer sig bakom dessa ord? Vad är funktionsprincipen för ADC för en mikrokontroller? Vi kommer att överväga dessa, liksom en rad andra frågor, inom ramen för artikeln. Vi kommer att ägna de tre första delarna allmän teori, och från den fjärde underrubriken kommer vi att studera principen för deras arbete. Du kan in olika litteratur uppfylla villkoren ADC och DAC. Funktionsprincipen för dessa enheter är något annorlunda, så förväxla dem inte. Så artikeln kommer att överväga från analog till digital form, medan DAC fungerar tvärtom.

Definition

Innan vi överväger principen för driften av ADC, låt oss ta reda på vilken typ av enhet det är. Analog-till-digital-omvandlare är enheter som omvandlar en fysisk storhet till en motsvarande numerisk representation. Nästan vad som helst kan fungera som en initial parameter - ström, spänning, kapacitans, resistans, axelrotationsvinkel, pulsfrekvens och så vidare. Men för att vara säker kommer vi bara att arbeta med en transformation. Detta är spänningskod. Valet av detta arbetsformat är inte av misstag. När allt kommer omkring beror ADC (principen för denna enhets funktion) och dess funktioner till stor del på vilket mätkoncept som används. Detta förstås som processen att jämföra ett visst värde med en tidigare etablerad standard.

ADC-egenskaper

De viktigaste är bitdjup och konverteringsfrekvens. Den första uttrycks i bitar och den andra i antal per sekund. Moderna analog-till-digital-omvandlare kan ha en bitbredd på 24 bitar eller en konverteringshastighet som går upp till GSPS-enheter. Observera att ADC endast kan ge dig en av dess egenskaper åt gången. Ju högre indikatorer de har, desto svårare är det att arbeta med enheten, och det kostar i sig mer. Men lyckligtvis kan du få de nödvändiga bitindikatorerna genom att offra enhetens hastighet.

ADC-typer

Funktionsprincipen skiljer sig för olika grupper av enheter. Vi täcker följande typer:

  1. Direkt konvertering.
  2. Med konsekvent inzoomning.
  3. Med parallell konvertering.
  4. Analog till digital omvandlare med laddningsbalansering (delta-sigma).
  5. Integrering av ADC.

Det finns många andra pipelinerade och kombinerade typer som har sina egna specifika egenskaper med olika arkitekturer. Men de prover som kommer att övervägas inom ramen för artikeln är av intresse på grund av det faktum att de spelar en vägledande roll i deras nisch av enheter med denna specificitet. Låt oss därför studera principen för driften av ADC, såväl som dess beroende av den fysiska enheten.

Direkt analog till digital omvandlare

De blev mycket populära på 60- och 70-talen av förra seklet. De har tillverkats i formen sedan 80-talet. Dessa är mycket enkla, till och med primitiva enheter som inte kan skryta med betydande prestanda. Deras bitdjup är vanligtvis 6-8 bitar, och hastigheten överstiger sällan 1 GSPS.

Funktionsprincipen för denna typ av ADC är som följer: ingångssignalen matas samtidigt till de positiva ingångarna på komparatorerna. En spänning av en viss storlek läggs på de negativa terminalerna. Och sedan bestämmer enheten dess funktionssätt. Detta görs tack vare referensspänningen. Låt oss säga att vi har en enhet där det finns 8 komparatorer. När ½ av referensspänningen appliceras kommer endast 4 av dem att slås på. Den kommer att bildas av prioritetskodaren och fixeras av utgångsregistret. När det gäller fördelarna och nackdelarna kan vi säga att arbetet låter dig skapa höghastighetsenheter. Men för att få det bitdjup som krävs måste du svettas mycket.

Den allmänna formeln för antalet komparatorer ser ut så här: 2 ^ N. Under N måste du ange antalet siffror. Exemplet som diskuterades tidigare kan användas igen: 2 ^ 3 = 8. Totalt behövs 8 komparatorer för att få den tredje siffran. Detta är funktionsprincipen för ADC:erna, som skapades först. Inte särskilt bekvämt, så andra arkitekturer dök upp senare.

Successiv approximation analog till digital omvandlare

Här används "vägnings"-algoritmen. I förkortad form kallas enheter som använder denna teknik helt enkelt sekventiella ADC:er. Funktionsprincipen är som följer: enheten mäter värdet på ingångssignalen och jämförs sedan med siffrorna som genereras enligt en viss metod:

  1. Ställer in hälften av den möjliga referensspänningen.
  2. Om signalen har överskridit värdegränsen från punkt # 1, jämförs den med siffran som ligger i mitten mellan det återstående värdet. Så i vårt fall kommer det att vara ¾ av referensspänningen. Om referenssignalen understiger denna indikator, kommer jämförelsen att utföras med den andra delen av intervallet enligt samma princip. V detta exempel detta är ¼ av spänningsreferensen.
  3. Steg 2 måste upprepas N gånger, vilket ger oss N bitar av resultatet. Detta beror på H antalet jämförelser som görs.

Denna funktionsprincip gör det möjligt att erhålla enheter med en relativt hög omvandlingsfrekvens, som är successiva approximations-ADC. Funktionsprincipen, som du kan se, är enkel, och dessa enheter är utmärkta för olika fall.

Parallell analog till digital omvandlare

De fungerar som seriella enheter. Beräkningsformeln är (2 ^ H) -1. För det tidigare behandlade fallet behöver vi (2 ^ 3) -1 komparatorer. För arbete används en viss uppsättning av dessa enheter, som var och en kan jämföra ingången och individuell referensspänning. Parallella A/D-omvandlare är ganska snabba enheter. Men principen för konstruktion av dessa enheter är sådan att betydande kraft krävs för att upprätthålla deras prestanda. Därför är det opraktiskt att använda dem med batteri.

Bitbalanserad analog-till-digital-omvandlare

Det fungerar på liknande sätt som föregående enhet... Därför, för att förklara driften av ADC, kommer driftprincipen för nybörjare att betraktas bokstavligen på ena handens fingrar. Dessa enheter är baserade på fenomenet dikotomi. Med andra ord utförs en sekventiell jämförelse av det uppmätta värdet med en viss del. maximalt värde... Värden i ½, 1/8, 1/16 och så vidare kan tas. Därför kan analog-till-digital-omvandlaren slutföra hela processen i N iterationer ( på varandra följande steg). Dessutom är H lika med bitdjupet för ADC:n (titta på de tidigare givna formlerna). Därmed har vi en betydande tidsvinst, om teknikens hastighet är särskilt viktig. Trots sin betydande hastighet har dessa enheter också ett lågt statiskt fel.

Laddningsbalanserade A/D-omvandlare (Sigma Delta)

Detta är den mest intressanta typen av enhet, inte minst på grund av dess funktionsprincip. Den består i att jämföra inspänningen med den som ackumuleras av integratorn. Pulser med negativ eller positiv polaritet matas till ingången (allt beror på resultatet av föregående operation). Således kan vi säga att en sådan analog-till-digital-omvandlare är ett enkelt spårningssystem. Men detta är bara som ett exempel för jämförelse, så att du kan förstå ADC. Funktionsprincipen är systemisk, men för att denna analog-till-digital-omvandlare ska fungera effektivt räcker det inte. Slutresultatet är en oändlig ström av ettor och nollor som går genom det digitala lågpassfiltret. En viss bitsekvens bildas av dem. Det finns ADC-omvandlare av första och andra ordningen.

Integrering av analog-till-digital-omvandlare

Detta är det sista specialfallet som kommer att behandlas inom ramen för artikeln. Vidare kommer vi att beskriva principen för driften av dessa enheter, men på en generell nivå. Denna ADC är en push-pull integration analog-till-digital-omvandlare. Träffa liknande enhet kan vara i en digital multimeter. Och detta är inte förvånande, eftersom de ger hög noggrannhet och samtidigt väl undertrycka störningar.

Låt oss nu fokusera på hur det fungerar. Den består i att insignalen laddar kondensatorn under en bestämd tid. Vanligtvis är denna period enheten för nätfrekvensen som driver enheten (50 Hz eller 60 Hz). Det kan också vara flera. Sålunda undertrycks högfrekventa störningar. Samtidigt utjämnas påverkan av instabil spänning nätverkskälla erhålla elektricitet för att resultatet ska vara korrekt.

När laddningstiden för A/D-omvandlaren slutar, börjar kondensatorn laddas ur med en viss fast hastighet. Enhetens interna räknare räknar antalet klockpulser som genereras under denna process. Således, ju längre tidsintervall, desto mer betydelsefulla indikatorer.

ADC:er för push-pull-integration har hög noggrannhet och på grund av detta, såväl som en relativt enkel konstruktionsstruktur, utförs de som mikrokretsar. Den största nackdelen med denna funktionsprincip är beroendet av nätverksindikatorn. Kom ihåg att dess kapacitet är bunden till längden på nätaggregatets frekvensperiod.

Så här fungerar en ADC med dubbelintegration. Funktionsprincip denna apparatäven om det är ganska komplext, ger det kvalitativa indikatorer... I vissa fall är detta helt enkelt nödvändigt.

Vi väljer AOC med den arbetsprincip vi behöver

Låt oss säga att vi har en specifik uppgift framför oss. Vilken enhet ska man välja så att den kan tillfredsställa alla våra behov? Låt oss först prata om upplösning och noggrannhet. De är mycket ofta förvirrade, även om de i praktiken är mycket svagt beroende av den ena av den andra. Kom ihåg att en 12-bitars A/D-omvandlare kan vara mindre exakt än en 8-bitars. I detta fall är upplösningen ett mått på hur många segment som kan extraheras från ingångsområdet för den uppmätta signalen. Så, 8-bitars ADC har 2 8 = 256 sådana enheter.

Noggrannhet är den totala avvikelsen av det erhållna omvandlingsresultatet från det ideala värdet, som bör vara vid en given inspänning. Det vill säga, den första parametern kännetecknar ADC:s potentiella kapacitet, och den andra visar vad vi har i praktiken. Därför kan en enklare typ vara lämplig för oss (till exempel direkta analog-till-digital-omvandlare), som kommer att möta behoven på grund av hög noggrannhet.

För att ha en uppfattning om vad som behövs måste du först beräkna fysiska parametrar och bygga matematisk formel interaktioner. Statiska och dynamiska fel är viktiga i dem, för när du använder olika komponenter och principer för att bygga en enhet kommer de att påverka dess egenskaper på olika sätt. Mer detaljerad information finns i teknisk dokumentation som erbjuds av tillverkaren av varje specifik enhet.

Exempel

Låt oss ta en titt på SC9711 ADC. Funktionsprincipen för denna enhet är komplex på grund av dess storlek och kapacitet. Förresten, på tal om det senare, bör det noteras att de verkligen är olika. Så till exempel sträcker sig frekvensen för möjligt arbete från 10 Hz till 10 MHz. Med andra ord kan den göra 10 miljoner prover per sekund! Och själva enheten är inte något integrerat, utan har en modulär konstruktionsstruktur. Men det används som regel i en komplex teknik, där det är nödvändigt att arbeta med stor mängd signaler.

Slutsats

Som du kan se är ADC:er baserade på olika principer arbete. Detta gör att vi kan välja enheter som möter de framväxande behoven och samtidigt gör det möjligt för oss att på ett klokt sätt disponera de tillgängliga medlen.

Den här artikeln diskuterar de grundläggande frågorna om ADC:s funktionsprincip olika typer... Samtidigt förblev några viktiga teoretiska beräkningar angående den matematiska beskrivningen av analog-till-digital konvertering utanför artikelns ram, men länkar tillhandahålls genom vilka den intresserade läsaren kan hitta en djupare övervägande teoretiska aspekter ADC-drift. Således handlar artikeln mer om att förstå de allmänna principerna för ADC-drift än om en teoretisk analys av deras arbete.

Introduktion

Som en utgångspunkt, låt oss definiera analog-till-digital konvertering. Analog-till-digital-omvandling är processen att konvertera en ingående fysisk kvantitet till dess numeriska representation. En analog-till-digital-omvandlare är en enhet som utför denna omvandling. Formellt kan ingångsvärdet för ADC vara vilket som helst fysisk kvantitet- spänning, ström, resistans, kapacitans, pulsrepetitionshastighet, axelrotationsvinkel, etc. Men för tydlighetens skull kommer vi i det följande under ADC:n uteslutande att mena spänning-till-kod-omvandlare.


Begreppet analog-till-digital konvertering är nära besläktat med begreppet mätning. Mätning avser processen att jämföra det uppmätta värdet med en viss standard; under analog-till-digital konvertering jämförs ingångsvärdet med ett visst referensvärde (som regel med en referensspänning). Således kan A/D-omvandling ses som ett mått på värdet på en insignal, och alla metrologiska begrepp som mätfel är tillämpliga på den.

Huvudegenskaper hos ADC

ADC har många egenskaper, varav de viktigaste är omvandlingsfrekvensen och bitdjupet. Omvandlingshastigheten uttrycks vanligtvis i sampel per sekund (SPS), och bitdjupet är i bitar. Moderna ADC:er kan vara upp till 24 bitar breda och ha en omvandlingshastighet upp till GSPS-enheter (inte samtidigt, förstås). Ju högre hastighet och bitdjup, desto svårare är det att få de egenskaper som krävs, desto dyrare och mer komplex blir omvandlaren. Konverteringshastighet och bitdjup är relaterade till varandra på ett visst sätt, och vi kan öka det effektiva konverteringsbitdjupet genom att offra hastigheten.

ADC-typer

Det finns många typer av ADC, men för denna artikels syften kommer vi att begränsa oss till att endast överväga följande typer:

  • ADC parallell konvertering (direkt konvertering, flash ADC)
  • Successive Approximation ADC (SAR ADC)
  • delta sigma ADC (laddningsbalanserad ADC)
Det finns också andra typer av ADC:er, inklusive pipelined och kombinerade typer, bestående av flera ADC:er med (i allmänhet) annorlunda arkitektur... Ovanstående ADC-arkitekturer är dock de mest indikativa på grund av det faktum att varje arkitektur upptar en viss nisch i det övergripande bithastighetsintervallet.

ADC:erna för direkt (parallell) omvandling har den högsta hastigheten och lägsta bitdjupet. TLC5540 parallellkonvertering ADC från Texas Instruments har till exempel en hastighet på 40MSPS med en bitbredd på endast 8 bitar. ADC:er av denna typ kan ha omvandlingsfrekvenser på upp till 1 GSPS. Det kan noteras här att pipelineade ADC:er har ännu bättre prestanda, men de är en kombination av flera ADC:er med lägre prestanda och deras övervägande ligger utanför ramen för denna artikel.

Den mellersta nischen i bithastighetsraden upptas av successiva approximations-ADC. Typiska värden är 12-18 bitar vid en omvandlingshastighet på 100KSPS-1MSPS.

Den största noggrannheten uppnås av sigma-delta ADC:er med en kapacitet på upp till 24 bitar inklusive och en hastighet från SPS-enheter till KSPS-enheter.

En annan typ av ADC som har funnit användning på senare tid är den integrerande ADC. Integrerande ADC:er ersätts nu till stor del av andra typer av ADC:er, men kan hittas i äldre instrumentering.

ADC direktkonvertering

Direktkonvertering ADC blev utbredd 1960-1970 och började produceras i formen integrerade kretsar på 1980-talet. De används ofta i "pipelined" ADC:er (de beaktas inte i den här artikeln) och har en kapacitet på 6-8 bitar med en hastighet på upp till 1 GSPS.

Arkitekturen för direktkonverteringen ADC visas i fig. 1

Ris. 1. Strukturplan ADC direktkonvertering

Funktionsprincipen för ADC:n är extremt enkel: ingångssignalen matas samtidigt till alla "plus"-ingångar på komparatorerna, och ett antal spänningar matas till "minus" som erhålls från referensspänningen genom att dividera med motstånd R. För kretsen i fig. 1 den här raden blir så här: (1/16, 3/16, 5/16, 7/16, 9/16, 11/16, 13/16) Uref, där Uref är ADC-referensspänningen.

Låt spänningen lika med 1/2 Uref appliceras på ADC-ingången. Då kommer de första 4 komparatorerna att fungera (om du räknar från botten), och logiska enheter kommer att visas vid deras utgångar. Prioritetskodaren kommer att bilda en "kolumn" av enheter binär kod, som fångas upp av utgångsregistret.

Nu blir fördelarna och nackdelarna med en sådan omvandlare tydliga. Alla komparatorer arbetar parallellt, kretsfördröjningstiden är lika med fördröjningstiden i en komparator plus fördröjningstiden i givaren. Komparatorn och kodaren kan göras mycket snabba, som ett resultat har hela kretsen en mycket hög hastighet.

Men för att få N bitar behövs 2 ^ N komparatorer (och kodarens komplexitet växer också med 2 ^ N). Diagrammet i fig. 1. innehåller 8 komparatorer och har 3 bitar, för att få 8 bitar behöver man 256 komparatorer, för 10 bitar - 1 024 komparatorer, för en 24-bitars ADC skulle de behöva över 16 miljoner. Dock har tekniken ännu inte nått sådana höjder.

Successiv approximation ADC

En analog-digitalomvandlare (SAR) (Successive Approximation Register) mäter storleken på en insignal genom att utföra en serie på varandra följande "viktningar", det vill säga jämförelser av ingångsspänningsvärdet med ett antal värden som genereras enligt följande:

1. i det första steget ställs värdet lika med 1 / 2Uref in på utgången av den inbyggda digital-till-analog-omvandlaren (hädanefter antar vi att signalen ligger inom området (0 - Uref).

2.om signalen är större än detta värde jämförs den med spänningen som ligger i mitten av det återstående intervallet, dvs. I detta fall, 3 / 4Uref. Om signalen är mindre ställ in nivån, så kommer nästa jämförelse att göras med mindre än hälften av det återstående intervallet (dvs med 1/4Uref-nivån).

3. Steg 2 upprepas N gånger. Således genererar N jämförelser ("viktningar") N bitar av resultatet.

Ris. 2. Blockschema över den successiva approximationen ADC.

Således består SAR ADC av följande enheter:

1. Komparator. Den jämför ingångsvärdet och det aktuella värdet för "vikt"-spänningen (i Fig. 2. markerad med en triangel).

2. Digital-till-analog-omvandlare(Digital till Analog Converter, DAC). Den genererar ett "vikt" spänningsvärde baserat på den ingående digitala koden.

3. Register över successiva approximationer (Successive Approximation Register, SAR). Den implementerar den successiva approximationsalgoritmen och genererar det aktuella värdet av koden som levereras till DAC-ingången. Med sitt namn, alla given arkitektur ADC.

4. Sample-hold-schema (Sample / Hold, S / H). För driften av denna ADC är det fundamentalt viktigt att inspänningen förblir konstant under hela omvandlingscykeln. Men "riktiga" signaler tenderar att förändras över tiden. Samplings-och-håll-kretsen "minns" det aktuella värdet för den analoga signalen och håller det oförändrat under hela enhetens driftscykel.

Fördelen med enheten är relativt hög hastighet konvertering: omvandlingstiden för en N-bitars ADC är N klockcykler. Omvandlingsnoggrannheten begränsas av noggrannheten hos den interna DAC:n och kan vara 16-18 bitar (nu har 24-bitars SAR ADC, till exempel AD7766 och AD7767, börjat dyka upp).

Delta Sigma ADC

Slutligen, den mest intressanta typen av ADC är sigma-delta ADC, ibland kallad en laddningsbalanserad ADC i litteraturen. Blockschemat för en sigma-delta ADC visas i fig. 3.

Fig. 3. Blockschema över en sigma-delta ADC.

Funktionsprincipen för denna ADC är något mer komplex än den för andra typer av ADC. Dess kärna är att inspänningen jämförs med spänningsvärdet som ackumuleras av integratorn. Pulser med positiv eller negativ polaritet matas till integratoringången, beroende på jämförelseresultatet. Således är denna ADC ett enkelt spårningssystem: spänningen vid integratorns utgång "spår" ingångsspänningen (fig. 4). Resultatet av denna krets är en ström av nollor och ettor vid utgången av komparatorn, som sedan leds genom ett digitalt lågpassfilter, vilket resulterar i ett N-bitars resultat. LPF i fig. 3. Kombinerat med en "decimator", en anordning som minskar upprepningshastigheten för prover genom att "decimera" dem.

Ris. 4. Sigma-delta ADC som spårningssystem

För stränghetens skull måste det sägas att i fig. 3 är ett blockschema över en första ordningens sigma-delta ADC. En andra ordningens sigma-delta ADC har två integratorer och två slingor respons, men kommer inte att behandlas här. De som är intresserade av detta ämne kan hänvisa till.

I fig. 5 visar signalerna i ADC:n på en nollnivå vid ingången (överst) och på nivån Vref / 2 (nederst).

Ris. 5. Signaler i ADC vid olika signalnivåer vid ingången.

Nu, utan att fördjupa sig i komplexa matematisk analys Låt oss försöka förstå varför sigma-delta ADC:er har väldigt lågt brusgolv.

Betrakta blockschemat för sigma-delta-modulatorn som visas i fig. 3, och representera den i denna form (Fig. 6):

Ris. 6. Blockschema över sigma-delta-modulatorn

Här representeras komparatorn som en adderare som adderar den kontinuerliga önskade signalen och kvantiseringsbruset.

Låt integratören ha överföringsfunktion 1/s. Sedan, representerande den användbara signalen som X (s), utsignalen från sigma-delta-modulatorn som Y (s), och kvantiseringsbruset som E (s), får vi ADC-överföringsfunktionen:

Y (s) = X (s) / (s + 1) + E (s) s / (s + 1)

Det vill säga, i själva verket är sigma-delta-modulatorn ett filter låga frekvenser(1 / (s + 1)) för den användbara signalen och filtret höga frekvenser(s / (s + 1)) för brus, med båda filtren med samma gränsfrekvens. Bruset som är koncentrerat i högfrekvensområdet av spektrumet avlägsnas enkelt av det digitala lågpassfiltret, som är placerat efter modulatorn.

Ris. 7. Fenomenet "förskjutning" av brus i den högfrekventa delen av spektrumet

Det bör dock förstås att detta är en extremt förenklad förklaring av brusformningsfenomenet i en sigma-delta ADC.

Så den största fördelen med en sigma-delta ADC är Hög precision på grund av den extremt låga nivån av sitt eget ljud. För att uppnå hög noggrannhet är det emellertid nödvändigt att gränsfrekvensen för det digitala filtret är så låg som möjligt, många gånger mindre än arbetsfrekvensen för sigma-delta-modulatorn. Därför har sigma-delta ADC låg hastighet omvandling.

De kan användas inom ljudteknik, men används främst inom industriell automation för konvertering av sensorsignaler, i mätinstrument och i andra applikationer där hög noggrannhet krävs. men ingen hög hastighet krävs.

Lite historia

Den äldsta ADC-referensen i historien är förmodligen Paul M. Raineys patent, "Facsimile Telegraph System", U.S. Patent 1 608 527, inlämnat 20 juli 1921, utfärdat 30 november 1926. Enheten som avbildas i patentet är faktiskt en 5-bitars direktkonvertering ADC.

Ris. 8. Första patentet för ADC

Ris. 9. ADC-direktkonvertering (1975)

Enheten som visas i figuren är en MOD-4100 direktkonvertering ADC från Computer Labs, 1975, sammansatt på basis av diskreta komparatorer. Det finns 16 komparatorer (de är placerade i en halvcirkel, för att utjämna signalutbredningsfördröjningen till varje komparator), därför har ADC en kapacitet på endast 4 bitar. Omvandlingshastighet 100 MSPS, strömförbrukning 14 watt.

Följande bild visar en avancerad version av ADC för direktkonvertering.

Ris. 10. ADC-direktkonvertering (1970)

En 1970 VHS-630, tillverkad av Computer Labs, hade 64 komparatorer, hade 6 bitar, 30 MSPS och förbrukade 100 watt (1975 års version av VHS-675 hade 75 MSPS och 130 watt).

Litteratur

W. Kester. ADC Architectures I: The Flash Converter. Analoga enheter, MT-020 Handledning.

För närvarande används analog-till-digital-omvandlare (ADC) alltmer i amatörradiodesigner. Detta beror på tillkomsten av prisvärda ADC-chips och fördelarna med digital bearbetning analoga signaler. Med hjälp av ADC kan du enkelt konvertera Personlig dator(PC) till valfri virtuell mätare. Och elektronisk del en sådan enhet kan vara mycket enkel, och all signalbehandling kommer att göras i programvara.

Enheten som beskrivs i artikeln är utformad för att konvertera en analog signal till en digital sexsiffrig kod och kan fungera som ett prefix till en PC. Dess användningsområden är mycket olika - från virtuella mätinstrument till olika ljudinspelningssystem.

På sidorna av tidningen "Radio" har design baserade på ADC publicerats upprepade gånger. De använde dock främst mikrokretsar med en binär-decimal utgångskod eller en kod för sju-elementindikatorer. Detta tillvägagångssätt är inte praktiskt för att mata in information i en PC.

I enheten som erbjuds läsarnas uppmärksamhet används mikrokretsen KR1107PV1, som är en höghastighets parallell sexbitars ADC. Den är utformad för att omvandla spänning i området -2 ... 0 V till en av de potentiella parallellläsningskoderna: binär kod (framåt och bakåt) och tvås komplementkod (framåt och bakåt). Denna mikrokrets valdes för att för det första är den tillgänglig för ett brett spektrum av radioamatörer och är relativt billig, och för det andra har den en hög hastighet (den maximala omvandlingsfrekvensen är 20 MHz, tiden för en omvandling är inte mer än 100 ns).

Det schematiska diagrammet för enheten visas i fig. 1.

Den rekommenderade kretsen för att slå på KR1107PV1A togs som grund, vilket förenklades avsevärt utan en märkbar försämring av omvandlingsnoggrannheten. Konvertibel analog signal genom uttaget 1 på XS1-uttaget och motståndet R4 matas till den inverterande ingången på op-amp DA1. En sådan inkludering används eftersom det oftare är nödvändigt att digitalisera spänningen med positiv polaritet, och ADC-mikrokretsen omvandlar spänningen i intervallet från 0 till -2 V. Nollförspänningen tas bort från trimmerns R1-skjutreglage. Motstånden R5 och R4 bestämmer den erforderliga op-amp-förstärkningen. Den förstärkta analoga signalen matas genom motstånden R7-R9 till stiften 10, 13, 15 på ADC.

DA2 ADC styrs av klockpulserna som kommer från PC:n (via stift 8 på XS2-uttaget) till stift 4. Kodningen utförs efter att ha passerat klockpulsbrytaren, och resultatet som erhålls under konverteringen överförs till utgångsregistret samtidigt med nästa klockpulsfront. Detta tillåter kanterna på klockpulsen att göra nästa sampel, dvs i det ögonblick då resultatet av det n:te samplet är närvarande vid utgången av DA2, görs (n + 2) -:te samplet vid ingången. Den digitala koden tas från utgångarna D1 - D6 och matas ut till XS2-uttaget.

Det bör noteras att beteckningen på mikrokretsens utgångar är motsatt deras vikt: D1-utgången motsvarar den mest signifikanta biten och D6 - den minst signifikanta. Typen av kod (direkt, invers, extra) vid utgångarna på mikrokretsen bestäms av signalnivåerna vid ingångarna Cl och C2 på mikrokretsen. Deras anslutning till +5 V-bussen motsvarar tillförseln av en hög nivå och den gemensamma ledningen - en låg nivå. Den erforderliga typen av kod vid utgången av mikrokretsen ställs in av en kombination av signalnivåer vid ingångarna C1 och C2 i enlighet med tabellen. 1.

ADC KR1107PV1A kräver en bipolär matning med spänningar på +5 och -6 V. Dessutom krävs två referensspänningar. De definierar området för spänningar som ska digitaliseras. I detta fall tas en av dessa spänningar (Uobp1) till noll (stift 16 på mikrokretsen är ansluten till den gemensamma ledningen), och den andra (Uobp2) är lika med -2 ​​V, vilket, i enlighet med, bestämmer räckvidden ingångsspänningar ADC 0 ...- 2 V. En exemplifierande spänning på -2 V avlägsnas från sliden på trimmermotståndet R6, som är ansluten till matningsspänningskretsen med negativ polaritet. Kondensatorer C1 - C5 används för att eliminera störningar.

Vid montering av enheten används MLT-, OMLT-motstånd, oxid- och keramiska kondensatorer av alla slag. Trimmermotstånd R1 - också av vilken typ som helst, R6 - helst trådlindad flervarv, till exempel SP5-1V, SP5-14, SP5-15, SP5-2, etc. OU DA1 - nästan vilken som helst, kapabel att arbeta vid reducerade matningsspänningar, till exempel KR140UD7. Att expandera frekvensomfång du kan använda operationsförstärkaren K574UDZ, där enhetsförstärkningsfrekvensen är 10 MHz.

Enheten drivs från en bipolär stabiliserad källa som ger utspänningar på +5 V vid en ström på 35 ... 40 mA och -6 V vid en ström på 200 mA

Innan du slår på ADC för första gången ställs motorn på motståndet R6 i mittläget. Slå på strömmen, mät den exemplifierande spänningen vid stift 9 på DA2-mikrokretsen och ställ in den så exakt som möjligt till -2 V. Den erforderliga nollförskjutningen uppnås trimningsmotstånd R1. Du kan styra nollpositionen på helgen digital kod eller konstant spänning på de analoga ingångarna på ADC (stift 10, 13, 15 DA2). Vid denna tidpunkt kan inställningen anses vara komplett.

ADC:n ansluts till PC:n via gränssnittet (Fig. 2) installerat i en ledig ISA-kontakt på moderkortet.

Gränssnittskortet innehåller fyra I/O-portar med ZE0N-ZEZN-adresser. Elementen DD1.1-DD1.3 och DD2 bildar en adressavkodare. Signaler från PC-adressbussen tas emot vid deras ingångar, och om en ZE0H-ZEZN-kombination visas på den, bildas en lågnivåtillåtande spänning vid DD2-utgången. Signalerna som bestämmer portnumret i portarnas adressutrymme motsvarar de två minst signifikanta bitarna på adressbussen och matas till DD4-avkodaren. Den tar även emot tillåtande signaler via AEN-bussen (det betyder att det inte finns någon direkt åtkomst till minnet i denna cykel) och signalerar IOW, IOR, vilket motsvarar att skriva till och läsa från en extern enhet. Signalen från stift 15 på avkodaren matas till ingången E på DD7-bussdrivrutinen och tillåter dataöverföring från ADC:n till databussen.

Signalen som uppträder vid stift 14 på DD4-avkodaren tjänar till att klocka DA2 ADC, vid stift 13 för att återställa DD6.1-triggern och vid stift 12 för att möjliggöra tillförsel av information från den till databussen. Triggern är utformad för att synkronisera ADC:n med en extern enhet som kan generera synkpulser eller en klarsignal. En klocksignal från en extern enhet matas genom stift 1 på XS2-uttaget till klockingången på triggern. Tillståndet för den senare läses av programmet. Om hittad hög nivå på stift 5 på DD6.1 betyder det att en synkroniseringspuls har tagits emot från en extern enhet. När flip-flop-tillståndet väl har lästs måste det återställas för att förbereda för nästa klockpuls.

Några ord om syftet med hamnar. Porten med adressen ЗЕ0Н är avsedd för att läsa data från ADC (bitarna D0-D5 innehåller värdet på den digitaliserade signalen), med adressen ЗЕ1Н - för att mata en klockpuls till ADC (när någon byte skrivs till denna port , startar omvandlingen av den analoga signalen till digital). ZE2H-porten används för att återställa DD6.1-synkroniseringstriggern efter att ha läst dess tillstånd. En återställning sker när någon byte skrivs till denna port. Slutligen är ZESN-porten för att läsa vippans status, vilket återspeglas av bit 5 av byten som läses från denna port. Triggern behövs för att fånga kortvariga synkpulser. Om, vid läsning från ZEZN-porten, en hög logisk nivå detekteras vid den direkta utgången från vippan (bit D5 = 1), så returnerar programmet den till initialtillståndet genom att skriva valfri byte till ZE2H-porten.

Ett program för att läsa data från en ADC, skrivet i Pascal, visas i tabell. 2.

Det är bekvämt att använda som grund för designen felaktig bräda förlängningar för ISA-kortplatsen. Alla "höga" element (kondensatorer, kontakter) tas bort från den och de tryckta ledarna som går till kontaktdynorna på den del som sätts in i spåret skärs (XP1-kontakt i fig. 2). Delarna är monterade på ett litet kretskort, som fästs med stativ på expansionskortet. Enhetens terminaler är anslutna till kontakterna på XP1-kontakten med korta delar av monteringstråden. Stifttilldelningarna för ISA-platsen finns i.

Sammanfattningsvis noterar vi att i de flesta fall räcker sex bitar för att representera en analog signal. Om en ADC med ett inspänningsintervall på 0 ... 2 V används för att mäta en spänning på 2 V, kommer felet inte att överstiga 0,03 V (eller 1,5%). Vid mätning av en spänning på 0,2 V kommer felet att öka till 15 %. För att förbättra mätnoggrannheten kan du använda en ADC med större kapacitet eller förstärka den uppmätta spänningen till ett värde nära den övre gränsen för intervallet (ändra till exempel förhållandet mellan motstånden för motstånden R5 och R4). Med de värden som anges i diagrammet (se fig. 1) digitaliserar enheten ingångsspänningar i intervallet 0 ... 0,5 V och kan arbeta med en konsumentmikrofon.

Om, av skäl för noggrannheten av "digitalisering" svaga signaler ett högre bitdjup krävs, mikrokretsen KR1107PV1A kan ersättas med en åttabitars K1107PV2-omvandlare (naturligtvis med hänsyn till skillnaderna i "pinout" och strömförbrukning).

Litteratur

  1. Biryukov S. Termometer "Hus - Gata". - Radio, 2000, nr 3, sid. 32, 33.
  2. Novachenko I. V., Petukhov V. M., Bludov I. P., Yurovsky A. V. Mikrokretsar för hushållsradioutrustning. Katalog. - M .: KUBK, 1995.
  3. Danilin N. S, Ulitenko V. P., Kripak A. A. Riktlinjer för felsökning och reparation av IBM PC-datorer. - M .: Publishing house of standards, 1992.

Se andra artiklar sektion.

Det hände så att den huvudsakliga MC som jag arbetar konstant med och som jag gör de allra flesta uppgifter på är ATTiny2313– Det är populärt, och viktigast av allt, det är det billigaste styrenheten från hela linjen AVR med antalet ben mer än 8. Jag tog dem i antalet cirka trehundra för 18, chtol, rubel sak. Men här är det - den har ingen ADC... Inte alls. Och här behövdes han - du måste mäta signalen från sensorn. Bakhåll. Byt inte till en mer fylld på grund av sådant skräp. ATTiny26– det kostar mer och fikon där man kan köpa av oss, och vad ska man då göra med det genombrottet ATTiny2313 vad är redan köpt? Jag använde mina hjärnor...

Varför inte bråka ADC seriejämförelse? Naturligtvis kommer hastigheten och noggrannheten inte att vara en fontän, men utan att ändra typ av MK och med bara två öre detaljer av den extra body kit, kommer jag att få en fullfjädrad, om än bromsande, 8-bitars ADC som till fullo uppfyller mina blygsamma önskemål!

Hur en seriell jämförelse ADC fungerar.
Vad har vi i ATTiny2313 analog? Höger - . Nu räcker det att applicera den uppmätta signalen på dess ingång och metodiskt jämföra den med referensspänningen, linjärt ändra värdet på referensspänningen. Vid vilken av referensspänningarna som komparatorn utlöses, är den uppmätta signalen + / _ ungefär lika med steget att ändra referensen.

Det återstår att få en växelreferensspänning, och vad, från en rent digital utgång på styrenheten, kan man dra ut en analog signal? PWM! Har tidigare integrerat det. För integration använder vi det enklaste RC-filtret. Vår kondensator kommer att integrera laddningen, och motståndet kommer inte att låta porten dö när kondensorn laddas. Resultatet av att köra PWM genom ett sådant filter blir en ganska stabil konstant spänning.

Det återstår bara att uppskatta filtervärdena. Gränsfrekvens - frekvensen från vilken filtret börjar dämpa den variabla komponenten, i det L-formade RC-filtret är lika med den reciproka av dess tidskonstant w = 1/RC... Jag satte på kondensorn 0,33E-6 F och motstånd på 470 Ohm, det visade sig det w = 6447 rad/s... I den mån som vinkelfrekvens vi har inte vilat någonstans, då dividerar vi det med 2pi = 6,28 vi fick ungefär en kilohertz, 1026,6 Hz, för att vara exakt. Tidsfrekvens PWM och vi kan lätt ha ungefär tiotals kilohertz, då blir utsignalen en sådan jämn konstant, med obetydliga pulseringar.

Nu lindar vi denna toppar vid ingången på komparatorn, på den andra startar vi upp vår uppmätta signal och börjar ha kul med koden. Det visade sig här ett sådant system, monterat, som. Här dock inte ATTiny2313, utan Mega8 som har en ADC, men vi kommer att glömma dess existens tills vidare. Vårt filter är ritat med röda linjer.

Koden kommer att vara enkel, för att inte störa kommer jag att lägga ut separata källor i form av filer:

  • - Huvudfil
  • - Avbryt vektortabell
  • - Initialisering av periferin
  • och - Makron och makron

Jag kommer bara att kommentera huvudfunktion Beräkn.
När du anropar en procedur Beräkn vår första sak:

  1. Den analoga komparatorn är konfigurerad och, viktigast av allt, dess avbrott aktiveras.
  2. Sedan laddas det initiala avsökningsvärdet 255 in i avsökningsregistret (R21).
  3. Sedan slängs detta värde in i PWM-jämförelseregistret OCR1AL... PWM var på förhand, i sektionen init.asm konfigurerad och lanserad, så att omedelbart vid dess utgång uppträder en signal med en arbetscykel (driftscykel är förhållandet mellan signalens varaktighet och perioden för denna signal) 1, dvs. i själva verket medan den bara är en.
  4. Vi väntar i fördröjningsfunktionen ett tag på att den transienta processen ska sluta (kondensatorn kan inte omedelbart ändra sin spänning)
  5. Minska värdet på skanningsregistret (som när det laddas in i OCR1AL kommer att minska arbetscykeln med 1/255), kontrollera om den har blivit noll. Om inte, gå till steg 3.
Resultatet blir en sekventiell minskning av signalens arbetscykel från 1 till 0, med ett steg på 1/255 , som kommer att omvandlas efter filtret till en minskande spänning. Och, eftersom i huvudproceduren har jag Beräkn kallas cykliskt, då kommer sågen att vara vid ingången till komparatorn.

Som du kan se är det en del snitt på toppen. Detta beror på det faktum att den maximala spänningen som MK-benet kan ge ut, med hänsyn till fallen på alla motstånd, är i storleksordningen 4,7 volt, och jag kan skruva av alla 5 från masterpotentiometern. Tja, även topparna är överväldigade lite. Om du sänker frekvensen kommer räckvidden att utökas något.

Så här, med lite uppfinningsrikedom, plus två ytterligare detaljer. totala summan i en rubel och ett dussin rader kod sparade jag en massa deg =)