Konvertering mellom analoge og digitale signaler med AD- og DA-omformere.
AD- og DA-omforming
Den virkelige verden er analog – temperatur, lyd, lys og trykk varierer jevnt og kontinuerlig. Digitale systemer derimot jobber med diskrete verdier – bare 0 og 1. For at digitale systemer skal kunne måle, behandle og gjengi analoge signaler, trenger vi omformere:
- AD-omformer (ADC): Konverterer et analogt signal til et digitalt tall
- DA-omformer (DAC): Konverterer et digitalt tall tilbake til et analogt signal
Disse omformerne finnes overalt: i mikrofonen på telefonen (ADC), i høyttalerne (DAC), i temperaturmålere, medisinske instrumenter og musikkavspillere.
I dette kapittelet skal du lære:
- Hvordan AD-omforming (sampling og kvantisering) fungerer
- Hvordan DA-omforming fungerer
- Hva oppløsning betyr og hvordan den påvirker nøyaktigheten
- Samplingsfrekvens og Nyquist-teoremet
1. Sampling (prøvetaking)
Det analoge signalet måles med jevne tidsintervaller. Antall målinger per sekund kalles samplingsfrekvens (fₛ), målt i Hz (hertz).
Eksempler:
- CD-kvalitet lyd: fₛ = 44 100 Hz (44,1 kHz)
- Telefon: fₛ = 8 000 Hz
- Mikrokontroller (Arduino): typisk fₛ = 10 000 Hz
2. Kvantisering
Hver måling avrunder til nærmeste digitale verdi. Antall mulige verdier bestemmes av oppløsningen (antall bits).
- 8-bits ADC: 2⁸ = 256 nivåer
- 10-bits ADC: 2¹⁰ = 1024 nivåer
- 12-bits ADC: 2¹² = 4096 nivåer
Kvantiseringsfeil er forskjellen mellom den faktiske analoge verdien og den nærmeste digitale verdien. Flere bits gir mindre kvantiseringsfeil og høyere nøyaktighet.
En 10-bits ADC har et måleområde fra 0 V til 5 V. Beregn spenningsoppløsningen (minste målbare spenningsendring) og den digitale verdien for en inngangsspenning på 3,2 V.
Oppløsning = Måleområde / (2ⁿ − 1) = 5 V / (1024 − 1) = 5 / 1023 ≈ 0,00489 V ≈ 4,89 mV
Steg 2: Beregn digital verdi for 3,2 V:
Digital verdi = Inngangsspenning / Oppløsning = 3,2 / 0,00489 ≈ 654
Steg 3: Verifisering – hva tilsvarer digital verdi 654?
Spenning = 654 × 0,00489 ≈ 3,198 V
Kvantiseringsfeilen er 3,2 − 3,198 = 0,002 V = 2 mV. Med 10 bits kan vi altså måle spenningen med en nøyaktighet på ca. 5 mV.
Hvor mange ulike spenningsnivåer kan en 8-bits ADC skille mellom?
En 12-bits ADC har et måleområde fra 0 V til 3,3 V. Beregn spenningsoppløsningen. Hva blir den digitale verdien for en inngangsspenning på 1,65 V?
> Samplingsfrekvensen må være minst dobbelt så høy som den høyeste frekvensen i det analoge signalet for å unngå informasjonstap.
fₛ ≥ 2 × fₘₐₓ
Der:
- fₛ = samplingsfrekvens
- fₘₐₓ = høyeste frekvens i signalet
Nyquist-frekvensen er halvparten av samplingsfrekvensen: fₙ = fₛ / 2. Signaler med frekvens over Nyquist-frekvensen kan ikke gjengis korrekt.
Aliasing oppstår når signalet inneholder frekvenser over Nyquist-frekvensen. Da «forkleds» høye frekvenser som lave frekvenser – signalet forvrenger seg. For å unngå dette brukes et anti-aliasing-filter (lavpassfilter) før AD-omformeren.
Eksempel:
- Menneskets hørsel: opptil ca. 20 000 Hz
- CD-sampling: 44 100 Hz (> 2 × 20 000 Hz) → Nyquist-kravet er oppfylt
Et temperatursignal fra en sensor varierer med frekvenser opptil 50 Hz. Hva er minimum samplingsfrekvens ifølge Nyquist-teoremet? I praksis anbefales det å sample 5–10 ganger høyeste frekvens. Hva er en fornuftig samplingsfrekvens?
fₛ ≥ 2 × fₘₐₓ = 2 × 50 Hz = 100 Hz
Under 100 Hz vil vi miste informasjon om de raskeste endringene i temperatursignalet (aliasing).
Praktisk samplingsfrekvens:
5 × 50 Hz = 250 Hz til 10 × 50 Hz = 500 Hz
En fornuftig samplingsfrekvens er rundt 250–500 Hz. Oversampling gir bedre signalkvalitet og gjør det enklere å filtrere bort støy.
Et lydsignal inneholder frekvenser opptil 15 000 Hz. Hva er minimum samplingsfrekvens ifølge Nyquist-teoremet?
Prinsipp:
Hvert bit i det digitale tallet representerer en vektet spenningsbidrag. Bitene summeres for å gi utgangsspenningen.
For en n-bits DAC med referansespenning Vᵣₑf:
Vᵤₜ = (Digital verdi / 2ⁿ) × Vᵣₑf
Eksempel med 8-bits DAC (Vᵣₑf = 5 V):
- Digital verdi 0 (00000000): Vᵤₜ = 0 V
- Digital verdi 128 (10000000): Vᵤₜ = (128/256) × 5 = 2,5 V
- Digital verdi 255 (11111111): Vᵤₜ = (255/256) × 5 ≈ 4,98 V
Bruksområder:
- Lydavspilling (CD-spiller, DAP, mobil)
- Motorstyring (analoge styresignaler)
- Signalgeneratorer
- Grafikkort (analog videoutgang)
DA-utgangen er trappetrinnsformet. Et rekonstruksjonsfilter (lavpassfilter) glatter signalet til en jevn bølgeform.
En 8-bits DAC har referansespenning Vᵣₑf = 3,3 V. Hva er utgangsspenningen når den digitale inngangen er 200 (desimalt)?
Beregning:
Vᵤₜ = (200 / 256) × 3,3 V = 0,78125 × 3,3 V ≈ 2,578 V
Minste spenningstrinn (oppløsning):
ΔV = Vᵣₑf / 2ⁿ = 3,3 / 256 ≈ 0,0129 V ≈ 12,9 mV
Den digitale verdien 200 gir en utgangsspenning på ca. 2,58 V, med en nøyaktighet på ca. 13 mV per trinn.
Oppsummering
I dette kapittelet har du lært om broen mellom den analoge og digitale verden:
- AD-omformer (ADC): Konverterer analoge signaler til digitale tall via sampling og kvantisering
- Oppløsning: Antall bits bestemmer nøyaktigheten. En n-bits ADC har 2ⁿ nivåer
- Nyquist-teoremet: Samplingsfrekvensen må være ≥ 2 × høyeste signalfrekvens
- Aliasing: Oppstår ved for lav samplingsfrekvens – unngås med anti-aliasing-filter
- DA-omformer (DAC): Konverterer digitale tall tilbake til analoge spenninger
- Rekonstruksjonsfilter glatter den trappetrinnsformede DAC-utgangen
Nøkkelbegreper
| Begrep | Forklaring |
|---|---|
| ADC | Analog-til-digital omformer |
| DAC | Digital-til-analog omformer |
| Sampling | Måling av analogt signal med jevne tidsintervaller |
| Kvantisering | Avrunding av samplet verdi til nærmeste digitale nivå |
| Oppløsning | Antall bits i omformeren – bestemmer nøyaktighet |
| Nyquist-teoremet | fₛ ≥ 2 × fₘₐₓ for å unngå informasjonstap |
| Aliasing | Forvrengning som oppstår ved for lav samplingsfrekvens |
En mikrokontroller (Arduino Uno) har en 10-bits ADC med måleområde 0–5 V. Du kobler til en temperatursensor som gir 10 mV per °C (0 mV ved 0 °C). a) Hva er spenningsoppløsningen til ADC-en? b) Hva er temperaturoppløsningen (minste temperaturendring som kan registreres)? c) Hva er den digitale verdien ved 25 °C?
Et digitalt lydsystem skal spille inn og spille av lyd med frekvenser opptil 20 kHz. a) Hva er minimum samplingsfrekvens ifølge Nyquist? b) CD-standarden bruker 44 100 Hz og 16 bits. Beregn antall mulige lydnivåer. c) Hvor mange bytes data genereres per sekund for én kanal med CD-kvalitet?
Dette kapitlet er skrevet av Anthropics toppmodeller (Claude Opus og Claude Fable) og er foreløpig ikke manuelt gjennomgått — kvalitetskontrollen gjøres av uavhengige KI-agenter, og innmeldte feil rettes fortløpende. Funnet en feil? Meld fra, så retter vi den. Les mer om hvordan innholdet lages.