Matlab függvény: Bode-diagram mérő
A méréshez használja a BODE_meas2 függvényt, melyet megtalál a PC-n!
Segítség egy egyszerű függvény elkészítéséhez
Ebben a részben szövegesen nyújtunk segítséget a függvény elkészítéséhez. Gyakorlásként célszerű saját ötlet, vagy a lenti segítség alapján elkészíteni a megfelelő függvényt. Ha ez nem kivitelezhető (túlmutat a gyakorlat idején, nincs megfelelő Matlab tapasztalat), akkor a következő fejezetben egy konkrét példát talál a függvényre, melyet használni is tud a mérés során. FIGYELEM A lenti példa függvény jelentős része az ábrázoláshoz kapcsolódik, ami így bonyolultabbnak tűnhet, mint a gyakorlat elvégzéséhez szükséges funkcionalitású függvény. A saját készítésű függvény esetén az ábrázolás lényegesen egyszerűbben is megoldható
A mérés elve:
A Bode-diagram kiméréséhez különböző frekvenciájú szinuszjelekkel való meghajtás mellett kell mérni a kimeneti (adott áramköri elemen eső) feszültséget, majd meghatározni a kimeneti és bemeneti jel amplitúdójának arányát és fáziskülönbségét.
A feladat lépései:
- Magát a mérést a myDAQ_sin_rw(f,N) függvénnyel tudja elvégezni, mely N periódusnyi f frekvenciájú jelet ad ki az AO0 kimeneten és elvégzi az AI0 és AI1 bemenetek visszaolvasását, így ideális esetben két szinuszjelet ad vissza az időalappal együtt. (Bővebb infók a függvényről a mérési leiratban olvashatók.)
- A mérésben kapott szinuszjelek amplitúdóját 1-1 szinusz illesztzésével célszerű meghatározni, melyhez a fit() függvényt tudja használni. További segítségként a két szinuszjel egyidejű illesztésére használhatja az előre elkészített fit_sins() függvényt is, melyről itt talál leírást.
- Az illesztette görbék amplitúdójából (és fázisából) már ki tudja számítani az adott frekvenciához tartozó be/kimeneti amplitúdó arányt (illetve a fáziskülönbséget).
- Ha a fentieket végrehajtotta, akkor még csak egy frekvenciához tartozó átviteli érték (és fáziskülönbség) került megmérésre, így a fenti lépéseket meg kell ismételni több frekvenciára is. Ehhez célszerű definiálni egy 'M' hosszú vektort a kívánt 'M' db frekvencia értékkel és ezen végiglépkedni egy for ciklussal. Ekkor az eredményeket is egy-egy 'M' hosszúságú vektorban érdemes tárolni.
- Ha a mérés elkészült minden frekvenciaértékre, akkor az átviteli görbét a frekvencia függvényében log-log skálán érdemes ábrázolni.
- Fontos technikai információ, hogy az optimális méréshez érdemes 100-1000 periódusnyi szinuszjeleket mérni nagyobb frekvenciák esetén. Azonban kisebb frekvenciáknál ez már indokolatlanul hosszú mérési időt eredményezne, így 1-10Hz tartományban kevesebb periódus mérése is elég, itt érdemes betenni egy feltételt a mérés maximális idejére.
A megfelelő függvény egy lehetséges megvalósítása ábrázolással együtt
Az alábbi függvénnyel megvalósítható a Bode-diagram mérése, melyet ábrázol is a mérés közben az egyes frekvenciáknál mért és illesztett jelekkel együtt. A függvény bemenetként egyetlen vektort vár, mely a frekvenciaértékeket tartalmazza Hz-ben. A függvény végigfut a frekvenciaértékeket tartalmazó vektoron, elsőként megvizsgálja, hogy az adott frekvenciára 100 periódus idő nagyobb-e, mint 2s. Ha igen, akkor a periódusok számát úgy állítja be, hogy a egy mérés 2s körüli legyen, különben 100 periódust mér. Utána elbégzi a mérést a 'myDAQ_sin_rw()' függvény segítségével és a kapott jelekre megcsinálja az illesztést a 'fit_sins()' függvénnyek. Az eredményeket a 99-es ábrán ábrázolja a Bode-diagrammal együtt. A függvény a következő kimeneteket adja vissza:
- transm - Az AI1 és AI0 bemeneteken mért jelekre illesztett szinuszjelek amplitúdójának hányadosa
- phase_diff - Az AI1 és AI0 bemeneteken mért jelekre illesztett szinuszjelek fázisának különbsége [rad]
- A_ch0 - Az AI0 bemeneten mért jelre illesztett szinuszjel amplitúdója [V]
- A_ch1 - Az AI1 bemeneten mért jelre illesztett szinuszjel amplitúdója [V]
- phi_ch0 - Az AI0 bemeneten mért jelre illesztett szinuszjel fázisa [rad]
- phi_ch1 - Az AI1 bemeneten mért jelre illesztett szinuszjel fázisa [rad]