当前位置: 首页 > news >正文

MATLAB Simulink (二)高速跳频通信系统

MATLAB & Simulink (二)高速跳频通信系统

  • 写在前面
  • 1 系统原理
    • 1.1 扩频通信系统理论基础
      • 1.1.1 基本原理
      • 1.1.2 扩频通信系统处理增益和干扰容限
      • 1.1.3 各种干扰模式下抗干扰性能
    • 1.2 高速跳频通信系统理论基础
      • 1.2.1 基本原理
      • 1.2.2 物理模型
  • 2 方案设计
    • 2.1 Simulink
    • 2.2 高速跳频系统方案设计
      • 2.2.1 高速跳频系统仿真结构
      • 2.2.2 高速跳频系统处理流程
      • 2.2.3 高速跳频系统参数设置
  • 3 Simulink仿真系统结构图
    • 3.1 高速跳频系统理想信道仿真图
    • 3.2 高速跳频系统高斯信道+单频干扰仿真图
    • 3.3 高速跳频系统高斯信道仿真图
    • 3.4 高速跳频系统瑞利信道仿真图
  • 4 仿真运行及结果分析
    • 4.1 高速跳频通信系统结果分析
      • 4.1.1 仿真仪器观察
      • 4.1.2 不同信道下性能分析
      • 4.1.3 不同扩频增益下性能分析
      • 4.1.4 不同跳频速率下性能分析

写在前面

1.本系列分为(一)直接序列扩频通信系统和(二)高速跳频通信系统。以扩频理论为基础,利用Matlab的可视化工具Simulink建立了直接序列扩频通信系统和高速跳频通信系统的仿真模型,详细阐述了模型各个模块的设计。
2.在给定的仿真条件下,对仿真模型在理想信道、高斯白噪声信道、瑞利衰落信道等通信信道下以及全频干扰、窄带干扰、单频干扰等干扰模式下进行了运行测试,结果符合预期效果及理论基础。
3.利用仿真模型研究了直接序列扩频通信系统和高速跳频通信系统扩频增益、干扰容限与误码率及信道信噪比之间的关系。
3.点进本人主页,查看我的资源,免费分享Matlab-Simulink程序

1 系统原理

1.1 扩频通信系统理论基础

1.1.1 基本原理

扩频通信又被叫做扩展频谱通信,将高频率的信号作为随机码对信号范围进行扩展,使得产生更宽频带的信号,从而增大发射信号能量,使得系统不易被发现,不容易受到外界的干扰。信号接收端通过使用伪随机码对信号进行扩散,使得原始数据能够恢复。扩频通信系统可以按照频谱扩展方式的不同分为直接序列扩频、跳变频率方式、混合方式等。
根据香农定理指出,在高斯白噪声干扰条件下,通信系统的极限传输速率为
C = B log ⁡ ( 1 + S N ) \mathrm{C}=\mathrm{B} \log \left(1+\frac{\mathrm{S}}{\mathrm{N}}\right) C=Blog(1+NS)

其中, C C C是信道容量,即单位时间内无差错传输的最大信息量,单位为 b i t / s bit/s bit/s B B B是信号带宽, S S S为信号平均功率, N N N为噪声功率。若高斯白噪声的功率谱密度为 n 0 n_0 n0,噪声功率 N N N n 0 B n_0B n0B,则信道容量可表示为
C = B log ⁡ ( 1 + S B n 0 ) C=B \log \left(1+\frac{S}{B n_{0}}\right) C=Blog(1+Bn0S)

当信道容量 C C C为常数时,带宽 B B B和信噪比 S / N S/N S/N可以互换,即通过增加带宽 B B B来降低系统对信噪比的要求。

1.1.2 扩频通信系统处理增益和干扰容限

扩频增益与干扰容限是扩频通信系统的两个重要的抗干扰性能指标。
在扩频系统中,传输信号在扩频和解扩的处理过程中,通信系统的抗干扰性能得到提高,这种扩频处理得到的好处称之为扩频系统的扩频增益 G G G,又称为处理增益。
扩频增益定义为接收相关处理器输出信噪比与输入信噪比的比值,一般用分贝表示,即
G p = 10 lg ⁡ S 0 / N 0 S i / N i \mathrm{G}_{\mathrm{p}}=10 \lg \frac{S_{0} / N_{0}}{S_{i} / N_{i}} Gp=10lgSi/NiS0/N0

对于直扩系统, 扩频增益为
G p = B R B I = R c R a \mathrm{G}_{\mathrm{p}}=\frac{B_{R}}{B_{I}}=\frac{R_{c}}{R_{a}} Gp=BIBR=RaRc

其中, B R B_R BR为扩频信号射频带宽, B I B_I BI为传输信息带宽, R c R_c Rc为伪随机码速率, R a R_a Ra为信息速率。可见,直扩系统的扩频增益为扩频信号射频带宽与传输信息带宽的比值,或为伪随机码速率与信息速率的比值,即扩频系统的扩频倍数。
一般情况下,提高扩频增益可通过提高伪随机码的速率来实现,但这样会增加系统的复杂度。因此,可通过降低信息速率提高扩频增益,例如语音压缩技术等,这样可降低信息速率,从而提高系统的扩频增益。所谓干扰容限,是指在保证系统正常工作的条件下,接收机所能承受的干扰信号比有用信号高出的分贝数,用 M J M_J MJ表示,则
M J = G p − [ L s + ( S N ) 0 ] \mathrm{M}_{\mathrm{J}}=\mathrm{G}_{p}-\left[L_{s}+\left(\frac{S}{N}\right)_{0}\right] MJ=Gp[Ls+(NS)0]

