„Kis intenzitású jelek mérése” változatai közötti eltérés

A Fizipedia wikiből
(A mérőkártya programozása)
37. sor: 37. sor:
  
 
A kimenet esetében ugyan így kell beállítani a generálás időzítését. Amennyiben a kimenetet ContinuousSamples módban használjuk, akkor elegendő egyszer megadni a kártyának egy tömböt, ami tartalmazza a generálandó adatokat. Ekkor a mérőkártya elmenti azokat egy pufferben és a tomb elemeit elkezdi generálni a kimeneten. Amikor elér a tömb végére, automatikusan visszaugrik az első elemre és folyamatosan ismételi a tömbben megadott adatokat, amíg le nem állítjuk a Task-ot.
 
A kimenet esetében ugyan így kell beállítani a generálás időzítését. Amennyiben a kimenetet ContinuousSamples módban használjuk, akkor elegendő egyszer megadni a kártyának egy tömböt, ami tartalmazza a generálandó adatokat. Ekkor a mérőkártya elmenti azokat egy pufferben és a tomb elemeit elkezdi generálni a kimeneten. Amikor elér a tömb végére, automatikusan visszaugrik az első elemre és folyamatosan ismételi a tömbben megadott adatokat, amíg le nem állítjuk a Task-ot.
 +
 +
== Feladatok ==
 +
# Készíts egy oszcilloszkóp programot, ami a következő képpen működik: a start gomb megnyomására konfigurálja a mérőkártyát, hogy a felhasználó által megadott mintavételi frekvenciával mérjen megadott ideig (FintieSamples mód), majd elindítja a timer-t. Minden timer eseménykor beolvassuk a mérőkártyától adatokat és ábrázoljuk egy chart objektummal a felhasználói felületen.
 +
# Egészítsd ki a programot egy analóg kimenettel: a mérés indításakor generálunk egy tömböt, amit a mérőkártya folyamatosan kiad. Ehhez célszerű a ContinuousSamples mód-ot használni, így elegendő a mérés indításakor megadni a kártyának a generálandó adatokat.
 +
# Helyezzünk el egy checkbox-ot, amivel a felhasználó állítani tudja, hogy konstans feszültséggel vagy négyszögjellel akarja hajtani a LED-et.
 +
# A négyszögjeles meghajtás esetén használjunk Lock-in technikát a LED fényerősségének meghatározására: ehhez szükségünk van a LED-et meghajtó jelre, amit a mérőkártya másik bemenetén tudunk visszamérni. Szorozzuk össze a LED meghajtó jelét a mért fotofeszültség jellel és számítsuk ki a meghajtó jellel azonos frekvenciájú jel amplitúdóját. Az így kapott amplitúdót ábrázoljuk a felhasználói felületen a mérés indításától eltelt idő függvényében.
 +
# Vizsgáld meg, hogy mekkora  a háttérjel és mi a legkisebb detektálható amplitúdó.

A lap 2018. április 6., 12:58-kori változata

Bevezetés


A mérési gyakorlat célja alacsony intenzitású jelek mérésére alkalmas technika elsajátítása. A gyakorlat során egy LED fényintenzitását mérjük meg egy fényelem segítségével. A LED-et a myDAQ1 mérés során ismertetett módon: egy 10 kOhm-os soros ellenálláson keresztül kapcsoljuk a mérőkártya analóg feszültség kimenetére. A fényelem feszültségét a mérőkártya analóg feszültség bemenetén mérjük. A terem világítása által keltett fotofeszültség néhány tized voltos, ehhez adódik hozzá a LED fényintenzitásából származó járulék. A LED fényerejét a LED-en folyó árammal tudjuk változtatni, a fényelemre eső intenzitást pedig a fényelem pozícionálásával szabályozhatjuk. A LED-ből kollimált fénynyaláb lép ki, amennyiben nagy jelet szeretnénk mérni akkor helyezzük a fényelemet és a LED-et egymással szemben. Kis intenzitás legegyszerűbben úgy érhető el ha a fényelemet úgy pozícionáljuk, hogy az a kilépő fénynyalábbra merőlegesen, a LED oldalára nézzen.

Elsőként használjuk az NI MAX programot, a mérési elrendezés tesztelésére. A LED-et meghajtó feszültség kimeneten állítsunk be egy szinuszos jelet, melynek amplitúdója nagyobb mint a LED nyitó feszültsége, így minden periódusban felvillan a LED. Pozícionáljuk a fényelemet a LED-el szemben, ekkor a mért fotofeszültség jelében megjelennek a LED fényintenzitásának megfelelő kvázi négyszögjel. Mivel a LED minden periódusban be- és kikapcsol, így a LED fényintenzitásából származó fotofeszültség megegyezik a pár tized voltos alapvonalra (háttér világítás) szuperponált négyszögjel amplitúdójával. Ezután csökkentsük az intenzitást a fényelem pozíciójának változtatásával. A LED fényerejét mindaddig mérni tudjuk, míg a négyszögjel amplitúdója nagyobb a háttér világításból származó alapvonal zajánál. A mérési gyakorlat célja, hogy készítsünk egy olyan mérőprogramot, ami a Lock-in detektálás elve alapján működik: a mért fotofeszültség jelből kiszűri a LED-et meghajtó feszültségjel frekvenciájával megegyező frekvenciájú komponenst és meghatároza annak amplitúdóját. Ezt a következőképpen valósíthatjuk meg: a LED-re kapcsoljunk négyszögjelet, aminek az amplitúdója a LED nyitófeszültségénél nagyobb. A fényelemen mért feszültségjelet összeszorozzuk a LED-et meghajtó feszültségjellel majd számítjuk az így kapott jel átlagát. Abban az esetben, ha a mért fotofeszültség jelhez a LED-et meghajtó jel frekvenciájától különböző frekvenciájú zaj adódik, a meghajtó jel és a mért fotofeszültség szorzása után ez kiátlagolódik (1. ábra).


