LABORATORIOTYÖ 4 MITTAUSAUTOMAATIO 4-1
4. MITTAUSAUTOMAATIO Työn tarkoitus: Työn tarkoituksena on tutustua mittausautomaation perusteisiin ja samalla LabView mittausautomaatiojärjestelmään. Lisäksi pyritään käytännön esimerkein havainnollistamaan eräitä perusasioita, joita signaalien näytteistämisessä tulee ottaa huomioon. Sisältö: 4.1. Teoriaa: Harmoninen Kokonaissärö (s. 2) 4.2. LabView alkeet vartissa (s. 3) 4.3. Esiselostustehtävät (s. 9) 4.4. Mittaukset (s. 10) 4.1. Teoriaa: Harmoninen kokonaissärö Signaalin kulkiessa läpi epälineaarisen komponentin, esimerkiksi epäideaalisen vahvistimen, tapahtuu signaalin säröytymistä. Säröytyminen tarkoittaa signaalin aaltomuodon muuttumista toisin sanoen sitä, että syntyy taajuuskomponentteja joita ei välttämättä löydy sisään menneestä signaalista. Harmonisen särön tapauksessa syntyneet uudet taajuuskomponentit ovat signaalitaajuuden monikertoja, eli harmonisia taajuuksia. (Esimerkiksi 1 khz sinisignaalin harmonisia taajuuksia ovat 2 khz, 3 khz, 4 khz, ) Eräs harmonisen säröytymisen mittari on harmoninen kokonaissärö (THD, Total Harmonic Distortion), joka voidaan laskea kaavasta THD = a 2 1 + a 2 2 +... + a 2 n 100%, a0 missä a 0 on perustaajuisen komponentin (signaalin) amplitudi ja a 1, a 2, a n ovat vastaavasti harmonisia taajuuskomponentteja. Esimerkiksi audiojärjestelmissä harmonisen särön minimoiminen on erityisen tärkeätä. Hyvälaatuisella audiovahvistimella harmoninen kokonaissärö jääkin vain prosentin murto-osiin. Säröytyminen on tosin yleensä sitä suurempaa, mitä suurempia signaalitehoja käytetään. 4-2
4.2. Labview alkeet vartissa Labview on National Instrumentsin luoma graafinen kehitysympäristö, jota käytetään laajasti mittaus- ja automaatiotekniikassa. Labview-ohjelmien avulla voidaan esimerkiksi lukea dataa joltakin tietokoneen ulkopuoliselta laitteelta (yleismittarilta tms.) ja toisaalta ohjelman antama ulostulosignaali voidaan edelleen syöttää jollekin laitteelle, vaikkapa ohjaamaan yleismittarin näytteenottoa tai askelmoottorin toimintaa. Välissä voidaan suorittaa signaalin käsittelyä, kuten signaalin suodatusta. Labviewn avulla voidaan myös monitoroida tai analysoida signaalia ja talettaa kerätty tieto haluttuun tiedostoon tai esittää se taulukon, kuvan, tms. muodossa. Tällä tavoin on mahdollista toteuttaa esimerkiksi virtuaalinen oskilloskooppi, jossa oskilloskoopin toiminnot on toteutettu ohjelmallisesti ja signaalin aaltomuoto esitetään skoopin näytön sijaan tietokoneen kuvaruudulla. Labviewta käytettäessä tietokoneen ja ulkoisten laitteiden väliset fyysiset liitännät on mahdollista toteuttaa monin eri tavoin: voidaan käyttää esimerkiksi GPIB- tai sarjaväylää. Datan lukemiseen on tarjolla erilaisia datankeruu- ja yleismittarikortteja. Seruraavassa käydään lyhyesti läpi Labviewn perusasiat, joiden jälkeen kukin voi laboratoriotyössä oppia itse lisää kokeilemalla ja help -toimintoa käyttämällä. Luodaan esimerkinomaisesti yksinkertaisin mahdollinen Labview ohjelma, tai Virtual Instrument (VI), joksi myös Labview-ohjelmia yleisesti kutsutaan. Labviewin saa käynnistettyä klikkaamalla työpöydällä olevaa Labview ikonia. Tämän jälkeen aukeaa aloitusikkuna, josta valitaan New VI, eli aloitetaan uuden VI:n tekeminen tyhjältä pöydältä. Tämän jälkeen Labview avaa sinulle kolme ikkunaa. Suuri valkopohjainen ikkuna on diagrammi-ikkuna, johon itse ohjelmakoodi luodaan kätevästi graafisella ohjelmointikielellä, jota usein myös G-kieleksi kutsutaan. Harmaapohjainen ikkuna puolestaan on paneeli-ikkuna, josta ohjataan ohjelman input ja output tietoja. Labview kutsuu näitä termeillä control ja indicator. Kolmas pienempi avautuvista ikkunoista on työkalu-ikkuna (tools). Työkaluikkunasta voi vaihtaa hiiren osoittimen ulkoasua, jolloin sen muuttuu vastaavasti. Tärkeimmät työkalut ovat: - Nuoli: Lähes kaikkeen siirtämiseen, venyttämiseen ja muokkaamiseen. - Sormi: Kohteiden, kuten nappien ja graphien käyttämiseen, erityisesti paneeliikkunassa. - Kirjain: Kirjoittamiseen, tekstin, numeroiden ja lukujen muokkaamiseen. - Lankakerä: Yhteyksien vetämiseen eri ikonien välillä diagrammi-ikkunassa. 4-3
Painamalla hiiren oikeaa nappia paneeli-ikkunassa saadaan näkyviin Controls valikko. Tästä voidaan valita ohjelmaan tarvittavat kontrollit ja indikaattorit, eli painonapit, viisarinäytöt, mittarit ja kuvaajat. Jokaista paneeli-ikkunaan asetettua kohdetta vastaa aina diagrammi-ikkunaan automaattisesti ilmestyvä saman niminnen ikoni. Jos hiiren oikeaa nappia painetaan diagrammi-ikkunassa, tulee esille lista käytettävistä funktioista. Eri funktiot on ryhmitelty puumaisesti omiin alahakemistoihinsa, jotta sadoista funktioista löytyisi helposti haluttu. Tehdään esimerkkiohjelmasta sellainen joka kertoo jonkin luvun neljällä ja tutkii onko tulos yli kymmenen. Tähän ohjelmaan tarvitaan siis ainakin sellainen funktio joka suorittaa kertolaskun, sekä funktion joka vertailee kahta lukua. Haetaan nämä funktiot funktiolistasta ja asetetaan diagrammi-ikkunaan. 4-4
Jos jostakin funktiosta haluaa lisätietoja, kannattaa Help-ylävalikosta valita Show help. Tämä avaa help-ikkunan. Jos nyt hiiren osoittimen vie jonkin funktion päälle, näkyy help-ikkunassa lyhyt selvitys sen toiminnasta. Tärkeimpiä huomattavia asioita on eri funktioiden tarvitsemat inputit (vasemmalla )ja outputit (oikealla). Näiden tietotyyppi näkyy inputteihin menevien ja outputeista lähtevien viivojen väristä: Oranssi: liukuluku Sininen: kokonaisluku Vihreä: Boolean (True/False) Violetti: merkkijono Viivojen paksuus lisäksi kertoo, onko kyseessä pelkkä yksinkertainen luku, vektori vai matriisi. Laitetaan nyt ohjelmaan vielä kaksi vakiota. Helpoin tapa on viedä diagrammiikkunassa nuoli halutun inputin päälle, painaa hiiren oikeaa nappia ja valita avautuvasta valikosta create constant. Otetaan kirjain- tai sormityökalu käyttöön ja vaihdetaan vakioiden arvot oletusarvo nollasta neloseen ja kymppiin. Valitaan sitten työkaluvalikosta lankakerä ja vedetään funktioidenväliset tarvittavet vedokset. Tämän jälkeen ohjelma näyttää tältä: 4-5
Kun lankakerän vie jonkin funktion sisääntulon tai ulostulon päälle, näyttää se kaikki sen funktion tulot ja lähdöt. Lisäksi kyseinen lähtö tai tulo vilkkuu ja sen nimi näkyy. Tämä helpottaa lankojen vetämistä oikeista lähdöistä oikeisiin tuloihin. Tässä vaiheessa ohjelmasta puuttuu vielä käyttäjän antama kerrottava luku (control) ja ilmaisin (indicator), joka kertoo vertailun tuloksen. Nämä voidaan luoda kahdella tavalla. Ensimmäinen tapa on mennä paneeli-ikkunaan. Painaa hiiren oikeaa nappi, joka avaa controls -valikon, ja valita sopivat kontrollit ja indikaattorit. Helpompi tapa on viedä diagrammi-ikkunassa nuoli jälleen halutun lähdön tai tulon päälle ja painaa hiiren oikeaa nappia. Tämä avaa valikon, josta nyt voidaan valita haluttuun lähtöön indikaattori (Create Indicator) tai sisääntuloon kontrolli (Create Control). Luodaan näin siis kertolaskun sisääntuloon kontrolli ja vertailun ulostuloon indikaattori. Labview valitsee itse oikean datatyypin indikaattorin/kontrollin jota voi halutessa muokata tai vaihtaa myöhemmin. Ohjelman ikkunoiden pitäisi nyt näyttää tältä: 4-6
Ohjelmassa siis ainoastaan kontrollit ja indikaattorit näkyvät kummassakin ikkunassa. Paneeli on ohjelman käyttöliittymä ja diagrammi ohjelman koodi. Ohjelma on nyt rakennettu sellaiseen vaiheeseen, että sen voi ajaa. Merkki tästä on ylhäällä vasemmalla olevan oikealle osoittavat nuolen eheytyminen. Aikaisemmissa vaiheissa nuoli on ollut säröytynyt merkkinä siitä, että ohjelma on virheellinen tai keskeneräinen. Painamalla nuolta ohjelman suoritus käynnistyy ja sen voi pysäyttää kesken suorituksen painamalla nuolen oikealla puolella olevaa punaista stop-nappia. Ennen ohjelman ajamista siistimme kuitenkin paneelia vielä vähän. Kontrollit (x) ja indikaattorit (x>y?) kannattaa nimetä järkeviksi kirjain- tai sormityökalua käyttämällä. Nimeäminen tulee tehdä diagrammissa, jonka jälkeen nimenmuutos heijastuu heti paneeliin. Paneeli-ikkunassa indikaattorin päällä hiiren oikeaa nappia painamalla saa esiin valikon, josta indikaattorin ominaisuuksia ja ulkonäköä voi muokata. Valitaan valikosta vaikka Replace. Alavalikosta Boolean, koska etsimme indikaattoria nimenomaan Boolean-tyyppiselle tiedolle ja valitaan sieltä esimerkiksi 4-7
vihreä valo. Kirjoitetaan vielä kerrottavan arvoksi vaikka 3,1. Ohjelma pitäisi olla nyt valmis: Kun nyt ohjelma ajetaan painamalla nuolta, kertoo se kontrollin arvon neljällä (3.1*4 = 12.4). Seuraavaksi se katsoo, onko se suurempi kuin vakio 10 ja antaa Booleantyyppisen indikaattorin arvon true ulos. Tämän indikaattorin arvo on nyt paneelista nähtävissä vihreän valon syttymisenä. Ohjelma ilmeisesti toimii, koska valo syttyi (rinkulan vihreä väri kirkastui). 4-8
4.3. Esiselostustehtävät 1. Määrittele lyhyesti seuraavat käsitteet: - Harmoninen kokonaissärö (Total Harmonic Distortion, THD) - Laskostuminen - Signaalikohinasuhde (S/N-ratio) - FFT 2. Alla olevassa kuvassa on esitetty erään signaalin spektri. Signaalin taajuus on f ja signaalin säröytyminen näkyy f:n harmonisina taajuuksina. Signaalia näytteistetään näytteenottotaajuudella f samp. Hahmottele FFT-spektrianalysaattorin näyttämä spektri (ensimmäiset laskostuneet komponentit riittävät), kun a) f samp = 2.5 f b) f samp = 6 f 3. Tarkastellaan vielä kuvan esittämää tilannetta. Laske harmoninen kokonaissärö (THD) kuvassa esitetylle signaalille. 4. Olet rakentamassa LabView ohjelmaa ja olet juuri lisännyt ohjelmaan uuden funktion. Kerro lyhyesti kuinka saat selville mitä tuloja ja lähtöjä (inputs / outputs) kyseinen funktio tarvitsee. Amplitudi (V) 2 1 0 f 2f 3f Taajuus 4-9
4.4. Mittaukset Tarvittavat laitteet: Signaaligeneraattori Musta laatikko, joka simuloi huonoa vahvistinta Digitaalinen oskilloskooppi HP 54600 PC, jossa asennettuna LabView 5.1 ja Analysis ToolPack National Instrumentsin PCI-1200 mittauskortti (12-bit, 100 ks/s, 8 analog inputs) Työssä tutkitaan signaaligeneraattorilta syötettyä, mustan laatikon kautta kulkenutta signaalia sekä aika-, että taajuustasossa. Mittaukset suoritetaan tietokoneella, LabView mittausautomaatiojärjestelmän avulla. Signaalin näytteistämiseen käytetään National Instrumentsin PCI-1200 DAQ (Data Acquisition) korttia. 1) Käynnistä LabView 5.1. tietokoneen työpöydän kuvaketta klikkaamalla. Näytölle ilmestyy kaksi ikkunaa: kaaviokuva (Diagram) ja etupaneeli (Panel). Tarkoituksena on rakentaa virtuaali-instrumentti (VI), jonka avulla voidaan mitata mittauskortille tulevaa signaalia. Tähän käytetään Diagram-esitystä. HUOM! Tallenna ohjelma ryhmäsi nimellä heti aluksi, sekä myöhemminkin aina silloin tällöin. (Esim. C:\temp\R33.vi) 2) Tee aluksi virtuaali-instrumentti, jonka avulla saadaan näkyviin mittauskortille tulevan signaalin aaltomuoto. Virtuaali-instrumentin toteuttamiseen tarvittavat funktiot ja subvi:t löydät Windows-valikosta (Show Functions Palette) tai klikkaamalla hiiren oikeanpuoleista nappia. Valitsemasi funktiot ja subvi:t näkyvät Diagram-esityksessä ikoneina. Ikonit voidaan yhdistää toisiinsa lankakerällä joka löytyy muiden ohjelmoinnissa tarvitsemiesi työkalujen lailla Tools-paletista. Aluksi tarvitset subvi:n, jonka avulla voit kerätä tietoa mittauskortille tulevasta analogisesta signaalista. Tähän sopii esim. AI Acquire Waveform.vi, joka antaa ulostulona signaalin aaltomuodon. (AI Acquire Waveform.vi löytyy Functionspaletin valikosta Data Acquisition! Analog input). Palikan tarvitsemat sisäänmenot ja ulostulot saat selville käyttämällä Help toimintoa. Tarvittavat syötteet saat luotua osoittamalla kursorilla palikan reunaa ja klikkaamalla hiiren oikeanpuoleista näppäintä. Aukeavasta valikosta voidaan valita esim. Create Control, mikäli kyseiseen liitokseen halutaan luoda kontrolli. Tiedoksi: Channel = 1 ja Device = 2 (mittauskortti on asetettu PC:n korttipaikkaan 2) 3) Siirry seuraavaksi Panel-esitykseen, jossa näkyvät nyt mm. Diagram-esityksessä luomasi kontrollit. Voit järjestää kontrollit haluamallasi tavalla käyttäen Toolspaletin nuolta. Luo vielä näyttö (Controls palette! Graph! Waveform graph) signaalin aaltomuodon esittämistä varten. Näytön aika-akseli luodaan palaamalla Diagram-esitykseen ja käyttämällä Bundle-toimintoa (Functions palette! Cluster! Bundle). Käytä apuna Helptoimintoa ja kysy tarvittaessa apua assistentilta. 4-10
4) Kun luomasi virtuaali-instrumentti on valmis, kokeile sen toimivuutta suorittamalla seuraava mittaus: - Kytke signaaligeneraattorin ulostulo mustaan laatikkoon ja mustan laatikon ulostulo edelleen oskilloskooppiin ja I/O-korttiin (Käytä BNC T-kappaletta signaalin haaroittamiseen). Mustaa laatikkoa käytetään tässä simuloimaan huonoa vahvistinta. - Säädä oskilloskooppia apuna käyttäen signaaliksi 1 khz, 5 V pp sinisignaali. - Labview-ohjelma käynnistetään klikkaamalla ruudun vasemmassa yläkulmassa olevaa valkoista nuolta tai vaihtoehtoisesti sen vieressä sijaitsevaa Run continuously nappulaa. Mittaa signaalia tekemälläsi ohjelmalla ja vastaa vastauslomakkeessa esitettyihin kysymyksiin (Lomakkeen kohta 4.1). 5) Muokkaa tekemääsi virtuaali-instrumenttia siten, että saat näkyviin myös signaalin taajuustasoesityksen. Tämän voit toteuttaa esim. Auto Power Spectrum.vi - palikalla, joka tekee signaalille FFT-muunnoksen ja antaa ulostulona tehospektrin. (Kyseinen palikka löytyy Functions-paletin valikosta Signal Processing! Measurement). Lisää myös näyttö, jotta voit tarkastella signaalin spektriä. Näyttö ja sen aika-akseli toteutetaan samoin kuin edellä, kohdassa 3. Testaa ohjelman toimivuutta mittaamalla signaaligeneraattorilta mustan laatikon kautta tulevaa signaalia. 6) Lisää ohjelmaan vielä osa, joka laskee signaalista sen harmonisen särön (Functions-paletti! Signal Processing! Measurement! Harmonic Analyzer.vi). Toteuta tämä siten, että voit säätää laskemiseen käytettävien harmonisten komponenttien lukumäärää. 7) Kun olet tehnyt tarvittavat muutokset virtuaali-instrumenttiin, toista aiemmin tekemäsi mittaus (1 khz, 5 V pp sinisignaali mustaan laatikkoon kytkettynä), nyt kuitenkin vastauslomakkeen kohdassa 4.2. annetuilla asetuksilla. Vastaa vastauslomakkeessa esitettyihin kysymyksiin. 8) Irroita seuraavaksi musta laatikko kytkennästä ja mittaa suoraan signaaligeneraattorilta saatavaa sinisignaalia. Suorita mittaukset vastauslomakkeessa annetuilla amplitudiarvoilla (kohta 4.3). 4-11