基于GNURadio的伪卫星信号软件发射机设计

2021-06-17 07:41郭静武晓明通讯作者武华刘洋张波
电子制作 2021年11期
关键词:基带载波发射机

郭静,武晓明(通讯作者),武华,刘洋,2,张波

(1.山东交通学院信息科学与电气工程学院,山东济南,250357;2.中国民航管理干部学院 民航通用航空运行重点实验室,北京,100102;3.东南大学仪器科学与工程学院,江苏南京,210096)

0 引言

伪卫星(PL,Pseuolite)是用于测试验证和增强GNSS定位性能的无线电导航定位设备,能发射出类GNSS无线电导航信号,通常安装于大型室内环境、地下空间等GNSS卫星导航信号遮蔽的区域,提供实时定位导航服务。伪卫星信号发射机一般有以下几种实现方式:(1)大多数实验室中研究学者通常采用多射频通道GNSS信号模拟器进行替代[1,2],其成本过高,信号体制改进比较困难[3];(2)利用FPGA、SoC等硬件平台进行定制化实现,其技术实现门槛较高,硬件实现繁琐[4-7];(3)利用软件无线电平台实现伪卫星信号的收发[8]。

GNU Radio是一个开源的软件无线电开发工具包,USRP是功能强大的通用软件无线电平台。本文采用的GNURadio和USRP软件无线电平台实现了伪卫星信号的产生与发射,利用GNURadio框架实现伪卫星信号的模拟与产生,同时调用USRP射频前端实现了伪卫星信号的发射[9]。经实验测试验证,该发射机发出的信号可作为伪卫星定位系统使用。

1 伪卫星信号模型

伪卫星导航信号从结构上划分,通常分为数据码、扩频码和信号载波。信号载波用来调制伪码和数据码,然后经射频前端发射出去;扩频码是实现卫星信号码分多址的基础,其码间自相关与互相关特性直接决定信号的跟踪与捕获能力。扩频码是一组固定序列码,只能作为区分伪卫星信号编号的标识,而不能携带其他信息;数据码用来携带伪卫星自身导航信息的,伪卫星的数据码指的是伪卫星的导航电文数据。

本文设计的伪卫星向用户发送的信号为GPS-L1信号,图1完整的展示了伪卫星信号的具体调制过程。其第i颗卫星信号的发射信号模型的数学模型为[11]:

其中,Ac为载波L1的振幅;Ci(t)、Di(t)分别为第i颗卫星的C/A码以及D码;ω1分别为L1频段的角频率;为L1的初始相位值。

图1 伪卫星信号调制过程

图2 伪卫星信号发射机原理图

2 伪卫星软件发射机设计

■2.1 伪卫星信号发射机设计原理

由于伪卫星信号属于类GPS信号,可以参考GPS L1频段信号的发射机结构来设计伪卫星信号发射机。伪卫星信号发射机主要包括伪卫星基带信号产生单元、伪卫星信号发射单元两个部分[12]。伪卫星基带信号产生单元主要功能是产生伪卫星中频及基带信号,包括D码生成模块、C/A码生成模块、调制模块等;伪卫星信号发射单元主要利用USRP实现伪卫星信号的上变频发射功能。伪卫星信号发射机原理如图2所示。

■2.2 基于GNURadio的伪卫星基带信号生成软件设计

GNURadio是一个通用的软件无线电设计工具,提供了用于设计、模拟和部署真实高效的无线电系统的通用流程框架和实现方法,在无线电系统设计领域内已经被广泛应用。本文设计的伪卫星信号发射系统采用GNURadio+USRP-B210软件无线电平台来实现。其中PC软件部分主要利用GNURadio软件框架实现了伪卫星基带信号生成功能软件,如图3所示;然后再利用USRP硬件射频前端进行上变频和信号发射。

伪卫星基带信号生成软件主要包括载波生成模块、C/A码生成模块、数据码生成模块、扩频码生成模块、BPSK调制模块、UHDSink模块等。整个软件的采样频率设定为16.369MHz,中频载波频率为7.161MHz,伪卫星L1信号频率为1575.42MHz,信号带宽设定为2MHz,增益设定为可调增益,默认设定为50dB。如图所示,该伪卫星基带信号生成软件可以同时产生两路伪卫星信号PL1和PL2,分别设定PRN为1号卫星和2号卫星,以PL1为例其工作流程如下:

