题目描述

  考虑一个余弦信号$\small{x\left( t \right) =\cos \left( 2\pi f_0t \right)}$沿着一条受到多径效应和多普勒效应影响的信道传输的情形。设有两条路径,并且假定该正弦信号正由一个移动的物体发出,因此会发生多普勒频移。设接收信号为:

$$
\begin{aligned}
r\left( t \right) =a_0\cos\left( 2\pi \left( f_0-v \right) \left( t-\dfrac{L_0}{c} \right) \right) +a_1\cos\left( 2\pi \left( f_0-v \right) \left( t-\dfrac{L_1}{c} \right) \right)
\end{aligned}
$$

  其中$\small{0\le a_i\le 1,i=0,1}$为衰减因子,$\small{L_i}$ 代表第$\small{i}$条路径上发射机与接收机之间的距离,$\small{c=3\times 10^3m/s}$,$\small{v}$ 是多普勒效应引起的频移。

问题回答

  设 $\small{r_0(t)}$ 和 $\small{r_1(t)}$ 分别为两条信号路径分量,即:

$$r_0(t) = a_0\cos\left[2\pi\left(f_0-v\right)\left(t-\frac{L_0}{c}\right)\right]$$

$$r_1(t) = a_1\cos\left[2\pi\left(f_0-v\right)\left(t-\frac{L_1}{c}\right)\right]
$$

问题1

  令 $\small{f_0=2 \mathrm{kHz}, v=50\mathrm{Hz}, a_0=1, a_1=0.9}$。令 $\small{L_0=10000 m}$,如果两个余弦信号的相位差等于 $\small{\pi/2}$,$\small{L_1}$ 应该等于多少?

  答:
  上述数据带入 $\small{r_0(t)}$ 和 $\small{r_1(t)}$ 中得:

$$\varphi_0 = -13000\pi$$

$$\varphi_1 = -\frac{13}{10}\pi L_1$$

  由于 $\small{\Delta\varphi=\left(2n+\frac{1}{2}\right)\pi}$,因此:
$$13000\pi - \frac{13}{10}\pi L_1 = \left(2n+\frac{1}{2}\right)\pi, \quad n\in \mathbf{Z}$$
  解得:
$$L_1 = \frac{129995}{13} - \frac{20}{13}n, \quad n\in \mathbf{Z}$$
  当 $\small{n=0}$ 时,$\small{L_1=\frac{129995}{13} m \approx 9999.62 m}$。

问题2

  若各参数同上,但 $\small{L_1=10000 m}$,那么接收信号 $\small{r(t)}$ 是周期的吗?如果 $\small{r(t)}$ 是周期的,那么它的周期等于多少?它的周期与原始余弦信号的周期相差多少?如果将传输信道看作为一个系统,$\small{x(t)}$ 是其输入,$\small{r(t)}$ 是其输出,那么该系统是线性的和时不变的吗?请作出解释。
  答:
  将所给数据代入 $\small{r(t)}$ 中得:
$$r(t) = 1.9\cos(3900\pi t - 13000\pi)$$
  可以发现$\small{r(t)}$ 是周期信号,其周期 $\small{T=\frac{2\pi}{\omega} \approx 5.13 \times 10^{-4} s}$。
  将数据代入得:
$$x(t)=\cos(4000\pi t)$$
  可知周期 $\small{T_x = 5 \times 10^{-4} s}$,因此二者周期差为:
$$\Delta T = \frac{1}{78000} s \approx 1.28 \times 10^{-5} s$$
  下面判断该系统是否为线性系统,是否为时不变系统。

  根据$\small{r(t)}$和$\small{x(t)}$的解析式可以得出二者满足以下关系:
$$r\left( t \right) =1.9x\left( \frac{39}{40}t \right) $$

  • 线性系统的判断

    对假设两个输入 $\small{x_1(t), x_2(t)}$ 分别对应输出 $\small{r_1(t), r_2(t)}$,即:
    $$r_1(t) = 1.9 x_1\left(\frac{39}{40}t\right)$$
    $$r_2(t) = 1.9 x_2\left(\frac{39}{40}t\right)$$
    当输入为$\small{ax_1(t) + bx_2(t)}$时,输出为:

    $$
    \begin{aligned}
    r(t) &= 1.9a x_1\left(\frac{39}{40}t\right) + 1.9b x_2\left(\frac{39}{40}t\right)
    \end{aligned}
    $$

    因此该系统是线性的。

  • 时不变系统的判断
    对输入$\small{x(t)}$有:
    $$r\left( t \right) =1.9x\left( \frac{39}{40}t \right) $$
    令输入产生$\small{t_d}$的时移即$\small{x(t-t_d)}$,有:

    $$ r’\left( t \right) =1.9x\left( \frac{39}{40}t-t_d \right) $$

    $$r(t-t_d) = 1.9 x\left(\frac{39}{40}(t-t_d)\right) = 1.9 x\left(\frac{39}{40}t - \frac{39}{40}t_d\right)$$
    显然有:
    $$r’(t) \neq r(t-t_d)$$
    系统为时变系统

