System and method for intersystem device exchange
First Claim
1. A method of control and data exchange between autonomous devices comprising:
- receiving, from each of a plurality of autonomous devices, a device specification, the device specification defining a device identifier, receivable commands and device outputs;
storing, for each device of the plurality of autonomous devices, the device specification in a common location accessible to each of the autonomous devices for asynchronous access;
publishing at least a portion of the stored device specification for receipt by at least one other of the autonomous devices; and
transmitting, based on the published device specification, a message including a command or a device output from one of the autonomous devices to a destination device of the autonomous devices, the transmission being an unscripted exchange initiated by the transmitting autonomous device for receipt by the destination device based on the published device specification from the destination device, the device specification including a plurality of output fields defining the device outputs and a plurality of control fields defining the receivable commands, the output fields and control fields having a common format independent of the destination device, further comprisingtransmitting the commands and device specification over a common bus readable by all connected devices, wherein each device reads and interprets based on an identifier rather than visibility of the command,the message including a device identifier designating the recipient device,the device identifier configured to be read by the recipient and compared to the identification of the recipient;
specifying a constant length for the device identifier, output fields and control fields independent of conditional fields in the message, such that the message remains a constant length regardless of conditional commands and optional fields;
reading, at the recipient device, the device identifier;
comparing the device identifier to the identity of the recipient device; and
responding to the command in the message if the device identifier matches the identity, the transmitted message accessible to the recipient device based on indexing from the device specification, without parsing according to a protocol and variable length payload.
1 Assignment
0 Petitions
Accused Products
Abstract
A device exchange transports messages between autonomous devices in a medical environment. The autonomous devices perform various tasks in the medical environment, such as surgical device control, drug infusion, video recordation, and user interfaces, for example. Each autonomous device has a device specification, published and stored by the device exchange and available to other autonomous devices. The device specification indicates, for each autonomous device, an identifier, a set of outputs and a set of inputs, or commands. Devices interoperate by messages including the device identifier and an output or command without translation or transformation mechanisms such as scripts, protocol translations, drivers or interface modules because each message is based on the published device specification available to all the devices connected to the exchange. Interconnected medical devices therefore interoperate without the need for reconfiguration because each device has internal logic for understanding the messages it sends and receives via the exchange.
-
Citations
18 Claims
-
1. A method of control and data exchange between autonomous devices comprising:
-
receiving, from each of a plurality of autonomous devices, a device specification, the device specification defining a device identifier, receivable commands and device outputs; storing, for each device of the plurality of autonomous devices, the device specification in a common location accessible to each of the autonomous devices for asynchronous access; publishing at least a portion of the stored device specification for receipt by at least one other of the autonomous devices; and transmitting, based on the published device specification, a message including a command or a device output from one of the autonomous devices to a destination device of the autonomous devices, the transmission being an unscripted exchange initiated by the transmitting autonomous device for receipt by the destination device based on the published device specification from the destination device, the device specification including a plurality of output fields defining the device outputs and a plurality of control fields defining the receivable commands, the output fields and control fields having a common format independent of the destination device, further comprising transmitting the commands and device specification over a common bus readable by all connected devices, wherein each device reads and interprets based on an identifier rather than visibility of the command, the message including a device identifier designating the recipient device, the device identifier configured to be read by the recipient and compared to the identification of the recipient; specifying a constant length for the device identifier, output fields and control fields independent of conditional fields in the message, such that the message remains a constant length regardless of conditional commands and optional fields; reading, at the recipient device, the device identifier; comparing the device identifier to the identity of the recipient device; and responding to the command in the message if the device identifier matches the identity, the transmitted message accessible to the recipient device based on indexing from the device specification, without parsing according to a protocol and variable length payload. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 18)
-
-
12. A system for unscripted integration and control between interconnected devices, comprising:
-
a plurality of autonomous devices each having a device specification; an exchange interface coupled to each of the plurality of autonomous devices, the exchange interface responsive to each of the autonomous devices for storing the device specifications in a common location accessible to each of the autonomous devices for asynchronous access and transmitting the device specification to others of the autonomous devices; and each of the autonomous devices having control logic, the control logic for transmitting, based on the published device specification, a message including a command or a device output from one of the autonomous devices to a destination device of the autonomous devices, the transmission being an unscripted exchange initiated by the transmitting autonomous device for receipt by the destination device based on the published device specification from the destination device, the device specification including a plurality of output fields defining the device outputs and a plurality of control fields defining the receivable commands, the output fields and control fields having a common format independent of the destination device, further comprising transmitting the commands and device specification over a common bus readable by all connected devices, wherein each device reads and interprets based on an identifier rather than visibility of the command, the message including a device identifier designating the recipient device, the device identifier configured to be read by the recipient and compared to the identification of the recipient; specifying a constant length for the device identifier, output fields and control fields independent of conditional fields in the message, such that the message remains a constant length regardless of conditional commands and optional fields; reading, at the recipient device, the device identifier; comparing the device identifier to the identity of the recipient device; and responding to the command in the message if the device identifier matches the identity, the transmitted message accessible to the recipient device based on indexing from the device specification, without parsing according to a protocol and variable length payload. - View Dependent Claims (13, 14, 15, 16)
-
-
17. In a medical device environment, a non-transitory computer readable storage medium having logic encoded as instructions that when executed by a processor responsive to the instructions, perform a method of control and data exchange between autonomous devices, the method comprising:
-
receiving, from each of a plurality of autonomous devices, a device specification, the device specification defining a device identifier, receivable commands and device outputs; storing, for each device of the plurality of autonomous devices, the device specification in a repository accessible to each of the autonomous devices for asynchronous access; publishing at least a portion of the stored device specification for receipt by at least one other of the autonomous devices; and transmitting, based on the published device specification, a message including a command or a device output from one of the autonomous devices to a destination device of the autonomous devices, the transmission being an unscripted exchange initiated by the transmitting autonomous device for receipt by the destination device based on the published device specification from the destination device, the device specification including a plurality of output fields defining the device outputs and a plurality of control fields defining the receivable commands, the output fields and control fields having a common format independent of the destination device, further comprising transmitting the commands and device specification over a common bus readable by all connected devices, wherein each device reads and interprets based on an identifier rather than visibility of the command, the message including a device identifier designating the recipient device, the device identifier configured to be read by the recipient and compared to the identification of the recipient; specifying a constant length for the device identifier, output fields and control fields independent of conditional fields in the message, such that the message remains a constant length regardless of conditional commands and optional fields; reading, at the recipient device, the device identifier; comparing the device identifier to the identity of the recipient device; and responding to the command in the message if the device identifier matches the identity, the transmitted message accessible to the recipient device based on indexing from the device specification, without parsing according to a protocol and variable length payload.
-
Specification