Сбор данных и дискретизация: задачи с пошаговыми решениями

Бесплатные задачи по теме Сбор данных и дискретизация с рисунками, подсказками и подробными решениями. Каждый раз новые значения, трёх уровней: Найквист, LSB и скорости передачи данных, наложение спектров, разряды и кадры UART, гармоники, SQNR и проектирование системы.

Бесплатная задачаЛёгкая
SD0​D1​D2​D3​D4​D5​D6​D7​Tb​ = ?115200 Bd

Канал UART работает на скорости 115200 бод. Найдите длительность Tb одного бита в µs.

baud = 115200 Bd
µs
Следующая задача →

Что вы отрабатываете

  1. ЛёгкаяНайквист, LSB и скорости передачи данных
  2. Средняяналожение спектров, разряды и кадры UART
  3. Сложнаягармоники, SQNR и проектирование системы

Как решать задачи по теме «Сбор данных и дискретизация»

  1. Запишите, что дано: частоту дискретизации, частоты сигналов, число разрядов, диапазон входа, скорость в бодах.
  2. В задачах на дискретизацию сравнивайте каждую частоту с fs/2; более высокая частота появляется как fa = |f − k·fs| с ближайшим кратным fs.
  3. В задачах на разрешение найдите 1 LSB = VFSR/2ᴺ или наименьшее N, при котором 2ᴺ ≥ диапазон/разрешение.
  4. Для скоростей передачи данных и каналов UART считайте всё, что передаётся: каналы, отсчёты в секунду, биты или целые байты на отсчёт, а также стартовые, контрольные и стоповые биты каждого кадра.

Типичные ошибки

  • Считать, что частота выше fs/2 исчезает: она появляется как ложная частота внутри полосы.
  • Делить диапазон на N вместо 2ᴺ.
  • Округлять число разрядов вниз, а не вверх.
  • Забывать про стартовый и стоповый биты: формат 8N1 передаёт 10 бит на каждый байт.

Основные формулы

Критерий Найквиста
fs > 2·fmax, fN = fs/2
Ложная частота
fa = |f − k·fs|, k = round(f/fs)
Шаг квантования
1 LSB = VFSR/2ᴺ
Ошибка квантования (округление)
±½ LSB
АЦП с отбрасыванием остатка
D = ⌊Vin/LSB⌋
Число разрядов для разрешения r
2ᴺ ≥ span/r
Идеальное SQNR, синусоида на полной шкале
SQNR = 6,02·N + 1,76 dB
Скорость передачи данных
каналы × fs × N bit/s
АЦП с мультиплексором
fs = 1/(n·(tc + tset))
UART
Tb = 1/baud; 8N1 = 10 бит на байт; byte/s = baud/число бит в кадре
Делитель скорости передачи
baud = fclk/(16·D)

Изучите тему «Сбор данных и дискретизация» с нуля

Перед этим: Системы счисления

1Что такое сбор данных

Компьютер не может прочитать напряжение напрямую. Система сбора данных превращает физическую величину в числа: датчик создаёт небольшое напряжение, усилитель масштабирует его, а аналого-цифровой преобразователь (АЦП) через равные промежутки времени измеряет его и выдаёт двоичное число.

TG∿01N, fs​0101

Качество чисел определяют два выбора. Частота дискретизации fs показывает, как часто АЦП проводит измерения, а число разрядов N — насколько мелко он делит свой диапазон напряжений. Вместе они определяют и объём данных, которые нужно хранить или передавать.

Самопроверка АЦП работает с частотой дискретизации 2 kHz. Сколько отсчётов он получит за 0,5 s?
  1. 1000
  2. 2000
  3. 250
  4. 4000

Ответ: 1000. Число отсчётов = fs·t = 2000·0,5 = 1000. Если умножить на 2 вместо 0,5, получится 4000, а если не учесть время, получится 2000.

2Дискретизация и наложение спектров

Чтобы зафиксировать синусоиду, нужно больше двух отсчётов за период. Поэтому частота дискретизации должна быть больше удвоенной наивысшей частоты в сигнале. Половина частоты дискретизации — это частота Найквиста:

fs > 2·fmax fN = fs/2

Частота выше fs/2 не исчезает. Её отсчёты выглядят точно так же, как отсчёты более низкой частоты, ложной частоты. На рисунке синусоида 7 Hz (сплошная) дискретизируется с частотой 10 Hz, и точки так же хорошо ложатся на синусоиду 3 Hz (штриховая).

