ES2908320T3 - Método de comunicación de dispositivos médicos - Google Patents

Método de comunicación de dispositivos médicos Download PDF

Info

Publication number
ES2908320T3
ES2908320T3 ES14760652T ES14760652T ES2908320T3 ES 2908320 T3 ES2908320 T3 ES 2908320T3 ES 14760652 T ES14760652 T ES 14760652T ES 14760652 T ES14760652 T ES 14760652T ES 2908320 T3 ES2908320 T3 ES 2908320T3
Authority
ES
Spain
Prior art keywords
data
message
layer
cid
infusion
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES14760652T
Other languages
English (en)
Inventor
Prakash Jha
James Cudney
Benjamin Herr
Mark Lee
Matteo Picinich
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ICU Medical Inc
Original Assignee
ICU Medical Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ICU Medical Inc filed Critical ICU Medical Inc
Application granted granted Critical
Publication of ES2908320T3 publication Critical patent/ES2908320T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H20/00ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
    • G16H20/10ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to drugs or medications, e.g. for ensuring correct administration to patients
    • G16H20/17ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to drugs or medications, e.g. for ensuring correct administration to patients delivered via infusion or injection
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/63ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for local operation
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/67ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for remote operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/165Combined use of TCP and UDP protocols; selection criteria therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Biomedical Technology (AREA)
  • Medical Informatics (AREA)
  • Epidemiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Public Health (AREA)
  • General Business, Economics & Management (AREA)
  • Business, Economics & Management (AREA)
  • Chemical & Material Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Medicinal Chemistry (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)

Abstract

Un método de comunicación de dispositivos médicos para un sistema de bomba de infusión, comprendiendo el método: un control de motor de bomba, PMC, que acepta una solicitud de conexión de un controlador de interfaz de usuario, UIC, comprendiendo la solicitud: un identificador de dispositivo del UIC, un número de dispositivo receptor del PMC al que transmitir un mensaje de datos de infusión, en donde el PMC acepta dicha solicitud y genera un identificador de comunicación, CID, introducir el CID en un mensaje de aceptación de conexión, transmitir el mensaje de aceptación de conexión al UIC, en donde el UIC extrae y almacena el CID del mensaje de aceptación de conexión, comprendiendo además el método aceptar, por el UIC, una solicitud de infusión asociada con una función médica relacionada con la infusión, introducir el CID y dicha función médica en el mensaje de datos de infusión, y transmitir el mensaje de datos de infusión al PMC.

Description

