PLL Frequency Detector: Difference between revisions

From GNU Radio
Jump to navigation Jump to search
No edit summary
(→‎Example Flowgraph: Add sonar Example to illustrate real-time usage and unit conversions)
 
(2 intermediate revisions by the same user not shown)
Line 18: Line 18:
== Example Flowgraph ==
== Example Flowgraph ==


Insert description of flowgraph here, then show a screenshot of the flowgraph and the output if there is an interesting GUI. Currently we have no standard method of uploading the actual flowgraph to the wiki or git repo, unfortunately.  The plan is to have an example flowgraph showing how the block might be used, for every block, and the flowgraphs will live in the git repo.
=== Simple Usage Example ===
 
[[File:Pll_freqdet_simple.png]]
 
PLL Freq Det can be used to detect the frequency of a (noisy) single tone.
 
This minimal demo does nothing than allow the user to adjust a Signal Source's frequency, and then estimate the same.
 
=== Doppler Sonar ===
 
The [[Media:Sonar PLL freqdet.grc|flow graph below]] demonstrates a functioning Doppler sonar, which allows the user to estimate the speed of an object moving towards the speaker. (For this to work, the microphone and the speaker need to point into the same direction, not at each other; ideally, the microphone is directive, so that it doesn't pick up as much crosstalk from the speaker next to it.)
 
[[File:Sonar PLL freqdet.png]]
 
[[File:Doppler Sonar Display.png]]


== Source Files ==
== Source Files ==

Latest revision as of 09:31, 2 October 2023

Implements a PLL which locks to the input frequency and outputs an estimate of that frequency. Useful for FM Demod.

This PLL locks onto a [possibly noisy] reference carrier on the input and outputs an estimate of that frequency in radians per sample

Parameters

(R): Run-time adjustable

Loop bandwidth (R)
The loop bandwidth determines the lock range and should be set around pi/200 2pi/100.
Max freq
Maximum frequency of the carrier in radians per sample
Min freq
Minimum frequency of the carrier in radians per sample

Example Flowgraph

Simple Usage Example

Pll freqdet simple.png

PLL Freq Det can be used to detect the frequency of a (noisy) single tone.

This minimal demo does nothing than allow the user to adjust a Signal Source's frequency, and then estimate the same.

Doppler Sonar

The flow graph below demonstrates a functioning Doppler sonar, which allows the user to estimate the speed of an object moving towards the speaker. (For this to work, the microphone and the speaker need to point into the same direction, not at each other; ideally, the microphone is directive, so that it doesn't pick up as much crosstalk from the speaker next to it.)

Sonar PLL freqdet.png

Doppler Sonar Display.png

Source Files

C++ files
TODO
Header files
TODO
Public header files
TODO
Block definition
TODO