问题3

  对信号 $\small{x(t)}$ 和 $\small{r(t)}$ 以抽样频率 $ \small{F_s=10\mathrm{kHz
}}$ 进行抽样,画出抽样后的发送信号 $\small{x(n T_s)}$ 和接收信号 $\small{r(n T_s)}$ 的图形,取 $\small{n=0\sim 2000}$。

  答:

  • 对$\small{x(t)}$进行采样

      原始余弦信号$\small{x\left( t \right) =\cos \left( 2\pi f_0t \right)}$。以抽样频率$\small{F_s=10\mathrm{kHz}}$进行取样,则取样周期$\small{T_s=10^{-4}s}$,取样函数为:
    $$s\left( t \right) =\sum_{n=-\infty}^{+\infty}{\delta \left( t-10^{-4}n \right)}$$
      则取样信号:
    $$x_s\left( t \right) =\cos \left( 2\pi f_0t \right) \sum_{n=-\infty}^{+\infty}{\delta \left( t-10^{-4}n \right)}$$

      由于不同的$\small{ f_0 }$在抽样频率一定的情况下会对$\small{ x(nT_s ) }$产生不同的结果,因此取$\small{f_0=2\mathrm{kHz},7\mathrm{kHz}}$,采用 MATLAB 进行仿真,结果如图所示:

    $\small{f_0=2\mathrm{kHz}}$下的$\small{ x(t) }$抽样结果图

    x_2k

    $\small{f_0=7\mathrm{kHz}}$下的$\small{ x(t) }$抽样结果图

    x_7k

      由图可以发现,信号频率为$\small{ 2\mathrm{kHz}} $时,抽样图形很明显地呈现了原始信号的特征,而信号频率为$\small{ 7\mathrm{kHz}} $时,在采样信号的过程中出现了信号混叠的现象。这是因为采样允许的最小频率至少应为原信号最高频率的两倍,该频率称为奈奎斯特频率。当取样的信号频率为$\small{ 2\mathrm{kHz}} $时,奈奎斯特频率为 $\small{ 4\mathrm{kHz}} $,$\small{ F_s=10\mathrm{kHz}} $符合采样要求;当取样的信号频率为$\small{ 7\mathrm{kHz}} $时,$\small{ F_s} $将不符合采样要求。因此,选择的信号频率应当低于$\small{ 5\mathrm{kHz} }$。

  • 对$\small{r(t)}$进行采样:

      接收信号$\small{ r(t)}$,以抽样频率$\small{ F_s=10\mathrm{kHz} }$进行取样,则取样周期$\small{ T_s=10^{-4} s}$,取样函数为:

    $$s\left( t \right) =\sum_{n=-\infty}^{+\infty}{\delta \left( t-10^{-4}n \right)}$$

      则取样信号:

    $$r_s\left( t \right) =\mathrm{r(}t)\sum_{n=-\infty}^{+\infty}{\delta \left( t-10^{-4}n \right)}$$

      选取信号频率$\small{ f_0=2\mathrm{kHz}}$,其余条件同问题2,则:

    $$r_s\left( t \right) =1.9\cos\left( 3900\pi t-13000\pi \right) \sum_{n=-\infty}^{+\infty}{\delta \left( t-10^{-4}n \right)}$$

      采用 MATLAB 进行仿真,结果如图所示:

    r_2k

问题4

  考虑这样一种情形,其中$\small{f_0=2\mathrm{kHz}}$,但路径参数是随机的。尝试模拟一种真实情形,其中路径参数都是不可预测的(虽然它们之间仍存在某种关系)。令

$$r\left( t \right) =a_0\cos\left( 2\pi \left( f_0-v \right) \left( t-\frac{L_0}{c} \right) \right) +a_1\cos\left( 2\pi \left( f_0-v \right) \left( t-\frac{L_1}{c} \right) \right) $$

  其中,$\small{v=50η\mathrm{Hz}}$,$\small{L_0=1000η }$及$\small{ L_1=10000η}$,$\small{a_0=1-η }$及$\small{ a_1=a_0/10}$,$\small{η} $是一个介于0和1之间的随机数,并且它等于0和1之间任何一个数的概率是一样的(可利用 MATLAB 的函数 rand 来实现)。用$\small{ F_s=10000\mathrm{Hz}} $作为抽样频率,产生出 10 种不同情况下的接收信号,并将它们画在一起,从中观察多径效应和多普勒效应。对于这 10 种不同情况,求出结果信号并画出来。

  答:

  使用 MATLAB 模拟生成十种不同的接收信号:

接收信号模拟图 1

random1

接收信号模拟图 2

random2

接收信号模拟图 3

random3

接收信号模拟图 4

random4

  通过上述图形分析可以得出信号在传播过程中产生了明显的衰落,使结果信号的多径效应十分显著,许多信号的采样峰值都明显小于1。信号在传播过程中产生了明显的频率变化,能够显著地观察到多普勒效应。其中多普勒效应最明显的信号甚至不能在图中完整地展示其一个周期。

参考文献

[1] 信号与线性系统分析,吴大正 杨林耀 张永瑞 王松林 郭宝龙,2019.3
[2] https://ww2.mathworks.cn/help/matlab/learn_matlab/help.html

附录

$\small{ x(t)} $信号抽样代码

%f_0 = 2000Hz
clc; clear
hold off
x = [];
f_0 = 2000;%设置信号频率
for t = 0 : 0.000001 : 0.005%设置for循环,循环时间t
x_t = 0;%每个点取样后的信号值
for n = 0:2000%设置for循环,循环抽样点n
x_temp = cos(f_0 * 2 * pi .* t) * delta(t - 0.0001 * n);%计算原信号值和冲激函数的乘积
x_t = x_t + x_temp;
end
x = [x, x_t];%结果保存到x[]中
end
t = 0 : 0.000001 : 0.005;
y = cos(f_0 * 2 * pi .* t);
plot(t, x)%画出抽样后的函数图像
hold on
plot(t, y)%画出原函数图像
%设置图例
legend('\fontname{Times New Roman}\fontsize{12}x(nT_s)','\fontname{Times New Roman}\fontsize{12}x(t)');

%f_0 = 7000Hz
clc; clear
hold off
x = [];
f_0 = 7000;%设置信号频率
for t = 0 : 0.000001 : 0.003%设置for循环,循环时间t
x_t = 0;%每个点取样后的信号值
for n = 0:2000%设置for循环,循环抽样点n
x_temp = cos(f_0 * 2 * pi .* t) * delta(t - 0.0001 * n);%计算原信号值和冲激函数的乘积
x_t = x_t + x_temp;
end
x = [x, x_t];%结果保存到x[]中
end
t = 0 : 0.000001 : 0.003;
y = cos(f_0 * 2 * pi .* t);
plot(t, x)%画出抽样后的函数图像
hold on
plot(t, y)%画出原函数图像
%设置图例
legend('\fontname{Times New Roman}\fontsize{12}x(nT_s)','\fontname{Times New Roman}\fontsize{12}x(t)');
$\small{ r(t) }$信号抽样代码
clc; clear
hold off
r = [];
for t = 0 : 0.000001 : 0.005%设置for循环,循环时间t
%每个点取样后的信号值
r_t = 0;
for n = 0:2000%设置for循环,循环抽样点n
r_temp = 1.9 .* cos(3900 * pi .* t - 13000 * pi) * delta(t - 0.0001 * n);%计算原信号值和冲激函数的乘积
r_t = r_t + r_temp;
end
r = [r, r_t];%结果保存到r[]中
end
t = 0 : 0.000001 : 0.005;
y = 1.9 .* cos(3900 * pi .* t - 13000 * pi);
plot(t, r)%画出抽样后的函数图像
hold on
plot(t, y)%画出原函数图像
%设置图例
legend('\fontname{Times New Roman}\fontsize{12}r(nT_s)','\fontname{Times New Roman}\fontsize{12}r(t)');
模拟信号生成代码
clc; clear
r = [];
hold on
for ii = 1 : 10%设置循环,生成10个随机信号
r = [];%结果保存数组
eta = rand;%获取0-1之间的随机数,存入eta中
f_0 = 2000;%设置信号频率
for t = 0 : 0.000001 : 0.05%设置for循环,循环时间t
r_t = 0;
for n = 0 : 2000%设置for循环,循环抽样点n
r_temp = ((1 - eta) * cos(2 * pi * (f_0 - 50 * eta) * (t - 1000 * eta / 3000)) + ...
(1 - eta) / 10 * cos(2 * pi * (f_0 - 50 * eta) * (t - 10000 * eta / 3000))) * ...
delta(t - 0.0001 * n);%计算原信号值和冲激函数的乘积
r_t = r_t + r_temp;
end
r = [r, r_t];
end
t = 0 : 0.000001 : 0.05;
plot(t, r)%绘制图像
end