MATLAB在电气工程专业实验教学中的应用

2010-09-25 12:35张品秀黄操军梁春英
大庆师范学院学报 2010年3期
关键词:限幅寄存器波形

张品秀,黄操军,梁春英,韩 静

(黑龙江八一农垦大学 信息技术学院,黑龙江 大庆 163319)

0 引言

随着科学技术的发展,计算机技术的进步,要求高校以培养“实用性人才、创新性人才”为教学目标,但是这个目标的实现离不开实践环节的教学,因为学生通过实验可以提高实践动手能力和观察问题、解决问题的能力。电气工程专业历经多年的发展,大部分课程原有的分立元件组装实验已被数字化的实验平台、实验箱所取代,学生对实验的原理内容了解即使不够,只要认真阅读实验指导书及在教师的指导下机械式连线和读数,再套用公式来分析实验数据,即可完成实验内容。这样将致使学生的理论知识与实践相脱节,使学生的实践动手能力减弱,进而导致其对知识的创新意识薄弱,针对此类问题我们可以利用计算机软件的发展,进行仿真实验,软件可选择MATLAB语言,它是以复数矩阵作为基本编程单元的一种高级程序设计语言,不仅提供了各种矩阵的运算、较强的绘图功能及大量的仿真模块库,而且与其他语言可实现接口[1]。此软件现已广泛应用于工程计算、图像处理、系统仿真等领域。如果应用MATLAB进行仿真实验,要求学生有较深的理论知识,只有这样才能编出正确的程序或建立正确的数学模型,在此基础上完成仿真实验,再自己完成硬件实验,不但节省了教学时间,而且还可以较好地做到理论与实践的结合,可以起到事半功倍的教学效果。

1 MATLAB在电路分析中的应用

图1为RLC电路的全响应分析实验,该电路是二阶电路,按通常的方法进行分析需要列出微分方程来求解[2],计算过程不但复杂,而且采用人工描点法绘制响应曲线很难保证其精确度,如果利用MATLAB软件对其进行仿真,具有计算简单、精确度高等优点。

对于图1列微分方程为:

(1)

Uc(t)=k1es1(t)+k2es2(t)+Us

(2)

若已知R=10Ω,L=2H,C=100μF,UC(0+)=0.5V,iL(0+)=1mA,US=1V,采用MATLAB进行仿真的程序如下[3],全响应曲线图如图2所示。

图1 RL二阶动态电路图 图2 电路的全响应

程序清单如下:

r=10;l=2;c=100*10^(-6);uco=0.5;ilo=1*10^(-3);us=1.0;a=-r/(2*l);

wd=(1/(l*c)-(r/(2*l))^2)^(1/2);for t=0.0:0.1:3

uct=(exp(a*t)/(2*wd))*(a*sin(wd*t)-wd*cos(wd*t))+us;plot(t,uct);

hold on;end

通过以上实例说明在电路分析实验教学中若引入MATLAB,可以提高计算精度和工作效率,使理论更加贴近实际,同时也改善了电路分析只能通过实验平台才能完成的实验教学模式[4]。

2 MATLAB在电子技术实验教学中的应用

电子技术包括模拟电子技术和数字电子技术,其包含了大量实验,如果采用MATLAB提供的Simulink模块库进行仿真实验,将使学生能更好地来理解其基本原理及应用价值。

2.1 二极管限幅仿真实验

二极管的限幅实验是模拟电子技术中比较简单的实验,通过硬件实验很容易得到其数据,但是如果想进一步了解二极管的限幅过程及得到输出电压的波形,简单的硬件实验很难完成,所以可利用Simulink模块库中的Power Electronics模块来完成仿真实验[5]。二级管双向限幅如图3所示,其相对应的仿真模型如图4所示。如果取u=3sint,R=2Ω,二极管的参数如表1所示,得到的a、b两端的电压波形及电源波形如图5所示。从图5中以看出电压源输出为一幅度为3的正弦波,而a、b两端的电压被限定在了0.7V。

图3 二极管双向限幅电路 图4 二极管向限幅电路仿真模型

参数名Diode1Diode2参数名Diode1Diode2Resistance Ron0.010.01Initial current00Inductance Lon00Snubber resistanceInfInfForward voltage0.70.7Snubber capacitance00

图5电压输长波形

2.2 并行寄存器仿真实验

寄存器用于存储一组二进制代码,被广泛用于各类数字系统和数字计算机中。并行寄存器能够同时存储几组数据,现以RS触发器构成2位并行寄存器为例,利用Simulink提供的Flip Flops模块库中专有的触发器模块来搭建电路,如图6所示。当Clock信号为高电平时,输入端的信号不作用,此时S、R端的输出均为0,S-R Flip-Flop保持前一时刻的状态;当Clock信号为低电平时,S、R端的输出信号取决于输入端的信号。二位并行寄存器模块参数如表2所示,其可以产生2个不同的输入信号;同时将Clock模块的period参数设置为1,以产生一个周期为1s的时钟信号。此外Scope模块的Number of axes参数设置为5,以显示时钟信号、D0、D1、Q0(S-R0 模块Q端输出)、Q1(S-R1 模块Q端输出)的波形。

