Trying to implement a real-time data processing feature using Edge Computing on the AVR128DA48
Still on my project, I’m trying to implement a real-time data processing feature using Edge Computing on the AVR128DA48. The goal is to perform basic filtering on the sensor data ( removing noise from the vibration sensor). Here’s my simple filtering code:
I expected the filtered data to be smoother, but I’m still seeing a lot of
noise
. Is this filtering method too just there(simple) for real-time processing? and how can I implement a more robust filtering algorithm on the AVR128DA48?2 Replies
EMA filter smooths signals by applying a weighting factor to the most recent data point, it will reduce the effect of noise. update your filtering code using an EMA filter:
Alpha
is the smoothing factor that I used there . The smaller the value, the smoother the output but slower to react to changes. A value between 0.05 and 0.3 is usually a good starting point
Filtered data is calculated by weighting the new data raw_data and the previous filtered result