实验一2PSK调制数字通信系统实验题目设计一个采用2PSK调制的数字通信系统设计系统整体框图及数学模型;产生离散二进制信源,进行信道编码(汉明码),产生BPSK信号;加入信道噪声(高斯白噪声);BPSK B号相干解调,信道解码;系统性能分析(信号波形、频谱,白噪声的波形、频谱,信道编解实验基本原理数字信号的传输方式分为基带传输和带通传输,在实际应用中,大多数信道具有带通特性而不能直接传输基带信号。
为了使数字信号在带通信道中传输,必须使用数字基带信号对载波进行调制,以使信号与信道的特性相匹配。
这种用数字基带信号控制载波,把数字基带信号变换为数字带通信号的过程称为数字调制。
数字调制技术的两种方法:①利用模拟调制的方法去实现数字式调制,即把数字调制看成是模拟调制的一个特例,把数字基带信号当做模拟信号的特殊情况处理;②利用数字信号的离散取值特点通过开关键控载波,从而实现数字调制。
这种方法通常称为键控法,比如对载波的相位进行键控,便可获得相移键控(PSK)基本的调制方式。
图1相应的信号波形的示例调制原理数字调相:如果两个频率相同的载波同时开始振荡,这两个频率同时达到正最大值,同时达到零值,同时达到负最大值,它们应处于"同相"状态;如果其中一个开始得迟了一点,就可能不相同了。
如果一个达到正最大值时,另一个达到负最大值,则称为"反相"。
一般把信号振荡一次(一周)作为360度。
如果一个波比另一个波相差半个周期,我们说两个波的相位差180度,也就是反相。
当传输数字信号时,"1"码控制发0度相位,"0"码控制发180度相位。
载波的初始相位就有了移动,也就带上了信息。
相移键控是利用载波的相位变化来传递数字信息,而振幅和频率保持不变。
在2PSK中,通常用初始相位0和n分别表示二进制1”和0”。
因此,2PSK信号的时域表达式为匚爭x (t)=Acos :[叫丄+仁)其中,也r表示第n个符号的绝对相位:.(0发送©时U发送T时因此,上式可以改写为(Acosw c t 概率为P曲)仏叫mi-p图2 2PSK信号波形9(0 t _____ 1 。
比「解调原理2PSK信号的解调方法是相干解调法。
由于PSK信号本身就是利用相位传递信息的,所以在接收端必须利用信号的相位信息来解调信号。
下图2-3中给出了一种2PSK信号相干接收设备的原理框图。
图中经过带通滤波的信号在相乘器中与本地载波相乘,然后用低通滤波器滤除高频分量,在进行抽样判决。
判决器是按极性来判决的。
即正抽样值判为1 ,负抽样值判为0.2PSK信号相干解调各点时间波形如图3所示.当恢复的相干载波产生180。
倒相时,解调出的数字基带信号将与发送的数字基带信号正好是相反,解调器输出数字基带信号全部出错•1 1 1 O Q I Q O/YWW\ ’ ■ - /V\_________________ _「\AAAZ£I______ □□___________ Q图3 2PSK信号相干解调各点时间波形这种现象通常称为"倒n"现象•由于在2PSK信号的载波恢复过程中存在着180。
的相位模糊,所以2PSK信号的相干解调存在随机的"倒n"现象,从而使得2PSK方式在实际中很少采用.三仿真方真四程序源代码clear all;close all;clc;max = 15;s=randint(1,max);%长度为max的随机二进制序列Si nput=[];for n=1:le ngth(s);if s(n)==0;A=zeros(1,2000);else s(n)==1;A=o nes(1,2000);endSi nput=[S in put A];endfigure(1);subplot(211);plot(Si nput);grid onaxis([0 2000*length(s) -2 2]);title('输入信号波形');Sbia nma=e ncode (s,7,4,'hammi ng');% 汉明码编码后序列a仁[];b1=[];f=1000;t=0:2*pi/1999:2*pi;for n=1:le ngth(Sbia nm a);if Sbia nma(n)==0;B=zeros(1,2000);% 每个值2000 个点else Sbia nma(n)==1;B=o nes(1,2000);enda1=[a1 B];%s(t),码元宽度2000c=cos(2*pi*f*t);% 载波信号b1=[b1 c];%与s(t)等长的载波信号,变为矩阵形式endfigure(2);subplot(211)plot(al);grid on;axis([0 2000*le ngth(Sbia nma) -2 2]);title(' 编码后二进制信号序列'); a2=[];b2=[];for n = 1:le ngth(Sbia nm a);if Sbia nma(n) == 0;C = ones(1,2000);% 每个值2000 点d = cos(2*pi*f*t);% 载波信号else Sbia nma(n) == 1;C = on es(1,2000);d = cos(2*pi*f*t+pi);% 载波信号enda2 = [a2 C];%s(t),码元宽度2000b2 = [b2 d];% 与s(t)等长的载波信号endtiaoz = a2.*b2;%e(t) 调制figure(3);subplot(211);plot(tiaoz);grid on;axis([0 2000*le ngth(Sbia nma) -2 2]);title('2psk已调制信号');figure(2);subplot(212);plot(abs(fft(a1)));axis([0 2000*le ngth(Sbia nma) 0 400]);title('编码后二进制信号序列频谱');figure(3);subplot(212);plot(abs(fft(tiaoz)));axis([0 2000*le ngth(Sbia nma) 0 400]);title('2psk 信号频谱')% --------------- 带有高斯白噪声的信道-------------------tz=awgn(tiaoz,10);% 信号tiaoz加入白噪声,信噪比为10 figure(4); subplot(211);plot(tz);grid onaxis([0 2000*le ngth(Sbia nma) -2 2]);title('通过高斯白噪声后的信号’);figure(4);subplot(212);plot(abs(fft(tz)));axis([0 2000*le ngth(Sbia nma) 0 800]);title('加入白噪声的2psk信号频谱');% ------------------ 同步解调------------------------jiet=2*b1.*tz;% 同步解调figure(5);subplot(211);plot(jiet);grid onaxis([0 2000*le ngth(Sbia nma) -2 2]);title(' 相乘后的信号波形')subplot(212);plot(abs(fft(jiet)));axis([0 2000*le ngth(Sbia nma) 0 800]);title('相乘后的信号频率');% --------------------- 低通滤波器----------------------- fp=500;fs=700;rp=3;rs=20;fn=11025;ws=fs/(fn/2);wp=fp/(fn/2);% 计算归一化角频率[n ,w n]=buttord(wp,ws,rp,rs);% 计算阶数和截止频率[b,a]=butter(n,wn);% 计算H (z)figure(6);freqz(b,a,1000,11025);subplot(211);axis([0 40000 -100 3])title('lpf 频谱图');jt=filter(b,a,jiet);figure(7);subplot(211);grid onaxis([0 2000*le ngth(Sbia nma) -2 2 ]);title('经低通滤波器后的信号波形');figure(7);subplot(212);plot(abs(fft(jt)));axis([0 2000*le ngth(Sbia nma) 0 800]);title('经低通滤波器后的信号频率');% ---------------------- 抽样判决---------------------- for m=1:2000*le ngth(Sbia nma);if jt(m)<0;jt(m)=1;else jt(m)>0;jt(m)=0;endendfigure®subplot(211);plot(jt)grid onaxis([0 2000*le ngth(Sbia nma) -2 2]);title('经抽样判决后信号jt(t)波形') figure(8);subplot(212);plot(abs(fft(jt)));axis([0 2000*le ngth(Sbia nma) 0 800]); title('经抽样判决后的信号频谱’);grid on;n=500:2000:2000*le ngth(Sbia nma); a5=[];a5=[a5 jt(n)];s仁decode (a5,7,4,'ham min g');a6=[];for n=1:le ngth(sl);if s1( n)==0;G=zeros(1,2000);else s1( n)==1;G=o nes(1,2000);enda6=[a6 G];endfigure(1);subplot(212);plot(a6);grid onaxis([0 2000*length(s) -2 2]);title('汉明码译码后的波形')grid on% ---------------- 2psk 误码率仿真 ----------------- snrdB_min=-10;sn rdB_max=10;sn rdB=s nrdB_m in :1:s nrdB_max;Nsymbols=200;sn r=10.A(s nrdB/10);h=waitbar(O,'SNR Iteration');len_sn r=le ngth(s nrdB);for j=1:le n_snrwaitbar(j/le n_snr);sigma=sqrt(1/(2*s nr(j)));error_co un t=0;for k=1:Nsymbolsd=rou nd(ra nd(1)); % 随即数据x_d=2*d-1; %0, 1 分别转化为-1 , 1n _d=sigma*ra ndn (1); % 加噪y_d=x_d+n_d; %加噪后接收if y_d>0d_est=1;elsed_est=0;endif(d_est~=d)error_co un t=error_co un t+1;endenderrors(j)=error_co unt;endber_sim=errors/Nsymbols;ber_theor=(erfc(sqrt(s nr))).*(1-0.5*erfc(sqrt(s nr)));figure(9);semilogy(s nrdB,ber_theor,'-',s nrdB,ber_sim,'*');axis([s nrdB_min sn rdB_max 0.0001 1]);xlabel('信噪比');ylabel('误码率');title('2psk信噪比误码率关系图’);legend('理论值','实际值')、五实验结果及分析图1.随机产生的15位二进制序列波形图2.汉明码编码后的序列波形极其频谱由图2可看出输入信号经过汉明码编码后的波形与理论推出的序列相同邛抽己调制信号0 1 2 3 4 5邛抽信号频i昔0 1 2 3 4 5图3•经过2psk调制后的信号波形及其频谱图3中显示的2psk由于显示幅度限制已叠在一起,放大看可得到以理论相同的正弦波波形,在0, 1变换出有n的相位变化,并且信号的频谱图符合信号频率被载波搬移的解释。