Chemical analysis systems and instruments are designed to process and analyze large numbers of samples. These systems are used in various fields, such as, for example, agrochemical, pharmaceutical, cosmetics, petrochemical, etc. Currently, these various fields use different strategies to reduce the processing time of samples, including such methods as simplified chemistry, semi-automation and robotics. Although these methods may reduce the processing time for particular samples, it has not proven effective in reducing the processing time or sample throughput for the system as a whole with respect to multiple and varied samples. As a result, for many years chemical analysis instruments have had a problem of low throughput that, for example, prevents the analytical chemistry screening to catch up to the biology high throughput screening for drug discovery.
In processing and analyzing chemical samples, as the complexity of the chemistry of the sample increases so does the complexity of the processing and analysis and the processing and analysis times involved. Where chemical samples are being processed and analyzed, such as, for example, for the pharmaceutical industry, the processing is usually complicated, and involves a large number of different samples requiring a variety of reagents and processing steps. These multiplicity of samples and different processing requirements results in a much slower throughput for the chemical analysis systems.
These systems are particularly lacking in the ability to function efficiently in an open laboratory environment because of a number of system constraints. For example, existing systems do not provide for the automatic loading of a large number of chemical samples in a single operation as a walk-up process or a pre-operational process, in an open laboratory environment. Another example of a constraint of the existing systems is the lack of multiple individual injection channels that allow for the processing of multiple samples simultaneously or intelligently.
One system currently available in the market and in operation is the Agilent 1100 Auto Well-Plate Sampler that operates using ChemStation software. This system provides for a user to stack a number of microtiter plates containing samples in a single stacker, and allows the user to submit the samples one plate after the other as a “HyperSequence.” This stacking allows the system to queue up the plates. However, this process of sample loading is very inefficient as it requires the user to spend an inordinate amount of time at the Sampler loading and entering information into the system for sample processing and analysis purposes, thereby requiring other users to wait and experience delays in the submission of their samples until the prior user has completed the information entry process.
There is, therefore, a need for a system that provides for expedited sample data entry and loading and reduced waiting time for sample loading by multiple users.
The present invention provides a system and method for high throughput sample loading and processing. The present invention solves the problems encountered by the prior art by simplifying the data entry and data preparation process for sample preparation and providing for an autonomous sample load/data grab for sample processing.
The present invention allows a user to prepare samples in any computer by entering the information needed by the system to run the samples and place that information in a file, such as, for example, a CSV file. The file may be placed in a location or on media that can be accessed by the system. The user may then place the samples, for example, plates of samples, with or without barcoding, that the user would like run, in the system. The user may then place the previously prepared file corresponding to the samples in the system at a location for sample-loading files. The user requires no further interaction with the system prior to completion of the sample run. This procedure may be repeated by any number of users. The system will automatically scan the sample-loading file location for sample-loading files. The system will take the sample-loading files and build sequences for each of the samples referenced in the file. The system will then queue to the Hypersequence and run the samples one by one.
A chemical sample loading and processing system for high throughput processing, comprising: a processor; a memory coupled to the processor, the memory having located therein at least one data file having a plurality of sets of information, and a software program, the software program including instructions for the processor to: correlate each of the plurality of sets of information in the at least one data file with at least one sample, and control the automatic and sequential processing of each of a plurality of samples; a stacker, the stacker holding each of the plurality of samples to be processed; a chemical analyzer coupled to the processor and to the stacker, the chemical analyzer processing each of the plurality of samples; wherein the at least one data file is at least one of generated in advance of loading of the plurality of samples into the stacker and transferred to the memory and generated in real time as the samples are loaded into the stacker.
A method for chemical sample loading and processing for a high throughput processing system, comprising: entering sample data for a plurality of samples into a data file; loading the plurality of samples into a chemical analyzer system; transferring the data file to a memory; processing each of the plurality of samples with reference to the sample data in the data file; wherein the sample data for each of the plurality of samples is entered into the data file at least one of prior to the loading of the plurality of samples into the chemical analyzer system and in real time concurrently with the loading of each of the plurality of samples into the chemical analyzer system.
A computer program product for use with a chemical analyzer system, said computer program product comprising: a computer usable medium having computer readable program code embodied therein for chemical sample loading and processing, the computer readable program code including computer readable program code for correlating each of the plurality of sets of information in at least one data file with at least one sample; and computer readable program code for controlling the automatic processing of each of a plurality of samples with reference to corresponding sample data in the at least one data file, wherein the sample data for each of the plurality of samples is entered into the data file at least one of prior to the loading of the plurality of samples into the chemical analyzer system and in real time concurrently with the loading of each of the plurality of samples into the chemical analyzer system.
When a properly formatted file, such as, for example, a CSV file, is added to the sample-loading file location, the system will automatically perform sample loading. This automatic sample loading will allow for the system to perform automatic sample running.
The present invention can be used with and incorporate multiple file formats and content for specific application. It can also be used with multiple and various instruments to accommodate a variety of lab practice standards, requirements and management.
The present invention can also provide for storage of data files and/or the automatic sample loading program at a remote server for download by a user or automatically from the chemical analyzer system through a local area network, wide area network, Internet or other connection.
The system can provide for automatic entry of sample data or manual entry of sample data using a scanner, such as, for example, a bar code scanner in conjunction with labels or other identifying information attached to or maintained in conjunction with the samples.
The present invention provides for improved system throughput and productivity, and allow for automatic sample loading in an open access environment.
The term sample refers to a compound or portion of a compound.
The term stacker refers to one or more pieces of equipment for holding samples to be provided for a chemical analyzer.
The term scanner refers to a device, such as for example, a laser or CCD barcode scanner, RFID reader, OCR text reader or some other type of reader, that is used to read information relating to a sample.
The term chemical analyzer refers to an instrument for analyzing the chemical composition, structure, physical or other structure of a sample.
The term sequence refers to running a batch of samples as a single job on a plate (which includes multiple wells for loading samples structured as a 2-dimensional matrix) or on a vial tray (arranged as a 2-dimensional matrix). The samples can be run in any order as is set up in the sequence table. Each sample can each be run using different methods and parameters as set forth in the sequence table. The sequence table is structured as a table having one or more rows and includes information such as row number, sample location, sample type, method name (for running the sample), injection volume and number of injections per location and may include additional information such as target mass, calibration level, among other things. Each row includes all of the parameters required to run an individual sample. The system reads the information in the sequence table sequentially row by row.
The term Hypersequence refers to a ChemStation process whereby one or more sequences are run by the system. A Hypersequence table is created that includes one or more rows of information relating to one or more sequences that are to be run by the system automatically and sequentially in the order as set out in the table. The information that is included in the Hypersequence table includes the row number, the barcode, the plate type, and the sequence name.
The term ChemStation refers to commercially available software from Agilent Technologies, Inc. for controlling Agilent HPLC and LC/MS single quadropole systems all of the elements of which are hereby incorporated by reference.
In
Looking at
User 21 can generate the CSV files manually before entering the lab, or use a barcode scanner 17 controlled by a customized software program loaded into the system to scan the plate with a barcode which was registered with or corresponds to information required in the CSV file. The system then generates the CSV file automatically according to the barcode detected. In step 37 the CSV file entry generated by each scan of a barcode is sent to the processor 3 and stored in the sample-loading file pool 9. Alternatively, in step 35, the user 21 may create CSV files manually or by using other software for the plates. This pre-generated CSV file may be loaded by the user 21 into the processor 3 and stored in the sample-loading file pool 9 for automatic upload by the system.
In step 38, the user loads the plates 19 into the loading stacker 11 until the stacker is full, although the user does not have to fill the stacker. User 21 also makes sure the system is up and running with ChemStation software and enables the barcode detection in ChemStation software. Upon completion of a loading of the loading stacker by a user, a next user may begin scanning plates or the loading of a pre-generated CSV file into the sample-loading file pool and loading the plates into the loading stacker 13. A user may alternatively remotely load a pre-generated CSV file into the sample-loading file pool from a remote location. The sample-loading file pool may alternatively be located at a remote server. The operation of user loading plates to the loading stacker does not invoke the system to start running the plates. As in step 39, the “auto CSV loader” software continuously looks for any CSV file left in the sample-loading file pool. In step 40, when the “auto CSV loader” software detects a CSV file in the sample-loading file pool, it automatically reads the CSV file and converts the information in the CSV file to a sequence readable by the LC or LC/MS instrument. In step 41, the system queries whether a Hypersequence is running. If the LC/MS instrument is running a Hypersequence, in step 43 the “auto CSV loader” software appends the sequence linking with the barcode obtained from the CSV file to the Hypersequence table. The sequence contains the sample run information obtained of all samples from the CSV file and places the samples in order. If the LC/MS instrument is not running a Hypersequence at this time, in step 45 the “auto CSV loader” software sends commands to the LC/MS instrument through the ChemStation software to start executing the Hypersequences in the Hypersequence table. If the instrument is running a Hypersequence already, in step 46 an inquiry is made to see whether the current Hypersequence is complete. In step 47, when the current sequence is finished, the next sequence in the Hypersequence table will be queued and executed. If not finished the system continues to query for an end to the Hypersequence.
Once a Hypersequence is executed, in step 49 the system starts transferring the next plate from the loading stacker, and if the barcode scanner 12 in
In
If no errors are detected in step 77, then in step 81 the information from the CSV file is converted into sequence information recognized by the system to run the samples. After the CSV file is converted, in step 83 the system again checks for errors, this time in the converted data. If an error is detected the file is moved to the failed file pool where it may be modified, moved back to the sample-loading file pool, or ignored or discarded by user 21. If no error is detected, in step 85 the system adds the sequence information linking the barcode from the CSV file to the system Hypersequence storage. In step 87 the CSV file is moved to the complete pool where it can be accessed at a later point in time. In step 89, the system checks and makes sure the Hypersequence is ready to start running for the new plate. If the Hypersequence is not ready the system sets a delay in step 91 and cycles back to the query. If the Hypersequence is ready, in step 93, the system moves the plate from the loading stacker to the barcode scanner 12, and scans the plate. In step 95, when a barcode is detected, the system looks through the Hyperseqeunce storage to find the matching sequence for the plate. In step 96 the system determines whether a matching sequence is found. If a match is found, in step 97, the system will load the correct sequence and start processing the plate. If no matched barcode is found in the Hypersequence storage, in step 99, the system will move the plate to the waste stacker. In step 101, the system periodically queries whether the Hypersequence is idle. If not, the system returns to step 93 and moves the next plate from the loading stacker. Upon a detection of an idle condition of the Hypersequence, the system will return to step 71 and check to see if any files are sitting in the pending pool. If there are files in the pending pool, the system will begin running the file.