基于LabVIEW的电化学工作站控制方法、上位机及存储介质与流程

文档序号:16332194发布日期:2018-12-19 06:16阅读:567来源:国知局
基于LabVIEW的电化学工作站控制方法、上位机及存储介质与流程

本发明涉及电化学分析技术领域,尤其涉及一种基于labview的电化学工作站控制方法、上位机及存储介质。

背景技术

随着电子技术的发展,电子设备的使用越来越广泛,而电子设备大都需要电池进行续航,所以对于电池性能的研究也逐渐被重视。在电池性能的研究过程中,通过电化学工作站对电池进行电化学检测是必不可少的步骤。现有技术中的上位机在对电化学工作站在进行控制时,在串口通讯模块接收的数据量较大时,会因为数据接收线程的接收量不足,导致出现接受速度慢或者数据丢失的情况。而更换硬件来提升性能又会增加硬件成本,因此如何有效利用线程来控制电化学工作站的工作是急需解决的问题。



技术实现要素:

本发明的主要目的在于提供一种基于labview的电化学工作站控制方法、上位机及存储介质,旨在解决电化学工作站在串口通讯模块需要接收大量接收数据时,上位机的线程无法有效分配导致接收速度较慢或数据丢失的技术问题。

为实现上述目的,本发明提供一种基于labview的电化学工作站控制方法,所述基于labview的电化学工作站控制方法包括以下步骤:

嵌入有labview平台的上位机运行时,检测通讯串口模块的缓存的数据量计算缓存使用率,并根据所述缓存使用率,判断当前电化学工作站各模块的线程优先级是否需要调整;

若判定当前线程的优先级需要进行调整,则根据所述缓存使用率,确定对应模块的线程优先级的调整幅度;

根据所述线程优先级的调整幅度调整线程优先级,并进行对应的数据处理。

可选地,所述根据所述缓存使用率,判断当前电化学工作站各模块的线程优先级是否需要调整的步骤包括:

若检测到所述缓存使用率大于预设区间的最小值,小于预设区间的最大值,则判定缓存使用率处于预设区间内;

当所述缓存使用率处于预设区间内时,以预设默认线程优先级运行。

可选地,所述根据所述缓存使用率,判断当前电化学工作站各模块的线程优先级是否需要调整的步骤还包括:

若检测到所述缓存使用率大于或等于预设区间的最大值,则判定所述当前需要优先执行的模块为串口通讯模块;

若检测到所述缓存使用率小于或等于预设区间的最小值,则判定所述当前需要优先执行的模块为为数据处理模块与显示模块。

可选地,所述则根据所述缓存使用率,确定对应模块的线程优先级的调整幅度的步骤包括:

根据所述缓存使用率所处的数量级,确定对应线程优先级的优先级调整幅度。

可选地,所述根据所述缓存使用率所处的数量级,确定对应线程优先级的优先级调整幅度的步骤之后包括:

若所述缓存使用率大于预设使用率最大阈值或小于预设使用率最小阈值,则调整数据显示与输出数据模块的线程优先级。

可选地,所述根据所述线程优先级的调整幅度调整线程优先级,并进行对应的数据处理的步骤之后包括:

当检测到通讯串口缓存空间的缓存使用率恢复至预设区间内时,则将线程优先级恢复至默认设置。

此外,为实现上述目的,本发明还提供一种上位机,所述上位机包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的labview的电化学工作站控制程序,所述labview的电化学工作站控制程序被所述处理器执行时实现如上所述labview的电化学工作站控制方法的步骤。

此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储的labview的电化学工作站控制程序,所述labview的电化学工作站控制程序被处理器执行时实现如上所述的labview的电化学工作站控制方法的步骤。

本发明基于labview的电化学工作站的控制方法,通过检测串口通讯莫的缓存空间使用情况,来判断串口通讯模块的接收速度是否能满足当前的需求,并且可以根据当前的使用需求,动态的调整线程优先级,从而可以使硬件设备性能较低的电化学工作站,在检测设备的发送速度不同的情况下,实现更好的性能适配。

