萍聚社区-德国热线-德国实用信息网

 找回密码
 注册

微信登录

微信扫一扫,快速登录

萍聚头条

查看: 2021|回复: 5

[求助] 请教LabVIEW高手一个数据读取问题

[复制链接]
发表于 2012-12-26 21:18 | 显示全部楼层 |阅读模式
其他(信息)
联系人: 求助
QQ: 1
邮箱: 1@163.com
电话: 隐藏内容
所在城市: 1
本帖最后由 siufai 于 2012-12-26 23:05 编辑

用CAN Analyser读取的即时数据,samples rate是100, 然后用excel(csv)保存下来。这个数据我需要即时同步做计算引用,所以在labview里面加了一个数据读取的程序(中心思想是每次读取文件中的最后一个数值,用Array Size Function测出整个文件的数据数然后减一,得到Size。然后Index Array Function输出单独的element)。 如图。



问题是之前存好的excel数据,是以列(Spalte)存的,就一列(A1 to AX)。可是这个数据读取程序在Spreadsheet String to Array Function转换时却只转换了第一行(A1 to X1。。。),这样的话。检测结果,只有第一个数据被转换了,从之后从第二个数据开始就显示就是灰色的0了,以后一直是0。

我找遍了Array里面所有function尝试,包括interleave,rotate,reverse等等十几个,想把行读取换成列读取,都不管用。因为是1DArray,2D的transpose也不行了。所以来求救各位大侠们。如果没表述清楚,我也可以穿程序上来,不胜感激。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册 微信登录

x
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2012-12-27 01:34 | 显示全部楼层
好久没用labview,手边也没有,提个建议吧,未必是最好的方法。rotate interleave这些不是你想要的,还是要用2d transpose。

你的读取trigger一次出来100个sample,可以用shift register把每个sample(1d array)用build array放到2d array相应的位置,然后把最后的2d array transpose,可能是你要的结果。下次trigger的结果append到csv spreadsheet应该就可以了。
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2012-12-27 02:11 | 显示全部楼层
刚发现看反了,是你存成列不知道怎么读取。我说的是怎么把你读取的数据存成行而不是列。不过你把数据存成行不就没读取的问题了吗?

如果数据已经存了没办法,想从目前程序入手,我估计你的Spreadsheet String To Array里面array type是1d array可能是问题所在,如果你把input data type从1d换成2d array再用index array试试呢?
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
 楼主| 发表于 2012-12-27 02:54 | 显示全部楼层
gonk 发表于 2012-12-27 01:11
刚发现看反了,是你存成列不知道怎么读取。我说的是怎么把你读取的数据存成行而不是列。不过你把数据存成行 ...

谢谢,看来嫩是大师级别的了。我刚才把spreadsheet String to Array 改成 read from spreadsheet,然后设置成transpose,改成true,就可以读取了。我觉得labview但凡跟sheet打交道,自动就设置成先读行了吧。N维数组没问题,但是一到1D的时候就容易迷惑人了。非常感谢
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2012-12-27 20:34 | 显示全部楼层
siufai 发表于 2012-12-27 01:54
谢谢,看来嫩是大师级别的了。我刚才把spreadsheet String to Array 改成 read from spreadshee ...

我觉得这不关labview什么事,不管labview还是别的程序对于array的定义一般来说是一样的,只不过array index有的程序第一个element是0(像labview)有的程序是从1开始算(像matlab)。

这次的问题是因为你存数据的时候存成列。如果存成行你的数据是1X100,你存成列就变成了100X1,labview如果还是按照1d array的格式读取数据,除了第一个element其他当然是0了,所以你把1列当成是1d array是问题所在。
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2013-5-22 22:34 | 显示全部楼层
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
您需要登录后才可以回帖 登录 | 注册 微信登录

本版积分规则

手机版|Archiver|AGB|Impressum|Datenschutzerklärung|萍聚社区-德国热线-德国实用信息网 |网站地图

GMT+2, 2024-4-28 21:50 , Processed in 0.062584 second(s), 17 queries , MemCached On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表