Kis intenzitású jelek mérése
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 ,\]](/images/math/9/d/5/9d503689a2f92328800c43d36b7b6531.png)
ahol a számolt átlagérték,
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
- 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ó.