主要内容

マルチパスフェ,ジングチャネル

この例では,レイリーおよびライスマルチパスフェージングチャネル系统对象と組み込みの可視化を使用して,フェージングチャネルをモデル化し,チャネルのスペクトル特性を表示する方法を示します。レリおよびラスフェジングチャネルは,無線通信における実際の現象の有効なモデルです。これらの現象には,マルチパス散乱効果,時間分散,送信側と受信側の間の相対的な運動が原因で起こるドップラーシフトが含まれます。

フェ,ジングチャネルを使用した信号の処理の手順は次のとおりです。

  1. 使用するチャネルを記述するチャネル系统对象™を作成します。チャネルオブジェクトは,チャネルについての情報(最大ドップラーシフトなど)を含むMATLAB®変数の一種です。

  2. チャネルをモデル化するために,必要に応じて系统对象のプロパティを調整します。たとえば,パス遅延や平均パスゲ。

  3. チャネル系统对象を関数のように呼び出してチャネルモデルを適用します。これにより,ランダムな離散パスゲ,ンを生成し,入力信号をフィルタ,処理します。

初期化

次の変数は,レ@ @ @チャネルオブジェクトとラ@ @ @ @ @ @ @既定の設定では,チャネルは4つのフェージングパスとしてモデル化され,各パスはほぼ同じ遅延で受信するマルチパス成分の集まりを表します。

sampleRate500kHz = 500e3;采样率为500K HzsampleRate20kHz = 20e3;% 20K Hz的采样率maxDopplerShift = 200;弥散分量最大多普勒频移% (Hz)delayVector = (0:5:15)*1e-6;四路信道离散时延百分比(s)gainVector = [0 -3 -6 -9];平均路径增益% (dB)

最大ドップラ,シフトは v × f / c で計算されます。ここで, v は移動体速度,fは搬送波周波数,cは光速です。たとえば,最大ドップラーシフト200赫兹(上を参照)は,移動体速度65英里(30 m / s)と搬送周波数2 GHzに対応します。

慣例により,最初のパスの遅延は一般にゼロに設定されます。それ以降のパスの場合,1マescクロ秒の遅延はパス長では300 mの違いに相当します。一部の屋外のマルチパス環境では,反射されたパスが最短パスより数キロメートルも長くなることがあります。パス遅延を上のように指定した場合,最後のパスは最短パスより4.5公里長くなるため,15マイクロ秒遅れて到着します。

さらに,チャネルの平均遅延プロファaapl .ルは,パス遅延とパスゲaapl .ンの影響を受けます。一般に,平均パスゲインは,遅延により指数関数的に減衰(dB値は直線的に減衰)しますが,特定の遅延プロファイルは伝播環境に依存します。上で指定した遅延プロファイルでは,5マイクロ秒のパス遅延ごとに平均電力が3 dB減衰すると想定しています。

次の変数は,ラesc escスチャネル系统对象を制御します。反射成分のドップラーシフトは一般に,最大ドップラーシフト(上記)より小さくなり,反射成分の方向に対する移動体の移動方向に依存します。Kファクターは,関連付けられた拡散成分の平均受信電力に対する反射成分の平均受信電力の線形比を指定します。

KFactor = 10;%镜面与漫射功率的线性比率specDopplerShift = 100;反射分量多普勒频移% (Hz)

チャネル系统对象の作成

上で定義した変数を使用してcomm.RayleighChannel系统对象およびcomm.RicianChannel系统对象を作成します。指定したシードで内蔵の乱数ストリームを使用してパスゲインを生成するようにオブジェクトを構成します。

rayChan = com . rayleighchannel (...SampleRate = sampleRate500kHz,...PathDelays = delayVector,...AveragePathGains = gainVector,...MaximumDopplerShift = maxDopplerShift,...RandomStream =“mt19937ar with seed”...种子= 10,...PathGainsOutputPort = true);ricChan = com . ricianchannel (...SampleRate = sampleRate500kHz,...PathDelays = delayVector,...AveragePathGains = gainVector,...KFactor = KFactor,...DirectPathDopplerShift = specDopplerShift,...MaximumDopplerShift = maxDopplerShift,...RandomStream =“mt19937ar with seed”...种子= 100,...PathGainsOutputPort = true);

変調とチャネルフィルタ,処理

関数兰迪を使用して信号デ,タのフレ,ムを生成します。次に示すコ,ドでは,フレ,ムが情報ビットのベクトルを参照します。信号デ,タを変調するには,pi/4の位相オフセットで構成されたcomm.QPSKModulator系统对象を作成します。フレムごとの送信ビット数を1000に指定します。QPSK変調の場合,これはフレ,ムあたり500シンボルに相当します。

