应用要求如下:
1、按一次【采样键】,就将采集到的一组512个数据实时显示于波形图表上,得到一根曲线;
2、再次按【采样键】时,更换另一种颜色,将新采集到的数据显示于第1步得到的同一个波形图表上(波形图表上现在有两条曲线,X坐标仍然为1——512);
3、再按【采样键】,又更换一种颜色,再将新采集到的数据实时显示与同一个波形图表上,(现在波形图表上有三条不同颜色的曲线,X坐标仍然为1-512)
4、如此重复,最多允许16条不同颜色的曲线显示于同一波形图表上。
为了达到逐点实时显示的要求,我只能用波形图表,第一条曲线能顺利完成,但第2条曲线开始,显示的数据就会自动接续在512数据点上,同时X坐标开始左移,不是我希望做到的从X轴坐标为1的地方开始显示采样点。
采用波形图的方式只能等512个点全部采样结束后才能一次显示曲线,满足不了实时显示每个采样点的要求。
请问,用波形图表怎样做才能达成以上要求?
先谢谢了!
您好,
根据您的应用需求,建议您把所采集到的数组使用创建数组函数创建成多维数组,再把多维数组连接到波形图表。
在波形图标的属性里到标尺的选项中,选择不使用自动调整。再把最大的值设为512。
罗于煌
美国国家仪器 技术支持
罗老师,感谢指导!
或许是我的表述不太清楚。
我希望能实时显示采集到的每个数据点,所以要用波形图表,当512个数据采集完成后,这条曲线就已经生成完成了。
当需要再次采样时,需要按下【采样】按键,才开始另一条曲线的采样。
绘制第二条采样曲线的时候,要求在波形图表上同时显示上一次采样的曲线,这时,波形图表上将会有两条曲线,一条曲线是上一次采样时已经绘制好的,另一条是当前采样得到的。
如此类推,当采样第12条曲线时,有11条曲线是原先已经采样时得到的,只有一条是当前采样得到的数据,在波形图表中将显示12条不同颜色的曲线。
按照您推荐的办法,需等所有条曲线都采样完成后,每个数组中才会都有数据。
在我们的项目中,数据不是同时采集的,而是一条曲线的数据全部采样完成后才可以进行下一条曲线数据的采样,因此,按照您推荐的方法,将无法满足实时性的要求。
实现以上目的的一个简单的办法是绘制下一条曲线的时候,保留以前绘制的曲线即可,这可以通过 “VI属性-执行-调用时清空显示控件” 的设置来实现,将其设置成不清空即可保留以前的现实曲线。
采用这种办法遇到的问题是,调用VI时不清空显示控件,那么,当运行多次VI程序后,波形图标的显示就变得混乱不堪。
请问,能不能在程序运行时,首先将 “VI属性-执行-调用时清空显示控件”设置为清空(选项打钩),一旦打开VI(调用后)再通过程序控制的方式将 “VI属性-执行-调用时清空显示控件” 设置为不清空。
若可以,即可在每次运行程序时先清空显示控件,等VI程序运行起来之后,然后再自动设置成不清空显示控件,这样,每运行一次VI程序时,先清空以前绘制的曲线,使每个显示控件都是干净清洁的,每按一次【采样】按键,都在保留以前绘制的曲线的同时绘制一条新的曲线,进而达到能保留以前绘制曲线的同时也达到VI程序运行后让显示控件洁净清爽的目的。
望给予指导!
谢谢!