Розділи Wiki

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 256N 1024N 4096N 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Що це
RECT1.00003.92 дБ20489.77 кГцПрямокутне: найвужча смуга, але сильний сусід розтікається бічними пелюстками по всій шкалі.
HANN1.50001.42 дБ40967.32 кГцТипове вікно програми.
HAMMING1.36281.75 дБ40966.65 кГцТрохи вужче за Hann.
BLACKMAN_HARRIS42.00440.83 дБ40969.79 кГцЧотиричленне Blackman-Harris: проміжне між Hann і flat-top.
FLATTOP3.77020.01 дБ81929.20 кГцFlat-top: похибка амплітуди до 0.01 дБ, смуга приблизно в 2.5 раза ширша за Hann.
KAISER81.66571.18 дБ40968.13 кГцKaiser із β = 8.
HFT248D5.65120.0009 дБ163846.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, вікно й детектори програми до нього не застосовуються.

Wiki описує версію 0.9.49. Версію вашої програми видно в меню «Довідка» → «Про програму». Знайшли неточність? Напишіть нам.