其中, L s L_s Ls为系统内部损耗, ( S / N ) 0 (S/N)_0 (S/N)0 为系统正常工作时要求的最小输出信噪比, G p G_p Gp为系统的扩频增益。
干扰容限直接反映了扩频系统接收机可能抵抗的极限干扰强度,只有当干扰机的干扰功率超过干扰容限后,才能对扩频系统形成干扰。

1.1.3 各种干扰模式下抗干扰性能

在实际使用环境中,干扰信号按照带宽可划分为宽带白噪声干扰、窄带干扰和单频干扰等。实际环境中,扩频通信信号带宽内通常不只一种干扰,很可能是多个频带的窄带干扰或多个频点的单音干扰形成的一个组合干扰图样。
不管是哪一种干扰,当与通信信号在频带内重叠并同时进入解扩通道时,都会造成通信信号解扩后的信噪比降低,从而影响系统的解码率。
(1)抗宽带白噪声干扰能力
宽带白噪声具有无穷带宽,将其作为干扰信号送入解扩系统,解扩前和解扩后干扰的功率谱密度不会发生变化,因此扩频通信系统并不能很好地降低宽带白噪声干扰。
(2)抗窄带干扰能力
窄带干扰有部分宽带高斯白噪声干扰和伪随机码扩频干扰,其特点是干扰带宽与通信信号带宽接近,能量较宽带干扰更为集中,但经直扩系统解扩后,能量会被扩展,作用在信号上的能量会被消弱。
如图所示,原始信号的频谱 a ( f ) a(f) a(f)经过扩频后频谱被展宽成 d ( f ) d(f) d(f),带限高斯白噪声和人为窄带噪声干扰 J ( f ) J(f) J(f)在信道中被叠加在原始信号中。由于带限高斯白噪声和人为窄带噪声干扰 J ( f ) J(f) J(f)在发送端并没有经过扩频,其在接收端进行解扩时相当于进行了一次扩频(“反扩频”),频谱反被展宽,而原始信号解扩后将能量重新集中。解扩后带限高斯白噪声和人为窄带噪声干扰 J ( f ) J(f) J(f)对原始信号的干扰降低,从而实现了抗窄带干扰。
在这里插入图片描述
(3)抗单频干扰能力
单频干扰也叫单音干扰,其特点是从频谱上看,干扰信号只存在频谱一个点频上。
设单频干扰信号为 J ( t ) = cos ⁡ ( 2 π f j t + θ j ) J(t) =\cos \left(2 \pi f_{j} t+\theta_{j}\right) J(t)=cos(2πfjt+θj) ,接收端解扩的输出为
r ′ ( t ) = s ( t ) c ′ ( t ) + n ( t ) c ′ ( t ) + J ( t ) c ′ ( t ) = s ′ ( t ) + n ( t ) c ′ ( t ) + A J cos ⁡ ( 2 π f j t + θ j ) c ′ ( t ) \begin{array}{l} r^{\prime}(t)=s(t) c^{\prime}(t)+n(t) c^{\prime}(t)+J(t) c^{\prime}(t) \\ =s^{\prime}(t)+n(t) c^{\prime}(t)+A_{J} \cos \left(2 \pi f_{j} t+\theta_{j}\right) c^{\prime}(t) \end{array} r(t)=s(t)c(t)+n(t)c(t)+J(t)c(t)=s(t)+n(t)c(t)+AJcos(2πfjt+θj)c(t)

J ( t ) J(t) J(t)的平均干扰能量为 P J = A J 2 / 2 \mathrm{P}_{\mathrm{J}}=\mathrm{A}_{\mathrm{J}}^{2} / 2 PJ=AJ2/2 J ( t ) J(t) J(t) c ′ ( t ) c^{\prime}(t) c(t)相乘后使 J ( t ) J(t) J(t)的带宽扩展为 W H z \mathrm{W}Hz WHz,功率谱密度为 J 0 = P J / W \mathrm{J}_{0}=\mathrm{P}_{\mathrm{J}} / \mathrm{W} J0=PJ/W,信息序列经相关解调后,带宽变为 R H z \mathrm{R}Hz RHz,因此解调后输出的干扰的信号的总能量为 J 0 R = P J R W = P J / ( W R ) \mathrm{J}_{0} \mathrm{R}=\mathrm{P}_{\mathrm{J}} \frac{\mathrm{R}}{\mathrm{W}}=\mathrm{P}_{\mathrm{J}} /\left(\frac{\mathrm{W}}{\mathrm{R}}\right) J0R=PJWR=PJ/(RW)
单频干扰信号的能量被消减了 W R \frac{\mathrm{W}}{\mathrm{R}} RW倍, W R \frac{\mathrm{W}}{\mathrm{R}} RW即扩频系统的处理增益。
(4)抗多径干扰能力
多径干扰是移动通信中最常见的干扰,在城市环境中,这种干扰变得尤为严重。多径干扰是由于电波在传播时遇到各种反射体(如电离层、对流层、山脉、高楼等)引起的反射或者散射,使发送信号通过不同路径到达接收端。
在接收端,通过不同路径到达的信号进行矢量叠加,形成随机衰落信号。多径干扰信号的频率选择性衰落与路径差引起的传播延时 τ \tau τ,使信号产生严重的失真和波形展宽并导致信息重叠。这不仅会引起噪声增加和误比特率上升,通信质量降低,甚至可能使通信中断。
瑞利信道的冲激响应为 h ( t ) h(t) h(t),接收到的基带信号为
r ( t ) = h ( t ) ⊗ s ( t ) + n ( t ) + J ( t ) r(t)=h(t)\otimes s(t)+n(t)+J(t) r(t)=h(t)s(t)+n(t)+J(t)

