Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Every knowledge area has its own terminology, and the same applies to software applications. While the nomenclature used on this platform follows market standards whenever possible, some specific terms related to the system may have special meanings in this context.

This glossary includes most of the terms and keywords used by our platform, as well as concepts and related technologies relevant to our context.

It is recommended to read this glossary at least once after using our platform for a few months. Reviewing the definitions and concepts, combined with your experience, will enhance your understanding of the system and improve your efficiency in creating applications.

Name

Description

App Domain, Application Domain

Represents the virtual isolated computer environment, where a .NET application runs. Isolated, in its context, means that the memory areas and components used by programming running in that environment are completely isolated from other programs running in the same computer.

The inherent isolation of the .NET domains creates an intrinsically safe protection for the running solutions, as it prevents one process from interfering with another, allowing even two different versions of the same program to run side by side.

A more technical definition if AppDomain is the boundaries that the CLR (Common Language Runtime) provides around the objects created from the same application.

Application, Project, Solution

Refers to solution or final system created using the platform. The terms Application. Project and Solution were used with close meaning, referring to the engineering configuration and files necessary to implement the an application intended to deploy in a production environment.

With the release of version 10, Project is now used to refer to applications created with version 9.2 or older, as Solutions refer to applications created with version 10 and up.

Application Modules

The application modules are software components facilitating interactions between a system and its external environment or various system parts. The application modules encompass Alarms, Devices, and Historians.  They are called "application modules" because they are applied to specific tasks or applications within the system. These modules continuously monitor, collect, and process information, ensuring that the system remains in its desired state.

Assembly

Refers to an executable file (.EXE or Library.DLL) created using managed code and Microsoft .NET framework. 

Asset Tree

The Asset Tree is a hierarchical representation of the solution data model. It may contain variables and data templates that match physical equipment in the production environment, as well as any enterprise or auxiliary variables necessary to implement your real-time application.

Build and Publish

The Build  process involves compiling the solution code and Publish is creating a read-only version of the solution for distribution in regulated sites.

Categories

Metadata labels that be used across all configuration tables, assisting to organize large size application.

Channels

Channels are created and configured to handle specific communication protocols and drivers. Each channel is defined by a specific protocol driver and connection type, such as RS-232 or TCP/IP. Channels allow the module to access multiple devices (such as PLCs) using the defined protocol and interface. The configuration of Channels is on the Solution Explorer, at Devices → Channels.

Component

Graphical User Controls available to create displays 

Date Template (UDT)

Data templates, or UDT's (User Data Types), are user-defined data structures that can include variables of any type and references to other templates, creating a hierarchical data structure. When creating tags based on templates, each variable in the template is referred to as a property. An example of a data template is a simple PID information template with properties such as ProcessValue, Setpoint, and ControlValue.

Designer, Solution Designer

Application and User Interface to configure FrameworX Solutions.

Draw

Part of the Solution Designer configuration used to draw and animate displays and synoptic screens.

DLL Hell

Term used to refer the complications on running the legacy Windows applications as there is no built-in isolation on the DLL libraries, memory and COM objects used by the applications. The .NET Framework completely eliminated that problem.

Domain, Server Domain, Client Domain

Refers to the values and location of objects at run time. Domain server objects running on the server are the objects running on the server during runtime. Values associated with this object are system-wide. Client domain means that the object is running on the client station and each machine can have different values.

External TagProviders

External TagProviders enable direct interaction with variables in remote systems, bypassing the need to create specific tags in the solution. They establish connections with tag sources, which can be set up in a table or directly in the assets, enhancing the versatility of data access and exploration within the Unified Namespace.

Enumerations

Enumerations define a series of potential values or ranges for a variable, mapping messages and colors to each state. When connected to a tag, the enumeration value enhances data interpretation, providing context to the different states the variable can assume.

Internal Module

Features and programs that implement internal system functions which run without any user configuration.
Examples are the Network Synchronization task and the Background Report Generator. Some Studio tools (e.g., ModuleInformation.exe) may display status information of those internal Modules. However, this information is required only for advanced system optimizations.

FactoryStudio

Scalable product version by I/O and Clients, simple to advanced SCADA / HMI, IIoT Edge and Gateway all built on Tatsoft’s FrameworX.

FrameworX

Our software platform. It's also used in the context to refer to the underlying technologies and components of the platform.

