...
Edit Tag
There are several methods to edit a tag:
...
Double-click a tag in the tag list to edit it.
...
Select the tag to edit and click [Edit] – [Edit Tag].
...
Select Tools] - [Database] or press the icon to bring up the Database editor window as shown below:
...
Database Editor
...
Item
...
Description
...
New Tag
...
There are several methods to create a new tag:
Select [Edit] – [New Tag] when the ‘Database’ editor window is activated.
Click the
icon in the ‘Database’ editor window.
Press the ‘Insert’ key.
Double-click a blank portion of the tag list.
Right-click the tag list and select [New Tag] on the submenu.
Press [Next Tag] in the ‘Edit Tag’ window.
This section will discuss Tag Editor features as well as the tag types available.
Table of Contents |
---|
Tag Editor Pane
To open the Tag Editor pane, click View > Tag Editor to open the Tag Editor pane.
...
The Tag Editor pane can be undocked by dragging the pane's header for a more detailed view of the tags. The Tags, Type, Device, Address, Initial Value, Persistent, and Description columns are displayed in this detailed view.
...
...
Item
...
Description
...
Name
...
Enter the tag name.
...
Des.
...
Enter a description of the tag.
...
Previous
...
Moves to the previous tag’s ‘Edit Tag’ window.
...
Next
...
Moves to the next tag’s ‘Edit Tag’ window.
...
Ok
...
Registers the tag in the database.
...
Cancel
...
Cancels the tag registration and goes back to the database window.
(1) General Options
Item
Description
Tag Type
Select the tag type (real or virtual)
Real Tag
Links to an external device connected to Xpanel. The tag value updates automatically when the device value updates.
Virtual Tag
Acts as a general-purpose variable for use within Xpanel. Does not connect to an external device.
I/O Device
Item | Icon | Description | ||||
New Tag | There are two methods to create a new tag:
| |||||
New Tag Group | There are | several two methods | for deleting to create a new tag group: |
| to delete and select [Delete]
| |
Edit Tag | There are three methods to edit a tag:
| tag to copy/cut from
| Copy or cut the tag with any of the methods shown below:
| |||
Rename | N/A | Right-click the tag | and select [Copy] or [Cut] from /tag group to and click Rename on the submenu. | |||
Cut | There are two methods to cut a tag/tag group:
| After copying, move to the destination and select [Edit] – [Paste] or press the Ctrl + V keys to paste.|||||
Drag & Drop | Tags can also be copied and pasted by dragging and dropping:
|
When creating a tag, use a name that follows the criteria listed below:
1. No special characters (e.g. Space, Tab, @, *, /, +, -, etc.)
2. The first character of a tag name cannot be a number.
Ex: “DIG1” is valid, but “1DIG” is invalid
3. Tags are not case-sensitive. All tags will be stored as uppercase.
4. You cannot use the same tag name more than once in the same tag group. However, tags may use the same name if they are in different groups.
Group Tag
If you have many tags in a single window, it may be difficult to find and manage individual tags. Group tags allow you to organize tags based on category, with a tree structure for subordinate tags. The grouped tags are displayed and managed in the tag tree on the left side of the ‘Database’ window.
To create a group tag, select [Group] in the ‘Type’ field.
...
Item
...
Description
...
Name
...
Enter the tag name.
...
Des.
...
Enter a description for the tag.
...
Previous
...
Moves to the previous tag’s ‘Edit Tag’ window.
...
Next
...
Moves to the next tag’s ‘Edit Tag’ window.
...
Ok
...
Registers the tag in the database.
...
Cancel
...
Cancels the tag registration and goes back to the database window.
Digital Tag
Digital tags are used to represent ON/OFF status, 0 or 1, True or False, or other values with only 2 possible states. Within XpanelDesigner, digital values are stored and represented as either 0 or 1. If a digital tag is tied to a device address with more than one bit, then any value other than 1 will be treated as a 1. Note that within XpanelDesigner, “Digital” refers only to binary values, not to other value types that are stored digitally.
...
| ||
Copy | There are three methods to cut a tag/tag group:
After copying, move to the destination, click the Paste icon, right-click and click Paste from the submenu or press the Ctrl+V keys to paste. | |
Paste | There are three methods to paste a tag/tag group:
| |
Delete | N/A | There are two methods for deleting a tag:
|
When creating a tag, use a name that follows the criteria listed below:
|
Tag Group Creation
If the user has too many tags in a single pane, finding and managing individual tags may be challenging. Tag groups allow the user to organize tags based on category, with a tree structure for subordinate tags. The grouped tags are displayed and managed in the Tag Editor pane.
To add a group, click Add tag group icon in the Tag Editor window to create a tag group. After pressing the icon, a text field will open in the Tag Editor window where a name for the tag group can be assigned.
...
Tag Creation
To add a new tag, click Add tag icon, and Edit Tag pop-up window will appear.
...
This window has two settings sections:
General Settings
This setting contains pertinent data for all tag types.
To use the Min/Max method, uncheck the “Scale” box, then enter the Minimum and Maximum values in the ‘Raw Data’ field. With this option, the tag value will be linearly scaled so that that the Raw Data minimum is converted to the Eng. Data minimum and the Raw Data maximum is converted to the Eng. Data maximum. 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 Data Min) / (Raw Data Max – Raw Data Min) * (Eng. Data Max – Eng. Data Min) + Eng. Data Min
Example: Select an analog tag with data type Float. Set the Raw Data minimum to 0 and the maximum to 1. Set the Eng. Data minimum to 0 and the maximum 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 Data minimum will be converted to the Eng. Data minimum. Any input above the Raw Data maximum will be converted to the Eng. Data maximum.
For a given tag value, the corresponding input value can be calculated using the formula below:
Input Value = (Tag Value – Eng. Data Min) / (Eng. Data Max – Eng. Data Min) * (Raw Data Max – Raw Data Min) + Raw Data Min
...
Data Type
...
Description
...
Range
...
INT8
...
Signed 8-bit integer.
...
-128 ~ 127
...
INT16
...
Signed 16-bit integer.
...
-32768 ~ 32767
...
INT32
...
Signed 32-bit integer.
...
-2147483648 ~ 2147483647
...
UINT8
...
Unsigned (non-negative) 8-bit integer.
...
0 ~ 255
...
UINT16
...
Unsigned (non-negative) 16-bit integer.
...
0 ~ 65535
...
UINT32
...
Unsigned (non-negative) 32-bit integer.
...
0 ~ 4294967295
...
BCD8
...
Signed 8-bit Binary-coded decimal number.
...
-79 ~ 79
...
BCD16
...
Signed 16-bit Binary-coded decimal number.
...
-7999 ~ 7999
...
BCD32
...
Signed 32-bit binary-coded decimal number.
...
-79999999 ~ 79999999
...
UBCD8
...
Unsigned (non-negative) 8-bit binary-coded decimal number.
...
0 ~ 99
...
UBCD16
...
Unsigned (non-negative) 16-bit binary-coded decimal number.
...
0 ~ 9999
...
UBCD32
...
Unsigned (non-negative) 32-bit binary-coded decimal number.
...
0 ~ 99999999
...
Float
...
32-bit floating-point number
...
-3.40282346638529e+038 ~
3.40282346638529e+038
...
...
It is important to verify that the data type of every tag matches the data type used within the paired device. If there is a mismatch, data may be incorrectly represented or manipulated.
For data types that span multiple addresses (namely 32-bit double words), only the first address is needed. The address of the remaining words or bytes is implied. Note that Modbus devices typically only send and receive one 16-bit word per address. Therefore, Modbus double words may not be directly accessible via a single real tag.
String Tag
This tag stores a string value composed of ASCII characters. For virtual tags, strings up to 22 characters long can be created. For real tags, strings will use a contiguous block of data on the target device.
...
Item
...
Description
...
Name
...
Enter the tag name.
...
Des.
...
Enter a description for the tag.
...
Previous
...
Moves to the previous tag’s ‘Edit Tag’ window.
...
Next
...
Moves to the next tag’s ‘Edit Tag’ window.
...
Ok
...
Registers the tag in the database.
...
Cancel
...
Cancels the tag registration and goes back to the database window.
(1) General (String Tag)
...
Item
...
Description
...
Tag Type
...
Select the tag type (real or virtual)
...
Real Tag
...
Links to an external device connected to Xpanel. The tag value updates automatically when the device value updates.
...
Virtual Tag
...
Acts as a general-purpose variable for use within Xpanel. Does not connect to an external device.
...
I/O Device
...
Select the external device to associate the tag with. You can check the name of external devices using [Tools] – [I/O Device]. This field is enabled only when ‘Real tag’ is selected.
...
I/O Address
...
Enter the external device address to associate the tag with. You must enter the address using the device’s addressing method. For example, for a CIMON PLC, valid starting word addresses include “X00”, “M30” “D16”, etc. Note that real string tags will take up multiple words on the target device, depending on the length of the string. Only the starting address for the string needs to be specified; the other words in the string are implied by the starting address and the length of the string. Each ASCII character in the string uses 8 bits of data. For CIMON PLC’s, the standard unit of device memory is 16 bits or one “word”. Thus, every 2 characters in the string will require 1 word of device memory on the PLC. This field is enabled only when ‘Real tag’ is selected.
...
Save last status when closing
...
When you select this option, the last state of the tag is stored when the project is closed. When you execute the project again, the tag values will be maintained. Note: this feature is only available for virtual tags.
(2) Advanced (String Tag)
...
Item
Description
Length of String
Assign the maximum string length that can be written to the tag.
For virtual tags, you can choose a value between 1 and 22. For real tags, the maximum length is only limited by the device memory. Note: Be careful to avoid overlapping device addresses. For example, if one string tag “STR1” begins at address D0 on a CIMON PLC, and another string tag begins at address D7, 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.
Initial Value
Item | Description | ||||
Tag Name | Input the desired tag name | ||||
Path | Outlines the group path of the tag | ||||
Type | Allows the user to select from 12 possible data types. The available fields in the advanced options tab will change based on the selected data type.
| ||||
I/O Device | For remote tags, select the external device to associate the tag with. | You The user can check the name of external devices | using [Tools] – [by clicking Tools > I/O Device | ]. This field is enabled only when ‘Real tag’ is selected.I/O Address | Editor. For shared tags, a Data Server must be set up to allow communication with these tags. |
I/O Address | Enter the external device address to associate the tag with. | You 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. This field is enabled only when | ‘Real tag’ an I/O device is selected. Save last status when closing | ||
Persistent | When | you select this option is true, the last state of the tag is stored when the project is closed. When | you execute the user executes the project again, the tag values will be reloaded. | Note: this feature is only available for virtual tags. Upon startup, real tag values will be read from the device they are linked to.
(2) Advanced Options
...
Item
...
Description
...
Initial Value
...
Assign the initial tag value to be loaded to the tag at the project startup. This field is only available for virtual tags.
Analog Tag
Analog tags are used to represent 8-, 16-, or 32-bit numeric values. It is important to choose the correct data type for interpreting the data (INT16, UINT32, Float, etc.). Note that within XpanelDesigner, “Analog” refers to multi-bit numeric values, but not necessarily values with an analog input source.
...
Item
...
Description
...
Name
...
Enter the tag name.
...
Des.
...
Enter a description of the tag.
...
Previous
...
Moves to the previous tag’s ‘Edit Tag’ window.
...
Next
...
Moves to the next tag’s ‘Edit Tag’ window.
...
Ok
...
Registers the tag in the database.
...
Cancel
...
Cancels tag registration and goes back to the database window.
(1) General (Analog Tag)
...
Item
...
Description
...
Tag Type
...
Select the tag type (real or virtual)
...
Real Tag
...
Links to an external device connected to Xpanel. The tag value updates automatically when the device value updates.
...
Virtual Tag
...
Acts as a general-purpose variable for use within Xpanel. Does not connect to an external device.
...
I/O Device
...
Select the external device to associate the tag with. You can check the names of external devices using [Tools] – [I/O Device]. This field is enabled only when ‘Real tag’ is selected.
...
I/O Address
...
Enter the external device address to associate the tag with. You must enter the address using the device’s addressing method. For example, for a CIMON PLC, valid word addresses include “X00”, “M30” “D16”, etc. This field is enabled only when ‘Real tag’ is selected.
...
Save last status when closing
...
When you select this option, the last state of the tag is stored when the project is closed. When you execute the project again, the tag values will be maintained. Note: this feature is only available for virtual tags.
(2) Advanced (Analog Tag)
...
Item
...
Description
...
Initial Value
...
Assign the initial tag value to be loaded to the tag at project startup.
...
Data Type
...
Select the data type (bit encoding) of the tag value to use within XpanelDesigner. Refer to the table below for a description of each data type.
...
Clipping
...
With this option, when the analog value exceeds the specified Min/Max range, a warning message will appear and the value will not be recognized.
...
Scale
...
Converts the original input data into a new value using one of two methods. Note that the behavior of the ‘Eng. Data’ Min/Max values change depending on whether the “Scale” box is checked or not.
...
Scale/Offset
(Only visible when Scale is selected)
...
To use the Scale/Offset method, check the “Scale” box, then enter the Scale and Offset values in the ‘Scale/Offset’ field. With this option, the tag value will be calculated using the formula below:
Tag Value = (Input Value * Scale) + Offset
Example: Select an analog tag with data type UINT16. When Scale is 0.1 and Offset is 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 – Offset) / Scale
...
Min./Max.
(Visible when Scale is not selected)
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 communications status of the tag. |
Advanced Settings (Analog Type)
This setting is only available for analog tag type and string tag type.
Item | Description | |
Encoding | Selecting the BCD option from the drop down menu enables binary-coded decimal encoding. With this mode enabled, a binary sequence will represent the analog tag’s value. Note that binary-coded decimal does not function the same as converting a decimal number to binary. | |
Clamp Mode | 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 High | To use this feature, select Clamp High from the drop-down 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 Low | To use this feature, select Clamp Low from the drop-down 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 Both | To use this feature, select Clamp Both from the drop-down 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. | |
Reject High | To use this feature, select Reject High from the drop-down menu. Next, enter the desired Engineering Max value. Any tag value greater than the assigned Engineering Max value will be discarded, and the tag value will remain at the last recorded tag value. | |
Reject Low | To use this feature, select Reject Low from the drop-down menu. Next, enter the desired Engineering Min value. Any tag value less than the assigned Engineering Min value will be discarded, and the tag value will remain at the last recorded tag value. | |
Reject Both | To use this feature, select Reject Both from the drop-down menu. Next, enter the desired Engineering Max and Engineering Min values. Any tag value greater than the assigned Engineering Max value will be discarded, and the tag value will remain at the last recorded tag value. Any tag value less than the assigned Engineering Min value will be discarded, and the tag value will remain at the last recorded tag value. | |
Deadband Type | Filters the original input data and discards any new input data that falls within a specified range of the last recorded tag value. | |
Absolute | To use this feature, select Absolute from the Deadband drop down 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 current value of the tag 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. | |
Percent | To use this feature, select Percent from the Deadband drop-down 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. | |
Linear Range | To use this feature, select Linear Range from the drop-down 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 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 | |
Linear Slope | To use this feature, select Linear Slope from the drop-down 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, For a given tag value, the corresponding input value can be calculated using the formula below: Input Value = (Tag Value – Intercept) / Slope | |
Square Root | To use this feature, select Square Root from the drop-down 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 | |
Polynomial | To use this feature, select Polynomial from the drop-down 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 Settings (String Type)
This setting is only available for analog tag type and string tag type.
Item | Description |
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 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. |
Tag Types
Data Type | Description | ||
BOOL | Represent 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. Do not have Advanced Settings section on the Edit Tag pop-up window. | ||
Analog | Represent 8, 16, 32, or 64-bit numeric values. Choosing the correct data type for interpreting your data (INT16, UINT32, Float, etc.) is crucial. Analog refers to multi-bit numeric values within Canvas but not necessarily values with an analog input source. | ||
Analog Data Type | Description | Range | |
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 | |
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 | |
STRING | Stores a string value composed of ASCII characters. For local tags, strings up to 22 characters long can be created. For remote tags, strings will use a contiguous data block on the target device. |
|