DESCRIPCIÓN
Método de comunicación de dispositivos médicos
Antecedentes de la invención
Campo de la invención
Una o más realizaciones de la invención están relacionadas con el campo de los protocolos de comunicación de multiplexación para dispositivos médicos tales como, pero sin limitarse a, bombas de infusión. Más particularmente, pero sin limitarse a ello, las realizaciones de la invención permiten un método de comunicación de dispositivos médicos para la comunicación entre periféricos y subsistemas conectados que incluye intercambio de datos orientados a conexión, sin conexión, de difusión y de multidifusión, con tratamiento prioritario de datos, fragmentación y reensamblaje de datos, asignación de direcciones estáticas y dinámicas únicas y capacidades de intercambio en caliente.
Descripción de la técnica relacionada
Los dispositivos que intercambian datos generalmente lo hacen mediante un protocolo de comunicación. Los protocolos de comunicación permiten que se transmitan y reciban datos de forma controlada. Los dispositivos médicos son dispositivos de ejemplo que pueden utilizar un protocolo de comunicación, por ejemplo, para intercambiar datos entre periféricos o subsistemas que generan o utilizan datos. Hay muchos tipos de protocolos de comunicación que varían en complejidad, eficiencia y utilización de hardware. Los protocolos de comunicación actuales utilizados en los dispositivos médicos utilizan el sistema operativo y la arquitectura de bus particular dentro del dispositivo médico. Un problema con este tipo de arquitectura es que algunas implementaciones pueden impedir el acceso multiplexado en el tiempo del enlace de comunicación, con ello imposibilitando o impidiendo de otro modo que múltiples aplicaciones se comuniquen simultáneamente. Además, las aplicaciones que transfieren datos utilizando el sistema operativo y llamadas de software específicas de bus tienen que ser modificadas cuando cambia el sistema operativo o la arquitectura de bus, específicamente para tener en cuenta las diferencias en las llamadas del sistema operativo o con respecto a la arquitectura de bus, diferentes formatos de datos, secuenciación y cualquier otro matiz específico del protocolo. Además, los dispositivos médicos en general deben someterse a pruebas exhaustivas para garantizar que no fallen. Por lo tanto, cambiar las arquitecturas de bus aumenta los costos asociados con las aplicaciones que hacen uso de la arquitectura de bus, ya que la aplicación debe volver a probarse si se modifica el código fuente de la aplicación.
Los protocolos de comunicación conocidos generalmente están dirigidos a un tipo específico de arquitectura de bus de comunicación, por ejemplo, Ethernet, WiFi, Bluetooth, CAN, Serial, I2C, SPI, etc. Los protocolos de comunicación conocidos en general no se pueden usar con más de un tipo de bus de comunicación dado que intentan dar solución a un problema de comunicación concreto de forma coherente. Debido a los requisitos de baja potencia, las capacidades limitadas del procesador y la capacidad de memoria limitada de los dispositivos médicos con procesadores integrados que realizan funciones o tareas específicas, tales como bombas de infusión, los protocolos de comunicación sofisticados existentes generalmente no se utilizan en dichos dispositivos médicos.
En resumen, las soluciones conocidas utilizan protocolos de comunicación que están vinculados a un sistema operativo y/o bus de comunicaciones específico. Desafortunadamente, estos protocolos de comunicación no son independientes de todos los tipos de bus de comunicación y no proporcionan una pila de protocolos eficiente y ligera para la comunicación dentro del dispositivo que incluye intercambio de datos orientados a conexión, sin conexión, de difusión y de multidifusión con tratamiento prioritario de datos, fragmentación y reensamblaje de datos, asignación de direcciones estáticas y dinámicas únicas para subsistemas conectados y capacidades de intercambio en caliente. La patente del estado de la técnica US 5432777 describe una transferencia de datos ATM sin conexión, la patente US 7171492 describe la asignación de múltiples direcciones de red, y la patente US 2007/258395 describe un sistema de comunicación de datos inalámbrico para una red de dispositivos médicos.
Para al menos las limitaciones descritas anteriormente, existe la necesidad de un método de comunicación de dispositivos médicos que proporcione estas características, tal como se describe y reivindica en este documento. Breve compendio de la invención
La invención se lleva a cabo tal como se describe en las reivindicaciones adjuntas.
Las realizaciones de la invención permiten un método de comunicación de dispositivos médicos para comunicación entre periféricos médicos y subsistemas que incluye intercambio de datos orientados a conexión, sin conexión, de difusión y de multidifusión, con tratamiento prioritario de datos, fragmentación y reensamblaje de datos, asignación de direcciones estáticas y dinámicas únicas y capacidades de intercambio en caliente.
Las realizaciones del protocolo de comunicación proporcionan una interfaz que se separa o se abstrae del sistema operativo y la arquitectura de bus subyacente dentro del dispositivo médico, lo que hace que el comportamiento y la interfaz del protocolo de comunicación sean coherentes en las arquitecturas de bus y los sistemas operativos, lo que se desconoce en la técnica de bombas de infusión. Por lo tanto, la misma aplicación se puede utilizar en múltiples plataformas de hardware, por ejemplo, sin alterar la propia aplicación. Por lo tanto, las realizaciones permiten un código de aplicación simplificado, la portabilidad del mismo y minimizar los requisitos de mantenimiento y prueba. Las realizaciones pueden utilizar cualquier tipo de ruta de comunicación física, por ejemplo, inalámbrica o cableada, incluyendo, entre otros, un bus de datos. Las realizaciones para comunicaciones entre dispositivos sobre un bus de datos generalmente emplean controladores de bus de datos específicos para cada tipo de bus de datos para controlar la lectura y escritura de datos sobre el bus junto con una interfaz estándar para estos controladores de bus de datos.
Las realizaciones pueden implementarse en capas separadas de software configuradas para ejecutarse en uno o más elementos informáticos, donde cada capa realiza operaciones para proporcionar un intercambio de datos que generalmente es independiente de las otras capas. Cada capa, por ejemplo, puede crear, leer o actualizar cabeceras asociadas con datos a intercambiar, donde las cabeceras contienen información para soportar las características mencionadas anteriormente. Las capas forman lo que se conoce como pila de protocolos. Las realizaciones de la pila de protocolos pueden incluir una capa de administrador, una capa de sesión, una capa de transporte y una capa de enlace de datos o cualquier otra arquitectura siempre que la implementación resultante proporcione la funcionalidad descrita en este documento.
Según el periférico o subsistema, el tipo de datos, la prioridad y la fiabilidad deseada de los datos que se van a intercambiar, las aplicaciones pueden transmitir datos utilizando intercambio de datos orientados a conexión, para garantizar la entrega de datos, o intercambio de datos sin conexión, para datos menos confidenciales. Las realizaciones también admiten modos de intercambio de datos de difusión y multidifusión uno a uno, así como uno a muchos y muchos a uno, entre periféricos conectados y subsistemas. Al menos una realización también admite el intercambio de datos basado en prioridad y da preferencia a los datos de alta prioridad sobre los datos de baja prioridad para garantizar que los mensajes de alta prioridad se entreguen primero. Además, al menos una realización soporta fragmentación de datos y el reensamblaje de datos para cumplir con demandas de la tecnología de comunicación física particular. Las realizaciones también proporcionan una asignación de dirección estática y dinámica única para subsistemas conectados y capacidades de intercambio en caliente, que son desconocidas, por ejemplo, en las bombas de infusión actuales.
Específicamente, en el caso de la comunicación orientada a conexión, al menos una realización utiliza un ID de comunicación o "CID" como testigo para identificar de forma única todas las conexiones activas dentro de un subsistema y enrutar los datos entre las respectivas aplicaciones. En el caso de comunicaciones sin conexión, al menos una realización utiliza números de puerto, por ejemplo, números de puerto de origen y de destino, para identificar la aplicación de destino. Al menos una realización soporta servicios de suscripción para aplicaciones receptoras, lo que permite la multidifusión de datos a todas las aplicaciones suscritas. La multidifusión puede ser tanto orientada a conexión como sin conexión. En las sesiones de comunicación orientadas a conexión, al menos una realización garantiza la entrega de datos, por ejemplo, mediante acuses de recibo. Alternativamente, las sesiones de comunicación sin conexión no garantizan la entrega de datos, pero son muy eficientes. Al menos una realización soporta difusión de datos/mensajes, donde los mensajes de difusión se envían a todos los subsistemas conectados al subsistema de difusión.
Es posible que las aplicaciones necesiten intercambiar datos de mayor tamaño que el que puede soportar una tecnología de comunicación subyacente o un bus de datos. En tales casos, al menos una realización rompe o fragmenta los datos en un tamaño menor, por ejemplo, del que el bus de datos realmente puede transferir. Al menos una realización vuelve a ensamblar datos en el tamaño de datos original en el extremo receptor. Al menos una realización se ejecuta en sistemas integrados que pueden tener recursos limitados, incluyendo la memoria, la potencia de procesamiento, la utilización del bus y la potencia. Por lo tanto, las realizaciones utilizan eficientemente los recursos disponibles. Los intercambios de datos de ejemplo que son lo suficientemente grandes como para garantizar la fragmentación de los mensajes incluyen descargas de bibliotecas de medicamentos y actualizaciones de software inalterable.
Con respecto a la fragmentación, al menos una realización utiliza una ventana que representa un cómputo de fragmentos que pueden enviarse antes de recibir un acuse de recibo del receptor. En al menos una realización, el transmisor solicita el tamaño de la ventana al receptor antes de enviar el primer fragmento. El receptor determina el espacio de memoria disponible para acomodar los paquetes recibidos y responde con el tamaño de la ventana, por ejemplo, como un múltiplo entero del tamaño máximo de tramas que cabe en la memoria disponible. El transmisor numera los fragmentos en secuencia y los envía al receptor. Después de que se hayan enviado mensajes del tamaño de una ventana, el transmisor espera un acuse de recibo del último fragmento. El receptor acumula todos los fragmentos recibidos y verifica que todos los fragmentos recibidos estén en secuencia. Si no falta ningún fragmento, el receptor envía el número de fragmento del último fragmento como acuse de recibo o, de lo contrario, envía los números de fragmento de los fragmentos faltantes como parte de un acuse de recibo negativo o NAK.
Dado que los dispositivos médicos, tales como las bombas de infusión, en el futuro pueden incluir periféricos o subsistemas intercambiables en caliente, al menos una realización soporta asignaciones de direcciones únicas a dispositivos conectados para proporcionar un intercambio de datos sin conflicto, reduciendo así la complejidad en las aplicaciones. Al menos una realización soporta comunicación sobre múltiples tecnologías de transferencia de datos subyacentes, como serie, CAN, SPI, SDIO, USB o cualquier otro tipo de medio físico o bus de datos. Al menos una realización también realiza un seguimiento de los dispositivos conectados en cada bus y enruta los datos al bus respectivo.
Breve descripción de los dibujos
Los anteriores y otros aspectos, características y ventajas de la invención serán más evidentes a partir de la siguiente descripción más particular de la misma, presentada junto con los siguientes dibujos en los que:
La figura 1 ilustra una vista arquitectónica de un sistema que tiene un controlador de interfaz de usuario, y múltiples periféricos que se comunican entre sí usando una realización de la invención.
La figura 2 ilustra una realización en capas jerárquicas de la invención implementada como una pila de protocolos. La figura 3 ilustra una realización de un método de solicitud de dirección implementado dentro de la capa de administrador.
La figura 4 ilustra una realización de una secuencia de infusión simple que utiliza varios mensajes proporcionados por las realizaciones del método.
La figura 5 ilustra una realización de un método de conexión implementado dentro de la capa de sesión.
La figura 6 ilustra una realización de un método de intercambio de datos implementado dentro de la capa de sesión. La figura 7 ilustra una realización de un método de solicitud de desconexión implementado dentro de la capa de sesión.
La figura 8 ilustra un diagrama de flujo de capas que muestra el flujo de datos dentro de las diversas capas implementadas en al menos una realización de la invención.
La figura 9 ilustra un diagrama de actividad que muestra el enrutamiento entre varios dispositivos.
Las figuras 10A-D ilustran la estructura de los mensajes de la capa de sesión.
Las figuras 11A-B ilustran la estructura de los mensajes de la capa de transporte.
Las figuras 12A-B ilustran la estructura de los mensajes de la capa de enlace de datos/física.
Las figuras 13A-B ilustran una transferencia de mensaje de ejemplo de una función médica utilizando valores de ejemplo dentro de los mensajes para demostrar el sistema y el método según al menos una realización de la invención.
Descripción detallada de la invención
A continuación se describirá un método de comunicación de dispositivos médicos. En la siguiente descripción ejemplar se exponen numerosos detalles específicos para proporcionar una comprensión más completa de las realizaciones de la invención. Será evidente, sin embargo, para un experto en la materia que la presente invención se puede poner en práctica sin incorporar todos los aspectos de los detalles específicos descritos en este documento. En otros casos, las características, cantidades o medidas específicas bien conocidas por los expertos en la técnica no se han descrito en detalle para no oscurecer la invención. Los lectores deben tener en cuenta que, aunque en este documento se exponen ejemplos de la invención, las reivindicaciones son las que definen las medidas y los límites de la invención.
La figura 1 ilustra una vista arquitectónica de un sistema que tiene un controlador de interfaz de usuario o "UIC" y múltiples periféricos que se comunican entre sí usando una realización de la invención. Tal como se muestra, un controlador de interfaz de usuario UIC comunica con los periféricos control de motor de bomba o "PMC", PMC 1 y PMC 2, así como con el motor de comunicación o "CE" para diversas aplicaciones, incluyendo, entre otros, la biblioteca de medicamentos, el estado y el tratamiento de mensajes de diagnóstico. A modo de ejemplo, UIC tiene un ID de dispositivo/destino, por ejemplo, una dirección de 5 y los mensajes de UIC a los otros dispositivos viajan a través de rutas definidas de forma única por las tuplas definidas en la tabla, por ejemplo, en un canal definido por ID de comunicación y dispositivo. Estos canales se muestran en la tabla anterior UIC, es decir, entre UIC y PMC 1, en los puertos 10 y 20, es decir, los puertos terapéuticos y de estado, a través del ID de comunicación o "CID" 100 y CID 250 respectivamente, seguidos de un canal utilizado entre UIC y PMC 2 en el puerto 10, el puerto terapéutico, a través del ID de comunicación 100, junto con un canal entre UIC y CE en el puerto 40, a través del ID de comunicación 175. El CE, cuya dirección es 7, muestra los canales en la tabla anterior CE a PMC 2 y el UIC, es decir, los dispositivos 2 y 5 a través de los ID de comunicación 250 y 175, respectivamente. Se ilustra que el PMC 1 tiene canales hacia el UIC, a través de los ID de comunicación 100 y 250. El PMC 2 se ilustra con canales hacia el UIC y el CE a través de los puertos 10 y 20, a través de los ID de comunicación 100 y 250. El PMC 3 y 4 se pueden intercambiar en caliente en el sistema o de otro modo ordenado o consultado sobre la marcha. Las realizaciones de la invención están configuradas, en general, para utilizar memoria y procesamiento mínimos para permitir la ejecución en dispositivos que tienen memoria limitada y potencia de procesamiento limitada, lo que generalmente se desconoce en la técnica con respecto a los protocolos de comunicaciones sofisticados, por ejemplo. En una o más realizaciones, la pila utiliza un hilo del núcleo para ejecutar la capa de enlace de datos y la capa inferior de transporte, mientras que las capas restantes son parte del proceso de aplicación y se ejecutan en el contexto de la aplicación. La implementación mínima de hilos soporta bloqueo de acceso, por ejemplo, las operaciones de lectura y escritura se bloquean hasta que se completa la operación. Las realizaciones también pueden soportar devoluciones de llamadas asíncronas y, en tales casos, la pila puede utilizar dos hilos, uno para operaciones de escritura y otro para operaciones de lectura, por lo que el número total de hilos utilizados es 2*N 1, donde N es el número de aplicaciones que utilizan la pila.
La figura 2 ilustra una realización en capas jerárquicas de la invención implementada como una pila de protocolos. Tal como se muestra, un mensaje de datos en la capa de aplicación tiene una longitud de N bytes. La capa de aplicación puede incluir cualquier funcionalidad independiente de la pila de protocolos que se implementa en las capas por debajo de la capa de aplicación, tal como se muestra. Cuando el mensaje se transmite de una aplicación a otra, por ejemplo, a una aplicación que se ejecuta en un periférico o subsistema, la información de control o las cabeceras se agregan al mensaje a medida que el mensaje desciende por capas. Las diversas cabeceras u otra información añadida se eliminan a medida que el mensaje sube a través de la pila de protocolos hasta la aplicación receptora respectiva.
En una o más realizaciones, se puede utilizar una capa de administrador para implementar la primera capa en la pila de protocolos bajo de la aplicación. La capa de administrador puede proporcionar interfaces estándar para aplicaciones en cualquier sistema operativo deseado. La capa proporciona interfaces de programador de aplicaciones o API que permiten comunicaciones basadas en sockets entre aplicaciones. La capa de administrador también administra descriptores de archivo y facilita la apertura de puertos. En al menos una realización, la capa de administrador crea y si no utiliza una cabecera de mensaje que tiene un número de puerto y un descriptor de archivo.
Una capa de sesión es otra capa en la pila de protocolos y proporciona o incluye API para intercambiar datos y controlar entre la capa de administrador y la capa de sesión. La capa de sesión puede proporcionar una entrega de datos de aplicación a aplicación garantizada y permite modos de comunicación orientados a conexión y sin conexión. Esta capa también permite un modo de comunicación de difusión y multidifusión uno a uno, uno a muchos, muchos a uno. La capa mantiene la traducción entre CID y un socket o puerto virtual asociado. Para la comunicación orientada a conexión, el protocolo utiliza el CID y, de lo contrario, genera y utiliza los CID. Como el intercambio de datos orientado a conexión utiliza un establecimiento de comunicación entre aplicaciones para intercambio de datos, la capa de sesión gestiona el establecimiento de comunicación y genera un CID para la comunicación e informa a las otras capas de sesión participantes de la aplicación o aplicaciones sobre el CID. Después del establecimiento de comunicación, los paquetes de datos utilizan el CID para la comunicación. En el caso de comunicación sin conexión, no se utiliza CID y, por lo tanto, las direcciones de los puertos de origen y de destino se intercambian en cada paquete de comunicación o carga útil. En al menos una realización, la capa de administrador crea y utiliza una cabecera de mensaje que tiene indicadores de control y un tipo de mensaje junto con un identificador de comunicación. Esta estructura junto con una tabla de conexión ejemplar se muestra en la figura 10A, junto con tipos de mensajes ejemplares en las figuras 10B-D. Los indicadores de control pueden implementarse con un indicador de capa de 1 bit, un tipo de conexión de 2 bits y una fuente CID de 1 bit, por ejemplo. La capa de sesión utiliza algunos mensajes que están asociados con las comunicaciones sesión-sesión y nunca se pasan por la pila a la capa de administrador en una o más realizaciones. Estos mensajes generalmente se usan para establecer o cerrar conexiones, acuses de recibo, etc. Si el indicador de capa está activado, por ejemplo, ajustado a verdadero o 1, el mensaje se consumirá en la capa de sesión y no se reenviará a la pila. El indicador de tipo de conexión indica el tipo de conexión, por ejemplo, si está orientado a conexión, ajustado a 01 o si no es sin conexión ajustado a 00. Un ejemplo de protocolo sin conexión es el protocolo de datagramas de usuario o UDP, mientras que un ejemplo de protocolo orientado a conexión es el protocolo de control de transmisión o TCP. El bit de origen de CID se utiliza para identificar si los datos se envían desde la entidad que generó el CID para la conexión en uso o desde submódulos que utilizan este CID para comunicación. La entidad que genera el CID para comunicación establece este bit para todos los mensajes generados por esta para la conexión activa respectiva, mientras que otras entidades involucradas en la comunicación restablecen este indicador para los mensajes mientras usan este CID. Como el CID es único dentro de la entidad que genera el CID, puede haber CID duplicados en otras entidades. Por lo tanto, esta capa ayuda a resolver la fuente de CID (local o remota) a través de este indicador. El campo de tipo de mensaje asocia mensajes con categorías y permite que la capa de sesión sepa qué esperar en los siguientes campos. El campo de tipo de mensaje es un campo de 4 bits de ancho en una o más realizaciones. El campo de tipo de mensaje se utiliza para determinar el tipo de mensaje. Los valores ejemplares incluyen 0000 para datos, 0001 para conexión, 0010 para CID, 0011 para socket, 0100 para servicio y 0101 para información del dispositivo. Cualquier módulo que proporcione un servicio genera un CID único para comunicar con los consumidores del servicio. El Id de comunicación '0' está reservado para el tipo de comunicación sin conexión en una o más realizaciones. El campo de ID de comunicación tiene 1 byte de ancho y se utiliza para los datos que se pasan a la pila de protocolos. CID puede contener cualquier número entre 0-255. Tal como se indicó anteriormente, CID '0' es para comunicación de tipo sin conexión y, por lo tanto, no es un ID válido para comunicación orientada a conexión. Las comunicaciones de tipo orientadas a conexión tendrán un CID en el intervalo de 1-255. Por lo tanto, CID '0' es una indicación implícita de comunicación sin conexión, cualquier otro número entre 1-255 sugiere orientado a conexión. Las aplicaciones pueden establecer uno o más filtros de notificación para seleccionar el mensaje a recibir y procesar utilizando una función deseada. El mecanismo de filtrado puede utilizar una o más expresiones regulares que especifican la ubicación, la longitud y el contenido de los datos correspondientes en la porción de datos del paquete. Esta funcionalidad se implementa en la capa de gestión en una realización de la invención. Antes de que la capa de gestión envíe los datos a la aplicación, puede comprobar si se han definido filtros en los datos. Según el filtro, la capa de administrador filtra los datos y los reenvía a los respectivos manejadores de devolución de llamada.
Las realizaciones de la invención permiten que una sola aplicación mantenga conexiones con más de un dispositivo sobre una o más capas de comunicación física o implementaciones de bus. Esto se logra mediante el uso de puertos virtuales. Una sola aplicación, tal como el Administrador Terapéutico (“Therapeutic Manager”) en el UIC puede, por ejemplo, mantener conexiones abiertas con más de un PMC de bomba de medicamentos u otro dispositivo, tal como sucedería durante una infusión multicanal. De manera similar, muchas aplicaciones pueden mantener una conexión con una aplicación o dispositivo, por ejemplo, UIC, CE y otras aplicaciones pueden conectarse a un PMC en particular para recopilar información sobre el estado de la infusión.
La relación de comunicación de uno a muchos y/o de muchos a uno se puede clasificar además en tres tipos, unidifusión, multidifusión y difusión. Por ejemplo, diferentes aplicaciones pueden recopilar el estado de infusión de un PMC mediante solicitud, por ejemplo, mediante multidifusión, o el PMC puede difundir su estado en un puerto conocido y las aplicaciones interesadas pueden escuchar el puerto. Escuchar un puerto conocido puede ser anónimo o estar basado en suscripción. En modo anónimo, la aplicación de difusión transmite continuamente en un puerto conocido y cualquier aplicación puede escuchar el puerto. En el modo basado en suscripción, la aplicación de difusión no transmitirá hasta que haya al menos un destinatario, la aplicación interesada, que tendrá que solicitar el servicio y desconectarse cuando termine de usar el servicio.
Los puertos virtuales se pueden implementar habilitando un establecimiento de comunicación entre los módulos/aplicaciones participantes. Las aplicaciones que proporcionan el servicio generalmente abren un puerto y se conectan al puerto. Para cada solicitud de conexión aceptada, el proveedor de servicios genera un CID y lo devuelve a la entidad solicitante en un acuse de recibo. La comunicación posterior se realiza utilizando este CID. En general, el CID es único para la entidad que lo generó. Se usa un mensaje de desconexión para detener la comunicación y a continuación el CID se devuelve al fondo, por ejemplo, para reutilizarlo más tarde. Si el proveedor de servicios se queda sin CID, puede devolver un NAK a las solicitudes de conexión entrantes con el ID de NAK adecuado. En caso de fallo de comunicación, por ejemplo, apagado del módulo, demasiado tiempo de espera, demasiados reintentos, etc., después de esperar suficientes reintentos para enviar un mensaje, una o más realizaciones pueden asumir que la comunicación se ha detenido y a continuación se devuelve CID al fondo. Como los CID son generados por el proveedor de servicios y son únicos dentro de la entidad, puede haber CID duplicados en otras subentidades. Para evitar el conflicto debido a CID duplicados, se pueden mantener dos tablas de CID, una para el CID generado por el sistema y la otra para los CID generados por otros sistemas involucrados en la comunicación. El creador de CID establece el indicador "fuente de CID", por lo que cuando otras aplicaciones involucradas consultan este indicador, realizan una búsqueda en la tabla CID adecuada. Cada entidad puede, por tanto, mantener una tabla compartida por las aplicaciones que se ejecutan en la misma. Esta tabla se mantiene en la capa de sesión y sirve como tabla de referencia para enrutar los paquetes de datos entrantes a los respectivos puertos/sockets.
Un escenario de ejemplo se ilustra en la siguiente tabla, y también se muestra en la parte inferior de la figura 10A con fines ilustrativos y no pretende limitar la invención reivindicada. Tal como se muestra, el tipo de conexión se puede ajustar a un valor indicativo de un tipo de comunicación orientada a conexión, como TCP, tal como se muestra, o un tipo de comunicación sin conexión, como UDP, tal como se muestra, o un "servicio", por ejemplo, una aplicación que existe para registrar datos para otras aplicaciones. La dirección de destino, el puerto de destino y el ID de comunicación generalmente identifican de forma única una fila en la tabla mencionada anteriormente. La dirección de destino es la dirección lógica de un dispositivo involucrado en una comunicación. Las realizaciones pueden soportar entradas repetidas con la misma dirección de destino, lo que indica múltiples conexiones activas con el mismo dispositivo de destino. El campo de puerto de origen almacena el número de puerto local responsable de manejar la(s) comunicación/comunicaciones con el CID asociado a las mismas. En función del CID, los mensajes recibidos se enrutan al puerto respectivo. Varias entradas repetidas en la columna del puerto de origen sugieren que varias aplicaciones comunican a través del mismo puerto, lo que puede ser indicativo de una comunicación de uno a muchos, por ejemplo. En una o más realizaciones, las aplicaciones pueden registrar o proporcionar de otro modo una solicitud a un proveedor de servicios para recibir mensajes. El puerto de destino es el número de puerto en el dispositivo de destino involucrado en una comunicación. La comunicación entre un puerto de destino y el puerto local asociado al mismo tiene lugar a sobre el CID respectivo. Por lo tanto, el CID se comporta como una clave para esta comunicación. Dado que el CID es un número único asignado a distintas solicitudes de comunicación, y que puede implementarse con un tipo de datos particular de cierto tamaño, puede haber un límite superior al número de conexiones activas que puede manejar el sistema/la aplicación. El límite superior es, por lo tanto, un límite numérico superior del CID. Una vez que el cómputo de CID únicos excede el límite superior, una o más realizaciones envían un NAK a nuevas solicitudes de conexión entrantes. El descriptor de archivo (FD) funciona de manera similar al manejador de archivo o al descriptor de archivo en los sistemas operativos estándar, como reconocerá un experto en la materia. Las operaciones relacionadas con la comunicación se realizan utilizando este descriptor. La repetición de entradas de FD sugiere que múltiples conexiones están siendo servidas por una comunicación de aplicación, de tipo muchos a uno. Véanse también las figuras 10B-D para las estructuras de mensaje específicas utilizadas en una o más realizaciones de la invención.
Figure imgf000007_0001
La capa de transporte es otra capa en la pila de protocolos y es responsable de la entrega de datos de capa de transporte a capa de transporte. Esta capa maneja el control de flujo, los tiempos de espera, los acuses de recibo y la fragmentación y reensamblaje de datos y también resuelve la prioridad de los datos. Al menos una realización de la pila de protocolos soporta dos o más niveles de prioridad, por ejemplo, tres niveles de prioridad, prioridad alta, prioridad media y prioridad baja y, dependiendo de la prioridad de los datos, la capa de transporte coloca los datos en una cola de prioridad respectiva. La capa de transporte puede implementarse con dos subcapas, a saber, las capas superior e inferior de transporte. La capa superior de transporte, junto con las capas de administrador y de sesión, reside en el espacio de la aplicación, mientras que la capa inferior de transporte, junto con la capa de enlace de datos, reside en el espacio del núcleo. La capa superior de transporte maneja la lectura y escritura en colas de prioridad, la fragmentación y el reensamblaje de datos y los acuses de recibo de capa de transporte a transporte, mientras que la capa inferior de transporte puede implementarse como una capa muy delgada y maneja la lectura de colas de prioridad y la comunicación con otra u otras capas de pila, por ejemplo, una capa de pila inferior. Esta estructura junto con un tipo de mensaje de ejemplo en las figuras 11A-B.
La capa de transporte generalmente asegura que los datagramas de tamaño manejable se envíen a través del bus subyacente. Por lo tanto, esta capa analiza los datos que proceden de las capas superiores y si el tamaño de los datos supera el tamaño de la unidad máxima de transmisión (MTU), la capa fragmenta los datos entrantes para que quepan dentro de los límites de la MTU. Por lo tanto, las realizaciones de la invención pueden utilizar cualquier tipo de bus de cualquier tamaño, por ejemplo, un bit para un bus en serie, o múltiples bits para un bus en paralelo de cualquier anchura. La capa añade información adecuada a los datos para que se puedan volver a ensamblar fielmente en el extremo receptor. Si los datos entrantes se pueden enviar en tres fragmentos, el campo 'ID de fragmento' se usa para numerar los fragmentos a partir de '1' y el bit 'indicador extendido' no se usa. Todos los ceros en el campo 'ID de fragmento' indican un mensaje no fragmentado y, por lo tanto, se trata como un mensaje independiente. Si un mensaje requiere que se transmitan más de tres fragmentos, se establece 'indicador extendido', lo que permite usar 8 bits adicionales (el campo ID de fragmento extendido es de 8 bits) para numerar los fragmentos. Con este indicador activado, hay un total de 10 bits disponibles para la numeración que pueden soportar 1023 (2A10 - 1) fragmentos. En el extremo receptor, se inspecciona el 'indicador extendido' para determinar si se usa o no el 'ID de fragmento extendido'. Si el indicador está activado, el receptor asume que los fragmentos llegan en secuencia, comenzando desde el número de secuencia 1. Pero, si el indicador no está activado, el receptor inspecciona el campo ID de fragmento'. Si el campo 'ID de fragmento' tiene cero, esto indica un mensaje independiente, pero si es un valor distinto de cero, el receptor trata el mensaje recibido como datos fragmentados (espera un máximo de tres paquetes). Una vez se reciben todos los fragmentos, el receptor volverá a ensamblar todos los fragmentos en un solo mensaje. Para ello, el receptor alinea todos los mensajes recibidos en orden ascendente de su ID de fragmento. A continuación, el receptor verifica que no se haya perdido ningún fragmento en la secuencia. Si todos los fragmentos se reciben correctamente, el receptor elimina la información de la cabecera de la "capa de transporte" de todos los fragmentos relacionados y los concatena en un solo mensaje. Si la capa de transporte tiene memoria limitada para volver a ensamblar todos los fragmentos, reenvía los fragmentos a la pila, a medida que llegan, que se vuelve a ensamblar en la memoria intermedia de aplicación.
El control de congestión es proporcionado asimismo por la capa de transporte, que puede implementar mensajes dedicados específicamente por la capa de transporte a la capa de comunicación. Estos mensajes específicos se consumen en la capa de transporte y no se pasan a la pila. Uno de estos mensajes es el mensaje de ventana, que se intercambia para determinar el tamaño de la ventana para el intercambio de datos.
Antes de enviar el primer fragmento de los datos fragmentados, el transmisor solicita un tamaño de ventana del receptor. El receptor observa el espacio de memoria intermedia disponible en la memoria intermedia de aplicación y calcula la cantidad de fragmentos que puede organizar antes de quedarse sin memoria disponible. Este responde a la solicitud de los transmisores con este número calculado, como tamaño de ventana. A continuación, el transmisor envía fragmentos del tamaño de una ventana antes de esperar un acuse de recibo. Una vez que el receptor recibe todos los mensajes transmitidos en una ventana, verifica que todos los fragmentos estén en la secuencia deseada y envía un acuse de recibo por el último fragmento recibido en la secuencia. Si el receptor determina que faltan uno(s) fragmento(s), envía un NAK para el fragmento faltante y el transmisor retransmite el/los fragmento(s) respectivo(s). El transmisor puede verificar el tamaño de la ventana en medio de la comunicación para mantener optimizado el intercambio de datos; además, si al receptor le quedan pocos recursos, puede enviar explícitamente una respuesta de ventana y actualizar el transmisor acerca del tamaño de la ventana.
La capa de transporte también es responsable de la entrega fiable de datos. La capa de transporte tiene la capacidad de garantizar la entrega de datos al extremo receptor. La capa de transporte tiene un campo para acuse de recibo. El receptor puede enviar un acuse de recibo para cada paquete de datos recibido con el indicador de acuse de recibo activado. En el caso de mensajes fragmentados, se envía un acuse de recibo cuando se ha recibido el último fragmento en una ventana o se ha recibido la última trama en el mensaje, o el temporizador expira antes de que se hayan recibido todos los mensajes.
Las realizaciones de la capa de transporte también pueden implementar un "tiempo de vida". Por ejemplo, después de transmitir un mensaje, el transmisor inicia un temporizador y espera un acuse de recibo. Si se recibe un acuse de recibo, el temporizador se restablece y se transmiten los siguientes paquetes. Pero si no se recibe un acuse de recibo, la capa de transporte vuelve a transmitir el mensaje y nuevamente espera un acuse de recibo. El transmisor volverá a intentar enviar el mensaje un cierto número de veces y, si no obtiene un acuse de recibo, asumirá que el receptor no está disponible e informará a las capas superiores. En caso de fragmentación, el transmisor envía mensajes del tamaño de una ventana y a continuación espera un acuse de recibo del último fragmento enviado. Si el temporizador expira, el transmisor reenviará de nuevo los mensajes.
La capa de transporte también puede implementar detección y recuperación de fallos. Por ejemplo, la capa de transporte en el receptor puede solicitar al transmisor que retransmita tramas seleccionadas a través de mensajes de capa a capa.
La capa de transporte también puede implementar prioridad para los mensajes. Por ejemplo, las capas superiores pueden pasar la prioridad del mensaje a esta capa y esta capa añade la prioridad a la cabecera del mensaje. La cabecera tiene campos de dos bits para la prioridad del mensaje y, por lo tanto, hay cuatro niveles de prioridad posibles en una o más realizaciones, aunque se puede usar cualquier número de bits para la prioridad para implementar más niveles, y esto aplica a todas las particiones de mensajes y números de bits descritos en este documento. Cada nivel de prioridad tiene su propia cola y, según la prioridad del mensaje, la capa de transporte los coloca en las respectivas colas para que sean procesador por otras capas. Como hay cuatro niveles de prioridad en una realización de 2 bits, puede haber un máximo de cuatro colas de prioridad y un mínimo de una cola, pero el número de colas de prioridad depende del número de niveles de prioridad utilizados.
La capa de enlace de datos es otra capa, a modo de ejemplo y no de limitación, la capa más baja, en la pila de comunicación y es responsable de la entrega de datos de subsistema a subsistema. Esta capa reside completamente en el espacio del núcleo. La capa de enlace de datos también se puede implementar con dos subcapas, por ejemplo, una capa de enlace y una capa de acceso a medios (MAC). La capa de enlace verifica la integridad de los datos calculando/verificando el CRC para cada trama de datos saliente/entrante y también maneja cualesquiera acuses de recibo de hardware, por ejemplo. La capa también maneja solicitudes de direcciones lógicas únicas y genera y asigna direcciones únicas. La capa MAC utiliza uno(s) controlador(es) que maneja(n) el/los bus(es) o los canales de comunicación físicos subyacentes. A medida que las tramas de datos llegan a los buses, la capa MAC copia los datos recibidos a un fondo de memoria y pasa el puntero a los datos copiados a la capa de enlace. Al menos una realización soporta comunicación sobre múltiples tecnologías de transferencia de datos subyacentes o implementaciones de hardware tales como serie, CAN, SPI, SDIO, USB o cualquier otro tipo de medio de comunicación o bus de datos. Esta estructura junto con un tipo de mensaje de ejemplo en las figuras 12A-B.
En una o más realizaciones, la capa de enlace de datos es responsable de la integridad de los datos, por ejemplo mediante el uso de verificación CRC o cualquier otro tipo de formato o codificación de integridad de datos deseado. Las realizaciones de la capa de enlace de datos también son responsables de la asignación de direcciones lógicas. Por ejemplo, esta capa es responsable de asignar y administrar las direcciones lógicas de los módulos en un dispositivo. Todos los módulos, como el controlador del motor de la bomba, el controlador de la fuente de alimentación, el motor de comunicación, el controlador de la interfaz de usuario, etc., tienen un ID único para que puedan identificarse de manera única en una bomba. La pila de protocolos puede soportar 254 módulos, dado que el campo de dirección es de 1 byte y las direcciones lógicas 00, 01 y FF son direcciones reservadas. Si los módulos se identifican según su dirección de hardware única (direcciones MAC), y dado que las direcciones de hardware tienen más de un byte de tamaño, esto añadiría una sobrecarga al protocolo. Para evitar esto, a cada módulo se puede asignar una dirección lógica entre 1 y 255 y a continuación esta capa mantiene las direcciones asignadas. La capa de aplicación no necesita saber cuál es la dirección del hardware o cuál es la dirección lógica en general, lo que simplifica las llamadas lógicas y de API.
A uno de los módulos generalmente se le asigna la tarea de generar direcciones lógicas únicas para otros módulos en el dispositivo, sin importar si esos módulos están conectados directamente a este módulo especial o no. Cuando el dispositivo se enciende, todos los módulos se encienden según lo programado. El módulo responsable de generar la dirección de los dispositivos se denomina dispositivo "raíz". El dispositivo raíz es consciente de su rol especial y se asigna a sí mismo una dirección lógica de 01. A medida que otros módulos se despiertan, asumen su dirección lógica como 00. Estos saben que 00 no es una dirección válida pero también saben que existe un módulo con dirección 01 que puede proporcionarles una dirección única.
Por lo tanto, estos módulos envían solicitudes de dirección a un destino con la dirección 01. Al recibir este mensaje, el módulo raíz verifica su tabla interna para verificar si el hardware solicitante ya tiene una dirección lógica asignada. Si se asigna una dirección lógica, el módulo raíz envía esa misma dirección lógica en respuesta; de lo contrario, genera una dirección lógica única, actualiza esta dirección en su tabla interna con la dirección MAC del solicitante y envía esta dirección en respuesta. Al recibir una respuesta de dirección, el módulo solicitante comienza a comunicar con esta dirección lógica.
Un módulo en una o más realizaciones puede no comunicar sin una dirección lógica válida. Si varios módulos intentan solicitar una dirección lógica, habrá colisiones. Debido a las colisiones, ninguna solicitud llega nunca al módulo raíz y, por lo tanto, ninguno de los módulos recibe una dirección lógica. En este escenario, otros módulos volverán a intentarlo después de un período de tiempo aleatorio. Dependiendo de la criticidad del dispositivo, la cantidad de tiempo aleatorio puede variar, es decir, los dispositivos críticos pueden esperar un período de tiempo menor antes de volver a intentarlo. La cantidad de tiempo de espera puede ser parte de la configuración y los dispositivos pueden esperar haciendo referencia a su reloj interno, por ejemplo.
Si un dispositivo no desea utilizar el mecanismo de direccionamiento dinámico, cada módulo puede programarse con una dirección única, por ejemplo, para implementar un esquema de asignación de direcciones estáticas versus dinámicas. Las realizaciones pueden seguir utilizando un módulo raíz que mantiene las direcciones de los módulos conectados.
Las realizaciones de la capa de enlace de datos también pueden implementar enrutamiento. Tal como se ha mencionado, un módulo puede tener múltiples tipos de bus o topologías y puede haber diferentes tipos de dispositivos conectados en varios buses. Si una capa de enlace de datos recibe un paquete que no está dirigido a la misma, primero verifica si tiene varias arquitecturas de bus y, si es cierto, reenvía el mensaje a otros buses; de lo contrario, simplemente descarta el paquete. Este tipo de mecanismo de direccionamiento es muy adecuado para la topología en estrella, por ejemplo. Por lo tanto, si PMC1 quiere enviar datos a PMC2 pero no hay una ruta de datos directa, entonces los redirigirá a través del módulo raíz. En este caso, el módulo raíz puede difundir el mensaje en la red o realizar una búsqueda en su tabla interna y simplemente reenviar el paquete en una línea específica. Por lo tanto, en una o más realizaciones que implementan enrutamiento, cada módulo que soporta múltiples buses de comunicación puede mantener una lista de todos los dispositivos conectados directamente al módulo para que puedan enrutar los paquetes de manera eficiente. Como la pila soporta el enrutamiento de datos, une sin problemas varios buses de datos heterogéneos, lo que hace que la comunicación y la topología del bus sean independientes. Algunos ejemplos de posibles topologías de bus incluyen topologías de anillo, estrella, malla y árbol o cualquier otra topología que pueda utilizarse para transferir datos.
La figura 3 ilustra una realización de un método de solicitud de dirección implementado dentro de la capa de administrador. Tal como se muestra, cuando se añade un dispositivo al sistema, por ejemplo, se intercambia en caliente, el dispositivo se inicia y solicita una dirección del dispositivo raíz. El nuevo dispositivo espera una respuesta y, si se agota el tiempo de espera, vuelve a solicitar una dirección. Una vez que el dispositivo raíz recibe el mensaje de solicitud de dirección, busca un número de dispositivo disponible y genera una dirección lógica para el nuevo dispositivo y actualiza la tabla. Alternativamente, si no quedan números disponibles, se puede devolver un NAK con el mensaje de error apropiado al nuevo dispositivo. El dispositivo raíz devuelve la dirección lógica del nuevo dispositivo al nuevo dispositivo en un mensaje de respuesta de dirección. Cualesquiera solicitudes adicionales de la dirección se gestionan mediante búsqueda a través del dispositivo raíz. El nuevo dispositivo almacena la dirección lógica en una tabla local para su uso posterior. Esta capacidad generalmente no existe en dispositivos médicos o bombas de infusión, dado que generalmente se supone que las configuraciones son fijas, utilizando un sistema operativo fijo y un bus fijo sin tener en cuenta potenciales nuevos dispositivos y nuevos tipos de dispositivos que puedan comunicar con un dispositivo raíz.
La figura 4 ilustra una realización de una secuencia de infusión simple que utiliza varios mensajes proporcionados por realizaciones del método. Una vez que se obtiene la dirección de un nuevo dispositivo, este puede comunicar con los otros componentes dentro del sistema. La figura muestra el controlador de interfaz de usuario UIC que tiene el número de dispositivo 1, inicialmente conectado a una bomba de infusión de medicamentos que tiene el número de dispositivo 3, donde las direcciones lógicas de los dispositivos o los números de dispositivo se obtienen tal como se muestra en la figura 3. El UIC acepta la entrada de un cuidador que indica que se va a realizar una infusión. La aplicación UIC calcula los pasos necesarios para lograr la infusión y envía una cabecera de infusión y un mensaje de datos a la bomba de infusión de medicamentos, que acusa recibo del mensaje. A continuación, el UIC envía un mensaje de datos de seguridad de la infusión, que se acusa y, una vez completada la infusión, el UIC envía un mensaje de datos de parada de la infusión, que se acusa. Este escenario es un escenario típico que permite añadir cualquier tipo de bomba de infusión de medicamentos a un sistema y utilizarla, por ejemplo, en un escenario de intercambio en caliente donde una bomba de infusión puede devolver un error, o se va a añadir al sistema, y a utilizar un tipo diferente de bomba de infusión de medicamentos, por ejemplo.
La figura 5 ilustra una realización de un método de conexión implementado dentro de la capa de sesión. En el escenario mostrado, el UIC solicita una conexión para comunicarse con el PMC para dirigir el PMC y/o por ejemplo obtener actualizaciones de estado. En este caso, el PMC actúa como un proveedor de servicios dado que el PMC proporciona actualizaciones de estado en un puerto conocido. El UIC envía una solicitud de conexión al PMC en ese puerto, por ejemplo, el puerto 10, que se muestra como un mensaje que pasa de izquierda a derecha. Después de recibir la solicitud de conexión, el PMC acepta la solicitud, genera un CID único, por ejemplo, 26 para esta comunicación y actualiza su tabla interna. El PMC envía el CID generado de retorno al UIC como parte del mensaje de aceptación de conexión, que se muestra viajando de derecha a izquierda. Al recibir el mensaje de aceptación de conexión del PMC, el UIC extrae el CID del mensaje y actualiza su tabla CID interna tal como se muestra en la parte inferior izquierda. A continuación, el UIC envía un mensaje de acuse de recibo al PMC para confirmar la recepción satisfactoria de CID. Si el PMC no puede procesar la solicitud de UIC y, por lo tanto, no puede establecer comunicación, el PMC envía un mensaje de rechazo de conexión al UIC. Al recibir el mensaje de rechazo de conexión, el UIC puede volver a intentar obtener una conexión. Véanse también las figuras 10A-D, 11A-B y 12A-B para ver una realización de las estructuras de mensajes de ejemplo que se pueden utilizar para formar una implementación de varias capas, que se describen con más detalle a continuación.
La figura 6 ilustra una realización de un método de intercambio de datos implementado dentro de la capa de sesión. Una vez que el PMC recibe el acuse de recibo del UIC, el proceso de conexión se completa. En este momento, ambos dispositivos pueden intercambiar datos utilizando el CID acordado. Cuando la capa de sesión de PMC recibe cualesquiera datos del UIC con un CID válido, realiza una búsqueda en su tabla interna contra el 'ID de destino' y el 'CID' para resolver el número de puerto donde se reenviará el paquete.
La figura 7 ilustra una realización de un método de solicitud de desconexión implementado dentro de la capa de sesión. Una vez completada la transmisión de datos, cualquiera de las partes comunicantes puede solicitar la finalización de la conexión. Tal como se muestra, el UIC inicia el proceso de finalización de la conexión. Este envía una solicitud de desconexión a PMC con el CID respectivo. El PMC procesa la solicitud y, si no hay comunicación activa, el PMC enviará un acuse de recibo al UIC y eliminará la entrada del CID de su tabla. Al recibir el acuse de recibo de desconexión de PMC, el UIC también elimina las entradas de CID de su tabla.
Aunque el protocolo general de comunicación de la capa de sesión se ha descrito anteriormente, sigue una descripción más detallada de los mensajes de la capa de sesión, según una o más realizaciones de la invención. Las estructuras de mensaje utilizadas en una o más realizaciones de la invención, como se describe a continuación, se muestran en las figuras 10B-D.
Mensaje de solicitud de conexión
Para una sesión de comunicación orientada a conexión, cuando una aplicación abre un socket para comunicar a través de un puerto en algún otro dispositivo, se realiza un establecimiento de comunicación antes de que comience la comunicación. El establecimiento de comunicación comienza con un mensaje de tipo solicitud de conexión al proveedor de servicios. El "indicador de capa" se activa para este tipo de mensaje. Por lo tanto, el paquete de solicitud es consumido por la capa de sesión. El tipo de conexión puede configurarse inicialmente como "desconocido", lo que sugiere que el paquete de datos no es orientado a conexión ni sin conexión. El tipo de mensaje se ajusta a "Conexión" ya que el comando se utiliza para establecer una nueva conexión. El mensaje es una solicitud para establecer una nueva conexión; por lo tanto, el campo "Comando" contiene "Solicitud de conexión". La aplicación que solicita una conexión especifica la dirección de puerto del destino y también proporciona su propia dirección de puerto, por lo tanto, el paquete de solicitud de conexión tiene una dirección de puerto de origen y una de destino.
Mensaje de aceptación de conexión
Al recibir un mensaje de solicitud de conexión, si el proveedor de servicios tiene suficientes recursos, responde con un tipo de mensaje de aceptación de conexión. El proveedor de servicios genera un CID para la comunicación y lo envía al solicitante como parte de este mensaje. Como la entidad que solicita la conexión no tiene información del CID generado, el proveedor de servicios envía la dirección de los puertos de origen y de destino como parte de este mensaje para informar al otro extremo sobre el CID generado.
Mensaje de acuse de recibo de conexión
Al recibir un mensaje de aceptación de conexión, el extremo solicitante actualiza su tabla interna con el CID recibido. En respuesta al mensaje de aceptación de conexión, el extremo solicitante envía un mensaje de acuse de recibo para indicar al proveedor de servicios la recepción de CID y completar el establecimiento de comunicación. Es posible que múltiples aplicaciones en un módulo soliciten comunicar con una aplicación en otro módulo en el mismo número de puerto, por ejemplo, muchos a uno. Para informar al proveedor de servicios sobre la aplicación particular que está enviando un acuse de recibo, se añade "puerto de origen" al mensaje de acuse de recibo.
Mensaje de desconectar conexión
Una vez completada la comunicación, cualquiera de las entidades participantes podrá solicitar la desconexión de la conexión para una finalización ordenada de la misma.
Mensaje de acuse de recibo de desconexión de conexión
Este mensaje se envía como acuse de recibo al recibir un mensaje de desconexión. El mensaje está destinado a garantizar que una comunicación no finalice si todavía existe una conexión activa. Si no se recibe un acuse de recibo de desconexión dentro de un cierto período de tiempo, se puede realizar un nuevo intento de desconexión. Mensaje de rechazo de conexión
Si el proveedor de servicios no puede aceptar nuevas conexiones, envía un rechazo de conexión en respuesta a un mensaje de solicitud de conexión. En el mensaje de rechazo de conexión, envía el motivo del rechazo de la solicitud. Al recibir un mensaje de rechazo de conexión, el solicitante puede volver a intentarlo después de algún tiempo, por ejemplo.
Mensaje de solicitud de información de CID
Cualquier participante involucrado en la comunicación puede solicitar el estado de CID. Este mensaje actúa como un mensaje de ping para verificar si el puerto de destino está abierto y si el CID es un CID activo.
Mensaje de respuesta de información de CID
Al recibir una solicitud de información de CID, se transmite una respuesta de información de CID. Este mensaje contiene las direcciones de los puertos de origen y de destino involucradas en la comunicación, el tamaño de la ventana para la transmisión, etc., y también indica si el CID está activo o no.
Mensaje de solicitud de estado de socket
Este mensaje se utiliza para solicitar información relacionada con el socket, tal como el tipo de socket, el propósito de abrir este socket, etc.
Mensaje de respuesta de estado de socket
Este mensaje se envía en respuesta al mensaje de solicitud de estado de socket. El mensaje contiene información relacionada con el socket, tal como el tipo de socket, el propósito de abrir este socket, etc.
Mensaje de suscripción al servicio
El protocolo de comunicación permite que las aplicaciones proporcionen un servicio, por ejemplo un servicio de difusión. Por ejemplo, el PMC puede tener un servicio en ejecución que difunde periódicamente el estado del PMC en un puerto conocido. Si el UIC solicita el estado de PMC, simplemente puede suscribirse a este servicio con el PMC y recibir los mensajes. Por lo general, estos servicios son de comunicación unidireccional.
Mensaje de acuse de recibo de suscripción al servicio
Una vez que el proveedor de servicios recibe una solicitud de suscripción, tienen que proporcionar un CID al solicitante. El CID se entrega por medio de un mensaje de acuse de recibo.
Mensaje de cancelación de la suscripción al servicio
Si una aplicación suscrita ya no desea estar suscrita a un servicio, puede solicitar cancelar la suscripción. Al recibir un mensaje de cancelación de suscripción al servicio, el proveedor de servicios elimina las entradas de su tabla CID interna y envía un acuse de recibo al solicitante. Si el proveedor de servicios descubre que no hay nadie suscrito a un servicio, puede decidir detener el servicio de difusión hasta que tenga al menos una aplicación suscrita.
Mensaje de acuse de recibo de cancelación de la suscripción al servicio
Al recibir este mensaje, la aplicación que solicita la cancelación de la suscripción elimina las entradas de CID de su tabla interna y libera los sockets y puertos involucrados.
Mensaje de solicitud de dirección del dispositivo
Una aplicación puede solicitar una dirección lógica para un dispositivo utilizando este mensaje.
Mensaje de respuesta de dirección del dispositivo
Al recibir un mensaje de "Solicitud de dirección", un dispositivo envía su dirección como parte del mensaje de respuesta. Alternativamente, un mensaje de respuesta de dirección de dispositivo se puede enviar de forma independiente en cualquier momento y no necesariamente estar vinculado a un mensaje de solicitud.
Mensaje de solicitud de tipo de dispositivo
Este mensaje se utiliza para solicitar el nombre de un dispositivo. Cada dispositivo conectado tiene una dirección única, pero puede tener nombres no únicos o no tener nombres. Los tipos de dispositivos pueden ser PMC, CE, UIC, etc.
Respuesta del tipo de dispositivo
Este mensaje generalmente se envía en respuesta al mensaje de "Solicitud de tipo de dispositivo" y contiene el tipo de dispositivo que envía este mensaje. Alternativamente, un mensaje de respuesta de tipo de dispositivo se puede enviar de forma independiente en cualquier momento y no necesariamente estar vinculado a un mensaje de solicitud.
Mensaje de datos orientado a conexión
Al menos una realización de la capa de sesión añade solo dos bytes de información de cabecera cuando se envían datos entre dispositivos. El CID se genera e intercambia durante el proceso de establecimiento de comunicación previo a la transferencia de datos.
Mensaje de datos sin conexión
La transferencia de datos sin conexión se usa cuando no se requiere un establecimiento de comunicación para transferir datos. Como no hay establecimiento de comunicación, no se genera un CID para la comunicación y, por lo tanto, se utilizan los números de puerto de origen y de destino para garantizar la entrega de datos.
Las figuras 11A-B y 12A-B ilustran estructuras de mensajes correspondientes para realizaciones ejemplares de la capa de transporte y la capa de enlace de datos respectivamente, y se describen más adelante.
La figura 8 ilustra un diagrama de flujo de capas que muestra el flujo de datos dentro de las diversas capas implementadas en al menos una realización de la invención. Específicamente, se muestra el flujo de datos ascendente en la pila de protocolos para los datos entrantes. La ubicación de la memoria intermedia de aplicación de destino no se conoce hasta que la trama de datos sube a la capa de administrador. Por lo tanto, el fragmento se almacena en un fondo de memoria hasta que llega a la capa de administrador y, una vez que se resuelve la aplicación de destino, los datos se copian del fondo de memoria a la memoria intermedia de aplicación. En una o más realizaciones, la utilización de memoria puede minimizarse devolviendo una memoria intermedia a la memoria si la memoria intermedia está por encima de un umbral de antigüedad predefinido.
Capa de enlace de datos
La capa de enlace de datos controla uno o más enlaces físicos de comunicaciones, buses de datos. La capa filtra los mensajes dirigidos al dispositivo específico e ignora otros mensajes. La capa puede calcular un CRC en el paquete recibido y verificarlo con el CRC recibido. Las tramas de datos válidos se copian en un fondo de memoria y el puntero a estos mensajes se reenvía a la capa de transporte.
La capa inferior de transporte y la capa de enlace de datos se ejecutan como un servicio independiente y almacenan datos en la cola de prioridad designada, P1, P2, P3 o P4. La capa superior de transporte, y las capas de sesión y de administrador se ejecutan en el espacio de la aplicación, y la capa superior de transporte mantiene punteros a las colas de prioridad y las tablas de ID de comunicación. En una o más realizaciones, el fondo de memoria, las colas de prioridad y las tablas de CID están en el espacio de memoria compartida.
En una o más realizaciones, la capa de enlace de datos se divide además en dos subcapas, una capa de enlace y una capa MAC. La capa MAC puede interactuar con los controladores de bus y tiene una memoria intermedia para cada bus subyacente. A medida que los datos llegan a estos buses, los datos se copian en estas memorias intermedias y a continuación se envían a la capa de enlace. La memoria intermedia puede implementarse como un par de memorias intermedias, mientras que una memoria intermedia se usa para recibir nuevos datos, la otra memoria intermedia se usa para transferir datos recibidos previamente.
La capa de enlace copia los datos de las memorias intermedias en el fondo de memoria. El fondo de memoria es un bloque de memoria contiguo y cada bloque de memoria puede implementarse como un factor de longitud de trama. A medida que la aplicación consume datos, los datos se eliminan del fondo de memoria para dejar espacio para nuevos paquetes de datos. Como la aplicación consume datos aleatoriamente, puede haber huecos de memoria en el fondo de memoria. Por lo tanto, la capa de enlace generalmente mantiene una lista de ubicaciones de memoria disponibles en el fondo de memoria. Cuando se libera memoria del fondo de memoria, el puntero a la ubicación disponible se añade al final de esta lista. Cuando llega un nuevo paquete, se coloca en la memoria a la que apunta el primer elemento de esta lista. Si no hay ningún elemento en la lista, el fondo de memoria se considerará lleno y los paquetes se descartarán. En una o más realizaciones de la invención, se puede utilizar un administrador de memoria para controlar el acceso a la memoria desde las diversas capas, incluido el control de acceso simultáneo a la memoria desde las diversas capas. Las realizaciones de la invención pueden minimizar o evitar por completo múltiples operaciones de copia manteniendo una copia de datos en el fondo de memoria mientras se pasan punteros a la memoria a medida que los datos se mueven hacia arriba y hacia abajo en la pila. Al controlar el acceso a la memoria durante el acceso, se pueden utilizar semáforos para garantizar la integridad de los datos al tiempo que se permite que múltiples procesos utilicen eficazmente los datos de manera simultánea. Evitar múltiples operaciones de copia permite una utilización mínima de la memoria en entornos integrados y también minimiza la utilización del procesador.
Como el transmisor tiene tendencia a enviar datos a los buses, estos pueden rápidamente utilizar en exceso el bus transmitiendo demasiados datos. El controlador de bus en la capa MAC en una o más realizaciones puede implementarse para manejar tales escenarios.
Capa de transporte
En una o más realizaciones, la capa de transporte se puede dividir en dos subcapas, una capa superior de transporte y una capa inferior de transporte. La capa superior de transporte reside en el espacio de la aplicación, mientras que la capa inferior de transporte reside en el espacio del núcleo. Estas dos capas juntas manejan las funcionalidades de la capa de transporte.
La capa de transporte se implementa en una o más realizaciones para volver a ensamblar datos fragmentados y también para resolver la prioridad de los datos. Cuando la capa inferior de transporte recibe un nuevo paquete de datos, se puede iniciar un temporizador para los datos. Si los datos no se consumen antes de que expire el temporizador, los datos se pueden descartar y la memoria se puede liberar del fondo de memoria. Esto evita el agotamiento de la memoria si no existe ninguna aplicación para consumir los datos recibidos. Si se activó el campo de acuse de recibo, la capa de transporte envía un NAK, código de error "tiempo agotado en la cola de prioridad", por ejemplo.
La cabecera de la capa de transporte tiene un indicador de acuse de recibo y, si el indicador está activado, la capa de transporte receptora tendrá que enviar algún tipo de acuse de recibo para el fragmento de datos recibido. Si se reciben datos fragmentados, el acuse de recibo se envía después de recibir una cantidad de datos del tamaño de la ventana o un mensaje completo. Este indicador se activa para una transferencia de datos orientada a conexión, para garantizar la entrega de datos. Este indicador también se puede activar en una transferencia de datos sin conexión solo si se utiliza fragmentación de datos.
Tratamiento de paquetes de datos fragmentados
En el caso de datos fragmentados, antes de que el transmisor comience a enviar fragmentos de datos, la capa superior de transporte en el transmisor solicita primero un tamaño de ventana al receptor. El tamaño de la ventana se puede cambiar una vez durante la primera transferencia de datos o se puede obtener antes de cada transferencia de datos. El tamaño de la ventana es la cantidad de fragmentos de datos que se pueden enviar antes de que se espere un acuse de recibo. Cuando el receptor recibe una solicitud de tamaño de ventana, la capa superior de transporte en el extremo del receptor calcula la cantidad de memoria libre en la memoria intermedia de aplicación y envía la respuesta como tamaño de ventana en el mensaje de "respuesta de tamaño de ventana".
En una o más realizaciones, la capa superior de transporte en el lado del transmisor inicializa una estructura de datos para el CID que solicitó un tamaño de ventana. En esta estructura, la capa de transporte almacena el CID, el último tamaño de ventana notificado, el último número de fragmento recibido con éxito y el período de tiempo máximo permitido entre dos fragmentos, etc. Además, la capa superior de transporte en el receptor mantiene la misma estructura. La capa de transporte espera que los fragmentos se numeren secuencialmente a partir de 1 en una o más realizaciones.
A medida que el transmisor recibe un mensaje de ventana, calcula el número de fragmentos que se transmitirán antes de esperar un acuse de recibo. El transmisor comienza a enviar fragmentos de datos en secuencia a partir del fragmento número 1, por ejemplo.
Cuando el receptor recibe el primer fragmento, la capa inferior de transporte inicia un temporizador en la trama de datos recibida y coloca el fragmento en la cola de prioridad respectiva. La capa superior de transporte actualiza la estructura y almacena el número de secuencia del fragmento. Si las capas superiores entregan el fragmento a la memoria intermedia de aplicación, las capas superiores informan del éxito a la capa superior de transporte. La capa superior de transporte actualiza su estructura con el primer fragmento que se entrega. Las capas superiores no informan a la aplicación sobre el fragmento disponible hasta que se reciben todos los fragmentos que constituyen un mensaje. Se utiliza una memoria intermedia de aplicación para volver a ensamblar fragmentos para minimizar el consumo de memoria.
Si la capa superior de transporte recibe correctamente todos los fragmentos de una ventana, espera a que todos los fragmentos se entreguen correctamente a la memoria intermedia de aplicación. Una vez que todos los fragmentos se envían a la memoria intermedia de aplicación, el número de fragmento recibido y el número de fragmento entregado se corresponden y la capa superior de transporte envía un acuse de recibo para el último fragmento de la secuencia. El transmisor recibe el acuse de recibo en la capa superior de transporte.
Idealmente, la capa de transporte acumula todos los fragmentos, verifica que estén en secuencia y los fusiona en un mensaje completo antes de enviarlo a la pila. Sin embargo, en una o más realizaciones, la capa superior de transporte reenvía las tramas a la capa de sesión a medida que se reciben, pero asegura que los fragmentos se entreguen en secuencia. Esta implementación opcional se puede utilizar para reducir la utilización de la memoria. Este es el caso ya que el mensaje no tiene que ser reconstruido en su totalidad dentro de la pila hasta que se reciba el mensaje completo en la aplicación. Como el número de fragmento en la cabecera de transporte tiene 10 bits de anchura en una o más realizaciones, la capa puede soportar un máximo de 1023 fragmentos (el número de fragmento 0 está reservado y representa una trama de datos no de fragmento) antes de que se desborde la numeración de fragmentos. Como cada fragmento tiene una carga útil máxima de 248 Bytes, se requiere un total de 253.704 Bytes en el extremo del receptor para que cada conexión activa acomode todos los fragmentos. Se puede utilizar cualquier otro tamaño del campo de número de fragmentos para aumentar el tamaño total, tal como reconocerá un experto en la técnica.
En el receptor, a medida que se reciben fragmentos, la capa superior de transporte actualiza el último número de fragmento en su estructura. Antes de actualizar, verifica que el fragmento recibido esté en secuencia con el fragmento recibido anteriormente. Si detecta un fragmento faltante, la capa sigue reenviando los fragmentos a la pila, pero en su testigo respectivo pone un valor de compensación. Los metadatos junto con un puntero al fragmento de datos recibido se denominan un testigo. La capa de administrador utiliza este valor de compensación para proporcionar un espacio mientras acomoda otros fragmentos alrededor del que falta, de modo que el espacio se pueda llenar una vez se reciba el fragmento faltante. Por ejemplo, para crear un espacio vacío en la memoria para que cuando finalmente se reciba la trama que falta, esta se acomode en este espacio vacío para completar el mensaje final. Mientras tanto, la capa superior de transporte espera a que lleguen los fragmentos y a continuación busca cualquier fragmento faltante en la secuencia. Una vez que la capa genera una lista de todos los fragmentos faltantes, solicita la retransmisión de fragmentos desde el transmisor. Una vez se reciben los fragmentos faltantes, estos se envían a las capas superiores para que puedan usarse para llenar los espacios vacíos en el mensaje final.
Cuando se requiere retransmisión, la capa superior de transporte en el extremo del receptor envía un mensaje de solicitud de retransmisión con el número de fragmento deseado. El extremo receptor mantiene una lista de fragmentos faltantes y, a medida que se reciben los fragmentos faltantes, su entrada se elimina de esta lista.
Si el transmisor retransmite un fragmento ya transmitido, el receptor compara el número de fragmento con el último número de fragmento recibido y detectará que ha habido una retransmisión. La capa comprueba si la retransmisión fue solicitada por el receptor de forma explícita o no. Si la retransmisión fue intencional, el fragmento se consume; de lo contrario, el fragmento se descarta suponiendo una retransmisión de datos falsa.
Una vez que el transmisor envía fragmentos del tamaño de una ventana, inicia un temporizador y espera un acuse de recibo sobre el último fragmento de la secuencia. El transmisor puede enviar más fragmentos solo cuando recibe un acuse de recibo. Si el acuse de recibo se retrasa y el temporizador expira, el transmisor puede enviar un mensaje de solicitud de "tamaño de ventana" antes de retransmitir los fragmentos. Un receptor puede fallar en el envío de un acuse de recibo si el receptor está demasiado ocupado o sus memorias intermedias están llenos. Por lo tanto, se envía un mensaje de "tamaño de ventana" porque tiene dos propósitos, el primero es que una respuesta a este mensaje implica que el receptor está listo para aceptar mensajes, y el segundo es que la nueva memoria intermedia de tamaño de ventana respondida está disponible en el receptor, de modo que aumentan las posibilidades de obtener un acuse de recibo.
En caso de que falten fragmentos, el receptor envía una solicitud de retransmisión en lugar de un acuse de recibo. Solo se puede enviar una solicitud de retransmisión si el último fragmento de la secuencia se recibió con éxito o se descubrió que faltaba. Por lo tanto, el transmisor considera un mensaje de solicitud de retransmisión como un acuse de recibo implícito y ya no espera un acuse de recibo explícito, sino que puede esperar el acuse de recibo del fragmento retransmitido.
Los fragmentos faltantes pueden ser de tres tipos: falta el primer fragmento, falta cualquier fragmento(s) entre el primer y el último fragmentos de un mensaje completo, y falta el último fragmento. Si falta el primer fragmento y el receptor comienza a recibir desde el fragmento número 2, acumula todos los mensajes hasta que recibe mensajes de tamaño de ventana y solicita explícitamente el 1er fragmento. Se utiliza la misma técnica para solicitar cualquier fragmento faltante entre el 1er y el último fragmento.
Que falte el último fragmento de un mensaje completo puede ser un escenario complicado porque el transmisor nunca informa al receptor sobre el número total de fragmentos necesarios para enviar un mensaje y, por lo tanto, no hay forma de que el receptor sepa cuándo se completa el mensaje. Los "últimos" fragmentos faltantes pueden ser de dos tipos, que falte el último fragmento de una ventana y que falte el último fragmento de un mensaje. En el caso de que falte el último fragmento de una ventana, esto es fácil de detectar. Cada vez que se recibe un fragmento, el receptor inicia un temporizador y espera a que se reciba el siguiente fragmento antes de que expire el temporizador.
El transmisor envía el último mensaje para la ventana y espera un acuse de recibo. Si este mensaje se pierde, el receptor espera a que llegue este último fragmento. El temporizador del receptor expira antes que el temporizador del transmisor. A medida que el receptor realiza un seguimiento de las secuencias de fragmentos y del tamaño de la ventana, se da cuenta de que el último fragmento no se recibió a tiempo y, por lo tanto, envía una solicitud de retransmisión del último fragmento.
Un problema más difícil ocurre cuando se pierde el último fragmento de un mensaje. Como el receptor no tiene idea de cuántos fragmentos constituirán un mensaje, busca el fragmento con el indicador 'último fragmento' activado. Este fragmento indica al receptor que fue el último fragmento del mensaje. Si este fragmento se pierde, el receptor no tiene idea de cuándo dejar de volver a ensamblar fragmentos. Para asegurar la entrega de este último fragmento, el transmisor puede utilizar los siguientes dos enfoques.
En el primer enfoque, el transmisor sabe que se acerca el último fragmento. Este reduce explícitamente el tamaño de la ventana para asegurarse de que el último fragmento del mensaje también se convierta en el último fragmento de la ventana. Como el receptor puede detectar el último fragmento de una ventana, si se pierde el último fragmento de un mensaje, el receptor puede solicitar la retransmisión.
En el segundo enfoque, el transmisor enviará el último fragmento con el indicador de 'último fragmento' activado, seguido de algunos fragmentos con carga útil aleatoria pero con un número de fragmento incremental. Si falta el último fragmento del mensaje, el receptor detectará el fragmento faltante ya que habrá un vacío en los números de secuencia y solicitará una retransmisión. Cuando el receptor intenta organizar los fragmentos en secuencia, detecta el fragmento con el indicador de "último fragmento" activado y, por lo tanto, descarta todos los fragmentos que siguen a este fragmento.
Tratamiento de paquetes de datos no fragmentados
Para una trama de datos no fragmentada, esta es recibida primero por la capa inferior de transporte, que inicia un temporizador de tiempo de vida en esta trama y pone la trama en la cola de prioridad adecuada. La trama es seleccionada de la cola de prioridad por la capa superior de transporte, que la reenvía a otras capas, por ejemplo, la capa de sesión.
Capa de sesión
Las principales responsabilidades de la capa de sesión son garantizar la entrega de datos de aplicación a aplicación y generar CID únicos dentro de un sistema. La pila funciona según el principio de proveedor de servicios y consumidor de servicios. La aplicación que proporciona el servicio genera CID únicos para los participantes involucrados. El CID es único dentro del sistema que ejecuta la aplicación del proveedor de servicios, en una o más realizaciones. El CID puede considerarse como una clave utilizada para ocultar la información sobre los puertos de origen y de destino que participan en la comunicación.
La capa de sesión se puede implementar en una capa ligera o muy delgada para comunicación sin conexión, porque un paquete de datos sin conexión contendrá las direcciones de los puertos de origen y de destino como parte de sus cabeceras y, por lo tanto, no utiliza un CID.
Los paquetes que llegan a la capa de sesión se pueden dividir en dos categorías, a saber, de datos y de control. Además, los datos entrantes pueden estar orientados a conexión o sin conexión, y fragmentados o no fragmentados. Transferencia de datos orientados a conexión
La transferencia de datos orientados a conexión utiliza una conexión a través de un proceso de establecimiento de comunicación. Después de que se completa un proceso de establecimiento de comunicación inicial como se describe más adelante, se produce el intercambio de datos. En la transferencia de datos orientados a conexión, las realizaciones de la invención utilizan una cabecera de datos con un indicador de acuse de recibo activado y un tipo de conexión ajustado a 01, por ejemplo. Los datos que se intercambian pueden estar fragmentados o no fragmentados según el tamaño de los datos y el tamaño del paquete subyacente soportado por el medio físico. Datos fragmentados
Cuando una aplicación escribe en un puerto virtual, la capa de sesión añade una cabecera de capa de sesión a los datos y los reenvía a la pila. En una o más realizaciones, la cabecera de la capa de sesión tiene 2 bytes de anchura. Por lo tanto, si se necesita fragmentación en la capa de transporte, el primer fragmento se configura para contener el CID de la capa de sesión, mientras que el resto de los fragmentos pueden contener solo datos de aplicación. La capa de sesión en el extremo receptor reenvía el primer fragmento que contiene la cabecera de la capa de sesión, pero no está segura de dónde reenviar otros fragmentos de la secuencia, ya que no hay información de CID en las cabeceras posteriores. Además, si dos o más aplicaciones en un dispositivo desean enviar datos a un dispositivo, no es posible sin más información en general en el extremo receptor añadir datos fragmentados porque no hay forma de identificar de manera única qué aplicación está enviando qué fragmento de datos. Para resolver este problema, la capa de transporte copia la cabecera de la capa de sesión en todos los fragmentos relacionados. Como todos los fragmentos contendrán ahora CID, estos se pueden identificar de forma única en el extremo receptor.
La cabecera de la capa de sesión contiene un indicador de acuse de recibo que se utiliza en el caso de mensajes completos. Como la capa de sesión garantiza la entrega de datos de aplicación a aplicación, activa el indicador de acuse de recibo para que el receptor acuse la entrega satisfactoria de datos. Dado que la cabecera se copia en cada fragmento, la capa de sesión mirará el indicador y acusará recibo al transmisor cada vez que se entregue un fragmento, que no es para lo que generalmente son los acuses de recibo, es decir, un acuse de recibo de mensaje completo.
Para evitar este problema, la capa superior de transporte en el extremo del receptor añade metadatos a los paquetes a medida que se envían a la pila. Los metadatos junto con el puntero al fragmento de datos recibido se denominan testigo y, en lugar de pasar datos, la capa de transporte pasa un testigo a la capa de sesión. En el caso de excepciones en el comportamiento de la capa de sesión, los metadatos proporcionan pautas a seguir por la capa de sesión. Por ejemplo, la capa de sesión no enviará ninguna acuse de recibo de los fragmentos de datos, y cuando la capa superior de transporte recibe un fragmento con un indicador de "último fragmento" activado, actualiza los metadatos para que la capa de sesión sepa que tiene que enviar una acuse de recibo a el transmisor respecto a la recepción de un mensaje completo.
Flujo de control
A medida que los fragmentos se mueven a través de la capa de sesión, la capa de sesión extrae el CID de los fragmentos, realiza una búsqueda en la tabla de ID de comunicación según el CID y la dirección lógica de origen obtenida de los metadatos. La capa de sesión determina los puertos de origen y de destino del descriptor de archivo asociados para el CID. Una vez se conoce el descriptor de archivo, elimina todas las cabeceras y modifica los metadatos para comunicar el detalle del descriptor de archivo a la capa de administrador.
Una vez que el fragmento llega a la capa de administrador, la capa de administrador extrae la información del descriptor de archivo de los metadatos y reenvía el fragmento a la aplicación respectiva. Antes de que la capa de administrador reenvíe el mensaje a la aplicación, determina si el descriptor de archivo todavía está en uso y en el estado de aceptación de datos. Si las condiciones son favorables, el mensaje se copia en la memoria intermedia de aplicación y se activa un indicador de "mensaje recibido" en el descriptor de archivo. Si la operación actual en el descriptor de archivo es una lectura de bloqueo, la llamada a la función de lectura retorna con el número de bytes disponibles en la memoria intermedia de aplicación. Si la operación actual es una llamada sin bloqueo, la aplicación verifica el indicador y, si está activado, lee los datos de la memoria intermedia, o la capa de administrador puede realizar una llamada de función asíncrona al recibir los datos.
Después de entregar los datos a la aplicación, la capa de administrador devuelve el testigo a la capa de sesión. Este testigo contiene información sobre el estado del mensaje pasado anteriormente. Según el estado del testigo, la capa de sesión realiza actividades tales como enviar un acuse de recibo de capa de sesión a sesión.
Si los datos están fragmentados, la capa de sesión modifica adicionalmente este testigo y lo envía a la capa de transporte; de lo contrario, la capa de sesión consume el testigo. La capa de transporte determina si los fragmentos se entregaron en la secuencia en que se enviaron y, en consecuencia, controla los acuses de recibo y los tamaños de ventana.
Datos no fragmentados
Si el tamaño de un mensaje es menor que la unidad máxima de transmisión (MTU), no se requiere fragmentación y el mensaje completo se envía en una trama. A medida que la trama sube en la pila, la capa superior de transporte añade muy poca información a los metadatos, ya que la información completa para la capa de sesión ya está disponible en la cabecera de las tramas. La capa de sesión lee la cabecera y extrae el tipo de datos. Si el tipo de datos es de datos orientados a conexión, la capa de sesión extrae el CID y realiza una búsqueda en la tabla de CID para determinar los puertos de origen y de destino. La capa de sesión elimina todas las cabeceras del datagrama, actualiza los metadatos con el descriptor de archivo de destino y los reenvía a la capa de administrador.
Transferencia de datos sin conexión
Tal como se ha mencionado anteriormente, en una transferencia de datos sin conexión, la capa de sesión puede implementarse en una capa ligera o muy delgada. Como la transferencia de datos sin conexión no utiliza un establecimiento de comunicación, no se genera ningún CID. Debido a la ausencia del CID, la cabecera del protocolo utiliza direcciones de puertos de origen y de destino. La capa de sesión lee la dirección del puerto de destino y determina el descriptor de archivo asociado y reenvía el mensaje a ese puerto. Como la transmisión de datos sin conexión no garantiza la entrega de datos, el indicador de acuse de recibo de las tramas se ajusta en falso.
Si una trama de datos sin conexión es más grande que la MTU, la capa superior de transporte fragmenta los datos en tamaños manejables sin activar el indicador de acuse de recibo de la capa de transporte, tal como se haría en comunicaciones basadas en conexión. Durante el reensamblado, si la capa de transporte ve algún fragmento faltante, descarta el mensaje completo. Por medio de un testigo, la capa de transporte informa a las capas superiores que descarten los fragmentos acumulados previamente en la memoria intermedia de aplicación.
Capa de administrador
La capa de administrador maneja los descriptores de archivo y reenvía los paquetes desde las capas inferiores a los manejadores de archivos apropiados. La capa de administrador también realiza la copia de datos del fondo de memoria a la memoria intermedia de aplicación. La capa de administrador conoce el tamaño de la memoria intermedia de aplicación, y el tamaño de la memoria intermedia de aplicación puede ser menor que la longitud de una trama.
Si la memoria intermedia de aplicación es lo suficientemente grande, la capa de administrador copia el mensaje completo en la memoria intermedia de aplicación. Si la memoria intermedia de aplicación no es lo suficientemente grande, la capa de administrador copia los datos de forma secuencial. La capa de administrador llena la memoria intermedia de aplicación con datos y espera a que la aplicación lea los datos antes de copiar la siguiente porción de datos. Una vez que los datos se entregan con éxito a la aplicación, según el testigo, la capa de administrador informa del éxito a la capa de sesión.
Flujo de control hacia arriba de la pila
A continuación se describe el flujo de control se describe a medida que los datos ascienden en la pila desde la capa más baja hasta la capa de aplicación.
Capa de enlace de datos
El control de la capa de enlace de datos se describe con respecto a las dos subcapas que componen la capa de enlace de datos, a saber, la capa de enlace y la capa MAC. La capa MAC controla los controladores de bus físicos. Capa MAC
Cuando el datagrama llega al bus físico, el controlador del bus copia el datagrama en una memoria intermedia. Una vez que el datagrama completo está disponible en la memoria intermedia, la capa MAC llama a una API en la capa de enlace para copiar los datos disponibles en el fondo de memoria.
La API de la capa de enlace devuelve un valor para indicar el resultado de la operación de copia. La operación puede tener éxito o fallar. El código de error devuelto proporciona el motivo de cualquier fallo. La capa MAC espera a que la API finalice la operación antes de almacenar los nuevos datos disponibles en la memoria intermedia.
Capa de enlace
Tal como se ha explicado en las secciones anteriores, el fondo de memoria puede estar fragmentado debido a que las aplicaciones consumen datos a velocidades aleatorias, lo que genera agujeros en el fondo de memoria. En una o más realizaciones, la capa de enlace mantiene una lista de enlaces, o una lista de enlaces duplicada, o un mapa de bits o cualquier otra estructura de datos capaz de almacenar en el fondo de memoria ubicaciones de memoria disponibles. Cuando una ubicación de memoria está disponible, se añade un puntero a la ubicación de memoria al final de la lista. Cuando un nuevo datagrama está disponible, se copia en la memoria señalada por el puntero en el encabezado de la lista. Aunque el mensaje recibido puede ser de cualquier tamaño y existe un tamaño máximo, por ejemplo 256 bytes, el tamaño del fondo de memoria se selecciona para que sea un múltiplo entero del tamaño máximo del datagrama. Esto simplifica la gestión de la memoria, dado que la pila conoce el tamaño de la memoria asignada dado el puntero a esa memoria. Puede haber casos en que un datagrama esté disponible en el momento en que la memoria está disponible en el fondo de memoria. En este caso, tanto el proceso de copia como el de eliminación intentarán acceder a la lista simultáneamente, lo que generará problemas de concurrencia. En una o más realizaciones, el fondo de memoria puede incluir memorias intermedias de tamaño no uniforme para una implementación de memoria intermedia más flexible a costa de la complejidad de la gestión de la memoria, tal como reconocerá un experto en la materia.
Cuando la capa MAC llama a una API para copiar los datos de la memoria intermedia de hardware al fondo de memoria, la API primero verifica la lista en busca de cualquier ubicación de memoria disponible en el fondo. Si hay memoria disponible, la API copia el datagrama en la ubicación de memoria señalada por el encabezado de la lista y elimina el puntero de la lista. Si no hay espacio disponible, por ejemplo, la lista de enlaces está vacía o se produce un error durante la copia en el fondo de memoria, la API devuelve el código de error correspondiente.
Después de copiar con éxito el datagrama, la API añade el puntero al datagrama en una lista con una cantidad de ciclos del temporizador restantes antes de que los datos se entreguen a la aplicación. Esta API puede ser reentrante ya que la capa MAC puede estar viajando sobre múltiples arquitecturas de bus y los datos pueden estar disponibles en múltiples memorias intermedias al mismo tiempo, con el resultado de llamar a esta API mientras la capa aún está dando servicio a la llamada anterior.
La pila de protocolos puede implementarse con un límite de tiempo dentro del cual un datagrama va a ser utilizado por una aplicación, o bien, el datagrama se elimina del fondo de memoria. Para habilitar esta función, las realizaciones pueden implementar una lista global que contiene punteros a cada datagrama con el contador del temporizador en cada puntero. A medida que llegan nuevos paquetes, una API añade el puntero a este paquete al final de esta lista. La API añade el valor de "tiempo de vida" al cómputo del temporizador actual y genera un cómputo del temporizador que representa el tiempo de caducidad de los paquetes. Cuando cambia el cómputo del temporizador, una API mira el cómputo del temporizador a partir del elemento más alto de la lista y comienza a eliminar el datagrama si sus cómputos de temporizador son menores o iguales que el cómputo del temporizador actual.
Una vez la aplicación consume los datos o se agota el tiempo de espera de los datos, se llama a una API para eliminar del fondo de memoria el datagrama y añadir el puntero a la lista de memoria disponible. Esta API puede ser reentrante, ya que los datos pueden caducar en el mismo momento en que la aplicación los consumió. Ambos procesos pueden intentar eliminar el mismo datagrama, por lo tanto, se pueden utilizar semáforos/bloqueos para serializar el control de manera efectiva.
Cuando los datos se copian en el fondo de memoria, la capa de enlace genera un testigo para el paquete. El testigo contiene el puntero al datagrama y la longitud del datagrama. Este testigo se reenvía a la capa de transporte a través de una API de capa de transporte para su posterior procesamiento.
Capa de transporte
Después de que la capa inferior de transporte recibe un testigo, la capa inferior de transporte determina si la trama es un mensaje de capa de transporte a capa de transporte. Si el 'indicador de capa' está activado, estos tipos de mensajes son mensajes de capa a capa y, por lo tanto, no se reenvían a capas superiores. Si el indicador no está activado, la capa inferior de transporte observa la prioridad del mensaje y coloca el testigo en la cola de prioridad adecuada.
En una o más realizaciones, la capa superior de transporte recibe el testigo de la cola de prioridad y determina si el "indicador extendido" está activado o no. Si el indicador está activado, esto indica que se espera un gran volumen de datos e informa a la API de que se ha utilizado un byte adicional en la cabecera para secuenciar un gran número de fragmentos.
La capa también lee el indicador "Último fragmento". Un indicador de 'último fragmento' activado indica a la capa que el fragmento de datagrama actual es el último fragmento en la secuencia de fragmentos y, por lo tanto, el final de un mensaje. Si hay alguna fragmentación, al menos un fragmento tendrá este indicador activado.
La capa lee además el indicador de acuse de recibo. Si el transmisor solicita, o bien se le va a enviar un acuse de recibo para la entrega del datagrama a la capa de transporte del receptor, la capa activará este indicador y el receptor acusará recibo del paquete. Si los dispositivos involucrados en la comunicación acordaron un tamaño de ventana para acuses de recibo, entonces la capa de transporte acusa recibo después de recibir mensajes de tamaño de ventana; de lo contrario, la capa acusa recibo de cada datagrama.
La capa superior de transporte añade más información al testigo de datos y lo reenvía a la capa de sesión. La capa superior de transporte informa a la capa de sesión de si el mensaje es un mensaje completo o no. En el caso de un mensaje fragmentado, la capa de transporte informa a la capa de sesión sobre la recepción del último fragmento, de modo que la capa de sesión puede enviar un acuse de recibo si es necesario.
Capa de sesión
A partir del puntero de datos en el testigo, la capa de sesión accede a la trama y extrae la cabecera de la capa de sesión. A partir de la cabecera, la capa de sesión primero determina si el mensaje es un mensaje de capa a capa o tiene que reenviarse a la pila. Si el mensaje es un mensaje de tipo capa a capa, entonces el mensaje es consumido por la capa de sesión.
Si el indicador de capa no está activado, la trama se reenvía a la pila. La capa de sesión lee el campo 'tipo de conexión' y determina si el mensaje es de un tipo de conexión desconocido, u es orientado a conexión o sin conexión. Un tipo de conexión desconocido es generalmente para los mensajes intercambiados durante el proceso de establecimiento de comunicación, mientras que un mensaje sin conexión no necesita un acuse de recibo para la entrega, y los mensajes orientados a conexión son los que utilizan un acuse de recibo en la entrega satisfactoria. La capa de sesión examina más a fondo el campo de tipo de mensaje para determinar el tipo de trama. El tipo de trama se usa para determinar el propósito de la trama, y solo las tramas de tipo 'datos' se reenvían a la pila y las tramas de tipo de control se consumen en la capa de sesión.
El CID es generado por la aplicación que proporciona un servicio. Cualquier aplicación que quiera utilizar el servicio solicitará un ID de comunicación. El CID es único dentro de un módulo, por ejemplo, todos los CID generados por el UIC son únicos dentro de un UIC en particular. El CID se genera a través de un proceso de establecimiento de comunicación, donde la aplicación que utiliza el servicio envía los detalles necesarios para identificar de forma única una conexión activa y recibe el CID en respuesta.
Los pormenores y detalles de CID pueden almacenarse en una tabla de CID ubicada en una región de memoria compartida, en una o más realizaciones, de modo que las capas de sesión de todas las aplicaciones pueden acceder al CID. En una trama de datos sin conexión, no hay información de CID ya que no se utiliza un establecimiento de comunicación para establecer una conexión. Por lo tanto, las tramas sin conexión contienen las direcciones de los puertos de origen y de destino en la cabecera.
En una transferencia de datos orientada a conexión, existe un CID en la cabecera de la capa de sesión. Una vez que la capa de sesión determina el CID a partir de la cabecera, la capa combina la información con la dirección lógica de origen disponible en el testigo de datos para identificar de manera única una entrada en la tabla CID. A partir de esta tabla, la capa de sesión determina la dirección de los puertos de origen y de destino y los descriptores de archivo que gestionan el puerto. La dirección lógica de origen de la trama recibida es ajustada por la capa de enlace de datos junto con la información del manejador de archivos y se reenvía en el testigo de datos a la capa de administrador.
Si la trama recibida está orientada a conexión y es un mensaje completo, la capa de sesión mantiene un registro del mensaje y reenvía el testigo de datos a la capa de administrador. Una vez que la capa de administrador copia la trama del fondo de memoria en la memoria intermedia de aplicación, la capa de administrador notifica a la capa de sesión la entrega satisfactoria de datos. Al recibir la notificación, la capa de sesión envía un acuse de recibo a la capa de sesión del transmisor con respecto a la entrega satisfactoria de datos. Si la entrega no tuvo éxito, como parte del acuse de recibo, la capa de sesión reenvía el mensaje de error devuelto por la capa de administrador al transmisor.
Capa de administrador
La capa de sesión llama a una API en la capa de administrador y pasa el testigo de datos a la capa de administrador. La capa de administrador copia los datos del fondo de memoria en la memoria intermedia de aplicación y notifica a la capa de sesión sobre la copia. La capa de administrador notifica a la capa inferior la entrega del mensaje modificando el testigo de datos y enviando el testigo de datos nuevamente a la capa de sesión. Una vez que los datos se copian con éxito, la capa de administrador elimina el puntero de la trama de la lista de tramas monitorizadas por el temporizador y elimina la trama del fondo de memoria para dejar espacio para nuevos paquetes.
Puede suceder que la memoria intermedia de aplicación sea más pequeña que la trama de datos recibida, en tales casos, la capa de administrador llenará la memoria intermedia de aplicación con lo que esta puede contener y esperará a que la aplicación lo consuma. Una vez la aplicación consume el mensaje, la parte restante del mensaje se copia y el proceso se repite hasta que se consume la trama completo. Antes de iniciar el progreso de la copia de mensajes en tamaños pequeños, la capa de administrador elimina el puntero a la trama de la lista supervisada por temporizador porque el temporizador puede caducar y corromper el mensaje. Además, la capa de administrador notifica a la capa inferior la entrega satisfactoria de datos solo cuando se envía un mensaje completo a la aplicación. Al final del proceso de copia secuencial, la capa de administrador elimina la trama del fondo de memoria.
En el caso de datos fragmentados, a medida que esta capa recibe los fragmentos, copia los fragmentos en la memoria intermedia de aplicación y notifica a la capa de sesión. La capa de sesión reenvía la notificación a la capa de transporte. La capa de transporte, después de recibir notificaciones para una cantidad de mensajes del tamaño de ventana, envía un acuse de recibo al transmisor sobre la recepción de los mensajes. Cuando el último fragmento se entrega con éxito a la aplicación, esto implica que se ha entregado un mensaje completo. En tales casos, la capa de administrador notifica el éxito a la capa de sesión, y la capa de sesión envía un mensaje de acuse de recibo al transmisor relativo al éxito, proporcionando así una entrega de datos garantizada.
Flujo de datos descendente por la pila
Suponiendo que en el caso de una transferencia de datos orientados a conexión, el proceso de establecimiento de comunicación ya se realizó y ya se generó un CID válido, la aplicación copia los datos en una memoria intermedia de aplicación y pasa un puntero a la API expuesta por la capa de administrador para enviar datos a través de puertos virtuales. La aplicación también especifica el descriptor de archivo que maneja la comunicación y el tamaño de los datos que se escribirán en el puerto virtual.
La prioridad de un mensaje está determinada por la prioridad del puerto virtual que se esté utilizando, o la prioridad se puede establecer para el mensaje que pasa. Por lo tanto, a través de un conjunto de API, la capa de administrador informa a la capa de sesión sobre la prioridad de los datos, el tamaño de los datos, el descriptor de archivo para la comunicación, el puntero a la memoria intermedia de aplicación y si los datos son orientados a conexión o sin conexión. Si los datos son sin conexión, la capa de sesión examina la tabla de descriptores de archivo y determina el número de puerto asociado con el descriptor de archivo. A continuación, la capa de sesión añade las direcciones de los puertos de origen y de destino como cabecera a los datos. Si la transferencia va a estar orientada a conexión, la capa de sesión realiza una búsqueda en la tabla CID y determina el CID asociado con el descriptor de archivo y añade este CID como cabecera a los datos. A continuación, la capa de sesión reenvía este puntero a la capa de transporte y espera un acuse de recibo del receptor.
La capa superior de transporte determina el tamaño de los datos y determina si se requiere fragmentación o no. Si se necesita fragmentación, la capa superior de transporte divide los datos en tamaños manejables y añade información a la cabecera para que los datos puedan volver a ensamblarse en la capa superior de transporte del receptor. Si no se necesita fragmentación, la capa superior de transporte sigue añadiendo alguna información, en una o más realizaciones. Por ejemplo, la capa superior de transporte copia los datos de la memoria intermedia de aplicación en el fondo de memoria del transmisor y, según la prioridad de los datos, almacena el puntero en las colas de mensajes adecuadas.
La capa inferior de transporte finalmente lee el puntero de la cola de prioridad y lo reenvía a la capa de enlace. La capa de enlace determina la dirección lógica de destino y la añade a la cabecera de datos, calcula un CRC en la trama y lo añade a la trama antes de enviarlo. La capa MAC determina el bus en el que está disponible el destino y envía los datos a través de ese bus.
Flujo de datos ascendente en la pila
A medida que la trama de datos llega al bus subyacente, la capa MAC determina si la trama es para el subsistema o para algún otro subsistema. Si es para algún otro subsistema, la capa MAC descarta la trama de datos. La capa MAC copia tramas de datos válidos en una región de memoria compartida y llama a una API en la capa de enlace para informarle sobre la llegada de nuevos datos. En toda la pila, solo se actualiza el puntero a estos datos para reducir la copia múltiple de fragmentos.
La capa de enlace calcula el CRC en la trama recibida y compara el CRC calculado con el CRC en la trama recibida. Las tramas con CRC no válidos se eliminan. Los punteros a tramas válidas se reenvían a la capa inferior de transporte.
La capa inferior de transporte lee la prioridad de la trama y añade un puntero a la trama a la cola de prioridad respectiva. El puntero a la trama permanece en la cola y espera a que la aplicación adecuada lo consuma. Finalmente, la capa superior de transporte de la aplicación de destino lee el puntero a la trama desde la cola de prioridad.
La capa superior de transporte examina las cabeceras para determinar si los datos están fragmentados o son un mensaje completo. Si los datos están fragmentados, la capa vuelve a ensamblar todos los mensajes de la secuencia y a continuación los reenvía a la capa de aplicación. Si los datos no están fragmentados, reenvía directamente el puntero a la trama, a la capa de sesión a través de llamadas API apropiadas.
La capa de sesión examina las cabeceras de las tramas y determina si el mensaje es del tipo sin conexión u orientado a conexión. Si el mensaje es sin conexión, la capa de sesión busca el número de puerto de destino y determina el descriptor de archivo que maneja ese puerto. La capa de sesión reenvía el puntero a la capa de administrador con la información adecuada del descriptor de archivo. Si la trama es orientada a conexión, la capa de sesión lee el CID y determina el manejador de archivos que maneja esa comunicación. La capa de sesión a continuación reenvía la información del descriptor de archivo a la capa de administrador y espera un acuse de recibo de la capa de administrador. La capa de administrador envía un acuse de recibo que indica si los datos se entregaron a la aplicación o no. Esta información es utilizada por la capa de sesión para acusar recibo de los datos. La capa de administrador puede implementarse con una capa ligera o delgada y es responsable de copiar los datos del fondo de memoria en la memoria intermedia de aplicación y liberar el fondo de memoria. Una vez los datos se copian en la memoria de la aplicación, la capa de administrador informa a la aplicación sobre los datos disponibles. La capa de administrador envía un acuse de recibo a la capa de sesión. Así, a las aplicaciones, la capa de administrador ofrece métodos síncronos y asíncronos para leer y escribir en los puertos virtuales.
La figura 9 ilustra un diagrama de actividad que muestra el enrutamiento entre varios dispositivos. Tal como se muestra, el dispositivo A está conectado directamente al dispositivo B, que está conectado directamente al dispositivo C. El dispositivo A no está conectado directamente al dispositivo C. Cuando el dispositivo A intenta enviar un mensaje al dispositivo C, envía el mensaje y el dispositivo B lee el mensaje, determina que el mensaje no es para el dispositivo y verifica si hay una ruta al dispositivo en la tabla de destino del dispositivo B. Si es así, el dispositivo B reenvía el mensaje al dispositivo C, que procesa los datos. Por lo tanto, las realizaciones de la invención permiten configuraciones de enrutamiento y cadena tipo margarita o multibus que generalmente no son tan flexibles como son posibles en dispositivos médicos tales como bombas de infusión.
A continuación se detalla una realización de la API de la capa de administrador. La capa de administrador proporciona la API para habilitar la programación de sockets sobre la pila de protocolos. Las llamadas a la API de la capa de administrador son utilizadas por cualquier aplicación que desee transferir datos usando una realización de la invención.
pro_socket - crea un socket independiente en un dominio de comunicación y devuelve un descriptor de archivo que se puede usar en llamadas de función posteriores que operan sobre sockets.
int16 pro_socket (tipo ConnectionType, uint8 *pSocket)
Argumentos:
type: especifica el tipo de socket que se va a crear (CONNECTIONTYPE y CONNECTIONLESSTYPE para intercambio de datos orientado a conexión y sin conexión).
pSocket: puntero entero para devolver el socket recién creado.
typedef enum ConnType
{
CONNECTIONTYPE = 1,
CONNECTIONLESSTYPE = 2,
RAWTYPE = 3
} ConnectionType;
Al completarse con éxito, la función devolverá un ÉXITO; de lo contrario, se devuelve el código de error apropiado. La API devuelve el socket asignado en la variable de referencia pSocket pasada como parámetro.
pro_bind - asigna una dirección local a un socket identificado por el socket del descriptor de archivo.
int16 pro_bind (uint8 uint8Socket, const ProSockaddr *pAddress)
typedef struct pro_sockaddr
{
dirección uint8;
portNo uint8;
prioridad uint8;
indicadores uint8;
tiempo de espera uint32;
*filtro datafilter;
} ProSockaddr;
dirección: contiene la dirección lógica del dispositivo
portNo: contiene el número de puerto para la conexión
prioridad: contiene la prioridad del puerto. Todos los datos que pasan por este puerto heredan la prioridad de los puertos
indicadores: contiene indicadores de configuración para cambiar el comportamiento del socket
TIMEOUT: el indicador está activado, espera a que se complete una operación dentro de un período de tiempo determinado, de lo contrario, regresa.
SOJJNGER: el indicador activado indica que una conexión se terminará solo cuando todos los datos pendientes de enviar se envíen con éxito.
FILTERj DATA: el indicador activado indica que los datos que se corresponden con el patrón de filtro proporcionado solo se reenviarán a la función de devolución de llamada registrada para manejarlo. Si se restablece el indicador, los datos que se corresponden con el filtro se enviarán tanto al manejador de socket normal como a la función de devolución de llamada registrada.
timeout: si se establece el indicador TIMEOUT, el valor de tiempo de espera se especifica aquí. Un valor de tiempo de espera de 0 regresa inmediatamente.
filtro: lista de enlaces de estructura de tipo filtro de datos que define el filtro que se aplicará a los datos recibidos. Más de un elemento en esta lista de enlaces tendrá una propiedad de operador lógico OR. Por ejemplo, si una aplicación desea procesar datos de PMC, UIC, CE o los tres, creará tres nodos en esta lista de enlaces, uno para cada PMC, UIC y CE.
La estructura de filtro de datos se utiliza para permitir que las aplicaciones seleccionen qué mensajes desean recibir y qué función debe manejar qué tipo de mensajes. Se utiliza un patrón de expresión regular para crear un filtro sobre los datos recibidos y, una vez se encuentra una correspondencia, los datos se reenvían a la función de devolución de llamada registrada.
typedef struct
{
char *regEx;
índice uint8;
longitud uint8;
*devolución de llamada vacío;
*filtro datafilter;
}datafilter;
regEx: puntero a la expresión regular que se usará para la correspondencia.
índice: ubicación para comenzar a buscar correspondencias en la sección de datos del mensaje recibido. Un '0' en este campo indica que la correspondencia comenzará desde el principio.
longitud: a partir del índice proporcionado, indica la longitud de la sección de datos que se considerará para la correspondencia de expresiones regulares. Si índice contiene '0' y longitud contiene '0', la correspondencia se realizará en toda la sección de datos.
devolución de llamada: función que se llamará en caso de una correspondencia satisfactoria. Si este campo se ajusta a nulo, todos los paquetes de datos en correspondencia se eliminarán según el indicador FILTER_DATA. filtro: lista de enlaces de cualquier filtro adicional que se añadirá sobre el filtro existente. Si este campo contiene filtros adicionales, en una correspondencia satisfactoria, se realiza una devolución de llamada a la función especificada en la estructura que contiene esta lista de enlaces. Esta lista de enlaces de filtros tiene propiedades de operador lógico Y, es decir, una correspondencia es satisfactoria solo si todas las expresiones regEx especificadas en todos los filtros se corresponden. Como ejemplo, si una aplicación desea procesar datos que contienen expresiones PMC, UIC y CE, instanciará este filtro para PMC y tendrá una lista de enlaces que contiene filtros para UIC y CE respectivamente.
Una o más realizaciones soportan tres niveles de prioridad para mensajes, a saber, alta, media y baja. La enum que define la prioridad del mensaje es la siguiente.
typedef enum ProPriority
{
HIGHPRIORITYTYPE = 1,
MEDIUMPRIORITYTYPE = 2,
LOWPRIORITYTYPE = 3
} MessagePriority;
Argumentos:
uint8Socket: descriptor de archivo del socket que va a vincular
pAddress: puntero a la estructura ProSockaddr que contiene la dirección a vincular al socket.
Valor de retorno:
al completarse con éxito, la función devolverá ÉXITO; de lo contrario, el código de error apropiado.
pro_connect: intenta conectar un socket a la dirección especificada.
int16 pro_connect (uint8 uint8Socket, const ProSockaddr *pAddress)
Argumentos:
uint8Socket: socket que se va a conectar a la dirección especificada.
pAddress: puntero a la estructura pro_sockaddr que contiene la dirección del par.
Valor de retorno:
Al completarse con éxito, la función devolverá ÉXITO; de lo contrario, devuelve el código de error apropiado pro_listen - marca el socket al que hace referencia "socket" como un socket pasivo, es decir, como un socket que se usará para aceptar solicitudes de conexión entrantes usando accept().
int16 pro_listen (uint8 uint8Socket, uint8 uint8Backlog)
Argumentos:
uint8Socket: descriptor de archivo de un socket que se tiene que poner en modo de aceptación de conexiones. uint8Backlog: establece un límite sobre el número de conexiones pendientes en la cola de escucha del socket. Un cero ajustaría la longitud de la cola a la longitud de cola mínima definida por el sistema.
Valor de retorno:
Al completarse con éxito, la función devolverá ÉXITO; de lo contrario, se devuelve el código de error apropiado. pro_accept - extrae la primera conexión en la cola de conexiones pendientes, crea un nuevo socket conectado con el mismo protocolo de tipo de socket y familia de direcciones que el socket especificado y devuelve un nuevo descriptor de archivo para el socket.
int16 pro_accept (uint8 uint8Socket, ProSockaddr ‘pAddress, uint8 *pClientSocket)
Argumentos:
uint8Socket: descriptor de archivo asociado con socket.
pAddress: un puntero NULO o un puntero a la estructura ProSockaddr donde se devolverá la dirección del socket de conexión.
pClientSocket: puntero a un entero sin signo para devolver el descriptor de archivo asociado con el socket recién creado.
Valor de retorno:
Una vez completado con éxito, se devuelve ÉXITO junto con un descriptor de archivo asociado para el socket recién creado; en caso de fallo, devuelve el código de error apropiado.
pro_send - inicia la transmisión de un mensaje desde el socket especificado a su par. La función pro_send() envía un mensaje cuando el socket está conectado.
int16 pro_send (uint8 uint8Socket, const void ‘pBuffer, uint32 intLength, uint32 *pBytesSent)
Argumentos:
uint8Socket: descriptor de archivo del socket
pBuffer: apunta a la memoria intermedia que contiene el mensaje a enviar.
intLength: longitud del mensaje en bytes.
pBytesSent: puntero a un número entero para devolver el número real de bytes enviados.
Valor de retorno:
Una vez completada con éxito, la API devuelve ÉXITO; de lo contrario, se devuelve el código de error apropiado.
pro_recv - recibe un mensaje de un socket en modo conexión o modo sin conexión. Normalmente se usa con sockets conectados porque no proporciona la dirección de origen de los datos recibidos a la aplicación.
int16 pro_recv (uint8 uint8Socket, void *pBuffer, uint32 uintLength, uint32 *pBytes *pBytesReceived) Argumentos:
uint8Socket: descriptor de archivo de socket.
pBuffer: puntero a la memoria intermedia donde se debe almacenar el mensaje.
uintLength: longitud en bytes del mensaje a recibir.
pBytesReceived: puntero a un número entero para devolver el número de bytes realmente recibidos.
Valor de retorno:
Una vez completado con éxito, se devuelve ÉXITO junto con el número de bytes en la referencia pasada como parámetro; de lo contrario, devuelve el código de error apropiado.
pro_close - desasigna el descriptor de archivo y hace que el descriptor de archivo esté disponible para funciones que asignan descriptores de archivo. Se eliminan todos los bloqueos de registro pendientes propiedad del proceso en el archivo asociado con el descriptor de archivo. Hace que el socket se destruya. Si el socket es orientado a conexión, y la opción SOJJNGER está activada para el socket con un tiempo de permanencia distinto de cero, y el socket tiene datos no transmitidos, entonces pro_closeO bloquea hasta el intervalo de permanencia actual para todos los datos pendientes para ser transmitido.
int16 pro_close (uint8 uint8Socket)
Argumentos:
uint8Socket: descriptor de archivo del socket que debe cerrarse.
Valor de retorno:
Al completarse con éxito, la función devolverá ÉXITO; de lo contrario, se devolverá el código de error apropiado. Un experto en la técnica reconocerá que, además de la API ejemplar ilustrada anteriormente para la capa de administrador, las API para las capas de sesión, de transporte y de enlace de datos pueden implementarse según se desee para comunicar los mensajes que se muestran en las figuras 10A-D, 11A-B y 12A-B dependiendo de la aplicación deseada.
Una o más realizaciones de la invención pueden implementarse como un sistema o método. Por ejemplo, al menos una realización puede incluir un método de comunicación de dispositivos médicos que incluye aceptar una solicitud de un dispositivo programable para obtener un identificador de dispositivo asociado con un dispositivo transmisor asociado con la solicitud, un tipo de conexión orientada a conexión o sin conexión y un número de dispositivo receptor asociado con un dispositivo receptor al que transmitir un mensaje. El método también puede incluir determinar un número de puerto de un puerto al que transmitir dicho mensaje, por ejemplo, a través de un dispositivo programable solicitante o del dispositivo programable que recibe la solicitud. Las realizaciones también pueden incluir la generación de un identificador de comunicación o CID para al menos las ventajas establecidas a lo largo de esta descripción. Las realizaciones también pueden incluir aceptar una solicitud asociada con una función médica, introducir el CID y la función médica en el mensaje, determinar si el tipo de conexión es orientada a conexión o sin conexión y transmitir el mensaje a un dispositivo médico. Este escenario se muestra con valores de ejemplo para demostrar el formato y la transferencia de mensajes anteriores en las figuras 13A y 13B, que están destinados a acoplarse entre sí en el lado derecho de la figura 13A y el lado izquierdo de la figura 13B.
Las realizaciones también pueden incluir transmitir el mensaje al dispositivo receptor incluso si el dispositivo receptor no está directamente conectado al dispositivo transmisor. Esto permite un enrutamiento integrado que permite que los dispositivos pasen mensajes sin necesidad de un maestro para controlar todas las fases de la comunicación, por ejemplo.
Las realizaciones también pueden incluir aceptar una solicitud de multidifusión configurada para permitir que múltiples dispositivos receptores reciban el mensaje. Las realizaciones pueden incluir además aceptar un parámetro de prioridad configurado para permitir el tratamiento priorizado del mensaje. Esto permite que los mensajes con alta prioridad se entreguen antes que otros mensajes de menor prioridad y en una o más realizaciones pueden implementarse con una pluralidad de estructuras de datos de mensajes tales como colas, listas enlazadas o cualquier otra estructura o estructuras de datos. Las realizaciones pueden incluir transmitir mensajes desde una cola de mensajes de alta prioridad antes de transmitir datos desde una cola de mensajes de baja prioridad. Otras realizaciones pueden aplicar cualquier tipo de patrón de estrategia al proceso de entrega y pueden, por ejemplo, cambiar las estrategias dependiendo del tipo de mensajes que es probable que se reciban en períodos de tiempo particulares. Esto permite el tratamiento y procesamiento predictivo de mensajes para proporcionar una entrega inteligente y robusta de funciones médicas.
Las realizaciones también pueden incluir determinar si el tamaño de los datos a transferir es mayor que un valor de fragmentación predeterminado y empaquetar los datos en una pluralidad de mensajes para facilitar la transferencia. Las realizaciones pueden utilizar eficientemente la memoria y, por ejemplo, reducir la latencia copiando un puntero al mensaje entre una pluralidad de capas de mensajes sin copiar el mensaje en sí. Este es el caso dado que el mensaje no tiene que ser reconstruido en su totalidad dentro de la pila hasta que se reciba el mensaje completo en la aplicación. Además, las realizaciones de la invención pueden utilizar gestión de memoria optimizada que incluye solicitar memoria de una memoria intermedia que incluye tamaños no uniformes para aumentar aún más la eficiencia de la utilización de la memoria de datos y reducir la memoria requerida en general. Cuando se envían paquetes de datos o mensajes que son más grandes que el tamaño máximo permitido por el hardware subyacente, las realizaciones pueden incluir establecer un último indicador de fragmentación en un mensaje final de mensaje fragmentado, iniciar un temporizador para un acuse de recibo y retransmitir el mensaje final si dicho temporizador expira. Se pueden conseguir aumentos adicionales en la eficiencia mediante realizaciones que incluyen recibir una solicitud para cambiar un tamaño de ventana para recibir mensajes fragmentados y ajustar el uso de la memoria en base a esto, por ejemplo, tener tamaños de ventana menores para enlaces de comunicación más fiables. Las realizaciones también pueden incluir proporcionar el identificador de dispositivo a un dispositivo médico nuevo que reemplaza el dispositivo médico después de intercambiar en caliente el dispositivo médico nuevo por el dispositivo médico original, es decir, si ocurre un fallo. Esto permite que las realizaciones de la invención proporcionen una funcionalidad robusta y una sustitución transparente del hardware sin interrumpir las funciones médicas o al menos minimizando las interrupciones. Las realizaciones también pueden incluir proporcionar un puntero a un mensaje completo después de recibir múltiples mensajes fragmentados sin copiar datos del mensaje recibido después de recibirlos. Esto permite que los datos entrantes se introduzcan en una memoria intermedia una vez, y se entreguen a la aplicación después de que se reciban los datos sin, por ejemplo, realizar copias extrañas, lo que reduce la utilización de la memoria y el procesamiento del dispositivo programable requerido. Una o más realizaciones de la invención pueden incluir aceptar una solicitud de infusión asociada con una función médica relacionada con la infusión. Cualquier otro tipo de función médica es acorde con el espíritu de la invención.
Las realizaciones del sistema pueden incluir un dispositivo programable configurado para aceptar una solicitud para obtener un identificador de dispositivo asociado con un dispositivo transmisor asociado con la solicitud, un tipo de conexión de orientada a conexión o sin conexión, un número de dispositivo receptor asociado con un dispositivo receptor al que transmitir un mensaje. Las realizaciones del sistema pueden determinar además un número de puerto de un puerto al que transmitir dicho mensaje, generar un identificador de comunicación o CID y aceptar una solicitud asociada con una función médica. El sistema también puede introducir el CID y la función médica en el mensaje, determinar si el tipo de conexión es orientada a conexión o sin conexión y transmitir el mensaje a un dispositivo médico. Las realizaciones del sistema también pueden implementar toda la funcionalidad del método descrito anteriormente y pueden utilizar cualquiera de las estructuras de datos o API descritas aquí en combinación.
Si bien la invención aquí descrita se ha dado a conocer por medio de realizaciones específicas y aplicaciones de la misma, los expertos en la materia podrían realizar numerosas modificaciones y variaciones en la medida en que estas modificaciones y variaciones estén dentro del alcance de la invención definida en las reivindicaciones.

