《基于matlab的扩频通信系统仿真研究(50页).doc》由会员分享,可在线阅读,更多相关《基于matlab的扩频通信系统仿真研究(50页).doc(49页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-基于matlab的扩频通信系统仿真研究-第 45 页摘 要自从扩频通信的概念在50年代开始成熟以后,此后的二十多年扩频通信技术仍得到很大的发展,但都只是局部的发展,如硬件的改进和应用领域的拓展。一直到80年代初期,扩频通信的概念都只是在军事通信系统中得到应用,这种状况到了80年代中期才得到改变。扩频技术发展到现在,CDMA技术成为目前扩频技术中研究最多的对象,其中民用通信的直接序列扩频技术广为应用。本文阐述了扩展频谱通信技术的基本原理、主要性能指标及其工作特点,然后根据香农定理和柯捷尔尼科夫潜在抗干扰理论,通过MATLAB 提供的Simulink 仿真平台对直扩通信系统进行了仿真,建立了扩频
2、通信系统仿真模型,详细讲述了各个模块的设计,并指出了仿真建模中要注意的问题。在给定的仿真条件下,运行了仿真程序,得到了预期的仿真结果。关键词:扩频通信;信噪比;MATLABAbstractSince the concept of spread spectrum communication became mature in the 50 s, After twenty years of spread spectrum communication technology still get great development. But only developed locally, such as
3、hardware improvement and development in the field of application. Until the early 80 s, The concept of spread spectrum communication was only applied in the military communication system. The situation was changed until in the mid of 80s.Now, CDMA technology is the most studied objects in the spread
4、 spectrum technology, One of civil communication widely used direct sequence spread spectrum technology.This article elaborated the spread spectrum communication technologys basic principle, the main performance index and the operating feature, then it act according to the Shannon theorem and tan oa
5、k Jieer the Nikefu latent antijamming theory, provides visualization tool Simulink and Monte using MATLAB the Carb simulation algorithm, has established the wide frequency communications system simulation model, narrated in detail each modules design, and had pointed out in the simulation modelling
6、must pay attention question. In assigns under the simulation condition, it moved the simulated program, obtained the anticipated simulation result. Key words: Spread Spectrum Communication; Signal-to-Noise; MATLAB目 录1 绪论11.1 课题背景11.2 扩频通信的研究意义及现状11.3 本课题研究的主要内容22 扩频通信相关理论42.1 扩频通信的相关原理42.1.1 扩频通信的理论
7、基础42.1.2 扩频通信主要性能指标52.1.3 数字调制技术62.1.4 扩频通信的工作原理72.1.5 扩频通信实现方法72.2 扩频通信系统的特点82.2.1 性抗干扰强82.2.2 低截获性82.2.3 抗多路径干扰性能好92.2.4 保密性好93 MATLAB简介103.1 MATLAB的背景103.2 MATLAB的组成123.3 Simulink简介123.4 MATLAB的优势和特点143.5 MATLAB的主要功能174 扩频通信系统的仿真184.1 对产生m序列的仿真184.2 扩频通信原理的仿真234.3 对直接扩频通信系统的仿真26结 论32致 谢33参考文献34附
8、录35附录A 英文原文35附录B 中文翻译481 绪论1.1 课题背景扩频通信的研究起源于第二次世界大战,目的是在地方控制区内提供一种保密通信的方法,扩频通信系统利用了扩展频谱的技术,其占用的带宽远远大于要传输的原始信号的带宽,并且与原始信号的带宽无关,这样就能获得一定程度的抗干扰能力和抗阻塞能力。扩频通信系统能够在背景噪声中隐蔽传送信号,使窃听者的截获概率非常低,在军事通信和民用通信领域中被广泛应用。1.2 扩频通信的研究意义及现状扩频技术(Spread Spectrum, SS)的历史可以追溯到20世纪50年代中期,但是直到80年代初,扩频技术仍然主要应用在军事通信和保密通信中。随着个人通
9、信业务的发展以及全球定位系统的应用,到现在为止,使用扩频技术的用户已经超过一亿。无线通信已经成为电信产业最大的部门之一,经过十年多的稳步发展,俨然是21世纪中最有发展潜力的领域。扩频技术在未来无线系统中的应用也再次成为人们关注的重点。扩频通信系统是在50年代中期产生的,其最初的应用包括军事抗干扰通信、导航系统、抗多径实验系统以及其它方面。自从扩频通信的概念在50年代开始成熟以后,此后的二十多年扩频通信技术仍得到很大的发展,但都只是局部的发展,如硬件的改进和应用领域的拓展。而个人通信业务(PCS)的发展终于使扩频技术迎来了另一次大发展的机遇。一直到80年代初期,扩频通信的概念都只是在军事通信系统
10、中得到应用,这种状况到了80年代中期才得到改变。美国联邦通信委员会(FCC)于1985年5月发布了一份关于将扩频技术应用到民用通信的报告。从此,扩频通信技术获得了更加广阔的应用空间。90年代初,在第一代模拟蜂窝通信系统的基础上,出现了PCS研究的热潮。扩频技术为共享频谱提供了可能。使用扩频技术能够实现码分多址,即在多用户通信系统中所有用户共享同一频段,但是通过给每个用户分配不同的扩频码实现多址通信。利用扩频码的自相关特性能够实现对给定用户信号的正确接收;将其他用户的信号看作干扰,利用扩频码的互相关特性,能够有效抑制用户之间的干扰。随着PCS以及蜂窝移动通信的发展,CDMA技术已经成为不可或缺的
11、关键技术。扩频通信技术也在民用通信中找到更为广阔的应用空间,而关于CDMA技术的研究热潮也一直延续到现在。扩频技术由于其本身具备的优良性能而得到广泛应用,到目前为止,其中最主要的两个应用领域仍是军事抗干扰通信和移动通信系统,而跳频系统与直扩系统则分别是在这两个领域应用最多的扩频方式。从扩频技术的历史可以看出,每一次技术上的大发展都是由巨大的需求驱动的。军事通信抗干扰的驱动以及个人通信业务的驱动使得扩频技术的抗干扰性能和码分多址能力得到最大限度的挖掘。展望未来,第四代移动通信系统(4G)的驱动无疑会使扩频技术传输高速数据的能力得到更大的拓展。3G设计的目标主要是支持多媒体业务的高速数据传输,因此
12、其研究主要集中在新标准和新硬件的开发。而对于3G以后的发展,不同的研究者有不同的观点。但是从用户的观点看,4G应该具备以下的主要特征:1、最大的灵活性,应该能够满足在任何时间和地点,通过任何设备都可以实现通信;2、降低成本,4G在实现比3G的传输速率高12个数量级的同时,还应该使成本降为3G时的1/10或1/100;3、个性化和综合化的业务,不仅仅是保证每个人都能通过一个终端进行通信,而要在人周围的家庭、办公室以及热点地区建立一个通用的信息环境,使每个人都可以根据需要以各种方式获得信息。目前实现4G观点主要有2种:一种是开发新的无线接口和技术;另一种则是集成现有的及未来的无线系统。前者关注新技
13、术的应用,例如多载波调制技术,即OFDM,是一种传输高速数据的有效调制方案,被认为有望成为4G的标准调制技术。而另一种观点则认为,更重要的是将现有的和未来的通信系统集成,其中的网络包括无线局域网(WLANs)、无线个域网(WPANs)、Ad Hoc网络以及家庭局域网等,其中连接的设备则包括便携式移动终端、固定设备、个人电脑以及娱乐设备等。超宽带(UWB)技术以及软件无线电(SDR)技术在无线网络集成方面也起着重要的作用。在4G网络的实现中,有的技术本身就是扩频技术的延伸,有的则能够很好得与扩频技术结合,还有的则能用于扩频系统的实现,因此这些新技术的发展体现着扩频技术的发展趋势。11.3 本课题
14、研究的主要内容扩频通信技术是一种新的信息传输方式,原理是其信号所占有的频带宽度远大于所传信息必需的最小带宽;频带的扩展是通过一个独立的码序列来完成,用编码及调制的方法来实现的,与所传信息数据无关;在接收端则用同样的码进行相关同步接收、解扩及恢复所传信息数据。本设计在深入学习扩展频谱通信技术的理论基础和实现方法的基础上,利用MATLAB提供的可视化工具Simulink建立了扩频通信系统仿真模型,在给定仿真条件下,设计仿真程序,调试程序,进行仿真并分析仿真结果。2 扩频通信相关理论2.1 扩频通信的相关原理2.1.1 扩频通信的理论基础扩频通信与光纤通信和卫星通信一起被誉为信息时代三大高技术通信传
15、输方式。扩频通信技术作为一种信息传输方式,它是以占有频带宽度远远大于所传输信息必需的最小带宽的带宽来传输信号。频带的扩展是通过一个独立的码序列来完成的,用编码及调制的方法来实现,与所传信息数据无关;在接收端则用同样的码进行相关同步接收、解扩及恢复所传信息数据。这一定义包含了以下三方面的意思:1、信号的频谱被展宽了传输任何信息都需要一定的带宽,称为信息带宽。例如人类的语言的信息带宽为300Hz3400Hz,为了充分利用频率资源,通常都是尽量采用大体相当的带宽的信号来传输信息。在无线电通信中射频信号的带宽与所传信息的带宽是相比拟的。如用调幅信号来传送语音信息,其带宽为语言信息带宽的两倍;电视广播射
16、频信号带宽也只是其视频信号带宽的一倍多。这些都属于窄带通信。一半的调频信号,或脉冲编码调制信号,它们的带宽与信息带宽之比也只有几到十几。扩展频谱通信信号带宽与信息带宽之比则高达1001000,属于带宽通信。2、采用扩频码序列调制的方式来展宽信号频谱我们知道,在时间上有限的信号,其频谱是无线的。例如很窄的脉冲信号,其频谱则很宽。信号的频带宽度与其持续时间近似成反比。1微秒的脉冲的带宽约为1MHz。因此,如果用限窄的脉冲序列被所传信息调制,则可产生很宽频带的信号。如下面介绍的直系序列扩频系统就是采用这种方法获得扩频信号。这种很窄的脉冲码序列,其码速率是很高的,称为扩频码序列。这里需要说明的是所采用
17、的扩频码序列与所传信息数据是无关的,也就是说它与一般的正弦载波信号一样,丝毫不影响信息传输的透明性。扩频码序列仅仅起扩展信号频谱的作用。3、在接收端用相关解调来解扩正如在一半的窄带通信中,已调信号在接收端都要进行解调来恢复所传的信息。在扩频通信中接收端则用与发送端相同的扩频码序列与收到的扩频信号进行相关解调,恢复所传的信息。换句话说,这种相关解调起到解扩的作用。即把扩展以后的信号又恢复成原来所传的信息。这种在发端把窄带信息扩展成宽带信号,而在收端又将其解扩成窄带信息的处理过程,会带来一系列好处。弄清楚扩频和解扩处理的机制,是理解扩频通信本质的关键所在。长期以来,人们总是想法使信号所占频谱尽量的
18、窄,以充分利用十分宝贵的频谱资源。为什么要用这样宽频带的信号来传送信息呢? 简单的回答就是主要为了通信的安全可靠。扩频通信的基本特点是传输信号所占用的频带宽度(W )远大于原始信息本身实际所需的最小(有效)带宽(F) ,其比值称为处理增益Gp:Gp =W/F (2.1)由公式(2.1)可以看出,W与F差别越大,Gp越大,也就是说,扩频的增益越大。它表明了扩频系统信噪比改善的程度。除此之外,扩频系统的其他一些性能也大都与Gp有关。因此,处理增益是扩频系统的一个重要性能指标。众所周知,任何信息的有效传输都需要一定的频率宽度,如话音为1.7kHz3.1kHz,电视图像则宽到数兆赫。为了充分利用有限的
19、频率资源,增加通路数目,人们广泛选择不同调制方式,采用宽频信道(同轴电缆、微波和光纤等),和压缩频带等措施,同时力求使传输的媒介中传输的信号占用尽量窄的带宽。因现今使用的电话、广播系统中,无论是采用调幅、调频或脉冲编码调制制式, Gp值一般都在十多倍范围内,统称为“窄带通信”。而扩频通信的Gp值,高达数百、上千,称为“宽带通信”。扩频通信的可行性,是从信息论和抗干扰理论的基本公式中引伸而来的。信息论中关于信息容量的香农( Shannon)公式为:C=Wlog2 (1+P/N ) (2.2)见式(2.2),C为信道容量(用传输速率度量),W为信号频带宽度,P为信号功率, N为白噪声功率。由公式(
20、2.2)可以看出,在给定的传输速率C不变的条件下,频带宽度W和信噪比P /N是可以互换的。即可通过增加频带宽度的方法,在较低的信噪比P /N (S /N)情况下传输信息。扩展频谱换取信噪比要求的降低,是扩频通信的重要特点,并由此为扩频通信的应用奠定了基础。32.1.2 扩频通信主要性能指标处理增益和抗干扰容限是扩频通信系统的两个重要性能指标。处理增益G也称扩频增益,它定义为频谱扩展前的信息带宽DF 与频带扩展后的信号带宽W之比:Gp=W/F (2.3)在扩频通信系统中,接收机作扩频解调后,只提取伪随机编码相关处理后的带宽为DF的信息,而排除掉宽频带W中的外部干扰、噪音和其地用户的通信影响。因此
21、,处理增益G反映了扩频通信系统信噪比改善的程度。抗干扰容限是指扩频通信系统能在多大干扰环境下正常工作的能力,定义为:Mj=G-(S/N)out+LS (2.4)其中:Mj为抗干扰容,G为处理增益,(S/N)out为信息数据被正确解调而要求的最小输出信噪比,Ls为接收系统的工作损耗。由此可见,抗干扰容限Mj与扩频处理增益Gp成正比,扩频处理增益提高后,抗干扰容限大大提高,甚至信号在一定的噪声湮没下也能正常通信。通常的扩频设备总是将用户信息(待传输信息)的带宽扩展到数十倍、上百倍甚至千倍,以尽可能地提高处理增益。42.1.3 数字调制技术直接扩频之后的信号为数字基带信号,数字基带信号是低通型信号,
22、其功率谱集中在零频附近,它可以直接在低通型信道中传输。实际信道很多是带通型的,数字基带信号无法直接通过带通型信道。因此,在发送端需要把数字基带信号的频谱搬移到带通信道的通带范围内,以便信号在带通型信道中传输,这个频谱的搬移过程称为数字调制。相应地在接收端需要将已调信号的频谱搬移回来,还原为原数字基带信号,这个频谱的反搬移过程称为数字解调。调制的目的是实现频谱的搬移,而实现频移搬移的方法是用基带信号去控制正弦波的某个参量,使这个参量随基带信号的变化而变化。由于正弦波有幅度、频率和相位三个参数,所以,和模拟调制技术相似,数字调制技术也有三种基本形式:数字振幅调制、数字频率调制和数字相位调制。由于数
23、字信息只有离散的有限种取值,所以调制后的载波参量也只有离散的有限种取值,数字调制的过程就像用数字信息去控制开关一样,从几个具有不同参量的独立振荡源中选择参量,所以常把数字调制称为“键控”。常用的数字调制方式有:1、振幅键控 (ASK):用数字调制信号控制载波的通断。如在二进制中,发0时不发送载波,发1时发送载波。有时也把代表多个符号的多电平振幅调制称为振幅键控。振幅键控实现简单,但抗干扰能力差。 2、移频键控(FSK):用数字调制信号的正负控制载波的频率。当数字信号的振幅为正时载波频率为f1,当数字信号的振幅为负时载波频率为 f2。有时也把代表两个以上符号的多进制频率调制称为移频键控。移频键控
24、能区分通路,但抗干扰能力不如移相键控和差分移相键控。 3、移相键控(PSK):用数字调制信号的正负控制载波的相位。当数字信号的振幅为正时,载波起始相位取0;当数字信号的振幅为负时,载波起始相位取180。有时也把代表两个以上符号的多相制相位调制称为移相键控。移相键控抗干扰能力强,但在解调时需要有一个正确的参考相位,即需要相干解调。72.1.4 扩频通信的工作原理数字扩频通信的一般工作原理如图2.1所示。图2.1数字扩频通信系统基本框图图2.1所示为一个数字扩频通信系统的基本框图。其中信道编码器、信道解码器、调制器和解调器是传统数字通信系统的基本构成单元。在扩频通信系统中除去了这些单元外, 应该用
25、了相同的伪随机序列发生器,分别作用在发送前端的调制器与接收前端的解调器。这两个序列发生器产生伪随机噪声(PN)二值序列, 在调制端将传送信号在频域进行扩展, 在解调端解扩该扩频发送信号。2.1.5 扩频通信实现方法扩频通信与一般的通信系统相比,主要是在发射端增加了扩频调制,而在接收端增加了扩频解调的过程,扩频通信按照其工作方式不同主要分为直接序列扩频系统、跳频扩频系统、跳时扩频系统、现行调频系统和混合调频系统。现以直接序列扩频系统为例说明扩频通信的实现方法。下图2.2所示为直接序列扩频系统的原理框图。图2.2 直接序列扩频系统原理图由图2.2直接序列扩频系统原理图所示可以看出,在发射端,信源输
26、出的信号与伪随机码产生器产生的伪随机码进行模2加,产生一速率与伪随机码速率相同的扩频序列,然后再用扩频序列去调制载波,这样得到已扩频调制的射频信号。在接收端,接收到的扩频信号经高放和混频后,用与发射端同步的伪随机序列对扩频调制信号进行相关解扩,将信号的频带恢复为信息序列的频带,然后进行解调,恢复出所传输的信息。对于干扰和噪声而言,由于与伪随机码不相关,在相关解扩器的作用下,相当于进行了一次扩频,其谱密度降低,这样就大大降低了进入信号通频带内的干扰功率,使解调器的输入信噪比和信干比提高,从而提高系统的抗干扰能力。82.2 扩频通信系统的特点2.2.1 性抗干扰强由于扩频信号的不可预测性,扩频系统
27、具有很高的抗干扰能力。因为干扰者难以通过观察改善其干扰性能,而只能采用发射同被干扰信号不匹配的干扰技术,因此,干扰起不了太大作用;由于扩频通信系统在传输过程中扩展了信号带宽,所以即使信噪比低,甚至是有用信号功率低于干扰信号功率的情况下仍能够高质量地不受干扰地进行通信,扩展的频谱越宽,其抗干扰性越强。2.2.2 低截获性扩频信号的功率相当于均匀地被分布在很宽的频带上,以至于被传输信号的功率密度很低,使侦察接收机难以检测到。因此,扩频通信系统具有低截获概率性。2.2.3 抗多路径干扰性能好多路径干扰是由于在电波传播过程中,遇到各种非期望反射体(如电离层、高山、建筑物等)引起反射或散射。这些反射或散
28、射信号同直达路径信号在接收端相互干涉造成干扰。多路径干扰在雷达和通信中都有严重影响。由于在扩频通信系统中增加了扩频调制与解扩过程,这样可以利用扩频码序列间的相关特性,在接收端解扩时用相关技术从多径信号中分离出最强的有用信号,或将多径信号中的相同码序列信号叠加,这样就可以有效地消除无线通信中多径干涉造成的信号衰落现象,因而扩频通信系统具有良好的抗多径衰落特性。2.2.4 保密性好在一定的发射功率下,由于扩频信号分布在很宽的频带内,无线信道中有用信号功率谱密度极低,这样信号可以再强噪声背景下,甚至是有用信号被噪声淹没的情况下进行可靠通信,使外界很难截获传送的信息,想进一步检测出信号的特征参数就更难
29、了。所以,扩频系统可实现隐蔽通信;同时,对不同用户使用不同的码,旁人无法窃听他们的通信,因而扩频系统具有高的保密性。53 MATLAB简介MATLAB语言是当今国际上科学界最具影响力、也是最有活力的软件。它起源于矩阵运算,现已经发展成一种高度集成的计算机语言。它提供了强大的科学运算、灵活的程序设计流程、高质量的图形可视化与界面设计、便捷的与其他程序和语言接口的功能。MATLAB 语言在各国高校与研究单位起着重大的作用。MATLAB 是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。使用MATLAB,可以较使用传统的编程语言更快地解决技术计算问题。 MATLAB
30、 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。MATLAB 提供了很多用于记录和分享工作成果的功能。可以将 MATLAB 代码与其他语言和应用程序集成,来分发自己的 MATLAB 算法和应用。MATLAB 对整个数据分析过程提供支持,该过程从外部设备和数据库获取数据,通过对其进行预处理、可视化和数值分析,最后到生成质量达到演示要求的输出。3.1 MATLAB的背景在70年代中期,Cleve Moler博士和其同事
31、在美国国家科学基金的资助下开发了调用EISPACK和LINPACK的FORTRAN子程序库。 EISPACK是特征值求解的FOETRAN程序库,LINPACK是解线性方程的程序库。在当时,这两个程序库代表矩阵运算的最高水平。到70年代后期,身为美国New Mexico大学计算机系系主任的Cleve Moler在给学生讲授线性代数课程时,想教学生使用EISPACK和LINPACK程序库,但他发现学生用FORTRAN编写接口程序很费时间,于是他开始自己动手,利用业余时间为学生编写EISPACK和LINPACK的接口程序。Cleve Moler给这个接口程序取名为MATLAB,该名为矩阵(matri
32、x)和实验室(labotatory)两个英文单词的前三个字母的组合。在以后的数年里,MATLAB在多所大学里作为教学辅助软件使用,并作为面向大众的免费软件广为流传。1983年春天,Cleve Moler到Standford大学讲学,MATLAB深深地吸引了工程师John Little。John Little敏锐地觉察到MATLAB在工程领域的广阔前景。同年,他和Cleve Moler,Steve Bangert一起用C语言开发了第二代专业版。这一代的MATLAB语言同时具备了数值计算和数据图示化的功能。1984年,Cleve Moler和John Little成立了Math Works公司,正
33、式把MATLAB推向市场,并继续进行MATLAB的研究和开发。在当今30多个数学类科技应用软件中,就软件数学处理的原始内核而言,可分为两大类。一类是数值计算型软件,如MATLAB、Xmath、Gauss等,这类软件长用于数值计算,对处理大批数据效率高;另一类是数学分析型软件,Mathematica,Maple等,这类软件以符号计算见长,能给出解析解和任意精确解,其缺点是处理大量数据时效率较低。MathWorks公司顺应多功能需求之潮流,在其卓越数值计算和图示能力的基础上,又率先在专业水平上开拓了其符号计算、文字处理、可视化建模和实时控制能力,开发了适合多学科,多部门要求的新一代科技应用软件MA
34、TLAB。经过多年的国际竞争,MATLAB以经占据了数值软件市场的主导地位。在MATLAB进入市场前,国际上的许多软件包都是直接以FORTRANC语言等编程语言开发的。这种软件的缺点是使用面窄,接口简陋,程序结构不开放以及没有标准的基库,很难适应各学科的最新发展,因而很难推广。MATLAB的出现,为各国科学家开发学科软件提供了新的基础。在MATLAB问世不久的80年代中期,原先控制领域里的一些软件包纷纷被淘汰或在MATLAB上重建。时至今日,经过MathWorks公司的不断完善,MATLAB已经发展成为适合多学科,多种工作平台功能强大的大型软件。在国外,MATLAB已经经受了多年考验。在欧美等
35、高校,MATLAB已经成为线性代数,自动控制理论,数理统计,数字信号处理,时间序列分析,动态系统仿真等高级课程的基本教学工具;成为攻读学位的大学生,硕士生,博士生的基本技能。在设计研究单位和工业部门,MATLAB被广泛用于科学研究和解决各种具体问题。MATLAB的含义是矩阵实验室(MATRIX LABORATORY),主要用于方便矩阵的存取,其基本元素是无须定义维数的矩阵。MATLAB自问世以来,就是以数值计算称雄。MATLAB进行数值计算的基本单位是复数数组(或称阵列),这使得MATLAB高度“向量化”。经过十几年的完善和扩充,现已发展成为线性代数课程的标准工具。由于它不需定义数组的维数,并
36、给出矩阵函数、特殊矩阵专门的库函数,使之在求解诸如信号处理、建模、系统识别、控制、优化等领域的问题时,显得大为简捷、高效、方便,这是其它高级语言所不能比拟的。美国许多大学的实验室都安装有MATLAB供学习和研究之用。MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多.在新的版本中MATLAB也加入了对C,FORTRAN,C+,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以
37、直接进行下载就可以用,非常的方便。3.2 MATLAB的组成1、 MATLAB是所有mathworks公司产品的基石,它提供了高级科学计算语言,是进行数据分析算法开发的集成开发环境,具有数值计算,图形绘制,程序设计等功能。2、 MATLAB是可选择的工具,它包括MATLAB编译器,web服务器,数据工具箱,报表生成器等,用来支持在MATLAB环境中对系统的实施与开发。3、 工具箱是针对解决特定种类问题而特别制作的一系列MATLAB函数库,它只有开放性和可扩展性,用户甚至可以加入自己的工具箱。4、 Simulink是交互式动态系统建模,仿真和分析的图形环境,也是进行基于模型的嵌入式系统开发的基础
38、开发环境。它把模块图形界面和MATLAB主要数值、图形和语言函数有效的组合起来,从而具有生动的建模能力。它对线性,非线性,连续,离散系统均适用,可以针对控制系统,信号处理以及通信系统等进行建模,仿真,分析等工作。3.3 Simulink简介Simulink是MATLAB中的一种可视化仿真工具,是实现动态系统建模、仿真和分析的一个集成环境,广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和仿真中。它包括一个复杂的由接收器、信号源、线性和非线性组件以及连接件组成的模块库,用户也可以根据需要定制或者创建自己的模块。Simulink的主要特点在于使用户可以通过简单的鼠标操作和拷贝等命令建立
39、起直观的系统框图模型,用户可以很随意地改变模型中的参数,并可以马上看到改变参数后的结果,从而达到方便,快捷地建模和仿真的目的。启动Simulink,通常有两种方法:1、在MATLAB命令窗口中直接输入Simulink命令;2、在MATLAB工具栏上单击Simulink按钮。 这样就可打开了Simulink的Simulink Library Brower(库模块浏览器),如图3.1所示。在菜单栏中执行File/New/Model命令,就建立了一个名为untitled的模型窗口。在建立了空的模块窗口后,用户可以在此窗口中创建自己需要的Simulink模型。图3.1 Simulink库模块浏览器通常
40、,Simulink仿真系统包括输入、状态和输出三个部分。输入模块:即信号源模块,包括常数字信号源和用户自定义信号;状态模块:即被模拟的系统模块,是系统建模的核心和主要部分;输出模块:即信号显示模块,它能够以图形方式、文件格式进行显示。63.4 MATLAB的优势和特点1、友好的工作平台和编程环境MATLAB由一系列工具组成。这些工具方便用户使用MATLAB的函数和文件,其中部分工具采用的是图形用户界面。包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精
41、致,更加接近Windows的标准界面,人机交互性更强,操作更简单。而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析。 2、简单易用的程序语言MATLAB一个高级的距阵/阵列语言,它包含控制语句、函数、数据结构、输入、输出和面向对象编程特。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。新版本的MATLAB语言是基于最为流行的C语言基础上的,因此语法特征与C语言极为相似,而且更加简单,更加
42、符合科技人员对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。 3、强大的科学计算机数据处理能力MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而且经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C+ 。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数集包括从最简单最基本的函数到诸如距阵,
43、特征向量、快速傅立叶变换的复杂函数。函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。4、出色的图形处理功能MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和距阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能(例如二
44、维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等),MATLAB同样表现了出色的处理能力。同时对一些特殊的可视化要求,例如图形对话等,MATLAB也有相应的功能函数,保证了用户不同层次的要求。另外新版本的MATLAB还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。 5、应用广泛的模块集合工具箱MATLAB对许多专门的领域都开发了功能强大的模块集和工具箱。一般来说,他们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。目前,
45、MATLAB已经把工具箱延伸到了科学研究和工程应用的诸多领域,诸如数据采集、数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理、系统辨识、控制系统设计、LMI控制、鲁棒控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型及半物理仿真、嵌入式系统开发、定点仿真、DSP与通讯、电力系统仿真等,都在工具箱(Toolbox)家族中有了自己的一席之地。 6、实用的程序接口和发布平台新版本的MATLAB可以利用MATLAB编译器和C/C+数学库和图形库,将自己的MATLAB程序自动转换为独立于MATLAB运行的C和C+代码。允许用户编写可
46、以和MATLAB进行交互的C或C语言程序。另外,MATLAB网页服务程序还容许在Web应用中使用自己的MATLAB数学和图形程序。 7、应用软件开发(包括用户界面)在开发环境中,使用户更方便地控制多个文件和图形窗口;在编程方面支持了函数嵌套,有条件中断等;在图形化方面,有了更强大的图形标注和处理功能,包括对性对起连接注释等。 8、语言简洁紧凑库函数极其丰富MATLAB程序书写形式自由,利用起丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。由于库函数都由本领域的专家编写,用户不必担心函数的可靠性。可以说,用MATLAB进行科技开发是站在专家的肩膀上。具有FORTRAN和C等高级
47、语言知识的读者可能已经注意到,如果用FORTRAN或C语言去编写程序,尤其当涉及矩阵运算和画图时,编程会很麻烦。例如,如果用户想求解一个线性代数方程,就得编写一个程序块读入数据,然后再使用一种求解线性方程的算法(例如追赶法)编写一个程序块来求解方程,最后再输出计算结果。在求解过程中,最麻烦的要算第二部分。解线性方程的麻烦在于要对矩阵的元素作循环,选择稳定的算法以及代码的调试不容易。即使有部分源代码,用户也会感到麻烦,且不能保证运算的稳定性。解线性方程的程序用FORTRAN和C这样的高级语言编写,至少需要四百多行,调试这种几百行的计算程序可以说很困难。9、运算符丰富由于MATLAB是用C语言编写的,MATLAB提供了和C语言几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短。 10、程序的可移植性很好基本上不做修改就可以在各种型号的计算机和操作系统上运行。11、MATLAB的图形功能强大在MATLAB里,数据的可视化非常简单。MATLAB还具有较强的编辑图形界面的能力。12、MATLAB的缺点由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。据说,速度大概是相应c程序的 80% 左右。13、功能强大的工具箱是MATLAB的另一特色MATLAB包含两个部分:核心部分和各种可选的工具箱。核心部分中有数