99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

讓波束照進(jìn)現(xiàn)實(shí):從相控陣到波束賦形

MATLAB ? 來(lái)源:MATLAB ? 2023-04-20 10:26 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

讀書(shū)期間,在上《無(wú)線(xiàn)通信基礎(chǔ)》這門(mén)課時(shí),因?yàn)榻滩?[1] 里都是關(guān)于數(shù)學(xué)公式的推導(dǎo),包含矩陣論、隨機(jī)過(guò)程等知識(shí),我發(fā)覺(jué)自己很難在課堂上集中注意力。學(xué)期結(jié)束時(shí),對(duì)一些概念和理論的理解也不是很深刻。后來(lái),在從事了多年 LTE5G 等無(wú)線(xiàn)通信的算法和系統(tǒng)設(shè)計(jì)后,我開(kāi)始明白理解基本的概念和理論是如此重要,因?yàn)樗鼈兪遣煌瑧?yīng)用和標(biāo)準(zhǔn)的基礎(chǔ),是進(jìn)一步創(chuàng)新的源泉。

MATLAB 中包含了大量的示例和參考應(yīng)用,可以幫助大家理解復(fù)雜的無(wú)線(xiàn)通信理論和概念。本文將通過(guò)一個(gè)相關(guān)示例展示 MATLAB 將如何助力您學(xué)習(xí)和理解什么是相控陣,波束賦形,預(yù)編碼等概念,以及如何利用相控陣處理來(lái)獲得的分集和空間復(fù)用增益,以提供無(wú)線(xiàn)通信系統(tǒng)的性能。

什么是相控陣?

波束賦形是一種在 5G 甚至 6G 通信系統(tǒng)、雷達(dá)、聲納、醫(yī)療成像和音頻陣列系統(tǒng)中廣泛使用的技術(shù)。要理解波束賦形,首先需要了解什么是波束。

簡(jiǎn)而言之,波束是由相控陣形成。相控陣中包含多個(gè)測(cè)量或者發(fā)射波的單元。這些單元按某種結(jié)構(gòu)排列,并共同作用以產(chǎn)生所需的波束。其中,每個(gè)單元信號(hào)的相位都是可以調(diào)節(jié)的,從而來(lái)控制波束的方向。想要了解相控陣的更多細(xì)節(jié),您可以觀看 Brian Douglas 的視頻 "What Are Phased Arrays?" [3],他使用了大量的動(dòng)畫(huà)來(lái)解釋這個(gè)概念。

在無(wú)線(xiàn)通信中,相控陣的單元一般是天線(xiàn)單元。從下面 Douglas 視頻的快照中,您可以看到由全向天線(xiàn)所組成的均勻線(xiàn)性陣列 (Uniform Linear Array,ULA) 所產(chǎn)生的波束。在某些方向上,來(lái)自不同天線(xiàn)單元的信號(hào)被疊加,因此信號(hào)強(qiáng)度被增強(qiáng);而在其他方向上,天線(xiàn)信號(hào)相互抵消,因此信號(hào)強(qiáng)度變?nèi)酢?/p>

b0b4c9e6-deb7-11ed-bfe3-dac502259ad0.jpg

波束的方向取決于天線(xiàn)陣列的設(shè)置,包括天線(xiàn)單元的數(shù)量、單元之間的間距、陣列的幾何形狀以及單個(gè)天線(xiàn)的方向圖。MATLAB 中的 Sensor Array Analyzer[4] 應(yīng)用程序?yàn)槟峁┝艘粋€(gè)交互式工具,用于配置天線(xiàn)陣列,獲得其基本性能特性,并且在 2D 或 3D 空間中可視化其波束的方向圖。

在 MATLAB 中安裝了 Phased Array Toolbox 后,您可以在工具欄的 “APPs” 選項(xiàng)卡的 “信號(hào)處理與通信” 下,找到這個(gè) App 的圖標(biāo),也可以在 MATLAB 中使用以下命令打開(kāi) Sensor Array Analyzer 應(yīng)用程序。

sensorArrayAnalyzer

下面的動(dòng)畫(huà)演示如何使用 Sensor Array Analyzer[4],您可以注意到這個(gè)應(yīng)用程序能幫助我們通過(guò)交互式的界面,設(shè)置和調(diào)整相控陣的參數(shù),可視化相控陣的波束,以及將相控陣對(duì)準(zhǔn)某個(gè)方向。基于不同的導(dǎo)向矢量,我們就可以在不移動(dòng)天線(xiàn)陣列物理位置的情況下,移動(dòng)波束的方向啦!

接下來(lái),將向您展示如何對(duì)天線(xiàn)陣列進(jìn)行波束賦形,以提高無(wú)線(xiàn)鏈路的信噪比 (Signal-to-Noise Ratio,SNR)。

怎樣做波束賦形?

天線(xiàn)陣列已經(jīng)成為 5G 標(biāo)準(zhǔn)配置的一部分。這種無(wú)線(xiàn)通信系統(tǒng)通常被稱(chēng)為多輸入多輸出 (Multiple-Input-and-Multiple-Output, MIMO) 系統(tǒng)。為了展示多天線(xiàn)的優(yōu)勢(shì),我們假設(shè)一個(gè)無(wú)線(xiàn)鏈路部署在 60 GHz,這是 5G 中新增的毫米波波段。

rng(0)     % set random seed
c = 3e8;    % propagation speed
fc = 60e9;   % carrier frequency

不失一般性,您可以將發(fā)射機(jī)放置在原點(diǎn),將接收機(jī)放置在大約 1.6 公里外。

txcenter = [0;0;0];   % center of the transmitter
rxcenter = [1500;500;0]; % center of the receiver

然后根據(jù)發(fā)射機(jī)和接收機(jī)的中心位置,計(jì)算出射角(Angle-of-Departure, AoD)和到達(dá)角(Angle-of-Arrival, AoA)。

[~,txang] = rangeangle(rxcenter,txcenter); % AoD
[~,rxang] = rangeangle(txcenter,rxcenter); % AoA

下面將展示在兩種常見(jiàn)無(wú)線(xiàn)信道下,如何利用天線(xiàn)陣列提高無(wú)線(xiàn)鏈路的性能。并通過(guò)鏈路仿真比較 MIMO 波束賦形相比于 SISO 的優(yōu)勢(shì)。

視距信道

首先,考慮視距 (Line-of-Sight,LOS) 傳播。這是一種最簡(jiǎn)單的無(wú)線(xiàn)信道,通常發(fā)生在廣闊的農(nóng)村地區(qū)。在 LOS 信道下,發(fā)射機(jī)信號(hào)能直接到達(dá)接收機(jī)。在這種情況下,如何使用天線(xiàn)陣列提高接收機(jī)的信噪比,從而提高鏈路的誤碼率 (Bit Error Rate,BER) 呢?

作為對(duì)比,您可以先如下所示仿真 LOS 信道下 SISO 鏈路的誤碼率性能,其中 scatteringchanmtx 函數(shù)用于為不同的發(fā)射和接收陣列配置生成基于散射體的信道矩陣。該函數(shù)通過(guò)模擬發(fā)射陣列和接收陣列之間的多個(gè)散射體,假設(shè)信號(hào)首先從發(fā)射陣列傳輸?shù)剿猩⑸潴w,然后從散射體反射到接收陣列。

在這種情況下,每個(gè)散射體定義了發(fā)射陣列和接收陣列之間的一個(gè)信號(hào)路徑,因此所得到的信道矩陣其實(shí)描述了一個(gè)多徑環(huán)境。您可以通過(guò)選中該函數(shù),然后右鍵單擊以打開(kāi)該函數(shù)來(lái)閱讀其詳細(xì)信息和代碼實(shí)現(xiàn)。

考慮一個(gè) SISO 無(wú)線(xiàn)通信鏈路,發(fā)射機(jī)和接收機(jī)都只有一個(gè)位于節(jié)點(diǎn)中心的天線(xiàn)單元,并且環(huán)境中存在一個(gè)從發(fā)射機(jī)到接收機(jī)的直接路徑。這樣的 LOS 信道可以視為多路徑環(huán)境的一種特殊情況。

txsipos = [0;0;0]; % antenna position to the transmitter    
rxsopos = [0;0;0]; % antenna position to the receiver


g = 1; % path gain
sisochan = scatteringchanmtx(txsipos,rxsopos,txang,rxang,g); % generate a SISO LOS channel


Nsamp = 1e6;       % sample rate
x = randi([0 1],Nsamp,1); % data source


ebn0_param = -10:2:10;  % SNRs, unit in dB
Nsnr = numel(ebn0_param); % total number of SNRs


ber_siso = helperMIMOBER(sisochan,x,ebn0_param)/Nsamp; % caculate the bit error rate (BER)

至此,您已經(jīng)獲得了 SISO LOS 鏈路的誤碼率性能。通過(guò)查看文末的輔助函數(shù) helperMIMOBER,大家可以注意到這個(gè)示例中考慮的是 BPSK 調(diào)制。

現(xiàn)在您可以創(chuàng)建一個(gè) MIMO 鏈路。假設(shè)發(fā)射機(jī)和接收機(jī)都是包含半波長(zhǎng)間距的 4 個(gè)天線(xiàn)單元的 ULA。

Ntx = 4; % number of transmitting antennas
Nrx = 4; % number of receiving antennas


txarray = phased.ULA('NumElements',Ntx,'ElementSpacing',lambda/2); % antenna array of the transmitter
txmipos = getElementPosition(txarray)/lambda; 


rxarray = phased.ULA('NumElements',Nrx,'ElementSpacing',lambda/2); % antenna array of the receiver 
rxmopos = getElementPosition(rxarray)/lambda;

有了接收天線(xiàn)陣列,陣列單元的接收信號(hào)是相干的,因此可以將接收陣列的波束方向預(yù)對(duì)準(zhǔn)發(fā)射機(jī)方向,以提高信噪比。此外,發(fā)射機(jī)也可以將其天線(xiàn)陣列的主波束預(yù)先對(duì)準(zhǔn)接收機(jī),以達(dá)到進(jìn)一步的性能提升。

txarraystv = phased.SteeringVector('SensorArray',txarray,...
  'PropagationSpeed',c); % the steering vector of transmit array
rxarraystv = phased.SteeringVector('SensorArray',rxarray,...
  'PropagationSpeed',c); % the steering vector of receive array


wt = step(txarraystv, fc, txang)';
wr = conj(step(rxarraystv, fc, rxang));


mimochan = scatteringchanmtx(txmipos,rxmopos,txang,rxang,g);
ber_mimo = helperMIMOBER(mimochan,x,ebn0_param,wt,wr)/Nsamp;


helperPlotSpatialMIMOScene(txmipos,rxmopos,txcenter,rxcenter,NaN,wt,wr)
b0d95216-deb7-11ed-bfe3-dac502259ad0.jpg

波束賦形意味著調(diào)制信號(hào)在發(fā)射端發(fā)送前需要乘上一個(gè)權(quán)重向量 wt,而接收信號(hào)在接收端解調(diào)前需要乘上一個(gè)合并向量 wr。使用helperPlotSpatialMIMOScene 函數(shù)對(duì)場(chǎng)景進(jìn)行可視化之后,您可以在上圖中看到,發(fā)射天線(xiàn)和接收天線(xiàn)的主波束是指向?qū)Ψ降摹?/p>

讓我們比較在 LOS 傳播信道下, SISO 和 MIMO 鏈路的誤碼率。

