Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

数据结构咨询 #5

Open
liuchengzhi314159 opened this issue Jan 8, 2025 · 4 comments
Open

数据结构咨询 #5

liuchengzhi314159 opened this issue Jan 8, 2025 · 4 comments

Comments

@liuchengzhi314159
Copy link

您好,蒋老师。
这应该是您的支持从gitlab迁移过来的吧?
我想询问一个数据结构上的事情。
我的目的是利用csi进行测量。故此我在室外和室内都进行了连续的csi测量。
1、遇见的问题如下:警告: structRecursiveMerge fails on data merging for
the field: CSI

位置:parseRXSBundle>structRecursiveMerge (第 53 行)
位置: parseRXSBundle>structRecursiveMerge (第 62 行)
位置: parseRXSBundle (第 34 行)
位置: parseCSIFile (第 11 行)
位置: opencsi (第 3 行)
位置: open (第 139 行)
位置: uiopen (第 125 行)
警告: The bundled parsing stage of
[rx_2_241231_212252.csi] fails. The extracted data
returns in the basic cell form. See the document The
Raw Parsing & Bundled Parsing for more information. 这个原因我查到的是,在连续测量的过程中,有些情况下子载波数不是245,所以它报错了。此问题您matlab工具箱的示例文件中可以复现。
2、如果不出现上述的错误的话,load进matlab工作区的就应该是1x1 cell,然后里面CSI字段里面的
屏幕截图 2025-01-08 173605
这里的980是不是就是245 x2x2来的,然后我想知道他的数据结构是怎么样的?是把245x2x2如何进行平铺的?
3、您的RxExtraInfo字段里的HasCFO这里,针对ax200网卡的情况是不是就表示没有载波中心频率的偏移,意味着可以不用矫正?

@jiangzp
Copy link
Contributor

jiangzp commented Jan 8, 2025

是的

这里的980是不是就是245 x2x2来的

是的,平铺,你可以用matlab的reshape(csi, 254, 2, 2)这样转成矩阵;

我想知道他的数据结构是怎么样的?是把245x2x2如何进行平铺的?

不是,hasCFO=false意味着硬件没有返回CFO数据。

HasCFO这里,针对ax200网卡的情况是不是就表示没有载波中心频率的偏移,意味着可以不用矫正?

@liuchengzhi314159
Copy link
Author

是的

这里的980是不是就是245 x2x2来的

是的,平铺,你可以用matlab的reshape(csi, 254, 2, 2)这样转成矩阵;

我想知道他的数据结构是怎么样的?是把245x2x2如何进行平铺的?

不是,hasCFO=false意味着硬件没有返回CFO数据。

HasCFO这里,针对ax200网卡的情况是不是就表示没有载波中心频率的偏移,意味着可以不用矫正?
245,2,2 前一个二代表空间流,后一个二代表哪个天线接收到的?因为就是有时候接收不到完整的245个载波,所以每一次的数据都是一个struct,struct.csi字段对应的结果是三个24522的数据,如果完整的话,就不会如前文一样报错。导致前后csi字段的格式不对,所以我想询问一下。

@liuchengzhi314159
Copy link
Author

是的

这里的980是不是就是245 x2x2来的

是的,平铺,你可以用matlab的reshape(csi, 254, 2, 2)这样转成矩阵;

我想知道他的数据结构是怎么样的?是把245x2x2如何进行平铺的?

不是,hasCFO=false意味着硬件没有返回CFO数据。

HasCFO这里,针对ax200网卡的情况是不是就表示没有载波中心频率的偏移,意味着可以不用矫正?

老师,抱歉,再次打扰一下。
我想询问一下数值上的问题。
我知道csi的幅值描述的是冲击响应的结果,它的幅值和信号功率有关系吗?虽说我的方向不关注这里。
另外我想询问一下关于Phase的问题。我在固定位置连续测量某一个csi,某一个子载波的波动有20个单位,我想知道这个单位是弧度还是角度?
无论是角度还是弧度,我想知道您手册里说的相位数据经过unwarp,应该是对没一次测量到的某天线上的某时空流的245个子载波彼此之间进行unwarp吧?

@liuchengzhi314159
Copy link
Author

是的

这里的980是不是就是245 x2x2来的

是的,平铺,你可以用matlab的reshape(csi, 254, 2, 2)这样转成矩阵;

我想知道他的数据结构是怎的?是把245x2x2如何进行平铺的?

不是,hasCFO=false意味着硬件没有返回CFO数据。

HasCFO这里,针对ax200网卡的情况是不是就表示没有载波中心频率的偏移,意味着可以不用矫正?

蒋老师,再次打扰。
我突然糊涂了。就是接收到的csi有两种可能,一种情况是所有数据包都是24522的情况。这样的情况matlab扩展会成功运行。否则有些数据包并不能成功接收到所有子载波的情况,那么扩展包不会merge。每一次测量是自己单独的结构体。
我想知道的是成功后的数据,size(csi)=n * 980,这里前245对应第一个天线接收到的第一个空时流,接下来的245是第一个天线接收到的第二个空时流还是第二个天线接收到的第一个空时流?我对这个“ 是的,平铺,你可以用matlab的reshape(csi, 254, 2, 2)这样转成矩阵;”reshape的维度理解不是很清楚

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants