27
TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju M-85: Prototip, nova metoda, softver, standardizovan ili atestiran instrument, nova genetska proba, mikroorganizmi Autori: Ivan Milentijević, Vladimir Ćirić, Vladimir Simić, Teufik Tokić, Oliver Vojinović, Filip Živanović, Elektronski fakultet, Univerzitet u Nišu

TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Embed Size (px)

Citation preview

Page 1: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

TEHNIČKO REŠENJE

Integrisani sistem za fizikalnu terapiju

M-85: Prototip, nova metoda, softver, standardizovan ili atestiran instrument, nova genetska

proba, mikroorganizmi Autori: Ivan Milentijević, Vladimir Ćirić, Vladimir Simić, Teufik Tokić, Oliver Vojinović, Filip Živanović, Elektronski fakultet, Univerzitet u Nišu

Page 2: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

1. Kratak opis Kompanija Elektromedicina d.o.o. Niš/ Yumis d.o.o. Niš nudi paletu terapijskih

uređaja za fizikalnu medicinu: Eksposan, Intermed, Sonoton, Magnemed, Vakumed i Diaton. U okviru projekta "Inteligentni kabinet za fizikalnu medicinu" na Elektronskom fakultetu u Nišu razvijen je integrisani sistem za upravljanje i praćenje rada kabineta za fizikalnu mediciju, koji sadrži više terapijskih uređaja nove generacije. Ovi uređaji imaju mogućnost umrežavanja i daljinske kontrole, kao i akviziciju podataka preko Ethernet mreže. Razvijena je i implementirana serverska aplikacija za vođenje evidencije o laboratoriji, uključujući opremu, uređaje i pacijente. Aplikacija obezbeđuje nadgledanje i upravljanje radom uređaja za fizikalnu medicinu, a implementirani komunikacioni protokol obezbeđuje konfigurisanje i komunikaciju uređaja sa centralizovanom serverskom aplikacijom. Planer terapija u okviru serverske aplikacije obezbeđuje zakazivanje termina i upravljanje tokom terapija. Obezbeđeno je kreiranje izveštaja po velikom broju zadatih kriterijuma.

Tehničke karakteristike:

Serverska aplikacija je razvijena za Windows platformu koristeći C# programski jezik i koristi .NET Framework 3.5. Komunikacioni protokol razvijen je kao DLL komponenta koja definiše neblokirajući interfejs ka serverskoj aplikaciji i baziran je na UDP transportnom protokolu. Baza podataka na centralnoj aplikaciji implementirana je koristeći SQLite DBMS, a ostavljena je podrška i za MySQL. Uređaji za fizikalnu medicinu su bazirani na Microchip PIC mikrokontroleru sa podrškom za Ethernet protokol. Mrežne i upravljačke funkcionalnosti implementirane su u MikroC programskom jeziku koristeći OSA RTOS operativni sistem za mikrokontrolere.

Tehničke mogućnosti:

Integracija i povezivanje uređaja u jedinstveni sistem obavlja se preko lokalne računarske mreže, a upravljanje njihovim radom omogućeno je serverskom aplikacijom. Serverska aplikacija pored toga omogućava vođenje evidencije o pacijentima i uređajima za fizikalnu medicinu i kreiranje izveštaja po velikom broju kriterijuma. Planer terapija, realizovan kao posebna komponenta, obezbeđuje zakazivanje termina za terapije i upravljanje tokom terapije koristeći direktnu komunikacijom sa uređajem. U tu svrhu projektovan je i implementiran mrežni komunikacioni protokol koji obezbeđuje dvosmernu komunikaciju između serverske aplikacije i uređaja. Protokolom se na serverskoj aplikaciji dobija status uređaja, omogućava slanje komandi od strane operatera za promenu radnih parametara, pokretanje ili zaustavljanje terapije. Svi relevantni podaci o obavljenim terapijama čuvaju se na serverskoj aplikaciji. Serverska aplikacija omogućava kreiranje izveštaja na osnovu zadatih parametara.

Realizator: Elektronski fakultet u Nišu

Korisnik:

Elektromedicina d.o.o. Niš / Yumis d.o.o. Niš

Podtip rešenja:

Softver - M85

Projekat u okviru koga je realizovano tehničko rešenje: Program istraživanja u oblasti tehnološkog razvoja za period 2011.-2014.

Tehnološka oblast: Elektronika, telekomunikacije i informacione tehnologije Rukovodilac projekta: Prof. dr Ivan Milentijević

Naziv projekta: Inteligentni KAbinet za FIzikalnu Medicinu - IKAFIM Broj projekta: TR 32012

Page 3: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

2. Stanje u svetu

Razvoj medicinskih uređaja zauzima značajno mesto u tehničko-tehnološkim istraživanjima [1]. Spektar medicinskih uređaja je širok i obuhvata uređaje počev od uređaja za pomoć zdravstvenim radnicima za dijagnozu i lečenje bolesti, do uređaja koji su neophodni za održavanje života pacijenata. Fizikalna terapija u većini slučajeva obuhvata skup uređaja koji, svaki na svoj način i u svom domenu, doprinose poboljšanju zdravstvenog stanja pacijenta. Sale za fizikalnu medicinu opremljene su raznim uređajima koji pozitivno utiču na vreme potrebno za oporavak pacijenata. Uređaji za fizikalnu medicinu su najčešće samostalni uređaji koji koriste dijadinamičke i interferentne struje, ultrazvučne talase, vakumske impulse, pulsirajuća magnetna polja, itd. Poznati proizvođači ovakvih uređaja u svetu su Siemens, Enraf Nonius, Shock Master, Gymna-Uniphy dok je Elektromedicina d.o.o. proizvođač sa najvećim brojem ovakvih uređaja prodatih u Srbiji.

Savremeni medicinski uređaji moraju pre svega biti bezbedni, očekuje se da budu pouzdani a velika prednost daje se uređajima koji imaju mogućnost inteligentnog prikupljanja, obrade i dostavljanja podataka što medicinskom osoblju štedi vreme i obezbeđuje efikasniji tretman pacijentima. Ako se tome pridoda mogućnost umrežavanja i komunikacije sa drugim uređajima ili centralizovanim upravljačkim softverom onda čitav sistem dobija novu dimenziju i istovremeno obezbeđuje značajan skup podataka dobijenih akvizicijom za dalju analizu i unapređenje lečenja pacijenata. Informaciono-komunikacione tehnologije zauzimaju važnu ulogu u projektovanju medicinskih uređaja nove generacije.

