14 - VBOX Test Suite Maths Channel
Introduction
VBOX Test Suite Software contains a Maths Channel facility which can be used to create a new channel using a combination of the existing parameters, numbers and mathematical functions.
An example could be the calculation of road gradient by taking the vertical velocity channel, dividing it by the speed channel and multiplying by 100, thus creating gradient as a percentage.
To open the Maths Channel creator, Select the 'Maths Channel' button from the Test Setup Ribbon Bar.
Any existing Maths Channels are displayed on the left hand side of the window.
Creating a Maths Channel
To add a new Maths Channel, click on the 'Add' button on the top left of the window. Select the channel added on the left and then click within the equation editor to the right to start creating the channel.
Enter the maths expression using the drop down lists for available Channels and Functions.
Below is an example for ‘Lean Angle’.
Enter a name for the Maths channel and if you require a unit for the channel to be included within the .vbo file, enter a value in the section below the channel name. Click ‘OK’ to save changes or 'Cancel' to exit without saving any changes.
Maths Channels can be removed by selecting the channel on the left and then clicking on the 'Delete' button on the top left of the window.
If a VBOX data file is saved from the software, configured maths channels are included within the file.
Channels
The standard channels are the GPS channels which are captured by default and can always be accessed. The additional channels are any configured CAN channels or any existing Maths Channels.
Hovering over the arrow > next to a channel name will open extra functions that can be applied, including Previous, Rate of change, Integration and Accumulative. More information on the Rate of Change function can be found here.
Functions
Supported functions are shown below. Constants of G and PI are also supported.
Function | Description | Function | Description |
---|---|---|---|
+ | Add | - | Subtract |
* | Multiply | / | Divide |
% | Remainder | << | Bitwise left shift, the most-significant bit is lost, and a 0 bit is inserted on the other end, multiplies a binary number by 2 |
>> | Bitwise right shift, the least-significant bit is lost, and a 0 bit is inserted on the other end, divides positive numbers by 2 | & | Bitwise AND, whenever the value of a bit in both the variables is 1, then the result will be 1 or else 0 |
| | Bitwise OR, whenever the value of a bit in one of the variables is 1, then the result will be 1 or else 0 | ^ | Bitwise XOR, whenever only one variable holds the value 1, then the result is 0 else 0 will be the result |
== | Equality, checks whether equal, returns 1 for true or 0 for false | != | Non-equality, checks whether unequal, returns 1 for true or 0 for false |
<= | Less than or equal, returns 1 for true or 0 for false | >= | Greater than or equal, returns 1 for true or 0 for false |
< | Less than, returns 1 for true or 0 for false | > | Greater than, returns 1 for true or 0 for false |
Abs(x) | Absolute | Acos(x) | Arc cosine, returns degrees |
Asin(x) | Arc sine, returns degrees | Atan(x) | Arc tangent, returns degrees |
Ceiling(x) | Round up to the nearest integer | Cos(x) | Cosine, returns degrees |
Cosh(x) | Hyperbolic cosine, returns degrees | Deg(x) | Convert radians to degrees |
Exp(x) | Exponential function | Floor(x) | Round down |
Heaviside(x) | Returns 0 if x less than 0, otherwise returns 1 | Integer(x) | Integer part of x |
Ln(x) | Natural log of x | Log10(x) | Logarithm to the base 10 |
Max(x,y) | Maximum part of x and y | Min(x,y) | Minimum part of x and y |
Modf(x) | Fraction part of x | Pow(x,y) | Raise x to the power of y |
Rad(x) | Convert degrees to radians | Round(x,y) | Round the number x to y decimal places |
Sin(x) | Sine, returns degrees | Sinh(x) | Hyperbolic sine, returns degrees |
Sqrt(x) | Square root | Tan(x) | Tangent, returns degrees |
Tanh(x) | Hyperbolic tangent, returns degrees |
Using Maths Channels
A created Maths Channel is available for use wherever a channel can be added within the software, for example as a Gauge on the Dashboard, as a Channel within a Test Configuration, as a Column within Test Results or as an Axis on the Chart.