0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于LabWindows/CVI开发平台实现Namisoft频谱仪程控软件设计方案

电子设计 来源:网络整理 作者:佚名 2019-11-28 07:50 次阅读

1、引言

微波射频技术已经广泛应用于军事和民用领域。如雷达、末级制导、快速侦察,电子对抗以及通信和导航等。随着军事电子技术的发展,对射频波段测试设备和仪器的需求更为迫切,射频频谱分析仪作为一种通用测试仪器,是研制、检测与维护很多军用电子产品的必备工具;

Namisoft将介绍在开发频谱分析往中基于LabWindows/CVI的软件的总体设计,相比其它软件工具而言,LabWindows/CVI功能强大,简单易学,可以使很多复杂的功能变得更容易实现。

2、LabWindows/CVI概述

LabWindows/CVI是交互式C语言开发平台,可以在多操作系统下运行。它是以ANSIC为核心的面向仪器与测控过程的交互式平台,具有图形用户接口(GUI)简单、控制功能强大,实时性强、编程容易等优点。主要适用于各种测试,控制、故障分析及信息处理软件的开发,尤其是大型,复杂的测试试软件,使用LabWindows/CVI开发可以获得优良的测试性能。

Namisoft在实际开发中体会到,和其它虚拟仪器开发工具相比,LabWindows/CVI具有如下特点:

(1)基于标准C语言,编程技术主要采用时间驱动方式与回调函数方式,易于学习和掌握。

(2)是可视化、交互式的开发工具。具有人机交互界面编辑器.运用可视化交互技术实现“所见即所得”,使人机界面的实现直观简单。

(3)具有程序自动生成的能力,可减少软件开发过程中代码编写的工作量。

(4)具有功能齐全的软件工具包(仪器控制、I/O控制、通讯、数据处理等)以及功能强大的函数库,包括GPIB、RS232,VXI,VISA等。

(5)有大量与外部代码或软件进行连接的机制,如DLL(动态链接库)、DDE(共享库)、ActiveX等。

(6)具有多种灵活的函数调用手段。

3、Namisoft频谱仪程控软件总体方案的设计

总体设计方案

从频谱仪软件的总体需求来说,Namisoft频谱仪程控软件主要由三部分组成:主界面操作与显示,数据分析和处理以及和底层硬件通信。其中主界面主要完成配置参数的设置,用户命令的发送、显示图形和分析结果等:数据分析和处理这一部分负责根据用户命令参数,将获取的原始数据进行分析处理,得到可以用于显示的结果;和底层通信部分负责用户控制命令和仪器配置数据的下发、获取硬件上传的原始数据供数据分析部分使用,以及获取仪器设备的状态数据反馈用户。

主界面:主要指人机界面部分,用户通过人机界面来完成仪器的操作,以及直观地得到需要的分析、测量结果。这一部分主要是针对用户,所以在界面风格设计上更多是要符合用户的习惯.由于本软件是在PC机上运行,显示窗口应设计为可谓整的,以适合用户不同大小的显示器。除了设计供用户使用鼠标点击的软键盘和菜单键外.还应考虑菜单和键盘的兼容性,增强软件的适应性。在界面显示上,应保证图形显示的连续性,避免出现图形停顿的现象。

界面应包含的菜单如下:

(1)中心频率、起始频率.终止频率、频率步进:(2)参考电平、单位转换、衰减;(3)频率跨度(span).全SP轴、零span;(4)FFT/数字检波模式选择、实时分析带宽设置,视频滤波带宽设置,数字检波方式设置、扫描时间;(5)光标开启/关闭、单光标,双光标、光标至中心频率:(6)迹线(最大值迹线、最小值迹线、当前迹线):(7)校准:(8)软件复位。

数据分析与处理:这一部分是整个软件的核心,它关系到软件运行的准确性,可靠性和执行效率。在该软件中,主要分为以下几类数据:(1)控制与配置数据,用户通过人机界面对测量参数进行设置。把发送给硬件部分的参数称为控制数据;把用于数据分析的参数称为配置数据。(2)接收数据,接收来自VⅪ总线的数据信息或者状态信息。(3)显示结果数据,用于显示图形和测量结果。(4)读取数据.从外设读入出厂的校准数据。数据流程图如图1所示。

图1 数据流程图

与底层通信:该谱仪中与底层通信采用VXI总线通信机制,VXI通信起着系统硬件和软件的承上启下接口作用,软件和硬件的沟通主要是由这部分完成。硬件接口部分基于VXI总线,本软件首先应保证能和VXI总线进行通信:其次要保证用户的设置参数能准确、实时下发,能准确无误地读出当前的状态信息以及数据。因此,需要为接口上的信息通信制定一个同步机机制,以保证数据传输过程中不会出现数据错位、数据丢失的情况。

因此,根据上述三个方面的功能,得到了Namisoft频谱仪程控软件的层次结构图,见图2。本软件自项向下分为三个层次:最上层是图形用户界面,它包括图形显示及向用户提供的人机交互平台:居中的是数据处理分析层,它包括数据处理、控制命令的配置等:最底层是与VXI总线相关的信息处理.如软,硬件接口、中断指令、控制命令的下发、数据读取以及软硬件同步等。

图2 软件层次结构图

Namisoft频谱仪程控软件在流程上采用两个线程:数据处理线程和界面处理线程。界面线程涉及参数的配置.参数下发,图形显示等,其中需要对部分变量释放,重新分配空间和初始化.而数据处理线程会使用到这些变量,于是在两个线程之间需要进行相应的保护。在本软件中采取的是延时和标志位相结合的办法,在界面线程里,需要对变量进行释放时,采取一定时间的延时,这个时间足够一个数据线程运行的时间,并且会对数据线程入口处的标志位进行置位,这样,

