fc = 40; % kHz oseband signal
通信原理软件实验·报告
mt = sin(2*pi*fm1*t)+2*cos(2*pi*fm2*t)+4*sin(2*pi*fm3*t+pi/3); êrrier signal ct = cos(2*pi*fc*t); Kf = 5; % kHz/V
phi = 2*pi*Kf*cumsum(mt)*dt; % phase deviation
%-------------------------------------------------------------------- %%Generate FM signal
st = cos(2*pi*fc*t+phi); % FM signal Sf = t2f(st,fs); % Fourier Transform
%-------------------------------------------------------------------- %%Plot figures
figure(1)%plot Modulating Signal
subplot(1,2,1),plot(t,mt),grid on,axis([0,+8,-7,+7]), title('Modulating Signal'),xlabel('t'),ylabel('m(t)') %plot Carrier Signal
subplot(1,2,2),plot(t,ct),grid on,axis([0,2/fc,-1,1]), title('Carrier Signal'),xlabel('t'),ylabel('c(t)') figure(2)%plot Modulated Signal and its envelope plot(t,st),grid on,axis([0,180/fc,-1.5,+1.5]), title('Modulated Signal'),xlabel('t'),ylabel('s(t)') figure(3)%plot Frequency Spectrum
plot(f,abs(Sf)),axis([-90,+90,0,max(abs(Sf))]),grid on, title('Frequency Spectrum'),xlabel('f'),ylabel('S(f)')
%--------------------------------------------------------------------
六、实验结果及分析
图2.1 基带信号和载波信号波形
第8页
通信原理软件实验·报告
如图2.2为仿真FM信号波形,其形状为疏密波,最大频偏5kHz/V。
图2.2 仿真FM信号波形
如图2.3所示为仿真FM信号频谱图,由图可以读出并计算带宽为
W?78kHz-8kHz=70kHz。
由图2.1读出fm?4kHz,频偏为?fmax?6V?5kHz/V?30kHz。利用卡松公示进行理论计算为:
B?2(??1)fm?2(?fmax?fm)?2(5?6?4)?68kHz
仿真与理论计算值基本相符。验证了卡松公式的有效性。
图2.3 仿真FM信号频谱
第9页
通信原理软件实验·报告
实验三 单双极性归零码波形及功率谱仿真
一、实验题目
通过仿真测量占空比为25%、50%、75%以及100%的单双极性归零码波形及其功率谱。
二、基本原理
1、单极性归零码
当发\码时,发出正电流,但持续时间短于一个码元的时间宽度,即发出一个窄脉冲;当发\码时,仍然不发送电流。
单极性归零码在符号等概出现且互不相关的情况下,功率谱主瓣宽度为
2Rb,其频谱含有连续谱、直流分量、离散始终分量及其奇次谐波分量。
2、双极性归零码
其中\码发正的窄脉冲,\码发负的窄脉冲,两个码元的时间间隔可以大于每一个窄脉冲的宽度,取样时间是对准脉冲的中心。
双极性归零码在符号等概且不相关的情况下,功率谱仅含有连续谱,其主瓣宽度为2Rb。 3、各种码的比较
不归零码(None Return Zero Code)在传输中难以确定一位的结束和另一位的开始,需要用某种方法使发送器和接收器之间进行定时或同步。
归零码(None Return Zero Code)的脉冲较窄,根据脉冲宽度与传输频带宽度成反比的关系,因而归零码在信道上占用的频带较宽。
单极性码会积累直流分量;双极性码的直流分量大大减少,这对数据传输是很有利的。
第10页
通信原理软件实验·报告
三、仿真思路
1、产生RZ码
采用归零矩形脉冲波形的数字信号,可以用以下方法产生信号矢量s。设a是码元矢量,N是总取样点数,M是总码元数,L是每个码元内的点数,Rt是要求的占空比,dt是仿真系统的时域采样间隔,则RZ信号的产生方法是
s?zeros(1,N);for ii?1:Rt/dt,s?ii??0:M?1?*L??a;end
2、仿真功率谱密度
任意信号s(t)的功率谱的定义是
Ps(f)?lim|ST(f)|2TT??
其中ST(f)是s(t)截短后的傅氏变换,|ST(f)|2是ST(f)的能量谱,
|ST(f)2|T是sT(t)在截短时间内的功率谱。
对于仿真系统,若x是时域取样值矢量,X是对应的傅氏变换,那么x的功率谱便为P??X.*conj?X??/T。针对随机过程X(t),其平均功率谱密度定义为各样本功率谱密度的数学期望
Px(f)?3、作出仿真图
P(f) ?Kkk?11K由于需要作出的图形较多,且图形间需要对比,故采用了两种视图进行绘图,一是各个占空比的RZ码波形图和其功率谱进行横向对比,二是分别作出各占空比下的单双极性归零码波形,以便于观察。
另外,各个占空比的RZ码波形和其频谱变换后的结果使用多行的矩阵进行存储,方便最后作图,因而代码显得有些冗余。可改用定义函数,输入参数的方式给出不同占空比下的计算与绘图。
第11页
通信原理软件实验·报告
四、程序框图
对于单极性归零码:
产生M个0、1等概随机码 产生各占空比单极性归零码波形 单极性归零码的功率谱密度 作图 对于双极性归零码:
产生M个-1、1等概随机码 产生各占空比双极性归零码波形 双极性归零码的功率谱密度 作图 五、仿真源代码
%%This is exp11 of communication matlab experiment. %Simulate digital coding wave and its power spectrum %duty ratio 25%,50%,75%,100% %both bipolar and unipolar RZ code
%Prepare workspace clear all close all
%-------------------------------------------------------------------- %common definitions ratio = [0.25,0.5,0.75,1];
L = 128; % sample points every bit interval N = 2^14; % total sample points M = N/L; % total bits Rs = 10; %kbit/s
Ts = 1/Rs; %bits' time interval T = M*Ts; % period fs = N/T; % sampling rate
t = -T/2:1/fs:T/2-1/fs; % time domain
df = 1/T; % minimum frequency-domain resolution f = -fs/2:df:fs/2-df; %frequecy domain
%-------------------------------------------------------------------- %%generate unipolar RZ code %prelocate space for speed ratiolen = length(ratio);
第12页