Veri toplama ve örnekleme: adım adım çözümlü alıştırma soruları

Şekiller, ipuçları ve ayrıntılı çözümlerle ücretsiz Veri toplama ve örnekleme alıştırma soruları. Her seferinde yeni değerler, üç seviyede: Nyquist, LSB ve veri hızları, örtüşme, bitler ve UART çerçeveleri, harmonikler, SQNR ve sistem tasarımı.

Ücretsiz alıştırma sorusuKolay
SD0​D1​D2​D3​D4​D5​D6​D7​Tb​ = ?115200 Bd

Bir UART bağlantısı 115200 baud ile çalışıyor. Bir bitin süresini Tb µs cinsinden bulun.

baud = 115200 Bd
µs
Sonraki soru →

Neler çalışırsınız

  1. KolayNyquist, LSB ve veri hızları
  2. Ortaörtüşme, bitler ve UART çerçeveleri
  3. Zorharmonikler, SQNR ve sistem tasarımı

Veri toplama ve örnekleme soruları nasıl çözülür

  1. Verilenleri yazın: örnekleme hızı, sinyal frekansları, bit sayısı, giriş aralığı, baud hızı.
  2. Örnekleme sorularında her frekansı fs/2 ile karşılaştırın; daha yüksek bir frekans, fs’nin en yakın katıyla fa = |f − k·fs| frekansında görünür.
  3. Çözünürlük sorularında 1 LSB = VFSR/2ᴺ değerini bulun ya da 2ᴺ ≥ aralık/çözünürlük koşulunu sağlayan en küçük N’yi seçin.
  4. Veri hızı ve UART bağlantılarında gönderilen her şeyi sayın: kanalları, saniyedeki örnekleri, örnek başına bitleri ya da tam baytları ve her çerçevenin başlama, eşlik ve durma bitlerini.

Sık yapılan hatalar

  • fs/2’nin üzerindeki bir frekansın yok olduğunu sanmak: o frekans bant içinde bir örtüşme olarak görünür.
  • Aralığı 2ᴺ yerine N’ye bölmek.
  • Bit sayısını yukarı değil aşağı yuvarlamak.
  • Başlama ve durma bitlerini unutmak: 8N1 her bayt için 10 bit gönderir.

Temel formüller

Nyquist ölçütü
fs > 2·fmax, fN = fs/2
Örtüşme frekansı
fa = |f − k·fs|, k = round(f/fs)
Adım büyüklüğü
1 LSB = VFSR/2ᴺ
Kuantalama hatası (yuvarlama)
±½ LSB
Kesen ADC kodu
D = ⌊Vin/LSB⌋
r çözünürlüğü için bit sayısı
2ᴺ ≥ span/r
İdeal SQNR, tam ölçekli sinüs
SQNR = 6,02·N + 1,76 dB
Veri hızı
kanal × fs × N bit/s
Çoklayıcılı ADC
fs = 1/(n·(tc + tset))
UART
Tb = 1/baud; 8N1 = bayt başına 10 bit; bayt/s = baud/çerçeve başına bit
Baud hızı bölücüsü
baud = fclk/(16·D)

Veri toplama ve örnekleme konusunu sıfırdan öğrenin

Bundan önce: Sayı sistemleri

1Veri toplama nedir

Bir bilgisayar gerilimi doğrudan okuyamaz. Bir veri toplama sistemi fiziksel bir büyüklüğü sayılara çevirir: algılayıcı küçük bir gerilim üretir, yükselteç onu ölçekler, analog-dijital dönüştürücü (ADC) ise düzenli aralıklarla ölçüp ikili bir sayı verir.

TG∿01N, fs​0101

Sayıların kalitesini iki seçim belirler. Örnekleme hızı fs, ADC’nin ne sıklıkla ölçtüğünü; bit sayısı N ise gerilim aralığını ne kadar ince böldüğünü söyler. Birlikte, ne kadar veri depolayacağınızı ya da göndereceğinizi de belirlerler.

Kendini sına Bir ADC 2 kHz ile örnekliyor. 0,5 s içinde kaç örnek alır?
  1. 1000
  2. 2000
  3. 250
  4. 4000

Cevap: 1000. Örnek sayısı = fs·t = 2000·0,5 = 1000. 0,5 yerine 2 ile çarpmak 4000, süreyi hiç hesaba katmamak ise 2000 verir.

