Claims
- 1. A control and communications system for a biological laboratory having at least one sample analyzer and biological data processor, the system comprising:
a client component having a user interface that allows a user to gain access and control or monitor the operation of biological instruments in the biological laboratory; a plurality of instrument components associated with each of the plurality of instruments, wherein the plurality of instrument components include an instrument component for a sample analyzer that receives commands selected from at least one pre-set list of commands from the control system and translates the commands into a format that induces an associated sample analyzer to obtain identification information about the biological sample and an instrument component for biological data processor receives commands selected from at least one pre-set list of commands from the control system and translates the commands into a format that induces an associated biological data processor to analyze the identification information obtained by the sample analyzer and provides signals indicative of the analysis; at least one directory that provides information to the client component as to the logical location of the plurality of instrument components such that the client component can determine how to access the plurality of instrument components by reference to the at least one directory wherein the at least one directory includes information about the at least one pre-set list of commands that the client component can use to send signals to the plurality of instrument components to induce the sample analyzer to obtain the identification information and to induce the biological data processor to analyze the identification information; a messaging service that transmits messages to and from the plurality of instrument components and the client component in a standardized format wherein the messaging service, the at least one directory and the client component are configured such that additional instruments can be added to the laboratory by associating an instrument component with the instrument and updating the at least one directory with information about the logical location of the instrument component so that the client component can become aware of the additional instruments by accessing the at least one directory.
- 2. The system of claim 1, wherein the instrument component for a sample analyzer is a component for a sequence analyzer or bioinformatics platform that analyzes DNA, RNA or protein constituents of biological samples.
- 3. The system of claim 1, wherein the instrument component for a biological data processor is a component a biological data processor that performs one or more of the following functions: single nucleotide polymorphism analysis, structural analysis, and homology analysis.
- 4. The system of claim 1, wherein the plurality of instrument components further includes instrument components for at least one thermal cycler.
- 5. The system of claim 1, wherein the plurality of instrument components further includes instrument components for at least one robot, the robot equipped to locate and physically transfer biological samples.
- 6. The system of claim 1, further comprising at least one instrument type server that is associated with a specific instrument type and which responds to a set of pre-defined instrument type commands by providing data which describe instrument parameters; and
wherein the at least one directory contains information identifying each of the plurality of instruments and contains information identifying the type and logical address of at least one instrument type server.
- 7. The system of claim 6, wherein at least one directory responds to a request by the client component for information about a requested instrument or instrument type server with a response containing a logical address for at least one instrument component associated with the requested instrument or for the instrument type server so that the client can utilize the logical address to communicate with the instrument component or instrument type server via the messaging service.
- 8. The system of claim 7, wherein the client assigns a duty of the requested instrument at a high-level without having to worry about the instrument-specific details of the instrument wherein such details are provided by the at least one directory.
- 9. The system of claim 6, wherein:
the information contained in the at least one directory identifying each of the plurality of instruments includes information identifying one or more of the following: instrument type, instrument groups, unique instrument serial numbers, instrument availability, and physical locations for instruments; and the at least one directory provides at least some of this information to the client component in response to a request by the client component to thereby permit a user to evaluate the available instrument in the laboratory.
- 10. The system of claim 6, wherein:
the information contained in the at least one directory identifying each of the plurality of instruments includes a list of topics under which messages will be published by at least one instrument component associated with each instrument; the messaging service allows user-interfaced clients to register to receive all messages published by an instrument component that correspond to a topics selected by the client component; and the messaging service responds to publication request for a message under an associated topic from an instrument component by sending the message to each of the at least one user-interfaced clients that registered to receive messages under that topic.
- 11. The system of claim 6, wherein:
the instrument directory implements the Java Naming and Directory Interface; the messaging service implements the Java Messaging service; each pre-set list of commands comprises a pre-defined Java interface; and the set of pre-defined instrument type commands comprises a predefined Java interface.
- 12. The system of claim 11, wherein each instrument component implements at least one interface whose enumerated methods provide for one or more of the following: control for a biological instrument by implementing the predefined instructions, receiving instrument status information, receiving instrument history information, and transmitting container and assay information to an instrument.
- 13. The system of claim 12, wherein each instrument component comprises a plurality of software modules, including:
a state model module, which maintains an instrument state that corresponds to a pre-defined general instrument state model, wherein the at least one interface implementing pre-set commands contains a plurality of commands for causing transitions within the state model; and a translation module, which translates commands received via the at least one interface implementing commands for causing transitions within the state model and translates these commands into commands which are understood by the instrument hardware.
- 14. The system of claim 6, wherein the data which describe instrument parameters that is provided by each instrument type server includes data describing container and assay parameters and data describing manual control parameters for all instruments of the instrument type associated with the instrument type server.
- 15. The system of claim 14, wherein the data which describe instrument parameters that is provided by each instrument type server comprises XML data corresponding to at least one pre-defined schema.
- 16. The system of claim 14, wherein:
at least one pre-defined set of instructions implemented by an instrument component associated with an instrument includes a manual control command which takes pre-defined command lines and parameters as input and directly controls the instrument hardware based on the commands and parameters; and the pre-defined command lines and parameters are provided by an instrument type server associated with the instrument to which the manual control command is associated.
- 17. The system of claim 1, wherein the at least one directory is configured to include information about software applications being used in the system and wherein addition of a new application to the system can be facilitated by updating the at least one directory to include information about the new application thereby allowing the new application to be integrated into the system.
- 18. The system of claim 1, wherein the system is configured to provide a hardware sharing layer that allows simultaneous connection to an instrument having a limited number of access ports by multiple clients.
- 19. The system of claim 18, wherein the hardware sharing layer supports Java and non-Java based clients.
- 20. The system of claim 18, wherein the hardware sharing layer supports web-browser based connectivity.
- 21. The system of claim 18, wherein the hardware sharing layer allows one connected client to be informed of the activity of another connected client.
- 22. The system of claim 18, wherein the hardware sharing layer is configured to provide a deliverable communications implementation in the absence of a full data collection infrastructure.
- 23. The system of claim 18, wherein the hardware sharing layer is configured to be substantially independent of underlying communications layers and instrument specific implementations so as to provide for improved compatibility and flexibility.
- 24. A communications and control system for a biological laboratory having at least one user-interfaced client for controlling and monitoring biological assays and a plurality of instruments, each with at least one associated logical component, for obtaining identification information about biological samples, the system comprising:
a plurality of logical components for the instruments that receive commands from the laboratory management system and instruct the plurality of instruments to process at least one biological sample; wherein the plurality of logical components include at least one sample analyzer logical component for at least one sample analyzer that receives commands from the management system such that the at least one sample analyzer is instructed by the at least one sample analyzer logical component to obtain identification information about the biological sample; a central management component in communication with the laboratory management system, wherein the central management component identifies at least one pre-defined set of instrument instructions for controlling the operation of the plurality of instruments or for communicating with the plurality of instruments; wherein the central management component has at least one data structure that identifies the logical location of the plurality of logical components including the at least one sample analyzer logical component; and wherein additional instruments having associated logical components can be added to the management system by updating the data structure as to the logical location of the logical component of the additional instrument such that the management component is made aware of the logical location of the logical components associated with the instrument and the additional instrument can be controlled by a user via the user-interfaced client connected to the central management component by allowing the user-interfaced client to become aware of the additional instrument by accessing the data structure of the central management component.
- 25. The system of claim 24, wherein the at least one sample analyzer includes one at least one sequence analyzer or bioinformatics platform that analyze DNA, RNA or protein constituents of biological samples.
- 26. The system of claim 24, wherein the plurality of logical components further includes logical components for at least one thermal cycler.
- 27. The system of claim 24, wherein the plurality of logical components further includes logical components for at least one robot, the robot equipped to locate and physically transfer biological samples.
- 28. The system of claim 24, wherein the plurality of logical components includes logical components for at least one of biological data processor that performs one or more of the following functions: single nucleotide polymorphism analysis, structural analysis, and homology analysis.
- 29. The system of claim 24, wherein the central management component comprises:
at least one instrument type server that is associated with a specific instrument type and which responds to a set of pre-defined instrument type instructions by providing data which describe instrument parameters; an instrument directory that contains information identifying each of the plurality of instruments, including indicators of the at least one logical component associated with each of the plurality of instruments, identifies at least one pre-defined set of instructions implemented by the logical components, and contains information identifying the type and logical address of at least one instrument type server; and a messaging service that transmits communications between the plurality of instruments.
- 30. The system of claim 29, wherein the central management component responds to a request by one of the at least one user-interfaced clients for information about a requested instrument or instrument type server with a response containing a logical address for at least one logical component associated with the requested instrument or for the instrument type server so that the management system can utilize the logical address to communicate with the logical component or instrument type server via the messaging service.
- 31. The system of claim 30, wherein the client assigns a duty of the requested instrument at a high-level without having to worry about the instrument-specific details of the instrument wherein such details are provided by the at least one directory.
- 32. The system of claim 30, wherein:
the information contained in the instrument directory identifying each of the plurality of instruments includes information identifying one or more of the following: instrument type, instrument groups, unique instrument serial numbers, instrument availability, and physical locations for instruments; and the central management component provides at least some of this information to at least one user-interfaced client in response to a request by a user-interfaced client to thereby permit a user to evaluate the available instrument in the laboratory.
- 33. The system of claim 30, wherein:
the information contained in the instrument directory identifying each of the plurality of instruments includes a list of topics under which messages will be published by at least one logical component associated with each instrument; the messaging service allows user-interfaced clients to register to receive all messages published by a logical component that correspond to topics selected by the user-interfaced clients; and the messaging service responds to publication request for a message under an associated topic from a logical component by sending the message to each of the at least one user-interfaced clients that registered to receive messages under that topic.
- 34. The system of claim 30, wherein:
the instrument directory implements the Java Naming and Directory Interface; the messaging service implements the Java Messaging service; each pre-defined set of instrument instructions comprises a predefined Java interface; and the set of pre-defined instrument type instructions comprises a predefined Java interface.
- 35. The system of claim 34, wherein each logical component implements at least one interface whose enumerated methods provide for one or more of the following: control for a biological instrument by implementing the pre-defined instructions, receiving instrument status information, receiving instrument history information, and transmitting container and assay information to an instrument.
- 36. The system of claim 35, wherein the logical component comprises a plurality of software modules, including:
a state model module, which maintains an instrument state that corresponds to a pre-defined general instrument state model, wherein the at least one interface implementing pre-defined instructions contains a plurality of commands for causing transitions within the state model; and a translation module, which translates commands received via the at least one interface implementing commands for causing transitions within the state model and translates these commands into commands which are understood by the instrument hardware.
- 37. The system of claim 30, wherein the data which describe instrument parameters that is provided by each instrument type server includes data describing container and assay parameters and data describing manual control parameters for all instruments of the instrument type associated with the instrument type server.
- 38. The system of claim 37, wherein the data which describe instrument parameters that is provided by each instrument type server comprises XML data corresponding to at least one pre-defined schema.
- 39. The system of claim 37, wherein:
at least one pre-defined set of instructions implemented by a logical component associated with an instrument includes a manual control command which takes pre-defined command lines and parameters as input and directly controls the instrument hardware based on the commands and parameters; and the pre-defined command lines and parameters are provided by an instrument type server associated with the instrument to which the manual control command is associated.
- 40. The system of claim 24, wherein the at least one directory is configured to include information about software applications being used in the system and wherein addition of a new application to the system can be facilitated by updating the at least one directory to include information about the new application thereby allowing the new application to be integrated into the system.
- 41. The system of claim 24, wherein the system is configured to provide a hardware sharing layer that allows simultaneous connection to an instrument having a limited number of access ports by multiple clients.
- 42. The system of claim 41, wherein the hardware sharing layer supports Java and non-Java based clients.
- 43. The system of claim 41, wherein the hardware sharing layer supports web-browser based connectivity.
- 44. The system of claim 41, wherein the hardware sharing layer allows one connected client to be informed of the activity of another connected client.
- 45. The system of claim 41, wherein the hardware sharing layer is configured to provide a deliverable communications implementation in the absence of a full data collection infrastructure.
- 46. The system of claim 41, wherein the hardware sharing layer is configured to be substantially independent of underlying communications layers and instrument specific implementations so as to provide for improved compatibility and flexibility.
- 47. A method of controlling the operation of a biological laboratory, the method comprising:
associating an instrument component with a biological sample analyzer such that the instrument component translates received instructions to the biological sample analyzer so that the biological sample analyzer can be instructed to capture identification information about a biological sample; associating an instrument component with a biological data processor such that the instrument component translates received instructions to the biological data processor so that the biological data processor can be instructed to analyze identification information captured by the biological sample analyzer; maintaining a directory of the logical location of each of the instrument components within the laboratory such that a user interface can determine how to access an instrument to implement a process using the directory; and adding an additional instrument into the biological laboratory by associating an instrument component to the newly added instrument and updating the directory as to the location of the instrument component such that the new instrument can be discovered and accessed by the user interface to implement a process by using the directory.
- 48. The method of claim 47, further comprising maintaining in the directory of logical locations information for each of the instrument components within the laboratory such that a user interface can determine by accessing the directory which of at least one pre-set list of instructions are implemented by each instrument component so that the user interface can access an instrument to implement a process.
- 49. The method of claim 48, wherein an instrument to be accessed during the implementation of the process is assigned to the process at the beginning of the process.
- 50. The method of claim 48, wherein an instrument to be accessed during the implementation of the process is selected from one or more of similar instruments after the commencement of the process.
- 51. The method of claim 50, wherein the selection of the instrument is performed just prior to the access of the instrument, thereby improving the manner in which resources are utilized.
- 52. The method of claim 48, further comprising transmitting signals between the user interface and the instrument components using a pre-set list of instructions which are then translated by the instrument component and provided to the instrument to thereby control the instrument.
- 53. The method of claim 52, wherein associating an instrument component comprises drafting a translation process to translate the standard set of instructions into instructions that the instrument is pre-programmed to implement.
- 54. The method of claim 47, wherein the biological sample analyzer can be instructed to analyze DNA, RNA or protein constituents of biological samples.
- 55. The method of claim 47, wherein the biological data process can be instructed to perform one of the following functions: single nucleotide polymorphism analysis, structural analysis, and homology analysis.
- 56. The method of claim 47, further comprising maintaining at least one set of instrument type information such that the user interface can determine instrument type parameters by accessing a server where the type information is maintained through a pre-set list of instrument type commands.
- 57. The method of claim 47, further comprising transmitting a signal to the user interface to indicate that an additional instrument is available in the laboratory.
- 58. The method of 47, further comprising:
maintaining in the directory of information for each instrument a list of topics under which message will be published by at least one instrument component associated with each instrument; registering the user interface with a messaging service such that the user interface can receive all messages published by an instrument component that correspond to topics selected by the user interface; and transmitting messages under a listed topic name to the messaging service so that the messages will be sent to every user interface that registered to receive messages under the listed topic.
- 59. The method of claim 56, further comprising responding to a request by the user interface for information about a requested instrument or instrument type with a response containing a logical address for at least one instrument component associated with the requested instrument or with a logical address for a server containing a set of instrument type information for the requested type so that the user interface can access the requested instrument or instrument type information through a messaging service.
- 60. The method of claim 59, wherein responding to the request by the user allows the user manage the instrument at a high-level without having to worry about the instrument-specific details of the instrument wherein such details are provided by the directory.
- 61. The method of claim 56, wherein determining instrument type parameters comprises receiving XML data corresponding to at least one pre-defined schema describing instrument type parameters.
- 62. The method of claim 47, wherein the directory is configured to include information about software applications being used and wherein addition of a new application can be facilitated by updating the directory to include information about the new application thereby allowing the new application to be integrated.
CLAIM OF PRIORITY
[0001] This U.S. patent application claims priority to U.S. Provisional Patent Application No. 60/386,296 entitled “Informatics System Architecture” filed Jun. 4, 2002 and U.S. Provisional Patent Application No. 60/411,574 entitled “Integration Instructions For Informatics System Architecture” filed Sep. 16, 2002 which are hereby incorporated by reference. Additionally, this application relates to the following co-pending applications filed on the same date which are hereby incorporated by reference in their entirety: attorney docket number ABIOS.044A entitled “System And Method For Open Control And Monitoring Of Biological Instruments”, attorney docket number ABIOS.046A entitled “System And Method For Providing A Standardized State Interface For Instrumentation”, and attorney docket number ABIOS.047A entitled “System And Method For Generating User Interfaces For Different Instrument Types”.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60386296 |
Jun 2002 |
US |
|
60411574 |
Sep 2002 |
US |