通信原理课程设计报告级电子信息工程专业姓名:班级:学号:一、设计题目:A/D和D/A转换器的仿真二、设计目的1.学习通过计算机建立通信系统仿真模型的基本技能,学会利用仿真的手段对实时通信系统的基本理论,基本进行验证。
2.学习现在流行的通信系统仿真软件的使用方法(如Matlab/Simulink,System View),使用这些软件解决实际系统中的问题。
三、设计要求1.根据所选的题目建立相应的数学模型。
2.在Matlab/Simulink仿真环境下,从各种功能库中选取、拖动可视化图符组建系统,在Simulink的基本模块库中选取满足需要的功能模块,将其图符拖到设计窗口,按设计的系统框图组建系统。
3.设置,调整参数,实现系统模拟。
4.设置观察窗口、分析数据和波形。
四、开发环境及其介绍1.开发环境:Matlab/Simulink2.软件介绍:(1)Simulink是MATLAB提供的用于对动态系统进行建模和仿真和分析的工具。
Simulink提供了专门用于显示输出信号的模块,可以在过程中随时观察仿真的结果。
(2)通过Simulink的存储模块,仿真数据可以方便地以各种形式保存到工作空间或文件中,以供用户在仿真结束之后对数据进行分析和处理。
(3)Simulink把具有特定功能的代码组织成模块的方式,并且这些模块可以组织成具有等级结构的子系统,因此具有内在的模块化设计要求。
基于以上优点,Simulink作为一种通用的的仿真建模软件工具,广泛用于通信仿真、数字信号处理、模糊逻辑、神经网络、机械控制、和虚拟现实等领域中。
作为一款专业仿真软件,Simulink具有以下特点:●基于矩阵的数值计算;●高级编程语言以及可视化的图形操作界面;●包含各个领域的仿真工具,使用方便快捷并可以扩展;●丰富的数据I/O接口;●提供与其他高级语言的接口;●支持多平台(PC/UNIX)。
五、设计内容1设计原理A/D转换器负责将模拟信号转换为数字信号,其转换过程为:首先对输入模拟信号进行采样,所使用的的采样速率要满足采样定理要求,然后对采样结果进行幅度离散化并编码为符号串。
D/A转换器的将输入的数字信号序列转换为模拟信号,其转换过程为:将输入的数字序列恢复为相同电平的采样值序列,然后通过满足采样定理要求的低通滤波器恢复模拟信号。
2.设计模型Simulink的通信模块库提供了Integer to Bit Converter模块可以将0~2M-1之间的整数转换为长度为M个比特的二进制数据输出,同时也提供了反向转换模块Bit to Integer Converter将比特数据转换为整数值。
利用这两个模块,结合零阶保持器模块作为采样保持模型,量化器模块Quantizer作为量化模型,就可对A/D和D/A过程进行建模。
其仿真电路原理图如下:3.模块说明及参数设置模块1:Constant说明:该模块在仿真时间段上始终输出一个常数和常向量,相当于电系统中的直流信号源,在该系统中作为AD转换的输入源。
输入的常数范围为0~255。
模块2:Zero-Order Hold说明:在设定的取样间隔上对输入信号进行取样,并在下一个取样到来之前保持信号的值并输出。
在本系统中作为取样保持电路,对输入信号进行取样保持,取样时间间隔设置为1s.参数设置:Sample time=1s模块3:Quantizer说明:该模块对输入的模拟信号进行离散化,量化时间间隔为1s。
参数设置:Quantization interval=1Sample time=-1模块4:Integer to Bit Converter说明:该模块将量化后的信号进行二进制转换,转换比特数设置为8位。
参数设置:Number of bits per integer=8输出二进制的尾数为8;Treat input values as=Unsigned输入数据的类型Unsigned;Output bit order=MSB first输出二进制数的方式为MSB first;Output data type=Inherit viainternal rule输出数据类型为Inherit via internal rule 模块5:Frame Status Conversion说明:该模块将二进制编码器输出的八位并行数据视为一个数据帧,将其打包为帧存储格式。
参数设置:Sampling mode of output signal=Frame-based模块6:Buffer说明:Buffer模块将帧存储格式的数据串行化输出,Buffer的大小设置为1。
参数设置:Output buffer size=8Buffer overlap=0Initial conditions=0模块7:Buffer1说明:该模块将串行数据恢复为8位并行数据,Buffer大小设置为8。
参数设置:Output buffer size=8Buffer overlap=0Initial conditions=0模块8:Reshape说明:因为Buffer2输出的8位并行数据是帧格式的,数据要传给Bit to Integer Converter就需Reshape模块将数据转换为数组格式的。
参数设置:Output dimensionality=1—D array模块9:Bit to Integer Converter说明:该模块将二进制序列转换为对应电平的采样序列,这里也要将转换比特数设置为8位。
参数设置:Number of bits per integer=8Input bit order=MSB firstAfter bit packing,treat resulting integer valuesas=UnsignedOutput data type=Inherit via internal rule模块10:Scope和Display说明:示波器用来显示传输数据的波形图,Disply用来显示最终的转换结果和显示从并串转换模块输出的比特序列。
参数设置:Format=shortDecimation=14.仿真结果分析例如输入常数17.5,因量化间隔为1,量化器将量化结果四舍五入,所以输出为18。
示波器显示经过A/D变换和并串转换之后的波形如下:实际未经过串并转换的二进制码显示如下:六、设计总结经过一周的通信原理课程设计让我受益菲浅。
在课程设计报告即将完成之际,我愿意对在这一周来的学习进行一下总结,理清这一周来的得与失。
取之长、补之短,使我能在今后的学习和工作中改正缺点,发挥自己的长处,提高办事效率,最终取得成功。
首先,我必须承认,在这两周通信原理课程设计中,让我得到了该有的教训,通过这个过程,我也收获了许多。
尽管刚开始态度很不端正,在思想上并没有给予重视,甚至有敷衍了事的念头,但随着自己步入进程,体味到了一点成功的喜悦感之后,立刻就丢弃了先前那种先入为主的危险想法。
我意识到,做任何事,首先要有端正的心态,如果仅仅想完成任务,敷衍自己,很难有所收获。
即使最终完成了任务,也没有那任务本该带来的意义,是失败的。
课题布置下来后,我就一直很犯愁。
因为要用Matlab仿真,自己知道虽然早就接触到过Matlab这一软件,但它能实现什么功能,有什么作用,怎么用,几乎是一无所知。
先前敷衍对待的学习态度直接导致了我现在的窘境。
追悔也没有用,自己马上去图书馆借到了相关仿真书籍,从零开始学起。
弄不懂的就百度或是请教同学,终于自己努力是自己掌握了一些基本的操作,勉强能够应对课程设计。
在学习软件操作的过程中我意识到Matlab功能确实强大,一定要好好学习,它能帮助我们解决许多问题,化抽象无具体,使通信原理这类理论性很强的课程有了实践依托,学起来更加轻松。
如果我有机会,我一定会劝诫我身边那些沉溺游戏,沉迷电影的同学,玩游戏、看电影不如学外语,而学外语则不如学习Matlab。
随着自己学习的深入,先前模模糊糊的知识得以清晰。
也许,在理论学习过程中你自己都不知道到底学到了什么,有什么用,怎么用,唯有经过实践检验,一切都变得清清楚楚。
先前不求甚解,抱着侥幸心理想蒙混过关的东西,在实际运用时逼着自己不得不去查阅资料,否则就将因为自己的模棱两可造成失误。
实验的目的是培养我们的动手能力,同时也在检验理论真伪。
“实验就是为了让你动手做,去探索一些你未知的或是你尚不是深刻理解的东西。
”每个步骤我都亲自去做,不放弃每次锻炼的机会。
即使不懂的求教了同学,也一定要自己重新操作一遍,以使自己留下深刻印象。
在探索中求得真知识是最牢固的,也是最有价值的。
那些伟大的科学家之所以伟大就是他们利用实验证明了他们的伟大。
实验是检验理论正确与否的试金石。
为了要使你的理论被人接受,你必须用事实(实验)来证明,让那些怀疑的人哑口无言。
虽说我们的通信原理实验只是对前人的经典实验的重复,但是对于一个知识尚浅、探索能力还不够的人来说,这些探索也非一件易事。
通信原理实验都是一些经典的给人类带来了难以想象的便利与财富。
对于这些实验,我在探索中学习、在模仿中理解、在实践中掌握。
通信原理实验让我慢慢开始“摸着石头过河”。
学习就是为了能自我学习,这正是实验课的核心,它让我在探索、自我学习中获得知识。
此次通信原理Matlab仿真课程设计的主要目的之一,是希望我们学会用软件仿真的方法来分析通信系统中的问题,对层次较高、接收能力较强的学生起到拓展视野提高钻研能力的作用;另一方面,希望利用已仿真好的软件来验证理论知识。
在设计过程中,我遇到了许多困难,但在同学的大力帮助下都顺利得到了解决,在这里我对在课设过程中对我提供帮助的同学表示最诚挚的谢意!。