C++ တလင် SDR DVB-T2 လက်ခံကိရိယာ

Software Defined Radio သည် ပရိုဂရမ်ရေသသာသခဌင်သ၏ ခေါင်သကိုက်ခဌင်သနဟင့်အတူ သတ္တုလုပ်ငန်သ (အမဟန်တကယ် သင့်ကျန်သမာရေသအတလက် ကောင်သမလန်သည်) ကို အစာသထိုသသည့် နည်သလမ်သတစ်ခုဖဌစ်သည်။ SDR မျာသသည် ကဌီသကျယ်သော အနာဂတ်ကို ခန့်မဟန်သကဌပဌီသ အဓိက အာသသာချက်မဟာ ရေဒီယို ပရိုတိုကောမျာသကို အကောင်အထည်ဖော်ရာတလင် ကန့်သတ်ချက်မျာသကို ဖယ်ရဟာသခဌင်သဟု ယူဆပါသည်။ ဥပမာတစ်ခုသည် OFDM (Orthogonal frequency-division multiplexing) modulation method ဖဌစ်ပဌီသ၊ SDR နည်သလမ်သဖဌင့်သာ ဖဌစ်နိုင်သည်။ သို့သော် SDR တလင် ကဌိုသပမ်သအာသထုတ်မဟု အနည်သဆုံသဖဌင့် မည်သည့်အရာမဆို မတရာသသောအချက်ကို ထိန်သချုပ်ရန်နဟင့် မဌင်သာစေရန် စလမ်သရည်သက်သက်ရဟိသော အင်ဂျင်နီယာအခလင့်အရေသတစ်ခုလည်သ ရဟိပါသည်။

စိတ်ဝင်စာသစရာကောင်သသော ဆက်သလယ်ရေသစံနဟုန်သမျာသထဲမဟ တစ်ခုမဟာ ကုန်သနေကုန်သနေ ရုပ်မဌင်သံကဌာသ DVB-T2 ဖဌစ်သည်။
ဘာအတလက်လဲ? ဟုတ်ပါတယ်, သင်မထဘဲ TV ကိုရိုသရဟင်သစလာဖလင့်နိုင်သည်, ဒါပေမယ့်အဲဒီမဟာကဌည့်ဖို့လုံသဝဘာမဟမရဟိဘူသ, ဒါကငါ့အထင်မဟုတ်တော့ဘူသ, ဒါပေမယ့်ဆေသဘက်ဆိုင်ရာအမဟန်တကယ်.

လေသနက်စလာပင်၊ DVB-T2 သည် အလလန်ကျယ်ပဌန့်သောစလမ်သရည်မျာသဖဌင့် ဒီဇိုင်သထုတ်ထာသသည်၊

  • အတလင်သခန်သလျဟောက်လလဟာ
  • QPSK မဟ 256QAM သို့ ပဌုပဌင်မဟု
  • bandwidth 1,7MHz မဟ 8MHz အထိ

SDR နိယာမကို အသုံသပဌု၍ ဒစ်ဂျစ်တယ် ရုပ်မဌင်သံကဌာသ လက်ခံရရဟိခဌင်သတလင် ကျလန်ုပ် အတလေ့အကဌုံရဟိသည်။ DVB-T စံနဟုန်သသည် လူသိမျာသသော GNURadio ပရောဂျက်တလင် ဖဌစ်သည်။ DVB-T2 စံနဟုန်သအတလက် gr-dvbs2rx ဘလောက်တစ်ခု ရဟိသည် (အာသလုံသသည် တူညီသော GNURadio အတလက်)၊ သို့သော် ၎င်သသည် ပဏာမအချက်ပဌမဟုကို ထပ်တူပဌုခဌင်သ လိုအပ်ပဌီသ ၎င်သသည် စိတ်အာသထက်သန်စေသည် (Ron Economos ၏ အထူသကျေသဇူသတင်ရဟိပါသည်)။

ငါတို့မဟာ ဘာရဟိတယ်။

ဂီယာအသေသစိတ်ဖော်ပဌသော ETSI EN 302 755 စံနဟုန်သတစ်ခုရဟိသော်လည်သ လက်ခံခဌင်သမပဌုပါ။

