• No results found

Seznam funkcí a procedur v souboru „func.pas“

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

OMUNIKACE

EMU-2

S POČÍTAČEM

Na 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É FUNKCE

V 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í

Related documents