Įvadas
Kompiuterių garso sistemos plėtojosi ir tobulėjo kartu su asmeniniais kompiuteriais (AK). Pirmieji AK turėjo tik primityvius mažos galios garsiakalbius (angl. PC Speaker) įspėjamiesiems bei diagnostiniams signalams generuoti, kurie išliko ir dabartiniuose AK. Vėliau garsui atkurti pradėti naudoti elementarūs rezistoriniai skaitmeniniai analoginiai keitikliai (SAK) „Covox“ [1], jungiami prie AK lygiagrečiojo prievado (angl. Line PrinTer – LPT). Šios priemonės buvo skirtos tik garsui atkurti, naudojant centrinį procesorių, todėl jų negalima vadinti garso sistemomis.
Kompiuterių garso sistemų istorija prasidėjo 1988 m., kai firma „Creative Labs“ pateikė rinkai pirmąją pasaulyje AK garso plokštę „Game Blaster“. Tai buvo 12 balsų stereofoninis sintezatorius (po 6 balsus kiekvienam stereokanalui), skirtas muzikiniams garsams sintezuoti.
Konstrukciškai AK garso sistema realizuojama kaip atskira garso plokštė (angl. Audio Card), įstatoma į kompiuterio vidinę ISA ar PCI magistralę arba sisteminėje plokštėje šioms funkcijoms skiriama speciali integrinė schema.
Šiuolaikinės AK garso sistemos (nekalbant apie garso kolonėles) paprastai susideda iš dviejų pagrindinių dalių: garso kodavimo ir dekodavimo įtaiso (KDĮ, angl. Codec) ir skaitmeninio valdiklio (angl. Digital Controller – DC). Šie įtaisai tarpusavyje sujungti specialia ryšio grandimi (angl. AC-link). KDĮ yra naujos architektūros AK garso sistemos pagrindinė dalis. Šiuo metu kiekvienas naujos architektūros garso sistemai skirtas KDĮ nepriklausomai nuo gamintojo turi tenkinti korporacijos Intel parengtos specifikacijos AC '97 (angl. Audio Codec ‘97 Component Specification) reikalavimus [2, 3]. Pirmoji šios specifikacijos versija buvo paskelbta 1997 m. pradžioje (AC ’97 v1.0). Šiuo metu galioja AC ’97 v2.3 (2002 m.).
Pagrindinė KDĮ funkcija – garso įrašymas ir atkūrimas per specialiai tam skirtus prievadus gali būti pritaikyta ir matavimo tikslams garsiniame dažnių ruože. Yra sukurta nemažai virtualių prietaisų: osciloskopų, generatorių, multimetrų ir kt., panaudojančių šią galimybę. Osciloskopas ir funkcinis generatorius yra ir programų pakete MATLAB. Tokių virtualių prietaisų programuotojai daug dėmesio skiria jų apipavidalinimui, mėgdžiodami realių prietaisų valdymo rankenėles, mygtukus ir kt., tuo tarpu gana svarbios funkcijos (pvz., oscilogramos kopijavimas ir dokumentacija) neretai nenumatomos. Pateiksime keletą sukurtų AK garso sistemos taikymo pavyzdžių, pasižyminčių funkcionalumu ir taikymo paprastumu.
Oscilografas
Tiriamasis signalas į oscilografą siunčiamas per AK garso sistemos linijinį arba mikrofoninį prievadą. Įėjimo įtampos amplitudė neturi viršyti atitinkamai 1 V ir 0,1 V, kitaip bus reikalingas išorinis įtampos daliklis. Šiuo metu plačiai AK taikomų garso sistemų analoginiai-skaitmeniniai keitikliai (ASK) yra 16 skilčių ir leidžia nustatyti 44,1 kHz diskretizavimo dažnį. Taigi oscilografo ekrane galima stebėti tik garsinio dažnių ruožo signalus.
Oscilografo valdymo programa sudaryta taikant MATLAB grafinę vartotojo sąsają [4]. Pagrindinę operaciją šioje programoje atlieka MATLAB funkcija, įrašanti analoginį signalą į AK operatyviąją atmintį:
čia N – įrašomų imčių skaičius; FS – diskretizavimo dažnis; CH = 1 arba 2 – įrašomų kanalų (monofoninių arba stereofoninių) skaičius; y – matricos N×CH pavidalu į operatyviąją atmintį įrašytas signalas.
Virtualus oscilografas parodytas 1 paveiksle.
Oscilograma fiksuojama standartine MATLAB funkcija „plot (t, y)“, pasirinkus signalo įvesties kanalą (kairysis, dešinysis, abu) ir skleistinės trukmę milisekundėmis. Pasirinkus atitinkamas įrankių juostos funkcijas į dokumentą gali būti įkelta tik oscilograma su koordinačių ašimis arba oscilografo bendras vaizdas, kaip parodyta 1 paveiksle.
Spektrografas
Spektras apskaičiuojamas taikant MATLAB greitosios Furjė transformacijos funkciją:
čia x – tiriamojo signalo imčių matrica; k = 2n (n – teigiamas sveikasis skaičius).
Taikant (2) funkciją, gaunama kompleksinė spektro forma, todėl prieš išvedant spektro grafiką apskaičiuojamas signalo energijos spektras:
čia yC = conj(y) – matricai y jungtinės matricos apskaičiavimo procedūra.
Atlikus šią procedūrą, gaunamas signalo energijos spektras ir nubraižomas jo grafikas.
Virtualus spektrografas parodytas 2 paveiksle.
Kaip ir oscilografe, čia taikomos tos pačios signalo įvesties ir rezultatų grafinės išvesties priemonės. Valdymo programoje numatytas dažnių diapazono, kuriame bus apskaičiuotas tiriamojo signalo spektras, pasirinkimas (2 pav.). Be to, kompiuterio ekrane pele apibrėžus norimą spektrogramos vietą, vaizdą galima padidinti kiek norima kartų.
Dažniamatis
Dažniamačio veikimo principas pagrįstas matuojamojo signalo spektrine analize. Paprastai dažnis matuojamas periodinių vienokios ar kitokios formos, taip pat ir sinusinių, virpesių, kurių spektras yra diskretusis su vyraujančia pirmąja harmonika. Pirmiausia su MATLAB procedūra (1) padaromas reikiamos trukmės matuojamojo virpesio įrašas. Signalas perduodamas į AK per garso sistemos linijinį arba mikrofoninį įėjimą. Toliau pagal (2) ir (3) apskaičiuojamas įrašyto signalo energijos spektras ir galiausiai, panaudojant didžiausios masyvo vertės suradimo procedūrą, randamas pirmosios harmonikos dažnis, kuris ir yra matavimo rezultatas.
Virtualus dažniamatis parodytas 3 paveiksle.
Matuojamųjų dažnių diapazonas priklauso nuo signalo diskretizavimo dažnio fs. Jei šis dažnis yra 44,1 kHz, matavimus galima atlikti visame garsiniame dažnių diapazone. Matavimų skiriamąją gebą Δf lemia diskretizavimo dažnis fs ir imčių skaičius N:
Esant programoje numatytiems fs = 44100 Hz ir N = 219, skiriamoji geba Δf gaunama 0,084 Hz.
Akustinis tachometras
Akustinis tachometras veikia panašiai kaip dažniamatis. Akustinis signalas priimamas mikrofonu ir įrašomas į AK operatyviąją atmintį, taikant (1) MATLAB funkciją. Toliau pasirenkamas matavimų diapazonas ir šiame diapazone, taikant (2) ir (3) MATLAB funkcijas, apskaičiuojamas signalo energijos spektras. Kadangi mechanizmų besisukančių elementų sukelti garsai yra periodinio pobūdžio, tai jų spektre vyrauja pirmoji harmonika. Šios harmonikos dažnis gali būti randamas taikant masyvo didžiausios vertės paieškos funkciją.
Virtualus akustinis tachometras parodytas 4 paveiksle.
Prieš matavimą paprastai yra žinomas diapazonas, kuriame galima tikėtis matavimo rezultato. Šis diapazonas ir nurodomas tam skirtuose akustinio tachometro langeliuose. Vienintelė sąlyga – garsas, kurį sukuria tiriamasis objektas ir kurį priima mikrofonas, turi būti vyraujantis tarp kitų garso signalų. Akustinio tachometro skiriamoji geba – 5 apsisukimai per minutę.
Savirašis
Savirašio paskirtis – akustinio tachometro rodmenų registravimas. Programoje yra numatytas matavimo diapazono, matavimų skaičiaus ir periodo nustatymas. Savirašiu galima ilgą laiką registruoti įvairių besisukančių elementų apsisukimų skaičių per minutę.
Virtualus savirašis parodytas 5 paveiksle.
Matavimai gali būti registruojami laiko intervalais nuo 30 sekundžių iki kelių valandų. Savirašio skiriamoji geba – 5 apsisukimai per minutę.
Išvados
- Taikant AK garso sistemas ir MATLAB programų paketą, sukurtas garsinio dažnių diapazono oscilografas, spektrografas, dažniamatis, akustinis tachometras ir savirašis.
- Sukurtos programos turi patogų grafinį vartotojo interfeisą.
- Oscilografo, spektrografo, dažniamačio, akustinio tachometro ir savirašio rodmenys gali būti dokumentuojami tiek bendruoju vaizdu, tiek vien grafikais.
Literatūra
- Радзишевский А. Компьютерная обработка звука. – М.: Нолидж, 2000. – 240 с.
- Смирнов Д. В., Логутенко О. И. Аппаратные средства мультимедиа. Аудиосистема PC. – СПБ: БХВ – Санкт- Петербург, 1999. – 384 с.
- Audio Codec '97. Revision 2.3. Intel Corporation. All rights reserved. April, 2002.
- Creating Graphical User Interfaces. Version 1. The MathWorks Inc. All rights reserved. November, 2000.
G. Gražulevičius, A. Gražulevičius. Asmeninio kompiuterio garso sistemos taikymas elektroakustiniams signalams ir mechaniniams virpesiams tirti // Elektronika ir elektrotechnika. – Kaunas: Technologija, 2003. – Nr. 7(49) – P.44–46.