图3 伪卫星基带信号生成单元GRC流程图

S0:设定变量,以下介绍的整个流程图的数据流的采样频率为16.369MHz(sample_rate)。

S1:导航电文模块(PL_NavData)根据星历文件产生50 bit/s的导航电文数据流;

S2:由C/A码生成模块(Cacode)产生1.023Mcps的C/A码数据流,该C/A码是识别卫星号的伪随机数据码;

S3:中频载波生成模块(Carrierif)生成7.161MHz的两路同频但相位相差90度的同向(I)路和正交(Q)路中频载波数据流;

S4:扩频码生成模块(Modadd)实现了模二加运算,将输入的导航电文数据流与C/A码数据流进行模二加运算生成扩频码数据流;

S5:BPSK调制模块(Multiply)实现了乘法运算,将S4产生的扩频码数据流与S3产生的I路数据进行乘法运算,实现BPSK调制的目的,产生中频调制I路信号数据流;

S6:IQ数据生成模块(FloatTo Complex),将S5产生的中频调制信号I路信号与S3产生的中频载波Q路载波信号进行合并,组成复数信号。

S7:UHDSink模块,将S6中产生的中频IQ数据送入到UHD Sink模块中,调用USRP进行上变频到L1频段,然后发射到天线进行信号发射。

3 信号验证与测试

伪卫星发射机的测试包括了模块的功能测试和整体效果的测试。模块功能测试测试基带信号波形是否正确;利用频谱分析仪测试产生信号的频谱是否符合要求,并利用接收机测试信号的接收效果。

■3.1 伪卫星基带信号波形仿真测试

伪卫星基带信号都是由GNURadio软件产生的,因此在GNURadio中添加一些信号测试模块即可对各个模块产生的波形进行仿真测试。由图4所示伪卫星信号扩频码与载波的BPSK调制过程波形图,其中蓝色虚线为组合扩频码序列,红色曲线表示经过BPSK调制后的已调信号。由波形效果可以看出扩频码与载波进行BPSK调制后发生相位翻转的现象。

■3.2 伪卫星射频信号测试

针对由USRP发出的伪卫星射频信号,利用频谱分析仪对伪卫星产生的信号进行测试,如图5所示。由伪卫星软件发射机产生的伪卫星信号能快速被频谱分析仪捕获到,信号频谱分布在中心频率1.57542GHz左右,符合GPS-L1伪卫星信号的分布规律。

图4 BPSK调制过程波形图

图5 频谱分析仪测量伪卫星信号的频谱图

■3.3 接收机接收效果验证

将伪卫星软件发射机发出的信号接入到ubloxZED-F9P接收机中,利用接收机对信号进行接收测试,由u-center软件观测测试结果如图6所示,可见伪卫星产生的信号可以被接收机接收并识别,观测量数据也可以有效得到。

图6 接收机接收伪卫星信号测试结果

4 结论

本文采用GNU Radio和USRP软件无线电平台实现了伪卫星信号的产生与发射,利用GNU Radio框架实现伪卫星信号的模拟与产生,同时调用USRP射频前端实现了伪卫星信号的发射。经实验测试验证,该发射机发出的信号可作为伪卫星定位系统使用,有效降低伪卫星算法验证和硬件实验环境部署过程难度。

猜你喜欢
基带载波发射机
大功率微波部件多载波无源互调分析与实验验证
苹果推出自研基带芯片要过几道坎?
Intel 5G大动作!PC瞬间飞起
苹果10亿美元为5G买“芯”
浅析全固态中波发射机的防雷措施
低载波比下三电平NPC逆变器同步SVPWM算法
DAM-10kW中波广播发射机原理与故障排除
DAM中波发射机日常维护研究
中国移动LTE FDD&TDD载波聚合部署建议
数字电视发射机的特点及与模拟电视发射机的比较