LabVIEW 初学者常见问题及解答.docx

上传人:b****6 文档编号:3185907 上传时间:2022-11-19 格式:DOCX 页数:16 大小:33.41KB
下载 相关 举报
LabVIEW 初学者常见问题及解答.docx_第1页
第1页 / 共16页
LabVIEW 初学者常见问题及解答.docx_第2页
第2页 / 共16页
LabVIEW 初学者常见问题及解答.docx_第3页
第3页 / 共16页
LabVIEW 初学者常见问题及解答.docx_第4页
第4页 / 共16页
LabVIEW 初学者常见问题及解答.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

LabVIEW 初学者常见问题及解答.docx

《LabVIEW 初学者常见问题及解答.docx》由会员分享,可在线阅读,更多相关《LabVIEW 初学者常见问题及解答.docx(16页珍藏版)》请在冰豆网上搜索。

LabVIEW 初学者常见问题及解答.docx

LabVIEW初学者常见问题及解答

LabVIEW初学者常见问题及解答

1、Labview如何实现由一个事件引发其他三个事件的顺序发生,且这三次事件间的时间间

隔为50ms?

A:

可以引用状态机来设计程序,将触发事件作为状态机的状态控制参数,后面发生的三个

事件依次作为状态机的三个顺序状态,设置状态切换时间间隔为500ms.

2、labview在主程序通过局部变量不能实时看子vi的参数

A:

通过局部变量只能得到子vi运行完之后的结果。

可以用controlreference方式,在子

vi加一个属性节点引出一个reference。

主程序里把需要显示的控件创建一个reference连到子vi的reference输入端口。

另外也可

以用viserver方式实现。

3、如何在一个graph或chart显示多个Y轴刻度,并且使每个通道对应每个刻度?

A:

在前面板上,右键点击刻度,然后选择duplicatescales,就会创建一个新的刻度。

后再点击右键,选择swapsides,就可以让刻度显示在图的左边或右边。

然后右键右上角

的plotlegend上的曲线plot,选择Yscales然后就可以选择与该曲线相应的Y轴SCALES。

多条曲线对应多条Y轴的刻度时,是同样的方法。

4、如何从labview中打开一个pdf文件?

A:

最简单的方法:

用systemexec.vi实现,在systemexec.vi的commandline端口创建

一个常量,输入adobereader的路径,再加上文件名等几个参数就可以实现上述要求。

例如下:

如果要拉开位于c盘的1234.pdf文件可以这样写“C:

\Programfiles\Acrobt7.0

\Acrobat\Acrobat.exe”/t“C:

\1234.pdf”“username”其中C:

\Programfiles\Adob

e\Acrobt7.0\Acrobat\Acrobat.exe是AdobeReader的安装路径,/t是命令参数,C:

\12

34.pdf则是要打开的文件名,最后的username是用户的名字。

5、采集数据在graph如何显示系统时间,并且随着采集点数时间不断刷新。

A:

有两种方式,一种是采集波形数据然后输出给graph,在graph上选择显示绝对时间,并

且去掉ignoretimestamp选项。

第二种是采集数据文件,然后用获取时间的vi获取当前时

间,然后把采集的数据文件和当前vibuild成波形文件再给graph.graph的设置和前种方法

一样。

这样就可以显示出时间虽采集点不断刷新的效果。

6、reportgeneration里的standard和HTML究竟是什么意思?

A:

STANDARD和HTML是LV本身就有的报表类型,无须安装其他的文本编辑工具就可以打印。

STANDARD是LV内建的一种报表格式,可以打印但不能存盘,也就是说我们的报表没有电子

版。

HTML是网页格式的文件,可以用浏览器打开,其实相当于LV帮我们编写HTML代码,这

种格式是不能直接打印的,需要先指定网页路径才能打印出来。

还要注意,如果是一段程

序是用了reportgeneration的vi,在打包成exe文件或llb文件时,需要加入两个动态vi:

_exceldynamicvi和_worddynamicvi。

如果生成的报表采样了模板需要自支持文件里

添加相应模板。

7、如果要将channel名字,测的是什么信号,采样率是多少这样的数据和采得数据一起存

入文件应该用什么方式比较好?

A:

推荐一种以前基本被忽略的文件结构——TDMFILE格式来存,这种文件格式基于二进制

的方式,而在存储过程中可以加入很多的外部信息进去,例如freetext;freeinterger

等等,所以存这样的应用还是挺合适的。

8、viproperty下execution中选项reetrantexecution,选用和不选用有什么区别?

A:

如果主程序执行同一个子vi,是同时两次或多次执行时,在不选用时,就会依次使用这

个子vi;如果选用,则这个子vi就会并行执行,提高程序运行速度。

9、为什么把LABVIEW程序框图解密以后,就可以一直打开程序框图,如何才能实现每次打

开vi都是加密的?

A:

如果在LABVIEW解开程序的框图的密码,关闭以后该程序,不退出labview,这个程序如

果再次被打开会一直可以查看他的框图程序,原因是lv没有关闭,所以密码会一直存在内

存当中,所以再次打开会依然看到程序框图,如果要实现每次打开都是加密的,只要在一

次打开后,把labview也关掉,下次再想要查看程序框图就需要输入密码。

10、使用viserver技术,如何实现从一个vi打开运行并读取另一个vi中控件的值?

A:

1) 调用Openvireference.vi,输入子VI的路径到其VIPATH的端口;

2) 调用IvokeNode.vi并设为OpenFP;

