Қабулкунаки SDR DVB-T2 дар C++

Software Defined Radio як усули иваз кардани кори металлӣ (ки воқеан барои саломатии шумо хуб аст) бо дарди сари барномасозӣ мебошад. SDRҳо ояндаи бузургро пешгӯӣ мекунанд ва бартарии асосии он бартараф кардани маҳдудиятҳо дар татбиқи протоколҳои радио мебошад. Намунаи усули модуляцияи OFDM (Multiplexing Orthogonal Frekans-division) мебошад, ки танҳо бо усули SDR имконпазир аст. Аммо SDR инчунин як имконияти дигари сирф муҳандисӣ дорад - қобилияти назорат ва визуализатсияи сигнал дар ҳама гуна нуқтаи худсарона бо кӯшиши камтарин.

Яке аз стандартҳои ҷолиби алоқа ин телевизиони заминии DVB-T2 мебошад.
Барои чӣ? Албатта, шумо метавонед танҳо телевизорро бедор кунед, аммо дар он ҷо ҳеҷ чизи тамошо кардан вуҷуд надорад ва ин дигар фикри ман нест, балки як далели тиббӣ аст.

Ҷиддӣ, DVB-T2 бо имкониятҳои хеле васеъ тарҳрезӣ шудааст, аз ҷумла:

  • ариза дарунӣ
  • модуляция аз QPSK то 256QAM
  • паҳнои маҷрои аз 1,7 МГс то 8 МГс

Ман таҷрибаи қабули телевизиони рақамиро бо истифода аз принсипи SDR дорам. Стандарти DVB-T дар лоиҳаи машҳури GNURadio ҷойгир аст. Барои стандарти DVB-T2 блоки gr-dvbs2rx мавҷуд аст (ҳама барои як GNURadio), аммо он ҳамоҳангсозии пешакии сигналро талаб мекунад ва он рӯҳбаландкунанда аст (шукронаи махсус ба Рон Экономос).

Он чизе ки мо дорем.

Стандарти ETSI EN 302 755 мавҷуд аст, ки интиқолро тафсилот медиҳад, аммо қабул нест.

Сигнал бо басомади интихобкунии 9,14285714285714285714 МГс, ки аз ҷониби COFDM бо 32768 интиқолдиҳанда модул карда мешавад, дар банди 8 МГс аст.

Тавсия дода мешавад, ки чунин сигналҳоро бо басомади дукаратаи интихобкунӣ (то аз даст надиҳед) ва дар басомади мобайнӣ фарохмаҷрои бештар (қабули супергетеродин), барои бартараф кардани ҷуброни ҷараёни мустақим (DC) ва "резиши" осциллятори маҳаллӣ (LO) ба вуруди қабулкунанда. Дастгоҳҳое, ки ин шароитҳоро қонеъ мекунанд, барои кунҷковӣ хеле гарон ҳастанд.

SdrPlay бо 10Msps 10bit ё AirSpy бо хусусиятҳои шабеҳ хеле арзонтар аст. Дар ин ҷо сухан дар бораи дучанд шудани басомади интихоб вуҷуд надорад ва қабулро танҳо бо табдили мустақим анҷом додан мумкин аст (Зеро IF). Аз ин рӯ (бо сабабҳои молиявӣ) мо ба тарафи тарафдорони SDR "соф" бо ҳадди ақали табдили сахтафзор мегузарем.

Ду масъаларо ҳал кардан лозим буд:

  1. Синхронизатсия. Инҳирофшавии дақиқи марҳилаи RF ва инҳирофшавии басомади интихобро пайдо кунед.
  2. Стандарти DVB-T2-ро ба ақиб аз нав нависед.

Вазифаи дуюм коди бештарро талаб мекунад, аммо онро бо суботкорона ҳал кардан мумкин аст ва бо истифода аз сигналҳои санҷишӣ ба осонӣ тафтиш карда мешавад.

Сигналҳои санҷишӣ дар сервери Би-би-сӣ ftp://ftp.kw.bbc.co.uk/t2refs/ бо дастурҳои муфассал дастрасанд.

Ҳалли масъалаи аввал аз хусусиятҳои дастгоҳи SDR ва қобилияти идоракунии он вобаста аст. Истифодаи функсияҳои тавсияшудаи назорати басомад, тавре ки мегӯянд, муваффақ набуд, аммо дар хондани онҳо таҷрибаи зиёд дод. ҳуҷҷатгузорӣ, барномасозӣ, тамошои сериалҳои телевизионӣ, ҳалли саволҳои фалсафӣ..., хулоса, аз лоиҳа даст кашидан мумкин набуд.

Эътимод ба «СДР-и соф» факат мустахкам шуд.

Мо сигналро ҳамон тавре, ки ҳаст, қабул мекунем, онро қариб ба аналогӣ интерполясия мекунем ва як дискретро мебарорем, аммо ба сигнали воқеӣ монанд аст.

Диаграммаи блоки синхронизатсия:

Қабулкунаки SDR DVB-T2 дар C++

