How Elipse E3 works.

In this article, we will discuss how Elipse E3 works. Elipse E3 a SCADA platform for process monitoring and control for different applications, from basic HMI to complex operating systems. This is a solution by Elipse Software, a global software developer.

1) Introduction

Elipse E3 is Elipse Software’s third-generation, Client/Server HMI/SCADA software. Since its launch, in 2001, several applications that allow building automation systems with a new concept of connectivity and flexibility have been developed around the world.

Elipse E3 was completely designed for network operation and distributed applications. This solution offers many features, such as a new and advanced objects’ template, a powerful graphic interface, and a new, exclusive architecture that allows quick application development and maximum connectivity to several devices and other applications. It also incorporates the latest software development technologies, maximizing performance and productivity, optimizing the quality of its applications and their development process, and minimizing costs and losses.

New editing tools and features make application development easier, and thus minimize setup time. Elipse E3’s modular structure, with network-distributed processing, brings along video resources and supports technologies such as XML, ActiveX, and OPC.

Elipse E3 allows communication with hundreds of data control and acquisition devices. With it, you can handle information in many ways. You can develop powerful graphical user interfaces in computers working either on a local network or on the Internet; additionally, you can configure alarm management, database storage, information exchange between other software and components, and report design.

2) Elipse E3’s main components

From the user’s standpoint, Elipse E3 has three main programs. They are:

E3 Server

It’s the application server; this is where you will process communication, manage the system’s mains processes, and  send graphic information and data to clients at any point on the network. You can purchase it in versions with 100, 300, 1,500, 5,000, 10,000, 20,000, or an unlimited number of I/O points, including an E3 Viewer product key. In addition, you can add E3 Studio copies to the Server, as well as any additional Viewer product key, which allows several users to operate the system simultaneously. It enables several servers to run several different projects, all in the same application, thus allowing you to distribute activities between machines according to your needs. It runs on the following operating systems: Microsoft Windows Server 2003 SP2, XP SP2, Vista SP1, Windows Server 2008 SP1, Windows 7, Windows 8, and Windows Server 2012.

E3 Viewer

This is the operation interface with the user (operation console). It allows you to run the application that is in the server in any computer, and it can be executed both in the local network and on the Internet/Intranet via browser. Either way, you won’t have to install the application in the client machine, because all components (screens, libraries, ActiveX controls) are downloaded from the server and registered automatically. E3Viewer presents information in a quick, precise way, and with high-quality graphic, thus making the project easier to operate. E3 Viewer Control allows all types of operation and visualization; E3 Viewer Only, on the other hand, allows only visualization and queries. It is available for the following platforms: Microsoft Windows Server 2003 SP2, XP SP2, Vista SP1, Windows Server 2008 SP1, Windows 7, Windows 8, and Windows Server 2012.

E3 Studio

This single tool for system configuration works as a universal development platform. Its modern, friendly environment, with its own graphic editor for creating both operational screens and scripts, is where you configure communication. With it, different users can edit the same system at the same time, and several Studios can connect to the same remote server, with multiple settings. It runs on Microsoft Windows Server 2003 SP2, XP SP2, Vista SP1, Windows Server 2008 SP1, Windows 7, Windows 8, and Windows Server 2012.


Figure 1: Elipse E3’s architecture


3) The concept of Domain

Current and future automation needs often make us use several computers running SCADA (Supervisory Control and Data Acquisition) systems simultaneously so that they can perform different tasks; they take into account factors like safety, physical and geographical conditions, performance, etc. In order to manage these applications, we need to make them “talk” to each other; that is, we need them to exchange data and extract useful information from this process. For a long time, traditional SCADA systems have relied on a common structure to accomplish this task:
  • Each SCADA Server had to have a (full or partial) copy of the application set up at the local database; and
  • Each SCADA Server had to run only one database at a time.

This led us to a few management problems, like applying changes to all servers, controlling application versions, or even having to work with different software vendors. Then, Elipse E3 has solved all these problems by adopting the concept of Domains. A Domain includes, in a single environment, the definition of computers executing real-time tasks (servers), and project databases that must be executed at these servers, with the possibility of executing several projects in each one. You can also add, delete, or edit projects during execution, without affecting the other running parts of the Domain.

Each project can contain many types of objects, such as graphics (Screens), I/O Drivers, Alarms, Reports, Formulas, Databases, etc. When multiple projects are inside a Domain, they can access each other’s properties and objects as if they were in a single database. This is possible because any object can establish links with another. If both objects exist and are running, it means the link is active; so any change in value is sent asynchronously between parts, depending on link type. If one of the objects malfunctions or stops, the link will break; then the application is notified about it and can indicate this status in a user-defined way.

Domain structure is restricted to server counterparts, such as server computers, projects, users, and passwords. The client interface for operation and viewing (E3 Viewer) can connect directly to any E3 Server with enough Viewer copies. E3 Viewer has three special features:

  1. The application projects dwell only in the server.
  2. Any executable program (Viewer.exe, for any Windows OS), like Internet Explorer*, can be used as a client operator interface, with no difference between them. You can also use Windows Terminal Services to access the client interface, regardless of the operating system.
  3. The client interface can switch from a failed or crashed server to the next available one, without having to stop the process’ monitoring.

* You must be extra careful with the security policies regarding data exchange via Internet to avoid potential risks of system’s exposure. Some resources must be set up in the application to avoid such risks (like writing and reading permissions), but they depend on the rules of the company where these systems are installed.

4) The Domain structure

A Domain comprises either a Server operating in isolation, or two Servers in dual standby. Each Viewer actually connects to the Domain, and not only to the Server.


Figure 2: Example of Super Domain

After connection, Server and Client check each other for system objects registered and updated in the Client machine. If there are none, the Server starts to upload object definitions, like user-defined libraries and ActiveX controls.

The client, on the other hand, starts by downloading the first screen (graphical interface), including the objects in it, and saving them in a cache directory. This process can take some seconds, depending on the application; but it pays off the next time this screen opens, since the Viewer will perform disk and memory cache. If you don’t close the Viewer, the next time you open this screen (and the screen had not yet been reconfigured) it will have already been created in memory, which will reduce pagination time. If the screen has changed, the Viewer will download it again, thus restarting the process.

After the screen has opened, Server and Client exchange only real-time values and database queries in a TCP/IP message scheme, in a high-performance manner when compared to Terminal Services, depending on the system. This is possible because while E3 Viewer receives and sends real-time values only, the Terminal Services Client sends keyboard and mouse movements and receives video images.

A Viewer connected to an isolated Domain can handle information dwelling inside the active server only, according to user access. However, if you add the Domain into another with more siblings, it can operate as a bridge to other servers.

That way, one or more Viewers connected to a Domain can access information residing in other Domains, depending also on the user’s rights for each Viewer. When it requests a certain piece of information, such as a Screen or a link to a non-existing object at the local Domain, the active local Server acts as a gateway to local Viewers; it will download screens or perform real-time communication between local viewers and remote servers, and enable a wide area SCADA network across different applications and systems.

5) Elipse E3’s system modules

Elipse E3‘s internal architecture is completely scalable, and each main task is executed by a separate server. The figure below is an overview of Elipse E3’s building blocks.


Figure 3: Elipse E3’s modules diagram

E3 Server is the responsible for creating a runtime process that will actually execute the application. Inside this process, we will find Elipse E3’s specific servers, with services used by other modules.

6) User and symbol libraries

Some of the most powerful features of E3 are user-defined libraries. Libraries are LIB files that can contain one or more objects created by the user.

There are two types of user-generated objects in E3: XControls, which are graphical libraries executed at the Viewer, and XObjects, which are data libraries executed at the server.

XControls are the user’s graphical objects; they have their own properties, methods, and scripts, made from other objects, including ActiveX and other XControls. Once created and registered, you can insert an XControl onto a screen, where you can define its behavior or link its properties to external variables. Any change in this library is automatically reproduced in all instances of the object, creating a circular connection of every instance with the original definition. As seen above, when opening the screen, the client downloads all the object’s definitions, thus creating a screen cache management.

XObjects are the user’s data objects; they also have their own properties, methods, and scripts, along with other internal server related objects (I/O Drivers, Alarms, Historic, etc.). You can add an XObject into a specific container called DataServer, where you will be able to define its behavior or link it to external tags. Much like XControls, any change in the original XObject definition is automatically reproduced in all the object’s instances.

XControls and XObjects can link to one another to improve the performance in complex applications. You can define one or more XControls to access information from one or more XObjects. XControls only load necessary information, leaving the complete, real-time database at the Server. This feature allows an application with several monitoring items to have fewer screens, since XControls can “point” to different XObjects. For repetitive applications, the library scheme shortens the development cycle, as it can include the I/O driver, tags/variables, alarms, etc. Library objects are also called ElipseX objects.


Figure 4: XControls and XObjects

E3 Studio also displays a vector-based symbol library with more than 3,000 graphic symbols. You can use these symbols inside your application, directly onto Screens, or inside XControls.

