ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description
Copyright © 2020 Advanced Worx 112 (Pty) Ltd. All rights reserved.
Information in this document is subject to change without notice. The software described in this document is furnished under a
license agreement or nondisclosure agreement. The software may be used or copied only in accordance with the terms of those
agreements. No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or any means
electronic or mechanical, including photocopying and recording for any purpose other than the purchaser’s personal use without the
written permission of Advanced Worx 112 (Pty) Ltd.
https://www.adroitscada.com
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description Page|1
Contents
1. Overview ......................................................................................................................................... 5
1.1. Distributed Client-Server Architecture .......................................................................................... 5
1.2. Openness ................................................................................................................................ 5
1.3. Object Oriented and Context Driven Solutions ............................................................................... 5
1.4. Scalability ................................................................................................................................ 6
2. Main Components and Architecture ................................................................................................. 7
2.1. Data Layer .............................................................................................................................. 7
2.2. Middle Layer – The Ignite Server................................................................................................. 8
2.3. Presentation Layer – View Clients................................................................................................ 9
2.3.1. The Designer .........................................................................................................................................9
2.3.2. The Operator .........................................................................................................................................9
3. Agent Server (I/O Server) ..............................................................................................................10
4. Agents ............................................................................................................................................12
4.1. Overview - Agent Groups and Agent Types ................................................................................. 12
4.1.1. Naming Conventions ............................................................................................................................. 12
4.1.2. Agent Types Overview .......................................................................................................................... 15
4.1.3. Slots ................................................................................................................................................... 16
4.1.4. Data Elements ..................................................................................................................................... 17
4.1.5. Header Slots ........................................................................................................................................ 17
4.1.6. Status Bits ........................................................................................................................................... 18
4.2. Primitive Agent Types ............................................................................................................. 19
4.2.1. Boolean Agent ..................................................................................................................................... 19
4.2.2. Text Agent .......................................................................................................................................... 19
4.3. Basic Agent Types .................................................................................................................. 20
4.4. Basic Agent Types .................................................................................................................. 20
4.4.1. Analog Agent ....................................................................................................................................... 21
4.4.2. Counter Agent ..................................................................................................................................... 21
4.4.3. Digital Agent........................................................................................................................................ 22
4.4.4. Expression Agent.................................................................................................................................. 22
4.4.5. String Agent ........................................................................................................................................ 23
4.4.6. StringList Agent.................................................................................................................................... 24
4.4.7. Timer Agent ........................................................................................................................................ 24
4.5. Advanced Agent Types ............................................................................................................ 25
4.5.1. AgentGroup ......................................................................................................................................... 25
4.5.2. Alarm Agent ........................................................................................................................................ 25
4.5.3. AlarmList Agent.................................................................................................................................... 26
4.5.4. Command Agent .................................................................................................................................. 27
4.5.5. DBQuery Agent .................................................................................................................................... 27
4.5.6. DBLog Agent ....................................................................................................................................... 28
4.5.7. EventLogging Agent .............................................................................................................................. 28
4.5.8. EventOutput Agent ............................................................................................................................... 29
4.5.9. MultiMedia Agent.................................................................................................................................. 29
4.5.10. Notify Agent .................................................................................................................................... 30
4.5.11. Script Agent ..................................................................................................................................... 30
4.5.12. Shift Agent ...................................................................................................................................... 31
4.5.13. Statistical Agent ............................................................................................................................... 31
4.6. MIS/MES Agent Types ............................................................................................................. 32
4.6.1. Accumulator Agent ............................................................................................................................... 32
4.7. IT/IoT Agent Types ................................................................................................................ 33
4.7.1. The IoT Agent ..................................................................................................................................... 33
4.7.2. PerfMon Agent ..................................................................................................................................... 33
4.8. System Agent Types ............................................................................................................... 34
4.8.1. Alias Agent .......................................................................................................................................... 34
4.8.2. DataLog Agent ..................................................................................................................................... 34
4.8.3. Device Agent ....................................................................................................................................... 36
4.8.4. Other System Agent Types .................................................................................................................... 36
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description Page|2
5. Ignite Server ..................................................................................................................................38
5.1. Datasources .......................................................................................................................... 38
5.2. Management ......................................................................................................................... 39
5.3. Projects ................................................................................................................................ 39
6. Designer .........................................................................................................................................40
6.1. The Home Menu:.................................................................................................................... 41
6.1.1. The Agent Configurator ......................................................................................................................... 42
6.2. The View Menu: ..................................................................................................................... 43
6.3. The SCADA Menu: .................................................................................................................. 45
6.4. The Configuration Menu: ......................................................................................................... 46
6.5. The Diagnostics & Tools Menu: ................................................................................................. 47
6.6. The Project Menu: .................................................................................................................. 48
6.7. The Design Menu: .................................................................................................................. 49
6.8. The Behaviors Menu: .............................................................................................................. 50
6.9. Shapes Wizards & Examples Menus ........................................................................................... 51
6.10. Graphic Form Toolbar.............................................................................................................. 52
6.10.1. Save Functions ................................................................................................................................. 52
6.10.2. Substitutions .................................................................................................................................... 52
6.10.3. Launch Script Editor .......................................................................................................................... 52
6.10.4. Design & Run................................................................................................................................... 52
6.10.5. Zoom .............................................................................................................................................. 53
6.10.6. Optimise Graphic Form ...................................................................................................................... 53
6.10.7. Statistics, Optimizations & Find and Replace ......................................................................................... 53
6.11. Enterprise Manager Menus ....................................................................................................... 54
6.11.1. Graphics Library ............................................................................................................................... 55
6.11.2. Navigation Templates ........................................................................................................................ 56
6.11.3. Wizards ........................................................................................................................................... 57
6.11.4. Templates ....................................................................................................................................... 58
6.12. Toolbox Menu ........................................................................................................................ 58
6.13. Contents, Properties and Context View Menus ............................................................................. 64
6.14. Designer Advanced Functionality ............................................................................................... 64
6.14.1. Spiders ........................................................................................................................................... 64
6.14.2. Scripting.......................................................................................................................................... 70
6.14.3. Object and Context Model .................................................................................................................. 73
7. Operator .........................................................................................................................................75
8. Mobility ..........................................................................................................................................76
8.1. Adroit Air Client ...................................................................................................................... 76
8.2. Performance Anywhere Client ................................................................................................... 77
8.3. Secure Mobile Gateway ........................................................................................................... 78
9. Security ..........................................................................................................................................79
9.1.1. Server Security .................................................................................................................................... 79
9.1.2. Allowed Users and Groups ..................................................................................................................... 80
9.1.3. Policies ............................................................................................................................................... 81
9.1.4. Datasource-specific Security................................................................................................................... 81
9.1.5. Client Security...................................................................................................................................... 83
10. Application Protocol Interface (API) ...............................................................................................85
10.1. Gateway to Performance.......................................................................................................... 85
10.1.1. Open Interfaces ............................................................................................................................... 85
10.2. Management Information and Reporting .................................................................................... 85
10.2.1. Report Suite..................................................................................................................................... 85
10.2.2. Report Pack ..................................................................................................................................... 87
10.2.3. Process Reports................................................................................................................................ 88
11. Utilities...........................................................................................................................................90
11.1. Adtech Licensing Utility............................................................................................................ 91
11.2. Agent Browser ....................................................................................................................... 91
11.3. OPC Browser ......................................................................................................................... 92
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description Page|3
11.4. OPC Server............................................................................................................................ 92
11.5. Scanning Monitor.................................................................................................................... 92
11.6. Driver Monitor ........................................................................................................................ 93
11.7. Scheduler .............................................................................................................................. 94
11.8. Script Editor .......................................................................................................................... 95
12. Adroit Ignite HMI Documentation...................................................................................................96
13. Conclusion ......................................................................................................................................96
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description Page|4
1. Overview
Adroit Ignite HMI is the product and result of the experience gained in supplying thousands of
Supervisory Control and Data Acquisition (SCADA) and Human Machine Interface (HMI), and other real-
time industrial software and information systems to customers in over 40 countries over a period of
more than 30 years.
It represents a combination of the key requirements for a Windows based secure, network and Internet-
centric software toolkit that can be readily be tailored to meet the needs of a wide range of applications
and industries. Simultaneously it still preserves a common basic underlying design approach.
That being said it can be, any Ignite project can be transported into an Adroit SCADA solution should
the size and complexity demand a more scalable solution. So no work will be lost going forward.
Adroit Ignite HMI may therefore be succinctly described as an open, portable, object-based set of process
automation tools and components, structured around the Windows DNA architecture, and hosted on
operating systems from the post Microsoft Windows operating system family.
1.2. Openness
Adroit Ignite HMI is a product with “Open Automation Technology” built into its core, that is realised
through the various open interfaces of both the Agent Server, Ignite Server and Operator components.
In a control system, users want data everywhere and all the time. With this in mind, the various open
interfaces, built on known software standards, mean every property of every object can be exposed to
3rd party applications and components running on computers anywhere that have secure access to a
suitably licenced Agent Server (I/O Server) or the Middleware Layer the Ignite Server.
Supporting Web-Services, OPC, OLE DB, SNMP, Scripting and other entry points makes Adroit Ignite HMI
into an ideal enterprise level shop-floor visualisation solution that will support any vision for a connected
enterprise.
In Adroit Ignite HMI it is possible to work in traditional “Tags” or you can configure your own templates
that include real time and static attributes. By creating a physical hierarchy for a process and deploying
instances of these templates within that hierarchy allows the Adroit Ignite HMI system to build all the
Agents, Scanning, Alarming required automatically and seamlessly as you configure your system.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description Page|5
This allows for greater levels of standardisation; higher quality solutions and the result allows users to
search and filter for any objects by the static attributes assigned during engineering. Reaching all 22kW
pumps, made by Mitsubishi within the Main Process area is easy and intuitive, using the context view
control that can be simply dropped into an Adroit Ignite HMI configuration. Adroit Ignite HMI saves you
time and money on engineering and maintenance, a perfect choice for your SCADA / HMI.
1.4. Scalability
Adroit Ignite HMI is scalable – in that it is a seamless exercise to add more Agents to your solution or
add another view client. This requires a simple upgrade to the license. And you only pay the difference.
Should you require to expand it is a seamless exercise to convert to the standard Adroit product that
then brings unlimited expansion and connectivity, along with the Adroit Active Clustering technology for
Agent Server redundancy.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description Page|6
2. Main Components and Architecture
Figure 2 Layers
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description Page|7
A more detailed description of each Datasource is described later however to summarise:
In Adroit Ignite HMI, the I/O Server part of this architecture is called an Agent Server. Being object
oriented, Adroit Ignite HMI does not deal in primitives but delivers value from the start through the
concept of intelligent objects called Agents. Agents are intelligent objects because, in addition to
containing "state" information, as do conventional database records, they also embody "behaviour". A
more detailed examination of the implications and meaning of this is presented under the sub-heading
Agents later in this document.
Adroit Ignite HMI is shipped with many of the Agents required to build the most comprehensive solution.
This is not only simple data acquisition but the value add capability of MIS/MES Agents shipped as
standard.
The Agent Server is responsible housing the Agents and for scanning data, pre-processing, logging and
alarming and interacting with external systems such as databases and third-party applications wishing
to use the data available from the plant. Other sources of data can be included in an Adroit Ignite HMI
system and include data from Web-Services, OLE DB databases, IoT platforms etc.
The Ignite Server is the middle-layer that brings all the available datasources into a unified data model
for use within a project. It is a data portal which exposes data from a number of disparate datasources,
both external and internal to it. The data sources included as standard are one Agent Server data source,
multiple databases, web services multiple Windows event sources.
In the Ignite Server you can add different datasources, configure profiles, security and create, edit and
delete graphic projects.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description Page|8
2.3. Presentation Layer – View Clients
Figure 4 Designer
The graphical plant display windows within the Operator are themselves composed from objects, in this
case display objects known as picture elements. In addition to state information, such as size, location,
colour, etc., display objects may also be configured to have a wide variety of animation behaviours. By
connecting presentation layer animation behaviours to plant values represented by Agents within an
Agent Server. Many different animated display effects can be configured that, in real-time, depict your
plant in exactly the way that you require. These will be described in detail later, but the graphic shows
a “Percentage Fill” behaviour being used to display the filling of a picture elements based on the value
of a Tag.
Agents are called “Agents” because, instead of only containing data like simple database records or Tags
as used by many other vendors, they also usually contain the ability to operate or act on their own data,
driving its values and to read and write to other objects, and so influence them. Making Adroit Ignite
HMI very flexible to the user.
Agents are classified by function into a number of Agent types which can be used to implement a wide
variety of system related, as well as application-specific tasks. For example, the Analog Agent type is
used to handle the signal conditioning and alarm checking requirements of a process variable, and results
in over 32 available “Tags” in Adroit Ignite HMI. Every one of those Tags can be used in other Agents
Slots or displayed or interacted with on the User Interface.
For each Agent type there may be zero, one or many Agent instances, (Tags). Each time you add a Tag
you are creating a new Agent instance, however, Agent instances are simply referred to as Agents,
whereas the Agent + Attribute is to Adroit Ignite HMI a Tag.
An example would be below where the Agent Name is _SAMPLEANALOGUE, a slot example would be
_SAMPLEANALOGUE.rawvalue and the scaled value would be the final result and is held in the
_SAMPLEANALOGUE.value slot of the Agent.
Agent Servers provide consistent mechanisms for creating and destroying Agents and efficient means of
accessing the information contained within them. There are also no practical limits to the number of
different Agents, nor indeed types of Agents, that can be contained within an Agent Server.
Adroit Ignite HMI is sold where the license is the number of Agents you wish to use in your solution, not
the number of I/O being scanned from a PLC.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 10
The Agent Server database or .WGP file stores almost all of the data and configuration of the Agent
Server, including the added Agents, their values and their alarming, logging and scanning configuration.
Configuration of the Agent Server is done on-line and live and, for this reason, it is essential that this
file, along with the other Adroit Ignite HMI project files, be frequently backed up to ensure that the
integrity of this data is preserved.
.WGP files provide the following two additional features to assist with their regular back up:
• Automatic backup of WGP file on each save: To further ensure that changes made to the WGP
file are safeguarded between the regular backups, WGP files can now be automatically backed
up each time they are saved.
• Version information saved in the WGP file: In addition to providing an audit trail of changes
for debugging and troubleshooting purposes, this versioning information can also be used to
assist in locating the required backup file when recovering lost changes.
Agent Servers allow clients to connect to them by using TCP sockets over and above the legacy named
pipes:
• Sockets give you better performance when a remote client (running on another computer),
connects to an Agent Server.
• Named pipes give you better performance when a local client (running on the same computer),
connects to an Agent Server.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 11
4. Agents
4.1. Overview - Agent Groups and Agent Types
Agent Object type Intelligent Adroit object type Analog, Digital, Counter etc
Each Agent (instance of an Agent type) is referred to by its own unique name therefore Adroit will not
permit an Agent name to be used twice within an Agent Server. Usually this name is defined by the user
when the Agent is created, however, some Agents are created by Adroit itself in which case a name is
usually automatically generated.
In Adroit a Tag means “AgentName.slotName”. It will be seen during the course that any slot of any
Agent can be accessed, its data displayed or edited, provided that the Adroit naming convention is
adhered to.
When naming Agents, Adroit will not accept lower case characters, spaces, $ or % signs, commas,
periods, or backslashes in the name.
Therefore, in order to make the name of an Agent read to make sense, the _ (underscore) is used to
separate words into something readable.
Agent names should be, especially on distributed systems, unique and not longer than 32 characters.
Duplicate Agent names are only permitted in distributed Agent Servers used in Active Clustering (Hot
Standby and Redundancy) configurations.
Adroit Ignite HMI configurations are made up of one or more collections of intelligent, cooperating objects
known as Agents. An Agent is said to be "intelligent" because, in addition to containing "state"
information as would a conventional database "record" or "structure", it also embodies "action".
Consider for a moment the Analog Agent type. Each Analog Agent contains, amongst other things, the
following data values, also often referred to as attributes, slots, or properties depending on your
preferred terminology.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 12
Figure 8 Analog Agent
Value Description
rawValue used to hold the raw or unconditioned value read-in from a front end device
rawMin device minimum value
rawMax device maximum value
engMin engineering, i.e. conditioned or scaled, minimum value
engMax engineering, i.e. conditioned or scaled, maximum value
value conditioned or scaled value of the Analog
The Agent's "state" at any instant in time, is the collective value of these, and any other attributes.
Because our Agent is of type Analog, it has the inherent knowledge to transform any value coming into
its rawValue slot into a scaled or conditioned value for its value slot, using the rawMin, rawMax, engMin,
and engMax scaling parameters.
An Agent's "state" can therefore be defined as the collective value of all its data attributes at an instant
in time, and its "action" can be defined as the collection of expectations as to how it will respond to
externally generated stimuli, such as, for example, a change to one or more of its data attributes.
Agents have both generic and type-specific action and attributes. Generic action and attributes is
something that all types of Agents possess, whereas type-specific action and attributes, as the name
suggests, is something that pertains only to Agents of the specific type.
Some of the generic actions possessed by all Agent types are, for example, the ability to create, destroy,
save, and load instances. Examples of generic attributes are name, description, status, etc. The above
partial description of an Analog Agent highlights some of the type-specific action and attributes of the
Analog Agent type.
As will be explained in more detail later, Adroit Ignite HMI makes use of different Agent types to
implement a wide variety of system related, as well as application-specific tasks. The benefit of
implementing everything as Agents in Adroit Ignite HMI is that the standard mechanisms developed for
displaying, scanning, logging, alarming, eventing, etc., of process values can also be used to monitor
and control Adroit Ignite HMI itself. This has proved to be of enormous benefit from an adaptability and
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 13
flexibility point of view and will continue to pay dividends as Adroit Ignite HMI continues to evolve in the
future.
One of the generic Agent attributes is a 32-bit status word that is used by the Agent to store binary
information about its state. The first 16 bits of this word are common to all Agent types (i.e., Agent Bad,
Log Inhibit, etc.), while the last 16 bits are type-specific, for instance the Analog Agent uses the first
type-specific bit to indicate a Low Alarm condition.
It is also critical to understand that any Tag (Agent+Slot) can be in itself, scanned, alarmed, and logged
which makes Adroit Ignite HMI an incredibly powerful platform for any application. In real life this means
that, by way of example that the Analog Alarm limits could be scanned to PLC addresses without having
to create another Tag as often required in competitive HMI products, saving time and license costs.
The Adroit product has been expanded over the years to solve many problems facing the modern control
engineer. With this in mind we have classified Agent types into 6 different groups:
• Primitive Agent types
• Basic Agent types
• Advanced Agent types
• MES/MIS/IoT Agent types
• IT Agent types
• System Agent types
The reason for this is to de-clutter and focus the available functional Agent Types for the user.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 14
4.1.2. Agent Types Overview
An Agent is the basis and the building block of Adroit residing within the Agent Server. Agents do not
only store data, but also have intelligence in that they know how to manipulate that data. An Agent
therefore contains data and the operations with which to manipulate it.
Primitive:
These Agent types are primitive because they offer limited value and are limited in functionality
when compared to the Basic Agents, they are essentially single value containers.
Boolean, Text.
IMPORTANT: These Agent types CANNOT be alarmed, and their values are not scaled etc, so use the Basic Agent
types instead to represent your process values.
Basic:
These Agent types form the basic building blocks of a system and are used for gathering, handling
and processing data to and from the physical external world.
Analog, Counter, Date, Digital, Expression, String, StringList, Timer.
Advanced:
These Agent types provide powerful SCADA and integration functionality that allow the Basic
Agents to be alarmed and logged to databases and provides various means of reporting and/or
controlling their values.
AgentGroup, Alarm, AlarmList, Command, DBLog, DBQuery, EventLog, EventOutput,
MultiMedia, Notify, Script, Shift, Statistical Agent.
MIS/MES:
These are very specific and usually quite complex Agent types used to do monitor, control and
solve higher level shop-floor and general industrial challenges.
Accumulator.
IT/IoT:
These Agent types facilitate the integration and management of SCADA and IT.
IoT, Perfmon.
System:
These Agent types are used internally to perform certain SCADA and other specific functions.
Note: Instances of these Agents are created automatically and cannot be added manually by the
user.
Alias, Beeper, DataLog, Device, Hasp, Proxy, Scan, SystemInformation.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 15
4.1.3. Slots
All and any data within an Agent is accessible to other Agents in the Agent Server. This data is accessed
in properties of the Agent called Slots. Each slot has a unique name so that when referring to a particular
slot within an Agent, the notation AgentName.slotName is used. This is essentially what many other
SCADA products refer to as Tags.
A slot is that part of the internal structure of an Agent that contains data. It may vary from a bit to a
variable length text.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 16
4.1.4. Data Elements
The Ignite Server is a "data portal" which integrates data from a number of disparate sources. Each
source of data requires a datasource plugin before it can be associated with the Ignite Server. This
provides the ability to expose its data as Data Elements to the Server and, if necessary, provides special
functions or methods to further interact with its data.
Adroit.Analog.ADT_JU_MX_MIX_TNK_LVL.value
where:
Property Description
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 17
4.1.6. Status Bits
This status slots are contained in a 32-bit word containing configuration and run-time status information
about the Agent. Each bit of this 32-bit word is also exposed as a slot, allowing up to 32 status flags to
be accessed at any time. The overall status of an Agent can be determined from its status slot, which is
a header or generic slot and so is common to all Agent types.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 18
4.2. Primitive Agent Types
Primitive Agents are used for gathering, handling and processing data to and from the physical external
world, however they offer limited value add and are limited in functionality when compared to even the
Basic Agents.
• The Boolean and Text Agent types make up this group. They are essentially single value
containers and can’t be alarmed, data can be scanned in from or out to external devices.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 19
4.3. Basic Agent Types
Basic Agents are used for gathering, handling and processing data to and from the physical external
world. Together these form the basic building blocks of a system. For instance:
• the Analog and Digital Agent types perform some conditioning or conversion process on
data normally scanned in from or out to external devices.
• The Counter Agent type performs the counting and averaging of discrete values.
• The String, StringList Agent type provides a means of indexing text.
• The Expression and Timer Agent types order and transform information for calculation
and control purposes.
• The Date Agent type holds time and date information broken down into the year, month,
day, hour, minute, second and millisecond constituents.
The most useful Basic Agents are described below and are listed in Alphabetical order.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 20
4.4.1. Analog Agent
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 21
4.4.3. Digital Agent
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 22
Each expression Agent can contain up to 20 input variables, each of which can be sourced from any
other Agent attribute or directly from a front-end device. For complex calculations, expression Agents
can be interconnected with the result of one expression becoming an input to the next.
Alternatively, the trigger can be connected to some other input, possibly common to a number of other
expressions, which may be used to constrain the group of expressions to evaluate, for example, only
when data is valid.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 24
4.5. Advanced Agent Types
These provide the powerful SCADA and integration functionality which allows the basic Agents described
above to be flexibly grouped, scripted and routed to external databases, as well as presenting related
information to the user in event logs, etc. The most important advanced Agents are described below.
• The AgentGroup, Alarm, AlarmList, Command, DBLog, DBQuery, EventLog, EventOutput,
MultiMedia, Notify, Script, Shift, Statistical Agent types make up this group
4.5.1. AgentGroup
Agents that are considered to have something in common can be grouped together by means of
AgentGroup Agents. For instance, all Agents of type Analog can be grouped in an Agent group called
ANALOGS, and all Agents belonging to the North Plant of a process plant would be grouped in the
NORTH_PLANT Agent group. AgentGroups can, and usually do, have overlapping memberships.
By collecting Agents together in Agent groups, any changes made to certain AgentGroup status bits will
affect the status bits of all Agents in that group. As an example, consider the situation when part of a
plant (say the North Plant) is shut down for routine maintenance, and it is required to disable scanning
of all Agents belonging to this plant section. By setting the Scan Inhibit bit for the NORTH_PLANT
AgentGroup Agent, the Scan Inhibit bits would be set for all the Agents that belong to the North Plant.
Each alarm type can report the status of any number of applicable slots. Taking an Analog Agent as an
example, the type High can be configured to report the values contained in the value, high alarm limit
and units’ slots to the alarm list. The entry in the alarm list will then show the occurrence of the alarm
event together with the actual value of the Agent, the engineering units and the associated high alarm
limits.
You can configure alarm types directly from the Alarming dialog and specify the Priority of each incident
(Current alarm type), in addition to assigning an Agent-specific priority. So, in the case of an Analog
Agent the HighHigh incident can have a higher priority than the High incident, etc. Typically, you
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 25
prioritize your incidents to ensure that your operators ONLY receive IMPORTANT alarms since some
alarms are critical, whereas others are more informational in nature.
You can also configure a Delay (secs) for each incident (Current alarm type). Typically, this is added
to delay an active incident from entering the alarm system to prevent intermittent alarms from flooding
your alarm system or to ensure that this alarm is raised when the operator needs to respond to it.
Do Conditional expression to ensure that each incident is unique and does not duplicate existing
active incidents. In this way you can implement first-up alarming, which disregards the incidents that
echo existing problems, so that your operators can focus on the real issues at hand.
It is also possible to do Alarm shelving, commonly used in areas where maintenance is being carried out
and the user does not want false data making its way into the Alarm Management Reports.
If necessary, you can temporarily suspend the alarming of an incident for a predefined period of time,
using the Inhibited until option.
This option should be used when an alarm indicator may be malfunctioning or may need to be repaired
or replaced or in situations when you need to disable ALL the alarms of a particular item of equipment
and you cannot disable the alarming of an Alarm Agent.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 26
4.5.4. Command Agent
Command Agents can both send and
receive SMS messages via a SMS GSM
modem. SMS messages can be sent to a
single recipient either manually or
automatically, e.g., to remotely monitor
the status of important process values.
Sent SMS messages can also be
monitored for auditing purposes and if
they are not received and/or responded
to within a specified period, can also be
sent via another Command Agent to
another recipient.
Command Agents bypass the scanning subsystem by using a device of this new GSM_SMS driver directly.
This means that instead of being restricted to only 79 characters, the full 160-character SMS message
length can be utilized, both when sending and receiving SMS messages.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 27
4.5.6. DBLog Agent
This Agent is a bulk OLE DB logging Agent for typically logging Analog and/or Digital values to a specific
table in a database for later retrieval. In other words,
instead of logging each Analog and/or Digital value
separately, you can simply specify a list of Tags to log
and either export/import this list from a file or browse in
this list individually in the required DBLog Agent.
This Agent also provides:
• A Logging method list box to select the
required methods for specifying when and how
the listed Tags are logged.
• A String logging checkbox (the BOOLEAN
strLog slot), which when enabled logs the Tag
values as Strings and not numeric values; this
also allows you to log other string slots (this
will log the first 79 characters).
• A Housekeeping section to specify how long,
in days, that you want to store your logged
Tags. This depends upon the storage capacity
you have available for your database and how
useful this data becomes to you the older it
gets.
• A method of dealing with a problematic
connection to the specified database (if the
connection is lost) or when this Agent is
logging a large number of Tags frequently so Figure 24 DBLog Agent
that it becomes overworked.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 28
4.5.8. EventOutput Agent
The EventOutput Agent directs event log messages to output devices (printers, serial ports and parallel
ports), and to SQL compliant databases.
To cater for the various output devices, EventOutput Agents accept a variety of user configurable general
fields that are used for the layout and format of the data, and the device specific information.
Output of data to the device will depend on the triggering criteria selected: on demand, line at a time
as the event occurs, only after x lines, based on time criteria or as a combination of the above.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 29
4.5.10. Notify Agent
The Notify Agent allows alarms to be routed directly to a designated person, using:
• A pager service;
• A mobile phone using the Short Message Service (SMS); and
• An email address.
The alarm message to be transmitted can be configured to include up to 15 fields (Action, Agent, Alarm
Type, Category, Computer, Date, Description,
Event ID, Extra Data, Filter Group, Priority,
Reported Data, Source, Sub-Source and Time),
and custom messages can be sent on demand by
the operator.
The Body and/or Subject line of these automatically sent email messages can contain text macros that
are parsed to before the message is sent.
In addition to automatically sending alarms as email messages, the Notify Agent can also be configured
to allow your operators to manually send email messages via an appropriately configured mimic or
graphic form.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 30
4.5.12. Shift Agent
Various Agents in Adroit Ignite HMI require knowledge of the current shift number. Instead of
configuring the shift pattern information
into each instance of these Agents, you
can instead configure these shift patterns
globally, in a Shift Agent, for use by any
interested Agents.
The Shift Agent continually monitors the current time and checks it against the configured shift pattern
to determine the current shift number. If NO matching shift pattern is found, the shift value is set to 0.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 31
4.6. MIS/MES Agent Types
These Agents are the building blocks around getting more from your Adroit Ignite HMI system. They are
very specific and usually quite complex Agents used to do monitor, control and solve higher level shop-
floor and general industrial challenges.
4.6.1. Accumulator Agent
An Accumulator Agent gets its name from the type of
process value that it operates upon and NOT from what
it actually does. Since an Accumulator Agent requires as
an input a value that accumulates over time in other
words which simply gets bigger and bigger, which the
Accumulator Agent uses to calculate the difference in
value (or delta) between successive events or over a
specific time period (interval).
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 32
4.7. IT/IoT Agent Types
These Agents are the building blocks around integration and management of SCADA and IT and are
summarised here and the available Agents are described in more detail below.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 33
4.8. System Agent Types
System Agents are used internally by Adroit Ignite HMI to perform certain SCADA and other specific
functions. Instances of these Agents are created automatically and cannot be added manually by the
user.
• The Alias, Beeper, DataLog, Device, Hasp, Proxy, Scan and SystemInformation Agent types
make up this group.
Logging can take place either to native Adroit Ignite HMI binary
files or to any ADO datasource (SQL Server, Oracle, MS Access,
etc.).
When logged, the values are time stamped and are made
available via a DataLog Agent, to any client such as historical
trends, reports, external spread sheets, etc.
Select the Advanced… button to configure ALL the global settings that affect the operation of the data
logging subsystem.
Historical values are stored in a central file, with each DataLog Agent "owning" a defined portion of the
file. The total amount of disk space required for data logging depends on the total number of values
logged, as well as the rate at which and period for which each value is logged.
The following formula can be used to calculate disk file sizes:
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 34
Description Formula
Index file size (bytes) = 8 + (56 * number of logged values)
Raw buffer size (bytes) = 20 * (Period/Rate) rounded up to next multiple of 8
Raw file size (bytes) = Raw buffer sizes
Total disk space = Index file size + Raw file size
By default historical logging is an event-based function; in other words values are only logged when they
change and only then if the amount of change exceeds the value deadband parameter.
When the value of a logged point does not exceed the previously logged value by more than the value
deadband, the value is not logged.
Similarly, values that change more frequently than the user-defined time deadband will have a value
logged that depends on the logging method selected: actual value, average value, minimum value or
maximum value, as follows:
Value Description
actual The value logged is the value at the end of the time slice.
A time-weighted average is maintained of all the changes that occur and logged at the end
average
of the time slice.
minimum Only the lowest or minimum value is logged at the end of the time slice.
maximum The highest or maximum value is logged.
The formula presented above calculates a raw log file size based on the value changing exactly at the
logging rate (i.e., worst case scenario).
It is possible to override the default on-change-only logging behaviour and cause values to be logged
periodically or according to some other application-relevant trigger criteria.
Historically logged values can be retrieved for viewing within Adroit Ignite HMI or exported for further
processing as a .CSV file. This file format is recognized by many commercial spread sheet and database
packages.
Adroit Ignite HMI also provides a means of merging values from a .CSV file into an existing historical
database of Data Log Agents. The .CSV file may have been originally created by the Extract utility or
exported directly.
Out of limit monitoring enables Datalog Agents to immediately log out of limit values (values that are
not within their specified operating range), by ignoring the normal time deadband value and using a
faster log rate specified by the out of limit time deadband instead.
Each Datalog Agent can create their own backup (.LGB) files, when their associated .LGD files wrap.
Once created, the datalogging subsystem automatically retrieves the data from these .LGB files, if
required by trends (charts) or other requests for historical data.
This feature can also extend the potential amount of logged data without creating larger log files, since
larger log files have the side effect of causing the Agent Server to take longer to start up.
IMPORTANT: When backing up datalogs we recommend the creation and use of .LGB files.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 35
4.8.3. Device Agent
Device Agents, in conjunction with protocol drivers, coordinate scanning in Adroit Ignite HMI and are
responsible for creating, deleting and otherwise configuring Scan Agents which handle the actual
scanning to and from front-end devices.
Due to Adroit Ignite HMI‘s inherent flexibility, it is possible to scan in and out of any slot of any Agent.
For example, a Data Log Agent can be started by scanning its start slot from an external device, thereby
effectively achieving event-triggered logging; a new value can be uploaded to the high alarm limit of an
Analog Agent, etc. Each slot to be scanned is associated with an address in an external device, a scan
period in milliseconds, and a deadband. A value is only updated into the relevant slot when it changes
by more than the deadband setting.
In addition, scanning is the means by which any two Agent slots are "linked" or "connected" together.
The implication of this is that Agents can source their data from any other Agent as well as from a front-
end device. This feature is particularly valuable when used in conjunction with Expression Agents (the
Expression Agent is explained later).
The Beeper Agent drives the built-in PC speaker and is typically used to annunciate alarms.
A single Hasp Agent instance called LICENCE holds details about how many scan points and users are
currently licenced.
Proxy Agents are created automatically when an application requests information about an Agent that
exists in a remote Agent Server. The proxy Agent assumes the role of the remote Agent in the local
environment and is continuously updated with any changes that occur in the remote Agent. The function
of updating the proxy is transparent to applications such as Operators as well as any 3 rd party
applications interacting locally or remotely with the server containing the proxy.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 36
Scan Agents are created dynamically by the system as a function of the user-specified scan
configuration and capabilities of the protocol driver mapped by the device creating the scan Agent.
There is also a single SystemInformation instance called systemInfo that contains a variety of system
wide configuration, run-time, and diagnostic information.
This Agent contains some very valuable information that can be used to present a more detailed view
of what is going on within a Server. Again, as has been explained the information available are all
contained with slots and available to be presented on a graphic form or used within a system.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 37
5. Ignite Server
The Ignite Server is the data portal which exposes data from a number of disparate datasources, both
external and internal to it. The data sources included as standard are one Agent Server data source,
multiple databases, web services multiple Windows event sources.
This Server brings all the data from the different sources into one portal where the user can monitor,
control and manipulate and present the data.
In the Ignite Server you can add different datasources, configure profiles, security and create, edit and
delete graphic projects.
5.1. Datasources
Due to the client-server model that is used, it is possible for one or more Designers to be connected to
the same Server and to add, remove and/or modify its existing datasources provided they have the
necessary security rights.
For this reason it is possible to update specific datasources to view the changes that have been made to
it and to lock a datasource to be able to exclusively modify it.
When installing Adroit Ignite HMI and Agent Server a local Eventlog datasource is created that is
connected to the local Agent Server only. More datasources can be added, but additional licensing is
required.
The Ignite Server also offers a free OLE DB datasource that can be used to connect to OLE DB enabled
databases. There is no limit on the amount of OLE DB datasources that can be added.
More datasources available:
• Simulation: this datasource does not actually connect to outside data. However, it does
provide a wide variety of different types of data. Each simulation datasource contains a
number of simulation categories, whose data is either unchanging (static) or mathematically
generated and therefore constantly varying. This simulated data is essentially a dependable
source of data, which can be used when testing the animation of your graphic forms within
the design phase.
• Web Service: this datasource connects to an XML Web service so that the functions
contained within its Web object(s) can be used. A Web service is simply the provider of one
or more Web objects which contain functions that can be accessed over the Internet and used
remotely. Web services are able to seamlessly communicate between systems irrespective of
their specific programming languages, hardware, and/or operating systems. For this reason
XML Web services are being touted as the next revolutionary advancement of the Internet
and may well become the fundamental structure that links together all computing devices.
• Adroit Air: Handles the configuration and management of the Mobile Air connections,
configurations and licensing. This is a separate product that can be licensed to work with your
Adroit Ignite HMI and handles Alarm, Messaging at Text Messages to a mobile phone.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 38
5.2. Management
This directory is where all the user settings and security configuration is done.
• Profile: Profiles allow the work environment of the Designer and Operator to be customized
on a per user basis. In addition to merely customizing the display of these applications, profile
settings can be used to limit the access users have within these applications too.
• Security: This manages security for the Server. By using the existing Windows security, this
settings can be used to specify who should or shouldn't have access to it, it’s added
datasources and their Data Elements and/or special functions.
• System: This setting provides a view into the Server and exposes information and functions
pertaining to the Server itself and the Clients (Operators and/or Designers) that are connected
to it. This information and the functions are mainly required for troubleshooting purposes.
5.3. Projects
Projects manage the creation, opening and storage of graphic forms and wizards, which can be organized
through the creation of folders and sub-folders.
A project exists in two main states:
• The design state, which is used to add, import and configure or design the graphic forms
within the Designer.
• The operational or run-time state, which is used to view and interact with these graphic
forms, typically within the Operator although it is also possible to do this within the Designer.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 39
6. Designer
The Designer is the interface you will use to interact with and configure projects within the Ignite Server.
The top part of the window is the quick access design menu. This menu is based on the very popular
ribbon menu you see in Microsoft products.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 40
6.1. The Home Menu:
Connection Description
Connect This will connect the Designer from the Ignite Server.
Disconnect This will disconnect the Designer from the Ignite Server.
Refresh This refreshes the server view in the Enterprise Manager.
Save Server Data All data in the Server will be saved.
Clipboard Description
Paste When in design mode on the graphic form you can paste copied objects.
Copy Copy any object on your graphic form.
Cut Cut objects on your graphic form that you would like to paste
Project Description
New Folder This creates a new folder in your project.
New Graphic Form This button creates a graphic form in the selected project or folder.
New Graphic Form (Styled) This button creates a graphic form in the selected project or folder.
New Project Creates a new project from this button.
New Wizard In order to create a wizard object, it needs to be created on a wizard page.
Delete Deletes the selected graphic form, wizard, folder or project.
Find To find where a Tag has been referenced and used throughout a project.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 41
6.1.1. The Agent Configurator
The Agent Configurator is the engineering interface to Agent Server and has functions to find, add, edit,
remove and otherwise configure Agents belonging to an Agent Server running either locally or on a
remote machine somewhere on the network. Suitably authorized users therefore have access to all
Agents in an Agent Server on the network, meaning that separate engineering stations are not required.
The Agent Configurator top-level dialog is shown below. It is from this dialog that users are led in a
structured way to select the next aspect of configuration (scanning, logging, alarming, etc.).
Figure 43 Configurator
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 42
6.2. The View Menu:
Spider Configuration
Description
Mode Section
Beginner
Intermediate
Advanced
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 44
6.3. The SCADA Menu:
Vectors
Button Add Button
Check Box Add Check Box
DropDown Add DropDown
Ellipse Add Ellipse
Line Add Line
Picture Add Picture
Pipe Add Pipe
Polyline Add Polyline
Rectangle Add Rectangle
Scale Add Scale
Slider Add Slider
Spline Add Spline
Text Add Text
Adroit
AlarmViewer Add AlarmViewer
EventViewer Add EventViewer
HistoricalAlarmViewer Add HistoricalAlarmViewer
Data
BarChart Add BarChart
ColumnChart Add ColumnChart
LineChart Add LineChart
PieChart Add PieChart
VIZNETDataBinder Add VIZNETDataBinder
XYPlotChart Add XYPlotChart
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 45
6.4. The Configuration Menu:
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 46
6.5. The Diagnostics & Tools Menu:
Monitoring
This utility allows users to monitor the operation of their installed protocol
Driver Monitor
drivers and provides many diagnostic capabilities.
This utility is designed to assist experienced users in fine-tuning the
Scanning Monitor scanning subsystem to achieve optimal performance, by providing an
intuitive report-like view of advanced diagnostic information
This utility allows you to display all the items within an OPC Server and if
OPC Browser necessary, you can browse for and select the required address of particular
OPC items.
This utility is typically provided for advanced users for diagnosing or
Agent Server Monitor
troubleshooting the Agent Server.
Diagnostics
This utility inspects the structure of your existing Agent database (.WGP)
WGP Inspector
files.
License Utility
Adroit is licensed via the Agent Server and this licensing typically occurs via
License Utility a HASP software protection key, which is programmed in accordance with
the required license.
Other
This utility allows you to run commands and utilities run today, tomorrow,
Scheduler
or on a particular day of the week or month at a specific time.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 47
6.6. The Project Menu:
Adroit Classic
Import Mimic This will import any Classic UI mimic onto the graphic form.
Import Trend This will import any Classic UI trend onto the graphic form.
XAML Graphics
Import XAML This allows you to import any graphics that is in XAML format.
Project Style
When creating a project, you can choose to associate either a predefined or
custom style to the project, which creates a hidden graphic form, called
Style
!Style, which configures the following common graphic form display
properties to save you design time and ensure a consistent look and feel.
This allows you to set the physical dimensions, specified in pixels: either
Size select a Predefined width and height, which specify common monitor
resolutions or specify your own Custom dimensions.
Width This allows you to set the width.
Height This allows you to set the height.
Size This allows you to set the size.
The BackColor of the graphic form.
BackColor Note: Depending on the controls that you add to this graphic form, they
may inherit the specified BackColor.
The default Font of the graphic form and any controls that you add to this
Font
graphic form.
ForeColor The ForeColor of the graphic form.
Font Size The Font Size of the graphic form.
After editing this project style graphic form, click the Save Project Style
Save Project Style item to save these project style changes.
Note: You can only edit the style of a single project at a time.
Open Project Style opens the project style graphic form (!Style), so that
you can add form components to this project style graphic form, such as a
Open Project Style banner (header) or footer or logo or any other element or graphic that all
your styled graphic forms have in common and/or configure their default
properties.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 48
6.7. The Design Menu:
Vectors
Create Vector Group This creates a group of objects into one group.
Break Vector Group Press this button to break the one group into separate objects.
Reset Centre This will reset the centre of the object.
Rotate This rotates the object.
Rotate This rotates the object by the selected degrees.
Workspace
Alignment Use this to align selected items.
Size Use this to size all selected items to the same size.
Spacing Use this to space selected items equally.
Layout Select an item to be in front or at the back of another object.
View Tab Order
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 49
6.8. The Behaviors Menu:
Display
Display Value This behavior allows you to display values from Agents in the Agent Server.
This behavior can drive a Data Elements (value) to and/or from the value of
Bind Value
a property of a control or vector.
Visibility This is a simple true/false visibility behaviour to show an object.
Tooltip This behaviour brings up a window with info on it for an action.
Define an index list of images and when manipulating the index, the image
Flip Bitmap
assigned to the index number will display.
Database
Transforms
This behaviour allows to dynamically move the object linearly in a defined X-
Location
Y direction by means of monitored value.
This behaviour dynamically rotates the object by means of a monitored
Rotation
value.
This behaviour dynamically resizes the object linearly by means of a
Size
monitored value.
Colors
This behaviour allows assigning colours to the two states of a digital
Color (Boolean) value; blink a specific colour property or the VISIBILITY property
either continuously or triggered by a value.
Percentage Fill This behaviour dynamically fill the object by means of a monitored value.
Actions
This behaviour typically provides methods that allow end-users to change a
Operator Action
value at runtime.
This behaviour perform commands such as launching an application or
Execute Command opening, closing or printing a graphic form or logging a user on or off and/or
switching users.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 50
6.9. Shapes Wizards & Examples Menus
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 51
6.10. Graphic Form Toolbar
Note: This menu bar is visible once a graphic form has been loaded.
Save Menu
Save Save the current graphic form
Save a duplicate of a graphic form with an alternative name or within
Save As
another folder.
Save as Wizard Convert graphic template/form to wizard format
Publishing will create a run-time version of a graphic for use in the operator
Save and Publish
only.
6.10.2. Substitutions
Substitutions Menu
Substitutions Selection become available during wizard creation
Substitution Selection become available when a deployed wizard is selected, allowing the
Assignment configuration of the assign substitutions
Script Editor
Brings forth the script for the selected graphic form, allowing editing of
Launch Script Editor
the script
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 52
6.10.5. Zoom
Zoom Menu
Zoom In Zoom into your graphic form, vectors only
Zoom Out Zoom out of the graphic from, vectors only
Zoom Home To view all components
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 53
6.11. Enterprise Manager Menus
On the left is a window with 2 tabs. The default one is the Enterprise Manager which is the portal into
the Ignite Server.
The second is the Toolbox which is the tools that are used when doing the design work.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 54
6.11.1. Graphics Library
The Designer has a new updated equipment library that clients
can use to design a project.
This library can be found in Projects → Shapes Wizards and
Examples.
This library consists of Graphic Form examples, ISO symbols
library, Samples (Spider examples), Static Graphics which is the
different equipment that behaviours can be applied on, and
Wizards.
You can right-click and preview each folder to see what is in the
folder. This way you can quickly look through the entire library
for equipment.
If you want to use specific equipment that you see, simply drag
the equipment to the Favourites window on the right of your
screen.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 55
6.11.2. Navigation Templates
The Ignite Server also includes navigation templates that users can choose from to use in their projects.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 56
6.11.3. Wizards
Wizards allow you to reuse the same graphical object and
its assigned behaviours (if any), over and over again with
different values (Data Elements) without having to
recreate this object from scratch every time. In other
words, a wizard is a reusable design-time object, much like
a Windows control. Wizards also have the facility to
update their instances that have been added to graphic
forms to their current configuration, when they are
modified after having been used.
Figure 62 Wizards
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 57
6.11.4. Templates
Templates are reusable graphic
forms that can be used at run-
time. A template should be used
if you would normally require a
large number of identically
configured documents to
represent similar items.
For instance, consider the situation where a plant uses 1000s of motors, each of which require the same
process data to be reported and/or controlling actions to be performed. In this case a single template
mimic could be created instead of creating separate mimics for each motor.
Adroit
In this directory there are Alarm and Event viewers:
• AlarmViewer: This tool has specifically been designed for the datasource to display Agent
Server configured alarms. Operators can view and acknowledge alarms locally and globally.
Security can be applied as to which user can acknowledge alarms.
• EventViewer: The Event viewer can connect to the log computer’s events or to a remote
computer’s events. These events can be filtered.
• Adroit Ignite HMI HistoricalAlarmViewer: The Adroit Ignite HMI HistoricalAlarmViewer
can connect to the AlarmManagement Database to display the list of historical alarms logged
by using the Adroit Ignite HMI Alarm Management Agent. These alarms/events can be
filtered.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 58
Figure 64 Adroit Ignite HMI HistoricalAlarmViewer
Data
The Data directory consists of:
• BarChart: Each charted series is either a series of horizontal bars representing values or a
series of points that are usually connected to form lines.
• ColumnChart: Each charted series is either a series of vertical columns representing values
or a series of points that are usually connected to form lines.
• LineChart: Each charted series is a series of points that are usually connected to form lines.
• PieChart: Each charted series is a series of slices or segments to form a complete pie or
circle. Typically you only use one series per chart.
• VIZNETBindingNavigator: The VIZNETBindingNavigator control provides a toolbar of
commands that allows a user to interact with the data from a table or view of a DataBinder.
• TrendConfigurator: This control allows the adding and configuring of new pens on a trend
chart in the Operator
• VIZNETBindingNavigator: This control is tightly coupled with the VIZNETDataBinder and
provides a toolbar facilitating navigation between records when making use of data binders
• VIZNETDataBinder: This is a view to select which tables and their fields to display and then
automatically generates and adds the necessary controls and components to the graphic form
to view and/or modify the records within each table.
• VIZNETDataGridView: This is just a simple view into the table of the database.
• XYPlotChart: Each charted series is a series of points that are plotted from two sets of
values, one providing the X or horizontal coordinate and the other providing the Y or vertical
coordinate of each point.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 59
Gauges
This is a directory with different new gauges to use. Each gauge has a set of themes that can be changed
from the properties window of the gauge.
• CustomTitleBar: This control goes hand in hand with the new ability to open a pop up
(modal / modeless) graphic form without a border which removes the title bar from the form
thus removing the ability to move and / or close the form via the normal “x” button. This
control can be dropped on such a form to allow moving and to allow closing if needed.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 60
SCADA Controls
In this directory there is a list of SCADA tools users can use to engineer their solution. These tools are
really self-explanatory.
Templates
The Templates directory consists of:
• The TemplateGO control: This control allows an existing graphic form to be displayed within
another graphic form, or even itself, if necessary.
In addition to simply acting like a picture frame, the contained graphic form can expose one or
more properties that can be separately configured, if required. In this way, the graphic form
contained within a TemplateGO control can become a configurable form component.
Apart from allowing you to connect the same graphic form to different data, TemplateGO
controls allow you to perform modular or object orientated design, by creating an extensive
library of graphic forms to simplify the process of creating graphic forms.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 61
It is possible to specify whether the graphic form that is contained within the TemplateGO
control will display any changes that are made to its original after it has been contained or not.
This control can also copy the controls and/or graphic elements and their spiders of the
referenced graphic form to the new graphic form, thereby allowing you to quickly construct
(clone) graphic forms from preconfigured graphic forms.
• The TemplateGOContexNav control: Very similar to the TemplateGONavToolbar in that it
allows navigation between graphic forms. The key difference being that this control reads its
navigation structure from the Context View (that is, if any graphic forms are part of Context)
• The TemplateGONavToolbar control: This is a specialised TemplateGO control that
provides built-in functionality to help you create a graphic form navigational system or toolbar
containing references to one or more graphic forms and can also build navigation from your
project hierarchy.
Vectors
In this directory there is a list of shapes/tools that users can use to engineer their solution.
These tools are really self-explanatory.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 62
Window Forms
This contains the standard .NET Windows Forms controls usually associated with Windows dialogs.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 63
6.13. Contents, Properties and Context View Menus
In the right window are three tabs, one is for the Contents, Properties and the other is Context View.
Each object that is created consists of properties which can be changed and manipulated via behaviours,
spiders or scripting.
6.14.1. Spiders
Spiders and their links (silks) make up a visual programming language, which allows elements to be
transferred and/or manipulated in the Designer. This configuration occurs within what is known as a
spider workspace or engine, typically by means of drag and drop. Spiders are primarily used in Adroit
Ignite HMI to bind (connect) data to properties that are exposed by graphic forms and their form
components.
This configuration occurs within the Spider Configuration window for the actively displayed graphic form,
as follows:
• Automatically occurs when data is purely being connected to properties by dragging the required
Data Element onto the necessary graphic form or its form component directly.
• Manually generally only occurs when this data needs to be manipulated or modified before it is linked
to the required property. However, by using spiders in this way it is possible to provide a rich,
interactive environment for the end-user of a graphic form without necessarily needing to write any
scripting at all. This is provided, in part, by the ability of spiders to be operated or triggered by
means of events or actions either performed by another spider or by a user on a control that is
attached to the graphic form. In this way users are able to perform custom and/or complicated
manipulation of Data Elements, literally at the touch of a button or a click of a checkbox, etc.
• Bulk, in addition to manually configuring spiders and silks, perform bulk configuration by exporting
the current spiders and/or silks configured within a spider workspace to a Microsoft Excel XML file,
performing the additional configuration and re-importing this configuration.
The spider workspace is known as a spider engine as it can either be stopped or running. Any spiders
and silks that have been added to it are only live or able to be triggered and perform their operations
when the spider engine is running.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 64
For graphic forms, this only occurs when viewing graphic forms in the Operator or when opening the
graphic form in running or preview mode in the Designer. The spider workspace provides a visual or
drag and drop interface to create the required spiders, silks and template sets. Each spider workspace
provides a toolbar and a right-click menu that provides tools to assist in the adding, arrangement and
configuration of these items, as illustrated by the following screenshot:
Once triggered, a spider will communicate and/or manipulate data from its inputs to its outputs in order
to perform its function. In addition to be being triggered by means of an event, spiders can be triggered
whenever one of their input values change or by using a spider whose sole function is to trigger other
spiders, in the same spider workspace, in a customisable order.
Data Elements are transferred between spiders by means of silks, which are their interconnecting links.
Silks can be grouped together into what are known as template sets. As only one template set can be
active at any one time, this provides an easy way to vary the data displayed by a graphic form. Any
spiders that are connected to silks that are not associated with the active template set will not be used,
so the functionality provided by each template can vary. By way of example, consider the case where a
graphic form is constructed to represent a pump which displays its status, its flow rate, its pressure and
flow by linking this data to the necessary properties by means of silks.
Now consider the case where a battery of similar pumps is required, each requiring this same information
to be displayed. Instead of redrawing this pump and replicating it on multiple graphic forms and then
attaching the correct data to each of these pumps individually, template sets can be used. In this case
the silks required to supply each individual pump with its required data could be created to this single
pump graphic form and then associated with its own template set. Then when the spider workspace is
running, the active template set can be dynamically changed, as required, to display the correct
information for each pump.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 65
Available Spiders
An extensive list of spiders is provided that are able to perform a wide range of functions and operations.
Although all of these are generally applicable spiders, it is possible to create spiders that are datasource-
specific spiders which perform customised data-specific operations and/or processing.
NOTE: Data spiders are a special “hidden” subset of spiders, which are currently added automatically to the
spider workspace. These are responsible for managing the transfer of data to and from the spider workspace.
This list of spiders is the same list that is displayed when manually adding a spider to a spider workspace
that has been organised into the following categories to make it easier to select the required spider:
NOTE: You will notice that the icons of the spiders have a different background colour for each of the spider
categories to visually identify which category they belong to and give an indication as to their function/purpose.
Advanced
These spiders can be used to perform the following advanced functionality or configuration:
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 66
Animation
The following spiders can be used to animate graphic forms:
Application
The following spiders can be used to launch or interact with other applications:
Databasing
The following spiders perform database-specific tasks:
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 67
Extended Type
The following spiders can be used to configure or expose properties:
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 68
Logic
The following spiders can be used to construct simple or complex logic expressions to perform various
tasks when TRUE by triggering one or more spiders, as an alternative to writing script to perform the
same functionality.
Mathematical
The following spiders can be used to perform mathematical calculations:
Simulation
The following spider can be used to produce simulated data:
Icon Name Description
To create simulated data and configure how this simulated data is
Simulation generated. For instance, this can be used when the Designer is not
connected to any datasource to test the animation of graphic forms.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 69
Spider Workspace
The following spiders can be used to perform spider-specific functionality:
Icon Name Description
Template Set To change the active template set at runtime.
To customize the triggering of existing spiders, by triggering one or
Trigger
more spiders in sequence, whenever this spider is triggered.
Statistical
The following spiders can be used to perform statistical operations:
Icon Name Description
To record the number of On and Off events that occur, for a Boolean
Counter
value, and the individual and total time of these events.
To collect data from an analog (floating-point) value and to calculate
Statistical
statistical information (maximum, minimum, mean, standard
Functions
deviation and total) from this collected data.
XML
The following spider can be used to operate on or produce data in XML format:
Icon Name Description
To expose XML properties defined within an XML document as
outputs so they can be used individually, as required. A common
Extended XML
usage for this spider is to expose the required values from the
otherwise complex XML output, produced by XML Web Services.
6.14.2. Scripting
Adroit Ignite HMI has been specifically designed with the aim of providing simple non-scripting methods
to perform advanced functionality. This aim is primarily achieved through the use of spiders and silks,
a visual programming language which provides a simple yet powerful alternative to scripting. For
instance, by using spiders and silks it is possible to easily create graphic forms with a rich, interactive
Operator without using scripting at all. For details, see the Spiders section.
However, scripting is provided for the more advanced user and can easily be used in tandem with these
other non-scripting methods. This is in accordance with the general philosophy of openness with which
Adroit Ignite HMI has been written.
Since Adroit Ignite HMI has been created using the .NET framework, scripts can only be written in the
following .NET scripting languages: Microsoft Visual Basic.NET or Microsoft C# (CSharp).
The default scripting language can be set by the profile associated with the currently logged in user, if
necessary. For further details on profiles, see the section on User Management.
Before describing scripting any further, it is necessary to understand a bit about the scripting architecture
used within Adroit Ignite HMI and its benefits.
In Adroit Ignite HMI each script is seamlessly encapsulated in a “script object”, for this reason these
terms can be used synonymously. The purpose or need for the script object is simply to provide a self-
contained environment within which the script can be run. Therefore it does not matter whether the
script is run from the Server or a Client (Designer or Operator), it will still carry out its intended purpose.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 70
For instance, one function of the script object is to manage the list of external assemblies (DLLs) that
are referenced by a script so that their properties and methods (functions), etc., can be used within the
script.
Scripting has been tightly woven into the very fabric of Adroit Ignite HMI and as so can perform the
following functions:
• Graphic Form scripting: These scripts can be used to programmatically animate or enliven
graphic forms by creating event handlers for events exposed by the graphic form and its
added components. In this way it is possible to provide interaction between components on
the graphic form, such as drag and drop and mouse handling capabilities, etc. In this case, a
script is associated with each graphic form that is executed on the Client whenever and
wherever the graphic form is operated. This script can typically be accessed using the
Graphic Form Script window that allows one to easily switch between the script and its graphic
form.
• Client scripting: These scripts can be used to customise or enhance the usage of the
Designer or Operator by opening graphic forms, etc. In this case, a Script Engine spider can
be used to contain the required script which is executed on the Client whenever the spider is
triggered. In these scripts input and output variables can be used whose values can be
provided by or linked to other spiders, properties or Data Elements.
• Server scripting: These scripts are typically used to perform manipulation of data upon the
Server itself. In this case, a Server Scripts datasource can be used to store the required script
which is executed on the Server. These scripts can either be executed manually or by using a
special function provided by this datasource or they can be performed remotely, in which case
no client interaction is required at all.
Due to the self-contained nature of each script provided by its script object, there is no need to separate
the Client and Server scripting, which can be combined within a single script if necessary. Furthermore,
running a script from the Server or a Client should not affect its speed of execution, since this speed is
usually dependent on the script itself, the utilization of external references and correct programming
techniques and other system-dependent factors such as CPU load, etc.
For these reasons, there are a number of benefits associated with adding a script object (script) to a
Server Scripts Datasource, such as:
• Each script object that is stored can be used and executed within a Script Engine spider.
• Each script object that is stored is immediately accessible by all the Clients connected to its
Server.
• Each script object becomes a Data Element and can therefore be individually secured, if
necessary. Unlike a script object created within a Script Engine spider for instance which
cannot be secured directly and instead relies upon the security applied to the graphic form
with which this spider is associated. For further details, see the section on Security.
NOTE: It is possible to create scripts that use profile-specific variables, whose values can be stored for later
retrieval within the profiles, so that scripts can be customised per profile.
Scripts are typically written and debugged within the Script Editor; however users can also use Visual
Studio 2005 (and later) if this is already installed on their computer. The default script editing
environment is set by the profile associated with the currently logged in user.
In the case of graphic form scripting, the Graphic Form Script window is displayed by default which
provides the same basic editing environment as is found in the Script Editor and allows one to easily
switch between the script and its graphic form. If necessary, these scripts can be edited within the
Script Editor to take advantage of the other editing functionality that it provides.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 71
Figure 73 Script Editor
The Script Editor provides standard programming functionality such as bookmarks, commenting lines of
text, indenting lines of text, compiling the script, compiling and running the script, etc. Access these
commands from the toolbar, the menus or by right-clicking in the Editor Workspace window. The script
editor can provide IntelliSense, a powerful feature that can dramatically reduce the time required to
produce your scripts, within the Editor Workspace window.
For instance, when coding you do not need to leave the Editor Workspace window in order to perform
searches on language elements, since IntelliSense provides the following features:
• Valid member variables or functions can be selected from drop-down lists for any class, struct,
union or namespace which is defined in any of the references added to your script and within
your script itself. The required member can then be inserted directly into your code.
• Pop-up windows can display the following information for methods and functions – their
namespace, the names and types of their parameters and their return type. The required
parameter list can be selected for overloaded functions.
• Immediate feedback can be provided whenever misplaced brackets or open-ended segments
of code are detected.
Since the required INeed interfaces are dependent upon whether a script interacts with either the Server
or the Client or both of them, all the INeed interfaces are declared within in each script and only once
the script has been complied, are the required INeed interfaces used when the script is run.
For this reason, when a script is initially created default source code (text) is automatically added to it,
which provides standard functions and the declarations of all these INeed interfaces. This default source
code is provided in the default scripting language which is set by the profile associated with the currently
logged in user. Both the scripting language and this source code can be changed to the other scripting
language, if required.
In addition to the functionality provided by these INeed interfaces and the other standard functions, the
script is to provide additional functionality through adding references to external assemblies (.DLL files),
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 72
whose properties, methods, etc., are made available to this script and can be implemented within it.
The script object then manages these references for its script.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 73
The approach is fairly simple and the process users would follow would be:
• Create a Wizard and populate it completely with
Tags configured for all the Scanning, Logging and
Alarming required for such an object.
• Right-Click and create a Template from this
configured Wizard. This Template would also have
the possible graphical options available for users to
use at the time of deployment. In addition where
the user has defined their own Context (such as
Manufacturer, Equipment Type and Description,
Power Rating) this will be carried through to all
instances and be available for allowing Context
based sorting and searches throughout a project to
allow easy management of the configuration.
• Once created then it is possible to create as many
instances as you need for a project.
o This can be done in a hierarchy under the
“instances” tree view
o Another way is to add a physical hierarchy in
the Context view window that appears on the
right hand side of the Designer. Once the
view is created you could simply drag the
created instances into the view, or it is
possible to drag or right-click and add an Figure 75 - Context View
instance within the Context View. If users
have designed the tree correctly all the Agents that will be created when deploying the
instance would be built using a unique Tag naming convention as defined by the user.
Building the graphics would simply require the user to define to graphic forms in his Projects directory
and then to drag the instances onto the forms and link them all together with the required static graphics,
add the navigation and deploy to a site.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 74
7. Operator
The Operator is used to display the configured Graphic Forms of a Project.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 75
8. Mobility
8.1. Adroit Air Client
The standard installation includes a single free Adroit Air client.
Adroit Air is an alarm notification platform that enables user to receive alarms and process data directly
on their smart device.
Alarms are assigned to available users from the “Alarms” tab. Each user can be linked to a single alarm
Agent or alarm list Agent on any available Adroit datasource.
Text messages can be sent to test the system or to deliver some specific information to a user.
Process data messages can be configured. Messages can be sent at a maximum rate of once per minute.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 76
8.2. Performance Anywhere Client
The standard installation includes a single free Performance Anywhere client. It allows users to build and
deploy HTML5 mobile and web-friendly interfaces to the Adroit Ignite HMI.
Install the Performance Anywhere Client on your web server. The Performance Anywhere solution
makes use of HTML5 interface, which makes it unattached to an O/S (unlike the 2 options above which
can only run on a fully-fledged Windows O/S) and is perfect for mobile devices. The Operator can be
launched from within any browser that supports HTML5 and by just specifying the web URL.
The Performance Anywhere client has “widgets” or graphic objects that include;
• Alarm Lists for Adroit Ignite HMI
• Historical Trends
• Bar Charts
• Analogue Displays
• Buttons and Sliders for interacting with Agent Server
A familiar environment makes building reports very easy. Create a page, add a widget and bind the value
to a Data Element using the browser, save and run.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 77
8.3. Secure Mobile Gateway
Secure Remote Access to your Adroit Ignite HMI on any device anywhere
Secure Mobile Gateway is an additional software component and service providing Web Access to existing
Adroit Ignite HMI project, giving you secure remote access on any device anywhere.
Secure Mobile Gateway technology provides web browser access (Edge, Firefox, Chrome, Opera etc.)
from any device.
Secure Mobile Gateway requires no open firewall ports, a secure channel is initiated from the client-side,
preventing any direct exposure to sniffing, DDOS attacks and hacking attempts. The service runs on
industry-standard encryption technology used by thousands of users (RFC 4419/4432/6594 compliant).
Additional IT infrastructure changes or open inbound ports are not required as it uses HTTPS as the
secure connection.
Direct HTML 5 representation of the operator is provided.
Advantages
• Runs on any device with HTML 5.0 compliant web browser, including Apple, Android, Linux,
Windows.
• No initial download requirement.
• All communication is encrypted
• All the functionality of the Operator. Not limited.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 78
9. Security
Since the Ignite Server is a data portal that can aggregate data from numerous sources, it is possible
that data with varying degrees of sensitivity may be made available to the SAME Server. For this reason
it is essential that the data is appropriately secured.
As the architecture of Ignite Server allows the Server to be accessed by both Designers primarily used
by engineers, and Operators primarily used by end-users, it is necessary to ensure that different users
have different levels of access to this data.
NOTE: Adroit Ignite HMI “locks” down everything and that one of the functions of the designer of the system
is to grant the necessary access to the required users. This approach to security follows very much along the
lines of Windows security, as implemented by Microsoft in Windows XP SP2.
Security in Ignite Server is user-centric and operates on top of the traditional Windows operating system
security, using a configurable sub-set of the existing users and groups on each Server computer known
as the "allowed" users and groups.
For instance, when a Client (Designer and Operator) is launched, it is necessary to login to a Server and
only a user that is ether an allowed user or a member of an allowed group on this Server is able to log
into it.
In addition to controlling the access of these “allowed” users and groups to the Server, its configured
datasources and their data, it is possible to control or limit the access that these users have within each
Client (Designer and Operator).
Most importantly, this Security component configures the allowed users and groups which provides the
first or foundational level of ALL user security and management within Ignite Server, not only for Server
security but also Client security too and is therefore mandatory.
Furthermore, this Security component configures the first level of purely Server-specific security in the
form of Policies, which can be used to provide a general (large-scale) level of control to safeguard the
data that is made available to the Server.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 79
The second level of Server-specific security can be broadly termed Datasource-specific security, which
can be used to provide a precise (finely tuned) level of control to safeguard the data that is made
available to the Server. This is therefore configured per datasource and its exposed Data Elements and
special functions.
However, it is possible to give certain users and groups total or global security access to each Server,
which essentially become “master” users and groups that:
• Permanently become allowed users and/or groups that cannot be removed from the lists of the
allowed users and groups maintained by this Server so that these users will never be able to lock
themselves out of the Server; and
• Are always able to login to and have unrestricted access to this Server, its datasources and their
data.
These global security users and groups should be used to administer the security of the Server by adding
the other allowed users and groups and assigning the necessary access rights to each of them. By
default, only the Administrators group and the default login user is assigned global security access to
each Server.
In addition to adding existing users and groups to the allowed users and groups for a Server, it is possible
to create users that impersonate or masquerade as an allowed user.
For instance, when users are not part of the Windows security or where you do not want to expose a
domain username and password when someone logs in to a Server over the Internet. The impersonated
user is then able to login to a client (Designer or Operator) and merely assumes the user security and
management settings of the allowed user that is being impersonated.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 80
9.1.3. Policies
Policies can be used to provide a general (large-scale) level of control to safeguard the data that is made
available to the Server. They can only be implemented after allowed groups and/or users have been
added to this Server.
Policies are essentially a configurable set of rules that
govern the access to a Server and its available datasource
plugins (the types of data that the Server is able to connect
to), as follows:
• Each policy represents a specific service or activity
that can be performed by the Server, such as the
ability to retrieve a list of its available datasources.
• Each policy can then be associated with one or
more allowed users and/or groups with each
policy.
• Any allowed user and/or group not associated with
a policy is unable to perform the service that it
represents.
In other words, whenever a Server receives a request for a
service it first determines whether the currently logged in
user is part of the allowed users or groups that are able to
perform this request, and then denies or grants access
based on this result. By default, the Users group and any
group(s) and/or user(s) that have been assigned global
security access to this Server is automatically associated Figure 81 Security - Policies
with every policy.
Certain policies represent datasource plugin specific services such as the ability to add or remove a new
datasource. In this case, the policy contains a list of the available datasource plugins so that the required
allowed users and/or groups need to be associated with the applicable datasource plugin. Once a
datasource plugin has been secured using a policy, this security will be applied to all of its existing and
future datasources that are configured.
NOTE: In order to secure a specific datasource and/or its data, datasource-specific security is required.
Allowed users and/or groups are added to and removed from policies via the Designer in the Enterprise
Manager by using the Policy list of the Security component that is within the Management category of
each Server.
As its name implies, this essentially involves securing the specific datasources that have been added to
a Server and their configured exposed Data Elements and/or special functions.
However, since datasources are themselves Data Elements, datasource-specific security simply consists
of the following two security methods:
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 81
Since every datasource exposes its data in the form of Data Elements, it is therefore essential that the
access to these Data Elements be sufficiently
controlled to provide the necessary security for
your data.
By default, only the group(s) and/or user(s) that have been assigned global security access to this Server
are automatically assigned full access to all datasources and their Data Elements. Data Elements need
to be secured separately for EACH datasource that is created.
However, Data Element security does not need to be applied manually as it is also possible to
automatically:
• apply the security configuration applied to a datasource to all of its Data Elements (both
existing and future); and
• Inherit the security configuration applied to a datasource to simply configuring the security for
a Data Element.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 82
Special Functions Security
In addition to making its data available as
Data Elements, a datasource may only
provide special functions. By securing the
provided special functions it is possible to
secure this specific functionality provided
by the datasource itself, which is especially
evident when the special function is the
only means provided for performing a
specific action.
Special function security is applied via the Designer in the Enterprise Manager by right-clicking the
required special function and selecting the Security item.
NOTE: This item is only available if the currently logged in user has the necessary security permissions to
configure the security settings of this special function.
By default, only the group(s) and/or user(s) that have been assigned global security access to this Server
are automatically assigned full access to all special functions. Special functions need to be secured
separately for EACH datasource that is created.
Profiles can also specify whether you want to automatically logoff its assigned users from the Client
(Operator or Designer) after a specific period of inactivity. This is an added security feature that is often
required by particular industries. For instance, this is required to comply with CFR (The Code of Federal
Regulations), the codification of the general and permanent rules published in the Federal Register by
the executive departments and agencies of the Federal Government 21 (Food and Drugs) requirements.
It is also possible when designing graphic forms, to specify which users have access to which properties
exposed by the controls that have been added to the graphic form. In other words, it is possible to
provide alternate sets of properties, from the default or standard properties displayed for controls, for
one or more of the allowed users and/or groups.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 84
10. Application Protocol Interface (API)
10.1. Gateway to Performance
Adroit Ignite HMI is an Open Automation Technology product and there are many ways you can extend
your Ignite application or solution.
OLE DB connectivity means that Adroit Ignite HMI can connect to any OLE DB provider, unlike ODBC
that was only created to provide access to relational databases. It is ideally suited to writing data inside
the Agent Server periodically to a database, such as at the end of a batch job, for reporting reasons. As
its transactions can be done on demand, they can be scheduled and/or they can be triggered.
The Script Agent provides a way for the user to produce process reports by using a Visual Basic or Java
script. This script can then be executed on demand, they can be scheduled and/or they can be triggered.
The Script Agent is able to produce reports in the following formats:
• A text file (*.TXT);
• A comma-delimited file (*.CSV);
• An Excel spreadsheet (*.XLS);
• As an e-mail sent to a designated person; and
• A web page (*.HTM) or (*.HTML).
Other types of reports compiled from data within Adroit Ignite HMI can either be exported to 3rd party
packages for formatting and printing, such as the polar coordinate plot using Microsoft Excel, below,
or can be created directly using 3rd party reporting applications such as Adroit Report Suite.
If you have the ability to develop your own reports, then using the DBQuery or DBLog Agent you will be
able to build your own web-based Reporting solution. Alternatively, we encourage you to look at the
Adroit SCADA Intelligence product which offers the latest business intelligence platform for reporting
and analysis.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 85
Figure 84 Report Suite
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 86
10.2.2. Report Pack
Built-in Microsoft Reporting Services the reports offer a basic insight to your system and process as well
as offering you a free web-based view into historical trends. These are managed reports that are included
in the standard installation and categorized as follows: Auditing, Datalogging and General.
Auditing
Provides the tools necessary to view the activities of the Agent Server and Ignite Server with reports
such Adroit Audit Activity and Ignite Server Audit Activity. It is also a report set to measure the duration
of the session of the Agent Server with a report such as the Agent Server Session.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 87
Figure 86 Multiple Line Trend Report
General Reports
General refers to ad hoc reports based around various server or Agent functionality. The DumpConfig
Agent is available with Adroit Ignite HMI that provides functionality to export specific Agent types with
current slot values as configured. A configuration export report is available to use as a configuration
datasheet or snapshot view on Agent status. Event Reports
These are managed by the event output Agent(s) that have configurable event printing options. With
these options events are printed a line at a time as the event occurs, or only after x events have occurred
(where x is any configurable value between 2 to a full page), on a time interval basis or absolute time
basis. Events may be printed on a local serial or parallel printer, or output to some networked device.
Alternatively, events can also be written to any SQL compliant database.
OLE DB connectivity means that Adroit Ignite HMI can connect to any OLE DB provider, unlike ODBC
that was only created to provide access to relational databases. It is ideally suited to writing data inside
the Agent Server periodically to a database, such as at the end of a batch job, for reporting reasons. As
its transactions can be done on demand, they can be scheduled and/or they can be triggered.
The Script Agent provides a way for the user to produce process reports by using a Visual Basic or Java
script. This script can then be executed on demand, they can be scheduled and/or they can be triggered.
The Script Agent is able to produce reports in the following formats:
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 88
• A text file (*.TXT);
• A comma-delimited file (*.CSV);
• An Excel spreadsheet (*.XLS);
• As an e-mail sent to a designated person; and
• A web page (*.HTM) or (*.HTML).
Other types of reports compiled from data within Adroit Ignite HMI can either be exported to 3rd party
packages for formatting and printing, such as the polar coordinate plot using Microsoft Excel, below, or
can be created directly using 3rd party reporting applications such as Adroit Report Suite.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 89
11. Utilities
Utilities has been added to provide a central location from which the installed utilities
can be launched, instead of installing a host of separate shortcuts for each individual
utility.
This shortcut is also installed on the Desktop. This application also describes their
supported command line options and by right clicking the utility you can specify which
command line options you want to use when launching the utility.
Figure 87 Utilities
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 90
11.1. Adtech Licensing Utility
The Adtech Licensing Utility allows a user to get, View and/or update your Adroit Ignite HMI product
license. A user can typically launch the Licensing Utility via the Ignite Utilities Icon on the desktop and
then select the utility from the menu.
Only the Agent Server and/or Ignite Server, require a licence, all other applications such as the Designer,
Operator and etc do not.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 91
11.3. OPC Browser
By launching this utility you can browse and connect to any OPC Server. Very useful to test with and
problem solving.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 93
11.7. Scheduler
Commands and utilities can be scheduled to run today, tomorrow, or on a particular day of the week or
month at a specified time using the Scheduler. Typical examples of its use would be printing a report,
archiving a file, starting a backup procedure, extracting logged data or doing a Putslot operation.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 94
11.8. Script Editor
This Script Editor is usually launched from the Script Agent so that their VB Script files can be edited.
It allows the concurrent editing of the following script file types: Script Agent VB Script files (*.BAS)
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 95
12. Adroit Ignite HMI Documentation
The following related documentation is also available on the Adroit Ignite HMI website. Here
13. Conclusion
By now we trust you have got a small feeling of the power of the Adroit Ignite HMI product and we look
forward to your feedback and sharing of some of your successful projects. More importantly that the
Adroit Ignite HMI and later the Adroit SCADA will form the core of your offering in all your automation
projects going forward.
____________________________________________________________________________________________________________________________
ATQMS-MKTG-DOC-Adroit Ignite HMI Technical Description P a g e | 96