bitsPerFrame = 1000;msg = randi([0 1],bitsPerFrame,1);qpskMod = com . qpskmodulator (BitInput=true,PhaseOffset=pi/4);

チャネル経由での送信用にデ,タを変調します。データを可視化せずに,変調されたデータにレイリーおよびライスチャネルフィルター処理を適用します。

modSignal = qpskMod(msg);rayChan (modSignal);ricChan (modSignal);

チャネル応答の可視化

フェージングチャネル系统对象には,オブジェクトの実行時にチャネルインパルス応答,周波数応答またはドップラースペクトルを表示するための組み込みの可視化があります。これを呼び出すには,オブジェクトを呼び出す前に可视化プロパティを目的の値に設定します。それらのプロパティ値を変更できるように,ここでレイリーチャネル系统对象およびライスチャネル系统对象を解放します。

释放(rayChan);释放(ricChan);

可视化プロパティを”脉冲响应“に設定すると,帯域制限ンパルス応答(黄色の円)が表示されます。”この可視化には,インパルス応答のピーク近辺に密集して存在する,潜在的なフェージングパスゲイン(ピンクのステムバー)の遅延と振幅も示されます。ドップラ効果によりゲンは経時変化するため,パスゲンはAveragePathGainsプロパティ値と同じではありません。

同様に可视化プロパティを”频率响应に設定すると,周波数応答(dft変換)が表示されます。また,可视化を”脉冲和频率响应に設定すれば,电子邮箱ンパルスと周波数の両方の応答を並べて表示できます。

可视化プロパティを”多普勒频谱に設定すると,最初の離散パスのドップラ,スペクトルが表示されます。これはフェ,ジング処理の統計的特性描写です。ドップラ,スペクトル(青色の星)の瞬間的な経験的測定値がプロットされます。時間の経過とともに処理されるサンプルが増えるに従い,この測定値の平均が理論上のドップラースペクトル(黄色の曲線)に近づいていきます。

入力サンプルを可視化するパ,センテ,ジはSamplesToDisplayプロパティを変更することで制御できます。一般にパ,センテ,ジが小さいほどシミュレ,ションの実行速度は速くなります。より正確な信号プロット(播放)を選択し,[更新を減らして性能を改善]オプションの選択を解除します。シミュレ,ション速度を上げるために,既定ではこのオプションが選択されています。すべての入力サンプルのチャネル応答を確認するには,SamplesToDisplayを”100%に設定し,[更新を減らして性能を改善]の選択を解除します。

広帯域または周波数選択性フェ,ジング

レリフェジング後のQPSK変調信号のンパルス応答と周波数応答を表示します。チャネル周波数応答はフラットではなく,500 k赫兹帯域幅を超えると大きく減衰する場合があります。これは,信号の帯域幅を超えると強度レベルが変化することが原因で,広帯域フェージングまたは周波数選択性フェージングと呼ばれます。

rayChan。可视化=“脉冲和频率响应”;rayChan。SamplesToDisplay =“100%”显示2帧的脉冲和频率响应numFrames = 2;i = 1:numFrames%创建随机数据msg = randi([0 1],bitsPerFrame,1);调制数据modSignal = qpskMod(msg);通过信道过滤数据,显示信道响应rayChan (modSignal);结束

同じチャネル仕様について,レイリーチャネルオブジェクトを解放して再構成し,その最初の離散パスのドップラースペクトルを表示します。これはフェ,ジング処理の統計的特性描写です。

释放(rayChan);rayChan。可视化=“多普勒谱”从5000帧传输显示多普勒频谱numFrames = 5000;i = 1:numFrames msg = randi([0 1],bitsPerFrame,1);modSignal = qpskMod(msg);rayChan (modSignal);结束

狭帯域または周波数フラットフェ,ジング

帯域幅が狭く信号を個別の成分に分解できないと,周波数応答はほぼフラットになります。これは,マルチパスチャネルが引き起こした最小の時間分散が原因です。このようなマルチパスフェージングは,“狭帯域フェージング”または”周波数フラットフェージング”とも呼ばれます。

信号帯域幅を500 kb / s (250 ksym / s)から20 kb / s (10 ksym / s)に減らします。これでチャネルの遅延スパン(15マイクロ秒)がQPSKシンボル周期(100マイクロ秒)よりかなり小さくなります。結果として得られるインパルス応答の符号間干渉(ISI)が非常に小さくなり,周波数応答がほぼフラットになります。

