Multi-tier software architecture for operating diagnostic laboratory systems

Through the dynamic routing algorithm of multi-layer software architecture, the problem of inflexible sample container routing in diagnostic laboratory systems is solved, efficient transportation and flexible configuration are achieved, adapting to different laboratory layouts and hardware changes, and reducing update costs.

CN119173768APending Publication Date: 2024-12-20SIEMENS HEALTHCARE DIAGNOSTICS INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380038352.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-05-05
Filing Date
2023-05-04
Publication Date
2024-12-20

AI Technical Summary

Technical Problem

Existing diagnostic laboratory systems are inflexible in sample container routing, resulting in inefficient sample transport and require large-scale customization or updates of each laboratory layout to accommodate hardware changes, which is time-consuming and expensive.

Method used

Dynamic routing algorithms using multi-layer software architecture are used to realize intelligent routing by separating the software layers, allowing each layer to independently design, develop and execute, adapt to different laboratory configurations, and only the corresponding software modules need to be updated to change the electrical specifications of hardware components.

Benefits of technology

Improves the transportation efficiency of laboratory systems, provides flexible laboratory configuration and hardware changes adaptability, and reduces the time and cost of customization and updates.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119173768A_ABST
    Figure CN119173768A_ABST
Patent Text Reader

Abstract

A diagnostic laboratory system includes one or more instruments and a transfer system configured to transfer sample containers to and from the one or more instruments, where each sample container contains a biological sample. The computer is configured to execute a program to control operation of the diagnostic laboratory system. The program has an architecture that includes a plurality of individually replaceable software modules, wherein one or more software modules identify at least one test to be performed on a biological sample or plan at least one stage thereof. Another software module generates instructions to move the one or more sample containers toward or away from the one or more instruments in accordance with the at least one test or at least one phase thereof. A method of operating a diagnostic laboratory system is also disclosed.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims the benefit of U.S. Provisional Patent Application No. 63 / 364,258, filed on May 5, 2022, entitled “MULTI-LAYER SOFTWARE ARCHITECTURE FOR OPERATING DIAGNOSTICLABORATORY SYSTEMS,” the disclosure of which is hereby incorporated by reference in its entirety for all purposes. Technical Field

[0003] The present disclosure relates to a software architecture for operating a diagnostic laboratory system. Background Art

[0004] Diagnostic laboratory systems perform tests to identify analytes or other components in biological samples, such as serum, plasma, urine, interstitial fluid, cerebrospinal fluid, etc. The samples may be contained in sample containers and / or transported throughout the laboratory system in sample containers. The samples are typically routed to a number of different instruments in the laboratory system for processing and analysis.

[0005] Many laboratory systems route samples to their destinations based on a set of heuristic rules that determine the route each sample container should take. Such routing techniques can result in inefficient transportation of sample containers, which can include traffic jams of sample containers throughout the laboratory system. Current sample container routing programs are inflexible and therefore require considerable customization for each new laboratory layout, or considerable updates to accommodate hardware changes to existing laboratory layouts, which can be both time consuming and expensive. Therefore, there is a need for systems and methods for operating diagnostic laboratory systems and transporting sample containers that provide flexibility for different laboratory configurations and hardware changes thereto. Summary of the invention

[0006] According to a first aspect, a diagnostic laboratory system for analyzing biological samples is provided. The diagnostic laboratory system includes at least one instrument for preparing or testing biological samples, and a transport system configured to transfer sample containers to and from the at least one instrument. The sample container contains the biological sample to be analyzed therein, and the transport system includes a plurality of sample carriers, track segments, and track switches. The diagnostic laboratory system also includes a computer configured to execute a program to control the operation of the diagnostic laboratory system. The program has an architecture including a plurality of individually replaceable software modules that communicate with each other. The plurality of individually replaceable software modules include a first software module for identifying at least one test to be performed on the biological sample or planning at least one phase thereof. The plurality of individually replaceable software modules also include a second software module for generating instructions to the transport system to move the sample container toward or away from the at least one instrument according to the at least one test or at least one phase thereof, wherein a change in the electrical specifications of the hardware components of the transport system requires only an update of the second software module.

[0007] In another aspect, a method of operating a diagnostic laboratory system for analyzing biological samples is provided. The method includes, in response to receiving input at a first software module, identifying at least one test to be performed on the biological sample using the first software module. The input is received from a workstation of the diagnostic laboratory system or from an external source. The first software module is part of a program that includes a plurality of individually replaceable software modules that communicate with each other and that is executed on a computer to control the operation of the diagnostic laboratory system. The method also includes using the first or another software module of the program to plan at least one phase of at least one test, and using a second software module of the program to generate instructions to a transport system of the diagnostic laboratory system to move a sample container containing the biological sample toward or away from an instrument of the diagnostic laboratory system according to at least one test or at least one phase thereof, wherein changes in the electrical specifications of the hardware components of the transport system require only updating the second software module. The method also includes, in response to the generated instructions, using the transport system to transport the sample container.

