Hi David,

I just tried the example you mentioned of signal source -> pll carrier
tracking with the samplerate/freqs you identified and loop_bw 2pi/100, I
get a perfect looking constant 1 output (DC) as expected (only varies maybe
on the order 1e-5). Is it possible that you set the "Offset" value on the
signal source block to be non-zero (apparently if you put a real value into
here it will only offset the I-wave and the phase detector in the PLL would
have trouble with this). A picture of your flowgraph would be useful if
it's still behaving strangely.

Mike

On Sat, Apr 4, 2020 at 2:02 PM Paul Boven <p.bo...@xs4all.nl> wrote:

> Hi David, list,
>
> On 4/4/20 10:18 PM, David Hagood wrote:
> > I applied your correction of multiplying by 2pi, and while it locks now,
> > it also doesn't seem to be very clean - there's a lot of noise on the
> > signal, and the phase compared to the reference still is running through
> > the unit circle. I've tried increasing and decreasing the loop
> > bandwidth, and I cannot get what I would consider a clean signal out.
>
> The PLL blocks took a bit of tinkering for me to get them to work. As
> Michael already explained, frequency is listed in radians per sample,
> instead of Herz. That leaves setting your start and stop frequency, and
> the loop bandwidth.
>
> Although the documentation suggest to use values between pi/200 and
> 2pi/100, I've found that you need to go to much lower values to get it
> to do proper filtering.
>
> As an example: To track the FM Stereo pilot signal at 19kHz, I'm using
> these settings:
>
> Sample Rate: 250 kHz
> Max Freq: (19000 + 100)*np.pi*2/samp_rate
> Min Freq: (19000 - 100)*np.pi*2/samp_rate
> Loop Bandwidth: np.pi/20000
>
> I am using the 'PLL Ref Out' block, but that works just the same way as
> the one you are looking at, it just outputs the locked signal at its
> original frequency, instead of at DC.
>
> In the attached graph, you can see the input signal (Data 0, in blue),
> and the PLL filtered 19kHz (in red). The peak of the input and output
> match perfectly, and you can see that the output (Red, Data 1) is much
> cleaner. If I decrease the loop bandwidth even more, the loop does
> unlock, and you can see that the output phase no longer tracks the input
> phase.
>
> Regards, Paul Boven.
>
>

Reply via email to