You're currently browsing the Ignition 8.0 docs. Click here to view the latest docs.



The Tag Editor has a dropdown list of options for Tag data types. It is important that this be set as correctly as possible with regards to the Tag's underlying data source. The Tags system will attempt to coerce any raw incoming value (for example, from OPC or a SQL query) into the desired type.

On this page ...

IULocgo


Array and Dataset Tags

  

The following table lists all the data types available for Tags in Ignition.

DatatypeString ValueInteger Value
Byte
Int1
0
Short
Int2
1
Integer
Int4
2
Long
Int8
3
Float
Float4
4
Double
Float8
5
Boolean
Boolean
6
String
String
7
DateTime
DateTime
8
Text
Text
10
Byte Array
Int1Array
17
Short Array
Int2Array
18
Integer Array
Int4Array
11
Long Array
Int8Array
12
Float Array
Float4Array
19
Double Array
Float8Array
13
Boolean Array
BooleanArray
14
String Array
StringArray
15
DateTime ArrayDateTimeArray16
Binary DataByteArray20
Dataset
DataSet
9
DocumentDocument29


Array and Dataset Data Types

The Array and Dataset data types available on Tags allow for multiple data points to be stored in a single Tag. Configuring a Tag as an array or dataset is as easy as changing the data type in the Tag Editor.

Array Tags

Many OPC servers and drivers already support array type Tags, and now each element in the array can easily be represented with the array data types in Ignition. Additionally, array data types can be used with devices that do not support array types, and will instead expose each bit in the value.

Array Tag Write-Back

OPC Array Tags now support writing back to the device. How this is done can vary, depending on the type of OPC Server in use. Some OPC Servers support writes to individual array elements, where a write would occur just like any other Tag write. However, some OPC Servers do not support individual element writes, which means the whole array will need to be written back to the array tag, even if only a single element is changing.

Array Alarm Example

Because the core data type of each element in the array is the same, it is possible to apply Tag History, Alarming, or Scaling configurations onto the array, and these configurations will be inherited by each element. 

  1. For this example, create the Tag WriteableInteger1.



  2. In the Tag Browser, right click on the WriteableInteger1 Tag and choose Copy.
  3. Right click on the Tag's folder, and choose Paste.



  4. Ignition creates a copy of the first tag and names it WriteableInteger2. Double click on the new Tag to open the Tag Editor.
  5. In the Tag Editor, change the Data Type to Integer Array. Then click OK.



  6. Once the Tag finishes re-subscribing, the value for WriteableInteger2 will now show "Array[16]" instead of the previous value. Expanding the Tag reveals a new Value section, and expanding this section will show the value of each bit. 




  7. Double click on the WriteableInteger2 Tag again to edit it. Scroll down to the Alarming section.
  8. Click on the Edit  icon.
  9. Create a new alarm with Mode set to Equal, but change the Setpoint to "1," and then click Commit
  10. Click OK. Now an alarm will be active for each element that is set to 1. 


Dataset Tags

Dataset Tags allow multiple rows and columns worth of data to be stored in a Tag. Each column is exposed as a separate folder in the Tag (i.e., the "name" folder in the image below). Dataset Tags can be driven by a query, so it's possible to query for multiple columns on a row in a single Tag. This is more efficient than using multiple query Tags (and thus multiple queries) to retrieve the same data. 

While dataset tags are convenient, the Tag History and Alarm systems do not support tags with dataset types. 


Dataset Tag Example

The following example will create a dataset memory Tag and display the contents in a Table component.

  1. Create a new Memory Tag. Name it Dataset, and change the data type to Dataset. The Dataset will be empty by default.




  2. Click the Edit icon next to Value. The Value screen is displayed. For this example, we created a simple dataset with four columns and five rows.
  3. Click the Add Column icon. Name the first column City and set type to be String.





  4. Repeat adding columns as follows:

    Column Name: Population Type: Integer
    Column Name TimeZone Type: String
    Column Name GMTOffset Type: Integer

  5. Click the Add Row icon. Add the row information as follows:

    New York8368710EST-5
    Los Angeles3833995PST-8
    Chicago2853114CST-6
    Houston2242193CST-6
    Phoenix1567924MST-7
  6. Click the Commit button.

  7. In the Designer, on a new View, add a Table component.



  8. Select the Table component. In the Property Editor, click on the Binding icon next to the data property.



  9. On the Edit Binding screen, select Tag as the Binding Type.
  10. Click the Browse Tag icon next to the Tag Path.
  11. Navigate to the Dataset tag. Highlight the Tag in the list and then Click OK.



  12. The Tag path is now displayed. Click OK.

    These bindings, just like any other Tag binding, can be set to bi-directional. In this case, you would have to be able to somehow write to the data property using scripting for the bi-directional binding to work.




  13. The Table component now displays the contents of the dataset.



Related Topics ...


  • No labels