helperBERPlot(ebn0_param,[ber_siso(:) ber_mimo(1,:).']);
legend('SISO LOS','MIMO LOS');
b14e1920-deb7-11ed-bfe3-dac502259ad0.jpg

上圖的誤碼率 vs. 信噪比曲線(xiàn)顯示,發(fā)射陣列和接收陣列的波束賦形一共帶來(lái)了約 12 dB 的陣列增益。這里需要注意的是,增益是在假設(shè)發(fā)射機(jī)需要知道接收機(jī)的方向或位置的情況下實(shí)現(xiàn)的,同時(shí)接收機(jī)也需要知道信號(hào)的傳入方向,通常這個(gè)角度可以利用波達(dá)估計(jì)算法得到。

多徑信道

在大多數(shù)情況下,視距 (Line-of-Sight,LOS) 傳播是比較困難的,無(wú)線(xiàn)通信通常發(fā)生在多徑衰落環(huán)境中。本示例的其余部分將探討在這種情況下相控陣是如何提高無(wú)線(xiàn)通信系統(tǒng)性能的。

不失一般性,假設(shè)信道中有 10 個(gè)隨機(jī)放置的散射體,那么從發(fā)射機(jī)到接收機(jī)將有 10 條路徑,如下圖所示。

Nscat = 10; % number of scatterers
[~,~,scatg,scatpos] = helperComputeRandomScatterer(txcenter,rxcenter,Nscat);
helperPlotSpatialMIMOScene(txmipos,rxmopos,txcenter,rxcenter,scatpos,NaN,NaN)
b177e836-deb7-11ed-bfe3-dac502259ad0.jpg

簡(jiǎn)單起見(jiàn),假設(shè)沿著所有路徑傳播的信號(hào)都在同一個(gè)符號(hào)周期內(nèi)到達(dá),因此信道是頻率平坦的,而不是頻率選擇性的。

在這樣的多徑衰落信道中,我們需要仿真信道在多個(gè)時(shí)隙上進(jìn)行變化,從而來(lái)獲得誤碼率曲線(xiàn)。假設(shè)仿真時(shí)間為 1000 幀,每幀有包含 10000 比特。SISO 鏈路在多徑信道下的誤碼率曲線(xiàn)可以如下得到。

Nframe = 1e3;    % number of frames
Nbitperframe = 1e4; % number of bits per frame
Nsamp = Nframe*Nbitperframe; % total number of data samples


x = randi([0 1],Nbitperframe,1); % generated the source data


nerr = zeros(1,Nsnr);
for m = 1:Nframe
  sisompchan = scatteringchanmtx(txsipos,rxsopos,Nscat);
  wr = sisompchan'/norm(sisompchan);
  nerr = nerr + helperMIMOBER(sisompchan,x,ebn0_param,1,wr);
end
ber_sisomp = nerr/Nsamp;

在 SISO 情況下,如果您比較 LOS 下的信道矩陣和多徑下的信道矩陣,可以發(fā)現(xiàn)它只包含一個(gè)元素,而且由于多徑衰落,元素的值從實(shí)數(shù)變?yōu)閺?fù)數(shù)。在這種情況下,可以在接收端使用 wr = sisompchan'/norm(sisompchan) 計(jì)算接收信號(hào)所需要右乘的權(quán)值來(lái)提高信噪比。

現(xiàn)在將展示在 MIMO 情況下,如何通過(guò)仿真獲得誤碼率曲線(xiàn)。其中,diagbfweights 函數(shù)被用來(lái)基于信道矩陣計(jì)算發(fā)射機(jī)的預(yù)編碼權(quán)值 wp 和接收機(jī)的合并權(quán)值 wc。您可以右鍵單擊該函數(shù)并打開(kāi)它,查看其詳細(xì)信息。

x = randi([0 1],Nbitperframe,Ntx);


nerr = zeros(Nrx,Nsnr);
for m = 1:Nframe
  mimompchan = scatteringchanmtx(txmipos,rxmopos,Nscat);
  [wp,wc] = diagbfweights(mimompchan);
  nerr = nerr + helperMIMOBER(mimompchan,x,ebn0_param,wp,wc);
end
ber_mimomp = nerr/Nsamp;

要理解預(yù)編碼和合并權(quán)重是如何計(jì)算的,首先需要知道什么是奇異值分解 (Singular Value Decomposition,SVD)。使用以下命令,在MATLAB 查看 SVD 的文檔。

help svd

簡(jiǎn)單來(lái)說(shuō),SVD ([U,S,V] = SVD (X)) 產(chǎn)生了與 X 相同維數(shù)且非負(fù)對(duì)角元素遞減的對(duì)角矩陣 S,以及酉陣 U 和 V,是得 X = U*S*V'。嘗試 在MATLAB 中輸入以下命令:

bf = wp*mimompchan*wc
[u,s,v] = svd(mimompchan)
b195ea98-deb7-11ed-bfe3-dac502259ad0.pngb1aff85c-deb7-11ed-bfe3-dac502259ad0.png

