采集数据的方法及装置与流程

文档序号:24542188发布日期:2021-04-02 10:26阅读:75来源:国知局
采集数据的方法及装置与流程

本发明涉及数据处理技术领域,具体而言,涉及一种采集数据的方法及装置。



背景技术:

传统上基于可编程逻辑控制器plc的模拟量数据采集是采用定时器进行的,每个定时周期采集一次,而定时器的时间延时通常为若干个扫描周期,这就意味着plc模拟量采集周期大于一个扫描周期,这种数据采集方式的缺点为采集周期过长而容易导致采集数据的失真。

针对上述相关技术中采用定时器进行plc的模拟量数据采集,存在由于采集周期过长而导致采集的数据失真的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种采集数据的方法及装置,以至少解决相关技术中采用定时器进行plc的模拟量数据采集,存在由于采集周期过长而导致采集的数据失真的技术问题。

根据本发明实施例的一个方面,提供了一种采集数据的方法,包括:获取扫描周期内扫描到的采样数据;保存所述采样数据至存储区,并将所述存储区的压力采样值与压力值的峰值进行比对;基于比对结果,确定是否更新所述压力值的峰值。

可选地,在获取扫描到的采样数据之前,该采集数据的方法还包括:启动扫描功能,在扫描周期内,采集得到所述采样数据。

可选地,在获取扫描到的采样数据之前,该采集数据的方法还包括:定义所述压力值的峰值,并对所述压力值进行初始化。

可选地,基于比对结果,确定是否更新所述压力值的峰值,包括:如果所述存储区的压力采样值超过所述压力值的峰值,将所述压力采样值作为新的峰值赋值给所述压力值;如果所述存储区的压力采样值超过所述压力值的峰值,则保持所述压力值的原值作为峰值。

可选地,通过在每个扫描周期内进行当前的压力采样值与当前压力值的峰值进行比对,来实时更新所述压力值的峰值,其中,所述压力值的初始值为控制器执行过程中计算得到的资源消耗值。

根据本发明实施例的另外一个方面,还提供了一种采集数据的装置,包括:获取单元,用于获取扫描周期内扫描到的采样数据;比对单元,用于保存所述采样数据至存储区,并将所述存储区的压力采样值与压力值的峰值进行比对;确定单元,用于基于比对结果,确定是否更新所述压力值的峰值。

可选地,该采集数据的装置还包括:采集单元,用于在获取扫描到的采样数据之前,启动扫描功能,在扫描周期内,采集得到所述采样数据。

可选地,该采集数据的装置还包括:初始化单元,用于在获取扫描到的采样数据之前,定义所述压力值的峰值,并对所述压力值进行初始化。

可选地,所述确定单元,包括:第一确定模块,用于如果所述存储区的压力采样值超过所述压力值的峰值,将所述压力采样值作为新的峰值赋值给所述压力值;第二确定模块,用于如果所述存储区的压力采样值超过所述压力值的峰值,则保持所述压力值的原值作为峰值。

可选地,通过在每个扫描周期内进行当前的压力采样值与当前压力值的峰值进行比对,来实时更新所述压力值的峰值,其中,所述压力值的初始值为控制器执行过程中计算得到的资源消耗值。

根据本发明实施例的另外一个方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序被处理器运行时控制所述计算机存储介质所在设备执行上述中任一项所述的采集数据的方法。

根据本发明实施例的另外一个方面,还提供了一种处理器,所述处理器用于运行计算机程序,其中,所述计算机程序运行时执行上述中任一项所述的采集数据的方法。

在本发明实施例中,采用获取扫描周期内扫描到的采样数据;保存采样数据至存储区,并将存储区的压力采样值与压力值的峰值进行比对;基于比对结果,确定是否更新压力值的峰值,通过本发明实施例提供的采集数据的方法,实现了利用plc的扫描周期进行数据采集,比对采用定时器的方式采集数据,以确保数据采样周期的最小化的目的,达到了提高采集的数据的有效性的技术效果,进而解决了相关技术中采用定时器进行plc的模拟量数据采集,存在由于采集周期过长而导致采集的数据失真的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的采集数据的方法的流程图;

图2是根据本发明实施例的采集数据的方法的示意图一;

图3是根据本发明实施例的采集数据的方法的示意图二;

图4是根据本发明实施例的可选的采集数据的方法的流程图;

图5是根据本发明实施例的采集数据的装置的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

实施例1

根据本发明实施例,提供了一种采集数据的方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图1是根据本发明实施例的采集数据的方法的流程图,如图1所示,该采集数据的方法包括如下步骤:

步骤s102,获取扫描周期内扫描到的采样数据。

步骤s104,保存采样数据至存储区,并将存储区的压力采样值与压力值的峰值进行比对。

步骤s106,基于比对结果,确定是否更新压力值的峰值。

由上可知,在本发明实施例中,获取扫描周期内扫描到的采样数据;保存采样数据至存储区,并将存储区的压力采样值与压力值的峰值进行比对;基于比对结果,确定是否更新压力值的峰值,实现了利用plc的扫描周期进行数据采集,比对采用定时器的方式采集数据,以确保数据采样周期的最小化的目的,达到了提高采集的数据的有效性的技术效果。

