LabVIEW 、MATLAB及其混合编程技术 教学课件 ppt 作者 范寿康 第6章 MATLAB程序设计基础

上传人:E**** 文档编号:89155402 上传时间:2019-05-19 格式:PPT 页数:28 大小:302.51KB
返回 下载 相关 举报
LabVIEW 、MATLAB及其混合编程技术 教学课件 ppt 作者 范寿康 第6章 MATLAB程序设计基础_第1页
第1页 / 共28页
LabVIEW 、MATLAB及其混合编程技术 教学课件 ppt 作者 范寿康 第6章 MATLAB程序设计基础_第2页
第2页 / 共28页
LabVIEW 、MATLAB及其混合编程技术 教学课件 ppt 作者 范寿康 第6章 MATLAB程序设计基础_第3页
第3页 / 共28页
LabVIEW 、MATLAB及其混合编程技术 教学课件 ppt 作者 范寿康 第6章 MATLAB程序设计基础_第4页
第4页 / 共28页
LabVIEW 、MATLAB及其混合编程技术 教学课件 ppt 作者 范寿康 第6章 MATLAB程序设计基础_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《LabVIEW 、MATLAB及其混合编程技术 教学课件 ppt 作者 范寿康 第6章 MATLAB程序设计基础》由会员分享,可在线阅读,更多相关《LabVIEW 、MATLAB及其混合编程技术 教学课件 ppt 作者 范寿康 第6章 MATLAB程序设计基础(28页珍藏版)》请在金锄头文库上搜索。

1、1,第6章 MATLAB程序设计基础,2,6.1 MATLAB7.X简介,MATLAB是“矩阵实验室”(MATrix LABoratoy)的缩写,是目前应用最为广泛的一种集科学运算、程序设计、高质量的图形可视化与界面设计以及便于与其他程序和语言接口的软件。目前MATLAB已经成为自动控制、电子、通信、数字信号处理、动态系统仿真等诸多学科极有效的工具。,3,6.1.1 MATLAB7.X的工作环境,4,6.1.2 工具条与菜单,5,6.1.3 MATLAB的指令窗,6,MATLAB应用举例,例6-1 在指令窗中输入 A=1 2 3;4 5 6;7 8 9 解:按回车健后命令窗口显示如下 A =

2、1 2 3 4 5 6 7 8 9 在指令窗口中键入任意算术表达式,系统将自动解算,并给出结果。,7,MATLAB应用举例,例6-2 计算算术表达式 -5/(4.9+3.2)2 的值。 解:在指令窗中输入 -5/(4.9+3.2)2 按回车健后,系统将直接计算表达式结果,并且给出答案。 ans = -0.0762,8,6.1.4 工作空间窗口,工作空间是运行MATLAB的函数或指令所生成的所有变量和MATLAB常量构成的空间。,9,6.1.5 图形窗口,plot(t,y) Plot函数功能为在图形窗口中绘制图形。,10,6.2 MATLAB7.X的基本语法,6.2.1数值及变量,11,6.2.

3、2 MATLAB赋值语句,MATLAB中书写表达式的规则与“手写算式”的方法几乎完全相同,具体规则如下: (1)表达式由变量名、运算符和函数名组成。 (2)表达式将按常规的优先级从左向右运算。 如果在指令行中输入指令过长可以在结尾加上”.”(表示续行),例如 3*4*cos(35.4*6)*sin(45)*. 5*34 则屏幕显示为 ans = 582.9639,12,6.2.3数组和矩阵,例6-4 数组和矩阵的乘运算 键入:A=3,2,1;6,5,4;9,8,7; B=A; Z1=A.*B %数组乘运算,即为点乘运算,注意”*”前有个”.”运算符 Z2=A*B %矩阵乘运算,注意”*”前没有

4、”.”运算 解:运算结果为 Z1 = 9 4 1 36 25 16 81 64 49 Z2 = 30 24 18 84 69 54 138 114 90,13,6.2.4 逻辑判断与流程控制,例6-11 k=0;while k=100 k=k+1; end 解:运算结果为 k= 101 (3) for循环语句 格式: for k=初值:增量:终值 语句组A, end 将语句组A重复执行N次,但每次执行时程序中k值不同。增量缺省值为1。,14,6.2.5 基本绘图方法,最常用的绘图命令 (1)plot(t,y)表示用线性X-Y座标绘图,X轴的变量为t,Y轴的变量为y。 (2)subplot(2,

5、2,1)建立22子图轴系,并选定图1。 (3)axis(0 1 -0.1 1.2)表示建立一个座标,横座标的范围从0至1,纵座标的范围从-0.1至1.2。 (4)title(X(n)曲线)在子图上端标注图名 (5)stem(y)、stem(x,y) 绘制离散序列图,序列线端为圆圈。与plot(x)、plot(x,y)绘图规则相同 (6)figure(1) 创建1号图形窗口,15,MATLAB应用举例,例6-13 作一条曲线解:程序如下。 t=0:0.5:4*pi; %将t在0到4间每间隔0.5取一点 y=exp(-0.1*t).*sin(t); subplot(2,2,1),plot(t,y)