FrameworX Unlimited

Includes unlimited Clients, Connections and Developers. Built-in drivers, SQL, OPC UA, MQTT and more.

FX EDGE

A FrameworX Edge application

FX MQTT Broker

Our embedded Broker for testing

FX MQTT Simulator

A MQTT Client simulator (with Sparkplug) for testing, included in the product installation

Hot Updates / Hot Reload

Hot Updates are a subset of online configurations that allow the application of offline solution changes without disrupting the runtime environment. They maintain solution stability and prevent downtime, ensuring the solution remains up-to-date with the latest changes.

AccessTypes

Each Point is associated with an AccessType, which defines the rules for reading and/or writing values for that Point. Some rules that can be set are Polling rate, whether a read is performed on startup, and whether you write values to that Point. The AccessType allows users to configure the way in which clients can access data points in the system.

AlarmArea

n AlarmArea is a hierarchical grouping of AlarmGroups that allows for a more organized and structured approach to managing alarms. An AlarmArea can have child AlarmAreas, allowing for a hierarchical structure of AlarmGroups and AlarmItems. This is useful for large systems with many alarms, as it provides a more intuitive and manageable way of organizing them.

AlarmItem


An AlarmItem is a tag or expression monitored by the Alarm Module. It contains information such as the tag name, the alarm condition (what triggers the alarm), and the associated AlarmGroup. Each AlarmItem can have its own configuration properties, such as Limit, Deadband, and Message, which define the alarm behavior and characteristics.




AlarmGroup

An AlarmGroup is a collection of AlarmItems that share common properties and characteristics. It is a way to group alarms together for easier management and organization. Each AlarmGroup can have its own configuration properties, such as AckRequired, AutoAckTime, and Sound, which apply to all of its AlarmItems.

App Domain, Application Domain

Represents the virtual isolated computer environment, where a .NET application runs. Isolated, in its context, means that the memory areas and components used by programming running in that environment are completely isolated from other programs running in the same computer.

The inherent isolation of the .NET domains creates an intrinsically safe protection for the running solutions, as it prevents one process from interfering with another, allowing even two different versions of the same program to run side by side.

A more technical definition if AppDomain is the boundaries that the CLR (Common Language Runtime) provides around the objects created from the same application.

Application, Project, Solution

Refers to solution or final system created using the platform. The terms Application. Project and Solution were used with close meaning, referring to the engineering configuration and files necessary to implement the an application intended to deploy in a production environment.

With the release of version 10, Project is now used to refer to applications created with version 9.2 or older, as Solutions refer to applications created with version 10 and up.

Application Modules

The application modules are software components facilitating interactions between a system and its external environment or various system parts. The application modules encompass Alarms, Devices, and Historians.  They are called "application modules" because they are applied to specific tasks or applications within the system. These modules continuously monitor, collect, and process information, ensuring that the system remains in its desired state.

Assembly

Refers to an executable file (.EXE or Library.DLL) created using managed code and Microsoft .NET framework. 

Asset Tree

The Asset Tree is a hierarchical representation of the solution data model. It may contain variables and data templates that match physical equipment in the production environment, as well as any enterprise or auxiliary variables necessary to implement your real-time application.

Audit Trail

The Audit Trail is a feature of the Alarm Module that logs all changes made to AlarmGroups and AlarmItems, including creation, modification, and deletion events. It tracks and records the history of changes to the alarm configuration, providing a clear audit trail of who made what changes and when. This is useful for troubleshooting, analysis, and compliance purposes.



Build and Publish

The Build  process involves compiling the solution code and Publish is creating a read-only version of the solution for distribution in regulated sites.

Categories

Metadata labels that be used across all configuration tables, assisting to organize large size application.

Channels

Channels are created and configured to handle specific communication protocols and drivers. Each channel is defined by a specific protocol driver and connection type, such as RS-232 or TCP/IP. Channels allow the module to access multiple devices (such as PLCs) using the defined protocol and interface. The configuration of Channels is on the Solution Explorer, at Devices → Channels.

Component

Graphical User Controls available to create displays 



Date Template (UDT)

Data templates, or UDT's (User Data Types), are user-defined data structures that can include variables of any type and references to other templates, creating a hierarchical data structure. When creating tags based on templates, each variable in the template is referred to as a property. An example of a data template is a simple PID information template with properties such as ProcessValue, Setpoint, and ControlValue.



