Tag Editor Information
Tag Editor Tables
Tag List
| Item | Description |
|---|---|
| Opens the tag editor. |
Tag Editor
| Item | Description |
|---|---|
| Adds a tag. | |
| Adds a tag group. | |
| Edits the selected tag | |
| Saves the selected tag’s content in the clipboard. | |
| Pastes the tag’s content in a Tag Editor pane, Spreadsheet, or Notepad. | |
| Deletes the selected tag. | |
| Opens a pop-up window that displays the number of created tags for each type or device. | |
| Imports tags for the compatible I/O device. | |
| Shows all dropdown content within the Tag Editor pane. | |
| Hides all dropdown content within the Tag Editor pane. |
Data Types
| Data Type | Description | Range |
|---|---|---|
| BOOL | Represents ON/OFF status, 0 or 1, True or False, or other values with only two possible states. If a Boolean tag is tied to a device address with more than one bit, then any value other than one will be treated as a one. | 0 – 1 |
| REAL(FLOAT) | 32-bit floating-point number. Enables the Clamp Mode, Deadband Type, and Scale Mode advanced options. | -3.403e+038 – 3.403e+038 |
| LREAL(DOUBLE) | 64-bit floating-point number. Enables the Clamp Mode, Deadband Type, and Scale Mode advanced options. | -1.798e+308 – 1.798e+308 |
| SINT(INT8) | Signed 8-bit integer. Enables the Encoding, Clamp Mode, Deadband Type, and Scale Mode advanced options. | -128 – 127 |
| INT(INT16) | Signed 16-bit integer. Enables the Encoding, Clamp Mode, Deadband Type, and Scale Mode advanced options. | -32768 – 32767 |
| DINT(INT32) | Signed 32-bit integer. Enables the Encoding, Clamp Mode, Deadband Type, and Scale Mode advanced options. | -2147483648 – 2147483647 |
| LINT(INT64) | Signed 64-bit integer. Enables the Clamp Mode, Deadband Type, and Scale Mode advanced options. | -9223372036854775808 – 9223372036854775807 |
| USINT(UINT8) | Unsigned (non-negative) 8-bit integer. Enables the Encoding, Clamp Mode, Deadband Type, and Scale Mode advanced options. | 0 – 255 |
| UINT(UINT16) | Unsigned (non-negative) 16-bit integer. Enables the Encoding, Clamp Mode, Deadband Type, and Scale Mode advanced options. | 0 – 65535 |
| UDINT(UINT32) | Unsigned (non-negative) 32-bit integer. Enables the Encoding, Clamp Mode, Deadband Type, and Scale Mode advanced options. | 0 – 4294967295 |
| ULINT(UINT64) | Unsigned (non-negative) 64-bit integer. Enables the Clamp Mode, Deadband Type, and Scale Mode advanced options. | 0 – 18446744073709551615 |
| STRING | Stores a string value composed of text characters. For address-based devices, string tags will use a contiguous data block on the target device. |
Tags
| I/O Device | Description |
|---|---|
| I/O Driver | Write and read their value to and from external devices. When the value of a remote tag changes, it is immediately written to the associated device (via the chosen connection method - some methods may be faster than others). |
| Internal | Allow access to the Xpanel’s gateway, allowing various features (i.e., alarming, data logging, etc.). Using the Data Server feature over a common protocol, other devices can access shared tags. |
| System | Display the internal status of the Xpanel and its project status. They can display information pertaining to specific assets of the device and project, such as System, Page, Screen, Securtiy, Data Log, I/O Device, and Storage. |
Edit Tag
General
All of the items in this table are available for all data types.
| Item | Description |
|---|---|
| Tag Name | Assigns a name to the user’s tag. |
| Group | Displays the group of the tag. The folder icon on the right allows the user to select a new group. |
| Data Type | Allows the user to select from 12 possible data types. The available fields in the advanced options tab will change based on the chosen data type. |
| I/O Device | For remote tags, select the external device to associate the tag with. The user can check the name of external devices by clicking Tools > I/O Device Editor. Users can also select Virtual, Virtual (Runtime Only), or System for those respective tag types. |
| I/O Address | For remote tags, enter the external device address to associate the tag with. The user must enter the address using the device’s addressing method. For example, for a CIMON PLC, valid bit addresses include “X00”, “Y1E”, etc. For System, enter the system tag values for specific functions. |
| Bit Access | Enables or disables the use of Bit Number. This is unavailable for data types BOOL, REAL, LREAL, or STRING. |
| Bit Number | Assigns the value of the bit number to target in the given I/O Address. |
| Simulator Initial Value | Assigns the value of the remote tag to be set on project startup when using the Simulator. |
| Initial Value | Assigns the value of the virtual or virtual (runtime only) tag to be set on project startup. |
| Persistent | When this option is true, the last state of the tag is stored when the project is closed. When the user executes the project again, the tag values will be reloaded. |
| Value Changed | With this option enabled, a user-defined script or action list will be performed when the tag value changes. |
| Quality Changed | With this option enabled, a user-defined script or action list will be performed when the quality of the tag changes. In this case, quality refers to the communication status of the tag. |
Advanced
The following options are not available for System tags.
| Item | Description |
|---|---|
| High Priority | Adds the selected tag to the list of High Priority tags for a physical device. Up to 5 tags may be set as high priority per device. This setting reads the tag's value more times for more current and accurate data. |
| Encoding | Selecting the BCD option from the dropdown menu enables binary-coded decimal encoding. With this mode enabled, a binary sequence will represent the analog tag’s value. Note that binary-coded decimals do not function like converting a decimal number to binary. This option is only available for data types SINT (INT8), INT (INT16), DINT (INT32), USINT(UINT8), UINT (UINT16), UDINT (UINT32). |
| Clamp Write Value | This option dictates how the tag will handle values outside of the specified maximum/minimum values. Note that this setting only applies to write requests and will not change values read from the PLC. |
| Clamp Write Value - Clamp High | To use this feature, select Clamp High from the dropdown menu. Next, enter the desired Engineering Max value. Any tag value greater than the assigned Engineering Max value will be overwritten to the Engineering Max value. |
| Clamp Write Value - Clamp Low | To use this feature, select Clamp Low from the dropdown menu. Next, enter the desired Engineering Min value. Any tag value less than the assigned Engineering Min value will be overwritten to the Engineering Min value. |
| Clamp Write Value - Clamp Both | To use this feature, select Clamp Both from the dropdown menu. Next, enter the desired Engineering Max and Engineering Min values. Any tag value greater than the assigned Engineering Max value will be overwritten to the Engineering Max value, and any tag value less than the assigned Engineering Min value will be overwritten to the Engineer Min value. |
| Clamp Source Value | Restricts the tag value from a source device. |
| Deadband Type | Filters the original input data and discards any new input data within a specified range of the last recorded tag value. |
| Deadband Type - Absolute | To use this feature, select Absolute from the Deadband dropdown menu. Next, assign any numeric value in the Deadband field. If the absolute difference between the current tag value and the last recorded tag value is greater than the Deadband value, the tag's current value is sent. If the absolute difference is less than the Deadband value, the current value is filtered. Example: Select a DINT tag type and an Absolute Deadband type. For a Deadband of 10: Last Recorded Tag Value: 40 Current Tag Value: 12 Absolute Difference = |Last Recorded Tag Value - Current Tag Value| For this case, the absolute difference between the two tags is 28. The absolute difference is higher than the Deadband, so the current tag value will be recorded. Next, say that the last recorded tag value remains at 40 with a new current tag value of 32. The absolute difference in this case would be less than the deadband, so the current tag value would be filtered, and the tag value would remain as the last recorded tag value. |
| Deadband Type - Percent | To use this feature, select Percent from the Deadband dropdown menu. Next, assign a numeric value between 1 and 100 in the Deadband field. If the percent difference between the current tag value and the last recorded tag value is greater than the Deadband value, the tag's current value is sent. The current value is filtered if the percent difference is less than the Deadband value. Example: Select a DINT tag type and a Percent Deadband type. For a Deadband of 10: Last Recorded Tag Value: 40 Current Tag Value: 12 Percent Difference = |Last Recorded Tag Value - Current Tag Value| /(Last Recorded Tag Value) * 100 For this case, the percent difference between the two tags is 70%. The percent difference is higher than the Deadband, so the current tag value will be recorded. Next, say that the last recorded tag value remains at 40 with a new current tag value of 37. The percent difference in this case would be less than the deadband, so the current tag value would be filtered, and the tag value would remain as the last recorded tag value. |
| Scale Mode | Converts the original input data into a new value using one of four methods. This field is not accessible for Virtual (Runtime Only), System, BOOL, or STRING tags. |
| Scale Mode - Linear Range | To use this feature, select Linear Range from the dropdown menu. Next, enter the desired Raw Low, Raw High, Scaled Low and Scaled High values. With this option, the tag value will be linearly scaled such that the Raw Low is converted to the Scaled Low, and the Raw High is converted to the Scaled High. Intermediate values are scaled linearly. For a given input (raw) value, the exact output (tag) value can be calculated using the formula below: Tag Value = (Input Value – Raw Low) / (Raw High – Raw Low) * (Scaled High– Scaled Low) + Scaled Low Example: Select a REAL tag type. Set the Raw Low to zero and the Raw High to one. Set the Scaled Low to zero and the Scaled High to 100. Now, PLC values (on the left) will be converted to the following tag values (on the right): -17.0 becomes 0 0.0 becomes 0 0.25 becomes 25 0.75 becomes 75 1.0 becomes 100 24.0 becomes 100 Any input value below the Raw Low will be converted to the Scaled Low. Any input above the Raw High will be converted to the Scaled High. For a given tag value, the corresponding input value can be calculated using the formula below: Input Value = (Tag Value – Raw Low) / (Scaled High – Scaled Low) * ( Raw High– Raw Low) + Raw Low |
| Scale Mode - Linear Slope | To use this feature, select Linear Slope from the dropdown menu. Next, enter the desired Slope and Intercept values in their respective fields. With this option, the tag value will be calculated using the formula below: Tag Value = (Input Value * Slope) + Intercept Example: Select an analog tag with data type UINT. For a Slope of 0.1 and an Intercept of 10: Minimum value: (0 * 0.1) + 10 = 10, Maximum value: (65535 * 0.1) + 10 = 6563.5 For a given tag value, the corresponding input value can be calculated using the formula below: Input Value = (Tag Value – Intercept) / Slope |
| Scale Mode - Square Root | To use this feature, select Square Root from the dropdown menu. Next, enter the desired Raw Low, Raw High, Scaled Low and Scaled High values. With this option, the tag value will be exponentially scaled, such that the Raw Low is converted to the Scaled Low and the Raw High is converted to the Scaled High. Intermediate values are scaled exponentially, with a fixed exponent of 1/2. For a given input (raw) value, the exact output (tag) value can be calculated using the formula below: Tag Value = (Scaled High - Scaled Low) * sqrt((Input Value - Raw Low) / (Raw High - Raw Low)) + Scaled Low Any input value below the Raw Low will be converted to the Scaled Low. Any input above the Raw High will be converted to the Scaled High. For a given tag value, the corresponding input value can be calculated using the formula below: Input Value = ((Tag Value - Scaled Low) / (Scaled High - Scaled Low))^2 * (Raw High - Raw Low) + Raw Low |
| Scale Mode - Polynomial | To use this feature, select Polynomial from the dropdown menu. Next, enter the desired Exponent, Slope, and Intercept values. With this option, the tag value will be exponentially scaled. For this option, the tag value will be calculated using the formula below: Tag Value = Slope * (Input Value)^Exponent + Intercept For a given tag value, the corresponding input value can be calculated using the formula below: Input Value = ((Tag Value - Intercept) / (Slope))^(1/Exponent) |
Advanced - STRING
The following options are only available for the data type STRING.
| Item | Description |
|---|---|
| Use Device Encoding | When this option is false, the Device Encoding is overridden with the selected String Encoding option. |
| String Encoding | Specifies the encoding method for reading and writing string values stored on the device. The available encoding methods are ASCII, ISO-8859-1, Latin1, Windows-1252, Windows-949, CP949, Shift_JIS, GBK, and UTF-8. |
| Use Device Encoding Method | When this option is false, the Device Encoding Method is overridden with the selected String Encoding Method option. |
| String Encoding Method | When an invalid character is encountered, the gateway will do one of the following: Replace: Will replace any invalid characters within the string with "?". Skip: Will skip the invalid character and continue with the next one. Stop: Will stop reading the string and truncate any remaining characters. |
| Max Length | Assign the maximum string length that can be written to the tag. For local tags, the user can choose a value between 1 and 2147483647. For remote tags, the maximum length is only limited by the device’s memory. Note: Be careful to avoid overlapping device addresses. For example, if one string tag “STR1” begins at address D00 on a CIMON PLC, and another string tag begins at address D07, then STR1 should be no longer than 14 characters (7 words * (16 bits/word) / (8 bits/character) = 14 characters). Otherwise, editing one string may affect the other. |
Binding Properties
Tag
| Item | Description |
|---|---|
| Initial Value | Sets the initial value of the parameter. |
| Tag | Sets the tag that will be bound to the parameter. |
| Direction | Dropdown menu that can change how the tag and property will interact with each other. |
| Direction - Tag to Property | The tag will directly change the property when edited. |
| Direction - Property to Tag | The property will change the tag, and the tag cannot change the property. |
| Direction - Bidirectional | Both can interact with each other. Mostly used in Text Fields. |
| Use Formatting Options | A toggle to set specific formatting settings on the property. |
| Preview | Shows how the current formatting will look. |
| Decimal Places | Will set how many decimal places will show by default. |
| Use Leading Zeros | Sets how many zeros will appear preceding the tag value. |
| Base | Can be set to either Decimal or Hexadecimal. Depending on the selection, the text will be displayed as hexadecimal or in a normal decimal base. |
| Base - Decimal | Will display it in the decimal format. |
| Base - Hexadecimal | Will display any numbers in hexadecimal format. |
| Use Thousands Separator | Adds a comma for every thousand places. |
Expression
| Item | Description |
|---|---|
| Initial Value | Sets the initial value of the parameter. |
| Expression | Opens a dropdown that allows the user the type of custom expression that are available for that specific parameter. |
| Custom | Allows for custom expressions to be done. |
| Condition Map | Expression where users can set a specific change in value when the value of the tag bound to the expression will reach a specific threshold specified within the parameters. |
| Condition Map - Tag | Sets the Tag to have the Condition check and the output write to. |
| Condition Map - Condition | Sets the condition of where the tag should be in correlation with the Value, in order to have the output take effect. |
| Condition Map - Value | Sets the minimum or maximum value the number can be for the output to occur. |
| Condition Map - Output | Tag value will change this when the condition is met. |
| Condition Map - | Deletes the selected condition. |
| Condition Map - | Moves the selected condition down in priority. |
| Condition Map - | Moves the selected condition up in priority. |
| Boolean Value | Has the tag act like a bool value. Can allow for inverts. |
| Boolean Value - Invert | Allows 1 to be false and 0 to be true. |
| Scale Tag Value | Displays the value of a tag in a scale form from a user-defined scale. |
| Scale Tag Value - Tag | Sets the tag that will have its value scaled. |
| Scale Tag Value - Scale Type | Converts the original input data into a new value using Linear Scaling. |
| Scale Tag Value - Offset Type | Sets the offset for how the scale will affect the parameter. |
| Scale Tag Value - Raw Low | Sets the minimum for the tag value. A tag may be bound to this property to control the value in runtime. |
| Scale Tag Value - Raw High | Sets the maximum for the tag value. A tag may be bound to this property to control the value in runtime. |
| Scale Tag Value - Scaled Low | Sets the minimum that the scale will go to. A tag may be bound to this property to control the value in runtime. |
| Scale Tag Value - Scaled High | Sets the maximum for the scale. A tag may be bound to this property to control the value in runtime. |
| Scale Tag Value - Clamp Mode | Sets a hard cap at either both or just the min or max. Users can also remove to have no cap. |
| Scale Tag Value - Direction | Sets the direction the scale will go into. |
| Multilanguage String | Changes the tag so that the text can be used in a Translation. Text will need to have this to use any translations set in the Translation Editor. |
| Date/Time String | Displays the system date and time on a string. |
I/O Address Editor
| Field | Values |
|---|---|
| Data Type | BOOL, REAL (FLOAT32), LREAL (FLOAT64), SINT (INT8), INT (INT16), DINT (INT32), LINT (INT64), USINT (UINT8), UINT (UINT16), UDINT (UINT32). |
| I/O Device | Remote (Created I/O Devices), Virtual (Runtime Only), Virtual, System. |
| Device | X, Y, M, L, K, F, T, C, TC, TS, CC, CS, D, Z Device selection is only available for Remote tags and is limited for the BOOL data type. |
| Address | Appends the selected number to the chosen Device for the I/O Address. |
| Class ID (Hex) | Assigns a Class ID to the tag in Hexadecimal format. |
| Instance ID (Hex) | Assigns an Instance ID to the tag in Hexadecimal format. |
| Attribute ID (Hex) | Assigns an Attribute ID to the tag in Hexadecimal format. |
| Arrary/Struct Attribute | Controls whether or not the Offset (Bits) field is used. |
| Offset (Bits) | Assigns the tag's offset in bits. |
System I/O Device
| Type | Value | Description |
|---|---|---|
| System | CPU Architecture | Returns the processor's instruction set type. |
| System | Operating System | Returns the name of the system software. |
| System | OS Kernel Type | Returns the name of the system kernel. |
| System | OS Kernel Version | Returns the version of the system kernel. |
| System | Device Host Name | Returns the name of the device. |
| System | System Username | Returns the name of the current user. |
| System | Datetime String | Returns the system date and time in format YYYY-MM-DD hh:mm:ss . |
| System | Unix Timestamp | Returns the seconds since January 1st, 1970. |
| System | System Uptime (ms) | Returns the system uptime in seconds. |
| System | Current Language | Returns the BCP 47 code for system language. |
| Screen | Width (Pixels) | Returns the current screen size width in pixels. |
| Screen | Height (Pixels) | Returns the current screen size height in pixels. |
| Screen | Resolution (WxH) | Returns the current screen size in the format WidthxHeight. |
| Page | Current Page Name | Returns the project's current page name. |
| Page | Current Page Number | Returns the project's current page number. |
| Security | Current Username | Returns the currently logged-in user's ID. |
| Data Log | Enable Status | Starts the selected Data Log. |
| I/O Device | Connection Status | Returns 0 if communication with the selected I/O device is functioning or one if not. |
| Storage | USB Available | Returns the status of the USB. |
| Storage | SD Available | Returns the status of the SD. |