比較 bf 和 s,您可以發(fā)現(xiàn) diagbfweights 函數(shù)是基于 SVD 的。wp*mimompchan*wc 是一個(gè)對(duì)角矩陣。在包含多個(gè)散射體的環(huán)境下,MIMO 多徑信道的信道矩陣通常是滿(mǎn)秩的。這意味這樣的 MIMO 多徑信道將可以類(lèi)似于原始信道內(nèi)的多個(gè)正交子信道。

因此,您可以通過(guò) MIMO 多徑信道同時(shí)發(fā)送多個(gè)數(shù)據(jù)流,這個(gè)策略被稱(chēng)為空間復(fù)用??臻g復(fù)用的基本思想是使發(fā)射陣列中不同單元發(fā)送的數(shù)據(jù)流可以從接收信號(hào)中獨(dú)立恢復(fù)。它的目標(biāo)不全是提高信噪比,而主要是為了提高信息吞吐量。

現(xiàn)在繪制 SISO 多徑情況下,以及 MIMO 多徑情況下前兩個(gè)數(shù)據(jù)流的誤碼率曲線(xiàn)。為了對(duì)比,您可以加上在上一節(jié)得到的 SISO LOS 鏈路的誤碼率曲線(xiàn)。

helperBERPlot(ebn0_param,[ber_siso(:) ...
ber_sisomp(:) ber_mimomp(1,:).' ber_mimomp(2,:).']);
legend('SISO LOS','SISO Multipath','MIMO Multipath Stream 1','MIMO Multipath Stream 2');
b1c87b8e-deb7-11ed-bfe3-dac502259ad0.jpg

從上圖中可以看到,與 SISO LOS 鏈路的誤碼率曲線(xiàn)相比,SISO 多徑鏈路的誤碼率曲線(xiàn)由于多徑傳播引起的衰落而下降得慢得多。同時(shí),在 MIMO 多徑情況下,第一個(gè)子信道對(duì)應(yīng)著主要的發(fā)射和接收方向,因此曲線(xiàn)斜率上的增益,也就是分集增益沒(méi)有損失。雖然第二個(gè)流使用了一個(gè)不占主導(dǎo)地位的子信道,因此不能提供像第一個(gè)流那樣高的增益,但由于現(xiàn)在可以同時(shí)傳輸多個(gè)數(shù)據(jù)流,整個(gè)鏈路的信息吞吐量可以得到提升。

總結(jié)

本文解釋了如何使用陣列信號(hào)處理提高 MIMO 無(wú)線(xiàn)通信系統(tǒng)的性能。根據(jù)信道特性,陣列既可以通過(guò)陣列增益,也可以通過(guò)分集增益提高信噪比,或者通過(guò)空間復(fù)用提高信息容量。

您已經(jīng)了解了 MIMO 無(wú)線(xiàn)通信的一些基礎(chǔ)知識(shí),比如什么是相控陣、波束成形、預(yù)編碼、分集增益和空間復(fù)用。這個(gè)示例當(dāng)中所使用的輔助函數(shù)將附在文末以幫助您理解實(shí)現(xiàn)細(xì)節(jié)。

除了直觀地在各發(fā)射天線(xiàn)單元之間均勻分配功率外,您還可以通過(guò)注水算法進(jìn)一步提高信道容量。具體請(qǐng)查看和運(yùn)行本文的參考示例 “Improve SNR and Capacity of Wireless Communication Using Antenna Arrays” [2]。

最后,如果您想繼續(xù)了解如何在 5G 標(biāo)準(zhǔn)下實(shí)現(xiàn)波束賦形,請(qǐng)觀看教程視頻 "Beamforming for MU-MIMO in 5G New Radio" [5]。同時(shí),MATLAB 的無(wú)線(xiàn)通信文檔[6] 中也包含有大量的示例和參考應(yīng)用,可以幫助您更容易和清楚地理解相關(guān)的概念和理論。各種 AI forWireless[7] 的示例也將給您提供更多如何在無(wú)線(xiàn)通信領(lǐng)域應(yīng)用AI技術(shù)的參考和支持。

推薦您觀看最新一期的小邁步之通信系統(tǒng)設(shè)計(jì)——從基礎(chǔ)到 AI+:

點(diǎn)開(kāi)展開(kāi)閱讀附錄:輔助函數(shù)。

附錄:輔助函數(shù)

