我现在正在逐步了解 GNU Radio Companion。我目前正在使用 3.7.13.5。
我只是专注于将一个简单的二进制流放在一起,例如'110100'(重复)......所以它只是'110100110100110100.......'然后看看我是否可以生成一个简单的QAM星座图。
我还不明白为了得到那个 QAM 星座图该怎么做。但我已经采取措施将一些块串在一起——至少只是为了尝试一些东西。
我所做的是使用向量源块,该块设置为值“110100”(并且该块设置为连续“重复”模式)。
然后我有一个 Chunks To Symbol 块,在其中我任意为 Symbol Table [(-0.707 -0.707j), (0.707 -0.707j), (0.707 + 0.707j), (-0.707 + 0.707j) 设置以下值]。
然后我有用于查看星座的 QT GUI Constellation Sink 块。
我知道我想做什么-----但还不知道该做什么。但星座图上至少有四个点(如附图所示)。
请问我需要做什么才能让 Chunks To Symbols 块一次接收两个位,以便将每对位映射到这四个星座点之一?
目前,我只有三个独特的位组合 .... 即 11 和 01 和 00 .... 可以在模式“110100”中看到。所以我只是想让这三个模式出现在星座图上——这应该是星座图上的三个点(而第四点还没有遇到)。
有人可以通过指出 Chunks To Symbols 块的实际工作原理来帮助我吗?目前,如果我有意将位对“11”映射到特定星座点 - 例如 0.707 + j*0.707,那么有没有办法在“块到符号”块设置中创建该定义?
现在,我实际上并不知道 Chunks To Symbols 块如何解释输入数据,以及它如何将各种“块”(我假设是位模式)分配给符号图中的每个星座点。也就是说,这个块是否寻找各种独特的输入模式,并以某种方式将每个独特的输入模式链接到符号映射中的这些值之一?
首先十分感谢!我对 GNU Radio Companion 和 GNU Radio 印象深刻!
===============================
更新- 我找到了另一种获取星座图的途径。但是还没有弄清楚如何正确使用它。另一条路径是使用星座对象,在线教程中有此星座的符号图:[0, 1, 3, 2],并且在星座对象块中定义的相应星座点是:[-1-1j, - 1+1j, 1+1j, 1-1j]
但是 - 正如我们所看到的,当我为重复矢量源输入一个值 '3' 时,我在星座图中得到多个点,分布在一条线上,而不是点1+1j周围的点集中。关于我需要做些什么才能走上正确的轨道有什么好的建议吗?谢谢!
=====================================
在得到 Marcus 的帮助和他的善意解释后的另一个更新。我对 Chunks To Symbols 块如何工作的理解是这样的。例如,如果符号表的复数顺序为 [-1-1j, -1+1j, 1+1j, 1-1j],则向量源值为“0”、“1”、“2”和“3”(即四个值)将对应于“-1-1j”、“-1+1j”、“1+1j”和“1-1j”(以相同的顺序)。例如,向量值“3”将链接到“1-1j”,而“0”将链接到“-1-1j”。
如果我们希望这些值“0”、“1”、“2”和“3”与不同的复数相关联,那么我们只需在块的符号表部分中更改复数的顺序到符号块(在设置内)。
在 Marcus 的帮助下,并升级到 GNU Radio Companion 3.8 ---- 我现在的星座图与 Chunks To Symbols 块一起正常工作。在这里,我创建了一个包含四个“3”的向量,然后是四个“1”。所以星座图绘制了四次1-1j,然后绘制了四次-1-1j。我们只看到两个点,因为 1-1j 和 -1-1j 都被绘制了四次。
此外,将主题更改为另一种方法 - 涉及'星座对象' 用于生成星座图的块----我现在知道为什么我会在一条线上分布点。我注意到,如果我有一个重复输出值“3”的向量源,这意味着输出一个 3,然后是另一个 3,然后是另一个 3 等等......然后关联的复数值(分配给Constellation's Symbol Map 中的 3')——比如 1+1j(这是预期的),但下一个绘制点不会是 1+1j(与下一个 '3' 相关联)。相反,星座绘图仪似乎跳回了相同的初始起点。因此,星座绘图仪不会绘制多个 1+1j 的点,而是不断跳回到初始起点(始终是相同的起点 - 在本例中为 -1-1j - 这是星座中的第一个值)s Symbol Map) 在绘制下一个“预期”复数值之前。我还不知道它为什么会那样做。这也是我需要更多帮助的地方!再次感谢!