利用matlab进行系统分析基础

利用matlab进行系统分析基础
利用matlab进行系统分析基础

实验一利用matlab进行系统分析基础1.描述线性系统的三种不同方式之间的转换

问题1 已知系统的传递函数为

将其转换为零极点型。

相应的matlab语句为:

num=[2 10];

den=[1 8 19 12];

printsys(num,den,’s’) 回车

[z,p,k]=tf2zp(num,den) 回车

察看语句的执行结果,并说明最后一行程序执行结果的含义;问题2 已知传递函数同上,试将其转换为状态变量型。Matlab语句为:

Num=[2 10]; den=[1 8 19 12];

[a,b,c,d]=tf2ss(num,den) 回车

对应的状态方程为

式中A,B,C,D对应于程序中的a,b,c,d。

问题3 已知系统的零极点型传递函数为,试将其转换为传递函数型。Matlab语句:

z=-1;p=[-2 –3 –4 ]; k=5; (回车)

[num, den]=zp2tf(-1, [-2 –3 –4 ],2) (回车)

%观察显示结果

继续输入:

printsys(num,den,’s’) (回车)

记录显示结果。

2.卷积计算

原理:

两个信号卷积公式:

对于两个不规则波形的卷积,依靠手算是很困难的,在Matlab种则变得十分简单。

例如已知两个信号

其中分别表示两个门函数。

求其卷积的matlab程序如下:

t1=1:0.01:2;

f1=ones(size(t1)).*(t1>1);(表示一个高度为1的门函数,时间从t=1到

t=2)

t2=2:0.01:3;

f2=ones(size(t2)).*(t2>2); (表示一个高度为1的门函数,时间从t=2到t=3)

c=conv(f1,f2);(卷积)

t3=3:0.01:5;

subplot(3,1,1),plot(t1,f1);

subplot(3,1,2),plot(t2,f2);

subplot(3,1,3),plot(t3,c);

其结果如图所示

问题1 已知两个信号

试利用matlab计算卷积 (要求显示出波形图)

3.傅立叶变换

例如求下列信号的傅立叶幅度谱

(1)门脉冲信号:

syms t w

ut=sym(‘Heaviside(t+0.5)- Heaviside(t-0.5)’);

Fw=fourier(ut,t,w);

FFw=maple(‘convert’,Fw,’piecewise’);

FFFw=FFw;

FFP=abs(FFFw)

Ezplot(FFP,[-10*pi 10*pi])

Axis([-10*pi 10*pi 0 1]);

(2)三角形脉冲信号

syms w

ut=sym(‘Heaviside(t+0.5)- Heaviside(t-0.5)’);

Fw=fourier(ut,t,w);

FFw=maple(‘convert’,Fw,’piecewise’);

FFFw=FFw* FFw;

FFP=abs(FFFw)

Ezplot(FFP,[-10*pi 10*pi])

Axis([-10*pi 10*pi 0 1]);

(1) (2)

问题:

试利用matlab求1)单边指数信号,2)高斯信号的傅立叶幅度谱。

实验二系统的时间响应分析1. 二阶系统不同阻尼比ξ时的阶跃响应

二阶系统的传递函数为,其阶跃响应可用下列程序做出其单位阶跃和冲激响应的曲线(为简单起见,令),如图(a)(b)所示。

Close

Hold on

zeta=[0.1 0.2 0.4 0.7 1.0];

num=[1]

t=0:.01:12;

for k=1:5

den=[1 2*zeta(k) 1];

printsys(num, den,’s’);

[y(:, k), x]=step(num, den,1);

plot(t,y(:, k));

end

figure;

for k=1:5

den =[1 Zeta(k) 1];

[y(:, k), x]=impulse(num, den,t);

plot(t,y(:, k)); hold on

end

2. 二阶系统的时域性能指标

a.调整时间t s;b. 上升时间t r;c. 超调量σ;close all;

zeta=0.05:0.05:1;

num=[1];

ts=0;

w=0.02:0.02:2;

jw=j*w;

for n=1:20;

den=[1 2*zeta(n) 1];

t=0.3:0.3:30;

y=step(num,den,1);

for j=1:99;

k=100-j;

if(((y(k)-0.95)*(y(k+1)-0.95))<=0)

ts(n)=t(k)+0.3*((0.95-y(k+1))/(y(k+1)-y(k)));

break;

else if (((y(k)-1.05)*(y(k+1)-1.05))<=0)

ts(n)=t(k)+0.3*((1.05-y(k+1))/(y(k+1)-y(k)));

break;

end

end

t=0.03:0.03:3;

y=step(num,den,t);

for k=1:99;

tt=k+1;

if (((y(k)-0.1)*(y(tt)-0.1))<=0) trb=t(k)+0.03*((0.1-y(k))/(y(tt)-y(k)));

else if (((y(k)-0.9)*(y(tt)-0.9))<=0) tre=t(k)+0.03*((0.9-y(k))/(y(tt)-y(k)));

break;

end

end

tr(n)=tre-trb;

end

hold on

plot(zeta,ts); xlabel(‘Ts’);

figure;

plot(zeta,tr);xlabel(‘Tr’);

zeta=0.05:0.05:1;

forn=1:20;

overshoot(n)=exp(-1*pi*zeta(n)/(sqrt(1.0-zeta(n).^2)+eps));

end

figure; plot(zeta,overshoot);xlabel(‘Overshoot’);

hold off

clf

3. 三种控制方式的时间响应比较

(1)比例控制;(2)比例与导树控制(正向传输零点);(3)比例-导数(反馈回路有零点)控制。

(a)(b)(c)图示系统的正向传递函数为

系统1的正向传递函数为

系统2的正向传递函数为

系统3的正向传递函数为,反馈传递函数为(1+0.8s)用matlab来分析这3个系统的阶跃响应。

三种控制方式下的单位阶跃响应可如下求取:

num=5;den=[5 1 0];

printsys(num,den,’s’)

(运行结果:)

num/den=

sign=-1;

[num1,den1]=cloop(num,den,sign);

printsys(num1,den1,’s’)

(运行结果:)

num/den=

subplot(2,1,1);

step(num1,den1);

hold on

num=[4 5];den=[5 1 0];

printsys(num,den,’s’)

(运行结果:)

num/den=

sign=-1;

[num2,den2]=cloop(num,den,sign);

printsys(num2,den2,’s’)

(运行结果:)

num/den=

step(num2,den2);

num=[0 5];den=[5 1 0];

printsys(num,den,’s’)

(运行结果:)

num/den=

numf=[0.8 1];denf=[0 1];sign=-1;

[num3,den3]=feedback(num,den,numf,denf,sign); printsys(num3,den3,’s’)

(运行结果:)

num/den=

step(num3,den3);

axis([0 10 0 1.8]);

subplot(2,1,2);

hold on

impulse(num1,den1);

impulse(num2,den2);

impulse(num3,den3);

axis([0 10 –1 2]);

hold off

实验结果:

基于matlab实现OFDM的编码.

clc; clear all; close all; fprintf('OFDM系统仿真\n'); carrier_count=input('输入系统仿真的子载波数: \n');%子载波数128,64,32,16 symbols_per_carrier=30;%每子载波含符号数 bits_per_symbol=4;%每符号含比特数,16QAM调制 IFFT_bin_length=1024;%FFT点数 PrefixRatio=1/4;%保护间隔与OFDM数据的比例1/6~1/4 GI=PrefixRatio*IFFT_bin_length ;%每一个OFDM符号添加的循环前缀长度为1/4*IFFT_bin_length ,即256 beta=1/32;%窗函数滚降系数 GIP=beta*(IFFT_bin_length+GI);%循环后缀的长度40 SNR=10; %信噪比dB %================信号产生=================================== baseband_out_length=carrier_count*symbols_per_carrier*bits_per_symbol;%所输入的比特数目 carriers=(1:carrier_count)+(floor(IFFT_bin_length/4)-floor(carrier_count/2));%共轭对称子载波映射复数数据对应的IFFT点坐标 conjugate_carriers = IFFT_bin_length - carriers + 2;%共轭对称子载波映射共轭复数对应的IFFT点坐标 rand( 'twister',0); %每次产生不相同得伪随机序列 baseband_out=round(rand(1,baseband_out_length));%产生待调制的二进制比特流figure(1); stem(baseband_out(1:50)); title('二进制比特流') axis([0, 50, 0, 1]); %==============16QAM调制==================================== complex_carrier_matrix=qam16(baseband_out);%列向量 complex_carrier_matrix=reshape(complex_carrier_matrix',carrier_count,symbols_per

牛顿迭代法解元方程组以及误差分析matlab实现

.0],;,[0 ),()(),()(),(0),()(),()(),(,.**,0],;,[),()()(),()()(,0),(),(),(])()[(),(),(),(),(),(])()[(),(),(2,),(])()[(21),(])()[(),(),()(2 )(''))((')()(: 1n 1n 110101010100000000000000000000000000200000000000 00 000fg g f y y g f g f g f fg x x g g f f y x g y y y x g x x y x g y x f y y y x f x x y x f y x y x y x g f g f fg g f y y g f g f g f fg x x g f g f fg g f y y g f g f g f fg x x g g f f y x g y x g y y y x g x x y x f y x f y y y x f x x y x g y x f y x g y y y x x x y x g y x g y x f y x g y x f y y y x x x y x f y x f y x y x f y y y x x x y x f y y y x x x y x f y x f x x f x x x f x f x f x x n n x y y x y y y x y x n n y n n n x n n n n n y n n n x n n n n n x y y x x x x y y x y y x y y x x x x y y x y y y x y x y x y x y y x x y y x x y x y y x x ,则其解可记为: 的行列式不为若系数矩阵: 附近的线性化方程组为在一元方程牛顿迭代法,类似 ,的新近似值于是就得到了根,则可得解: 的行列式不为若系数矩阵),(),( ),(),( 则两式构成方程组: 令可得: 构成二元方程组,同样与若另有一方程: 阶小项,得到线性方程忽略在方程根附近取值时,当二元函数的展开为: 开类似一元函数的泰勒展?????+-+=-+-+=?????=-+-+=-+-+??? ????-+-+=-+-+=????????-+-=--+-=-?????-=-+--=-+-==??-+??-+=??-+??-+=??-+??-+??-+??-+=-+ -+=++========η ξξ

matlab实验2MATLAB基础知识

实验2 MATLAB基础知识 一、实验目的 1.熟悉MATLAB的数据类型 2.熟悉MATLAB的基本矩阵操作 3.熟悉MATLAB的运算符 4.熟悉MATLAB的字符串处理 二、实验内容 1.创建结构体DataTypes,属性包含MATLAB支持的所有数据类型,并通过赋值构 造结构体二维数组。 DataTypes.char=char([65]); DataTypes.string='hello'; DataTypes.int=100; DataTypes.single=1.560 DataTypes = char: 'A' string: 'hello' int: 100 single: 1.5600 >> DataTypes(2).char=char([66]); DataTypes(2).string='kugou'; DataTypes(2).int=200; DataTypes(2).single=3.14 DataTypes = 1x2 struct array with fields: char string int single 2.用满矩阵和稀疏矩阵存储方式分别构造下述矩阵。 A=

答: A = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 B = A = 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 A = 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 1 A = 0 1 0 0 1 1 0 0 0 0 1 0 0 0 0 1 A = 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 1

OFDM技术仿真(MATLAB代码)

第一章绪论 1.1简述 OFDM是一种特殊的多载波传输方案,它可以被看作是一种调制技术,也可以被当作一种复用技术。多载波传输把数据流分解成若干子比特流,这样每个子数据流将具有低得多的比特速率,用这样的低比特率形成的低速率多状态符号再去调制相应的子载波,就构成多个低速率符号并行发送的传输系统。正交频分复用是对多载波调制(MCM,Multi-Carrier Modulation)的一种改进。它的特点是各子载波相互正交,所以扩频调制后的频谱可以相互重叠,不但减小了子载波间的干扰,还大大提高了频谱利用率。 符号间干扰是多径衰落信道宽带传输的主要问题,多载波调制技术包括正交频分复用(OFDM)是解决这一难题中最具前景的方法和技术。利用OFDM技术和IFFT方式的数字实现更适宜于多径影响较为显著的环境,如高速WLAN 和数字视频广播DVB等。OFDM作为一种高效传输技术备受关注,并已成为第4代移动通信的核心技术。如果进行OFDM系统的研究,建立一个完整的OFDM 系统是必要的。本文在简要介绍了OFDM 基本原理后,基于MATLAB构建了一个完整的OFDM动态仿真系统。 1.2 OFDM基本原理概述 1.2.1 OFDM的产生和发展 OFDM的思想早在20世纪60年代就已经提出,由于使用模拟滤波器实现起来的系统复杂度较高,所以一直没有发展起来。在20世纪70年代,提出用离散傅里叶变换(DFT)实现多载波调制,为OFDM的实用化奠定了理论基础;从此以后,OFDM在移动通信中的应用得到了迅猛的发展。 OFDM系统收发机的典型框图如图1.1所示,发送端将被传输的数字信号转换成子载波幅度和相位的映射,并进行离散傅里叶变换(IDFT)将数据的频谱表达式变换到时域上。IFFT变换与IDFT变换的作用相同,只是有更高的计算效

MATLAB在数据误差处理中的应用

《MATLAB语言》课程论文 MATLAB在数据误差处理中的应用 姓名:于海艳 学号:12010245217 专业:通信工程 班级:2010级通信一班 指导老师:汤全武 学院:物理电气信息学院 完成日期:2011年12月23日

MATLAB 在数据误差处理中的应用 (于海艳 12010245217 2010级通信班) 【摘要】伴随着越来越多的数据的产生,数据处理的任务越来越重,本文就计算机软件MATLAB 在 数据处理的应用作一大只介绍。文章首先说明了误差理论与数据处理中的几个基本概念,然后详细介绍了数据样本误差请定的几个数字特征在MATLAB 中计算方法,接着介绍在的数据处理中广为应用的最小二乘法以及其在MATLAB 中的计算过程,文章的最后又大体说明了MATLAB 在数据样本的回归分析与利用经验公式求解数据规律中的应用。 【关键字】MATLAB 误差 数据处理 正态分布 最小二乘法 回归分析 经验公式 一、问题的提出 随着国民经济的迅速发展,大量的数据需要处理,误差理论和数据处理的任务也原来越重,传统的手算以及计算器等工具已不能满足需要。另一方面,计算机在我们的日常生活中的越来越普及,显然,运用计算机惊醒数据处理意识大势所趋。 MATLAB 是美国MathWorks 公司推出的一种简洁方便的工程计算语言,自从其问世就以其友好的用户界面和多种功能深受各方面欢迎。 测量数据的数据处理和数据分析涉及到最小二乘法、回归分析、曲线拟合以及线性方程组的求解内容,而这些正是MATLAB 的强项,另外,通过MATLAB 强大的图形功能,我们还能方便地将数据图形化,从而进行直观地分析处理数据。 二、几个基本概念 1、误差 在测量中,误差表示测得值与真值之差,若令测量误差为δ,测得值为x,真值为,则有 δ=x-x 0或x 0=x-δ (1) 由于实际应用中真值一般是无从知道或无法确定的,所以,在统计学中,常以测量次数足够大时的测得值的算术平均值近似代替真值。 2、算术平均值x 对一真值为x 0的物理量进行等精度的n 次测量,得n 个测得值x 1,x 2,L,x n ,它们都含有随机误差δ1,δ2,…δn ,统称真差。我们常以算术平均值作为n 次测量的结果,即 x =x 1+ x 2+L+ x n )=n x i ∑ (2) 3、残差v 各测得值x i 对其算术平均值的误差量叫做残余误差,简称残差,即 v= x i -x (3) 4、标准差(标准偏差)σ 在计量学中,常用标准差来评定测得值的精度,即 σ= n L n δ δ δ 222 21 +++ (n ∞→) (4)

matlab基础实验

实验一 MATLAB基础知识 一、实验目的 1.熟练掌握Matlab的启动与退出; 2. 熟悉Matalb的命令窗口,常用命令和帮助系统; 3. 熟悉Matalb的数据类型; 4. 熟悉Matlab的基本矩阵操作,运算符和字符串处理 二、实验设备 1.方正电脑 2.MATLAB软件 三、实验内容 1. 已知矩阵 A=[3 4 -1 1 -9 10;6 5 0 7 4 -16;1 -4 7 -1 6 -8;2 -4 5 -6 12 -8;-3 6 -7 8 -1 1;8 -4 9 1 3 0] 写出完成下列操作的命令: (1) 将矩阵A的第2-5行中第1,3,5列元素赋给矩阵B; (2) 删除矩阵A的第7号元素; (3) 将矩阵A的每个元素加上30; (4) 求矩阵A的大小和维数; (5) 将矩阵A的右下角3*2矩阵构成矩阵C; (6) 输出[-5,5]范围内的所有元素; 程序: A=[3 4 -1 1 -9 10;6 5 0 7 4 -16;1 -4 7 -1 6 -8;2 -4 5 -6 12 -8;-3 6 -7 8 -1 1;8 -4 9 1 3 0] %(1) B=A(2:5,[1 3 5]) %(2) A2=A; A2(7)=[] %(3) A3=A+30 %(4) length(A) size(A) %(5) C=A(end-2:end,end-1:end) %(6) A6=A.*(A>=-5 & A<=5) 结果: A =

3 4 -1 1 -9 10 6 5 0 7 4 -16 1 -4 7 -1 6 -8 2 -4 5 -6 12 -8 -3 6 -7 8 -1 1 8 -4 9 1 3 0 B = 6 0 4 1 7 6 2 5 12 -3 -7 -1 A2 = Columns 1 through 7 3 6 1 2 -3 8 5 Columns 8 through 14 -4 -4 6 -4 -1 0 7 Columns 15 through 21 5 -7 9 1 7 -1 - 6 Columns 22 through 28 8 1 -9 4 6 12 -1 Columns 29 through 35 3 10 -16 -8 -8 1 0 A3 = 33 34 29 31 21 40 36 35 30 37 34 14

OFDM系统设计及其Matlab实现

课程设计 。 课程设计名称:嵌入式系统课程设计 专业班级: 07级电信1-1 学生姓名:__王红__________ 学号:_____107_____ 指导教师:李国平,陈涛,金广峰,韩琳 课程设计时间:— |

1 需求分析 运用模拟角度调制系统的分析进行频分复用通信系统设计。从OFDM系统的实现模型可以看出,输入已经过调制的复信号经过串/并变换后,进行IDFT或IFFT和并/串变换,然后插入保护间隔,再经过数/模变换后形成OFDM调制后的信号s(t)。该信号经过信道后,接收到的信号r(t)经过模/数变换,去掉保护间隔,以恢复子载波之间的正交性,再经过串/并变换和DFT或FFT后,恢复出OFDM的调制信号,再经过并/串变换后还原出输入符号 2 概要设计 1.简述OFDM通信系统的基本原理 2.简述OFDM的调制和解调方法 3.概述OFDM系统的优点和缺点 4.基于MATLAB的OFDM系统的实现代码和波形 : 3 运行环境 硬件:Windows XP 软件:MATLAB 4 详细设计 OFDM基本原理 一个完整的OFDM系统原理如图1所示。OFDM的基本思想是将串行数据,并行地调制在多个正交的子载波上,这样可以降低每个子载波的码元速率,增大码元的符号周期,提高系统的抗衰落和干扰能力,同时由于每个子载波的正交性,大大提高了频谱的利用率,所以非常适合移动场合中的高速传输。

在发送端,输入的高比特流通过调制映射产生调制信号,经过串并转换变成N条并行的低速子数据流,每N个并行数据构成一个OFDM符号。插入导频信号后经快速傅里叶反变换(IFFT)对每个OFDM符号的N个数据进行调制,变成时域信号为: [ 式 式1中:m为频域上的离散点;n为时域上的离散点;N为载波数目。为了在接收端有效抑制码间干扰(InterSymbol Interference,ISI),通常要在每一时域OFDM符号前加上保护间隔(Guard Interval,GI)。加保护间隔后的信号可表示为式,最后信号经并/串变换及D/A转换,由发送天线发送出去。 式 接收端将接收的信号进行处理,完成定时同步和载波同步。经A/D转换,串并转换后的信号可表示为:

电力电子技术与电力系统分析matlab仿真

电气2013级卓班电力电子技术与电力系统分析 课程实训报告 专业:电气工程及其自动化 班级: 姓名: 学号: 指导教师:

兰州交通大学自动化与电气工程学院 2016 年 1 月日

电力电子技术与电力系统分析课程实训报告 1 电力电子技术实训报告 1.1 实训题目 1.1.1电力电子技术实训题目一 一.单相半波整流 参考电力电子技术指导书中实验三负载,建立MATLAB/Simulink环境下三相半波整流电路和三相半波有源逆变电路的仿真模型。仿真参数设置如下: (1)交流电压源的参数设置和以前实验相关的参数一样。 (2)晶闸管的参数设置如下: R=0.001Ω,L =0H,V f=0.8V,R s=500Ω,C s=250e-9F on (3)负载的参数设置 RLC串联环节中的R对应R d,L对应L d,其负载根据类型不同做不同的调整。 (4)完成以下任务: ①仿真绘出电阻性负载(RLC串联负载环节中的R d= Ω,电感L d=0,C=inf,反电动势为0)下α=30°,60°,90°,120°,150°时整流电压U d,负载电流L 和晶闸管两端电压U vt1的波形。 d ②仿真绘出阻感性负载下(负载R d=Ω,电感L d为,反电动势E=0)α=30°,60°,90°,120°,150°时整流电压U d,负载电流L d和晶闸管两端电压U vt1的波形。 ③仿真绘出阻感性反电动势负载下α=90°,120°,150°时整流电压U d,负载电流L d和晶闸管两端电压U vt1的波形,注意反电动势E的极性。 (5)结合仿真结果回答以下问题: ①该三项半波可控整流电路在β=60°,90°时输出的电压有何差异?

Matlab基础知识点汇总

MATLAB讲义 第一章 MATLAB系统概述 1.1 MATLAB系统概述 MATLAB(MATrix LABoratory)矩阵实验室的缩写,全部用C语言编写。 特点: (1)以复数矩阵作为基本编程单元,矩阵运算如同其它高级语言中的语言变量操作一样方便,而且矩阵无需定义即可采用。 (2)语句书写简单。 (3)语句功能强大。 (4)有丰富的图形功能。如plot,plot3语句等。 (5)提供了许多面向应用问题求解的工具箱函数。目前,有20多个工具箱函数,如信号处理、图像处理、控制系统、系统识别、最优化、神经网络的模糊系统等。 (6)易扩充。 1.2 MATLAB系统组成 (1)MATLAB语言 MATLAB语言是高级的矩阵、矢量语言,具有控制流向语句、函数、数据结构、输入输出等功能。同时MATLAB又具有面向对象编程特色。MATLAB语言包括运算符和特殊字符、编程语言结构、字符串、文件输入/输出、时间和日期、数据类型和结构等部分。 (2)开发环境 MATLAB开发环境有一系列的工具和功能体,其部分具有图形用户界面,包括MATLAB桌面、命令窗口、命令历史窗口、帮助游览器、工作空间、文件和搜索路径等。 (3)图形处理 图形处理包括二维、三维数据可视化,图像处理、模拟、图形表示等图形命令。还包括低级的图形命令,供用户自由制作、控制图形特性之用。 (4)数学函数库 有求和、正弦、余弦等基本函数到矩阵求逆、求矩阵特征值和特征矢量等。 MATLAB数学函数库可分为基本矩阵和操作、基本数学函数、特殊化数学函数、线性矩阵函数、数学分析和付里叶变换、多项式和二重函数等。 (5)MATLAB应用程序接口(API) MATLAB程序可以和C/C++语言及FORTRAN程序结合起来,可将以前编写的C/C++、FORTRAN语言程序移植到MATLAB中。 1.3 MATLAB的应用围包括: MATLAB的典型应用包括: ●数学计算 ●算法开发 ●建模、仿真和演算 ●数据分析和可视化 ●科学与工程绘图 ●应用开发(包括建立图形用户界面) 以矩阵为基本对象 第二章 Matlab基础

无线通信原理 基于matlab的ofdm系统设计与仿真..

基于matlab的ofdm系统设计与仿真

摘要 OFDM即正交频分复用技术,实际上是多载波调制中的一种。其主要思想是将信道分成若干正交子信道,将高速数据信号转换成并行的低速子数据流,调制到相互正交且重叠的多个子载波上同时传输。该技术的应用大幅度提高无线通信系统的信道容量和传输速率,并能有效地抵抗多径衰落、抑制干扰和窄带噪声,如此良好的性能从而引起了通信界的广泛关注。 本文设计了一个基于IFFT/FFT算法与802.11a标准的OFDM系统,并在计算机上进行了仿真和结果分析。重点在OFDM系统设计与仿真,在这部分详细介绍了系统各个环节所使用的技术对系统性能的影响。在仿真过程中对OFDM信号使用QPSK调制,并在AWGN信道下传输,最后解调后得出误码率。整个过程都是在MATLAB环境下仿真实现,对ODFM系统的仿真结果及性能进行分析,通过仿真得到信噪比与误码率之间的关系,为该系统的具体实现提供了大量有用数据。

第一章 ODMF 系统基本原理 1.1多载波传输系统 多载波传输通过把数据流分解为若干个子比特流,这样每个子数据流将具有较低的比特速率。用这样的低比特率形成的低速率多状态符号去调制相应的子载波,构成了多个低速率符号并行发送的传输系统。在单载波系统中,一次衰落或者干扰就会导致整个链路失效,但是在多载波系统中,某一时刻只会有少部分的子信道会受到衰落或者干扰的影响。图1-1中给出了多载波系统的基本结构示意图。 图1-1多载波系统的基本结构 多载波传输技术有许多种提法,比如正交频分复用(OFDM)、离散多音调制(DMT)和多载波调制(MCM),这3种方法在一般情况下可视为一样,但是在OFDM 中,各子载波必须保持相互正交,而在MCM 则不一定。 1.2正交频分复用 OFDM 就是在FDM 的原理的基础上,子载波集采用两两正交的正弦或余弦函数集。函数集{t n ωcos }, {t m ωsin } (n,m=0,1,2…)的正交性是指在区间(T t t +00,)内有正弦函数同理:)0()()(2/0cos *cos 00===≠?? ???=? +m n m n m n T T tdt m t n T t t ωω 其中ωπ2=T (1-1)

实验二 MATLAB基础知识(二)

Experiment 1. Fundamental Knowledge of Matlab (II) 【Experimental Purposes】 1、熟悉并掌握MATLAB的工作环境。 2、运行简单命令,实现数组及矩阵的输入输出,了解在MATLAB下如何绘图。【Experimental Principle】 1. Vectors Let's start off by creating something simple, like a vector. Enter each element of the vector (separated by a space) between brackets, and set it equal to a variable. For example, to create the vector a, enter into the MATLAB command window (you can "copy" and "paste" from your browser into MATLAB to make it easy): a = [1 2 3 4 5 6 9 8 7] MATLAB should return: a = 1 2 3 4 5 6 9 8 7 To generate a series that does not use the default of incrementing by 1, specify an additional value with the colon operator (first:step:last). In between the starting and ending value is a step value that tells MATLAB how much to increment (or decrement, if step is negative) between each number it generates. To generate a vector with elements between 0 and 20, incrementing by 2(this method is frequently used to create a time vector), use t = 0:2:20 t = 0 2 4 6 8 10 12 14 16 18 20 Manipulating vectors is almost as easy as creating them. First, suppose you would like to add 2 to each of the elements in vector 'a'. The equation for that looks like: b = a + 2 b = 3 4 5 6 7 8 11 10 9 Now suppose, you would like to add two vectors together. If the two vectors are the same length, it is easy. Simply add the two as shown below: c = a + b c = 4 6 8 10 12 14 20 18 16 Subtraction of vectors of the same length works exactly the same way. MATLAB sometimes stores such a list in a matrix with just one row, and other times in a matrix with just one column. In the first instance, such a 1-row matrix is called a row-vector; in the

用MATLAB实现OFDM仿真分析

3.1 计算机仿真 仿真实验是掌握系统性能的一种手段。它通过对仿真模型的实验结果来确定实际系统的性能。从而为新系统的建立或系统的改进提供可靠的参考。通过仿真,可以降低新系统失败的可能性,消除系统中潜在的瓶颈。优化系统的整体性能,衡量方案的可行性。从中选择最后合理的系统配置和参数配置。然后再应用于实际系统中。因此,仿真是科学研究和工程建设中不可缺少的方法。 3.1.1 仿真平台 ●硬件 CPU:Pentium III 600MHz 内存:128M SDRAM ●软件 操作系统:Microsoft Windows2000 版本5.0 仿真软件:The Math Works Inc. Matlab 版本6.5 包括MATLAB 6.5的M文件仿真系统。 Matlab是一种强大的工程计算软件。目前最新的6.x版本 (windows环境)是一种功能强、效率高、便于进行科学和工程计算的交互式软件包。其工具箱中包括:数值分析、矩阵运算、通信、数字信号处理、建模和系统控制等应用工具程序,并集应用程序和图形于一便于使用的集成环境中。在此环境下所解问题的Matlab语言表述形式和其数学表达形式相同,不需要按传统的方法编程。Matlab的特点是编程效率高,用户使用方便,扩充能力强,语句简单,内涵丰富,高效方便的矩阵和数组运算,方便的绘图功能。 3.1.2 基于MATLAB的OFDM系统仿真链路 根据OFDM 基本原理,本文给出利用MATLAB编写OFDM系统的仿真链路流程。串行数据经串并变换后进行QDPSK数字调制,调制后的复信号通过N点IFFT变换,完成多载波调制,使信号能够在N个子载波上并行传输,中间插入10训练序列符号用于信道估计,加入循环前缀后经并串转换、D /A后进入信道,接收端经过N点FFT变换后进行信道估计,将QDPSK解调后的数据并串变换后得到原始信息比特。 本文采用MATLAB语言编写M文件来实现上述系统。M文件包括脚本M文件和函数M文件,M文件的强大功能为MATLAB的可扩展性提供了基础和保障,使MATLAB能不断完善和壮大,成为一个开放的、功能强大的实用工具。M文件通过input命令可以轻松实现用户和程序的交互,通过循环向量化、数组维数预定义等提高M文件执行速度,优化内存管理,此外,还可以通过类似C++语言的面向对象编程方法等等。

用Matlab计算潮流计算电力系统分析

《电力系统潮流上机》课程设计报告 院系:电气工程学院 班级:电088班 学号: 0812002221 学生姓名:刘东昇 指导教师:张新松 设计周数:两周 日期:2010年 12 月 25 日

一、课程设计的目的与要求 目的:培养学生的电力系统潮流计算机编程能力,掌握计算机潮流计算的相关知识 要求:基本要求: 1.编写潮流计算程序; 2.在计算机上调试通过; 3.运行程序并计算出正确结果; 4.写出课程设计报告 二、设计步骤: 1.根据给定的参数或工程具体要求(如图),收集和查阅资料;学习相关软件(软件自选:本设计选择Matlab进行设计)。 2.在给定的电力网络上画出等值电路图。 3.运用计算机进行潮流计算。 4.编写设计说明书。 三、设计原理 1.牛顿-拉夫逊原理 牛顿迭代法是取x0 之后,在这个基础上,找到比x0 更接近的方程的跟,一步一步迭代,从而找到更接近方程根的近似跟。牛顿迭代法是求方程根的重要方法之一,其最大优点是在方程f(x) = 0 的单根附近具有平方收敛,而且该法还可以用来求方程的重根、复根。电力系统潮流计算,一般来说,各个母线所供负荷的功率是已知的,各个节点电压是未知的(平衡节点外)可以根据网络结构形成节点导纳矩阵,然后由节点导纳矩阵列写功率方程,由于功率方程里功率是已知的,电压的幅值和相角是未知的,这样潮流计算的问题就转化为求解非线性方程组的问题了。为了便于用迭代法解方程组,需要将上述功率方程改写成功率平衡方程,并对功率平衡方程求偏导,得出对应的雅可比矩阵,给未知节点赋电压初值,一般为

额定电压,将初值带入功率平衡方程,得到功率不平衡量,这样由功率不平衡量、雅可比矩阵、节点电压不平衡量(未知的)构成了误差方程,解误差方程,得到节点电压不平衡量,节点电压加上节点电压不平衡量构成新的节点电压初值,将新的初值带入原来的功率平衡方程,并重新形成雅可比矩阵,然后计算新的电压不平衡量,这样不断迭代,不断修正,一般迭代三到五次就能收敛。 牛顿—拉夫逊迭代法的一般步骤: (1)形成各节点导纳矩阵Y。 (2)设个节点电压的初始值U和相角初始值e 还有迭代次数初值为0。 (3)计算各个节点的功率不平衡量。 (4)根据收敛条件判断是否满足,若不满足则向下进行。 (5)计算雅可比矩阵中的各元素。 (6)修正方程式个节点电压 (7)利用新值自第(3)步开始进入下一次迭代,直至达到精度退出循环。 (8)计算平衡节点输出功率和各线路功率 2.网络节点的优化 1)静态地按最少出线支路数编号 这种方法由称为静态优化法。在编号以前。首先统计电力网络个节点的出线支路数,然后,按出线支路数有少到多的节点顺序编号。当由n 个节点的出线支路相同时,则可以按任意次序对这n 个节点进行编号。这种编号方法的根据是导纳矩阵中,出线支路数最少的节点所对应的行中非零元素也2)动态地按增加出线支路数最少编号在上述的方法中,各节点的出线支路数是按原始网络统计出来的,在编号过程中认为固定不变的,事实上,在节点消去过程中,每消去一个节点以后,与该节点相连的各节点的出线支路数将发生变化(增加,减少或保持不变)。因此,如果每消去一个节点后,立即修正尚未编号节点的出线支路数,然后选其中支路数最少的一个节点进行编号,就可以预期得到更好的效果,动态按最少出线支路数编号方法的特点就是按出线最少原则编号时考虑了消去过程中各节点出线支路数目的变动情况。 3.MATLAB编程应用 Matlab 是“Matrix Laboratory”的缩写,主要包括:一般数值分析,矩阵运算、数字信号处理、建模、系统控制、优化和图形显示等应用程序。由于使用Matlab 编程运算与人进行科学计算的思路和表达方式完全一致,所以不像学习高级语言那样难于掌握,而且编程效率和计算效率极高,还可在计算机上直接输出结果和精美的图形拷贝,所以它的确为一高效的科研助手。 四、设计内容

基于Matlab计算程序的电力系统运行分析课程设计

课程设计 课程名称:电力系统分析 设计题目:基于Matlab计算程序地电力系统运行分析学院:电力工程学院 专业:电气工程自动化 年级: 学生姓名: 指导教师: 日期: 教务处制

目录 前言 (1) 第一章参数计算 (2) 一、目标电网接线图 (2) 二、电网模型地建立 (3) 第二章潮流计算 (6) 一.系统参数地设置 (6) 二.程序地调试 (7) 三、对运行结果地分析 (13) 第三章短路故障地分析计算 (15) 一、三相短路 (15) 二、不对称短路 (16) 三、由上面表对运行结果地分析及在短路中地一些问题 (21) 心得体会 (26) 参考文献 (27)

前言 电力系统潮流计算是电力系统分析中地一种最基本地计算,是对复杂电力系统正常和故障条件下稳态运行状态地计算.潮流计算地目标是求取电力系统在给定运行状态地计算.即节点电压和功率分布,用以检查系统各元件是否过负荷.各点电压是否满足要求,功率地分布和分配是否合理以及功率损耗等.对现有电力系统地运行和扩建,对新地电力系统进行规划设计以及对电力系统进行静态和暂态稳定分析都是以潮流计算为基础.潮流计算结果可用如电力系统稳态研究,安全估计或最优潮流等对潮流计算地模型和方法有直接影响. 在电力系统中可能发生地各种故障中,危害最大且发生概率较高地首推短路故障.产生短路故障地主要原因是电力设备绝缘损坏.短路故障分为三相短路、两相短路、单相接地短路及两相接地短路.其中三相短路时三相电流仍然对称,其余三类短路统成为不对称短路.短路故障大多数发生在架空输电线路.电力系统设计与运行时,要采取适当地措施降低短路故障地发生概率.短路计算可以为设备地选择提供原始数据.

实验一 MATLAB基础训练

实验一 MATLAB基础训练 一、实验目的 本次上机实验主要练习使用Matlab的基本操作和基础知识,包括数组(复数、向量、矩阵、结构体数组等)的创建和数组元素的操作和运算、矩阵的运算、Matlab的运算符(尤其是点运算‘.’)、脚本M文件和函数M文件的编写、Matlab文件的编程(基本的流程控制结构)、基本的二维和三维绘图方法以及图形的标注等。希望通过本次实验使大家尽量在短时间内(4学时)掌握Matlab的基本操作和基础知识,为后面的实验项目奠定基础。 二、实验原理 参见PPT中有关内容。 三、实验内容 1. 上机练习课件中的例子。 2. 设两个复数a=1+2i, b=3-4i, 计算a+b, a-b, a*b, a/b, a和b的模。 3. 计算下式的结果,其中x=-3.5°, y=6.7° (提示:①应将角度单位由度转换为数学函数所能处理的弧度值;②求根函数sqrt,取绝对值函数abs,具体用法用help查询) 4. 对矩阵 123 456 789 A ?? ?? =?? ?? ?? , 实现下列操作: (1) 左右翻转(fliplr命令) (2) 上下翻转(flipud命令) (3) 利用cat命令分别将A扩展成3×6和6×3的矩阵 (3) 分别提取A的第2行,第2列,对角线元素 (4) 删除A的第2行2列的元素 (提示:将矩阵元素赋空阵[]可以删除元素,注意此时元素的访问只能使用单下标的方式。观察删除元素后,A中元素的排列方式的变化) 5. 创建[0,2π]区间上拥有100个等间隔元素的列向量 ...x.(Matlab默认是行向量),并绘制 y=sin(x1/3)的函数图像。 6. 创建如下图所示的单结构体数组。

2010年本科毕业设计:基于MATLAB的OFDM系统仿真及分析

2010年本科毕业设计:基于MATLAB的OFDM系统仿真及分 析 MATLABOFDM 正交频分复用(OFDM) 是第四代移动通信的核心技术。该文首先简要介绍了OFDM的发展状况及基本原理, 文章对OFDM 系统调制与解调技术进行了解析,得 到了OFDM 符号的一般表达式,给出了OFDM 系统参数设计公式和加窗技术的原理 及基于IFFT/FFT 实现的OFDM 系统模型,阐述了运用IDFT 和DFT 实现OFDM 系统的根源所在,重点研究了理想同步情况下,保护时隙(CP)、加循环前缀前后和不同的信道内插方法在高斯信道和多径瑞利衰落信道下对OFDM系统性能的影响。在给出OFDM系统模型的基础上,用MATLAB语言实现了传输系统中的计算机仿真并给出 参考设计程序。最后给出在不同的信道条件下,研究保护时隙、循环前缀、信道 采用LS估计方法对OFDM系统误码率影响的比较曲线,得出了较理想的结论。 : 正交频分复用;仿真;循环前缀;信道估计 I Title: MATLAB Simulation and Performance Analysis of OFDM System ABSTRACT OFDM is the key technology of 4G in the field of mobile communication. In this

