XY图能够说Labview数据图形显现控件最为灵敏的控件,能够代替波形图和波形图表的绝大部分功用,其输入参数方法有许多改变,鄙人面的两篇文章中,详细评论了XYGRAPH的多种用法。
快速VI(EXPRESSVI)是LABVIEW供给的一套能够选用对话框快速装备的VI,十分有利于初学者运用。在快速VI中,供给了快速XYGRAPH,该VI能够完成接连的数据显现,可是与我提及的数据缓冲区有很大差异。
上面所提及的数据缓冲区接连显现数据类似于LABVIEW的波形图表,自身坚持一个设置为固定长度的数据缓冲区,当超越所设长度时,新的数据进入缓冲区时,原有的数据被丢掉。这样XY图一直显现的最新数据,并且长度不变,控件显现的是示波器的作用。
快速XY图则不同,它有两种不同的运转方法。
每次调用时是否铲除数据决议了EXPRESSXYGRAPH的作业方法。
1、每次调用时铲除数据,则EXPRESSXYGRAPH与一般的XYGRAPH没有显着的差异,输入参数选用了两个一维数组,这是XYGRAPH常见的作业方法。
2、每次调用不铲除数据,则EXPRESSGRAPH内部记载不断累积的数据,也就是说它内部坚持两个不固定长度的一维数组,用来保存X数据和Y数据。
在每次调用不铲除数据时要特别注意,与数据缓冲方法不同,EXPRESSXYGRAPH不是以移动的方法显现数据,而是不断添加数据,所用内存是不断添加的。
为了正确理解快速XYGRAPH,咱们剖析一下,首先把快速XYVI转化成一般的VI,剖析一下它的作业原理,经过方便菜单,挑选翻开前面板。
下面盯梢它的程序框图。
从程序框图能够看到,在接连显现添加数据的状况下,它运用了XY图的局部变量,取出本来的数据,运用BUILDARRAY函数不断添加XY图中的数据,这样在长期运转后,很简单导致内存乱用,而不开释的状况,一起因为运用了局部变量,内存的运用是加倍的。这与咱们所说的数据缓冲区是彻底不同的。
别的,因为快速VI选用了动态数据,因而不断地在进行数据类型转化,这也是快速VI功率不高的原因之一。
从程序框图上也能够看出,假如运用接连显现的方法,咱们有必要监测累积数据的巨细,在到达必定程度时,经过RESET,铲除数据,开释所用内存。
需求着重的是快速VI是在LABVIEW7.0后推出的,主要是简化编程难度,可是运转功率显然是不高的,一起也献身了灵敏性,这也是了解LV的编程者一般不愿意运用快速VI的重要原因。