Skip to content

Receptor

__init__(fs=128000, Rb=400, output_print=True, output_plot=True)

Classe que encapsula todo o processo de recepção no padrão ARGOS-3. A estrutura do receptor é representada pelo diagrama de blocos abaixo.

pageplot

Parameters:

Name Type Description Default
fs int

Frequência de amostragem em Hz.

128000
Rb int

Taxa de bits em bps.

400
output_print bool

Se True, imprime os vetores intermediários no console.

True
output_plot bool

Se True, gera e salva os gráficos dos processos intermediários.

True
Referência:
AS3-SP-516-2097-CNES (seção 3.1 e 3.2)

demodulate(s)

Demodula o sinal \(s'(t)\) com ruído recebido, recuperando os sinais \(x'_{I}(t)\) e \(y'_{Q}(t)\).

Parameters:

Name Type Description Default
s ndarray

Sinal \(s'(t)\) a ser demodulado.

required

Returns:

Name Type Description
xI_prime ndarray

Sinal \(x'_{I}(t)\) demodulado.

yQ_prime ndarray

Sinal \(y'_{Q}(t)\) demodulado.

Exemplo
  • Tempo: pageplot
  • Frequência: pageplot

lowpassfilter(cut_off, xI_prime, yQ_prime, t)

Aplica o filtro passa-baixa com resposta ao impuslo \(h(t)\) aos sinais \(x'_{I}(t)\) e \(y'_{Q}(t)\), retornando os sinais filtrados \(d'_{I}(t)\) e \(d'_{Q}(t)\).

Parameters:

Name Type Description Default
cut_off float

Frequência de corte do filtro.

required
xI_prime ndarray

Sinal \(x'_{I}(t)\) a ser filtrado.

required
yQ_prime ndarray

Sinal \(y'_{Q}(t)\) a ser filtrado.

required
t ndarray

Vetor de tempo.

required

Returns:

Name Type Description
dI_prime ndarray

Sinal \(d'_{I}(t)\) filtrado.

dQ_prime ndarray

Sinal \(d'_{Q}(t)\) filtrado.

Exemplo
  • Tempo: pageplot
  • Frequência: pageplot

matchedfilter(dI_prime, dQ_prime, t)

Aplica o filtro casado com resposta ao impuslo \(-g(t)\) aos sinais \(d'_{I}(t)\) e \(d'_{Q}(t)\), retornando os sinais filtrados \(I'(t)\) e \(Q'(t)\).

Parameters:

Name Type Description Default
dI_prime ndarray

Sinal \(d'_{I}(t)\) a ser filtrado.

required
dQ_prime ndarray

Sinal \(d'_{Q}(t)\) a ser filtrado.

required
t ndarray

Vetor de tempo.

required

Returns:

Name Type Description
It_prime ndarray

Sinal \(I'(t)\) filtrado.

Qt_prime ndarray

Sinal \(Q'(t)\) filtrado.

Exemplo
  • Tempo: pageplot
  • Frequência: pageplot

sampler(It_prime, Qt_prime, t)

Realiza a decisão (amostragem e quantização) dos sinais \(I'(t)\) e \(Q'(t)\), retornando os vetores de simbolos \(X'_{NRZ}[n]\) e \(Y'_{MAN}[n]\).

Parameters:

Name Type Description Default
It_prime ndarray

Sinal \(I'(t)\) a ser amostrado e quantizado.

required
Qt_prime ndarray

Sinal \(Q'(t)\) a ser amostrado e quantizado.

required
t ndarray

Vetor de tempo.

required

Returns:

Name Type Description
Xnrz_prime ndarray

Sinal \(X'_{NRZ}[n]\) amostrado e quantizado.

Yman_prime ndarray

Sinal \(Y'_{MAN}[n]\) amostrado e quantizado.

Exemplo
  • Tempo: pageplot
  • Constelação: pageplot
  • Fase: pageplot

decode(Xnrz_prime, Yman_prime)

Decodifica os vetores de simbolos codificados \(X'_{NRZ}[n]\) e \(Y'_{MAN}[n]\), retornando os vetores de bits \(X'n\) e \(Y'n\).

Parameters:

Name Type Description Default
Xnrz_prime ndarray

Sinal \(X'_{NRZ}[n]\) quantizado.

required
Yman_prime ndarray

Sinal \(Y'_{MAN}[n]\) quantizado.

required

Returns:

Name Type Description
Xn_prime ndarray

Sinal \(X'n\) decodificado.

Yn_prime ndarray

Sinal \(Y'n\) decodificado.

Exemplo
  • Tempo: pageplot

remove_preamble(Xn_prime, Yn_prime)

Remove os 15 primeiros bits dos vetores de bits \(X'n\) e \(Y'n\), correspondentes ao preâmbulo adicionado no transmissor.

Parameters:

Name Type Description Default
Xn_prime ndarray

Sinal \(X'n\) decodificado.

required
Yn_prime ndarray

Sinal \(Y'n\) decodificado.

required

Returns:

Name Type Description
Xn_prime ndarray

Sinal \(X'n\) sem preâmbulo.

Yn_prime ndarray

Sinal \(Y'n\) sem preâmbulo.

Exemplo
  • Tempo: pageplot

descrambler(Xn_prime, Yn_prime)

Desembaralha os vetores de bits \(X'n\) e \(Y'n\), retornando os vetores de bits \(v_{t}^{0'}\) e \(v_{t}^{1'}\).

Parameters:

Name Type Description Default
Xn_prime ndarray

Vetor de bits \(X'n\) embaralhados.

required
Yn_prime ndarray

Vetor de bits \(Y'n\) embaralhados.

required

Returns:

Name Type Description
vt0 ndarray

Vetor de bits \(v_{t}^{0'}\) desembaralhado.

vt1 ndarray

Vetor de bits \(v_{t}^{1'}\) desembaralhado.

Exemplo
  • Tempo: pageplot

conv_decoder(vt0, vt1)

Decodifica os vetores de bits \(v_{t}^{0'}\) e \(v_{t}^{1'}\), retornando o vetor de bits \(u_{t}'\).

Parameters:

Name Type Description Default
vt0 ndarray

Vetor de bits \(v_{t}^{0'}\) desembaralhado.

required
vt1 ndarray

Vetor de bits \(v_{t}^{1'}\) desembaralhado.

required

Returns:

Name Type Description
ut ndarray

Vetor de bits \(u_{t}'\) decodificado.

Exemplo
  • Tempo: pageplot

run(s, t, fc=4000)

Executa o processo de recepção, retornando o resultado da recepção.

Parameters:

Name Type Description Default
s ndarray

Sinal \(s(t)\) recebido.

required
t ndarray

Vetor de tempo.

required
fc float

Frequência de portadora.

4000

Returns:

Name Type Description
ut ndarray

Vetor de bits \(u_{t}'\) decodificado.

Exemplo
  • Tempo: pageplot