MATLAB仿真实例

MATLAB仿真实例
MATLAB仿真实例

一、实验目的 (1)

二、实验题目 (1)

三、实验内容 (1)

3.1傅里叶变换与傅里叶反变换 (1)

3.2题目一:正弦信号波形及频谱 (2)

3.2.1仿真原理及思路 (2)

3.2.2程序流程图 (3)

3.2.3仿真程序及运行结果 (3)

3.2.4实验结果分析 (5)

3.3题目二:单极性归零(RZ)波形及其功率谱 (5)

3.3.1仿真原理及思路 (5)

3.3.2程序流程图 (6)

3.3.3仿真程序及运行结果 (6)

3.3.4实验结果分析 (8)

3.4题目三:升余弦滚降波形的眼图及其功率谱 (8)

3.4.1仿真原理及思路 (8)

3.4.2程序流程图 (8)

3.4.3仿真程序及运行结果 (8)

3.4.4实验结果分析: (10)

3.5题目四:完成PCM编码及解码的仿真 (11)

3.5.1仿真原理及思路 (11)

3.5.2程序流程图 (12)

3.5.3仿真程序及运行结果 (12)

3.5.4实验结果分析 (15)

3.6附加题一:最佳基带系统的Pe~Eb\No曲线,升余弦滚降系数a=0.5,取

样值的偏差是Ts/4 (16)

3.6.1仿真原理及思路 (16)

3.6.2程序流程图 (16)

3.6.3仿真程序及运行结果 (16)

3.6.4实验结果分析 (18)

3.7附加题二:试作出Pe~Eb/No曲线。升余弦滚降系数a=0.5,取样时间无

偏差,但信道是多径信道,C(f)=|1-0.5-j2 ft|,t=T s/2 (18)

3.7.1仿真原理及思路 (18)

3.7.2程序流程图 (19)

3.7.3仿真程序及运行结果 (19)

3.7.4实验结果分析 (21)

四、实验心得 (21)

一、 实验目的

? 学会MATLAB 软件的最基本运用。MATLAB 是一种很实用的数学软件,它易学易用。

MATLAB 对于许多的通信仿真类问题来说是很合适的。

? 了解计算机仿真的基本原理及方法,知道怎样通过仿真的方法去研究通信问题。 ? 加深对通信原理课程有关内容的理解。

二、 实验题目

◆ 必做题:

1) 正弦信号波形及频谱;

2) 单极性归零(RZ )波形及其功率谱,占空比为50%;

3) 升余弦滚降波形的眼图及其功率谱。滚降系数为0.5。发送码元取值为0、2。

◆ 选做题:

完成PCM 编码及解码的仿真。 ◆ 附加题:

1) 最佳基带系统的Pe~Eb\No 曲线,升余弦滚降系数a=0.5,取样值的偏差是Ts/4;

2) 试作出Pe ~Eb/No 曲线。升余弦滚降系数a =0.5,取样时间无偏差,但信道是多径信

道,-j2 ft C(f)=|1-0.5|,t=Ts/2。

三、 实验内容

3.1 傅里叶变换与傅里叶反变换

对于确定信号()f t ,其傅里叶变换为:

2()()j ft F f f t e dt π∞

--∞

=?

()F f 傅里叶反变换为:

2()()j ft f t F f e df π∞

-∞

=?

在通信原理仿真中,傅里叶变换与傅里叶反变换会经常用到,我们可以利用MATLAB 的快速傅里叶变换函数fft 与快速傅里叶反变换函数ifft 编写傅里叶变换子程序与傅里叶反变换子程序。其程序代码如下:

傅里叶变换子程序:

%傅里叶变换子程序 function X=t2f(x)

global dt df N t f T %X=t2f(x)

%x 为时域的取样值矢量 %X 为x 的傅氏变换

%X 与x 长度相同,并为2的整幂。

%本函数需要一个全局变量dt(时域取样间隔) H=fft(x);

X=[H(N/2+1:N),H(1:N/2)].*dt; end

傅里叶反变换子程序: %傅里叶反变换子程序 function x=f2t(X)

global dt df t f T N %x=f2t(X)

%x 为时域的取样值矢量 %X 为x 的傅氏变换

%X 与x 长度相同并为2的整幂

%本函数需要一个全局变量dt(时域取样间隔) X=[X(N/2+1:N),X(1:N/2)]; x=ifft(X)/dt;

%x=[tmp(N/2+1:N),tmp(1:N/2)]; end

3.2 题目一:正弦信号波形及频谱 3.2.1

仿真原理及思路

一般来说,任意信号s t ()是定义在时间区间()-∞+∞,上的连续函数,但所有计算机的CPU 都只能按指令周期离散运行,同时计算机也不能处理()-∞+∞,这样一个时间段。为此

我们把s t ()按区间-????

?

?T 2, T 2截短为s t T (),再对s t T ()按时间间隔?t 均匀取样得到T t ?个样

值。仿真时我们用这个样值集合来表示信号s t ()。显然?t 反映了仿真系统对信号波形的分辨率,?t 越小则仿真的精确度越高。据通信原理所学,信号被取样以后的频谱是频率的周

期函数,其重复周期是1?t

。如果信号的最高频率为f H ,那么必须有f t H ≤1

2?才能保证不

发生混叠失真。我们称B t s =1

2?为仿真系统的系统带宽。如果我们的仿真程序中设定的采

样间隔是?t ,那么我们不能用此仿真程序来研究带宽大于B s 的信号或系统。

此外,信号s t ()的频谱()S f 通常来说也是定义在频率区间()-∞+∞,上的连续函数,所以仿真频域特性时,我们也必须把()S f 截短并取样。考虑到系统带宽是B s ,我们把频域的截短

区间设计为[]-B B s s , ,然后再按间隔?f 均匀取样得到

2B f

s

?个样值。?f 反映了仿真系统在频域上的分辨率。频域离散的信号对应到时域是一个周期信号,其周期为1

?f

。类似前面的

分析,如果我们的仿真程序中设定的采样间隔是?f ,那么我们就不能仿真截短时间超过

1

?f

的信号。考虑到时域截短时间为T ,我们把频域的取样间隔设计为?f T

=1

。 这样一来,

时域的总取样点数及频域的总取样点数都相等,为N t f

=1

??。要提高仿真的精度,就必须

降低时域取样间隔?t 及频域取样间隔?f ,也就是要加大总取样点数N 。这说明仿真的精度与仿真系统的运算量直接有关。

为了处理上的方便,我们今后规定采样点数N 为2的整幂。首先,设定正弦信号的采样点数为2k ,时域采样间隔为0.01dt =,频域采样间隔为1/(*)df N dt =,所以定义一个时域t 的N 维矢量(/2,/2,)t linspace T T N =-,定义一个频域f 的N 维矢量(,,)f linspace Bs Bs N =-;其次,定义一个余弦函数0cos(2/3***)s pi f t =,其中01f =,并对其进行傅里叶变换及傅

里叶反变换;最后,画出该余弦函数波形图与频谱图。 3.2.2

程序流程图

3.2.3

仿真程序及运行结果

仿真程序:

%实验一:正弦信号波形及其频谱 close all clear all

global dt df N t f T %全局变量 N=2^14; %采样点数 dt=0.01; %时域采样间隔 df=1/(N*dt);%频域采样间隔 T=N*dt; %截短时间 Bs=N*df/2; %系统带宽 t=linspace(-T/2,T/2,N); f=linspace(-Bs,Bs,N);

产生余弦信号及频谱流程图

s=sin(2/3*pi*t);

S=t2f(s);

a=f2t(S);

figure(1)

set(1,'Position',[10,350,600,200])%设定窗口位置及大小figure(2)

set(2,'Position',[10,50,600,200])%设定窗口位置及大小figure(1)

as=abs(S); %求模

plot(f,as)

axis([-2,+2, 1.1*min(as), 1.1*max(as)])

xlabel('f (MHz)')

ylabel('Ps(f)')

grid on

figure(2)

plot(t,a)

axis([-5,5,1.1*min(a),1.1*max(a)]);

xlabel('t')

ylabel('s(t)')

grid on

程序运行结果:

取样点数=2^k,k=14,得到如下波形:

3.2.4

实验结果分析