Claims (14)

REIVINDICACIONES
1. Un método de comunicación de dispositivos médicos para un sistema de bomba de infusión, comprendiendo el método:
un control de motor de bomba, PMC, que acepta una solicitud de conexión de un controlador de interfaz de usuario, UIC, comprendiendo la solicitud:
un identificador de dispositivo del UIC,
un número de dispositivo receptor del PMC al que transmitir un mensaje de datos de infusión,
en donde el PMC acepta dicha solicitud y genera un identificador de comunicación, CID,
introducir el CID en un mensaje de aceptación de conexión,
transmitir el mensaje de aceptación de conexión al UIC,
en donde el UIC extrae y almacena el CID del mensaje de aceptación de conexión, comprendiendo además el método
aceptar, por el UIC, una solicitud de infusión asociada con una función médica relacionada con la infusión, introducir el CID y dicha función médica en el mensaje de datos de infusión, y
transmitir el mensaje de datos de infusión al PMC.
2. El método de comunicación de dispositivos médicos según la reivindicación 1, que comprende además: aceptar un parámetro de prioridad configurado para permitir el tratamiento priorizado de dicho mensaje de datos de infusión.
3. El método de comunicación de dispositivos médicos según la reivindicación 1, que comprende además: determinar si un tamaño de datos en el mensaje de datos de infusión a transferir es mayor que un valor de fragmentación predeterminado; y
empaquetar dichos datos en el mensaje de datos de infusión en una pluralidad de mensajes de datos de infusión independientemente de la anchura del bus de datos subyacente.
4. El método de comunicación de dispositivos médicos según la reivindicación 1, que comprende además: copiar un puntero a dicho mensaje de datos de infusión entre una pluralidad de capas de mensajes de datos de infusión sin copiar dicho mensaje de datos de infusión en sí mismo.
5. El método de comunicación de dispositivos médicos según la reivindicación 1, que comprende además: solicitar memoria de una memoria intermedia que comprende tamaños no uniformes; o
devolver una memoria intermedia a la memoria si dicha memoria intermedia supera un umbral de antigüedad predefinido.
6. El método de comunicación de dispositivos médicos según la reivindicación 1, que comprende además: establecer un último indicador de fragmentación en un mensaje final de mensaje fragmentado;
iniciar un temporizador para un acuse de recibo; y,
retransmitir dicho mensaje final si expira dicho temporizador.
7. El método de comunicación de dispositivos médicos según la reivindicación 1, que comprende además: recibir una solicitud para cambiar un tamaño de ventana para recibir mensajes fragmentados y
ajustar el uso de la memoria en función de ello.
8. El método de comunicación de dispositivos médicos según la reivindicación 1, que comprende además: transmitir mensajes de datos de infusión desde una cola de mensajes de alta prioridad antes de transmitir datos desde una cola de mensajes de baja prioridad.
9. El método de comunicación de dispositivos médicos según la reivindicación 1, que comprende además: reensamblar un mensaje fragmentado en un mensaje completo en una memoria intermedia de aplicación.
10. El método de comunicación de dispositivos médicos según la reivindicación 1, en donde la comunicación de la capa de sesión se realiza independientemente de la topología del bus; o en donde
el método comprende además comunicar a través de múltiples buses de datos heterogéneos de manera independiente de la topología del bus, en donde dichos múltiples buses de datos heterogéneos comprenden topologías de anillo, estrella, malla o árbol o cualquier combinación de las mismas.
11. El método de comunicación de dispositivos médicos según la reivindicación 1, que comprende además utilizar un hilo del núcleo para ejecutar una capa de enlace de datos y una capa inferior de transporte para bloquear operaciones de lectura y escritura o utilizar 2*N+1 hilos del núcleo para operaciones de lectura y escritura asíncronas, donde N es el número de aplicaciones que utilizan dichas operaciones asíncronas de lectura y escritura.
12. El método de comunicación de dispositivos médicos según la reivindicación 1, que comprende además comunicar usando una capa MAC que abstrae al menos un bus de datos subyacente, donde dicho al menos un bus de datos subyacente comprende caminos de datos en serie o paralelos o buses de datos heterogéneos.
13. El método de comunicación de dispositivos médicos según la reivindicación 1, que comprende además filtrar dicho mensaje de datos de infusión en función de una expresión regular, que especifica la ubicación, la longitud y el contenido de los datos en correspondencia, en la parte de datos del paquete.
14. Un sistema de comunicación de dispositivos médicos que comprende:
un control de motor de bomba, PMC, configurado para aceptar una solicitud de conexión de un controlador de interfaz de usuario, UIC, comprendiendo la solicitud:
un identificador de dispositivo del UIC,
un número de dispositivo receptor del PMC al que transmitir un mensaje de datos de infusión,
en donde el PMC está configurado para
aceptar la solicitud y generar un identificador de comunicación, CID,
introducir el CID en un mensaje de aceptación de conexión,
transmitir el mensaje de aceptación de conexión al UIC,
en donde el UIC extrae y almacena el CID del mensaje de aceptación de conexión, el UIC está configurado además para
aceptar una solicitud de infusión asociada con una función médica relacionada con la infusión,
introducir dicho CID y dicha función médica en el mensaje de datos de infusión, y
transmitir dicho mensaje de datos de infusión al PMC.
ES14760652T 2013-03-06 2014-03-06 Método de comunicación de dispositivos médicos Active ES2908320T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201361773647P 2013-03-06 2013-03-06
PCT/US2014/021335 WO2014138446A1 (en) 2013-03-06 2014-03-06 Medical device communication method