article OFDM basic principle is briefly introduced. This paper analyzes the modulation and demodulation of OFDM system, obtaining a general expression of OFDM mark, and giving the design formulas of system parameters, principle of windowing technique, OFDM system model based on IFFT/FFT, the origin which achieves the OFDM system by using IDFT and DFT. Then, the influence of CP and different channel estimation on the system performance is emphatically analyzed respectively in Gauss and Rayleigh fading channels in the condition of ideal synchronization. Besides, based on the given system model OFDM system is computer simulated with MATLAB language and the referential design procedure is given. Finally, the BER curves of CP and channel estimation are given and compared. The conclusion is satisfactory. KEYWORDS:OFDM; Simulation; CP; Channel estimation II

Matlab-基于GUI的误差分析与数据处理

2011-2012学年的计算机辅助分析的课程设计。笔者花了好几个星期的课余时间,将其初略的完成了。这段时间里可以说是现学现用,因为笔者所学的Matlab课程中没有设计到GUI的相关内容。正是如此,整个设计中难免会有差错,或者说是理解不深的地方。还是希望那些要借鉴此设计的朋友甄选辨别一下,再做决定。整个设计尚不完善,还在进一步的修改中。 今笔者将其上传。本来有个源文档,很是占页数。因为里面程序较多。笔者想了一下,大无上传的必要。这些程序就算复制下来,也不能单独运行,传上来反而增加大家阅读的负担。 所以将打印稿传至百度文库,供大家参考。