Designer, Solution Designer

Application and User Interface to configure FrameworX Solutions.

Draw

Part of the Solution Designer configuration used to draw and animate displays and synoptic screens.

DLL Hell

Term used to refer the complications on running the legacy Windows applications as there is no built-in isolation on the DLL libraries, memory and COM objects used by the applications. The .NET Framework completely eliminated that problem.

Domain, Server Domain, Client Domain

Refers to the values and location of objects at run time. Domain server objects running on the server are the objects running on the server during runtime. Values associated with this object are system-wide. Client domain means that the object is running on the client station and each machine can have different values.

External TagProviders

External TagProviders enable direct interaction with variables in remote systems, bypassing the need to create specific tags in the solution. They establish connections with tag sources, which can be set up in a table or directly in the assets, enhancing the versatility of data access and exploration within the Unified Namespace.

Enumerations

Enumerations define a series of potential values or ranges for a variable, mapping messages and colors to each state. When connected to a tag, the enumeration value enhances data interpretation, providing context to the different states the variable can assume.



Internal Module

Features and programs that implement internal system functions which run without any user configuration.
Examples are the Network Synchronization task and the Background Report Generator. Some Studio tools (e.g., ModuleInformation.exe) may display status information of those internal Modules. However, this information is required only for advanced system optimizations.

FactoryStudio

Scalable product version by I/O and Clients, simple to advanced SCADA / HMI, IIoT Edge and Gateway all built on Tatsoft’s FrameworX.

FrameworX

Our software platform. It's also used in the context to refer to the underlying technologies and components of the platform.

FrameworX Unlimited

Includes unlimited Clients, Connections and Developers. Built-in drivers, SQL, OPC UA, MQTT and more.

FX EDGE

A FrameworX Edge application

FX MQTT Broker

Our embedded Broker for testing

FX MQTT Simulator

A MQTT Client simulator (with Sparkplug) for testing, included in the product installation

Hot Updates / Hot Reload

Hot Updates are a subset of online configurations that allow the application of offline solution changes without disrupting the runtime environment. They maintain solution stability and prevent downtime, ensuring the solution remains up-to-date with the latest changes.

HistorianTables

HistorianTables groups Tags for historical archiving. Using the Historian Table, you can define the Tags to be stored in each Target Database. Additionally, you can configure standard settings for all tags in a group, such as when to save new data and how long to keep it in the database.

HistorianTag


A HistorianTag refers to any internal or external Tag whose values are stored in a HistorianTable. In addition to Tags from the platform, you can include dynamic references to external data using the TagProvider function.Main Solution File

Refers to the SQL Studio encoded database that contains the Solution configuration. The extension .TPROJ references the current project still under development. The extension .TRUN references read-only published projects.

Modifier (Device/Points)

Auxiliary parameter to effect read and write points for a device, the treatment of Arrays, bit masks, strings, swap and other operations in which a DataType definition can not define them completely.

Modular architecture

Modular Architecture is a  foundation of our platform. Its core is based on compartmentalization, break down complex system functionalities into distinct and standalone modules. The modular architecture provides flexibility in design and configuration while ensuring that changes or adjustments to one module won't inadvertently disrupt or compromise another. 

Module

A program that accesses the database in real time (RtDB) and can be composed of one or more Assemblies.

Namespace

An address space. All objects created with a Namespace have unique names. "Address space" can also be understood as a form of tier objects. All process variables are grouped in the tag namespace; all reports grouped in the namespace report. The name of an object should be unique within the namespace to which the object belongs.

Nodes

Each device connected to the system through channels is called a Node. Nodes can be individual devices or groups of devices. Each node contains one or more Points. The configuration of Nodes is in the Solution Explorer, at Devices → Nodes.

Online Configuration


This feature allows real-time modifications to a running solution without stopping its execution. Users can adapt the solution to changing requirements, enhancing flexibility and responsiveness.

Object Type (RunObj type)

Determines the type of runtime object (display, report, script).

Objects, Runtime Objects

Runtime objects are those objects visible (through their names) to access the Solution via scripts and displays, such as Tags, Reports, Alarms, Displays among others. The namespaces also identify which execution module is responsible to update those values, for example the Alarm Module will start and will update the values of the runtime objects associated with the alarms.