[0008] Still other aspects, features and advantages of the present disclosure may be readily apparent from the following description and illustration of a number of exemplary embodiments, including the best modes contemplated for implementing the present disclosure. The present disclosure may also have other and different embodiments, and its several details may be modified in various aspects, all without departing from the scope of the present disclosure. The present disclosure is intended to cover all modifications, equivalents and substitutes falling within the scope of the claims and their equivalents. BRIEF DESCRIPTION OF THE DRAWINGS

[0009] The following drawings are provided for illustrative purposes and are not necessarily drawn to scale. Therefore, the drawings and descriptions should be considered illustrative in nature and not restrictive. The drawings are not intended to limit the scope of the present disclosure in any way.

[0010] Figure 1A A block diagram of a diagnostic laboratory system including a plurality of instruments and a plurality of track segments connecting the instruments is shown in accordance with one or more embodiments.

[0011] Figure 1B A method for Figure 1A Example transfer system for a laboratory system.

[0012] Figure 2 A roadmap is shown illustrating routes that a sample container may take within a laboratory system in accordance with one or more embodiments.

[0013] Figure 3 According to one or more embodiments, Figure 1A compared to a laboratory system with a different configuration and more instruments.

[0014] Figure 4 Software layers and their relationships to each other are shown, wherein the software layers can operate independently of each other, according to one or more embodiments.

[0015] Figure 5 It shows that one or more embodiments can be implemented Figure 4 Individually replaceable software modules of the layer.

[0016] Figure 6 A flow chart illustrating a method of operating a diagnostic laboratory system in accordance with one or more embodiments is shown. DETAILED DESCRIPTION

[0017] Diagnostic laboratory systems perform clinical chemistry and / or assays to identify analytes or other components in biological samples, such as serum, plasma, urine, interstitial fluid, cerebrospinal fluid, etc. Biological samples are collected in sample containers and transported via the sample containers to instruments throughout the laboratory system where the samples are processed and analyzed. For example, an instrument may prepare a sample for testing and then perform a test on the sample.

[0018] Conventional laboratory systems route samples to their destinations based on a set of heuristic rules that determine the route each corresponding sample container should take. These heuristic rule sets may result in unnecessary transportation of sample containers, which makes the laboratory system inefficient.

[0019] Embodiments disclosed herein overcome the sample handling and transport problems of conventional laboratory systems. The laboratory system described herein uses a dynamic routing algorithm implemented in software having an architecture divided into multiple software layers. Each layer can be designed, developed, tested, and executed independently of each other, which enables the same architecture to be easily extended for a wide variety of laboratory configurations.

[0020] In some embodiments, a multi-layer software architecture extracts a logical set of planned tasks and / or workflows to be completed from the physical transport layer that activates the hardware components. By separating the layers, intelligent routing can be performed to improve the efficiency of the laboratory system without affecting other tasks and / or workflows performed by other layers. In addition, the separation of the layers can include clear interfaces, which enables the first layer to be replaced or modified without affecting the other layers. The layers are software components of the architecture that are interconnected in sequence, can exchange inputs and outputs with adjacent downstream and / or upstream layers, and can execute independently and in parallel. For example, a first layer can execute with a first set of inputs independently of a second layer, and the second layer can execute concurrently with a second set of inputs received from the first layer.

[0021] refer to Figure 1A-Figure 6 , these and other embodiments of laboratory systems and methods of operating laboratory systems are described in more detail.

[0022] refer to Figure 1A , which shows a block diagram of an embodiment of a diagnostic laboratory system 100. The laboratory system 100 may include a plurality of instruments 102 configured to process biological samples and sample containers 104 (several are labeled) and perform assays or tests on the samples. The samples may be any biological specimen collected from, for example, a human or an animal. The samples may be collected in sample containers 104 and delivered to the laboratory system 100, where they may be transported throughout the laboratory system 100, such as to different ones of the instruments 102. Figure 1A In the embodiment of the present invention, the system 100 has three instruments 102, which include a sample handler 114, a first analyzer 116 and a second analyzer 118. The laboratory system 100 may include a sample handler 114, a first analyzer 116 and a second analyzer 118. Figure 1A More instruments are shown in .

[0023] Sample containers 104 with samples contained therein may be transported between one or more instruments 102 in the laboratory system 100. The laboratory system 100 may include a track 108 configured to move sample carriers (carriers 110—several are labeled) toward and away from the instruments 102. The sample containers 104 may be housed in the carriers 110 for movement throughout the laboratory system 100 on the track 108.