由上图可以看出,余弦函数的频谱为两个脉冲信号的叠加,两个脉冲信号分别在13f =+和1

3f =-处。

3.3 题目二:单极性归零(RZ )波形及其功率谱 3.3.1

仿真原理及思路

功率信号f (t)的平均功率:()T

f T

T

T P P(f )df lim

f t dt

+-∞

-→∞

==??

2

1

2。该信号的双边功率谱密

度P(f )为:T T F (f )P(f )lim T

→∞

=2

其中S f T ()是s t ()截短后的傅氏变换,S f T ()2

是s t T ()的能

量谱,

()

S f T

T 2

是s t T ()在截短时间内的功率谱。对于仿真系统,若x 是时域取样值矢量,X 是对应的傅氏变换,那么x 的功率谱便为矢量P=(X.*conj(X))/T 。

对于采用归零(RZ )及不归零(NRZ )矩形脉冲波形的数字信号,可以用简单的方法信号矢量s 。设a 是码元矢量,N 是总取样点数,M 是总码元数,L 是每个码元内的点数,那么NRZ 信号可这样获得:

s=zeros(1,N);

for ii=1:L, s(ii+[0:M-1]*L)=a; end

对于,若Rt 是要求的占空比,dt 是仿真系统的时域采样间隔,则RZ 信号的产生方法是:

s=zeros(1,N);

for ii=1:Rt/dt, s(ii+[0:M-1]*L)=a; end 首先,利用rand 函数产生一个尺寸为1*M 的矩阵,其元素按均匀分布随机取值于区间[0,1],并用round 函数对其四舍五入,得到一个随机产生的0,1序列;其次,利用for 循环产生码元长度为L 点,码元为0,1,且占空比为50%的单极性归零码,并画出其波形图;最后,计算该RZ 的功率谱密度,并画出其波形。

3.3.2程序流程图

3.3.3仿真程序及运行结果

仿真程序:

%实验二:画出单极性归零码及其功率谱

close all

clear all

global dt t df N

N=2^14; %采样点数

L=64; %每码元的采样点数

M=N/L; %码元数

Rb=2; %码速率为2Mb/s

Ts=1/Rb; %码元间隔

dt=Ts/L; %时域采样间隔

Rt=0.5; %占空比

df=1/(N*dt); %频域采样间隔

T=N*dt; %截短时间

Bs=N*df/2; %系统带宽

t=linspace(-T/2,T/2,N); %时域横坐标

f=linspace(-Bs,Bs,N); %频域横坐标

EP=zeros(1,N);

for jj=1:100

a=round(rand(1,M)); %产生M个取值0,1等概的随机码s=zeros(1,N); %产生一个N个元素的零序列

for ii=1:Rt*Ts/dt

s(ii+[0:M-1]*L)=a;%产生单极性归零码

end

Q=t2f(s); %付氏变换

P=Q.*conj(Q)/T; %P为单极性归零码的功率

EP=(EP*(jj-1)+P)/jj; %累计平均

end

aa=30+10*log10(EP+eps);%加eps以避免除以零

figure(1)

set(1,'Position',[10,350,600,200])%设定窗口位置及大小figure(2)

set(2,'Position',[10,50,600,200])%设定窗口位置及大小figure(1)

plot(f,aa,'g')

xlabel('f(MHZ)')

ylabel('Ps(f)')

axis([-15,+15, 1.1*min(aa), 1.1*max(aa)])

grid on

figure(2)

plot(t,s,'r')

xlabel('t(ms)')

ylabel('s(t)(V)')

axis([-10,+10,1.1*min(s),1.1*max(s)])

grid on

程序结果:

输入取样点数=2^k,k=14,得到如下波形:

3.3.4 实验结果分析

由上图结果可以看单极性归零码序列的功率谱密度不仅含有离散的直流分量及连续谱,而且还包含离散的时钟分量和奇次谐波分量,功率谱主瓣宽度为码元速率2Rb Mb/s 。根据

数字PAM 信号功率谱密度公式2

222

2()()()()a

a

S T T

m s s

s s m m m P f G f G f T T T T σδ∞

=-∞

=+-∑得到:功率谱分为两个部分,第一部分是连续谱,形状取决于G T (f);第二部分是离散线谱,相邻线谱频率

间隔为1/Ts 。若序列的均值ma 为零,则第二部分为零,即离散线谱消失,单极性码的均值不为零,故都存在直流分量。

3.4 题目三:升余弦滚降波形的眼图及其功率谱 3.

4.1

仿真原理及思路

眼图是数字信号在示波器上重复扫描得到的显示图形。若示波器的扫描范围是Na 个码元,那么画眼图的方法是: tt=[0:dt:Na*L*dt]; hold on

for ii=1:Na*L:N-Na*L plot(tt,s(ii+[1:Na*L])); end

首先,产生一个sinc 函数1sin(/)

/s s

t T g t T ππ=,并定义升余弦滤波器的传递函数为

22cos(/)1(2/)s s t T g t T απαπ=-,得到升余弦脉冲为2

sin(/)cos(/)/1(2/)s s s s t T t T g t T t T παππαπ=-;其次,对升余弦脉

冲进行傅里叶变换,画出升余弦信号的频谱图;最后,再对所得函数进行傅里叶反变换并对结果取实数部分,并利用for 循环,画出Na 个码元宽度的眼图。 3.4.2

程序流程图

3.4.3

仿真程序及运行结果

仿真程序:

%实验三:升余弦滚降波形的眼图及其功率谱 close all clear all

global dt t df N

N=2^14; %采样点数

L=32; %每码元的采样点数

M=N/L; %码元数

Rb=2; %码速率是2Mb/s

Ts=1/Rb; %码元间隔

dt=Ts/L; %时域采样间隔

df=1/(N*dt); %频域采样间隔

T=N*dt; %截短时间

Bs=N*df/2; %系统带宽

Na=4; %示波器扫描宽度为4个码元alpha=input('滚降系数=[0.5]');

t=[-T/2+dt/2:dt:T/2]; %时域横坐标

f=[-Bs+df/2:df:Bs]; %频域横坐标

g1=sin(pi*t/Ts)./(pi*t/Ts);

g2=cos(alpha*pi*t/Ts)./(1-(2*alpha*t/Ts).^2);

g=g1.*g2; %升余弦脉冲波形

G=t2f(g);

figure(1)

set(1,'Position',[10,350,600,200])%设定窗口位置及大小figure(2)

set(2,'Position',[10,50,600,200])%设定窗口位置及大小hold on

grid on

axis([-3,+3,-50,50])

xlabel('t in us')

ylabel('s(t) in V')

EP=zeros(size(f))+eps;

for ii=1:50

a=sign(randn(1,M));

a=a+1;

imp=zeros(1,N); %产生冲激序列

imp(L/2:L:N)=a/dt;

S=t2f(imp).*G; %升余弦信号的傅氏变换

s=f2t(t2f(imp).*G); %升余弦信号的时域波形

s=real(s);

P=S.*conj(S)/T; %升余弦信号的功率谱

EP=(EP*(ii-1)+P+eps)/ii;

end

figure(2)

tt=[0:dt:Na*L*dt];

for jj=1:Na*L:N-Na*L

plot(tt,s(jj:jj+Na*L));

axis([0,+2,-1,3])

grid on

end %作眼图

figure(1)

plot(f,30+10*log10(EP),'g');

grid on

axis([-3,+3,-50,50])

xlabel('f (MHz)')

ylabel('Ps(f) (dBm/MHz)')

程序运行结果:

输入滚降系数=0.5,得到如下波形:

3.4.4实验结果分析:

α=时的眼图,定性的判断此时系统的误码严重程度,可以由上图可以清晰地看出0.5

得到最佳抽样时刻约为0.22us、0.72us、1.22us、1.72us。

该程序还可以输入不同的α值得到不同滚降系数时的眼图,α越接近1,信号成形的波

形越好,眼图的质量也越好,而在一定码元速率下随着α值的增加,信号占用的带宽就越大,频带利用率下降。

3.5 题目四:完成PCM 编码及解码的仿真 3.5.1

仿真原理及思路