若发射机直接到达接收机的传播时延为 τ 0 \tau_0 τ0,信号功率到达接收机的信号幅值为 2 P \sqrt{2P} 2P ,则接收到的直达信号为:

u 0 ( t ) = 2 P d ( t + τ 0 ) c ( t + τ 0 ) cos ⁡ w c [ ( t + τ 0 ) + φ ] u_{0}(t)=\sqrt{2 P} d\left(t+\tau_{0}\right) c\left(t+\tau_{0}\right) \cos w_{c}\left[\left(t+\tau_{0}\right)+\varphi\right] u0(t)=2P d(t+τ0)c(t+τ0)coswc[(t+τ0)+φ]

若接收机与直接到达的发射信号同步,忽略有关载波频率的高次项,假设多径路径为 k k k条,记 i = 1 , 2 , . . . , k i=1,2,...,k i=1,2,...,k,第 i i i条路径到达接收机时延为 τ i \tau_i τi,对应的信号衰减因子为 α i ( t ) \alpha_{i}(t) αi(t),扩频序列的自相关函数 R c ( t ) = c ( t + τ i ) c ( t + τ 0 ) R_{c}(t)=c(t+\tau_i)c(t+\tau_0) Rc(t)=c(t+τi)c(t+τ0),则到达接收机的多径衰落信号记为
u m ( t ) = ∑ i = 1 k { α i ( t ) d i R c ( τ i − τ 0 ) } u_{m}(t)=\sum_{i=1}^{k}\left\{\alpha_{i}(t) d_{i} R_{c}\left(\tau_{i}-\tau_{0}\right)\right\} um(t)=i=1k{αi(t)diRc(τiτ0)}

由上式可见,多径衰落信号解调后与扩频序列的自相关函数有关。由于伪随机序列具有尖锐的自相关特性,因而对多径效应不敏感。
①当 τ > τ 0 \tau_\gt\tau_0 τ>τ0 T c ≤ τ i − τ 0 ≤ ( N − 1 ) T c T_c\leq\tau_i-\tau_0\leq(N-1)T_c Tcτiτ0(N1)Tc时,即当多径干扰为码片外干扰时,多径衰落噪声输出的平均值 E ( u m ( t ) ) E(u_{m}(t)) E(um(t))满足
E ( u m ( t ) ) ≤ 2 P T d k / N E\left(u_{m}(t)\right) \leq \sqrt{2 P} T d k / N E(um(t))2P Tdk/N

一般地, α i ( t ) ≤ 2 P \alpha_{i}(t)\leq\sqrt{2P} αi(t)2P 。可见,每路多径信号的强度至少减弱至直达信号的 1 N \frac{1}{N} N1,则功率减弱至 1 N 2 \frac{1}{N^2} N21。一般情况下 n > > k n>>k n>>k,则 E ( u m ( t ) ) ≤ 2 P T d E\left(u_{m}(t)\right) \leq \sqrt{2 P} T d E(um(t))2P Td,说明采用扩频通信方式能抵抗多径衰落。
②当 0 ≤ τ i − τ 0 ≤ T c 0\leq\tau_i-\tau_0\leq T_c 0τiτ0Tc时,即当多径干扰为码片内干扰时,则有: R c ( τ i − τ 0 ) = T − T ( τ i − τ 0 ) T c > 0 R_{c}\left(\tau_{i}-\tau_{0}\right)=T-\frac{T(\tau_{i}-\tau_{0})}{T_c}>0 Rc(τiτ0)=TTcT(τiτ0)>0,通过积分滤波,可以得到到达接收机的衰落信号满足
u m ( t ) ≤ 2 d T ∑ i = 1 k α i ( t ) T ( 1 − τ i − τ 0 T c ) u_{m}(t) \leq 2 d T \sum_{i=1}^{k} \alpha_{i}(t) T\left(1-\frac{\tau_{i}-\tau_{0}}{T_{c}}\right) um(t)2dTi=1kαi(t)T(1Tcτiτ0)

上式说明多径衰落与解调后直达信号符号 2 P T d \sqrt{2P}Td 2P Td相同,有用数据 2 P T d > 0 \sqrt{2P}Td>0 2P Td>0 u m ( t ) > 0 u_m(t)>0 um(t)>0,此时的多径衰落相当于增强了有用信号,被视为有用信号的一部分,对有用信号的幅度有影响,但不产生对伪码宽度的展宽或压缩。

1.2 高速跳频通信系统理论基础

1.2.1 基本原理

跳频(Frequency Hopping,FH)技术,是用一定码序列进行选择的多频率频移键控。也就是说,用扩频码序列去进行频移键控调制,使载波频率不断地跳变,所以称为跳频。从时域上来看,跳频信号是一个多频率的频移键控信号;从频域上来看,跳频信号的频谱是一个在很宽频带上不等间隔随机跳变的。
与定频通信相比,跳频通信比较隐蔽也比较难以被截获。只要对方不清楚载频跳变的规律,就很难截获我方的通信内容。同时,跳频通信也有良好的抗干扰能力,分析和实践表明,即使有多达30%的通信频点被干扰,系统仍然能够在其他未被干扰的频点上进行正常通信。此外,由于跳频通信系统是瞬时窄带系统,它易于与其他的窄带通信系统兼容,也就是说,跳频电台可以与常规的窄带电台互通,有利于设备的更新。
跳频速率是指每秒的频率跳变次数,它是衡量跳频系统性能的一项重要指标。一般来说,跳速越高,抗跟踪式干扰能力越强(注意:跳速越高,抗干扰能力不一定越强)。
跳频速率通常有两种划分方法,一种是在工程上习惯把跳速分为高速、中速和低速,低速跳频在100跳/秒以下,高于1000跳/秒为高速跳频,而中速跳频则介于两者之间。另一种是以发送一个比特信息所使用的频率数为界,把跳频分为快跳频和慢跳频两种,快跳频是指发射一个比特信息使用不止一个频点,即跳频速率大于信息速率,反之则称为慢跳频。