课程名称:计算机辅助分析 设计题目:基于GUI的误差分析院系:电气工程系 专业:电子信息工程 年级:2010 级 姓名:XXX 学号:XXXX 指导教师:XXXX 西南交通大学峨眉校区

2011年12月16日 第一章摘要 (3) 第二章想法的提出 (5) 第三章相关设想 (6) 第四章需要解决的问题: (7) 1 程序功能方面 (7) 2 数据结构方面: (7) 3 控件方面: (7) 4 函数的使用: (8) 第五章过程(思路和方法) (9) 1 GUI学习 (9) 1-I GUI架构(向导) (9) 1-II 基本控件: (9) 1-III 控件属性设置: (9) 1-IV 控件回调函数(Callback Routine) (10) 2 数据结构: (10) 2-I 细胞矩阵 (10) 2-II 结构体变量(见课本82页) (10) 2-III 局部变量和全局变量 (10) 2-IV GUI中的类、对象: (11) 3 选择数据的构造方式及选择编程方法 (11) 3-I 第一种想法:依据数据层次建立数据结构,当时写了一个模型的样本 文件如下: (11) 3-II 第二种想法:依据表格中的数据位置进行构造 (14) 3-III 比较一二两种算法: (15) 4 窗口界面的建立和界面的完善及程序的编写和调试 (15) 5 程序的编写和调试: (16) 5-I 程序的变量命名: (16) 5-II 程序的数据架构: (17) 5-III 函数: (17) 5-IV 编程的难点: (21) 5-V 功能介绍和使用方法: (22) 6 程序对比 (30) 第六章附录 (33) 1 用到的课本知识: (33) 2 函数说明: (33) 3 参考文献: (33)

