一、瑞利信道简介
在许多无线通信系统的仿真教材中,我们常常能够看到 “瑞利信道” 的身影,下面我们来解释一下什么是瑞利信道:在城区环境下,发射机与接收机之间的通信往往不能是直达的,从发射机发出的电磁波信号会受到高大建筑物或者是树木的影响,会造成多径效应。因此,接收机所受到的信号是会来自四面八方的,这些多径信号的幅度和相位都是随机变化的,其中,信号包络服从瑞利分布;信号相位为 0 0 0~ 2 π 2\pi 2π之间的均匀分布,因此,这一类信道的衰落我们都可以用瑞利分布来表征。
二、从表达式看瑞利分布
我们从表达式上简单看看:
假设我们发射机要发送的是一个正弦波信号(只携带单一符号):
s
(
t
)
=
A
(
t
)
c
o
s
(
ω
c
t
)
s(t) = A(t)cos(\omega_ct)
s(t)=A(t)cos(ωct)
这个信号经过城市环境,接收端受到的,就是多路信号的叠加,而且每一路信号的幅度相位都不一定一样,如下:
r
(
t
)
=
a
1
(
t
)
c
o
s
ω
c
[
t
−
τ
1
(
t
)
]
+
a
2
(
t
)
c
o
s
ω
c
[
t
−
τ
2
(
t
)
]
+
⋯
+
a
n
(
t
)
c
o
s
ω
c
[
t
−
τ
n
(
t
)
]
=
∑
i
=
1
n
a
i
(
t
)
c
o
s
ω
c
[
t
−
τ
i
(
t
)
]
\begin{aligned} r(t) &= a_1(t)cos\omega_c[t - τ_1(t)]+a_2(t)cos\omega_c[t - τ_2(t)]+\cdots +a_n(t)cos\omega_c[t - τ_n(t)]\\ &=\sum_{i=1}^na_i(t)cos\omega_c[t - τ_i(t)] \end{aligned}
r(t)=a1(t)cosωc[t−τ1(t)]+a2(t)cosωc[t−τ2(t)]+⋯+an(t)cosωc[t−τn(t)]=i=1∑nai(t)cosωc[t−τi(t)]
那么其实我们也可以写成下面的形式:
r
(
t
)
=
∑
i
=
1
n
a
i
(
t
)
c
o
s
[
ω
c
t
+
φ
i
(
t
)
]
r(t) = \sum_{i=1}^na_i(t)cos[\omega_ct +φ_i(t)]
r(t)=i=1∑nai(t)cos[ωct+φi(t)]
也就是幅度和相位的形式;其中,
φ
i
(
t
)
=
−
ω
c
τ
i
(
t
)
φ_i(t) = - \omega_cτ_i(t)
φi(t)=−ωcτi(t)
接下来,我们用cos的展开公式,可以得到:
r
(
t
)
=
∑
i
=
1
n
a
i
(
t
)
c
o
s
φ
i
(
t
)
c
o
s
(
ω
c
t
)
−
∑
i
=
1
n
a
i
(
t
)
s
i
n
φ
i
(
t
)
s
i
n
(
ω
c
t
)
=
X
(
t
)
c
o
s
(
ω
c
t
)
−
Y
(
t
)
s
i
n
(
ω
c
t
)
\begin{aligned} r(t) &= \sum_{i=1}^na_i(t)cosφ_i(t)cos(\omega_ct)-\sum_{i=1}^na_i(t)sinφ_i(t)sin(\omega_ct)\\ &=X(t)cos(\omega_ct) - Y(t)sin(\omega_ct) \end{aligned}
r(t)=i=1∑nai(t)cosφi(t)cos(ωct)−i=1∑nai(t)sinφi(t)sin(ωct)=X(t)cos(ωct)−Y(t)sin(ωct)
其中,
X
(
t
)
=
∑
i
=
1
n
a
i
(
t
)
c
o
s
φ
i
(
t
)
X(t) = \sum_{i=1}^na_i(t)cosφ_i(t)
X(t)=∑i=1nai(t)cosφi(t);
Y
(
t
)
=
∑
i
=
1
n
a
i
(
t
)
s
i
n
φ
i
(
t
)
Y(t) =\sum_{i=1}^na_i(t)sinφ_i(t)
Y(t)=∑i=1nai(t)sinφi(t)
由于 X ( t ) X(t) X(t) 和 Y ( t ) Y(t) Y(t) 都是相互独立的随机变量之后,根据中心极限定理,大量独立随机变量之和的分布趋于正态分布。因此,当n足够大时, X ( t ) X(t) X(t)和 Y ( t ) Y(t) Y(t)都趋于正态分布。通常情况下 X ( t ) X(t) X(t)和 Y ( t ) Y(t) Y(t)的均值为0(由于没有直射路径),方差相等。而同时我们也知道,在MATLAB里面,生成满足正态分布的随机数是非常简单的。
下一步,我们再将上面的式子整理一下,得到:
r
(
t
)
=
R
(
t
)
c
o
s
[
ω
c
t
+
φ
(
t
)
]
r(t) = R(t) cos[\omega_ct +φ(t)]
r(t)=R(t)cos[ωct+φ(t)]
其中,
R
(
t
)
=
X
2
(
t
)
+
Y
2
(
t
)
R(t) = \sqrt{X^2(t) + Y^2(t)}
R(t)=X2(t)+Y2(t);
φ
(
t
)
=
a
r
c
t
a
n
Y
(
t
)
X
(
t
)
φ(t) = arctan \frac{Y(t)}{X(t)}
φ(t)=arctanX(t)Y(t)
我们知道: X ( t ) X(t) X(t)和 Y ( t ) Y(t) Y(t)趋于正态分布;而我们再看看瑞利分布的定义:
瑞利分布(Rayleigh distribution),当一个随机二维向量的两个分量呈独立的、有着相同的方差的正态分布时,这个向量的模呈瑞利分布。例如,当随机复数的实部和虚部独立同分布于0均值,同方差的正态分布时,该复数的绝对值服从瑞利分布。该分布是以瑞利命名的。
因此,我们可以知道 R ( t ) R(t) R(t) 就是服从瑞利分布的。
三、基于MATLAB的瑞利信道仿真
许多教材上对瑞利信道的仿真只是画出了瑞利信道理论的概率密度函数,可是在实际工程仿真时,这个理论的概率密度函数还真不太好用,因为我们知道通信系统最简化的模型就是:
r
(
t
)
=
s
(
t
)
∗
h
(
t
)
+
n
(
t
)
r(t) = s(t)*h(t) + n(t)
r(t)=s(t)∗h(t)+n(t)
因此,我们常常希望可以得到信道的
h
h
h,那么,下面我们给出一种合理且简单的方法获得瑞利信道的衰减系数——即通过MATLAB的randn函数产生两个零均值的高斯随机变量,其包络就满足瑞利分布。
%-----------------------Rayleigh信道衰落系数的计算-------------------------%
clc
clear
close all
sigma_ = [0.5 1 2 3 4];
figure;
for i = 1:5
sigma = sigma_(i);
V = 0:0.01:6;
pdf_rayleigh = (2*V/sigma^2).*exp(-V.^2/sigma^2);
plot(V, pdf_rayleigh,'-');
hold on;
N = 10^5; %测试样本点数
x = sqrt(sigma^2/2)*randn(2,N)+0; %产生均值为0,方差为sigma^2/2的高斯随机变量
xx = x(1,:) + sqrt(-1)*x(2,:);
R = abs(xx); %信号包络(理论上服从瑞利分布)
k = 0:0.01:6; %统计区间
dk = 0.01; %组距
p = [];
for i = 1:(length(k)-1)
num = length(find(R >= k(i) & R < k(i+1))); %找到R里面介于k(i)和k(i+1)的元素的个数
p = [p num/length(R)]; %得到R中的值介于k(i)和k(i+1)的概率
end
pdf = p/dk; %概率除以组距即可得到概率密度
k_new = 0.005:0.01:(6-0.005); %取一组的中值表征这个区间
plot(k_new, pdf,'-.');
grid on;
set(gca,'GridLineStyle',':','GridColor','k','GridAlpha',1);
xlabel('R');
ylabel('PDF');
title('Rayleigh衰落的概率密度函数');
legend('理论值sigma=0.5','仿真值sigma=0.5','理论值sigma=1','仿真值sigma=1',...
'理论值sigma=2','仿真值sigma=2','理论值sigma=3','仿真值sigma=3',...
'理论值sigma=4','仿真值sigma=4');
end
可以看出,所得到的测试样本很好地满足理论的瑞利信道概率密度函数,因此在未来整个通信系统的仿真时,我们可以用这个方法获取瑞利信道的 h h h。