一种提高控制端与仪器的数据传输的容错性的方法和装置与流程

文档序号:12596983阅读:296来源:国知局
一种提高控制端与仪器的数据传输的容错性的方法和装置与流程

本发明涉及体外诊断领域的数据采集,尤其涉及一种提高控制端与仪器的数据传输的容错性的方法和装置。



背景技术:

体外诊断(英文简称为IVD,英文全称为In Vitro Diagnosis),是指在人体之外通过对人体的血液等组织及分泌物进行检测获取临床诊断信息,进而判断疾病或机体功能。临床诊断信息的80%左右均来自体外诊断,而该部分诊断所花费的费用不到整个诊断费用的20%。因此,体外诊断已经是人类疾病预防、诊断、治疗的重要组成部分。

通过体外诊断仪器获取的临床诊断信息,主要包括人体的血液组织或者分泌物中某种成份的浓度。体外诊断仪器(下面统一描述为仪器)主要包括加样模块、温育模块、清洗模块和测量模块。其中,加样模块用于将样本放置到反应杯内,并加入相应的试剂进行反应。温育模块用于将样本放置在预设温度下进行培育,测量模块对清洗模块清洗后的样本进行测量,得到测量结果,并将得到的测量结果由仪器实时的上传至控制端,以便于对测量的数据进行数据分析。

在仪器将数据上传至控制端时,如果控制端出现硬件故障,或者控制端的操作系统不稳定,或者控制软件的不稳定等因素,仪器与控制端会断开连接。在断开连接时,仪器所测量的实时数据丢失,造成本次测量的结果无效或者报废,造成测试试剂、测试时间的浪费。



技术实现要素:

本发明的目的在于提供一种提高控制端与仪器的数据传输的容错性的方法,以解决现有技术当仪器与控制端断开,仪器所测量的实时数据丢失,造成本次测量的结果无效或者报废,造成测试试剂、测试时间的浪费的问题。

第一方面,本发明实施例提供了一种提高控制端与仪器的数据传输的容错性的方法,所述方法包括:

所述仪器根据所述控制端下发的指令序列生成测量结果;

检测所述仪器与所述控制端是否处于有效连接状态;

当检测到所述仪器与所述控制端没有处于有效连接状态时,将未发送的测量结果按序存储在所述仪器的存储器中;

当检测到所述仪器与所述控制端处于有效连接状态时,所述仪器将生成的测量结果逐个发送至所述控制端。

结合第一方面,在第一方面的第一种可能实现方式中,所述当检测到所述仪器与所述控制端处于有效连接状态时,所述仪器将生成的测量结果逐个发送至所述控制端的步骤包括:

当检测到所述仪器与所述控制端处于断开后重新连接的有效连接状态时,获取存储在所述仪器的存储器中的测量结果;

根据所述测量结果的存储顺序,依次将所述测量结果发送至所述控制端。

结合第一方面的第一种可能实现方式,在第一方面的第二种可能实现方式中,在所述根据所述测量结果的存储顺序,依次将所述测量结果发送至所述控制端步骤之前,所述方法还包括:

检测所述仪器是否处于工作状态;

当所述仪器处于工作状态时,所述仪器将所述存储器中存储的测量结果逐个上传至控制端。

结合第一方面、第一方面的第一种可能实现方式,或者第一方面的第二种可能实现方式,在第一方面的第三种可能实现方式中,所述测量结果通过第一链表按序存储在所述仪器的存储器,所述仪器将所述存储器中存储的测量结果逐个上传至控制端步骤具体为:

所述仪器从所述存储器中的第一链表的表头开始遍历,逐个将所述测量结果发送至所述控制端;

在每个测量结果发送成功后,释放存储所述测量结果的空间,并将第一链表的表头指向下一个测量结果。

结合第一方面,在第一方面的第四种可能实现方式中,所述仪器根据所述控制端下发的指令序列生成测量结果的步骤包括:

所述仪器接收控制端发送的指令序列并动态申请一个指令存储单元存储每条指令序列,通过第二链表按序关联所述指令序列;

所述仪器根据所述第二链表的表头依次执行所述指令序列,获得所述指令序列所对应的测量结果。

第二方面,本发明实施例提供了一种提高控制端与仪器的数据传输的容错性的装置,所述装置包括:

测量结果生成单元,用于由所述仪器根据所述控制端下发的指令序列生成测量结果;