Дар ин чо хама чиз мувофики китоби дарсй аст. Оянда каме мураккабтар аст. Тафовутҳоро ҳисоб кардан лозим аст. Бисёр адабиёт ва мақолаҳои тадқиқотӣ мавҷуданд, ки афзалиятҳо ва нуқсонҳои усулҳои гуногунро муқоиса мекунанд. Аз классикон - ин "Майкл Спет, Стефан Фехтел, Гуннар Фок, Ҳенрих Мейр, Тарҳрезии беҳтарини қабулкунанда барои интиқоли фарохмаҷро дар асоси OFDM - Қисми I ва II." Аммо ман ягон муҳандисеро надидам, ки ҳисоб карда метавонад ва мехоҳад ҳисоб кунад, аз ин рӯ равиши муҳандисӣ истифода шуд. Бо истифода аз ҳамон усули синхронизатсия, детунинг ба сигнали санҷишӣ ҷорӣ карда шуд. Бо муқоисаи ченакҳои гуногун бо инҳирофҳои маълум (ӯ худаш онҳоро муаррифӣ кардааст), беҳтаринҳо барои иҷроиш ва осонии татбиқ интихоб карда шуданд. Инҳирофшавии басомади қабул бо роҳи муқоисаи фосилаи муҳофизатӣ ва қисми такрории он ҳисоб карда мешавад. Марҳилаи басомади қабул ва басомади интихоб аз рӯи инҳирофи марҳилаи сигналҳои пилотӣ ҳисоб карда мешавад ва он инчунин дар эквалайзери оддии хаттии сигнали OFDM истифода мешавад.

Хусусияти эквалайзер:

Қабулкунаки SDR DVB-T2 дар C++

Ва ҳамаи ин хуб кор мекунад, агар шумо медонед, ки чаҳорчӯбаи DVB-T2 кай оғоз мешавад. Барои ин дар сигнал рамзи муқаддима P1 интиқол дода мешавад. Усули ошкор ва рамзкушоии рамзи P1 дар Мушаххасоти техникии ETSI TS 102 831 тавсиф шудааст (инчунин барои қабул бисёр тавсияҳои муфид мавҷуданд).

Автокоррелятсияи сигнали P1 (нуқтаи баландтарин дар оғози чаҳорчӯба):

Қабулкунаки SDR DVB-T2 дар C++

Расми аввал (то тасвири ҳаракат танҳо шаш моҳ мондааст...):

Қабулкунаки SDR DVB-T2 дар C++

Ва дар ин ҷо мо мефаҳмем, ки номутавозунии IQ, ҷуброни DC ва ихроҷи LO чист. Чун қоида, ҷуброни ин таҳрифҳо, ки ба табдили мустақим хосанд, дар драйвери дастгоҳи SDR амалӣ карда мешавад. Аз ин рӯ, барои фаҳмидани он вақти зиёд лозим шуд: нокаут кардани ситораҳо аз бурҷи дӯстона QAM64 кори функсияҳои ҷуброн аст. Ман маҷбур будам, ки ҳама чизро хомӯш кунам ва велосипедамро нависам.

Ва он гоҳ тасвир ҳаракат кард:

Қабулкунаки SDR DVB-T2 дар C++

Модуляцияи QAM64 бо гардиши мушаххаси бурҷ дар стандарти DVB-T2:

Қабулкунаки SDR DVB-T2 дар C++

Хулоса, ин нати-чаи аз сари нав аз машина гу-заронидани гушти майдашуда аст. Стандарт чор намуди омехтаро пешбинӣ мекунад:

  • каме омехта
  • ҷудокунии ҳуҷайраҳо (омехтани ҳуҷайраҳо дар блоки рамзгузорӣ)
  • ҷудокунии вақт (он инчунин дар гурӯҳи блокҳои рамзгузорӣ аст)
  • фосилаи басомад (омезиши басомад дар рамзи OFDM)

Дар натиҷа, мо дар вуруд сигнали зерин дорем:

Қабулкунаки SDR DVB-T2 дар C++

Ҳамаи ин мубориза барои иммунитети садои сигнали рамзӣ мебошад.

Натиҷа

Акнун мо метавонем на танҳо худи сигнал ва шакли он, балки инчунин маълумоти хидматрасониро бинем.
Дар ҳаво ду мултиплекс мавҷуд аст. Ҳар яки онҳо ду канали физикӣ (PLP) доранд.

Дар мултиплекси аввал як чизи аҷибе мушоҳида карда шуд - PLP-и аввал "якчанд" номгузорӣ шудааст, ки ин мантиқист, зеро дар мултиплекс зиёда аз як вуҷуд дорад ва PLP дуюм "якка" номгузорӣ шудааст ва ин савол аст.
Боз ҳам ҷолибтар аст, ки аҷиби дуюм дар мултиплекси дуюм аст - ҳама барномаҳо дар PLP якум ҳастанд, аммо дар PLP дуюм сигнали табиати номаълум бо суръати паст мавҷуд аст. Ҳадди ақал плеери VLC, ки тақрибан панҷоҳ формати видео ва ҳамон миқдори аудиоро дарк мекунад, онро эътироф намекунад.

Худи лоиҳаро дар ин ҷо пайдо кардан мумкин аст.

Лоиҳа бо ҳадафи муайян кардани имкони рамзкушоии DVB-T2 бо истифода аз SdrPlay (ва ҳоло AirSpy.) сохта шудааст, бинобар ин ин ҳатто версияи алфа нест.

PS Ҳангоми навиштани мақола ман тавонистам PlutoSDR-ро ба лоиҳа ворид кунам.

Касе фавран мегӯяд, ки барои сигнали IQ дар баромади USB6 танҳо 2.0Msps мавҷуд аст, аммо ба шумо ҳадди аққал 9,2Msps лозим аст, аммо ин мавзӯи алоҳида аст.

Манбаъ: will.com

Илова Эзоҳ