XXIX. ASR '2004 Seminar, Instruments and Control, Ostrava, April 30, 2004
105
Dynamic Flow Detectors and Some Potential Chances for Their Realization Dynamické průběhové detektory a některé potenciální možnosti jejich realizace JIRKŮ, Jaroslav Ing.,
Integrovaná střední škola Purkyňova 97, 612 00 BRNO
[email protected]
Abstrakt: Příspěvek se zabývá otázkou dynamické průběhové detekce jakožto prakticky jediné možnosti určení odchylky v chování některých systémů od „normálního“ chování, které tyto systémy vykazují v normálním stavu. Uvádí dále, jakým způsobem by bylo možno případně realizovat několik typů dynamických detektorů a zavádí pojem „edukativní detektor“, čímž je míněn takový typ dynamického detektoru, který je možno „natrénovat“ na takové chování sledovaného systému, které považujeme za „správné“. Nadto se příspěvek zmiňuje i o vlastní definici detektoru v měřící praxi a uvádí její vymezení. Klíčová slova: dynamický detektor, edukativní detektor, trénování detektoru
1 Definice detektoru Pokud se chceme zabývat otázkou dynamického detektoru, je nezbytně nutné především definovat vlastní pojem detektor, protože v dostupné literatuře není tento pojem dostatečně specifikován a v několika případech se jednotlivé definice navzájem vylučují. V mnoha případech je nadto zaměňován s pojmem demodulátor (především v oblasti sdělovací techniky), čímž se zmatek jen zvyšuje. Považujeme proto za nutné uvést definici detektoru v takovém tvaru, aby bylo jednoznačně možno stanovit, co je detektor a co již detektorem není. Pokud se podíváme po analogiích v jiných oborech, nejblíže námi uvažované definice detektoru je patrně především ve strojírenství již dlouho známý kalibr, jakožto zařízení nebo měřidlo, určující, zda výrobek splňuje určitou toleranci či nikoli. Toto určení je relativně jednoduché a především jednoznačné, to znamená, že výrobek požadovanou toleranci buďto splňuje anebo ji nesplňuje. Není možný jiný stav. Pro naše účely je pochopitelně nutné vygenerovat dostatečně vypovídající definici pojmu detektor, která by ovšem měla tu základní vlastnost, že na jejím základě bude možné jednoznačně stanovit co detektor je a co detektor není. Současně tato definice musí být dostatečně široká a pružná, aby pokrývala co nejširší možné spektrum případných detektorů. Ukazuje se, že nejdůležitější vlastností detektorů, na rozdíl od jiných, především měřících systémů, je jejich logický výstup. Na výstupu detektoru totiž není možná jiná informace než ano nebo ne. (Toto se pochopitelně týká pouze jednodimenzionálních detektorů, u vícedimenzionálních je možno mít i více výstupních informací, jak bude uvedeno dále). Základní funkce, kterou detektor provádí, je potom porovnávání. Z výše uvedeného tedy vyplývá následující definice detektoru: Detektor je instrument, provádějící porovnání vstupní veličiny s normovou veličinou. Jeho výstupem je logická hodnota. Za hodné pozornosti v této definici považuji především to, že normová veličina nemusí být konstanta, jak se mylně mnoho lidí obvykle domnívá. To znamená, že normová veličina
XXIX. ASR '2004 Seminar, Instruments and Control, Ostrava, April 30, 2004
106
se může měnit buďto v čase, nebo v závislosti na parametrech nebo jiné veličině a případně oběma způsoby.
2 Dynamický detektor Dynamický detektor je takový typ detektoru, který pro vyhodnocování průběhu vstupní veličiny používá dynamický průběh normové veličiny, to znamená, že v daném okamžiku a situaci je vstupní hodnota porovnávána s normovou hodnotou, která přináleží danému okamžiku a situaci. Prakticky je tedy možné konstatovat, že průběh vstupní veličiny je dynamicky porovnáván s normovým průběhem, který je získáván z paměti samotného detektoru. Tento průběh může probíhat jak v čase, tak v závislosti na jiných veličinách, případně oběma způsoby. V obecném případě se můžeme dostat do situace, že vstupní veličinu budeme porovnávat s normovou veličinou, získanou jako výsledek kombinace dalších vstupních podmínek a případně i času. Pojem dynamický detektor je poněkud zavádějící a možná by v některých případech bylo lépe používat pojmu funkční, resp. multiparametrický detektor. Je však pravda, že ve většině případů je pojem dynamické detekce dostatečně názorný. Určitým problémem by se mohlo stát nastavování takovéhoto detektoru, protože pro každou možnou vstupní kombinaci můžeme obecně nastavit jinou požadovanou velikost vstupní proměnné. Abychom mohli tento problém co nejlépe vyřešit, můžeme použít metody trénování detektoru, kdy vlastně do „čistého“ detektoru „nahráváme“ požadovaný průběh sledované vstupní veličiny. Není to ovšem jediná možnost, jak bude uvedeno dále. V mnoha případech je totiž vlastní „trénování“ takovýmto způsobem buďto nemožné, nebo příliš zdlouhavé a v takových případech by bylo obvykle vhodné použít jiné metody, jak nastavit detektor k detekování „správnosti“ požadovaného průběhu či děje. Pro zjednodušení budeme dále uvažovat pouze tu skupinu dynamických detektorů, která provádí detekci podobnosti průběhu sledované veličiny v čase, čili pouze vlastní dynamické detektory a skupinu detektorů, vyhodnocujících závislost na jiné veličině, případně kombinaci veličin ponecháme prozatím stranou (jejich řešení je obdobné). Zde můžeme uvažovat dvě základní skupiny dynamických detektorů, a to jednak ¾ Detektory, uchovávající v paměti „vzorový“ průběh sledované veličiny, přičemž povolená tolerance zůstává konstantní ¾ Detektory, uchovávající v paměti průběh povoleného tolerančního pole sledované veličiny, což znamená, že jeho šířka se může velmi výrazně měnit. Pokud bychom uchovávali v paměti celý „vzorový“ průběh sledované veličiny, je velmi jednoduché provést záznam tohoto průběhu, jelikož to vlastně nevyžaduje žádné výpočetní zpracování signálu, který je zaznamenáván. Jediné, co je nutné provést je tedy normalizace signálu, což znamená, že vstupní signál musíme upravovat tak, aby svým rozsahem co nejlépe využíval možný rozsah vstupních hodnot použité paměti. Také je nutné, abychom zaznamenávaný signál ošetřili z hlediska kmitočtového tak, aby vyhověl požadavkům použité paměti (pokud je to samozřejmě možné a potřebné). V případě, že bychom chtěli použít dynamický detektor, ve kterém jsou zaznamenány jen průběhy tolerančních polí „správného“ vstupního signálu, jsou na něj kladeny zcela jiné požadavky. V první řadě za normálních okolností nebude možné tento typ detektoru „natrénovat“ pomocí „správného“ vstupního signálu (s nepříliš četnou možnou výjimkou statistického trénování), ale bude nejspíše nutné zadávat vstupní data získaná jiným způsobem. V druhé řadě však můžeme považovat za výhodu to, že obvykle se toleranční pole nevyznačují příliš vysokofrekvenčními změnami, takže lze úspěšně předpokládat, že kmitočtové nároky, kladené především na reprodukci zaznamenaného tolerančního pole budou podstatně nižší, než v případě záznamu reálného vstupního signálu. V obou případech potom jako vlastní vyhodnocovací člen, který určuje, zda sledovaný signál leží v povoleném rozsahu, je použitelný prostý komparátor. Pokud bychom však chtěli
XXIX. ASR '2004 Seminar, Instruments and Control, Ostrava, April 30, 2004
107
vyhodnocovat složitější situace, potom bude nezbytné rozšíření komparátoru o další logické členy.
3 Edukativní detektor Edukativní detektor je takový typ detektoru, který můžeme připravit pro jeho funkci metodou „trénování“, to znamená, že tento typ detektoru obsahuje paměť, do které můžeme ukládat natrénovaný děj, respektive natrénovaný průběh. Jeho základem je tedy paměť, kterou využijeme pro toto uložení. Pro dynamické detektory je potom velmi důležitý jejich vnitřní zdroj reálného času, protože s jeho stabilitou stojí a padá celá metoda dynamické detekce. Není, alespoň principiálně, možné provádět dynamickou detekci bez dostatečně stabilního zdroje vnitřního času vlastního detektoru. (Prakticky lze tento problém v určitých případech obejít využitím metody „zavěšení“ detektoru přímo na sledovaný děj. Zde je pak postačující jen krátkodobá stabilita, která bývá obvykle dostačující.) Je principiálně možné syntetizovat relativně velké množství typů edukativních detektorů (více viz má disertační práce), které používají různé metody „trénování“ a také mají různou vlastní strukturu. Nejpodstatnější částí každého detektoru tohoto typu je především paměť, do které se ukládá „vzorový“ průběh, resp. dynamické toleranční pole sledovaného průběhu. Tato paměť v mnohém určuje dosažitelné parametry tohoto typu detektoru, především co se týká přesnosti a dynamických parametrů. Ukazuje se, že vlastní paměť detektoru je mnohem náročnějším prvkem než samotný vyhodnocovací člen, kterým může být i pouhý komparátor. Pokud však máme vyřešený problém paměti „natrénovaného“ průběhu, potom samotná konstrukce dynamického detektoru edukativního typu je relativně jednoduchá. V základě můžeme navrhnout dva poddruhy dynamických detektorů tohoto typu, a to jednak detektor s konstantním kmitočtem oscilátoru a dále detektor s nekonstantním kmitočtem oscilátoru. V prvním případě, to je u dynamického detektoru s konstantním kmitočtem oscilátoru provádíme takový vyhodnocování sledovaného děje, kdy je pro nás rozhodující nejen to, že dosahuje určitých hodnot, které vytváří nějaký průběh, ale i to, aby tento průběh byl přesně časově definovaný. Typickým případem takového vyhodnocování je sledování odezvy nějakého systému na jednotkový skok či obdobný přechodový děj. V takovém případě je základním problémem určit dostatečně přesně okamžik spuštění časové základny detektoru (pochopitelně za situace, že oba průběhy jsou dostatečně znormované) a můžeme ihned vyhodnocovat, jestli sledovaný průběh odpovídá „natrénovanému“ nebo neodpovídá. Tento typ dynamického detektoru je relativně velmi jednoduchý. Podstatně složitější je druhý typ, který nepoužívá konstantní kmitočet své časové základny, ale je určitým způsobem „zavěšen“ na sledovaný děj. Zde můžeme s výhodou použít metody vloženého zpoždění signálu, případně i několikanásobného, takže můžeme vždy určovat minimum odchylky mezi „vzorovým“ a reálným signálem a podle toho, ve kterém okamžiku nastává minimální odchylka, poněkud poupravit kmitočet vlastní časové základny, abychom tuto odchylku minimalizovali. Současně můžeme stanovit určité omezující parametry, jimiž se může řídit maximální povolená změna kmitočtu časové základny, čímž se opět ovlivní vlastní vyhodnocování shody nebo neshody sledovaného a „natrénovaného“ průběhu. Nevýhodou tohoto typu detektoru je ovšem to, že na svém výstupu neposkytuje signál v reálném čase, ale se zpožděním, daným právě maximálním povoleným „rozkmitem“ frekvence časové základny a jejím okamžitým kmitočtem. Toto zpoždění však již z principu není konstantní. To znamená značnou překážku, pokud bychom tento typ dynamického edukativního detektoru chtěli použít jako součást nějaké regulační smyčky. Pokud bychom jej však chtěli použít např. v oblasti diagnostiky, potom by uvedené zpoždění nebylo na závadu.
XXIX. ASR '2004 Seminar, Instruments and Control, Ostrava, April 30, 2004
108
4 Paměť natrénovaného průběhu Jak se ukazuje, nejdůležitější součást, to je vlastní paměť „natrénovaného“ průběhu, musí splňovat mnoho někdy i značně protichůdných požadavků. Nároky na ni jsou však spíše technologické. Tato paměť musí být především schopna v sobě udržet „natrénovaný“ průběh s dostatečnou přesností po dostatečně dlouhou dobu; dále musí být relativně snadno dostupná (a nejlépe i levná, pokud bychom chtěli realizovat větší množství takovýchto detektorů – pokud by však došlo k sériové výrobě, automaticky by došlo i ke zlevnění). Dále musí vyhovovat požadavku na snadnost uložení průběhu a musí mít i odpovídající dynamické parametry. Z velkého množství zkoumaných možností se jako nejschůdnější v této chvíli ukazuje cesta použití takové paměti, kde by byl „trénovaný“ průběh uložen v digitální podobě a na vstupu a výstupu paměti by pak byl A/D a D/A převodník. Nepřesnost a nespolehlivost, vnesená těmito převodníky, jakož i vlastní digitalizací signálu jsou přesvědčivě kompenzovány dostupností a snadnou obsluhou takovýchto pamětí. Určitou nevýhodou je ovšem ta skutečnost, že při použití digitální paměti většinou ztrácíme některé význačné špičkové hodnoty, které jsou v některých případech součástí „vzorového“ průběhu. Je proto nutné uvážit, do jaké míry by nám tato ztráta mohla vadit. Ve většině případů ovšem můžeme na vstupu detektoru zařadit dolní propust, která vydatně omezí možnost výskytu podobných špiček. (Pokud bychom naopak za rozhodující považovali tyto špičky, mohli bychom s výhodou využít třeba špičkových detektorů) V případě sériové výroby jednoho typu detektoru ovšem není nezbytně nutné používat paměť, jejíž obsah je možné změnit a v mnoha odvětvích by bylo dostačující použití paměti typu PROM, kde by se například detektor mohl stát součástí finálního výrobku a sloužil by jen k bezdemontážní diagnostice poruch v chování daného výrobku. Je možno pochopitelně uvažovat mnohem větší množství variant použití dynamického a edukativního detektoru.
5 Možnost realizace Dynamický a edukativní detektor by bylo možné realizovat v některých případech relativně snadno. Převážná většina potřebných komponent je dnes komerčně dostupná, i když někdy by patrně bylo nutno se v požadavcích přizpůsobit, protože jejich původní určení je v úplně jiném segmentu trhu – jde převážně o výpočetní a komunikační oblast. Potěšující je především velké množství široce dostupných a dostatečně rychlých A/D a D/A převodníků, nabízených mnoha dodavateli. Poněkud problematická je ovšem dostupnost nonvolatilních pamětí RAM, ale snad i zde brzy dojde ke změnám k lepšímu. Pro realizaci dynamického detektoru potřebujeme: • Vstupní obvody. Ty můžeme použít libovolné, např. z osciloskopu či podobného zařízení. • Paměť „natrénovaného“ průběhu. Ve většině případů zde vystačíme s paměťmi typu FRAM, původně od firmy Ramtron, které jsou nonvolatilní a mají dostatečnou kapacitu. Pro některé aplikace pochopitelně můžeme využít i jiné typy pamětí (FLASH EEPROM, EEPROM atd.), v některých speciálních případech potom jednoduchá PROM. • Převodník D/A zapojený za pamětí. Tady je nabídka na trhu velmi široká a i parametry nabízených převodníků ve všech směrech přesahují případné požadavky. • Vyhodnocovací komparátor. Komparátorů samotných je dostatek ve všech provedeních, zde může nastat problém v té souvislosti, že mnohdy není postačující pouhá komparace, ale musíme provádět déletrvající vyhodnocování odchylek. Zde by bylo nutno pravděpodobně instalovat analogové integrátory, resp. celou analogovou vyhodnocovací síť i s jejími případnými nectnostmi (malá stabilita nuly a podobně – i když v současnosti je možno získat i takové analogové součásti, u kterých jsou tyto nectnosti dostatečně potlačeny).
XXIX. ASR '2004 Seminar, Instruments and Control, Ostrava, April 30, 2004
109
•
Generátor časové základny v podstatě není až takový problém. Krystalem řízené oscilátory se vyznačují dostatečnou stabilitou pro potřebu dynamického detektoru a naopak není problémem syntetizovat řízené oscilátory (například s pověstným obvodem 555), které jsou řiditelné v dostatečném rozsahu a s dostatečnou přesností a stabilitou. • Obvody dolních propustí v podstatě nepředstavují žádný závažný problém, mj. i proto, že jsou nabízeny dokonce v integrované podobě (firma Burr-Brown, nyní již Texas Instruments) s vyhovujícími parametry. • Pro edukativní dynamický detektor potom pochopitelně potřebujeme také A/D převodník s odpovídajícími parametry, kterých je ovšem na trhu dostatečný výběr. Jak je z uvedeného vidět, případné realizaci dynamického edukativního detektoru by vlastně nic nemělo stát v cestě. Podotýkám, že startovací a spoušťové obvody jsou zahrnuty do obvodů vstupních.
6 Vícedimensionální detektory V některých případech se můžeme dostat do situace, kdy nám sledování chování nějakého systému jen z hlediska jednoho parametru nestačí. Takové případy jsou poměrně pravděpodobné a je proto nutné uvažovat, jak v takové situaci je možno využít principu dynamické edukativní detekce. Ukazuje se, že v této situaci můžeme použít několika řešení: • Metoda logických podmínek. V tomto případě je součástí detektoru i logická síť, která vyhodnocuje splnění požadované kombinace logických podmínek a podle nich potom vlastní zkoušku provede nebo neprovede. • Metoda logických parametrů. Zde je výsledkem činnosti logické sítě výběr „odpovídajícího“ natrénovaného průběhu z několika možností, předem definovaných. Výsledek činnost takového detektoru je ovšem podmíněný, to znamená, že můžeme podat zprávu buď o nesprávném chování – ta je jednoznačná; nebo můžeme vydat zprávu, že s touto kombinací parametrů se systém chová správně – nemůžeme rozhodnout, zda při jiné kombinaci se nebude chovat nesprávně. Zde je tedy kladný výsledek testu pouze podmíněný. • Metoda více proměnných. Tato metoda je nejsložitější z hlediska „tréninku“ detektoru, protože v extrémním případě vyžaduje uložení n-rozměrového modelu „správného“ chování a potom porovnávání skutečného děje s tímto modelem. V praxi obvykle není možné uložit (a ani vyrobit) takovýto model analogovým způsobem, jsme zde tedy odkázáni na metody číslicového modelování a celý problém přerůstá rozumné meze. Zde je spíše vhodné uvažovat kombinaci většího množství dynamických detektorů, které by vhodným způsobem spolupracovaly. Z uvedeného vyplývá, že při rozšíření dynamického edukativního detektoru na větší počet vstupních hodnot mohou nastat značné komplikace a to nejen z hlediska jednoznačnosti dosaženého výsledku, ale také z hlediska vlastní konstrukce. Je ovšem třeba uvážit, že ve většině případů je počet „správných“ nebo „povolených“ stavů a chování značně omezený v porovnání se všemi možnými situacemi, takže výše uvedený „model“ chování není až tak složitý a při vlastním vyhodnocování by patrně postačilo jen uložení některých hodnot pro přijatelné kombinace vstupních parametrů s tím, že zbývající hodnoty by byly získávány interpolací – domnívám se, že tato metoda je v tomto případě přijatelná.
7 Závěr Jak z výše uvedeného vyplývá, je možné v případě potřeby vyrobit takový typ detektoru, který by byl schopen dynamicky vyhodnocovat, zda sledovaný průběh nějaké veličiny (obecně děj) odpovídá tomu, jak se domníváme, že by probíhat měl. Můžeme zde využít
XXIX. ASR '2004 Seminar, Instruments and Control, Ostrava, April 30, 2004
110
vlastního dynamického detektoru, jehož výstupem je informace o tom, zda sledovaný děj splňuje požadovaný průběh, resp. závislost, či nikoli. Aby nevznikaly problémy s nastavováním dynamických mezí uvedeného detektoru, je možné vyrobit tento detektor jako edukativní, to znamená, že je možné jej „natrénovat“ na „správný“ průběh sledované veličiny a potom vyhodnocovat odchylky od tohoto průběhu. Dále je možné do paměti dynamického detektoru uložit pouze průběh povolených tolerančních mezí a sledovat, zda děj probíhá v rámci těchto mezí. Zde je vhodné mluvit spíše než o trénování o nastavování mezí jinou metodou – nejlépe výpočtem. Jistá oblast, která by si vyžadovala hlubšího řešení je oblast konečného vyhodnocování, kde musíme nejen určovat velikost okamžité odchylky, ale především určit míru podobnosti „natrénovaného“ a reálného děje. Dále je zde potřeba provést hlubší rozbor požadovaných kritérií nejen na podobnost obou dějů, ale i na vlastní chování hodnoty odchylky. Sumárně je možno říci, že oblast dynamické průběhové detekce je velmi perspektivní oblastí především z hlediska možností jejího využití v bezdemontážní diagnostice funkčních celků, kde umožňuje detekovat možné poškození některé ze subkomponent na základě pozorování chování celého celku. Dále je velmi perspektivní také její využití v průběhu laboratorních testů, především pro vyhodnocování jejich hodnověrnosti. A konečně je možné dynamické průběhové detektory použít všude tak, kde se při provozních zkouškách nyní užívá metoda zápisu sledovaného děje a následné vyhodnocení tohoto zápisu obvykle kvalifikovaným pracovníkem.
Obrázek 1
8 Použitá literatura AMD. Flash Memory Products 1999 Data Book / Handbook. Sunnyvale USA: Advanced Micro Devices Inc., 1999. 976 s. ATMEL. 16K (2K x 8) Parallel EEPROMs AT28C16. San Jose USA: Atmel Corporation, 1999. 12 s. CATALYST SEMICONDUCTOR. 1996/1997 Data Book. Sunnyvale USA: Catalyst Semiconductor Inc., 1996. 398 s. ISD. Data Book Voice Recording and Playback Ics. San Jose USA: Information Storage Devices Inc., 1997. 554 s. JIRKŮ, J. Disertační práce. Brno, 2004. Rozepsané. JRC (JAPAN). C-MOS LSI semiconductor Databook 98‘-99‘. Tokyo JAPAN: New Japan Radio Co., LTD., 1998. 467 s. MAXIM. Product Selector Guide Winter 2001. Sunnyvale USA: Maxim Integrated Products Inc., 2001. 250 s.
XXIX. ASR '2004 Seminar, Instruments and Control, Ostrava, April 30, 2004
111
MICRON. 1998 Flash Memory Data Book. Boise USA: Micron Quantum Devices Inc., 1998. 540 s. NATIONAL SEMICONDUCTOR. Operational Amplifiers Databook 1995 Edition. Santa Clara USA: National Semiconductor Corporation, 1995. 1312 s. OKI. ´97 Electronic Devices Databook MICROCONTROLLER (8/16-Bit). Tokyo JAPAN: Oki Electric Industry Co., Ltd., 1996. 512 s. RAMTRON INTERNATIONAL CORPORATION. FRAM memory products. Colorado Springs USA: Ramtron International Corporation, 1996. 75 s. SOHIE, G.R.L. & CHEN, W. Implementation of Fast Fourier Transforms on Motorola´s Digital Signal Processors. Phoenix USA: Motorola Inc., 1993. 160 s. TEXAS INSTRUMENTS. Amplifiers and Comparators Data Book. Owensville USA: Texas Instruments Incorporated, 2000. 648 s. TEXAS INSTRUMENTS. Data Acquisition Circuits Data Book. Owensville USA: Texas Instruments Incorporated, 1998. 1474 s. TEXAS INSTRUMENTS. Designer´s Guide CD-ROM February 2000. Scotts Valley USA: Texas Instruments Incorporated, 2000. 640 MB. XICOR. Xicor Data Book. Milpitas USA: Xicor Inc., 1996. 892 s.