基于Matlab的通信原理教学探索*
2013-09-27杨育捷张会芝
◆杨育捷 张会芝
通信原理是通信工程、网络工程、电子工程等信息类专业的专业必修课,以高等数学、概率论与统计学、线性代数及复变函数为数学基础,涉及电路分析、信号与系统、随机信号分析等专业基础课的理论基础。因此,通信原理课程具有理论性强、直观性差、课堂教学中具有大量公式推导的特点。教学模式以多媒体教学为主、黑板板书为辅,教学效果较差,趣味性不强。学生反映教学内容难度大,内容抽象,不易理解,直观性差。将仿真软件融入课堂教学,使得实际中的公式推导过程,理论分析直观性强,易于理解和接受。同时把计算的结果以仿真图形的方式输出,很容易使学生直观地得到结果并且理解原理。而且,在对通信系统仿真时,通过仿真软件对各种参数的修改一目了然,使得学生更好地理解系统原理,提高教学的有效性,获得较好的课堂效果[1]。
Matlab是Math Works公司推出的一套高性能的数值计算和可视化的科学工程计算软件[2],支持解释型语言输入,编程实现简单,具有丰富的数学函数功能支持。同时,Matlab软件中的部件Simulink甚至可以采用图形输入的方式来搭构所研究的系统。教师可以利用Matlab中的函数、模块及直观简单的图形界面,把难以理解的通信理论、系统构成、信号波形的转换通过课堂的多媒体设备直接展示给学生,不但使学生加深对理论知识的理解,而且增强了学生的感性认识,激发学生的学习兴趣,提高课堂讲授的效率。
1 课堂教学中采用Matlab
通过Matlab仿真软件,可以将抽象的理论具体化、形象化,并且可以在课堂上直接演示给学生看结果和过程,使得学生加深对理论知识的理解,同时对系统的通信过程一目了然。实际中的信号经常是模拟的,比如电视信号、麦克风接收的话音信号及手机中传输的语音信号等。为了能利用数字通信的方式,需要对模拟信号进行数字化,数字化的过程一般分为抽样、量化、编码几部分。其中,抽样要保证不丢失原始信息,量化要满足一定的质量,编码解决信号的表示。PCM就是将模拟信号的抽样、量化后的值变换为二进制码组,这一过程称为编码。而把二进制码组还原为模拟信号的过程称为译码[3]。通信时将输入的语声信号经过抽样、量化后,每个抽样值编码成8 bit的二进制码组,量化时分为A律和u律量化,而我国常用的是A律量化。A律量化中的每个区间又经过均匀量化变为16个量化电平,即编码过后的码型为:
a0a1a2a3a4a5a6a7
其中,a0为极性码,当输入为负时,a0=0;当输入为正时,a1=1。a1a2a3为段落码,a4a5a6a7为段内码。在PCM编码过程中首先判断极性码,第二步为判断段落码,段落码与该段落的初始的量化电平和每一小段代表的量化间隔有一定的对应关系,对应关系如下[3]:
段落0(000):0-32份,段内均分为16小段,每小段2份;
段落1(001):32-64份,段内均分为16小段,每小段2份;
段落2(010):64-128份,段内均分为16小段,每小段4份;
段落3(011):128-256份,段内均分为16小段,每小段8份;
段落4(100):256-512份,段内均分为16小段,每小段16份;
段落5(101):512-1024份,段内均分为16小段,每小段32份;
段落6(110):1024-2048份,段内均分为16小段,每小段64份;
段落7(111):2048-4096份,段内均分为16小段,每小段128份。
判断段落码的方法为先对信号的电压值进行归一化处理,然后将归一化的电压值转化为量化电平值,最后根据电平值所处的位置判断其所在的段落位置。最后判断出所在的段落码后,再进行段内码的编写。段内码为4位码,首先根据判断出的段落码确定这一段落内的单位码值,根据电平值和段落码的起始位置来判断电平值所在的段内码。
在实际教学中,学生通常对这一过程比较陌生,课堂上可先举一个实际的电压值作为实例。比如对一个变化范围在[-6 V,+6 V]的正弦信号进行抽样,抽样值为-2.4 V,对这个样值编码。首先,样值为负,因此,极性码a0=0。第二步对样值进行归一化处理:。量化电平:由于1638.4∈[1024,2048],因此段落码为a1a2a3=110,位于第六段,段内均匀分为16小段,每个小段的电平值为64。第三步为判断段内码:1638.4=1024+9×64+64/2+6.4,所以量化电平位于第九段内,段内码为a4a5a6a7=1001。由于段内采用均匀量化,因此量化误差为:6.4个量化单位。
为了进一步使学生理解PCM编译码的原理,并且对这一原理有更加深刻的感性认识,课堂中可以使用Matlab对PCM编码做出仿真结果进行演示和分析。
PCM编码的仿真代码为:
当输入信号为正弦信号x(t)=sin2πt时,得到的PCM编译码图形图1所示。从图1中可以看出,在抽样序列是一个比较规则的正弦图像,但经过编码后的解码输出是带有一定的失真的正弦图形,这是因为在编译码的量化过程中含有量化噪声和量化误差。在实际的教学中,学生往往不容易理解量化噪声的概念,通过课堂的演示不但可以使学生对PCM编译码有了比较直观的认识,还可以把比较难讲解的量化误差的概念通过图形演示的形式表现出来,使学生更容易接受。
图1 A律PCM编译码后与输入波形比较图
图2 VSB调制及其解调信号
2 Matlab用于实验教学
目前,通信原理课程的实验主要以硬件实验箱,通过实验箱上的各个模块对各种通信现象进行仿真,具有操作简单、实现方便的特点。但由于只能对原理简单的一些通信现象进行验证性分析,因此提不起学生的操作兴趣。同时目前实验箱上的实验一般只针对数字调制,而很少涉及模拟通信调制解调的设置,不利于学生对模拟调制、解调原理的理解,因此需要添加软件的辅助手段来进行操作。利用Matlab可以设计一些需要学生独立完成的实验项目,要求学生根据需要设计一个符合要求的通信系统,建立数学模型,然后在Matlab的软件库中寻找合适的模块,按照设计的系统进行连接,并进行动态的仿真。由此调动学生的探索积极性,同时在设计系统、模拟系统和仿真过程中加深对相应通信原理的理解,增强学习的信心和兴趣。
以模拟通信中的残留边带调制为例,以频率为2 Hz和4 Hz的余弦信号与正弦信号的和信号为信源信号,假设这两个信号的功率相同,总功率为2,载波频率为10 Hz,图2显示了VSB调制信号的波形、相干解调后信号波形与原信号波形的比较以及VSB信号的功率谱密度图形[4]。
仿真代码如下:
在模拟通信调制解调原理的课堂讲解中,由于双边带(DSB)调制和单边带(SSB)的原理相对简单,用公式推导和画出图形的教学手段,学生理解起来比较直观和容易。因此,对这两种模拟调制技术的原理比较容易理解,但对残留边带调制技术往往觉得理解起来比较困难。通过Matlab软件仿真具有较好的直观性,便于学生理解原理。同时要求学生自己设计通信系统进行编码,增加了实验的难度及学生动手实验的兴趣,提高了教学的效率。
3 结语
Matlab是功能强大的计算机仿真软件,具有操作性强、易于上手、界面友好、开放性强等优点,把Matlab软件引入教学,能够对教学起到很好的辅助作用。同时在通信原理的理论及实验教学中,采用Matlab软件不但可以向学生更好地阐释通信的基本原理,而且仿真图像的引入使学生加深了感性认识和理性理解。同时,实验中的设计仿真也增强了学生的编程能力,增加了学生动手的兴趣,并且拓宽了学生的思路,增强了学生科研能力和计算机操作能力。
[1]程玲,徐冬冬.Matlab仿真在通信原理教学中的应用[J].实验室研究与探索,2010(2):117-119.
[2]梅志红,杨万铨.Matlab程序设计基础及其应用[M].北京:清华大学出版社,2005:3.
[3]周炯槃,庞沁华,续大我,等.通信原理[M].3版.北京:北京邮电大学出版社,2002:300.
[4]郭文彬,桑林.通信原理:基于Matlab的计算机仿真[M].北京:北京邮电大学出版社,2006:58,129.