Jedna od najčešćih primena komunikacionih tehnologija u medicini sreće se u slučaju takozvanih kućnih ‘tele-health’ medicinskih uređaja i aplikacija za praćenje stanja pacijenta. Tehnički sistemi i medicinski servisi omogućavaju kontrolisanje parametara i bioloških signala pacijenata sa daljine. Uređaji koji se najčešće koriste u telemedicini su uređaji za elektrokardiografiju (EKG), uređaji za merenje krvnog pritiska i broja otkucaja srca, digitalne vage, uređaji za merenje glukoze, itd. Oni mogu biti fiksni, ali je takođe sasvim uobičajeno da su bežični ili prenosivi (ugrađeni u odeću, narukvice, itd.), što čini njihovo korišćenje komfornijim za pacijenta [2]. Senzori šalju podatke udaljenom centralizovanom sistemu čija je svrha prikupljanje i čuvanje podataka, i još važnije, alarmiranje medicinskog osoblja u slučaju da parametri nisu u granicama normale [3].

Međusobna komunikacija medicinskih uređaja, kao i komunikacija sa centralizovanim sistemima za akviziciju i upravljanje je savremen trend projektovanja ovakvih sistema. Pri korišćenju većeg broja medicinskih uređaja različitih proizvođača, sa različitim vlasničkim formatima podataka, javlja se problem interoperabilnosti. Različiti proizvođači patentiraju različita rešenja koja mogu raditi samostalno ili u sistemu, što otežava da se podaci dobijeni iz različitih uređaja prikupe na jednom mestu [4]. Povezivanje i komunikacija su u takvim slučajevima ograničeni tako da sistem i korisnici ne mogu iskoristiti sve mogućnosti koje informacione i komunikacione tehnologije danas nude. Postoji nekoliko standarda koji se odnose na interoperabilnost medicinskih informacionih sistema. Vremenom se X73 PoC-MDC (ISO11073/IEEE1073) skup standarda za komunikaciju medicinskih uređaja (‘Point of Care Medical Device Communication’) izdvojio kao najbolje pozicionirani standard u ovim komunikacijama.

Interoperabilnost uređaja različitog tipa podrazumeva korišćenje plug-and-play koncepta, što znači da je povezivanje uređaja dovoljno za ispravno funkcionisanje uređaja kao sastavnog dela sistema. Sistem treba da detektuje uređaj automatski, konfiguriše ga i komunicira s njim bez potrebe za bilo kakvom intervencijom korisnika. Glavni problem koji se javlja kada se pokušava postići takozvana plug-and-play interoperabilnost je sledeći: kada ne postoji komunikacioni standard koji se prostire od fizičkih veza uređaja preko nivoa jezika koji se koristi u aplikacijama, svaki deo sistema se mora ispitati, u najmanju ruku, kako bi se utvrdilo kakav fizički i logički interfejs je potrebno razviti da bi se obezbedila efikasna komunikacija. Jedinstveni standard je potreban, ali nijedan nije bio u potpunosti prilagođen potrebama medicinskih uređaja uopšte do pojave X73-PoC [5].

Osim međusobne komunikacije i interoperabilnosti, česta su softverska rešenja koja interoperabilnost teže da postignu tako što implementiraju „jezik“ svih uređaja i na taj način

Page 4: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

ih povezuju u celinu. Postoji veliki broj aplikacija čija je namena upravljanje različitim aspektima medicinskih laboratorija i kabineta, kao što su proizvodi u ponudi svetskih kompanija [6-8]. Takođe, u ponudi je sve veći broj aplikacija opšte namene za raspoređivanje događaja i organizovanje kalendara preko veba [9,10]. Iako spomenuta softverska rešenja imaju funkcionalnosti potrebne za korišćenje u medicinskim i kabinetima za fizikalnu medicinu, glavna prepreka je nedostatak lokalizacije za srpski jezik i potreba da se aplikacija prilagodi sopstvenim potrebama. Prihvatljivost takvih aplikacija zavisi pre svega od lakoće prilagođavanja postojećoj rutini i podacima medicinskih kabineta. Iako pojedina rešenja imaju mogućnost prilagođavanja izgleda korisničkog interfejsa i podržavaju rasprostranjene medicinske standarde, to zahteva mnogo napora da aplikacija postane alat koji se svakodnevno koristi. Iako se mogu koristiti dve odvojene aplikacije, naišlo bi se na dodatne prepreke i probleme u prihvaćanju. Pojedini proizvođači [11] nude softverska rešenja za prikupljanje podataka sa medicinskih uređaja široke namene preko serijskog ili mrežnog priključka ali nedostaje funkcija kontrole medicinskih uređaja. Pored toga, prikupljene podatke potrebno je dodatno obraditi kako bi se rezultati mogli koristiti, što opet rezultuje korišćenju više različitih softvera za obavljanje jednog posla. Glavna prednost softvera realizovanog u okviru integrisanog sistema za fizikalnu medicinu je što je planer terapija deo jedinstvenog interfejsa koji omogućava i kontrolu uređaja za fizikalnu terapiju, što u spomenutim rešenjima nije slučaj.

Česta potreba korisnika uređaja starih desetak ili više godina je nadogradnja postojećih uređaja kako bi se iskoristile pogodnosti aktuelnih informaciono komunikacionih tehnologija i standarda, ili mogućnost dodavanja novih funkcionalnosti. To nije uvek izvodljivo i zavisi od načina projektovanja i implementacije sistema u celini, uključujući hardversku strukturu samog uređaja, hardversku platformu, korišćene komponente, korišćene analogne delove i protokole za povezivanje i razmenu podataka. Ako su uređaji kontrolisani regulatorima fizičkih veličina ili mehaničkim delovima dodatni izazov predstavlja prelazak na neki od savremenijih korisničkih i upravljačkih interfejsa, kao što su ekrani osetljivi na dodir. Elektronski fakultet u Nišu pokrenuo je projekat pod nazivom "Inteligentni kabinet za fizikalnu medicinu", koji je finansiran od strane Ministarstva prosvete, nauke i tehnološkog razvoja Republike Srbije pod brojem TR32012, čiji je cilj razvoj unapređenih verzija uređaja za fizikalnu medicinu firme Elektromedicina d.o.o. Niš, sa mogućnošću uključivanja u centralizovani sistem. Pod centralizacijom se podrazumeva upravljanje i akvizicija podataka, kao i implementacija procedura za bezbedno korišćenje uređaja. Kod nove generacije uređaja predviđeno je da, pored klasičnog podešavanja, postoji mogućnost za automatskim podešavanjem parametara uređaja i praćenja napretka terapije sa serverske aplikacije.