Publications (1)

Publication Number Publication Date
ES2908320T3 true ES2908320T3 (es) 2022-04-28

Family

ID=51487752

Family Applications (1)

Application Number Title Priority Date Filing Date
ES14760652T Active ES2908320T3 (es) 2013-03-06 2014-03-06 Método de comunicación de dispositivos médicos

Country Status (6)

Country Link
US (5) US9641432B2 (es)
EP (1) EP2964079B1 (es)
AU (1) AU2014225658B2 (es)
CA (1) CA2904053C (es)
ES (1) ES2908320T3 (es)
WO (1) WO2014138446A1 (es)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9123077B2 (en) 2003-10-07 2015-09-01 Hospira, Inc. Medication management system
US8065161B2 (en) 2003-11-13 2011-11-22 Hospira, Inc. System for maintaining drug information and communicating with medication delivery devices
EP2092470A2 (en) 2006-10-16 2009-08-26 Hospira, Inc. System and method for comparing and utilizing activity information and configuration information from mulitple device management systems
US8271106B2 (en) 2009-04-17 2012-09-18 Hospira, Inc. System and method for configuring a rule set for medical event management and responses
ES2959510T3 (es) 2011-10-21 2024-02-26 Icu Medical Inc Sistema de actualización de dispositivos médicos
WO2014138446A1 (en) 2013-03-06 2014-09-12 Hospira,Inc. Medical device communication method
EP3039596A4 (en) 2013-08-30 2017-04-12 Hospira, Inc. System and method of monitoring and managing a remote infusion regimen
US10432529B2 (en) 2013-09-19 2019-10-01 Connectivity Systems Incorporated Enhanced large data transmissions and catastrophic congestion avoidance over IPv6 TCP/IP networks
US9662436B2 (en) 2013-09-20 2017-05-30 Icu Medical, Inc. Fail-safe drug infusion therapy system
US10311972B2 (en) 2013-11-11 2019-06-04 Icu Medical, Inc. Medical device system performance index
TR201908852T4 (tr) 2013-11-19 2019-07-22 Icu Medical Inc İnfüzyon pompası otomasyon sistemi ve yöntemi.
WO2015168427A1 (en) 2014-04-30 2015-11-05 Hospira, Inc. Patient care system with conditional alarm forwarding
US9724470B2 (en) 2014-06-16 2017-08-08 Icu Medical, Inc. System for monitoring and delivering medication to a patient and method of using the same to minimize the risks associated with automated therapy
US9560136B2 (en) * 2014-08-07 2017-01-31 Sap Se High speed communication protocol
US9539383B2 (en) 2014-09-15 2017-01-10 Hospira, Inc. System and method that matches delayed infusion auto-programs with manually entered infusion programs and analyzes differences therein
US9892073B1 (en) * 2014-10-06 2018-02-13 Master Lock Company Llc Bus addressing systems and methods using repurposed bits
CA2988094A1 (en) 2015-05-26 2016-12-01 Icu Medical, Inc. Infusion pump system and method with multiple drug library editor source capability
US10013453B2 (en) * 2015-06-22 2018-07-03 Vmware, Inc. Efficient management of large number of file descriptors
US10243646B2 (en) 2015-08-17 2019-03-26 The Mitre Corporation Performance-based link management communications
AR108456A1 (es) * 2016-05-13 2018-08-22 Ericsson Telefon Ab L M Retransmisión de paquetes en un sistema de comunicaciones inalámbricas
CN106021000B (zh) * 2016-06-02 2018-06-01 北京百度网讯科技有限公司 用于机器人操作系统的共享内存管理方法和装置
ES2960055T3 (es) 2016-06-16 2024-02-29 Smiths Medical Asd Inc Conjuntos y métodos para conjuntos de administración de sistema de bomba de infusión
US10430374B2 (en) * 2016-06-29 2019-10-01 Mellanox Technologies, Ltd. Selective acknowledgement of RDMA packets
CA3030786A1 (en) 2016-07-14 2018-01-18 Icu Medical, Inc. Multi-communication path selection and security system for a medical device
US10621304B2 (en) * 2017-03-07 2020-04-14 Ricoh Co., Ltd. Medical device control in telehealth systems
CA3069538A1 (en) 2017-07-19 2019-01-24 Smiths Medical Asd, Inc. Housing arrangements for infusion pumps
US11032257B1 (en) 2017-12-08 2021-06-08 Rankin Labs, Llc Method for covertly delivering a packet of data over a network
US11916923B2 (en) * 2017-12-22 2024-02-27 Telefonaktiebolaget Lm Ericsson (Publ) Method for restricting memory write access in IoT devices
US11861025B1 (en) 2018-01-08 2024-01-02 Rankin Labs, Llc System and method for receiving and processing a signal within a TCP/IP protocol stack
WO2019144075A1 (en) 2018-01-22 2019-07-25 John Rankin System and method for generating random numbers
WO2019152573A1 (en) 2018-01-31 2019-08-08 John Rankin System and method for secure communication using random blocks or random numbers
US11294636B2 (en) 2018-02-28 2022-04-05 Rankin Labs, Llc System and method for expanding a set of random values
WO2019183543A1 (en) 2018-03-23 2019-09-26 John Rankin System and method for identifying a speaker's community of origin from a sound sample
US11341985B2 (en) 2018-07-10 2022-05-24 Rankin Labs, Llc System and method for indexing sound fragments containing speech
US11152109B2 (en) * 2018-07-17 2021-10-19 Icu Medical, Inc. Detecting missing messages from clinical environment
AU2019306492A1 (en) * 2018-07-17 2021-02-11 Icu Medical, Inc. Systems and methods for facilitating clinical messaging in a network environment
NZ771914A (en) 2018-07-17 2023-04-28 Icu Medical Inc Updating infusion pump drug libraries and operational software in a networked environment
US10861592B2 (en) 2018-07-17 2020-12-08 Icu Medical, Inc. Reducing infusion pump network congestion by staggering updates
US11128575B2 (en) 2018-07-20 2021-09-21 Bank Of America Corporation System for increasing processing efficiency through automated resource field transformation
US10692595B2 (en) 2018-07-26 2020-06-23 Icu Medical, Inc. Drug library dynamic version management
AU2019309766B2 (en) 2018-07-26 2024-06-13 Icu Medical, Inc. Drug library management system
US11689543B2 (en) 2018-08-10 2023-06-27 Rankin Labs, Llc System and method for detecting transmission of a covert payload of data
US10728220B2 (en) 2018-08-10 2020-07-28 John Rankin System and method for covertly transmitting a payload of data
US11652732B2 (en) 2018-08-21 2023-05-16 Rankin Labs, Llc System and method for scattering network traffic across a number of disparate hosts
US11989320B2 (en) 2018-12-19 2024-05-21 Rankin Labs, Llc Hidden electronic file system within non-hidden electronic file system
WO2020132173A1 (en) 2018-12-19 2020-06-25 John Rankin Hidden electronic file systems
WO2020142880A1 (zh) * 2019-01-07 2020-07-16 华为技术有限公司 一种数据传输方法及装置
WO2020154223A1 (en) 2019-01-21 2020-07-30 John Rankin Systems and methods for processing network traffic using dynamic memory
WO2020154219A1 (en) 2019-01-21 2020-07-30 John Rankin Systems and methods for controlling machine operations
US11526357B2 (en) 2019-01-21 2022-12-13 Rankin Labs, Llc Systems and methods for controlling machine operations within a multi-dimensional memory space
US11487674B2 (en) 2019-04-17 2022-11-01 Rankin Labs, Llc Virtual memory pool within a network which is accessible from multiple platforms
WO2020214752A1 (en) 2019-04-17 2020-10-22 John Rankin System and method for detecting hidden chemicals within objects in a non-invasive manner
WO2020243249A1 (en) 2019-05-28 2020-12-03 John Rankin Covertly storing a payload of data within a network
US11729184B2 (en) 2019-05-28 2023-08-15 Rankin Labs, Llc Detecting covertly stored payloads of data within a network
US11372773B2 (en) 2019-05-28 2022-06-28 Rankin Labs, Llc Supporting a virtual memory area at a remote computing machine
US11105934B2 (en) 2019-08-07 2021-08-31 Rankin Labs, Llc Determining proximity and attraction of objects within a coordinate system
WO2021025728A1 (en) 2019-08-07 2021-02-11 John Rankin System and method for indirect advertising
US11699037B2 (en) 2020-03-09 2023-07-11 Rankin Labs, Llc Systems and methods for morpheme reflective engagement response for revision and transmission of a recording to a target individual
CA3175101A1 (en) 2020-03-24 2021-09-30 Baxter International Inc. Digital communication module for transmission of data from a medical device
CN114520711B (zh) 2020-11-19 2024-05-03 迈络思科技有限公司 数据包的选择性重传

Family Cites Families (1050)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5935099A (en) 1992-09-09 1999-08-10 Sims Deltec, Inc. Drug pump systems and methods
US6241704B1 (en) 1901-11-22 2001-06-05 Sims Deltec, Inc. Drug pump systems and methods
US5338157B1 (en) 1992-09-09 1999-11-02 Sims Deltec Inc Systems and methods for communicating with ambulat
US5669877A (en) 1994-03-07 1997-09-23 Sims Deltec, Inc. Systems and methods for automated testing of medical equipment
US4370983A (en) 1971-01-20 1983-02-01 Lichtenstein Eric Stefan Computer-control medical care system
US4024864A (en) 1975-09-05 1977-05-24 Cordis Corporation Injector with overspeed protector
US4055175A (en) 1976-05-07 1977-10-25 Miles Laboratories, Inc. Blood glucose control apparatus
US4151845A (en) 1977-11-25 1979-05-01 Miles Laboratories, Inc. Blood glucose control apparatus
US4213454A (en) 1977-12-02 1980-07-22 Baxter Travenol Laboratories, Inc. Control system for metering apparatus for a fluid infusion system
US4559037A (en) 1977-12-28 1985-12-17 Siemens Aktiengesellschaft Device for the pre-programmable infusion of liquids
US4240438A (en) 1978-10-02 1980-12-23 Wisconsin Alumni Research Foundation Method for monitoring blood glucose levels and elements
US4308866A (en) 1978-11-02 1982-01-05 University Of Southern California Infusion controlling apparatus and method
US4731051A (en) 1979-04-27 1988-03-15 The Johns Hopkins University Programmable control means for providing safe and controlled medication infusion
US4373527B1 (en) 1979-04-27 1995-06-27 Univ Johns Hopkins Implantable programmable medication infusion system
US4619653A (en) 1979-04-27 1986-10-28 The Johns Hopkins University Apparatus for detecting at least one predetermined condition and providing an informational signal in response thereto in a medication infusion system
US4280494A (en) 1979-06-26 1981-07-28 Cosgrove Robert J Jun System for automatic feedback-controlled administration of drugs
DE3018641C2 (de) 1980-05-16 1986-05-28 Hans 8228 Freilassing Rodler Automatische Infusionspumpe
AU546785B2 (en) 1980-07-23 1985-09-19 Commonwealth Of Australia, The Open-loop controlled infusion of diabetics
DE3035670A1 (de) 1980-09-22 1982-04-29 Siemens AG, 1000 Berlin und 8000 München Vorrichtung zur infusion von fluessigkeiten in den menschlichen oder tierischen koerper
DE3112762A1 (de) 1981-03-31 1983-01-13 Jürgen Dr.med. 8700 Würzburg Schrezenmeir Doppellumen-blutentnahme-einfachlumen-infusions-subclavia-katheterset
JPS57211361A (en) 1981-06-23 1982-12-25 Terumo Corp Liquid injecting apparatus
US4392849A (en) 1981-07-27 1983-07-12 The Cleveland Clinic Foundation Infusion pump controller
US4529401A (en) 1982-01-11 1985-07-16 Cardiac Pacemakers, Inc. Ambulatory infusion pump having programmable parameters
US4494950A (en) 1982-01-19 1985-01-22 The Johns Hopkins University Plural module medication delivery system
US4515584A (en) 1982-07-06 1985-05-07 Fujisawa Pharmaceutical Co., Ltd. Artificial pancreas
US4498843A (en) 1982-08-02 1985-02-12 Schneider Philip H Insulin infusion pump
US4526568A (en) 1982-09-29 1985-07-02 Miles Laboratories, Inc. Diagnostic method and apparatus for clamping blood glucose concentration
US4464170A (en) 1982-09-29 1984-08-07 Miles Laboratories, Inc. Blood glucose control apparatus and method
EP0107150B2 (de) 1982-10-18 1992-04-15 Siemens Aktiengesellschaft Vorrichtung zur Abgabe von Medikamenten
US4624661A (en) 1982-11-16 1986-11-25 Surgidev Corp. Drug dispensing system
US4553958A (en) 1983-02-04 1985-11-19 Quest Medical, Inc. IV Delivery controller
US4679562A (en) 1983-02-16 1987-07-14 Cardiac Pacemakers, Inc. Glucose sensor
IT1170375B (it) 1983-04-19 1987-06-03 Giuseppe Bombardieri Apparecchio che infonde insulina o glucosio nel soggetto diabetico sulla base di determinazioni di concentrazioni di glucosio ottenute senza bisogno di prelievi del sangue del paziente
US4543955A (en) 1983-08-01 1985-10-01 Cordis Corporation System for controlling body implantable action device
US4953745A (en) 1983-09-19 1990-09-04 James R. Rowlett, Jr. Medication dispensing apparatus
DD230730A3 (de) 1984-01-02 1985-12-11 Zentralinstitut Fuer Diabetes Einrichtung zur prospektiven automatischen bestimmung individualspezifischer glukoseregulationsparameter
US4685903A (en) 1984-01-06 1987-08-11 Pacesetter Infusion, Ltd. External infusion pump apparatus
US4854324A (en) 1984-01-31 1989-08-08 Medrad, Inc. Processor-controlled angiographic injector device
US5100380A (en) 1984-02-08 1992-03-31 Abbott Laboratories Remotely programmable infusion system
IL74236A (en) 1984-02-08 1990-07-12 Omni Flow Inc Infusion system having plural fluid input ports and at least one patient output port
US4613937A (en) 1984-02-22 1986-09-23 Cordis Corporation Method for externally programming a device implanted in a patient
DE3474412D1 (en) 1984-04-14 1988-11-10 Ferring Biotechnik Device for the intermittent delivery of medicaments
US4551133A (en) 1984-04-16 1985-11-05 American Hospital Supply Corporation Patient controlled medication infusion system
US4741732A (en) 1984-05-10 1988-05-03 The University Of Melbourne Open-loop control of drug infusion
US4634427A (en) 1984-09-04 1987-01-06 American Hospital Supply Company Implantable demand medication delivery assembly
US4695954A (en) 1984-10-31 1987-09-22 Rose Robert J Modular medication dispensing system and apparatus utilizing portable memory device
US4885778A (en) 1984-11-30 1989-12-05 Weiss Kenneth P Method and apparatus for synchronizing generation of separate, free running, time dependent equipment
US4634426A (en) 1984-12-11 1987-01-06 Baxter Travenol Laboratories Medical infusion controller and user interface
US4676776A (en) 1985-01-18 1987-06-30 Intelligent Medicine, Inc. Device and method for effecting application of a therapeutic agent
US5088981A (en) 1985-01-18 1992-02-18 Howson David C Safety enhanced device and method for effecting application of a therapeutic agent
US4756706A (en) 1985-01-23 1988-07-12 American Hospital Supply Corporation Centrally managed modular infusion pump system
US4674652A (en) 1985-04-11 1987-06-23 Aten Edward M Controlled dispensing device
US4908017A (en) 1985-05-14 1990-03-13 Ivion Corporation Failsafe apparatus and method for effecting syringe drive
US4838857A (en) 1985-05-29 1989-06-13 Becton, Dickinson And Company Medical infusion device
US4835372A (en) 1985-07-19 1989-05-30 Clincom Incorporated Patient care system
US4838275A (en) 1985-11-29 1989-06-13 Lee Arnold St J Home medical surveillance system
US5364346A (en) 1985-12-20 1994-11-15 Schrezenmeir Juergen Process for the continuous and discontinuous administration of insulin to the human body
US4714462A (en) 1986-02-03 1987-12-22 Intermedics Infusaid, Inc. Positive pressure programmable infusion pump
US4858154A (en) 1986-04-07 1989-08-15 Coulter Electronics, Inc. Interlaboratory quality assurance program
US4857716A (en) 1986-05-12 1989-08-15 Clinicom Incorporated Patient identification and verification system and method
US4803625A (en) 1986-06-30 1989-02-07 Buddy Systems, Inc. Personal health monitor
US4785969A (en) 1986-11-10 1988-11-22 Pyxis Corporation Medication dispensing system
US5216597A (en) 1987-05-01 1993-06-01 Diva Medical Systems Bv Diabetes therapy management system, apparatus and method
AU609843B2 (en) 1987-06-19 1991-05-09 University Of Melbourne, The Infusion pump
US4838856A (en) 1987-07-02 1989-06-13 Truckee Meadows Research & Development Fluid infusion flow control system
US5014698A (en) 1987-10-06 1991-05-14 Leonard Bloom Method of and system for monitoring and treating a malfunctioning heart
CA1324935C (en) 1987-12-04 1993-12-07 James L. Henke Fluid delivery control and monitoring apparatus for a medication infusion system
US5041086A (en) 1987-12-04 1991-08-20 Pacesetter Infusion, Ltd. Clinical configuration of multimode medication infusion system
US4898578A (en) 1988-01-26 1990-02-06 Baxter International Inc. Drug infusion system with calculator
US4933873A (en) 1988-05-12 1990-06-12 Healthtech Services Corp. Interactive patient assistance device
US5142484A (en) 1988-05-12 1992-08-25 Health Tech Services Corporation An interactive patient assistance device for storing and dispensing prescribed medication and physical device
US5131816A (en) 1988-07-08 1992-07-21 I-Flow Corporation Cartridge fed programmable ambulatory infusion pumps powered by DC electric motors
US5000739A (en) 1988-07-12 1991-03-19 Pinewood Medical, Inc. Programmable infusion pump
US5249260A (en) 1988-08-12 1993-09-28 Hitachi, Ltd. Data input system
US4946439A (en) 1988-08-15 1990-08-07 Critikon, Inc. Dual source parenteral infusion system with secondary infusion module
US4943279A (en) 1988-09-30 1990-07-24 C. R. Bard, Inc. Medical pump with infusion controlled by a detachable coded label
US5190522A (en) 1989-01-20 1993-03-02 Institute Of Biocybernetics And Biomedical Engineering P.A.S. Device for monitoring the operation of a delivery system and the method of use thereof
US5193855A (en) 1989-01-25 1993-03-16 Shamos Morris H Patient and healthcare provider identification system
CA2008243C (en) 1989-01-25 2002-05-28 Morris H. Shamos Patient identification system
US5153827A (en) 1989-01-30 1992-10-06 Omni-Flow, Inc. An infusion management and pumping system having an alarm handling system
DE3905350A1 (de) 1989-02-22 1990-09-06 Braun Melsungen Ag Medizintechnisches geraet mit redundant aufgebauter steuereinheit zur infusionstherapie oder blutbehandlung
JPH061152Y2 (ja) 1989-04-28 1994-01-12 シャープ株式会社 輸液注入ポンプの空気探知機
US5016172A (en) 1989-06-14 1991-05-14 Ramp Comsystems, Inc. Patient compliance and status monitoring system
US5010473A (en) 1989-08-31 1991-04-23 Duke University Method and apparatus for model-based control of an open-loop process
US5084828A (en) 1989-09-29 1992-01-28 Healthtech Services Corp. Interactive medication delivery system
US4978335A (en) 1989-09-29 1990-12-18 Medex, Inc. Infusion pump with bar code input to computer
US5097505A (en) 1989-10-31 1992-03-17 Securities Dynamics Technologies, Inc. Method and apparatus for secure identification and verification
US5199439A (en) 1990-01-16 1993-04-06 Stanley Zimmerman Medical statistical analyzing method
US5104374A (en) 1990-01-16 1992-04-14 Bishko Jay R Electronic fluid flow rate controller for controlling the infusion of intravenous drugs into a patient
US5200891A (en) 1990-01-17 1993-04-06 Bruce A. Kehr Electronic medication dispensing method
US5109850A (en) 1990-02-09 1992-05-05 Massachusetts Institute Of Technology Automatic blood monitoring for medication delivery method and apparatus
AU7854891A (en) 1990-04-26 1991-11-11 Markwell Medical Institute, Inc. Wearable blood glucose monitor
US5078683A (en) 1990-05-04 1992-01-07 Block Medical, Inc. Programmable infusion system
IT1246349B (it) 1990-07-11 1994-11-17 Healtech Sa Apparecchiatura per l'erogazione di contenitori per uso medico provvisti di indicazione per l'abbinamento permanente a un determinatopaziente
US5157640A (en) 1990-07-11 1992-10-20 Backner Brian P Medication alert watch and system
AT398694B (de) 1990-07-19 1995-01-25 Avl Verbrennungskraft Messtech Vorrichtung zur bestimmung der konzentration von zumindest einer in organischem gewebe vorliegenden substanz
US5822544A (en) 1990-07-27 1998-10-13 Executone Information Systems, Inc. Patient care and communication system
US6958706B2 (en) 1990-07-27 2005-10-25 Hill-Rom Services, Inc. Patient care and communication system
US5465082A (en) 1990-07-27 1995-11-07 Executone Information Systems, Inc. Apparatus for automating routine communication in a facility
US5455851A (en) 1993-07-02 1995-10-03 Executone Information Systems, Inc. System for identifying object locations
US5594786A (en) 1990-07-27 1997-01-14 Executone Information Systems, Inc. Patient care and communication system
US5161222A (en) 1990-08-20 1992-11-03 Human Microprocessing, Inc. Software engine having an adaptable driver for interpreting variables produced by a plurality of sensors
ATE175068T1 (de) 1990-08-31 1999-01-15 Gen Hospital Corp System zum verwalten mehrerer geräte, zum beispiel von tragbaren patientenüberwachungsgeräten in einem netz
US5261702A (en) 1990-08-31 1993-11-16 M M & K, Inc. Daily medication management system
US5026084A (en) 1990-09-14 1991-06-25 Gail Pasfield Color care coded patient identification system
JP2520047B2 (ja) 1990-10-25 1996-07-31 康裕 福井 患者監視システム
IT1244884B (it) 1990-12-21 1994-09-13 Healtech Sa Procedimento e apparecchiatura per l'abbinamento univoco di farmaci corrispondenti a una terapia pescritta a un determinato paziente
US5373454A (en) 1991-01-16 1994-12-13 Honda Giken Kogyo Kabushiki Kaisha Problem diagnosis system in pressure device control apparatus
FR2673476B1 (fr) 1991-01-18 1996-04-12 Gemplus Card Int Procede securise de chargement de plusieurs applications dans une carte a memoire a microprocesseur.
US5256157A (en) 1991-01-31 1993-10-26 Baxter International Inc. Automated infusion pump with replaceable memory cartridges
ES2098333T3 (es) 1991-01-31 1997-05-01 Baxter Int Bomba de instilacion automatica con cartuchos de memoria sustituibles.
US5256156A (en) 1991-01-31 1993-10-26 Baxter International Inc. Physician closed-loop neuromuscular blocking agent system
US5181910A (en) 1991-02-28 1993-01-26 Pharmacia Deltec, Inc. Method and apparatus for a fluid infusion system with linearized flow rate change
US5319355A (en) 1991-03-06 1994-06-07 Russek Linda G Alarm for patient monitor and life support equipment system
US5486286A (en) 1991-04-19 1996-01-23 Althin Medical, Inc. Apparatus for performing a self-test of kidney dialysis membrane
US5177993A (en) 1991-07-22 1993-01-12 Ivac Corporation Air-in-line sensor
EP0552385B1 (en) 1991-08-21 2001-02-14 International Business Machines Corporation Connectionless ATM data services
GB2260966B (en) 1991-11-04 1994-12-21 Danby Medical Ltd Improvements in or relating to electronically controlled infusion devices and arrangements
US5221268A (en) 1991-12-06 1993-06-22 Block Medical, Inc. Multiple dose control apparatus
US5244463A (en) 1991-12-06 1993-09-14 Block Medical, Inc. Programmable infusion pump
WO1993012825A1 (en) 1991-12-20 1993-07-08 Abbott Laboratories Automated drug infusion system with autopriming
AU3329793A (en) 1991-12-20 1993-07-28 Abbott Laboratories Infusion pump security system
US6850252B1 (en) 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
US5230061A (en) 1992-01-02 1993-07-20 The University Of Akron Clause counter map inference engine
IL104365A0 (en) 1992-01-31 1993-05-13 Gensia Pharma Method and apparatus for closed loop drug delivery
JP3071929B2 (ja) 1992-02-21 2000-07-31 株式会社東芝 医療支援システム及び医療支援方法
JPH0669992A (ja) 1992-03-30 1994-03-11 American Teleph & Telegr Co <Att> 変色可能なハウジングユニット
JPH05277181A (ja) 1992-04-03 1993-10-26 Sharp Corp 輸液装置
FR2690622B1 (fr) 1992-04-29 1995-01-20 Chronotec Système de pompe à perfusion ambulatoire programmable.
US5554013A (en) 1992-05-01 1996-09-10 Mcgaw, Inc. Disposable cassette with negative head height fluid supply
SE500122C2 (sv) 1992-08-27 1994-04-18 Rudolf Valentin Sillen Förfarande och anordning för individuellt styrd, adaptiv medicinering
US5330634A (en) 1992-08-28 1994-07-19 Via Medical Corporation Calibration solutions useful for analyses of biological fluids and methods employing same
US6283761B1 (en) 1992-09-08 2001-09-04 Raymond Anthony Joao Apparatus and method for processing and/or for providing healthcare information and/or healthcare-related information
US5788669A (en) 1995-11-22 1998-08-04 Sims Deltec, Inc. Pump tracking system
US5376070A (en) 1992-09-29 1994-12-27 Minimed Inc. Data transfer system for an infusion pump
JP3660678B2 (ja) 1992-10-15 2005-06-15 ザ ゼネラル ホスピタル コーポレーション 電子的にロード可能な薬剤ライブラリ付き注入ポンプ
US20010011224A1 (en) 1995-06-07 2001-08-02 Stephen James Brown Modular microprocessor-based health monitoring system
US5832448A (en) 1996-10-16 1998-11-03 Health Hero Network Multiple patient monitoring system for proactive health management
US5897493A (en) 1997-03-28 1999-04-27 Health Hero Network, Inc. Monitoring system for remotely querying individuals
US5997476A (en) 1997-03-28 1999-12-07 Health Hero Network, Inc. Networked system for interactive communication and remote monitoring of individuals
US5956501A (en) 1997-01-10 1999-09-21 Health Hero Network, Inc. Disease simulation system and method
US5378231A (en) 1992-11-25 1995-01-03 Abbott Laboratories Automated drug infusion system
US5341476A (en) 1992-12-23 1994-08-23 Abbott Laboratories Dynamic data distribution network with sink and source files for particular data types
US5719761A (en) 1993-01-15 1998-02-17 Alaris Medical Systems, Inc. Configuration control system for configuring multiple biomedical devices
US5912818A (en) 1993-01-25 1999-06-15 Diebold, Incorporated System for tracking and dispensing medical items
US5910252A (en) 1993-02-12 1999-06-08 Cobe Laboratories, Inc. Technique for extracorporeal treatment of blood
JPH08508372A (ja) 1993-03-24 1996-09-03 ユニバーサル エレクトロニクス インク. パーソナルデジタルアシスタント用赤外線リモートコントロール装置
DE4320365C2 (de) 1993-06-19 2000-07-13 Uvo Hoelscher Mehrkanal-Dosiersystem
AU7323994A (en) 1993-07-13 1995-02-13 Sims Deltec, Inc. Medical pump and method of programming
US5368562A (en) 1993-07-30 1994-11-29 Pharmacia Deltec, Inc. Systems and methods for operating ambulatory medical devices such as drug delivery devices
US5423748A (en) 1993-08-16 1995-06-13 Uhala; Dominic Pain comforter system
FR2710538B1 (fr) 1993-09-30 1995-12-01 Becton Dickinson Co Procédé et dispositif de détection de bulles dans une ligne de perfusion.
US5389078A (en) 1993-10-06 1995-02-14 Sims Deltec, Inc. Programmable infusion pump for administering medication to patients
CA2131077A1 (en) 1993-11-05 1995-05-06 Syed Vickar Ahamed Integrated medical computer system and method
US5447164A (en) 1993-11-08 1995-09-05 Hewlett-Packard Company Interactive medical information display system and method for displaying user-definable patient events
US5431627A (en) 1993-11-12 1995-07-11 Abbott Laboratories Cassette identification system for use with a multi-program drug infusion pump
JP3409399B2 (ja) 1993-11-30 2003-05-26 セイコーエプソン株式会社 投薬制御装置
DE4441907A1 (de) 1993-12-16 1995-06-22 Hewlett Packard Co Patienten-Notfallreaktionssystem
US5417222A (en) 1994-01-21 1995-05-23 Hewlett-Packard Company Patient monitoring system
US5867688A (en) 1994-02-14 1999-02-02 Reliable Transaction Processing, Inc. Data acquisition and retrieval system with wireless handheld user interface
FR2716286A1 (fr) 1994-02-16 1995-08-18 Debiotech Sa Installation de surveillance à distance d'équipements commandables.
US5562615A (en) 1994-02-28 1996-10-08 Corpak, Inc. Free flow detector for an enternal feeding pump
US5630710A (en) 1994-03-09 1997-05-20 Baxter International Inc. Ambulatory infusion pump
JP2973076B2 (ja) 1994-03-16 1999-11-08 本田技研工業株式会社 電動ポンプの制御装置
EP0672427A1 (en) 1994-03-17 1995-09-20 Siemens-Elema AB System for infusion of medicine into the body of a patient
FR2717919B1 (fr) 1994-03-28 1996-06-21 Ensyma Sa Système médical d'aide à la décision et dispositif d'administration d'au moins un médicament.
US5738102A (en) 1994-03-31 1998-04-14 Lemelson; Jerome H. Patient monitoring system
US5507786A (en) 1994-04-14 1996-04-16 Pacesetter, Inc. System and method for measuring and storing parametric data pertaining to operating characteristics of an implantable medical device
US5577169A (en) 1994-04-29 1996-11-19 International Business Machines Corporation Fuzzy logic entity behavior profiler
DE4415896A1 (de) 1994-05-05 1995-11-09 Boehringer Mannheim Gmbh Analysesystem zur Überwachung der Konzentration eines Analyten im Blut eines Patienten
CA2125300C (en) 1994-05-11 1999-10-12 Douglas J. Ballantyne Method and apparatus for the electronic distribution of medical information and patient services
JPH07319971A (ja) 1994-05-19 1995-12-08 At & T Global Inf Solutions Internatl Inc 遠隔アクセス可能な医療ネットワーク
EP0692766B1 (en) 1994-07-12 2002-05-08 Medrad, Inc. Closed loop information path for medical fluid delivery systems
US5582593A (en) 1994-07-21 1996-12-10 Hultman; Barry W. Ambulatory medication delivery system
US5695473A (en) 1994-07-27 1997-12-09 Sims Deltec, Inc. Occlusion detection system for an infusion pump
US5493430A (en) 1994-08-03 1996-02-20 Kent Display Systems, L.P. Color, reflective liquid crystal displays
DE19580995D2 (de) 1994-09-13 1997-12-04 Irmgard Rost Personendaten-Archivierungssystem
US5636044A (en) 1994-10-14 1997-06-03 Kent Displays, Inc. Segmented polymer stabilized and polymer free cholesteric texture liquid crystal displays and driving method for same
US5522798A (en) 1994-10-17 1996-06-04 Abbott Laboratories Control of a multi-channel drug infusion pump using a pharmacokinetic model
US5461365A (en) 1994-10-27 1995-10-24 Schlager; Dan Multi-hazard alarm system using selectable power-level transmission and localization
US5598519A (en) 1994-11-08 1997-01-28 Microsoft Corporation Method and system for direct cell formatting in a spreadsheet
US5582323A (en) 1994-11-16 1996-12-10 United Home Technologies, Inc. Medication dispenser and monitor
US6749586B2 (en) 1994-11-25 2004-06-15 I-Flow Corporation Remotely programmable infusion system
US5573506A (en) 1994-11-25 1996-11-12 Block Medical, Inc. Remotely programmable infusion system
US5685844A (en) 1995-01-06 1997-11-11 Abbott Laboratories Medicinal fluid pump having multiple stored protocols
US5520637A (en) 1995-01-31 1996-05-28 Pager; David Closed-loop system for infusing oxytocin
WO1996025186A2 (en) 1995-02-07 1996-08-22 Gensia, Inc. Feedback controlled drug delivery system
US5697899A (en) 1995-02-07 1997-12-16 Gensia Feedback controlled drug delivery system
US5814015A (en) 1995-02-24 1998-09-29 Harvard Clinical Technology, Inc. Infusion pump for at least one syringe
US5941846A (en) 1995-03-13 1999-08-24 Alaris Medical Systems, Inc. Method and apparatus for power connection in a modular patient care system
US5713856A (en) 1995-03-13 1998-02-03 Alaris Medical Systems, Inc. Modular patient care system
US5836910A (en) 1995-03-13 1998-11-17 Alaris Medical Systems, Inc. Method and apparatus for logical addressing in a modular patient care system
US7384410B2 (en) 1995-03-13 2008-06-10 Cardinal Health 303, Inc. System and method for managing patient care
US5752621A (en) 1995-03-20 1998-05-19 Eigen Technology Inc. Smart automatic medication dispenser
US6223440B1 (en) 1995-03-27 2001-05-01 Richard Rashman Autoclavable stainless steel medical instruments with polypropylene injected color handles
US6333690B1 (en) 1995-03-29 2001-12-25 Medical Tracking Systems Wide area multipurpose tracking system
US7267666B1 (en) 1995-04-20 2007-09-11 Acist Medical Systems, Inc. Angiographic injector system with multiple processor redundancy
US8082018B2 (en) 1995-04-20 2011-12-20 Acist Medical Systems, Inc. System and method for multiple injection procedures on heart vessels
US5781442A (en) 1995-05-15 1998-07-14 Alaris Medical Systems, Inc. System and method for collecting data and managing patient care
US6671563B1 (en) 1995-05-15 2003-12-30 Alaris Medical Systems, Inc. System and method for collecting data and managing patient care
US5772635A (en) 1995-05-15 1998-06-30 Alaris Medical Systems, Inc. Automated infusion system with dose rate calculator
US5665065A (en) 1995-05-26 1997-09-09 Minimed Inc. Medication infusion device with blood glucose data input
EP0830775B1 (en) * 1995-06-02 2002-08-14 Airspan Networks Inc. Control message transmission in telecommunications systems
US5623925A (en) 1995-06-05 1997-04-29 Cmed, Inc. Virtual medical instrument for performing medical diagnostic testing on patients
US5699509A (en) 1995-06-07 1997-12-16 Abbott Laboratories Method and system for using inverted data to detect corrupt data
US5620608A (en) 1995-06-07 1997-04-15 Cobe Laboratories, Inc. Information entry validation system and method for a dialysis machine
US5995860A (en) 1995-07-06 1999-11-30 Thomas Jefferson University Implantable sensor and system for measurement and control of blood constituent levels
US5651775A (en) 1995-07-12 1997-07-29 Walker; Richard Bradley Medication delivery and monitoring system and methods
US5850344A (en) 1995-08-14 1998-12-15 Profile Systems, Llc Medication dispensing and timing system
JP3083465B2 (ja) 1995-09-06 2000-09-04 フクダ電子株式会社 患者情報解析管理システム及び方法
US5754111A (en) 1995-09-20 1998-05-19 Garcia; Alfredo Medical alerting system
US5797515A (en) 1995-10-18 1998-08-25 Adds, Inc. Method for controlling a drug dispensing system
US5873731A (en) 1995-10-20 1999-02-23 Eagle Simulation, Inc. Patient drug recognition system
US5718562A (en) 1995-11-02 1998-02-17 Abbott Laboratories Interface module for use with an NCT-based pumping mechanism and NCT-based cassette
US5944659A (en) 1995-11-13 1999-08-31 Vitalcom Inc. Architecture for TDMA medical telemetry system
US5836312A (en) 1996-01-02 1998-11-17 Moore; Steven Jerome Computer-assisted system and method for adjudging the effect of consumable intakes on physiological parameters
US6112182A (en) 1996-01-16 2000-08-29 Healthcare Computer Corporation Method and apparatus for integrated management of pharmaceutical and healthcare services
US5778345A (en) 1996-01-16 1998-07-07 Mccartney; Michael J. Health data processing system
US5782805A (en) 1996-04-10 1998-07-21 Meinzer; Randolph Medical infusion pump
US5764034A (en) 1996-04-10 1998-06-09 Baxter International Inc. Battery gauge for a battery operated infusion pump
US5774865A (en) 1996-04-19 1998-06-30 Ideal Ideas, Inc. Patient compliance and monitoring system for multiple regimens using a movable bar code reader
US6517482B1 (en) 1996-04-23 2003-02-11 Dermal Therapy (Barbados) Inc. Method and apparatus for non-invasive determination of glucose in body fluids
US6151643A (en) 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
US5990838A (en) 1996-06-12 1999-11-23 3Com Corporation Dual orthogonal monopole antenna system
US5870733A (en) 1996-06-14 1999-02-09 Electronic Data Systems Corporation Automated system and method for providing access data concerning an item of business property
US5975081A (en) 1996-06-21 1999-11-02 Northrop Grumman Corporation Self-contained transportable life support system
US6182667B1 (en) 1996-06-21 2001-02-06 Integrated Medical Systems, Inc. Display for transportable life support system
US6234176B1 (en) 1996-06-21 2001-05-22 Integrated Medical Systems, Inc. Data logger for transportable life support system
US5807336A (en) 1996-08-02 1998-09-15 Sabratek Corporation Apparatus for monitoring and/or controlling a medical device
US6689091B2 (en) 1996-08-02 2004-02-10 Tuan Bui Medical apparatus with remote control
US5885245A (en) 1996-08-02 1999-03-23 Sabratek Corporation Medical apparatus with remote virtual input device
US5687717A (en) 1996-08-06 1997-11-18 Tremont Medical, Inc. Patient monitoring system with chassis mounted or remotely operable modules and portable computer
US6271813B1 (en) 1996-08-30 2001-08-07 Lear Automotive Dearborn, Inc. Voltage control for adjusting the brightness of a screen display
WO1998012670A1 (en) 1996-09-18 1998-03-26 Dew Engineering And Development Limited Biometric identification system for providing secure access
US5897498A (en) 1996-09-25 1999-04-27 Atl Ultrasound, Inc. Ultrasonic diagnostic imaging system with electronic message communications capability
US5924074A (en) 1996-09-27 1999-07-13 Azron Incorporated Electronic medical records system
US5800387A (en) 1996-10-04 1998-09-01 Alaris Medical Systems, Inc. Safety monitoring apparatus for a patient care system
IL119523A0 (en) 1996-10-30 1997-01-10 Algotec Systems Ltd Data distribution system
US5957885A (en) 1996-11-06 1999-09-28 Alaris Medical Systems, Inc. Oximetry monitored, patient controlled analgesia system
US6335927B1 (en) 1996-11-18 2002-01-01 Mci Communications Corporation System and method for providing requested quality of service in a hybrid network
US6003006A (en) 1996-12-09 1999-12-14 Pyxis Corporation System of drug distribution to health care providers
US6021392A (en) 1996-12-09 2000-02-01 Pyxis Corporation System and method for drug management
US8734339B2 (en) 1996-12-16 2014-05-27 Ip Holdings, Inc. Electronic skin patch for real time monitoring of cardiac activity and personal health management
US6032155A (en) 1997-04-14 2000-02-29 De La Huerga; Carlos System and apparatus for administering prescribed medication to a patient
US6346886B1 (en) 1996-12-20 2002-02-12 Carlos De La Huerga Electronic identification apparatus
US6330008B1 (en) 1997-02-24 2001-12-11 Torrent Systems, Inc. Apparatuses and methods for monitoring performance of parallel computing
US6159147A (en) 1997-02-28 2000-12-12 Qrs Diagnostics, Llc Personal computer card for collection of real-time biological data
US5827179A (en) 1997-02-28 1998-10-27 Qrs Diagnostic, Llc Personal computer card for collection for real-time biological data
US6270455B1 (en) 1997-03-28 2001-08-07 Health Hero Network, Inc. Networked system for interactive communications and remote monitoring of drug delivery
US5960085A (en) 1997-04-14 1999-09-28 De La Huerga; Carlos Security badge for automated access control and secure data gathering
EP0872991B1 (en) 1997-04-15 2006-07-26 Hewlett-Packard Company, A Delaware Corporation Method and apparatus for device interaction by format
TW357517B (en) 1997-05-29 1999-05-01 Koji Akai Monitoring system
US7267665B2 (en) 1999-06-03 2007-09-11 Medtronic Minimed, Inc. Closed loop system for controlling insulin infusion
US6628809B1 (en) 1999-10-08 2003-09-30 Lumidigm, Inc. Apparatus and method for identification of individuals by near-infrared spectrum
US6558351B1 (en) 1999-06-03 2003-05-06 Medtronic Minimed, Inc. Closed loop system for controlling insulin infusion
US5954643A (en) 1997-06-09 1999-09-21 Minimid Inc. Insertion set for a transcutaneous sensor
US5915240A (en) 1997-06-12 1999-06-22 Karpf; Ronald S. Computer system and method for accessing medical information over a network
JPH1110843A (ja) 1997-06-20 1999-01-19 Canon Inc 皮革加色処理方法、加色処理装置および該加色処理方法によって製造された加色皮革
US6012034A (en) 1997-08-18 2000-01-04 Becton, Dickinson And Company System and method for selecting an intravenous device
US6070761A (en) 1997-08-22 2000-06-06 Deka Products Limited Partnership Vial loading method and apparatus for intelligent admixture and delivery of intravenous drugs
US6000828A (en) 1997-08-22 1999-12-14 Power Med Incorporated Method of improving drug treatment
US6888322B2 (en) 1997-08-26 2005-05-03 Color Kinetics Incorporated Systems and methods for color changing device and enclosure
US20050040226A1 (en) 1997-10-01 2005-02-24 Zaher Al-Sheikh User authorization system containing a user image
US6285665B1 (en) 1997-10-14 2001-09-04 Lucent Technologies Inc. Method for establishment of the power level for uplink data transmission in a multiple access system for communications networks
US7017293B2 (en) 2002-09-27 2006-03-28 Laser Band, Llc Wristband/cinch with label assembly business form and method
US6567416B1 (en) 1997-10-14 2003-05-20 Lucent Technologies Inc. Method for access control in a multiple access system for communications networks
US6377548B1 (en) 1997-10-14 2002-04-23 Lucent Technologies Inc. Method for admitting new connections based on measured quantities in a multiple access system for communications networks
US6469991B1 (en) 1997-10-14 2002-10-22 Lucent Technologies Inc. Method for overload control in a multiple access system for communication networks
US6327254B1 (en) 1997-10-14 2001-12-04 Lucent Technologies Inc. Method for bandwidth sharing in a multiple access system for communications networks
US6226277B1 (en) 1997-10-14 2001-05-01 Lucent Technologies Inc. Method for admitting new connections based on usage priorities in a multiple access system for communications networks
US6115390A (en) 1997-10-14 2000-09-05 Lucent Technologies, Inc. Bandwidth reservation and collision resolution method for multiple access communication networks where remote hosts send reservation requests to a base station for randomly chosen minislots
US7216802B1 (en) 1997-10-21 2007-05-15 Carlos De La Huerga Method and apparatus for verifying information
US6292860B1 (en) 1997-12-16 2001-09-18 Ncr Corporation Method for preventing deadlock by suspending operation of processors, bridges, and devices
US6208974B1 (en) 1997-12-30 2001-03-27 Medical Management International, Inc. Method and system for managing wellness plans for a medical care practice
US6859134B1 (en) 1998-01-05 2005-02-22 Symbol Technologies, Inc. Data communication device
US20040015132A1 (en) 1998-01-06 2004-01-22 Eric Brown Method for improving patient compliance with a medical program
US5967559A (en) 1998-01-09 1999-10-19 Abramowitz; Joseph M. Rapid visual impact patient identifier and method
US6189105B1 (en) 1998-02-20 2001-02-13 Lucent Technologies, Inc. Proximity detection of valid computer user
US20020010595A1 (en) 1998-02-27 2002-01-24 Kapp Thomas L. Web-based medication management system
US6195589B1 (en) 1998-03-09 2001-02-27 3Com Corporation Personal data assistant with remote control capabilities
US6024699A (en) 1998-03-13 2000-02-15 Healthware Corporation Systems, methods and computer program products for monitoring, diagnosing and treating medical conditions of remotely located patients
US5971594A (en) 1998-03-24 1999-10-26 Innovative Medical Devices, Inc. Medication dispensing system
SE9801151L (sv) 1998-04-01 1999-10-02 Telia Ab Förbättringar av, eller avseende, elektroniska namnskyltar
US6083007A (en) 1998-04-02 2000-07-04 Hewlett-Packard Company Apparatus and method for configuring training for a product and the product
US7899518B2 (en) 1998-04-06 2011-03-01 Masimo Laboratories, Inc. Non-invasive tissue glucose level monitoring
US6721582B2 (en) 1999-04-06 2004-04-13 Argose, Inc. Non-invasive tissue glucose level monitoring
US6200289B1 (en) 1998-04-10 2001-03-13 Milestone Scientific, Inc. Pressure/force computer controlled drug delivery system and the like
US6126637A (en) 1998-04-15 2000-10-03 Science Incorporated Fluid delivery device with collapsible needle cover
US6039251A (en) 1998-04-16 2000-03-21 Holowko; Paul L. Method and system for secure control of a medical device
DE19850122A1 (de) 1998-04-17 1999-10-28 Siemens Ag System und Verfahren zur Konfiguration und/oder Parametrierung einer Diagnoseeinrichtung für Objekte
US7647237B2 (en) 1998-04-29 2010-01-12 Minimed, Inc. Communication station and software for interfacing with an infusion pump, analyte monitor, analyte meter, or the like
US6175752B1 (en) 1998-04-30 2001-01-16 Therasense, Inc. Analyte monitoring device and methods of use
US6167567A (en) 1998-05-05 2000-12-26 3Com Corporation Technique for automatically updating software stored on a client computer in a networked client-server environment
US6807965B1 (en) 1998-06-03 2004-10-26 Scott Laboratories, Inc. Apparatus and method for providing a conscious patient relief from pain and anxiety associated with medical or surgical procedures
US7308894B2 (en) 1998-06-03 2007-12-18 Scott Laboratories, Inc. Apparatuses and methods for providing a conscious patient relief from pain and anxiety associated with medical or surgical procedures according to appropriate clinical heuristics
US5920263A (en) 1998-06-11 1999-07-06 Ohmeda, Inc. De-escalation of alarm priorities in medical devices
US5931764A (en) 1998-06-24 1999-08-03 Viztec, Inc. Wearable device with flexible display
US6112323A (en) 1998-06-29 2000-08-29 Microsoft Corporation Method and computer program product for efficiently and reliably sending small data messages from a sending system to a large number of receiving systems
US5963136A (en) 1998-07-15 1999-10-05 O'brien; Charles Terrence Interactive prescription compliance and life safety system
US6104295A (en) 1998-07-20 2000-08-15 Versus Technology, Inc. Electronic band tag and method of storing ID information therein
US6248067B1 (en) 1999-02-05 2001-06-19 Minimed Inc. Analyte sensor and holter-type monitor system and method of using the same
US6554798B1 (en) 1998-08-18 2003-04-29 Medtronic Minimed, Inc. External infusion device with remote programming, bolus estimator and/or vibration alarm capabilities
US6558320B1 (en) 2000-01-20 2003-05-06 Medtronic Minimed, Inc. Handheld personal data assistant (PDA) with a medical device and method of using the same
DE19840965A1 (de) 1998-09-08 2000-03-09 Disetronic Licensing Ag Vorrichtung zur Selbstverabreichung eines Produktfluids
US6924781B1 (en) 1998-09-11 2005-08-02 Visible Tech-Knowledgy, Inc. Smart electronic label employing electronic ink
US6753830B2 (en) 1998-09-11 2004-06-22 Visible Tech-Knowledgy, Inc. Smart electronic label employing electronic ink
AU6142799A (en) 1998-09-11 2000-03-27 Amira Medical Device for determination of an analyte in a body fluid intergrated with an insulin pump
JP3729658B2 (ja) 1998-09-18 2005-12-21 パイオニア株式会社 オーディオ装置
US7931642B2 (en) 1998-09-18 2011-04-26 Codman Neuro Sciences Sarl Infusion pump comprising a computer for calculating the respective maximum permissible dosage
DE19844252A1 (de) 1998-09-26 2000-03-30 Hendrik Lehnert Modulare Vorrichtung zur computergesteuerten Insulin- und Glukoseinfusion
CA2666429A1 (en) 1998-10-08 2000-04-13 Medtronic Minimed, Inc. Telemetered characteristic monitor system
US7136645B2 (en) 1998-10-09 2006-11-14 Netmotion Wireless, Inc. Method and apparatus for providing mobile and other intermittent connectivity in a computing environment
US7293107B1 (en) 1998-10-09 2007-11-06 Netmotion Wireless, Inc. Method and apparatus for providing mobile and other intermittent connectivity in a computing environment
US7766873B2 (en) 1998-10-29 2010-08-03 Medtronic Minimed, Inc. Method and apparatus for detecting occlusions in an ambulatory infusion pump
US6073106A (en) 1998-10-30 2000-06-06 Nehdc, Inc. Method of managing and controlling access to personal information
JP2000200067A (ja) 1998-11-06 2000-07-18 Matsushita Electric Ind Co Ltd 表示装置の駆動方法及び表示装置
US6578002B1 (en) 1998-11-25 2003-06-10 Gregory John Derzay Medical diagnostic system service platform
WO2000032258A1 (en) 1998-11-30 2000-06-08 Novo Nordisk A/S A method and a system for assisting a user in a medical self treatment, said self treatment comprising a plurality of actions
US6540672B1 (en) 1998-12-09 2003-04-01 Novo Nordisk A/S Medical system and a method of controlling the system for use by a patient for medical self treatment
CN1329471A (zh) 1998-11-30 2002-01-02 诺沃挪第克公司 医疗系统和患者使用该系统进行自我医疗的控制方法
DE19904090C2 (de) 1999-02-02 2003-06-05 Wolf Gmbh Richard Verfahren und Vorrichtung zur automatischen Steuerung und Verwaltung medizinischer Geräte und Anlagen
US6774786B1 (en) 2000-11-07 2004-08-10 Fisher-Rosemount Systems, Inc. Integrated alarm display in a process control network
WO2000053243A1 (en) 1999-03-09 2000-09-14 Ball Semiconductor, Inc. Implantable drug delivery system
TW537880B (en) 1999-03-11 2003-06-21 Remote Medical Corp Method for improving patient compliance with a medical program
US20040139004A1 (en) 1999-04-08 2004-07-15 Aceinc Pty Ltd. Secure online commerce transactions
US6635048B1 (en) 1999-04-30 2003-10-21 Medtronic, Inc. Implantable medical pump with multi-layer back-up memory
US6796956B2 (en) 1999-04-30 2004-09-28 Medtronic, Inc. Method and apparatus to control drug therapy dosages in an implantable pump
IL130371A (en) 1999-06-08 2004-06-01 Oridion Medical Ltd Capnography waveform interpreter
US6928490B1 (en) 1999-05-20 2005-08-09 St. Louis University Networking infrastructure for an operating room
US6312378B1 (en) 1999-06-03 2001-11-06 Cardiac Intelligence Corporation System and method for automated collection and analysis of patient information retrieved from an implantable medical device for remote patient care
US7806886B2 (en) 1999-06-03 2010-10-05 Medtronic Minimed, Inc. Apparatus and method for controlling insulin infusion with state variable feedback
US7134996B2 (en) 1999-06-03 2006-11-14 Cardiac Intelligence Corporation System and method for collection and analysis of patient information for automated remote patient care
US6752787B1 (en) 1999-06-08 2004-06-22 Medtronic Minimed, Inc., Cost-sensitive application infusion device
US6631353B1 (en) 1999-06-10 2003-10-07 Hologic, Inc. Sonometry and densitometry medical diagnostic devices enabled for per-use patient examinations charged via internet connections to financial cards
US6969352B2 (en) 1999-06-22 2005-11-29 Teratech Corporation Ultrasound probe with integrated electronics
US7315825B2 (en) 1999-06-23 2008-01-01 Visicu, Inc. Rules-based patient care system for use in healthcare locations
IL130818A (en) 1999-07-06 2005-07-25 Intercure Ltd Interventive-diagnostic device
US7149773B2 (en) 1999-07-07 2006-12-12 Medtronic, Inc. System and method of automated invoicing for communications between an implantable medical device and a remote computer system or health care provider
WO2001003572A1 (de) 1999-07-08 2001-01-18 Steffen Leonhardt Vorrichtung zur messung des menschlichen blutzuckerspiegels
DE19932147A1 (de) 1999-07-12 2001-01-25 Insys Ges Fuer Microcontroller Elektronisches System zur Erfassung und Kontrolle von Patientendaten
US6221011B1 (en) 1999-07-26 2001-04-24 Cardiac Intelligence Corporation System and method for determining a reference baseline of individual patient status for use in an automated collection and analysis patient care system
US6514460B1 (en) 1999-07-28 2003-02-04 Abbott Laboratories Luminous glucose monitoring device
US6339718B1 (en) 1999-07-30 2002-01-15 Medrad, Inc. Programmable injector control
US6652455B1 (en) 1999-08-13 2003-11-25 Jean-Pierre Kocher Method and apparatus for scanning of food and medicine to provide outputs relative to a user profile
US20030013959A1 (en) 1999-08-20 2003-01-16 Sorin Grunwald User interface for handheld imaging devices
WO2001014974A2 (en) 1999-08-23 2001-03-01 Presideo, Inc. System, method, and article of manufacture for identifying an individual and managing an individual's health records
US6923763B1 (en) 1999-08-23 2005-08-02 University Of Virginia Patent Foundation Method and apparatus for predicting the risk of hypoglycemia
US6494831B1 (en) 1999-09-03 2002-12-17 Ge Medical Technology Services, Inc. Medical diagnostic system service connectivity method and apparatus
US6464136B2 (en) 1999-12-28 2002-10-15 Christopher S. Walsh Record and verification method, apparatus and system
US6640246B1 (en) 1999-09-17 2003-10-28 Ge Medical Systems Global Technology Company, Llc Integrated computerized materials management system
US6564121B1 (en) 1999-09-22 2003-05-13 Telepharmacy Solutions, Inc. Systems and methods for drug dispensing
WO2001026020A1 (en) 1999-10-01 2001-04-12 Glaxo Group Limited Patient data monitoring system
US6681003B2 (en) 1999-10-05 2004-01-20 Lifecor, Inc. Data collection and system management for patient-worn medical devices
US7636718B1 (en) 1999-10-07 2009-12-22 B. Braun Medical Inc. Pharmaceutical administrative system for ordering and receiving prescribed medication
US6816605B2 (en) 1999-10-08 2004-11-09 Lumidigm, Inc. Methods and systems for biometric identification of individuals using linear optical spectroscopy
US7519905B2 (en) 1999-10-12 2009-04-14 Webmd Corp. Automatic formatting and validating of text for a markup language graphical user interface
US6418334B1 (en) 1999-10-19 2002-07-09 General Electric Company Method and apparatus for logging and dynamically configuring performance analysis of a medical diagnostic imaging system
US6249705B1 (en) 1999-10-21 2001-06-19 Pacesetter, Inc. Distributed network system for use with implantable medical devices
US7933780B2 (en) 1999-10-22 2011-04-26 Telaric, Llc Method and apparatus for controlling an infusion pump or the like
US6257265B1 (en) 1999-10-26 2001-07-10 Sims Level 1 Inc. Apparatus for connecting a heat exchanger with a fluid temperature regulation device
US6363282B1 (en) 1999-10-29 2002-03-26 Medtronic, Inc. Apparatus and method to automatic remote software updates of medical device systems
US20040078236A1 (en) 1999-10-30 2004-04-22 Medtamic Holdings Storage and access of aggregate patient data for analysis
US6406426B1 (en) 1999-11-03 2002-06-18 Criticare Systems Medical monitoring and alert system for use with therapeutic devices
CA2427446C (en) 1999-11-04 2012-07-24 Health Resources And Technology, Inc. A health care management system
US6673033B1 (en) 1999-11-24 2004-01-06 Medrad, Inc. Injectors, injector systems and injector control
US6520930B2 (en) 1999-11-24 2003-02-18 Medrad, Inc. Injectors, injector systems and injector control
US20020103675A1 (en) 1999-11-29 2002-08-01 John Vanelli Apparatus and method for providing consolidated medical information
US6751651B2 (en) 1999-11-30 2004-06-15 David A. Crockett Web-site consistency administration among inconsistent software-object libraries of remote distributed health-care providers
US6519569B1 (en) 1999-12-01 2003-02-11 B. Braun Medical, Inc. Security infusion pump with bar code reader
US6790198B1 (en) 1999-12-01 2004-09-14 B-Braun Medical, Inc. Patient medication IV delivery pump with wireless communication to a hospital information management system
US7645258B2 (en) 1999-12-01 2010-01-12 B. Braun Medical, Inc. Patient medication IV delivery pump with wireless communication to a hospital information management system
EP1238489B1 (en) 1999-12-13 2008-03-05 Broadcom Corporation Voice gateway with downstream voice synchronization
US6602191B2 (en) 1999-12-17 2003-08-05 Q-Tec Systems Llp Method and apparatus for health and disease management combining patient data monitoring with wireless internet connectivity
US7060031B2 (en) 1999-12-17 2006-06-13 Medtronic, Inc. Method and apparatus for remotely programming implantable medical devices
US6497680B1 (en) 1999-12-17 2002-12-24 Abbott Laboratories Method for compensating for pressure differences across valves in cassette type IV pump
US7490048B2 (en) 1999-12-18 2009-02-10 Raymond Anthony Joao Apparatus and method for processing and/or for providing healthcare information and/or healthcare-related information
US7464040B2 (en) 1999-12-18 2008-12-09 Raymond Anthony Joao Apparatus and method for processing and/or for providing healthcare information and/or healthcare-related information
US6442432B2 (en) 1999-12-21 2002-08-27 Medtronic, Inc. Instrumentation and software for remote monitoring and programming of implantable medical devices (IMDs)
US6734886B1 (en) 1999-12-21 2004-05-11 Personalpath Systems, Inc. Method of customizing a browsing experience on a world-wide-web site
DE29922736U1 (de) 1999-12-24 2001-05-03 Braun Melsungen Ag Infusionsvorrichtung mit mehreren Infusionspumpen
US6961448B2 (en) 1999-12-30 2005-11-01 Medtronic, Inc. User authentication in medical device systems
US6980958B1 (en) 2000-01-11 2005-12-27 Zycare, Inc. Apparatus and methods for monitoring and modifying anticoagulation therapy of remotely located patients
US6371719B1 (en) 2000-01-13 2002-04-16 Leroy J. Hildebrandt Recreation vehicle carrier for a truck
US6740075B2 (en) 2000-01-21 2004-05-25 Medtronic Minimed, Inc. Ambulatory medical apparatus with hand held communication device
JP3438693B2 (ja) 2000-02-03 2003-08-18 日本電気株式会社 表示部付き電子機器
US20010037060A1 (en) 2000-02-08 2001-11-01 Thompson Richard P. Web site for glucose monitoring
DE10006044A1 (de) 2000-02-10 2001-08-16 Roche Diagnostics Gmbh Anordnung und Verfahren zur Dosierung eines die Blutglukose eines Patienten regulierenden Hormons
DE20003469U1 (de) 2000-02-23 2000-08-17 Medical Communications Soft Un Hand-Held-Computer
US7171492B1 (en) * 2000-02-24 2007-01-30 Utstarcom, Inc. Method and application programming interface for assigning multiple network addresses
US6893396B2 (en) 2000-03-01 2005-05-17 I-Medik, Inc. Wireless internet bio-telemetry monitoring system and interface
US6572542B1 (en) 2000-03-03 2003-06-03 Medtronic, Inc. System and method for monitoring and controlling the glycemic state of a patient
JP2001258858A (ja) 2000-03-17 2001-09-25 Pioneer Electronic Corp 健康監視システム
US20020040282A1 (en) 2000-03-22 2002-04-04 Bailey Thomas C. Drug monitoring and alerting system
US20010056358A1 (en) 2000-03-24 2001-12-27 Bridge Medical, Inc., Method and apparatus for providing medication administration warnings
US6542902B2 (en) 2000-03-24 2003-04-01 Bridge Medical, Inc. Method and apparatus for displaying medication information
US6871211B2 (en) 2000-03-28 2005-03-22 Ge Medical Systems Information Technologies, Inc. Intranet-based medical data distribution system
US6958677B1 (en) 2000-03-31 2005-10-25 Ge Medical Systems Information Technologies, Inc. Object location monitoring system
US7038584B2 (en) 2000-03-31 2006-05-02 Ge Medical Systems Information Technologies, Inc. Object location monitoring within buildings
AU2001293343A1 (en) 2000-04-06 2001-10-23 Paul R. Bindler Automated and intelligent networked-based psychological services
FR2807542B1 (fr) 2000-04-06 2006-09-29 Capsule Technologie Procede et systeme pour collecter et diffuser les donnees provenant d'appareils, notamment d'appareils medicaux
US8510468B2 (en) 2000-04-17 2013-08-13 Ciradence Corporation Route aware network link acceleration
US20030036683A1 (en) 2000-05-01 2003-02-20 Kehr Bruce A. Method, system and computer program product for internet-enabled, patient monitoring system
US6599281B1 (en) 2000-05-03 2003-07-29 Aspect Medical Systems, Inc. System and method for adaptive drug delivery
US7099809B2 (en) 2000-05-04 2006-08-29 Dov Dori Modeling system
JP2004512058A (ja) 2000-05-05 2004-04-22 ヒル−ロム サービシーズ,インコーポレイティド 病院ベッド用リモコン
US6227371B1 (en) 2000-05-12 2001-05-08 Julie Song Medical container and system
US7657887B2 (en) 2000-05-17 2010-02-02 Interwoven, Inc. System for transactionally deploying content across multiple machines
PL365179A1 (en) 2000-05-18 2004-12-27 Alaris Medical Systems Distributed remote asset and medication management drug delivery system
US20050171815A1 (en) 2003-12-31 2005-08-04 Vanderveen Timothy W. Centralized medication management system
US20040172283A1 (en) 2003-02-09 2004-09-02 Vanderveen Timothy W. Medication management and event logger and analysis system
US9427520B2 (en) 2005-02-11 2016-08-30 Carefusion 303, Inc. Management of pending medication orders
US7860583B2 (en) 2004-08-25 2010-12-28 Carefusion 303, Inc. System and method for dynamically adjusting patient therapy
US9069887B2 (en) 2000-05-18 2015-06-30 Carefusion 303, Inc. Patient-specific medication management system
US6482158B2 (en) 2000-05-19 2002-11-19 Healthetech, Inc. System and method of ultrasonic mammography
DE60134191D1 (de) 2000-05-26 2008-07-10 Terumo Corp Steueranordnung für eine medizinische Pumpe
WO2001097909A2 (en) 2000-06-14 2001-12-27 Medtronic, Inc. Deep computing applications in medical device systems
JP2002084338A (ja) 2000-07-07 2002-03-22 Matsushita Electric Ind Co Ltd データ送信装置、データ受信装置、およびデータ通信システム
US6659947B1 (en) 2000-07-13 2003-12-09 Ge Medical Systems Information Technologies, Inc. Wireless LAN architecture for integrated time-critical and non-time-critical services within medical facilities
AU2001280615A1 (en) 2000-07-18 2002-01-30 Healthetech, Inc. Closed loop glycemic index system
EP1174817A3 (en) 2000-07-20 2005-01-26 GE Medical Technology Services Centralized biomedical service data repository
JP2002044079A (ja) 2000-07-25 2002-02-08 Matsushita Electric Works Ltd 通信ネットワークを利用した、サービス業者による顧客サービス支援システム、及びそのシステムを用いて、サービス業者による顧客サービスの提供を支援する方法
US6589229B1 (en) 2000-07-31 2003-07-08 Becton, Dickinson And Company Wearable, self-contained drug infusion device
JP2002047694A (ja) 2000-07-31 2002-02-15 Komatsu Ltd 建設機械の表示装置
US9135393B1 (en) 2000-08-02 2015-09-15 Smiths Medical Asd, Inc. Processing program data for medical pumps
JP4055926B2 (ja) 2000-08-14 2008-03-05 テルモ株式会社 輸液ポンプ
JP2004505730A (ja) 2000-08-15 2004-02-26 ユニバーシティ オブ ケンタッキー リサーチ ファウンデーション プログラム可能多用量鼻腔内薬物送達デバイス
JP3590949B2 (ja) 2000-08-17 2004-11-17 松下電器産業株式会社 データ伝送装置およびデータ伝送方法
CN1471413A (zh) 2000-09-08 2004-01-28 用于患者注射的装置、系统和方法
AU2001275020A1 (en) 2000-09-21 2002-04-02 Theradoc.Com, Inc. Systems and methods for manipulating medical data via a decision support system
US7447643B1 (en) 2000-09-21 2008-11-04 Theradoc.Com, Inc. Systems and methods for communicating between a decision-support system and one or more mobile information devices
US6572545B2 (en) 2000-09-22 2003-06-03 Knobbe, Lim & Buckingham Method and apparatus for real-time control of physiological parameters
EP1332440B1 (en) 2000-10-04 2012-04-11 Insulet Corporation Data collection assembly for patient infusion system
JP3821778B2 (ja) 2000-10-05 2006-09-13 三菱電機株式会社 パケット再送方式及び送信装置及び受信装置及びパケット再送方法及びパケット送信方法及びパケット受信方法
DE10049393A1 (de) 2000-10-05 2002-04-25 Braun Melsungen Ag Extracorporales Blutbehandlungssystem
DE60134706D1 (de) 2000-10-12 2008-08-21 Ge Med Sys Information Tech Mobiles klinisches Informationssystem
US6636780B1 (en) 2000-11-07 2003-10-21 Mdg Medical Inc. Medication dispensing system including medicine cabinet and tray therefor
US8862656B2 (en) 2000-11-21 2014-10-14 Chironet, Llc Performance outcomes benchmarking
EP1349491B1 (en) 2000-12-07 2013-04-17 Children's Medical Center Corporation Automated interpretive medical care system
US7028092B2 (en) 2000-12-11 2006-04-11 Acme Packet, Inc. System and method for assisting in controlling real-time transport protocol flow through multiple networks via media flow routing
US6456245B1 (en) 2000-12-13 2002-09-24 Magis Networks, Inc. Card-based diversity antenna structure for wireless communications
US20020123905A1 (en) 2000-12-13 2002-09-05 Joane Goodroe Clinical operational and gainsharing information management system
EP1364666A1 (en) 2000-12-27 2003-11-26 Philips Japan, Ltd Biological information and blood treating device information control system, biological information and blood treating device information control device, and biological information and blood treating device information control method
US20020087116A1 (en) 2000-12-29 2002-07-04 Medtronic, Inc. Patient scheduling techniques for an implantable medical device
US7054782B2 (en) 2000-12-29 2006-05-30 Medtronic, Inc. Non-conformance monitoring and control techniques for an implantable medical device
US6799149B2 (en) 2000-12-29 2004-09-28 Medtronic, Inc. Therapy management techniques for an implantable medical device
US7133909B2 (en) 2001-01-12 2006-11-07 Microsoft Corporation Systems and methods for locating mobile computer users in a wireless network
WO2002057917A2 (en) 2001-01-22 2002-07-25 Sun Microsystems, Inc. Peer-to-peer network computing platform
FR2820235B1 (fr) 2001-01-26 2003-06-13 Thomson Csf Dispositif de retroeclairage pour ecran de visualisation par transmission compatible avec la vision de nuit
US7776029B2 (en) 2001-01-30 2010-08-17 The Alfred E. Mann Foundation For Scientific Research Microminiature infusion pump
AU2002247151A1 (en) 2001-02-15 2002-08-28 Acist Medical Systems, Inc. Systems and methods for detection and measurement of elements in a medium
US6749587B2 (en) 2001-02-22 2004-06-15 Insulet Corporation Modular infusion device and method
US6839753B2 (en) 2001-02-23 2005-01-04 Cardiopulmonary Corporation Network monitoring systems for medical devices
US20030014222A1 (en) 2001-02-28 2003-01-16 Klass David B. Method and system for monitoring patient care
US7072725B2 (en) 2001-03-26 2006-07-04 Medtronic, Inc. Implantable therapeutic substance infusion device configuration system
GB0108213D0 (en) 2001-04-02 2001-05-23 Glaxo Group Ltd Medicament dispenser
US7000008B2 (en) 2001-04-16 2006-02-14 Sun Microsystems, Inc. Method, system, and program for providing data updates to a page including multiple regions of dynamic content
GR1003802B (el) 2001-04-17 2002-02-08 Micrel �.�.�. ������� ��������� ��������������� ��������� Συστημα τηλειατρικης.
US7369897B2 (en) 2001-04-19 2008-05-06 Neuro And Cardiac Technologies, Llc Method and system of remotely controlling electrical pulses provided to nerve tissue(s) by an implanted stimulator system for neuromodulation therapies
US6664893B1 (en) 2001-04-23 2003-12-16 Cardionet, Inc. Method for controlling access to medical monitoring device service
US6494694B2 (en) 2001-04-25 2002-12-17 Abbott Laboratories Disposable infusion cassette with low air bubble retention and improved valves
WO2002088875A2 (en) 2001-04-27 2002-11-07 The Boeing Company Communicating data through a network
US20020194329A1 (en) 2001-05-02 2002-12-19 Shipley Company, L.L.C. Method and system for facilitating multi-enterprise benchmarking activities and performance analysis
US7224979B2 (en) 2001-05-03 2007-05-29 Symantec Corporation Location-aware service proxies in a short-range wireless environment
US8034026B2 (en) 2001-05-18 2011-10-11 Deka Products Limited Partnership Infusion pump assembly
US7103578B2 (en) 2001-05-25 2006-09-05 Roche Diagnostics Operations, Inc. Remote medical device access
AU2002309987A1 (en) 2001-05-25 2002-12-09 Hill-Rom Services, Inc. Modular patient room
US7308300B2 (en) 2001-05-30 2007-12-11 Acist Medical Systems, Inc. Medical injection system
JP2003016183A (ja) 2001-06-15 2003-01-17 Ge Medical Systems Global Technology Co Llc 医用情報提供システム
US20040243438A1 (en) 2001-06-28 2004-12-02 Ilan Mintz Method and system for cost analysis and benchmarking in the healthcare industry
AUPR632301A0 (en) 2001-07-11 2001-08-02 Chee, Frederick Howe-Hui Infusion apparatus for regulating blood glucose levels
US6775577B2 (en) 2001-07-18 2004-08-10 Fresenius Usa, Inc. Method and system for controlling a medical device
US6998984B1 (en) 2001-07-24 2006-02-14 Jonathan Zittrain State adaptation devices and methods for wireless communications
US6648823B2 (en) 2001-07-31 2003-11-18 Medtronic, Inc. Method and system of follow-up support for a medical device
WO2003011358A2 (en) 2001-07-31 2003-02-13 Scott Laboratories, Inc. Apparatuses and methods for titrating drug delivery
US6544212B2 (en) 2001-07-31 2003-04-08 Roche Diagnostics Corporation Diabetes management system
US6747556B2 (en) 2001-07-31 2004-06-08 Medtronic Physio-Control Corp. Method and system for locating a portable medical device
EP2302542A3 (en) 2001-08-03 2011-09-21 Hill-Rom Services, Inc. Patient point-of-care computer system
US6928338B1 (en) 2001-08-10 2005-08-09 Medtronic, Inc. Decision information system for drug delivery devices
US20040147034A1 (en) 2001-08-14 2004-07-29 Gore Jay Prabhakar Method and apparatus for measuring a substance in a biological sample
SE0102918D0 (sv) 2001-08-30 2001-08-30 St Jude Medical Method for providing software to an implantable medical device system
US20030115358A1 (en) 2001-09-04 2003-06-19 Yeong-Hyun Yun Unified interprocess communication
ATE365337T1 (de) 2001-09-05 2007-07-15 Newbury Networks Inc Positionsdetektion und standortverfolgung in einem drahtlosen netzwerk
US6827702B2 (en) 2001-09-07 2004-12-07 Medtronic Minimed, Inc. Safety limits for closed-loop infusion pump control
US6740072B2 (en) 2001-09-07 2004-05-25 Medtronic Minimed, Inc. System and method for providing closed loop infusion formulation delivery
US8152789B2 (en) 2001-10-23 2012-04-10 Medtronic Minimed, Inc. System and method for providing closed loop infusion formulation delivery
WO2003022169A1 (en) 2001-09-12 2003-03-20 Scimed Life Systems, Inc. System for identifying medical devices
US7158030B2 (en) 2001-09-19 2007-01-02 Avante International Technology Medical assistance and tracking system and method employing smart tags
US6647299B2 (en) 2001-09-21 2003-11-11 Medtronic, Inc. Patient programmer for implantable medical device with audio locator signal
US6802810B2 (en) 2001-09-21 2004-10-12 Active Health Management Care engine
WO2003026558A2 (en) 2001-09-24 2003-04-03 Scott Laboratories, Inc. Methods and apparatuses for assuring quality and safety of drug administration and medical products and kits
US20030069963A1 (en) 2001-09-27 2003-04-10 Nikil Jayant System and method of quality of service signaling between client and server devices
US6785774B2 (en) 2001-10-16 2004-08-31 International Business Machines Corporation High performance symmetric multiprocessing systems via super-coherent data mechanisms
MXPA04004246A (es) 2001-11-01 2004-09-10 Scott Lab Inc Interfaz de usuario para sistemas y metodos de suministro de sedacion y analgesia.
US7383088B2 (en) 2001-11-07 2008-06-03 Cardiac Pacemakers, Inc. Centralized management system for programmable medical devices
US7430608B2 (en) 2001-12-04 2008-09-30 Siemens Medical Solutions Usa, Inc. System for processing data acquired from multiple medical devices
US20050216479A1 (en) 2001-12-05 2005-09-29 Marcus Wefers Method, software application and system for incorporating benchmark data into a business software application
PT1455878E (pt) 2001-12-06 2006-07-31 Cardinal Health 303 Inc Sistema de perfusao de farmacos monitorizado por co2
WO2003050917A1 (en) 2001-12-07 2003-06-19 Skycross, Inc. Multiple antenna diversity for wireless lan applications
US7204823B2 (en) 2001-12-19 2007-04-17 Medtronic Minimed, Inc. Medication delivery system and monitor
US7399277B2 (en) 2001-12-27 2008-07-15 Medtronic Minimed, Inc. System for monitoring physiological characteristics
US7343224B2 (en) 2001-12-31 2008-03-11 B. Braun Medical Inc. Pharmaceutical compounding systems and methods and information management system for same
US20030125662A1 (en) 2002-01-03 2003-07-03 Tuan Bui Method and apparatus for providing medical treatment therapy based on calculated demand
US7289948B1 (en) 2002-01-07 2007-10-30 At&T Corp. Systems and methods for regularly approximating context-free grammars through transformation
US6985870B2 (en) 2002-01-11 2006-01-10 Baxter International Inc. Medication delivery system
US8489427B2 (en) 2002-01-29 2013-07-16 Baxter International Inc. Wireless medical data communication system and method
US10173008B2 (en) 2002-01-29 2019-01-08 Baxter International Inc. System and method for communicating with a dialysis machine through a network
US20030140929A1 (en) 2002-01-29 2003-07-31 Wilkes Gordon J. Infusion therapy bar coding system and method
US20030144878A1 (en) 2002-01-29 2003-07-31 Wilkes Gordon J. System and method for providing multiple units of measure
US20030140928A1 (en) 2002-01-29 2003-07-31 Tuan Bui Medical treatment verification system and method
US8775196B2 (en) 2002-01-29 2014-07-08 Baxter International Inc. System and method for notification and escalation of medical data
US20030141981A1 (en) 2002-01-29 2003-07-31 Tuan Bui System and method for operating medical devices
US20030143746A1 (en) 2002-01-31 2003-07-31 Sage Burton H. Self-calibrating body anayte monitoring system
US20050216480A1 (en) 2002-02-13 2005-09-29 Marcus Wefers Method, software application and system for providing benchmark data
US20060074920A1 (en) 2002-02-13 2006-04-06 Marcus Wefers Method, software application and system for providing benchmarks
AU2003215556B2 (en) 2002-02-13 2008-05-01 Sap Ag Method, software application and system for incorporating benchmarks into a business software application
US7024214B2 (en) 2002-02-26 2006-04-04 Microsoft Corporation Synchronizing over a number of synchronization mechanisms using flexible rules
US20030212379A1 (en) 2002-02-26 2003-11-13 Bylund Adam David Systems and methods for remotely controlling medication infusion and analyte monitoring
US7142190B2 (en) 2002-02-28 2006-11-28 Motorola, Inc. Cellular communication handsets having variable appearance housings and methods therefor
US8504179B2 (en) 2002-02-28 2013-08-06 Smiths Medical Asd, Inc. Programmable medical infusion pump
US6852104B2 (en) 2002-02-28 2005-02-08 Smiths Medical Md, Inc. Programmable insulin pump
US7898977B2 (en) 2002-03-01 2011-03-01 Enterasys Networks Inc. Using signal characteristics to determine the physical location of devices in a data network
US6892278B2 (en) 2002-03-05 2005-05-10 Sun Microsystems, Inc. Method and apparatus for efficiently implementing a last-in first-out buffer
US7108680B2 (en) 2002-03-06 2006-09-19 Codman & Shurtleff, Inc. Closed-loop drug delivery system
GB0206792D0 (en) 2002-03-22 2002-05-01 Leuven K U Res & Dev Normoglycemia
GB0207890D0 (en) 2002-04-05 2002-05-15 Ritson Peter A Child resistant closure cap
US8620677B2 (en) 2002-04-09 2013-12-31 Pcrs, Inc. Online, interactive evaluation of research performance
US20080041942A1 (en) 2002-04-17 2008-02-21 Aissa Nebil B Biometric Multi-Purpose Terminal, Payroll and Work Management System and Related Methods
US8239780B2 (en) 2002-04-23 2012-08-07 Draeger Medical Systems, Inc. System and user interface supporting trend indicative display of patient medical parameters
US20050065817A1 (en) 2002-04-30 2005-03-24 Mihai Dan M. Separation of validated information and functions in a healthcare system
US20050055242A1 (en) 2002-04-30 2005-03-10 Bryan Bello System and method for medical data tracking, analysis and reporting for healthcare system
US20040167804A1 (en) 2002-04-30 2004-08-26 Simpson Thomas L.C. Medical data communication notification and messaging system and method
US20030204416A1 (en) 2002-04-30 2003-10-30 Sayeh Radpay System and method for facilitating time-based infusion orders
US20030204781A1 (en) 2002-04-30 2003-10-30 International Business Machines Corporation Method and apparatus for displaying diagnostic recommendations for monitored processes
US20040176667A1 (en) 2002-04-30 2004-09-09 Mihai Dan M. Method and system for medical device connectivity
US20040167465A1 (en) 2002-04-30 2004-08-26 Mihai Dan M. System and method for medical device authentication
US8234128B2 (en) 2002-04-30 2012-07-31 Baxter International, Inc. System and method for verifying medical device operational parameters
US20040172301A1 (en) 2002-04-30 2004-09-02 Mihai Dan M. Remote multi-purpose user interface for a healthcare system
US7457804B2 (en) 2002-05-10 2008-11-25 Medrad, Inc. System and method for automated benchmarking for the recognition of best medical practices and products and for establishing standards for medical procedures
US20030212821A1 (en) 2002-05-13 2003-11-13 Kiyon, Inc. System and method for routing packets in a wired or wireless network
MXPA04011421A (es) 2002-05-16 2005-02-17 Scott Lab Inc Sistema y metodo de autorizacion para el usuario para un sistema de sedacion y analgesia.
FR2839650B1 (fr) 2002-05-17 2005-04-01 Ela Medical Sa Systeme de teleassistance pour la programmation des dispositifs medicaux implantables actifs tels que stimulateurs cardiaques, defibrillateurs, cardioverteurs ou dispositifs multisite
US6939111B2 (en) 2002-05-24 2005-09-06 Baxter International Inc. Method and apparatus for controlling medical fluid pressure
US20040078231A1 (en) 2002-05-31 2004-04-22 Wilkes Gordon J. System and method for facilitating and administering treatment to a patient, including clinical decision making, order workflow and integration of clinical documentation
US20040128163A1 (en) 2002-06-05 2004-07-01 Goodman Philip Holden Health care information management apparatus, system and method of use and doing business
EP1871074A1 (en) 2002-06-07 2007-12-26 Nokia Corporation Method for sending connection-oriented of connectionless data
US20040225252A1 (en) 2002-06-14 2004-11-11 John Gillespie System and method for operating an infusion pump
US7398279B2 (en) 2002-06-28 2008-07-08 Francis J. Muno, Jr. Method, routines and system for identification of imprints on dosage forms
US7327705B2 (en) 2002-07-03 2008-02-05 Massachusetts Institute Of Technology Hybrid wireless network for data collection and distribution
US20040008123A1 (en) 2002-07-15 2004-01-15 Battelle Memorial Institute System and method for tracking medical devices
US7238164B2 (en) 2002-07-19 2007-07-03 Baxter International Inc. Systems, methods and apparatuses for pumping cassette-based therapies
US7278983B2 (en) 2002-07-24 2007-10-09 Medtronic Minimed, Inc. Physiological monitoring device for controlling a medication infusion device
US20040068230A1 (en) 2002-07-24 2004-04-08 Medtronic Minimed, Inc. System for providing blood glucose measurements to an infusion device
US7565301B2 (en) 2002-07-26 2009-07-21 Curlin Medical Inc. System and method for remotely operating a peristaltic pump
US20040064435A1 (en) 2002-07-26 2004-04-01 Ahmad-Maher Moubayed Clinical assessment and diagnostic tool for use with peristaltic pump
US7289815B2 (en) 2002-08-15 2007-10-30 International Business Machines Corporation Transponder subsystem for supporting location awareness in wireless networks
US7275156B2 (en) 2002-08-30 2007-09-25 Xerox Corporation Method and apparatus for establishing and using a secure credential infrastructure
US20040133441A1 (en) 2002-09-04 2004-07-08 Jeffrey Brady Method and program for transferring information from an application
DE10242003A1 (de) 2002-09-11 2004-03-25 Siemens Ag Vorrichtung zur Zugänglichmachung von Expertenwissen für die Bedienung medizinischer Untersuchungsgeräte
US7150741B2 (en) 2002-09-20 2006-12-19 Advanced Neuromodulation Systems, Inc. Programmable dose control module
US20040064341A1 (en) 2002-09-27 2004-04-01 Langan Pete F. Systems and methods for healthcare risk solutions
US20040122530A1 (en) 2002-09-30 2004-06-24 Steffen Hansen Indicating device with estimating feature
US20040064342A1 (en) 2002-09-30 2004-04-01 Browne David W. Health care protocols
ATE433775T1 (de) 2002-10-11 2009-07-15 Becton Dickinson Co Insulinabgabesystem mit sensor
EP1553870A2 (en) 2002-10-15 2005-07-20 Philips Intellectual Property & Standards GmbH Method for the presentation of information concerning variations of the perfusion
US20040073811A1 (en) * 2002-10-15 2004-04-15 Aleksey Sanin Web service security filter
DE60307882T2 (de) 2002-10-31 2007-03-15 Medtronic, Inc., Minneapolis Fehlersichere programmierung einer implantierbaren medizinischen vorrichtung
US20050038680A1 (en) 2002-12-19 2005-02-17 Mcmahon Kevin Lee System and method for glucose monitoring
DK1583571T3 (da) 2002-12-23 2008-06-16 M2 Medical As Medicindispenseringsindretning for insulin
US7835927B2 (en) 2002-12-27 2010-11-16 Carefusion 303, Inc. Medication management system
US7295119B2 (en) 2003-01-22 2007-11-13 Wireless Valley Communications, Inc. System and method for indicating the presence or physical location of persons or devices in a site specific representation of a physical environment
US6922148B2 (en) 2003-01-29 2005-07-26 George J. Despotis Patient identification system
AR042990A1 (es) 2003-02-01 2005-07-13 Baxter Int Sistema y metodo de comunicacion, notificacion y mensajes de datos medicos
IL154243A0 (en) 2003-02-02 2003-09-17 Silex Projectors Ltd Stable infusion device
US7230529B2 (en) 2003-02-07 2007-06-12 Theradoc, Inc. System, method, and computer program for interfacing an expert system to a clinical information system
AU2003900854A0 (en) 2003-02-26 2003-03-13 Sesay, Sahid General purpose electronic controller software
US7346025B2 (en) 2003-02-28 2008-03-18 Lucent Technologies Inc. Portable wireless gateway
JP4818906B2 (ja) 2003-03-04 2011-11-16 エシコン・エンド−サージェリィ・インコーポレイテッド 患者モニタリングおよび薬剤投与システム、およびその使用方法
US20040176980A1 (en) 2003-03-07 2004-09-09 Clemens Bulitta Comprehensive standardized process change management model framework and method for creating customized process model for a healthcare organization using the framework
US7300418B2 (en) 2003-03-10 2007-11-27 Siemens Medical Solutions Health Services Corporation Healthcare system supporting multiple network connected fluid administration pumps
US8090590B2 (en) 2003-03-10 2012-01-03 Intuit Inc. Electronic personal health record system
US20040193325A1 (en) 2003-03-25 2004-09-30 David Bonderud Method and apparatus to prevent medication error in a networked infusion system
CA2519955C (en) 2003-03-28 2013-08-13 Alaris Medical Systems, Inc. Infusion data communication system
US7913159B2 (en) 2003-03-28 2011-03-22 Microsoft Corporation System and method for real-time validation of structured data files
EP1617754A4 (en) 2003-04-18 2010-01-06 Insulet Corp USER INTERFACE FOR INFUSION PUMP REMOTE CONTROL AND APPLICATION METHOD THEREFOR
MXPA05011377A (es) 2003-04-23 2006-01-30 Vasogen Ireland Ltd Sistemas distribuidores.
US20040215278A1 (en) 2003-04-25 2004-10-28 Wim Stegink Method and apparatus for locally upgrading implanted reprogrammable medical devices
CA2524029A1 (en) 2003-04-30 2004-11-18 Insulet Corporation Rf medical device
US20050038669A1 (en) 2003-05-02 2005-02-17 Orametrix, Inc. Interactive unified workstation for benchmarking and care planning
WO2004104742A2 (en) 2003-05-16 2004-12-02 Philip Pearson System and method for generating a report using a knowledge base
US7079035B2 (en) 2003-05-19 2006-07-18 Ge Medical Systems Information Technologies, Inc. Method and apparatus for controlling an alarm while monitoring
US8460243B2 (en) 2003-06-10 2013-06-11 Abbott Diabetes Care Inc. Glucose measuring module and insulin pump combination
US20090057399A1 (en) 2003-06-17 2009-03-05 United Security Applications Id, Inc. Electronic security system for monitoring and recording activity and data relating to institutions and clients thereof
WO2004112603A1 (en) 2003-06-19 2004-12-29 Wayne State University System for identifying patient response to anesthesia infusion
JP4583733B2 (ja) 2003-07-04 2010-11-17 テルモ株式会社 シリンジポンプ
WO2005007223A2 (en) 2003-07-16 2005-01-27 Sasha John Programmable medical drug delivery systems and methods for delivery of multiple fluids and concentrations
US7185288B2 (en) 2003-07-18 2007-02-27 Dade Behring Inc. Operator interface module segmented by function in an automatic clinical analyzer
US20050055244A1 (en) 2003-07-18 2005-03-10 Janet Mullan Wireless medical communication system and method
US7967749B2 (en) 2003-07-23 2011-06-28 Ge Medical Systems Information Technologies, Inc. Monitoring system and method using rules
US20050027560A1 (en) 2003-07-28 2005-02-03 Deborah Cook Interactive multi-user medication and medical history management method
US20050027567A1 (en) 2003-07-29 2005-02-03 Taha Amer Jamil System and method for health care data collection and management
US7591801B2 (en) 2004-02-26 2009-09-22 Dexcom, Inc. Integrated delivery device for continuous glucose sensor
US8200775B2 (en) 2005-02-01 2012-06-12 Newsilike Media Group, Inc Enhanced syndication
US7778680B2 (en) 2003-08-01 2010-08-17 Dexcom, Inc. System and methods for processing analyte sensor data
US6899695B2 (en) 2003-08-08 2005-05-31 Hector J. Herrera Medication security apparatus and method
US20050043620A1 (en) 2003-08-20 2005-02-24 Siemens Medical Solutions Usa, Inc. Diagnostic medical ultrasound system communication network architecture and method
US20050049910A1 (en) 2003-08-28 2005-03-03 Cemer Innovation, Inc. System and method for management interface for clinical environments
US7523401B1 (en) 2003-09-03 2009-04-21 Theoris Software, Llc System and method for providing a browser-based user interface
US7258534B2 (en) 2003-09-22 2007-08-21 Hospira, Inc. Fluid delivery device identification and loading system
US20050108057A1 (en) 2003-09-24 2005-05-19 Michal Cohen Medical device management system including a clinical system interface
US8180802B2 (en) 2003-09-30 2012-05-15 International Business Machines Corporation Extensible decimal identification system for ordered nodes
US7895053B2 (en) 2003-10-07 2011-02-22 Hospira, Inc. Medication management system
US20060089854A1 (en) 2003-10-07 2006-04-27 Holland Geoffrey N Medication management system
US7490021B2 (en) 2003-10-07 2009-02-10 Hospira, Inc. Method for adjusting pump screen brightness
US20060089855A1 (en) 2003-10-07 2006-04-27 Holland Geoffrey N Medication management system
US20060100907A1 (en) 2003-10-07 2006-05-11 Holland Geoffrey N Medication management system
US20050278194A1 (en) 2003-10-07 2005-12-15 Holland Geoffrey N Medication management system
US20070214003A1 (en) 2003-10-07 2007-09-13 Holland Geoffrey N Medication management system
US8065161B2 (en) 2003-11-13 2011-11-22 Hospira, Inc. System for maintaining drug information and communicating with medication delivery devices
EP1704501A2 (en) 2003-10-07 2006-09-27 Hospira, Inc. Medication management system
US9123077B2 (en) 2003-10-07 2015-09-01 Hospira, Inc. Medication management system
US20050102669A1 (en) 2003-10-15 2005-05-12 Siemens Medical Solutions Usa, Inc. Software installation file verification media and methods for medical equipment
US20050086071A1 (en) 2003-10-15 2005-04-21 Fox Charles S.Jr. System and method for managing patient care
US20050086072A1 (en) 2003-10-15 2005-04-21 Fox Charles S.Jr. Task-based system and method for managing patient care through automated recognition
US7029456B2 (en) 2003-10-15 2006-04-18 Baxter International Inc. Medical fluid therapy flow balancing and synchronization system
US20050251418A1 (en) 2003-10-15 2005-11-10 Cerner Innovation, Inc. System and method for processing ad hoc orders in an automated patient care environment
KR100567837B1 (ko) 2003-10-24 2006-04-05 케이제이헬스케어 주식회사 혈당측정이 가능한 이동통신단말기와 결합되는 인슐린펌프와, 인슐린 펌프의 제어정보 전송을 위한 네트워크시스템
US7256888B2 (en) 2003-11-07 2007-08-14 Cardial Health 303, Inc. Fluid verification system and method for infusions
DE10352456A1 (de) 2003-11-07 2005-07-28 Basibüyük, Halil Verfahren und Vorrichtung zur Verabreichung von flüssigen Medikamenten an einem Patienten
US20050102167A1 (en) 2003-11-12 2005-05-12 Kapoor Ashok K. Provisioning and controlling medical instruments using wireless data communication
US7092796B2 (en) 2003-11-14 2006-08-15 Cardinal Health 303, Inc. System and method for verifying connection of correct fluid supply to an infusion pump
WO2005054993A2 (en) 2003-11-25 2005-06-16 Computer Associates Think, Inc. Web service performance index
US20080052704A1 (en) 2006-06-02 2008-02-28 Apple Computer, Inc. Media management system for management of games acquired from a media server
US8020564B2 (en) 2003-12-01 2011-09-20 Carefusion 303, Inc. System and method for analyzing medical treatment data
ITPR20030105A1 (it) 2003-12-03 2005-06-04 Alberto Rizzo Siringa monouso auto-bloccante di sicuerezza con
WO2005056083A2 (en) 2003-12-04 2005-06-23 Smiths Medical Md, Inc. Programming medical pumps with electronic standing order template
US20050177096A1 (en) 2003-12-05 2005-08-11 Bollish Stephen J. Patient-controlled analgesia with patient monitoring system and method
CA2548557C (en) 2003-12-05 2016-06-28 Cardinal Health 303, Inc. System and method for network monitoring of multiple medical devices
US20050135306A1 (en) 2003-12-05 2005-06-23 Mcallen Christopher M. Discovery and connection management with mobile systems manager
EP3263032B1 (en) 2003-12-09 2024-01-24 Dexcom, Inc. Signal processing for continuous analyte sensor
US7263213B2 (en) 2003-12-11 2007-08-28 Lumidigm, Inc. Methods and systems for estimation of personal characteristics from biometric measurements
WO2005059804A2 (en) 2003-12-16 2005-06-30 Alexza Pharmaceuticals, Inc. Methods for monitoring severity of panic attacks and other rapidly evolving medical events in real-time
US20050137522A1 (en) 2003-12-17 2005-06-23 Thomas Aoki System for infusing insulin to a subject to improve impaired hepatic glucose processing
US20050137573A1 (en) 2003-12-19 2005-06-23 Animas Corporation System, method, and communication hub for controlling external infusion device
US7657443B2 (en) 2003-12-19 2010-02-02 Carefusion 303, Inc. Intravenous medication harm index system
US7181493B2 (en) 2003-12-23 2007-02-20 Unisys Corporation Platform independent model-based framework for exchanging information in the justice system
US7301451B2 (en) 2003-12-31 2007-11-27 Ge Medical Systems Information Technologies, Inc. Notification alarm transfer methods, system, and device
US7255683B2 (en) 2003-12-31 2007-08-14 Cardinal Health 303, Inc. System for detecting the status of a vent associated with a fluid supply upstream of an infusion pump
US20050154769A1 (en) 2004-01-13 2005-07-14 Llumen, Inc. Systems and methods for benchmarking business performance data against aggregated business performance data
DE102004006842A1 (de) 2004-02-12 2005-09-15 Dräger Medical AG & Co. KGaA Verfahren und Vorrichtung zur Aktivierung eines medizintechnischen Gerätes
EP1718198A4 (en) 2004-02-17 2008-06-04 Therasense Inc METHOD AND SYSTEM FOR PROVIDING DATA COMMUNICATION IN A CONTINUOUS BLOOD SUGAR MONITORING AND MANAGEMENT SYSTEM
US8954336B2 (en) 2004-02-23 2015-02-10 Smiths Medical Asd, Inc. Server for medical device
WO2005084257A2 (en) 2004-02-26 2005-09-15 Vpn Solutions, Llc Composite thin-film glucose sensor
US8808228B2 (en) 2004-02-26 2014-08-19 Dexcom, Inc. Integrated medicament delivery device for use with continuous analyte sensor
US7739126B1 (en) 2004-03-02 2010-06-15 Cave Consulting Group Method, system, and computer program product for physician efficiency measurement and patient health risk stratification
JP2005275999A (ja) 2004-03-26 2005-10-06 Fuji Photo Film Co Ltd 医療情報提供方法並びにそれに用いる端末及びサーバ
US7905710B2 (en) 2004-03-26 2011-03-15 Hospira, Inc. System and method for improved low flow medical pump delivery
JP2005284846A (ja) 2004-03-30 2005-10-13 Fuji Photo Film Co Ltd 診断支援システム並びにそれに用いる方法及びサーバ
US20060009727A1 (en) 2004-04-08 2006-01-12 Chf Solutions Inc. Method and apparatus for an extracorporeal control of blood glucose
JP2007535036A (ja) 2004-04-24 2007-11-29 インレンジ システムズ、インク. 統合された非連続的な遠隔薬剤管理およびコンプライアンスシステム
US20050273367A1 (en) 2004-05-14 2005-12-08 Accelere, Inc. Secure health information connectivity system
US20050261660A1 (en) 2004-05-24 2005-11-24 Choi Soo B Method for controlling insulin pump using Bluetooth protocol
US8518021B2 (en) 2004-05-27 2013-08-27 Baxter International Inc. Apparatus and method for therapeutic delivery of medication
US7927313B2 (en) 2004-05-27 2011-04-19 Baxter International Inc. Medical device configuration based on recognition of identification information
US20050277873A1 (en) 2004-05-27 2005-12-15 Janice Stewart Identification information recognition system for a medical device
US20060010098A1 (en) 2004-06-04 2006-01-12 Goodnow Timothy T Diabetes care host-client architecture and data management system
US7697994B2 (en) 2004-06-18 2010-04-13 Medtronic, Inc. Remote scheduling for management of an implantable medical device
US7565197B2 (en) 2004-06-18 2009-07-21 Medtronic, Inc. Conditional requirements for remote medical device programming
US20060009734A1 (en) 2004-07-07 2006-01-12 Martin James F Dosage control for drug delivery system
US8359338B2 (en) 2004-07-30 2013-01-22 Carefusion 303, Inc. System and method for managing medical databases for patient care devices
US7319386B2 (en) 2004-08-02 2008-01-15 Hill-Rom Services, Inc. Configurable system for alerting caregivers
US20060079831A1 (en) 2004-08-18 2006-04-13 Gilbert Gregory F Quantitative chronological medical infusion device
US20060042139A1 (en) 2004-08-25 2006-03-02 John Mendes Athletic medical bracelet
US20060047270A1 (en) 2004-08-27 2006-03-02 Shelton Brian M Drug delivery apparatus and method for automatically reducing drug dosage
US8398592B2 (en) 2004-09-07 2013-03-19 Thomas Leibner-Druska Medication data transfer system and method for patient infusions
US7758562B2 (en) 2004-09-09 2010-07-20 Plc Medical Systems, Inc. Patient hydration system with a redundant monitoring of hydration fluid infusion
US9820658B2 (en) 2006-06-30 2017-11-21 Bao Q. Tran Systems and methods for providing interoperability among healthcare devices
US20060064020A1 (en) 2004-09-20 2006-03-23 Medtronic, Inc. Clinic dashboard monitor
US20060116904A1 (en) 2004-10-01 2006-06-01 Harold Brem Wound electronic medical record system
US8099296B2 (en) 2004-10-01 2012-01-17 General Electric Company System and method for rules-based context management in a medical environment
US7167755B2 (en) 2004-10-05 2007-01-23 Cardiac Pacemakers, Inc. Adaptive software configuration for a medical device
US20060111943A1 (en) 2004-11-15 2006-05-25 Wu Harry C Method and system to edit and analyze longitudinal personal health data using a web-based application
US20060122481A1 (en) 2004-11-22 2006-06-08 Crispian Lee Sievenpiper System and method for location based remote services
US20060116907A1 (en) 2004-11-30 2006-06-01 Rhodes Neal A System and method for improving performance of authorization for prescription drugs
US20060129435A1 (en) 2004-12-15 2006-06-15 Critical Connection Inc. System and method for providing community health data services
US7568619B2 (en) 2004-12-15 2009-08-04 Alcon, Inc. System and method for identifying and controlling ophthalmic surgical devices and components
US20060129434A1 (en) 2004-12-15 2006-06-15 Critical Connection Inc. System and method for disseminating healthcare data from a database
US20060136266A1 (en) 2004-12-20 2006-06-22 E-San Limited Medicinal product order processing system
DE102004060930B4 (de) 2004-12-17 2014-09-18 Siemens Aktiengesellschaft Sicherung eines medizinischen Geräts
FR2880451B1 (fr) * 2005-01-04 2007-08-17 Gred Sa Serveur, procede et reseau d'intermediation pour la consultation et le referencement d'informations medicales
US20060173260A1 (en) 2005-01-31 2006-08-03 Gmms Ltd System, device and method for diabetes treatment and monitoring
US20060173715A1 (en) 2005-02-01 2006-08-03 Hao Wang Health information system and method
US7547281B2 (en) 2005-02-01 2009-06-16 Medtronic Minimed, Inc. Algorithm sensor augmented bolus estimator for semi-closed loop infusion system
US8219413B2 (en) 2005-02-11 2012-07-10 Carefusion 303, Inc. Identification system and method for medication management
US8956292B2 (en) 2005-03-02 2015-02-17 Spacelabs Healthcare Llc Trending display of patient wellness
US8740789B2 (en) 2005-03-03 2014-06-03 Cardiac Pacemakers, Inc. Automatic etiology sequencing system and method
WO2006094291A1 (en) 2005-03-03 2006-09-08 Raytheon Company Incident command system
WO2006102412A2 (en) 2005-03-21 2006-09-28 Abbott Diabetes Care, Inc. Method and system for providing integrated medication infusion and analyte monitoring system
US7656810B2 (en) 2005-03-25 2010-02-02 Microsoft Corporation System and method for monitoring and reacting to peer-to-peer network metrics
US20090054754A1 (en) 2007-08-21 2009-02-26 Mcmahon Dave Clinician-controlled semi-automated medication management
US7896842B2 (en) 2005-04-11 2011-03-01 Hospira, Inc. System for guiding a user during programming of a medical device
US7945452B2 (en) 2005-04-11 2011-05-17 Hospira, Inc. User interface improvements for medical devices
WO2006122167A2 (en) 2005-05-10 2006-11-16 Cardinal Health 303, Inc Medication safety system featuring a multiplexed rfid interrogator panel
EP1882227A1 (en) 2005-05-11 2008-01-30 Cardinal Health 303, Inc. Drug administration data set analyzer
US20060258985A1 (en) 2005-05-11 2006-11-16 Russell Claudia J Graphical display of medication limits and delivery program
US7509156B2 (en) 2005-05-18 2009-03-24 Clarian Health Partners, Inc. System for managing glucose levels in patients with diabetes or hyperglycemia
US7613118B2 (en) * 2005-05-19 2009-11-03 Cisco Technology, Inc. Detecting change in a transport protocol window size without data transmission
US7309001B2 (en) 2005-05-31 2007-12-18 Catalina Marketing Corporation System to provide specific messages to patients
US7849620B2 (en) 2005-05-31 2010-12-14 Hand Held Products, Inc. Bar coded wristband
US20060277206A1 (en) 2005-06-02 2006-12-07 Bailey Philip G Automated reporting of computer system metrics
US20060287885A1 (en) 2005-06-21 2006-12-21 Frick W V Treatment management system
CN101238464A (zh) 2005-06-27 2008-08-06 诺沃-诺迪斯克有限公司 提供快捷导航的输送系统用户接口
US20070016443A1 (en) 2005-07-13 2007-01-18 Vitality, Inc. Medication compliance systems, methods and devices with configurable and adaptable escalation engine
US20070083870A1 (en) 2005-07-29 2007-04-12 Tomochika Kanakogi Methods and apparatus for task sharing among a plurality of processors
US7908594B2 (en) 2005-07-29 2011-03-15 Cisco Technology, Inc. External programmatic interface for IOS CLI compliant routers
US8051414B2 (en) 2005-08-01 2011-11-01 Siemens Aktiengesellschaft Method and system for remote software updating of a medical device
US20070093786A1 (en) 2005-08-16 2007-04-26 Medtronic Minimed, Inc. Watch controller for a medical device
US20070060870A1 (en) 2005-08-16 2007-03-15 Tolle Mike Charles V Controller device for an infusion pump
WO2007033025A2 (en) 2005-09-12 2007-03-22 Ethicon Endo-Surgery, Inc. Apparatus and methods for controlling and automating fluid infusion activities
US7713240B2 (en) 2005-09-13 2010-05-11 Medtronic Minimed, Inc. Modular external infusion device
US7927284B2 (en) 2005-09-16 2011-04-19 Cardiac Pacemakers, Inc. Quantifying hemodynamic response to drug therapy using implantable sensor
JP4103910B2 (ja) 2005-09-26 2008-06-18 株式会社日立製作所 分析結果管理の方法および装置
US20070106126A1 (en) 2005-09-30 2007-05-10 Mannheimer Paul D Patient monitoring alarm escalation system and method
US20070078314A1 (en) 2005-09-30 2007-04-05 Grounsell Richard L System and method for measuring and predicting insulin dosing rates
US20070088333A1 (en) 2005-10-13 2007-04-19 G&L Consulting, Llc Method and system for infusing an osmotic solute into a patient and providing feedback control of the infusing rate
US7420472B2 (en) 2005-10-16 2008-09-02 Bao Tran Patient monitoring apparatus
US7621009B2 (en) 2005-11-16 2009-11-24 Basim Elhabashy Surgical coordinator for anesthesiologist and methods of use
US7704226B2 (en) 2005-11-17 2010-04-27 Medtronic Minimed, Inc. External infusion device with programmable capabilities to time-shift basal insulin and method of using the same
EP2469438A1 (en) 2005-11-21 2012-06-27 ACIST Medical Systems, Inc. Method to provide graphical setup information to a user of a powered medical fluid injection system
US20070136098A1 (en) 2005-12-12 2007-06-14 Smythe Alan H System and method for providing a secure feature set distribution infrastructure for medical device management
US20070135866A1 (en) 2005-12-14 2007-06-14 Welch Allyn Inc. Medical device wireless adapter
EP1801718A1 (de) 2005-12-21 2007-06-27 F. Hoffmann-La Roche AG Verfahren zum Betrieb einer computergesteuerten Dosiervorrichtung für flüssige Medikamente bei reisebedingter Zeitverschiebung
US8666760B2 (en) 2005-12-30 2014-03-04 Carefusion 303, Inc. Medication order processing and reconciliation
US7885725B2 (en) 2006-01-05 2011-02-08 Dunn Lawrence A Devices, systems and methods for point-of-use medication control
US8357114B2 (en) 2006-01-06 2013-01-22 Acelrx Pharmaceuticals, Inc. Drug dispensing device with flexible push rod
EP1984337B1 (en) 2006-01-25 2014-04-30 Synta Pharmaceuticals Corp. Vinyl-phenyl derivatives for inflammation and immune-related uses
US8579884B2 (en) 2006-02-09 2013-11-12 Deka Products Limited Partnership Infusion pump assembly
US20070191973A1 (en) 2006-02-10 2007-08-16 General Electric Company Apparatus and method for configuring, processing and viewing state based data
US8133194B2 (en) 2006-02-22 2012-03-13 Henry Ford Health System System and method for delivery of regional citrate anticoagulation to extracorporeal blood circuits
US7981034B2 (en) 2006-02-28 2011-07-19 Abbott Diabetes Care Inc. Smart messages and alerts for an infusion delivery and management system
US7785463B2 (en) 2006-03-17 2010-08-31 Children's Hospital Medical Center Extracorporeal renal replacement modeling system
US7671733B2 (en) 2006-03-17 2010-03-02 Koninklijke Philips Electronics N.V. Method and system for medical alarm monitoring, reporting and normalization
US8655676B2 (en) 2006-03-28 2014-02-18 Hospira, Inc. Medication administration and management system and method
EP1839566A1 (de) 2006-03-29 2007-10-03 F. Hoffmann-La Roche AG Verfahren und Anordnung zur Überwachung eines medizinischen Gerätes
DE102006015291B4 (de) 2006-04-01 2015-10-29 Drägerwerk AG & Co. KGaA Verfahren zur Einstellung eines Patientenmonitors
US7806852B1 (en) 2006-04-03 2010-10-05 Jurson Phillip A Method and apparatus for patient-controlled medical therapeutics
WO2007117705A2 (en) 2006-04-08 2007-10-18 Vialogy Corp. Software enabled video and sensor interoperability system and method
US20090306573A1 (en) 2006-04-27 2009-12-10 Johan Gagner Remote Controlled Medical Apparatus
WO2008097316A1 (en) 2007-02-05 2008-08-14 Medtronic Minimed, Inc. Wireless data communication protocols and techniques for a wireless medical device network
US20070253021A1 (en) 2006-04-28 2007-11-01 Medtronic Minimed, Inc. Identification of devices in a medical device network and wireless data communication techniques utilizing device identifiers
US8073008B2 (en) 2006-04-28 2011-12-06 Medtronic Minimed, Inc. Subnetwork synchronization and variable transmit synchronization techniques for a wireless medical device network
US20070255126A1 (en) 2006-04-28 2007-11-01 Moberg Sheldon B Data communication in networked fluid infusion systems
US20070254593A1 (en) 2006-04-28 2007-11-01 Medtronic Minimed, Inc. Wireless data communication for a medical device network that supports a plurality of data communication modes
US7942844B2 (en) 2006-04-28 2011-05-17 Medtronic Minimed, Inc. Remote monitoring for networked fluid infusion systems
US20070258395A1 (en) * 2006-04-28 2007-11-08 Medtronic Minimed, Inc. Wireless data communication protocols for a medical device network
US8348885B2 (en) 2006-04-28 2013-01-08 Medtronic Minimed, Inc. Remote monitoring for networked fluid infusion systems
US7551078B2 (en) 2006-05-08 2009-06-23 Ihc Intellectual Asset Management, Llc Device alert system and method
EP2015804B1 (de) 2006-05-10 2019-02-13 F. Hoffmann-La Roche AG Infusionsset mit einer datenspeichervorrichtung
WO2007138154A1 (en) 2006-05-29 2007-12-06 Wristop Technologies Oy Apparatus and method for dosing drug and wireless remote control of a drug pump
US8979753B2 (en) 2006-05-31 2015-03-17 University Of Rochester Identifying risk of a medical event
ATE553695T1 (de) 2006-06-13 2012-05-15 Carefusion 303 Inc System und verfahren zur optimierten steuerung von pca- und pcea-systemen
US8548544B2 (en) 2006-06-19 2013-10-01 Dose Safety System, method and article for controlling the dispensing of insulin
US20070299687A1 (en) 2006-06-23 2007-12-27 Pamela Palmer Inpatient system for patient-controlled delivery of oral transmucosal medications dosed as needed
US20070299695A1 (en) 2006-06-23 2007-12-27 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Customized visual marking for medication labeling
US8417547B2 (en) 2006-06-29 2013-04-09 The Invention Science Fund I, Llc Verification technique for patient diagnosis and treatment
US7724147B2 (en) 2006-07-13 2010-05-25 Cardinal Health 303, Inc. Medical notification apparatus and method
US8435206B2 (en) 2006-08-03 2013-05-07 Smiths Medical Asd, Inc. Interface for medical infusion pump
US8149131B2 (en) 2006-08-03 2012-04-03 Smiths Medical Asd, Inc. Interface for medical infusion pump
US20080126969A1 (en) 2006-08-03 2008-05-29 Blomquist Michael L Interface for medical infusion pump
US8965707B2 (en) 2006-08-03 2015-02-24 Smiths Medical Asd, Inc. Interface for medical infusion pump
US8858526B2 (en) 2006-08-03 2014-10-14 Smiths Medical Asd, Inc. Interface for medical infusion pump
US20080033966A1 (en) 2006-08-04 2008-02-07 Mark Frederick Wahl System and method for recovery detection in a distributed directory service
US7836314B2 (en) 2006-08-21 2010-11-16 International Business Machines Corporation Computer system performance estimator and layout configurator
US9056165B2 (en) 2006-09-06 2015-06-16 Medtronic Minimed, Inc. Intelligent therapy recommendation algorithm and method of using the same
US8025634B1 (en) 2006-09-18 2011-09-27 Baxter International Inc. Method and system for controlled infusion of therapeutic substances
US7784461B2 (en) 2006-09-26 2010-08-31 Nellcor Puritan Bennett Llc Three-dimensional waveform display for a breathing assistance system
JP2008080036A (ja) 2006-09-29 2008-04-10 Terumo Corp 医療用ポンプ
DE102006047770A1 (de) 2006-10-10 2008-04-24 Dräger Medical AG & Co. KG System zur Steuerung und Überwachung von Therapiemodulen eines medizinischen Arbeitsplatzes
EP2092470A2 (en) 2006-10-16 2009-08-26 Hospira, Inc. System and method for comparing and utilizing activity information and configuration information from mulitple device management systems
US8126728B2 (en) 2006-10-24 2012-02-28 Medapps, Inc. Systems and methods for processing and transmittal of medical data through an intermediary device
US7369948B1 (en) 2006-11-07 2008-05-06 International Business Machines Corporation System and methods for predicting failures in a fluid delivery system
EP2084633A2 (en) 2006-11-21 2009-08-05 Baxter International Inc. System and method for remote monitoring and/or management of infusion therapies
WO2008067245A2 (en) 2006-11-29 2008-06-05 University Of Maryland, Baltimore Determining insulin pump rate for tight glycemic control
JP2008158622A (ja) 2006-12-21 2008-07-10 Matsushita Electric Ind Co Ltd 在宅ヘルスケアシステム
US20080149117A1 (en) 2006-12-21 2008-06-26 Akhil Raghuram Method of increasing medical hygiene using color coded medical devices
US20080214919A1 (en) 2006-12-26 2008-09-04 Lifescan, Inc. System and method for implementation of glycemic control protocols
US20080161754A1 (en) 2006-12-29 2008-07-03 Medsolve Technologies, Inc. Method and apparatus for infusing liquid to a body
JP2008186294A (ja) 2007-01-30 2008-08-14 Toshiba Corp ソフトウェア更新装置及びソフトウェア更新システム
US8121857B2 (en) 2007-02-15 2012-02-21 Abbott Diabetes Care Inc. Device and method for automatic data acquisition and/or detection
US20080228045A1 (en) 2007-02-23 2008-09-18 Tia Gao Multiprotocol Wireless Medical Monitors and Systems
US8231578B2 (en) 2007-02-28 2012-07-31 Hospira, Inc. System and method for sequencing channels in a multi-channel infusion pump
US8195478B2 (en) 2007-03-07 2012-06-05 Welch Allyn, Inc. Network performance monitor
WO2008115598A1 (en) 2007-03-21 2008-09-25 Ntera, Inc. Lucent technologies inc.
WO2008124478A1 (en) 2007-04-04 2008-10-16 Pronia Medical Systems, Llc Systems, methods, and computer program product for improved management of medical procedures for patients on medical protocols
CA2684807A1 (en) 2007-04-05 2008-10-16 Velomedix, Inc. Automated therapy system and method
KR100887417B1 (ko) 2007-04-11 2009-03-06 삼성전자주식회사 멀티 프로세서 시스템에서 불휘발성 메모리의 공유적사용을 제공하기 위한 멀티패쓰 억세스블 반도체 메모리장치
US7864771B2 (en) 2007-04-20 2011-01-04 Cisco Technology, Inc. Parsing out of order data packets at a content gateway of a network
US20080269714A1 (en) 2007-04-25 2008-10-30 Medtronic Minimed, Inc. Closed loop/semi-closed loop therapy modification system
US20080269723A1 (en) 2007-04-25 2008-10-30 Medtronic Minimed, Inc. Closed loop/semi-closed loop therapy modification system
US7687678B2 (en) 2007-05-10 2010-03-30 Cisco Technology, Inc. Electronic bandage with flexible electronic controller
US8417311B2 (en) 2008-09-12 2013-04-09 Optiscan Biomedical Corporation Fluid component analysis system and method for glucose monitoring and control
US20080300572A1 (en) 2007-06-01 2008-12-04 Medtronic Minimed, Inc. Wireless monitor for a personal medical device system
US8449523B2 (en) 2007-06-15 2013-05-28 Animas Corporation Method of operating a medical device and at least a remote controller for such medical device
US8006241B2 (en) 2007-06-20 2011-08-23 International Business Machines Corporation Automatic software installation and cleanup
JP2009003802A (ja) 2007-06-22 2009-01-08 Mitsubishi Electric Corp 情報表示装置及び情報表示方法
WO2009001337A2 (en) 2007-06-22 2008-12-31 Medingo Ltd. Communications for medicinal fluid delivery system
EP2191405B1 (en) 2007-06-27 2019-05-01 Roche Diabetes Care GmbH Medical diagnosis, therapy, and prognosis system for invoked events and method thereof
EP2562664B1 (en) 2007-06-27 2020-11-25 Roche Diabetes Care GmbH System for determining an insulin delivery and communicating a dose in automated pancreas software
US8123717B2 (en) 2007-06-27 2012-02-28 Roche Diagnostics Operations, Inc. Therapy delivery system having an open architecture and a method thereof
WO2009002622A2 (en) 2007-06-27 2008-12-31 F. Hoffman-La Roche Ag Patient information input interface for a therapy system
US10702174B2 (en) 2007-06-27 2020-07-07 Integra Lifesciences Corporation Medical monitor user interface
US8180029B2 (en) 2007-06-28 2012-05-15 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
EP3460644B1 (en) 2007-06-29 2021-01-13 Roche Diabetes Care GmbH Electronic blood glucose measuring device
US8105282B2 (en) 2007-07-13 2012-01-31 Iradimed Corporation System and method for communication with an infusion device
AU2008278640A1 (en) 2007-07-20 2009-01-29 F.Hoffmann-La Roche Ag Manually operable portable infusion device
US8138939B2 (en) 2007-07-24 2012-03-20 Manning Ventures, Inc. Drug dispenser/container display
EP3540741B1 (en) 2007-08-10 2022-10-26 Smiths Medical ASD, Inc. System for controlling medical devices
US9848058B2 (en) 2007-08-31 2017-12-19 Cardiac Pacemakers, Inc. Medical data transport over wireless life critical network employing dynamic communication link mapping
US7935105B2 (en) 2007-09-07 2011-05-03 Asante Solutions, Inc. Data storage for an infusion pump system
US8048040B2 (en) 2007-09-13 2011-11-01 Masimo Corporation Fluid titration system
US8249686B2 (en) 2007-09-14 2012-08-21 Corventis, Inc. Adherent device for sleep disordered breathing
WO2009039214A2 (en) 2007-09-17 2009-03-26 Satish Sundar High precision infusion pumps
US7868754B2 (en) 2007-09-26 2011-01-11 S.I.P. Holdings, Llc Medical system and tracking device
CA3105353A1 (en) 2007-10-10 2009-04-16 Optiscan Biomedical Corporation Fluid component analysis system and method for glucose monitoring and control
US8660860B2 (en) 2007-11-09 2014-02-25 Hospira, Inc. System and method for synchronizing medication configuration information among systems containing medication configuration information
US20090150439A1 (en) 2007-12-07 2009-06-11 Roche Diagnostics Operations, Inc. Common extensible data exchange format
US20090150174A1 (en) 2007-12-07 2009-06-11 Roche Diagnostics Operations, Inc. Healthcare management system having improved printing of display screen information
US8266260B2 (en) 2007-12-11 2012-09-11 Sharp Laboratories Of America, Inc. Method and system for updating the software of multiple network nodes
US8403908B2 (en) 2007-12-17 2013-03-26 Hospira, Inc. Differential pressure based flow sensor assembly for medication delivery monitoring and method of using the same
US9026370B2 (en) 2007-12-18 2015-05-05 Hospira, Inc. User interface improvements for medical devices
US8700421B2 (en) 2007-12-18 2014-04-15 Hospira, Inc. Infusion pump with configurable screen settings
WO2009085534A1 (en) 2007-12-27 2009-07-09 Siemens Heathcare Diagnostics Inc. Method and apparatus for remote multiple-process graphical monitoring
CA2919786C (en) 2007-12-31 2019-10-22 Deka Products Limited Partnership Infusion pump assembly
JP2009163534A (ja) 2008-01-08 2009-07-23 Carecom:Kk 服薬管理システムおよび服薬管理装置
US20090221890A1 (en) 2008-02-28 2009-09-03 Daniel Saffer Diabetes Management System
TW200938926A (en) 2008-03-11 2009-09-16 Wintek Corp Electronic device and mounting device having wavelength-tunable color-changing component
US8069135B2 (en) 2008-03-20 2011-11-29 General Electric Company Systems and methods for a predictive notification engine
CA2967856C (en) 2008-04-01 2019-08-27 Smiths Medical Asd, Inc. Downstream pressure assessment in a medical infusion pump
EP2317453A3 (en) 2008-04-01 2011-06-08 Smiths Medical ASD, Inc. Security features for a medical infusion pump
US8010846B1 (en) 2008-04-30 2011-08-30 Honeywell International Inc. Scalable self-checking processing platform including processors executing both coupled and uncoupled applications within a frame
US8133197B2 (en) 2008-05-02 2012-03-13 Smiths Medical Asd, Inc. Display for pump
US7996241B2 (en) 2008-05-12 2011-08-09 Solomon Zak Process, knowledge, and intelligence management through integrated medical management system for better health outcomes, utilization cost reduction and provider reward programs
US8310630B2 (en) 2008-05-16 2012-11-13 Manning Ventures, Inc. Electronic skin having uniform gray scale reflectivity
US8103346B2 (en) 2008-05-22 2012-01-24 Cardiac Pacemakers, Inc. Regulatory compliant transmission of medical data employing a patient implantable medical device and a generic network access device
US20090326516A1 (en) 2008-06-30 2009-12-31 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Preparatory dispensation systems and methods
US20090326340A1 (en) 2008-06-30 2009-12-31 Hui Wang Patient Monitor Alarm System And Method
US8886302B2 (en) 2008-07-11 2014-11-11 Medtronic, Inc. Adjustment of posture-responsive therapy
US20100036310A1 (en) 2008-08-05 2010-02-11 Hillman Robert S Integrated patient management and control system for medication delivery
US8622988B2 (en) 2008-08-31 2014-01-07 Abbott Diabetes Care Inc. Variable rate closed loop control and methods
US8452953B2 (en) 2008-09-05 2013-05-28 Roche Diagnostics Operations, Inc. Insulin pump programming software for selectively modifying configuration data
US20100095229A1 (en) 2008-09-18 2010-04-15 Abbott Diabetes Care, Inc. Graphical user interface for glucose monitoring system
WO2010033919A2 (en) 2008-09-22 2010-03-25 Jumpstart Wireless Corporation System and method for dynamic automatic communication path selection, distributed device synchronization and task delegation
US7984342B2 (en) 2008-09-30 2011-07-19 At&T Intellectual Property I, L.P. System and method for MPEG CRC error based video network fault detection
US8066672B2 (en) 2008-10-10 2011-11-29 Deka Products Limited Partnership Infusion pump assembly with a backup power supply
US8262616B2 (en) 2008-10-10 2012-09-11 Deka Products Limited Partnership Infusion pump assembly
US8267892B2 (en) 2008-10-10 2012-09-18 Deka Products Limited Partnership Multi-language / multi-processor infusion pump assembly
CA2740990A1 (en) 2008-10-17 2010-04-22 Thomas Hemmerling Automatic control system and method for the control of anesthesia
US8387112B1 (en) 2008-10-29 2013-02-26 Juniper Networks, Inc. Automatic software update on network devices
US8298167B2 (en) 2008-11-03 2012-10-30 B. Braun Avitum Ag Modular hemofiltration apparatus with interactive operator instructions and control system
KR101278605B1 (ko) 2008-11-04 2013-06-25 파나소닉 주식회사 측정 장치, 인슐린 주입 장치, 측정 방법, 인슐린 주입 장치의 제어 방법 및 프로그램
US8352290B2 (en) 2008-11-07 2013-01-08 Curlin Medical Inc. Method of automatically programming an infusion pump
US20110264043A1 (en) 2008-11-07 2011-10-27 Curlin Medical Inc. Method of loading a drug library into an infusion pump
WO2010053704A1 (en) 2008-11-10 2010-05-14 Delphi Technologies, Inc. Tool for interfacing with an infusion pump
US20130191770A1 (en) 2008-11-10 2013-07-25 Curlin Medical Inc. Method of inputting data into an infusion pump
US20100121752A1 (en) 2008-11-12 2010-05-13 Banigan Michael H Web-Based Bid Analysis, Award, and Contract Management System
US9501619B2 (en) 2008-11-13 2016-11-22 Cerner Innovation, Inc. Integrated medication and infusion monitoring system
US20100131434A1 (en) 2008-11-24 2010-05-27 Air Products And Chemicals, Inc. Automated patient-management system for presenting patient-health data to clinicians, and methods of operation thereor
US7920061B2 (en) 2008-11-26 2011-04-05 General Electric Company Controlling an alarm state based on the presence or absence of a caregiver in a patient's room
US20100138523A1 (en) 2008-12-03 2010-06-03 General Electric Company Automatic configuration method and system for medical devices
US8082356B2 (en) 2008-12-09 2011-12-20 Hong Kong Applied Science And Technology Research Institute Co., Ltd. Synchronizing buffer map offset in peer-to-peer live media streaming systems
US8082312B2 (en) 2008-12-12 2011-12-20 Event Medical, Inc. System and method for communicating over a network with a medical device
US20100160854A1 (en) 2008-12-22 2010-06-24 Gauthier Robert T Integrated patient management and control system for medication delivery
JP5694948B2 (ja) 2008-12-23 2015-04-01 エフ.ホフマン−ラ ロシュ アーゲーF. Hoffmann−La Roche Aktiengesellschaft 慢性病患者の診断支援または治療支援のための構造化検査方法及びその装置
US8974439B2 (en) 2009-01-02 2015-03-10 Asante Solutions, Inc. Infusion pump system and methods
US8777895B2 (en) 2009-01-06 2014-07-15 Hospira, Inc. System and method for authorized medication delivery
FR2940913B1 (fr) 2009-01-15 2013-07-19 Hopital Foch Systeme de pilotage de moyens d'injection d'agents d'anesthesie ou de sedation
US20100198196A1 (en) 2009-01-30 2010-08-05 Abbott Diabetes Care, Inc. Therapy Delivery Device Programming Tool
US20100198034A1 (en) 2009-02-03 2010-08-05 Abbott Diabetes Care Inc. Compact On-Body Physiological Monitoring Devices and Methods Thereof
US8353864B2 (en) 2009-02-18 2013-01-15 Davis David L Low cost disposable infusion pump
EP3703066A1 (en) 2009-02-25 2020-09-02 The University of Virginia Patent Foundation Method, system and computer program product for cgm-based prevention of hypoglycemia via hypoglycemia risk assessment and smooth reduction insulin delivery
EP2401718A4 (en) 2009-02-26 2014-03-12 I M D Soft Ltd DECISION SUPPORT
EP2404253B1 (en) 2009-03-04 2019-09-18 Masimo Corporation Medical monitoring system
GR1007310B (el) 2009-03-09 2011-06-10 Αχιλλεας Τσουκαλης Εμφυτευσιμος βιοαισθητηρας με αυτοματη βαθμονομηση
US8169914B2 (en) 2009-03-16 2012-05-01 Sling Media Pvt. Ltd. Method and node for transmitting data over a communication network using negative acknowledgment
US20100234708A1 (en) 2009-03-16 2010-09-16 Harvey Buck Wirelessly configurable medical device for a broadcast network system
US20120066501A1 (en) 2009-03-17 2012-03-15 Chuyu Xiong Multi-factor and multi-channel id authentication and transaction control
US8301761B2 (en) 2009-03-31 2012-10-30 International Business Machines Corporation Determining server load capacity with virtual users
WO2010114929A1 (en) 2009-03-31 2010-10-07 Abbott Diabetes Care Inc. Overnight closed-loop insulin delivery with model predictive control and glucose measurement error model
US20120046651A1 (en) 2009-04-17 2012-02-23 Uwe Beyer Medical device for glucose monitoring or regulation
US8271106B2 (en) 2009-04-17 2012-09-18 Hospira, Inc. System and method for configuring a rule set for medical event management and responses
US20100273738A1 (en) 2009-04-23 2010-10-28 Valcke Christian P Integrated patient management and control system for medication delivery
US20100280486A1 (en) 2009-04-29 2010-11-04 Hospira, Inc. System and method for delivering and monitoring medication
GB0908038D0 (en) 2009-05-11 2009-06-24 Bluebox Avionics Ltd A content distribution system and method
US8172798B2 (en) 2009-05-12 2012-05-08 Sigma International General Medical Apparatus LLC System and method for managing infusion therapies
WO2010135686A2 (en) 2009-05-22 2010-11-25 Abbott Diabetes Care Inc. Adaptive insulin delivery system
WO2010135654A2 (en) 2009-05-22 2010-11-25 Abbott Diabetes Care Inc. Safety features for integrated insulin delivery system
US8597274B2 (en) 2009-05-22 2013-12-03 Abbott Diabetes Care Inc. Usability features for integrated insulin delivery system
WO2010144533A1 (en) 2009-06-09 2010-12-16 Jacobson Technologies, Llc Controlled delivery of substances system and method
US8312272B1 (en) 2009-06-26 2012-11-13 Symantec Corporation Secure authentication token management
USD606533S1 (en) 2009-07-02 2009-12-22 Research In Motion Limited Handheld electronic device skin
US8344847B2 (en) 2009-07-09 2013-01-01 Medtronic Minimed, Inc. Coordination of control commands in a medical device system having at least one therapy delivery device and at least one wireless controller device
US20110009813A1 (en) 2009-07-09 2011-01-13 Medtronic Minimed, Inc. Panning a display of a portable medical device
US8798934B2 (en) 2009-07-23 2014-08-05 Abbott Diabetes Care Inc. Real time management of data relating to physiological control of glucose levels
US20110152770A1 (en) 2009-07-30 2011-06-23 Tandem Diabetes Care, Inc. Infusion pump system with disposable cartridge having pressure venting and pressure feedback
US8072272B2 (en) 2009-08-19 2011-12-06 Qualcomm, Incorporated Digital tunable inter-stage matching circuit
US9077544B2 (en) 2009-09-15 2015-07-07 Welch Allyn, Inc. Automatic provisioning of authentication credentials
US8291337B2 (en) 2009-09-22 2012-10-16 Cerner Innovation, Inc. Infusion management
US8990722B2 (en) 2009-09-22 2015-03-24 Cerner Innovation, Inc. Integrating protocols for infusion management
US9712498B2 (en) 2009-10-14 2017-07-18 Trice Imaging, Inc. Systems and devices for encrypting, converting and interacting with medical images
US8356131B2 (en) 2009-10-25 2013-01-15 Sony Mobile Communications Ab System and method for controlling interruption of a process in electronic equipment based on priority of the process, and program
KR20110064697A (ko) 2009-12-08 2011-06-15 삼성전자주식회사 정보 업데이트 방법 및 그 장치
JP5671056B2 (ja) 2009-12-16 2015-02-18 コーニンクレッカ フィリップス エヌ ヴェ ユニバーサル医療デバイスドライバアダプタ
US20120070045A1 (en) * 2009-12-17 2012-03-22 Gregory Vesper Global medical imaging repository
US8771251B2 (en) 2009-12-17 2014-07-08 Hospira, Inc. Systems and methods for managing and delivering patient therapy through electronic drug delivery systems
US8400290B2 (en) 2010-01-19 2013-03-19 Covidien Lp Nuisance alarm reduction method for therapeutic parameters
US8171094B2 (en) 2010-01-19 2012-05-01 Event Medical, Inc. System and method for communicating over a network with a medical device
US9636455B2 (en) 2011-12-21 2017-05-02 Deka Products Limited Partnership System, method, and apparatus for estimating liquid delivery
US10911515B2 (en) 2012-05-24 2021-02-02 Deka Products Limited Partnership System, method, and apparatus for electronic patient care
US20110313789A1 (en) 2010-01-22 2011-12-22 Deka Products Limited Partnership Electronic patient monitoring system
US11244745B2 (en) 2010-01-22 2022-02-08 Deka Products Limited Partnership Computer-implemented method, system, and apparatus for electronic patient care
US10453157B2 (en) 2010-01-22 2019-10-22 Deka Products Limited Partnership System, method, and apparatus for electronic patient care
US10242159B2 (en) 2010-01-22 2019-03-26 Deka Products Limited Partnership System and apparatus for electronic patient care
US20110196748A1 (en) 2010-02-05 2011-08-11 Ilan Caron Generating Advertising Account Entries Using Variables
US10238794B2 (en) 2010-02-05 2019-03-26 Deka Products Limited Partnership Devices, methods and systems for wireless control of medical devices
CA2789141C (en) 2010-02-05 2018-06-12 Deka Products Limited Partnership Infusion pump apparatus, method and system
US20110231216A1 (en) 2010-03-17 2011-09-22 Research In Motion Limited System and method for controlling event reminders
US8612055B2 (en) 2010-04-16 2013-12-17 Medtronic, Inc. System and method for delivering a therapeutic agent according to default infusion schedule
US9491085B2 (en) 2010-05-24 2016-11-08 At&T Intellectual Property I, L.P. Methods and apparatus to route control packets based on address partitioning
WO2011149857A1 (en) 2010-05-24 2011-12-01 Abbott Diabetes Care Inc. Method and system for updating a medical device
CN102262557B (zh) * 2010-05-25 2015-01-21 运软网络科技(上海)有限公司 通过总线架构构建虚拟机监控器的方法及性能服务框架
WO2011149933A2 (en) 2010-05-25 2011-12-01 The General Hospital Corporation Prediction, visualization, and control of drug delivery by infusion pumps
US9953138B2 (en) 2010-06-29 2018-04-24 Codman Neuro Sciences Sarl Drug component admixture library for a drug infusion delivery system
GB2495045B (en) 2010-07-02 2017-07-26 Ibm An apparatus for processing a batched unit of work
EP2410448A3 (en) 2010-07-19 2013-07-24 Micrel Medical Devices S.A. Infusion pump system
US11462321B2 (en) 2010-08-12 2022-10-04 Fenwal, Inc. Mobile applications for blood centers
WO2012024401A2 (en) 2010-08-17 2012-02-23 University Of Florida Research Foundation, Inc. Intelligent drug and/or fluid delivery system to optimizing medical treatment or therapy using pharmacodynamic and/or pharmacokinetic data
US8626530B1 (en) 2010-08-27 2014-01-07 Walgreen Co. System and method for express refill
JP5707078B2 (ja) 2010-09-29 2015-04-22 テルモ株式会社 医療用ポンプシステム
US8876793B2 (en) 2010-10-01 2014-11-04 Smiths Medical Asd, Inc. Flushing a fluid line from a medical pump
US8454554B2 (en) 2010-10-15 2013-06-04 Roche Diagnostics Operations, Inc. Use of a handheld medical device as a communications mediator between a personal computer-based configurator and another networked medical device
US8401194B2 (en) 2010-10-15 2013-03-19 Roche Diagnostics Operations, Inc. Diabetes care kit that is preconfigured to establish a secure bidirectional communication link between a blood glucose meter and insulin pump
US20120096451A1 (en) 2010-10-15 2012-04-19 Roche Diagnostics Operations, Inc. Firmware update in a medical device with multiple processors
US9937355B2 (en) 2010-11-08 2018-04-10 Zoll Medical Corporation Remote medical device alarm
US8662388B2 (en) 2010-11-09 2014-03-04 Hospira, Inc. Medical identification system and method of identifying individuals, medical items, and associations therebetween using same
US20120130198A1 (en) 2010-11-23 2012-05-24 Beaule Jean-Francois Systems and method for determining and managing an individual and portable health score
US20120157920A1 (en) 2010-12-16 2012-06-21 Numia Medical Technology, Llc Distributed processor configuration for use in infusion pumps
US9356888B2 (en) 2011-01-05 2016-05-31 Koninklijke Philips N.V. System and method for distributing meaningful clinical alerts
WO2012097129A2 (en) 2011-01-12 2012-07-19 The Regents Of The University Of California System and method for closed-loop patient-adaptive hemodynamic management
US9578081B2 (en) 2011-02-02 2017-02-21 Imvu, Inc. System and method for providing an actively invalidated client-side network resource cache
JP2014517709A (ja) 2011-03-08 2014-07-24 ガンブロ・ルンディア・エービー データを転送するための方法と、制御モジュールと、装置と、システム
US8454581B2 (en) 2011-03-16 2013-06-04 Asante Solutions, Inc. Infusion pump systems and methods
WO2012126011A1 (en) 2011-03-17 2012-09-20 K&Y Corporation Micro-infusion system
MX346058B (es) 2011-04-14 2017-03-06 Koninklijke Philips Nv Metodo de alarma gradual para monitores de pacientes.
US8308680B1 (en) 2011-04-26 2012-11-13 Medtronic Minimed, Inc. Selective alarms for an infusion device
US20130006702A1 (en) 2011-04-27 2013-01-03 Fubin Wu System for collecting and managing risk management file and safety assurance case data
US9940440B2 (en) 2011-04-28 2018-04-10 Medtronic, Inc. Detecting and responding to software and hardware anomalies in a fluid delivery system
US9707340B2 (en) 2011-05-06 2017-07-18 Zyno Medical Llc Flow control line management apparatus
US20140213976A1 (en) 2011-05-30 2014-07-31 Insuline Medical Ltd Drug Delivery Infusion Set with Manual Pump
US9636454B2 (en) 2011-06-08 2017-05-02 Nxstage Medical, Inc. Electrical safety methods, devices, and systems for medical treatment devices
US9089642B2 (en) 2011-06-20 2015-07-28 Renaudia Medical, Llc Distributed medication delivery system and method having autonomous delivery devices
WO2013006234A1 (en) 2011-07-01 2013-01-10 Baxa Corporation Systems and methods for intelligent patient interface device
US8893109B2 (en) 2011-08-02 2014-11-18 Roche Diagnostics Operations, Inc. Software distribution amongst medical devices taking into account dependencies between devices
US9645913B2 (en) 2011-08-03 2017-05-09 Daniel Geist Method and apparatus for debugging programs
WO2013028497A1 (en) 2011-08-19 2013-02-28 Hospira, Inc. Systems and methods for a graphical interface including a graphical representation of medical data
WO2013028524A1 (en) 2011-08-19 2013-02-28 Hospira, Inc. Pattern recognition system and method for the detection of stuck fluid droplets in a fluid delivery line of an infusion system
US20140378801A1 (en) 2011-09-27 2014-12-25 Novo Nordisk A/S Medical System Configured to Collect and Transfer Data
JP6521632B2 (ja) 2011-09-30 2019-05-29 アイシーユー・メディカル・インコーポレーテッド 泡検出システムおよび方法
US9943269B2 (en) 2011-10-13 2018-04-17 Masimo Corporation System for displaying medical monitoring data
US9446252B2 (en) 2011-10-18 2016-09-20 Advanced Neuromodulation Systems, Inc. System and method for resetting an implantable medical device
US20130102963A1 (en) 2011-10-19 2013-04-25 Qualcomm Incorporated Secure automatic configuration of equipment through replication
ES2959510T3 (es) 2011-10-21 2024-02-26 Icu Medical Inc Sistema de actualización de dispositivos médicos
GB2497079A (en) * 2011-11-25 2013-06-05 Netscientific Ltd Medical monitoring and control systems for healthcare
US8945043B2 (en) 2011-12-01 2015-02-03 Zyno Medical, LLC. Medical device with contextual awareness
US10022498B2 (en) 2011-12-16 2018-07-17 Icu Medical, Inc. System for monitoring and delivering medication to a patient and method of using the same to minimize the risks associated with automated therapy
US8719945B2 (en) 2011-12-22 2014-05-06 Roche Diagnostics Operations, Inc. Customer error screen capture
US20130173473A1 (en) 2011-12-28 2013-07-04 Roche Diagnostics Operations Inc. Data sychronization systems and methods
US10484335B2 (en) 2012-02-09 2019-11-19 Connectify, Inc. Secure remote computer network
US9995611B2 (en) 2012-03-30 2018-06-12 Icu Medical, Inc. Air detection system and method for detecting air in a pump of an infusion system
US9675753B2 (en) 2012-04-16 2017-06-13 Atlanta Biomedical Corp. Safe drug delivery system
US9208290B2 (en) 2012-04-27 2015-12-08 Gregg S. Homer External storage of medical device treatment parameters
US9886550B2 (en) 2012-06-06 2018-02-06 Zyno Medical, Llc Medical pump with operator-authorization awareness
US20140025392A1 (en) 2012-07-18 2014-01-23 Curlin Medical Inc. Systems and Methods for Validating Treatment Instructions
ES2743160T3 (es) 2012-07-31 2020-02-18 Icu Medical Inc Sistema de cuidado de pacientes para medicaciones críticas
US9526834B2 (en) 2012-08-30 2016-12-27 Medtronic Minimed, Inc. Safeguarding measures for a closed-loop insulin infusion system
JP5767617B2 (ja) 2012-09-27 2015-08-19 日本電信電話株式会社 ネットワーク障害検出システムおよびネットワーク障害検出装置
US9486578B2 (en) 2012-12-07 2016-11-08 Animas Corporation Method and system for tuning a closed-loop controller for an artificial pancreas
EP2742961A1 (en) 2012-12-13 2014-06-18 Stephen Palletti Modular drug infusion system with central control and multiple infusion pumps comprising touch screens
CA3190143A1 (en) 2012-12-21 2014-06-26 Deka Products Limited Partnership Computer-implemented method, system, and apparatus for electronic patient care
US9056166B2 (en) 2013-01-21 2015-06-16 Baxter International Inc. Infusion pump and method to enhance long term medication delivery accuracy
WO2014116832A1 (en) 2013-01-28 2014-07-31 Smiths Medical Asd, Inc. Medication safety devices and methods
CN105210104A (zh) 2013-02-05 2015-12-30 艾韦尼克斯股份有限公司 输注治疗的自动编程
WO2014131729A2 (en) 2013-02-27 2014-09-04 Fresenius Vial Sas System and method for providing drug library data to a medical device located within a healthcare environment
WO2014131730A2 (en) 2013-02-27 2014-09-04 Fresenius Vial Sas Method for transferring operational data to a medical device located within a healthcare environment
WO2014138446A1 (en) 2013-03-06 2014-09-12 Hospira,Inc. Medical device communication method
US10811129B2 (en) 2013-03-11 2020-10-20 Roche Diabetes Care, Inc. Customizing names of insulin delivery profiles for improved patient safety
US9965946B2 (en) 2013-03-13 2018-05-08 Masimo Corporation Systems and methods for monitoring a patient health network
US20140269643A1 (en) 2013-03-13 2014-09-18 Google Inc. Systems and methods for geo-fencing
US9242043B2 (en) 2013-03-15 2016-01-26 Tandem Diabetes Care, Inc. Field update of an ambulatory infusion pump system
CN105190631A (zh) 2013-03-15 2015-12-23 卓尔医学产品公司 病人监护屏幕聚合
US20140297329A1 (en) 2013-03-26 2014-10-02 Eric Rock Medication reconciliation system and method
WO2014190264A1 (en) 2013-05-24 2014-11-27 Hospira, Inc. Multi-sensor infusion system for detecting air or an occlusion in the infusion system
WO2014194089A1 (en) 2013-05-29 2014-12-04 Hospira, Inc. Infusion system which utilizes one or more sensors and additional information to make an air determination regarding the infusion system
EP3003442B1 (en) 2013-05-29 2020-12-30 ICU Medical, Inc. Infusion system and method of use which prevents over-saturation of an analog-to-digital converter
US8998100B2 (en) 2013-06-26 2015-04-07 Carefusion 303, Inc. Infusion system configured for transfer of data
KR101526494B1 (ko) 2013-06-28 2015-06-05 주식회사 인포피아 중앙 조제 관리 시스템
EP3039596A4 (en) 2013-08-30 2017-04-12 Hospira, Inc. System and method of monitoring and managing a remote infusion regimen
US9662436B2 (en) 2013-09-20 2017-05-30 Icu Medical, Inc. Fail-safe drug infusion therapy system
EP3049128A4 (en) 2013-09-27 2017-05-10 Smiths Medical ASD, Inc. Infusion pump with touchless user interface and related methods
US9474855B2 (en) 2013-10-04 2016-10-25 Animas Corporation Method and system for controlling a tuning factor due to sensor replacement for closed-loop controller in an artificial pancreas
US9438496B2 (en) 2013-10-31 2016-09-06 Aruba Networks, Inc. Monitoring link quality between network devices
US10311972B2 (en) 2013-11-11 2019-06-04 Icu Medical, Inc. Medical device system performance index
TR201908852T4 (tr) 2013-11-19 2019-07-22 Icu Medical Inc İnfüzyon pompası otomasyon sistemi ve yöntemi.
US10874796B2 (en) 2013-12-03 2020-12-29 Micrel Medical Devices, S.A. Device and system for locating and operating a medical device
US9424020B2 (en) 2014-01-13 2016-08-23 Carefusion 303, Inc. Remote flashing during infusion
US20150230760A1 (en) 2014-02-19 2015-08-20 Q-Core Medical Ltd. Methods, circuits, devices, systems and computer executable code for operating a medical device using a hybrid communication path
WO2015124569A1 (en) 2014-02-21 2015-08-27 Nestec S.A. Infusion pump with graphic user interface
US9203814B2 (en) 2014-02-24 2015-12-01 HCA Holdings, Inc. Providing notifications to authorized users
WO2015168427A1 (en) 2014-04-30 2015-11-05 Hospira, Inc. Patient care system with conditional alarm forwarding
US9724470B2 (en) 2014-06-16 2017-08-08 Icu Medical, Inc. System for monitoring and delivering medication to a patient and method of using the same to minimize the risks associated with automated therapy
JP6632551B2 (ja) 2014-06-30 2020-01-22 アイシーユー・メディカル・インコーポレーテッド 注入ポンプのエラー表示
US9452255B2 (en) 2014-07-21 2016-09-27 Medtronic Minimed, Inc. Smart connection interface
US10025909B2 (en) 2014-08-04 2018-07-17 Ivenix, Inc. Medical devices and configuration update management
US10002235B2 (en) 2014-08-13 2018-06-19 Ivenix, Inc. Medical device management and theft inhibitor techniques
US9717845B2 (en) 2014-08-19 2017-08-01 Medtronic Minimed, Inc. Geofencing for medical devices
US9539383B2 (en) 2014-09-15 2017-01-10 Hospira, Inc. System and method that matches delayed infusion auto-programs with manually entered infusion programs and analyzes differences therein
WO2016128969A1 (en) 2015-02-12 2016-08-18 Kaminario Technologies Ltd. Computerized system and method of secret key management
CA2985103A1 (en) 2015-05-07 2016-11-10 Smiths Medical Asd, Inc. Systems and methods for coordinating and controlling infusion pumps
CA2988094A1 (en) 2015-05-26 2016-12-01 Icu Medical, Inc. Infusion pump system and method with multiple drug library editor source capability
US20180322948A1 (en) 2015-11-09 2018-11-08 Smiths Medical Asd, Inc. Infusion push alerts
EP3173957A1 (en) 2015-11-25 2017-05-31 Fenwal, Inc. Data set distribution during medical device operation
US10306012B2 (en) 2015-11-25 2019-05-28 Fenwal, Inc. Secure network access to infusion pump
EP3220297B1 (en) 2016-03-14 2019-06-26 Fenwal, Inc. Default data set distribution for medical devices
CA3019549A1 (en) 2016-04-08 2017-10-12 Icu Medical, Inc. Control of a drug infusion device
CA3030786A1 (en) 2016-07-14 2018-01-18 Icu Medical, Inc. Multi-communication path selection and security system for a medical device
US10553307B2 (en) 2016-10-27 2020-02-04 Snaps Solutions, Llc Systems and methods for tracking data across disparate computing systems via a distributed architecture
US10964417B2 (en) 2016-12-21 2021-03-30 Baxter International Inc. Medical fluid delivery system including a mobile platform for patient engagement and treatment compliance
US20180181712A1 (en) 2016-12-27 2018-06-28 General Electric Company Systems and Methods for Patient-Provider Engagement
US20180247712A1 (en) 2017-02-24 2018-08-30 Masimo Corporation System for displaying medical monitoring data
EP3422355B1 (en) 2017-06-28 2021-08-18 Fenwal, Inc. System and method of synchronizing medical device databases
US10833923B2 (en) 2017-10-26 2020-11-10 Skylo Technologies Inc. Dynamic multiple access for distributed device communication networks with scheduled and unscheduled transmissions
JP6988511B2 (ja) 2018-01-24 2022-01-05 富士通株式会社 障害検知方法、ノード装置、通信システム
EP3791398B1 (en) 2018-05-11 2022-09-07 Baxter International Inc. Medical device data back-association, system, apparatuses, and methods
CN112154518A (zh) 2018-05-14 2020-12-29 费森尤斯维尔公司 用于患者装置的药物库编译器
US10861592B2 (en) 2018-07-17 2020-12-08 Icu Medical, Inc. Reducing infusion pump network congestion by staggering updates
US11152109B2 (en) 2018-07-17 2021-10-19 Icu Medical, Inc. Detecting missing messages from clinical environment
NZ771914A (en) 2018-07-17 2023-04-28 Icu Medical Inc Updating infusion pump drug libraries and operational software in a networked environment
US10692595B2 (en) 2018-07-26 2020-06-23 Icu Medical, Inc. Drug library dynamic version management
AU2019309766B2 (en) 2018-07-26 2024-06-13 Icu Medical, Inc. Drug library management system
NZ782916A (en) 2019-05-08 2024-02-23 Icu Medical Inc Threshold signature based medical device management
WO2021034784A1 (en) 2019-08-16 2021-02-25 Poltorak Technologies, LLC Device and method for medical diagnostics
AU2021301210A1 (en) 2020-07-02 2023-03-09 Icu Medical, Inc. Server-initiated transmission of messages to medical devices

