Enhetshanteraren. Utöka MIS till enheter

Enhetshanteraren. Utöka MIS till enheter
En automatiserad vÄrdcentral anvÀnder mÄnga olika enheter, vars funktion mÄste styras av ett medicinskt informationssystem (MIS), samt enheter som inte accepterar kommandon, utan mÄste överföra resultatet av sitt arbete till MIS. Alla enheter har dock olika anslutningsalternativ (USB, RS-232, Ethernet, etc.) och sÀtt att interagera med dem. Det Àr nÀstan omöjligt att stödja dem alla i MIS, sÄ mjukvaruskiktet DeviceManager (DM) utvecklades, som tillhandahÄller ett enda grÀnssnitt för MIS för att tilldela uppgifter till enheter och fÄ resultat.

Enhetshanteraren. Utöka MIS till enheter
För att öka systemets feltolerans delades DM upp i en uppsÀttning program placerade pÄ datorer i vÄrdcentralen. DM Àr uppdelat i ett huvudprogram och en uppsÀttning plugins som interagerar med en specifik enhet och skickar data till MIS. Figuren nedan visar en generaliserad struktur för interaktion med DeviceManager, MIS och enheter.

Enhetshanteraren. Utöka MIS till enheter
Interaktionsstrukturen mellan MIS och DeviceManager visar tre alternativ för plugin-program:

  1. Pluginet tar inte emot nÄgon data frÄn MIS och skickar data omvandlade till ett format som Àr förstÄeligt för det frÄn enheten (motsvarar enhetstyp 3 i figuren ovan).
  2. Pluginet fÄr en kort (nÀr det gÀller körtid) uppgift frÄn MIS, till exempel att skriva ut pÄ en skrivare eller skanna en bild, köra den och skicka resultatet som svar pÄ begÀran (motsvarar enhetstyp 1 i figuren ovan) ).
  3. Insticksprogrammet fÄr en lÄngsiktig uppgift frÄn MIS, till exempel att genomföra en undersökning eller mÀta indikatorer, och som svar skickar uppgiftens acceptansstatus (uppgiften kan nekas om det finns ett fel i begÀran). Efter att ha slutfört uppgiften konverteras resultaten till ett format som Àr begripligt för MIS och laddas upp till grÀnssnitten som motsvarar deras typ (motsvarar enhetstyp 2 i figuren ovan).

DM-huvudprogrammet startar, initieras, startar om i hÀndelse av ett ovÀntat stopp (krasch) och avslutar alla plugins nÀr de stÀngs av. SammansÀttningen av plugins pÄ varje dator Àr olika, endast de nödvÀndiga startas, som anges i instÀllningarna.

Varje plugin Àr ett oberoende program som interagerar med huvudprogrammet. Den hÀr definitionen av ett plugin möjliggör mer stabil drift pÄ grund av oberoendet av alla plugin-instanser och huvudet nÀr det gÀller felhantering (om ett kritiskt fel intrÀffar som gör att plugin-programmet kraschar, kommer detta inte att pÄverka andra plugins och huvudet) . En plugin lÄter dig arbeta med enheter av en typ (ofta samma modell), medan vissa plugins bara kan interagera med en enhet, medan andra kan interagera med flera. För att ansluta flera enheter av samma typ till en DM, starta flera instanser av samma plugin.

Enhetshanteraren. Utöka MIS till enheter
Qt-verktygslÄdan anvÀndes för att utveckla DM:n eftersom den i de flesta fall möjliggör abstraktion frÄn ett specifikt operativsystem. Detta möjliggjorde stöd för datorer baserade pÄ Windows, Linux och MacOS, sÄvÀl som Raspberry Pi-enheter med ett enda kort. Den enda begrÀnsningen för valet av operativsystem vid utveckling av plugin-program Àr tillgÄngen till drivrutiner och/eller specialiserad programvara för en specifik enhet.

Interaktion mellan plugins och huvudet sker genom en konstant aktiv QLocalSocket med namnet pÄ en specifik plugin-instans, enligt protokollet vi skapade. Implementeringen av kommunikationsprotokollet pÄ bÄda sidor var designat som ett dynamiskt bibliotek, vilket gjorde det möjligt att utveckla vissa plugins av andra företag utan att helt avslöja interaktionen med huvudet. Den interna logiken i det lokala uttaget gör att huvudet omedelbart kan lÀra sig om fallet med hjÀlp av en anslutningsavbrottssignal. NÀr en sÄdan signal utlöses startas det problematiska pluginet om, vilket gör att du kan hantera kritiska situationer mer smÀrtfritt.

Man beslutade att bygga interaktionen mellan MIS och DM baserat pÄ HTTP-protokollet, eftersom MIS fungerar utifrÄn Webbservrar, vilket gör det enklare att skicka och ta emot förfrÄgningar med hjÀlp av detta protokoll. Det lÄter dig ocksÄ identifiera problem som kan ha uppstÄtt vid instÀllning eller körning av uppgifter pÄ enheter baserat pÄ svarskoder.

I de följande artiklarna, med exemplet med flera diagnostiska centerrum, kommer driften av DM och nÄgra plug-ins att undersökas.

KĂ€lla: will.com

Köp pĂ„litlig hosting för webbplatser med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster