Funkce Popis
CommaToPoint Funkce pro převod desetinné čárky na tečku
CellToSingle Funkce pro buňky (textu) na číslo v plovoucí desetinné čárce MakeIni Procedura pro nahrání nastavení
SaveIni Procedura pro uložení nastavení do INI souboru ChangeIndex,
ChangeIndexKonst
Funkce, které převádí čísla vstupů pro EMU-2
SetInColor Procedura pro změnu barev průběhů v grafu IPadresa Funkce pro získání IP adresy počítače Average Funkce pro výpočet střední hodnoty Efektiv Funkce pro výpočet efektivní hodnoty
TopVal Funkce pro výpočet maximální/minimální hodnoty PtoP Funkce pro výpočet hodnoty špička-špička
Frekvence Funkce pro výpočet frekvence AutoCalibZero,
AutoCalibMax
Procedury použité při výpočtu kalibračních konstant WholePeriods Procedura pro získání celých period z naměřeného signálu OnePeriod Procedura pro získání jedné celé periody
PowerTwo Funkce pro zjištění mocniny dvou
5.1.3 Soubor „UInputs.pas“
Tento soubor obsahuje deklaraci tříd TInps a TArrayInps. Třída TInps obsahuje atribut Values typu Array[0..17] of Single a konstruktor pro inicializaci hodnot. Druhá třída TArrayInps je potomkem třídy TList a obsahuje pouze destruktor.
V souboru jsou definovány dvě proměnné. První je InVals typu TArrayInps, který slouží pro ukládání naměřených dat. Druhá je Indicator typu Integer a slouží jako počítadlo.
Dále obsahuje tři procedury:
Initial – voláním této procedury vytvoříme objekt InVals třídy TArrayInps a nastavíme počítadlo na nulu.
Deinitial – tato procedura slouží pro odstranění objektu InVals z paměti.
AddValues – pomocí této procedury přidáváme do objektu InVals nové hodnoty a zvýšíme počítadlo o 1.
5.1.4 Soubor „calibr.pas“
V souboru „calibr.pas“ jsou definovány všechny komponenty a jejich funkce okna pro autokalibraci. Dále obsahuje čtyři proměnné AutoCalGain a AutoCalOffset pro uložení kalibračních konstant a proměnou AutoCalMin AutoCalMax pro uložení napětí na vstupech při autokalibraci. Soubor zahrnuje také funkci AutoCalibrIn pro zjištění vybraného vstupu při autokalibraci.
5.2 K
OMUNIKACEEMU-2
S POČÍTAČEMNa obrázku 5.1 je znázorněna komunikace počítače PC s měřícím systémem EMU-2. Význam značek v obrázku:
‘S’ v 1. znaku ovládacího slova → začátek měření v EMU-2,
‘MEAS’ v hlavičce přijatých dat od EMU-2 → měření,
‘DONE’ v hlavičce přijatých dat od EMU-2 → ukončení měření,
‘DATA’ v hlavičce přijatých dat od EMU-2 → příjem dat
‘R’ v 1. znaku ovládacího slova → požadavek poslání dat.
Začátek měření
Ukončení měření
Žádost o úsek dat Odeslání dat
Přijata všechna data
‘MEAS’
‘DONE’
‘R’
‘S’
‘DATA’
+
-Zobraz „Measuring“
Žádost o měření
Zpracování dat
PC EMU-2
Obrázek 5.1: Schéma komunikace PC a EMU-2
5.3 V
ÝZNAMNÉ FUNKCEV této kapitole se zaměříme popis některých důležitých funkcí.
5.3.1 TwndUDP.StartMeasure
Úkolem této procedury je sestavit a odeslat ovládací slovo (proměnná Packet, pole znaků) pro signálový procesor a AD převodníky. Jestliže do 3 sekund nepřijde žádná odpověď, tak se komunikace přeruší.
0 - Znak S pro zahájení měření nebo znak R pro opětovné poslání dat.
1 - Oddělovací znak 0 (nula).
2 - Registr „B“ AD převodníku. Podle zvolené fvz se nastaví dělič základní frekvence.
3 - Oddělovací znak 0 (nula).
4 - Registr „D“ AD přev. Zapnutí/vypnutí a nastavení zesílení pro vstupy 1-6.
5 - Oddělovací znak 0 (nula).
6 - Registr „E“ AD přev. Zap./vyp. a nastavení zesílení pro vstupy 7-12.
7 - Oddělovací znak 0 (nula).
8 - Registr „F“ AD přev. Zap./vyp. a nastavení zesílení pro vstupy 13-18.
9 - Oddělovací znak 0 (nula).
10..13 - Požadovaný počet n měřených vzorků.
14..25 - Nastavení triggeru.
26 - Nastavení relé pro přepínání rozsahů nízkonapěťových vstupů.
27 - Oddělovací znak 0 (nula).
28..168 - Nastavení konstant (zesílení a odchylka) pro jednotlivé vstupy a jejich rozsahy a zisky.
Obrázek 5.2: Struktura ovládacího slova EMU-2
Procedura TwndUDP.StartMeasure je součástí souboru „main.pas“.
5.3.2 TwndUDP.NMUDP1DataReceived
Procedura vyvolaná komponentou NMUP1 při příjmu dat pomocí protokolu UDP.
V této proceduře se zjistí, jestli se ještě měří, je už doměřeno, nebo se přijala data, v tom případě se dat uloží a podle typu měření se vykreslí do grafu, nebo použijí pro autokalibraci.
Začátek
-Obrázek 5.3: Vývojový diagram procedury TwndUDP.NMUDP1DataReceived
Procedura TwndUDP.NMUDP1DataReceived je součástí souboru „main.pas“.
5.3.3 Average
Tato funkce je určena pro výpočet střední hodnoty signálu. Má dvě varianty:
Střední hodnota usměrněného signálu US, která se používá převážně v elektrotechnice a spočítá se podle vzorce:
N
Funkce Average je součástí souboru „func.pas“.
5.3.4 Efektiv
Funkce Efektiv slouží pro vypočítání efektivní hodnoty signálu. Efektivní hodnota Uef se spočítá podle vzorce:
Funkce Efektiv je součástí souboru „func.pas“.
5.3.5 Frekvence
Funkce Frekvence je určena pro výpočet frekvence periodického signálu, u kterého se dají zjistit průchody nulou.
Pomocí funkce OnePeriod zjistíme hodnoty času začátku t1 a konce t2 periody.
Frekvence f se poté spočítá podle vzorce:
1 2
1 t f t
= − . (5.5)
Funkce Frekvence je součástí souboru „func.pas“.
6 R EFERENČNÍ MĚŘENÍ
Před začátkem referenčního měření bylo potřeba nejdříve zkalibrovat vstupy EMU-2. Postup kalibrace je naznačen v kapitole 4.EMU-2.1. Měření byla na EMU-2 prováděna při rozsahu ±1,5 V a zisku 0 dB. Signál byl přiveden na vstup č. 10.
Měření pro porovnání správnosti vypočítávaných hodnot byla provedena na osciloskopu Agilent 54622D. Nejdůležitější hodnoty pro porovnání byly efektivní hodnota Uef, frekvence f a hodnota špička-špička UP-P. Zdrojem měřeného signálu byl generátor Agilent 33120A.
1. Měření:
trojúhelníkový průběh o frekvenci f = 100 Hz a amplitudě UP-P = 2,4 V (špička-špička).
Tabulka 6.1: Porovnání hodnot při 1. měření