2.2. Diferența între VI-uri Wave și Pattern

Veți observa că numele majorității VI-urilor de generare a semnalului au cuvântul wave sau pattern în ele. Există o diferență de bază în funcționarea celor două tipuri diferite de VI-uri. Are de-a face cu dacă poate sau nu poate VI-ul urmări faza semnalului pe care îl generează de fiecare dată când este apelat.

Controlul fazei

VI-urile wave au un control phase in unde puteți specifica faza inițială (în grade) a primului eșantion al formei de undă generate. Ele au de asemenea un indicator phase out care specifică care va fi faza următorului eșantion al formei de undă generate. În plus, un control reset phase decide dacă sau nu faza primului eșantion generat atunci când VI-ul este apelat este faza specificată în controlul phase in, sau dacă este faza disponibilă la controlul phase out în cazul în care ultimul VI s-a executat. O valoare TRUE a reset phase stabilește faza inițială la phase in, în timp ce o valoare FALSE o stabilește la valoarea de phase out când ultimul VI a fost executat.

VI-urile wave sunt toate reentrant (poate ține evidența fazei intern) și acceptă frecvența în unități normalizate (cicluri/eșantion). Singurul VI pattern care utilizează unități normalizate este Chirp pattern VI. Setarea Booleană a reset phase la FALSE permite simularea continuă a eșantionării.

Notă: VI-urile Wave sunt reentrant și acceptă intrarea de frecvență în termeni de unități normalizate.

În următorul exercițiu, veți genera o undă sinus folosind atât Sine Wave VI cât și Sine Pattern VI. Veți vedea cum în Sine Wave VI aveți mai mult control asupra fazei inițiale decât în ​​Sine Pattern VI.

Exercițiul 2-2

OBIECTIV: Generarea unei unde sinus de o anumită frecvență și efectul aliasingului.

Panoul frontal

1. Deschideți Generate Sine VI din biblioteca Lvspcex.llb.

2. Panoul frontal conține comenzi (controale) pentru numărul de puncte de eșantioane care urmează a fi generate, amplitudinea, frecvența analogică și faza inițială (în grade) a undei sinus care trebuie generată și frecvența la care se eșantionează această formă de undă.

3. Nu modificați valorile implicite ale panoului frontal. Treceți la diagrama bloc.

Diagrama bloc

4. Examinați diagrama bloc.

Sine Wave VI (Analysis » Signal Generation subpalette). În acest exercițiu, acest VI generează 100 de puncte dintr-o undă sinus de 10 Hz eșantionată la 100 Hz.

5. Observați în diagrama bloc că frecvența semnalului este împărțită la frecvența de eșantionare înainte de a fi conectată la Sine Wave VI.

Acest lucru se datorează faptului că Sine Wave VI necesită frecvența digitală (normalizată) a semnalului.

6. Rulați VI-ul. Cu valorile implicite ale panoului frontal, pe grafic ar trebui să apară o undă sinus de 10 Hz.

Eșantionare și Aliasing

7. Modificați frecvența semnalului de pe panoul frontal la 90 Hz și observați forma de undă. Semnalul rezultat arată exact ca forma de undă de 10 Hz.

După cum ați văzut în lecția anterioară, acest fenomen se numește aliasing, care apare numai în domeniul digital. Celebra teoremă a eșantionării Nyquist dictează că cea mai înaltă frecvență utilă reprezentativă este cel mult jumătate din frecvența de eșantionare. În cazul nostru, frecvența de eșantionare este de 100 Hz, astfel încât frecvența maximă reprezentabilă este de 50 Hz. Dacă frecvența de intrare este peste 50 Hz, ca în cazul nostru de 90 Hz, va fi dedublată înapoi la ((n*50) - 90) Hz > 0, care este (100-90) Hz sau 10 Hz. Cu alte cuvinte, acest sistem digital cu o frecvență de eșantionare de 100 Hz nu poate face diferența între 10 Hz și 90 Hz, 20 Hz și 80 Hz, 51 Hz și 49 Hz și așa mai departe.

Importanța unui filtru antialiasing analogic.

Prin urmare, în proiectarea unui sistem digital, trebuie să vă asigurați că orice frecvențe care depășesc jumătate din frecvența de eșantionare nu intră în sistem. Odată ce au intrat, nu există nici o modalitate de a le elimina! Pentru a preveni aliasing-ul, utilizați în mod obișnuit un filtru analogic anti-aliasing low-pass. Deci, în acest exemplu, puteți utiliza un filtru analogic anti-aliasing pentru a elimina orice frecvență de peste 50 Hz. După ce semnalul este filtrat, asigurați-vă că ori de câte ori vedeți un semnal de 10 Hz cu o frecvență de eșantionare de 100 Hz, acesta este 10 și nu 90 Hz.

8. Când ați terminat, opriți VI-ul, făcând clic pe butonul STOP.

Închideți VI-ul. Nu salvați nicio modificare.

Sfârșitul exercițiului 2-2

Exercițiul 2-3

Obiectiv: Să genereze o formă de undă sinusoidală folosind atât Sine Wave VI cât și Sine Pattern VI și să se înțeleagă diferențele.

1. Construiți panoul frontal și diagrama bloc ale VI-ului, prezentate mai jos.

Panoul frontal

Diagrama-bloc

Sine Pattern VI (Analysis » Signal Generation palette).

Sine Wave VI (Analysis » Signal Generation palette).

2. Setați comenzile la următoarele valori:

cycles or freq: 2.00
sampling freq: 100
phase in: 0,00
reset phase: OFF

Rulați VI-ul de mai multe ori.

Observați că graficul Sine Wave se modifică de fiecare dată când executați VI-ul. Deoarece reset phase este setată la OFF, faza undei sinus se modifică cu fiecare apel la VI, fiind egală cu valoarea phase out din timpul apelului anterior. Graficul Sine Pattern rămâne mereu același, arătând 2 cicluri ale formei de undă sinusoidale. Faza inițială a graficului Sine Pattern este egală cu valoarea stabilită în controlul phase in.

Notă: "Phase in" și "phase out" sunt specificate în grade.

3. Schimbați faza la 90 și executați VI-ul de mai multe ori. La fel ca înainte, graficul Sine Wave se modifică de fiecare dată când executați VI-ul. Totuși, graficul Sine Pattern nu se schimbă, dar faza inițială a modelului sinusoidal este de 90 de grade - aceeași cu cea specificată în controlul phase in.

4. Cu faza încă la 90, setați reset phase pe ON și rulați VI-ul de mai multe ori. Formele de undă sinusoidale afișate în ambele grafice Sine Wave și Sine Pattern pornesc la 90 de grade, dar nu se schimbă cu apelări succesive la VI.

5. Păstrați reset phase ca ON, executați VI-ul de mai multe ori pentru fiecare dintre următoarele valori ale phase in: 45, 180, 270 și 360. Observați faza inițială a formei de undă generate de fiecare dată când se execută VI-ul.

6. După ce ați terminat, salvați ca Wave și Pattern.vi în biblioteca Lvspcex.llb.

Sfârșitul exercițiului 2-3

2.3 Construirea unui generator de funcții