福州大学MATLAB基础实验指导书

实验一 MATLAB 基础知识 一、实验目的 1. 熟练掌握Matlab 的启动与退出; 2. 熟悉Matalb 的命令窗口,常用命令和帮助系统; 3. 熟悉Matalb 的数据类型; 4. 熟悉Matlab 的基本矩阵操作,运算符和字符串处理 、实验设备 1. 方正电脑 2. MATLAB^件 三、实验内容 1. 已知矩阵 A=[3 4 -1 1-9 10;6 5 0 7 4 -16;1 -4 7 -1 6 -8;2 -4 5 -6 12 -8;-3 6 -7 8 -1 1;8 -4 9 1 3 0] 写出完成下列操作的命令: (1) 将矩阵A 的第2-5行中第1 , 3, 5列元素赋给矩阵 B ; (2) 删除矩阵A 的第7号元素; (3) 将矩阵A 的每个元素加上30 ; (4) 求矩阵A 的大小和维数; (5) 将矩阵A 的右下角3*2矩阵构成矩阵C ; (6) 输出[-5,5]范围内的所有元素; 4. 已知 3 5 4 2 1 2 67 A 34 45 7 ,B 2 8 74 求下列表达式的值: (1) A*B 和 A.*B (2) A A 3 和 A.A 3 (3) A/B 和 B\A (4) [A,B]和[A([1,3]);BA2] 87 90 15 9 3 0 i ab 5. 设 a=1+2i,b=-3+4i, c e 6 ,求 c 的值。 2. 设 x=-74 o ,y=27 o ,求 sin (x 2 y 2) ta n x y 的 值。 3.当a 取,,, ?,,,时,求 e 0.3a sin(a 0.3)在各点的函数 值。

a b 实验二MATLAB程序设计 、实验目的 1 ?学会编写简单函数m文件,调用及调试函数m文件; 2 .学会MATLA啲简单程序编写。 二、实验设备 1. 方正电脑 2. MATLAB^件 三、实验内容 1. 从键盘输入一个4位整数,按如下规则加密后输出。加密规则:每位数字都加上7 然后用和除以10的余数取代该数字;然后将第1位数与第3位数交换,第2位数与第4位数交换。 2. 硅谷公司员工的工资计算方法如下: (1) 工作时数超过120h者,超过部分加发15% (2) 工作时数低于60h者,扣发700元; (3) 其余按每小时84元计发。 试编程按输入的工号和该员工的工时数,计算应发工资。 1 1 1 1 3. 根据 2 2 2 L 2,求的近似值。当n分别取100, 1000, 10000时, 6 122232n2 结果是多少? (要求:分别用循环结构和向量运算(使用sum函数)来实现) 1 1 1 4 .根据y 1 L ,求 3 5 2n 1 (1) y<3 时的最大n值; (2) 与(1)的n值对应的y值。考虑 a 5.考虑一下迭代公式x n 1,其中,a,b为常数。 b X n (1)编写程序求迭代结果,迭代的终止条件为X n 1 X n 10 5,迭代初值X0 1.0,迭 代次数不超过500次。 (2)如果迭代过程收敛于r,那么r的准确值是 b b 4a,当⑻卩的值取⑴“、 2 (8,3)、(10,时,分别对迭代结果和准确值进行比较。

相关文档
最新文档