电信专业毕业论文 - 基于MATLAB的PSK系统仿真(3)

2019-01-26 12:51

**理工大学2011届毕业论文

特别适合于针对电子通信系统模块的系统级仿真,因此,该课题主要讨论电子通信系统的系统级(方框图级)的仿真问题。

2.1.2计算机仿真的步骤

计算机仿真的一般步骤有以下几个方面。?

(1)仿真问题的提出。系统设计之前,应该有一个完整、准确的需求说明。建立系统仿真的第一步,必须清楚、准确地提出仿真试验所要解决的问题。?

(2)仿真系统分析。对所提出的仿真系统给出详细定义,明确系统中的模块、系统构成、模块之间的相互关系,系统的输入输出、边界条件以及系统的约束条件,并确定仿真所要达到的目标。?

(3)建立系统的数学模型。根据仿真系统分析的结果,确定系统中的参数、变量及其相互之间的关系,并以数学形式将这些关系描述出来,从而构成仿真系统的数学模型。数学建模是系统仿真中最关键的一步,所建立的数学模型必须尽可能准确地反映所关心的真实系统的特性,而又不能过于复杂,以免降低模型的效率,增加不必要的计算过程,即建模需要根据求解问题的要求,在模型的近似程度与复杂程度之间折中。电子与通信系统的数学模型通常以方框图形式或数学方程形式来表达。

(4)数据收集。根据建立的数学模型所需要的数据元素,收集与模型系统有关的数据。?

(5)根据数学模型建立系统的计算机仿真模型。系统的计算机仿真模型是指数学模型的计算机实现。确定计算机仿真模型就是根据数学模型和收集的数据,确定其中各子模块的结构,输入输出接口,输入输出的数据表达形式,数据的存储方式等。然后编制相应的程序流程,最后选择某种程序设计语言编程实现。

(6)仿真模型验证。仿真模型验证的目的是确定计算机仿真模型是否准确表达了数学模型。由于计算机仿真模型是由程序实现的数学模型,编制程序的错误、求解问题方法选择不当均会导致仿真结果偏离真实值。在利用C语言等编制仿真程序时,程序调试、数值算法调试等都是一件不容易的事情。MATLAB/Simulink提供了非常稳定的数值计算函数,并且由于?MATLAB?语言更接近数学语言表达,使得在程序调试、查错排错上的花费大大减少,使得用户可以将大量精力集中于数学建模和仿真结果分析上,而不是将时间消耗在程序

7

**理工大学2011届毕业论文

调试之中。仿真模型验证通常的方法是将数学模型的解析结果(或理论结果)与仿真所得到的数值结果相比较来完成的;或通过已知的系统输入输出结果,对比在相同条件下的系统仿真结果来验证仿真模型的正确性。

(7)仿真模型的确认。仿真模型的确认就是确定仿真模型是否按照设计所要求的精度代表实际系统,即仿真模型是否合理。可通过将模型与现实系统相比较来确认仿真模型。例如,对于无线电信道可以有不同的数学建模,而这些数学模型对于特定条件下的实际无线信道的近似程度往往是不同的。模型验证和确认对于系统仿真结果的有效性是至关重要的。工程实践中,在图上作业时,仿真试验得出相关结果后,还要进行现场踏勘。此时可以验证建模与仿真的结论与实际的测量结果的差异,对仿真模型进行分析和评估。但是系统仿真界对模型验证和确认的理论研究还比较少,重视程度也不够。根据美国西北大学Hoover教授的调查,在有关仿真的论文中,提到模型验证和确认的文献数目不足30%,而绝大部分论文根本没有提及模型验证和确认的问题。?

(8)仿真试验设计。仿真试验设计就是确定仿真试验方案,包括:系统激励信号的设计,系统仿真时间设计,仿真运行次数设计,以及仿真系统的其他参数设计等。?

(9)计算机仿真模型的运行。根据仿真试验设计的方案,让计算机执行计算,并在执行计算的过程中了解仿真模型对于各种不同输入信号以及不同参数和仿真机制下的输出,得出试验数据,从而预测系统在实际环境中的运行情况。

(10)计算机仿真结果分析。对仿真模型的运行阶段所产生的数据进行分析,其目的是从运行阶段所产生的数据中找出系统运行规律,对仿真系统的性能做出评价,为系统方案的最终决策提供辅助支持。对仿真结果的分析通常采用统计学的分析方法,对仿真数据的可靠性、一致性、置信度等做出判定,最终将仿真结果以动画、曲线、图表和文字等形式形成仿真报告或论文。在MATLAB/Simulink中提供了非常方便的数据分析函数和显示工具,如:作图,示波器,频谱分析仪,动画,统计工具箱中的各种统计分析函数,数据插值等等。

2.2 MATLAB仿真软件应用领域 2.2.1 MATLAB软件发展历程及应用

MATLAB是MathWorks公司开发的一种跨平台的,用于矩阵数值计算的简单

8

**理工大学2011届毕业论文

高效的数学语言,与其它计算机高级语言如C,C++,Fortran,Basic,Pascal等相比,MATLAB语言编程要简洁得多,编程语句更加接近数学描述,可读性好,其强大的图形功能和可视化数据处理能力也是其它高级语言望尘莫及的。对于具有任何一门高级语言基础的读者来说,学习MATLAB十分容易。

但是,要用好MATLAB却不是在短时间就可以达到的。这并不是因为MATLAB语言复杂难懂,而是实际问题的求解往往更多的是需要使用者具备数学知识和专业知识。MATLAB使得人们摆脱了常规计算机编程的繁琐,让人们能够将大部分精力投入到研究问题的数学建模上。可以说,应用MATLAB这一数学计算和系统仿真的强大工具,可以使科学研究的效率得以成百倍的提高。