A LED-ből származó fényintenzitásnak megfelelő négyszögjel amplitúdója az alábbi képlettel határozható meg:

\[A_{LED}=(2\cdot S_{Mean})/A_g ,\]

ahol \setbox0\hbox{$S_{Mean}$}% \message{//depth:\the\dp0//}% \box0% a számolt átlagérték, \setbox0\hbox{$A_g$}% \message{//depth:\the\dp0//}% \box0% a gerjesztő jel amplitúdója.

A mérőkártya programozása

A myDAQ1 mérés során megismert módon Task-okat kell létrehoznunk a feszültség bemenet és kimenet kezelésére. A mérés pontos időzítéséhez valamint nagy mintavételi frekvencia eléréséhez használjuk a mérőkártya belső órajelét a mintavételezés időzítésére. Ehhez a mérés vezérlésére létrehozott Task-oknak az időzítését is konfigurálni kell:

InTask = new NationalInstruments.DAQmx.Task();
InTask.AIChannels.CreateVoltageChannel("myDAQ1/ai0", "", AITerminalConfiguration.Differential, -10, 10, AIVoltageUnits.Volts);
InTask.Timing.ConfigureSampleClock("", sampleRate, SampleClockActiveEdge.Rising, SampleQuantityMode.FiniteSamples, numSamples);
analogReader = new AnalogSingleChannelReader(InTask.Stream);

Az időzítést a fenti példa kód 3. sora állítja be, az alábbi paramétereket kell megadni:

  • A mintavétel órajelének forrása, az üres string ("") a kártya belső órajelét választja ki
  • Mintavételi frekvencia
  • Az órajel felfutó vagy lefutó élére történjen a mintavételezés
  • Időzítési mód: FiniteSamples / ContinuousSamples
  • A mérendő / generálandó adatok száma

FiniteSamples: A mérés elindítása után a mérőkártya mintavételez numSamples db pontot, majd automatikusan leáll a mérés.

ContinuousSamples: A mérőkártya folyamatosan mér, az adatokat egy pufferben tárolja. A progamban biztosítani kell, hogy rendszeres időközönként kiolvassuk a mért adatokat különben a puffer megtelik és hibaüzenetet dob a kártya.

A kimenet esetében ugyan így kell beállítani a generálás időzítését. Amennyiben a kimenetet ContinuousSamples módban használjuk, akkor elegendő egyszer megadni a kártyának egy tömböt, ami tartalmazza a generálandó adatokat. Ekkor a mérőkártya elmenti azokat egy pufferben és a tomb elemeit elkezdi generálni a kimeneten. Amikor elér a tömb végére, automatikusan visszaugrik az első elemre és folyamatosan ismételi a tömbben megadott adatokat, amíg le nem állítjuk a Task-ot.

Feladatok

  1. Készíts egy oszcilloszkóp programot, ami a következő képpen működik: a start gomb megnyomására konfigurálja a mérőkártyát, hogy a felhasználó által megadott mintavételi frekvenciával mérjen megadott ideig (FintieSamples mód), majd elindítja a timer-t. Minden timer eseménykor beolvassuk a mérőkártyától adatokat és ábrázoljuk egy chart objektummal a felhasználói felületen.
  2. Egészítsd ki a programot egy analóg kimenettel: a mérés indításakor generálunk egy tömböt, amit a mérőkártya folyamatosan kiad. Ehhez célszerű a ContinuousSamples mód-ot használni, így elegendő a mérés indításakor megadni a kártyának a generálandó adatokat.
  3. Helyezzünk el egy checkbox-ot, amivel a felhasználó állítani tudja, hogy konstans feszültséggel vagy négyszögjellel akarja hajtani a LED-et.
  4. A négyszögjeles meghajtás esetén használjunk Lock-in technikát a LED fényerősségének meghatározására: ehhez szükségünk van a LED-et meghajtó jelre, amit a mérőkártya másik bemenetén tudunk visszamérni. Szorozzuk össze a LED meghajtó jelét a mért fotofeszültség jellel és számítsuk ki a meghajtó jellel azonos frekvenciájú jel amplitúdóját. Az így kapott amplitúdót ábrázoljuk a felhasználói felületen a mérés indításától eltelt idő függvényében.
  5. Vizsgáld meg, hogy mekkora a háttérjel és mi a legkisebb detektálható amplitúdó.