Popis řešení projektu první etapa řešení: červenec
Transkript
projekt MŠMT č. 2C06031 e-Golem: lékařský výukový simulátor fyziologických funkcí člověka jako podklad pro e-learningovou výuku medicíny akutních stavů Popis řešení projektu první etapa řešení: červenec-prosinec 2006 BAJT servis spol. s r.o. Praha leden 2007 I. Cíle projektu a jejich zdůvodnění Cílem projektu je vytvoření lékařského výukového simulátoru fyziologických funkcí člověky, sloužícího jako podkald pro e-learningovou výuku medicíny akutních stavů Simulátor by názornou cestou prostřednictvím Internetu s využitím simulačních modelů pomohl vysvětlit funkci jednotlivých fyziologických systémů a příčiny a projevy jejich poruch zejména pro pochopení patogenezy akutních stavů, kdy na přemýšlení není mnoho času a chyba lékaře má fatální důsledky. V interaktivních výukových programech využívajících simulační hry dnes nachází své uplatnění staré Komenského krédo – "škola hrou". Spojení multimediálního prostředí, sloužícího jako zvukové a vizuální uživatelské rozhraní, se simulačními modely totiž umožňuje názorně si "osahat" vykládaný problém ve virtuální realitě. Simulační hrou je možné bez rizika otestovat chování simulovaného objektu – např. zkusit přistávat virtuálním letadlem či léčit virtuálního pacienta nebo, jako v případě navrhovaného projektu, otestovat si chování jednotlivých částí respiračního systému, oběhového systému, vylučovacího systému apod. Obdobně, jako je teoretickým podkladem letového simulátoru více méně realistický model letadla, je v pozadí lékařského simulátoru model lidského organismu (resp. nějakého jeho subsystému). Tematika navrhovaného projektu proto využívá výsledků na našich pracovištích řešené výzkumné problematiky vytváření formalizovaného popisu fyziologické reality - tj. převedení popisu biologické reality a příslušné sítě vztahů z čistě slovní deskripce na formalizovaný popis v jazyce matematiky. Je třeba poznamenat, že tato problematika je poměrně nová, protože z důvodů složitosti a komplexnosti biologických systémů byl proces formalizace biomedicínských systémů (ve srovnání s jinými obory, např. s fyzikou) relativně opožděn a přichází až s kybernetikou a výpočetní technikou. Tak jako teoretická fyzika se snaží interpretovat výsledky experimentálního výzkumu ve fyzikálních vědách, tak i nový fyziologický směr základního výzkumu, nazývaný někdy "integrativní fyziologie", se snaží o formalizovaný popis vzájemného propojení fyziologických regulací. Metodickým nástrojem jsou zde počítačové modely. Aktivity v této oblasti se snaží koncentrovat i mezinárodní projekt PHYSIOME (http://www.physiome.org) s nímž tématicky úzce souvisel i výzkumný záměr MSM 11110008, řešený v letech 1999-2004 na našich pracovištích. Jeho výsledkem jsou simulační modely fyziologických funkcí. Multimediální simulátor fyziologických funkcí, vytvářený v tomto projektu navazuje na vědecké výsledky dosažené řešením výzkumného záměru a srozumitelnou formou (pomocí multimediálních pohyblivých interaktivních animací) je zpřístupňuje studentům a učitelům všech lékařských fakult. V současné době je koncipován celoevropský projekt EUROPHYSIOME (http://www.europhysiome.org/), do jehož přípravy se bychom se ve spolupráci s akademickým pracovištěm (Univerzitou Karlovou nebo ČVUT) rádi zapojili. II. Postup řešení, koncepční a metodické přístupy řešení projektu II.1 Tvorba simulačních modelů jako teoretický základ řešení projektu Při vytváření lékařských simulátorů a simulačních komponent pro vytvářené programy počítačem podporované výuky je nutno řešit dva typy problémů: 1. Tvorba simulačního modelu – vlastní teoretická výzkumná práce, jejímž podkladem je formalizace fyziologických vztahů vyjádřená matematickým modelem. V našem případě byla tato problematika řešena v rámci výzkumných grantů a výzkumného záměru. 2. Tvorba vlastního multimediálního simulátoru, resp. tvorba výukového programu využívající simulační hry – je praktická aplikace teoretických výsledků, která navazuje na výsledky řešení výzkumu. Podkladem simulátoru jsou vytvořené (a verifikované) matematické modely. Pro každou z těchto úloh je ale vhodné používat adekvání vývojářské nástroje. Na základě analýzy, kterou jsme provedli jsme se rozhodli pro tvorbu simulačních modelů využívat Simulink a Matlab americké firmy Mathworks, které nám umožňují postupně sestavovat simulační model z jednotlivých komponent – tzv. softwarových simulačních čipů (obr.1 a obr. 2). Při řešení rozvojového programu jsme vytvořili knihovnu fyziologických modelů v prostředí Simulink-Matlab, ve formě "simulačních čipů", která byla teoretickým podkladem pro vytváření výukových simulačních modelů (obr. 3). Obr. 1 Ukázka simulačního čipu (v daném případě na obrázku vpravo reprezentujícího simulační model, který je podkladem pro simulátor GOLEM). V prostředí Simulinku je možno snadno otestovat jeho chování – k jednotlivým "vstupním pinům" lze přivést vstupní hodnoty (nebo průběhy hodnot) a od "výstupních pinů" na virtuálních displejích či osciloskopech odečítat výstupy, resp. časové průběhy výstupů. Obrázek vlevo zobrazuje vnitřek tohoto čipu. Jeho struktura připomíná elektrickou síť s propojenými integrovanými obvody, které v daném případě reprezentují simulační čipy nižší hierarchické úrovně. V následujícím obrázku 2 je znázorněn obsah čipu "Blood Acid Base Balkance" Simulační nástroje firmy Mathworks jsou však určeny pro specialisty a příliš se nehodí pro běžného uživatele, který si chce se simulačním modelem jen "pohrát". I když v prostředí těchto nástrojů je možné naprogramovat poměrně příjemné uživatelské rozhraní k ovládání vytvořeného modelu, pro účely uplatnění simulačního modelu ve výuce medicíny je toto rozhraní až příliš komplikované. Krom toho – za pohodlí prostředí, určeného především pro vytváření (a nikoli provozování) simulačních modelů se platí tím, že u rozsáhlých modelů (a námi vytvořený model mezi ně patří) jsou nároky na výpočetní výkon počítače poměrně vysoké. Na méně výkonných počítačích pak simulace probíhá neúměrně pomalu. Proto je nutné na základě odladěné a verifikované struktury simulačního modelu zvlášť naprogramovat vlastní simulátor včetně jeho uživatelského rozhraní. Implementovaný simulační model v něm běhá rychleji a možnosti uživatelského ovládání jsou pro netechniky (tj. studenty medicíny a lékaře) podstatně přirozenější než v prostředí Matlabu a Simulinku. Obr 2. Simulační čipy mají hierarchické uspořádání. Na obrázku je znázorněn "vnitřek" jednoho ze simulačních čipů z obr. 1. Vzhledem k tomu, že každý jednotlivý simulační čip obsahuje dostatečně podrobnou dokumentaci o svých vstupech a výstupech, může být struktura vztahů uvnitř simulačního čipu (reprezentující fyziologické vztahy v reálném organismu) srozumitelná fyziologům. Na dalším obrázku je zobrazen obsah čipu "BEINV". Aby nebylo nutné "ručně" programovat již odladěný simulační model v prostředí, kde vytváříme simulátor, vyvinuli jsme speciální softwarový nástroj, který automaticky převede vytvořený model do cílové platformy – např. do prostředí Microsoft .NET, kam se ze Simulinku vygeneruje simulační model ve formě .NET assembly (viz obr. 4.). Pro vlastní tvorbu simulátorů a výukových programů, využívajících simulačních her jsme se poohlédli po nástrojích využívaných při tvorbě průmyslových aplikací (měřících ústředen a velínů apod.). Vedly nás k tomu především dva důvody: 1. Se simulačním modelem chceme v simulátoru fyziologických funkcí zacházet obdobně jako se v průmyslu z velínu řídí složité technologické zařízení: chceme číst (a v nejrůznější grafické či číselné podobě zobrazovat) množství nejrůznějších měřených dat (jako v průmyslové měřící ústředně) a zároveň chceme jednoduchým způsobem (stiskem tlačítek, otáčením knoflíků popotahováním táhel apod.) simulační model ovládat (obdobně jako se z velínu řídí nějaká technologie). 2. Druhým důvodem, proč jsme sáhli po softwarovém nástroji z průmyslu, je spolehlivost. Požadavky spolehlivosti, kladené na nástroje, jejichž pomocí se vyvíjejí průmyslové řídící aplikace jsou obvykle řádově vyšší, než u obecných programovacích nástrojů. Vývoj, testování a identifikace simulačního modelu v prostředí Simulink/Matlab Přeložení identifikovaného modelu do C++ Automatizovaná tvorba Automatizovaná ovladače pro virtuální tvorba Microsoft .NET Assembly měřící/řídící kartu komunikující s aplikací vytvořenou v prostředí Control Web Vývoj interaktivních animací v prostředí FLASH Interactivní flashové Virtuální animace ovladač (s modelem) .NET assembly Interactivní (s modelem) flashové animace Psaní scénáře výukové aplikace Ideový návrh interaktivních sekvenc obrázků v aplikaci (tzv. storyboard) Vývoj výukového simulátoru VÝUKOVÝ SIMULÁTOR (platforma: Control Web) VÝUKOVÝ SIMULÁTOR (platforma: Microsoft .NET) Testování ve výuce Obr 3. Vývojový cyklus tvorby výukových simulátorů. Na počátku je sestavení scénáře výukového programu včetně návrhu sekvencí obrázků (tzv. storyboard). Ukazuje se výhodné vytvořit nejprve dynamický scénář (jako prototyp vytvářeného programu) např. pomocí programu Adobe Captivate. Pak následuje tvorba simulačních modelů, které budeme využívat v simulátoru, resp. výukovém programu využívajícím simulační hry. Pro tvorbu simulačních modelů využíváme vývojové prostředí Matlab/Simulink od firmy Mathworks. Zároveň ve spolupráci s výtvarníky vytváříme pohyblivé animační obrázky v prostředí Adobe Flash. Odladěný simulační model je pak implementován ve formě řadiče virtuální měřící/řídící karty do prostředí Control Web od firmy Moravské přístroje, v němž je vytvořeno uživatelské rozhraní. Řadič virtuální karty, obsahující simulační model, toto prostředí "ošálí" – výstupy modelu jsou v prostředí Control Web interpretovány jako měřené signály z technologie a vstupy modelu jsou interpretovány jako řídící signály směřující do technologického zařízení. Flashové animace jsou do vytvářené výukové aplikace umístěny jako Active X komponenty a propojeny se vstupy/výstupy simulačního modelu. Animace pak mohou být řízeny simulačním modelem a do simulačního modelu mohou zároveň přicházet hodnoty vstupů generované interakcí uživatele s flashovou grafikou. Další platformou, kterou jsme se na základě analýzy rozhodli využívat při tvorbě výukových simulátorů je prostředí Microsoft .NET. Do něj umisťujeme jak simulační model ve formě automaticky generovaného .NET assembly ze Simulinku, tak i flashovou interaktivní animaci (případně do něj můžeme umístit i celou aplikaci vytvořenou v nové verzi prostředí Control Web). Důležité je otestování výukových simulátorů ve výuce, které přináší nové požadavky pro revizi, rozšíření či vytvoření dalších výukových simulátorů. Proto byl také vytvořen softwarový nástroj umožňující automaticky vygenerovat program pro prostředí Control-Web (ve formě řadiče virtuální řídící karty). Control-web je vývojový systém původně určený pro snadný vizuální návrh řídících a měřících aplikací v průmyslu s využitím PC. My tento nástroj využíváme jako prostředí pro běh simulačních modelů s tím, že vygenerovaný řadič virtuální řídící karty se pro systém Control-Web tváří jako propojení s průmyslovým rozhraním – ve skutečnosti však obsahuje simulační model. Control Web je tak "ošálen" – pokud systém vysílá nějaké řídící signály do průmyslového zařízení, ve skutečnosti posílá vstupní hodnoty do modelu. Pokud program vytvořený v prostředí Control-Web čte nějaké naměřené signály z průmyslového zařízení, ve skutečnosti čte výstupní signály z modelu. Tímto způsobem se nám podařilo využít veškerou vizualizační sílu tohoto nástroje pro multimediální prezentaci simulačních modelů ve výuce. II.2 Pohyblivé animace jako loutky na nitích simulačního modelu Pro vytváření uživatelského rozhraní výukového simulátoru je velmi vhodné simulátor navenek reprezentovat jako pohyblivý obrázek. Proto simulační model propojujeme s multimediální animací vytvořenou pomocí Adobe Flash. Animace pak mohou být řízeny výstupy implementovaného simulačního modelu a graficky reprezentovat význam číselných hodnot - např. schematický obrázek cévy se může roztahovat nebo komprimovat, plicní sklípek může hlouběji či mělčeji "dýchat", ručička měřícího přístroje se může pohybovat a průběžně zobrazovat hodnotu nějaké výstupní proměnné modelu čtené z běžícího simulačního modelu na pozadí. Na druhé straně můžeme přes vizuální prvky vytvořené ve Flashi (nejrůznější tlačítka, knoflíky, táhla apod.) do simulačního modelu zadávat nejrůznější vstupy. V případě složitější architektury může být logika propojení flashové animace a simulačního modelu poměrně složitá, proto je vhodnější mezi vrstvu vizuálních elementů a vrstvu simulačního modelu vložit řídící vrstvu, která na jednom místě řeší veškerou logiku komunikace uživatelského rozhraní s modelem a kde je ukládán i příslušný kontext. Toto uspořádání je nezbytné při složitějších modelech a simulátorech, jejichž uživatelské zobrazení je reprezentováno mnoha virtuálními přístroji na více propojených obrazovkách. Výhody tohoto uspořádání zvláště vyniknou při modifikacích jak modelu, tak i uživatelského rozhraní. V literatuře se hovoří o tzv. UCM architektuře výstavby simulátorůl (User interface – Control layer – Model layer). Velmi se osvědčuje využít v tomto jádře stavový automat (která nám nejlépe zapamatuje příslušný kontext). Prostředí Matlab/Simulink nabízí realizaci stavových automatů prostřednictvím speciálního toolboxu Stateflow bezprostředně propojitelným se simulačním modelem v Simulinku (obr. 5). Stavový automat je však možno realizovat i na straně uživatelského rozhraní – přímo ve Flashi. Tento automat pak bezprostředně komunikuje s vizuálními objekty ve Flashi. Vrstva uživatelského rozhraní Řídící vrstva Vrstva modelu Stavový automat pro určení kontextu výstupy vstupy Simulační model Obr.4 Tzv. UCM architektura při tvorbě simulátorů. Mezi vrstvu modelu a vrstvu uživatelského rozhraní je vhodné vložit řídící vrstvu kam jsou směrovány veškeré zprávy a události vznikající ve virtuálních přístrojích uživatelského rozhraní a kam je zároveň směrována veškerá komunikace s modelem. V této vrstvě se řeší veškerý kontext zobrazovaných dat a příslušné požadavky na komunikaci s modelem. Veškerá logika zobrazování a komunikace je pak soustředěna do jednoho místa což podstatně ušetří čas při modifikacích uživatelského rozhraní nebo změnách modelu. II.3 Simulační hry na WEBu Moderní výukové programy nejsou jen multimediální náhradou klasických učebnic, jsou zcela novou výukovou pomůckou. Obsahují totiž simulační komponenty, které umožňují pomocí simulačních her si názorně "osahat" vykládaný problém ve virtuální realitě a přinášejí tak zcela nové možnosti pro vysvětlování složitých problémů. Simulační hrou je možné bez rizika zkoumat chování simulovaného objektu – přistávat virtuálním letadlem, léčit virtuálního pacienta apod. Ale nejenom to. Modelovaný objekt můžeme rozdělit na jednotlivé subsystémy a testovat jejich chování odděleně i jako součást vyššího celku. Tak např. při studiu složitých fyziologických regulací můžeme např. dočasně odpojit vybrané regulační smyčky a umožnit studentům sledovat reakce těchto subsystémů na změny vstupních veličin (které jsou v reálném organismu ovšem samy regulovány). Tím dovolíme sledovat dynamiku chování jednotlivých subsystémů při postupných změnách pouze jediného vstupu, zatímco jiné vstupy jsou nastaveny na zvolenou konstantní hodnotu (tzv. princip "ceteris paribus"). Postupně pak můžeme jednotlivé dočasně rozpojené regulační vazby opět zapojovat a studovat jejich vliv na chování organismu při nejrůznějších patologických poruchách a reakcích na příslušnou terapii. Podle našich zkušeností právě tento přístup vede k lepšímu pochopení složitých dynamických jevů v patogenezi nejrůznějších onemocnění a porozumění patofyziologických principů příslušných léčebných zásahů. Další problém, který bylo nutno vyřešit, bylo proto nalezení způsobu, jak včlenit simulátory, jako součásti internetových e-learningových aplikací. Při jeho řešení je možno postupovat několika způsoby. Jedním z nich je spouštění modelu na serveru a na klientský počítač posílat pouze výstupy z modelu. Znamená to ale pro každého připojeného uživatele na serveru individuálně spouštět jednu instanci simulačního modelu. Dalším problémem, zvláště u vzdálenějších a pomalejších připojení, je nezanedbatelné časové zpoždění mezi výstupem simulačního modelu na serveru a vykreslením výsledku na počítači klienta. Proto jsme se rozhodli jít spíše cestou spouštění simulačních modelů na počítači klienta. U jednodušších modelů je možno využít interpretovaný ActionScript ve Flashi. Zatím však Flash-Player je příliš pomalý na složitější výpočty. V dubnu 2007 je ohlášena nová verze Adobe Flash 9, která, podle slibů výrobce bude výpočetně rychlejší. Nicméně prozatím složitější simulační modely vyžadují využít Java Aplety. Přejdeme-li na prostředí Javy, ztratíme tím však možnost jednoduchého provázání vývoje simulačního modelu v Simulinku a jeho využití v simulátoru (Simulink totiž prozatím exportuje modely do jazyka C++ a ne do Javy). Proto jsme se rozhodli vytvářet simulační modely v prostředí .NET a ne v Javě. Námi zvolené řešení je zobrazeno na obr. 6. Uživatel si nainstaluje platformu .NET (pokud ji již nemá). Dále si na svém počítači nainstaluje speciální klientský program – "dispečer simulačních modelů". Jeho součástí je i runtime pro prostředí ControlWeb, které zajistí také možnost spouštění modelů v tomto prostředí vytvořených. Webová e-learningová aplikace umožní stáhnout potřebné soubory simulačního modelu a dispečer simulačních modelů je spustí. Dispečer tak bude fungovat obdobně jako prohlížeč obrázků, jen s tím rozdílem, že místo zobrazení obrázků spustí simulační program. INTERNET ASP .NET SERVER Runtime pro běh simulátorů vytvořených v prostředí Control Web Simulační model stažený ze serveru Webová e-learningová prezentace KLIENT Dispečer simulačních modelů Platforma .NET Obr. 5. Využití simulačních modelů v internetových e-learingových kurzech. Dispečer simulačních modelů funguje obdobně jako prohlížeč obrázků, jen s tím rozdílem, že místo zobrazení obrázků spustí simulační program. II.4. Volba softwarových nástrojů pro řešení projektu Pro tvorbu vlastních simulátorů budeme využívat Control Web (od firmy Moravské přístroje), původně určený pro tvorbu průmyslových aplikací (tvorbu velínů apod.). Systém Control Web umožňuje poměrně jednoduše naprogramovat uživatelské prostředí simulátoru či výukového programu, využívajícího simulační hru. Pro tvorbu interaktivních grafických komponent využíváme prostředí Adobe (Macromedia) Flash (ve verzi 8), interaktivni grafické objekty implementujeme do prostředí Control Web jako tzv. Active X komponenty. Kromě prostředí Control Web pro tvorbu simulátorů budeme využívat prostředí Microsoft .NET, které budeme využívat i jako kontejner pro umístění simulátorů, které budou rovněž propojeny s interaktivními grafickými komponenty vytvořenými pomocí Adobe (Macromedia) Flash. Pro naprogramování simulačních modelů budeme využívat vývojové prostředí Microsoft Visual Studio .NET. Pro propojení webových aplikací se simulačními modely budeme využívat prostředí ASP .NET, které mimo jiné umožní snadnou komunikaci multimediálních animací realizovaných na webových prohlížečích klientů se serverem, na kterém budou spouštěny simulace. "Pohyblivé obrázky" (vytvářené prostřednictvím Adobe Flash) tak budou řízeny simulačním modelem běžícím na webovém serveru. Pro finální přípravu vysvětlujících textů k modelům budeme využívat programové prostředí Adobe Captivate (verze 2). Pro přípravu a úpravu videosekvencí budeme využívat prostředí Adobe Premiere 2.0, Adobe Aftereffects 2.0, Adobe Encore a Adobe Audition 2.0 Pro vlastní provozování (i vytváření) multimediálních výukových aplikací budeme spolupracovat s 1. lékařskou fakultou Univerzity Karlovy. Námi vytvářené výukové aplikace v českém jazyce nabídneme k volnému využiti pro výuku studentů (v současné době jednáme o uzavření smlouvy o spolupráci). III. Výsledky řešení projektu III.1 Studie proveditelnosti a její závěry V první fázi řešení projektu byla vytvořena studie proveditelnosti, jejímž hlavním cílem bylo stanovit požadavky na softwarová prostředí v nichž bude vyvíjen výukový simulátor. Výsledkem této studie bylo konstatování, že je nutno současně pracovat s s třemi typy rozdílných softwarových nástrojů: 1. Softwarové nástroje pro tvorbu a odlaďování matematických modelů, které budou podkladem simulátoru. Jednoznačně zde bylo rozhodnuto využít prostředí MATLAB/Simulink. V tomto prostředí je výhodné a vysoce efektivní sinulační modely vyvíjet, problematické je ale v tomto prostředí simulátory provozovat. 2. Softwarový nástroj pro vývoj vlastního simulátoru - zde je možno využít obecné vývojové softwarové nástroje. Studie doporučila využít Microsoft Visual Studio .NET především z důvodů efektivity i nezanedbatelné znalosti a zkušenosti řešitelského týmu v práci s tímto prostředím. Simulátor bude vyvíjen v jazyce C#. Dalším vhodným kandidátem pro výukové aplikace je vývojové prostředí Control Web, české firmy Moravské přístroje, zejména proto, že má vynikající možnosti pro rychlé vytváření uživatelského rozhraní simulátoru. 3. Nástroje pro tvorbu interaktivní multimediální grafiky - uživatelského rozhraní pro simulátory. Na základě výsledků studie doporučila využívat nástroj Adobe Flash (dříve Macromedia Flash). V tomto nástroji je možné vytvářet interaktivní animace, které ale lze zároveň programovat pomocí speciálního programového jazyka ActionScript. Animacemi je pak možné vkládat do programů vytvořených v prostředí i do programů vytvořených v prostředí Control Web. Důležité je, že animace mohou (díky výše zmíněné možnosti programování v jazyce ActionScript) softwarově komunikovat se simulačním modelem naprogramovaným v jazyce C# v Microsoft Visual Studiu .NET. Obdobně je možné animace vkládat i do prostředí Control Web. III.2. Programový nástroj "Matlab to .NET Wizzard" Protože na základě úvodní studie bylo rozhodnuto navrhovat matematické modely v prostředí Matlab/Simulink a vlastní simulátor budovat v prostředí Visual studia Microsoft .NET, bylo vhodné vytvořit softwarový nástroj, který by umožnil zautomatizovat převod model z prostředí Matlab/Simulink do prostředí Visual studia Microsoft .NET. To umožní vyvíjet a průběžně aktualizovat matematický model v nejvhodnějším prostředí určeném pro vývoj matematických modelů, a zároveň vyvíjet vlastní simulátor ve Visual Studiu .NET aniž bude nutné matematický model "ručně" přeprogramovávat. Umožní to snadnou multidisciplinární spolupráci členů řešitelského týmu - systémových analytiků, vytvářejících matematické modely a programátorů, implementujících simulátor. Výsledkem řešení první fáze projektu bylo odladění a naprogramování první verze speciálního programu "Matlab to .NET Wizzard", který tuto funkčnost umožňuje. Program "Matlab to .NET Wizzard" je v elektronické příloze této zprávy. III.3. Programový nástroj "Wizard Matlab to Control Web" Protože na základě úvodní studie bylo rozhodnuto navrhovat matematické modely v prostředí Matlab/Simulink a vlastní simulátor vytvářet také pomocí prostředí Control Web, bylo vhodné vytvořit softwarový nástroj, který by umožnil zautomatizovat převod model z prostředí Matlab/Simulink do prostředí Control Web. To umožní na vyvíjet a průběžně aktualizovat matematický model v tom nejvhodnějším prostředí určeném pro vývoj matematických modelů, a zároveň vyvíjet vlastní výukovou simulační aplikaci v prostředí ControlWeb aniž bude nutné matematický model "ručně" přeprogramovávat. Umožní to snadnou multidisciplinární spolupráci členů řešitelského týmu systémových analytiků, vytvářejících matematické modely a programátorů, implementujících simulátor. Proto byl vytvořen program "Wizard Matlab to Control Web" umožňující automaticky převést simulační model, vytvořený v prostředí Matlab/Simulink do prostředí Control Web. Control Web je nástroj původně určený pro vývoj průmyslových měřících a řídících aplikací. Má velmi dokonalé nástroje pro vytvoření uživatelského prostředí. Vytvořený program umožní převést simulační model z Matlabu do formy "řadiče virtuální řídící/měřící karty" se kterou je schopen komunikovat program, vytvořený v Control Webu. Aplikace v Control Webu je "ošálena" - program pracuje tak, jakoby k počítači bylo pomocí speciální řídící/měřící karty připojeno nějaké průmyslové zařízení, aplikace v Control Webu komunikuje s tímto zařízením pomocí ovladače této karty. Ve skutečnosti místo ovladače je naprogramován simulační model - aplikace čte v bohaté nabídce vizuálních komponent zobrazuje z průmyslového zařízení nějaká data, avšak ve skutečnosti čte data ze simulačního mkodelu. Obdobně, pomocí myši na obrazovce počítače ovládanými přepínači, potenciometry a jinými vizuálními prvky aplikace posílá do připojeného průmyslového zařízení nějaká data, avšak ve skutečnosti posílá vstupní hodnoty do simulačního modelu. Vytvořený softwarový nástroj tak umožní rychle převést matematický model do prostředí, velmi vhodného pro rychlé vytváření bohatě vizualizovaných multimediálních simulačních aplikací. Program Wizzard MATLAB to ControlWeb je v elektronické příloze této zprávy. Obr.6a Princip využití programu ConrtolWeb pro řízení průmyslově-technologických aplikací. Aplikace v COntorlWebu komunikuje s průmyslovou terchnologií prostřednictvím řadiče řídící/měřící karty. Obr.6b Při vývoji simulátoru bude řadič karty nahrazen matematickým modelem. Obr.6c ControlWeb komunikuje prostřednictvím svých vstupně-výstupních "kanálů" nikoli s průmyslovou technologií, ale se softwarovým řadičem, virtuální (ve skutečnosti neexistující) meřící/řídící karty, v němž je implementován simulační model. Místo vizualizace měření se tak vizualizují výstupy modelu. Místo posílání řídících signálů do průmyslové periferie se posílají vstupní data do simulačního model, který je implementován v softwarovém řadiči. Důležitým výsledkem první etapy řešení projektu je to, že softwarový řadič virtuální měřící/ řídící karty (obsahující se simulační model) se generuje automaticky ze simulačního modelu v Matlabu/Simulinku. III.4. Rozsáhlý matematický model fyziologických funkcí člověka Protože srdcem simulátoru je matematický model, bylo naše úsilí zaměřeno především na analýzu fyziologických regulačních systémů a vytvoření rozsáhlého matematického modelu fyziologických funkcí člověka, zahrnující fyziologický subsystém oběhu, dýchání, krvetvorby, přenosu krevních plynů, elektrolytovou a objemovou homeostázu, funkci ledvin a neurohumorální regulaci včetně vlivu aldosteronu, angiotenzinu a antidiuretického hormonu. Model je implementován v prostředí MATLAB/Simulink. Model je velmi rozsáhlý, obsahuje více než dvě stě proměnných a soustavu 52 diferenciálních rovnic. Je rozdělen do čtyřiceti spolupracujících bloků. Model bude podkladem pro vytvoření simulátorů pro výuku medicíny akutních stavů. Podrobný popis základní struktury matematického modelu fyziologických funkcí člověka" je výsledkovou součástí této zprávy. Implementace tohoto modelu v, prostředí MATLAB/Simulink (verze 2006b) je součástí elektronické přílohy k této zprávě Úlohou příštího roku řešení je další rozpracování matematického modelu fyziologických funkcí a jeho využití pro konkrétní výukové aplikace s využitím všech metodologických nástrojů vytvořených v této etapě řešení. IV. Závěr - od entuziazmu k technologii Zdá se, že pomalu končí doba, kdy vytváření výukových programů bylo otázkou entuziasmu a píle skupin nadšenců. Tvorba moderních výukových aplikací je náročný a komplikovaný projekt, vyžadující týmovou spolupráci řady profesí – od zkušených učitelů, jejichž scénář je základem kvalitní výukové aplikace, přes systémové analytiky, kteří ve spolupráci s profesionály daného oboru jsou odpovědni za vytvoření simulačních modelů pro výukové simulační hry, výtvarníky, kteří vytvářejí vnější vizuální podobu, až po programátory, kteří celou aplikaci "sešijí" do výsledné podoby. Aby tato interdisciplinární kolektivní tvorba byla efektivní, je nutno pro každou etapu tvorby využívat specifické vývojové nástroje, s dostatečnou technickou podporou, které umožňují komponentovou tvorbu simulačních modelů, vytváření interaktivních multimédií a jejich závěrečné propojení podle daného scénáře do kompaktního celku. Navzdory tomu, že se využití počítačů ve výuce stalo tématem řady konferencí, odborných i popularizačních článků, přesto, že hardwarové možnosti i softwarové nástroje dnes již dospěly do úrovně umožňující vytvářet náročná interaktivní multimedia, k výraznému rozšíření multimediálních výukových programů ve výuce medicíny zatím nedošlo. Příčin je několik. • Za prvé, ukazuje se, že tvorba výukových programů je podstatně náročnější na čas, lidské i materiální zdroje, než je obvykle plánováno • Za druhé – tvorba kvalitních výukových programů vyžaduje týmovou multidisciplinární spolupráci zkušených pedagogů, lékařů, matematiků, fyziků, programátorů i výtvarníků. • Konečně, pro kreativní propojení různých profesí, podílejících se na tvorbě výukové multimediální aplikace, musí být k dispozici vhodně zvolené vývojové nástroje (jejichž ovládnutí vyžaduje určité úsilí a čas). • Nároky stoupají, pokud na pozadí výukového programu má běžet simulační program, umožňující interaktivní simulační hry - ve vývojovém týmu pak musí být i odborníci, kteří jsou schopni navrhnout, formalizovat a odladit příslušné modely (lékaři, matematici, fyzici a informatici). Domníváme se. že nejdůležitějším výsledkem řešení projektu bude vybudování multidisciplinárního týmu lékařů, matematiků, programátorů i výtvarníků, který je schopen tyto bariéry překonat. MUDr. Jiři Kofránek, CSc. odpovědný řešitel projektu
Podobné dokumenty
Ceník Artemide ARCHITECTURAL
3-FÁZOVÁ LIŠTA L=1000MM ALUMINIUM
3-FÁZOVÁ LIŠTA L=1000MM BÍLÁ
3-FÁZOVÁ LIŠTA L=1000MM ČERNÁ
3-FÁZOVÁ LIŠTA L=2000MM ALUMINIUM
3-FÁZOVÁ LIŠTA L=2000MM BÍLÁ
3-FÁZOVÁ LIŠTA L=2000MM ČERNÁ
3-FÁZOVÁ LI...
saMOTNÝ sIMULÁTOR NEsTačÍ Zuzana dukátová
Výukové modely (a zřejmě nejen komplexní modely se stovkami
proměnných) pro efektivní využití ve výuce proto sami o sobě nestačí. Musí být
provázeny výkladem jejich využití – nejlépe pomocí intera...
Nobelovky se letos točí kolem optiky
ústavu AV ČR, kde se výzkumu prostorové paměti věnují už desítky let. Pokusy probíhají na
potkanech, ale podobné buňky byly nedávno popsány i u lidí – díky pacientům s epilepsií, kteří měli do
mozk...
toyota-corolla-katalog
Corolla je navržena a vyrobena tak, aby se v případě
nehody na minimum snížily náklady na opravu.
Do nárazníků byly zabudovány deformační prvky
pohlcující nárazovou energii, dražší komponenty jsou
...
Pravidla technické podpory EDN
- žádost o poskytnutí technické podpory je možné podat:
o telefonicky (v pracovní dny od 8:00 do 17:00 hodin) na čísle technické
podpory: +420 224 190 515
o emailem na [email protected]
o faxe...
VYUŽITÍ SIMULAČNÍCH MODELŮ ACIDOBAZICKÉ ROVNOVÁHY V
interaktivních multimediálních komponent vytvořených v Adobe Flash a
proto je pak snadné naprogramovat propojení modelu s příslušnými
multimediálními komponenty. Tak jsme ve výukové aplikaci např. ...