附图说明

图1是本发明实施例方案涉及的硬件运行环境的终端\装置结构示意图;

图2为本发明基于labview的电化学工作站控制方法一实施例的流程示意图;

图3为本发明基于labview的电化学工作站控制方法中另一实施例中s20的步骤的细化流程示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。

本发明实施例终端可以是嵌入有labview的上位机。

如图1所示,该终端可以包括:处理器1001,例如cpu,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

可选地,终端还可以包括摄像头、rf(radiofrequency,射频)电路,传感器、音频电路、wifi模块等等。当然,移动终端还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及基于labview的电化学工作站控制程序。

在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的基于labview的电化学工作站控制程序,并执行以下操作:

嵌入有labview平台的上位机运行时,检测通讯串口模块的缓存的数据量计算缓存使用率,并根据所述缓存使用率,判断当前电化学工作站各模块的线程优先级是否需要调整;

若判定当前线程的优先级需要进行调整,则根据所述缓存使用率,确定对应模块的线程优先级的调整幅度;

根据所述线程优先级的调整幅度调整线程优先级,并进行对应的数据处理。

进一步地,处理器1001可以调用存储器1005中存储的基于labview的电化学工作站控制程序,还执行以下操作:

若检测到所述缓存使用率大于预设区间的最小值,小于预设区间的最大值,则判定缓存使用率处于预设区间内;

当所述缓存使用率处于预设区间内时,以预设默认线程优先级运行。

进一步地,处理器1001可以调用存储器1005中存储的基于labview的电化学工作站控制程序,还执行以下操作:

若检测到所述缓存使用率大于或等于预设区间的最大值,则判定所述当前需要优先执行的模块为串口通讯模块;

若检测到所述缓存使用率小于或等于预设区间的最小值,则判定所述当前需要优先执行的模块为为数据处理模块与显示模块。

进一步地,处理器1001可以调用存储器10051111中存储的基于labview的电化学工作站控制程序,还执行以下操作:

根据所述缓存使用率所处的数量级,确定对应线程优先级的优先级调整幅度。

进一步地,处理器1001可以调用存储器1005中存储的基于labview的电化学工作站控制程序,还执行以下操作:

若所述缓存使用率大于预设使用率最大阈值或小于预设使用率最小阈值,则调整数据显示与输出数据模块的线程优先级。

进一步地,处理器1001可以调用存储器1005中存储的基于labview的电化学工作站控制程序,还执行以下操作:

当检测到通讯串口缓存空间的缓存使用率恢复至预设区间内时,则将线程优先级恢复至默认设置。

参照图2,本发明第一实施例提供一种基于labview的电化学工作站控制方法,所述基于labview的电化学工作站控制方法:

步骤s10,嵌入有labview平台的上位机运行时,检测通讯串口模块的缓存的数据量计算缓存使用率,并根据所述缓存使用率,判断当前电09化学工作站各模块的线程优先级是否需要调整;

具体地,电化学工作站中设置了嵌入labview平台的上位机与其他的功能模块,串口通讯模块是电化学工作站中通过串口接收检测设备的检测数据的模块,串口通讯模块设置有对应的缓存空间,串口接收的检测数据会暂时储存在缓存空间中,等待串口通讯模块进行接收,缓存空间的使用率即缓存空间中的数据量所占总容量的比例。而通讯串口缓存空间的缓存使用率多少,可以判断当前串口通讯模块的接收速度能否满足数据传输的需求,从而及时对线程优先级进行调整。

步骤s20,若判定当前线程的优先级需要进行调整,则根据所述缓存使用率,确定对应模块的线程优先级的调整幅度;

