Upravitelj naprav. Razširite MIS na naprave

Upravitelj naprav. Razširite MIS na naprave
Avtomatizirani zdravstveni center uporablja veliko različnih naprav, katerih delovanje mora nadzorovati medicinski informacijski sistem (MIS), ter naprav, ki ne sprejemajo ukazov, ampak morajo rezultate svojega dela posredovati v MIS. Vendar pa imajo vse naprave različne možnosti povezave (USB, RS-232, Ethernet itd.) in načine interakcije z njimi. V MIS jih je skoraj nemogoče podpreti, zato je bil razvit programski sloj DeviceManager (DM), ki zagotavlja enoten vmesnik za MIS za dodeljevanje nalog napravam in pridobivanje rezultatov.

Upravitelj naprav. Razširite MIS na naprave
Da bi povečali toleranco sistema na napake, smo DM razdelili na sklop programov, ki se nahajajo na računalnikih v zdravstvenem centru. DM je razdeljen na glavni program in nabor vtičnikov, ki komunicirajo z določeno napravo in pošiljajo podatke v MIS. Spodnja slika prikazuje posplošeno strukturo interakcije z DeviceManagerjem, MIS in napravami.

Upravitelj naprav. Razširite MIS na naprave
Struktura interakcije med MIS in DeviceManager prikazuje 3 možnosti za vtičnike:

  1. Vtičnik ne sprejema nobenih podatkov iz MIS in pošilja podatke, pretvorjene v zanj razumljivo obliko iz naprave (ustreza tipu naprave 3 na zgornji sliki).
  2. Vtičnik od MIS prejme kratko (v smislu časa izvajanja) opravilo, na primer tiskanje na tiskalnik ali skeniranje slike, ga izvede in pošlje rezultat kot odgovor na zahtevo (ustreza vrsti naprave 1 na zgornji sliki ).
  3. Vtičnik od MIS prejme dolgoročno nalogo, na primer za izvedbo ankete ali merjenje indikatorjev, in v odgovor pošlje status sprejetosti naloge (naloga je lahko zavrnjena, če je v zahtevi napaka). Po opravljeni nalogi se rezultati pretvorijo v obliko, razumljivo za MIS, in naložijo na vmesnike, ki ustrezajo njihovemu tipu (ustreza tipu naprave 2 na zgornji sliki).

Glavni program DM se zažene, inicializira, znova zažene v primeru nepričakovane ustavitve (zrušitve) in prekine vse vtičnike ob zaustavitvi. Sestava vtičnikov na vsakem računalniku je drugačna, zaženejo se samo tisti potrebni, ki so določeni v nastavitvah.

Vsak vtičnik je neodvisen program, ki sodeluje z glavnim programom. Ta definicija vtičnika omogoča bolj stabilno delovanje zaradi neodvisnosti vseh primerkov vtičnika in glave v smislu obravnavanja napak (če pride do kritične napake, ki povzroči zrušitev vtičnika, to ne bo vplivalo na druge vtičnike in glavo) . En vtičnik omogoča delo z napravami ene vrste (pogosto istega modela), nekateri vtičniki pa lahko komunicirajo samo z eno napravo, drugi pa z več. Če želite na en DM povezati več naprav iste vrste, zaženite več primerkov istega vtičnika.

Upravitelj naprav. Razširite MIS na naprave
Komplet orodij Qt je bil uporabljen za razvoj DM, ker nam v večini primerov omogoča abstrahiranje od določenega operacijskega sistema. To je omogočilo podporo za delo z računalniki, ki temeljijo na sistemih Windows, Linux in MacOS, ter napravami z eno ploščo Raspberry. Edina omejitev pri izbiri operacijskega sistema pri razvoju vtičnikov je razpoložljivost gonilnikov in/ali posebne programske opreme za določeno napravo.

Interakcija med vtičniki in glavo poteka prek nenehno aktivne QLocalSocket z imenom določenega primerka vtičnika v skladu s protokolom, ki smo ga ustvarili. Implementacija komunikacijskega protokola na obeh straneh je bila zasnovana kot dinamična knjižnica, kar je omogočilo razvoj nekaterih vtičnikov drugih podjetij brez popolnega razkrivanja interakcije z vodjo. Notranja logika lokalne vtičnice omogoča, da glava takoj izve za padec s pomočjo signala za prekinitev povezave. Ko se tak signal sproži, se problematični vtičnik znova zažene, kar vam omogoča bolj neboleče obvladovanje kritičnih situacij.

Odločili smo se, da bomo interakcijo med MIS in DM zgradili na osnovi HTTP protokola, saj MIS deluje na spletnem strežniku, kar omogoča lažje pošiljanje in sprejemanje zahtev po tem protokolu. Na podlagi odzivnih kod je možno tudi razlikovati težave, ki bi se lahko pojavile pri nastavljanju ali izvajanju opravil z napravami.

V naslednjih člankih bo na primeru več sob diagnostičnega centra preučeno delovanje DM in nekaterih vtičnikov.

Vir: www.habr.com

Dodaj komentar