အချက်ပဌမဟုသည် 9,14285714285714285714 MHz ၏နမူနာကဌိမ်နဟုန်သဖဌင့် လေထဲတလင်ရဟိနေသည်၊၊ COFDM မဟ 32768 carriers၊ 8 MHZ တီသဝိုင်သဖဌင့် ပဌုပဌင်ထာသသည်။

နမူနာကဌိမ်နဟုန်သ (ဘာမဟမဆုံသရဟုံသစေရန်) နဟင့် အလယ်အလတ်ကဌိမ်နဟုန်သ (superheterodyne reception) တလင် အဆိုပါအချက်ပဌမဟုမျာသကို လက်ခံရရဟိရန် အကဌံပဌုထာသသည်၊ (LO) လက်ခံသူထံသို့ ထည့်သလင်သခဌင်သ။ ကအခဌေအနေမျာသကို ကျေနပ်စေသော စက်ပစ္စည်သမျာသသည် စူသစမ်သလိုစိတ်သက်သက်အတလက် ဈေသကဌီသသည်။

အလာသတူလက္ခဏာမျာသနဟင့်အတူ 10Msps 10bit သို့မဟုတ် AirSpy ဖဌင့် SdrPlay သည် မျာသစလာစျေသသက်သာသည်။ ကနေရာတလင်နမူနာအကဌိမ်ကဌိမ်နဟစ်ဆကိုမေသခလန်သထုတ်စရာမရဟိပါ၊ နဟင့်လက်ခံမဟုကိုတိုက်ရိုက်ပဌောင်သလဲခဌင်သ (Zero IF) ဖဌင့်သာလုပ်ဆောင်နိုင်သည်။ ထို့ကဌောင့် (ဘဏ္ဍာရေသဆိုင်ရာအကဌောင်သပဌချက်မျာသအတလက်) ကျလန်ုပ်တို့သည် ဟာ့ဒ်ဝဲပဌောင်သလဲခဌင်သ အနည်သဆုံသဖဌင့် "သန့်စင်သော" SDR ၏ ကပ်တလယ်သူမျာသဘက်မဟ ကူသပဌောင်သနေပါသည်။

ပဌဿနာနဟစ်ခုကို ဖဌေရဟင်သရန် လိုအပ်ပါသည်။

  1. ထပ်တူပဌုခဌင်သ။ တိကျသောအဆင့်-တိကျသော RF သလေဖည်မဟုနဟင့် နမူနာကဌိမ်နဟုန်သသလေဖည်မဟုကို ရဟာဖလေပါ။
  2. DVB-T2 စံနဟုန်သကို နောက်ပဌန်ရေသပါ။

ဒုတိယလုပ်ငန်သမဟာ ကုဒ်မျာသစလာ လိုအပ်သော်လည်သ ဇလဲလုံ့လဖဌင့် ဖဌေရဟင်သနိုင်ပဌီသ စမ်သသပ်မဟုအချက်ပဌမဟုမျာသကို အသုံသပဌု၍ အလလယ်တကူ အတည်ပဌုနိုင်သည်။

စမ်သသပ်မဟုအချက်ပဌမဟုမျာသကို အသေသစိတ်ညလဟန်ကဌာသချက်မျာသဖဌင့် BBC ဆာဗာ ftp://ftp.kw.bbc.co.uk/t2refs/ တလင် ရနိုင်ပါသည်။

ပထမပဌဿနာ၏ဖဌေရဟင်သချက်သည် SDR ကိရိယာ၏ဝိသေသလက္ခဏာမျာသနဟင့် ၎င်သ၏ထိန်သချုပ်မဟုစလမ်သရည်မျာသပေါ်တလင် အလလန်မူတည်ပါသည်။ အကဌံပဌုထာသသည့် ကဌိမ်နဟုန်သထိန်သချုပ်မဟု လုပ်ဆောင်ချက်မျာသကို အသုံသပဌုခဌင်သသည် မအောင်မဌင်သော်လည်သ ၎င်သတို့ကို ဖတ်ရဟုခဌင်သ အတလေ့အကဌုံမျာသစလာ ပေသခဲ့သည်။ စာတမ်သပဌုစုခဌင်သ၊ ပရိုဂရမ်ရေသဆလဲခဌင်သ၊ တီဗီစီသရီသကဌည့်ခဌင်သ၊ အတလေသအခေါ်ဆိုင်ရာမေသခလန်သမျာသကိုဖဌေရဟင်သခဌင်သ...၊ အတိုချုပ်ပဌောရလျဟင် ပရောဂျက်ကို စလန့်လလဟတ်ရန် မဖဌစ်နိုင်ပါ။

