Dual Hand Gauge
A Dual Hand Gauge is a Screen Object which is used to display live data in the form of a continuous circular dial with two rotating needles similar to an altimeter gauge in an aircraft cockpit. It can be configured to accept data from another object within ModCom, or to automatically poll an external DAQ Module on a continuous basis. User defined data conversions allow for viewing of data in a format or scale which is appropriate for the task, as well as the injection of calibration factors and/or offset values if needed. The gauge's value can also be used to trigger other actions within ModCom.
Once a Dual Hand Gauge is placed on the screen it can be selected by clicking on it with the left mouse button. To move the object, place the cursor over it, hold down the left mouse button and drag the object to the desired position. Resize handles are provided to allow adjustment of the overall size by dragging on them with the mouse in a similar fashion.
To set the properties of a Dual Hand Gauge, right-click on the object or select "Properties" in the <Edit> menu while the Dual Hand Gauge is selected. The following is a summery of the user defined attributes in the Properties dialog box.
Properties Dialog Box:
Title: Type in the text that will appear on the bottom of the gauge.
Size: Selects the font size used for the text characters in the gauge. Making changes to this attribute will also change the overall size of the gauge respectively.
Color: Selects the font color used for the characters in the title.
Object ID Label: Type in a label that will be used for identification by other objects within ModCom when sending data to the gauge, using the displayed reading as a variable in another object's function, or when evaluating Conditional statements specific to the gauge's value.
Data Polling Command: If wishing the Dual Hand Gauge to continuously grab data from a DAQ Module, type in the command string which should be transmitted to the module in order to read the data. Note, this entry box supports variables.
Send output value to this Screen Object: To send the current Dual Hand Gauge value to another Screen Object for viewing, type in the object's ID label here. This object can be a Data Window or a Text Window for instance.
Input: Set this to the data format (Decimal, Binary, or Hexadecimal) which equals the format of the data being returned by the DAQ Module.
Output: This feature is not used for this type of gauge and is disabled.
Multiplier: Type in the multiplication factor which should be applied to the data before it is displayed. This can be a whole number as well as a number containing digits to the right of the decimal point.
Offset: Type in the offset value which should be added to or subtracted from the data before it is displayed. This can be a whole number as well as a number containing digits to the right of the decimal point. Note, by default, the resolution of the data will use the same number of digits to the right of the decimal point as the original data which was received from the DAQ Module. However, you may increase this number by using an offset value with more digits to the right of the decimal point. For example, using 0.0 as an offset will force the data resolution to include the tenths place even though the original data may not have contained it.
Lookup Table: To convert the data using a lookup table of known substitution values, type in the filename which contains the table. If the full PATH name is not included, the file will be searched for in the current directory as shown in Get File Path. If a multiplier or offset value is being used for this Screen Object, it will be applied to the original data before searching for a match in the lookup table. For a detailed description of the file format and how to create a substitution list, see Lookup Tables. Note, this entry box supports variables.
Math Formula: To convert the data using a mathematical expression, type in a formula here. This formula can contain the four basic arithmetic operators (+, -, /, *), the exponent operator ^ , complex Math Functions (Sine, Cosine, Square Root, etc.), constants with or without a decimal point, and any of the other Variables and Screen Objects available in the project. If this Screen Object is being included in the formula as one of the variables, any multiplier, offset value, or lookup table will be applied to the original data before using it in the formula. If this Screen Object is not included in the formula, the Screen Object will update autonomously based on the formula instead of using the polling command or any data sent to it by another object.
Dial Factor: Select the multiplication factor to be used for the dial faceplate. Each number on the dial will represent itself multiplied by this factor.
Sub Marks: Select the number of sub marks to show in-between each number on the dial faceplate.
Show Factor: Check this box to show the Dial Factor on the faceplate. This text will be positioned just above the Title text.
Show Values: Check this box to show the numbers on the dial faceplate.
Maximum Data Range:
The Dual Hand Gauge will only display data which falls within it's range. Since there are two needles on the gauge and 10 numbers around the dial, the maximum range is equal to 10 x 10 x Factor. Any data outside this range will cause an overflow. If an overflow occurs, the word "Overflow" will be stored in the internal Object ID Label register and the dial will show a value of zero.