tf = 7 Hzfs​ = 10 Hz
fa = |f − k·fs|, k = целое число, ближайшее к f/fs

После дискретизации отделить ложную частоту от настоящего сигнала уже невозможно. Поэтому аналоговый антиэлайзинговый фильтр удаляет всё выше fs/2 до АЦП.

Самопроверка Тон 7 kHz дискретизируется с частотой 10 kHz без фильтра. На какой частоте он появится?
  1. 17 kHz
  2. 3 kHz
  3. 5 kHz
  4. 7 kHz

Ответ: 3 kHz. 7 kHz выше fs/2 = 5 kHz, поэтому он «сворачивается»: |7 − 1·10| = 3 kHz. Он не может остаться на 7 kHz, 17 kHz получается сложением вместо вычитания, а 5 kHz — это лишь частота свёртки.

3Разрешение и квантование

N-разрядный АЦП имеет 2ᴺ выходных кодов, от 0 до 2ᴺ − 1. Он делит свой диапазон полной шкалы VFSR на 2ᴺ равных шагов. Один шаг называется 1 LSB (младший значащий разряд):

1 LSB = VFSR/2ᴺ

АЦП с отбрасыванием остатка выдаёт код ⌊Vin/LSB⌋, то есть целое число снизу. АЦП с округлением никогда не отличается от истинного значения больше чем на ½ LSB: это его ошибка квантования.

Чтобы различать шаги размера r в некотором диапазоне, нужно наименьшее N, для которого 2ᴺ ≥ диапазон/r. Каждый дополнительный разряд уменьшает LSB вдвое и добавляет примерно 6 dB к идеальному отношению сигнал/шум квантования:

SQNR = 6,02·N + 1,76 dB
Самопроверка У 10-разрядного АЦП диапазон от 0 до 5,12 V. Чему равен 1 LSB?
  1. 10 mV
  2. 2,5 mV
  3. 5 mV
  4. 512 mV

Ответ: 5 mV. 210 = 1024, поэтому 1 LSB = 5,12/1024 = 0,005 V = 5 mV. Деление на N = 10 даёт 512 mV, использование 2⁹ даёт 10 mV, а 2,5 mV — это наибольшая ошибка АЦП с округлением, половина LSB.

4Скорости передачи данных и последовательные каналы

Каждый канал выдаёт fs отсчётов в секунду по N бит. Исходная скорость данных равна каналы × fs × N. В памяти отсчёт занимает целое число байт, поэтому 12-разрядный отсчёт занимает 2 байта.

UART передаёт каждый байт кадром: стартовый бит, 8 битов данных, необязательный бит чётности и один или два стоповых бита. В распространённом формате 8N1 это 10 бит на байт. Скорость в бодах считает биты в секунду, поэтому один бит длится 1/baud.

байт в секунду = baud/(бит в кадре)

Мультиплексор позволяет одному АЦП по очереди обслуживать несколько каналов. Если одно преобразование (с установлением) занимает время t, каждый из n каналов дискретизируется с частотой 1/(n·t).

5Разобранный пример

Для большинства задач действуйте в таком порядке:

  1. Сравните частоту дискретизации с наивысшей частотой сигнала.
  2. Найдите шаг по диапазону и числу разрядов.
  3. Посчитайте данные: каналы, отсчёты в секунду, байты на отсчёт.
  4. Сравните с тем, что способны принять канал связи или память, учитывая стартовый, контрольный и стоповый биты.
Разобранный пример

Регистратор измеряет 4 канала температуры 12-разрядным АЦП в диапазоне от 0 до 4,096 V. Сигналы содержат частоты до 20 Hz, и каждый канал дискретизируется с частотой 100 Hz. Каждый отсчёт передаётся 2 байтами по UART на скорости 9600 бод, 8N1. Достаточна ли частота дискретизации, чему равен 1 LSB и справится ли канал связи?

1

Проверка по Найквисту

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

Частота дискретизации достаточна.

2

Шаг квантования

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

Данные для передачи

4 канала · 100 отсчётов/s · 2 байта = 800 байт/s
4

Пропускная способность канала

8N1 передаёт 10 бит на байт.

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

Проверьте ответ

На линии это 800·10 = 8000 bit/s, что меньше 9600 бод. Канал загружен на 83 %.

Ответ

Да: 100 Hz больше удвоенных 20 Hz, 1 LSB = 1 mV, а каналу нужно 800 из его 960 byte/s.

