This section will discuss Tag Editor features as well as the tag types available.
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 | Icon | Description |
New Tag | There are two methods to create a new tag:
| |
New Tag Group | There are two methods to create a new tag group:
| |
Edit Tag | There are three methods to edit a tag:
| |
Rename | N/A | Right-click the tag/tag group to and click Rename on the submenu. |
Cut | There are two methods to cut a tag/tag group:
| |
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.
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. Please refer to Tag Types for a detailed breakdown. |
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. 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. 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 an I/O device is selected. |
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 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. |
|