Wiki Аналізатор спектра
RBW, вікна й VBW
Смуга розділення (RBW) у цій програмі задається в герцах, а розмір FFT (N) із неї виводиться — не навпаки. На сторінці: як задати RBW і чому фактична смуга відрізняється від заданої, що робить N, чим різняться сім вікон, що згладжує VBW і як на картинку впливають «Кадрів спектра» та «Спектр із блоків».
Де це в програмі
Вкладка Аналізатор спектра, група Смуга розділення. У ній зверху вниз стоять RBW, фактична, N (FFT), Вікно, ENBW, DC-фільтр, VBW, стала часу, рядок Паспорт (про нього — Паспорт власних завад), Усереднення, Детектор, Детектор ↔px, перемикачі міток виявлення, Рядків/с і Згортка. У свіпі між ними з’являються органи свіпу — про них сторінка Свіп. Перед кожним підписом стоїть кружок «?»: наведіть на нього курсор, і програма сама пояснить, що робить цей пункт.
Те, що ви тут задали, завжди видно в панелі довіри: RBW, VBW, N, вікно з ENBW і детектор зі згорткою.
З tinySA 0.9.25 цієї групи немає: прилад свіпує сам і має власну RBW. Замість неї стоїть група Прилад tinySA — див. tinySA і tinySA Ultra.
RBW: задана й фактична
RBW — ширина «віконця», крізь яке дивиться кожна точка спектра. Вужча RBW розділяє ближчі сигнали й опускає полицю шуму: удвічі вужча дає −3 дБ. Ціна — більше N, тобто довший набір відліків: короткий сплеск розмажеться по кадру.
- RBW
- Список у сітці 1–2–5 від 1 Гц до 50 МГц. Поки ви нічого не вибрали, RBW виведена з N, і поле показує її з позначкою · з N. Після запуску це N 4096 і вікно HANN: при 20 МС/с виходить 7.32 кГц, при 2 МС/с — 732 Гц. Вибрали значення зі списку — програма бере найменше N (степінь двійки), за якого смуга не ширша за задану.
- фактична
- RBW, що вийшла насправді:
RBW = ENBW × темп вибірки / N. N — степінь двійки, тому фактична смуга майже завжди вужча за задану. Число стає жовтим, коли вона вужча більш ніж у 1.67 раза (менша за 0.6 заданої), і червоним, коли вона ширша за задану: N уперся в стелю 16384. Тоді під полем з’являється рядок Задану RBW недосяжно: N уперся в стелю … (ширина текстури трас). Фактична смуга ширша за задану.
Найвужча смуга залежить від темпу вибірки. Для вікна HANN:
| Темп вибірки | N 256 | N 1024 | N 4096 | N 16384 |
|---|---|---|---|---|
| 20 МС/с (HackRF One) | 117.2 кГц | 29.3 кГц | 7.32 кГц | 1.83 кГц |
| 2 МС/с (HackRF One) | 11.7 кГц | 2.93 кГц | 732 Гц | 183 Гц |
| 2.56 МС/с (RTL-SDR 0.9.25) | 15.0 кГц | 3.75 кГц | 938 Гц | 234 Гц |
| 1.024 МС/с (RTL-SDR) | 6.0 кГц | 1.5 кГц | 375 Гц | 93.8 Гц |
Що тримається, коли змінюється темп або вікно
- RBW задана зі списку. Змінився темп вибірки (наприклад, колесом над спектром) — смуга лишається, N доганяє.
- RBW виведена з N. Змінився темп — N лишається, а смуга йде за ним. Це той самий зв’язок RBW зі смугою огляду, що в аналізаторах зветься «RBW auto».
- Змінилося вікно. Смуга тримається завжди, N перераховується: те саме N з різними вікнами дає смуги, що різняться в кілька разів.
У свіпі темп вибірки вибирає сама програма. Поки RBW виведена з N, свіп іде на найширшому темпі приладу, і дрібнішу RBW там дає більше N. Задану RBW на HackRF One 0.9.36 свіп тримає інакше: бере найширший темп, на якому кадр FFT для неї ще вміщається в блок, яким прилад віддає свій свіп. Дрібнішій RBW може знадобитися нижчий темп, і тоді прохід довший: удвічі вужча смуга — прохід приблизно вчетверо довший. Докладно — Темп свіпу й задана RBW.
Коли колесо звузило смугу приймання до найвужчого темпу приладу, панель підказує: далі працює Ctrl+колесо, а це вже масштаб картинки — бінів від нього не побільшає.
N — розмір FFT
- N (FFT)
- 256, 512, 1024, 2048, 4096, 8192 або 16384; типово 4096. Якщо задати N руками, RBW знову стає виведеною з нього. Руками N задають, коли потрібна саме довжина кадру, а не смуга; в інших випадках зручніше задати RBW і дати N підтягнутися самому.
Один кадр FFT триває N / темп вибірки: 205 мкс при N 4096 і 20 МС/с, 8.2 мс при N 16384 і 2 МС/с. Подія, коротша за кадр, розмазується по ньому. Кадри беруться впритул один до одного, без перекриття; регулятора перекриття немає. Відліки на межах блоків не губляться — недобраний хвіст додається до наступного блоку.
Стеля 16384 — це ширина текстури трас. Водоспад зберігає в історії до 4096 точок на рядок: за ширшого N рядок зводиться піком, і панель довіри пише Історія пік ×2 або пік ×4. Траса при цьому повна (див. історію водоспаду). Зміна N або вікна скидає накопичене в трасах.
Сім вікон
Вікно — це розмін точності рівня на розділення. Що «плоскіша» вершина вікна, то точніше читається амплітуда тону, який потрапив між двома бінами, але то ширша смуга — і то більше N потрібно для тієї самої RBW. У таблиці — числа, пораховані з коефіцієнтів, які програма справді застосовує; N і фактична смуга наведені для прикладу: RBW 10 кГц при 20 МС/с.
| У списку | ENBW, бін | Заниження тону між бінами, до | N | Фактична RBW | Що це |
|---|---|---|---|---|---|
RECT | 1.0000 | 3.92 дБ | 2048 | 9.77 кГц | Прямокутне: найвужча смуга, але сильний сусід розтікається бічними пелюстками по всій шкалі. |
HANN | 1.5000 | 1.42 дБ | 4096 | 7.32 кГц | Типове вікно програми. |
HAMMING | 1.3628 | 1.75 дБ | 4096 | 6.65 кГц | Трохи вужче за Hann. |
BLACKMAN_HARRIS4 | 2.0044 | 0.83 дБ | 4096 | 9.79 кГц | Чотиричленне Blackman-Harris: проміжне між Hann і flat-top. |
FLATTOP | 3.7702 | 0.01 дБ | 8192 | 9.20 кГц | Flat-top: похибка амплітуди до 0.01 дБ, смуга приблизно в 2.5 раза ширша за Hann. |
KAISER8 | 1.6657 | 1.18 дБ | 4096 | 8.13 кГц | Kaiser із β = 8. |
HFT248D | 5.6512 | 0.0009 дБ | 16384 | 6.90 кГц | Одинадцятичленне flat-top-вікно: амплітуда правильна, хоч куди потрапив тон між бінами; смуга в 3.8 раза ширша за Hann. |
Спектр нормується на суму коефіцієнтів вікна, тому повношкальний тон на центрі біна читається як 0 dBFS за будь-якого вікна.
ENBW
Поле ENBW показує еквівалентну шумову смугу вибраного вікна в бінах: на стільки бінів шуму «важить» один відлік спектра. Саме нею RBW відрізняється від кроку сітки (темп / N). Значення рахується з фактичних коефіцієнтів вікна, а не береться з довідника, і стоїть також у панелі довіри поруч із назвою вікна.
Яке вікно взяти
- Для огляду ефіру лишайте
HANN. - Щоб виміряти рівень вузької несучої, беріть
FLATTOPабоHFT248D: без них рівень, зчитаний із траси, занижений на величину з третього стовпця — залежно від того, куди частота потрапила між бінами. У безкоштовній версії маркерів, що виправляли б це самі, немає. У SDR SA PRO PRO маркер траси на вершині тону в настроєному режимі показує ще й рівень тону, уточнений між бінами, — коли вершина стоїть над шумом довкола щонайменше на 15 дБ, не з вікномRECTі не на опорній трасі (див. Маркери траси). RECTдає найвужчу смугу за того самого N, але годиться, лише доки поруч немає сильного сигналу: той розтікається бічними пелюстками по всій шкалі.
VBW — відеофільтр
- VBW
- вимк (типово), 0.5, 1, 2, 5, 10 або 30 Гц. Відеофільтр згладжує трасу в часі, не звужуючи RBW: полиця заспокоюється, але сплеск, коротший за сталу часу, покажеться заниженим.
- стала часу
- τ = 1/(2π·VBW), у мілісекундах: 318 мс для 0.5 Гц, 159 — для 1 Гц, 80 — для 2 Гц, 32 — для 5 Гц, 16 — для 10 Гц, 5 — для 30 Гц. Це й є відповідь на питання, чи встигне ваш сплеск.
VBW одна на прилад і діє на всі чотири траси. Це фільтр після детектора й перед накопиченням траси, тобто він змінює вимір, а не прикрашає картинку; тому його значення завжди стоїть у панелі довіри. На водоспад VBW не діє. У свіпі фільтр працює по проходах: жива траса з увімкненим VBW оновлюється раз на прохід.
Усереднення: Power чи Log (video)
- Усереднення
- Power (типово) — у лінійній потужності, незміщено. Log (video) — у децибелах, як роблять програми без метрології: занижує рівень шуму — до 2.51 дБ, залежно від того, скільки спектрів уже зведено в один кадр. Для несучої різниці немає.
Перемикач один на всі траси й керує одразу двома стадіями: відеофільтром і накопиченням у режимі Average. Його зміна скидає траси. Решта обробки завжди йде в лінійній потужності — у децибели рівні переводяться лише на виході.
Біни на піксель
Коли бінів більше, ніж пікселів, кожен піксель мусить звести кілька бінів в одне число. Скільки саме — показує бейдж бін/px у панелі довіри (він з’являється, коли бінів на піксель більше одного) разом із назвою детектора, який це робить.
- Детектор ↔px
peak(типово),neg,sampleабоavg.peakне губить вузький спур між пікселями;avgусереднює в потужності. Діє і на трасу, і на водоспад. Програми, що малюють кількасот точок на весь прольот і усереднюють, показують вузьку лінію у 40 дБ над полицею горбком у 10 дБ; щоб порівняти картинки чесно, поставтеavg.
Ctrl+колесо наближає картинку: бінів на піксель меншає, а коли їх стає менше одного, новий вимір від цього не з’являється. Про детектори за часом — сторінка Детектори.
DC-фільтр
- DC-фільтр
- авто (типово), увімк або вимк; у свіпі перемикача немає. Знімає з потоку IQ постійну складову — пік рівно по центру смуги, тобто витік гетеродина й зсув АЦП приладу. авто означає «увімкнено в настроєному режимі». Шуму навколо центру фільтр не прибирає, а справжній сигнал рівно на частоті настройки зніме разом зі зсувом — тому мітка DC на графіку лишається: поки фільтр діє, вона тьмяніша й підписана DC−.
- DC знято
- Рівень постійної складової в dBFS, який фільтр зараз віднімає. Поле видно, поки фільтр діє.
Кадрів спектра і Спектр із блоків
Ці два перемикачі стоять на вкладці Пристрій, у групі Хост. Вони для машини, яка не встигає, і по-різному стосуються виміру.
- Кадрів спектра
- 60 (типово), 30 або 15 — скільки разів на секунду спектр і водоспад перемальовуються через нові дані. На вимір не впливає: рядки водоспаду не губляться, вони лягають у той самий кадр пачкою, а дії мишею малюються одразу за будь-якої стелі. Виміряно при 20 МС/с і стелі 30: потік інтерфейсу 19 → 15 % ядра, потік відеодрайвера 9 → 5 %.
- Спектр із блоків
- авто (типово), усіх, кожного 2-го, кожного 4-го або кожного 8-го. Спектр — найдорожче в обробці, і його можна рахувати не з кожного блоку відліків; запис, звук і zero span при цьому отримують усі блоки. авто рахує з усіх, поки обробка вміщується в час ефіру, а коли ні — пропускає стільки, скільки треба. кожного 2-го означає половину часу ефіру, і так далі. усіх нічого не пропускає: не встигла машина — губляться відліки в кільці приладу.
- Покриття спектра
- Частка часу ефіру, з якої спектр справді пораховано, і крок пропуску. Коли вона менша за 100 %, те саме число стоїть у панелі довіри як Покриття.
Пропуск блоків змінює вимір, і програма це називає: подія, коротша за пропуск, може не потрапити на екран. Водоспад тримає заданий темп рядків, але згортка кожного рядка менша. Зважені детектори qp, cav і crms на час пропуску завмирають. У свіпі пропуску немає; немає його й тоді, коли кадр FFT довший за пів блоку приладу, — поле Покриття спектра так і каже.
Числа навантаження й поради для слабкої машини — на сторінці Продуктивність.
Обмеження
- N — лише степені двійки, не більше 16384; коли N виводиться з RBW, він не буває меншим за 64. Перекриття кадрів не регулюється.
- RBW, N, вікно, VBW, тип усереднення й детектори між запусками не зберігаються: програма щоразу стартує з N 4096, HANN, VBW вимкнено, Power. Зберігаються DC-фільтр, Рядків/с, Кадрів спектра і Спектр із блоків.
- Рівень вузького тону між бінами занижується на величину, що залежить від вікна (таблиця вище). Маркерів із поправкою в безкоштовній версії немає; у SDR SA PRO PRO її дає маркер траси на вершині тону — з умовами, названими вище.
- Найвужча RBW обмежена найнижчим темпом приладу й стелею N: 183 Гц на HackRF One і 93.8 Гц на RTL-SDR з вікном HANN.
- У свіпі RBW обмежує ще й сітка свіпу — не більше 5 млн бінів на прохід 0.9.36; на ширшій ділянці фактична RBW грубша за задану, і панель каже чому (див. Темп свіпу й задана RBW).
- Для оцінок ЕМС смуга тут не та, якої вимагає стандарт, — див. детектори CISPR.
- З tinySA смугу задає сам прилад; N, вікно й детектори програми до нього не застосовуються.