6Типичные ошибки

  • Считать, что частота выше fs/2 просто теряется: она появляется как ложная частота внутри полосы.
  • Делить диапазон на N вместо 2ᴺ.
  • Округлять число разрядов вниз: 2ᴺ должно быть не меньше диапазон/разрешение.
  • Считать 8 бит на байт в UART: для 8N1 нужно 10.
  • Забывать, что 10-разрядный или 12-разрядный отсчёт хранится в 2 целых байтах.
Самопроверка Сколько байт в секунду может передать UART на скорости 9600 бод в формате 8N1?
  1. 1067
  2. 1200
  3. 9600
  4. 960

Ответ: 960. Каждому байту нужно 10 бит (старт, 8 данных, стоп): 9600/10 = 960. Деление на 8 не учитывает стартовый и стоповый биты, а деление на 9 не учитывает один из них.

7Как выглядят экзаменационные задачи

  • Лёгкие: Найквист, LSB и скорости передачи данных. Нужно найти минимальную частоту дискретизации, частоту Найквиста, размер LSB или ошибку квантования, длительность бита UART или исходную скорость данных.
  • Средние: наложение спектров, разряды и кадры UART. Нужно найти ложную частоту, число разрядов для заданного разрешения, выходной код для напряжения, объём памяти для записи, число байт в секунду для формата UART или идеальное SQNR.
  • Сложные: гармоники, SQNR и проектирование системы. Нужно найти, где происходит наложение гармоники, число разрядов для требуемого SQNR, наивысшую частоту, которую может зафиксировать АЦП с передачей по UART, скорость АЦП с мультиплексором, ошибку скорости в бодах для делителя или температурное разрешение измерительной цепи.

Изучайте шаг за шагом в приложенииИзучайте шаг за шагом в приложении

Разобранные примеры

Пример 1Лёгкая
SD0​D1​D2​D3​D4​D5​D6​D7​Tb​ = ?2400 Bd

Канал UART работает на скорости 2400 бод. Найдите длительность Tb одного бита в µs.

baud = 2400 Bd

Найти: Tb (µs)

Показать подсказки
  1. Скорость в бодах — это число бит, передаваемых за секунду.
  2. Tb = 1/baud.
  3. 1 s = 10⁶ µs.
Показать ответ и пошаговое решение

UART: асинхронный последовательный канал передаёт каждый байт кадром: один стартовый бит (низкий уровень), биты данных, необязательный бит чётности и один или два стоповых бита (высокий уровень). Скорость в бодах — это число бит в секунду, поэтому один бит длится Tb = 1/baud, а кадр из n бит длится n/baud. В распространённом формате 8N1 на байт приходится 10 бит. Генератор бодов делит тактовую частоту: baud = fclk/(16·D) с целым D, поэтому реальная скорость в бодах немного отличается от заданной; погрешность меньше примерно 2 % обычно допустима.

Время бита

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

Ответ

Tb = 416,7 µs
Пример 2Средняя
Vin​N = 85 V2ᴺ − 101 LSB2,125 V?

8-разрядный АЦП с диапазоном входа от 0 до 5 V отбрасывает остаток: его выходной код равен ⌊Vin/LSB⌋ при 1 LSB = VFSR/2ᴺ. Найдите десятичный выходной код D для входного напряжения 2,125 V.

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

Найти: D

Показать подсказки
  1. Сначала найдите размер одного LSB.
  2. 1 LSB = 5/256 = 19,53 mV.
  3. Разделите входное напряжение на LSB и оставьте целую часть.
Показать ответ и пошаговое решение

Разрешение АЦП: N-разрядный преобразователь делит свой диапазон полной шкалы VFSR на 2ᴺ кодов, от 0 до 2ᴺ − 1. Один шаг равен 1 LSB = VFSR/2ᴺ: это наименьшее изменение, которое преобразователь может показать. АЦП с отбрасыванием остатка выдаёт код ⌊Vin/LSB⌋; АЦП с округлением никогда не отличается от истинного значения больше чем на ½ LSB, это его ошибка квантования. Каждый дополнительный разряд уменьшает LSB вдвое и добавляет примерно 6 dB к идеальному отношению сигнал/шум квантования SQNR = 6,02·N + 1,76 dB для синусоиды на полной шкале. Чтобы получить разрешение r в некотором диапазоне, выберите наименьшее N, для которого 2ᴺ ≥ диапазон/r.

Шаг квантования

1 LSB = 5/28 = 19,53 mV

Код

Vin/LSB = 2125/19,53 = 108,8
код = ⌊108,8⌋ = 108