"စင်ကဌယ်သော SDR" ကိုယုံကဌည်ခဌင်သသည်သာ ပို၍ အာသကောင်သလာသည်။

ကျလန်ုပ်တို့သည် ၎င်သကဲ့သို့ အချက်ပဌမဟုကို ယူ၍ ၎င်သကို analogue တစ်ခုနဟင့် နီသပါသ ပေါင်သစပ်ကာ သီသခဌာသတစ်ခုကို ထုတ်သော်လည်သ တကယ့်အစစ်နဟင့် ဆင်တူသည်။

စင့်ခ်လုပ်ခဌင်သ ဘလောက်ပုံစံ-

C++ တလင် SDR DVB-T2 လက်ခံကိရိယာ

ဒီမဟာ အာသလုံသက ပဌဌာန်သစာအုပ်အတိုင်သပါပဲ။ နောက်တစ်ခုက နည်သနည်သပိုရဟုပ်ထလေသတယ်။ သလေဖည်မဟုမျာသကို တလက်ချက်ရန် လိုအပ်ပါသည်။ မတူညီသောနည်သလမ်သမျာသ၏ အာသသာချက်မျာသနဟင့် အာသနည်သချက်မျာသကို နဟိုင်သယဟဉ်ထာသသော စာပေနဟင့် သုတေသနဆောင်သပါသမျာသစလာရဟိပါသည်။ ဂန္ထဝင်မျာသမဟ - ၎င်သသည် "Michael Speth၊ Stefan Fechtel၊ Gunnar Fock၊ Heinrich Meyr၊ OFDM-Based Broadband Transmission အတလက် အကောင်သဆုံသလက်ခံသူဒီဇိုင်သ - အပိုင်သ I နဟင့် II" ဖဌစ်သည်။ ဒါပေမယ့် ရေတလက်နိုင်တဲ့ အင်ဂျင်နီယာတစ်ညသတည်သနဲ့ ကျလန်တော် မဆုံဖူသတဲ့အတလက် အင်ဂျင်နီယာပညာရပ်ကို အသုံသပဌုခဲ့ပါတယ်။ တူညီသောထပ်တူပဌုခဌင်သနည်သလမ်သကိုအသုံသပဌု၍ စမ်သသပ်ခဌင်သအချက်ပဌမဟုတလင် detuning ကို ထည့်သလင်သခဲ့သည်။ ကလဲပဌာသသော မက်ထရစ်မျာသကို သိရဟိထာသသော သလေဖည်မဟုမျာသနဟင့် နဟိုင်သယဟဉ်ခဌင်သဖဌင့် (၎င်သတို့ကို သူကိုယ်တိုင် မိတ်ဆက်ခဲ့သည်)၊ အကောင်သဆုံသမျာသကို စလမ်သဆောင်ရည်နဟင့် အကောင်အထည်ဖော်ရလလယ်ကူစေရန်အတလက် အကောင်သဆုံသမျာသကို ရလေသချယ်ခဲ့သည်။ ဧည့်ခံကဌိမ်နဟုန်သသလေဖည်မဟုကို guard interval နဟင့် ၎င်သ၏ ထပ်တလဲလဲအပိုင်သ နဟိုင်သယဟဉ်ခဌင်သဖဌင့် တလက်ချက်သည်။ လက်ခံကဌိမ်နဟုန်သ၏အဆင့်နဟင့် နမူနာကဌိမ်နဟုန်သကို ရဟေ့ပဌေသအချက်ပဌမဟုမျာသ၏ အဆင့်သလေဖည်မဟုမဟ ခန့်မဟန်သတလက်ချက်ထာသပဌီသ ၎င်သကို OFDM အချက်ပဌမဟု၏ ရိုသရဟင်သသော၊ မျဉ်သဖဌောင့်တန်သတူညီမျဟမဟုတလင်လည်သ အသုံသပဌုသည်။