在PCM 中,对模拟信号进行抽样、量化,将量化的信号电平值转化为对应的二进制码组的过程称为编码,其逆过程称为译码或解码。从理论上看,任何一个可逆的二进制码组均可用于PCM 。但是目前最常见的二进制码有三类:二进制自然码(NBC )、折叠二进制码组(FBC )、格雷二进制码(RBC )。在PCM 中实际采用的是折叠二进制码。

图3.5.1 A 律13折线

由表3-1可见,如果把16个量化级分成两部分:0~7的8个量化级对于于负极性样值脉冲,8~15的8个量化级对应于正极性样值脉冲。自然二进制码就是一般的十进制正整

数的二进制表示,在16个量化级中:4216=,采用4位码元表示为:

312b =、222b =、132b =、042b =的有无组合来构成。比如第11个量化级可表示为

3101120228021=+++=+++

其对应的码组可表示为:1011,其余依次类推。本程序中采用自然码的编码方式。

CCITT 建议的PCM 编码规则,电话语音信号的频带为300~3400Hz ,抽样速率为

8s f kHz =,对每个抽样值进行A 律或者μ律对数压缩非均匀量化及非线性编码,每个样值用八位二进制代码表示,这样,每路标准话路的比特率为64kbps 。

表3.5.2中给出的是信号正值的编码,负值编码是对称的,其绝对值与此表相同。整个信号动态范围共分13个段落,各段落的量化间隔都不同,并且有2的倍数关系。每个段落内位均匀分层量化,共16层。每个样值用8比特来表示,即12345678[][][]b b b b b b b b 。这8比特分为三部分:1b 为极性码,0代表负值,1代表正值。24[~]b b 称为段落码,表示段落的

号码,其值为0~7,代表8个段落。5678[]b b b b 表示每个段落内均匀分层的位置,其值为0~15,代表一段落内的16个均匀量化间隔。在PCM 解码时,根据八比特码确定某段落内均匀分

层的位置,然后去其量化间隔的中间值作为量化电平。

本程序首先产生一个正弦信号,并对其进行采样量化,生成一个幅值矩阵;然后利用编码子函数对此矩阵中的每个元素按照A 律13折线编码规则编码,并产生一个输出码组矩阵;最后利用解码子函数对输出码组矩阵解码,并画出编码前与解码后的波形图。 3.5.2

程序流程图

3.5.3

仿真程序及运行结果

仿真程序:

A 律十三折线编码译码流程图

%实验四:PCM编码及解码仿真

clear all;

close all;

global dt t df N

t = 0:0.01:10;

x = sin(t);

v = max(x);

xx = x/v; %normalize

sxx = floor(xx*4096);

y = pcm_encode(sxx);

yy = pcm_decode(y,v);

drawnow

figure(1)

set(1,'Position',[10,350,600,200])%设定窗口位置及大小plot(t,x)

title('sample sequence');

figure(2)

set(2,'Position',[10,50,600,200])%设定窗口位置及大小

plot(t,yy)

title('pcm decode sequence');

编码子程序:

function [out]=pcm_encode(x) %x encode to pcm code n=length(x); %-4096

for i = 1:n

if x(i)>0

out(i,1)=1;

else

out(i,1)=0;

end

if abs(x(i)) >=0 & abs(x(i))<32

out(i,2)=0;out(i,3)=0;out(i,4)=0;step=2;st=0;

elseif 32<=abs(x(i))&abs(x(i))<64

out(i,2)=0;out(i,3)=0;out(i,4)=1;step=2;st=32;

elseif 64<=abs(x(i))&abs(x(i))<128

out(i,2)=0;out(i,3)=1;out(i,4)=0;step=4;st=64;

elseif 128<=abs(x(i))&abs(x(i))<256

out(i,2)=0;out(i,3)=1;out(i,4)=1;step=8;st=128;

elseif 256<=abs(x(i))&abs(x(i))<512

out(i,2)=1;out(i,3)=0;out(i,4)=0;step=16;st=256;

elseif 512<=abs(x(i))&abs(x(i))<1024

out(i,2)=1;out(i,3)=0;out(i,4)=1;step=32;st=512;

elseif 1024<=abs(x(i))&abs(x(i))<2048

out(i,2)=1;out(i,3)=1;out(i,4)=0;step=64;st=1024;

elseif 2048<=abs(x(i))&abs(x(i))<4096

out(i,2)=1;out(i,3)=1;out(i,4)=1;step=128;st=2048;

end

if abs(x(i))==4096

out(i,2:8)=[1 1 1 1 1 1 1];

else

tmp=floor((abs(x(i))-st)/step);

t=dec2bin(tmp,4)-48;%函数dec2bin输出的是ASCII字符串,48对应0 out(i,5:8)=t(1:4);

end

end

