Wiki Прилади
Демо-сигнал і записи IQ
Без приймача програма працює на двох джерелах: на вбудованому демонстраційному сигналі з наперед відомими рівнями й на записах IQ — SigMF, WAV або сирих файлах cs8, cu8, cs16 і cf32. Обидва вибираються у стартовому вікні. На цій сторінці — з чого складається демонстраційний сигнал і що з нього справді видно на екрані, як відкрити запис, звідки програма бере його темп і частоту та як поводиться відтворення.
Демонстраційний сигнал
У стартовому вікні Виберіть приймач натисніть Демонстраційний сигнал. Програма сама синтезує потік IQ: дванадцять сигналів на сталих частотах над шумом. Це не імітація ефіру, а сигнал, про який відомо все, — на ньому зручно знайомитися з вікном і дивитися, як різні детектори, траси й вікна показують одне й те саме.
З чого він складається
Усі сигнали демонстрації стоять на абсолютних частотах 0.9.38, як передавачі в ефірі: кожен видно лише тоді, коли смуга приймання його накриває, і рівно там, де він є. Склад програма перелічує сама — дрібним описом унизу групи Джерело на вкладці Пристрій.
| Сигнал | Частота, МГц | Рівень | Додатково |
|---|---|---|---|
| Шум | уся смуга | −90 dBFS | Гаусів; −90 dBFS — це потужність на всю смугу, тож полиця на спектрі лежить нижче й залежить від RBW. У 16-бітовому потоці демонстрації квантування додає до шуму 0.6 дБ: він читається як −89.4 dBFS. |
| Тон | 2254.600 | −20 dBFS | Немодульована несуча. |
| Тон | 2255.300 | −45 dBFS | Немодульована несуча. |
| Несуча, що ходить | 2255.000 ± 0.150 | −35 dBFS | Частота пилкою проходить 2254.85–2255.15 МГц за 0.5 с і починає знову. |
| Імпульси | 2255.700 | −25 dBFS | Частота повторення 71.2 Гц, заповнення 42 %: імпульс ≈5.9 мс, період ≈14 мс. |
| Несуча | 2212.500 | −40 dBFS | Немодульована. |
| Дві несучі | 2231.000 і 2231.025 | −50 dBFS кожна | За 25 кГц одна від одної. |
| Шумоподібна смуга 200 кГц | 2241.300 | +15 дБ над шумом | Над видимою полицею — +14.5 дБ. |
| Шумоподібна смуга 8 МГц | 2272.000 | +10 дБ над шумом | Над видимою полицею — +9.8 дБ. |
| Пакетна смуга 1 МГц | 2290.000 | +20 дБ над шумом | Над видимою полицею — +19.4 дБ; пакети 20 % часу, період 50 мс. |
| Несуча | 433.920 | −45 dBFS | Немодульована. |
| Пакетна смуга 20 МГц | 5220.000 | +8 дБ над шумом | Над видимою полицею — +8.1 дБ; пакети 30 % часу, період 100 мс. |
Рівень смуги задано не в dBFS, а тим, на скільки дБ її густина вища за шум джерела: так вона однакова за будь-якого темпу. Рівень пакетного сигналу — у пакеті; середній нижчий на частку часу.
Опис у панелі «Джерело» 0.9.39
Опис називає замовлені рівні, а де квантування зсуває те, що видно, — ще й видиме число: «шум −90 dBFS, а в 16-бітовому потоці — −89.4: квантування додає 0.6 дБ», а для смуг — «+14.5 дБ над полицею (замовлено +15 над шумом)». Згорнутий опис займає три рядки; під ним посилання показати весь опис розгортає його повністю, і тоді названо всі дванадцять сигналів (згорнути опис — назад). У 0.9.38 опис не вміщався у свої три рядки й називав лише 5–7 сигналів із 12, а полицю казав −90 dBFS.
Що з цього видно на екрані
Демонстраційний потік іде з темпом 2 МС/с; на машині автора синтез на ньому встигає за реальним часом без втрат. Типовий центр — 2255 МГц, отже на екрані смуга 2254–2256 МГц. У ній — чотири сигнали:
| Сигнал | Де він на екрані |
|---|---|
| Тон −20 dBFS | На 400 кГц нижче центру. |
| Тон −45 dBFS | На 300 кГц вище центру. |
| Несуча −35 dBFS, що ходить | ±150 кГц навколо центру. На водоспаді це похила лінія, що повторюється двічі на секунду. |
| Імпульси −25 dBFS | На 700 кГц вище центру. |
Решта вісім сигналів стоять деінде й з’являються, коли туди настроїтись або пройти свіпом. Шість із них лежать у 2200–2300 МГц: задайте цю ділянку полями діапазону — для демонстрації це вже свіп. Несучу на 433.92 МГц і смугу на 5220 МГц видно, коли настроїтись на них. Сигнал за межами смуги приймання в неї не згортається: синтез докладає лише ті сигнали, які смуга накриває.
До 0.9.38 склад демонстрації задавався зсувом від центру й їхав разом із настройкою: на будь-якій частоті картина була та сама, у свіпі вона повторювалась від сегмента до сегмента, а три складові згортались усередину смуги 2 МС/с — головний тон лягав рівно на нуль частоти, під мітку DC.
Що на ньому перевіряти
- Рівень несучої. Тон на 2254.6 МГц задано рівнем −20 dBFS, тон на 2255.3 МГц — −45 dBFS: звірте з ними показане число. Як вікно впливає на вершину тону — сторінка RBW, вікна й VBW.
- Різницю між детекторами. Імпульси присутні 42 % часу. Піковий детектор і max hold показують рівень самого імпульсу, усереднювальні — помітно нижчий. Про детектори — сторінка Детектори.
- Траси. Несуча, що ходить, у кожній точці своєї доріжки буває лише частину часу: max hold малює всю доріжку, а усереднення — помітно нижче. Див. Траси.
- Роздільність. Дві несучі на 2231.000 і 2231.025 МГц стоять за 25 кГц одна від одної: подивіться, за якої RBW їх видно окремо.
- RBW і вікна. Полиця шуму рухається зі зміною RBW, а несуча — ні; див. RBW, вікна й VBW.
- Свіп. На 2200–2300 МГц кожен сигнал стоїть там, де він є, а не повторюється в кожному сегменті. Див. Свіп.
Демо можна «перестроювати» полями діапазону в шапці бічної панелі й оглядовою лінійкою в межах 0–6 ГГц; у нижнє поле можна ввести 0 0.9.41. Підсилень, темпів на вибір і передавача в демо немає. Якщо комп’ютер не встигає синтезувати потік, пропущені відліки рахує Кільце (дропи) — так само, як у справжнього приймача.
Як відкрити запис
Запис відкривається у стартовому вікні кнопкою Продовжити без пристрою.
- Запустіть програму й натисніть Продовжити без пристрою.
- У вікні Виберіть запис IQ знайдіть файл. Вікно відкривається в теці записів
C:\sdrsa-rec, якщо вона вже є, інакше — у вашій домашній теці. - Фільтр показує
*.sigmf-data,*.wav,*.cs16,*.cs8,*.cu8,*.cf32,*.c8,*.c16; решту розширень видно в режимі Усі файли (*).
Якщо скасувати вибір, програма не закривається, а повертає до стартового вікна. Якщо файл не відкрився, вона показує причину й теж повертає туди.
Якщо в теці даних програми є підтека REC із записами, кнопка нічого не питає й бере з неї перший за назвою файл. У встановленому пакеті цієї підтеки типово немає; про теку даних — сторінка Налаштування, файли й мова.
Пункт меню Файл → Відкрити запис… (Ctrl+O) у версії 0.9.49 лише показує вікно вибору й відповідає Не реалізовано: заміни джерела на ходу ще немає. Щоб відкрити інший запис або перейти на прилад, перезапустіть програму.
Які файли читаються
| Вид | Як розпізнається | Формати відліків | Темп | Центральна частота |
|---|---|---|---|---|
| SigMF | Поруч із файлом даних лежить файл із тією самою назвою й розширенням .sigmf-meta. Так пише записи сама програма. | cu8, ci8, ci16_le, cf32_le | core:sample_rate | core:frequency у captures |
| WAV | Розширення .wav, рівно два канали — I та Q. | 8 біт без знака, 16 біт зі знаком, 32 біти з рухомою комою | Із заголовка | Із чанка auxi, якщо він є; інакше з назви файлу |
| Сирий файл | За розширенням: .cs8 або .c8, .cu8, .cs16 або .c16, .cf32. | cs8, cu8, cs16, cf32 | З назви файлу | З назви файлу |
Якщо в сайдкарі SigMF є поле sdrsa:full_scale, програма читає відліки з цією повною шкалою, і рівні такі самі, як під час запису: ci16_le з повною шкалою 2048 (12-бітні відліки) 0.9.33 і cf32_le з повною шкалою 0.25 0.9.43. Так пише відліки деяких своїх приймачів SDR SA PRO PRO; без цього поля такий запис читався б на 24 і 12 дБ нижче.
Відліки в усіх випадках — перемежовані I та Q. WAV понад 4 ГіБ із заголовком RF64 відкривається, коли блок даних у ньому останній, як зазвичай і буває; окремого розбору службового чанка RF64 у програмі немає. Інші глибини — 24- і 32-бітний цілий WAV, 64-бітна рухома кома, 16-бітний SigMF зі старшим байтом уперед — поки не читаються: програма відмовляє й називає формат.
Звідки взято темп і частоту, програма пише в тому самому дрібному рядку внизу групи Джерело: поруч із числом стоїть джерело — заголовок, SigMF чи назва файлу.
Темп і частота з назви файлу
У сирого файлу заголовка немає, тому темп мусить бути в назві. Без нього файл не відкриється — програма скаже, що темпу дискретизації немає ні в заголовку, ні в імені файлу. Частота необов’язкова: без неї центр вважається нульовим і вісь частоти будується довкола 0 Гц.
| Що | Як записати | Приклад назви |
|---|---|---|
| Темп | Число й sps, можна з префіксом k, M чи G; перед числом — підкреслення, пробіл або дефіс. | capture_8000000sps.cs16 |
| Темп | Число й одразу k або M. | fm_100MHz_2.4M.cu8 |
| Частота | Число й Hz, можна з префіксом k, M чи G. | test_433.92MHz_2048ksps.cu8 |
| Частота й темп | Як пише SDR Console: F, пробіл, частота. | band F 2255000000Hz_8000000sps.cs8 |
Для WAV із назви береться лише частота — темп там є в заголовку. Розпізнаються й назви SDR# на зразок SDRSharp_20250604_220354Z_2229334898Hz_IQ.wav та назви GQRX виду gqrx_дата_час_частота_темп_fc.
Формат відліків сирого файлу програма визначає лише за розширенням, і вибрати його у вікні не можна. Розширення .raw, .bin і .dat вона читає як cu8, а .iq — як cs16. Якщо у файлі насправді інший формат, спершу змініть розширення на правильне.
Відтворення
- У реальному часі. Запис грається з власним темпом вибірки, за годинником: секунда запису триває секунду. Програма, що відстала від годинника, дістає більше відліків за раз і наздоганяє 0.9.30.
- По колу. Дійшовши до кінця, відтворення починається спочатку. Стик кінця з початком — розрив у часі, і програма обробляє його як перестройку: оцінка DC і стан зважених детекторів починаються заново.
- Пауза. Кнопка Пауза в групі Джерело, клавіша Пробіл або кнопки ▶ і ⏹ у шапці бічної панелі. Після паузи запис продовжується з того самого місця.
- Позиція. Рядок Позиція в групі Джерело показує, де у файлі зараз відтворення, у відсотках.
- Перемотування немає. Перейти на довільне місце запису, змінити швидкість чи вимкнути повтор не можна.
- Якщо комп’ютер не встигає. Відставання до пів секунди програма наздоганяє без втрат. Що понад це, вона не тягне за собою, а пропускає й чесно рахує в рядку Кільце (дропи) 0.9.30; місце пропуску позначено, і спектр через нього не зліплюється.
- Записи з перестройками 0.9.25. Якщо в SigMF кілька captures на різних частотах — так пише сама програма, коли частоту міняли під час запису, — кожна ділянка відтворюється зі своєю частотою: центр на екрані перемикається на межі capture.
Поки запис відкрито, Windows тримає файл зайнятим: перейменувати чи видалити його можна після закриття програми.
Що інакше без приймача
- Запис не перестроюється: у шапці панелі замість полів діапазону стоїть Джерело не перестроюється, і свіпу немає. Смуга на екрані — це смуга, з якою файл записали.
- У групі Джерело немає розділу Прилад: ні темпу на вибір, ні підсилень, ні кнопки Перепідключити. У рядку Тип стоїть
fileдля запису іsimдля демо. - Вкладка Передавач каже, що це джерело лише приймає.
- Рівні — у dBFS відносно повної шкали формату самого файлу. Яким було підсилення під час запису, програма не знає.
- Аналізатор спектра, траси, приймач і zero span працюють із записом і з демо так само, як із живим IQ-приймачем, — у межах смуги джерела.
Обмеження
- Джерело вибирається лише при запуску. Відкрити запис… у меню не реалізовано.
- Відтворення завжди по колу й без перемотування.
- Сирий файл без темпу в назві відкрити не можна; перейменуйте його.
- Читаються лише cu8, cs8, cs16 і cf32.
- RF64 підтримано лише в типовому вигляді, з блоком даних у кінці файлу.
- Демонстраційний сигнал має один темп — 2 МС/с; більшість його сигналів лежить поза типовою смугою, і щоб їх побачити, треба настроїтись туди чи пройти свіпом.
- Демо — синтетика з відомими параметрами, а не модель ефіру: завад, завмирань і сусідніх станцій у ньому немає.
Спільний перелік обмежень програми — на сторінці Обмеження й плани.