From c470fa0e91a29199778c9d108d867aa49f44a281 Mon Sep 17 00:00:00 2001 From: mrbloom Date: Tue, 22 Sep 2026 15:06:37 +0300 Subject: [PATCH] Refine IQ sampling explanations and clarity Updated text for clarity and improved flow in the IQ sampling section, including explanations of sampling concepts and Nyquist frequency. Till Quadrature Sampling --- content-ukraine/sampling.rst | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/content-ukraine/sampling.rst b/content-ukraine/sampling.rst index dd979ccd..fa920064 100644 --- a/content-ukraine/sampling.rst +++ b/content-ukraine/sampling.rst @@ -4,22 +4,22 @@ Дискритизація (Вибірка) IQ ################## -У цьому розділі ми розглянемо концепцію IQ-дискретизації або IQ-вибірка (яку також називають комплексною дискретизацією або квадратурною дискретизацією). Ми також торкнемося тем дискретизації за теоремою Найквіста, комплексних чисел, радіочастотних (РЧ) несучих, пониження частоти та спектральної щільності потужності. Саме такий метод дискретизації використовують SDR-системи, а також багато цифрових приймачів (і передавачів). Це дещо складніший варіант звичайної цифрової дискретизації, тому ми рухатимемося поступово — і завдяки практиці ви неодмінно опануєте цей принцип! +У цьому розділі розглянемо концепцію IQ-дискретизації або IQ-вибірки (яку також називають комплексною дискретизацією або квадратурною дискретизацією). Ми також торкнемося таких тем, як: теорема частоти дирскретизації Найквіста, комплексних чисел, радіочастотних (РЧ) несучих, пониження частоти та спектральної щільності потужності. IQ-дискретизація це саме той метод дискретизації, який використовують у SDR-системах, а також в багатьох цифрових приймачах (і передавачах). Це дещо складніший варіант за звичайну цифрову дискретизацію, тому ми будемо рухатися поступово — і завдяки практиці ви неодмінно опануєте цю концепцію! ************************* Основні поняття вибірки ************************* -Перш ніж перейти до вибірки IQ, давайте обговоримо, що насправді означає вибірка. Можливо, ви стикалися із дискретизацією, не усвідомлюючи цього, записуючи звук за допомогою мікрофона. Мікрофон — це перетворювач, який перетворює звукові хвилі в електричний сигнал (рівень напруги). Цей електричний сигнал перетворюється аналого-цифровим перетворювачем (АЦП), створюючи цифрове представлення звукової хвилі. Для спрощення, мікрофон вловлює звукові хвилі, які перетворюються на електричний сигнал, а цей електричний сигнал, у свою чергу, перетворюється на цирові дані. АЦП слугує сполучною ланкою між аналоговим і цифровим світами. Пристрої SDR працюють на диво схоже. Однак замість мікрофона в них використовується антена, хоча АЦП застосовуються так само. В обох випадках АЦП здійснює дискретизацію рівня напруги. Щодо SDR, то принцип можна описати так: на вході — радіохвилі, на виході — цифрові дані. +Перш ніж перейти до вибірки IQ, давайте обговоримо, що насправді означає вибірка або дискретизація. Можливо, ви стикалися із дискретизацією, не усвідомлюючи цього, наприклад при запису звука з мікрофона. Мікрофон — це перетворювач, який перетворює звукові хвилі в електричний сигнал (рівень напруги). Цей електричний сигнал перетворюється аналого-цифровим перетворювачем (АЦП), створюючи цифрове представлення звукової хвилі. Для спрощення, мікрофон вловлює звукові хвилі, які перетворюються на електричний сигнал, а цей електричний сигнал, у свою чергу, перетворюється на цирові дані. АЦП слугує сполучною ланкою між аналоговим і цифровим світами. Пристрої SDR працюють на диво схоже. Однак замість мікрофона в них використовується антена, хоча АЦП застосовуються так само. В обох випадках АЦП здійснює дискретизацію рівня напруги. В SDR цей принцип можна описати так: на вході — радіохвилі, на виході — цифрові дані. -Незалежно від того, чи ми маємо справу з аудіо чи радіочастотами, ми повинні взяти вибірку, якщо ми хочемо захопити, обробити або зберегти сигнал у цифровому вигляді. Вибірка може здатися простою, але в ній багато чого є. Більш технічний спосіб думати про дискретизацію сигналу полягає в тому, щоб отримати значення в певний момент часу та зберегти їх у цифровому вигляді. Скажімо, у нас є якась випадкова функція :math:`S(t)`, яка може представляти будь-що, і цю неперервну функцію, ми хочемо оцифрувати: +Якщо ми хочемо захопити, обробити або зберегти сигнал у цифровому вигляді незалежно від того, чи ми маємо справу з звуковими, чи з радіо хвилями, ми повинні взяти вибірку. Вибірка може здатися простою, але в ній багато чого є. Технічно цей спосіб дискретизації сигналу реалізован наступним чином, ми вимірюємо значення сигналу в певні визначені моменти часу та зберігаємо ці значення у цифровому вигляді. Скажімо, у нас є якась випадкова функція :math:`S(t)`, яка може представляти будь-що, і цю неперервну функцію, ми хочемо оцифрувати: .. image:: ../_images/sampling.svg :align: center :target: ../_images/sampling.svg :alt: Concept of sampling a signal, showing sample period T, the samples are the blue dots -Ми записуємо значення :math:`S(t)` через рівні проміжки часу тривалістю по :math:`T` секунд, відомі як **період вибірки**. Частота, з якою ми беремо вибірку, тобто кількість вибірок, взятих за секунду, є просто :math:`\frac{1}{T}`. Ця величина називається **частотою дискретизації**, і вона зворотна до періоду дискретизації. Наприклад, якщо ми маємо частоту дискретизації 10 Гц, то період дискретизації становить 0,1 секунди; між кожним двома виборками буде 0,1 секунда. На практиці наші частоти дискретизації будуть в діапазоні від сотень кГц до десятків МГц або навіть більше. Коли ми оцифровуємо сигнали, ми повинні пам’ятати про частоту дискретизації, це дуже важливий параметр. +Ми зберігаємо значення :math:`S(t)` виміряні через рівні проміжки часу тривалістю :math:`T` секунд, ця тривалість називається **періодом дискретизації**. Частота, з якою ми беремо вибірку, тобто кількість вибірок, взятих за секунду, є просто :math:`\frac{1}{T}`. Ця величина називається **частотою дискретизації**, і вона зворотна до періоду дискретизації. Наприклад, якщо ми маємо частоту дискретизації 10 Гц, то період дискретизації становить 0,1 секунди; між кожним двома виборками буде 0,1 секунда. На практиці наші частоти дискретизації будуть в діапазоні від сотень кГц до десятків МГц або навіть більше. Коли ми оцифровуємо сигнали, ми повинні пам’ятати про частоту дискретизації, це дуже важливий параметр. Для тих, хто віддає перевагу математичному опису: нехай :math:`S_n` представляє вибірку :math:`n`, зазвичай ціле число, більше рівне 0. За такого підходу процес дискретизації можна математично представити як :math:`S_n = S(nT)` для цілих значень :math:`n`. Тобто ми визначаємо значення аналогового сигналу :math:`S(t)` у моменти часу, що відповідають інтервалам :math:`nT`. @@ -27,21 +27,21 @@ Вибірка Найквіста ************************* -Для заданого сигналу головне питання часто полягає в тому, наскільки швидко ми повинні дискретизувати? Розглянемо сигнал, який є просто синусоїдою, частотою f, показаний зеленим кольором нижче. Припустимо, що ми дискретизуємо з частотою Fs (моменти искретизації показані синім кольором). Якщо ми дискретизуємо цей сигнал з частотою, що дорівнює f (тобто Fs = f), ми отримаємо щось подібне: +Для заданого сигналу головне питання часто полягає в тому, наскільки швидко ми повинні його дискретизувати? Розглянемо сигнал, який є просто синусоїдою, з частотою f, показаний зеленим кольором нижче. Припустимо, що ми дискретизуємо з частотою Fs (моменти искретизації показані синім кольором). Якщо ми дискретизуємо цей сигнал з частотою, що дорівнює f (тобто Fs = f), ми отримаємо щось подібне: .. image:: ../_images/sampling_Fs_0.3.svg :align: center -Червона пунктирна лінія на зображенні вище відтворює іншу — хибну — функцію, яка могла б дати ті самі відліки. Це означає, що частота дискретизації була замалою: одні й ті самі виборки могли походити від двох різних функцій, а звідси й випливає неоднозначність. Якщо ми хочемо точно відновити початковий сигнал, такої неоднозначності бути не повинно. +Червона пунктирна лінія на зображенні вище відтворює ще одну іншу — хибну — функцію, дискретизація якої могла б дати ті самі вибірки. Значить частота дискретизації була обрана замалою так як одні й ті самі виборки могли походити від двох різних функцій, тобто є неоднозначність. Якщо ми хочемо точно відновити початковий сигнал, такої неоднозначності бути не повинно. Спробуймо дискретизувати трохи швидше, з Fs = 1,2f: .. image:: ../_images/sampling_Fs_0.36.svg :align: center -Знову ж таки, існує інший сигнал, який може відповідати цим вибіркам. Ця неоднозначність означає, що якби хтось надав нам цей масив виборок, ми на основі цієї вибірки не змогли б розрізнити, який сигнал є оригінальним. +Знову ж таки, існує інший сигнал, який може відповідати цим вибіркам. Ця неоднозначність означає, що якби хтось надав нам цей масив виборок, ми на їх основі не змогли б розрізнити, який сигнал є оригінальним. -А як щодо дискретизації при Fs = 1.5f: +А щодо частоти дискретизації Fs = 1.5f: .. image:: ../_images/sampling_Fs_0.45.svg :align: center @@ -52,24 +52,24 @@ .. image:: ../_images/sampling_Fs_0.6.svg :align: center -Цього разу немає неправильного сигналу, оскільки ми семплювали достатньо швидко, щоб не було жодного сигналу, який би відповідав цим семплам, окрім того, який ви бачите (при умові що ви не підвищите частоту цього відтвореного сигналу, але ми обговоримо цей випадок пізніше). +Цього разу немає іншого неправильного сигналу, оскільки ми дискретизували достатньо швидко так, щоб був тільки один сигнал, який би відповідав вибіркам (але це дійсно у випадку що ми не підвищуємо частоту сигналу який ми дискретизуємо, цей варіант обговоримо пізніше). -У наведеному вище прикладі наш сигнал був простою синусоїдою, більшість реальних сигналів матимуть багато частотних складових. Для точної дискретизації будь-якого сигналу частота дискретизації повинна бути "щонайменше вдвічі більшою за частоту максимальної частотної складової". Ось візуалізація на прикладі графіку частотної області, зверніть увагу, що завжди буде існувати рівень шуму, тому найвища частота зазвичай є наближеним значенням: +У наведеному вище прикладі наш сигнал був простою синусоїдою, більшість реальних сигналів матимуть багато частотних складових. Для точної дискретизації будь-якого сигналу частота дискретизації повинна бути "щонайменше вдвічі більшою за частоту максимальної частотної складової". Нижче приклад графіку частотної області, зверніть увагу, що завжди існує рівень шуму, тому зазвичай верхня частота має наближене значення: .. image:: ../_images/max_freq.svg :align: center :target: ../_images/max_freq.svg - :alt: Дискретизація Найквіста означає, що частота дискретизації вища за максимальну смугу пропускання сигналу + :alt: Дискретизація Найквіста означає, що частота дискретизації більша за максимальну смугу пропускання сигналу -Ми повинні визначити найвищу частотну складову, потім подвоїти її та переконатися, що ми дискретизуємо з цією частотою або швидше. Мінімальна частота, з якою ми можемо дискретизувати, відома як частота Найквіста. Іншими словами, частота Найквіста - це мінімальна частота, з якою потрібно дискретизувати сигнал (з кінцевою смугою пропускання), щоб зберегти всю свою інформацію. Це надзвичайно важлива частина теорії в рамках DSP та SDR, яка служить мостом між безперервними та дискретними сигналами. +Зпочатку ми повинні визначити найвищу частотну складову, потім подвоїти це значення та переконатися, що ми дискретизуємо з цією подвоєною частотою або швидше. Мінімальна частота, з якою ми можемо дискретизувати, відома як частота Найквіста. Іншими словами, частота Найквіста - це мінімальна частота, з якою потрібно дискретизувати сигнал (що має кінцеву смугу пропускання), так щоб зберегти всю його інформацію. Це надзвичайно важлива частина теорії DSP та SDR, вона служить для переходу від безперервного до дискретного сигнала. .. image:: ../_images/nyquist_rate.png :scale: 70% :align: center -Якщо ми дискретизуємо недостатньо швидко, виникає явище, яке називають аліасингом; про нього ми дізнаємось пізніше, а поки що намагаємось уникати його за будь-яку ціну. Наші SDR (як і більшість приймачів загалом) відфільтровують усе, що вище за Fs/2, безпосередньо перед дискретизацією. Якщо ми спробуємо прийняти сигнал із замалою частотою дискретизації, цей фільтр відсіче частину сигналу. Наші SDR докладають чималих зусиль, щоб видати нам відліки без аліасингу та інших спотворень. Протиаліасинговий фільтр SDR не переходить від смуги пропускання до смуги загородження миттєво — йому потрібна невелика перехідна смуга. Тому діє емпіричне правило: придатною для роботи вважають лише центральну частину частоти дискретизації, приблизно 4/5. Його називають «правилом 4/5 Шона». +Якщо частота дискретизації недостатньо висока, виникає явище, що має назву «аліасинг» (або накладання спектрів); ми розглянемо його згодом, але намагаємося уникати за будь-яку ціну. Принцип роботи SDR (як і більшості приймачів загалом) полягає у фільтрації всіх частот, що перевищують Fs/2, безпосередньо перед виконанням дискретизації. Якщо спробувати прийняти сигнал із занизькою частотою дискретизації, цей фільтр відсіче частину сигналу. SDR-пристрої виконують значну роботу, щоб забезпечити отримання відліків, вільних від аліасингу та інших спотворень. Протиаліасинговий фільтр SDR не переходить від смуги пропускання до смуги загородження миттєво — йому потрібний невеликий перехідний проміжок. Тому діє емпіричне правило: прийнято вважати корисною смугою лише центральні 4/5 частоти дискретизації; це правило відоме як «правило 4/5 Шона» (Sean’s 4/5 rule). -Замість того, щоб вірити мені на слово, інтерактивна схема GNU Radio у вашому браузері дозволяє вам самостійно викликати аліасинг, `інтерактивною схемою GNU Radio `_ нижче, щоб самостійно створити аліасинг; схема працює повністю у вашому браузері. Косинусна хвиля дискретизується з частотою 100 кГц, тому Найквіст має частоту 50 кГц. Запустіть схему, а потім повільно перетягніть повзунок частоти тону вправо. Дло частоти тону 50 кГц пік спекта зміщується праворуч, як і очікувалося, але при перевіщені 50 кГц він розвертається та частота піку зменшується згинається, а графік в часової області показує, що семпли повністю вписуються в синусоїду з меншою частотою. Ось той самий «хибний сигнал», що на рисунках вище був проведений червоною пунктирною лінією, — тепер ви бачите його як результат реального вимірювання. +Замість того, щоб вірити мені на слово, ви можете власноруч змоделювати аліасинг за допомогою інтерактивної схеми обробки сигналів GNU Radio, яка працює безпосередньо у вашому браузері і дозволяє вам самостійно викликати аліасинг, `інтерактивною схемою GNU Radio `_ нижче. Косинусна хвиля дискретизується з частотою 100 кГц, тому частота Найквіст дорівнює 50 кГц. Запустіть симуляцію та повільно переміщуйте повзунок частоти тону вгору. Нижче 50 кГц пік зміщується праворуч, як і слід було очікувати, але вище 50 кГц він розвертається і «переміщується» назад у бік нижчих частот, а графік у часовій області показує, що відліки утворюють синусоїду з меншою частотою. Цей «складений» тон і є тим самим «неправильним сигналом», про який йшлося вище, що тепер фіксується як реальний виміряний сигнал. .. raw:: html