Technológie |
Návrh riešenia
Už sme poukázali na to, že najväčšie rozdiely signálov
existujú v oblasti zhruba do 100 Hz. Preto je vhodné vyfiltrovať
vstupný signál tak, aby sa v ňom nevyskytovali frekvenčné
zložky vyššie ako 100 Hz. Preto prvým krokom v algoritme riešenia
je návrh číslicového filtra. Pri vyberaní typu filtra sme sa
nakoniec rozhodli pre eliptický číslicový filter. V programovom prostredí MATLABu 5.2 sme navrhli eliptický číslicový
filter (viď zdrojový kód).
Vzhľadom na zadané parametre (zlomová frekvencia 100 Hz, potlačenie
signálu -50 dB), MATLAB navrhol eliptický číslicový filter
siedmeho rádu. Následne boli oba vstupné signály vyfiltrované.
Keďže analógovo-digitálne prevodníky majú nevyhovujúcu
frekvenčnú charakteristiku, musí byť ich frekvenčné spektrum
korigované. Korekcia frekvenčného spektra sa dosahuje pomocou rôznych
okien. Najvhodnejšie okno je Hammingovo. Každá časť analyzovaného signálu je upravená pomocou tohto okna. Následne sa
vypočítavajú jednotlivé frekvenčné spektrá
zmiešaného signálu. Tieto frekvenčné spektrá
(zmiešavací krok je 10%) sa potom dávajú na vstup štvorvrstvovej
neurónovej siete so štruktúrou 101-75-25-1, pričom ako cieľové
hodnoty sa dáva miera zmiešania čistého a chybového
signálu.
Po príprave trénovacích dát a naučení neurónovej
siete sa pomocou druhého programu pripravia testovacie dáta. Tie sú
pripravené s päťkrát menším krokom (zmenou parametra
steps sa dá krok meniť). Tieto testovacie dáta sú
vložené na vstup neurónovej siete a následne sú
vizualizované výsledky. Tie možno vidieť na nasledujúcich
grafoch.
graf 05
výstup z neurónovej siete pri testovacích dátach s
krokom 2.0 %
graf 06
výstup z neurónovej siete pri testovacích dátach s
krokom 1.0 %
graf 07
výstup z neurónovej siete pri testovacích dátach s
krokom 0.5 %
Je možné vidieť, že do zmiešavacieho pomeru 10% je výstup siete
relatívne neistý, avšak ohraničený hodnotou 0.1. Od hodnoty
zmiešavacieho pomeru 0.1 je výstup siete "istejší" pričom je
vidieť takmer lineárny nárast hodnôt produkovaných
neurónovou sieťou. Oblasť lineárneho rastu končí zhruba pri
hodnote zmiešavacieho pomeru 0.9. Vzhľadom na to, že pri takomto pomere je
prítomné vážne poškodenie prevodovkovej skrine, nie je
dôležité aby výstup neurónovej siete bol lineárny. Teda
môžeme tvrdiť, že v oblasti stálych otáčok nami
navrhnutá neurónová sieť spoľahlivo hodnotí
zmiešavací pomer čistého a chybového signálu.
Záver
Navrhnuté riešenie dokáže spoľahlivo identifikovať
poškodenie prevodovkovej skrine už pri náznakoch poškodenia.
Nedokáže sa však zatiaľ prispôsobovať okolitým podmienkam,
napríklad pracovným otáčkam prevodovkovej skrine. Týmto sa pred
nás dostáva ďalšia úloha a výzva : navrhnúť a
simulovať spôsob adaptácie neurónovej siete vzhľadom na
aktuálne pracovné otáčky prevodovkovej skrine.
Návrh adaptácie diagnostického systému
Pri adaptácii diagnostického systému v reálnom čase sa dostávame k niekoľkým problémom.
Prvým je aspoň čiastočná stabilizácia otáčok prevodovkovej skrine na
určitý čas. V prípade, že nemôže dôjsť aspoň občas k
stabilizácii otáčok na určitú úroveň, je tento problém pomocou nami navrhnutého
riešenia s neurónovou sieťou neriešiteľný. Avšak aj v prípade, že
môžeme občas stabilizovať pracovné otáčky prevodovkovej skrine, nie je
adaptácia celého systému jednoduchá. Vzhľadom na to, že nechceme použiť
žiadne iné detekčné nástroje (ako napríklad snímače otáčok, ktoré by sa
museli montovať do prevodovkovej skrine), musíme detekovať pracovné otáčky vo
zvukovom signáli. Pracovné otáčky vo zvukovom signály zvyčajne detekujeme ako
maximálnu výchylku vo frekvenčnom spektre. Pri použití konštantnej frekvencie
vzorkovania (tým pádom máme rovnaký počet vzoriek za časovú jednotku) sa bude poloha
maximálnej výchylky vo frekvenčnej oblasti posúvať. Označme nové pracovné
otáčky ako fnew a staré pracovné otáčky ako fold. Potom je nutné zmeniť
frekvenciu vzorkovania v pomere fnew/fold a zmeniť dĺžku časovej jednotky
v pomere fold/fnew . Prečo je to nutné? Nutnosť tejto zmeny vyplýva z toho, že
do neurónovej siete potrebujeme vložiť rovnaký počet vstupov ako pri učení.
Keďže týmito vstupmi boli jednotlivé frekvencie z frekvenčného spektra s
definovaným odstupom frekvencií, je potrebné zachovať aj počet analyzovaných vzoriek,
aj odstup frekvencií vo frekvenčnom spektre. Napríklad predpokladajme, že fold=11025 Hz
a že nové pracovné otáčky sú fnew = 14700Hz. Teda pri frekvencii 11025 Hz za jednu
sekundu zbierania dát získame 11025 vzoriek, pri frekvencii 14700 Hz analogicky 14700 vzoriek.
V prípade, že zoberieme všetkých 14700 vzoriek do analýzy, tak sa zmenia odstupy
medzi frekvenciami vo frekvenčnom spektre z pôvodných 1 Hz na 0.75 Hz. Analogicky dôjde
k zmene časovej jednotky, ak pristúpime k zníženiu počtu vzoriek z pôvodných
14700 na 11025. Vzhľadom na čo najväčšie zachovanie parametrov, ktoré boli
pri učení neurónovej siete, je potrebné meniť aj frekvenciu vzorkovania, aj
časovú jednotku. Teda v našom ilustračnom príklade dôjde k zvýšeniu
vzorkovacej frekvencie v pomere fnew/fold=4/3 a k zníženiu časovej jednotky v pomere
fold/fnew=3/4. Potom budú v čo najväčšej miere zachované podmienky, aké boli pri
učení neurónovej siete.
Kompletnú dokumentáciu si môžete stiahnuť vo formáte PDF, alebo
vo formáte TEX: [indigo.pdf]
[indigo.tex].
|
optimalizované pre rozlíšenie 1024x768
© 2002 :NDIGo
|
|
|