第一個(gè)函數(shù) helperPlotSpatialMIMOScene 用于在 2D 區(qū)域繪制 MIMO 場(chǎng)景。SISO 場(chǎng)景可以被認(rèn)為是 MIMO 場(chǎng)景的特殊情況。

function helperPlotSpatialMIMOScene(txarraypos,rxarraypos,...
txcenter,rxcenter,scatpos,wt,wr)
  rmax = norm(txcenter-rxcenter);
  
  if size(txarraypos,2) == 1 && size(rxarraypos,2) == 1
    spacing_scale = 0;
  elseif size(txarraypos,2) == 1
    spacing_scale = rmax/20/mean(diff(rxarraypos(2,:)));
  else
    spacing_scale = rmax/20/mean(diff(txarraypos(2,:)));
  end
  
  txarraypos_plot = txarraypos*spacing_scale+txcenter;
  rxarraypos_plot = rxarraypos*spacing_scale+rxcenter;
  
  clf;
  figure
  hold on;
  
  plot(txarraypos_plot(1,:),txarraypos_plot(2,:),'kv','MarkerSize',10,...
    'MarkerFaceColor','k');
  text(txcenter(1)-85,txcenter(2)-15,'TX');
  plot(rxarraypos_plot(1,:),rxarraypos_plot(2,:),'kv','MarkerSize',10,...
    'MarkerFaceColor','k');
  text(rxcenter(1)+35,rxcenter(2)-15,'RX');
  if isnan(scatpos)
    set(gca,'DataAspectRatio',[1,1,1]);
    line([txcenter(1) rxcenter(1)],[txcenter(2) rxcenter(2)]);
  else
    hscat = plot(scatpos(1,:),scatpos(2,:),'ro');
    for m = 1:size(scatpos,2)
      plot([txcenter(1) scatpos(1,m)],[txcenter(2) scatpos(2,m)],'b');
      plot([rxcenter(1) scatpos(1,m)],[rxcenter(2) scatpos(2,m)],'b');
    end
    legend(hscat,{'Scatterers'},'Location','SouthEast');
  end
  
  nbeam = rmax/5;
  if ~isnan(wt)
    txbeam_ang = -90:90;
    txbeam = abs(wt*steervec(txarraypos,txbeam_ang)); % wt row
    txbeam = txbeam/max(txbeam)*nbeam;
    [txbeampos_x,txbeampos_y] = pol2cart(deg2rad(txbeam_ang),txbeam);
    plot(txbeampos_x+txcenter(1),txbeampos_y+txcenter(2),'k');
  end
  if ~isnan(wr)
    rxbeam_ang = [90:180 -179:-90];
    rxbeam = abs(wr.'*steervec(rxarraypos,rxbeam_ang)); % wr column
    rxbeam = rxbeam/max(rxbeam)*nbeam;
    [rxbeampos_x,rxbeampos_y] = pol2cart(deg2rad(rxbeam_ang),rxbeam);
    plot(rxbeampos_x+rxcenter(1),rxbeampos_y+rxcenter(2),'k');
  end
  axis off;
  hold off;
end

第二個(gè)函數(shù) helperComputeRandomScatterer 用于計(jì)算散射點(diǎn)位置等信息。

function [txang,rxang,g,scatpos] = ...
  helperComputeRandomScatterer(txcenter,rxcenter,Nscat)
  ang = 90*rand(1,Nscat)+45;
  ang = (2*(rand(1,numel(ang))>0.5)-1).*ang;
  
  r = 1.5*norm(txcenter-rxcenter);
  scatpos = phased.internal.ellipsepts(txcenter(1:2),rxcenter(1:2),r,ang);
  scatpos = [scatpos;zeros(1,Nscat)];
  g = ones(1,Nscat);
  
  [~,txang] = rangeangle(scatpos,txcenter);
  [~,rxang] = rangeangle(scatpos,rxcenter);
end

第三個(gè)函數(shù) helperMIMOBER 用于計(jì)算采用 BPSK MIMO 鏈路的誤碼率。SISO 鏈路可以被認(rèn)為是 MIMO 鏈路的特殊情況。

function nber = helperMIMOBER(chan,x,snr_param,wt,wr) 
  Nsamp = size(x,1);
  Nrx = size(chan,2);
  Ntx = size(chan,1);
  
  if nargin < 4
 ? ? ? ?wt = ones(1,Ntx);
 ? ?end
 ? ?
 ? ?if nargin < 5
 ? ? ? ?wr = ones(Nrx,1);
 ? ?end ? ?
 ? ?
 ? ?xt = 1/sqrt(Ntx)*(2*x-1)*wt; % map to bpsk
 ? ?nber = zeros(Nrx,numel(snr_param),'like',1); % real
 ? ?
 ? ?for m = 1:numel(snr_param)
 ? ? ? ?n = sqrt(db2pow(-snr_param(m))/2)*... 
(randn(Nsamp,Nrx)+1i*randn(Nsamp,Nrx));
 ? ? ? ?y = xt*chan*wr+n*wr;
 ? ? ? ?xe = real(y)>0;
    nber(:,m) = sum(x~=xe);
  end
end

第四個(gè)函數(shù) helperBERPlot 用于繪制誤碼率曲線(xiàn)。

function helperBERPlot(ebn0,ber) 
  figure
  h = semilogy(ebn0,ber);
  set(gca,'YMinorGrid','on','XMinorGrid','on');
  markerparam = {'x','+','^','v','.'};
  for m = 1:numel(h)
    h(m).Marker = markerparam{m};
  end
  xlabel('E_b/N_0 (dB)');
  ylabel('BER');
  lim([9e-6 1]);
end

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • matlab
    +關(guān)注

    關(guān)注

    189

    文章

    3001

    瀏覽量

    234143
  • 無(wú)線(xiàn)通信
    +關(guān)注

    關(guān)注

    58

    文章

    4755

    瀏覽量

    145216
  • 波束
    +關(guān)注

    關(guān)注

    0

    文章

    58

    瀏覽量

    15966
  • 相控陣
    +關(guān)注

    關(guān)注

    3

    文章

    94

    瀏覽量

    14415
  • 5G
    5G
    +關(guān)注

    關(guān)注

    1360

    文章

    48815

    瀏覽量

    573878

原文標(biāo)題:讓波束照進(jìn)現(xiàn)實(shí): 從相控陣到波束賦形

文章出處:【微信號(hào):MATLAB,微信公眾號(hào):MATLAB】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    什么是波束賦形技術(shù)?

    波束賦形的目標(biāo)是根據(jù)系統(tǒng)性能指標(biāo),形成對(duì)基帶(中頻)信號(hào)的最佳組合或者分配。具體地說(shuō),其主要任務(wù)是補(bǔ)償無(wú)線(xiàn)傳播過(guò)程中由空間損耗、多徑效應(yīng)等因素引入的信號(hào)衰落與失真,同時(shí)降低同信道用戶(hù)間的干擾。因此
    發(fā)表于 08-16 06:02

    5G波束賦形和超級(jí)上行技術(shù)

    針對(duì)上行速率進(jìn)行了重點(diǎn)優(yōu)化,通過(guò)「超級(jí)上行」技術(shù),處于基站邊緣的5G手機(jī)也能具有更穩(wěn)、更快的5G聯(lián)接。 一起來(lái)認(rèn)識(shí)「波束賦形」技術(shù)和「超級(jí)上行」技術(shù)吧↓↓↓ `
    發(fā)表于 05-13 09:04

    圖解—相控陣雷達(dá)——波束掃描技術(shù)

    相控陣采用的是電子方法實(shí)現(xiàn)波束無(wú)慣性?huà)呙瑁虼艘步须娮訏呙桕嚵?ESA),它的波束方向可控、掃描也靈活,并且增益也可以很高。對(duì)于相控陣天線(xiàn)輻射的電磁場(chǎng)及其能量分布通常用歸一化的天線(xiàn)方向
    發(fā)表于 05-23 08:22

    什么是波束賦形

    的形狀”。合起來(lái),波束賦形的意思就是賦予一定形狀集中傳播的電磁波。其實(shí),我們常見(jiàn)的光也是一種電磁波,燈泡作為一個(gè)點(diǎn)光源,發(fā)出的光沒(méi)有方向性,只能不斷向四周耗散;而手電筒則可以把光集中一個(gè)方向發(fā)射,能量
    發(fā)表于 06-20 07:50

    工程師解讀MIMO波束賦形的詳細(xì)教程

    工程師解讀MIMO波束賦形的詳細(xì)教程
    發(fā)表于 05-19 06:40

    關(guān)于波束賦形技術(shù)你想知道的都在這

    什么是發(fā)射波束賦形技術(shù)?怎么實(shí)現(xiàn)發(fā)射波束賦形技術(shù)?
    發(fā)表于 05-25 06:31

    橢圓波束賦形雙偏置天線(xiàn)的設(shè)計(jì)

    橢圓波束賦形雙偏置天線(xiàn)的設(shè)計(jì):導(dǎo)出了橢圓波束賦形雙偏置天線(xiàn)重要幾何參數(shù)的求解方程 給出了這種天線(xiàn)的簡(jiǎn)便而有效的設(shè)計(jì)方法并分析了這種天線(xiàn)效率高旁瓣低的原因關(guān)鍵
    發(fā)表于 10-24 15:10 ?12次下載

    TD-SCDMA系統(tǒng)信道波束賦形

    TD-SCDMA系統(tǒng)信道波束賦形
    發(fā)表于 09-18 15:18 ?507次閱讀

    波束賦形知識(shí)介紹

    波束賦形”一詞有時(shí)會(huì)被濫用,從而引起混淆。從技術(shù)上來(lái)說(shuō),波束賦形波束導(dǎo)向一樣簡(jiǎn)單,即兩個(gè)或更多的天線(xiàn)以受控的延遲或相位偏移來(lái)發(fā)射信號(hào),從
    發(fā)表于 12-08 06:17 ?5.2w次閱讀
    <b class='flag-5'>波束</b><b class='flag-5'>賦形</b>知識(shí)介紹

    X/Ku頻段波束賦形器演示

    ADI公司推出一款四通道X/Ku頻段波束賦形IC,可實(shí)現(xiàn)相控陣模擬波束賦形的商業(yè)化。本演示利用兩個(gè)波束
    的頭像 發(fā)表于 06-07 13:46 ?3582次閱讀

    如何利用兩個(gè)波束賦形IC形成八通道線(xiàn)性陣列

    ADI公司推出一款四通道X/Ku頻段波束賦形IC,可實(shí)現(xiàn)相控陣模擬波束賦形的商業(yè)化。本演示利用兩個(gè)波束
    的頭像 發(fā)表于 07-04 06:12 ?2701次閱讀

    波束賦形到底是什么?5G波束賦形的詳細(xì)資料介紹

    ,蜉蝣君將嘗試抽絲剝繭,絲絲入扣地揭開(kāi)波束賦形的神秘面紗??赐瓯疚?,你將會(huì)了解:什么是波束賦形?波束
    發(fā)表于 12-04 01:36 ?33次下載

    混合波束賦形系統(tǒng)的接收機(jī)動(dòng)態(tài)范圍分析

    相控陣波束賦形架構(gòu)大致可分為模擬波束賦形系統(tǒng)、數(shù)字波束賦形
    的頭像 發(fā)表于 10-31 14:36 ?1860次閱讀

    理論到實(shí)踐詳解混合波束賦形接收機(jī)動(dòng)態(tài)范圍

    相控陣波束賦形架構(gòu)大致可分為模擬波束賦形系統(tǒng)、數(shù)字波束賦形
    的頭像 發(fā)表于 07-11 16:19 ?1174次閱讀
    <b class='flag-5'>從</b>理論到實(shí)踐詳解混合<b class='flag-5'>波束</b><b class='flag-5'>賦形</b>接收機(jī)動(dòng)態(tài)范圍

    相控陣波束賦形芯片對(duì)衛(wèi)星通信的必要性

    在衛(wèi)星通信這個(gè)充滿(mǎn)科技魅力的領(lǐng)域,每一次技術(shù)突破都可能重塑未來(lái)通信格局。今天就來(lái)聊聊其中的關(guān)鍵角色 — 相控陣波束賦形芯片,在衛(wèi)星通信地面終端以及毫米波頻段中到底有多重要。
    的頭像 發(fā)表于 07-16 10:31 ?252次閱讀