大直径测量数据采集系统中动态链接库设计0,

发布者:数字行者最新更新时间:2015-07-22 来源: dzsc 关键字:大直径测量  虚拟仪器  动态链接库  光栅数据采集 手机看文章 扫描二维码
随时随地手机看文章
   虚拟仪器是现代计算机技术、仪器仪表技术及现代计算机辅助测试(CAT)技术相结合的产物,广泛应用于数据采集和自动测试领域。

    Lab VIEW是一种基于图形程序的虚拟仪器编程语言,Lab VIEW程序称为虚拟仪器程序(简称VI)。Lab VIEW按照模块化编程思想,将一些特定的测试任务,建立成一系列的VI,然后通过这些VI的组合来构成各种复杂的、功能强大的测试系统。Lab VIEW除了带有各种基本的VI库(GP-IB、VISA、VXI和串行接口仪器的驱动程序等)和功能超强且庞大的分析函数库外,还可以通过调用外部代码实现Lab VIEW比较复杂的接口功能,其中就包括动态链接库调用机制。

   动态链接库可采用VB、VC++6.0等高级语言开发,VC++6.0编制动态链接库,首先由AppWizard生成DLL框架,用户自己键入实现各种功能的代码。DLL需要h函数声明文件、C源文件及def定义文件。h文件的作用是声明DLL要实现的函数原型,供DLL编译使用,同时还提供应用程序编译使用。C文件是实现具体文件的源文件,它有一个入口点函数,在DLL被初次调用时运行,完成初始化工作。def文件是DLL项目中比较特殊的文件,用于定义该DLL项目将输出的函数,只有def文件列出的函数才能被应用函数调用,函数名列在该文件EXPORTS的关键字下。

   多滚轮法大直径测量的数据采集系统

   多滚轮法大直径测量原理结构
   滚轮法大直径测量原理结构主要有被测大轴、滚轮、圆光栅、信号调理与接口、计数器及大轴转数测量标记组成。大轴直径计算公式为
    D=α*d/2τN
   其中,D为被测大轴直径;d为滚轮直径;α为滚轮转动角度;N为大轴转动周数。滚轮采用特殊的结构设计,以减小测量过程中打滑发生的几率。同时通过3个滚轮的冗余测量信号,可辩识出测量过程中的“打滑发生段”,并在进行三滚轮信号合成时,采用有效的数据融合技术,进一步将“打滑段”的信号剔除。通过对接触压力大小与滚轮直径变化的关系作精确标定,测量时根据拟合数学模型对滚轮变形作适时修正,以消除或减小滚轮变形引起的测量误差。为减小温度场不均匀或变化所导致的测量误差,在工件表面布置多个温度传感器,用以监测工件是否进入恒温状态及工件温度的变化和分布情况,以便对该温度场引起的大直径尺寸变化进行修正。用微位移传感器测量大轴表面形状误差,分离出各次谐波,用以修正测得直径,减小形状误差的影响。

   数据采集系统组成
   多滚轮法大直径测量系统采用的传感器种类和数目均较多,多参数的测量和控制由虚拟仪器测量系统实现,其结构框图如图1所。

  
   图1 数据采集系统框图

   光栅数据采集硬件主要由RENISHAW公司的RESR20圆光栅编码器和FAGOR公司的DRO板组成,RESR20圆光栅编码器的角分辨力可达0.01″,分度不确定度为0.5″。RGH20读数头输出4路信号,DRO板对这4路信号进行细分后转换成数字信号输入计算机,完成对圆光栅信号的数据采集。光电传感器的信号由6071E板(该板为NI公司的多功能数据采集板,具有模拟量、数字量采集单元,该板同时用于位移、压力等信号的采集)上的计数器送入计算机,作为数据采集的触发信号。同时为减小数据采集启停引起的误差,通常在大轴转动数周过程中采集光栅信号。在编制采集软件时设置大轴转动周数单元,当大轴转动且计数标记通过光电传感器时,计算机开始采集数据,当大轴转动周数达到预设值时,停止数据采集。

   数据采集系统软件设计

    6071E多功能采集卡自身带有适用于LabVIEW环境的驱动程序,直接进行设置即可。DRO板必须用VC++编程调用其动态链接库进行初始化,然后将VC++的调用生成动态链接库,由Lab2VIEW调用完成对DRO板的初始化,参数的初始化包括滚压轮标准参数、测试任务参数以及其他环境参数等。初始化结束,计算机检测到触发信号后开始数据采集,数据采集部分同样需要用VC++编程调用DRO板的动态链接库的库函数。圆光栅信号输入计算机后由软件进行数据的处理和存储,当大轴转动周数等于预设值时,停止采集,一次数据采集过程完成。

    LabVIEW调用动态链接库,使用LabVIEW功能模板中“Advanced”子模板的“调用库函数(Call Library Function)”结点。实现动态链接库调用步骤如下:

    (1)在LabVIEW程序建立“调用库函数结点”。其中“Call Library Function”结点通过选择功能模板“Advanced”子模板的“Call Library Function”功能产生。

    (2)配置“调用库函数结点”。双击框图程序窗口的“Call Library Function”结点,在弹出的对话框中对此“调用库函数结点”进行配置。其中:在“Library Nameor Path”项中键入结点所链接的DLL文件名,它由c源代码编译而来;在“Function Name”项中键入结点相链接的DLL文件中函数的名称;参数“returntype”的类型选择“Void”,并增加所需的其他返回参数。

    (3)编辑c源文件。c源文件包括硬件初始化文件和数据采集文件。硬件初始化部分源代码如下:
   //FirstInittheBoardConfigandAxisConfigData
    BoardConfig.NumberOfAxes=4;
    do
    {
     printf(“ Selectsignaltype(0=TTL,1=1Vpp):”);
     signal_type=getch();
    }while((signal_type<‘0’)(signal_type>‘1’));
    signal_type=signal_type-‘0’;
    //Enteryourownvalues,theseareonlyasample.
    for(i=0;i     {
  AxisConfigData[i].Resolution=0.005;
  AxisConfigData[i].CountDirection=0;
  AxisConfigData[i].SignalType=signal_type;
     AxisConfigData[i].TTLWaveMultiply=0;
     AxisConfigData[i].SineWaveMultiply=0;
     AxisConfigData[i].MachineErrorComp=0;
     AxisConfigData[i].I0Type=0;
     AxisConfigData[i].EncoderFactor=1000;
     AxisConfigData[i].EncoderOffset=0;
     AxisConfigData[i].ExternalMultiply=1;
    }
    //CallingtoIniBoardfunction.
    if(IniBoard(&BoardConfig,&AxisConfigData[0])==0)
    {
     printf(“ Errorduringinicialization ”);
     exit(0);
    }
数据采集部分源代码如下:
    //CounterTest
    voidCounterTest(void)
    {
     ReadAllCounters(&AxisValuesData);
    Axis_X=AxisValuesData.AxisDisplayValue[0];
    Axis_Y=AxisValuesData.AxisDisplayValue[1];
    Axis_Z=AxisValuesData.AxisDisplayValue[2];
    Axis_W=AxisValuesData.AxisDisplayValue[3];
    printf(“X=%4.4f”,Axis_X);       //PrintthevalueofAxisX
    printf(“Y=%4.4f”,Axis_Y);
    printf(“Z=%4.4f”,Axis_Z);
    printf(“W=%4.4f”,Axis_W);
    printf(“ ”);
    }

    (4)编译c源代码。将c源文件编译成DLL文件,使用VC++6.0完成。

    (5)运行VI。运行由上述步骤生成的LabVIEW程序。

   结束语

    LabVIEW的外部代码扩展功能是其重要特点之一,调用动态链接库是LabVIEW提供的调用外部代码的4种途径中最通用的一种。可调用标准共享库和用户自定义的库函数,对于不附带LabVIEW驱动程序的硬件尤其具有使用价值。通过调用动态链接库机制可引入C语言的强大功能,确实是一条增强LabVIEW与其它Windows应用程序之间的数据共享能力的良好途径。

关键字:大直径测量  虚拟仪器  动态链接库  光栅数据采集 引用地址:大直径测量数据采集系统中动态链接库设计0,

上一篇:基于网络的虚拟仪器技术在车辆检测中的应用
下一篇:基于虚拟仪器的ABS传感器功能测试系统的设计

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

基于虚拟仪器的液位控制系统的研究与设计
1 引言   人们生活以及工业生产经常涉及到液位和流量的控制问题,例如饮料、食品加工,居民生活用水的供应,溶液过滤,污水处理,化工生产等多种行业的生产加工过程, 通常要使用蓄液池。蓄液池中的液位需要维持合适的高度,太满容易溢出造成浪费,过少则无法满足需求。因此,需要设计合适的控制器自动调整蓄液池的进出流量,使得蓄液池内液位保持正常水平,以保证产品的质量和生产效益。这些不同背景的实际问题都可以简化为某种水箱的液位控制问题。因此液位是工业控制过程中一个重要的参数。特别是在动态的状态下,采用适合的方法对液位进行检测、控制,能收到很好的生产效果。   传统的液位控制系统大多采用PLC和组态软件来实现,也有用单片机控制的系统,是所谓
[工业控制]
基于虚拟仪器技术实现脉搏信号检测系统的设计
在世界范围内,心血管类疾病患者与日俱增,已成为人类健康的头号杀手。美国心脏协会报告称,每年大约有240万美国人死于心血管疾病,其中尤以高血压患者所占比率最高,现象最为普遍。中国卫生部公布中国心血管疾病患者已超过1.5亿,心血管病是目前中国人群最主要的死因。因此预防此类疾病的产生显得尤为重要。 人体脉搏系统是心血管系统的重要组成部分,从脉搏波中提取人体的生理和病理信息作为临床诊断和治疗的依据,受到中外医学界的重视,脉搏波所呈现出的形态、强度、速率、节律等方面的综合信息,在很大程度上反映出人体心血管系统中的许多生理病理的血流特征。中医的诊脉理论认为脉搏波的传播与心血管系统的血液运动、血管壁运动规律有着密切的联系。 脉搏 信号
[测试测量]
基于<font color='red'>虚拟仪器</font>技术实现脉搏信号检测系统的设计
基于虚拟仪器的可见光谱数据采集与处理
1 引言 在现代节能照明中,可见光谱测量是研究光源性能的重要手段,但大多数测量仪表功能固定且较为单一,不能根据测量对象及测试要求的多样性进行灵活的调整和变更,由此带来了使用中的诸多不便。而利用虚拟仪器技术的优势就可较好的解决这一问题。 虚拟仪器是基于计算机的仪器,它通过软件将计算机硬件资源与仪器硬件有机的融为一体,从而把计算机强大的计算处理能力和仪器硬件的测量、控制能力结合在一起,大大缩减了仪器硬件的成本和体积,尤其是便于软件的修改,以实现测试功能的扩展。本文利用目前国际上唯一的编译型图形化编程语言 LabVIEW ,设计了一个基于虚拟仪器技术的光谱采集与处理系统,功能较强,操作简便。 2 测量系统设计 2.1 系统构成 本系统
[测试测量]
基于<font color='red'>虚拟仪器</font>的可见光谱<font color='red'>数据采集</font>与处理
基于虚拟仪器的高精度压力信号放大系统设计
1 系统设计方案 系统由直流稳压源提供±12 V和±5 V两种电压。设定±12 V供电时,系统电压输出满量程为5V,传感器承受静压力满量程为19.6N。满量程范围内测量时,静压力信号最大绝对误差 9.8×10-3N,相对误差 0.02%。测力传感器输出信号经放大电路后提供电压和电流两种输出方式。 2 系统硬件电路整体设计方案 系统整体设计流程如图1所示。系统硬件电路主要由LC7012测式力传感器、AD620仪表放大器、参考电压源以及电压调零电路、信号滤波整形电路和电压电流转换电路组成。 2.1 压力测量电路 压力测量采用LC7012测力传感器,配以全桥测量电路实现。LC7012测力传感器受到压力作用时有以下两
[测试测量]
基于<font color='red'>虚拟仪器</font>的高精度压力信号放大系统设计
基于虚拟仪器的USB接口数据处理系统设计
  虚拟仪器技术在计算机测控领域得到了快速广泛的推广应用,从简单的仪器控制、数据采集到尖端的测控和工业自动化;从大学实验室到工业现场;从探索研究到技术集成都可以发现了虚拟仪器技术应用的很多领域。国内外相关学者对此做了很多的研究工作。   1 虚拟仪器与图形化编程语言-LabVIEW   虚拟仪器(virtual instrument,VI)是一种基于计算机的仪器,就是在通用计算机上加上软件和硬件,使得使用者在操作这台计算机时,就像是在操作一台他自己设计的专用传统电子仪器。在虚拟仪器系统中,硬件仅仅是为了解决信号的输入输出,软件才是整个仪器系统的关键,任何一个使用者都可以通过修改软件的方法,很方便地增减仪器系统的功能与规模,所以
[测试测量]
基于<font color='red'>虚拟仪器</font>的USB接口数据处理系统设计
测试测量技术发展趋势展望与探讨
30多年来,作为测试测量行业的创新者和虚拟仪器技术的领导者,National Instruments一直致力于为工程师和科学家们提供一个通用的软硬件平台,用于科技应用和工程创新。伴随着测试需求的多样化和复杂化,这种以软件为核心的测试策略正逐渐成为行业主流的技术,并得到广泛的应用,在提高效率的同时降低测试成本。在新兴商业技术不断涌现的今天和未来,测试测量行业正呈现出五个重要的发展方向。 目录 趋势一:软件定义的仪器系统成为主流 趋势二:多核/并行测试带来机遇和挑战 趋势三:基于FPGA的自定义仪器将更为流行 趋势四:无线标准测试的爆炸性增长 趋势五:协议感知(Protocol-Aware)ATE将影响半导体的测试 趋势一:软件
[测试测量]
测试<font color='red'>测量</font>技术发展趋势展望与探讨
IC芯片表面标识自动识别虚拟仪器系统的设计
使用的产品:LabVIEW 7.0、IMAQ Vision、IMAQ Vision Assistant、PXI-1409、MBC-5051等 挑战:构建IC芯片表面标识自动识别系统,实现对芯片表面英文字母、数字以及厂商图标的识别。 应用方案:使用NI公司LabVIEW、IMAQ Vision、IMAQ Vision Assistant等软件配合PXI-1409图像采集卡、MBC-5051 CCD黑白相机等图像采集硬件构建IC芯片表面标识自动识别系统,实现对英文字母、数字以及厂商图标的识别。 介绍 芯片表面标记自动识别技术是芯片制造技术不断高速发展的要求,其中芯片表面标识主要包括厂商图标、序列号(包括英文字母及数字)等。由于自动
[应用]
基于虚拟仪器的某弱信号处理模块测试系统设计与实现
0 引 言     随着测控技术的发展,要求测试的项目和测试参数日益增多,对自动化测试速度和测试准确度也提出了较高的要求。虚拟仪器是基于计算机和标准总线技术的模块化系统,通常由控制模块、仪器模块和软件组成。由软件将计算机硬件资源与仪器硬件有机的融合为一体,从而把计算机强大的计算处理能力和仪器硬件的测量、控制能力结合在一起,大大缩小了仪器硬件的成本和体积,并通过软件对数据进行显示、存储以及分析处理,广泛应用于民用和军用测量领域Ⅲ。作为虚拟仪器技术的一种,GPIB总线仪器以其良好的可靠性和高精度性使基于该总线的虚拟仪器在自动化测试领域中得到广泛的研究与应用。     GPIB总线是一个数字式的24线并行总线。它由16条信号线和8条接地返
[测试测量]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved