Table of Contents

Laboratorul 04.

Shiftarea în fază/timp și filtrarea semnalelor periodice

În acest laborator vom încerca să experimentăm câteva dintre proprietăţile Transformatei Fourier, care ne permite să shiftăm/întârziem într-un domeniu şi să observăm un anumit efect în alt domeniu. De exemplu, la curs, am arătat că o întârziere în domeniul “Timp” înseamnă o shiftare de frecvenţă în domeniul “Frecvenţă”.

Materiale ajutătoare:

  1. Secțiunea 4.8 (vezi tabelul 4.2 pentru exercițiul 1) și Secțiunea 4.7 pentru exercițiul 2

Exercițiul 1 – shiftarea în frecvență

[5p]

În acest exerciţiu vrem să întârziem un semnal în timp, prin modificarea spectrului său (vezi proprietăţile Transformatei Fourier). Vom folosi un semnal pe care l-am mai folosit şi anume, semnalul dreptunghiular cu amplitudinea $A$ pe intervalul $[0, \frac{T}{2}]$ şi cu amplitudinea $-A$ pe intervalul $[\frac{T}{2}, T]$ care are binecunoscutul spectru dat de:

\begin{equation} c_{k} = \left\lbrace \begin{array}{} \frac{2 \cdot A}{j \pi k} \qquad k \quad impar \\0 \qquad \quad k \quad par \end{array} \right. \end{equation}

Pentru acest task va trebui să urmaţi următorii paşi:

coefficients_phase = np.angle(ck, deg=True)

Exercițiul 2 - filtrare

[5p]

Vom vedea în continuare ce efect are un filtru trece-jos asupra semnalului puls periodic. În special ne interesează care sunt termenii din seria Fourier ai semnalului rezultat în urma filtrării.

Dacă știm funcția de transfer $H(f)$ a unui filtru trece-jos (sau alt tip de sistem liniar și invariant în timp), care primește la intrare un semnal (pentru care putem să aflăm coeficienții Fourier $c_k$), putem să găsim coeficienții Fourier ($c_k^y$) ai semnalului rezultat ca fiind:

\begin{equation} c_k^y = H(\frac{k}{T}) \cdot c_k \end{equation}

Astfel putem reconstrui semnalul de ieșire folosind coeficienții Fourier $c_k^y$.

În acest exercițiu trebuie să calculăm coeficienții Fourier ai semnalului de ieșire al unui filtru trece-jos, dat fiind un semnal de intrare de tip puls cu amplitudine $A=1$ și pulsul de durată $\Delta=\frac{T}{5}$. Știm că coeficienții Fourier ai semnalului sunt dați de:

\begin{equation} c_k = A \cdot e^{-j\frac{\pi k \Delta}{T}} \cdot \frac{\text{sin}(\frac{\pi k \Delta}{T})}{\pi k} = A \cdot e^{-j\frac{\pi k \Delta}{T}} \cdot \frac{\Delta}{T} \cdot \text{sinc}(\frac{\pi k \Delta}{T}). \end{equation}

Atenție: NUMPY folosește funcția sinc normalizată sinc(x) = $ \frac{\text{sin}(\pi x)}{\pi x}$

Puteți vedea circuitul filtrului trece-jos în următoarea imagine:

Funcția de transfer a circuitului (pe care am determinat-o la curs) este următoarea:

\begin{equation} H(f=\frac{k}{T}) = \frac{1}{1+j 2 \pi R C \frac{k}{T}} \end{equation}

unde R și C sunt rezistența și respectiv capacitatea.

Task-ul vostru este să determinați coeficienții ieșirii ($c_k^y$) și să reconstruiți semnalul de ieșire pentru diferite frecvențe de tăiere.

Pentru aceasta urmăriți următorii pași:

  1. Generați semnalul puls și plotați-l. Puteți folosi T=100 de eșantioane (puncte), dintre care doar $\Delta=20$ nu sunt egale cu 0. [1p]
  2. Calculați primii N=31 coeficienți Fourier pozitivi $c_k$ ai semnalului și plotați-i ($k\in\{0,\ldots,30\}$). Pentru a îi reprezenta va trebui să folosiţi funcţia plt.stem. De asemenea, va trebui să reprezentaţi doar magnitudinea, folosind funcţia np.abs. [1p]
  3. Calculați coeficienții Fourier asociați semnalului de ieșire, $c_k^y$, folosind formula de mai sus și plotați-i ca mai sus. Pentru asta va trebui să alegeți o frecvență de cut-off $f_c$ care va determina valorile R și C ( $RC = \frac{1}{2\pi f_c}$ ). [1p]
  4. Reconstruiți semnalul de ieșire cu ajutorul seriei Fourier (folosind formula de la exercițiul 1) [2p]

Puteți încerca următoarele valori pentru $f_c$:

  1. $f_c = 0.1/T$ (frecvența de cut-off e mult mai mică decât frecvența fundamentală a semnalului ⇒ filtrare puternică)
  2. $f_c = 1/T$ (frecvența de cut-off = frecvența fundamentală ⇒ puterea este înjumătățită)
  3. $f_c = 10/T$ (frecvența de cut-off mult mai mare decât frecvența fundamentală ⇒ filtrare slabă)

Semnalele reale au următoarea proprietate: coeficienții Fourier negativi sunt conjugații complecși ai celor pozitivi $c_{-k} = c_{k}^*$. Pentru reconstrucția semnalului nostru puls, trebuie să folosiți și conjugații complecși ai coeficienților pozitivi.