System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于工程机械,具体涉及一种宽范围脉冲量信号的频率测量方法及系统。
技术介绍
1、控制器从工程机械设备采集到的信号主要有模拟量输入、开关量输入和脉冲量输入三种类型。其中,脉冲量信号可以用于测频率以及电机转速等。
2、常用的脉冲量釆集算法主要有两种:计数法和计时法。计数法指在规定时间内测量所产生的脉冲个数,计算得到信号频率的方法,一般适用于较高的频率,能获得较高精确度。计时法指测量相邻两个脉冲的时间,计算得到信号频率的方法,一般适用于较低的频率,能获得较高精确度,响应速度快。
3、工程机械的频率信号一般为10-15khz,根据不同的输入频率选择不同的采集方法,通常将100hz作为切换频率,低于100hz的信号采用计时法,频率更高的信号则采用计数法。
4、为了实现测量范围全覆盖的同时,满足高精度的要求,采用计数法和计时法相结合的方法,当外部脉冲量信号由低频增加至高频,在切换频率处,会出现频率值跳变现象,短暂后会恢复到正常值。经过分析,是由于计时法和计时法采用不同的算法导致的,由于定时器的时钟源选择,计时法是内部时钟,计数法是外部时钟,时钟源根据不同算法在切换过程中,使cnt的连续采样值出现异常值,导致频率出现跳变现象。
技术实现思路
1、本专利技术的目的在于克服现有技术中的不足,提供一种宽范围脉冲量信号的频率测量方法及系统,解决当外部脉冲量信号由低频增加至高频,在切换频率处,会出现频率值跳变现象的技术问题。
2、为达到上述目的,本
3、第一方面,本专利技术提供了一种宽范围脉冲量信号的频率测量方法,包括:
4、响应于测量开始,使能单片机的定时器timx的输入捕获功能;
5、执行循环步骤,直至测量结束,所述循环步骤包括:
6、s1、基于所述输入捕获功能,采用计时法获取脉冲量信号的频率值;
7、s2、响应于所述计时法获取的所述频率值大于预设频率阈值,则使能单片机的定时器timx的外部信号计数功能和定时器timy的定时中断功能;
8、s3、基于所述外部信号计数功能和定时中断功能,采用计数法获取脉冲量信号的频率值;
9、s4、响应于所述计数法获取的所述频率值小于等于预设频率阈值,则返回s1;
10、其中,每次执行所述循环步骤中,在计数法首次开始时,向timx_cnt寄存器写入fsw/a,fsw为预设频率阈值,a为1秒内定时器timy的累计定时的次数;对连续a次记录的定时器timx的timx_cnt寄存器的cnt值进行修正;在定时器timy每次定时结束后,向timx_cnt寄存器写入0。
11、可选的,所述基于所述输入捕获功能,采用计时法获取脉冲量信号的频率值包括:
12、基于所述输入捕获功能,捕获脉冲量信号在上升沿时timx_cnt寄存器的cnt值,并锁存到timx_ccrx寄存器中;
13、获取相邻两个上升沿对应的cnt值,并计算相邻两个上升沿的间隔时间tn+1,n:
14、
15、式中,tn+1,n为第n+1,n个上升沿的间隔时间,cntn+1,cntn为第n+1,n个上升沿对应的cnt值,f1为定时器timx的内部时钟频率;
16、根据相邻两个上升沿的间隔时间tn+1,n确定脉冲量信号的频率值f=1/(tn+1,n)。
17、可选的,所述响应于所述计时法获取的所述频率值大于预设频率阈值包括:
18、将连续采用所述计时法获取的所述频率值存入数组d1中,所述数组d1仅保留最新存入的m1个所述频率值;
19、对所述所述数组d1内的所述频率值进行均值运算,若均值运算结果大于预设频率阈值,则进行响应。
20、可选的,所述基于所述外部信号计数功能和定时中断功能,采用计数法获取脉冲量信号的频率值包括:
21、基于所述外部信号计数功能,将脉冲量信号作为定时器timx的时钟源;
22、基于所述定时中断功能,将定时器timy的定时时间设置为t,t*a=1;
23、连续a次,当定时器timy每次间隔时间t,记录timx_cnt寄存器的cnt值并记录存储;
24、将连续a次对应的cnt值进行累加,确定脉冲量信号的频率值f=cnti为第i次对应的cnt值。
25、可选的,所述对连续a次记录的定时器timx的timx_cnt寄存器的cnt值进行修正包括:
26、计算相邻所述cnt值的差值δcnti,i-1:
27、δcnti,i-1=cnti-cnti-1i=1,2,3…a
28、式中,cnti-1为第i-1次对应的cnt值;
29、若δcnti,i-1>σ,σ为预设差值阈值,则令cnti=cnti-1。
30、可选的,所述响应于所述计数法获取的所述频率值小于等于预设频率阈值包括:
31、将连续采用所述计数法获取的所述频率值存入数组d2中,所述数组d2仅保留最新存入的m2个所述频率值;
32、对所述所述数组d2内的所述频率值进行均值运算,若均值运算结果小于等于预设频率阈值,则进行响应。
33、第二方面,本专利技术提供了一种宽范围脉冲量信号的频率测量系统,其特征在于,所述频率测量系统包括单片机,所述单片机的i/o接口连接至目标传感器件的输出端,用于获取目标传感器件输出的脉冲量信号;所述单片机基于上述的频率测量方法获取所述脉冲量信号的频率。
34、可选的,所述频率测量系统还包括脉冲量信号调理电路,所述脉冲量信号调理电路连接于目标传感器件的输出端和单片机的i/o接口之间;所述脉冲量信号调理电路用于将目标传感器件输出的脉冲量信号转换成方波。
35、第三方面,本专利技术提供了一种电子设备,包括处理器及存储介质;
36、所述存储介质用于存储指令;
37、所述处理器用于根据所述指令进行操作以执行上述方法的步骤。
38、第四方面,本专利技术提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
39、与现有技术相比,本专利技术所达到的有益效果:
40、本专利技术提供的一种宽范围脉冲量信号的频率测量方法及系统,基于具有捕获功能和外部信号计数功能的单片机,利用其定时器资源,通过软件对cnt寄存器的cnt值进行调整,满足低速与高速信号切换的平滑测量,实现实时性好、高精度的宽范围的频率测量。
本文档来自技高网...【技术保护点】
1.一种宽范围脉冲量信号的频率测量方法,其特征在于,包括:
2.根据权利要求1所述的宽范围脉冲量信号的频率测量方法,其特征在于,所述基于所述输入捕获功能,采用计时法获取脉冲量信号的频率值包括:
3.根据权利要求1所述的宽范围脉冲量信号的频率测量方法,其特征在于,所述响应于所述计时法获取的所述频率值大于预设频率阈值包括:
4.根据权利要求1所述的宽范围脉冲量信号的频率测量方法,其特征在于,所述基于所述外部信号计数功能和定时中断功能,采用计数法获取脉冲量信号的频率值包括:
5.根据权利要求1所述的宽范围脉冲量信号的频率测量方法,其特征在于,所述对连续a次记录的定时器TIMx的TIMx_CNT寄存器的CNT值进行修正包括:
6.根据权利要求1所述的宽范围脉冲量信号的频率测量方法,其特征在于,所述响应于所述计数法获取的所述频率值小于等于预设频率阈值包括:
7.一种宽范围脉冲量信号的频率测量系统,其特征在于,所述频率测量系统包括单片机,所述单片机的I/O接口连接至目标传感器件的输出端,用于获取目标传感器件输出的脉冲量信
8.根据权利要求7所述的宽范围脉冲量信号的频率测量系统,其特征在于,所述频率测量系统还包括脉冲量信号调理电路,所述脉冲量信号调理电路连接于目标传感器件的输出端和单片机的I/O接口之间;所述脉冲量信号调理电路用于将目标传感器件输出的脉冲量信号转换成方波。
9.一种电子设备,其特征在于,包括处理器及存储介质;
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-6任一项所述方法的步骤。
...【技术特征摘要】
1.一种宽范围脉冲量信号的频率测量方法,其特征在于,包括:
2.根据权利要求1所述的宽范围脉冲量信号的频率测量方法,其特征在于,所述基于所述输入捕获功能,采用计时法获取脉冲量信号的频率值包括:
3.根据权利要求1所述的宽范围脉冲量信号的频率测量方法,其特征在于,所述响应于所述计时法获取的所述频率值大于预设频率阈值包括:
4.根据权利要求1所述的宽范围脉冲量信号的频率测量方法,其特征在于,所述基于所述外部信号计数功能和定时中断功能,采用计数法获取脉冲量信号的频率值包括:
5.根据权利要求1所述的宽范围脉冲量信号的频率测量方法,其特征在于,所述对连续a次记录的定时器timx的timx_cnt寄存器的cnt值进行修正包括:
6.根据权利要求1所述的宽范围脉冲量信号的频率测量方法,其特征在于,所述响应于...
【专利技术属性】
技术研发人员:张桓,安卡,刘建国,
申请(专利权)人:江苏汇智高端工程机械创新中心有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。