具体地,若通讯串口的缓存使用率不处于预设区间内时,则表明当前需要通过调整线程的优先级来控制通讯串口的缓存中的数据。若使用率过大,即缓存使用率大于或等于预设区间的最大值,则增加串口通讯模块的线程优先级。反之若缓存使用率过少,即若缓存使用率小于或等于预设区间的最小值,则减少串口通讯模块的线程优先级,从而通过对线程优先级的调整控制电化学工作站的整体运行策略。

步骤s30,根据所述线程优先级的调整幅度调整线程优先级,并进行对应的数据处理。

具体地,在确定线程优先级的调整幅度后,对线程进行对应的优先级调整,使电化学工作站能够发挥最大的工作效率与性能。

在本实施例中,基于labview的电化学工作站在工作时,由于受到硬件设备的性能限制,在进行大量数据测量与计算或其他高强度运行的情况时,电化学工作站可能会出现计算速度慢,数据丢失等问题。而在不增加硬件成本的条件下,为了能够更好的进行电化学分析的作业,因此需要在合适的情况下,通过调整线程优先级,使得电化学工作站的数据处理得到有效优化,从而使电化学工作站能够在硬件性能较低的情况下,保持较好的运行流畅度。

串口通讯模块是电化学工作站中,用于接收检测设备发送的检测数据,而数据接收的速度与模块调用的线程数量成正比,但是由于线程数量有限,因此接收检测数据的速度也会受到限制。通讯串口设置有专门的缓存空间,用于暂时储存串口通讯模块未及时接收的数据。电化学工作站正常运行时,线程需要分配到不同的模块来保证运行,而例如数据处理,数据显示等运算量较大的模块则需要分配大量的线程。在串口通讯模块接收的数据量较少时,数据处理等运算量较大的模块的线程优先级较高,因此运行时分配到的线程数量也较多,从而能够较快的完成对应数据计算。但是在串口通讯模块需要接收的数据量较大时,常规的线程优先级设置无法满足串口通讯模块的数据接收需求,因此检测设备发送的检测数据会储存在缓存中,若缓存空间储存的数据达到容量上限,则无法再继续储存新的数据,此时可能会出现数据丢失等情况,所以需要提高串口通讯模块的线程优先级。而在数据传输量较小时,则可以将数据处理等相关模块的线程优先级对应提高,从而加快数据处理速度。

在串口通讯模块缓存空间的缓存使用率较大时,串口通讯模块需要更高的线程优先级。更高的线程优先级使得线程有更高几率被模块调用,这样就能够以更快的速度接收缓存中储存的数据,避免因串口通讯模块的接收速度太慢导致数据丢失或者影响后续的检测分析步骤。此时虽然数据处理等模块分配到的线程数量会减少,但是可以避免串口接收模块出现数据接收过慢或者数据丢失等情况,保证了检测数据的正常接收。同样的,在串口通讯模块接收速度超出串口传输检测数据的速度时,即通讯串口缓存空间的缓存使用率较小时,可以降低串口通讯的线程优先级,将线程资源更多的分配给数据处理等模块,避免了硬件性能的浪费,从而增加了电化学工作站的运行速度,使得电化学工作站的硬件性能较低时,也可以有效的完成电化学分析作业。

通过检测电化学工作站的串口通讯缓存空间的缓存使用率,可以判断当前电化学工作站的数据接收量情况。并且可以对应调节线程的优先级来保证串口通讯模块可以稳定接收检测设备发送的数据,同时不会浪费多余的线程资源与硬件性能,在不增加硬件成本的基础上,有效提高了基于labview的电化学工作站的工作稳定性与运行速度。

进一步地,步骤s10根据缓存中的数据量判断当前上位机各模块的线程优先级是否需要调整包括:

步骤s11,若检测到所述缓存使用率大于预设区间的最小值,小于预设区间的最大值,则判定缓存使用率处于预设区间内;

步骤s12,当所述缓存使用率处于预设区间内时,以预设默认线程优先级运行。

