一种用于化学发光免疫分析的测试任务规划方法与流程

文档序号:12945769阅读:228来源:国知局
一种用于化学发光免疫分析的测试任务规划方法与流程

本发明涉及化学发光免疫检测技术领域,具体而言,涉及一种用于化学发光免疫分析的测试任务规划方法。



背景技术:

化学发光免疫分析仪具有准确度高、灵敏度高、检测时间短、检测范围宽、无污染等优点,在医院临床诊断等领域得到广泛应用。

化学发光免疫分析是将具有高灵敏度的化学发光测定方法与高特异性的免疫反应方法相结合,借以定量检测各种抗原、半抗原、抗体、激素、酶、脂肪酸、维生素和药物等的分析技术。

现有的全自动化学发光免疫分析仪通常包括以下功能模块:样本仓储模块、试剂仓储模块、样本分配模块、试剂分配模块、反应杯仓储模块、孵育模块、洗涤模块、测量模块。检测过程大致包括:首先将样本和试剂分别放入样本仓储模块和试剂仓储模块,接着将样本和试剂加入到反应杯中,然后使反应杯分别经过孵育、洗涤模块处理,最后使反应杯进入测量模块进行测量。

现有的全自动化学发光免疫分析仪能够实现多任务高通量的有序执行,其核心就是能够根据一定的方法规则进行测试序列的冲突计算、执行时间设定和最优排序。

然而,现有的测试序列规划方法主要存在以下技术缺陷:

(1)当一批测试任务的冲突计算和执行时间设定好之后,本批任务无法进行删除和变更,为传统的预规划模式;

(2)当一批测试任务为预规划模式时,此时无法进行实时急诊,即有急诊测试任务到来后,必须等待前一批次测试执行完毕后再进行急诊测试;

(3)有的化学发光分析仪器为了实现实时急诊,单独增加硬件工位,增加了硬件成本;

(4)采用预规划模式,当第一批任务规划完成后,再添加下一批测试任务,第二批任务单独规划,与第一批任务独立排序,无法真正做到实时最优。



技术实现要素:

本发明就是为了解决现有全自动化学发光免疫分析仪的测试任务规划方法灵活性不够,实时性低,硬件设计复杂,成本高的技术问题,提供了一种灵活性高、实时性高、通用性好、无需增加额外急诊工位的一种用于化学发光免疫分析的测试任务规划方法。

本发明提供的用于化学发光免疫分析的测试任务规划方法,包括以下步骤:

步骤s101,在sql数据库模块中创建待测任务信息表,待测任务信息表用于保存所有待测试任务;然后为试剂分配模块、孵育模块、洗涤模块各建立一张独立的数据库表,分别是试剂分配模块表、孵育模块表、洗涤模块表;

步骤s102,通过sql语句执行模块用sql语句对待测任务信息表中的所有任务进行最优排序,确定需要进行的运行时间最短的待测试项,即最优测试项;

步骤s103,对步骤s102检索出的最优测试项进行冲突检测;

步骤s104,判断是否存在冲突,如果是返回步骤s102,否则进入步骤s105;

步骤s105,执行最优测试项的测试任务,并在待测任务信息表中删除该测试项;

步骤s106,判断待侧任务信息表是否为空,如果是则结束,否则进入步骤s102。

优选地,所述步骤s101中,待测任务信息表的列名要素包括测试编号、测试模式m、第一次孵育时间t1、第二次孵育时间t2和洗涤时间t3,

试剂分配模块表的列名要素包括测试编号、测试模式m、第一次孵育时t1、第二次孵育时t2、是否二次加样;

孵育模块表的列名要素包括测试编号、测试模式m、第一次孵育时间倒计时tn1、第二次孵育时间倒计时tn2;

洗涤模块表的列名要素包括测试编号、测试模式m、第一次孵育时间t1、第二次孵育时间t2和洗涤时间倒计时tn3;

步骤s102的具体过程包括:

步骤s201,通过计算模块计算待测任务信息表中的所有测试项的wb1、wb2和cb值,定义wb1=t1+t2+t3,wb2=t1+t3,cb=2*t3;进入步骤s203;

步骤s203,通过sql语句执行模块用sql语句检索待测任务信息表中是否存在cb最小且结果唯一的测试项,如果是则进入步骤s207,否则进入步骤s204;

