【智能车】电磁循迹算法(1)——加权滤波的应用

1、加权滤波

        对于AD采集到的放大后的电磁信号,需要进行简单的滤波处理,经由这一处理对各通道的AD值进行归一化,就可以得到可用于进行差比和差计算的数据。本文主要研究对AD采集到的原始信号进行加权滤波的实现方法,简单方便且不占用大量算力

        且对单一通道进行分析,显然的,在复杂电磁环境下难免出现电磁信号的突变、噪声。加权滤波是对于连续采集到的一组的原始数据,赋予不同的权值,一般给予最近采集的信号高权重,较早采集的信号给予较低的权值,原始信号乘以权值,最终将乘积和乘以权值和,得到滤波的结果

2、具体实现

        设置三个ADC数据值

        ADC_Value_Temp[10] : 原始采集数组

        ADC_Value_Sum :加权乘积和

        ADC_Result_Data :乘积和除以权值和,即滤波结果

        设置权值数组

        Weight_Ration[10] = {4,6,7,8,10,15,20,30,200,700} :权值数组,随时间权重增加

        Weight_Ration_Sum = 1000 :权值和

        ADC原始值获取

        adc_Init()

        adc_convert()

        以一个通道为例,其他通道相同,用for循环扫描,i表示通道数

        adc_Init();

    ADC_Value_Temp[i] = adc_convert();

    for(j = 0; j < 10; j++)

    {

        ADC_Value_Sum += ADC_Value_Temp[j]  * Weight_Ration[j];

    }

    ADC_Result_Data = ADC_Value_Sum / Weight_Ration_Sum;  

 

原文地址:https://www.cnblogs.com/ZYQS/p/14579562.html