[0024] In some embodiments, the track 108 may extend near or around at least some of the instruments 102, such as Figure 1A As described herein, the portion of the instrument 102 may have a robot ( Figure 1A The sample handler 114 may be a device (not shown) that transfers sample containers 104 to and from a carrier 110 located on the track 108. For example, the sample handler 114 may move the sample container 104 to an empty carrier 110 that is moved to a specific position on the track 108 after the sample container 104 is received in the laboratory system 100. The sample handler 114 may also remove the sample container 104 from the carrier 110 when the carrier returns to the specific position on the track 108. When the sample container 104 is located at the specific position on the track 108, one or more instruments 102 may remove the sample from the sample container 104.

[0025] like Figure 1A As shown in , the track 108 may include a plurality of segments 120 (several are labeled) that may be interconnected. The segments 120 may include straight segments 120A, curved segments 120B, and switch segments 120C. The switch segments 120C may merge different segments of the segments 120 together, or the switch segments 120C may include a switch (not shown) that enables the sample container to be routed to at least the first track segment or the second track segment. The carrier 110 may move in the segments 120, as shown by the small dashed lines 121. In some embodiments, some of the segments 120 may be integral with one or more instruments 102. The instruments 102 may be arranged in a variety of configurations and may be accessed to the track 108.

[0026] A diagnostic laboratory system, such as the laboratory system 100, may have many instruments and may have tracks that link to other laboratory systems. A laboratory system including the laboratory system 100 may simultaneously move and process multiple carriers 110 and their respective sample containers. In some embodiments, the laboratory system 100 or other laboratory systems may simultaneously move and process hundreds or thousands of carriers 110 and their respective sample containers.

[0027] The track 108 can be part of a transport system that is configured to transport sample containers throughout the laboratory system 100. The transport system can also include a sample handler 114. In some embodiments, the transport system can include other components configured to transport sample containers. These components can include motors on the track 108 or the carrier 110 that can move the carrier 110 relative to the track 108. In some embodiments, the components can also include switches, etc., that guide the sample container 104 on one or more paths on the track 108. These components can be activated by a power supply, etc., and can be controlled by a computer (e.g., computer 130) as described herein.

[0028] Figure 1B The embodiment provided herein is shown Figure 1A Example transport system 122 of laboratory system 100. Figure 1B As shown in , in some embodiments, the transport system 122 may include a sample handler 114 and other components configured to transport sample containers. These components may include a motor (such as motor 124) on the track 108 or the carrier 110, which can move the carrier 110 relative to the track 108. In some embodiments, the components may also include a switch (such as switch 126) that guides the sample container 104 on one or more paths on the track 108. Other example components include sensors (e.g., sensor 128) for detecting the carrier 110. The various components of the transport system 122 can be activated by a power source / power supply (such as power supply 130), etc., and can be controlled by a computer (e.g., computer 130), as described herein.

[0029] The laboratory system 100 may include or be coupled to a computer 130 configured to execute a program configured to control the operation of the laboratory system 100. The computer 130 may be configured to communicate with the instrument 102 and other components of the laboratory system 100, such as components in a transport system. The computer 130 may include a processor 132 configured to execute a program, such as computer code, including the software described herein.

[0030] The computer 130 may include or have access to a memory 134 that may store one or more programs (e.g., software) and / or data. The memory 134 may include a routing program 136 that is configured to operate the laboratory system 100 and / or route the carrier 110 throughout the laboratory system 100, and thus route the sample container 104. The routing program 136 may include a plurality of different programs as described herein. Other programs may analyze the data generated by the instrument 102. The computer 130 may be coupled to a workstation 138 that enables a user to interface with the laboratory system 100. The workstation 138 may include a display 140 and a keyboard 142. In some embodiments, the memory 134, the routing program 136, and / or other programs may be referred to as non-transitory computer-readable media that include computer code that may be executed on the processor 132. In some embodiments, local and / or remote computers, workstations, and / or memories may be employed.

[0031] Additional references Figure 2 , which shows a route map 220 that shows the routes or paths that the sample container 104 can take within the laboratory system 100. The route map 220 corresponds to Figure 1A The small dotted line 121 in FIG. Figure 2 As shown in FIG. , the carrier 110 ( Figure 2 A number of routes (several are marked in FIG. 1 ) may be taken throughout the laboratory system 100. A routing program 136 operating the laboratory system 100 routes the carriers 110 to the appropriate instruments at scheduled times to keep the laboratory system 100 operating efficiently. In some embodiments, the routing program 136 may determine the most efficient path for one or more carriers 110 by taking into account the possibility of other carriers traveling on the same path.

[0032] The laboratory system 100 has various locations on the track 108 where operations can be performed. In some embodiments, the locations can have components controlled by the routing program 136. One or more locations can include a pick and place station 222 that can be configured to transfer sample containers 104 between the sample handler 114 and the carrier 110. The location can also include one or more cameras 224 that are configured to capture images of the sample container 104 and / or the carrier 110, such as at the pick and place station 222.

[0033] Some locations may be near or within the first analyzer 116 and may include a first aspiration station 216. Other locations may be near or within the second analyzer 118 and may include a second aspiration station 218. The first aspiration station 216 and the second aspiration station 218 may be locations to which the sample container 104 may be transferred so that the first aspiration station 216 and the second aspiration station 218 may aspirate the sample from the sample container 104. The first analyzer 116 and the second analyzer 118 may then process the sample in accordance with a test order that may be received in the laboratory system 100. The sample containers 104 may be routed so that they arrive at the first aspiration station 216 and the second aspiration station 218 at a specific time as determined by the routing program 136 to ensure efficient operation of the laboratory system 100.

[0034] Track 108 can comprise one or more positions that are implemented as input queue (IQ), wherein sample container 104 can queue up before entering station or instrument.Sample container 104 can move through first suction station 216 and second suction station 218 in two directions, so first analyzer 116 and second analyzer 118 can have input queue IQ on both sides of first suction station 216 and second suction station 218.Each input queue IQ can be associated with input processing queue IPQ and / or exit queue EQ.Track 108 can have one or more positions that are implemented as work queue WQ, and when sample container 104 waits to be processed, work queue WQ can queue up sample container 104.Sample disposer 114 can be associated with one or more positions that are implemented as preparatory queue (ODQ), and described preparatory queue can queue up carrier 110 to accommodate sample container 104.

[0035] The routing program 136 can generate instructions for moving the carrier 110 on the track 108 throughout the laboratory system 100. For example, a component in the transport system can be activated in response to the instructions, which can cause the sample container 104 to move on the track 108. For example, an electric current can be applied to a motor in the carrier 110 and / or a switch in the switch section 120C. In some embodiments, the routing program 136 can receive instructions indicating the test to be performed on each sample and whether the test has a priority. For example, the instructions can be received from a hospital information system (not shown) or another external source. The workstation 138 can also be used to receive instructions from a system operator.

[0036] Additional references Figure 3 , which shows that Figure 1A The laboratory system 100 has a laboratory system 300 with a different configuration. The laboratory system 300 includes more instruments 302 than the laboratory system 100, and the instruments 302 are arranged differently from the laboratory system 100. Figure 1AThe laboratory system 300 includes a sample handler 314, a first analyzer 316, a second analyzer 318, a third analyzer 320, and a fourth analyzer 322 arranged in an L shape. Therefore, the routing of the carrier 110 in the laboratory system 300 may be much more complicated than the routing of the carrier 110 in the laboratory system 100. In conventional laboratory systems, the routing program may be different for each configuration of the laboratory system. The routing program 136 described herein may include multiple software layers implemented in multiple individually replaceable software modules that enable the routing program 136 to be easily modified to operate other laboratory systems including the laboratory system 300. Therefore, unlike routing programs used in conventional laboratory systems, the routing program 136 described herein can be used in many different laboratory configurations.

[0037] The components in the laboratory system (which includes the laboratory system 100 and the laboratory system 300) can be broadly characterized as including a transport system, a carrier 110, and an instrument 102 / 302. The transport system includes rails 108 and other hardware that moves the carrier 110. The carrier 110 transports the sample container 104 throughout the laboratory system 100 / 300. The instrument 102 / 302 can include analyzers and modules to which the carrier 110 is directed by the routing program 136.

[0038] Back to Figure 1A , when the sample container 104 is introduced into the laboratory system 100, the sample container is loaded into one of the carriers 110. Depending on the processing and / or testing to be performed on the sample in the sample container 104, the carrier 110 is instructed to go to a specific set of destinations. The destination may include an instrument 102, which may include, for example, a centrifuge, a chemical analyzer, a decapper, a storage / refrigeration unit, and other components. The routing between destinations may be in a specific order. For example, the sample container may need to be transported to a centrifuge first, followed by a decapper. In addition, the sample container may need to be transferred to one of the instruments 102 within a specific time window. For example, the sample container may be instructed to be drawn within a certain time window.

[0039] One of the technical challenges of operating a laboratory system is to achieve a high throughput of samples with minimal human interaction while ensuring the accuracy of all tests, regardless of the configuration of the laboratory system. The routing program 136 described herein adapts to the different sizes and configurations of laboratory systems without requiring a complete re-engineering of the entire routing program 136. In addition to the above, fault tolerance in carrier transmission is also an important factor in ensuring reliable workflow. The routing program 136 described herein has multiple software layer functions that can be constant between different laboratory systems. Each layer has been designed or programmed to operate on all or most laboratory systems.

[0040] In some embodiments, the routing program 136 is a multi-layer software architecture that extracts a logical set of tasks and / or workflows to be completed by the physical transmission software layer. Each software layer executes independently of other software layers, but can transmit data to other independently executed software layers and / or receive data from other independently executed software layers. Therefore, the software layer can be changed or customized without necessarily affecting other software layers. By separating the layers, intelligent routing can be performed to improve the efficiency of the laboratory system 100, 300. In addition, the separation of layers with clear interfaces allows a layer to be replaced without affecting other layers. In some embodiments, one or more software layers can each plan / determine at least one stage (e.g., pre-processing or post-processing actions) of a test to be performed by at least one instrument 102, another software layer can determine at least one route for the sample container 104 to or from one or more instruments 102 to perform the at least one stage, and another software layer can generate instructions to hardware components (e.g., motors, power supplies, switches, sensors, etc.) to implement at least one route of the sample container 104.

[0041] refer to Figure 4 , Figure 4 An example of software layers 400 that may be used in the architecture of routing program 136 according to embodiments provided herein is shown. The architecture may include, in addition to Figure 4 Layers other than those shown in Figure 4 More layers than shown in Figure 4 . The order layer 402 may receive a sample analysis order and, in response, identify a specific test available in the laboratory system 100 to be performed on the associated biological sample to fulfill the sample analysis order. In some embodiments, the order layer 402 may receive the sample analysis order from a source external to the laboratory system 100, such as a hospital information system (not shown). The order layer 402 may additionally receive a sample analysis order entered by a system operator of the laboratory system 100 via a workstation 138. Based on the received input, the order layer 402 may generate an output (e.g., instructions) indicating what tests are to be performed. For example, a first sample may require tests A, B, and C; a second sample may require tests X, Y, and Z; and a third sample may require only test A. Each of the tests A, B, C, X, Y, and Z may be performed by one or more instruments 102 of the laboratory system 100. For example, the first analyzer 116 may be configured to perform tests A, B, and Z, and the second analyzer 118 may be configured to perform tests C, X, and Y.

[0042] The task layer 404 can be configured to receive output data generated by the order layer 402, and can generate outputs (e.g., instructions) related to individual tasks required to perform the test identified by the order layer 402. For example, the task layer 404 can generate instructions indicating that the first sample needs to be drawn and distributed into another container and then mixed with the first reagent, while the second sample needs to be drawn and distributed into another container and then mixed with the second reagent, and the third sample needs to be drawn and distributed into another container and then mixed with the diluent. The task instructions are output from the task layer 404 and transmitted as input to the distribution layer 406. In some embodiments, the task layer 404 can also transmit data indicating that the task instructions have been generated back to the order layer 402. In some embodiments, the order layer 402 can delay its output until data indicating that the task layer 404 can be used to process additional inputs is received.

[0043] The distribution layer 406 can generate an output including specific instructions about task performance in response to receiving an output generated by the task layer 404. For example, the distribution layer 406 can generate an output that distributes a first carrier to receive a sample container containing a first sample at a specific station (such as a sample handler 114). The distribution layer 406 can also track the number of available carriers for transmitting sample containers, and ensure that those empty carriers are available where they are needed (for example, at the sample handler 114) by distributing empty carriers to specific locations. The distribution layer 406 can also generate an output that distributes a specific location to accommodate a first carrier with a first sample container, such as the first suction station 216 of the first analyzer 116. The distribution layer 406 can additionally generate an output that distributes a second carrier to accommodate a sample container containing a second sample at a specific location, and distributes a second suction station 218 of the second analyzer 118 to accommodate the second carrier. The distribution layer 406 can also generate an output that distributes, for example, the first suction station 216 of the first analyzer 116 to accommodate a third carrier carrying a sample container containing a third sample, etc. In the event that testing of a sample is urgent, the allocation layer 406 may generate an output that allocates a carrier carrying the urgent sample over other less urgent samples. The allocation instructions are output from the allocation layer 406 and transmitted as input to the trace layer 408. In some embodiments, the output generated by the allocation layer 406 or data indicating that the allocation layer 406 has generated an output may also be transmitted back to the task layer 404 or other layers 400. In some embodiments, the task layer 404 may delay its output until data indicating that the allocation layer 406 is available to process additional input is received.

[0044] The trace layer 408 generates outputs that include specific paths that the carrier 110 follows in response to receiving the outputs generated by the distribution layer 406. For example, referring to Figure 2, the track layer 408 may generate an output indicating that a particular carrier in the carriers 110 will be transported to a particular location via a particular path (e.g., a segment 120 of the track 108). The output of the track layer 408 may include a corresponding carrier path that prevents the carriers 110 from colliding with each other. The track layer 408 may also optimize the path of the carriers 110 so that the carriers 110 move to and from the location on the track 108 as efficiently as possible. In some embodiments, the track layer 408 may indicate that high priority samples are moved before other samples, as described above. In addition, the track layer 408 may determine which segments 120 of the track 108 each carrier will be transported on. In addition, the track layer 408 may determine a schedule or time window at which or within which each carrier will be transported on a particular segment in the segment 120. These determinations may avoid traffic jams and / or collisions in the transport system. The track output is transmitted to the physical transport layer 410 as an input. In some embodiments, the track output or data related thereto may be transmitted back to the distribution layer 406 or other layers 400. For example, in some embodiments, the allocation layer 406 may delay its output until data indicating that the trace layer 408 is available to process additional input is received. In addition, receiving the trace output of the first carrier or data related thereto at the allocation layer 406 may affect the subsequent allocation of the second carrier. For example, the allocation layer 406 may avoid allocating the second carrier to certain locations or instruments 102 to avoid congestion or collisions, given that it is known that the first carrier has a carrier path that takes the first carrier through those specific locations or instruments 102. The allocation layer 406 may therefore generate more efficient allocation instructions for the second carrier in response to receiving the trace instructions of the first carrier.

[0045] The physical transport layer 410 can provide a transport system (e.g., Figure 1BThe physical transport layer 410 may generate instructions to the transport system that cause the selected carrier 110 to move on the track 108 in response to the path determined by the track layer 408. The hardware components may include sample carriers, track segments, track switches, motors, power supplies, power supplies, sensors, transformers, and / or other circuit components. Other hardware components of the transport system may be activated to move the carrier 110 along the carrier path determined by the track layer 408. For example, the physical transport layer 410 may generate instructions to the transport system that cause the selected switches in the switch segments 120C to be appropriately set to form the determined carrier path and cause the selected carrier 110 to move toward or away from a specific location (e.g., the instrument 102). That is, the instructions may cause appropriate power / current / voltage to be applied, for example, to selected motors in the identified carrier 110 (or track segment 120 in those embodiments having movable track segments) and / or to identified switches in switch segment 120C to cause the carrier 110 to move along a specific path on the track 108 determined by the track layer 408. In some embodiments, the physical transport layer 410 may communicate data back to the track layer 408 and / or other layers 400 indicating that the physical transport layer 410 has generated the instructions.

[0046] In summary, each of the software layers 402, 404, 406, and 408 can be viewed as a "planning" layer that provides input to its next downstream software layer 400 (e.g., the order layer 402 provides input to the task layer 404, which provides input to the allocation layer 406, which provides input to the tracking layer 408), while the physical transport layer 410 can be viewed as an "execution" layer that sets sample containers into motion in the laboratory system 100. The routing program 136 and the software layer 400 can also provide Figure 3 The laboratory system 300 is adopted.

[0047] In some embodiments, each of the layers 404, 406, 408, and 410 may provide feedback to at least its nearest upstream layer 400 to (a) alert the upstream layer of its availability, and (b) enable the upstream layer (where possible) to more efficiently process input received from its nearest upstream layer (e.g., the physical transport layer 410 may provide input to the track layer 408 to enable the track layer 408 to more efficiently process input received from the allocation layer 406). That is, by receiving input from a downstream layer, the layer 400 may generate an alternative plan and / or instructions that affect the testing to be performed by the laboratory system 100 (or laboratory system 300) rather than what it would have performed without the input from the downstream layer. The generated alternative plan and / or instructions may, for example, avoid delays in placing the sample container 104 in the carrier 110, avoid traffic jams at a particular track segment 120 and / or instrument 102, and / or avoid carrier collisions, which may improve overall sample testing throughput.

[0048] Additional references Figure 5 , which shows an embodiment of a routing program 136 divided into independent and individually replaceable software modules 500, each of which implements one of the layers 400 according to one or more embodiments. The software modules 500 may include an order manager 502 that implements the order layer 402, a task manager 504 that implements the task layer 404, an allocation planner 506 that implements the allocation layer 406, a trajectory planner 508 that implements the trajectory layer 408, and a transmission driver 510 that implements the physical transmission layer 410. In some embodiments, communication between the software modules 500 (and therefore the layers 400) can be performed, for example, via a message bus or a data-centric distributed data service (DDS). Other communication protocols may be used. Each software module 500 can reside in and be executed in a centralized manner by one controller, such as, for example, a computer 130 ( Figure 1A ), or in a distributed manner, where one or more software modules 500 may reside and execute in one or more corresponding sub-controllers (each having its own memory), or may execute in one or more corresponding sub-processors of processor 132 of computer 130. Segmentation of processing by routing program 136 may also be performed geographically (such as on certain portions of track 108). Segmentation of processing may also assign each sub-controller to a certain group of samples and / or a certain group of carriers 110. Segmentation of processing may be performed for other groups of samples based on, for example, the specific tests to be performed. Routing program 136 may include, in addition to Figure 5 Software modules other than module 500 shown in FIG.

[0049] The modules 500 may perform the layer 400 independently and / or in parallel with each other. For example, the transport driver 510 may send electrical signals to the motors, drivers, switches, and other hardware components of the transport system to perform the desired movement of one or more carriers 110 associated with one or more first tests or phases thereof. Independently of the transport driver 510 and / or in parallel with the transport driver 510, the trajectory planner 508 may plan the paths of one or more carriers 110 associated with one or more second tests or phases thereof so that the carriers 110 may reach their destinations in the shortest time while avoiding collisions and traffic jams. Independently of and / or in parallel with the transport driver 510 and the trajectory planner 508, the allocation planner 506 may allocate available carriers 110 to sample containers associated with one or more third tests or phases thereof. Independently of and / or in parallel with the transport driver 510, the trajectory planner 508, and the allocation planner 506, the task manager 504 may decompose one or more fourth tests into discrete tasks or phases to be performed in order to complete the one or more fourth tests. And independently of and / or in parallel with the transport driver 510, trajectory planner 508, allocation planner 506, and task manager 504, the order manager 502 can process a sample analysis order into one or more fifth tests received from a system operator or one or more users (such as physicians and other medical professionals communicating with laboratory system 100 (or laboratory system 300)).

[0050] As described above in connection with layer 400, in addition to the inputs received from upstream modules 500, each of software modules 502, 504, 506, and 508 may also receive optional inputs from one or more downstream modules 504, 506, 508, and 510, which may be used in the execution of its corresponding layer 400. In some embodiments, the inputs may include the state of the module 500 or data generated by the module 500. For example, the state or data generated by the transport driver 510 may be transmitted back to the trajectory planner 508 and / or other modules 500. The state or data generated by the trajectory planner 508 may be transmitted back to the allocation planner 506 and / or other modules 500. The state or data generated by the allocation planner 506 may be transmitted back to the task manager 504 and / or other modules 500. And the state or data generated by the task manager 504 may be transmitted back to the order manager 502.

[0051] Separating the routing program 136 into multiple modules / layers is advantageous in making the system more scalable, thereby allowing small, medium, and large laboratory systems to run on the same software platform. In some embodiments, the routing program 136 divided into multiple modules 500 / layers 400 enables the routing program 136 to be used on multiple different laboratory system configurations (such as the laboratory system 100 and the laboratory system 300). In addition, the multiple layers in the routing program 136 can be designed, developed, and tested independently. Therefore, if one of the modules 500 / layers 400 needs to be edited or replaced, the revision may not affect other modules 500 / layers 400. For example, if the laboratory system 100 is expanded to include additional instruments 102 that perform the same functions as the existing instruments 102 (to increase sample analysis throughput), the order manager 502 and the task manager 504 may not need to be updated. If the laboratory system 100 is expanded to include additional track segments 120 and / or track switches (e.g., to alleviate traffic congestion), the order manager 502, the task manager 504, and the allocation planner 506 may not need to be updated. And if a change in the electrical specifications of the hardware components of the transport system in the laboratory system 100 occurs (e.g., due to replacement or upgrade of the hardware components), only the transport driver 510 may need to be updated because only the physical transport layer 410 generates instructions to activate the hardware components in the transport system to move the selected sample carrier (and any sample containers carried therein). The electrical specification change may include, for example, a change in the power, current and / or voltage requirements of any hardware component (e.g., for Figure 1B motors 124, switches 126, sensors 128, power supplies 129, etc.); vehicle and / or track motor details affecting vehicle acceleration and velocity on track 108; timing issues associated with powering on and off of hardware components; track sensor issues affecting the allowable distance between moving vehicles, etc.

[0052] Note that software module 500 may include more than one software layer 400. For example, in some embodiments, software module 500 may include only software modules 502 and 510, where software module 502 may include software layers 402, 404, 406, and 408 (i.e., the "planning" layer), and software module 510 may include software layer 410 (i.e., the "execution" layer). In other embodiments, software module 500 may include only software modules 502, 508, and 510, where software module 502 may include software layers 402, 404, and 406. Software module 508 may include track layer 408, and software module 510 may include physical transport layer 410. In still other embodiments, software module 500 may include only software modules 502, 506, 508, and 510, where software module 502 may include software layers 402 and 404. Other embodiments may include other software modules 500 that may, for example, analyze test results or perform various pre-processing and / or post-processing functions.

[0053] Reference Figure 6 , which shows a flow chart illustrating a method 600 of operating a diagnostic laboratory system (e.g., laboratory system 100). The method 600 includes, at process block 602, identifying, using a first software module, at least one test to be performed on a biological sample. For example, the first software module may be an order manager 502 that executes the order layer 402. In response to receiving a sample analysis order, the order manager 502 may identify which laboratory system 100 tests to perform on the associated biological sample.

[0054] The method 600 also includes, at process block 604, planning at least one phase of the test using the first or another software module. For example, the at least one phase may be planned by the software module 500 (such as by the task manager 504 including the task layer 404), and may include drawing a biological sample from a sample container. In another example, the at least one phase may be planned by the software module 500 (such as the allocation planner 506 including the allocation layer 406), and may include the allocation of sample carriers to accommodate sample containers at designated locations in the diagnostic laboratory system. And in another example, the at least one phase may be planned by the software module 500 (such as the trajectory planner 508 including the trajectory layer 408), and may include the determination of a path through which the sample container will be transferred to or from the at least one instrument, the path including at least one track segment or at least one track switch. Other phases and / or software modules may be employed.

[0055] The method 600 also includes, at process block 606, generating instructions to the transport system using a second software module to move the sample container toward or away from the instrument according to the test or its phase. For example, the second software module can be a transport driver 510 including a physical transport layer 410 that generates instructions to activate hardware components in the transport system of the laboratory system 100 to move the sample container toward or away from at least one instrument 102 via the track 108 according to at least one test or at least one phase thereof.

[0056] And the method 600 includes, at process block 608, using the transport system to transport the sample container in response to the instruction generated at process block 606. For example, as shown in FIG. 1 or Figure 3 As shown in , the carrier 110 carrying the sample container 104 can be transported to or from the instrument 102 or 302 via the track 108 (e.g., via selected straight segments 120A, curved segments 120B, and switch segments 120C). The instructions generated at process block 606 can cause, for example, current to be applied to a motor in the carrier 110 and / or a switch in the switch segment 120C, which in turn can cause the carrier 110 to move on a specific path on the track 108.

[0057] While the present disclosure is susceptible to various modifications and alternative forms, specific method and apparatus embodiments have been shown by way of example in the drawings and described in detail herein. However, it should be understood that the specific methods and apparatus disclosed herein are not intended to limit the present disclosure.

Claims

1. A diagnostic laboratory system for analyzing a biological sample, comprising: at least one instrument for preparing or testing a biological sample; a transport system configured to transport sample containers to and from the at least one instrument, wherein the sample containers contain biological samples to be analyzed therein, and the transport system includes a plurality of sample carriers, track segments, and track switches; as well as A computer configured to execute a program to control the operation of a diagnostic laboratory system, the program having an architecture including a plurality of individually replaceable software modules communicating with each other, the plurality of individually replaceable software modules comprising: a first software module for identifying at least one test to be performed on a biological sample or planning at least one phase thereof, and A second software module for generating instructions to the transport system to move the sample container toward or away from the at least one instrument according to the at least one test or at least one phase thereof, wherein changes in the electrical specifications of the hardware components of the transport system only require updating the second software module.

2. The diagnostic laboratory system of claim 1, wherein the hardware components of the transport system include sample carriers, track segments, track switches, motors, power supplies, power sources, sensors, transformers, or circuit components.

3. The diagnostic laboratory system of claim 1 , wherein the first software module comprises an order layer configured to identify the at least one test to be performed on the biological sample in response to input received from a workstation of the diagnostic laboratory system or from an external source.

4. The diagnostic laboratory system of claim 1, wherein the first software module comprises a task layer configured to plan at least one phase thereof, wherein at least one phase planned by the task layer comprises aspirating a biological sample from a sample container.

5. A diagnostic laboratory system according to claim 1, wherein the first software module includes an allocation layer configured to plan at least one stage thereof, wherein at least one stage planned by the allocation layer includes the allocation of sample carriers to accommodate the sample containers at designated locations in the diagnostic laboratory system.

6. The diagnostic laboratory system of claim 1, wherein the first software module comprises an allocation layer configured to plan at least one phase thereof, wherein at least one phase planned by the allocation layer comprises allocating at least one instrument to accommodate the sample container.

7. The diagnostic laboratory system of claim 1 , wherein the first software module comprises a trajectory layer configured to plan at least one phase thereof, wherein at least one phase planned by the trajectory layer comprises determination of a path through which the sample container is to be transported to or from the at least one instrument, the path comprising at least one track segment or at least one track switch.

8. The diagnostic laboratory system of claim 1 , wherein the second software module comprises a physical transport layer that generates instructions to activate hardware components in the transport system to move the sample container toward or away from the at least one instrument in accordance with the at least one test or at least one phase thereof.

9. A diagnostic laboratory system according to claim 1, wherein the second software module includes a physical transport layer, which generates instructions to the transport system to apply appropriate power to a selected one or more of the sample carrier, track segment or track switch according to the at least one test or at least one phase thereof, thereby moving the sample container toward or away from the at least one instrument.

10. The diagnostic laboratory system of claim 1, wherein the first software module comprises: an order layer configured to identify at least one test to be performed on the biological sample; a task layer configured to plan a first phase of the at least one test, the first phase planned by the task layer comprising drawing a biological sample from a sample container; a distribution layer configured to schedule a second phase of the at least one test, the second phase scheduled by the distribution layer including distributing a sample carrier to receive a sample container at a designated location in the diagnostic laboratory system; and A track layer configured to plan a third phase of the at least one test, the third phase planned by the track layer comprising determination of a path through which the sample container will be transported to or from the at least one instrument, the path comprising at least one track segment or at least one track switch.

11. The diagnostic laboratory system of claim 1 , further comprising a third software module for planning at least one phase of the at least one test and outputting the planned at least one phase to the second software module, the at least one phase comprising determination of a path through which the sample container will be transported to the at least one instrument, the path comprising at least one track segment or at least one track switch.

12. The diagnostic laboratory system according to claim 11 further includes a fourth software module for planning at least one stage of the at least one test and outputting the planned at least one stage to the third software module, wherein the at least one stage includes allocating a sample carrier to accommodate a sample container at a designated location and allocating at least one instrument to accommodate the sample container.

13. The diagnostic laboratory system of claim 12, further comprising a fifth software module for planning at least one phase of the at least one test and outputting the planned at least one phase to the fourth software module, the at least one phase comprising aspirating the biological sample from the sample container.

14. A method of operating a diagnostic laboratory system for analyzing a biological sample, comprising: identifying, using the first software module, at least one test to be performed on the biological sample in response to receiving input at the first software module, the input being received from a workstation of the diagnostic laboratory system or from an external source, the first software module portion of the program comprising a plurality of individually replaceable software modules in communication with one another, the program executing on a computer to control the operation of the diagnostic laboratory system; planning at least one phase of said at least one test using the first or another software module of said program; generating, using a second software module of the program, instructions to a transport system of the diagnostic laboratory system to cause a sample container containing a biological sample to be moved to or away from an instrument of the diagnostic laboratory system in accordance with the at least one test or at least one phase thereof, wherein changes in electrical specifications of hardware components of the transport system require only an update of the second software module; and In response to the instructions, the sample container is transported using the transport system.

15. The method of claim 14, wherein the hardware components of the transport system include sample carriers, track segments, track switches, motors, power supplies, power sources, sensors, transformers, or circuit components.

16. The method of claim 14, wherein the planning comprises using the first software module or another software module to plan at least one phase of the test to include drawing a biological sample from a sample container.

17. A method according to claim 14, wherein the planning includes using the first software module or another software module to plan at least one stage of the test to include allocating a sample carrier of a transport system to accommodate a sample container at a designated location in a diagnostic laboratory system, or allocating an instrument of the diagnostic laboratory system to accommodate a sample container.

18. The method of claim 14, wherein the planning includes planning at least one phase of the test using the first software module or another software module to include determination of a path through which the sample container will be transported to or from the instrument, the path including at least one track segment or at least one track switch of the transport system.

19. The method of claim 14, wherein generating instructions comprises generating instructions using a second software module to activate hardware components in the transport system to move the sample container toward or away from the instrument according to the at least one test or at least one phase thereof.

20. The method of claim 14, wherein generating instructions comprises generating instructions using a second software module to apply appropriate power to selected one or more sample carriers, track segments, or track switches of the transport system to move the sample container toward or away from the instrument based on the at least one test or at least one phase thereof.