Page 5: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

3. Integrisani sistem za fizikalnu terapiju

Integrisani sistem za fizikalnu terapiju prikazan je na slici 3.1. Sistem se sastoji od većeg broja terapijskih uređaja povezanih preko računarske mreže u centralizovani sistem.

Slika 3.1 Integrisani sistem za fizikalnu terapiju

Na sistemu se mogu razlikovati tri celine: centralni server za upravljanje i praćenje

rada integrisanog sistema, terapijski uređaji i računarska mreža koja ih povezuje. U cilju integracije ovih celina kreirane su komponente prikazane na UML dijagramu komponenata na slici 3.1. Osnovne komponente sistema su: centralna serverska aplikacija, implementirana na serveru, i komponente uređaja.

Operater tj. medicinsko osoblje preko korisničkog interfejsa na uređaju ili centralnom računaru zadaje parametre terapije i registruje pacijenta. Ako se terapija zadaje sa centralnog računara, komponenta planer (slika 3.2) proverava identitet pacijenta i zakazanu terapiju a zatim se posredstvom komponente Sloj za pristup podacima u bazu unosi upis o pacijentu i terapiji. Zatim se kontaktira uređaj na mreži kako bi se pronašao slobodan uređaj za dati tip terapije i predaju mu se radni parametri terapije. Pacijent zatim dobija propisanu terapiju na uređaju. Ako operater terapiju započne na samom uređaju, uređaj će prijaviti parametre obavljenog tretmana centralnom računaru i nakon toga operateru ostaje da zabeleži identitet pacijenta. Svi podaci neophodni za rad sistema obezbeđeni su preko komponente Sloj za pristup podacima, koja obezbeđuje standardni interfejs ka sistemima baza podataka i realizovana je kao dinamička biblioteka.

Komponenta uređaj (slika 3.2) sastoji se od četiri dela. Operativni sistem za rad u realnom vremenu upravlja radom uređaja i opslužuje zahteve operatera preko korisničkog interfejsa, komunikaciju sa centralnim računarom preko mrežnog protokola i obezbeđuje drajvere za analogne delove sistema.

Page 6: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Slika 3.2 Komponentni model integrisanog sistema za fizikalnu medicinu

Na slici 3.3 prikazan je dijagram sekvenci za tok prijema pacijenta, pokretanje terapije na uređaju i komunikaciju između centralne serverske aplikacije i uređaja za fizikalnu medicinu.

Slika 3.3 Dijagram sekvenci prilikom tretmana pacijenta u integrisanom sistemu

Skup sekvenci prikazan u gornjoj polovini dijagrama (sekcija 1 na slici 3.2) odgovara it iji k d ij t d l i t ij U t l č j di i k blj i t j

Page 7: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

pacijenta (sekcija 1.1 na slici 3.3) i preko planera terapija, a po zahtevima pacijenta, određuje termine terapija i snima ih u bazu podataka (sekcija 1.2 na slici 3.3). Skup sekvenci u donjem delu dijagrama (sekcija 2 na slici 3.3) odgovara situaciji kada pacijent dolazi da primi terapiju. Nakon identifikacije pacijenta (sekcija 2.1 na slici 3.3), sistem dobija spisak termina za terapije (sekcija 2.2 na slici 3.3) nakon čega centralna serverska aplikacija pronalazi odgovarajući uređaj na mreži i prenosi do njega skup radnih parametara za pokretanje terapije (sekcija 2.3 na slici 3.3). Medicinsko osoblje potom započinje terapiju na uređaju. Po završetku terapije podaci o obavljenoj terapiji prenose se do centralnog računara gde se podaci trajno snimaju (sekcija 2.4 na slici 3.3).

U nastavku će biti opisana struktura uređaja za fizikalnu medicinu, arhitektura serverske aplikacije i njenih komponenata kao i arhitektura komunikacionog protokola. Akcenat će biti stavljen na korisnički interfejs realizovanih komponenti.

4. Uređaji za fizikalnu medicinu Tipičan kabinet za fizikalnu medicinu sastoji se od većeg broja uređaja za fizikalnu

medicinu. Praksa je da pacijent dobije terapiju sa većeg broja uređaja pa su i kabineti opremljeni sa većim brojem ovakvih uređaja. Blok dijagram koji prikazuje elemente uređaja za fizikalnu medicinu prikazan je na Slici 4.1.

Slika 4.1 Blok dijagram strukture uređaja za fizikalnu medicinu

Operator označen na Slici 4.1 predstavlja medicinsko osoblje koje preko uređaja zadaje terapiju pacijentu. Preko korisničkog interfejsa na uređaju bira se tip terapije, njeno trajanje kao i parametri terapije. Parametri mogu biti izabrani iz skupa predefinisanih vrednosti ili se mogu postaviti ručno. Na osnovu zadatih parametara, uređaj preko aplikatora (slika 4.1) primenjuje zadatu terapiju na pacijentu. Korisnički interfejs obaveštava operatora o trajanju i postavljenim parametrima terapije.

U cilju omogućavanja integracije sistema neophodno je razviti skup novih uređaja, na osnovu postojećih uređaja firme Elektromedicina d.o.o. Niš, sa mogućnošću uključivanja u centralizovani sistem. Pod centralizacijom se podrazumeva upravljanje i akvizicija podataka. Kod nove generacije uređaja predviđeno je da, pored klasičnog podešavanja, postoji mogućnost za automatskim podešavanjem parametara uređaja i praćenja napretka terapije sa centralne serverske aplikacije. Uređaji obuhvaćeni projektom su: Eksposan, Magnemed, Intermed, Vakumed, Diaton and Sonoton i prikazani su na slici 4.2.