表2 寄存器输入信号模块参数设置

仿真波形如图7所示,时钟信号在低电平时,触发器输出维持在时钟下跳前的值,对于D0、D1输入的变化没有任反应;当时钟信号在高电平时,输入信号全部到达输出端,2个触发器完全独立,互不影响。如果需要更多的并行寄存器,只要添加相应格式的触发器及配套控制电路即可。

从以上的例子可以说明,MATLAB提供的Simulink模块库可以进行接近实物的仿真实验,进而来验证理论知识的正确性,此方法还可以进行其他大量的电子技术方面的仿真实验,具有较好的实用性。

图6二位并行寄存器模型图 图7 二位并行寄存器波形图

3 基于MATLAB在控制系统中的设计与仿真

控制理论的发展大致分为三个阶段:经典控制理论、现代控制理论和智能控制理论。而这些理论的分析与设计需要大量的数学计算及多种分析方法,如果借助于MATLAB提供的控制系统工具箱可以极大地提高控制系统分析和设计的效率[6]。

控制系统工具箱(Control System Toolbox)是MATLAB软件专门针对控制系统工程设计的函数和工具的集合,其主要采用M文件形式,用于反馈控制系统的分析、设计和仿真,涵盖了经典控制理论和现代控制理论的大部分内容,既适用于连续系统,也适用于离散系统,可以实现不同模型之间的相互转换。如要判定系统的可控性及可观测性通过编写简单的M文件及利用两个函数ctrb()、obsv()就可以完成,简便而且快捷。

例如已知系统的动态方程为:

确定系统的可控性和可观测性,程序如下:

A=[-4 1;0 -2];B=[2;1];C=[1 3];D=0;n=2;CAM=ctrb(A,B);rcam=rank(CAM);

if rcam==n disp(‘System is controlled’)

elseif rcam

end

ob=obsv(A,C);roam=rank(ob);

if roam==n disp(‘System is observable’)

elseif roam~=n disp(′System is no observable′)

end

程序的运行结果为:System is controlled;System is observable。从结果来看,该系统是可控、可观测的。应用MATLAB还可以完成控制系统的时域分析、根轨迹分析、频域分析、PID控制器的设计等,随着控制理论的不断发展和研究的不断深入,MATLAB将会使控制系统的设计和分析更加简便和轻松,而且可设计更为复杂的控制系统。

4 结论

由于MATLAB及其工具箱具有易用性、可靠性、通用性和专业性,已被越来越多的人所使用,不仅可应用于电路分析、电子技术、控制系统,还可应用于电力电子以及进行数字信号处理等多课程领域。随着计算机技术和数字技术的发展,其在工科类高校已得到了广泛的应用,不仅是电气专业,其他如通信电子、机电、计算机等专业也可以采用该软件来完成课程的仿真实验,这样即可做到充分利用计算机教学资源,也使课程由理论分析向对实际技术问题的分析迈进,尽量使学生对理论专业知识的学习跟上科学技术发展的步伐。

[参考文献]

[1] 薛定宇,陈阳泉.基于MATLAB/Simulink的系统仿真技术与应用[M].北京:清华大学出版社,2002:6-8.

[2] 邱关源.电路[M].5版.北京:高等教育出版社,2008:158-168.

[3] 楼顺天.基于MATLAB的系统分析与设计[M].西安:西安电子科技大学出版社,1999:25-47.

[4] 陈得宝,杨一军,姜文彬.Matlab在电子类课程实验教学中的应用[J].淮北煤炭师范学院学报,2005,26(1):78-83.

[5] 钟麟,王峰.MATLAB仿真技术与应用教程[M].北京:国防工业出版社,2004:104-134.

[6] 飞思科技产品研发中心.MATLAB7辅助控制系统设计与仿真[M].北京:电子工业出版社,2005:6-8.

猜你喜欢
限幅寄存器波形
STM32和51单片机寄存器映射原理异同分析
对《压力容器波形膨胀节》2018版新标准的理解及分析
Lite寄存器模型的设计与实现
基于LFM波形的灵巧干扰效能分析
OFDM系统中基于限幅和压缩感知的非线性失真补偿算法
基于ARM的任意波形电源设计
双丝双正弦电流脉冲波形控制
盐酸后处理对水热合成纳米钛酸盐形貌及光限幅效应的影响
减小OFDM系统PAPR的限幅滤波方法分析
限幅特性在鱼雷控制系统设计中的应用