本发明涉及信号检测领域,特别是涉及一种信号峰值的获取方法。
背景技术:
峰值作为信号值变化范围的大小,反映了信号极为重要的方面,而峰值的检测和/或获取也成为了电子测量、自动化仪表及其它相关技术领域的重视的问题。
传统技术中,对峰值的检测和/或获取通常是先检测信号的过零点,再通过延时来获得峰值。这种方式需要增加过零检测电路,增加了成本;而且增加过零检测电路后,容易出现信号失真的问题,检测的精度不高,降低了可靠性。
技术实现要素:
基于此,本发明的目的在于,提供一种信号峰值的获取方法,其具有减少计算时间,提高检测效率,节约成本的优点。
一种信号峰值的获取方法,包括如下步骤:
获取待测信号,并将待测信号转换为与待测信号的频率相同的馒头波信号;
实时获取馒头波信号的ad值;
每间隔设定时间统计一次馒头波信号的ad值,且计算并存储该间隔设定时间内馒头波信号的ad值的平均值;
在存储的平均值的数量达到设定数量时,将平均值进行排序,获得最大平均值作为信号峰值。
相比于现有技术,本发明通过将待测信号转换为馒头波信号,再每间隔设定时间统计一次馒头波信号的ad值的平均值,再根据获得的ad值的平均值获得最大值的方式,减少了计算时间,提高了检测效率,节约了成本。
进一步地,所述馒头波信号为:所述馒头波信号的正值部分为待测信号的正值,所述馒头波信号的0值为待测信号的0值或者待测信号的负值。
进一步地,所述馒头波信号为:所述馒头波信号的正值部分为待测信号的正值和/或待测信号的负值翻转后的正值。
进一步地,所述实时获取馒头波信号的ad值包括:将馒头波信号进行模数转换,获得数字信号;实时获取所述数字信号的值作为馒头波信号的ad值。
进一步地,在所述每间隔设定时间统计一次馒头波信号的ad值后,还将统计获得的馒头波信号的ad值进行排序,并去掉设置数量的最大值和最小值,再将剩余的馒头波信号的ad值进行平均值求解,减少了因干扰信号造成获取的数据出现错误的问题,进一步提高了数据获取的精确度。
本发明还提供一种计算机可读储存介质,其上储存有计算机程序,该计算机程序被处理器执行时实现如上述所述的信号峰值的获取方法的步骤。
本发明还提供一种计算机设备,包括储存器、处理器以及储存在所述储存器中并可被所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上述所述的信号峰值的获取方法的步骤。
为了更好地理解和实施,下面结合附图详细说明本发明。
附图说明
图1为本发明实施例中信号峰值的获取方法的流程图;
图2为本发明实施例中待测信号和馒头波信号的波形图。
具体实施方式
请同时参阅图1和图2,图1为本发明实施例中信号峰值的获取方法的流程图;图2为本发明实施例中待测信号和馒头波信号的波形图。所述信号峰值的获取方法,包括如下步骤:
步骤s1:获取待测信号,并将待测信号转换为与待测信号的频率相同的馒头波信号。
在一个实施例中,所述待测信号为周期性交流信号。
在一个实施例中,所述待测信号为频率是50hz或60hz周期性交流信号。
所述馒头波信号为待测信号经过滤波后的信号,通过将待测信号转换为馒头波信号,可节省计算的时间,提高计算的精确度。在一个实施例中,所述馒头波信号为:所述馒头波信号的正值部分为待测信号的正值,所述馒头波信号的0值为将待测信号的0值或者待测信号的负值。在另一个实施例中,所述馒头波信号为:所述馒头波信号的正值部分为待测信号的正值和/或待测信号的负值翻上去后的正值,即将待测信号的正值部分保留,将待测信号的负值以横坐标作为对称轴翻上去,获得所述馒头波信号。
在一个实施例中,待测信号通过电容滤波电路进行电容滤波,再通过mcu进行滤波后,获得馒头波信号。
步骤s2:实时获取馒头波信号的ad值。
在一个实施例中,实时获取馒头波信号的ad值包括:将馒头波信号进行模数转换,获得数字信号;实时获取所述数字信号的值作为馒头波信号的ad值。
在一个实施例中,通过mcu实现馒头波信号的模数转换,并通过mcu实时获取馒头波的数字信号的值。
步骤s3:每间隔设定时间统计一次馒头波信号的ad值,且计算并存储该间隔设定时间内馒头波信号的ad值的平均值。
在一个实施例中,所述间隔设定时间为0.2-0.8ms。
在一个实施例中,为提高数据获取的精确度,减少因干扰信号造成数据获取的错误,在所述每间隔设定时间统计一次馒头波信号的ad值后,还将统计获得的馒头波信号的ad值进行排序,并去掉设置数量的最大值和最小值,再将剩余的馒头波信号的ad值进行平均值求解。其中,所述设置数量为1-10,优选的,所述设置数量为5,即各去掉5个最大值和5个最小值。
步骤s4:在存储的平均值的数量达到设定数量时,将平均值进行排序,获得最大平均值作为信号峰值。
其中,所述最大平均值即为待测信号的峰值。
在一个实施例中,在存储的平均值的数量未达到设定数量时,继续以间隔设定时间统计一次馒头波信号的ad值计算平均值,直至存储的平均值的数量达到设定数量。
在一个实施例中,所述设定数量为n=1000/(f*t),其中f为待测信号的频率,t为间隔设定时间,因此,
本技术:
的设定数量可以为待测信号在一个周期内获取的ad值的平均值数量,也可以为在多个周期内获取的ad值的平均值。
相比于现有技术,本发明通过将待测信号转换为馒头波信号,再每间隔设定时间统计一次馒头波信号的ad值的平均值,再根据获得的ad值的平均值获得最大值的方式,减少了计算时间,提高了检测效率,节约了成本。进一步地,在每间隔设定时间统计馒头波信号的ad值后,去掉相同设定数量的最大值和最小值,再求馒头波信号ad值的平均值的方式,减少了因干扰信号造成获取的数据出现错误的问题,进一步提高了数据获取的精确度。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。