释放(rayChan);rayChan。可视化=“脉冲和频率响应”;rayChan。SampleRate = sampleRate20kHz;rayChan。SamplesToDisplay =“25%”显示每四个样本中的一个显示2帧的脉冲和频率响应numFrames = 2;i = 1:numFrames msg = randi([0 1],bitsPerFrame,1);modSignal = qpskMod(msg);rayChan (modSignal);结束

狭帯域フェ,ジングチャネルの場合,チャネルは単一パスフェ,ジングモデルで正確に表せます。チャネルに狭帯域フェージングがある場合にシミュレーションを簡略化して高速にするには,マルチパスフェージングモデルを単一パスフェージングモデルに置き換えることを検討します。次の設定は狭帯域フェージングチャネルに対応し,プロットに示されているように,周波数応答が完全にフラットになります。

释放(rayChan);rayChan。pathdelayed = 0;%单衰落路径,零延迟rayChan。averagepathgain = 0;平均路径增益为1 (0 dB)

i = 1:numFrames msg = randi([0 1],bitsPerFrame,1);modSignal = qpskMod(msg);rayChan (modSignal);结束

ライスフェージングチャネル系统对象は拡散マルチパス散乱と共に見通し内伝播をモデル化します。これにより,パスゲ。レリチャネルとラスチャネルの間の変動を比較するため,timescopeオブジェクトを使用してパスゲ@ @ンを経時的に表示します。

レイリーフェージングチャネル(黄色の曲線)の振幅が30 ~ 40 dBであるの対し,ライスフェージングチャネル(青色の曲線)の場合,振幅は約10 dBの範囲で変動することがわかります。ライスフェージングチャネルでは,この変化は,Kファクター(現在の設定値は10)を大きくするとさらに小さくなります。

释放(rayChan);rayChan。可视化=“关闭”关闭瑞利物体可视化ricChan。可视化=“关闭”关闭专家对象可视化Rayleigh和rist对象的采样率和延迟剖面相同ricChan。SampleRate = rayChan.SampleRate;ricChan。pathdelayed = raychan . pathdelayed;ricChan。averagepathgain = raychan . averagepathgain;配置一个时间范围系统对象来显示路径增益大小gainScope = timescope(...SampleRate = rayChan。SampleRate,...TimeSpanSource =“财产”...时间间隔= bitsPerFrame / 2 / rayChan。SampleRate,...%一帧跨度Name =“多路径增益”...ChannelName = [“瑞利”“Rician”),...ShowGrid = true,...YLimits = -40 [10],...YLabel =“增益(dB)”);比较一帧两个对象的路径增益输出msg = randi([0 1],bitsPerFrame,1);modSignal = qpskMod(msg);[~,rayPathGain] = rayChan(modSignal);[~,ricPathGain] = ricChan(modSignal);将路径增益作为时间范围的双通道输入gainScope (10 * log10 (abs ([rayPathGain ricPathGain])。^ 2));

コンスタレ,ションに与えるフェ,ジングチャネルの影響

元の4パスレリフェジングチャネルに戻り,comm.ConstellationDiagram系统对象を使用してコンスタレーションに与える狭帯域フェージングの影響を示します。可視化するためにチャネルダイナミクスを減速させ,最大ドップラーシフトを5赫兹に低減しました。QPSKチャネルの入力信号に比べ,チャネル出力時の信号の減衰と回転のほかに,受信信号のISIが少量であるために生じる歪みも確認できます。

释放(rayChan);rayChan。pathdelayed = delayVector;rayChan。averagepathgain = gainVector;rayChan。MaximumDopplerShift = 5;constDiag = com . constellationdiagram (...Name =瑞利衰落后的接收信号);numFrames = 16;n = 1:numFrames msg = randi([0 1],bitsPerFrame,1);modSignal = qpskMod(msg);rayChanOut = rayChan(modSignal);constDiag (rayChanOut);结束释放(rayChan);释放(constDiag);

信号帯域幅を500 kb / s (250 ksym / s)に広げ,コンスタレーションダイアグラムを再プロットします。広帯域信号の時間分散に関連するISIによってコンスタレーションにおける歪みがかなり増大することがわかります。チャネルの遅延スパン(15マイクロ秒)が,QPSKシンボル周期(4マイクロ秒)より大きいので,結果として得られる帯域制限インパルス応答はほぼフラットではなくなります。

rayChan。SampleRate = sampleRate500kHz;n = 1:numFrames msg = randi([0 1],bitsPerFrame,1);modSignal = qpskMod(msg);rayChanOut = rayChan(modSignal);constDiag (rayChanOut);结束