6、; %建立22子图轴系,在图1处绘线性图 title(plot(t,y); %标注图名 subplot(2,2,2),stem(t,y); %在22子图轴系图2处绘脉冲图 title(stem(t,y); subplot(2,2,3),stairs(t,y); %在22子图轴系图3处绘阶梯图 title(stairs(t,y); subplot(2,2,4),bar(t,y); %在22子图轴系图4处绘条形图 title(bar(t,y);,16,17,6.3 MATLAB在信号处理中常用的函数,6.3.1 典型离散信号 1. 单位采样序列 定义 可利用MATLAB的zeros函数。 N=4;

7、 x=zeros(1,N) %建立一个一行N列的全零数组 x = 0 0 0 0 x(2)=1 n=0:N-1 x = 0 1 0 0 n = 0 1 2 3 stem(n,x),18,6.3.1 典型离散信号,2. 单位阶跃序列 定义 可利用MATLAB的ones函数实现。 N=5; x=ones(1,N) x = 1 1 1 1 1 n=0:N-1 n = 0 1 2 3 4 stem(n,x),19,3. 随机序列,clear all ; N=32; x_rand=rand(1,N); x_randn=randn(1,N); xn=0:N-1; figure(1) stem(xn,x_r

8、and) figure(2) stem(xn,x_randn),20,6.3.2快速傅里叶变换函数,例6-15 设x(n)为长度N=4的矩形序列,用MATLAB程序分析FFT取不同长度时x(n)的频谱变化。 解:N=8,16,32时x(n)的FFT MATLAB实现程序如下:,21,6.3.2快速傅里叶变换函数,clear all; x =1, 1, 1 ,1,1,1; N = 8;y1=fft(x,N); %调用fft为快速傅里叶变换函数 n=0:N-1;subplot(3,1,1);stem(n,abs(y1);axis(0,7,0,6); title(N=8); N = 32;y2=ff

9、t(x,N); %调用fft为快速傅里叶变换函数 n=0:N-1;subplot(3,1,2);stem(n,abs(y2);axis(0,30,0,6); title(N=32); N = 64;y3=fft(x,N); %调用fft为快速傅里叶变换函数 n=0:N-1;subplot(3,1,3);stem(n,abs(y3);axis(0,63,0,6); title(N=64);,22,23,6.4 数字滤波器设计实例,6.4.1 用 MATLAB设计IIR数字滤波器,24,6.4.1 用 MATLAB设计IIR数字滤波器,例6-21 已知模拟滤波器的系统函数为分别用冲激响应不变法和双

10、线型变换法将Ha(s)转换为数字滤波器系统函数H(z),并画出Ha(s)和H(z)的频率响应曲线。抽样频率分别为1000Hz和500Hz.,25,解:其MATLAB实现程序如下: clear; close all; b=1000;a=1,1000; w=0:1000*2*pi; hf,w=freqs(b,a,w); Subplot(2,3,1); plot(w/2/pi,abs(hf); Grid; xlabel(f/(Hz);ylabel(幅度); fs0=1000,500; for m=1:2 fs=fs0(m); d,c=impinvar(b,a,fs); wd=0:512*pi/512

11、; hw1=freqz(d,c,wd); subplot(2,3,2); plot(wd/pi,abs(hw1)/abs(hw1(1);hold on; grid;xlabel(f/Hz); text(0.52,0.88,T=0.002s); text(0.12,0.54,T=0.001s); for m=1:2 fs=fs0(m); f,e=bilinear(b,a,fs); wd=0:512*pi/512; hw2=freqz(f,e,wd); subplot(2,3,3); plot(wd/pi,abs(hw2)/abs(hw2(1);hold on; end grid;xlabel(f

12、/(Hz); text(0.5,0.74,T=0.002s); text(0.12,0.34,T=0.001s); end,26,6.4.1 用 MATLAB设计IIR数字滤波器,27,6.4.2 用MATLAB设计FIR数字滤波器,1. 窗函数法设计数字滤波器 例6-23 建立一个N=64点的哈明窗,用WVTool显示结果。 解:(1)先介绍WVTool,它是窗口可视化工具 调用句法: wvtool(winname(n) wvtool(winname1(n),winname2(n),.winnamem(n) wvtool(w) h = wvtool(.) (2)Hamming window哈明窗 调用句法: w = hamming(n) w = hamming(n,sflag) N=64; wvtool(hamming(N),28,1. 窗函数法设计数字滤波器,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号