User configurable filter
Posted: Sat Nov 02, 2013 11:01 am
Because the creator, Brent, doesn't know how each of us will utilize the input channels, and there is disagreement to filter or not to filter,
http://www.autosportlabs.org/viewtopic.php?t=3822
http://www.autosportlabs.org/viewtopic.php?t=3843
http://www.autosportlabs.org/viewtopic.php?t=3836
I hereby request a user configurable filter on each and every input channel (except GPS), analog, pulse, and accelerometer. I envision a library function something like (crudely) shown below. SensFlt=f(SensRaw,swtVal,FC1,FC2). That way each user would have the freedom to configure the filter settings for their particular vehicle characteristics and mounting configuration as well as their preference for data smoothing. In this manner the recorded digital data will more closely approximate the users interpretation of how the physical system behaves.
So for those people who don't want to filter they can select say swtVal=0 for straight pass through.
swtVal==1 selects Filter1 with filter constant FC1.
swtVal==2 selects Filter2 with filter constant FC2.
Maybe Filter 1 could be a PT1 filter and FC1 would be the time constant. Filter 2 could be a rolling average and FC2 would be the number of samples for the rolling average.
Implementation as a library function has advantages of consistent implementation on all signals, one single function for updates and expansion (in case a third type of filter is implemented), and a common configuration interface.
Personal reasons for wanting filtering, see the accelerometer graph. AccelY is the raw signal from the RCP unit. It's too noisy to be of much use, really 1.8g to .5g..... The green and yellow are two different types of post-processed filters. Average lateral acceleration of approximately 1g is much more realistic for a car on sticky street tires.....
http://www.autosportlabs.org/viewtopic.php?t=3822
http://www.autosportlabs.org/viewtopic.php?t=3843
http://www.autosportlabs.org/viewtopic.php?t=3836
I hereby request a user configurable filter on each and every input channel (except GPS), analog, pulse, and accelerometer. I envision a library function something like (crudely) shown below. SensFlt=f(SensRaw,swtVal,FC1,FC2). That way each user would have the freedom to configure the filter settings for their particular vehicle characteristics and mounting configuration as well as their preference for data smoothing. In this manner the recorded digital data will more closely approximate the users interpretation of how the physical system behaves.
So for those people who don't want to filter they can select say swtVal=0 for straight pass through.
swtVal==1 selects Filter1 with filter constant FC1.
swtVal==2 selects Filter2 with filter constant FC2.
Maybe Filter 1 could be a PT1 filter and FC1 would be the time constant. Filter 2 could be a rolling average and FC2 would be the number of samples for the rolling average.
Implementation as a library function has advantages of consistent implementation on all signals, one single function for updates and expansion (in case a third type of filter is implemented), and a common configuration interface.
Personal reasons for wanting filtering, see the accelerometer graph. AccelY is the raw signal from the RCP unit. It's too noisy to be of much use, really 1.8g to .5g..... The green and yellow are two different types of post-processed filters. Average lateral acceleration of approximately 1g is much more realistic for a car on sticky street tires.....