1.2.2 物理模型

跳频通信系统的组成框图如下图所示,包括跳频频率表、频率合成器、跳频调制与解调器等主要部分,跳频系统的实现基带信号进行多路MFSK调制以后,其频率不断在多个频率集合范围之间来回跳变,实现了频谱拓展;同时,跳频通信的自身特性决定了它相比一般通信具有良好的抗干扰能力,因此,在无线通信中得到广泛应用。
在这里插入图片描述
在发送端,利用频率合成器对基带信号进行扩频调制,让伪码发生器产生伪随机序列去控制频率合成器的频率,使用多进制跳频的形式,使其从 2 k 2^k 2k个频率的集合中按伪随机方式选取频率,产生跳频信号。
在信源的接收端,首先要获取与发送端一致的频率波段,利用控制频率合成器,在不同的接收时间间隔内对接收的跳频序列进行变频,将频谱扩展的伪随机跳频波搬移回原来的频率位置,实现了解跳,再经过相干解调系统实现信源的数字基带信号的恢复。

2 方案设计

2.1 Simulink

Simulink是Matlab中的一个建立系统方框图和基于方框图级的系统仿真环境,是一个对动态系统进行建模、仿真并对仿真结果进行分析的软件包。使用Simulink可以更加方便地对系统进行可视化建模,并进行基于时间流的系统级仿真,使得仿真系统建模与工程中的方框图统一起来,并且通过可视化模块近乎“实时”地将数据输入输出显示出来,使得系统仿真工作大为方便。

2.2 高速跳频系统方案设计

2.2.1 高速跳频系统仿真结构

将跳频系统的物理模型具体化,得到下图。
在这里插入图片描述
以高斯白噪声信道+单频干扰为例,在Simulink中画出高速跳频系统仿真图,如下图所示。
在这里插入图片描述

2.2.2 高速跳频系统处理流程

在上图高速跳频系统的仿真模型中,信号处理流程如下。
(1)信号源端生成的有用信号等待传送;
(2)通过伪随机序列控制载波进行2FSK调制,再和有用信号进行相乘运算,得到跳频信号。
(3)将跳频信号送入信道传输,再加入信道噪声及干扰,本系统中使用的为高斯白噪声和单频干扰。
(4)在接收端,把接收到的信号送入相关器进行解扩,在解扩过程中要求与发送端的随机码保持同步。
(5)将信号恢复为初始序列。
(6)把发送端的原始信号和接收端恢复出的有用信号一同送进误码仪,分析比较后计算出信号的误码率。

2.2.3 高速跳频系统参数设置