步骤s204,通过sql语句执行模块用sql语句检索待测任务信息表中是否存在wb2最小且结果唯一的测试项,如果是则进入步骤s207,否则进入步骤s205;

步骤s205,通过sql语句执行模块用sql语句检索待测任务信息表中是否存在wb1最小且结果唯一的测试项,如果如则进入步骤s207;

步骤s207,确定该测试项为最优测试项,即待测试项。

优选地,步骤s103和s104中对检索出的待测试项进行冲突检测的具体过程可以是:

步骤s301,通过sql语句执行模块用sql语句查询孵育模块表中是否存在同时满足以下条件的测试项:

条件①:孵育模块表.tn1=待测试项.t1

条件②:待测试项.m=孵育模块表.m;

如果是,则判定有冲突,否则进入s302;

步骤s302,通过sql语句执行模块用sql语句查询孵育模块表中是否存在同时满足以下条件的测试项:

条件①:孵育模块表.tn1=待测试项.t1+t2

条件②:待测试项.m=孵育模块表.m;

如果是,则判定有冲突,否则进入s303;

步骤s303,通过sql语句执行模块用sql语句查询孵育模块表中是否存在同时满足以下条件的测试项:

条件①:孵育模块表.tn1+tn2+t3=待测试项.t1+t2+t3

条件②:孵育模块表.tn1+tn2+t3=待测试项.t1+t2+2*t3

条件③:待测试项.m=孵育模块表.m;

如果是,则判定有冲突,否则进入s304;

步骤s304,通过sql语句执行模块用sql语句查询试剂分配模块表中是否存在记录,如果是,则判定有冲突,否则进入s305;

步骤s305,通过sql语句执行模块用sql语句查询孵育模块表中是否存在同时满足以下条件的测试项:

条件①:洗涤模块表.tn3=待测试项.t1+t2+t3

条件②:洗涤模块表.tn3=待测试项.t1+t2+2*t3

条件③:待测试项.m=孵育模块表.m

如果是,则判定有冲突,否则判定无冲突。

优选地,在进行所述步骤s203之前,通过sql语句执行模块用sql语句检索待测任务信息表中是否存在标记为急诊的测试,如果是则进入步骤s207。

本发明的有益效果是:

1.预规划好的测试任务可以随时进行删除和变更,方便灵活。

2.强实时急诊,急诊任务到来后能够在下个测试任务开始执行,无需等待预规划好的任务执行完毕后再执行。

3.无需增加额外的硬件工位,不会增加额外的成本,简化、统一了硬件设计。

4.改变现有的预规划模式,不再按照一批任务进行冲突计算和执行时间规划,能够随时基于当前现有的测试任务进行冲突计算和最优排序。

本发明进一步的特征和方面,将在以下参考附图的具体实施方式的描述中,得以清楚地记载。

附图说明

图1是全自动化学发光免疫分析仪的结构示意图;

图2是测试任务规划和最优排序过程流程图;

图3创建的数据库表;

图4是对待测任务信息表中的所有任务进行最优排序,确定最优测试项的流程图;

图5是冲突检测的流程图;

图6是本发明的架构图。

图中符号说明:

1.样本仓储模块,2.试剂仓储模块,3.样本分配模块,4.试剂分配模块,5.反应杯仓储模块,6.孵育模块,7.洗涤模块,8.测量模块。

具体实施方式

以下参照附图,以具体实施例对本发明作进一步详细说明。

如图1所示,全自动化学发光免疫分析仪主要由样本仓储模块1、试剂仓储模块2、样本分配模块3、试剂分配模块4、反应杯仓储模块5、孵育模块6、洗涤模块7、测量模块8构成。

全自动化学发光免疫分析仪实现多任务高通量测试任务的流程种类一般有三种模式:

1、模式一:

step1:空反应杯从反应杯仓储模块5转移到孵育模块6,同时

样本分配模块3从样本仓储模块1中取样本,试剂分配模块4

从试剂仓储模块2中取试剂;

step2:样本分配模块3将样本添加到反应杯中;

step3:试剂分配模块4将试剂添加到反应杯中;

step4:样本试剂混合物在反应杯中,停留在孵育模块6进行孵育;

step5:孵育完成后,反应杯进入到洗涤模块7进行洗涤;

step6:洗涤完成后,反应杯进入测量模块8进行结果检测。

2、模式二:

