Cyclic parallelization scheduling processing method and system suitable for laboratory samples
By creating parallel modules in laboratory sample processing and combining cycle processing modes, the laboratories are scheduled in real time in parallel, which solves the problem of inefficient processing in the existing technology, and efficient and accurate sample scheduling and processing are achieved, and flexible process logic definition is supported.
Patent Information
- Application Number
- CN202510103319.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-22
- Publication Date
- 2025-05-23
AI Technical Summary
The lack of circular parallel scheduling processing methods in the prior art, resulting in inaccurate calculation of the processing time during laboratory samples processing, low processing efficiency, and single scheduling processing methods, making circular parallel scheduling processing impossible.
By creating parallelized modules and combining loop processing modes, real-time parallel dispatching of laboratory samples, generating and processing related data to optimize scheduling, the modules are encapsulated using the Mermaid language to achieve flexible process logic definition and scheduling.
The cyclic parallel scheduling processing of laboratory samples is realized, which improves the calculation accuracy and processing efficiency of the sample processing time through modules, and allows users to flexibly adjust the process logic to meet different needs.
Smart Images

Figure CN120031308A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of laboratory sample processing, and in particular relates to a cyclic parallel scheduling processing method and system suitable for laboratory samples. Background Art
[0002] At present, in the process of processing experimental samples, there is no specific, feasible and cyclic parallel processing method to realize the scheduling and processing of multiple modules. That is to say, in the existing technology, by adopting traditional means, the processing time of samples passing through the module is not calculated accurately enough, and the processing efficiency is low. Moreover, the scheduling and processing method of experimental samples is single, that is, cyclic parallel scheduling and processing cannot be realized.
[0003] In addition, in the existing experimental sample processing platform technology, the free editing and definition of module processing logic is not implemented, which makes the design, control and delivery efficiency of the platform low.
[0004] Therefore, in view of the above, there is no specific feasible and cyclic parallel processing method to realize the scheduling processing of multiple modules, that is, by adopting traditional means, the calculation of the processing time of the sample through the module is not accurate enough, and the processing efficiency is low, and the scheduling processing method for experimental samples is single, that is, the cyclic parallel scheduling processing cannot be realized. Technical problems and defects urgently need to design and develop a cyclic parallel scheduling processing method and system suitable for laboratory samples. Summary of the invention
[0005] In order to overcome the shortcomings and difficulties of the above-mentioned prior art, the purpose of the present invention is to provide a cyclic parallel scheduling processing method, system, platform and storage medium suitable for laboratory samples, so as to solve the problem of designing and scheduling the process laboratory sample pre-processing platform.
[0006] The first object of the present invention is to provide a loop parallelization scheduling and processing method suitable for laboratory samples; the second object of the present invention is to provide a loop parallelization scheduling and processing system suitable for laboratory samples; the third object of the present invention is to provide a loop parallelization scheduling and processing platform suitable for laboratory samples; the fourth object of the present invention is to provide a computer-readable storage medium.
[0007] The first object of the present invention is achieved in that the method comprises the following steps:
[0008] Create at least two parallel first modules corresponding to the laboratory samples to be scheduled for processing; wherein the first modules are laboratory sample task processes;
[0009] Based on the first module and in combination with a cyclic processing mode, the laboratory samples are processed in real time and in parallel.
[0010] Furthermore, the step of creating at least two parallel first modules corresponding to the laboratory samples to be scheduled for processing further includes:
[0011] Generate and obtain first data corresponding to the laboratory sample, and initialize the processing of the first data; wherein the first data is information data of the laboratory sample to be processed;
[0012] Based on the first module and in combination with the first data, second data corresponding to the laboratory samples to be scheduled for processing is generated, and the second data is normalized; wherein the second data is time data for processing the laboratory samples.
[0013] Further, the method of generating second data corresponding to the laboratory sample to be scheduled for processing based on the first module and in combination with the first data, and normalizing the second data, further includes:
[0014] Based on the first module, a first sequence corresponding to the second data is generated; wherein the first sequence is time series data of processing experimental samples;
[0015] Generate and obtain third data corresponding to the first sequence, and normalize and process the first sequence in sequence according to the third data; wherein the third data is peak time data in the time series.
[0016] Furthermore, the real-time parallel scheduling and processing of the laboratory samples based on the first module and in combination with the cyclic processing mode also includes:
[0017] Create a first matrix corresponding to the test tubes of the module, and generate fourth data corresponding to the first matrix; wherein the first matrix is the flag matrix data corresponding to each group of test tubes; the fourth data is the processing status flag data corresponding to the module, including: initialization status, running status and completed status;
[0018] Based on the first module and according to the four data, fifth data corresponding to the module is determined and generated; wherein the fifth data is flag data indicating whether the module is occupied.
[0019] Furthermore, the real-time parallel scheduling and processing of the laboratory samples based on the first module and in combination with the cyclic processing mode also includes:
[0020] Generate and obtain first prompt data corresponding to the laboratory sample to be scheduled for processing, and determine and select the next step to be executed based on the first prompt data; wherein the first prompt data is laboratory sample processing status prompt data; the next step includes ending the processing and removing the cover of the sample;
[0021] Generate and obtain first control data corresponding to the scheduling and processing of laboratory samples, and based on the first control data, schedule and process the laboratory samples in real time and in parallel; wherein the first control data is control instruction data for the laboratory sample scheduling and processing operation.
[0022] Furthermore, the generating and acquiring first control data corresponding to the scheduling and processing of laboratory samples, and scheduling and processing the laboratory samples in real time and in parallel based on the first control data, further includes:
[0023] Generate and obtain sixth data corresponding to the laboratory sample processing process; wherein the sixth data is threshold data of whether the laboratory sample processing meets the standard;
[0024] According to the sixth data, generate and obtain second prompt data corresponding to the scheduled processing of laboratory samples, and determine and select the next step to execute based on the second prompt data; wherein, the second prompt data is laboratory sample processing status prompt data; the next step includes retry processing and sample capping processing.
[0025] The second object of the present invention is achieved in this way: the system is used to implement the cyclic parallel scheduling processing method applicable to laboratory samples; the system comprises:
[0026] A data module creation unit, used to create at least two parallel first modules corresponding to the laboratory samples to be scheduled for processing; wherein the first modules are laboratory sample task processes;
[0027] The sample scheduling processing unit is used to schedule and process the laboratory samples in real time in parallel based on the first module and in combination with a cyclic processing mode.
[0028] Furthermore, the data module creation unit further includes:
[0029] A first processing module, used to generate and obtain first data corresponding to the laboratory sample, and initialize the processing of the first data; wherein the first data is information data of the laboratory sample to be processed;
[0030] A first generating module is used to generate second data corresponding to the laboratory sample to be scheduled for processing based on the first module and in combination with the first data, and to normalize the second data; wherein the second data is time data for processing the laboratory sample;
[0031] And / or, the first generating module further includes:
[0032] A second generating module, for generating a first sequence corresponding to the second data based on the first module; wherein the first sequence is time series data of processing experimental samples;
[0033] A second processing module is used to generate and obtain third data corresponding to the first sequence, and to normalize and process the first sequence in sequence according to the third data; wherein the third data is peak time data in the time series;
[0034] And / or, the sample scheduling processing unit further includes:
[0035] The third generation module is used to create a first matrix corresponding to the test tubes of the module, and generate fourth data corresponding to the first matrix; wherein the first matrix is the flag matrix data corresponding to each group of test tubes; the fourth data is the processing status flag data corresponding to the module, including: initialization status, running status and completed status;
[0036] A first determination module, configured to determine and generate fifth data corresponding to the module based on the first module and the four data; wherein the fifth data is a flag data indicating whether the module is occupied;
[0037] The fourth generation module is used to generate and obtain first prompt data corresponding to the laboratory sample to be scheduled for processing, and determine and select the next step to be executed based on the first prompt data; wherein the first prompt data is laboratory sample processing status prompt data; the next step includes ending the processing and removing the cover of the sample;
[0038] A fifth generation module is used to generate and obtain first control data corresponding to the scheduling and processing of laboratory samples, and based on the first control data, to schedule and process the laboratory samples in real time and in parallel; wherein the first control data is control instruction data for the scheduling and processing of laboratory samples;
[0039] And / or, the fifth generation module further includes:
[0040] A sixth generating module, used to generate and obtain sixth data corresponding to the laboratory sample processing process; wherein the sixth data is threshold data of whether the laboratory sample processing meets the standard;
[0041] The third processing module is used to generate and obtain second prompt data corresponding to the scheduled processing of laboratory samples based on the sixth data, and determine and select the next step to execute based on the second prompt data; wherein the second prompt data is laboratory sample processing status prompt data; the next step includes retry processing and sample capping processing.
[0042] The third object of the present invention is achieved as follows: it includes a processor, a memory, and a loop parallel scheduling and processing platform control program suitable for laboratory samples; wherein the loop parallel scheduling and processing platform control program suitable for laboratory samples is executed on the processor, the loop parallel scheduling and processing platform control program suitable for laboratory samples is stored in the memory, and the loop parallel scheduling and processing platform control program suitable for laboratory samples implements the loop parallel scheduling and processing method suitable for laboratory samples.
[0043] The fourth object of the present invention is achieved in this way: the computer-readable storage medium stores a loop parallel scheduling and processing platform control program suitable for laboratory samples, and the loop parallel scheduling and processing platform control program suitable for laboratory samples implements the loop parallel scheduling and processing method suitable for laboratory samples.
[0044] The present invention creates at least two parallel first modules corresponding to the laboratory samples to be scheduled for processing through a method; wherein the first module is a laboratory sample task process; based on the first module and in combination with a cyclic processing mode, the laboratory samples are scheduled for processing in parallel in real time, as well as a system, platform and storage medium corresponding to the method, which can realize cyclic parallel scheduling processing of laboratory samples, that is, cyclic parallel scheduling processing of multiple modules, and, through the scheme of the present invention, the calculation accuracy of the processing time of the sample through the module is high, and the processing efficiency is high.
[0045] In addition, the solution of the present invention uses the Mermaid language to further encapsulate and link the modules to form new functional module units, so that the processing capabilities of the experimental platform can be quickly customized and changed according to user needs; that is, users can easily adjust the process logic to meet the needs of different scenarios. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0047] Figure 1 A schematic diagram of a flow chart of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0048] Figure 2 It is a schematic diagram of the module structure of a cyclic parallel scheduling processing method suitable for laboratory samples of the present invention;
[0049] Figure 3A basic linear flow diagram of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0050] Figure 4 It is a flow chart with conditional branches of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0051] Figure 5 A complex flow diagram with sub-graphs of a cyclic parallel scheduling processing method suitable for laboratory samples of the present invention;
[0052] Figure 6 It is a schematic diagram of a multi-condition judgment flow of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0053] Figure 7 A schematic diagram of a cyclic processing flow of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0054] Figure 8 This is a page display schematic diagram of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0055] Fig. 9 A schematic diagram of node configuration of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0056] Fig.10 A schematic diagram of triggering subsequent steps of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0057] Fig.11 A schematic diagram of a suspended operation of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0058] Fig.12 It is a schematic diagram of stopping operation of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0059] Fig.13 A schematic diagram of a clearing operation of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0060] Fig.14 A schematic diagram of a system design framework of a cyclic parallel scheduling processing method suitable for laboratory samples of the present invention;
[0061] Fig.15 The second schematic diagram of the system design framework of the cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0062] Fig.16The third schematic diagram of a system design framework of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0063] Fig.17 This is a schematic diagram of the architecture of a cyclic parallel scheduling processing system suitable for laboratory samples of the present invention;
[0064] Fig.18 This is a schematic diagram of the architecture of a cyclic parallel scheduling processing platform suitable for laboratory samples of the present invention;
[0065] Fig.19 A schematic diagram of a computer-readable storage medium architecture in an embodiment of the present invention;
[0066] Fig. 20 It is a schematic diagram of one embodiment of the process flow of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0067] Fig.21 It is a second schematic diagram of an embodiment of the process flow of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0068] Fig. 22 A schematic diagram showing a scheduling system of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0069] Fig.23 It is a schematic diagram of one embodiment of the framework process of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0070] Fig.24 It is a second schematic diagram of an embodiment framework flow of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0071] Fig.25 A schematic diagram of a supporting chart type flow chart of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0072] Fig.26 A schematic diagram of the timing of supporting chart types of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0073] Fig. 27 It is a schematic diagram of the module action flow of an embodiment of a cyclic parallel scheduling processing method applicable to laboratory samples of the present invention;
[0074] Fig.28 This is a schematic diagram of the directory structure of an application solution of an embodiment of the present invention, which is applicable to a cyclic parallel scheduling processing method for laboratory samples;
[0075] Fig.29This is a schematic diagram of a Mermaid language project structure for an embodiment of a cyclic parallel scheduling processing method suitable for laboratory samples of the present invention;
[0076] Fig.30 A schematic diagram of the ConsoleApplication architecture of an embodiment of the present invention, which is applicable to a cyclic parallel scheduling processing method for laboratory samples;
[0077] Fig.31 This is a schematic diagram of the core functions of an embodiment of the cyclic parallel scheduling processing method for laboratory samples of the present invention using Mermaid language analysis;
[0078] Fig.32 This is a schematic diagram of a web page control architecture using Mermaid parsing in accordance with an embodiment of a cyclic parallel scheduling processing method suitable for laboratory samples of the present invention. DETAILED DESCRIPTION
[0079] In order to better understand the purpose, technical solutions and advantages of the present invention, the present invention is further described below in conjunction with the accompanying drawings and specific implementation methods. Those skilled in the art can easily understand other advantages and effects of the present invention from the contents disclosed in this specification.
[0080] The present invention may also be implemented or applied through other different specific examples, and the details in this specification may also be modified and changed in various ways based on different viewpoints and applications without departing from the spirit of the present invention.
[0081] It should be noted that if the embodiments of the present invention involve directional indications (such as up, down, left, right, front, back, etc.), the directional indications are only used to explain the relative position relationship, movement status, etc. between the components under a certain specific posture (as shown in the accompanying drawings). If the specific posture changes, the directional indication will also change accordingly.
[0082] In addition, if there are descriptions involving "first", "second", etc. in the embodiments of the present invention, the descriptions of "first", "second", etc. are only used for descriptive purposes and cannot be understood as indicating or suggesting their relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" and "second" may explicitly or implicitly include at least one of the features. Secondly, the technical solutions between the various embodiments can be combined with each other, but they must be based on the ability of ordinary technicians in the field to implement them. When the combination of technical solutions is contradictory or cannot be implemented, it should be deemed that such a combination of technical solutions does not exist and is not within the scope of protection required by the present invention.
[0083] Preferably, the cyclic parallel scheduling processing method for laboratory samples of the present invention is applied in one or more terminals or servers. The terminal is a device that can automatically perform numerical calculations and / or information processing according to pre-set or stored instructions, and its hardware includes but is not limited to microprocessors, application specific integrated circuits (APPlication Specific Integrated Circuit, ASIC), field-programmable gate arrays (Field-Programmable Gate Array, FPGA), digital processors (Digital Signal Processor, DSP), embedded devices, etc.
[0084] The terminal can be a computing device such as a desktop computer, a notebook, a PDA, a cloud server, etc. The terminal can interact with the client through a keyboard, a mouse, a remote control, a touch pad, or a voice control device.
[0085] The present invention is to realize a cyclic parallel scheduling processing method, system, platform and storage medium suitable for laboratory samples.
[0086] like Figure 1 , which is a flow chart of a cyclic parallel scheduling processing method applicable to laboratory samples provided by an embodiment of the present invention.
[0087] In this embodiment, the cyclic parallel scheduling processing method suitable for laboratory samples can be applied to a terminal or a fixed terminal with a display function. The terminal is not limited to a personal computer, a smart phone, a tablet computer, a desktop computer or an all-in-one computer equipped with a camera, etc.
[0088] The cyclic parallel scheduling processing method applicable to laboratory samples can also be applied to a hardware environment consisting of a terminal and a server connected to the terminal via a network. The network includes but is not limited to: a wide area network, a metropolitan area network or a local area network. The cyclic parallel scheduling processing method applicable to laboratory samples in the embodiment of the present invention can be executed by a server, can be executed by a terminal, or can be executed by both a server and a terminal.
[0089] For example, for a terminal that needs to be used for a cyclic parallelization scheduling process applicable to laboratory samples, the cyclic parallelization scheduling process function applicable to laboratory samples provided by the method of the present invention can be directly integrated on the terminal, or a client for implementing the method of the present invention can be installed. For another example, the method provided by the present invention can also be run on a server or other device in the form of a software development kit (SDK), and an interface for the cyclic parallelization scheduling process function applicable to laboratory samples is provided in the form of SDK, and the terminal or other device can realize the cyclic parallelization scheduling process function applicable to laboratory samples through the provided interface. The present invention is further described below in conjunction with the accompanying drawings.
[0090] like Figure 1 As shown, the present invention provides a cyclic parallel scheduling processing method suitable for laboratory samples, wherein the method comprises the following steps:
[0091] S1, creating at least two parallel first modules corresponding to the laboratory samples to be scheduled for processing; wherein the first modules are laboratory sample task processes;
[0092] S2. Based on the first module and in combination with a cyclic processing mode, the laboratory samples are processed in real-time parallel scheduling.
[0093] The step of creating at least two parallel first modules corresponding to the laboratory samples to be processed may further include:
[0094] S11, generating and acquiring first data corresponding to a laboratory sample, and initializing processing of the first data; wherein the first data is information data of the laboratory sample to be processed;
[0095] S12. Based on the first module and in combination with the first data, generate second data corresponding to the laboratory samples to be scheduled for processing, and normalize the second data; wherein the second data is the time data for processing the experimental samples.
[0096] The method of generating second data corresponding to the laboratory sample to be scheduled for processing based on the first module and in combination with the first data, and normalizing the second data, further includes:
[0097] S121. Based on the first module, generate a first sequence corresponding to the second data; wherein the first sequence is time series data of processing experimental samples;
[0098] S122, generating and acquiring third data corresponding to the first sequence, and normalizing and processing the first sequence in sequence according to the third data; wherein the third data is peak time data in the time series.
[0099] The method of scheduling and processing the laboratory samples in real time and in parallel based on the first module and in combination with a cyclic processing mode also includes:
[0100] S21, creating a first matrix corresponding to the test tubes of the module, and generating fourth data corresponding to the first matrix; wherein the first matrix is the flag matrix data corresponding to each group of test tubes; the fourth data is the processing status flag data corresponding to the module, including: initialization status, running status and completed status;
[0101] S22: Based on the first module and the four data, determine and generate fifth data corresponding to the module; wherein the fifth data is flag data indicating whether the module is occupied.
[0102] The method of scheduling and processing the laboratory samples in real time and in parallel based on the first module and in combination with a cyclic processing mode also includes:
[0103] S23, generating and acquiring first prompt data corresponding to the laboratory sample to be scheduled for processing, and determining and selecting to execute the next step based on the first prompt data; wherein the first prompt data is laboratory sample processing status prompt data; the next step includes ending the processing and removing the cover of the sample;
[0104] S24. Generate and obtain first control data corresponding to the scheduling and processing of laboratory samples, and based on the first control data, schedule and process the laboratory samples in real time and in parallel; wherein the first control data is control instruction data for the laboratory sample scheduling and processing operation.
[0105] The generating and acquiring first control data corresponding to the scheduling and processing of laboratory samples, and scheduling and processing the laboratory samples in real time and in parallel based on the first control data, further comprises:
[0106] S241, generating and acquiring sixth data corresponding to the laboratory sample processing process; wherein the sixth data is threshold data of whether the laboratory sample processing meets the standard;
[0107] S242. Generate and obtain second prompt data corresponding to the scheduled processing of laboratory samples based on the sixth data, and determine and select the next step to execute based on the second prompt data; wherein the second prompt data is laboratory sample processing status prompt data; the next step includes retry processing and sample capping processing.
[0108] Specifically, in an embodiment of the present invention, the solution provided is a system for customizing module processing logic and parallel scheduling of experimental processes for a pre-processing platform. It is mainly used in sample processing systems of automated laboratories. The entire system includes custom processing logics of multiple processing modules (Modules), each of which performs a specific processing task, and samples are processed in sequence through the modules in the platform. The system needs to freely define module processing logic and efficiently schedule the work of these modules in parallel, so that the experimental samples (i.e., samples) complete the required experimental processing steps in sequence.
[0109] like Figure 2 As shown, assuming that the platform has n modules: {M 1 ,M 2 ,M 3 ,……M n}(The execution order is M 1 →M n , from left to right). The time it takes for n modules to process a set of samples (the current channel is 2 test tubes) is: {t 1 ,t 2 ,t 3 ,……t n}.
[0110] The algorithm is as follows:
[0111] Normalize module duration (time units can be unified into seconds):
[0112] Example: [10,15, 20 ,2,4,6, 10 ,4, 8 ]; denoted as →{t 1 ,t 2 ,t 3 ,……t n};
[0113] Normalization: [20,20, 20 ,10,10,10, 10 ,8, 8 ]; denoted as →{T 1 ,T 2 ,T 3 ,……T n};
[0114] Algorithm steps: Select the maximum value among all module processing durations, and set the durations from the first duration to the location of the duration to the maximum value; repeat the above algorithm for the remaining arrays until all duration array data is processed. The example is as follows:
[0115] Original data: [10,15, 20 ,2,4,6, 10 ,4,8 ];
[0116] → Transformation step 1: [20,20, 20 ,2,4,6, 10 ,4, 8 ];
[0117] →Transformation step 2: [20,20, 20 ,10,10,10, 10 ,4, 8 ];
[0118] → Transformation step 3: [20,20, 20 ,10,10,10, 10 ,8, 8 ];
[0119] If there are m groups of samples that need to be pre-processed, the total time T is calculated as:
[0120] <1> When m==1 (no blocking and beat adjustment)
[0121]
[0122] <2> When m==2 (considering beat adjustment)
[0123]
[0124] <3> When m>=3 (considering beat adjustment)
[0125]
[0126] Task scheduling execution:
[0127] ① For each group of test tubes, set the following flag matrix (m rows, xn columns); m groups of samples (2 test tubes per group of samples), n modules:
[0128]
[0129] Among them, f ij The processing status flag bit of the i-th group of samples in the j-th module. The status bit can be divided into granularity according to your own business needs, but at least the following three states must be set: {Initialize, Running, Finish}, that is, {Initialize, Running, Finished} three states to indicate the processing stage of a group of test tubes on a certain module, so as to facilitate task scheduling, EBR recording, error recovery and manual emergency stop.
[0130] ② For each module, set the flag to indicate whether the module is occupied:
[0131] {s 1 ,s 2 ,s 3 ,……s n} (5)
[0132] Among them, s i ==false means the i-th module is idle, s i ==true means the i-th module is occupied.
[0133] Algorithm steps: Create n task processes (corresponding to n modules) and run the following scheduling algorithm:
[0134] 1. Initialize all sample information (m groups);
[0135] 2. Calculate the time T required to process all samples (m groups) (see the previous page for the algorithm);
[0136] 3. Create n parallel tasks (corresponding to each module) and start executing the following operations:
[0137] {Change the state of the test tube state machine in n parallel tasks;
[0138] Let m groups of samples pass through n modules to complete sample pre-processing;}
[0139] 4. After n parallel tasks are completed, the scheduling of the pre-processing task is completed.
[0140] Among them, the above algorithm must satisfy T i >=t i , when T i >t i In order to achieve uniformity of the experimental process, T wait =T i -t i ,Whether to wait first or later depends on the needs of the process.
[0141] Since laboratory reagent processing involves multi-level industrial processes, the processing process is divided into multiple independent modules (further subdivided into experimental sample processing functions), and each module is responsible for performing its own related operations. Currently, the interaction logic between modules is directly encapsulated together. This design leads to high maintenance costs, insufficient flexibility, and code redundancy. The introduction of the Mermaid process description language allows users to freely define module functions and the order of experimental execution.
[0142] Mermaid syntax definition (including parsing and calling of gRPC hardware control logic):
[0143] grammarMermaidFlowchart;
[0144] flowchart
[0145] :FLOWCHART_HEADERdirection?statement+EOF ;
[0147] direction
[0148] :TD|LR|RL|BT ;
[0150] statement
[0151] :node_definition
[0152] |edge_statement
[0153] |subgraph_statement ;
[0155] node_definition
[0156] :node_idnode_shape ;
[0158] node_shape
[0159] :ROUND_NODE
[0160] |SQUARE_NODE
[0161] |DIAMOND_NODE ;
[0163] edge_statement
[0164] :node_idARROW(EDGE_LABEL)?node_id ;
[0166] subgraph_statement
[0167] :SUBGRAPHID?NEWLINE?node_definition+END ;
[0169] node_id
[0170] :ID ;
[0172] / / LexerRules
[0173] FLOWCHART_HEADER:'flowchart'|'graph';
[0174] SUBGRAPH: 'subgraph';
[0175] END:'end';
[0176] TD:'TD';
[0177] LR:'LR';
[0178] RL: 'RL';
[0179] BT: 'BT';
[0180] ARROW:'-->';
[0181] EDGE_LABEL:'|'~('|')*'|';
[0182] ROUND_NODE:'(('~(')')+'))';
[0183] SQUARE_NODE:'['~']'+']';
[0184] DIAMOND_NODE:'{'~'}'+'}';
[0185] ID:[a-zA-Z_][a-zA-Z0-9_]*;
[0186] NEWLINE:'\r'?'\n'->skip;
[0187] WS:[\t]+->skip;
[0188] COMMENT:'%%'.*? NEWLINE->skip;
[0189] Customization of various module processing logic
[0190] like Figure 3 As shown, the basic linear process example (LinearProcessFlow):
[0191] flowchartLR
[0192] Start
[0193] Step 1 [Sample preparation]
[0194] Step2[Sample uncapping_gRPC]
[0195] Step 3 [Sample processing_gRPC]
[0196] Step 4 [Sample cover_gRPC]
[0197] End((end));
[0198] like Figure 4 As shown, an example of a process with conditional branches (ConditionalProcessFlow):
[0199] flowchartTD
[0200] Start
[0201] Init[Initialize_gRPC]
[0202] Check1{Dosage match?}
[0203] Check2{Is the temperature appropriate?}
[0204] Process1[Standard processing flow_gRPC]
[0205] Process2[Special processing flow_gRPC]
[0206] End((End))
[0207] Start-->Init
[0208] Init-->Check1
[0209] Check1-->|Yes|Check2
[0210] Check1-->|No|End
[0211] Check2-->|Yes|Process1
[0212] Check2-->|No|Process2
[0213] Process1-->End
[0214] Process2-->End
[0215] like Figure 5 As shown, an example of a complex process with subgraphs (ComplexProcesswithSubgraphs):
[0216] flowchartTD
[0217] Start
[0218] End((End))
[0219] Subgraph sample preparation
[0220] Prep1[Device Preparation_gRPC]
[0221] Prep2[Load sample_gRPC]
[0222] Prep3[System Initialization_gRPC]
[0223] end
[0224] Subgraph main process
[0225] Main1[Sample opening_gRPC]
[0226] Main2[Sample Processing_gRPC]
[0227] Check{status OK?}
[0228] Retry[retry processing_gRPC]
[0229] end
[0230] Subgraph follow-up processing
[0231] Post1[Sample Capping_gRPC]
[0232] Post2[Experimental cleanup_gRPC]
[0233] end
[0234] Start-->Prep1
[0235] Prep1-->Prep2
[0236] Prep2-->Prep3
[0237] Prep3-->Main1
[0238] Main1-->Main2
[0239] Main2-->Check
[0240] Check-->|Yes|Post1
[0241] Check-->|No|Retry
[0242] Retry-->Main2
[0243] Post1-->Post2
[0244] Post2-->End
[0245] like Figure 6 As shown, a multi-condition judgment process example (Multi-ConditionProcessFlow):
[0246] flowchartTD
[0247] Start
[0248] Init[System Initialization_gRPC]
[0249] Check1{Is the sample ready?}
[0250] Check2{Is the equipment ready?}
[0251] Check3{Is the temperature OK?}
[0252] Process1[sample capping_gRPC]
[0253] Process2[heating_gRPC]
[0254] Process3[cooling_gRPC]
[0255] Process4[Experimental processing_gRPC]
[0256] Process5[Sample uncapping_gRPC]
[0257] Error[Error handling_gRPC]
[0258] End((End))
[0259] Start-->Init
[0260] Init-->Check1
[0261] Check1-->|Yes|Check2
[0262] Check1-->|No|Error
[0263] Check2-->|Yes|
[0264] Check3Check2-->|No|Error
[0265] Check3-->|Perfect|Process1
[0266] Check3-->|Overcooling|Process2
[0267] Check3-->|Overheat|Process3
[0268] Process2-->Process1
[0269] Process3-->Process1
[0270] Process1-->Process4
[0271] Process4-->Process5
[0272] Process5-->End
[0273] Error-->End
[0274] like Figure 7 As shown, the loop process flow example (LoopProcessFlow):
[0275] flowchartTD
[0276] Start
[0277] Init[Initialize batch processing_gRPC]
[0278] CheckMore{Are there more samples?}
[0279] Process1[Sample uncapping_gRPC]
[0280] Process2[sample processing_gRPC]
[0281] Check{Is the processing OK?}
[0282] Process3[sample capping_gRPC]
[0283] Retry[retry processing_gRPC]
[0284] End((End))
[0285] Start-->Init
[0286] Init-->CheckMore
[0287] CheckMore-->|Yes|Process1
[0288] CheckMore-->|No|End
[0289] Process1-->Process2
[0290] Process2-->Check
[0291] Check-->|Yes|Process3
[0292] Check-->|No|Retry
[0293] Retry-->Process2
[0294] Process3-->Init
[0295] Parse the module action logic described by Mermaid using ANTLR: ANTLR (Another Tool for Language Recognition) v4 is a powerful parser generator that can be used to read, process, execute, and convert structured text or binary files. It is widely used to build languages, tools, and frameworks. The ANTLR parser can automatically build a grammar analysis tree - a data structure that represents how the grammar matches the input. ANTLR can also automatically generate a tree traverser that you can use to visit the nodes of those trees to execute specific code.
[0296] Group function definition and parsing execution: Demo detailed introduction, such as Figure 8 As shown, page display and function introduction.
[0297] Mermaid editing and generation: Fig. 9 As shown in the figure, the left frame is the Mermaid editing frame, and the right frame is the real-time visualization area of the flowchart. By editing the Mermaid code in the left frame, you can dynamically update the flowchart on the right and preview the design effect in real time.
[0298] If you need to implement the interactive function of the node, you can add the following statement at the end of the Mermaid code: click(node ID), call(function name); through this setting, the user can click the corresponding node to trigger the specified interactive function to achieve dynamic interactive operations.
[0299] Node configuration: Users can bind interactive functions to nodes in the Mermaid code, and dynamically pass in parameters or set the behavior logic of nodes through these functions.
[0300] Run wait time: This configuration can be used to set the wait time before the function runs. For example, if a step requires waiting for 10 seconds after adding liquid before adding acid, you can configure the wait time to 10 seconds in the node for adding acid. In this way, when the process executes to this node, it will wait for the set time before running the corresponding function logic.
[0301] Input parameter settings: dynamically obtain the corresponding parameters through the node, which can flexibly support reading parameters from static files (such as JSON files) or dynamically obtain parameters from the front node. The following are the implementation rules and configuration instructions:
[0302] Obtaining static file parameters: If the parameters come from a JSON file, the first-level node names in the JSON file must be consistent with the node names in the Mermaid flowchart (remove the "grpc_" prefix).
[0303] Dynamic parameter acquisition: If the parameters come from the previous node, the output results of the previous node can be dynamically obtained through the source node and source field configuration.
[0304] Source field: Whether static or dynamic, it is divided into levels by specifying the parameter path using the Parent.Child format.
[0305] Save: Save the configured parameters to achieve persistent storage of the parameters, and send these parameters to the background during runtime to ensure that the execution process complies with the preset logic.
[0306] Button function: Run button starts the entire process and triggers subsequent steps from the Start node in sequence, such as Fig.10 shown.
[0307] Pause button: temporarily pauses the process during operation, used for debugging or interrupting operations. Click Run again to resume operation. Fig.11 shown.
[0308] Stop button: terminate the current process. Fig.12 shown.
[0309] Clear running process button: clear the current process status and prepare for the next run, such as Fig.13 shown.
[0310] In summary, the present invention successfully achieves the following key goals by introducing Mermaid's solution:
[0311] Flexible scheduling: By dynamically defining the relationship between multiple modules, users can easily adjust the process logic to meet the needs of different scenarios.
[0312] Unified architecture: With the help of Mermaid's visual design tool, complex multi-module interactions are integrated into an intuitive unified architecture, improving the readability and maintenance efficiency of the system.
[0313] Low coupling and high extensibility: Modules are decoupled through clear rules to avoid code redundancy. At the same time, it provides strong extensibility, making it easy to quickly integrate new modules in subsequent functional expansion.
[0314] This solution not only optimizes the modular design of the system, but also significantly reduces development and maintenance costs, laying a solid foundation for the flexibility, maintainability and scalability of the system.
[0315] Extension: Currently, the grammatical structure of Mermaid is used to draw flowcharts and run logic, successfully realizing dynamic scheduling and visual design. However, this solution is not the only feasible path, and it can be further expanded and innovated according to project requirements to achieve more flexible and efficient process management.
[0316] Flexible adaptation of various flowchart syntaxes:
[0317] In addition to Mermaid, other code writing syntaxes that support flowcharts (such as LiteFlow, BPMN, etc.) can also be introduced to parse and adapt different graphical languages. This not only enhances the compatibility of the system, but also allows the selection of the most appropriate syntax structure according to different business needs. LiteFlow: By supporting low-code, configurable graphical process design, LiteFlow provides the advantages of rapid deployment and operation, and is suitable for building efficient process automation applications.
[0318] BPMN: As an industry standard, BPMN can handle more complex business processes and workflow management, and is particularly suitable for cross-team collaboration and enterprise-level process modeling.
[0319] Construction and innovation of custom flowchart syntax:
[0320] You can also design and write a unique set of flowchart grammar rules according to your own needs, which fully meets specific business scenarios and operational requirements. Through customized grammar, you can achieve more efficient and practical process design, making the system more market-adaptable and unique. Custom rules: For example, you can introduce custom node types, event trigger mechanisms, process execution conditions and other features to further enhance the expressiveness of flowcharts.
[0321] Graphical and interactive enhancements: By defining specialized interaction logic, users can design and schedule processes in a more intuitive way, and support real-time adjustments and visual feedback.
[0322] The module scheduling algorithm of the solution system of the present invention meets the requirements of concurrency, efficiency, and uniformity for laboratory task execution. The action execution logic of the module is customized to prevent hardware design changes from affecting the execution of the experimental process. The solution system of the present invention normalizes and standardizes the module construction and process definition of the experimental platform. It greatly reduces the code duplication rate and improves the stability and timeliness of project delivery. The module parallel scheduling algorithm, the analysis of the Mermaid language and the linkage of the hardware module gRPC interface are all core technologies of this system.
[0323] The module action logic definition of the experimental platform of the present invention can also be described without using the Mermaid language. A DSP language (Domain Special Language) can be defined independently, and then the ANTLR tool is used for lexical analysis and syntax analysis for parsing and translation. The use of the Mermaid language to describe is to facilitate the existing system, use the existing Mermaid language display controls, speed up the system implementation progress, and make it more convenient for general laboratory operators to understand the module action logic.
[0324] Preferably, in the embodiment of the present invention, the Mermaid language definition of the module action, the Mermaid language description and technical features are:
[0325] Mermaid is a simple and powerful chart drawing language that allows users to create various charts using text descriptions. Through simple text syntax, beautiful and professional charts that describe the logic of module actions can be generated.
[0326] Core features: Declarative syntax: use intuitive text descriptions to define chart structures; real-time rendering: write and view, instant preview of effects; multi-platform support: can be integrated into multiple platforms such as GitHub, GitLab, Notion, etc.; strong scalability: support custom styles and themes.
[0327] Supported chart types: Fig.25 As shown, Flowchart is one of the most commonly used chart types, used to show processes, decisions, and workflows.
[0328] The flowchart supports a variety of node shapes and connection styles: Node shape: square [], rounded corners (), diamond {}, circle (()); Connection type: solid line -->, dotted line -.-, thick line ==>; Direction: TD (top to bottom), LR (left to right), RL (right to left), BT (bottom to top).
[0329] like Fig.26 As shown, Sequence Diagram: The sequence diagram is used to show the interaction process and message passing order between objects.
[0330] like Fig. 27 As shown, Mermaid description of module actions: Create a detailed state diagram to show the custom process of module actions in the laboratory automation platform.
[0331] This diagram includes the following main components: Basic state flow: The system starts from initialization, enters the standby state, can configure actions, and enters the running state after execution preparation.
[0332] Action configuration sub-state: Parameter setting: set the specific parameters of the module, Action choreography: design the action sequence, Verification check: ensure the configuration is valid.
[0333] Execute the preparation sub-states: safety check, resource check, position calibration.
[0334] Running status sub-process: supports single-step execution, can pause monitoring, and supports continued execution until completion.
[0335] Exception handling mechanism: suspend operation, diagnose errors, and resume process.
[0336] ANTLR 4 Translation and Parsing Tool: ANTLR 4 (ANotherTool for Language Recognition) is a powerful parser generator specifically designed for creating parsing tools for programming languages, domain-specific languages (DSLs), and other structured texts. It was developed by Professor Terence Parr and is the fourth generation of the ANTLR series.
[0337] Detailed explanation of core functions: Lexical Analysis.
[0338] The lexical analyzer (Lexer) is responsible for converting the input character stream into a token stream. It can: identify and classify input characters, process comments and whitespace characters, support lexical mode switching, and process Unicode character sets.
[0339] Parsing: The parser processes the token stream and builds a syntax tree. The main features include: support for LL(*) parsing strategy, processing left-recursive grammar rules, automatic grammatical ambiguity elimination, and a powerful error recovery mechanism.
[0340] Tree traversal mechanism: ANTLR 4 provides two main tree traversal mechanisms: Visitor mode, which explicitly controls the traversal process; can return values; suitable for complex tree operations; Listener mode (Listener); automatically traverses the syntax tree; simple and easy to use; suitable for simple tree operations.
[0341] Development tool support: ANTLRWorks: integrated development environment, grammar debugger, grammar visualization tool, IDE plug-in (IntelliJ IDEA, VS Code, etc.).
[0342] Target language support: ANTLR 4 can generate parser code for multiple programming languages: Java (primary target language); C# --- the target language for this project; Python 2 and 3; JavaScript / TypeScript; Go; C++; Swift;
[0343] Detailed development process: write grammar file (.g4); define lexical rules; define grammar rules; specify rule attributes and options;
[0344] Generate parser code: Use ANTLR tool to generate target language code; compile the generated code.
[0345] Integrate into your application: create lexer and parser instances, configure error handling strategies, and implement tree traversal logic.
[0346] Testing and debugging: Use test cases to verify syntax; debug the parsing process; optimize performance; performance considerations; fast parsing speed, suitable for real-time processing; controllable memory usage; support streaming processing of large files; provide performance optimization options.
[0347] Best practices: modular grammar design; reasonable use of grammar rule options; appropriate handling of error recovery; attention to the separation of lexical analyzer and parser; ANTLR 4 is not just a parser generator, it provides a complete language identification solution that can meet a variety of language processing needs from simple to complex.
[0348] Apply ANTLR 4 to the translation and analysis of the Mermaid language, such as Figure 28-Figure 32 shown.
[0349] To achieve the above-mentioned object, the present invention also provides a cyclic parallel scheduling processing system applicable to laboratory samples, wherein the system is used to implement the cyclic parallel scheduling processing method applicable to laboratory samples; Fig.17 As shown, the system specifically includes:
[0350] A data module creation unit, used to create at least two parallel first modules corresponding to the laboratory samples to be scheduled for processing; wherein the first modules are laboratory sample task processes;
[0351] The sample scheduling processing unit is used to schedule and process the laboratory samples in real time in parallel based on the first module and in combination with a cyclic processing mode.
[0352] The data module creation unit further includes:
[0353] A first processing module, used to generate and obtain first data corresponding to the laboratory sample, and initialize the processing of the first data; wherein the first data is information data of the laboratory sample to be processed;
[0354] A first generating module is used to generate second data corresponding to the laboratory sample to be scheduled for processing based on the first module and in combination with the first data, and to normalize the second data; wherein the second data is time data for processing the laboratory sample;
[0355] And / or, the first generating module further includes:
[0356] A second generating module, for generating a first sequence corresponding to the second data based on the first module; wherein the first sequence is time series data of processing experimental samples;
[0357] A second processing module is used to generate and obtain third data corresponding to the first sequence, and to normalize and process the first sequence in sequence according to the third data; wherein the third data is peak time data in the time series;
[0358] And / or, the sample scheduling processing unit further includes:
[0359] The third generation module is used to create a first matrix corresponding to the test tubes of the module, and generate fourth data corresponding to the first matrix; wherein the first matrix is the flag matrix data corresponding to each group of test tubes; the fourth data is the processing status flag data corresponding to the module, including: initialization status, running status and completed status;
[0360] A first determination module, configured to determine and generate fifth data corresponding to the module based on the first module and the four data; wherein the fifth data is a flag data indicating whether the module is occupied;
[0361] The fourth generation module is used to generate and obtain first prompt data corresponding to the laboratory sample to be scheduled for processing, and determine and select the next step to be executed based on the first prompt data; wherein the first prompt data is laboratory sample processing status prompt data; the next step includes ending the processing and removing the cover of the sample;
[0362] A fifth generation module is used to generate and obtain first control data corresponding to the scheduling and processing of laboratory samples, and based on the first control data, to schedule and process the laboratory samples in real time and in parallel; wherein the first control data is control instruction data for the scheduling and processing of laboratory samples;
[0363] And / or, the fifth generation module further includes:
[0364] A sixth generating module, used to generate and obtain sixth data corresponding to the laboratory sample processing process; wherein the sixth data is threshold data of whether the laboratory sample processing meets the standard;
[0365] The third processing module is used to generate and obtain second prompt data corresponding to the scheduled processing of laboratory samples based on the sixth data, and determine and select the next step to execute based on the second prompt data; wherein the second prompt data is laboratory sample processing status prompt data; the next step includes retry processing and sample capping processing.
[0366] In the system solution embodiment of the present invention, the specific details of the method steps involved in the cyclic parallel scheduling processing suitable for laboratory samples have been explained above, that is, the functional modules in the system are used to implement the steps or sub-steps in the above method embodiment, which will not be repeated here.
[0367] To achieve the above objectives, the present invention also provides a cyclic parallel scheduling processing platform suitable for laboratory samples, such as Fig.18 As shown, it includes a processor, a memory, and a loop parallel scheduling processing platform control program applicable to laboratory samples; wherein the loop parallel scheduling processing platform control program applicable to laboratory samples is executed by the processor, the loop parallel scheduling processing platform control program applicable to laboratory samples is stored in the memory, and the loop parallel scheduling processing platform control program applicable to laboratory samples implements the loop parallel scheduling processing method steps applicable to laboratory samples. For example:
[0368] S1, creating at least two parallel first modules corresponding to the laboratory samples to be scheduled for processing; wherein the first modules are laboratory sample task processes;
[0369] S2. Based on the first module and in combination with a cyclic processing mode, the laboratory samples are processed in real-time parallel scheduling.
[0370] The specific details of the steps have been explained above and will not be repeated here.
[0371] In the embodiment of the present invention, the built-in processor of the cyclic parallel scheduling processing platform applicable to laboratory samples can be composed of integrated circuits, for example, it can be composed of a single packaged integrated circuit, or it can be composed of multiple integrated circuits with the same function or different functions, including one or more central processing units (CPU), microprocessors, digital processing chips, graphics processors and various control chips. The processor uses various interfaces and lines to connect various components, and executes or executes programs or units stored in the memory, and calls data stored in the memory to perform various functions and process data of the cyclic parallel scheduling processing applicable to laboratory samples;
[0372] The memory is used to store program codes and various data. It is installed in a cyclic parallel scheduling processing platform suitable for laboratory samples and realizes high-speed and automatic access to programs or data during operation.
[0373] The memory includes read-only memory (ROM), random access memory (RAM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), one-time programmable read-only memory (OTPROM), electronically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM) or other optical disc storage, magnetic disk storage, magnetic tape storage, or any other computer-readable medium that can be used to carry or store data.
[0374] To achieve the above object, the present invention also provides a computer readable storage medium, such as Fig.19As shown, the computer-readable storage medium stores a loop parallel scheduling processing platform control program applicable to laboratory samples, and the loop parallel scheduling processing platform control program applicable to laboratory samples implements the loop parallel scheduling processing method steps applicable to laboratory samples, for example:
[0375] S1, creating at least two parallel first modules corresponding to the laboratory samples to be scheduled for processing; wherein the first modules are laboratory sample task processes;
[0376] S2. Based on the first module and in combination with a cyclic processing mode, the laboratory samples are processed in real-time parallel scheduling.
[0377] The specific details of the steps have been explained above and will not be repeated here.
[0378] In the description of the embodiments of the present invention, it should be noted that any process or method description in the flowchart or otherwise described herein may be understood as representing a module, fragment or portion of a code comprising one or more executable instructions for implementing steps of a specific logical function or process, and the scope of the preferred embodiments of the present invention includes alternative implementations, in which functions may not be performed in the order shown or discussed, including performing functions in a substantially simultaneous manner or in reverse order depending on the functions involved, which should be understood by technicians in the technical field to which the embodiments of the present invention belong.
[0379] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as an ordered list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by an instruction execution system, device or apparatus (such as a computer-based system, a system including a processing module, or other system that can fetch instructions from an instruction execution system, device or apparatus and execute instructions), or in combination with these instruction execution systems, devices or apparatuses. For the purposes of this specification, a "computer-readable medium" can be any device that can contain, store, communicate, propagate or transmit a program for use by an instruction execution system, device or apparatus, or in combination with these instruction execution systems, devices or apparatuses. More specific examples of computer-readable media (a non-exhaustive list) include the following: an electrical connection with one or more wires (electronic devices), a portable computer disk box (magnetic device), a random access memory (RAM), a read-only memory (ROM), an erasable and programmable read-only memory (EPROM or flash memory), a fiber optic device, and a portable compact disk read-only memory (CDROM).
[0380] In addition, the computer-readable medium may even be paper or other suitable medium on which the program is printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium and then editing, interpreting or processing in other suitable ways if necessary, and then stored in a computer memory.
[0381] In an embodiment of the present invention, in order to achieve the above-mentioned purpose, the present invention further provides a chip system, wherein the chip system includes at least one processor, and when the program instructions are executed in the at least one processor, the chip system executes the steps of the cyclic parallel scheduling processing method applicable to laboratory samples, for example:
[0382] S1, creating at least two parallel first modules corresponding to the laboratory samples to be scheduled for processing; wherein the first modules are laboratory sample task processes;
[0383] S2. Based on the first module and in combination with a cyclic processing mode, the laboratory samples are processed in real-time parallel scheduling.
[0384] The specific details of the steps have been explained above and will not be repeated here.
[0385] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application. Those skilled in the art can clearly understand that for the convenience and simplicity of description, the specific working process of the above-described system, device and unit can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.
[0386] The present invention creates at least two parallel first modules corresponding to the laboratory samples to be scheduled for processing through a method; wherein the first module is a laboratory sample task process; based on the first module and in combination with a cyclic processing mode, the laboratory samples are scheduled for processing in parallel in real time, as well as a system, platform and storage medium corresponding to the method, which can realize cyclic parallel scheduling processing of laboratory samples, that is, cyclic parallel scheduling processing of multiple modules, and, through the scheme of the present invention, the calculation accuracy of the processing time of the sample through the module is high, and the processing efficiency is high.
[0387] In addition, the solution of the present invention uses the Mermaid language to further encapsulate and link the modules to form new functional module units, so that the processing capabilities of the experimental platform can be quickly customized and changed according to user needs; that is, users can easily adjust the process logic to meet the needs of different scenarios.
[0388] The above-mentioned embodiments only express several implementation methods of the present invention, and the description thereof is relatively specific and detailed, but it cannot be understood as limiting the scope of the patent of the present invention. It should be pointed out that, for ordinary technicians in this field, several variations and improvements can be made without departing from the concept of the present invention, which all belong to the protection scope of the present invention. Therefore, the protection scope of the patent of the present invention shall be subject to the attached claims.
Claims
1. A cyclic parallel scheduling processing method suitable for laboratory samples, characterized in that: The method comprises: Create at least two parallel first modules corresponding to the laboratory samples to be scheduled for processing; wherein the first modules are laboratory sample task processes; Based on the first module and in combination with a cyclic processing mode, the laboratory samples are processed in real time and in parallel.
2. A cyclic parallel scheduling processing method suitable for laboratory samples according to claim 1, characterized in that: The step of creating at least two parallel first modules corresponding to the laboratory samples to be processed may further include: Generate and obtain first data corresponding to the laboratory sample, and initialize the processing of the first data; wherein the first data is information data of the laboratory sample to be processed; Based on the first module and in combination with the first data, second data corresponding to the laboratory samples to be scheduled for processing is generated, and the second data is normalized; wherein the second data is time data for processing the laboratory samples.
3. A cyclic parallel scheduling processing method suitable for laboratory samples according to claim 2, characterized in that: The method of generating second data corresponding to the laboratory sample to be scheduled for processing based on the first module and in combination with the first data, and normalizing the second data, further includes: Based on the first module, a first sequence corresponding to the second data is generated; wherein the first sequence is time series data of processing experimental samples; Generate and obtain third data corresponding to the first sequence, and normalize and process the first sequence in sequence according to the third data; wherein the third data is peak time data in the time series.
4. A cyclic parallel scheduling processing method suitable for laboratory samples according to claim 1, characterized in that: The method of scheduling and processing the laboratory samples in real time and in parallel based on the first module and in combination with a cyclic processing mode also includes: Create a first matrix corresponding to the test tubes of the module, and generate fourth data corresponding to the first matrix; wherein the first matrix is the flag matrix data corresponding to each group of test tubes; the fourth data is the processing status flag data corresponding to the module, including: initialization status, running status and completed status; Based on the first module and according to the four data, fifth data corresponding to the module is determined and generated; wherein the fifth data is flag data indicating whether the module is occupied.
5. A cyclic parallel scheduling processing method suitable for laboratory samples according to claim 1 or 4, characterized in that: The method of scheduling and processing the laboratory samples in real time and in parallel based on the first module and in combination with a cyclic processing mode also includes: Generate and obtain first prompt data corresponding to the laboratory sample to be scheduled for processing, and determine and select the next step to be executed based on the first prompt data; wherein the first prompt data is laboratory sample processing status prompt data; the next step includes ending the processing and removing the cover of the sample; Generate and obtain first control data corresponding to the scheduling and processing of laboratory samples, and based on the first control data, schedule and process the laboratory samples in real time and in parallel; wherein the first control data is control instruction data for the laboratory sample scheduling and processing operation.
6. A cyclic parallel scheduling processing method suitable for laboratory samples according to claim 5, characterized in that: The generating and acquiring first control data corresponding to the scheduling and processing of laboratory samples, and scheduling and processing the laboratory samples in real time and in parallel based on the first control data, further comprises: Generate and obtain sixth data corresponding to the laboratory sample processing process; wherein the sixth data is threshold data of whether the laboratory sample processing meets the standard; According to the sixth data, generate and obtain second prompt data corresponding to the scheduled processing of laboratory samples, and determine and select the next step to execute based on the second prompt data; wherein, the second prompt data is laboratory sample processing status prompt data; the next step includes retry processing and sample capping processing.
7. A cyclic parallel scheduling processing system suitable for laboratory samples, characterized in that: The system is applied to a cyclic parallel scheduling processing method applicable to laboratory samples as claimed in any one of claims 1 to 6; the system comprises: A data module creation unit, used to create at least two parallel first modules corresponding to the laboratory samples to be scheduled for processing; wherein the first modules are laboratory sample task processes; The sample scheduling processing unit is used to schedule and process the laboratory samples in real time in parallel based on the first module and in combination with a cyclic processing mode.
8. A cyclic parallel scheduling processing system suitable for laboratory samples according to claim 7, characterized in that: The data module creation unit further includes: A first processing module, used to generate and obtain first data corresponding to the laboratory sample, and initialize the processing of the first data; wherein the first data is information data of the laboratory sample to be processed; A first generating module is used to generate second data corresponding to the laboratory sample to be scheduled for processing based on the first module and in combination with the first data, and to normalize the second data; wherein the second data is time data for processing the laboratory sample; And / or, the first generating module further includes: A second generating module, for generating a first sequence corresponding to the second data based on the first module; wherein the first sequence is time series data of processing experimental samples; A second processing module is used to generate and obtain third data corresponding to the first sequence, and to normalize and process the first sequence in sequence according to the third data; wherein the third data is peak time data in the time series; And / or, the sample scheduling processing unit further includes: The third generation module is used to create a first matrix corresponding to the test tubes of the module, and generate fourth data corresponding to the first matrix; wherein the first matrix is the flag matrix data corresponding to each group of test tubes; the fourth data is the processing status flag data corresponding to the module, including: initialization status, running status and completed status; A first determination module, configured to determine and generate fifth data corresponding to the module based on the first module and the four data; wherein the fifth data is a flag data indicating whether the module is occupied; The fourth generation module is used to generate and obtain first prompt data corresponding to the laboratory sample to be scheduled for processing, and determine and select the next step to be executed based on the first prompt data; wherein the first prompt data is laboratory sample processing status prompt data; the next step includes ending the processing and removing the cover of the sample; A fifth generation module is used to generate and obtain first control data corresponding to the scheduling and processing of laboratory samples, and based on the first control data, to schedule and process the laboratory samples in real time and in parallel; wherein the first control data is control instruction data for the scheduling and processing of laboratory samples; And / or, the fifth generation module further includes: A sixth generating module, used to generate and obtain sixth data corresponding to the laboratory sample processing process; wherein the sixth data is threshold data of whether the laboratory sample processing meets the standard; The third processing module is used to generate and obtain second prompt data corresponding to the scheduled processing of laboratory samples based on the sixth data, and determine and select the next step to execute based on the second prompt data; wherein the second prompt data is laboratory sample processing status prompt data; the next step includes retry processing and sample capping processing.
9. A cyclic parallel scheduling processing platform suitable for laboratory samples, characterized in that: It includes a processor, a memory, and a loop parallel scheduling and processing platform control program suitable for laboratory samples; wherein the loop parallel scheduling and processing platform control program suitable for laboratory samples is executed on the processor, the loop parallel scheduling and processing platform control program suitable for laboratory samples is stored in the memory, and the loop parallel scheduling and processing platform control program suitable for laboratory samples implements the loop parallel scheduling and processing method suitable for laboratory samples as described in any one of claims 1 to 6.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a loop parallel scheduling and processing platform control program suitable for laboratory samples, and the loop parallel scheduling and processing platform control program suitable for laboratory samples implements the loop parallel scheduling and processing method suitable for laboratory samples as described in any one of claims 1 to 6.