基于LabVIEW的通信仿真(图)

发布者:cxx7848653最新更新时间:2015-07-21 来源: dzsc关键字: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对它进行抽样和量化。对信号源进行8kHz的抽样,抽样产生的离散抽样值归一化为绝对值小于等于1的数据流。量化器把-1~1的范围等分为32个小区间,每一个区间用0~31之间的一个整数表示,每个样值通过它被量化成32个值中的某一个值,再转化成元素为0、1的矢量,即C端输出的源信息流。这时输出的是长度为4的矢量,进入到编码(Coding)子VI。在信号传输的过程中,为了提高信号的传输效率,降低误码率,采用了纠错编码技术。这里采用的是(4,7)汉明纠错编码技术。对8kSPS的矢量信号中,每个矢量加入3bit的控制位,但所占的时间长度仍为原来4位矢量的时间长度。接着,将7位的矢量信号进行串行化,产生56kbps的0、1数据流输出到A端,如图1所示。

 

● 调制、解调和信道传输
---从A端输出的二进制数据流在调制(Modulation)子VI中进行4PSK数字调制。4PSK是受0~3这4个数据调制的,这四个值是用连续两个二进制位表示的。这里进行的调制是基带调制,调制子VI输出的调制过后的基带信号。采用多个控件实现对调制的一些基本参数的设定,如字符速率、每个字符的采样数、波形形成滤波器的类型及参数。输出的基带信号通过上变频(upconverter)VI实现上变频,把基带信号搬移到400kHz的频率段。对应实际中的信号,就可以直接发射到信道上了。仿真过程中,采用的是一个简单的加性高斯白噪声信道模型。通过对信噪比(Eb/NO)控件的设置,实现对信道信噪比参数的选择。接受端收到一个被信道噪声损伤的信号,通过相逆过程实现解调功能。经过下变频(downconverter)VI程序下变频的基带信号进入到解调(Demodulation)子VI。在解调中进行相位检测,将4个不同的相位检测出来,映射成0~3的4个不同的量值,然后转换为2bit的二进制比特流从B端输出。所述实现了调制解调和高斯白噪声信道的传输,如图2所示。


● 解码和信号恢复
---B端输出的二进制比特流进入到解码(Decode)子VI,其完成数据流的汉明码译码的功能。解码VI将比特流组成七维的矢量数组,经汉明距离的判断,再把七维矢量纠错转化为四维矢量,即D端输出的接受信息流,完成纠错译码的功能。四维的矢量数组由To Dwave子VI化为数字波形进行显示,接下来通过数模转换VI恢复到模拟的信号,如图3所示。

 

● 信号的同步
---为了实现信号的同步,避免信道延迟带来的影响,在整个传输过程中引入了保护信号和同步信号。生成的保护和同步信号从E端输出。在信息比特进入调制子VI之前,就在信息比特的前面加上了保护信号和同步信号,E端和A端输出的信号合为一路信号,然后再进行调制。在接受方通过把同步信号映射为字符,再与接受的字符流进行比较,确定同步信号的位置,实现接受和发射的同步。同步信号的产生和输出,如图4所示。


● 误码率的计算
---为了计算误码率,C端的源信息流和D端的接受信息流通过一个比较(Compare)子VI进行比较,计算出误码的个数,从而计算出误码率,如图5所示。


● 性能分析
---4PSK数字相位调制波形可表示为

---其向量表达式为

---4PSK符号错误概率为

---由于进行了(7,4)汉明码纠错编码,然后进行4PSK调制,并且 比特符号对相应信号相位映射中采用格雷(Gray)码,因而编码比特能量可以用信息比特能量表示为

---且

---程序采用的模拟加性高斯白噪声信道,设定信道的信噪比则为 ,可得

---图6为仿真生成和理论生成的误码率的对照图。信道信噪比超过7dB以后,要求样本数很大,由于计算机内存的限制,使得仿真的结果与理论的结果有一定偏差。在7dB之前,仿真误比特率和理论值很接近,拟合得很好。

结论
---作为应用最广的数据采集和控制开发环境之一,LabVIEW在通信仿真中有着重要的作用。由于LabVIEW有很强的仪器控制功能,相对于Matlab等其他仿真软件,LabVIEW能更有效地把仿真试验移植到实际中。LabVIEW只需要用实际的发射和接受机及实际的信道来替换模拟的发射和接受机及模拟的信道,但也要进行一定量的相应改动。这样就能很好地把LabVIEW在仿真和仪器控制两方面的功能有机结合起来,更好地发挥LabVIEW在虚拟仪器中的作用。

关键字:LabVIEW  通信仿真 引用地址:基于LabVIEW的通信仿真(图)

上一篇:基于LabVIEW的多路仪器温度测控系统
下一篇:通过LabVIEW FPGA加速嵌入式系统原型化的过程

推荐阅读最新更新时间:2024-03-30 23:01