信源采样时间设置为1/2000秒,0和1出现的概率均为0.5,送进M-FSK模块进行2FSK调制,频率间隔设置为2000HZ。由PN序列产生采样时间为1/10000秒的伪随机数,每5个数设置为一帧,经Frame Conversion转换成基于样本的序列,再由Bit to Integer Conersion每5个数变成0-31的整数,经32FSK调制变成32个频率间隔为50Hz的信道,即用此不同频率且随机的载波来调制信源。接收端用相同的PN序列解调,并经2FSK解调后与原始信号进行对比,得出误码率。
首先由伯努利二进制生成器生成0和1等概的二进制随机序列作为信源,伯努利二进制生成器参数设置如下图。
在这里插入图片描述Probability of a zero:伯努利二进制信号产生器输出“0”的几率为0和1之间的实数。本次设置为0.5。
Source of initial seed:原始种子来源,这里选择Parameter(参数)。
Initial seed:伯努利二进制信号产生器的随机数种子,一般计算机的随机数都是伪随机数,以一个真随机数(种子)作为初始条件,然后用一定的算法不停迭代产生随机数。当使用相同的随机数种子时,伯努利二进制信号产生器每次都会产生相同的二进制序列,不同的随机数种子产生不同的序列,但随机数种子的位数大于1时,伯努利二进制信号产生器的输出信号的位数也会大于1。本次设置为53。
Sample time:输出序列中的每个二进制符号的持续时间。本次设置为1/2000。
Samples per frame:在输出信号的一个通道中,每帧采样的数目。将每帧采样指定为正整数标量。本次设置为1。
Output data type:决定模块输出的数据类型。本次为double型。
Simulate using:模拟使用,用来选择模拟模式。本次选择Interpreted execution解释执行,模拟模型而不生成代码。这个选项会导致更快的启动时间,但会降低后续的模拟性能。
2FSK(Frequency Shift Keying)为二进制数字频率调制(二进制频移键控),用载波的频率来传送数字信息,即用所传送的数字信息控制载波的频率。2FSK信号便是符号“0”对应于载频 f1,而符号“1”对应于载频 f2(与f1不同的另一载频)的已调波形,2FSK调制器参数设置如下图。
在这里插入图片描述M-ary number:调制信号中频率的数目。本次仿真中信源为0和1的二进制序列,故将信源信号调制为两个频率的正弦波,参数设置为2。
Input type:输入类型,指示输入是由整数还是位组组成。如果将该参数设置为Bit,那么对于某个正整数K,M-ary number参数必须为2K。本次选择Bit。
Symbol set ordering:符号设置排序,确定如何将每组输入位映射到一个对应的整数。本次选择Binary。
Frequency separation (Hz):分离频率,被调制信号中连续频率之间的距离。本次设置为2000Hz。
Phase continuity:相位的连续性,确定被调制信号以连续或不连续的方式改变相位。本次选择连续改变,即Continuous。
Samples per symbol:每个符号样本块为输入中的每个整数或二进制字产生的输出样本数,即一帧中有多少个样本,本次设置为1。
Rate options:速率的选择,为块选择速率处理选项。强制单速率处理(Enforce single-rate processing),当选择这个选项时,输入和输出信号有相同的端口采样时间。该模块通过在输出端与输入端进行大小更改来实现速率更改,输出宽度等于符号数和每个符号参数值的样本数的乘积。
Output data type:输出样本类型,可以将块的输出类型指定为double或single。默认情况下,该块将该值设置为double。
PN序列生成器参数设置如下图。
在这里插入图片描述Generator polynomial:生成多项式,决定移位寄存器的反馈连接。本次选择[1 0 0 0 0 1 1]。
Initial states:初始状态,移位寄存器的初始状态向量。本次设置为[0 0 0 0 0 1]。
Sample time:输出信号的一个列的每个样本之间的时间。若误码率分析模块中的两个输入端口的速率匹配,即使信源速率和PN伪随机数化成整数后的速率一致,本次应设置为1/(2000*5)=1/10000秒。
Samples per frame:输出信号的一个信道中的每帧采样数。本次设置为5,即每五个样本为一帧。
Frame Conversion模块用来指定输出信号的采样方式。
在这里插入图片描述Sampling mode of output signal:帧转换块将输入传递给输出,并将输出采样模式设置为输出信号参数的采样模式的值,该采样模式可以是基于帧的,也可以是基于采样的。本次选择输出信号为基于采样格式的。
Bit to Integer Converter位整数转换器,将位向量映射到对应的整数向量。
在这里插入图片描述Number of bits per integer(M):M定义了每个输出整数需要映射多少位。对于无符号整数,如果M是每个整数的位数,那么块将每组M位映射为0到2M-1之间的整数。因此,输出向量的长度是1/M乘以输入向量的长度。本次将M设置为5,将输出0至31的无符号整数。
After bit packing, treat resulting integer values as:指示整数值输入范围是有符号的还是无符号的。默认设置为Unsigned。
Output data type:输出数据类型,如果输入值是无符号整数,可以从以下输出数据类型选项中选择:Inherit via internal rule,Smallest integer,Same as input,double,single,int8,uint8,int16,uint16,int32,uint32。这个参数的默认选择是通过内部规则继承的(Inherit via internal rule),保持默认选项。
Input bit order:定义输入信号的第一个比特是最高有效位(MSB)还是最低有效位(LSB)。默认为“MSB”,保持默认选项。
利用32FSK调制器,将0至31这32个整数映射为32个频率间隔为50Hz的跳频信道,其参数设置如下图。
在这里插入图片描述M-ary number:调制信号中频率的数目。参数设置为32。
Input type:输入类型,指示输入是由整数还是位组组成。如果将该参数设置为Bit,那么对于某个正整数K,M-ary number参数必须为 2 K 2^K 2K。本次选择Integer。
Frequency separation (Hz):分离频率,被调制信号中连续频率之间的距离。本次设置为50Hz。
AWGN Channel:AWGN通道块将高斯白噪声添加到真实或复杂的输入信号中。当输入信号为实数时,该块添加实数高斯噪声,产生实数输出信号。当输入信号是复数信号时,该模块添加复数高斯噪声,产生复数输出信号。这个模块从输入信号中继承它的采样时间。
在这里插入图片描述Input processing:输入处理,指定如何处理输入信号。本次选择Columns as channels (frame based),为列作为通道(基于帧)——当选择这个选项时,模块将输入的每一列作为一个单独的通道。
Initial seed:最初的种子,高斯噪声发生器的种子。这个模块中的初始种子参数初始化噪声发生器。初始种子可以是一个标量或一个向量,其长度与输入信号中的通道数量相匹配。第一次运行模拟时,该块随机选择一个初始种子。每当重新运行模拟时,该块都会重用相同的初始种子。本次设置为67。
SNR设置为xSNR,在代码中设置范围,从而计算出不同信噪比下的误码率。
Input signal power, referenced to 1 ohm (watts):输入信号功率,参考1欧姆(瓦),保持默认值。
Error Rate Calculation:出错率计算,计算输入数据的误码率或符号误码率。参数设置如下图。
在这里插入图片描述Receive delay:接收延迟,接收数据滞后于传输数据的样本数。本次仿真假设从发送到接收过程中没有延时,故设置为0。
Computation delay:计算延迟,在比较开始时块应该忽略的样本数,设置为0。
Computation mode:计算模式,选择整个帧,从掩码中选择样本,或从端口中选择样本,取决于块应该考虑全部或部分输入帧。本次选择整个帧。
Output data:输出数据,选择工作区或端口,这取决于希望将输出数据发送到哪里。本次选择输出到工作区。
Variable name:变量名,基本Matlab工作空间中输出数据向量的变量名。仅当输出数据设置为Workspace时,该字段才会出现。本次设置变量名为ErrorVec。

3 Simulink仿真系统结构图

3.1 高速跳频系统理想信道仿真图

理想信道下高速跳频系统,即将高斯信道+单频干扰中的高斯信道模块和单频干扰模块直接去掉,用连接线代替即可,其仿真图如下图所示。
在这里插入图片描述

3.2 高速跳频系统高斯信道+单频干扰仿真图

在这里插入图片描述

3.3 高速跳频系统高斯信道仿真图

在这里插入图片描述

3.4 高速跳频系统瑞利信道仿真图

瑞利信道下高速跳频系统,即将高斯信道+单频干扰中的单频干扰模块替换成为瑞利信道模块即可,其仿真图如下图所示。
在这里插入图片描述

4 仿真运行及结果分析

4.1 高速跳频通信系统结果分析

4.1.1 仿真仪器观察

