Results 1 to 7 of 7

Thread: Filter special functions - detailed explanation / how to

  1. #1
    Tuner
    Join Date
    Mar 2012
    Location
    Los Angeles
    Posts
    62

    Filter special functions - detailed explanation / how to

    Can someone shed some light on the Filter special function?
    The VCM scanner help page could be a lot more detailed.

    http://www.hptuners.com/help/VCM-Sca...l?filters.html


    1.jpg

    I am looking primarily for a more detailed explanation in the difference between the use of average and slope; and how to know when you need to use one, the other, or none to filter data.

  2. #2
    Senior Tuner mowton's Avatar
    Join Date
    Mar 2007
    Location
    Florida
    Posts
    3,773
    The avg filter is used to filter data before or after a transitional event (either positive or negative) or what I call a transient filter. The expression [50090.156.avg(500)]>50 says filter all data 500ms after the TPS% exceeds 50%. If you use -500 then the expression says says filter the data that occurred 500 ms prior to the TPS% exceeding 50%. Obviously this filter will only operate after you have logged and go back and review you log...or else it would have to be clairvoyant :-) This will allow you to filter out the transitional effects of a quick pedal movement, PE engagement etc. Each expression can be linked together with the AND/OR function to create the +/- 500ms filter or 1 sec total.

    The slope filter is used it filter changes in a signal over a specified period of time. This is especially useful in "quieting" your pedal movements during street tuning. An example of this would be if the TPS% exceeds a 5% change over a 100ms period. This expression would read [50090.156.slope(100)]<5. So this says only pass the data (don't filter because the filter will be TRUE) when the TPS% has not changed more than 5% ove a 100ms period. This two can be linked together with a second half of the filter, similar to above, using -100 which will actually handle the negative 5% criteria. So when linked together (100 and -100) they will pass only the data when the TPS% is changing less than +/-5% over a 100ms period.

    Overall, the thing to remember on filters is if the expression is TRUE, then the data will be graphed, if the expression is FALSE, then it will not. The last important note on these filters...the time (i.e 500 and 100 from above) is not absoulute. You need to play with the values to fit your actual time constraints. I can say that I have had to use a value of almost 2600 ms to cover a 300 ms need.....

    Hope this helps

    Ed M
    2004 Vette Coupe, LS2, MN6, Vararam, ARH/CATs, Ti's, 4:10, Trickflow 215, 30# SVO, Vette Doctors Cam, Fast 90/90, DD McLeod, DTE Brace, Hurst shifter, Bilsteins etc. 480/430

    ERM Performance Tuning -- Interactive Learning ..from tuning software training to custom tunes
    HP Tuners Dealer- VCM Suite (free 2hr training session with purchase), credits and new Version 2.0 turtorial available
    http://www.ermperformancetuning.com
    http://www.facebook.com/ERMPerformanceTuning

    [email protected]

  3. #3
    Tuner
    Join Date
    Mar 2012
    Location
    Los Angeles
    Posts
    62
    I was talking with someone else about these a bit.

    Quote Originally Posted by mowton View Post
    The expression [50090.156.avg(500)]>50 says filter all data 500ms after the TPS% exceeds 50%."
    if it were to filter all data 500ms after; there would be only one number output until the condition became false.


    This filter to me looks like it will output an average number over 50% from data gathered within 0ms to +500ms after the TPS% exceeded 50%.
    So if your TPS had a 100ms polling interval and collected data values over 50% of 52, 55, 60, 72, 82 within 500ms it would output a filtered value of 64.2% to your chart cell, and fill / update a new cell every 500ms.

    and also if [50090.156.avg(-500)]>50; then it will output an average number from data gathered within 500 ms to 0ms before the TPS% exceeded 50%.

    Is this correct?
    Last edited by nighttowl; 08-13-2016 at 11:23 PM.

  4. #4
    Tuner
    Join Date
    Mar 2012
    Location
    Los Angeles
    Posts
    62
    Quote Originally Posted by mowton View Post
    The slope filter is used it filter changes in a signal over a specified period of time. This is especially useful in "quieting" your pedal movements during street tuning. An example of this would be if the TPS% exceeds a 5% change over a 100ms period. This expression would read [50090.156.slope(100)]<5. So this says only pass the data (don't filter because the filter will be TRUE) when the TPS% has not changed more than 5% ove a 100ms period. This two can be linked together with a second half of the filter, similar to above, using -100 which will actually handle the negative 5% criteria. So when linked together (100 and -100) they will pass only the data when the TPS% is changing less than +/-5% over a 100ms period.
    This looks like a good explanation, thanks.

  5. #5
    Senior Tuner mowton's Avatar
    Join Date
    Mar 2007
    Location
    Florida
    Posts
    3,773
    Quote Originally Posted by nighttowl View Post
    I was talking with someone else about these a bit.



    if it were to filter all data 500ms after; there would be only one number output until the condition became false.


    This filter to me looks like it will output an average number over 50% from data gathered within 0ms to +500ms after the TPS% exceeded 50%.
    So if your TPS had a 100ms polling interval and collected data values over 50% of 52, 55, 60, 72, 82 within 500ms it would output a filtered value of 64.2% to your chart cell, and fill / update a new cell every 500ms.

    and also if [50090.156.avg(-500)]>50; then it will output an average number from data gathered within 500 ms to 0ms before the TPS% exceeded 50%.

    Is this correct?
    bad typing :-)....The expression [50090.156.avg(500)]>50 says filter out all data for 500ms after the TPS% exceeds 50%....

    sorry

    Overall my explanation of the .avg filter is correct......I have spent hours and hours as well as working with Keith, to get these right in 3.X.

    Ed M
    2004 Vette Coupe, LS2, MN6, Vararam, ARH/CATs, Ti's, 4:10, Trickflow 215, 30# SVO, Vette Doctors Cam, Fast 90/90, DD McLeod, DTE Brace, Hurst shifter, Bilsteins etc. 480/430

    ERM Performance Tuning -- Interactive Learning ..from tuning software training to custom tunes
    HP Tuners Dealer- VCM Suite (free 2hr training session with purchase), credits and new Version 2.0 turtorial available
    http://www.ermperformancetuning.com
    http://www.facebook.com/ERMPerformanceTuning

    [email protected]

  6. #6
    Tuner in Training
    Join Date
    Dec 2019
    Posts
    36
    Sorry to dig up an old thread guys, but trying to wrap my head around this.
    I plugged in this formula to try filtering changes in throttle position but it blanked out the entire histogram and I was hoping to get some clarity on how to properly implement this.

    [50090.156]>0 AND [50090.156.slope(100)]>5 AND [50090.156.slope(-100)]>5

    My understanding... and I use that term loosely... is that above 0% TPS, any change greater than 5% in TPS for 100ms before and after will be filtered out.
    But it don't work.
    Appreciate any help.

  7. #7
    Potential Tuner
    Join Date
    Feb 2021
    Posts
    6
    I'm going over this too. I just ordered my MPVI2 and doing a lot of reading while it's in the mail, and practicing over logs found on the forums.

    You need to re-read the first reply up top, the filter doesn't filter out data, it only includes data that match the condition.
    Thus, in your example, you need to change "greater than" to "lesser than" 5%:
    [50090.156]>0 AND [50090.156.slope(100)]<5 AND [50090.156.slope(-100)]<5