目前,MATLAB已经广泛用于理工科大学从高等数学到几乎各门专业课程之中,成为这些课程进行虚拟实验的有效工具。在科研部门,MATLAB更是极为广泛地得到应用,成为全球科学家和工程师进行学术交流首选的共同语言。在国内外许多著名学术期刊上登载的论文,大部分的数值结果和图形都是借助MATLAB来完成的。

与其它高级语言相比较,MATLAB具有独特的优势:

(1) MATLAB是一种跨平台的数学语言。采用MATLAB编写的程序可以在目前所有的操作系统上运行(只要这些系统上安装了MATLAB平台)。MATLAB程序不依赖于计算机类型和操作系统类型。?

(2) MATLAB是一种超高级语言。MATLAB平台本身是用C语言写成的,其中汇集了当前最新的数学算法库,是许多专业数学家和工程学者多年的劳动结晶。使用MATLAB意味着站在巨人的肩膀上观察和处理问题,所以在编程效率,程序的可读性、可靠性和可移植性上远远超过了常规的高级语言。这使得MATLAB成为了进行科学研究和数值计算的首选语言。

(3) MATLAB语法简单,编程风格接近数学语言描述,是数学算法开发和验证的最佳工具。MATLAB以复数矩阵运算为基础,其基本编程单位是矩阵,使得编程简单,而功能极为强大。对于常规语言中必须使用许多语句才能实现的功能,如矩阵分解、矩阵求逆、积分、快速傅立叶变换,甚至串口操作、声音的输入输出等,在MATLAB中均用一两句指令即可实现。而且,MATLAB中的数值算法是经过千锤百炼的,比用户自己编程实现的算法的可信度和可靠性都大为提高。

9

**理工大学2011届毕业论文

(4) MATLAB计算精度很高。MATLAB中数据是以双精度存储的,一个实数采用8字节存储,而一个复数则采用16字节存储。通常矩阵运算精度高达1015以上,完全能够满足一般工程和科学计算的需要。与其它语言相比,MATLAB对计算机内存、硬盘空间的要求也是比较高的。

(5) MATLAB具有强大的绘图功能。利用MATLAB的绘图功能,可以轻易地获得高质量的(印刷级)曲线图。具有多种形式来表达二维、三维图形,并具有强大的动画功能,可以非常直观地表现抽象的数值结果。这也是MATLAB广为流行的重要原因之一。?

(6) MATLAB具有串口操作、声音输入输出等硬件操控能力。随着版本的提高,这种能力还会不断加强,使得人们利用计算机和实际硬件相连接的半实物仿真的梦想得以轻易实现。?

(7) MATLAB程序可以直接映射为DSP芯片可接受的代码,大大提高了现代电子通信设备的研发效率。

(8)MATLAB的程序执行效率比其它语言低。MATLAB程序通常是解释执行的,在执行效率和速度上低于其它高级语言,当然如果对执行效率有特别要求,可以采用C语言编制算法,然后通过MATLAB接口在MATLAB中执行。事实上,MATLAB自带的许多内部函数均是用C语言编写并编译的,因此利用MATLAB内部函数的程序部分运行速度并不比其它语言中相应函数低。

20世纪70年代,美国新墨西哥大学计算机科学系主任Cleve Moler为了减轻学生编程的负担,用FORTRAN编写了最早的MATLAB。1984年由Little、Moler、Steve Bangert合作成立了的MathWorks公司正式把MATLAB推向市场。到20世纪90年代,MATLAB已成为国际控制界的标准计算软件。MATLAB 产品族可以应用于数值分析、数值和符号计算、工程与科学绘图、控制系统的设计与仿真、数字图像处理技术、数字信号处理技术、通讯系统设计与仿真、财务与金融工程等领域。

MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。

10

**理工大学2011届毕业论文

2.2.2 MATLAB/Simulink仿真转换方法

MATLAB/Simulink属于一种通用的科学计算和系统仿真语言。在MATLAB/Simulink下,从数学模型到计算机仿真模型的转换非常容易。MATLAB/Simulink提供了三种方法:??

(1)M文件编程实现的方法:根据数学模型所建立的方程和数据参数,通过编程实现方程的表示和数值求解。其特点是灵活性好,数学关系显式地表达在程序语句之中,但是仿真的直观性方面稍显欠缺,通常在仿真计算完毕之后才能看到结果。M文件编程实现的方法是基于数据流的仿真方法。?

(2)Simulink方法:可以根据数学模型建立对应的系统方框图,通过所见即所得的方式连接模块,然后选择求解方式和精度,运行仿真。其特点是直观性好,可以在仿真过程中实时地修改系统模块的参数,并能够实时地显示当前的仿真结果。Simulink仿真实现的方法是基于时间流的仿真方法。

(3)Simulink结合M文件编程的方法:这是前两种方法的综合应用,同时具备图形界面的直观性和字符界面的强大功能。事实上,所有Simulink的模块以及系统构建、仿真参数、仿真求解算法等均可通过编程语句实现。与通过图形界面交互完成的仿真过程相比较,通过编程语句实现将“手动”的仿真过程真正变成了“自动化”仿真过程。实际中,对于较为复杂的系统,如整个通信接收机的仿真,往往采取Simulink结合M文件编程的方法。

2.3 Simulink仿真原理

2.3.1 Simulink软件的简介与特点

Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。

Simulink是MATLAB中的一种可视化仿真工具, 是一种基于MATLAB

11


电信专业毕业论文 - 基于MATLAB的PSK系统仿真(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:初级标准日语-基础语法及句型

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: