Administrador de dispositivos. Extender MIS a los dispositivos

Administrador de dispositivos. Extender MIS a los dispositivos
En un centro médico automatizado se utilizan muchos dispositivos diferentes, cuyo funcionamiento debe ser controlado por un sistema de información médica (MIS), así como dispositivos que no aceptan comandos, pero deben transmitir los resultados de su trabajo al MIS. Sin embargo, todos los dispositivos tienen diferentes opciones de conexión (USB, RS-232, Ethernet, etc.) y formas de interactuar con ellos. Es casi imposible admitirlos todos en el MIS, por lo que se desarrolló la capa de software DeviceManager (DM), que proporciona una interfaz única para que el MIS asigne tareas a los dispositivos y obtenga resultados.

Administrador de dispositivos. Extender MIS a los dispositivos
Para aumentar la tolerancia a fallas del sistema, DM se dividió en un conjunto de programas ubicados en las computadoras del centro médico. DM se divide en un programa principal y un conjunto de complementos que interactúan con un dispositivo específico y envían datos al MIS. La siguiente figura muestra una estructura generalizada de interacción con DeviceManager, MIS y dispositivos.

Administrador de dispositivos. Extender MIS a los dispositivos
La estructura de interacción entre MIS y DeviceManager muestra 3 opciones para complementos:

  1. El complemento no recibe ningún dato del MIS y envía datos convertidos a un formato comprensible desde el dispositivo (corresponde al tipo de dispositivo 3 en la figura anterior).
  2. El complemento recibe una tarea corta (en términos de tiempo de ejecución) del MIS, por ejemplo, imprimir en una impresora o escanear una imagen, la ejecuta y envía el resultado en respuesta a la solicitud (corresponde al tipo de dispositivo 1 en la figura anterior ).
  3. El complemento recibe una tarea a largo plazo del MIS, por ejemplo, para realizar una encuesta o medir indicadores, y en respuesta envía el estado de aceptación de la tarea (la tarea puede rechazarse si hay un error en la solicitud). Después de completar la tarea, los resultados se convierten a un formato comprensible para el MIS y se cargan en las interfaces correspondientes a su tipo (corresponde al tipo de dispositivo 2 en la figura anterior).

El programa DM principal se inicia, se inicializa, se reinicia en caso de una parada inesperada (caída) y finaliza todos los complementos cuando se apaga. La composición de los complementos en cada computadora es diferente, solo se ejecutan los necesarios, que se especifican en la configuración.

Cada complemento es un programa independiente que interactúa con el programa principal. Esta definición de complemento permite un funcionamiento más estable debido a la independencia de todas las instancias del complemento y del encabezado en términos de manejo de errores (si ocurre un error crítico que hace que el complemento falle, esto no afectará a otros complementos ni al encabezado). . Un complemento le permite trabajar con dispositivos de un tipo (a menudo el mismo modelo), mientras que algunos complementos pueden interactuar solo con un dispositivo, mientras que otros pueden interactuar con varios. Para conectar varios dispositivos del mismo tipo a un DM, inicie varias instancias del mismo complemento.

Administrador de dispositivos. Extender MIS a los dispositivos
El kit de herramientas Qt se utilizó para desarrollar DM porque nos permite abstraernos de un sistema operativo específico en la mayoría de los casos. Esto hizo posible admitir el trabajo con computadoras basadas en Windows, Linux y MacOS, así como con dispositivos de placa única Raspberry. La única limitación a la hora de elegir un sistema operativo al desarrollar complementos es la disponibilidad de controladores y/o software especial para un dispositivo específico.

La interacción entre los complementos y el encabezado se produce a través de un QLocalSocket constantemente activo con el nombre de una instancia de complemento específica, de acuerdo con el protocolo que creamos. La implementación del protocolo de comunicación en ambos lados se diseñó como una biblioteca dinámica, lo que permitió desarrollar algunos complementos de otras empresas sin revelar completamente la interacción con el jefe. La lógica interna del enchufe local permite al cabezal conocer inmediatamente la caída mediante una señal de interrupción de la conexión. Cuando se activa dicha señal, el complemento problemático se reinicia, lo que le permite manejar situaciones críticas de manera más sencilla.

Se decidió construir la interacción entre MIS y DM basándose en el protocolo HTTP, ya que MIS opera en un servidor web, lo que facilita el envío y recepción de solicitudes utilizando este protocolo. También es posible distinguir problemas que podrían surgir al configurar o realizar tareas con dispositivos en función de códigos de respuesta.

En los siguientes artículos, utilizando el ejemplo de varias salas de centros de diagnóstico, se examinará el funcionamiento de DM y algunos complementos.

Fuente: habr.com

Añadir un comentario