第一次做正弦波的数据处理,请教一下大家平时是用什么思路来处理这些数据的?我现在用的思路,处理起来效果不好。下面的是信号的波形图
黄色的是在空闲状态下,采集到的信号,幅度在上下200mV左右,周期为20mS,蓝色的信号是有外部激励后,采集到的数据,周期也为20mS。
我现在的处理思路是:
1、在空闲状态下,把黄色的信号采集若干次,然后把采集到的最大、最小相减即max - min,然后保存起来,每次上电后,把保存的值读出来。
2、然后在采集20(假设)次信号后,也把最大的和最小的值提取出来,再相减,即MAX - MIN。
3、把1和2得到的值相减
4、然后根据相减的结果,来判断采集到的信号的强度。
现在的问题是,根据这种思路,第4步得到的结果,信号是不断在高、中、低变化的,这样太扯了。
现在我就想改一下思路,即上电后进行第1步,然后重复进行第2、3步40(假设)次,把这若干次的数据保存在一个数组中,再把这些数据进行排列,最后去掉最大、最小的x个值,取中间的值,即根据中间的这些值进行判断,这样得到的结果应该就稳定多了。
但是问题又出来了,因为信号的周期是20mS,在进行第2步的时候,为了能较完整的采集到信号,每次的时间不能太快,只能大概1mS采集一次,即采集20次用20mS,然后重复第2、3步30次,这样的话,最少600mS完成一次数据的处理。
而且总共要采集4个通道的数据,这样的处理时间就太长了。
请教一下,大家平时都是怎么处理这些数据的,谢谢! |