基于LabWindows的轴承凸出量虚拟仪器开发与应用

2010-08-01 03:43:56刘金秀李副来
轴承 2010年4期
关键词:零位虚拟仪器控件

高 宇,刘金秀,李副来,张 慧,胡 波

(洛阳轴研科技股份有限公司 仪器开发部,河南 洛阳 471039)

现代工业中,精密机床主轴﹑高速电主轴、精密仪器轴系等高精度轴系大多采用角接触球轴承,且配对使用,这类轴承不但要求高速、高精度,而且要求轴系具有高刚度。要满足这些要求,需要准确测出单个轴承在一定预载荷作用下的端面凸出量。在使用中,端面凸出量是轴承的一个重要参数,不但影响主轴的旋转精度、刚度、振动、噪声,还直接影响轴承的寿命。

先前精密主轴配对轴承凸出量主要由单片机进行测量显示,采样的程序大多固定且不宜改变,采样速度很慢,不能对测量数据进行存档、调档。虚拟仪器主要是通过对计算机以及PCI卡进行测量显示,提高了采样的速率和精确性,并且通过LabWindows平台对采样数据进行滤波分析,达到了实时采样处理,而且可进行存盘、调档,大大提高了操作和测量效率。

1 LabWindows平台简介

虚拟仪器的技术基础是计算机技术,核心是计算机软件技术。LabWindows CVI[1-2]是美国国家仪器(National Instruments,NI)公司推出的面向仪器与测控过程的C,C++交互式开发平台。该平台不仅提供了对虚拟仪器的支持,还具有各种测试、通信、控制和数值分析的能力,具有图形建模简单、控制功能强大、实时性强、编程容易等优点。从软件开发角度看,其具有以下一些特点:

(1) 可视化、交互式的开发工具。具有人机交互界面编辑器,运用可视化交互技术,使人机界面的实现直观简单,大大提高了工程设计的效率和可靠性。

(2) 具有程序自动生成能力,可减少软件开发过程中代码编写的工作量。设计好的人机交互界面(虚拟仪器面板)存储在后缀名为.uir的文件中。软件自动生成原码头文件.h,自动声明界面对象常量及相关的回调函数。

(3) 具有齐全的软件工具包及功能强大的函数库。通过简单调用库函数就能驱动相应的各种仪器和硬件板卡。这些工具包和函数库具有更高的效率,使程序的编写更加简洁。

(4) 完善的兼容性。借助于LabWindows CVI,有经验的C,C++语言开发人员可以采用熟悉的C语言环境,如VC,BC等开发自己的虚拟仪器系统。另外,还可将仪器库函数及子程序编译成32位DLL,以用于任何32位C,C++环境及VB或LabVIEW中。

另外,LabWindows支持多种操作系统平台,在任何一个平台上开发的应用程序均可直接移植到其他平台上。

2 凸出量虚拟仪器的开发

2.1 硬件部分

仪器硬件[3]主要由计算机及其接口、多功能数据采集卡和滤波及放大电路组成,原理框图如图1所示。多功能数据采集卡采用PCI-9111。这是一种极具性价比的适合PC及兼容机的数据采集卡,其能够完成信号采集(A/D),数字信号的模拟输出(D/A)及定时/计数功能。其具有8个模拟量输入通道,2个模拟量输出通道,24个数字量I/O接口和3个16位定时/计数器。输出的模拟信号通过滤波器进行滤波平滑、放大后即可使用。其中滤波器的选择视输出信号频率范围而定,放大倍数根据实际需要分不同的档位。

图1 仪器硬件原理框图

2.2 面板设计

设计的面板如图2所示。该过程主要包括创建控件和修改空间属性两部分。

图2 仪器面板图

2.2.1 创建控件

用户界面共有22个控件:12个Button 控件,8个Numeric控件,1个Table控件和1个Timer控件。创建过程如下:启动CVI,在工程窗口中选择菜单File→New→UserInterFace (*.uir),打开空白用户界面编辑窗口。在其中单击右键,依次选择所需控件并置于面板的合适位置。

2.2.2 设置控件属性

将鼠标置于各控件图标上并双击左键,在弹出的编辑窗口中设置好各控件的属性。主要属性设置包括控件名称(Constant Name)、回调函数(Callback Function)名、控件标题等。

2.3 软件设计

在完成用户界面设计后,LabWindows可自动生成许多代码以及缺省消息处理函数,只要在这些函数中添加所需的代码即可完成程序的设计。具体操作如下:在以上完成的界面窗口菜单中选Code→Generate→All Code进入代码编辑窗口。控件按钮功能程序源代码如下,其中加粗部分代码需程序开发者自行添加。

int CVICALLBACK cear (int panel, int control, int event,

void *callbackData, int eventData1, int eventData2)