2Örnekleme ve örtüşme

Bir sinüs dalgasını yakalamak için periyot başına ikiden fazla örnek gerekir. Yani örnekleme hızı, sinyaldeki en yüksek frekansın iki katından büyük olmalıdır. Örnekleme hızının yarısına Nyquist frekansı denir:

fs > 2·fmax fN = fs/2

fs/2’nin üzerindeki bir frekans yok olmaz. Örnekleri, daha düşük bir frekansın, yani örtüşmenin (alias) örnekleriyle tıpatıp aynı görünür. Şekilde 7 Hz’lik bir sinüs (sürekli çizgi) 10 Hz ile örnekleniyor ve noktalar 3 Hz’lik bir sinüse (kesikli çizgi) de aynı şekilde uyuyor.

tf = 7 Hzfs​ = 10 Hz
fa = |f − k·fs|, k = f/fs değerine en yakın tam sayı

Örneklemeden sonra hiçbir şey örtüşmeyi gerçek bir sinyalden ayıramaz. Bu yüzden ADC’den önce bir analog örtüşme önleyici filtre, fs/2’nin üzerindeki her şeyi kaldırır.

Kendini sına 7 kHz’lik bir ton, filtre olmadan 10 kHz ile örnekleniyor. Hangi frekansta görünür?
  1. 17 kHz
  2. 3 kHz
  3. 5 kHz
  4. 7 kHz

Cevap: 3 kHz. 7 kHz, fs/2 = 5 kHz’in üzerindedir, bu yüzden geriye katlanır: |7 − 1·10| = 3 kHz. 7 kHz’de kalamaz, 17 kHz çıkarmak yerine toplamaktır, 5 kHz ise yalnızca katlanma frekansıdır.

3Çözünürlük ve kuantalama

N bitlik bir ADC’nin 0’dan 2ᴺ − 1’e kadar 2ᴺ çıkış kodu vardır. Tam ölçek aralığı VFSR’yi 2ᴺ eşit adıma böler. Bir adıma 1 LSB (en düşük anlamlı bit) denir:

1 LSB = VFSR/2ᴺ

Kesen bir ADC, ⌊Vin/LSB⌋ kodunu, yani altındaki tam sayıyı verir. Yuvarlayan bir ADC gerçek değerden hiçbir zaman ½ LSB’den fazla uzak olmaz: bu onun kuantalama hatasıdır.

Bir aralık üzerinde r büyüklüğündeki adımları ayırt etmek için 2ᴺ ≥ aralık/r koşulunu sağlayan en küçük N gerekir. Her ek bit LSB’yi yarıya indirir ve ideal sinyal-kuantalama gürültüsü oranına yaklaşık 6 dB ekler:

SQNR = 6,02·N + 1,76 dB
Kendini sına 10 bitlik bir ADC’nin aralığı 0 ile 5,12 V arasındadır. 1 LSB kaçtır?
  1. 10 mV
  2. 2,5 mV
  3. 5 mV
  4. 512 mV

Cevap: 5 mV. 210 = 1024, yani 1 LSB = 5,12/1024 = 0,005 V = 5 mV. N = 10’a bölmek 512 mV, 2⁹ kullanmak 10 mV verir; 2,5 mV ise yuvarlayan bir ADC’nin en büyük hatası, yani yarım LSB’dir.

4Veri hızları ve seri bağlantılar

Her kanal saniyede N bitlik fs örnek verir. Ham veri hızı kanal × fs × N’dir. Bellekte bir örnek tam bayt yer kaplar; yani 12 bitlik bir örnek 2 bayt kullanır.

Bir UART her baytı bir çerçeve olarak gönderir: bir başlama biti, 8 veri biti, isteğe bağlı bir eşlik biti ve bir ya da iki durma biti. Yaygın 8N1 biçiminde bu, bayt başına 10 bittir. Baud hızı saniyedeki bit sayısını sayar, yani bir bit 1/baud sürer.

saniyedeki bayt = baud/(çerçeve başına bit)

Bir çoklayıcı, tek bir ADC’nin birkaç kanala sırayla hizmet vermesini sağlar. Bir dönüşüm (oturma süresiyle birlikte) t sürüyorsa, n kanalın her biri 1/(n·t) hızıyla örneklenir.

5Çözümlü bir örnek

Çoğu soruda şu sırayı izleyin:

  1. Örnekleme hızını en yüksek sinyal frekansıyla karşılaştırın.
  2. Aralıktan ve bit sayısından adım büyüklüğünü bulun.
  3. Veriyi sayın: kanallar, saniyedeki örnekler, örnek başına bayt.
  4. Başlama, eşlik ve durma bitlerini sayarak bunu bağlantının ya da belleğin kaldırabileceğiyle karşılaştırın.
Çözümlü örnek

Bir kaydedici, 0–4,096 V aralığında 12 bitlik bir ADC ile 4 sıcaklık kanalını ölçüyor. Sinyaller 20 Hz’e kadar frekanslar içeriyor ve her kanal 100 Hz ile örnekleniyor. Her örnek, 8N1 biçiminde 9600 baud’luk bir UART üzerinden 2 bayt olarak gönderiliyor. Örnekleme hızı yeterince yüksek mi, 1 LSB kaçtır ve bağlantı yetişebilir mi?

1

Nyquist kontrolü

2·fmax = 2·20 = 40 Hz < 100 Hz

Örnekleme hızı yeterince yüksektir.

2

Adım büyüklüğü

1 LSB = 4,096/212 = 4,096/4096 = 0,001 V = 1 mV
3

Gönderilecek veri

4 kanal · 100 örnek/s · 2 bayt = 800 bayt/s
4

Bağlantının kapasitesi

8N1 her bayt için 10 bit gönderir.

9600/10 = 960 bytes/s ≥ 800 bytes/s
5

Cevabı kontrol edin

Hatta bu 800·10 = 8000 bit/s eder; 9600 baud’un altındadır. Bağlantı %83 dolu.

Cevap

Evet: 100 Hz, 20 Hz’in iki katından büyüktür, 1 LSB = 1 mV ve bağlantı, 960 bayt/s’lik kapasitesinin 800’ünü kullanır.

6Sık yapılan hatalar

  • fs/2’nin üzerindeki bir frekansın basitçe kaybolduğunu sanmak: o frekans bant içinde bir örtüşme olarak görünür.
  • Aralığı 2ᴺ yerine N’ye bölmek.
  • Bit sayısını aşağı yuvarlamak: 2ᴺ en az aralık/çözünürlük kadar olmalıdır.
  • UART’ta bayt başına 8 bit saymak: 8N1 için 10 gerekir.
  • 10 bitlik ya da 12 bitlik bir örneğin 2 tam bayta kaydedildiğini unutmak.
Kendini sına 9600 baud’luk bir UART, 8N1 biçiminde saniyede kaç bayt gönderebilir?
  1. 1067
  2. 1200
  3. 9600
  4. 960

Cevap: 960. Her bayt 10 bit gerektirir (başlama, 8 veri, durma): 9600/10 = 960. 8’e bölmek başlama ve durma bitlerini unutmaktır, 9’a bölmek ise bunlardan birini.

7Sınav soruları nasıl görünür

  • Kolay: Nyquist, LSB ve veri hızları. En küçük örnekleme hızını, Nyquist frekansını, LSB büyüklüğünü ya da kuantalama hatasını, bir UART’ın bit süresini ya da ham veri hızını bulursunuz.
  • Orta: örtüşme, bitler ve UART çerçeveleri. Bir örtüşme frekansını, bir çözünürlük için bit sayısını, bir gerilimin çıkış kodunu, bir kayıt için belleği, bir UART biçiminin bayt hızını ya da ideal SQNR’yi bulursunuz.
  • Zor: harmonikler, SQNR ve sistem tasarımı. Bir harmoniğin nerede örtüştüğünü, istenen bir SQNR için bitleri, UART ile akıtılan bir ADC’nin yakalayabileceği en yüksek frekansı, çoklayıcılı bir ADC’nin hızını, bir bölücünün baud hızı hatasını ya da bir algılayıcı zincirinin sıcaklık çözünürlüğünü bulursunuz.

Uygulamada adım adım öğreninUygulamada adım adım öğrenin

Çözümlü örnekler

Örnek 1Kolay
SD0​D1​D2​D3​D4​D5​D6​D7​Tb​ = ?2400 Bd

