基于LabVIEW的通信仿真
引言 美国NI公司推出的Labview语言是一种优秀的面向对象的图形化编程语言,使用图标代替文本代码创建应用程序,拥有大量与其他应用程序通信的VI库。LabVIEW作为目前国际上应用最广的数据采集和控制开发环境之一,在测试与测量、数据采集、仪器控制、数字信号分析、通信仿真等领域获得了广泛的应用。本文主要研究基于LabVIEW的通信仿真。 LabVIEW程序结构---LabVIEW程序主要包括两部分:前面板(即人机界面)和方框图程序。前面板用于模拟真实仪 器的面板操作,可设置输入数值、观察输出值以及实现图表、文本等显示。框图程序应用图形编程语言编写,相当于传统程序的源代码。其用于传送前面板输入的命令参数到仪器以执行相应的操作。LabVIEW的强大功能在于层次化结构,用户可以把创建的VI程序当作子程序调用,以创建更复杂的程序,而且,调用阶数可以是任意的。labVIEW编程方法与传统的程序设计方法不同,它拥有流程图程序设计语言的特点,摆脱了传统程序语言线性结构的束缚。labVIEW的执行顺序依方块图间数据的流向决定,而不像一般通用的编程语言逐行执行。在编写方块图程序时,只需从功能模块中选用不同的函数图标,然后再以线条相互连接,即可实现数据的传输。 仿真过程---信号源产生的是模拟信号,必须首先对它进行数字处理。在仿真过程中,用100Hz的正弦信号作为 信号源。按照一般语音通信的要求,这里采用8kHz速率对100Hz的正弦号进行抽样,得到的是间隔为125μs的离散抽样值。信号的幅度为归一化幅度,最小幅度为-1,最大幅度为1,再进行32级(4bit)PCM量化编码。再将每一个样值转化成4bit的二进制的PCM代码流,其速率为32kbps。对PCM编码的数据流进行汉明编码,得到的是56kbps的纠错编码后的数据流。随后进行调制,在发送端对码流进行4PSK数字编码调制,采用的载波是400kHz的正弦波,然后送上信道进行传输。信道是最常见的高斯加性白噪声信道,信号传输过程中受到高斯噪声的干扰。在接收端对接受到的码流进行数字解调、汉明码解码,最后PCM信号恢复所发送的信号。---这里所使用的仿真环境为LabVIEW软件。下文中主要针对4PSK的仿真进行叙述。 ● 抽样、量化和编码---在发送端,源(Source)子VI产生一个100Hz的正弦信号作为信号源,通过量化(Quantify) 子VI对它进行抽样和量化。 ● 调制、解调和信道传输---从A端输出的二进制数据流在调制(Modulation)子VI中进行4PSK数字调制。4PSK 是受0~3这4个数据调制的,这四个值是用连续两个二进制位表示的。 ● 解码和信号恢复---B端输出的二进制比特流进入到解码(DeCODe)子VI,其完成数据流的汉明码译码的功能。 ● 信号的同步---为了实现信号的同步,避免信道延迟带来的影响,在整个传输过程中引入了保护信号和同步信 号。生成的保护和同步信号从E端输出。 |