# Difference between revisions of "Equations"

From Torque OBD2 Wiki

Jump to navigationJump to search (→Functions) |
(→Functions) |
||

Line 5: | Line 5: | ||

The equation editor supports the following functions | The equation editor supports the following functions | ||

− | * EWMAF(weight | + | * EWMAF(weight:value) Exponentially weighted moving average filter - filter noisy signals here. 'weight' should be between 0(more smoothing) and 1(less smoothing) |

− | * TDLY(seconds | + | * TDLY(seconds:value) Time based delay - causes data to be delayed by 'seconds' amount before being returned. Returns 0 until data buffer is full |

− | * RDLY(polls | + | * RDLY(polls:value) Read based delay - data is delayed by X polling loops before being returned |

− | * TOT(seconds | + | * TOT(seconds:value) Totalizer function based upon difference from time/value |

− | * TAVG(seconds | + | * TAVG(seconds:value) Timed average. This averages the incoming data for the configured amount of time (in seconds). Data older than the configured time is removed from being averaged |

* RAVG(value) Rolling average. This averages incoming values until it is reset. No values are removed from the average until it is reset. | * RAVG(value) Rolling average. This averages incoming values until it is reset. No values are removed from the average until it is reset. | ||

− | * AVG(bucketSize | + | * AVG(bucketSize:value) Point average. This averages incoming values from a bucket of s set size. The bucket can be configured to average a set amount of values, so AVG(10,value) would average the last 10 values |

* SIN(value), COS(value) ,TAN(value). Trigonometric functions are supported | * SIN(value), COS(value) ,TAN(value). Trigonometric functions are supported |

## Revision as of 20:53, 3 October 2016

The PID Editor contains a resonably power equation editor that allows you to manipulate the incoming data from an OBD device, Sensor, or other data input to the app

## Functions

The equation editor supports the following functions

- EWMAF(weight:value) Exponentially weighted moving average filter - filter noisy signals here. 'weight' should be between 0(more smoothing) and 1(less smoothing)

- TDLY(seconds:value) Time based delay - causes data to be delayed by 'seconds' amount before being returned. Returns 0 until data buffer is full

- RDLY(polls:value) Read based delay - data is delayed by X polling loops before being returned

- TOT(seconds:value) Totalizer function based upon difference from time/value

- TAVG(seconds:value) Timed average. This averages the incoming data for the configured amount of time (in seconds). Data older than the configured time is removed from being averaged

- RAVG(value) Rolling average. This averages incoming values until it is reset. No values are removed from the average until it is reset.

- AVG(bucketSize:value) Point average. This averages incoming values from a bucket of s set size. The bucket can be configured to average a set amount of values, so AVG(10,value) would average the last 10 values

- SIN(value), COS(value) ,TAN(value). Trigonometric functions are supported

- LOG(value) Returns the natural logarithm (base e) of a value

- LOG10(value) Returns the base 10 logarithm of a value

- LOG1P(value) Returns the natural logarithm of the sum of the value and 1

- INT(value) Converts the incoming number to an integer

- SQRT(value) Returns the correctly rounded positive square root of a value.

- ABS(value). Returns the absolute value of the number given

- SIGNED(value) Treats the incoming value as 8bit signed

- RANDOM() Returns a random number between 0 and 1

- BARO() Returns the barometric pressure from the android device or measured from the vehicle ECU if it supports it in psi