Bir UART bağlantısı 2400 baud ile çalışıyor. Bir bitin süresini Tb µs cinsinden bulun.

baud = 2400 Bd

İstenen: Tb (µs)

İpuçlarını göster
  1. Baud hızı saniyede gönderilen bit sayısıdır.
  2. Tb = 1/baud.
  3. 1 s = 10⁶ µs.
Cevabı ve adım adım çözümü göster

UART: asenkron bir seri bağlantı her baytı bir çerçeve olarak gönderir: bir başlama biti (düşük), veri bitleri, isteğe bağlı bir eşlik biti ve bir ya da iki durma biti (yüksek). Baud hızı saniyedeki bit sayısıdır; yani bir bit Tb = 1/baud sürer ve n bitlik bir çerçeve n/baud sürer. Yaygın 8N1 biçiminde bayt başına 10 bit vardır. Baud üreteci saat frekansını böler: baud = fclk/(16·D), D bir tam sayıdır; bu yüzden gerçek baud hızı hedeften biraz farklıdır, yaklaşık %2’nin altındaki bir hata genellikle kabul edilebilir.

Bit süresi

Tb = 1/2400 s = 416,7 µs

Cevap

Tb = 416,7 µs
Örnek 2Orta
Vin​N = 85 V2ᴺ − 101 LSB2,125 V?

Giriş aralığı 0 ile 5 V arasında olan 8 bitlik bir ADC keser: çıkış kodu, 1 LSB = VFSR/2ᴺ olmak üzere ⌊Vin/LSB⌋’dir. 2,125 V’luk bir giriş için onlu sistemdeki çıkış kodunu D bulun.

N = 8VFSR = 5 VVin = 2,125 V

İstenen: D

İpuçlarını göster
  1. Önce bir LSB’nin büyüklüğünü bulun.
  2. 1 LSB = 5/256 = 19,53 mV.
  3. Girişi LSB’ye bölün ve tam kısmı alın.
Cevabı ve adım adım çözümü göster

ADC çözünürlüğü: N bitlik bir dönüştürücü, tam ölçek aralığı VFSR’yi 0’dan 2ᴺ − 1’e kadar 2ᴺ koda böler. Bir adım 1 LSB = VFSR/2ᴺ’dir: dönüştürücünün gösterebildiği en küçük değişim. Kesen bir ADC ⌊Vin/LSB⌋ kodunu verir; yuvarlayan bir ADC gerçek değerden hiçbir zaman ½ LSB’den fazla uzak olmaz, bu onun kuantalama hatasıdır. Her ek bit LSB’yi yarıya indirir ve tam ölçekli bir sinüs için ideal sinyal-kuantalama gürültüsü oranına SQNR = 6,02·N + 1,76 dB yaklaşık 6 dB ekler. Bir aralık üzerinde r çözünürlüğüne ulaşmak için 2ᴺ ≥ aralık/r koşulunu sağlayan en küçük N’yi seçin.

Adım büyüklüğü

1 LSB = 5/28 = 19,53 mV

Kod

Vin/LSB = 2125/19,53 = 108,8
kod = ⌊108,8⌋ = 108

Cevap

D = 108

İkili sistemde bu 01101100’dır.

Örnek 3Zor
f0fs​/2fs​1,92 kHz7f₁?

1,92 kHz bir kare dalga, örtüşme önleyici filtre olmadan 8 kHz ile örnekleniyor. Kare dalga 3f₁, 5f₁, 7f₁, … tek harmoniklerini içerir. 7f₁ harmoniği örneklenmiş veride hangi frekansta fa görünür? Hz cinsinden verin.

f₁ = 1,92 kHzfs = 8 kHzharmonik: 7f₁

İstenen: fa (Hz)

İpuçlarını göster
  1. Harmonik 7·1,92 kHz = 13,44 kHz frekansındadır, fs/2 = 4 kHz’ün üzerinde.
  2. En yakın fs katıyla fa = |f − k·fs| frekansında görünür.
  3. 13440/8000 = 1,68.
Cevabı ve adım adım çözümü göster