Ответ

D = 108

В двоичном виде это 01101100.

Пример 3Сложная
f0fs​/2fs​1,92 kHz7f₁?

Прямоугольный сигнал 1,92 kHz дискретизируется с частотой 8 kHz без антиэлайзингового фильтра. Прямоугольный сигнал содержит нечётные гармоники 3f₁, 5f₁, 7f₁, … На какой частоте fa его гармоника 7f₁ появится в дискретизированных данных? Дайте ответ в Hz.

f₁ = 1,92 kHzfs = 8 kHzгармоника: 7f₁

Найти: fa (Hz)

Показать подсказки
  1. Гармоника находится на частоте 7·1,92 kHz = 13,44 kHz, выше fs/2 = 4 kHz.
  2. Она появляется на fa = |f − k·fs| с ближайшим кратным fs.
  3. 13440/8000 = 1,68.
Показать ответ и пошаговое решение

Дискретизация: АЦП измеряет сигнал fs раз в секунду. По теореме Найквиста–Шеннона частота f фиксируется правильно, только пока f < fs/2, то есть ниже частоты Найквиста (частоты свёртки), поэтому частота дискретизации должна превышать удвоенную наивысшую частоту сигнала. Более высокая частота не теряется: она проявляется как ложная частота fa = |f − k·fs|, где целое число k выбирается так, чтобы результат оказался между 0 и fs/2. Отсчёты не позволяют различить эти две частоты, поэтому аналоговый антиэлайзинговый фильтр должен удалить всё выше fs/2 до АЦП.

Частота гармоники

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

Ближайшее кратное частоты дискретизации

m = round(1,68) = 2

Ложная частота

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

Ответ

fa = 2560 Hz

Ложная частота попадает внутрь полосы сигнала, где её не удалит ни один цифровой фильтр. Помогает только аналоговый фильтр перед АЦП.

Вопросы и ответы

Сбор данных и дискретизация: что это?

Компьютер не может прочитать напряжение напрямую. Система сбора данных превращает физическую величину в числа: датчик создаёт небольшое напряжение, усилитель масштабирует его, а аналого-цифровой преобразователь (АЦП) через равные промежутки времени измеряет его и выдаёт двоичное число.

Качество чисел определяют два выбора. Частота дискретизации fs показывает, как часто АЦП проводит измерения, а число разрядов N — насколько мелко он делит свой диапазон напряжений. Вместе они определяют и объём данных, которые нужно хранить или передавать.

Сбор данных и дискретизация: как решать задачи шаг за шагом?
  1. Запишите, что дано: частоту дискретизации, частоты сигналов, число разрядов, диапазон входа, скорость в бодах.
  2. В задачах на дискретизацию сравнивайте каждую частоту с fs/2; более высокая частота появляется как fa = |f − k·fs| с ближайшим кратным fs.
  3. В задачах на разрешение найдите 1 LSB = VFSR/2ᴺ или наименьшее N, при котором 2ᴺ ≥ диапазон/разрешение.
  4. Для скоростей передачи данных и каналов UART считайте всё, что передаётся: каналы, отсчёты в секунду, биты или целые байты на отсчёт, а также стартовые, контрольные и стоповые биты каждого кадра.
Сбор данных и дискретизация: какие ошибки самые частые?
  • Считать, что частота выше fs/2 исчезает: она появляется как ложная частота внутри полосы.
  • Делить диапазон на N вместо 2ᴺ.
  • Округлять число разрядов вниз, а не вверх.
  • Забывать про стартовый и стоповый биты: формат 8N1 передаёт 10 бит на каждый байт.
Сбор данных и дискретизация: что вы тренируете?
  • Лёгкая: Найквист, LSB и скорости передачи данных
  • Средняя: наложение спектров, разряды и кадры UART
  • Сложная: гармоники, SQNR и проектирование системы

В каждой задаче новые значения, поэтому вы учите метод, а не ответ. Застряли? Сначала откройте небольшую подсказку, а полное объяснение — только когда оно понадобится.

Как проходят занятия

  • В каждой задаче новые значения, поэтому вы учите метод, а не ответ.
  • Застряли? Сначала откройте небольшую подсказку, а полное объяснение — только когда оно понадобится.
  • Ваш прогресс, ошибки и сохранённые задачи остаются, поэтому перед экзаменом вы сможете всё повторить.

Темы до и после этой

Сначала изучите

Курсы с этой темой

Другие темы: Электротехника

Лист заданий для печати