NI LabVIEW,CVI,数据采集等产品讨论区

cancel
Showing results for 
Search instead for 
Did you mean: 

数据采集不同步时,如何填充空白?

大家好,我用NI9171和串口同时采集数据。其中,NI9171为waveform arrays,串口采集的数据变成数组并变成waveform后,与9171的waveform数据合并成数组保存。由于速度不同步,导致串口数据列有很多空白行,请问如何将空白行用前一个数据填充?或者有没有其他方法解决此问题,谢谢。目前采集的数据格式示意如下:

1  0.01003   -12.3
2  0.00938
3  0.00971
4  0.00906
5  0.00906
6 0.00906
7 0.00874   -11.9

0 Kudos
Message 1 of 8
(187 Views)

为什么要填充?

不要破坏原始数据.

 

0 Kudos
Message 2 of 8
(142 Views)

不是要破坏原始数据,只是后期想看两列数据时域上关系,有空白做出图不直观。虽然可以另外写matlab程序填充,但不是也麻烦嘛Smiley Happy

0 Kudos
Message 3 of 8
(137 Views)

可以贴一张图吗?

 

0 Kudos
Message 4 of 8
(133 Views)

image.png类似这个图,实际上下面的点更多,大概有2000个点,才会出现上面的一个点

0 Kudos
Message 5 of 8
(130 Views)
Highlighted

1. 红点之间没有连线. 有连线比较直观.

2. "将空白行用前一个数据填充" => 阶梯状, 一般我们用线性插值. 

    可增加一条线给修正过的数据, 用空心红点.  然后用原始数据覆盖.

3. 可增加一个 Y 坐标给红点用. 以便充分体现数据的波动.

 

0 Kudos
Message 6 of 8
(73 Views)

感谢您的耐心回复。逐条对应您的回复

1.这个图就是用原始数据在origin里做出来的图。您看到左上角的标注,实际上红点也是有连线的,但因为中间很多空白数据点,所以没有连接起来,这也正是我想通过labview里填充上这些空白的原因。

2. 您说的对,如果中间的空白用前一个数据填充的话,将会出现阶梯状。但实际上红点采集速度是9600baud的,所以实际上采集数据多的话,不会出现明显的阶梯状。之所以目前这样是因为黑点采集速度是50000sps的。

3.可以单独增加y轴,但红点间还是不会有连线,因为中间有空白点,时间轴是断开的。

 

所以,我的想法是在labview里自动的填充这些空白数据点,至今没有成功。

0 Kudos
Message 7 of 8
(69 Views)

但红点间还是不会有连线,因为中间有空白点,时间轴是断开的

两组数据不要共享时间数据.

 

0 Kudos
Message 8 of 8
(63 Views)