连接状态检测单元,用于检测所述仪器与所述控制端是否处于有效连接状态;

存储单元,用于当检测到所述仪器与所述控制端没有处于有效连接状态时,将未发送的测量结果按序存储在所述仪器的存储器中;

结果发送单元,用于当检测到所述仪器与所述控制端处于有效连接状态时,所述仪器将生成的测量结果逐个发送至所述控制端。

结合第二方面,在第二方面的第一种可能实现方式中,所述结果发送单元包括:

断开检测子单元,用于当检测到所述仪器与所述控制端处于断开后重新连接的有效连接状态时,获取存储在所述仪器的存储器中的测量结果;

依次发送子单元,用于根据所述测量结果的存储顺序,依次将所述测量结果发送至所述控制端。

结合第二方面的第一种可能实现方式,在第二方面的第二种可能实现方式中,所述装置还包括:

工作状态检测单元,用于检测所述仪器是否处于工作状态;

检测确认单元,用于当所述仪器处于工作状态时,所述仪器将所述存储器中存储的测量结果逐个上传至控制端。

结合第二方面、第二方面的第一种可能实现方式或第二方面的第二种可能实现方式,在第二方面的第三种可能实现方式中,所述测量结果通过第一链表按序存储在所述仪器的存储器,所述结果发送单元包括:

逐个发送子单元,用于由所述仪器从所述存储器中的第一链表的表头开始遍历,逐个将所述测量结果发送至所述控制端;

释放子单元,用于在每个测量结果发送成功后,释放存储所述测量结果的空间,并将第一链表的表头指向下一个测量结果。

结合第二方面,在第二方面的第四种可能实现方式中,所述测量结果生成单元包括:

关联子单元,用于由所述仪器接收所述控制端发送的指令序列并动态申请一个指令存储单元存储每条指令序列,通过第二链表按序关联所述指令序列;

执行子单元,用于由所述仪器根据所述第二链表的表头依次执行所述指令序列,获得所述指令序列所对应的测量结果。

第三方面,本发明实施例提供了一种免疫分析仪,所述免疫分析仪包括第二方面、第二方面的第一种可能实现方式、第二方面的第二种可能实现方式、第二方面的第三种可能实现方式、第二方面的第四种可能实现方式中的任意一种提高控制端与仪器的数据传输的容错性的装置。

在本发明中,仪器根据控制端下发的指令序列生成测量结果,并检测仪器与控制器是否处于有效连接状态,如果没有处于有效连接状态时,则将未发送的测量结果存储在所述仪器的存储器中,如果处于有效连接状态时,所述仪器将生成的测量结果逐个发送至控制端。在出现故障时,仪器与控制端没有处于有效连接状态,生成的测量结果按序存储在仪器中,当仪器与控制端再次处于有效连接状态时,逐个将存储的测量结果发送至控制端,因而在仪器与控制端断开时的测量结果仍然能够有效的上传,避免整个测试作废,以及避免测试试剂的浪费,有利于提高测试效率。

附图说明

图1是本发明实施例提供的一种提高控制端与仪器的数据传输的容错性的方法的实现流程图;

图2为本发明实施例提供存储单元的链表结构示意图;

图3是本发明实施例提供的所述仪器根据所述控制端下发的指令序列生成测量结果的实现流程图;、

图4为本发明第四实施例提供的一种提高控制端与仪器的数据传输的容错性的装置的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例的目的在于提供一种提高控制端与仪器的数据传输的容错性的方法,以解决现有技术中,在体外诊断仪的测试过程中,由于通信故障的原因,导致仪器会丢失测量结果,从而会使得整个测试作废,造成测试试剂和测试时间的浪费的问题,下面结合附图,对本发明作进一步的说明。

图1示出了本发明实施例提供的一种提高控制端与仪器的数据传输的容错性的方法的实现流程,详述如下:

在步骤S101中,所述仪器根据所述控制端下发的指令序列生成测量结果。

在本发明实施例中所述仪器,可以为体外诊断仪,也可以为其它需要与控制端进行数据传输的其它设备,比如对除人体特征以外的其它测试结果进行数据采集的设备。所述控制端,可以为计算机、平板电脑或者其它控制终端等。在所述控制端可以安装测试软件,通过测试软件将测试的指令序列发送至仪器。所述仪器可以包括嵌入式微处理器,比如ARM芯片、FPGA芯片或者单片机等。所述仪器与所述控制端可以采用串行接口、网口或者其它无线通信方式进行通信。