7) Databases

Elipse E3 does not use any proprietary database to store information; the DB Server module can handle any commercial databases, like MS-SQL Server or Oracle. If your system does not carry any database permission, you can store data in Access (MDB) format. You can store other information, like alarms and events, historical data, and formulas, in database tables.

DB Server uses the database’s Administrator rights to create and manage tables. Therefore, you will not need to perform any database maintenance in a separated tool to keep the system running; Elipse E3 will just erase old data from main tables, or move them to a backup table. After that, you will finally be able to delete data after a pre-defined period of time; alternatively, it can return to the main table for further analysis.

You can set up the format of alarms and events tables at the Alarm Server module; this is also where you can choose from all available fields (including date and time data with 1ms resolution). Historical attributes and formula settings, on the other hand, take place directly in the corresponding objects.

8) Database synchronization

For a dual standby application (or a sub-domain), where databases are located at the servers, databases can commonly create blank spaces of information when one of the servers fails. To avoid this, Elipse E3 implements database synchronization between servers.

The information sent to the current database server will also suffer an attempt to be stored at the backup database; if stored, then this data is checked while being synchronized. However, if this process fails, the information will not update, and other attempts to store it at defined intervals will take place. Even if both servers shut down, each server will transfer the unsynchronized records to the other server’s database when it returns to activity, until they complete all their tasks.

The same process happens when the database disconnects from the DB Server for any reason. Whenever this happens, a temporary storage file is created at the local computer to handle data while the main database connection is not reestablished.

A similar problem happens when we need to synchronize or concentrate databases running in different sub-domains. In this case, the DB Server can just duplicate information (storing data in two databases at the same time); alternatively, it can have a one-way synchronization with a central DB Server.

9) I/O servers

Elipse E3 implements special I/O management features to enable applications of any size to run smoothly, even with hundreds or thousands of devices. I/O drivers comprise three different types of objects:

  • IOTags and IOBlocks: These are variables extracted from I/O devices, such as PLCs, controllers, data acquisition boards, relays, etc. Each IOTag configuration represents specific information, and can assume different datatypes, such as: Booleans, integers, real numbers and texts. Depending on the device and the protocol in use, the IOTag can have more complex formats like data structures or recordsets, as well as important details about information, like quality and timestamp.
  • IOConnections: These are the physical details of communication, like media, speed, and type – UDP or TCP/IP, serial, modem, RAS, etc. Each device should link to an IOConnection; several IODevices can share the same connection (like a RS-485 multidrop network).
  • IOServers: Executable programs that handle communication. You can set up an IOServer to handle a specific number of links, or Elipse E3 to create more IOServers dynamically in order to manage more connections and devices.

 


Figure 5: Typical driver settings

10) OPC Client and Server

For greater connectivity, Elipse E3 can act as both an OPC Client and an OPC Server; this will include data exchange with other SCADA packages.


11) Alarm management

AlarmConfig is where you insert and organize Areas. All information regarding alarm conditions, as well as the types of events that can be generated in each condition, are set up at the Alarm Sources.

During execution, Alarm messages are sent to the AlarmServer, which manages the AlarmHub, controlling the input/output of messages to other servers and clients, as well as user acknowledgement.

The user can both control and view messages with objects, thus enabling message filtering, color control, blinking, and ordering.

12) Advanced reporting

Elipse E3 includes top-level reporting tools that help you create virtually any kind of historical and real-time reports. With E3 Query, you can create and manage SQL queries to extract any type of information from databases, such as filters, ordering, views, etc.; it’s also possible to edit SQL queries manually.

With the graphical report designer, you can set up the report’s appearance: headers, footers, groups, and detail sections. Likewise, you can add special calculations like sums, averages, deviations, etc. Each section can display other objects, such as barcodes, drawings, images, labels, data fields, scripts (VBScript), and trending/charting.

You can either preview report output on screen or send it directly to printer; additionally, you can export it to Acrobat PDF, Microsoft Excel, RTF or HTML formats.

13) Elipse’s expertise and our presence in the world

Elipse Software expertise and knowledge are applicable to several industries, like Chemical, Water/Wastewater, Power (Generation, Transmission and Distribution), Energy (Metering, Protection and Management), Process and Production. We have branches and distributors in several countries, like the U.S.A., Germany, India, Taiwan, and Brazil.

Print Friendly, PDF & Email

Este artigo foi útil? Was this helpful?

Classificação média - Average rating 0 / 5. Count: 0

Leave a Reply

Your email address will not be published.Required fields are marked *