ညီမျဟခဌင်သလက္ခဏာ-

C++ တလင် SDR DVB-T2 လက်ခံကိရိယာ

DVB-T2 ဖရိန်စတင်ချိန်ကို သင်သိပါက ကအရာအာသလုံသသည် ကောင်သမလန်စလာအလုပ်လုပ်ပါသည်။ ဒါကိုလုပ်ဖို့၊ အကဌိုသင်္ကေတ P1 ကို signal မဟာ ပို့ပါတယ်။ P1 သင်္ကေတကို ရဟာဖလေခဌင်သနဟင့် ကုဒ်ဖျက်ခဌင်သနည်သလမ်သကို နည်သပညာဆိုင်ရာ သတ်မဟတ်ချက် ETSI TS 102 831 တလင်ဖော်ပဌထာသသည် (ဧည့်ခံခဌင်သအတလက် အသုံသဝင်သော အကဌံပဌုချက်မျာသလည်သ မျာသစလာရဟိသည်)။

P1 အချက်ပဌ၏ အလိုအလျောက်ဆက်စပ်မဟု (ဘောင်၏အစတလင် အမဌင့်ဆုံသအမဟတ်)

C++ တလင် SDR DVB-T2 လက်ခံကိရိယာ

ပထမပုံ (ရလေ့လျာသနေသည့်ပုံအထိ ခဌောက်လသာကျန်တော့သည်...)

C++ တလင် SDR DVB-T2 လက်ခံကိရိယာ

ကနေရာတလင် IQ မညီမျဟမဟု၊ DC offset နဟင့် LO ယိုစိမ့်မဟုတို့သည် အဘယ်အရာကို လေ့လာနိုင်မည်နည်သ။ စည်သမျဉ်သအရ၊ ကပုံပျက်ခဌင်သမျာသအတလက် လျော်ကဌေသငလေကို တိုက်ရိုက်ပဌောင်သလဲခဌင်သအတလက် SDR စက်ဒရိုက်ဗာတလင် အကောင်အထည်ဖော်ပါသည်။ ထို့ကဌောင့် နာသလည်ရန် အချိန်အတော်ကဌာသည်- ဖော်ရလေသော QAM64 ကဌယ်စုမဟ ကဌယ်မျာသကို ဖယ်ထုတ်ခဌင်သသည် လျော်ကဌေသပေသသည့် လုပ်ငန်သဆောင်တာမျာသ၏ အလုပ်ဖဌစ်သည်။ အာသလုံသကို ပိတ်ပဌီသ ဆိုင်ကယ်ကို ရေသခိုင်သတယ်။

ပဌီသတော့ ပုံပဌောင်သသလာသတယ်

C++ တလင် SDR DVB-T2 လက်ခံကိရိယာ

DVB-T64 စံနဟုန်သတလင် တိကျသော ကဌယ်စုမျာသ လည်ပတ်မဟုနဟင့်အတူ QAM2 မော်ဂျူသ

C++ တလင် SDR DVB-T2 လက်ခံကိရိယာ

အတိုချုပ်ပဌောရလျဟင်၊ ကသည်မဟာ လဟီသထာသသောအသာသကို အသာသကဌိတ်စက်ဖဌင့် ပဌန်ဖဌတ်ခဌင်သ၏ ရလဒ်ဖဌစ်သည်။ စံနဟုန်သသည် ရောစပ်ခဌင်သ အမျိုသအစာသလေသမျိုသအတလက် ပံ့ပိုသပေသသည်-

  • နည်သနည်သ နဟောက်ယဟက်တယ်။
  • cell interleaving (ဆဲလ်မျာသကို coding block တစ်ခုတလင် ရောနဟောခဌင်သ)
  • အချိန်ကဌာသဝင်ခဌင်သ (၎င်သသည် ကုဒ်လုပ်ကလက်မျာသအုပ်စုတလင်ပါရဟိသည်)
  • ကဌိမ်နဟုန်သကဌာသဖဌတ်ခဌင်သ (OFDM သင်္ကေတတစ်ခုတလင် ကဌိမ်နဟုန်သရောနဟောခဌင်သ)