基于LabVIEW PCI-1712L变压器测试系统
0引 言   当前国内对电力变压器的性能测试基本上仍处于手工测量的阶段,每项性能指标都由专用的仪器进行测量,很多测试项目仍采用一些指针式仪表,存在读数误差大、费工、耗时,功能简单等问题,测量的重复性、可信度较差。虚拟仪器的出现有效的解决了这一问题,所谓虚拟仪器就是利用现有的计算机,加上特殊设计的仪器硬件和专用软件,形成既有普通仪器的基本功能,又有一般仪器所没有的特殊功能的高档低价的新型仪器。在虚拟仪器系统中,硬件仅仅是为了解决信号的输入输出,软件才是整个仪器系统的关键。软件对硬件采集的数字信号进行加工、分析,得到各种所需要的信息。 本文采用研华公司的PCI-1712L高速数据采集卡及其为LabVIEW定制的Advantech
[测试测量]
基于<font color='red'>LabVIEW</font> PCI-1712L变压器测试系统
LabVIEW的创建前面板
  在前面板窗口中,添加输入控件和显示控件。从控件选板中选择所需的输入和显示控件(单击所选控件,光标变成手掌形状),按住鼠标不放,拖曳至适当位置后再松开鼠标,即可将所需的控件置于前面板窗口工作区,如图1 所示。也可单击选择所需控件后,将光标移至工作区适当的位置再单击,同样可以将所需控件置于工作区。   图1 选择并添加控件   在已添加到前面板窗口工作区的控件上单击鼠标右键,在弹出的快捷菜单中选择项目可以对该控件的参数进行配置,如图2所示。   图2 控件的右键快捷菜单   控件的右键快捷菜单选项及其功能如表1所示。   表1控件的右键怏捷菜单选项及功能   除了必要的输入和显示控件之外,还可以在前面板窗口中添
[测试测量]
<font color='red'>LabVIEW</font>的创建前面板
运用LabView控制DS3900串口通信模块
本篇应用笔记讨论了DS3900串口通信模块和LabView的使用问题,LabView是适用于嵌入式应用的图形化界面开发平台。本文可作为面向DS3900的LabView界面用户指南。 LabView作为嵌入式应用的图形化界面开发平台得到了广泛应用。DS3900串口通信模块是一款通用接口板,借助该接口板,用户可使用PC串口与具有I2C接口的器件通信。DS3900的指令集允许应用软件与I2C器件直接通信。 本应用笔记是面向DS3900的LabView界面的用户指南。首先,用户需要安装LabView。为用户提供了标准VI,以加载并运行程序。可以下载与本应用笔记相关的LabView代码(ZIP,321K)。 使用LabView软件 加
[测试测量]
运用<font color='red'>LabView</font>控制DS3900串口<font color='red'>通信</font>模块
基于LabVIEW的中频电源电能质量分析测试系统设计
随着电力电子技术的广泛应用与发展,供电系统中增加了大量的非线性负载,会引起电网电流、电压波形发生畸变,引起电网的谐波 污染 。另外,冲击性、波动性负荷运行中不仅会产生大量的高次谐波,而且使得电压波动、闪变、三相不平衡日趋严重,这些对电网的不利影响不仅会导致供用电设备本身的安全性降低,而且会严重削弱和干扰电网的经济运行,造成对电网的 公害 。400 Hz中频电源主要用于飞机机载设备、雷达、导航等航空及舰船等军用电子设备的特殊场合。也正是由于中频电源系统的特殊性,市场上的适用于中频电源的电能质量分析仪不多。 为了实现对中频电源电源系统电能质量的准确测试,在做了需求分析的基础上,提出并设计了一种基于 LabVIEW 的便携式中频电源质量分
[测试测量]
基于<font color='red'>LabVIEW</font>的中频电源电能质量分析测试系统设计
LabVIEW中数组的自动索引
  我们在LabVIEW里面使用 While 或者是 For循环结构 的时候,就会发现每一个循环中在它们的循环结构的边界都可以自动完成一个 数组 元素的索引或累积。 LabVIEW 中循环结构的这种能力就叫做自动索引(Auto-indexing)。   不过有一点需要注意: LabVIEW 中 For循环 中自动索引功能是默认启用的,而 While循环 中自动索引功能是默认关闭的。   下图中就是一个使用For循环实现自动索引功能的例子:   在这里我们可以看到,在For循环中,每次循环就创建了数组的一个元素,当整个循环结束之后,这个由随机数组成的数组就被传送到Array这个指示器中了。也就是说只有在循环结束之
[测试测量]
<font color='red'>LabVIEW</font>中数组的自动索引
LabVIEW实现阶次分析
1. 简介 阶次分析是用来研究,设计和检验角速度随时间变化的转动或往复运动体系的强有力工具。同频域分析相似,您可以把阶次分析当作是一把信号的手术刀,可以将声音,振动和其它动态信号解剖成与力学系统物理量相关的分量。由此,您对系统有更好的理解并能识别其随时间和运行条件变化的特征。不同于功率谱或其它频域分析标准,即使当信号源经受角速度变化或频率/多普勒频移,阶次分析也能发挥作用。 声音和振动测量套件包含的阶次分析VIs具有计算、分析角速度和从原始的噪声和振动信号中提取阶次分量的能力。功率分布可以作为时间或角速度的函数被测量,而任意阶次分量的相位和幅度可以作为角速度的函数被测量。数据可以瀑布图,轨迹图、极化图和伯德图的形式显示。
[测试测量]
<font color='red'>LabVIEW</font>实现阶次分析
基于LabVIEW的单片机脉冲发生器
  1引言   由于各种人群的皮肤阻抗的动态范围不一样,甚至同个人在不同的时间、不同的环境下皮肤阻抗的动态范围也不一样。因此,在皮肤阻抗检测系统中,刺激器需要根据不同的人群以及不同的环境,产生不同频率、不同脉宽的刺激信号,才能保证检测系统可以测量到人体皮肤的真实阻抗。   MCS-51单片机系统有3个定时器可以产生方波,而且方波的脉冲频率及宽度可以由软件设定,这种产生脉冲的方式具有很大的灵活性。上位机软件LabVIEW同下位机通信时,将下位机所要产生的脉冲的参数通过串口传给下位机,以便实现利用LabVIEW控制单片机产生所需脉冲的目的。   2下位机系统的设计   2.1硬件部分   MCS-51单片机内部有一个功能很强
[测试测量]
基于<font color='red'>LabVIEW</font>的单片机脉冲发生器
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved