《基于MATLAB的跳频通信系统的仿真与设计.doc》由会员分享,可在线阅读,更多相关《基于MATLAB的跳频通信系统的仿真与设计.doc(44页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于MATLAB的跳频通信系统的仿真与设计摘 要当今信息时代,如何有效的利用宝贵的频带资源,如何进行准确可靠的信息通信是通信领域中至关重要的问题。扩频通信正是在这种背景下迅速发展起来的.快调频通信是扩频通信的一种实现方式,在抗干扰和保密性方面,它是扩频通信中很好的通信方式。在具体的实现上,跳频通信是一个用户的载波按某种跳频图案(伪随机跳频序列)在很宽的频带范围内随机的跳变。由于频率跳变的不确定性,所以很好的实现了保密通信。在本次毕业设计中,是用MATLAB实现快跳频通信系统的仿真。MATLAB是一种功能强大的软件,在统计、信号处理、人工智能以及通信领域得到了广泛的应用。在快跳频系统的设计中,主
2、要用到SIMULINK和COMMUNICATION BLOCKS两个工具箱。在具体实现过程中,还要结合用MATLAB语言编写的程序实现整个过程的设计。关键词: 跳频通信系统、频率跳变、跳频图案、MATLAB ABSTRACTThis information age, how to effectively use valuable band resources, and how to implement the accurate and reliable information communication is the most important communication field。 Sp
3、read spectrum communication was against this backdrop rapidly。 Quick FM communications is spread spectrum communication in a realization, antijamming and privacy aspects, it is spread spectrum communication of good communication mode。 In the concrete implementation, fh communication is a users carri
4、er according to some fh design (pseudo random fh sequence) in a very wide band range random jump to change. Because of the uncertainty of frequency hopping, so good realized the secret communication. In the graduation design, is MATLAB fast frequency hopping communication system simulation。 MATLAB I
5、s a powerful software, in statistics, signal processing, artificial intelligence, and communication domain been widely used。 In fast frequency hopping system design, mainly using SIMULINK and COMMUNICATION BLOCKS two toolbox。 In concrete realization process, combine MATLAB language programming reali
6、ze the whole process design。 Keywords: frequency hopping communication system, frequency hopping, frequencyhopping pattern and MATLAB2目 录第一章 引 言 。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。11.1 概 述 .。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。11.2 扩频通信的基本概念和理论基础.。.。.。.。
7、.。.。.。.。.。.。.。.。.。.。.21.3 扩频通信的主要特点.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。41。4 扩频通信的几种方式。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.6第二章 MATLAB通信系统仿真组件及流程介绍.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。82.1 MATLAB仿真环境.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。82。2 MATLAB语言介绍.。.。.。.。.。.。.。.。.。.。.
8、。.。.。.。.。.。.。.。.。.。.。.。.。92。3 SIMULINK的核心S函数。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。102.3。1 S函数的仿真工作原理。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.102.3.2 S函数的仿真流程.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。112.3。3 SIMULINK的设计和开发.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.12第三章 跳频通信系统的性能分析.。.。.
9、。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.143。1 跳频系统概述。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.143.1.1 系统结构及信号传输过程。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.143.1。2 跳频系统的几个概念。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。153。2 跳频信号的发送和接收.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。153.2。1 跳
10、频信号的发送.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.153.2.2 跳频信号的接收。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。163。2。3 正确接收跳频信号的条件.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。163.2.4 跳频信号的波形.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。173。3 快跳频系统的扩频码序列和跳频图案的设计。.。.。.。.。.。.。.。.。.。.18
11、3。3。1 概 述.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.183.3.2 Gold序列的实现。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.183。3。3 跳频图案的设计。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。19第四章 跳频通信仿真框图及模型.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.224.1 快跳频系统的仿真框图及功能。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.
12、。.。224.2 跳频通信各部分模型介绍。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.23第五章 快跳频系统仿真程序及仿真结果。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。335.1 伪随机码序列设计与仿真.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。335.1。1 伪随机码序列的程序设计。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.335.1.2 Gold码仿真结果。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.
13、。355.1.3 伪随机码的第二种实现方式。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。355。1.4 伪随机整数序列的仿真结果。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。365。2 快跳频通信系统的仿真结果.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.375。2.1 跳频信号的输出仿真图.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。375.2。2 快跳频系统的误码率仿真结果.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.38
14、第六章 结 论。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.39参考文献。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.40致 谢。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.41第1章 引言1.1 概述扩频通信,即扩展频谱通信(Spread Spectrum Communication),它与光纤通信、卫星通信,一同被誉为进入信息时代的三大高技术通信传输方
15、式。具有巨大的发展前景.扩展频谱通信(Spread Spectrum Communication)的原理发表的很早,它是将待传送的信息数据被伪随机编码也就是扩频序列调制,实现频谱扩展以后再在信道中传输,接收端则采用与发送端完全相同的编码进行解调和相关处理,从而恢复出原始的信息数据.从这里我们可以看出,扩展频谱通信(以下简称扩频通信)作为一种新的通信方式与一般的常见的窄带通信方式是不同的,它们刚好相反,它是在发送端经过扩展频谱以后,在信道中进行宽带传输,然后在接收端进行相关处理以及解扩后恢复成窄带后解调数据.恢复出原始信息数据。因此,扩频通信具有伪随机编码调制和相关处理两个特点。也正是这两个特点
16、,使得扩频通信方式有许多优点:如抗干扰、抗噪音、抗多径衰落、具有保密性、功率谱密度低,具有隐蔽性和低的截获概率、可多址复用和任意选址、可以用于高精度测量等。正是由于扩频通信方式具有上述的优点,所以扩频通信虽然是一种新型的通信方式,但是引起了人们的广泛注意,得到了迅速的发展和广泛的应用。从扩频通信的应用发展来看,真正开始研究它的应用的是在上个世纪50年代中期美国开始的。刚开始一直用于军事通信领域,因为在军事通信中,一般通信方式在强干扰存在的情况下,很难准确的检测出发送来的信号,由于扩频通信具有很好的保密信和抗干扰性,所以首先开始了在军事通信领域的应用。成为扩频通信研究发展的开端,从此,军事通信机
17、关对军事通信、空间探测、卫星侦察等方面广泛应用扩频通信技术。60年代以来,随着民用通信事业的发展,频带拥挤问题日益突出,成为通信技术发展上的一个突出的问题。随着信号处理技术、大规模集成电路和计算机技术的发展,编码和相关处理能够方便的进行,通信技术的发展,推动了扩频通信理论、方法、技术等各方面的研究发展和应用普及。军事产品开始向民用转化.在80年代开始在民用领域得到应用。为了满足日益增长的民用通信容量的需求和有效地利用频谱资源,各国都纷纷提出在数字峰窝移动通信、卫星移动通信和未来的个人通信中采用扩频技术,扩频技术已广泛应用于蜂窝电话、无绳电话、微波通信、无线数据通信、遥测、监控、报警等系统中。扩
18、频通信理论方法、技术和应用的发展,经历了几个阶段,第一阶段是在1977年前后,在早期建立的扩频通信理论的基础上,卓有成效的丰富和发展了扩频通信的理论、方法和实用技术,1977年8月的IEEE通信汇刊的扩频通信专集和1978年在日本东京都举行的国际无线通信咨询委员会全会对扩频通信的专门研究集中反映了扩频通信的研究成果,开始了世界性的对扩频通信的全面研究.第二个阶段的显著标志是扩频通信开始民用。1982年美国第一次军事通信会议,公开展示了扩频通信在军事通信中的主导作用,报告了扩频通信在军事通信各个领域的应用,并开始了扩频通信的民用调查。这是扩频通信发展的第二个阶段。扩频通信发展的第三个阶段开始于1
19、985年5月美国联邦通信委员会制定了民用公共安全、工业、科学与医疗和业余无限电采用扩频通信的标准和规范。以后世界各国相继行动,组织扩频通信专门研究机构和学术团体,开始了扩频通信的深入研究和广泛应用,这就是扩频通信发展的第三个阶段。近年来,第三代移动通信的飞速发展,把扩频通信的研究、应用和发展都推向了新的阶段。1.2 扩频通信的基本概念和理论基础扩频通信的定义:所谓扩频通信,简单的可以这样表述:扩频通信技术是一种信息传输方式,其信号所占有的频带宽度远大与所传输的信息所必需的最小带宽,频带的展宽通过编码和调制的方法来实现,与所传输的信息数据无关,在接收端用相同的扩频码进行相关解扩及恢复所传的信息数
20、据。从这个定义中我们可以看到它包含了以下三个方面的含义:首先,信号的频谱被扩展宽了.在信息传输中,我们知道任何信息都需要一定的带宽,称为信息带宽。为了充分利用频率资源,通常尽量采用大体相当的带宽的信号来传送信息,在无线电通信中,射频信号的带宽与所传信息的带宽是相比拟的,如我们熟悉的调幅信号传送的语声信号,其带宽为语声信息带宽的两倍,这被成为窄带通信,而扩频通信信号带宽与信息带宽之比( 我们称之为处理增益)可以达到1001000倍,这就是我们常说的宽带通信。至于为什么要用这样宽的频带的信号传输信息,在下面的理论分析中可以得到答案.其次,采用扩频码序列调制方式展宽信号频谱.我们知道,在时间上有限的
21、信号,其频谱是无限的。例如很窄的脉冲信号,其频谱则很宽。信号的频带宽度与其持续时间近似成反比。1微秒的脉冲的带宽约为1MHz。因此,如果用限窄的脉冲序列被所传信息调制,则可产生很宽频带的信号。如直接序列扩频系统就是采用这种方法获得扩频信号。这种很窄的脉冲码序列,其码速率是很高的,称为扩频码序列。这里需要说明的一点是所采用的扩频码序列与所传信息数据是无关的,也就是说它与一般的正弦载波信号一样,丝毫不影响信息传输的透明性。扩频码序列仅仅起扩展信号频谱的作用。第三,在接收端用相关解调来解扩。正如在一般的窄带通信中,已调信号在接收端都要进行解调来恢复所传的信息。在扩频通信中接收端则用与发送端相同的扩频
22、码序列与收到的扩频信号进行相关解调,恢复所传的信息.换句话说,这种相关解调起到解扩的作用。即把扩展以后的信号又恢复成原来所传的信息.这种在发端把窄带信息扩展成宽带信号,而在收端又将其解扩成窄带信息的处理过程,会带来一系列好处。弄清楚扩频和解扩处理过程的机制,是理解扩频通信本质的关键所在。长期以来,人们总是想法使信号所占领谱尽量的窄,以充分利用十分宝贵的频谱资源。为什么要用这样宽频带的信号来传送信息呢? 简单的回答就是主要为了通信的安全可靠。这可以用信息论和抗干扰理论的基本观点来说明。在信息论中关于信道容量的仙农定理用数学表达式可以表示为:C WLog2(1十P/N) (11)从这个公式中我们可
23、以得到:在给定信号功率P和白噪声功率N的情况下,只要采用某种编码系统,就能以任意小的差错概率,以接近于C的传输信息的速率来传送信息。其中W为频带宽度,C为传输速率。这个公式暗示在保持信息传输速路C不变的条件下,可以用不同的频带宽度W和信噪比P/W来传输信息。也就是说,频带W和信噪比P/W是可以互换的。如果增加频带宽度,就可以在较低的信噪比的情况下用相同的信息率以任意小的差错概率传输信息,甚至是在信号被噪声淹没的情况下,只要相应的增加信号的带宽,也能保持可靠的通信。这一公式指明了采用扩展频谱信号通信的优越性,即用扩展频谱的方法换取信噪比的改善.扩频通信可行性的另一理论基础,为柯捷尔尼可夫关于信息
24、传输差错概率公式: Pow f(E/N。) (1-2)公式指出:差错概率Pow是信号能量E与噪声功率密度N.之比的函数。设信号频带宽度为W,信息时间为T。信号功率为PE/T,噪声功率为NWno,信息带宽为D F1/T,则上式可以表示为: Powj f(TW.P/N) = f(P/N.W/D F ) (1-3)这个式子说明:对于一定带宽 DF的信息而言,用Gp值较大的宽带信号来传输,可以提高通信抗干扰能力,保证强干扰条件下,通信的安全可靠。即式(1-4)与式(1-2)一样,说明信噪比和带宽是可以互换的。1。3 扩频通信的主要特点由于扩频通信大大扩展了信号的频谱,发送端用扩频码序列调制,在接收端利
25、用相关解调技术恢复出信息数据,所以它具有很多特点和其他通信方式所不能有的一系列优良的性能,具体的说它有以下的特点1 抗干扰性强频通信系统的频谱越宽,处理增益越高,抗干扰性能越强,从理论上讲,扩频通信能把信号从噪声淹没中提取出来。当然,在接收端一般采用相关检测或匹配滤波的方法提取信号.此外,对于单频及多频载波信号的干扰、其他伪随机调制信号的干扰以及脉冲正弦信号的干扰等,扩频系统都有抑制干扰提高输出信噪比的作用。特别是对抗敌人人为干扰方面,效果更是突出,这也是在军事通信领域率先广泛应用的主要原因。简单的说,如果信号带宽展宽10倍,干扰方面需要在更宽的频带进行干扰,分散了干扰功率。在总功率率不变的条
26、件下,其干扰强度只有原来的1/10。要保持原有的干扰强度,必须加大10倍总功率,这在实际的战场条件下有时是很难实现的.另外,由于在接收端采用扩频码序列进行相关检测,即使采用同类型信号进行干扰,如果不能检测出有用信号的码序列,由于不同码序列之间的相关性,干扰也起不了太大的作用。可以说。抗干扰性是扩频通信最突出的优点。2 隐蔽性好由于扩频信号在很宽的频带上被扩频,单位频带内的功率很小,即信号的功率谱密度很低,所以应用扩频码序列扩展频谱的序列扩频系统,可在信道噪声和热噪声的背景下在很低的信号功率谱密度上通信.信号既然被淹没在噪声里,敌方就很不容易发现有信号的存在,想进一步检测信号的参数就更困难了。因
27、此,扩频信号具有很低的被截获概率,这在军事通信上是十分有用的,可以进行隐蔽通信。再者,由于扩频信号具有很低的功率谱密度,对目前使用的各种窄带通信系统的干扰很小。近年来在民用通信上,各国都在研究和在原有窄带通信的频带内同时进行扩频通信,大大提高了频带利用率.特别是对于一些信的通信服务,如个人通信服务,采用扩频码分多址方式时,理论和实践证明,不需要分配另外的频段即可实现,因而引起了广泛的重视.3 实现码分多址我们知道,扩频通信提高了抗干扰性,但是却付出了占用频带宽的代价。如果让许多用户共同使用这一宽频带,可大为提高频带利用率。由于在扩频通信中存在扩频码序列之间优良的自相关特性和互相关特性,在接收端
28、利用相关检测技术进行解扩,则在分配给不同用户不同码型的情况下可以区分不同用户的信号,提取信号。这样,在一个宽频带上,许多对用户可以同时通话而不相互干扰,这与利用频带分割或时间分割方法实现多址通信的概念相类似,即用不同的码型进行分割,所以成为码分多址(CDMA)。码分多址方式虽然要占用较宽的频带,但是平均到每个用户占用的频带来计算,其频带利用率是很高的。最近的研究表明,在数字蜂窝移动通信中,采用扩频码分多址技术可以提高容量20倍,除此之外,采用码分多址,还有利于组网、选呼、增加保密性、解决新用户随时入网等问题。4 抗多径干扰在无线电通信的各个频段,即短波、超短波、微波和光纤通信的光波中大量存在各
29、种类型的多径干扰.长期以来,抗多径干扰问题始终是一个难以解决的问题之一。一般的方法是排除干扰或变害为利。前者是设法把最强的有用信号分离出来,排除其他路径的干扰信号,这就是采用分集技术的基本思路。后者是设法把不同路径来的延时的信号在接收端从时间上对齐相加,合并成较强的有用信号,这就是采用梳状滤波器的基本思路。这两种基本方法在扩频通信中都是很容易实现的。简单的说。就是可以利用扩频码序列之间的相关性,在接收端用相关技术从多径信号中提取和分离出最强的有用信号,或把多个路径来的同一码序列的波形相加合成。另外,在跳频通信系统中,由于用多个频率的信号传送同一信息,实际上起到了频率分集的作用。因此,在目前民用
30、数字蜂窝移动通信及有的军事通信设备中经常采用简单的跳频技术作为抗多径干扰的一种手段。5 能精确地定时和测距电磁波在空间地传播速度是固定不变地光速,我们可以很自然地想到如果能够精确测量电磁波在两个物体之间传播地时间,也就等于测量出了两个物体之间的距。在扩频通信中如果扩展频谱很宽,意味着所采用的扩频码速率很高,每个码片占用的时间很短。当发射出去的扩频信号在被测物体反射回来后在接收端调出扩频序列,比较收发两端两个码序列的相位之差,就可以精确测出扩频信号往返的时间差,算出两者之间的距离.测量的精确度决定于码片的宽度,也就是扩展频谱的宽度。码片越窄,精度越高。目前广泛应用的全球定位系统也就是利用扩频信号
31、的这一特点来精确定位和定时的。1.4 扩频通信的几种方式 扩频通信的框图结构可以用如下的方框图表示:信 道扩频调制数据调制信 源扩频编码发生器 (发送部分的结构框图)同步时钟信息接收数据解调扩频解调 扩频编码发生器 (接收部分的结构框图) 图 11 扩频通信的框图结构从上面的框图结构中我们可以看到与一般的通信方式不同,扩频通信增加了扩频调制和解扩部分两个环节.按工作方式我们可以把扩频通信划分为如下几种工作方式:1 直接序列扩展频谱系统(DS-SS)这种扩频系统简称为直接序列(DS)系统,准确的说,这种系统应该称为直接用编码序列对载波调制的系统.直接序列系统中用的编码序列通常是伪随机序列或叫伪噪
32、声(PN)码,要传送的信息经数字化后变成二元数字序列,它和伪随机序列模2加后合成复合码去调制载波。在接收端要有一个和发送端中的伪随机码同步的本地码,对接收的信号进行解扩,解括后的信号送到解调器取出传送的信息。2 跳频扩频系统(FH_SS)所谓跳频,比较确切的意思是:用一定码序列进行选择的多频率频移键控。也就是说,用扩频码序列去进行频移键控调制,使载波频率不断地跳变,所以称为跳频。更确切的说因该叫做“多频、码选、频移键控系统。3 跳时扩频系统(FH_SS)与跳频相似,跳时(THTime Hopping)是使发射信号在时间轴上跳变。首先把时间轴分成许多时片.在一帧内哪个时片发射信号由扩频码序列去进
33、行控制。可以把跳时理解为:用一定码序列进行选择的多时片的时移键控。跳时也可以看成是一种时分系统,所不的地方在于它不是在一帧中固定分配一定位置的时片,而是由扩频码序列控制的按一定规律跳变位置的时片。跳时系统的处理增益等于一帧中所分的时片数.跳时一般和跳频结合起来使用,两者一起构成“跳频跳时系统。4 混合式扩频系统以上3中基本扩频方式中的两种或多种结合起来,便构成了一些混合扩频体制,如FH/DS、FH/TH、DS/FH等,它们比单一的扩频、跳频、跳时体制有更优良的性能。6第2章MATLAB通信系统仿真组件及流程介绍2。1 MATLAB仿真环境MATLAB是美国Math Works公司推出的用于数值
34、计算和信号处理的数学计算软件包,与其他高级语言(BASIC、FORTRAN、C 等)相比,不仅语法规则更为简单,而且在解决工程问题和科研教学的辅助方面更加直观、简洁和高效。正因为如此,受到了专业研究人员的广泛重视.随着版本的不断升级,MATLAB的功能越来越强大,应用范围也越来越广泛。在MATLAB中,不同应用领域的专用库函数和模板汇集起来作为工具箱添加到MATLAB的软件包中。借助这些工具箱,各个领域和各个层次的科研人员可以直观、方便地进行分析、计算和设计仿真,大大的提高了工作的效率。目前在MATLAB中推出的工具箱主要有信号处理、控制系统、神经网络、图象处理、小波分析、通信系统等。而且还在
35、不断增加新的功能。在这篇论文中,要用到的是MATLAB在通信系统中的应用,学习SIMULINK模块的应用和COMMUNICATIONS BLOCKET的应用。这两个模块的工作界面如下所示: 图2-1 SIMULINK工作窗口可以看到,在SUMULINK中,包含有七个模块库,分别为信源库(Sources Library)、信宿库(Sink Library)离散库(Discrete Library)、线性库(Linear Library)非线性库(Nonlinear Library)、连接库(Continuous)、数学库(Math Library)、信号与系统库(Signals&Systems
36、Library)、专用模块和工具箱集合(Blocksets&Toolboxes)共10个模块库.另外,在SIMULINK工作窗口的右下还有一个Demos图标,它提供仿真的各种例子.双击某个库的图标,可以进入下一级的窗口,窗口中排列这该模块库包含的图标以及名称.如下页所示是通信模块的工作窗口,我们可以看到,这个工作窗口包含有信源(Comm Source)、信宿(Comm Sink)、信源编码(Source Code)、信道编码(Channel Code)、调制与解调(Munication)、信道(Channel)、同步(Synchronication)等9个模块库,与SIMULINK一样,也包含
37、有一个Demos模块。可以方便的对各种实例进行演示。 图 2-2 COMMUNICATIONS BLOCKET 工作窗口2.2 MATLAB语言介绍MABLAB语言是一种高效率的用于科学工程计算的高级语言,与C、C+、RORTRAN等高级程序设计语言相比,MATLAB不但在数学语言的表达与解释方面表现出人机交互的高度一致,而且具有作为优秀高技术计算环境所不可缺少的很多特征:1 高质量、高可靠的数值计算能力。 2 基于向量、数组和矩阵的高级程序设计语言。 3 高级图形和可视化数据处理能力. 4 广泛解决各学科专业领域内复杂问题的能力. 5 支持科学和工程计算标准的开放式、可扩充结构. 6 跨平台
38、兼容,可以和C语言、C+语言相互调用.同C语言一样,在MATLAB语言中提供了4种决策或者说控制流结构,它们是:FOR循环,WHITE循环,IFELSEEND结构和SWITCHCASE结构,它们的用法和C语言中这几种结构的用法相似但是由于这些结构经常包含大量的MATLAB命令,所以经常出现在M文件中,一般结构如下:1 FOR循环的一般形式:while expression 2 WHILE循环的一般形for x = array commands commandsend end3 IFELSEEND结构:if expression 4 SWITCHCASE结构switch expresscomma
39、nds case test1 commands end case test2,test3 commands end2.3 SIMULINK的核心S函数MATLAB最受人们欢迎的特点之一是其具有开放性,也就是说用户可以通过对工具包源文件的修改或加入自己编写的文件去构成新的用户专用工具包,为了修改和编写源文件,就必须熟悉和掌握SIMULINK中的S函数(s-function).S函数是SIMULINK的核心,它具有的表现形式有三种:(1) 框图形式(2) M文件形式(3) MEX文件形式(C语言或FORTRAN语言子程序)一旦SIMULINK窗口中的仿真框图建立好,SIMULINK即利用该框图的信
40、息生成一个S函数,用来代表SIMULINK模型。有时标准模块库中现有的模块不能满足用户的需要,为了完成某个特定的功能或进行一种特定的数学运算,我们可以用标准的MATLAB语言编写M文件,也可以用C语言,但是如果用C语言必须用matlab/bin目录下的批处理comex.bat将其编译成MSWindows下的动态链接文件,才可以在MATLAB下直接调用.2.3.1 S函数的仿真工作原理S函数与SIMULINK非线性库中的S函数模块配合使用。将S函数模块从非线性库中拷贝到用户自己的模块框图中,然后在模块的对话框中定义调用的S函数的名称,则该模块完成的功能由调用的S函数决定.在每个SIMULINK模
41、块中都有三个基本参数,输入矢量u,输出矢量y和状态矢量x。三者的连接关系如图2-3所示 X 输入矢量 状态矢量 输出矢量 图 2-3 SIMULINK模块基本参数输入矢量、输出矢量和状态矢量的数学关系如下 y=f(t,x,u) x=f(t,x,u) x=f(t,x,u)2。3。2 S函数的仿真流程在仿真的特定阶段,SIMULINK反复调用模型文件中的每个模块,控制它们完成特定的功能,如计算输出、更新离散状态值和计算状态导数等,为了执行初始化或中止仿真任务,在仿真的开始部分和结束部分还要调用一些附加过程.下图给出了SIMULINK进行一次仿真的完整流程。在结束时执行所需的任务定位零交点计算输出计算导数计算导数最大步长计算离散状态最大步长计算输出计算下次抽样时间用于抽样时间可变模块初始化模块