Also Published As

Publication number Publication date
EP2964079A4 (en) 2016-11-23
CA2904053A1 (en) 2014-09-12
EP2964079B1 (en) 2022-02-16
US20140254598A1 (en) 2014-09-11
AU2014225658A1 (en) 2015-10-08
US20230188465A1 (en) 2023-06-15
CA2904053C (en) 2023-01-03
US20200145332A1 (en) 2020-05-07
US10333843B2 (en) 2019-06-25
US20210105206A1 (en) 2021-04-08
US11470000B2 (en) 2022-10-11
WO2014138446A1 (en) 2014-09-12
US20170331735A1 (en) 2017-11-16
EP2964079A1 (en) 2016-01-13
US9641432B2 (en) 2017-05-02
AU2014225658B2 (en) 2018-05-31
US10812380B2 (en) 2020-10-20

Similar Documents

Publication Publication Date Title
ES2908320T3 (es) Método de comunicación de dispositivos médicos
US10013390B2 (en) Secure handle for intra-and inter-processor communications
US20220200912A1 (en) System and method for facilitating efficient packet injection into an output buffer in a network interface controller (nic)
JP5635117B2 (ja) 動的接続された移送サービス
KR101365838B1 (ko) 개선된 분산형 커널 운영 시스템
KR20060126373A (ko) 개선된 분산형 커널 운영 시스템
CN116266800A (zh) 组播传输方法、装置和系统
Dalgeir et al. Implementation of a lightweight transport service over HIPPI on the IBM RISC System/6000