Page 8: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

a)

b)

c)

d)

e)

f)

Slika 4.2 Uređaji za fizikalnu medicinu obuhvaćeni projektom a) Eksposan, b) Intramed,

c) Sonoton, d) Magnemed, e) Vakumed, f) Diaton

Da bi nadogradnja uređaja za fizikalnu medicinu bila ekonomski isplativa, odlučeno je da postojeći analogni interfejsi na uređajima budu zadržani. Nadogradnjom uređaja, na postojeću hardversku strukturu uređaja pridodata je mikrokontrolerska logika koja implementira korisnički interfejs sa jedne strane i mrežnu funkcionalnost sa druge strane (slika 4.3). Veza sa postojećim analognim komponentama uređaja ostvarena je preko mikrokontrolera. Na slici 4.3 osenčeno su prikazane komponente koje su nadograđene na postojeće elemente uređaja.

Slika 4.3 Blok dijagram nove generacije uređaja za fizikalnu medicinu

Hardverska nadogradnja za novu generaciju uređaja bazirana je na PIC18F877 J60 mikrokontroleru sa integrisanim Ethernet kontrolerom.

4.1 Korisnički interfejs nove generacije uređaja za fizikalnu medicinu

Prvi korak analize postojećeg skupa uređaja odnosio se na analizu korisničkog interfejsa. Posebna pažnja posvećena je razvoju intuitivnog korisničkog interfejsa. Integrisani sistem za fizikalnu medicinu omogućava pokretanje i zadavanje radnih parametra za terapiju sa centralne serverske aplikacije kao i uređaja pa je analiza korisničkog interfejsa urađena posebno za serversku aplikaciju i posebno za uređaje. Takođe, jedan od ciljeva bio je da se kreira jedinstveni korisnički interfejs na uređajima kako bi njegovo prihvatanje i kasnije

Page 9: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

korišćenje zahtevalo minimalan napor medicinskog osoblja. Problem koji je na posredni način rešen je problem navikavanja korisnika na različite interfejse prilikom korišćenja različitih tipova uređaja istog proizvođača. Na ovaj način operater uređaja prilikom savladavanja načina korišćenja jednog uređaja ujedno ovladava tehnikom upotrebe svih uređaja iz proizvodnog programa proizvođača.

S ciljem da se kreira jedinstveni korisnički interfejs za svih šest uređaja, prvi korak u projektovanju korisničkog interfejsa bio je da se napravi analiza mogućnosti i funkcija postojećeg korisničkog interfejsa. Interakcija se kod stare generacije uređaja obavljala preko skupa tastera pri čemu nemaju svi uređaji podjednak broj i skup tastera. Ako tastere predstavimo uopšteno rednim brojevima T1-T7, tabela 4.1 prikazuje listu tastera i funkcionalnost pojedinih tastera. Može se primetiti da uređaj Intramed ima najveći broj tastera. Taster Eksposan Intramed Sonoton Magnemed Vakumed Diaton T1 start/stop start/stop start/stop start/stop start/stop start/stop T2 tip

modulacije selekcija (pm, if, g)

selekcija (k, i1, i2)

selekcija (kanal1, kanal2)

pulsni mod (15,30,60)

selekcija (g,pg,d)

T3 selekcija (sp, e1, e2)

promena tipa frekvencije

- - stalni mod -

T4 - gornja/donja frekvencija

- - voda polaritet (+,-)

T5 F struja (gore, dole)

vreme (0-60min)

vreme (0-19min)

vreme (0-95min)

intenzitet vakuuma (0-600 mbar)

vreme (0-15min)

T6 G struja (gore, dole)

struja (0-60mA)

intenzitet (0-3W/cm2)

frekvencija (0-50Hz)

- bazna struja (0-5mA)

T7 - frekvencija (1-200Hz)

- magnetno polje (0-10mT)

- struja doziranja (0-29mA)

Tabela 4.1 Funkcije kontrolnih tastera prethodne generacije uređaja

Korisnički interfejs nove generacije uređaja mora da bude jedinstven pa su sve

specifične uloge tastera prebačene u strukturu menija na uređaju a zajedničko za sve uređaje je skup tastera kojim se obavlja navigacija kroz menije. Tako je skup tastera za sve uređaje sveden na sledećih pet:

1. Start/stop – taster kojim se obezbeđuje prečica do najkorišćenije funkcije uređaja a to je početak i zaustavljanje terapije

2. Gore (Up) – taster kojim se obezbeđuje kretanje kroz podmenije na istom nivou u jednom smeru ili se vrši postavljanje parametra na uređaju inkrementiranjem vrednosti ili izborom mogućih vrednosti iz liste

3. Dole (Down) - taster kojim se obezbeđuje kretanje kroz podmenije na istom nivou u drugom smeru ili se vrši postavljanje parametra na uređaju dekrementiranjem vrednosti ili izborom mogućih vrednosti iz liste

4. Potvrda (Enter) – taster kojim se prelazi na izabrani deo menija ili se potvrđuje i snima postavljena vrednost parametra

5. Nazad (Back) – taster kojim se korisnik vraća jedan nivo nazad u hijerarhiji menija ili se poništava unos parametra i vraća nazad

U toku faze razvoja i implementacije kreiran je korisnički interfejs centralne

serverske aplikacije i korisnički interfejs na uređajima baziranih na 2x16 LCD displejima i displejima osetljivim na dodir. Na slici 4.4 prikazan je skup tastera na laboratorijskom prototipu kao i izgled hijerarhije menija uređaja za fizikalnu medicinu.

Page 10: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Slika 4.4 Hijerarhijska organizacija korisničkog interfejsa uređaja za fizikalnu medicinu

Funkcije za unos, pregled i izmenu konfiguracionih parametara, koje obezbeđuje