Örnekleme: bir ADC sinyali saniyede fs kez ölçer. Nyquist–Shannon teoremine göre bir f frekansı ancak f < fs/2 olduğu sürece doğru yakalanır; bu sınır Nyquist (katlanma) frekansıdır. Bu yüzden örnekleme hızı, en yüksek sinyal frekansının iki katını aşmalıdır. Daha yüksek bir frekans kaybolmaz: sonucu 0 ile fs/2 arasına getiren k tam sayısıyla fa = |f − k·fs| frekansında bir örtüşme (alias) olarak görünür. Örnekler ikisini ayırt edemez; bu yüzden ADC’den önce bir analog örtüşme önleyici filtre, fs/2’nin üzerindeki her şeyi kaldırmalıdır.

Harmonik frekansı

7f₁ = 7·1,92 kHz = 13,44 kHz

Örnekleme hızının en yakın katı

m = round(1,68) = 2

Örtüşme frekansı

fa = |13440 − 2·8000| = 2560 Hz

Cevap

fa = 2560 Hz

Örtüşme, hiçbir dijital filtrenin kaldıramayacağı sinyal bandının içine düşer. Yalnızca ADC’den önceki bir analog filtre işe yarar.

Sorular ve cevaplar

Veri toplama ve örnekleme nedir?

Bir bilgisayar gerilimi doğrudan okuyamaz. Bir veri toplama sistemi fiziksel bir büyüklüğü sayılara çevirir: algılayıcı küçük bir gerilim üretir, yükselteç onu ölçekler, analog-dijital dönüştürücü (ADC) ise düzenli aralıklarla ölçüp ikili bir sayı verir.

Sayıların kalitesini iki seçim belirler. Örnekleme hızı fs, ADC’nin ne sıklıkla ölçtüğünü; bit sayısı N ise gerilim aralığını ne kadar ince böldüğünü söyler. Birlikte, ne kadar veri depolayacağınızı ya da göndereceğinizi de belirlerler.

Veri toplama ve örnekleme soruları adım adım nasıl çözülür?
  1. Verilenleri yazın: örnekleme hızı, sinyal frekansları, bit sayısı, giriş aralığı, baud hızı.
  2. Örnekleme sorularında her frekansı fs/2 ile karşılaştırın; daha yüksek bir frekans, fs’nin en yakın katıyla fa = |f − k·fs| frekansında görünür.
  3. Çözünürlük sorularında 1 LSB = VFSR/2ᴺ değerini bulun ya da 2ᴺ ≥ aralık/çözünürlük koşulunu sağlayan en küçük N’yi seçin.
  4. Veri hızı ve UART bağlantılarında gönderilen her şeyi sayın: kanalları, saniyedeki örnekleri, örnek başına bitleri ya da tam baytları ve her çerçevenin başlama, eşlik ve durma bitlerini.
Veri toplama ve örnekleme konusunda en sık yapılan hatalar nelerdir?
  • fs/2’nin üzerindeki bir frekansın yok olduğunu sanmak: o frekans bant içinde bir örtüşme olarak görünür.
  • Aralığı 2ᴺ yerine N’ye bölmek.
  • Bit sayısını yukarı değil aşağı yuvarlamak.
  • Başlama ve durma bitlerini unutmak: 8N1 her bayt için 10 bit gönderir.
Veri toplama ve örnekleme alıştırmaları neleri kapsar?
  • Kolay: Nyquist, LSB ve veri hızları
  • Orta: örtüşme, bitler ve UART çerçeveleri
  • Zor: harmonikler, SQNR ve sistem tasarımı

Her soruda yeni değerler olur; böylece bir cevabı değil, yöntemi öğrenirsiniz. Takıldınız mı? Önce küçük bir ipucu açın, tam açıklamayı ise yalnızca gerektiğinde.

Çalışma nasıl işler

  • Her soruda yeni değerler olur; böylece bir cevabı değil, yöntemi öğrenirsiniz.
  • Takıldınız mı? Önce küçük bir ipucu açın, tam açıklamayı ise yalnızca gerektiğinde.
  • İlerlemeniz, hatalarınız ve kaydettiğiniz sorular saklanır; böylece sınavdan önce gözden geçirebilirsiniz.

Bu konudan önceki ve sonraki konular

Önce öğrenin

Bu konuyu içeren dersler

Elektrik alanında diğer konular

Yazdırılabilir çalışma kâğıdı