Plugins

Excerpts of a Solution, it can holds Tags, Displays, or any other objects. Useful to create reusable components and enforce development standards. 

ObjectValues, PropertyValue

Runtime objects (e.g.: Tags, deviceNodes, etc.) can have one or more properties defined. The TAG and the property value, for example, MIN, MAX, description, among other properties.

PropertyWatch

Diagnostic utility to check and modify the values of the objects at runtime.

Parameters(Tag Configuration)

Definition of the parameters of behavior and values processing for Tags.

Process Modules

Process modules refer to the software components that manage and execute a system's internal logic and data transformations. They encompass Scripts, Reports, and Datasets. They are called "process modules" because these components deal specifically with the internal processes and workflows that enable the system to function efficiently.



Plug-in

Sub-set of a FrameworX Solution. Plugins are created using the Solution-Export command, selecting which parts and objects from the Solution will be exported. The Plugins can be imported or used by other solutions.

Points

Points are individual items that can be read or written from/to nodes. They can be registers, I/O values, or variables residing in field devices (nodes). Each Point is bound to a specific Tag in the Solution configuration.

Product Family

Specify the many options in our product line. It includes:

FrameworX: Our Unlimited version, unlimited Clients, I/O and development, server based with all the tools you need

FactoryStudio: Scalable, by the number of I/O & clients

EdgeHMI: Scalable by I/O, more affordable

EdgeGateway: Embedded device communications and processing at the edge or as flexible secure gateway

This Product Family reflects in the software licenses.

Product Family and Model

Define the Licensing Requirement for to run the Solution in Production. Even the Designer is unlimited, you should always setup those fields properly, so the Designer will limit its functionality consistent with the License required for field deployment. Define the Licensing Requirement for to run the Solution in Production. Even the Designer is unlimited, you should always setup those fields properly, so the Designer will limit its functionality consistent with the License required for field deployment. 



Project File

In order to facilitate distinction of current version with legacy product versions, Project File, refer to files with extension .tproj created with version 9.3 or older. 

Protocols

Protocols are the rules for communication between devices. Our software supports a variety of communication protocols.

Protocols are the rules for communication between devices. Our software supports a variety of communication protocols.Solution

Application for real-time data built on the platform. It includes the configuration for all Modules, all stored and managed as a single entity.

SolutionDB / SolutionDatabase

SolutionDB (or Solution database) is a database that contains configuration information. Matches files with the extension <Solution>.dbsln (current type, for example) or <Solution>_ version.Teng (type released, for example).

Solution File / Solution Name

The configuration of an application (solution) is saved is a file with extension .dbSln. All modules settings are stored in that file. The solution name matches the name of the configuration file.

Property or Attribute

Property (value) associated with a Tag or object.

Real time database, RunDB, Runtime Database, RtDB

The real time database created when the Solution is running. All objects running accessible (such as Tags, Displays, Reports) are objects on the Runtime Database, also called Real-Time Database or RtDB.

Runtime

A Solution with modules loaded and running.

Runtime refers specifically to the phase where a solution is in active execution. Related to running tests, carrying out validations, and handling other critical tasks associated with deploying a solution. During this phase, the software effectively utilizes all configured modules — such as Devices, Alarms, and Historian — to execute tasks, manage data, and perform automated operations based on predefined settings. The Runtime environment operates in a seamless manner, integrating with the Solution Designer workspace and the Unified Namespace to ensure real-time data exchange and process control.

The term "Runtime" or "Runtime environment" refers to the execution environment, when the solution is running, distinguishing it from the Configuration (or Engineering, or Development) phase. "Runtime" also denotes the software components and computer processes that are in execution when the solution is started. 

Runtime Database

The runtime database is an in-memory real-time database that stores and manages Unified Namespace data during the execution of a solution. It provides an event-driven data exchange of the values of tags and assets between various modules, such as alarms and displays. The runtime database is implemented by the TServer.exe process, ensuring efficient and reliable data management.

TargetPlatform

Defines the Operating Platform where the Solution is intended to Run. It can be Windows Only (.NET Framework 4.8), or Multiplatform (Linux and any OS support .NET 8.)

Runtime Startup

Operation that is the Solution at run time. This operation can be performed from the program TStartup.exe in the current version of FactoryStudio, or TServer.exe in the published version of the Solution.

StorageLocation