upravljački interfejs, razvijene su tako da obezbede prilagođavanje tipu ekrana koji se koristi. Grafički interfejs obezbeđuje navigaciju kroz hijerarhijske nivoe menija, pregled i izmenu parametara. Posebna pažnja posvećena je obezbeđivanju podrške za različite tipove podataka i parametara koji se mogu sresti kod uređaja za fizikalnu terapiju. Uglavnom se vrši unos brojčanih podataka, vrši se izbor jedne od više ponuđenih opcija, a u retkim slučajevima potrebno je unositi tekstualni sadržaj. Kako je kompletan interfejs prebačen sa mehaničkih tastera na ekran, platforma je zadržala samo mali broj mehaničkih tastera za obavljanje servisnih procedura kao što su resetovanje uređaja, brisanje sadržaja memorije, resetovanje mrežne komunikacije i slično. Platforma se povezuje na Ethernet mrežu pa je na samoj ploči obezbeđen odgovarajući priključak.

Arhitektura koja je osnova za razvoj menija za LCD i ekrane osetljive na dodir na svim uređajima sastoji se iz tri sloja: korisničkog interfejsa, podsistema za definisanje konfiguracionih parametara i kontrolnog interfejsa na grafičkom displeju uređaja (slika 4.5). Korisnički interfejs sadrži rutine za iscrtavanje i navigaciju kroz različite tipove menija i grafičkih elemenata na bazi parametara definisanih u okviru komponente Parameters. Kontrolni interfejs definiše način kojim se akcije korisnika iz grafičkog interfejsa povezuju sa konkretnom komandom na uređaju predstavljenim komponentom Device. Skup funkcija realizovan je u programskom jeziku MikroC/C. Delovi korisničkog interfejsa realizovani su korišćenjem Visual TFT alata za grafičko projektovanje.

Page 11: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Slika 4.5 Arhitektura korisničkog i upravljačkog interfejsa

Na slici 4.6 prikazan je izgled grafičkog LCD displeja za uređaj Vakumed za vreme

trajanja terapije a na slici 4.6b i c prikazani su redom izgled početnog ekrana na Vakumed-u kao i ekran za odabir jedne iz liste predefinisanih terapija.

c)

d)

Slika 4.6 Prikaz radnih parametara terapije na Vakumed uređaju (a) i podešavanje radnih parametara (b) na LCD displeju, prikaz početnog ekrana Vakumed uređaja (c) kao i ekrana

za pregled spiska predefinisanih terapija na istom uređaju (d)

Page 12: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Korisnički interfejs za ostalih pet uređaja realizovan je na zajedničkoj osnovi i razlika je jedino u skupu parametara i funkcija do kojih se dolazi navigacijom kroz hijerarhijski organizovanu strukturu menija.

5. Serverska aplikacija Centralni deo integrisanog sistema za fizikalnu medicinu čini serverska aplikacija. Na

slici 5.1 prikazane su komponente razvijene u okviru serverske aplikacije. U okviru aplikacije razvijen je korisnički interfejs (GUI) koji nudi sledeće funkcionalnosti:

1. evidencija i praćenje a. pacijenata, b. medicinske opreme, c. terapija koje ustanova sprovodi,

2. upravljanje uređajima za fizikalnu medicinu preko lokalne mreže, 3. mogućnost zakazivanja terapije, 4. izveštavanje, 5. podešavanje parametara aplikacije, 6. ažuriranje aplikacije.

Slika 5.1. Komponente centralne serverske aplikacije

GUI komponenta (slika 5.1) predstavlja grafički interfejs aplikacije i centralna je

komponenta aplikacije. Ona koristi usluge koje nude preostale komponente. Za upis u bazu i čitanje iz baze koristi usluge sloja za pristup podacima, a za komunikaciju sa uređajima usluge mrežnog protokola. Korisnici aplikacije imaju direktan pristup komponenti GUI preko vidljivih formi a ostale interne komunikacije obavljaju se u pozadini.

Komponenta Mrežni protokol je serverska komponenta mrežnog protokola i ona enkapsulira svu logiku za komunikaciju sa uređajima. Komponenta Mrežni protokol povezana je sa ostatkom aplikacije preko GUI komponente. Komunikacija se obavlja preko UDP transportnog protokola, koji prima poruke na portu 162 i šalje ih na port 161.

Komponenta Sloj za pristup podacima obezbeđuje jedinstven interfejs ostatku sistema za pristup svim podacima sa kojima aplikacija radi.

Komponenta Planer terapija je još jedna od komponenti u sistemu koja obezbeđuje grafički interfejs korisniku aplikacije. Planer terapija omogućava medicinskom osoblju uvid u vremenski raspored terapija i dodeljenih uređaja za terapiju i omogućava ručni ili poluautomatski raspored terapija za pacijente. Planer terapija koristi usluge sloja za pristup podacima kako bi čuvao i pribavljao podatke o terapijama i usluge Mrežnog protokola kako bi pribavio informacije o raspoloživim uređajima potrebnim za raspored terapija.

Page 13: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

5.1 Sloj za pristup podacima Ova komponenta je zadužena za pristup bazi podataka čija se funkcionalnost poziva

isključivo iz komponente GUI. Izvršena je celokupna implementacija sledećih klasa koje se odnose na komunikaciju sa bazom podataka: ClientMapper, DeviceMapper, DeviceTypeMapper, TherapyMapper. Ovde se nalazi sva potrebna logika za rad sa pacijentima, uređajima i zakazanim terapijama.

U manjim sistemima za fizikalnu terapiju korišćenje SQLite baze podataka je prihvatljivo jer isključuje potrebu da se instalira i održava poseban server baze podataka. U decentralizovanim i obimnijim sistemima za fizikalnu medicinu korišćenje ovakvih sistema je često tako da je u aplikaciji ostavljena mogućnost i podrška za MySQL. Klasni dijagram realizovanih klasa u okviru sloja za pristup podacima prikazan je na slici 5.2.

Slika 5.2. Klasni dijagram realizovanih klasa u okviru sloja za pristup podacima

5.2 Korisnički interfejs serverske aplikacije

Nakon nacrta korisničkog interfejsa i razvoja inicijalne verzije odlučeno je da korisnički interfejs serverske aplikacije bude implementiran je koristeći ribone [12], pri čemu su glavne funkcionalnosti podeljene po karticama na glavnom prozoru aplikacije (slika 5.3).

Page 14: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Slika 5.3 Organizacija menija serverske aplikacije preko ribona