{

char a,zweight;

double Pressure,txt,showP,ShunShi,Tempv;

char val,val1,a1;

int second2,second1,Start;

int delaytime,j,Num ;

int t,t1,t2,n ;

char str[200];

int file,BEGINM;

char temp[50],temp1,N[50][50];

double tempv,tempv1,tempv2,e,x,y,aa,bb,Yao,Jizh;

// double tempv,tempv1;

int second, minute, hour;

int year,day, month;

int resultdate,resulttime,tempdata,Tmax,Tmin,Tsum;

if (event != EVENT_COMMIT)

return FALSE;

GetCtrlVal (Ss, PANEL_3_BEGINM, &Start);

if(Start)

{

SetCtrlAttribute (Ss, PANEL_3_BINARYSWITCH, ATTR_DIMMED, 1);

SetCtrlAttribute (Ss, PANEL_3_TIMER, ATTR_ENABLED, 1);

GetCtrlVal (Ee, PANEL_7_NUMERIC, &Jkou);

Zadress=Zadress|Jkou;

DO_WritePort (card, 0, Zadress);

SetCtrlVal (Ss,PANEL_3_BINARYSWITCH , 1);

SetCtrlVal (Ss,PANEL_3_LED , 0);

GetCtrlVal (Ss, PANEL_3_NUMERIC_4, &Jizh);

GetCtrlVal (Ss, PANEL_3_NUMERIC, &Tempv);

SetCtrlAttribute (Ss, PANEL_3_TIMER, ATTR_ENABLED, 1);

}

else

{

SetCtrlAttribute (Ss, PANEL_3_BINARYSWITCH, ATTR_DIMMED, 0);

SetCtrlAttribute (Ss, PANEL_3_BEGINM_2, ATTR_DIMMED, 0);

GetCtrlVal (Ss, PANEL_3_NUMERIC, &aa);

GetCtrlVal (Ss, PANEL_3_NUMERIC1, &bb);

GetCtrlVal (Ss, PANEL_3_BEGINM, &Start);

Zadress=Zadress&0x0000;

DO_WritePort (card, 0, Zadress);//停转1秒

SetCtrlVal(Ss, PANEL_3_BINARYSWITCH, 0) ;

SetCtrlVal (Ss,PANEL_3_LED , 1);

if(Start==0)

{

Data1[i]=aa ;

Data[i]=bb ;

}

i++ ;

m=i;

SetCtrlAttribute (Ss, PANEL_3_TIMER, ATTR_ENABLED, 0);

// PlotPoint (Ss,PANEL_3_GRAPH_2 , bb,

aa, VAL_SOLID_DIAMOND, VAL_RED);

Delay(1);

SetCtrlAttribute (Ss, PANEL_3_TIMER, ATTR_ENABLED, 1);

}

return 0;

}

完成以上代码添加并保存后,在工程窗口中选择:Ed-it→add File To Project→all Files(.*),依次将前述界面文件、代码文件以及自动生成的头文件加入到工程文件中。通过Run dun Project命令即可运行工程文件。

2.4 测量过程

首先将轴承、附件和内隔套固定,点击控制面板的“基准零位”按钮,通过压力传感器获得的压力值即为轴承的基准零位。然后放上轴承、附件和外隔套,并点击“自动测量”控件按钮,当成对轴承的压力传感器的压力值达到基准零位值后,仪器停止测量,控制面板显示的位移传感器值即为轴承凸出量值。

3 结束语

虚拟仪器是电子技术和计算机技术相结合的产物,通过对LabWindows软件开发平台的应用,提高操作效率,美化操作界面,便于对测量数据进行存盘与读盘,提高了轴承凸出量测量效率。随着计算机技术的不断发展,虚拟仪器技术必将会在轴承测量领域发挥越来越重要的作用。

猜你喜欢
零位虚拟仪器控件
无刷力矩电机零位设计技术研究
现代机械(2021年3期)2021-07-12 00:47:42
电机零位对电动汽车能耗影响研究
关于.net控件数组的探讨
软件(2018年7期)2018-08-13 09:44:42
PCB 刻制机功能开发及在虚拟仪器实验室建设中的应用
电子制作(2017年13期)2017-12-15 09:00:26
虚拟仪器及其在电工电子实验中的应用
电子制作(2017年1期)2017-05-17 03:54:33
虚拟仪器技术在农业装备测控中的应用
基于虚拟仪器的DMFC实时监控系统
电源技术(2016年9期)2016-02-27 09:05:28
霍尔传感器零位特性及补偿方法研究
分析起重机零位保护及检验
就这样玩会VBA中常见的自定义控件
电脑迷(2012年24期)2012-04-29 00:44:03