step1:空反应杯从反应杯仓储模块5转移到孵育模块6,同时样本分配模块3从样本仓储模块1中取样本,试剂分配模块4从试剂仓储模块2中取试剂;

step2:样本分配模块3将样本添加到反应杯中;

step3:试剂分配模块4将试剂添加到反应杯中;

step4:样本试剂混合物在反应杯中,停留在孵育模块6进行孵育;

step5:孵育完成后,试剂分配模块从试剂仓储模块中取试剂,添加试剂到反应杯中,进行二次加样;

step6:二次加样完成后,反应杯停留在孵育模块中进行二次孵育。

step7:二次孵育完成后,反应杯进入到洗涤模块进行洗涤;

step8:洗涤完成后,反应杯进入测量模块进行结果检测。

3、模式三:

step1:空反应杯从反应杯仓储模块转移到孵育模块,同时样本分配模块从样本仓储模块中取样本,试剂分配模块从试剂仓储模块中取试剂;

step2:样本分配模块将样本添加到反应杯中;

step3:试剂分配模块将试剂添加到反应杯中;

step4:样本试剂混合物在反应杯中,停留在孵育模块进行孵育;

step5:孵育完成后,反应杯进入到洗涤模块进行第一次洗涤;

step6:第一次洗涤完成后,反应杯回到孵育模块,同时试剂取样模块从试剂仓储模块中进行第二次试剂取样;

step7:试剂取样模块进行二次加样;

step8:二次加样完成后,反应杯停留在孵育模块进行第二次孵育;

step9:第二次孵育完成后,反应杯进入到洗涤模块中进行第二次洗涤;

step10:第二次洗涤完成后,反应杯进行测量模块进行结果检测。

当批量测试任务进行时,为了保证反应杯在孵育模块的孵育时间严格受控,需要进行测试任务的冲突计算和测试任务的规划,其中,冲突点在于多种测试任务同时进行测试时:

1.同一时间周期内,只能有一个反应杯从反应杯仓储模块转移到孵育模块;

2.同一时间周期内,只能有一个反应杯进行加样或二次加样动作;

3.同一时间周期内,只能有两个不同模式测试下的反应杯进入洗涤模块;

4.同一时间周期内,只能有一个反应杯进入测量模块。

预规划的实现方法是在测试任务执行之前,先进行推算,包括每个测试项在何时开始加样,何时进行孵育,何时进行洗涤,何时进行测量,全部推算完成后开始按照时间定点执行任务,中间无法进行任务的删除和调整,一旦出现调整,重新进行任务预规划耗费时间较长。本发明基于嵌入式数据库技术,采用数据库接口更加灵活的实现测试任务的实施规划和最优排序。具体过程如下文的记载:

步骤s101,在sql数据库模块中创建待测任务信息表,待测任务信息表用于保存所有待测试任务,一条记录代表一个测试任务,即一个测试项;然后为试剂分配模块、孵育模块、洗涤模块各建立一张独立的数据库表,分别是试剂分配模块表、孵育模块表、洗涤模块表。

待测任务信息表如图3中(a)所示,该数据库表的表名为“待测任务信息表”,列名要素有测试编号、测试模式m、第一次孵育时间t1、第二次孵育时间t2、洗涤时间t3、是否急诊。测试编号表示每一个测试任务的编号,该编号是唯一的。测试模式m表示前述三种模式中的一种。

第一次孵育时t1表示:模式二的情况下,第一次试剂加样完成到第二次试剂加样开始前之间需要的时间;模式三的情况下,第一次试剂加样完成到开始第一次洗涤之前需要的时间。

第二次孵育时t2表示,模式二的情况下,第二次试剂加样完成到开始洗涤前之间需要的时间;模式三的情况下,第二次试剂加样完成到开始第二次洗涤之前需要的时间。

洗涤时间t3表示洗涤模块对反应杯进行洗涤的时间。

是否急诊表示是否需要进行急诊。

试剂分配模块表如图3中(b)所示,用于保存试剂分配模块动作的任务记录,列名要素有测试编号、测试模式m、第一次孵育时t1、第二次孵育时t2、是否二次加样。

孵育模块表如图3中(c)所示,用于保存孵育模块动作的任务记录,列名要素有测试编号、测试模式m、第一次孵育时间倒计时tn1、第二次孵育时间倒计时tn2。