在一般情况下,所述控制端会在开始测试前将指令序列发送至仪器。所述仪器在接收到指令序列后,根据指令序列中的执行顺序,依次执行指令序列中的指令。比如,所述指令序列可以包括控制体外诊断仪的加样、温育、清洗和测量等动作。

当仪器接收到指令序列后,根据指令序列中的指令以及执行的先后顺序和时间要求,执行具体的指令动作。在执行指令序列后,会生成与指令序列相应的测量结果。

在步骤S102中,检测所述仪器与所述控制端是否处于有效连接状态。

具体的,所述检测操作可以由仪器完成,也可以由控制端完成。当控制端检测时,可由控制端获取连接状态的标识,并按照指定的时间间隔将连接状态标识发送至仪器,在指定时长内,如果仪器未接收到连接状态标识,则仪器可自动确认当前不是有效的连接状态。

其中,仪器检测所述连接状态是否有效时,可以通过检测发送的测量结果是否有发送成功的响应来判断。当仪器没有收到发送成功的响应时,可判断当前不是处于有效连接状态。

其中,所述仪器与控制端处于有效连接状态,是指仪器与控制端处于正常的通信连接,仪器可以将测量结果发送至控制端,并且控制端可以正常的接收到所述仪器发送的测量结果。并且,控制端可以正常的将指令序列发送至仪器。

所述仪器与控制端没有处于有效连接时,则可能是连接线路出现中断,或者软件出现故障,或者其它导致数据接收不正常的故障出现。

在步骤S103中,当检测到所述仪器与所述控制端没有处于有效连接状态时,将未发送的测量结果按序存储在所述仪器的存储器中。

将所述测量结果按序存储,具体可以为将所述测量结果依次存储到存储器中对应的结果存储单元中。其中,所述测量结果与结果存储单元一一对应。即,在每个结果存储单元中存储一个测量结果,如图2示,在每个结果存储单元中存储有测量结果,并且还包括下一结果存储单元的地址链表,根据上一个结果存储单元中的链表地址,可以查找到下一个结果存储单元的地址,并根据相应的地址,对测量结果依次进行存储。

当然,测量结果与结果存储单元一一对应只是一种较为优化的实施方式,还可以在一个结果存储单元中存储两个或者更多个测量结果。当每个所述结果存储单元中存储多个测量结果时,则在测量结果的发送时,将同一个结果存储单元中的多个测量结果,按照存储的先后顺序,依次发送至控制端。另外,由于测量结果与测量结果之间的间隔时长可能会较长,为了能够更为实时的获取仪器的测量结果,所述测量结果优先存储在单独的结果存储单元中。

所述仪器依次执行所述指令序列生成测量结果,并将所述测量结果通过对应的结果存储单元按序存储,所述存储单元之间可以通过第一链表关联:

所述仪器生成第一测量结果,并将所述第一测量结果存储在第一结果存储单元,并且将第一链表的表头指向所述第一结果存储单元;

所述仪器生成第二测量结果(第二测量结果的生成时间在第一测量结果之后,且第一测量结果与第二测量结果相邻),将所述第二测量结果存储在第一结果存储单元中的第一链表信息所指向的第二结果存储单元,如此反复,直到指令序列执行完毕,得到一个包括第一链表信息的结果存储单元组。

根据所述结果存储单元中的第一链表,可以将结果存储单元中存储的测量结果依次上传至控制端。

比如,对于图2中结果存储单元,分别存储有4个测量结果。将测量结果发送至控制端时,第一链表的表头首先指向第一个结果存储单元,将第一个结果存储单元中存储的第一测量结果上传至控制端。在上传成功后,释放第一结果存储单元的空间,并根据第一结果存储单元中的链表地址,使第一链表的表头指向第二结果存储单元,从而将第二测量结果存储单元中的第二测量结果上传至控制端。然后依次上传第三测量结果及第四测量结果。当检测到第一链表的表头指向的结果存储单元为空时,则暂停上传,可以检测指令序列是否执行完毕,如果执行完毕,则结束上传。

在步骤S104中,当检测所述仪器与所述控制端处于有效连接状态时,所述仪器将生成的测量结果逐个发送至所述控制端。

