一种基于DDS技术的拟正弦变化的多普勒信号生成方法
文献发布时间:2024-04-18 19:53:33
技术领域
本发明属于通信领域,具体涉及一种基于DDS技术的拟正弦变化的多普勒信号生成方法。
背景技术
多普勒效应是指物体辐射的波长因为光源和观测者的相对运动而产生变化,在运动的波源前面,波被压缩,波长变得较短,频率变得较高;在运动的波源后面,产生相反的效应,波长变得较长,频率变得较低,波源的速度越高,所产生的效应越大。
无线通信中,多普勒效应会造成载波频率的频移和码速率的改变,例如在卫星通信中,卫星的快速移动会导致地面接收信号产生大的频偏和一定的码偏,并且随着通信系统载波频率的提高,多普勒效应的影响会更大。因此在通信系统的接收端必须考虑对多普勒频偏和码偏的处理,为了测试和评估接收设备对多普勒频偏和码偏的处理能力,需要信号模拟设备能够模拟出信道带来的多普勒效应,这对降低研制成本、提高性能指标及测试验证都有积极的作用。
信源对多普勒效应的模拟,一般都是通过DDS(Direct Digital Synthesizer,直接数字式频率合成器)的chirp模式实现,通过一次配置,实现频率的不断跳变,以实现多普勒频偏。但这种方法模拟的多普勒频率变化率固定,不符合真实情况下的多普勒频率变化情况,且在多普勒范围最大值处出现一个明显的拐点,如图1所示,该处的变化率远远大于接收设备所能支持的多普勒频率变化率,导致接收设备失锁,同时还未考虑多普勒码偏的影响。
如图2所示,真实情况下的多普勒频率Fd=2*v*cos(θ)/λ,其中v为物体运动速度,θ为物体运动方向与物体和接收站连线的夹角,λ为波长,随着物体的运动θ在不断变化,可以看出,多普勒频率的变化遵循正弦变化。
发明内容
本发明的目的是提供一种基于DDS技术的拟正弦变化的多普勒信号生成方法,能够模拟出真实情况下的多普勒频率变化情况,还考虑了多普勒码偏的影响,使得模拟出的多普勒信号更贴近真实情况。
本发明采取的技术方案是一种基于DDS技术的拟正弦变化的多普勒信号生成方法,包括以下步骤:
S1、通过给定的多普勒频率范围和多普勒频率变化率,计算多普勒频率从最大值变化到0的时间;
S2、对计算出的时间进行等间隔划分,计算每个时间段的多普勒频率变化率;
S3、根据每个时间段的多普勒频率变化率和每段时间,计算每个时间段多普勒频率增量;
S4、根据每个时间段多普勒频率增量计算每个时间段的多普勒频率,再根据每个时间段的多普勒频率计算码多普勒;
S5、将计算结果转化为DDS芯片所能识别的参数,通过FPGA芯片对DDS芯片进行配置,产生所需要的时钟,最终得到拟正弦变化的多普勒信号。
进一步地,所述S1中,通过给定的多普勒频率范围和多普勒频率变化率,计算多普勒频率从最大值变化到0的时间,具体为:
假设给定的多普勒频率最大值为A,多普勒频率变化率为k,多普勒频率为:
y=A*cos(w*t)
其中,w为角频率,t为信号周期;
对y=A*cos(w*t)求导,可得多普勒频率变化率:
delta=A*w*sin(w*t)
当w*t=pi/2时,多普勒频率为0,多普勒频率变化率最大,即delta=A*w=k,可推导出w=k/A,则此时的多普勒频率变化率为:
delta=k*sin(k*t/A)
则多普勒频率从最大值变化到0所需时间t为:
t=pi/(2*w)=pi*A/(2*k)。
进一步地,所述S2中,对计算出的时间进行等间隔划分,计算每个时间段的多普勒频率变化率,具体为:
将多普勒频率从最大值变化到0所需时间t等间隔分成M段,M可配,可根据DDS芯片每秒所能配置的最大次数决定,每个时间段的持续时间为△t=t/M;
通过delta=k*sin(k*t/A)可计算出每个时间段的多普勒频率变化率:
delta_m=k*sin(k*(m*△t+△t/2)/A)
其中,A为多普勒频率最大值,k为多普勒频率变化率,m=1,2…,N-1,当m=0时,delta_0=0。
进一步地,除第一个时间段外,其余每个时间段的斜率取分段中间位置的斜率。
进一步地,所述S3中,根据每个时间段的多普勒频率变化率和每段时间,计算每个时间段多普勒频率增量,具体为:
计算出每个时间段的多普勒频率变化率delta_m和每个时间段的持续时间△t后,可获得每个时间段多普勒频率增量△f_m:
△f_m=△t*delta_m
其中,m=0,1,2…M,M为时间段数。
进一步地,所述S4中,根据每个时间段多普勒频率增量计算每个时间段的多普勒频率,再根据每个时间段的多普勒频率计算码多普勒,具体为:
根据每个时间段多普勒频率增量△f_m可计算出每个时间段的多普勒频率:
Fd=A-sum(△f_m)
其中,A为多普勒频率最大值,m=0,1,2...M,M为时间段数;
根据每个时间段的多普勒频率可计算出码多普勒:
Fco=sr*Fd/RF
其中,Fco为码多普勒,sr为码速率,Fd为每个时间段的多普勒频率,RF为射频频率。
进一步地,所述S5中,将计算结果转化为DDS芯片所能识别的参数,通过FPGA芯片对DDS芯片进行配置,具体为:
将每个时间段的多普勒频率Fd加上信号频率后的值转化为频率控制字K,通过FPGA芯片的SPI接口对DDS2芯片进行配置;
将码多普勒Fco加上码速率sr后的值转化为频率控制字K,通过FPGA芯片的SPI接口对DDS1芯片进行配置。
进一步地,频率控制字K的计算公式如下所示:
K=(Output Frequency*2N)/SYSCLK
其中,计算得到的频率控制字K是一个十进制数,Output Frequency为输出频率以赫兹表示,N是DDS芯片的相位累加器分辨率,SYSCLK为系统时钟。
进一步地,将频率控制字K四舍五入为正整数并转换为二进制后,通过FPGA芯片的SPI接口对DDS2芯片和DDS1芯片的频率调谐字寄存器每间隔△t时间配置一次。
本发明的有益效果在于:
本发明方法模拟出的多普勒效应,其多普勒频率呈正弦变化,同时还考虑了多普勒码偏的影响,使得模拟出的多普勒信号更贴近真实情况,提升了测试和评估接收设备对多普勒频偏和码偏的处理能力,对降低研制成本、提高性能指标及测试验证有积极的作用。
附图说明
图1为传统方法模拟的多普勒频率变化情况示意图;
图2为真实情况下的多普勒频率变化情况示意图;
图3为本发明基于DDS技术的拟正弦变化的多普勒信号生成方法流程图;
图4为本发明基于DDS技术的多普勒频偏和码偏实现框图;
图5为本发明物体由远及近再到远的多普勒频率变化模拟仿真结果示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚、明白,下面将结合附图对本发明中的技术方案进行清楚、完整地描述。
如图3所示,本发明的基于DDS技术的拟正弦变化的多普勒信号生成方法,包括以下步骤:
DDS芯片无法完全模拟多普勒频率的正弦变化,只能通过分段的方式实现。
S1、通过给定的多普勒频率范围和多普勒频率变化率,计算多普勒频率从最大值变化到0的时间;
假设给定的多普勒频率最大值为A,多普勒频率变化率为k,多普勒频率为:
y=A*cos(w*t) 公式(1)
其中,w为角频率,t为信号周期。
对y=A*cos(w*t)求导,可得多普勒频率变化率:
delta=A*w*sin(w*t) 公式(2)
最大变化率,即过0点的变化率,当w*t=pi/2时,多普勒频率为0,多普勒频率变化率最大,即delta=A*w=k,可推导出w=k/A,则此时的多普勒频率变化率为:
delta=k*sin(k*t/A) 公式(3)
由于w*t=pi/2,则多普勒频率从最大值变化到0所需时间t为:
t=pi/(2*w)=pi*A/(2*k) 公式(4)
S2、对计算出的时间进行等间隔划分,计算每个时间段的多普勒频率变化率;
将多普勒频率从最大值变化到0所需时间t等间隔分成M段(M可配,可根据DDS芯片每秒所能配置的最大次数决定),每个时间段的持续时间为△t=t/M。
通过公式(3)可计算出每个时间段的多普勒频率变化率:
delta_m=k*sin(k*(m*△t+△t/2)/A) 公式(5)
其中,m=1,2…,N-1,当m=0时,delta_0=0,A为多普勒频率最大值,k为多普勒频率变化率。
除第一个时间段外,其余每个时间段的斜率取分段中间位置的斜率。
S3、根据每个时间段的多普勒频率变化率和每段时间,计算每个时间段多普勒频率增量;
计算出每个时间段的多普勒频率变化率delta_m和每个时间段的持续时间△t后,可获得每个时间段多普勒频率增量△f_m:
△f_m=△t*delta_m 公式(6)
其中,m=0,1,2...M,M为时间段数。
S4、根据每个时间段多普勒频率增量计算每个时间段的多普勒频率,再根据每个时间段的多普勒频率计算码多普勒;
根据每个时间段多普勒频率增量△f_m可计算出每个时间段的多普勒频率:
Fd=A-sum(△f_m) 公式(7)
其中,A为多普勒频率最大值,m=0,1,2...M,M为时间段数。
根据每个时间段的多普勒频率可计算出码多普勒:
Fco=sr*Fd/RF 公式(8)
其中,Fco为码多普勒,sr为码速率,Fd为每个时间段的多普勒频率,RF为射频频率。
S5、将计算结果转化为DDS芯片所能识别的参数,通过FPGA芯片对DDS芯片进行配置,产生所需要的时钟,最终得到拟正弦变化的多普勒信号;
如图4所示,在本发明中,为了实现多普勒频偏和码偏,使用两个DDS芯片各产生一路参考时钟,其中DDS1产生的时钟作为基带参考时钟,用于控制FPGA芯片基带信号的生成速率;DDS2产生的时钟作为调制芯片的载波频率,用于控制输出信号频率。在DDS1时钟的控制下FPGA芯片输出基带数据,通过DAC芯片输出基带模拟信号,调制芯片将基带信号和载波信号(DDS2提供)进行混频完成调制功能,最终生成所需信号。
DDS芯片的输出频率为fout=(fclk*K)/2
将每个时间段的多普勒频率Fd加上信号频率后的值转化为频率控制字K,频率控制字K的计算公式如下所示:
K=(Output Frequency*2N)/SYSCLK 公式(9)
其中,计算得到的频率控制字K是一个十进制数,Output Frequency为输出频率以赫兹表示,N是DDS芯片的相位累加器分辨率,SYSCLK为系统时钟。
将频率控制字K四舍五入为正整数并转换为二进制后通过FPGA芯片的SPI接口对DDS2芯片的频率调谐字寄存器每间隔△t时间配置一次。
将码多普勒Fco加上码速率sr后的值转化为频率控制字K,通过频率控制字K控制DDS1芯片的时钟输出,进而控制码速率sr的变化,频率控制字K的计算过程以及芯片配置过程与多普勒频率一致。
每个配置时间间隔到达时,FPGA芯片通过SPI总线将计算出的两个频率控制字K分别写入DDS2芯片以及DDS1芯片的频率控制字寄存器中,通过改变两个DDS芯片的输出频率影响信号输出频率及基带信号的码速率sr,从而实现多普勒频偏和码偏。
以下通过一仿真实验验证本发明方法的准确性和可靠性。
仿真参数:多普勒频率最大值A=1000KHz,多普勒频率变化率k=16KHz,码速率sr=1024,时间段数M=100000,中频基准频率IF=70MHz,上变频后输出的射频频率RF=20GHz等。
DDS1和DDS2使用同一款芯片,以AD9854为例(具体选型以实际项目为准),其相位累加器分辨率N为48位,SYSCLK使用300MHz,具体的仿真参数和仿真结果,请参照表1:
表1仿真参数信息表
/>
参照表1、图5,结果显示,多普勒频率呈正弦变化,时间段越多,越接近正弦,同时通过DDS1调整码速率,在信号中引入码多普勒,更贴近真实情况。
本次仿真实验结果表明,本发明方法的基于DDS技术的拟正弦变化的多普勒信号生成方法准确性高且可靠性强。
本说明书中未作详细描述的内容均属于本领域技术人员公知技术。