计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

关于使用多个同种vxi总线仪器的软件设计

2017-09-19 03:13
导读:理工论文论文,关于使用多个同种vxi总线仪器的软件设计怎么写,格式要求,写法技巧,科教论文网展示的这篇文章是很好的参考:引言 基于vxi总线虚拟仪器组建的测试系统作为测试领域里一个新的应用方向,
引言 基于vxi总线虚拟仪器组建的测试系统作为测试领域里一个新的应用方向,引起了我国兵器测试界的关注,并开发应用了适合兵器行业的测试系统。本人在对基于vxi总线仪器组建的压力测试系统进行开发的过程中,由于系统要求完成多信道压力信号测试,故将使用到多个同种vxi功能模块。在vxi测试系统中,每个功能模块都相当于一个具有独立面板的传统仪器,若按该思想方法进行本测试系统应用软件设计,无疑将重复设计并使用同样的仪器面板和源代码,造l成软件的冗长。而利用计算机软件功能较好地解决了这个题目。2压力测试系统硬件结构根据测试任务的需要,所需的仪器模块为具有4路通道的电荷放大器模块和数据采集模块。系统硬件结构图如图1所示。系统选择了实现本钱低,数据传输速率快,具有热插拔和即插即用功能等优点的ieee-1394总线作为外挂控制计算机和vxi机箱的连接总线,相应采用hpe8491b作为零槽控制器;主机箱选用测试方便的hp公司的c尺寸6槽高功率主机箱hp e1421b;外挂计算机选用p ⅱ 266产业控制计算机;电荷放大器模块是自主研制开发的2通道vxi总线寄存器基的高阻抗电荷放大器模块,其增益连续可调并具有滤波功能;数采模块选用hp公司的4通道、最高采样速率为800ksa/s数字化仪hpe15644a,该模块能够满足一般兵器压力测试要求,不选用采样频率过高的数采模块,避免引进高频干扰。3压力测试系统软件结构vxi测试系统软件开发所遵循的基本原则是vpp规范。其中,从通用性和零槽控制器工作环境要求考虑,操纵系统选用32位操纵系统windows95,i/0库选用hpvisa;数字化仪的仪器驱动程序选用商家hp公司提供的,电荷放大器则使用自行编制的符合vpp规范的仪器驱动程序;软件开发平台采用美国ni公司的面向仪器交互式c语言的labwindows/cvi。测试系统软件的设计主要集中在用户界面设计和源代码程序编写两方面。3.1用户界面(系统多级虚拟面板)设计
(科教范文网http://fw.NSEAC.com编辑发布)

按照功能模块的应用将虚拟面板划分为一个测试系统主面极和电荷放大器设置面板、数字化仪设置面板两个子面板。
在设计电荷放大器设置面板时,由于有两块同种功能的电荷放大器模块,它们的面板完全相同,为避免用户界面的重复设计以及源代码程序的重复编写,采用的办法是:针对多个同种功能的vxi模块,制造一个公用面板,当其中之一模块被使用时,才享用该面板,不用时即开释。具体到本压力测试系统,针对两个功能相同只是逻辑地址不同的电荷放大器模块,只设计一个公用的电荷放大器设置面板。当电荷放大器a或b被使用时,该公用面板即显现为当前被使用模块的用户界面,完成对该模块硬件的参数设置。
3.2源代码程序编写
在此着重先容如何通过源代码的编写来实现用户界面设计中的解决思想。
(1)为公用面板上各控件的回调函数添加相应的代码。并定义了公用面板的面板句柄chargepanel和仪器通道句柄chargevi。
(2)在变量定义中定义一个结构体数组:
struct system
{visession handle;
int panel;
}device[2];
(3)在测试系统初始化过程中:
①放置公用电荷放大器设置面板charge。
chargepanel=loadpanel(0,“压力测试系统.uir”,charge);
②将公用面板复制成面板名为vxi charge_1和vxicharge_2,面板句柄为device[0].panel和device[1].panel两块面板,分别对应电荷放大器模块a和b。d
evice[0].panel=duplicatepanel(0,chazgepane,“vxicharge_1”,50,80);
device[1].panel=duplicatepanel(0,chargepane,“vxicharge_2”,50,80);
(4)在设置相应vxi模块参数时:
①初始化相应模块(以电荷放大器模块a为例)。
charge_init(“vxi0::224::instr”,vi_false,vi_false,
    上一篇:中国农村面临的基本题目和对策 下一篇:没有了