Osnovne funkcionalnosti glavnog programa podeljene su na sledeće sekcije:

Evidencija, Zakazivanje, Izveštaji, Podešavanje i Pomoć. Na slici 5.4 prikazan je skup paketa klasa koje implementiraju grafički interfejs aplikacije i njihova veza sa glavnim karticama aplikacije.

Slika 5.4 Zavisnost realizovanih paketa klasa i njihova pripadnost karticama u okviru korisničkog interfejsa serverske aplikacije

Na slici 5.5 prikazan je deo klasnog dijagrama aplikacije iz paketa Evidencija i

Menadžer poruka.

Page 15: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Slika 5.5 Deo klasnog modela komponente GUI

Klasa mainForm predstavlja glavnu formu aplikacije koja objedinjuje funkcionalnosti aplikacije kroz pet spomenutih kartica. Glavna forma aplikacije implementira korisnički interfejs baziran na ribonima. U nastavku su prikazani glavni delovi korisničkog interfejsa serverske aplikacije podeljen po paketima tj. ribonima.

Funkcionalnosti grafičkog korisničkog interfejsa podeljene su u klase po nameni na evidenciju, zakazivanje, izveštaje, pomoć, i podešavanja.

Evidencija

Paket klasa implementiranih u okviru paketa Evidencija obezbeđuje funkcije za

evidenciju uređaja u laboratoriji, podataka o pacijentima i terapijama kao i odgovarajuće funkcije za pretragu. Na slikama datim u nastavku prikazan je izgled nekoliko prozora iz ovog paketa klasa.

Nakon što medicinsko osoblje identifikuje ili po prvi put registruje pacijenta otvara se forma prikazana na slici 5.6. Osim osnovnih podataka o pacijentu, prikazanih u okviru sekcije 1 na slici 5.6, prikazana je istorija poseta u sekciji 2 kao i predstojeće terapije u sekciji 3. Na vrhu je u sekciji 3 prikazana prva od predstojećih terapija i nju je moguće promeniti ili je pokrenuti na uređaju koristeći kontrole sa desne strane u sekciji 3. Sekcija 4 i 5 pripadaju Menadžeru događaja. U sekciji 4 prikazan je skup aktivnih uređaja na mreži a sekcija 5 prikazuje događaje u sistemu koji uključuju pojavljivanje uređaja na mreži, konfigurisanje uređaja od strane osoblja ili pokretanje i zaustavljanje terapije sa uređaja. Sekcija 4 prikazuje status terapije na uređajima koji se trenutno koriste u laboratoriji. Sekcija 5 prikazuje događaje u sistemu pri čemu se obaveštenja uklanjaju posle određenog vremena. Sekcija 4 i 5 nisu vidljive na ekranu ako nema aktivnih terapija u laboratoriji i događaja u sistemu.

Na slici 5.7 prikazana je forma za prikaz podataka o registrovanom uređaju. Pored osnovnih podataka o uređaju u glavnom delu prozora, prikazani su podaci u prethodnim i predstojećim terapijama planiranim za konkretan uređaj.

Page 16: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Slika 5.6 Prikaz i unos podataka o pacijentima

Slika 5.7 Prikaz i unos podataka o uređajima

Na slici 5.8a i 5.8b prikazan je deo interfejsa koji omogućava pretragu podataka o

pacijentima i registrovanim uređajima na osnovu zadatog pojma za pretragu ili listanje svih dostupnih podataka o pacijentima i uređajima.

1

2

3

4

5

Page 17: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

a) b)

Slika 5.8 Pretraga pacijenata (a) i registrovanih uređaja (b)

Zakazivanje

Planer terapija (slika 5.9) obezbeđuje kontrole za prikaz kalendara sa listom zakazanih terapija. Na levoj strani prozora prikazana je komponenta kalendara za brzu promenu datuma kao i prečica za brzu pretragu pacijenata. Koristeći drag&drop mehanizam, komponenta sa prikazanim podacima o pacijentu može se prevući na kalendar čime se otvara dijalog za zakazivanje nove terapije (slika 5.10). Najveći deo prozora pripada kalendaru koji obezbeđuje prikaz na nivou dana ili nedelje, navigaciju kao i grafički prikaz zakazanih termina za terapije (slika 5.9). Omogućena je izmena izabranog termina ili terapije u celini kao i brisanje zakazanih terapija (slika 5.9).

Slika 5.9 Kontekstni meni pomoću kojeg je moguće promeniti parametre terapije ili

pojedinačnih termina

Page 18: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Slika 5.10 Drag&drop funkcionalnost za kreiranje nove terapije

Slike 5.11 i 5.12 prikazuju redom dijalog za kreiranje nove terapije kao i prikaz kalendara sa većim brojem zakazanih terapija. Prilikom kreiranja nove terapije moguće je napraviti izbor po danima ili željenom delu dana. Nakon što se u obzir uzme raspoloživost termina i uređaja, na osnovu zadatih kriterijuma predlaže se raspored terapija. Eventualna korekcija može se obaviti u okviru ovog dijaloga. Nakon kreiranja rasporeda terapija, raspored je moguće odštampati a zatim se raspored snima u bazu podataka.

Slika 5.11 Forma za kreiranje nove terapije

Page 19: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Slika 5.12 Izgled kalendara sa većim brojem zakazanih terapija

Izveštaji

U okviru serverske aplikacije realizovan je skup klasa za potrebe kreiranja izveštaja o radu laboratorije. Obezbeđeno je kreiranje izveštaja za izabrane pacijente, obavljene terapije kao i registrovane uređaje. Na slici 5.13 prikazan je jedan od izveštaja koji pokazuje ukupan broj obavljenih terapija za svaki od registrovanih uređaja.

Slika 5.13 Grafički prikaz izveštaja o broju izvršenih terapija po uređaju

Pomoć

Skup klasa iz ovog paketa obezbeđuje sistem pomoći za korisnike aplikacije i

ažuriranje softvera (slika 5.14).

Page 20: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Slika 5.14 Automatska provera verzije softvera i mogućnost preuzimanja nove verzije

Podešavanje

