您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 冶金工业 > GPS载波、伪码的matlab实现与分析
GPS载波、伪码的matlab实现与分析一、伪码生成及分析1、1生成M序列和Gold码序列①由于本原多项式分别为[2011]和[2411](八进制)。从而知道两M序列的生成多项式为1031XX和10832XXXX1。此部分的程序设计思路为:先为两个十位移位寄存器赋初值(全1);后利用循环,每次把寄存器的输出放到M序列储存器中,从而获得M序列。②第一个Gold码,使用第一个移位寄存器的第十级输出和第二个寄存器的第2级、第6级作为抽头的输出进行异或,异或的过程也在上部的循环中完成,每次异或的结果存于Gold寄存器。第二个Gold码的生成与第一个类似,只是改为第二个寄存器的第3级、第7级作为抽头.1、2对生成的伪随机码进行分析①利用xcorr函数对以上生成的两个M序列分别进行自相关和互相关运算,其中需要将两M序列进行双极性变换(xcorr函数的要求)。并画出自相关、互相关函数图像。②后利用FFT函数,求取以上自相关函数的功率谱,并画出图像。图像如下:图1③图像分析:由上图可验证,M序列作为近似白噪声的伪随机序列,其自相关函数近于冲击函数;互相关函数幅值近于0;功率谱密度函数是自相关函数的傅里叶变换,所以幅值近于常数1。但在图像中有较多毛刺,与理想的图像有较大差别,可能是由于xcorr函数造成。④利用xcorr函数对以上生成的两个Gold码序列分别进行自相关和互相关运算,其中需要将两Gold码序列进行双极性变换(xcorr函数的要求)。并画出自相关、互相关函数图像。图像如下:图2图像分析:由上图可验证,Gold码序列作为近似白噪声的伪随机序列,其自相关函数近于冲击函数;互相关函数幅值近于0。但在图像中有较多毛刺,与理想的图像有较大差别,可能是由于xcorr函数造成。二、生成混沌序列并得到跳频序列2、1生成混沌序列的原始序列①采用Logistic(2n1nX2-1X)映射,设定初值为0.121381和0.121380,分别迭代50次,从而获得两个混沌序列。图像如下:图3图像分析:由图可见混沌序列对初值很敏感,即使初值在小数点后第6位有微小差别,但迭代一定次数后,序列也会有很大区别。2.2跳频序列的生成①使用排序法,在上述混沌序列基础上生成调频序列:首先利用sort函数对原始序列进行降序排列,然后利用find函数查找原始序列的各元素在新序列中的位置,也即是跳频序列;结果输出到matlab的commandwindow。结果如下:使用方法一的混沌序列X1的跳频序列为:Columns1through152754537211230348443618191623Columns16through30103415258402824946392493822Columns31through45113314266423274131447433517Columns46through50201329150使用方法一的混沌序列X2的跳频序列为:Columns1through152944538211231248443617201525Columns16through308371819162210331132347433413Columns31through4530150494639239351428542276Columns46through50412674024②使用T位截断法,生成调频序列:首先设定门限Th=0;原始序列中大于Th的值置1,小于等于的置0;截断位数T设为5;利用循环,将置位后的新序列每隔5位就转换为十进制数,从而获得跳频序列。结果输出到matlab的commandwindow。结果如下:使用方法二的混沌序列X1的跳频序列为:2520152312132341726使用方法二的混沌序列X2的跳频序列为:2520152326178132713三、伪码调制、载波调制及频谱分析3.1C/A码调制①首先用randi函数随机生成4bit数据码;由于1bit数据码占20ms,每1ms有1023bit的C/A码,所以在4bit的数据码上去了81840个点。②将以上81840个点与80=4*20个周期的Gold1码进行异或。③画出原始数据码与C/A码调制后的数据码。3.2BPSK调制①由于要把4bit数据码都进行C/A码调制后再进行在波调制,数据量太大,所以只去了C/A码调制后的数据码的前10bit进行在波调制。②每bit的C/A码占1540个周期的载波(1575.42MHz),每周期载波取20个点。③利用)(CA_datat1042.15752sin3进行BPSK调制,其中t单位为ms,data_CA是C/A码调制后的数据码。④画出BPSK调制后的波形。3.3频谱分析①利用FFT函数对以上三组数据进行傅里叶变换,得到频域信息。②分别画出3个频谱图像。图像如下:图4图像分析:从以上总的图像可以看出,4bit数据码占80ms,以及BPSK调制后可以在其频谱中看见一高一低两个频点。但由于数据量很大,以及采样频率很高,难以在全局图像中进行详细分析,于是采用matlab的放大镜工具查看其局部图像。图5从以上两幅局部图像看C/A码调制后的数据码在第2到第3bit发生跳变,BPSK调制后,在1.955e-3ms,载波的确发生了相位变化。图6从以上两幅图可以看出,下图除第一点外,其他部分都体现了扩频后频谱幅值会大幅下降。而且配合图4可以看出,原数据码的频谱宽度被大幅扩宽。但图5下部第一点,我不理解。图7从此局部图像中可以看出,BPSK调制后,信息集中到了1575.42MHz。而且与图6的图像吻合。但为什么会出现方波负载波调制中的那种双瓣,我还不会解释。
本文标题:GPS载波、伪码的matlab实现与分析
链接地址:https://www.777doc.com/doc-5287062 .html