其中,所述当检测到所述仪器与所述控制端处于有效连接状态时,所述仪器将生成的测量结果逐个发送至所述控制端的步骤包括:

当检测到所述仪器与所述控制端处于断开后重新连接的有效连接状态时,获取存储在所述仪器的存储器中的测量结果;

根据所述测量结果的存储顺序,依次将所述测量结果发送至所述控制端。

其中,当检测到所述仪器与所述控制端处于断开后重新连接的有效连接状态时,则获取存储在所述仪器中的测量结果。并根据测量结果的存储顺序,将存储的测量结果先发送至控制端,直到所有测量结果都发送至控制端。

优选的一种实施方式中,在所述根据所述测量结果的存储顺序,依次将所述测量结果发送至所述控制端步骤之前,所述方法还包括:

检测所述仪器是否处于工作状态;

当所述仪器处于工作状态时,所述仪器将所述存储器中存储的测量结果逐个上传至控制端。

其中,所述仪器是否处于工作状态,是指仪器是否处于测试状态,如果仪器出现意外中断,或者检测中止,或者正常关机,则说明仪器没有处于工作状态。当所述仪器没有处于工作状态时,则仪器被初始化。所述仪器是否处于工作状态的检测,可以通过获取预先设定的工作状态标识信息,并根据所述工作状态的标识信息确定所述仪器是否处于工作状态。

当所述仪器处于工作状态时,则将所述存储器中存储的测量结果逐个上传至控制端。

本发明实施例中所述的有效连接状态,包括两种状态:第一种,仪器与所述控制端从测试开始时一直处于有效连接状态,以及第二种,所述仪器与所述控制端在断开后再重新连接的有效连接状态。

对于第二种有效连接状态,如图2所示,当出现通信故障,比如在第二结果存储单元中的测量结果发送完毕后,仪器等待控制端返回第二结果存储单元中的测量结果发送成功的确认消息。

在没有接收到测量结果发送成功的确认消息时,比如第二结果存储单元中的测量结果发送后,仪器一直没有收到发送成功的确认消息,那么根据步骤S103中的说明,仪器会将所述测量结果按序存储在存储器中。

当所述仪器与所述控制端重新建立连接,比如仪器在记录一段时间不处于有效连接态后,重新检测到仪器与控制端能够正常通信,那么这个时候,仪器与控制端所处的状态即为断开后的重新连接的有效连接状态。此时,查找第一链表的表头所指向的结果存储单元的位置,并将表头所指向的结果存储单元中的测量结果发送至控制端。在接收到控制端返回的发送成功的确认消息后,将表头指向下一结果存储单元,并可以释放发送成功的测量结果所对应的结果存储单元。

比如,当仪器与控制端重新建立连接时,第一链表的表头仍然指向第二结果存储单元,将所述第二结果存储单元中的测量结果重新发送至控制端。当接收到控制端返回的发送成功的确认消息后,第一链表的表头指向第三结果存储单元,并且可以释放第二结果存储单元中存储的数据。

控制端在接收到仪器发送的测试结果后,可以对其进行换算,得到最终的浓度结果,并在数据库中的对应位置写入测量结果及浓度结果数值。

本发明实施例由仪器根据控制端下发的指令序列生成测量结果,并检测仪器与控制器是否处于有效连接状态,如果没有处于有效连接状态时,则将未发送的测量结果存储在所述仪器的存储器中,如果处于有效连接状态时,所述仪器将生成的测量结果逐个发送至控制端。在出现故障时,仪器与控制端没有处于有效连接状态,生成的测量结果按序存储在仪器中,当仪器与控制端再次处于有效连接状态时,逐个将存储的测量结果发送至控制端,因而在仪器与控制端断开时的测量结果仍然能够有效的上传,避免整个测试作废,以及避免测试试剂的浪费,有利于提高测试效率。

另外,作为本发明进一步优化的实施方式中,如图3所示,所述仪器根据所述控制端下发的指令序列生成测量结果的步骤包括:

在步骤S301中,所述仪器接收控制端发送的指令序列并动态申请一个指令存储单元存储每条指令序列,通过第二链表按序关联所述指令序列。

在步骤S302中,所述仪器根据所述第二链表的表头依次执行所述指令序列,获得所述指令序列所对应的测量结果。

其中,动态申请指令存储单元的过程具体为:

当测试开始时,仪器申请一个第一指令存储单元,并且在指令存储单元中存储第二链表所指向的第二指令存储单元的地址。当第一指令存储单元存储从控制端发送的指令序列,存储在所述第一指令存储单元时,则动态申请第三指令存储单元,并且动态地在第二指令存储单元中存储指向第三指令存储单元的地址的第二链表。如此反复,直到完成所有指令序列的存储。

为了进一步提高测试的稳定性和有效性,本发明实施例对指令序列生成测量结果的方式作了进一步优化,通过设置时序存储单元,所述时序存储单元用于接收并存储所述控制端下发的指令序列。并且,所述指令序列与所述时序存储单元可以一一对应,即在一个时序存储单元中存储一个指令序列。所述时序存储单元之间的结构可以如图2所示,两个相邻的时序存储单元之间通过第二链表关接。

当仪器在接收控制端的指令序列时,如果中断了一段时间重新建立正常连接时,所述仪器可以根据所述时序存储单元的第二链表尾部存储的指令序列确定需要接收的指令序列,并根据所述需要接收的指令序列,继续接收控制端下发的指令序列。比如,仪器可以将时序存储单元的第二链表尾部存储的指令序列发送给控制端,控制端根据该指令序列,检测本次测试的全部指令序列是否发送完毕。如果仪器的第二链表尾部存储的指令序列不是处于控制端所发送的全部指令序列的结尾,则将控制端中剩余未发送的指令序列发送至仪器。

或者,所述仪器也可以接收控制端重新发送的指令序列,或者仪器可以自动过滤重复的指令序列,对未接收的指令序列进行接收存储。

另外,当仪器执行完某一指令存储单元中的指令序列时,可根据指令存储单元中存储的第二链表地址查找到下一个指令存储单元,并释放当前已执行完成的指令存储单元中的数据。

通过将指令序列存储在仪器的指令存储单元中,可以使控制端一次将较多的指令序列发送至仪器。并且在发送过程中出现中断时,仍然可以保护指令序列发送的有效性。并且将指令序列发送至仪器中按序存储的方式,可以更为及时有效的控制指令执行的及时性。

图4示出了本发明第四实施例提供的提高控制端与仪器的数据传输的容错性的装置的结构示意图,详述如下:

本发明实施例所述提高控制端与仪器的数据传输的容错性的装置,包括:

测量结果生成单元401,用于由所述仪器根据所述控制端下发的指令序列生成测量结果;

连接状态检测单元402,用于检测所述仪器与所述控制端是否处于有效连接状态;

存储单元403,用于当检测到所述仪器与所述控制端没有处于有效连接状态时,将未发送的测量结果按序存储在所述仪器的存储器中;

结果发送单元404,用于当检测到所述仪器与所述控制端处于有效连接状态时,所述仪器将生成的测量结果逐个发送至所述控制端。

优选的,所述结果发送单元包括:

断开检测子单元,用于当检测到所述仪器与所述控制端处于断开后重新连接的有效连接状态时,获取存储在所述仪器的存储器中的测量结果;

依次发送子单元,用于根据所述测量结果的存储顺序,依次将所述测量结果发送至所述控制端。

优选的,所述装置还包括:

工作状态检测单元,用于检测所述仪器是否处于工作状态;

检测确认单元,用于当所述仪器处于工作状态时,所述仪器将所述存储器中存储的测量结果逐个上传至控制端。

优选的,所述测量结果通过第一链表按序存储在所述仪器的存储器,所述结果发送单元包括:

逐个发送子单元,用于由所述仪器从存储器中的第一链表的表头开始遍历,逐个将所述测量结果发送至控制端;

释放子单元,用于在每个测量结果发送成功后,释放存储所述测量结果的空间,并将第一链表的表头指向下一个测量结果。

优选的,所述测量结果生成单元包括:

关联子单元,用于由所述仪器接收控制端发送的指令序列并动态申请一个指令存储单元存储每条指令序列,通过第二链表按序关联所述指令序列;

执行子单元,用于由所述仪器根据所述第二链表的表头依次执行所述指令序列,获得所述指令序列所对应的测量结果。

本发明实施例所述提高控制端与仪器的数据传输的容错性的装置,与图1-3所述提高控制端与仪器的数据传输的容错性的方法对应,在此不作重复赘述。

另外,本发明还提供了一种免疫分析仪,所述免疫分析仪包括上述的提高控制端与仪器的数据传输的容错性的装置。

在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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