初始运行条件设定:高速跳频+高斯白噪声信道+单频干扰,见下图。其中,信源速率2000bps,伪随机序列采用6级、周期为63的m序列;高斯白噪声信道信噪比为-5dB;单频干扰采用正弦型(峰值为0.5,频率为30Hz)干扰。
在这里插入图片描述
下显示了信源信号和信宿信号的波形,对比信源信号和信宿信号波形可见高速跳频通信系统满足仿真要求。
在这里插入图片描述以下四图分别显示了信源信号、PN序列信号、已扩频信号和信宿信号的频谱,对比信源信号和信宿信号的频谱可见高速跳频通信系统满足仿真要求,对比信源信号和已扩频信号的频谱可见高速跳频使信源信号频谱展宽、信号强度变小。
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

4.1.2 不同信道下性能分析

初始运行条件设定:信源速率2000bps,伪随机序列采用6级、周期为63的m序列;高斯白噪声信道信噪比范围为-18至10dB。
下图显示了在带限高斯白噪声信道、理想信道、瑞利信道+带限高斯白噪声三种干扰模式下的误码率-信噪比曲线。
在这里插入图片描述
分析:瑞利衰落信道(Rayleigh fading channel)是一种无线电信号传播环境的统计模型。这种模型假设信号通过无线信道之后,其信号幅度是随机的,即“衰落”,并且其包络服从瑞利分布。多径信道共有多条路径,各条路径具有时间选择性衰落和频率选择性衰落,且从各条路径到达接收端的信号相互独立,瑞利信道的存在会影响系统性能。
从上图中可以看出在相同信噪比的情况下,加入瑞利信道会使系统误码率降低;三种信道中理想信道性能最好,高斯信道次之,高斯信道+瑞利衰落信道性能最差。

4.1.3 不同扩频增益下性能分析

下图给出了PN码速率为8000bps、10000bps、16000bps、20000bps(跳频信道数目为16、32、256、1024;扩频增益为12.04dB、15.05dB、24.08dB、30.10dB),高斯信道信噪比为-5dB,PN码周期为63时的高速跳频通信系统在高斯信道+单频干扰下的单频干扰幅度–误码率曲线。
在这里插入图片描述
分析:在相同幅度的单频干扰下,跳频的信道数目越多,扩频后的频带带宽越宽(每个跳频信道的频率间隔保持不变,为50Hz),扩频增益越高,误码率越低,抗单频干扰性能越好。故提高跳频信道数目可提高系统抗单频干扰的能力;相同跳频信道数目下,单频干扰幅度越高,干扰越强,对跳频系统影响越大,误码率越高。

4.1.4 不同跳频速率下性能分析

下图给出了PN码速率为1000bps、2000bps、4000bps(三种情况下跳频信道数目均为32,扩频增益均为15.05dB),高斯信道信噪比为-5dB,PN码周期为63时的高速跳频通信系统在高斯信道+单频干扰下的单频干扰幅度–误码率曲线。
在这里插入图片描述分析:在相同幅度的单频干扰下,跳速越高,PN序列变化越快,使频率的驻留时间足够短,在驻留时间小于干扰机转发时间加上时间差引起的传播时延条件下,当引导的干扰信号到达接收机时,跳频接收机已在接收下一个跳频频率了,更能准确的进行信号判决,误码率更低,抗干扰能力更强。

相关文章:

MATLAB Simulink (二)高速跳频通信系统

MATLAB & Simulink (二)高速跳频通信系统 写在前面1 系统原理1.1 扩频通信系统理论基础1.1.1 基本原理1.1.2 扩频通信系统处理增益和干扰容限1.1.3 各种干扰模式下抗干扰性能 1.2 高速跳频通信系统理论基础1.2.1 基本原理1.2.2 物理模型 2 方案设计2…...

智能合约分享

智能合约练习 一、solidity初学者经典示例代码: 1.存储和检索数据: // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; // 声明 Solidity 编译器版本// 定义一个名为 SimpleStorage 的合约 contract SimpleStorage {// 声明一个公共状态变量 d…...

【MR开发】在Pico设备上接入MRTK3(二)——在Unity中配置Pico SDK

上一篇文档介绍了 【MR开发】在Pico设备上接入MRTK3(一)在Unity中导入MRTK3依赖 下面将介绍在Unity中导入Pcio SDK的具体步骤 在Unity中导入Pico SDK 当前Pico SDK版本 Unity交互SDK git仓库: https://github.com/Pico-Developer/PICO-Un…...

【Java】探秘正则表达式:深度解析与精妙运用

目录 引言 一、基本概念 1.1 元字符 1.2 预定义字符类 1.3 边界匹配符 1.4 数量标识符 1.5 捕获与非捕获分组 二、Java中的正则表达式支持 三、正则表达式的使用示例 3.1 匹配字符串 3.2 替换字符串 3.3 分割字符串 3.4 使用Pattern和Matcher 3.5 捕获组和后向…...

2.6.ReactOS系统中从内核中发起系统调用

2.6.ReactOS系统中从内核中发起系统调用 2.6.ReactOS系统中从内核中发起系统调用 文章目录 2.6.ReactOS系统中从内核中发起系统调用前言 前言 上面我们已经可以看到用户空间(R3)进行系统调用的全过程即两种方法的具体实现。 系统调用一般时从R3发起的…...

chat_gpt回答:python获取当前utc时间,将xml里时间tag里的值修改为当前时间

你可以使用 lxml 库来读取、修改 XML 文件中的某个标签的值,并将其保存为新的 XML 文件。以下是一个示例代码,展示如何获取当前的 UTC 时间,并将 XML 文件中的某个时间标签修改为当前时间。 示例代码: from lxml import etree f…...

