De vanskelige A/D konvertere

A/D konvertere volder ofte problemer. Der er faldgruber både

ved udvælgelsen af A/D konverterkort og ved selve anvendelsen.

Læs her hvordan de oftest forekommende problemer undgås.



Konverteringsprincipper

Vore A/D kort kan opdeles i to grupper efter konverteringsme­tode: Integrerende, hvor konverteringshastig­he­den  typisk er ca. 30 gange/sek. og approksimerende, hvor der kan vælges mellem kort med maks. hastighed på 2.000 – 750.000 gange/sek.

 

Integrerende konvertering

Fig. 1 illustrerer princippet i en integrerende konverter, der udnytter en integrator og en tæller. Idet tælleren nulstilles, bliver målespændingen Vin koblet gennem en elektronisk omskifter (SWin) til integratoren, og samtidig startes tælleren. Integratorens udgangsspænding Vint ændrer sig nu med en hastighed, der er proportional med Vin. Dette varer ved i et fast tidsrum – f.eks.  indtil tælleren har talt 2048 impulser. Dernæst skifter SWin

 til en negativ referencespænding og integratoren aflades nu med en hastighed, der bestemmes af den faste referencespænding, indtil komparatoren registrerer, at integratorspændingen har nået 0. Den målte værdi aflæses nu på tælleren som det antal impulser, der er talt, siden afladningen startede. Den målte værdi vil altså være en ægte middelværdi af indgangsspændingen i det faste tidsrum, hvor integratoren oplades. For at undertrykke målefejl, som følge af forstyrrende 50Hz signaler fra forsyningsnettet, fastlægges opladningstiden ofte så den svarer til én eller flere perioder ved 50Hz (20, 40 eller 60 mSek.).

 

A/D-konvertering med successiv approksimation

Princippet for konvertering ved successiv approksimation er illustreret på fig. 3 og 4, der viser et eksempel på en 8 bit A/D konverter for 0 til 10V. Her indgår en 10V D/A konverter, en komparator samt et styrekredsløb, der bit for bit finder den digitale værdi efter følgende strategi: Først sættes alene den mest betydende bit  af de 8 digitale udgange – d.v.s.:

Do = 10000000 binært, der svarer til 128, som betyder at den analoge spænd­ing Vcom bliver 5V. Dernæst vil styre­lo­gik­ken sæt­te Do = 11000000 (VD/A=7,5V)  eller 0100000(VD/A=2,5V) afhængig af, om Vin er større eller mindre end VD/A – dvs. afhængigt af kom­pa­ra­tor­signalet Ko. Der fortsættes på denne måde med at ændre VD/A i spændingsspring, der halveres for hver bit og med en polaritet styret af komparatoren indtil sidste bit er be­stemt. I mod­sæt­ning til integrerende kon­ver­te­ring fås her en øje­bliks­værdi, hvilket gør me­to­den mere følsom over for støj.  Derfor er det vigtigt, at  måle­signalet ikke inde­holder støj og transi­enter, der vil give ustabile værdier. Metoden forud- sæt­ter, at må­lespændingen ikke æn­dres, me­dens kon­­ver­teringen sker.  Derfor bør der normalt bruges et "sample & hold" (S/H) kreds­løb, der fast­holder målesignalet medens målingen finder sted. Flere af vore bil­lig­ste A/D kort har ikke denne S/H funk­tion. Det betyder for det første, at der kun bør måles på signaler med me­get lav båndbredde. Må­ling­er på AC-signaler vil bevirke målefejl, der vil op­træde som om signalet var overlejret med støj og der vil være stærkt forøget fase­for­vræng­ning med stigende frekvens.

For det andet vil føl­som­heden over for støj i måle­signalet være stør­re uden S/H, fordi støjen vil forstyrre kom­pa­ra­to­ren ved be­stem­­melsen af hver bit.

For at undgå disse problemer, der er specifikke for appoksimerende konvertere, bør man  så vidt muligt at vælge de ret langsomme integrerende typer, hvis man kan affinde sig med den læn­­ge­re konver­terings­tid.

Hastighed

Normalt styres konverteringsforløbet af sekvenslogik på selve kortet, men i nogle  billige typer ap­proks­imerende konvertere styres konverteringen af port-instruktioner fra programmet, som skal sende en I/O in­struk­tion til konverteren for hver bit. Det sparer hardware, men stjæler til gengæld CPU-tid. Konverteringshastigheden afhænger altså af maskinens hastighed. Derfor må man sikre sig, at kom­pa­ratoren kan følge med.

