为什么我采集半个周期的信号点数乘于采集时间得不到信号周期呢

2019-08-14 03:42发布

给入正弦波频率2Hz 500ms,计算出波峰波谷半个周期共有313点。AD频率12M,239.5采样时间计算出21u采集转换一次。313*2*21u=13.146ms,这个数据严重小于500ms是哪里出错了呢。或者说这种方法根本就不能用,再或者说还有个读取时间???
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
Rainday
1楼-- · 2019-08-14 06:26
刚刚仔细查看了下ADC10个点取一次平均值,就是把这10倍加上也不对。另外我把10个点改为一个点,最后打印输出发现同频率波峰波谷点数据竟然并不是10倍。比如8Hz,239.5采样时间峰谷点(10点一个平均值)78个,10点改为一点只有峰谷96点却不是780点。
正点原子
2楼-- · 2019-08-14 11:34
 精彩回答 2  元偷偷看……
Rainday
3楼-- · 2019-08-14 13:40
正点原子 发表于 2017-9-4 00:51
计算方式有误。建议用过零点来测频率。

感谢原子老师回复,我看过别人的心电仪的心率检测法,也是检测两个峰值点的位置计算的。
其实信号来源于传感器由物体旋转产生的,旋转并不均匀是变周期的。而且峰谷点是信号特征点。我的想法是:找出峰值点位置(峰值检测程序检出),计算出峰值点和过零点的时间t0,再下一个过零点时开启定时器定时时间为t0,那么这个时间点刚好是谷值点。然后检测此时谷值点位置再次计算和下一个过零的时间t1。以此往后递推,主要是实时性达不到,只能第一个数据保存下来再下一次使用,原理是旋转速度不能突变。
Rainday
4楼-- · 2019-08-14 19:17

一周热门 更多>