out=reshape(out',1,8*n);

解码子程序:

function [out]= pcm_decode(in,v)

%decode the input pcm code

%in : input the pcm code 8 bits sample

%v:quantized level

n=length(in);

in=reshape(in',8,n/8)';

slot(1)=0;

slot(2)=32;

slot(3)=64;

slot(4)=128;

slot(5)=256;

slot(6)=512;

slot(7)=1024;

slot(8)=2048;

step(1)=2;

step(2)=2;

step(3)=4;

step(4)=8;

step(5)=16;

step(6)=32;

step(7)=64;

step(8)=128;

for i=1:n/8

ss=2*in(i,1)-1;

tmp = in(i,2)*4+in(i,3)*2+in(i,4)+1;

st = slot(tmp);

dt = (in(i,5)*8+in(i,6)*4+in(i,7)*2+in(i,8))*step(tmp)+0.5*step(tmp);

out(i)=ss*(st+dt)/4096*v;

end

程序结果:

3.5.4实验结果分析

从上图可以看出,该程序能将正弦信号正确采样量化编码解码。正弦信号经A律13折线编码解码后,两条曲线基本一致。此图可以清晰地看出当信号幅度较小时,解码后的波形是平滑的曲线,而当信号幅度较大时(比如波峰和波谷附近)可以看到细小的锯齿状波形,此现象说明了A率13折线编码当输入信号小时,段落小,量化级间隔小;当输入信号大时,段落大,量化级间隔大的特点,可以有效减低小信号的量化误差。

3.6附加题一:最佳基带系统的Pe~Eb\No曲线,升余弦滚降系数a=0.5,取样值的偏差是

Ts/4

3.6.1仿真原理及思路

最佳基带系统框图如下所示:

图3.6.1 最佳基带系统

首先,产生一个随机基带信号,并计算出信道参数;其次,将此基带信号依次通过发送滤波器、传输信道、接收滤波器,得到一个接收信号的矩阵;然后,对比发送矩阵和接收矩阵,当出现不同码元时误码增加1;最后,画出基带系统的Pe~Eb\No曲线。

3.6.2程序流程图

最佳基带系统Pe~Eb\No曲线设计流程图

3.6.3仿真程序及运行结果

仿真程序:

close all

clear all

global dt t f df N T %全局变量

N=2^14; %采样点数

L=8; %每码元的采样点数

M=N/L; %码元数

Rb=2; %码速率是2Mb/s

Ts=1/Rb; %码元间隔

dt=Ts/L; %时域采样间隔

df=1/(N*dt); %频域采样间隔

T=N*dt; %截短时间

Bs=N*df/2; %系统带宽

alpha=0.5; %滚降系数=0.5

t=linspace(-T/2,T/2,N); %时域横坐标

f=linspace(-Bs,Bs,N)+eps; %频域横坐标

figure(1)

set(1,'Position',[10,50,300,200]) %设定窗口位置及大小

hr1=sin(pi*t/Ts)./(pi*t/Ts);

hr2=cos(alpha*pi*t/Ts)./(1-(2*alpha*t/Ts).^2);

hr=hr1.*hr2;

HR=abs(T2F(hr));

GT=sqrt(HR);

GR=GT;

for loop1=1:20

Eb_N0(loop1)=(loop1-1) %分贝值变为真值

eb_n0(loop1)=10^(Eb_N0(loop1)/10);

Eb=1;

n0=Eb/eb_n0(loop1); %信道噪声谱密度

sita=n0*Bs; %噪声功率

n_err=0; %误码计数

for loop2=1:5

a=sign(randn(1,M)); %发送码元

imp=zeros(1,N);

imp(L/2:L:N)=a/dt;

IMP=T2F(imp);

n_ch=sqrt(sita)*randn(size(t)); %信道噪声

nr=real(F2T(T2F(n_ch).*GR));

sr=real(f2t(IMP.*HR))+nr;

y=sr(L/4:L:N); %以L/4为起点,步长L,取样点N aa=sign(y); %接收码元

n_err=n_err+length(find(aa~=a)) ;

end

Pe(loop1)=n_err/(M*loop2); %误码率Pe'=n_err/(M*loop2) figure(1)

set(1,'Position',[10,10,600,400]) %设定窗口位置及大小

semilogy(Eb_N0,Pe,'g');

eb_n0=10.^(Eb_N0/10); %还原为真值

hold on

semilogy(Eb_N0,0.5*erfc(sqrt(eb_n0)));

axis([0,9,1e-4,1])

xlabel('Eb/N0')

ylabel('Pe')

end

实验结果:

误码率曲线:绿色线为实际曲线,蓝色为理论误码率曲线

3.6.4实验结果分析

由上图可以看处,当取样时间偏差为Ts/4的时候,误码率明显高于无偏差的理论误码率.原因可以从信号的眼图看出,没有偏差时的取样点在眼睛睁开最在处,判决效果最佳,而偏差Ts/4之后取样信号的幅度下降,比较容易受噪声干扰,误码率上升。

3.7附加题二:试作出Pe~Eb/No曲线。升余弦滚降系数a=0.5,取样时间无偏差,但信

道是多径信道,C(f)=|1-0.5-j2 ft|,t=T s/2

3.7.1仿真原理及思路

仿真原理同最“佳基带系统的Pe~Eb\No曲线”仿真原理,只是信道不同。

3.7.2程序流程图

最佳基带系统Pe~Eb\No曲线设计流程图

3.7.3仿真程序及运行结果

仿真程序:

%多径信道传输的Pe~Eb/No曲线。升余弦滚降系数a=0.5,取样时间无偏差。close all

clear all

global dt t f df N T

N=2^14; %采样点数

L=32; %每码元的采样点数

M=N/L; %码元数

Rb=2; %码速率是2Mb/s

Ts=1/Rb; %码元间隔

dt=Ts/L; %时域采样间隔

df=1/(N*dt) ; %频域采样间隔

T=N*dt ; %截短时间

Bs=N*df/2; %系统带宽

alpha=0.5; %滚降系数

t=linspace(-T/2,T/2,N);%时域横坐标

f=linspace(-Bs,Bs,N)+eps; %频域横坐标

figure(1)

set(1,'Position',[10,50,400,300])%设定窗口位置及大小

%升余弦

hr1=sin(pi*t/Ts)./(pi*t/Ts);

hr2=cos(alpha*pi*t/Ts)./(1-(2*alpha*t/Ts).^2);

hr=hr1.*hr2;

HR=abs(t2f(hr)); %取模是为了忽略时延

GT=sqrt(abs(HR));

GR=GT; %发送和接收滤波器模型

tao=Ts/2;

C=1-0.5*exp(-j*(2*pi*f*tao));%多径信道模型

G=C.*HR; %总体特性

现代信号处理Matlab仿真——例611

例6.11 利用卡尔曼滤波估计一个未知常数 题目: 设已知一个未知常数x 的噪声观测集合,已知噪声v(n)的均值为零, 方差为 ,v(n)与x 不相关,试用卡尔曼滤波估计该常数 题目分析: 回忆Kalman 递推估计公式 由于已知x 为一常数,即不随时间n 变化,因此可以得到: 状态方程: x(n)=x(n-1) 观测方程: y(n)=x(n)+v(n) 得到A(n)=1,C(n)=1, , 将A(n)=1,代入迭代公式 得到:P(n|n-1)=P(n-1|n-1) 用P(n-1)来表示P(n|n-1)和P(n-1|n-1),这是卡尔曼增益表达式变为 从而 2v σ1??(|1)(1)(1|1)(|1)(1)(1|1)(1)()()(|1)()[()(|1)()()]???(|)(|1)()[()()(|1)](|)[()()](|1)H w H H v x n n A n x n n P n n A n P n n A n Q n K n P n n C n C n P n n C n Q n x n n x n n K n y n C n x n n P n n I K n C n P n n --=----=----+=--+=-+--=--2()v v Q n σ=()0w Q n =(|1)(1)(1|1)(1)()H w P n n A n P n n A n Q n -=----+21 ()(|1)[(|1)]v K n P n n P n n σ-=--+22(1)()[1()](1)(1)v v P n P n K n P n P n σσ-=--=-+

Matlab通信系统仿真实验报告

Matlab通信原理仿真 学号: 2142402 姓名:圣斌

实验一Matlab 基本语法与信号系统分析 一、实验目的: 1、掌握MATLAB的基本绘图方法; 2、实现绘制复指数信号的时域波形。 二、实验设备与软件环境: 1、实验设备:计算机 2、软件环境:MATLAB R2009a 三、实验内容: 1、MATLAB为用户提供了结果可视化功能,只要在命令行窗口输入相应的命令,结果就会用图形直接表示出来。 MATLAB程序如下: x = -pi::pi; y1 = sin(x); y2 = cos(x); %准备绘图数据 figure(1); %打开图形窗口 subplot(2,1,1); %确定第一幅图绘图窗口 plot(x,y1); %以x,y1绘图 title('plot(x,y1)'); %为第一幅图取名为’plot(x,y1)’ grid on; %为第一幅图绘制网格线 subplot(2,1,2) %确定第二幅图绘图窗口 plot(x,y2); %以x,y2绘图 xlabel('time'),ylabel('y') %第二幅图横坐标为’time’,纵坐标为’y’运行结果如下图: 2、上例中的图形使用的是默认的颜色和线型,MATLAB中提供了多种颜色和线型,并且可以绘制出脉冲图、误差条形图等多种形式图: MATLAB程序如下: x=-pi:.1:pi; y1=sin (x); y2=cos (x); figure (1); %subplot (2,1,1); plot (x,y1); title ('plot (x,y1)'); grid on %subplot (2,1,2); plot (x,y2);

Matlab仿真实例-卫星轨迹

卫星轨迹 一.问题提出 设卫星在空中运行的运动方程为: 其中是k 重力系数(k=401408km3/s)。卫星轨道采用极坐标表示,通过仿真,研究发射速度对卫星轨道的影响。实验将作出卫星在地球表面(r=6400KM ,θ=0)分别以v=8KM/s,v=10KM/s,v=12KM/s 发射时,卫星绕地球运行的轨迹。 二.问题分析 1.卫星运动方程一个二阶微分方程组,应用Matlab 的常微分方程求解命令ode45求解时,首先需要将二阶微分方程组转换成一阶微分方程组。若设,则有: 2.建立极坐标如上图所示,初值分别为:卫星径向初始位置,即地球半径:y(1,1)=6400;卫星初始角度位置:y(2,1)=0;卫星初始径向线速度:y(3,1)=0;卫星初始周向角速度:y(4,1)=v/6400。 3.将上述一阶微分方程及其初值带入常微分方程求解命令ode45求解,可得到一定时间间隔的卫星的径向坐标值y(1)向量;周向角度坐标值y(2)向量;径向线速度y(3)向量;周向角速度y(4)向量。 4.通过以上步骤所求得的是极坐标下的解,若需要在直角坐标系下绘制卫星的运动轨迹,还需要进行坐标变换,将径向坐标值y(1)向量;周向角度坐标值y(2)向量通过以下方程转换为直角坐标下的横纵坐标值X,Y 。 5.卫星发射速度速度的不同将导致卫星的运动轨迹不同,实验将绘制卫星分别以v=8KM/s ,v=10KM/s ,v=12KM/s 的初速度发射的运动轨迹。 三.Matlab 程序及注释 1.主程序 v=input('请输入卫星发射速度单位Km/s :\nv=');%卫星发射速度输入。 axis([-264007000-1000042400]);%定制图形输出坐标范围。 %为了直观表达卫星轨迹,以下语句将绘制三维地球。 [x1,y1,z1]=sphere(15);%绘制单位球。 x1=x1*6400;y1=y1*6400;???????-=+-=dt d dt dr r dt d dt d r r k dt r d θ θθ2)(2 22222θ==)2(,)1(y r y ?????????????**-=**+*-===)1(/)4()3(2)4()4()4()1()1()1()3()4()2() 3()1(y y y dt dy y y y y y k dt dy y dt dy y dt dy ???*=*=)] 2(sin[)1(Y )]2(cos[)1(X y y y y

MATLAB通信建模实验仿真实验报告

实验1:上采样与内插 一、实验目的 1、了解上采样与内插的基本原理和方法。 2、掌握上采样与内插的matlab程序的设计方法。 二、实验原理 上采样提高采样频率。上采样使得周期降低M倍,即新采样周期Tu和原有采样周期Ts的关系是T u=T s/M,根据对应的连续信号x(t),上采样过程从原有采样值x(kT s)生成新采样值x(kT u)=x(kT s/M)。操作的结果是在每两个采样值之间放入M-1个零值样点。 更实用的内插器是线性内插器,线性内插器的脉冲响应定义如下: 上采样值x(kT u)=x(kT s/M)通过与线性内插器的脉冲响应的卷积来完成内插。 三、实验内容 仿真正弦波采样和内插,通过基本采样x(k),用M=6产生上采样x u(k),由M=6线性内插得到样点序列x i(k)。 四、实验程序 % File: c3_upsampex.m M = 6; % upsample factor h = c3_lininterp(M); % imp response of linear interpolator t = 0:10; % time vector tu = 0:60; % upsampled time vector x = sin(2*pi*t/10); % original samples xu = c3_upsamp(x,M); % upsampled sequence subplot(3,1,1) stem(t,x,'k.') ylabel('x') subplot(3,1,2) stem(tu,xu,'k.') ylabel('xu') xi = conv(h,xu); subplot(3,1,3) stem(xi,'k.') ylabel('xi') % End of script file. % File: c3_upsample.m function out=c3_upsamp(in,M)

MATLAB实现通信系统仿真实例

补充内容:模拟调制系统的MATLAB 仿真 1.抽样定理 为了用实验的手段对连续信号分析,需要先对信号进行抽样(时间上的离散化),把连续数据转变为离散数据分析。抽样(时间离散化)是模拟信号数字化的第一步。 Nyquist 抽样定律:要无失真地恢复出抽样前的信号,要求抽样频率要大于等于两倍基带信号带宽。 抽样定理建立了模拟信号和离散信号之间的关系,在Matlab 中对模拟信号的实验仿真都是通过先抽样,转变成离散信号,然后用该离散信号近似替代原来的模拟信号进行分析的。 【例1】用图形表示DSB 调制波形)4cos()2cos(t t y ππ= 及其包络线。 clf %%计算抽样时间间隔 fh=1;%%调制信号带宽(Hz) fs=100*fh;%%一般选取的抽样频率要远大于基带信号频率,即抽样时间间隔要尽可能短。 ts=1/fs; %%根据抽样时间间隔进行抽样,并计算出信号和包络 t=(0:ts:pi/2)';%抽样时间间隔要足够小,要满足抽样定理。 envelop=cos(2*pi*t);%%DSB 信号包络 y=cos(2*pi*t).*cos(4*pi*t);%已调信号 %画出已调信号包络线 plot(t,envelop,'r:','LineWidth',3); hold on plot(t,-envelop,'r:','LineWidth',3); %画出已调信号波形 plot(t,y,'b','LineWidth',3); axis([0,pi/2,-1,1])% hold off% xlabel('t'); %写出图例 【例2】用图形表示DSB 调制波形)6cos()2cos(t t y ππ= 及其包络线。 clf %%计算抽样时间间隔 fh=1;%%调制信号带宽(Hz) fs=100*fh;%抽样时间间隔要足够小,要满足抽样定理。 ts=1/fs; %%根据抽样时间间隔进行抽样

matlab与通信仿真实验指导书(上)

《Matlab与通信仿真》实验指导书(上) 刘毓杨辉徐健和煦黄庆东吉利萍编著 通信与信息工程学院 2011-1

目录 第一章 MALTAB基础知识 (1) 1.1MATLAB基础知识 (1) 1.2MATLAB基本运算 (2) 1.3MATLAB程序设计 (7) 第二章 MATLAB计算结果可视化和确知信号分析 (13) 2.1计算结果可视化 (13) 2.2确知信号分析 (17) 第三章随机信号与数字基带仿真 (23) 3.1基本原理 (23) 3.2蒙特卡罗算法 (30) 第四章模拟调制MATLAB实现 (34) 4.1模拟调制 (34) 4.2信道加性高斯白噪声 (35) 4.3AM调制解调的MATLAB实现 (36) 第五章模拟信号的数字传输 (45) 5.1脉冲编码调制 (45) 5.2低通抽样定理 (45) 5.3均匀量化原理 (46) 5.4非均匀量化 (48) 第六章数字频带传输系统 (52) 6.1数字频带传输原理 (52) 6.2数字频带传输系统的MATLAB实现 (53) 第七章通信系统仿真综合实验 (67) 7.1基本原理 (67) 7.2实验内容 (67)

第一章 MALTAB基础知识 本章目标 ●了解MATLAB 程序设计语言的基本特点,熟悉MATLAB软件运行环境 ●掌握创建、保存、打开m文件及函数的方法 ●掌握变量等有关概念,具备初步的将一般数学问题转化为对应的计算机模型并进行处理的能力 1.1 MATLAB基础知识 1.1.1 MATLAB程序设计语言简介 MATLAB,Matrix Laboratory的缩写,是由MathWorks公司开发的一套用于科学工程计算的可视化高性能语言,具有强大的矩阵运算能力。与大家常用的Fortran和C等高级语言相比,MATLAB的语法规则更简单,更贴近人的思维方方式,被称为“草稿纸式的语言”。MATLAB软件主要由主包、仿真系统(simulink)和工具箱(toolbox)三大部分组成。 1.1.2 MATLAB界面及帮助 MATLAB基本界面如图1-1所示,命令窗口包含标题栏、菜单栏、工具栏、命令行区、状态栏、垂直和水平波动条等区域。 图1-1 MATLAB基本界面 (1)菜单栏

MATLAB仿真实验报告

MATLA仿真实验报告 学院:计算机与信息学院 课程:—随机信号分析 姓名: 学号: 班级: 指导老师: 实验一

题目:编写一个产生均值为1,方差为4的高斯随机分布函数程序, 求最大值,最小值,均值和方差,并于理论值比较。 解:具体的文件如下,相应的绘图结果如下图所示 G仁random( 'Normal' ,0,4,1,1024); y=max(G1) x=mi n(G1) m=mea n(G1) d=var(G1) plot(G1);

实验二 题目:编写一个产生协方差函数为CC)=4e":的平稳高斯过程的程序,产生样本函数。估计所产生样本的时间自相关函数和功率谱密度,并求统计自相关函数和功率谱密度,最后将结果与理论值比较。 解:具体的文件如下,相应的绘图结果如下图所示。 N=10000; Ts=0.001; sigma=2; beta=2; a=exp(-beta*Ts); b=sigma*sqrt(1-a*a); w=normrnd(0,1,[1,N]); x=zeros(1,N); x(1)=sigma*w(1); for i=2:N x(i)=a*x(i-1)+b*w(i); end %polt(x); Rxx=xcorr(x0)/N; m=[-N+1:N-1]; Rxx0=(sigma A2)*exp(-beta*abs(m*Ts)); y=filter(b,a,x) plot(m*Ts,RxxO, 'b.' ,m*Ts,Rxx, 'r');

periodogram(y,[],N,1/Ts); 文件旧硯化)插入(1〕 ZMCD 克闻〔D ]窗口曲) Frequency (Hz) 50 100 150 200 250 300 350 400 450 500 NH---.HP)&UO 二 balj/ 」- □歹

