Costas -Loop -Block in Gnuradio 3.8, der die Phase nicht korrekt auf einem perfekten Signal sperleC++

Programme in C++. Entwicklerforum
Anonymous
 Costas -Loop -Block in Gnuradio 3.8, der die Phase nicht korrekt auf einem perfekten Signal sperle

Post by Anonymous »

Ich teste den Costas -Schleifenblock in Gnuradio (Version 3.8.x) mit einem einfachen Sinuswellensignal. Es wird erwartet, dass die Costas -Schleife die Phase auf einen bekannten Wert sperrt (idealerweise 0 für ein perfektes Signal), aber die Ausgangsphase ist falsch. < /P>
Setup: < /p>
Signal source: Sine wave at a known frequency (1 kHz)

Costas loop bandwidth: 0.05

Testing for phase locking using a perfect signal (no phase shift)

Expected output: Phase should stabilize at 0 for a perfect signal.
< /code>
Code: < /p>
int main() {
auto tb = gr::make_top_block("costas_loop_test");

double samp_rate = 32000;
double freq = 1000;
float loop_bw = 0.05; // Costas loop bandwidth
int order = 4;

// Signal source: complex sine wave
auto src = gr::analog::sig_source_c::make(samp_rate,
gr::analog::GR_SIN_WAVE,
freq,
1.0,
0.0); // Phase set to 0

auto costas = gr::digital::costas_loop_cc::make(loop_bw, order);

auto mag_block = gr::blocks::complex_to_mag::make();
auto phase_block = gr::blocks::complex_to_arg::make();

auto mag_probe = gr::blocks::probe_signal_f::make();
auto phase_probe = gr::blocks::probe_signal_f::make();

auto sink = gr::blocks::null_sink::make(sizeof(float));

// Connect the flowgraph
tb->connect(src, 0, costas, 0); // Source -> Costas Loop
tb->connect(costas, 0, mag_block, 0); // Costas -> Magnitude Block
tb->connect(costas, 0, phase_block, 0); // Costas -> Phase Block
tb->connect(mag_block, 0, mag_probe, 0); // Magnitude -> Probe
tb->connect(phase_block, 0, phase_probe, 0); // Phase -> Probe
tb->connect(mag_block, 0, sink, 0); // Magnitude -> Sink (output)

tb->start();
std::cout level();
float phase = phase_probe->level(); // Phase (should stabilize near 0 for perfect signal)

std::cout

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post