3) 调用IvokeNode.vi并设为RunVI;

4)  调用IvokeNode.vi并设为GetcontrolValue[Variant];对ControlName端口填入

子VI循环的停止按钮控件名称;GetControlValue[Variant]输入端的值通过VariantT

oData.vi设为控件相对应的控件类型后,输出到前面板,这就可实现取VI控件的值;

5) 最后调用CloseReference.vi关闭VIServer。

11、连续采集程序分成配置task状态和采集状态两大部分。

在配置状态中得配置出有效的

task。

根据需要在适当的时候进入采集状态。

在采集状态中使用starttask和read两个

vi并且循环执行。

当程序开始后立刻报错。

A:

因为采集状态中使用starttask和read两个vi并且循环执行,当采集已经开始后再使

用starttask就会重复开始相同的资源,导致资源冲突产生错误。

建议start部分单独作为

一个状态,在循环执行的状态中只使用read.vi。

12、LV7.1在前面板突然找不到Scrollbar了,现在想看或者操作屏幕之外的控件显示件非

常麻烦,怎么能够找到Scrollbar?

A:

在File\VIProperty\WindowAppearance\Customize里有Showscrollbar的选项。

13、LV7.1如何实现将Chart的时间坐标与计算机系统时间一致?

A:

Chart属性FormatAndPrecision选AbsoluteTime,显示方式改SystemTimeFormat

和SystemDataFormat。

程序框图里GetData/TimeInSeconds获取当前时间,转换为双

精度浮点型后输入到Waveform.Chart的属性节点Xscale.Offset。

属性节点Xscale.Form

at设为模式7。

14、LV7.1如何设计时间输出格式为小时:

分:

秒.毫秒?

A:

用GetData/TimeInSeconds用来获得当前时间,另一个是FormatData/TimeString

函数,这个函数用来定义输出时间的格式,再timeformatstring端口上输入字符串%H:

%

M:

%S%.3u,然后timestamp连接GetData/TimeInSeconds的时间输出即可。

关于时间格

式的定义可以在help里看到。

15、为什么用子程序调用时popup前面板,前面板总是自主程序后面?

A:

在windowappearance里面选择defaultfloating和modal这三项,将主程序的选项设

在较低的优先级而子程序设得高一点应该可以了。

16、如何读出excel里的数据来作分析?

A:

使用ExcelGetData.vi并在参数datatype上使用二维字符数组可把Excel内数据以字

符串的方式读出。

17、如何对Excel文件作数据续存?

A:

使用ExcelGetLastRow.vi先将Excel内已有数据的最后一行的行数得出,再于该行开

始续存数据。

18、如何将文件保存为Excel格式

A:

1)     用ActiveX技术,将LV作为一个ActiveX服务器。

可以参考NationalInstrume

nts\Labview7.1\examples\apps\freqresp.llbVI库里面的FrequencyResponse.vi例子

程序。

2)使用ReportGeneration工具包,它屏蔽了底层的ActiveX,使用比较简单,不过

需要购买。

3)保存为文本方式,后缀为.xls,这样子也可以用Excel打开,不过不能用E

xcel修改保存,要不然会自动修改为Excel文档,以后也不能用LV对其进行操作。

19、如何在table中既显示小数又显示整数

A:

table中显示的是字符串,显示小数还是整数是在转换成字符串而未放入table之前的过

程中完成的,因此可以将整数小数分别转换成字符串后再合并输出到table中即可。

20、如何制作一个边框是透明的string控件

A:

选择一个classicsimplestring控件,使用工具模板的染色工具,在弹出的对话框中

选择右上角“T”;一样的transparent,然后给这个控件染色就可以了。

21、循环采集并对采集的结果判断,前面板放置一个布尔报警灯,只保存报警的数据,并

可回放,怎么实现?

A:

存储vi外加一个case结构,并以布尔报警灯作为判断,如果为真值,存储,为false,

不存。

回放有两种形式,即:

可以把试验数据存储,然后回调。

也可以把graph存为图片。

22、怎样把Whileloop的循环次数i写入Table的行头ColHdrs[]呢?

A:

创建Table的属性节点,属性ColHdrVis=T显示行头,ColHdrs[]连接一个字符串数组,

需要将循环次数i加1,然后通过NumberToFractionalString转化为字符类型,精度为

0。

添加移位寄存器,赋初值为空字符串数组,buildarray上端输入接移位寄存器,下端

接数字,右端接ColHdrs[]和移位寄存器另外一端。

23、串口程序打包安装到一台没有LV环境的机器下,串口不可用,为什么?

A:

LV7.1的版本,在ApplicationBuilder中Installer页面选择:

Advanced/SerialPort

Support。

24、使用CLF节点调用DLL中的函数,如果原函数中指定的数据类型为结构,那么在CLF配置

过程中该如何指定数据类型?

A:

可以选择数据类型(TYPE)为AdaptToType,然后在输出或输入端口连接一个Cluste

r,这个Cluster的定义和原函数中结构的定义一样。

选择AdaptToType后,连接到端口的

数据类型是什么,与函数接口的数据类型就是什么。

25、在子vi运行过程中,如何将数据实时传递到调用它的主vi中,而不是等待子VI运行结

束后才在主VI中获得子Vi的输出数据?

A:

使用带控制参量的属性节点可以实现在子VI中修改主VI属性的目的,由于控件的值(V

alue)也是控件的属性之一,因此可以使用控制参量是新以上要求。

在子VI中,使用带有

控制参量的属性节点,将

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 少儿英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1