北邮dsp软件matlab仿真实验报告

题目: 数字信号处理MATLAB仿真实验 姓名 学院 专业 班级 学号 班内序号

实验一:数字信号的 FFT 分析 1、实验内容及要求 (1) 离散信号的频谱分析: 设信号 此信号的0.3pi 和 0.302pi 两根谱线相距很近,谱线 0.45pi 的幅度很小,请选择合适的序列长度 N 和窗函数,用 DFT 分析其频谱,要求得到清楚的三根谱线。 (2) DTMF 信号频谱分析 用计算机声卡采用一段通信系统中电话双音多频(DTMF )拨号数字 0~9的数据,采用快速傅立叶变换(FFT )分析这10个号码DTMF 拨号时的频谱。 2、实验目的 通过本次实验,应该掌握: (a) 用傅立叶变换进行信号分析时基本参数的选择。 (b) 经过离散时间傅立叶变换(DTFT )和有限长度离散傅立叶变换(DFT ) 后信号频谱上的区别,前者 DTFT 时间域是离散信号,频率域还是连续的,而 DFT 在两个域中都是离散的。 (c) 离散傅立叶变换的基本原理、特性,以及经典的快速算法(基2时间抽选法),体会快速算法的效率。 (d) 获得一个高密度频谱和高分辨率频谱的概念和方法,建立频率分辨率和时间分辨率的概念,为将来进一步进行时频分析(例如小波)的学习和研究打下基础。 (e) 建立 DFT 从整体上可看成是由窄带相邻滤波器组成的滤波器组的概念,此概念的一个典型应用是数字音频压缩中的分析滤波器,例如 DVD AC3 和MPEG Audio 。 3、程序代码 (1) N=5000; n=1:1:N; x=0.001*cos(0.45*pi*n)+sin(0.3*pi*n)-cos(0.302*pi*n-pi/4); y=fft(x,N); magy=abs(y(1:1:N/2+1)); k=0:1:N/2; w=2*pi/N*k; stem(w/pi,magy) axis([0.25,0.5,0,50]) (2) column=[1209,1336,1477,1633]; line=[697,770,852,941]; fs=10000; N=1024; 00010450303024().*cos(.)sin(.)cos(.)x n n n n ππππ=+--

