Skip to content

Modulador

__init__(fc, fs=128000)

Inicializa um modulador QPSK no padrão ARGOS-3. O modulador pode ser representado pelo diagrama de blocos apresentado abaixo.

pageplot

Parameters:

Name Type Description Default
fc float

Frequência da portadora.

required
fs int

Frequência de amostragem.

128000

Raises:

Type Description
ValueError

Se a frequência de amostragem não for maior que o dobro da frequência da portadora. (Teorema de Nyquist)

Exemplo

pageplot

Referência:
AS3-SP-516-274-CNES (seção 3.2.5.3)

modulate(i_signal, q_signal)

Modula em QPSK os sinais \(d_I\) e \(d_Q\) com uma portadora \(f_c\), resultando no sinal modulado \(s(t)\). O processo de modulação é dado pela expressão abaixo.

\[ s(t) = d_I(t) \cdot \cos(2\pi f_c t) - d_Q(t) \cdot \sin(2\pi f_c t) \]
Sendo
  • \(s(t)\): Sinal modulado.
  • \(d_I(t)\) e \(d_Q(t)\): Sinais formatados correspondentes aos canais \(I\) e \(Q\).
  • \(f_c\): Frequência da portadora.
  • \(t\): Vetor de tempo.

Parameters:

Name Type Description Default
i_signal ndarray

Sinal \(d_I\) correspondente ao canal \(I\) a ser modulado.

required
q_signal ndarray

Sinal \(d_Q\) correspondente ao canal \(Q\) a ser modulado.

required

Returns:

Name Type Description
modulated_signal ndarray

Sinal modulado \(s(t)\) resultante.

t ndarray

Vetor de tempo \(t\) correspondente ao sinal modulado.

Raises:

Type Description
ValueError

Se os sinais I e Q não tiverem o mesmo tamanho.

demodulate(modulated_signal)

Demodula o sinal modulado em QPSK. Para o processo de demodulação, utiliza-se duas componentes auxiliares \(x_I(t)\) e \(y_Q(t)\) definidas pelas expressões abaixo.

\[ \begin{aligned} x_I(t) &= 2 \cos(2\pi f_c t), &\quad y_Q(t) &= 2 \sin(2\pi f_c t) \end{aligned} \]
Sendo
  • \(x_I(t)\) e \(y_Q(t)\): Componentes auxiliares utilizadas para a demodulação.
  • \(f_c\): Frequência da portadora.
  • \(t\): Vetor de tempo.

A partir das componentes criadas é realizado o processo de demodulação (translação em frequência), que resulta em duas componentes, uma em banda base e outra em \(2f_c\), conforme as expressões abaixo.

\[ x_I'(t) = s(t) \cdot x_I(t) = \left[d_I(t) \cos(2\pi f_c t ) - d_Q(t) \sin(2\pi f_c t )\right] \cdot 2\cos(2\pi f_c t ) \]
\[ y_Q'(t) = -s(t) \cdot y_Q(t) = \left[d_I(t) \cos(2\pi f_c t ) - d_Q(t) \sin(2\pi f_c t )\right] \cdot 2\sin(2\pi f_c t ) \]
Sendo
  • \(x_I'(t)\) e \(y_Q'(t)\): Componentes resultantes da demodulação.
  • \(x_I(t)\) e \(y_Q(t)\): Componentes auxiliares utilizadas para a demodulação.
  • \(s(t)\): Sinal modulado.
  • \(d_I(t)\) e \(d_Q(t)\): Sinais formatados correspondentes aos canais \(I\) e \(Q\).
  • \(f_c\): Frequência da portadora.
  • \(t\): Vetor de tempo.

Parameters:

Name Type Description Default
modulated_signal ndarray

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

required

Returns:

Name Type Description
i_signal ndarray

Sinal \(x_I'(t)\) recuperado.

q_signal ndarray

Sinal \(y_Q'(t)\) recuperado.

Raises:

Type Description
ValueError

Se o sinal modulado estiver vazio.