This specification relates generally to example medical diagnostic systems that use electronic identification tags to manage containers storing substances.
A medical diagnostic system performs tests on a sample, such as blood or tissue, obtained from a patient. The tests performed by the medical diagnostic system are referred to as assays. An example assay is an investigative procedure for qualitatively assessing or quantitatively measuring the presence, amount, or functional activity of an analyte in the sample. One or more substances, such as reagents, controls, or calibrators, may be used by the medical diagnostic system to perform an assay on a sample.
An example medical diagnostic system includes one or more containers that are usable in a medical diagnostic test. Each container has an identification (ID) tag associated therewith. An ID tag of a container includes memory that is readable and writeable. The memory is for storing information relating to the container. Antennas are configured to communicate wirelessly with ID tags associated with the one or more containers. A control system is configured to store a location of the container based on an identify of the antenna, to select the antenna for communication with the ID tag, and to use the antenna to read at least some of the information from, or to write at least some of the information to, the memory on the ID tag. The medical diagnostic system may include one or more of the following features, either alone or in combination.
An antenna among the antennas may be within communication range of the ID tag of the container. The control system may include a multiplexer that is controllable to select the antenna and a read/write module to implement reading at least some of the information from, or writing at least some of the information to, the memory on the ID tag. One or more of the containers may be arranged in an array. The antennas may be arranged in a static array that is along the array of containers such that each container is in physical correspondence with an antenna in the static array and such that an ID tag of each container is in communication range of an antenna in the static array.
The information relating to the container may include one or more of: a state of the container, calibration data for the container, identification data for the container, container manufacturer location, container expiration date, material consumed in the container, onboard stability information, assay data for the medical diagnostic test, container authenticity data, or error detection data.
The medical diagnostic system may be a first medical diagnostic system. The information in the memory on the ID tag may be usable by a second medical diagnostic system that is separate from the first medical diagnostic system to incorporate the container into a medical diagnostic test performed by the second medical diagnostic system. The medical diagnostic system may include a mobile robot that is configured to move relative to the one or more containers. An antenna may be mounted to the mobile robot to cause the antenna to move relative to the one or more containers and, based on the movement, to communicate wirelessly with the ID tag. The control system may be configured to control movement of the mobile robot.
An example mobile robot includes a gripper for grasping a container in a medical diagnostic system and a mount for holding an antenna configured to communicate wirelessly with electronic identification (EID) tags on containers in the medical diagnostic system. The mobile robot is configured to move the container between different areas of the medical diagnostic system. The mobile robot may include one or more of the following features, either alone or in combination.
The mobile robot may include an element to apply force to a part of the container during movement in order to stabilize the container during the movement. The element may include a spring-loaded plate. The mobile robot may be configured to move in three dimensions. The mobile robot may include a switch that detects engagement with the container. The switch may be configured to output a signal in response to engagement between the container and the mobile robot.
An example system includes the mobile robot and a control system to control operation of the mobile robot. The control system may be configured to detect the signal output by switch. The control system may be configured to track movement of the mobile robot relative to the container, to detect that the signal was not output when expected, and to output an error signal or message in response to detecting that the signal was not output when expected. The system may include a robotic laboratory tool configured to move between containers to transfer a substance from a first container to a second container. The control system may be configured to control movement of the mobile robot so that that mobile robot is out of the way of the robotic laboratory tool during operation of the robotic laboratory tool.
An example user interface (UI) for a medical diagnostic system includes a menu for selecting one or more containers in the medical diagnostic system based on a substance in the containers or a status of the containers, and a display containing information about the one or more containers selected. The UI may include one or more of the following features, either alone or in combination.
The one or more containers may be represented graphically on the UI. The information may include at least one of the following: locations of the one or more containers in an area of the medical diagnostic system, container identifiers, container lot identifiers, an indication that a container has loaded into the medical diagnostic system, an indication that a container is active in the medical diagnostic system, a number of tests remaining in a container in the medical diagnostic system, locations of empty slots not containing a container in the medical diagnostic system, container capacity of the medical diagnostic system, or a number of each sized container in the medical diagnostic system.
An example method for use in a medical diagnostic system includes the following operations: selecting a first antenna among multiple antennas, where the first antenna is associated with an identification (ID) tag of a container that is usable in a medical diagnostic test, where the ID tag includes memory that is readable and writeable, and where the memory is for storing information relating to the container; and performing at least one of the following operations: reading at least some of the information from the memory using the first antenna, or writing at least some of the information to the memory using the first antenna. The operations in the example method may also include moving the container from a first location of the medical diagnostic system to a second location of the medical diagnostic system using a mobile robot; and communicating with the ID tag of the container using a second antenna mounted to the mobile robot at least to update one or more of: the memory on the ID tag or a control system to provide information from the ID tag.
The method may include one or more of the following features, either alone or in combination: storing, in memory, a first location of the container based on an identity of the first antenna; and storing, in memory, the second location of the container.
Any two or more of the features described in this specification, including in this summary section, can be combined to form implementations not specifically described herein.
The systems, techniques, components, structures, and variations thereof described herein, or portions thereof, can be implemented using, or controlled by, a computer program product that includes instructions that are stored on one or more non-transitory machine-readable storage media, and that are executable on one or more processing devices to execute at least some of the operations described herein. The systems, techniques, components, structures, and variations thereof described herein, or portions thereof, can be implemented as an apparatus, method, or electronic system that can include one or more processing devices and computer memory to store executable instructions to implement various operations. The systems, techniques, components, structures, and variations thereof described herein may be configured, for example, through design, construction, size, shape, arrangement, placement, programming, operation, activation, deactivation, and/or control.
The details of one or more implementations are set forth in the accompanying drawings and the description below. Other features, objects, and advantages will be apparent from the description and drawings, and from the claims.
Described herein are examples of medical diagnostic instruments, systems, and variants thereof (referred to collectively as “the system”) that use electronic identification (ID) tags to manage containers storing substances that are usable to perform diagnostic tests or assays.
In a non-limiting example, area 12 may include an input/output (I/O) drawer and areas 13, 14, and 15 may be temperature-controlled. In some examples, the I/O drawer is a user-accessible drawer into which containers may be loaded. In some examples, the temperature-controlled areas include ambient temperature areas and/or chilled areas. In some examples, there may be more than four areas - for example, five, six, or seven areas - or fewer than four areas - for example, two or three areas.
In some implementations, the containers may be or include a test cartridge (“cartridge”) containing multiple vials, one or more of which is configured to hold a substance that may be used in testing. However other types of containers may be used such as, but not limited to, cuvettes or stand-alone vials. Examples of substances in the containers may include, but are not limited to, individual, or mixtures of, reagents in dry or liquid form, control substances, diluents, DI (deionized) water, cleaning materials, and/or calibrators.
In some implementations, each container has an electronic identification (EID) tag attached thereto or associated therewith. Examples of EID tags include, but are not limited to, a radio frequency (RF) ID tag (“RFID tag”) and an electrically erasable programmable read-only memory (EEPROM). Examples of types of RFID tags that may be used include, but are not limited to, low frequency RFID tags (e.g., an RFID tag having a transmission rate of about 125 kilohertz to 134 kilohertz (KHz)), high frequency RFID tags (e.g., an RFID tag having a transmission rate of about 13.56 megahertz (MHz)), and ultra-high frequency RFID tags (e.g., an RFID tag having a transmission rate of about 860 MHZ to 960 MHz). These are examples only; the system is not limited to use with these types of EID or RFID tags.
The EID tag contains memory that is machine-readable and machine-writeable (referred to as “memory”). The memory may store information relating to the container for managing the container and/or tests associated with the container, such as the assay that the container is used for. Referring to
EID tags may be located on one side of each container as shown in
Referring to
In this example, each RF antenna 32 is mounted to a printed circuit board (PCB) or flexible circuit 31. Each PCB or flexible circuit 31 is connected electrically to another PCB or flexible circuit 35 that contains EID circuitry 36. EID circuitry 36 may be considered part of a control system (described below) and may operate as the intermediate entity between the RF antennas and the remainder of the control system. In this example, EID circuitry 36 includes a multiplexer 34, an EID read/write module 33 (“EID module”), and electrical connections 38 to antennas 32, which connections may be considered part of the antennas. Multiplexer 34 creates a wired electrical connection between EID module 33 and antennas 32/38 via conductive traces (not shown) in PCBs 35, 31 for the purpose of enabling the EID module 33 to communicate wirelessly with a specific EID tag 32 (
Referring to
In the example of
In some implementations, there may be two RF antennas on a single mobile robot 45. For example, there may be a first RF antenna 41 on one side of the robot and a second RF antenna (not shown in the figures) on the other side 58 of robot 45. Use of two RF antennas may reduce the need to maintain consistent orientation of the containers in a rack 59. For example, if container 60 is rotated by 180°, its EID tag 44 will be facing in the direction opposite to the direction that EID tag 44 faces in
In some implementations, the container includes one or more notches (not shown) on one or both sides thereof, and the left and/or right fingers of gripper 111 include one or more juts (not shown) having shapes that complement the shapes of the notches on the container. When the gripper engages the container, the juts enter the notches, ensuring proper alignment between the gripper and the container and providing additional structural support to enable the robot to lift the container.
Robot 110 also includes a plate assembly 125. Plate assembly 125 includes a plate 126 that is movable relative to container 120 and gripper 111 along Z-axis 130 in the directions of arrows 131, 132 and over pins or rods 135. In some implementations, the plate is spring 136 loaded and moves at the same time as the grippers. By way of example, when the gripper engages container 120, plate 126 contacts the top of container 120, causing spring 136 to compress. The left 122 and right 123 fingers of gripper 111 engage container 120 as described above, with plate 126 forced against the top of container 120 by force applied along the Z-axis in the the direction of arrow 132 by the compressed spring. This force applied by plate 126 during transport of the container reduces the chances that the container will move relative to the robot, thereby reducing the chances that the container contents will slosh or spill during transport.
As shown in
Trigger 143 may be physically attached to plate 126 and, therefore, moves in the Z dimension along with movement of plate 126. Trigger 143 and optical element 141 are positioned relative to each other and relative to plate 126 so that, when plate 126 compresses the spring by at least a predetermined amount, such as full compression, the trigger moves into the light beam, thereby blocking the light beam and causing output of the electrical signal. The electrical signal thus may act as confirmation to the control system that the robot has engaged a container. For example, the electrical signal indicates that the plate is at the appropriate height to pick-up the container.
In some implementations, if trigger 143 never triggers optical element 141 in an expected Z dimension range, then the system assumes there is no container present to grasp and pick. The system may attempt this motion one or more additional times to “search” for the container - for example, to see if trigger 143 triggers the optical element 141 in the expected Z dimension range - but the system will eventually shift to an error state or move on to a next task if there is no container present in the expected Z dimension. In some implementations, if trigger 143 triggers the optical element 141 before the expected Z dimension range, the system assumes the container is not seated correctly. Again, the system may attempt this motion one or more additional times before shifting to an error state or moving on to a next task.
In addition to the X and Y axis movement described with respect to
Referring back to
One or more (e.g., all) of areas 12 to 15 may contain a presence detector such as detector 64 (shown only in area 12). Presence detector 64 may be or include an optical sensor that detects the presence of at least one container in the area and that reports data to the control system indicating the container’s presence.
System 10 includes control system 21 to control the automated components thereof. As shown in
In some implementations, at least part of the control system, such as the controller PCB, may reside on instrument 11. For example, all or part of the control system may be embedded in or otherwise part of instrument 11. In some implementations, all or part of control system 21 may be distributed across instrument 11 and one or more computing devices that may be in communication with instrument 11. The control system is programmed to direct where and when to move containers from one location to another based, at least in part, on test/assay workflows stored either in the control system of the EID tag of a container..
The control system stores, in its software, a set of parameters, recipes, preparation steps, and position of containers with instrument 11 - basically any data the system uses to implement system workflow for the tests or assays to be implemented. Container descriptions associated with container identification codes, as described below, may also be stored in the control system. Each container description may be associated with its identification code. Accordingly, a container description may be retrieved using the identification code obtained from the EID tag. The control system thus knows what types information is stored on the EID tag based its identification code. The control system also stores the location of each container determined as described below and expected heights of the container at different locations within the instrument. This information is usable as described below to detect proper container placement. The manufactured fill volume of each container also may be stored on the control system and accessed using an identification code of the container. The control system may also store information identifying what substance(s) are is in each container and which container is in which position inside a cartridge.
The EID tag of each container, there is a single identification number or code that can be read from the EID tag by the control system, which will tell the control system what processes to implement for the container (e.g., recipes, sequences, various lookup tables, and the like). Basically any piece of information that is relatively constant over time (not lot specific) and that is used to inform the control system how to manipulate the container will be stored directly in the system software and can be retrieved using the identification code obtained from a container’s the EID tag.
The EID tag of a container also stores lot specific information, such as values that correlate to an assay component that are determined during manufacturing quality control process and specifically assigned on a lot-to-lot basis. This is generally referred to as value assignment. The EID tag also stores other pieces of information related to usage tracking (e.g., activation timestamps, status, how much material is available still, and the like), authentication parameters or keys, and data that corresponds to consumable lifecycle traceability (e.g., serial number, lot number, plant, expiration date, and the like). Thus, in sum, the EID tag stores unique lot to lot value assignments that are needed to run one or more assays using the container.
Some manufacturing data may be stored on the EID tag for the purpose of lifecycle traceability. And, to confirm container integrity, an authentication key may be stored on each EID tag, which can be compared to a predefined key stored in the control system to authenticate a container. In some implementations, particularly where additional storage is available, information such as sequences, recipes, and vial locations within a container may be stored on an EID.
Examples of types of information stored on the EID tag are as follows; however, other types of information not listed below may be stored on the EID tags. This information may include, but is not limited to, a state of the container - for example, whether the container is full, empty, partially full, and/or expired. The state of the container may also include “new”, which is equivalent to full. There may also be a corresponding estimation of the number of tests that remain for the container that can be displayed on a UI accessible by the user. As the container contents are exhausted, this information is updated on the EID tag, and the updated information is displayed on the UI. If a partially full container is removed from one instrument and placed on another instrument, up-to-date information is stored on the container’s EID tag so the container can be used seamlessly on the second instrument. Other types of the information stored on the EID tag may include, but are not limited to, calibration data for the container, e.g., values assigned to a manufacturing lot of material produced during a quality control (QC) process such as target values, units, and acceptance ranges that are assay type dependent; identification data for the container - for example, what the container contains or what assay the container is for; lifecycle data for the container -for example, whether the container is unused, expired, or the number of tests that can be performed given the amount of substance remaining in the container; assay data for medical diagnostic tests - for example, instructions for performing an assay using the container; container authenticity data or key(s); and/or error detection data - for example, data indicating that the system was interrupted during mixing / preparation
In some implementations, the information stored on an EID tag may also include container serial number, container lot number, container sequence number, plant identifier - for example, what facility made the container, container type identifier, container expiration date, container activation timestamp, and onboard stability (OBS) of the container - for example, the time since the container was initially pierced. The container serial number, container lot number, container sequence number, and plant identifier may be used to verify the authenticity of the container. The container EID tags may contain assay information that is readable from the container. This information may include, but is not limited to, target values and/or ranges of acceptable values for quality control (QC) and calibrator data for a given assay.
Initial values for at least some of the preceding information may be programmed or written to a container’s EID tag before the container is used, e.g., at manufacturing or preparation and/or changed during use of the container. For example, as the container contents are used, the EID tag may be updated to change at least some of this information. For example, the EID tag may be updated, e.g., through writing to the tag, to change the number of tests that may be performed using the container before its expiration date. That is, as content from the container is used, fewer tests may be performed using the container. Similarly, the EID tag may be updated to change information indicating the amount of substance contained in each container after substance is removed from, or added to, the container. The current location of the container is stored in system memory as noted; however, in some implementations the container’s EID tag may be updated to store the current location of the container.
The usage of dynamic tracking information on the EID tag allows a container to be removed from an instrument before it is completely used-up. As a result, separate instrument(s) may read the EID tag and use the container in the same manner as the instrument from which the container was removed. Also during normal usage, a customer may remove a container from an instrument before it has been completely used-up and then re-inserted into the same instrument at a future time (for instance, to allow time for different types of tests). A benefit of dynamic tracking is allowing the customer to view on a UI information about the container whether it is in a single instrument its entire life, re-inserted, or moved from instrument to instrument.
Presence detector 64 detects (70b) the presence of at least one container in area and reports this information to the control system. The control system may then identify (70c) the locations of containers within area 12. This may be done automatically in response to detecting the presence of a container in the system, periodically, or in response to user or programmatic input to the control system. For example, at initialization, the control system may attempt to identify each container that is loaded into the system. As part of the identification process, the control system may control multiplexer 34 (
The control system knows the locations of the static antennas that performed the reading or writing and, from this, the control system can identify the location of the container or containers in area 12. As part of the reading operation, the control system may read an identification code stored on each container’s EID. The identification code is a code that is unique to the container. The control system stores (70d) in its memory the location of containers in area 12, along with their identification codes. For example, if a container or containers is/are added, the location of those container(s) is/are stored. Also, the locations of containers known to be in area 12 may be updated if their locations have changed, e.g., moved away from the area 12, or their expected locations may be verified, e.g., using the antenna that is accessible at the changed locations. Each location within area 12 may be defined by an area identifier and coordinates within that area or general system coordinates.
The control system receives (70e) a request to access a container in area 12. For example, the control system may receive a user request from a user interface or an automated request from another computer program operating on the system. The request may be a request for information about the container or to write information to the container’s EID tag. The request may identify the container by its identification code. In some implementations, the request may be for a particular type of container containing a particular type of substance. The control system may use stored information to identify a container (e.g., by identification code) that meet the criteria specified in such a quest. The control system retrieves (70f) information identifying the location of the container that is the subject of the request using the identification code.
The control system instructs the EID module 33 to connect (70g) the multiplexer 34 to the RF antenna that is within communication range of container that is the subject of the request. In a case where data is to be read (70h), this is done by selecting the static RF antenna that is capable of communicating with that container’s EID tag based on stored information associating the antennas and containers described above and instructing the RF antenna to read from a part of memory on the EID tag containing the data. In this example, only the selected antenna attempts reading. The rest of the antennas are de-energized. Software running on the control system controls which antenna to be energized and used for reading. EID module 33 outputs an electrical signal to the selected RF antenna that excites the selected RF antenna to produce an RF signal in order to read data from the EID tag of the container. The read data is communicated by the selected RF antenna to the EID module, which then sends the read data to the control system. The data read from the container may be or include any of the EID tag data described herein.
In a case where data is to be written (70h), the antenna is selected in the same manner as described above and the RF signal is used to write data to the EID tag attached to container of interest. Specifically, the control system 21 provides, to the EID module, data to be written to the EID tag along with a location on the EID memory of where that data is to be written. In some examples, the data to be written is based on data from controller modules, computers, and/or user(s). The EID module 33 excites the selected RF antenna with an RF signal in order to write the data to the EID tag of the container. The data is thereby stored the memory on the EID tag. The data written to the container may be or include updates to the EID gag data described herein or, where supported, new data that is not currently on the EID tag.
The control system may store read data and/or generate (70i) data for rendering and/or updating a user interface (UI) on a computer display that may be based at least in part information read from the EID tags or written to the EID tag. For example, the UI may present any information available from the EID tag or identify information written to the EID tag. The UI may be interactive in that a container may be selectable on a computer display. In response, information about the container may be displayed. An example of a graphical UI (GUI) is described with respect to
Referring also to
Referring also to
As noted, the control system may store data indicating a height at which each container is to engage plate 126. The data may represent, for example, the amount of Z-axis movement of assembly 150 that is needed to cause plate 126 to engage the top of the container and therefore cause trigger 143 to block the light beam in optical element 141. This data may be specific to the container and may be stored in the control system prior to operation of the instrument. The amount of Z-axis movement of assembly 150 that actually causes plate 126 to engage the top of the container and therefore causes trigger 143 to block the light beam in optical element 141 is determined by motor / encoder 152. If the trigger blocks the light beam prematurely based on a comparison of expected Z-axis movement to actual Z-axis movement, this may be an indication that the container is seated in the system incorrectly. In this case, the control system may identify an error. The robot may then be instructed to implement one or more additional attempts to pick-up the container. If these additional attempts result in an error, the control system may instruct manual or automated correction of the container position.
Similarly, if the if the trigger blocks the light beam after it is expected to, or does not block the light beam at all, based on a comparison of expected Z-axis movement to actual Z-axis movement, this may be an indication that the container is seated in the system incorrectly or that there is no container at the expected location. As was the case above, the robot may then be instructed to implement one or more additional attempts to pick-up the container. If these additional attempts result in an error, the control system may instruct manual or automated correction, e.g., through the UI.
In an example, the robot may move the container from the I/O drawer to another area of the system - for example, to area 15 of
At area 15, robot 110 is controlled by the control system to place (70i-
The control system may store (70m) the new location of the container in control system memory. For example, an area identifier and a slot identifier may be stored in association with the container’s identification code in system software or memory. Any prior location(s) stored for the container may be retained in system software or memory to provide a historical record of the route that the container has traveled in the system or those prior location(s) may be deleted and only the current / most up-to-date location of the container may be retained.
The control system receives (70n) a request to access the container that was moved. For example, the control system may receive a user request from a user interface or an automated request from another computer program operating on the system. The request may be a request for information about the container or to write information to the container and may identify the container by its identification code.
The control system retrieves (70o) information identifying the location of the container that is the subject of the request. This information is associated in memory with the identification code and is retrieved using the identification code.
The control system instructs robot 45 to move to the current location of the container. In the example of
In some implementations, the location of a container in area 40 (
In some implementations, the system may take inventory of containers in areas by moving the mobile robot into contact with the container and confirming the proper searing of the container within the system.
Control system may control (70w) the robot to move containers into, and across, the various areas 12 to 15 in any order and at any time instructed. The operations performed following container movement to each area are as described above, depending on whether the area contains an array of static RF antennas and/or use mobile RF antennas. The RF antennas and EIDs may be used to provide information identifying the location of the containers with in the system, which the control system may store memory. Thus, tracking within the system may be implemented based on antenna location. As noted, if an antenna is at a certain location in the system and that antenna detects a code associated with a particular container, the system then knows the location of that container and stores that location in memory. The antenna acts like a positioning system and the EID tag is used to detect the presence of the container.
Within each area, data on a container’s EID tag may be monitored and/or updated - for example, to reflect the current amount of substance in the container, the number of tests or volume remaining, and so forth. Accordingly, EID tag data may be used to track and/or to monitor the quantity and quality of a container. Writing information to the EID tag in particular enables tracking and/or monitoring of the container throughout the lifecycle of the container/test. The tracking and/or monitoring may occur continuously throughout use of the container in the system or it may occur intermittently or periodically in response to a user or machine command. Use of electronic mechanisms to track and/or monitor containers may reduce the need for paper-based insert sheets that have heretofore been distributed with medical diagnostic instruments. The systems and methods described herein can allow continued and automated management of the containers, assays, and tests throughout multiple rounds of testing and/or lifecycles of the containers, substances, or assays.
Referring to
In a more detailed example of such a process, prior to moving the robotic laboratory tool, the control system controls (72a) the robot 45/110 to move to a predefined location inside of or outside of the area that is out-of-the-way of the laboratory tool. That is, the robot is moved to a location that will prevent it from interfering with the operation of the laboratory tool. The location may be an X,Y axis location within the robot’s area or the location may be at a Z-axis location above the laboratory tool. For example, part of the robot, such as assembly 150 of
Following movement of the robot, the control system may control (72b) the laboratory tool to move to a first container. The location of the first container may be known using the techniques described herein. The control system controls the laboratory tool to pierce the first container (72c), to aspirate (72d) substance from the first container, and to move (72e) to a second container into which that substance is to be deposited. The location of the second container may also be known using the techniques described herein. The control system controls the laboratory tool to pierce the second container (72f) and to deposit (72g) the substance in the other container.
Following operation of the laboratory tool, the control system may move (72h) the laboratory tool to a docking position that is out-of-the-way of the robot. The control system may then control operation of the robot (72i) to update the EID tag of each container using the RF antennas and the techniques described herein. For example, the EID of the second container may be updated to indicate that, e.g., the first container is ready for use by an assay. The EID of the first container may be updated to indicate, e.g., how much of the substance that was removed is left that container. The EID tag of each container may be updated to indicate when each container was first pierced, since that information bears on the expiration and onboard stability of the container.
The operations for moving the robot out-of-the-way of the laboratory tool are described with respect to laboratory tools used to move substances between containers. The operations, however, are not limited to this context and may be used with any type of laboratory tool. For example, the operations may be used with a laboratory tool that does not move any substances but rather performs other operations with respect the containers, such as controlling pressure within containers or mixing.
In some cases, the control system may cause the EID tag of the first container to store information about an error associated with the container. For example, during mixing of substances from the first and second container, the system may experience a power outage. In that case, since the system has not tracked where it is in the mixing process, there is an unrecoverable error. As a result, the EID tag of the first container is updated to indicate that the container is defective. Each time its EID tag is read, the control system knows that this container is defective and that its contents cannot be used for an assay. In some implementations, the control system may provide the error information to a user through the UI so that a user can act on the error, e.g., by removing the container from the instrument.
In some cases, containers used in one system can be moved to, and used in, a different system. For example, a container may be moved out of a first system, moved to storage, and then moved into a second system for use in that that second system. The control system may track the location and other EID stored information (e.g., substance, amount, etc. as described previously) of a container using RFID tags.
In an example, the control system may determine when the assays for which that container is designated have been completed by the first system (e.g., a first instrument). In that case, the control system may update the EID tag on the container to indicate that it is no longer needed in the first system. In this case, the number of test remaining in the container may be updated on the container EID tag in addition to any applicable expiration dates. The control system may then alert the user via the UI that the container is no longer needed on the first system. The container may then be designated for use in a second system (e.g., a second instrument). This information may be displayed on the UI - that is, the UI may indicate that the container has fulfilled its purpose in the system and can be moved to another system for use.
A user may then remove the container from the first system and place the container on an I/O drawer of the second system. That drawer may be inserted into the I/O slot of the second system and used for medical diagnostic testing in the manner described herein. The second system may read from and write to the EID tags on the container in the manner described herein in order to track the container in the other system and determine relevant information for use in the second system such as the number of tests remaining for the container, the expiration date of the container, authenticity data for the container, a state of the container, calibration data for the container, lifecycle data for the container, assay data for the medical diagnostic test, container authenticity data, and error detection data for the container, for example. Information thus may be carried from system-to-system on the EID tags.
When the expiration date has been reached, or a number of tests performed using a container has been reached, the control system may prevent use of the container. For example, the control system may provide an error message on the UI each time that container’s use is attempted and/or move the container to the I/O drawer for removal by the user while sending the user a message via the UI.
In some implementations, the UI that facilitates user participation and knowledge of the automated test management described herein. Examples of information that may be included on the UI include, but are not limited to, the locations of containers in an area of the system, container IDs (identifier), container lot IDs, an indication that a container has loaded into the system properly, an indication that the container is active in the system, the number of tests remaining in a container, the locations of empty slots not containing a container, the container capacity of the instrument, the number of each sized container in the instrument, and menus allowing a user to display information be container status and/or by container content. The display of information on the UI and the ability to select which information to display provides user with the ability to identify what containers are in an instrument and their status. Selectable menus, such as menus 90 and 91 below allow users to obtain information on subset of containers in the system for which the users may have a particular interest.
To generate a UI, information obtained from EID tags may be used to identify the containers when they are in an area 12 to 15. The EID tags on the containers may then be read using the techniques described herein. Referring to
Referring to
In general, any of the information that may be obtained from the EID tags described herein may be displayed on UI 80. In this example, the following information is displayed: status 94, lot number 95, number of tests 96 that the container is ready to perform, the time 97 remaining that the container’s contents will remain stable, the size 99 of the container, and an element 98, such as 0/2. In this particular example, 0/2 is an example of how many “sets” are remaining. Basically, within each container, its contents are divided into sets. Each set within a container can stand-alone and has all the needed materials to perform assays. Each set is prepared independently and on an as-needed basis. So if a container has 2 sets, the first will be prepared and its on-board stability (shorter) shelf life will start. The other set will remain unprepared and at shelf life stability (longer). In the 0/2 example, zero of two sets are remaining in the container. In some implementations, individual graphical elements, such as graphical element 100, may be selected to obtain more information about given container represented by that graphical element, such as any of the information stored on the container’s EID tag. The arrangement of the UI elements on the UI are examples only. There can be other elements and other arrangements
The techniques described herein is not limited to use in a medical diagnostic context, but rather may be used in any appropriate system context that involves tracking containers inside a system and between systems.
The control system described herein may be implemented using computing systems or any other appropriate computing device. The control system can be implemented, at least in part, using one or more computer program products, e.g., one or more computer program tangibly embodied in one or more information carriers, such as one or more non-transitory machine-readable media, for execution by, or to control the operation of, one or more data processing apparatus, e.g., a programmable processor, a computer, multiple computers, and/or programmable logic components.
A computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a network.
Actions associated with implementing all or part of the control system can be performed by one or more programmable processors executing one or more computer programs to perform the functions described herein. All or part of the control system can be implemented using special purpose logic circuitry, e.g., an FPGA (field programmable gate array) and/or an ASIC (application-specific integrated circuit).
Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor will receive instructions and data from a read-only storage area or a random-access storage area or both. Elements of a computer (including a server) include one or more processors for executing instructions and one or more storage area devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from, or transfer data to, or both, one or more machine-readable storage media, such as mass storage devices for storing data, e.g., magnetic, magneto-optical disks, or optical disks. Machine-readable storage media suitable for embodying computer program instructions and data include all forms of non-volatile storage area, including by way of example, semiconductor storage area devices, e.g., EPROM, EEPROM, and flash storage area devices; magnetic disks, e.g., internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks.
Elements of different implementations described herein may be combined to form other embodiments not specifically set forth above. Elements may be left out of the structures described herein without adversely affecting their operation. Furthermore, various separate elements may be combined into one or more individual elements to perform the functions described herein.