每次消息过零时,数字 PLL 都会失去锁定
信息处理
同步
pll
2022-02-13 11:47:40
2个回答
您遇到了麻烦,因为那不是科斯塔斯循环。Costas 环路使用某种形式的解调数据来改变信号的预期相位。
您只是将 I/Q 解调信号应用于 atan2 函数;这使得一种线性扩展相位检测器,但没有确定相位应该翻转 180 度,你的循环自然会试图跟随实际进入的相位。
您可以通过将 atan2 函数更改为乘法,然后使用适当的循环过滤器,将您的循环变成一个简单的 Costas 循环。
似乎您的错误跳转到 -然后到
我认为你需要解开你的阶段。让我用一个例子来解释
说 atan2 块的输出是然后相位差增加 0.002 rad,atan 2 块的输出应该是+ 0.001,但 atan2 输出限制为 ±. 因此输出将是 -+ 0.001 弧度而不是+ 0.001。您可以使用展开功能来管理这些不连续性。
https://www.mathworks.com/help/matlab/ref/unwrap.html
但是请注意,对于某些 PLL(如电力系统),我们不会展开相位,当频率差太大时,我们只是切换到 FLL 模式(锁频环)。一旦频率锁定,我们切换到 PLL 模式。在这个实现中,我们不需要展开阶段。
其它你可能感兴趣的问题