The StorageLocation defines where database variables will be stored or read for use in charts and calculations. You can use any SQL Database. For integration with third-party products designed to store long-term time-related values, known as time-series databases or Historian tools, you need to use the TagProvider.

Tag

A process variable. Name of a Namespace that includes all the variables created by the user in a Solution configuration.


A tag represents real-time and historical data variables that modules can read, write, and subscribe to. Tags can be created locally within the solution or accessed remotely via External TagSources connectivity. Additional metadata, known as tag attributes (e.g., last update time, quality status, description), are automatically generated when creating a tag.

Tags are the central point of the Solution Configuration. When configuring modules, they will interact using the tags, such as in these examples:

Devices Module: Maps tag values to field equipment like PLC registers.

Datasets Module: Links tags to SQL database tables and queries.

Scripts Module: Performs analytics and calculations using tags.

Historian Module: Creates a time-series archive of tag values.

Displays Module: Enables operator displays to show values corresponding to tags, regardless of their data source.

Tag Type

Defines the type of objects in the Tag Namespace: Digital, analog, text. These Tags are a class of compounds or properties accessed directly such as minimum, maximum, Value, quality. Each property is internally created as ValueType.

Task (Script.Task)

Task program written in VB.NET (or C #) that runs on the server or client during the runtime of a solution. The execution will be on the server or client, depending on the configuration of the domain property in the script.

Time-Series

Time-Series data is a collection of data, usually a list, or a set, or a stream of data, often with one entry following after the other in time, so a "series" of data readings over some consecutive time period.

A single time-series data point is usually represented as a data value, such as a temperature reading (e.g. 56) and the time at which that reading was done (a.k.a. the "time-stamp" or "timestamp"). E.g.: 4/18/2024 9:45:30.015 AM

It is helpful for analysis if the timestamps from various systems use the same "clock" and "time zone", so often people use UTC time (Universal Coordinated Time) as the "common" time zone. This helps avoid the potential confusion and extra work to "align" the data from various time zones.

TManager

The program that performs the configuration of a solution.

Toggle

Reverses the value of a variable. Values greater than zero are converted to zero; zero is converted to the value "1".

Trust, Partial Trust, Full Trust

Partial Trust: Environment in which an application has limited access to resources (restricted access to files from particular folders, running other applications, etc.). XBAP applications that run within a browser (e.g., Internet Explorer) should run in "Partial Trust".
Full Trust: Environment in which an application has access to all system resources. Applications installed on a computer usually run in "Full Trust" mode.

Unified Namespace

A software solution that acts as a centralized repository of data, information and context where any application or device can consume or publish data needed for a specific action. FactoryStudio 9.2 fully incorporates this concept: you can create, consume or integrate to a variety of namespaces.

The Unified Namespace (UNS) centralizes data in complex systems like smart manufacturing, offering semantic data structuring. It aggregates, normalizes, and provides data access, streamlining communication and integration among disparate systems. As a middleware layer, the UNS translates raw data into actionable information, ensuring device interaction within a hub-and-spoke architecture, minimizing direct communications, and maximizing flexibility.

The Unified Namespace provides a centralized data repository and a standardized method for organizing and accessing data from various sources. This concept streamlines data management, enhances system interoperability, and simplifies the development of applications that utilize data from multiple sources.





Visibility (Tag Visibility)

Refers to the tagging system; Tags can be Private, Public or Protected. In another context, the graphical objects in a display can have a visibility dynamic property to appear or not when the screen is running.

The Tag Visibility can be Public, Protected or Private

Public: The value of the Tag during the execution of the Runtime is available for access to external Programs via TCP / IP or OPC Server. Also, the value of Tag is necessarily global or shared in all the client stations (Server Domain).

Protected: Read-only.

Private: A Tag set to "Private" can not be accessed by external applications (OPC Server, TCP / IP) and will run in Client or Server machines according to the application configuration with the following characteristics:

Tags used only in modules called by the client (such as displays and Reports) run in the scope of the client, or may have different values on each client machine (Client Domain);

Tags used in server modules, such as Devices and Alarms have a unique value in the system (Server Domain).

XBAP

Xaml Browser Application (XBAP) is a graphical application using the XAML technology that runs inside a web browse. This is a legacy technology no longer in use..



In this section:

Page Tree
root@parent
spacesV10