《matlab与通信仿真》实验指导书-(通信级)word版本

电子信息学院 《MATLAB与通信仿真》 实验指导书 刘紫燕编写 适用专业:通信工程 贵州大学

二O一四年二月

前言 本课程是通信工程专业的选修课程。课程内容包含MATLAB的基本操作、MATLAB程序设计、函数文件、MATLAB的图形和数据处理、SIMULNK的基本应用及其在通信工程中的应用等。 通过本课程的学习,掌握MATLAB软件使用和编程方法,验证和深化书本知识,从而加强基础知识,掌握基本技能,提高MATLAB软件的编程能力,并用MATLAB软件解决通信工程专业中的实际问题,同时,针对通信工程专业的特点,要求学生掌握使用MATLAB来研究和开发与本专业相关的系统的方法。本课程设置5个实验,均为设计性实验。建议实验学时为12学时。 实验一是MATLAB软件的基本操作;实验二是MATLAB程序设计;实验三是MATLAB的图形绘制;实验四是MATLAB的数据处理;实验五是MATLAB/Simulink在电路中的仿真设计。 每个实验2个小时左右,为了使学生更好的掌握实验内容,学生务必要做到以下几点: (1)实验前认真预习实验。明确实验目的,熟悉实验内容,理论分析实验结果, 编写相应的程序代码,并撰写出预习报告。 (2)实验过程中积极思考,深入分析命令、程序的执行过程和执行结果,对比理 论分析结果,分析评判实验结果,并把实验中出现的问题及解决方法记录下来。 (3)实验完成后,总结本次实验有哪些收获,还存在什么问题,撰写并提交最终 的实验报告。 本指导书实验项目和要求明确,学生容易着手实验并得出实验结果。 本实验指导书适用于通信工程专业。

目录 实验一MATLAB的基本操作 (1) 实验二MATLAB程序设计 (9) 实验三MATLAB的图形绘制 (11) 实验四MATLAB的数据处理 (13) 实验五MATLAB/Simulink在电路中的仿真设计 (15) 实验报告的基本内容及要求 (20) 贵州大学实验报告 (21)

matlab通信仿真课程设计样本

《matlab通信仿真设计》课程设计指导书 11月

课程设计题目1: 调幅广播系统的仿真设计 模拟幅度调制是无线电最早期的远距离传输技术。在幅度调制中, 以声音信号控制高频率正弦信号的幅度, 并将幅度变化的高频率正弦信号放大后经过天线发射出去, 成为电磁波辐射。 波动的电信号要能够有效地从天线发送出去, 或者有效地从天线将信号接收回来, 需要天线的等效长度至少达到波长的1/4。声音转换为电信号后其波长约在15~1500km之间, 实际中不可能制造出这样长度和范围的天线进行有效信号收发。因此需要将声音这样的低频信号从低频率段搬移到较高频率段上去, 以便经过较短的天线发射出去。 人耳可闻的声音信号经过话筒转化为波动的电信号, 其频率范围为20~20KHz。大量实验发现, 人耳对语音的频率敏感区域约为300~3400Hz, 为了节约频率带宽资源, 国际标准中将电话通信的传输频带规定为300~3400Hz。调幅广播除了传输声音以外, 还要播送音乐节目, 这就需要更宽的频带。一般而言, 调幅广播的传输频率范围约为100~6000Hz。 任务一: 调幅广播系统的仿真。 采用接收滤波器Analog Filter Design模块, 在同一示波器上观察调幅信号在未加入噪声和加入噪声后经过滤波器后的波形。采用另外两个相同的接收滤波器模块, 分别对纯信号和纯噪声滤波, 利用统计模块计算输出信号功率和噪声功率, 继而计算输出信噪比, 用Disply显示结果。 实例1: 对中波调幅广播传输系统进行仿真, 模型参数指标如下。

1.基带信号: 音频, 最大幅度为1。基带测试信号频率在100~6000Hz 内可调。 2.载波: 给定幅度的正弦波, 为简单起见, 初相位设为0, 频率为550~1605Hz 内可调。 3.接收机选频放大滤波器带宽为12KHz, 中心频率为1000kHz 。 4.在信道中加入噪声。当调制度为0.3时, 设计接收机选频滤波器输出信噪比为20dB, 要求计算信道中应该加入噪声的方差, 并能够测量接收机选频滤波器实际输出信噪比。 仿真参数设计: 系统工作最高频率为调幅载波频率1605KHz, 设计仿真采样率为最高工作频率的10倍, 因此取仿真步长为 8max 1 6.2310(1-1)10step t s f -==? 相应的仿真带宽为仿真采样率的一半, 即 18025.7(1-2)2step W KHz t == 设基带测试正弦信号为m(t)=Acos2πFt, 载波为c(t)=cos2πf c t, 则调制度为m a 的调制输出信号s(t)为 ()(1cos 2)cos 2(1-3)a c s t m Ft f t ππ=+ 容易求出, s(t)的平均功率为 21(1-4)24a m P =+ 设信道无衰减, 其中加入的白噪声功率谱密度为N 0/2, 那么仿真带宽(-W, W)内噪声样值的方差为 2002(1-5)2N W N W σ=?=

Matlab与通信仿真课程设计报告

《MATLAB与通信仿真》课程设计指导老师: 张水英、汪泓 班级:07通信(1)班 学号:E07680104 姓名:林哲妮

目录 目的和要求 (1) 实验环境 (1) 具体内容及要求 (1) 实验内容 题目一 (4) 题目内容 流程图 程序代码 仿真框图 各个参数设置 结果运行 结果分析 题目二 (8) 题目内容 流程图 程序代码 仿真框图 各个参数设置 结果运行 结果分析 题目三 (17) 题目内容 流程图 程序代码 仿真框图 各个参数设置 结果运行 结果分析 题目四 (33) 题目内容 流程图 程序代码 仿真框图 各个参数设置 结果运行 结果分析 心得与体会 (52)

目的和要求 通过课程设计,巩固本学期相关课程MATLAB与通信仿真所学知识的理解,增强动手能力和通信系统仿真的技能。在强调基本原理的同时,更突出设计过程的锻炼。强化学生的实践创新能力和独立进行科研工作的能力。 要求学生在熟练掌握MATLAB和simulink仿真使用的基础上,学会通信仿真系统的基本设计与调试。并结合通信原理的知识,对通信仿真系统进行性能分析。 实验环境 PC机、Matlab/Simulink 具体内容及要求 基于MATLAB编程语言和SIMULINK通信模块库,研究如下问题: (1)研究BFSK在加性高斯白噪声信道下(无突发干扰)的误码率性能与信噪比之间的关系; (2)研究BFSK在加性高斯白噪声信道下(有突发干扰)的误码率性能与信噪比之间的关系; 分析突发干扰的持续时间对误码率性能的影响。 (3)研究BFSK+信道编码(取BCH码和汉明码)在加性高斯白噪声信道下(无突发干扰) 的误码率性能与信噪比之间的关系;分析不同码率对误码率性能的影响。比较不同信道编码方式的编码增益性能。 (4)研究BFSK+信道编码(取BCH码和汉明码)在加性高斯白噪声信道下(有突发干扰) 的误码率性能与信噪比之间的关系;分析突发干扰的持续时间对误码率性能的影响。分析不同码率对误码率性能的影响。比较不同信道编码方式的编码增益性能。

MATLAB电路仿真实例