在界面线程未对变量重新初始化完之前数据线程不会执行具体的函数,只是响应中断。

4、初步方案实现

因为LabWindows/CVI提供了VISA函数库。很方便的和VXI总线打交道,还提供了功能强大的信号处理函数比如FFT变换.以及丰富的界面显示和波形绘制函数库,所以Namisoft频谱仪程控软件很容易地实现了上述的功能。并且界面上显示的控件,均有相对应的控件回调函数,用起来非常方便。

5、结束语

本文Namisoft给出了频谱仪上层软件的设计方案,并且用LabWindows/CVI初步实现了改方案,具有一定的工程价值,但要投入频谱仪的研发与使用还需进一步的研究。

责任编辑:gt


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 显示器
    +关注

    关注

    21

    文章

    4948

    浏览量

    139824
  • 操作系统
    +关注

    关注

    37

    文章

    6738

    浏览量

    123190
  • 线程
    +关注

    关注

    0

    文章

    504

    浏览量

    19651
收藏 人收藏

    评论

    相关推荐

    美国国家仪器(NI)软件Labview,Labwindows cvi,Motion,Vision,DAQ开发与培训

    `` 本帖最后由 wuxi2010 于 2016-3-7 16:42 编辑 1)Labview(Labwindows cvi)与access/SQL server数据库程序开发 2
    发表于 02-29 12:21

    纳米软件案例之频谱仪程控软件

    。基于LavWindows/CVI设计的虚拟仪器在无损检测、电力仪表系统、温控系统、流程控制系统、故障诊断和医疗等领域中发挥着重要作用。用户需求前不久用户找到纳米软件希望使用CVI
    发表于 07-16 11:44

    如何利用LabWindowsCVI平台开发虚拟函数信号发生器

    虚拟仪器和LabWindowsCVI简介基于LabWindowsCVI平台开发虚拟函数信号发
    发表于 04-25 06:17

    一种LabWindows/CVI与MATLAB混合编程的实现

    Labwindows/CVI 是一套面向测控领域的优秀软件开发平台;MATLAB 具有强大的数据处理函数库和多样且简易的绘图方法。本文提出的修改La
    发表于 06-24 09:29 52次下载

    LabWindows/CVI基础教程

    LabWindows/CVI基础教程:LabWindows/CVI是National Instruments公司推出的一套面向测控领域的软件开发
    发表于 07-23 08:22 0次下载

    基于多CPU和LabWindows/CVI 的行车记录系统

    介绍基于多CPU 和LabWindows/CVI 的行车记录系统,阐述了主机的硬件和软件的设计方法和数据分析软件
    发表于 08-31 17:40 142次下载

    cvi 8.0 下载 (NI LabWindows 电子测量)

    NI LabWindows/CVI 8.0 (电子测量): NI LabWindows CVI 8.0 最新完整版,专业强大的用于测试、测量与控制
    发表于 01-26 09:36 883次下载
    <b class='flag-5'>cvi</b> 8.0 下载 (NI <b class='flag-5'>LabWindows</b> 电子测量)

    NI宣布推出ANSI C开发环境LabWindows/CVI

    NI 宣布推出ANSI C开发环境LabWindows/CVI 2009  美国国家仪器有限公司(National Instruments,简称NI)近日宣布推出LabWindows
    发表于 01-16 10:27 1080次阅读

    基于FPGA的太赫兹频谱仪数字单元设计方案

    地球大气是空间科学研究的重要目标和人类活动的舞台,为了探究大气痕量气体的现状,从1970年代开始,越来越多的卫星上开始搭载大气成分探测,这对频谱仪的带宽、谱分辨率及稳定性提出了较高的要求。传统的临
    发表于 11-01 09:51 12次下载
    基于FPGA的太赫兹<b class='flag-5'>频谱仪</b>数字单元<b class='flag-5'>设计方案</b>

    LabWindows教程之LabWindows CVI的虚拟仪器设计与应用教材免费下载

    本文档的主要内容详细介绍的是LabWindows教程之LabWindows CVI的虚拟仪器设计与应用教材免费下载。 本书详尽、系统地介绍了NI公司推出的一种虚拟仪器软件设计
    发表于 12-03 08:00 153次下载

    如何使用LabWindows CVI实现频谱分析仪自动测试系统的设计

    介绍了如何在LabWindows / CVI软件的支持下,对具有GPIB接口的频谱分析仪进行开发,构建具有
    发表于 06-28 14:56 10次下载

    LabWindows CVI开发环境下实现串口通讯的方法详细说明

    介绍了在LabWindows CVI开发环境下实现串口通讯的方法。与其他软件开发环境下的串口通讯的方法相比,
    发表于 07-02 15:37 46次下载

    Labwindows CVI的简介说明

    CVI全称LabWindows/CVI,是一个用于测试和测量的ANSI C开发环境,使用CVI编写测控
    发表于 03-17 08:00 19次下载
    <b class='flag-5'>Labwindows</b> <b class='flag-5'>CVI</b>的简介说明

    基于FPGA的简易频谱仪设计与实现

    基于FPGA的简易频谱仪设计与实现
    发表于 06-16 10:01 62次下载

    如何使用频谱仪测量信号的频谱

    频谱仪是一种用于测量信号频谱的仪器,它可以显示信号的频率成分和幅度。在本文中,我们将详细介绍如何使用频谱仪测量信号的频谱。 1. 频谱仪的基
    的头像 发表于 06-03 10:07 1316次阅读