User defined Variable "transformations"
Examples of a "user defined variable transformation" include:
- Converting from one unit to another, for example degrees K to degrees C (although most standard units are pre-defined)
- Converting a voltage from a sensor into a temperature
- Converting 2 wheel speeds to a slip ratio between then
- Converting the pulses in longitudinal acceleration to a cadence
A transformation can be applied to a logger input, for example an analogue or frequency input, or as a standalone transformation as a user defined variable.
The format/syntax of the transformation is almost identical whether it is applied to an input or a user defined variable, it just depends on the desired result. One important reason to use a user defined variable is if you want to keep the original value of the variable. When you add a transformation to an external input then the original input is "lost" - for example if you apply a transformation to the longitudinal acceleration then there is no way to then graph the original longitudinal acceleration. Another more subtle difference between standard inputs and user defined variables is in the calculation order:
For standard variables and inputs they are all:
1. transformed/converted using whatever conversion specified, for example from volts to degrees C for a temperature sensor
2. the rate of change filter is applied
3. the linear smoothing filtering is applied
4. the custom (frequency) filters are applied
5. the calculus filters are applied
6. finally, the minimum and maximums are applied
When user defined variables are calculated each one is done before the next in order... for "User variable 1" we do steps 1-6 above and then the program proceeds to doing "User variable 2" etc. The effect of this is that you can build up results, so "User variable 2" can depend on the filtered and transformed result of "User variable 1" etc and in some situations this can be a very useful property.
There are now 3 different ways in which you can specify a "user defined variable transformation":
- A user defined "formula". This is the most commonly used as it is flexible enough for most applications, but quite simple to use and fast to run - details here
- A user defined VB script, compatible with the VB script that is used in Microsoft products. This is very flexible in what you can do, however it is a little more complex than a straightforward formula and can be slow to evaluate (depending on the PC specification and the run length) - details here
- An external DLL which can be generated from visual basic. This offers complete flexibility and is normally very fast to run - however it does require specialist knowledge to use as programming is required - details here
IMPORTANT: Whilst we try and support all our customers as far as possible, we cannot answer questions regarding scripts and external DLLs. If you require assistance in the area then there will be a charge made for the support. In the absence of a support charge or other contract in place then the scripting and external DLL functionality is simply provided as-is with no warrantee.
IMPORTANT! All the variables in the software are, by default, set to a specific unit type. If you wish to create a custom definition, then it must be relative to the native unit type. CLICK HERE FOR A LIST OF NATIVE UNITS FOR VARIABLES