题14.14 图(a)所示电路,已知 V )2cos(15S t u =二端口网络阻抗参数矩阵 Ω?? ????=46j 6j 10Z 求ab 端戴维南等效电路并计算电压o u 。 u -+o u 图题14.14 (一)手动求解: 将网络N 用T 型电路等效,如图(b)所示 S U +-o U 等效阻抗 Ω=-+-?+ -=4.6j615j6j6)15(6j 6j 4i Z 开路电压 V 2j302 15j6j6105j6OC =?∠?+-+=U V 1482 18.3j46.42j3j4j4Z j4OC o ?∠=+?=?+=U U i

所以 )1482cos(18.3o ?+=t u V (二)Matlab 仿真: ⒈分析:本次仿真需输入各阻抗Zl 、Z1、Z2、Z3、Z4以及激励源Us 的参数值,仿真结果需输出开路电压Uoc 、等效阻抗Zi 以及电感两端电压U0的幅值和相位信息,并绘制Uoc ,U0的值随时间变化的波形曲线。其中各元件与原图的对应关系如下图所示: ⒉编辑M 文件的源程序如下: clear %清空自定义变量 z1=4-6j;z2=6j;z3=10-6j;z4=5;us=15*exp(j*0);zl=4j;%输入各元件参数 zi=z1+(z2*(z3+z4)/(z2+z3+z4));%等效阻抗zi 的计算表达式uoc=us*z2/(z2+z3+z4);%开路电压uoc 的计算表达式u0=zl/(zi+zl)*uoc;%电感两端电压uo 的计算表达式disp('The magnitude of zi is'); %在屏幕上显示“The magnitude of zi is ”disp(abs(zi)) %显示等效阻抗zi 的模disp('The phase of zi is'); %在屏幕上显示“The phase of zi is ”disp(angle(zi)*180/pi)%显示等效阻抗zi 的辐角 disp('The magnitude of uoc is'); %在屏幕上显示“The magnitude of uoc is ” disp(abs(uoc))%显示开路电压uoc 的模

MATLAB与系统仿真实验手册

MATLAB与控制系统仿真实验指导书 河北大学电子信息工程学院 2006年9月

目录 实验一MATLAB基本操作与基本运算 (1) 实验二M文件及数值积分仿真方法设计 (3) 实验三MATLAB 的图形绘制 (4) 实验四函数文件设计和控制系统模型的描述 (6) 实验五控制系统的分析与设计 (7) 实验六连续系统离散化仿真方法设计 (8) 实验七SIMULINK 仿真 (9) 实验八SIMULINK 应用进阶 (10) 附录MATLAB常用函数 (12)

实验一MATLAB基本操作与基本运算 一、实验目的及要求: 1.熟悉MATLAB6.5的开发环境; 2.掌握MATLAB6.5的一些常用命令; 3.掌握矩阵、变量、表达式的输入方法及各种基本运算。 二、实验内容: 1.熟悉MATLAB6的开发环境: ①MATLAB的各种窗口: 命令窗口、命令历史窗口、启动平台窗口、工作空间窗口、当前路径窗口。 图1 MA TLAB界面窗口 ②路径的设置: 建立自己的文件夹,加入到MA TLAB路径中,并保存。 设置当前路径,以方便文件管理。 ③改变命令窗口数据的显示格式 >> format short >> format long

然后键入特殊变量:pi (圆周率),比较显示结果。 2.掌握MATLAB 常用命令 >> who %列出工作空间中变量 >> whos %列出工作空间中变量,同时包括变量详细信息 >>save test %将工作空间中变量存储到test.mat 文件中 >>load test %从test.mat 文件中读取变量到工作空间中 >>clear %清除工作空间中变量 >>help 函数名 %对所选函数的功能、调用格式及相关函数给出说明 >>lookfor %查找具有某种功能的函数但却不知道该函数的准确名称 如: lookfor Lyapunov 可列出与Lyapunov 有关的所有函数。 3. 在MATLAB 的命令窗口计算: 1) )2sin(π 2) 5.4)4.05589(÷?+ 4. 设计M 文件计算: 已知 求出: 1) a+b a-b a+b*5 a-b+I (单位阵) 2) a*b a.*b a/b 3) a^2 a.^2 注意:点运算 . 的功能,比较结果。 5. 设计M 文件计算: x=0:0.1:10 当sum>1000时停止运算,并显示求和结果及计算次数。 三、实验报告要求: 1)体会1、2的用法; 2)对3、4、5写出程序及上机的结果。 ?? ??? ?????=987654321a ?? ?? ? ?????=300120101b ) 2(100 2 i i i x x sum -=∑=

通信原理MATLAB仿真

小学期报告 实习题目通信原理Matlab仿真专业通信与信息工程 班级 学号 学生姓名 实习成绩 指导教师 2010年

通信原理Matlab仿真 目录 一、实验目的------------------------------------------------------------------------------------------------2 二、实验题目------------------------------------------------------------------------------------------------2 三、正弦信号波形及频谱仿真------------------------------------------------------------------------2 (一)通信原理知识--------------------------------------------------------------------------------------2 (二)仿真原理及思路--------------------------------------------------------------------------------------2 (三)程序流程图------------------------------------------------------------------------------------------- 3 (四)仿真程序及运行结果------------------------------------------------------------------------------3 (五)实验结果分析---------------------------------------------------------------------------------------5 四、单极性归零波形及其功率谱密度仿真--------------------------------------------------------5 (一)通信原理知识--------------------------------------------------------------------------------------6 (二)仿真原理及思路------------------------------------------------------------------------------ -------6 (三)程序流程图-------------------------------------------------------------------------------------------6 (四)仿真程序及运行结果--------------------------------------------------------------------------------6 (五)实验结果分析-------------------------------------------------------------------------------- -------6 五、升余弦滚降波形的眼图及功率谱密度仿真-------------------------------------------------8 (一)通信原理知识--------------------------------------------------------------------------------------8 (二)仿真原理及思路------------------------------------------------------------------------------ -------9 (三)程序流程图------------------------------------------------------------------------------- -----------9 (四)仿真程序及运行结果------------------------------------------------------------------------------10 (五)实验结果分析---------------------------------------------------------------------------------------11 六、PCM编码及解码仿真-----------------------------------------------------------------------------12 (一)通信原理知识---------------------------------------------------------------------------------- ---12 (二)仿真原理及思路------------------------------------------------------------------------------ ------ 13 (三)程序流程图------------------------------------------------------------------------------- -----------14 (四)仿真程序及运行结果------------------------------------------------------------------------------15 (五)实验结果分析---------------------------------------------------------------------------------------18 七、实验心得---------------------------------------------------------------------------- -------------------18

matlab-SIMULINK仿真实例资料

二并联杆数控螺旋面钻头尖刃磨机的机构仿真 一、仿真原理一、实训题目:全自动洗衣机控制系统 实训目的及要求: 1、掌握欧姆龙PLC的指令,具有独立分析和设计程序的能力 2、掌握PLC梯形图的基本设计方法 3、培养分析和解决实际工程问题的能力 4、培养程序设计及调试的能力 5、熟悉传输带控制系统的原理及要求 实训设备:: 1、OMRON PLC及模拟实验装置1台 2、安装CX-P编程软件的PC机1台 3、PC机PLC通讯的RS232电缆线1根 实训内容: 1、分析工艺过程,明确控制要求 (1)按下启动按扭及水位选择开关,相应的显示灯亮,开始进水直到高(中、低)水位,关水。 (2)2秒后开始洗涤。 (3)洗涤时,正转30秒停2秒;然后反转30秒停2秒。 (4)循环5次,总共320秒,然后开始排水。排水后脱水30秒。 图1 全自动洗衣机控制 2、统计I/O点数并选择PLC型号 输入:系统启动按钮一个,系统停止按钮一个,高、中、低水位控制开关三个,高、中、低液位传感器三个,以及排水液位传感器一个。

输出:进出水显示灯一盏,高、中、低水位显示灯各一盏,电机正、反转显示灯各一盏,排水、脱水显示灯灯各一盏。 PLC的型号:输入一共有9个,考虑到留有15%~20%的余量即9×(1+15%)=10.35,取整数10,所以共需10个输入点。输出共有8个,8×(1+15%)=9.2,取整数9,所以共需9个输出点。可以选OMRON公司的CPM1A/CPM2A 型PLC就能满足此例的要求。 3、I/O分配 表1 全自动洗衣机控制I/O分配表 输入输出 地址名称地址名称 00000 启动系统按钮01000 排水显示灯 00001 高水位选择按钮01001 脱水显示灯 00002 中水位选择按钮01002 进、出水显示灯 00003 低水位选择按钮01003 高水位显示灯 00004 排水液位传感器01004 中水位显示灯 00005 停止系统按钮01005 低水位显示灯 00006 高水位液位传感器01006 电机正转显示灯 00007 中水位液位传感器01007 电机反转显示灯 00008 低水位液位传感器 4、PLC控制程序设计及分析 实现功能:当按下按钮00000,中间继电器20000得电并自锁,按下停止按钮00005,中间继电器20000掉电。中间继电器20000为系统总启动。 实现功能:当按下按钮00001,中间继电器20001得电并自锁;当中间继电器20002、20003、20004、20007任意一个为ON,或按下停止按钮00005,或01000、01001为ON时,中间继电器20001掉电。

Matlab与通信仿真课程设计

实验一单边带调幅系统的建模仿真 班级:姓名:学号: 一、实验目的 1.了解单边带调幅系统的工作原理 2.掌握单边带调幅系统的Matlab和Simulink建模过程 二、实验内容 1、Matlab设计一个单边带发信机、带通信道和相应的接收机,参数要 求如下。 (1)输入话音信号为一个话音信号,采样率8000Hz。话音输入后首先 进行预滤波,预滤波器是一个频率范围在[300,3400]Hz的带通滤波器。 其目的是将话音频谱限制在3400Hz以下。单边带调制的载波频率设计 为10KHz,调制输出上边带。要求观测单边带调制前后的信号功率谱。 (2)信道是一个带限高斯噪声信道,其通带频率范围是[10000, 13500]Hz。要求能够根据信噪比SNR要求加入高斯噪声。 (3)接收机采用相干解调方式。为了模拟载波频率误差对解调话音音 质的影响,设本地载波频率为9.8KHz,与发信机载波频率相差200Hz。 解调滤波器设计为300Hz到3400Hz的带通滤波器。 程序框图:

设计思想: 程序分为三部分: 一:SSB调制模块 首先从计算机中读入音频信号,作为原信号,读入完成后,对源信号进行参数采集和与滤波处理。进行与滤波之后,对信号进行希尔伯特变换,将原来的信号和载波相乘,将希尔伯特变换后的信号和载波进行希尔伯特变换后的信号相乘之后两者想减,得到SSB调制后的信号。 二:信道加噪声模块 通过信道,通过设置信道的信噪比来加入相应的噪声 三:解调模块: 将SSB调制后的信号通过信道加入噪声以后得到新的信号,并将信号和本地载波相乘进行想干解调,得到输出信号,并通过语句输出到相应的目录下。 2、用Simulink方式设计一个单边带传输系统并通过声卡输出接收机解调的结果声音。系统参数参照实例5.9,系统仿真参数设置为50KH 系统设计:

MATLAB电路仿真实例

题14.14 图(a)所示电路,已知 二端口网络阻抗参数矩阵 求ab 端戴维南等效电路并计算电压。 (一) 手动求解: 将网络N 用T 型电路等效,如图(b)所示 等效阻抗 开路电压 V )2cos(15S t u =Ω??????=46j 6j 10Z o u u -+o u (a)图题14.14 S U +-o U Ω=-+-?+-=4.6j615j6j6)15(6j 6j 4i Z V 2j30215j6j6105j6OC =?∠?+-+=U V 148218.3j46.42j3j4j4Z j4OC o ?∠=+?=?+=U U i

所以 V (二) Matlab 仿真: ⒈分析:本次仿真需输入各阻抗Zl 、Z1、Z2、Z3、Z4以及激励源Us 的参数值,仿真结果需输出开路电压Uoc 、等效阻抗Zi 以及电感两端电压U0的幅值和相位信息,并绘制Uoc ,U0的值随时间变化的波形曲线。 其中各元件与原图的对应关系如下图所示: ⒉编辑M 文件的源程序如下: clear %清空自定义变量 z1=4-6j;z2=6j;z3=10-6j;z4=5;us=15*exp(j*0);zl=4j; %输入各元件参数 zi=z1+(z2*(z3+z4)/(z2+z3+z4)); %等效阻抗zi 的计算表达式 uoc=us*z2/(z2+z3+z4); %开路电压uoc 的计算表达式 u0=zl/(zi+zl)*uoc; %电感两端电压uo 的计算表达式 disp('The magnitude of zi is'); %在屏幕上显示“The magnitude of zi is ” disp(abs(zi)) %显示等效阻抗zi 的模 disp('The phase of zi is'); %在屏幕上显示“The phase of zi is ” disp(angle(zi)*180/pi) %显示等效阻抗zi 的辐角 disp('The magnitude of uoc is'); %在屏幕上显示“The magnitude of uoc is ” disp(abs(uoc)) %显示开路电压uoc 的模 disp('The phase of uoc is'); %在屏幕上显示“The magnitude of uoc is ” ) 1482cos(18.3o ?+=t u

实验一 模拟通信的MATLAB仿真

实验一 模拟通信的MATLAB 仿真 姓名:左立刚 学号:031040522 简要说明: 实验报告注意包括AM ,DSB ,SSB ,VSB ,FM 五种调制与解调方式的实验原理,程序流程图,程序运行波形图,simulink 仿真模型及波形,心得体会,最后在附录中给出了m 语言的源程序代码。 一.实验原理 1.幅度调制(AM ) 幅度调制(AM )是指用调制信号去控制高频载波的幅度,使其随调制信号呈线性变化的过程。AM 信号的数学模型如图3-1所示。 图2-1 AM 信号的数学模型 为了分析问题的方便,令 δ =0, 1.1 AM 信号的时域和频域表达式 ()t S AM =[A 0 +m ()t ]cos t c ω (2-1) ()t S AM =A 0 π[()()ωωωωδC C ++-]+()()[]ωωωωc c M M ++-2 1 (2-2)

AM 信号的带宽 2 =B AM f H (2-3) 式中, f H 为调制信号的最高频率。 2.1.3 AM 信号的功率P AM 与调制效率 η AM P AM =()222 2 t m A +=P P m c + (2-4) 式中,P C =2 A 为不携带信息的载波功率;()2 2 t m P m =为携带信息的边带 功率。 ()() t t m A m P P AM C AM 2 2 2+= = η (2-5) AM 调制的优点是可用包络检波法解调,不需要本地同步载波信号,设备简单。AM 调制的最大缺点是调制效率低。 2.2、双边带调制(DSB ) 如果将在AM 信号中载波抑制,只需在图3-1中将直流 A 0 去掉,即可输出 抑制载波双边带信号。 2.2.1 DSB 信号的时域和频域表达式 ()()t t m t c DSB S ωcos = (2-6) ()()()[]ωωωωωC C DSB M M S ++-=2 1 (2-7) DSB 信号的带宽 f B B H AM DSB 2 == (2-8)

相关文档
最新文档