O problema que tenho é que sempre tenho um grande pico (10 a 15 dB) diretamente na frequência central (independentemente da frequência definida). Eu sou relativamente novo em tudo isso, por isso gostaria de receber dicas sobre como se livrar do pico.
Esse pico provavelmente não é nada surpreendente - apenas o vazamento LO / offset DC, um artefato muito comum em receptores de conversão direta!
Agora, livrar-se dele com um USRP é relativamente simples.
Você precisa entender que os USRPs têm um processo de ajuste em duas etapas:
- Existe um oscilador físico, o LO, que é sintetizado pela placa filha e é usado para misturar o sinal de destino com os sinais de banda base de QI. Normalmente, os sintetizadores podem gerar apenas um conjunto discreto de frequências LOfRF.
- O ADC, em seguida, coleta esses sinais na taxa de clock principal e o FPGA muda digitalmente esse fluxo de amostra na taxa de clock principal (ou seja, 200 MHz para o X310 por padrão) ampla banda base, multiplicando essencialmente com ej 2 πfDeslocamenton, para fornecer seu sinal de banda base a partir do falvo:
Por padrão, fRF é definido o mais próximo possível falvo, minimizando fDeslocamentoe, portanto, colocando o LO na largura de banda observada bamostra.
No entanto, você pode definir manualmente um "desejado" fDeslocamento; assim que isso for mais do que1 12bamostra, o LO está fora da sua faixa de observadores!
Em vez de usar 101e6
no campo de entrada Frequência central , basta usar
uhd.tune_request(f_target, f_offset)
por exemplo
uhd.tune_request(101e6, 4e6)
Permitam-me comentar diretamente alguns outros problemas:
Estou usando o rádio Ettus X310 SDR e GNU.
O X310 é a plataforma, de fato, mas o processamento do sinal analógico real (gerando os LOs para mixagem, mixagem, amplificação, filtragem de banda de base) acontece na placa-filha. Nesses casos, geralmente é importante especificar qual placa-filha você está usando
No esquema de rádio GNU, tenho um bloco de fonte UHD USRP padrão conectado a um coletor GUI FFT - basicamente, apenas estou exibindo o espectro do sinal bruto do dispositivo.
Na verdade, isso deve funcionar. Observe que os blocos WX Gui estão ficando obsoletos; se você está começando com o GNU Radio e não precisa continuar com um aplicativo existente com base no WX, recomendo alterar as "opções de compilação" no bloco de opções para "Qt" e substituir o "coletor WX GUI FFT "com um" coletor de frequência Qt GUI ". A mesma coisa, mais funcionalidade, menos uso da CPU, geralmente.
Parâmetros para o bloco de origem USRP:
- taxa de amostragem = 1,024 MS / s,
Você provavelmente estava usando uma taxa de clock mestre de 184,32 MHz, certo?
Para futuros leitores, reproduzir isso (essa taxa específica realmente aumenta com mais frequência do que você imagina!):
O X310 não suporta essa taxa de amostragem na configuração padrão! A janela do console deve conter um aviso claro de que o UHD decidiu usar uma frequência diferente e qual frequência era - no seu caso, provavelmente 1.02048… MS / s.
UHD Warning:
The hardware does not support the requested RX sample rate:
Target sample rate: 1.024000 MSps
Actual sample rate: 1.020408 MSps
Isso ocorre porque o X310 executa seu ADC / DAC na chamada taxa de clock principal , que pode levar os valores de 200 MHz (padrão), 184,32 MHz (típico para alguns padrões de rede celular), 120 MHz (típico para LabView). A taxa de amostragem que você entrega ao PC é um fluxo de amostra amostrado nessa taxa, dizimado no FPGA com a taxa solicitada - e essa dizimação é feita com filtros FIR de dizimação "normais", que podem fornecer apenas uma fração inteira da taxa de entrada.
Assim,
1.020408 …ems=200 ems196
é possível,
1.024ems=200 ems195.3125
não é, quando o MCR está definido para o padrão de 200 MHz.
Com um MCR de 184,32 MHz, qual é 1.024 MHz ∗ 180, isso é realmente possível!
- frequência central = 101 MHz,
O que provavelmente significa que você está usando a placa filha WBX ou UBX,
que não é uma configuração de ganho compatível com UBX ou WBX, seus intervalos de ganho são de 0 a 31,5 dB e 0 a 31 dB, respectivamente.
- largura de banda = 130 MHz
Essa é a especificação de largura de banda analógica; aplica-se a placas de expansão com filtros de passa baixa de banda base ajustáveis. No entanto, não existe uma placa-filha que tenha um filtro de banda de base ajustável e uma largura de banda máxima> 8 MHz.
De fato, essa configuração não faz nada no UBX ou no WBX.