机器学习-语言分析

机器学习 1.1人工智能概述 1.2.1 机器学习与人工智能,深度学习 深度学习->机器学习->人工智能; 人工智能:1950,实现自动下棋,人机对弈,达特茅斯会议->人工智能的起点,1956年8月。克劳…...

Oracle 常见索引扫描方式概述,哪种索引扫描最快!

一.常见的索引扫描方式 INDEX RANGE SCANINDEX FAST FULL SCANINDEX FULL SCAN(MIN/MAX)INDEX FULL SCAN 二.分别模拟使用这些索引的场景 1.INDEX RANGE SCAN create table t1 as select rownum as id, rownum/2 as id2 from dual connect by level<500000; create inde…...

字符串(3)_二进制求和_高精度加法

个人主页&#xff1a;C忠实粉丝 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 C忠实粉丝 原创 字符串(3)_二进制求和_高精度加法 收录于专栏【经典算法练习】 本专栏旨在分享学习算法的一点学习笔记&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; 目…...

《神经网络:智能时代的核心技术》

《神经网络&#xff1a;智能时代的核心技术》 一、神经网络的诞生与发展二、神经网络的结构与工作原理&#xff08;一&#xff09;神经元模型&#xff08;二&#xff09;神经网络训练过程 三、神经网络的应用领域&#xff08;一&#xff09;信息领域&#xff08;二&#xff09;…...

pdf内容三张以上转图片,使用spire.pdf.free

一、依赖 <spire.pdf.free.version>9.13.0</spire.pdf.free.version><itextpdf.version>5.5.13</itextpdf.version><dependency><groupId>e-iceblue</groupId><artifactId>spire.pdf.free</artifactId><version>$…...

游戏、软件、开源项目和资讯

游戏 标题链接【白嫖正版游戏】IT之家喜加一website 软件 标题链接【白嫖正版软件】反斗限免website 开源项目 标题链接【Luxirty Search】基于Google搜索结果&#xff0c;屏蔽内容农场Github【Video2X】图片/视频超分工具Github 新闻资讯 标题链接分享10个 Claude 3.5 …...

Acrel-1000变电站综合自动化系统及微机在化工企业中的应用方案

文&#xff1a;安科瑞郑桐 摘要&#xff1a;大型化工企业供配电具有的集约型特点&#xff0c;化工企业内35kV变电站和10kV变电所数量大、分布广&#xff0c;对于老的大多大型及中型化工企业而言&#xff0c;其变电站或变电所内高压电气设备为旧式继电保护装置&#xff0c;可靠…...

[Linux] CentOS7替换yum源为阿里云并安装gcc详细过程(附下载链接)

前言 CentOS7替换yum源为阿里云 yum是CentOS中的一种软件管理器&#xff0c;通过yum安装软件&#xff0c;可以自动解决包依赖的问题&#xff0c;免去手工安装依赖包的麻烦。 yum使用了一个中心仓库来记录和管理软件的依赖关系&#xff0c;默认为mirrorlist.centos.org&#xf…...

在Java中创建多线程的三种方式

多线程的创建和启动方式 在Java中&#xff0c;创建多线程主要有以下三种方式&#xff1a; 继承Thread类实现Runnable接口使用Callable接口与Future 下面是这三种方式的简单示例&#xff0c;以及如何在主类中启动它们。 1. 继承Thread类 class MyThread extends Thread {Ov…...

洛谷 AT_abc374_c [ABC374C] Separated Lunch 题解

题目大意 KEYENCE 总部有 N N N 个部门&#xff0c;第 i i i 个部门有 K i K_i Ki​ 个人。 现在要把所有部门分为 AB 两组&#xff0c;求这两组中人数多的那一组的人数最少为多少。 题目分析 设这些部门共有 x x x 个人&#xff0c;则较多的组的人数肯定大于等于 ⌈ …...

力扣2528.最大化城市的最小电量

力扣2528.最大化城市的最小电量 题目解析及思路 题目要求找到所有城市电量最小值的最大 电量为给城市供电的发电站数量 因此每座城市的电量可以用一段区间和表示&#xff0c;即前缀和 二分最低电量时 如果当前城市电量不够,贪心的想发电站建立的位置&#xff0c;应该是在mi…...

【zookeeper】集群配置

zookeeper 数据结构 zookeeper数据模型结构&#xff0c;就和Linux的文件系统类型&#xff0c;看起来是一颗树&#xff0c;每个节点称为一个znode.每一个Znode默认的存储1MB的数据&#xff0c;每个Znode都有唯一标识&#xff0c;可以通过命令显示节点的信息每当节点有数据变化…...

YOLO11 目标检测 | 导出ONNX模型 | ONNX模型推理

本文分享YOLO11中&#xff0c;从xxx.pt权重文件转为.onnx文件&#xff0c;然后使用.onnx文件&#xff0c;进行目标检测任务的模型推理。 用ONNX模型推理&#xff0c;便于算法到开发板或芯片的部署。 备注&#xff1a;本文是使用Python&#xff0c;编写ONNX模型推理代码的 目…...

PostgreSQL DBA月度检查列表

为了确保数据库系统能够稳定高效运行&#xff0c;DBA 需要定期对数据库进行检查和维护&#xff0c;这是一项非常具有挑战性的工作。 本文给大家推荐一个 PostgreSQL DBA 月度性能检查列表&#xff0c;遵循以下指导原则可以帮助我们实现一个高可用、高性能、低成本、可扩展的数…...

驱动开发系列12 - Linux 编译内核模块的Makefile解释

一:内核模块Makefile #这一行定义了要编译的内核模块目标文件。obj-m表示目标模块对象文件(.o文件), #并指定了两个模块源文件:helloworld-params.c 和 helloworld.c。最终会生成这 #这两个.c文件的.o对象文件。 obj-m := helloworld-params.o helloworld.o#这行定义了内核…...

用js+css实现圆环型的进度条——js+css基础积累

如果用jscss实现圆环型的进度条&#xff1a; 直接上代码&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><met…...

TDengine 与北微传感达成合作,解决传统数据库性能瓶颈

在当今物联网&#xff08;IoT&#xff09;快速发展的背景下&#xff0c;传感器技术已成为各个行业数字化转型的关键组成部分。随着设备数量的激增和数据生成速度的加快&#xff0c;如何高效地管理和分析这些数据&#xff0c;成为企业实现智能化运营的重要挑战。尤其是在惯性传感…...

通过Python爬虫获取商品销量数据,轻松掌握市场动态

为什么选择Python爬虫&#xff1f; 简洁易用&#xff1a;Python语言具有简洁的语法和丰富的库&#xff0c;使得编写爬虫变得简单高效。强大的库支持&#xff1a;Python拥有强大的爬虫框架&#xff08;如Scrapy、BeautifulSoup、Requests等&#xff09;&#xff0c;可以快速实现…...

学习虚幻C++开发日志——TSet

TSet 官方文档&#xff1a;虚幻引擎中的Set容器 | 虚幻引擎 5.5 文档 | Epic Developer Community (epicgames.com) TSet 是通过对元素求值的可覆盖函数&#xff0c;使用数据值本身作为键&#xff0c;而不是将数据值与独立的键相关联。 默认情况下&#xff0c;TSet 不支持重…...

面向对象进阶(下)(JAVA笔记第二十二期)

p.s.这是萌新自己自学总结的笔记&#xff0c;如果想学习得更透彻的话还是请去看大佬的讲解 目录 抽象方法和抽象类抽象方法定义格式抽象类定义格式抽象方法和抽象类注意事项 接口接口的定义接口中成员变量的特点接口中没有构造方法接口中成员方法的特点在接口中定义具有方法体…...

通信协议——UART

目录 基础概念串行&并行串行的优缺点 单工&双工 UART基本概念时序图思考&#xff1a;接收方如何确定01和0011 基础概念 串行&并行 串行为8车道&#xff0c;并行为1车道 串行的优缺点 通行速度快浪费资源布线复杂线与线之间存在干扰 单工&双工 单工&#xf…...

最优阵列处理技术(七)-谱加权

阵列的加权技术等价于时间序列谱分析中的加窗或锐化技术。在加权过程中,需要考虑的是如何降低旁瓣并使主波束宽度的增长最小。 首先需要明确的是,在 u u u空间下的波束方向图为 B u ( u ) =...

Java | Leetcode Java题解之第486题预测赢家

题目&#xff1a; 题解&#xff1a; class Solution {public boolean PredictTheWinner(int[] nums) {int length nums.length;int[] dp new int[length];for (int i 0; i < length; i) {dp[i] nums[i];}for (int i length - 2; i > 0; i--) {for (int j i 1; j …...

leetcode动态规划(十五)-完全背包

题目 leetcode上没有纯完全背包题目&#xff0c;可以看卡码网上的题目 完全背包 思路 有N件物品和一个最多能背重量为W的背包。第i件物品的重量是weight[i]&#xff0c;得到的价值是value[i] 。每件物品都有无限个&#xff08;也就是可以放入背包多次&#xff09;&#xff…...

本地dede网站怎么上线/关键词权重查询

一、Fabric-CA架构 官方手册给的图示 根据自己理解整理的图示 总结&#xff1a; Hyperledger Fabric CA由服务端和客户端组件组成 Fabric CA Server服务端由一个树形结构的服务器集群组成&#xff0c;有一个ROOT节点(Root Server)和诺干个不同层级的中间节点&#xff08;Int…...

义马网站开发/浙江百度推广开户

vue2 npm run dev 卡住 今天遇到了很惊奇的一件事&#xff0c;就是我在改了我的代码之后&#xff0c;发现我的页面卡住了&#xff0c;然后去看了一下发现卡在了98% 这里&#xff0c;关闭重新来过也没有用。 后来仔细检查了代码之后发现&#xff0c;是因为我自己在 import 的时…...

网站服务器的功能/百度实名认证

一、安装 使用免安装的版本进行安装&#xff1a; 1. 解压到安装目录 2. 拷贝目录下的 my-default.ini 文件为 my.ini 文件 3. 修改my.ini 文件内容为 [client]port3306default-character-setutf8#客户端字符类型&#xff0c;与服务端一致就行&#xff0c;建议utf8[mysqld]port3…...

做的公司网站风格跟样式和别人一样/优化网站界面的工具

【前置】 水流动效果透明 物体实现半透明有透明度测试和透明度混合两种方式&#xff0c;不同方式接受和投射阴影的方式有所差别。 【透明度测试阴影效果图】 正方体的阴影一部分打在了水平面上&#xff0c;一部分在白色平面上。由于透明度测试使得水平面的右半部分为完全透明…...

山东省建设厅注册中心网站/seo整站优化技术培训

2019独角兽企业重金招聘Python工程师标准>>> 3.0以前&#xff0c;android支持两种动画模式&#xff0c;tween animation,frame animation&#xff0c;在android3.0中又引入了一个新的动画系统&#xff1a;property animation&#xff0c;这三种动画模式在SDK中被称为…...

专业的家居行业网站开发/百度推广渠道户

公司配置一台4C4GB500GB的机器&#xff0c;内存小了点&#xff0c;为了加快当前项目的迭代速度&#xff0c;加装了一根8GB内存&#xff0c;反正放在家里也是闲着&#xff0c;物尽其用白。...