På fig. 4 er D/A-spændingen også vist (stiplet), hvor virkningen af komparatorens tidsforsinkelse er syn­lig.  Som det ses, er især ved be­stem­melsen af de mest betydende bits, det kan gå galt.  Komparatoren på­trykkes her de største spændingsændringer, der giver de største forsinkelser i ind­gangs­kreds­løbet, så udgangs­signalet ikke når at skifte, inden der fortsættes med næste bit. Fejlen viser sig f.eks. ved, at kon­verteren har en særlig forkærlighed for at vise værdier, der svarer til de mest betydende bits. F.eks. vil en 12 bits konverter være tilbøjelig til at vise værdierne 2048, 1024 og 3072, der svarer til 1/2, 1/4 og 3/4 af fuld skala. Til gengæld er konverteren ude af stand til at vise værdier, der ligger i nærheden af disse værdier. Fejlen rettes simpelthen ved at indskyde en lille ekstra  forsinkelse mellem hver bit test under konverteringen. Selv om A/D kortene har mange kanaler, så har de normalt kun een A/D konverter, som de for­­skellige indgange skiftevis tilkobles. Når der f.eks. opgives en båndbredde på 60KHz for et kort, så gælder dette kun, hvis der måles på én kanel. Måles der skiftevis på 2 ka­naler, bliver

båndbredden højst 30KHz – men i praksis lavere, fordi der skal medregnes den tid det tager at  skifte  ind­gangs­kanal.  Det tager også tid at gemme resultaterne fra  konverteringen.  Ved soft­warestyret konvertering kan der f.eks. opnås større hastighed, hvis resultatet fra A/D kon­verteringen  først lagres i et CPU register. Der­næst startes næste konvertering og først herefter hentes resultatet fra CPU registeret.

 

 

Indgangsmultiplekser

Fler-kanals A/D konvertere har en ind­gangsmultiplekser (dvs. en elektronisk omskif­ter),  der vælger den indgangsspænding, som skal kob­les til A/D-konverteren. Den består af analoge gates – der fungerer som kontakter – som styres af digitale kontrolsignaler. Den hyppigste fejl på A/D kort som sendes til reparation, stammer fra

 defekte indgangsmultipleksere, der er beskadiget af overspænding. Oftest viser fejlen sig som ganske små læk­strømme fra forsynings­spænd­ing eller fra kon­trolsignal-indgange til måle­sig­na­let. Fejlen kan erkendes ved at tilkoble målespændingen uden om  ind­gangs­mul­tiplekseren og forbinde den direkte til A/D kon­ver­teren. Hvis indgangs­multiplekseren er i or­den, bør dette give samme resultat som før.

 

Impedansen for målesignaler

Hvis impedansen for målesignalerne er for store, kan det give anledning til målefejl på grund af de små kapaciteter om­kring indgangs­multiplekseren som består af analoge gates, der styres af digitale signaler. Problemet er nemlig, at der sker en AC-kobling fra styresignalet til målesignalet. Når det digitale styresignal (ikke vist på fig. 5) skif­ter, så overføres der en kortvarig impuls gennem den indre kapacitet i den analoge gate til sig­nal­vejen for det analoge signal. Hvis måle­sig­na­ler­nes im­pe­danser (R1 og R2) f.eks. er 100kW, de di­gi­ta­le kontrolsignaler er 10V og kapaciteterne mel­lem de digitale kon­trol­sig­naler og signalvejen gen­nem de analoge gates er 5pF, så vil målesignalet, idet kontrolsignalerne skif­ter, blive overlejet med et spændings­spring på 10V, som vil falde til ca. 1V efter ca. 1µs og til 1mV efter 4µs A/D-konverteringen bør altså forsinkes, indtil det for­styr­ren­de signal er faldet tilstrækkeligt. Dette sker 100 gange hurtigere, hvis signalimpedansen f.eks. redu­ceres til 1kW. Størrelsen af forstyrrelsen kan desuden reduceres, hvis indgangene afkobles med kondensatorer (C1 og C2), der jo repræsenterer en lav impedans overfor det uønskede signal. Kondensatorerne bør dog være så små som muligt, så de ikke reducerer målesignalets båndbredde væsentligt. Når impedansen for målesignalerne er for stor i målesystemer, hvor der skiftes hurtigt mellem flere kanaler, ses det ofte, at der til en målt spænding tilsyneladende lægges en brøkdel af spændingen på den foregående kanal. Det kan se ud som om ind­gangs­multiplekserens gates iso­lerer dårligt, men det skyldes, at ladningen på den kapacitet (illustreret med Cs på fig. 5), som findes på udgangssiden af ind­gangsmultiplekseren og på indgangen af selve A/D-konverteren, efter målingen på foregående ka­nal ikke er blevet tilstrækkeligt afladet inden den næste må­ling. Også her består kuren i at forsinke A/D-kon­ver­te­ring­en i forhold til kanalskiftet, reducere må­le­signalets impedans eller afkoble multiplekserens indgange med kondensatorerne C1 og C2.

Bemærk at disse problemer i praksis kun opstår ved anvendelsen af A/D – konvertere, der benytter den hurtige succcesiv ap­proks­imations teknik. For integrerende konvertere er de forstyrrende signaler, som opstår ved kanal­skift, i praksis så små i forhold til det målte signal fra den lange integrationsperiode, at fejlene er uden betydning.