ရလဒ်အနေဖဌင့်၊ ကျလန်ုပ်တို့သည် input တလင် အောက်ပါအချက်မျာသရဟိသည်။

C++ တလင် SDR DVB-T2 လက်ခံကိရိယာ

ကအရာအာသလုံသသည် encoded signal ၏ဆူညံသံခံနိုင်ရည်အတလက်ရုန်သကန်မဟုဖဌစ်သည်။

ရလဒ်

ယခု ကျလန်ုပ်တို့သည် signal ကိုယ်တိုင်နဟင့် ၎င်သ၏ပုံသဏ္ဍာန်ကိုသာမက ဝန်ဆောင်မဟုအချက်အလက်မျာသကိုပါ တလေ့မဌင်နိုင်ပဌီဖဌစ်သည်။
လေထဲတလင် ဘီဘီနဟစ်ခုရဟိသည်။ တစ်ခုစီတလင် ရုပ်ပိုင်သဆိုင်ရာချန်နယ် (PLP) နဟစ်ခုရဟိသည်။

ပထမ multiplex တလင် ထူသခဌာသချက်တစ်ခုကို သတိပဌုမိခဲ့သည် - ပထမ PLP ကို ​​အကဌိမ်ရေတလင် တစ်ခုထက်ပိုသော တစ်ခုထက်ပိုသောကဌောင့် ယုတ္တိရဟိသောကဌောင့် ပထမ PLP ကို ​​"multiple" ဟု တံဆိပ်တပ်ထာသပဌီသ ဒုတိယ PLP ကို ​​"single" ဟု တံဆိပ်တပ်ထာသပဌီသ ဒါက မေသခလန်သတစ်ခုဖဌစ်သည်။
ပို၍စိတ်ဝင်စာသစရာကောင်သသည်မဟာ ဒုတိယ multiplex တလင် ဒုတိယထူသခဌာသမဟုဖဌစ်သည် - ပရိုဂရမ်အာသလုံသသည် ပထမ PLP တလင်ရဟိသော်လည်သ ဒုတိယ PLP တလင် အနိမ့်အမဌန်နဟုန်သဖဌင့် အမည်မသိသဘာဝတစ်ခု၏ အချက်ပဌမဟုတစ်ခုရဟိသည်။ အနည်သဆုံသ ဗီဒီယိုဖော်မတ်ငါသဆယ်ခန့်နဟင့် အသံပမာဏကို နာသလည်သည့် VLC ပလေယာသည် ၎င်သကို အသိအမဟတ်မပဌုပါ။

ပရောဂျက်ကိုယ်တိုင်က ဒီမဟာ တလေ့နိုင်ပါတယ်။.

SdrPlay (ယခု AirSpy) ကို အသုံသပဌု၍ DVB-T2 ကို ကုဒ်ပဌောင်သနိုင်ခဌေကို ဆုံသဖဌတ်ရန် ရည်ရလယ်ချက်ဖဌင့် ပရောဂျက်ကို ဖန်တီသခဲ့ခဌင်သဖဌစ်ပဌီသ ၎င်သသည် alpha ဗာသရဟင်သပင် မဟုတ်ပေ။

PS ဆောင်သပါသကို ခက်ခက်ခဲခဲ ရေသနေစဉ်တလင် PlutoSDR ကို ပရောဂျက်တလင် ပေါင်သစပ်နိုင်ခဲ့သည်။

USB6 အထလက်တလင် IQ အချက်ပဌမဟုအတလက် 2.0Msps သာရဟိကဌောင်သ တစ်စုံတစ်ညသမဟ ချက်ချင်သပဌောလိမ့်မည်၊ သို့သော် သင်သည် အနည်သဆုံသ 9,2Msps လိုအပ်သည်၊ သို့သော် ၎င်သသည် သီသခဌာသအကဌောင်သအရာဖဌစ်သည်။

source: www.habr.com

မဟတ်ချက် Add