“Matlab语言与应用”课程教学设计探讨

2010-08-16 01:13宋爱国温秀兰
电气电子教学学报 2010年6期
关键词:工具箱上机传递函数

吴 涓,宋爱国,温秀兰

(1.东南大学仪器科学与工程学院,江苏南京 210096;2.南京工程学院自动化学院,江苏南京 211167)

我校仪器科学专业给三年级本科生开设了16个学时的“Matlab语言与应用”课程[1]。如何在有限的时间内,尽可能让学生全面掌握Matlab的使用方法,灵活应用于解决专业课程的问题,加深对专业知识的理解,是我们教学过程中迫切需要思考的问题。本文在该课程教学内容和教学方法上,进行了一些探索和尝试,取得了较好的教学效果。

1 教学方法实现

1)合理安排课堂授课和上机实践

Matlab语言与应用是一门实践性很强的课程,在语言规则和使用技巧上有一定的特殊性[4]。我们在课程安排上,将课堂授课与上机实践穿插在一起。一堂课进行教学,一堂课上机实践。课堂授课主要介绍Matlab使用方法,附带布置上机实践题目、分析上机题目的实现要点和点评学生上机实践中可能出现的典型问题。通过上机实践,不仅让学生复习讲过的知识要点,也可提高学生借助参考书和电子资源进行自学的能力并为他们提供独立分析解决问题的机会。

例如,我们在学生上机实践时,布置了关于电机的双闭环控制系统的设计题目。该题目要求学生首先利用Matlab的数学计算功能,由给定参数计算电机控制模型参数;还要利用Matlab的控制系统函数和工具箱,设计具有稳定性和准确性的控制器传递函数;最后借助Simulink工具箱,仿真整个控制系统的实现过程,并且以图形化方式显示。这样,学生通过做这道题目就能复习数值计算、系统工具箱、m函数编程、Simulink仿真和图形显示等功能,达到了事半功倍的效果。该题目中主要环节—系统建模的实现方法有多种,既可以借助LTI工具箱,也可以自己编写m函数实现控制系统的设计。学生在尝试采用不同方法实现设计的过程中,针对具体问题,通过将不同方法的结果比较,较容易掌握Matlab各种工具函数的使用技巧,引导学生比较各种实现方法的优缺点,提高学习能力和水平。

2)掌握Matlab使用中的技术难点

我们在教学中,对Matlab的使用特点进行了总结,归纳出一些基本问题和典型的专业工具包,重点介绍了Matlab的基本操作对象是矩阵。因此,对Matlab使用方法的介绍,首先从对矩阵操作引入,着重介绍矩阵的建立、修改和运算等。另外,Matlab程序的框架是基于函数和m文件,创建规则又和高级语言例如C语言有类似之处。我们主要结合m函数的生成和程序创建方法,从典型的m函数的创建过程入手,介绍Matlab的使用技巧和基本规则和图形化显示。由于专业工具箱和Simulink仿真是Matlab的特色。因此,我们在4个课堂学时中,分别就信号处理工具箱和Simulinl做了详细介绍。

3)综合实例,加深对Matlab的理解

Matlab在信号处理和自动控制等方面有很多专业的工具箱和函数,对帮助学生理解课程原理和实现方法非常有帮助。但很多关于Matlab工具书在介绍Matlab的相关工具使用方法时,只是介绍反映原理特征的基本函数,对这些变换的物理意义以及相互间联系讨论较少。我们可以选择合适的习题,让学生加深对Matlab的理解。

[习题]增加数据长度对谱分析有何影响?

现令模拟信号 x(t)=2sin(4π t)+5cos(8π t),以t=0.01*n(n=0:N-1)进行采样,求 N点的信号频谱。N分别为64和1024,试比较信号谱结构的不同,并且解释其原因。

许多学生在编程设计解题时,看到求信号的频谱,很自然地会想到直接使用fft()函数,典型的结果图如图1所示:他们从仿真结果图上只能看到数据长度变化后,图形形状上的差异,似乎看不到共同点,也难以准确解释改变采样点数对信号处理结果的影响,对信号进行FFT变换的意图更是不清楚。