Skupom klasa realizovanim u okviru ovog paketa obezbeđen je unos i čuvanje podešavanja aplikacije. Obezbeđeno je lako dodavanje novih sekcija na levoj strani forme kao i skupa parametara za podešavanje na desnoj strani forme (slika 5.15). Na slikama 5.16 i 5.17 prikazane su redom forme za podešavanje aplikacije a na slici 5.18 forma za podešavanje planera terapija.

Slika 5.15 Forma za podešavanje lokacije baze podataka, naziva mreže uređaja i uključivanje podrške za MySQL

Page 21: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Slika 5.16 Podešavanje automatskog pokretanja aplikacije

Slika 5.17 Dodavanje korisnika aplikacije sa pridruženim privilegijama

Page 22: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Slika 5.18 Podešavanje radnih, neradnih dana i radnih sati za planer terapija

5.3 Planer terapija Planer terapija realizovan je po principu MVC (Model-View-Controler) modela. Na

slici 5.19 prikazan je deo klasnog dijagrama planera terapija. Klasa CalendarNavigation implementira Controler komponentu. Model komponenta predstavljena je klasom Scheduler, a komponenta View realizovana je klasom CalendarView (slika 5.19). Komponenta View implementira grafički prikaz kalendara sa nedeljnim i dnevnim prikazom a preko Controler komponente ažurira stanje Model komponente. Model komponenta koristi interne strukture podataka za efikasnu reprezentaciju i rad sa terapijama i u direktnoj je vezi sa slojem za pristup podacima radi snimanja terapija i preuzimanja liste postojećih terapija. Controler komponenta pored ostalih funkcionalnosti implementira drag-and-drop interfejs ka korisniku.

Page 23: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Slika 5.19 MVC model primenjen u realizaciji planera terapija

Razmatrano je nekoliko različitih algoritama za raspoređivanje terapija u okviru

planera terapija. S obzirom na to da se rasporedi terapija određuju za svakog pacijenta pojedinačno po redosledu dolaska pacijenata a menjanje već zakazanih termina nije prihvatljivo, algoritam implementiran linearnom pretragom pokazao se zadovoljavajućim za laboratorije male i srednje veličine. Apstrakcijom interfejsa ostavljena je mogućnost da se postojeći algoritam za raspored terapija zameni naprednijim. Uprošćeni algoritam raspoređivanja terapija sa linearnom pretragom prikazan je na slici 5.20.

Slika 5.20 Uprošćen pseudo-kod algoritma za raspoređivanje terapija

0 Dok svi termini nisu određeni: o 1 generiši sledeći vremenski slot na osnovu inic. izbora i 

parametara o 2 proveri dostupnost uređaja za određeni slot o 3 ako je uređaj raspoloživ 

dodaj slot u listu  idi na 0 

o 4 inače pokušaj da pronađeš slobodan slot u bližoj okolini o 5 ako je slot pronađen 

idi na 2 o 6 inače izaberi sledeći dan i isti vremenski slot 

idi na 2      

7 uradi korekciju i snimi raspored

Page 24: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

6. Komunikacioni protokol za akviziciju i kontrolu

Mrežni protokol za komunikaciju između uređaja za fizikalnu medicinu i serverske aplikacije realizovan je kao protokol aplikativnog nivoa. Protokol implementiraju dve komponente. Jedna je ugrađena u serversku aplikaciju a druga u uređaj (slika 6.1).

Slika 6.1 Komponente mrežnog protokola na strani uređaja i serverskoj aplikaciji

Za rad projektovanog aplikativnog protokola neophodna je podrška protokola nižih

nivoa. Sloj ispod aplikativnog nivoa, čije funkcionalnosti koristi projektovani protokol je transportni nivo. Na transportnom nivou projektovanom aplikativnom protokolu podršku pruža UDP protokol. UDP protokol ne poseduje mogućnost za potvrdu poslatih poruka pa je mehanizam potvrde ugrađen u protokol aplikativnog nivoa. Serverska aplikacija prima poruke na UDP portu 162, a šalje ih na UDP portu 161, dok je kod uređaja obrnuta situacija.

Prilikom projektovanja protokola kreirani su i formati poruka koje se šalju sa uređaja

i servera. Na slici 6.2 prikazan je izgled poruke protokola.

Slika 6.2. Izgled poruke koju šalje uređaj

Poruka se sastoji iz sledećih polja:

Kod – kojim počinje svaka poruka, dužine 3 karaktera, i koje predstavlja kod poruke koju šalje uređaj. Sva tri karaktera su cifre i sve poruke koje šalje uređaj počinju cifrom ’1’, a poruke koje šalje server počinju cifrom ’0’.

D – delimiter dužine jedan karakter. U ovu svrhu se koristi karakter crtica (’-’).

ID Uređaja – koji je identifikator uređaja, dužine 5 karaktera. Identifikator je definisan tako da je prvi karakter veliko slovo i on predstavlja tip uređaja, dok su 4 cifre broj uređaja. Početna slova imena svakog od medicinskih uređaja za fizikalnu terapiju koji su uključeni u ovaj projekat su uzeti kao tip uređaja. Tako da postoji tip S (Sonoton), M (Magnemed), I (Intermed), V (Vakumed), D (Diaton) i E (Eksposan).

ID mreže –logički identifikator mrežnog domena. Ovaj identifikator se definiše prilikom instalacije serverske aplikacije.

Poruka – koje predstavlja sadržaj poruke. Ovo polje nema definisanu maksimalnu dužinu. Protokol ne menja sadržinu ovog polja, već tu samo prosleđuje ono što dobije sa interfejsa.

Kraj – svaka poruka se završava karakterom ’#’.

Prikazane poruke se razmenjuju prilikom komunikacije uređaja i servera.

Page 25: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Na slici 6.3 prikazan je klasni model komponente Mrežnog protokola sa vezama između

klasa. Glavna klasa ove komponente je klasa Server koja implementira većinu funkcionalnosti protokola.

Slika 6.3 Klasni model Mrežnog protokola

Na klasnom dijagramu sa slike 6.3 su prikazani najvažniji članovi ove klase. Od bitnih atributa treba izdvojiti:

idMreze –predstavlja identifikator mreže. listaUredjaja – je struktura u kojoj se pamti tabela registrovanih uređaja, i koja je

