如何计算正弦信号的频率感觉非常纠结,使用msp430F449采集250个数据,采样周期遵守奈奎斯特定律。采集到的数据用于计算信号频率。
为了保证数据光滑,我使用相邻三点相加取平均的方法进行平滑处理。
主要使用了两种方法用于计算频率:
1. 正弦信号有最高值和最低值,最低值两边的值都比其大,最高值两边的值都比其小,我使用逐步比较的方法计算最低值和最高值,如果前一值比其大,后一值也比其大,其值为最低值,其对应的位置亦知道;对最高值也一样,如果前一值比其小,后一值也比其小,其为最大值,然后再找到第二个最低值所在的位置。第一个最低值,最高值,第二个最低值相应的位置获得后,就可以根据采样周期计算频率。
2.使用逐步比较的方法,首先找到最高值和最低值的大小,然后从头将数据跟最低值和最高低比较,分别找到其位置,来获得其所在的位置,进而计算频率。
最后得到的频率变化比较大,一点也不稳定。计算得到的最大电压值跟实际值一致,过程应该是没错的。
使用微分的方法也可能可以,但是精确度低。
大家有没有好的办法进行处理。请不怜赐教。非常感谢! |