洗涤模块表如图3中(d)所示,用于保存洗涤模块动作的任务记录,列名要素有测试编号、测试模式m、第一次孵育时间t1、第二次孵育时间t2、洗涤时间倒计时tn3。

上述各数据库表中,m值是一、二、三,对应前文测试任务的流程种类模式一、模式二、模式三。

在分析仪的实际测试任务执行时,试剂分配模块表、孵育模块表、洗涤模块表中的记录会被实时更新。

步骤s102,通过sql语句执行模块用sql语句对待测任务信息表中的所有任务进行最优排序,确定需要进行的运行时间最短的待测试项,即最优测试项。

步骤s103,对步骤s102检索出的最优测试项进行冲突检测。

步骤s104,判断是否存在冲突,如果是返回步骤s102,否则进入步骤s105。

步骤s105,执行最优测试项的测试任务,并在待测任务信息表中删除该测试项。化学发光免疫分析仪的控制电路板中的应用程序定时查询各个表的状态后,从而控制试剂分配模块、孵育模块、洗涤模块动作。

步骤s106,判断待侧任务信息表是否为空,如果是则结束,否则进入步骤s102。

如图4所示,上述步骤s102中对待测任务信息表中的所有任务进行最优排序,确定接下来需要进行的测试项的具体过程是:

步骤s201,通过计算模块计算待测任务信息表中的所有测试项的wb1、wb2和cb值,定义wb1=t1+t2+t3,wb2=t1+t3,cb=2*t3。

步骤s202,通过sql语句执行模块用sql语句检索待测任务信息表中是否存在标记为急诊的测试,如果是则进入步骤s207,否则进入步骤s203。

步骤s203,通过sql语句执行模块用sql语句检索待测任务信息表中是否存在cb最小且结果唯一的测试项,如果是则进入步骤s207,否则进入步骤s204。

步骤s204,通过sql语句执行模块用sql语句检索待测任务信息表中是否存在wb2最小且结果唯一的测试项,如果是则进入步骤s207,否则进入步骤s205。

步骤s205,通过sql语句执行模块用sql语句检索待测任务信息表中是否存在wb1最小且结果唯一的测试项,如果如则进入步骤s207,否则进入步骤s206。

步骤s206,通过sql语句执行模块用sql语句检索测试任务下达时间最早的测试项,确定该测试项为最优测试项。

步骤s207,确定该测试项为最优测试项,即待测试项。

如图5所示,上述步骤s103、s104中对检索出的最优测试项(待测试项)进行冲突检测的具体过程可以是:

步骤s301,通过sql语句执行模块用sql语句查询孵育模块表中是否存在同时满足以下条件的测试项:

条件①:孵育模块表.tn1=待测试项.t1

条件②:待测试项.m=孵育模块表.m

解释:条件①是孵育模块表中的tn1的值与待测试项中t1的值相等,条件②是待测试项中的m和孵育模块表中的m相同。

如果是,则判定有冲突,否则进入s302。

步骤s302,通过sql语句执行模块用sql语句查询孵育模块表中是否存在同时满足以下条件的测试项:

条件①:孵育模块表.tn1=待测试项.t1+t2

条件②:待测试项.m=孵育模块表.m

如果是,则判定有冲突,否则进入s303。

步骤s303,通过sql语句执行模块用sql语句查询孵育模块表中是否存在同时满足以下条件的测试项:

条件①:孵育模块表.tn1+tn2+t3=待测试项.t1+t2+t3

条件②:孵育模块表.tn1+tn2+t3=待测试项.t1+t2+2*t3

条件③:待测试项.m=孵育模块表.m

如果是,则判定有冲突,否则进入s304。

步骤s304,通过sql语句执行模块用sql语句查询试剂分配模块表中是否存在记录,如果是,则判定有冲突,否则进入s305。

步骤s305,通过sql语句执行模块用sql语句查询孵育模块表中是否存在同时满足以下条件的测试项:

条件①:洗涤模块表.tn3=待测试项.t1+t2+t3

条件②:洗涤模块表.tn3=待测试项.t1+t2+2*t3

条件③:待测试项.m=孵育模块表.m

如果是,则判定有冲突,否则判定无冲突。

上述整个方法流程可以实现批量测试的实施冲突判定和执行,不再受预规划的影响。数据库的检索过程一千条数据检索时间仅为毫秒级别,带来的计算延迟可忽略不计。下表是经过排序后实际测试效率对比:

以上所述仅对本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1