利用LabWindows实现故障模拟与辅助训练
2018-12-17陈友文唐波
陈友文 唐波
摘要:通過分析测试设备的电路原理和测试流程,得出设备故障现象和可能原因。利用LabWindows作为仿真工具,对该设备的故障现象进行仿真,同时给出了故障点以及产生故障的可能原因提示,可以用于辅助训练,有效提高操作员排除设备故障的能力。
关键词:LabWindows;故障模拟;辅助训练
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2018)25-0267-03
Using LabWindows to Realize Fault Simulation and Auxiliary Training
CHEN You-wen, TANG Bo
(College of Electronic Science, National University of Defense Technology, Changsha 410073, China)
Abstract: By analyzing the circuit principle and test flow of the test equipment, the equipment failure phenomenon and possible causes are obtained. Using LabWindows as a simulation tool, the fault phenomenon of the device is simulated. At the same time, the fault point and the possible cause of the fault are given. It can be used for auxiliary training and effectively improve the operator's ability to eliminate equipment faults.
Key words: LabWindows; Fault simulation; Auxiliary training
1 引言
在实际设备操作过程中,由于设备老化等原因,可能出现各种故障,如:指示灯损坏、开关接触不良、继电器损坏等。同时也可能因为人为因素导致一些故障,如:电缆连接不到位、没按规程操作等。操作员直接在实际设备上进行操作,一方面存在场地受限、训练成本高、设备磨损老化严重、安全风险高等一系列弊端,不可能长期操作;另一方面在操作过程中一些故障并不一定出现。所以对于设备一些常见的故障及排除方法,操作员只能通过背题库的方式进行。这样对故障现象没有一个直观的感受,学习起来觉得很枯燥,往往效果不好,导致大部分操作员在遇到设备故障时心生紧张。
LabWindows作为NI公司开发的优秀虚拟仪器软件平台,采用C语言编写代码实现其对虚拟仪器的控制,具有交互式程序开发、功能强大的函数库等特点,不仅能够灵活设置工作流程,而且能够实现设备故障现象模拟,提示发生故障可能原因,从而用于辅助训练。本文以某测试设备中部分简单电路为例,介绍利用LabWindows实现故障现象模拟与辅助训练。
2 测试设备基本电路原理
测试设备与设备A通过电缆L1相连,其基本电路原理图如图1所示。
从图中可看出,在测试设备上接通设备A开关,继电器J1通电工作,J1/1.2节点闭合,测试设备上正电(+D)通过J1/1.2节点和电缆L1传到设备A正电(+D1),继电器J2通电工作,J2/1.2节点闭合,设备A内部电路开始工作,输出电压通过电缆L1送至测试设备中电压表进行测量并显示,同时J2/3.4节点闭合,测试设备上指示灯HA亮。其测试流程图如图2所示。
3 故障现象及可能原因分析
通过上面的电路原理和测试流程可知,故障现象有三种情况。情况1:电压表无指示,HA指示灯亮;情况2:电压表有指示,HA指示灯不亮;情况3:电压表无指示,HA指示灯不亮。不同的故障现象对应的可能原因也不相同。
情况1分析:HA指示灯亮,说明J2/3.4节点闭合,那么测试设备上设备A开关和继电器J1工作正常。产生电压表无指示的可能原因有①J2/1.2节点故障,没有正常闭合;②设备A内部电路故障,没有输出;③测试设备上电压表故障,无法测量显示电压。
情况2分析:电压表有指示,说明设备A内部电路工作正常,J2/1.2节点闭合,那么测试设备上设备A开关和继电器J1工作正常。产生HA指示灯不亮的可能原因有①J2/3.4节点故障,没有正常闭合;②测试设备上指示灯HA损坏。
情况3分析:产生电压表无指示,HA指示灯不亮的可能原因有①测试设备上设备A开关故障,无法正常接通;②继电器J1故障,J1/1.2节点不能正常闭合;③继电器J2损坏,不能正常工作;④电缆L1没有连接或连接不到位,信号无法传递;⑤测试设备上电压表和指示灯HA同时损坏。
4 LabWindows实现故障模拟与辅助训练
4.1 故障现象模拟的实现
操作响应在LabWindows系统中是通过向回调函数中添加相应的程序代码实现的。同一操作可能产生不同的故障现象,在LabWindows中可以使用rand函数来实现。要模拟前面介绍的故障现象,可向“设备A”开关回调函数中添加如下代码实现:GetCtrlVal(panelHandle,PANEL_SBAKG,&i;);
if(i==1)
{ j=4*rand()/RAND_MAX;
switch (j)
{ case 0:
SetCtrlVal(panelHandle,PANEL_SBASCDY,25.0);
SetCtrlVal(panelHandle,PANEL_HAD,1);
break;
case 1:
SetCtrlVal(panelHandle,PANEL_ SBASCDY,0.0);
SetCtrlVal(panelHandle,PANEL_ HAD,1);
break;
case 2:
SetCtrlVal(panelHandle,PANEL_ SBASCDY,25.0);
SetCtrlVal(panelHandle,PANEL_ HAD,0);
break;
case 3:
SetCtrlVal(panelHandle,PANEL_ SBASCDY,0.0);
SetCtrlVal(panelHandle,PANEL_ HAD,0);
break;} }
通过GetCtrlVal(panelHandle,PANEL_ SBAKG,&i;)语句得到控件“设备A”开关的值,并把值赋给变量i。i值为1时,通过j=4*rand()/RAND_MAX语句产生0~3的随机数赋给变量j,当j值为0,模拟设备正常,电压有输出,指示灯HA亮;当j值为1,模拟情况1,电压无输出,指示灯HA亮;当j值为2,模拟情况2,电压有输出,指示灯HA不亮;当j值为3,模拟情况3,电压无输出,指示灯HA不亮。
4.2 辅助训练的实现
用于辅助训练,那么在模拟故障现象后,可由MessagePopup函数给出提示,指出故障点,而可能原因可以通过MessagePopup函数直接给出,也可通过ConfirmPopup函数让操作员自己进行判断,然后提示操作员判断是否正确,如不正确再给出正确答案。其具体实现可向“设备A”开关回调函数中添加如下代码:
case 1:
Delay(2.0);
MessagePopup("提示","設备出现情况1故障:电压表无指示,HA指示灯亮") ;
MessagePopup("提示","故障可能原因有:\n 1.继电器J2/1.2节点有问题,没有正常闭合;\n 2.设备A内部电路故障,没有输出;\n 3.测试设备上电压表有问题,无法测量显示电压。") ;
break;
case 2:
Delay(2.0);
MessagePopup("提示","设备出现情况2故障:电压表有指示,HA指示灯不亮") ;
MessagePopup("提示","故障可能原因有:\n 1.继电器J2/3.4节点有问题,没有正常闭合;\n 2.测试设备上HA指示灯损坏。") ;
break;
case 3:
Delay(2.0);
MessagePopup("提示","设备出现情况3故障:电压表无指示,HA指示灯不亮") ;
k=ConfirmPopup("提示","故障可能原因有:\n 1.“设备A”开关故障,无法正常接通;\n 2.继电器J1故障,J1/1.2节点不能正常闭合;\n 3.继电器J2损坏,不能正常工作。\n 可能原因还有遗漏的吗?");
if(k=1)
MessagePopup("提示","回答正确!可能原因还有:\n 4.电缆L1没有连接或者连接不到位,信号无法传递;\n 5.测试设备上电压表和指示灯HA同时损坏。") ;
if(k=0)
MessagePopup("提示","回答错误!可能原因还有:\n 4.电缆L1没有连接或者连接不到位,信号无法传递;\n 5.测试设备上电压表和指示灯HA同时损坏。") ;
break;
情况1和情况2的可能原因比较简单,所以直接由MessagePopup函数给出提示,情况3的可能原因比较多,先由ConfirmPopup函数给出部分可能原因,让操作员判断是否有遗漏,如果选择“yes”,提示回答正确,并给出其余的可能原因,如果选择“no”,提示回答错误,并给出其余的可能原因。
4.3 仿真结果
完成回调函数所有代码编写之后,运行程序,在弹出的虚拟操作界面上,多次接通“设备A”开关,设备显示正常与情况1、情况2、情况3随机出现,出现故障后能给出可能原因提示,达到预期目的。仿真结果分别如图3(a)、(b)、(c)、(d)所示。
(a)显示正常
(b)情况1
(c)情况2
(d)情况3
5 结论
文中结合测试设备的电路原理和故障现象,运用LabWindows 软件对其进行了故障现象模拟,并给出发生故障的可能原因,用于辅助训练,从而有效提高操作员排除设备故障能力。
参考文献:
[1] 宋宇峰.LabWindows逐步深入与开发实例[M].北京:机械工业出版社,2003.
[2] 孙晓云,孙会琴,郭立伟,等.基于LabWindows的虚拟仪器设计与应用[M].2版.北京:电子工业出版社,2010.
【通联编辑:梁书】