具体地,检测通讯串口通讯模块缓存空间的缓存使用率,根据缓存使用率是否处于预设区间范围可以判断当前的数据接收速度是否为正常速度,因此在缓存使用率处于预设区间范围内时,以预设默认线程优先级运行电化学工作站的各模块。

电化学工作站中,为了避免因为接收不及时等情况导致数据丢失,串口通讯模块设置有对应的缓存空间,检测设备发送的数据会首先储存在缓存空间中,然后在通过串口通讯模块接收。因此串口通讯模块缓存空间的缓存使用率可以间接反映当前串口通讯模块的接收速度是否合适,预设区间就是为了方便判断而设置的一个参考区间,预设区间的默认范围可以是30%-70%,或者根据实际情况对预设区间的范围进行手动设置。通过检测缓存空间的缓存使用率是否处于预设区间的范围内,可以方便快捷的对当前的数据接收速度进行判断。而若是缓存使用率当前处于预设范围内,则表明当前串口通讯模块的数据接收速度可以满足需求,不需要进行线程优先级的调整。因此通过缓存使用率与预设区间的关系,可以方便快捷的确定当前是否需要对线程优先级进行调整。

进一步地,步骤s10根据所述缓存使用率,判断当前电化学工作站各模块的线程优先级是否需要调整还包括:

步骤s13,若检测到所述缓存使用率大于或等于预设区间的最大值,则判定所述当前需要优先执行的模块为串口通讯模块;

步骤s14,若检测到所述缓存使用率小于或等于预设区间的最小值,则判定所述当前需要优先执行的模块为为数据处理模块与显示模块。

具体地,当缓存空间中储存的数据量在预设区间之外时,根据缓存使用率与预设区间的关系,来确定线程优先级的调整策略。缓存使用率大于或等于预设区间的最大值时,表明数据接收速度不足,因此增加串口通讯模块的线程优先级,反之若缓存使用率小于或等于预设区间的最小值,则减小串口通讯模块的线程优先级,使得数据处理等模块能够分配到更多的线程资源。

通过缓存使用率与预设区间的关系,能够确定数据接收速度能否满足需求,从而进一步确认如何调整串口通讯模块的线程优先级。如果缓存使用率小于或等于预设区间的最小值,那么表明当前的数据接收速度已经大于串口通讯模块的数据接收需求,可以降低串口通讯模块的线程优先级,使数据处理等模块分配到更多的线程资源,从而能够加快电化学工作站的运行速率。而当缓存使用率大于或等于预设区间的最大值时,表明当前当前的数据接收速度已经无法满足串口通讯模块的数据接收需求,此时需要提高串口通讯模块的线程优先级,使其能够分配到更多的线程资源,来增加数据接收速度,避免接收速度低导致的数据丢失等问题。

进一步地,参照图3,图3为本发明基于labview的电化学工作站控制方法第二实施例的流程示意图,步骤s20则根据所述缓存使用率,确定对应模块的线程优先级的调整幅度包括:

步骤s21,根据所述缓存使用率所处的数量级,确定对应线程优先级的优先级调整幅度;

具体地,为了能够尽可能准确的对线程优先级进行调整,根据缓存使用率的数量级确定线程优先级的调整幅度。缓存使用率超出预设区间的数量级越大,则对应串口通讯模块的线程优先级调整幅度也越大。

本实施例中,首先通过检测获取串口通讯模块缓存空间的缓存使用率,并且缓存使用率越大,说明当前串口通讯模块对于数据接收的需求也就越大,通过缓存使用率具体所处的数量级,来确定串口通讯模块的线程优先级要进行何种程度的调整。

而串口通讯模块的线程优先级调整幅度可以参照以下规则,首先在缓存使用率30%-70%时,设为预设区间范围。若缓存数据量在预设区间范围内,则串口通讯模块的线程优先级默认为5,在缓存使用率大于70%时,每提高10%则串口通模块的线程优先级增加1;同样的,在缓存使用率小于或等于30%时,每减少10%则串口通模块的线程优先级减少1。预设区间、默认优先级以及各个调整幅度的具体数值都能够根据实际情况进行手动调节,本实施例中仅以默认值进行说明。通过将串口通讯模块的线程优先级与对应的缓存使用率相关联,可以准确的调整串口通讯模块的线程优先级,使系统性能更好的发挥。