sačinjena od članova klase Uredjaj. listaPorukaZaRetransmisiju – je lista poruka na koje se čeka odgovor. Ukoliko

poruke na stigne, nakon isteka tajmauta vrši se retransmisija najviše tri puta, nakon čega se poruka izbacuje iz ove liste i kreira se događaj koji se prosleđuje Menadžeru poruka.

Najbitnije metode ove klase su:

inicijalizujListuUredjaja() – metoda koja se poziva po startovanju protokola, da bi se inicijalizovala listaUredjaja.

PrimiPoruku() – metoda koja se pokreće u posebnoj niti kada se inicijalizuje listaUredjaja, koja kreira UDP soket (koristeći sistemsku klasu UdpClient) i neprestano osluškuje na portu 162, čekajući dolazne poruke. Koristi se sinhron način prijema (ova nit je blokirana na naredbi za prijem sve dok ne dođe poruka). Ova metoda kreira događaj porukaPrimljena.

PosaljiPoruku() – ova metoda je rukovalac događajem i vezana je na događaj porukaZaSlanje. Ona šalje poruku na UDP port 161.

ObradiPorukuSaMreze() – takođe rukovalac događajem, vezana na događaj porukaPrimljena. Ova metoda je jezgro cele klase, sve poruke koje stignu od uređaja obrađuju se u ovoj metodi. Postoji određen tok radnji za svaki kod poruke. Ovde se i

Page 26: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

kreiraju neka obaveštenja bitna za komponentu GUI. Kod određenih kodova poruka ova metoda kreira događaje stigaoHello, porukaZaSlanje i porukaZaInterfejs.

AkcijaInterfejsa() – ova metoda se poziva iz GUI-a i preko nje se šalju poruke uređajima. Kao argument metode se prosleđuje objekat klase PorukaInterfejs.

PromenaStatusaMreze() – ova metoda štiti protokol od fizičkog gubitka mreže. I ona je rukovalac događajem, ali je vezan za događaj sistemske klase NetworkChange. NetworkAvailabilityChanged.

StigaoHello() – metoda rukovalac događajem, vezana na stigaoHello. Funkcija koja resetuje tajmer za izbacivanje uređaja koji je poslao HELLO poruku.

StigaoOdgovor() – metoda koja izbacuje poruku za koju je stigao odgovor iz liste listaPorukaZaRetransmisiju.

Na mrežnom nivou podršku pruža IP protokol verzije 4. Uređaji imaju mogućnost statičkog postavljanja IP adrese, ili dinamičkog postavljanja preko DHCP servera. U nedostatku DHCP servera, ako uređaju nije statički zadata IP adresa, implementirana je mogućnost konfiguracije preko zeroconf tehnike, čime uređaj sam sebi dodeljuje neku adresu sa mreže 169.254.0.0/24.

Za potrebe aplikacije projektovano je preko 20 scenarija koji su opisani odgovarajućim dijagramima sekvenci. U cilju ilustracije dijagrama sekvence, na slici 6.4 dat je deo dijagrama sekvence u kome je prikazana komunikacija komponente Mrežnog protokola i GUI komponente u scenariju registrovanja uređaja za fizikalnu medicinu na centralizovani sistem. Dijagramom je prikazan uređaj koji se javlja serveru, što znači da je ovo slučaj kada je serverska aplikacija prethodno uključena, a novi uređaj dolazi na mrežu.

Uređaj šalje UDP datagram koji kao odredišni port ima port 162. Serverska aplikacija koristeći sistemski klasu UdpClient prima poruku preko metode PrimiPoruku() klase Server. Ova klasa primljenu poruku pakuje u objekat klase PorukaMreza i prosleđuje je kao argument prilikom podizanja događaja porukaPrimljena. Metoda PrimiPoruku() nastavlja da sluša na portu za 162 čekajući nove poruke od uređaja. Podignuti događaj je vezan za metodu ObradiPorukuSaMreze(), koja prepoznaje da je stigla poruka sa odgovarajućim kodom itd.

Slika 6.4 Dijagram sekvenci za registrovanje uređaja na sistem

Page 27: TEHNIČKO REŠENJE Integrisani sistem za fizikalnu terapiju

Detaljna struktura poruka i performanse rada protokola diskutovani su u okviru tehničkog rešenja Projektovanje i implementacija mrežnog protokola za komunikaciju medicinskih uredaja za fizikalnu terapiju [13].

7. Reference

[1] International Hospital Equipment & Solutions. www.ihe-online.com

[2] “Wear it well”, IEEE Eng Med Biol Mag, 22(3), 2003

[3] R. Kling. “Learning About Information Technologies and Social Change: The Contribution of Social Informatics”, The Information Society, 16:217–232, 2000

[4] F. Chiarugi, D. Trypakis, M. Spanakis “Problems and Solutions for Storing and Sharing Data from Medical Devices in eHealth Applications”, 2nd OpenECG Workshop, Berlin, Germany, 2004

[5] M. Galarraga, I. Martínez, P. de Toledo, L. Serrano, J. García, S. Jiménez. “Point Of Care Medical Device Communication Standars (ISO11073/IEEE1073) In Patient Telemonitoring” EMBEC'05. 3rd European Medical and Biological Engineering Conference. Prague. 2005

[6] Practice Fusion, http://www.practicefusion.com, доступно децембра 2012.

[7] ADP AdvancedMD, http://www.advancedmd.com, доступно децембра 2012.

[8] Biosoftworld, http://www.biosoftworld.com, доступно децембра 2012.

[9] Гугл календар, https://www.google.com/calendar/, доступно децембра 2012.

[10] Зохо календар, http://www.zoho.com/calendar/, доступно децембра 2012.

[11] Labtronics , http://www.labtronics.com, доступно децембра 2012.

[12] https://msdn.microsoft.com/en-us/library/windows/desktop/dn742393(v=vs.85).aspx

[13] Vladimir Ciric, Vladimir Simic, Teufik Tokic, Darko Tasic, Emina Milovanovic, Igor Milovanovic, „Projektovanje i implementacija mrežnog protokola za komunikaciju medicinskih uredaja za fizikalnu terapiju“, Tehnicko rešenje, Elektronski fakultet u Nišu, 2012.