图1 典型作业的信号幅频图(横坐标为频率/Hz)

出现这种结果的原因是,一方面学生对Matlab中fft()函数理解不透彻,误将fft()函数变换后的自变量序列数当做频率,FFT得到的第n个点的复数序列当做频谱;另一方面,他们不清楚采样频率与采样点以及频率分辨率之间的对应关系。

正确的步骤应该是,对fft()变换的结果进行转换和处理,根据 f=k×f s/N(其中,f为自变量频率,k为采样序列,f s为采样频率,N为采样点数)将采样序列转换为频率值,取其对半频率部分,将fft()函数获得的结果取模。正确结果如图2所示,从此图就能分辨出信号主频率,以及采样点数N对信号分析的影响。

图2 信号幅频图(横坐标为频率/Hz)

再如,在自动控制原理中,离散控制系统的脉冲传递与连续控制系统的开环传递函数之间转换关系是一个重要的问题。通过Matlab仿真,学生能直观区分出两者之间的区别与联系。现设一个连续线性系统,如图3所示,对象模型G1(s)=2/(s2+30s),G2(s)=10/(s2+6s+5),采样周期 Ts=0.1s,试求系统的脉冲闭环传递函数。

图3 离散闭环系统

这个习题利用Matlab求取离散脉冲闭环传递函数的步骤是:①先要利用tf函数建立连续系统传递函数模型;②利用连续开环传递函数求取离散开环传递函数;③利用feedback函数建立闭环系统模型。而其中第②步,隐含了离散控制系统不同串联方式下的等效关系以及如何利用零阶保持方法进行系统变换两个原理性问题。学生必须在理解控制系统基本原理问题的前提下,才有可能利用Matlab函数工具做出正确的解答。因此,在习题讲解时,我们着重从原理出发,结合基本函数演示例题的解题过程。学生通过Matlab编程,对比了不同串联形式下系统闭环传递函数结果后,既能掌握Matlab函数的使用方法,又对自动控制的基本原理有清楚认识。

2 结语

在“Matlab语言及应用”课程教学中,笔者从课时安排、授课内容和重点习题的讲解方法三方面做了精心的设计,通过短学期16个学时(8+16)的授课和上机学习,学生较为全面地掌握了Matlab的使用方法。上机实践能力和综合运用水平得到锻炼并有显著提高。本课程教学在重视技能培养的同时,引导学生将Matlab学习的过程升华为一个从专业理论知识到Matlab实践、再由实践总结加深对专业理论知识的认知的过程,在Matlab实践中建立起较为完备的知识体系。

[1] 陈海秀.MAT ALB在误差理论和数据处理教学中的应用[J].济南:科技信息,2009,2,79-79

[2] 师玉宝.《自动控制理论》课程引入MA TALB软件的教学组织与实施[J].西宁:青海大学学报,2009,vol27(4):89-91

[3] 潘矜矜,杨小劲.Matlab与《信号与系统》课程教学改革的探讨[J].福州:福建电脑,2009,第 2期,206-207

[4] 杨夷梅,杨玉军.Matlab教学中的方法与实践[J].保定:中国电力教育,2008年,No.127,59-60

[5] 张玉叶,马峰全.谈Matlab实验教学中学生探索思维的培养[J].石家庄:石家庄学院学报,2007,vol9(6):114-116

猜你喜欢
工具箱上机传递函数
周金应
扰动输入时偏差传递函数计算方法探讨
标准化护理程序对体外膜肺氧合术患者上机各阶段用时的影响
上机数控“可疑”的高毛利率
会“叫”的工具箱和工具
基于LabVIEW的火焰传递函数测量系统
基于MATLAB优化工具箱优化西洋参总皂苷提取工艺
机械加工机床工具箱的优化设计
红外成像系统的调制传递函数测试
基于传递函数自我优化的BP网络算法改进