进一步地,步骤s21根据所述缓存使用率所处的数量级,确定对应线程优先级的优先级调整幅度之后包括:

步骤s22,若所述缓存使用率大于预设使用率最大阈值或小于预设使用率最小阈值,则调整数据显示与输出数据模块的线程优先级。

具体地,若缓存使用率大于预设的使用率最大阈值,则表明当前串口通讯模块的有这较大的数据接收需求,因此在增加串口通讯模块的线程优先级的同时,降低数据处理与数据显示等模块的线程优先级,将更多的硬件性能分配至串口通讯模块,以便串口通讯模块能够更快完成数据接收。对应的,若缓存使用率小于预设使用率最小阈值,则在降低串口通讯模块线程优先级的基础上,增加数据处理与数据显示等模块的线程优先级,满足数据接收的需求的同时,增加了数据处理与显示输出的速度。

为了能够更好的利用电化学工作站的硬件性能,在确认串口通讯模块在数据接收量非常大或者非常小的情况下,也能保证数据接收速度或者提高数据处理速度,因此设置了对应的预设缓存使用率最大阈值与最小阈值。预设缓存最大阈值的默认设置为80%,也可以根据实际情况进行调整。当缓存使用率大于预设使用率时,表明当前串口通讯模块的数据接收任务较大,而为了保证数据能够尽快接收,因此在增加串口通讯模块线程优先级的基础上,对应减小数据处理与数据显示等模块的线程优先级。如此一来,虽然会导致数据处理速度一定程度的降低,但是能够尽快解决串口通讯模块的数据接收速度不足的问题,同时避免了数据接收速度不足可能导致的数据丢失。

与预设使用率最大阈值相似,当缓存使用率小于预设使用率最小阈值时,表明此时串口通讯模块的接收速度已经远远过剩。因此在降低串口通讯模块线程优先级的同时,可以增加数据处理与数据显示等性能资源消耗较大的模块的线程优先级,这样既不会影响检测数据的接收,又有效提高了数据处理的速度。

进一步地,步骤s30根据所述线程优先级的调整幅度调整线程优先级,并进行对应的数据处理之后包括:

步骤s40,当检测到通讯串口缓存空间的缓存使用率恢复至预设区间内时,则将线程优先级恢复至默认设置。

具体地,在缓存使用率由预设区间范围外恢复至预设区间范围内时,表明串口通讯模块缓存空间中的数据量已经恢复至正常水平,因此需要将串口通讯模块的线程优先级恢复至默认值运行,以免影响电化学工作站的正常使用。

电化学工作站的串口通讯模块的数据接收量不是一个固定值,数据接收量会根据电化学分析作业的进行而发生变化,因此为了能够适应数据接收需求的变化,串口通讯模块的线程优先级也需要进行动态调整。本发明会实时监测串口通讯模块缓存空间的缓存使用率,除了在缓存使用率处于预设区间范围外时调整串口通讯模块或其他模块的线程优先级,还可以将缓存使用率恢复至预设区间范围内时,将串口通讯模块以及其他模块的线程优先级恢复至默认的线程优先级设置,使电化学工作站中的各个模块随时都能够以最合适的线程优先级进行工作,从而将电化学工作站的性能有效发挥。

此外本发明实施例还提出一种计算机可读存储介质。

本发明计算机可读存储介质上存储有基于labview的电化学工作站控制程序,所述基于labview的电化学工作站控制程序被处理器执行时实现如上所述的基于labview的电化学工作站控制方法的步骤。

其中,在所述处理器上运行的基于labview的电化学工作站控制程序被执行时所实现的方法可参照本发明基于labview的电化学工作站控制方法各个实施例,在此不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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