因此,通过本发明实施例提供的采集数据的方法,解决了相关技术中采用定时器进行plc的模拟量数据采集,存在由于采集周期过长而导致采集的数据失真的技术问题。

在一种可选的实施例中,在获取扫描到的采样数据之前,该采集数据的方法还包括:启动扫描功能,在扫描周期内,采集得到采样数据。

在一种可选的实施例中,在获取扫描到的采样数据之前,该采集数据的方法还包括:定义压力值的峰值,并对压力值进行初始化。

图2是根据本发明实施例的采集数据的方法的示意图一,如图2所示,可以将模拟量输入数据d8260存储值d0存储数据字,经过相应的处理作为压力采样值,定义压力峰值d2,并将d2初始化。

图3是根据本发明实施例的采集数据的方法的示意图二,如图3所示,每个扫描周期对压力峰值d2和压力采样值d0进行大小比较;当采样值d0大于压力峰值时,将采样值d0存储于d2,周而复始,d2就存储整个过程的压力峰值。

在一种可选的实施例中,基于比对结果,确定是否更新压力值的峰值,包括:如果存储区的压力采样值超过压力值的峰值,将压力采样值作为新的峰值赋值给压力值;如果存储区的压力采样值超过压力值的峰值,则保持压力值的原值作为峰值。

在一种可选的实施例中,通过在每个扫描周期内进行当前的压力采样值与当前压力值的峰值进行比对,来实时更新压力值的峰值,其中,压力值的初始值为控制器执行过程中计算得到的资源消耗值。

图4是根据本发明实施例的可选的采集数据的方法的流程图,如图4所示,首先启动扫描功能,利用程序进行一次扫描;接着定义数据最大值d2;判断d2是否初始化,若是,则初始化d2;反之,则保持d2;采样模拟量数据并保存于d0;判断d0是否大于d2,若是,则将d0值赋予d2;反之,保持d2原值。以建立plc数据扫描程序段。

综上所述,在本发明实施例中,利用plc的扫描周期进行数据采集,采集周期为一个plc的扫描周期t,对比采用定时器的方式采集数据,采集时间为t和定时器延时t1的公倍数t。t≥t,所以,采用plc扫描周期进行数据采集的时间周期最短。由于实现了数据采集周期的最小化,而采用扫描周期采样,减少定时器资源和程序资源,降低控制器的运行负担。因此,采样plc固有的扫描周期进行数据采集、可以实现最小程序进行数据采集处理,以及进行峰值计算,基于plc的扫描周期,只需要简单的比较和赋值就可以将plc的模拟量通道数据进行采样和处理,每个plc扫描周期能够采样并处理数据一次,大大减少定时器资源和程序资源,降低控制器的运行负担,实施例2

根据本发明实施例的另外一个方面,还提供了一种采集数据的装置,图5是根据本发明实施例的采集数据的装置的示意图,如图5所示,该采集数据的装置可以包括:获取单元51,比对单元53以及确定单元55。下面对该采集数据的装置进行说明。

获取单元51,用于获取扫描周期内扫描到的采样数据。

比对单元53,用于保存采样数据至存储区,并将存储区的压力采样值与压力值的峰值进行比对。

确定单元55,用于基于比对结果,确定是否更新压力值的峰值。

此处需要说明的是,上述获取单元51,比对单元53以及确定单元55对应于实施例1中的步骤s102至s106,上述单元与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述单元作为装置的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。

由上可知,在本申请上述实施例中,可以利用获取单元获取扫描周期内扫描到的采样数据;然后利用比对单元保存采样数据至存储区,并将存储区的压力采样值与压力值的峰值进行比对;并利用确定单元基于比对结果,确定是否更新压力值的峰值。通过本发明实施例提供的采集数据的装置,实现了利用plc的扫描周期进行数据采集,比对采用定时器的方式采集数据,以确保数据采样周期的最小化的目的,达到了提高采集的数据的有效性的技术效果,解决了相关技术中采用定时器进行plc的模拟量数据采集,存在由于采集周期过长而导致采集的数据失真的技术问题。

在一种可选的实施例中,该采集数据的装置还包括:采集单元,用于在获取扫描到的采样数据之前,启动扫描功能,在扫描周期内,采集得到采样数据。

在一种可选的实施例中,该采集数据的装置还包括:初始化单元,用于在获取扫描到的采样数据之前,定义压力值的峰值,并对压力值进行初始化。

在一种可选的实施例中,确定单元,包括:第一确定模块,用于如果存储区的压力采样值超过压力值的峰值,将压力采样值作为新的峰值赋值给压力值;第二确定模块,用于如果存储区的压力采样值超过压力值的峰值,则保持压力值的原值作为峰值。

在一种可选的实施例中,通过在每个扫描周期内进行当前的压力采样值与当前压力值的峰值进行比对,来实时更新压力值的峰值,其中,压力值的初始值为控制器执行过程中计算得到的资源消耗值。

实施例3

根据本发明实施例的另外一个方面,还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的计算机程序,其中,在计算机程序被处理器运行时控制计算机存储介质所在设备执行上述中任一项的采集数据的方法。

实施例4

根据本发明实施例的另外一个方面,还提供了一种处理器,处理器用于运行计算机程序,其中,计算机程序运行时执行上述中任一项的采集数据的方法。

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

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

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

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

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

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

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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