Interpretations
Status:
This information applies to ConSys version 1.47.711 (February 2024). New from this version: Check box display types updated - to new UI and with new database defined button color.
Contents:
Overview
Data Types
Floating Point Conversions
Floating Point Display Formats
Word Conversions
Word Display Formats
Bit Conversion And Display Formats
String Conversion And Display Formats
Time Conversion And Display Formats
DAF Conversion
Other links:
Console List View creation
Console tables
Database System tables
Overview
This document contains a detailed description on the use of the general data values in the interpretation table. The interpretation table contains shared general data for two purposes - conversion of data from native values to physical values and display information. The data has been shared to save space in database request packages to the database - some parameters has a display format needing many general purpose parameters but a conversion needing few parameters - and other parameters the demanding conversions and undemanding display formats. The choice of a common table to store the needed information for conversion and display require some care in the design when using general fields in interpretation table. This is especially the case for data types with several display formats as well as several conversion formats, like the floating point data type. The InterpretTypeId field in the interpretation table gives display type and conversion type for a given interpretation the data type. This field is a direct link to the index in interpretation definition table. The interpretation definition table contains string descriptions with the actual use of all general-purpose parameters in the interpretation table as well as definition of the data type, conversion type and display type. The conversion types and display types for a given data type are hardwired into the control system code. The tablesDataTypes, ConversionTypes and DisplayTypesdescribe the data types and their related conversion and display formats.
Data Types
Floating Point
Type id: 0
ConSysClasses: CConSysFloat (abstract), CConSysDouble.
C++ data type: double
Conversions:unipolar, bipolar,Special16, Pirani, Penning, 2 word
unipolar, file table conversion
Display Formats: Fixed decimal,
Exponential, Scientific
Word
Type id: 1
ConSysClasses: CConSysWord.
C++ data type: WORD
Conversions: Raw data, Table conversion, Three
state
Display Formats: Radio button, value, Three state, N
state
Bit
Type id: 2
ConSysClasses: CConSysBit
C++ data type: BOOL
Conversions: Raw data, pulse bit dataserver
Display Formats: Concatenated string, 1 String,
String
Type id: 3
ConSysClasses: CConSysString.
C++ data type: CString
Conversions: Raw data
Display Formats: Value
Time
Type id: 4
ConSysClasses: CConSysTime
C++ data type: CTime
Conversions: Raw data
Display Formats: Value
DAF
Type id: 5
ConSysClasses: CConSysDAF.
C++ data type: DAF command block
Conversions: Unipolar, Bipolar, Raw data
Display Formats: can not be displayed.
The DAF data type is use to store/send DAF command blocks to the PCDOCT device. The G64 DAF modules are loaded through data blocks of up to 256 bytes. The DAF command block contains the raw data to be loaded to the G64 DAF module by g64 device.
4kMemBlock
Type id: 6
ConSysClasses: CConSysMemBlock
C++ data type:
Conversions: Raw data
Display Formats: Value
Any Type
Type id: 7
ConSysClasses: CConSysData
C++ data type:
Conversions: Raw data
Display Formats: Value
Double Array
Type id: 8
ConSysClasses: CConSysDoubleArray
C++ data type:
Conversions: Raw data
Display Formats: Value
GenBlock
Type id: 9
ConSysClasses: CConSysGenBlock
C++ data type:
Conversions: Raw data
Display Formats: Value
Dword
Type id: 10
ConSysClasses: CConSysDWord
C++ data type:
Conversions: Raw data
Display Formats: Value
Long
Type id: 11
ConSysClasses: CConSysLong
C++ data type:
Conversions: Raw data
Display Formats: Value
DWord64
Type id: 12
ConSysClasses: CConSysDWord64
C++ data type:
Conversions: Raw data
Display Formats: Value
Int64
Type id: 13
ConSysClasses: CConSysInt64
C++ data type:
Conversions: Raw data
Display Formats: Value
Int64
Type id: 14
ConSysClasses: CConSysLong
C++ data type:
Conversions: Raw data
Display Formats: Value
Floating point conversions
Type
0: Unipolar conversion:
Type 1: Bipolar conversion:
Converts between a native binary value and the corresponding floating point value. The conversions are linear with an optional offset. Both formats use the following general parameters from the interpretation table:
D0: MaxValue. The native
value is converted to floating point values between 0 and MaxValue for unipolar
conversions and from - MaxValue to MaxValue for bipolar conversions.
D1: Offset
D2: Lower limit.
D3: Upper limit.
T0: Unit string (shared with the floating point display types)
I12: DisplayOptions, used by Console (bit filter)
bit 0: Low limit check. If set values less than D2 will show as <UndrRng>
bit 1: High limit check. If set values greather than D3 will show as <OvrRng>
I13: chartType: Used by CsPlot
undefined, and all other values than below: Standard chart.
1000: Expontial/Vacuum chart.
D2 and D3 is used as initial lower and upper plot limit for the chart y-axis.
Unipolar conversion:
The binary range: 0 -
<Max bin value>
corresponds to the real range: (0 - MaxValue)+offset
Bipolar conversion:
The binary range: 0 -
<maxBin/2> - <MaxBin>
corresponds to the real range: -MaxValue - 0 - MaxValue
Type 2: Special16 conversion:
This is a special conversion for the special 16 bit exponential G64 format. The format primary used for vacuum gauges. This conversion format does not use any of the general interpretation parameters.
Type 3: Logarithmic
This is a special conversion for the logarithmic G64 format. This conversion is not implemented yet.
Type 4: Pirani conversion
A special table conversion for pirani gauges.
Type 5: Penning conversion
A special table conversion for penning gauges.
Type 6: Unipolar 2 word conversion
This conversion uses two 16-bit words to represent a 32 bit native value. The conversion between the 32-bit native value and the floating-point value is like 16 bit unipolar conversion. Parameters using this conversion with the G64 device must use a standard conversion address to address the HIGH order word value. The low order word is the related G64 word, i.e. addressing the G64 status value will use the status value as the high order part and the status_data value as the low order part of the 32-bit word, and addressing the status_data value will use the status as low order and status_data as high order part of the 32-bit value.
Type 7: File table conversion
Implemented in version 1.0.33.134 of the ConSys Kernel .
This conversion uses a table to map native values to floating point values. Conversions between table entries are calculated by linear interpolation between neighbour points in the conversion table.
T2: Filename and path of the conversion data.
The format of the file is a simple text file with two columns of data. The first column is the native reading value, and the second value is the translated value. Below is a example of a table
0 | 1.00e-08 |
590 | 5.00e-08 |
1573 | 1.00e-07 |
2228 | 1.50e-07 |
2949 | 2.00e-07 |
4391 | 3.00e-07 |
5636 | 4.00e-07 |
6881 | 5.00e-07 |
8192 | 6.00e-07 |
9437 | 7.00e-07 |
10682 | 8.00e-07 |
11927 | 9.00e-07 |
. | |
. | |
65535 | #9; 1.00e-02 |
The table must always be in increasing order for the native values.
Floating point
display formats
Type 0: Fixed decimal:
This display format, which is the standard floating point format, shows the data in a fixed field notation. Applications can choose between to precessions, for high and a normal resolution.
I0: Display options: 0:data only, 1:
Show surname and data
I1: Field width, high resolution
I2: #decimals, high resolution
I3: Field width, normal resolution
I4: #decimals, normal resolution
T0: Unit string (shared with floating point conversions)
Type 1: Exponential notation:
Display with exponential notation. This format has the same general fields as the fixed decimal format.
Example: 7.17e-008 Torr
Type 2: Scientific notation:
Exponential display format with decade prefixes. This format has the same general fields as the fixed decimal format. The unit string must be a unprefixed and the data must be converted to this format. This display format converts the incoming data to the optimum scientific decade and concatenates the decade prefix with the unit string:
Example:
Unit String: Torr
Incoming data: 3.21e-07
Display: 32.1 nTorr
Remark: For the G64 device, word conversion work together with the g64 word addressing.
Type 0: Raw data
No conversion between native and physical value.
Type 1: Table conversion
This conversion uses the general integer values I1 to I15 as a conversion table. Native values between 0 and 14 are converted to the values I1 to I15. The conversion also works the other way around. Valid native values are 0 - 15. Native values outside the range 0 to 15 converts to the physical value 0. Valid physical values are the values in I1 to I15. Setting physical values apart from I1 to I15 will not change the native value.
Type 2: Three state
Outdated - do not use this type.
Type 0: Radio button and combo box
Show the word as windows radio buttons or a combo box selection. The radio button/combo box texts are defined by T2. The radio buttons/combo selections are enumerated from 0. Selecting a radio button/combo box will send the word value corresponding to the enumeration. If a value larger than the number of radio buttons/selections is received, all radio buttons/selections are cleared.
I0:
0: Radio button, do not show surname.
1: Radio button, surname above radio buttons.
2: Combobox, do not show surname.
3: Combobox, surname above combo box.
4: Combobox, surname to the left, width of combobox reduced
T1: Common text, will be added in front of all radio button select strings.
T2: <radio text 0>|<radio text 1>|...|<radio text n>|
Use a special character as the first characrer in a selection in the specification string:
'-': Control value disabled. Will be shown in control list but can not be selected by clicking.
'€': Control value not used. Will not be added to radio button/combo box. Meant for 'future use' values.
Example:
'control1|control2|€spare1|control3|€|control4|-control5|'
Control values: 1,2,4,6,7
'control5' will be displayd as disabled.
Type 1: value
Display the word value.
I0: 0: no surname, 1: Display surname
I1: Format: 0:Normal, 1:<lowByte>.<highByte> , 2: Hexadecimal
Type 2: Three state
Display the word value as a three state check box. 0: unchecked, 1: checked, 2: greyed. The surname is displayed with the checkbox.
Type 3: N state
A word displayed as a N state status button. Each value is represented by a bitmap. This display type can only be used for status values. The available bitmaps are hardwired into the ConSysGUI. The resource id number of the first bitmap and the number of states specify the bitmaps. Alternatively, all bitmaps are defined individually. For word values less than the number of states the bitmap with resource id number 'base id + word value' are displayed. Word values larger than the number of states are invalid and will not change the display. The surname or a state string can be displayed behind the bitmap. If the state string mode is selected, the state strings defined with T2 will be displayed when the state changes.
I1: Absolute value: Number of states
>0: The bitmap resource id's are
i3,i3+1,i3+2,....,i3+n
<0: The bitmap resource id's are i3,i4,i5,...
I2: Display options (bit filter):
bit 0: Show surname
bit 1: Show state string
I3: Resource id of the first bitmap
I4-I16: When I1<0: Resource id's of bitmaps
T2: |<state 0>|<state 1>|...|<state n>|
Empty 18x18:
Resource id: 5120
Invalid:
Resource id: 4999
Red Button up
Resource id: 5015
Red button, Green button
Resource id: 5016, 5017
Yellow:
Resource id: 5139
,
Mail send:
Resource id: 5114
Small bulbs:
Base resource id: 5000,
max number of states: 3
,
,
Standard Bulbs:
Base resource id:
5006
max number of states: 3
,
,
Big Bulbs:
Base resource id:
5003
max number of states: 3
,
,
State bulbs:
Base resource id:
5109
max number of states: 5
,
,
,
,
Valve status:
Base resource id:
5009
max number of states: 3
,
,
2 way valve status:
Base resource id: 5104
No of states:4
,
,
,
Viewer status:
Base resource id:
5012
max number of states: 3
,
,
Cup position status:
Base resource id:
5018
max number of states: 3
,
,
Aperture position status:
Base resource id:
5021
max number of states: 3
,
,
Conversion table status:
Base resource id:
5100
max number of states: 4
,
,
,
Function generator status:
Base resource id:
5115
max number of states: 4
,
,
,
Run status:
Base resource id: 5121
max number of states: 2
,
Ramp status:
Base resource id:
5123
max number of states: 2
,
Door status:
Base resource id:
5125
max number of states: 2
,
I0: 0: no surname, 1: Display surname
I1: Format: 0:Normal, 1:display as time in s.
Bit conversions and
display formats
Conversions
Type 0: Raw data
Type 1: Pulse bit dataserver
This conversion does not change the bit - the conversion type is only used to 'reserve' general fields for the pulse bit data server, CPulseDataServer.
I0: Pulse width in ms.
Display formats
Type 0: Concatenated string
This display type can only be used for status values. Show the bit status string and the surname.
T0: Low value string
T1: High value string
Type 1: 1 String
This display type can only be used for status values. Show the status string only.
T0: Low value string
T1: High value string
Type 2: Check box
This display type can only be used for control values. Show the bit as a windows check box. If a bitmap resource id is given, the checkbox is drawn as bitmap button with the ConSysGUI bitmap with the given resource id as the low state and the resource + 1 as the high state bitmap.
I1:
0: Standard check box
1: Push button, color specified in RGB (i8,i9,i10) (From ConSys version 1.47.711)
>1: Bitmap button - Bitmap id of low value.
5016: Red, 5017: Green, 5139: Yellow, 5114: Mail
T0: Low string value
T1: High string value
String conversions
and display formats
Conversions
Type 0: Raw data
Display formats
Type 0: Value
Display the string value. The display can use either the standard with (display format 0 and 1), a double height window (display mode 2) or double width using both console display columns.
I0: Display format: 0: No surname.
1: Surname, 2: Surname, status string in separate line., 3: surname, use full
display with.
I1: Max string length - used for editing.
Time conversions
and display formats
Conversions
Type 0: Raw data
Display formats
Type 0: Value
Show the time and data as a string, ex. Tue 2 Jun - 14.24
I0: Show surname: 0: No surname, 1: Display surname.
I1: Display format: 0: Date and time, 1: Date, 2: Time, 3: Time incl. seconds
I2: Align: 0: Left, 1: Center, 2: Right
Conversions
Type 0: Unipolar conversion
Type 1: Bipolar conversion
Converts between a native binary value and the corresponding floating point value when calculating the DAF tables. The conversions are linear with an optional offset. Both formats use the following general parameters from the interpretation table. The conversions are identical to the floating point conversions.
D0: MaxValue. The native value is
converted to floating point values between 0 and MaxValue for unipolar
conversions and from - MaxValue to MaxValue for bipolar conversions.
D1: Offset
D2: Lower limit - alarm level, not used by any application yet.
D3: Upper limit - alarm level, not used by any application yet.
T0: Unit string (shared with the floating point display types)
Unipolar conversion:
The binary range: 0 - <Max bin
value>
corresponds to the real range: (0 - MaxValue)+offset
Bipolar conversion:
The binary range: 0 -
<maxBin/2> - <MaxBin>
corresponds to the real range: -MaxValue - 0 - MaxValue
I6: AEG parameter number.
Type 2: Raw data
I6: AEG parameter number.
Last Modified 01 March 2024