The industrial automation industry and the IT Industry have been evolving in parallel with their own specific focus and developments. The IT industry has seen a lot of advancements in the areas of communication, data processing, application development frameworks, tools, etc. But the automation industry has been pretty slow in making use of these advancements.

Traditional SCADA

SCADA stands for Supervisory Control and Data Acquisition. In very simple terms, SCADA software helps operators to monitor and control a chemical plant or factory. Traditional SCADA applications were mostly based on client-server technologies. The server will have a tag database where all the process variables are stored. The clients will usually be thick client applications that use these data and provide HMI (Human Machine Interface) functionalities like parameter displays, trends, alarm displays, mimic displays, etc.

The clients typically communicate with a server over intranet (Ethernet) using TCP protocol. The client program needs to be installed in each computer.

If SCADA applications could be deployed on web with browser based access, there are two significant advantages:

=> It enables access from anywhere outside the factory network.

=> Separate installation is not required on client machines since access is done through browsers.

Even with such clear advantages, the industry has not been able to use web widely because of a few major limitations. These limitations are fast disappearing now, thus bringing up the possibility of web based solutions for SCADA.

1.Performance and reliability :

Traditional web applications have been slow. There were multiple reasons like bandwidth, processing power, etc. With the recent developments, such reasons are ceasing to exist. Today, it is possible to develop far higher performing and reliable solutions on web than it was possible a few years ago.

2.Limitations because of HTTP request-response pattern :

HTTP follows a request-response paradigm. This means that the client will need to initiate transactions. If the client needs to get some information from the server, it has to send a request first. The advent of Web Sockets has changed the scenario now.

3.Limitations of browser to provide rich user interfaces :

Traditionally it has not been very easy to provide powerful user interfaces on browsers using HTML.  HTML5 and CSS3 have revolutionized the Web UI. A lot more attractive and interactive web pages can be developed now with HTML5. In addition, Javascript has become much more powerful than before, with the arrival of a lot of new frameworks to develop great UIs.

It helps to take a look at the technologies that can be quite handful for a SCADA developer who aims at developing a full-fledged web based SCADA solution.

Technologies enabling WebSCADA

1.HTML5 and CSS3

These two bring a deadly combination in developing highly interactive and attractive user interfaces. HTML5/CSS3 can go a long way, especially in developing highly sophisticated mimic diagrams on the web. CSS3 can help you design attractive styles for your symbol library elements (like pumps, valves, tanks, etc). Combined with the power of Javascript, you can have great animations to show filling of tanks or movement of meter needles. HTML5 also helps local offline storage in required cases.

2.Ajax and XML

Ajax has been around for some time now. It was rather the first of the new technologies that helped web applications look more like desktop applications. This had triggered the use of the term ‘Web 2.0’ (a term that mysteriously disappeared over the last few years).

With Ajax, the client can query the server for a small piece of data and refresh only a section of your web page, without the need to update the whole page. In your SCADA page, you can have sections of trend displays or alarms that need to be updated separately, or a valve whose status gets changed without refreshing the whole page. This can be easily achieved by Ajax.

3.Web Sockets

This is a revolutionary technology that enables a server to initiate a transaction with the client. This removes a major limitation imposed by HTTP. With the old technology, the client would have to make frequent requests to the server to periodically update the parameter values or to find out whether a new alarm has been raised. This resulted in wastage of bandwidth and poor performance.

Web Sockets allow a server to push data to its clients. With this, alarm notifications can be implemented in such a way that the server pushes new alarms to all the browser clients who need it. This works the same way as push notifications in mobile phones.

Microsoft provides its own implementation of Web Sockets through its library named SignalR (http://www.asp.net/signalr). For more details about SignalR, click here.

4.JavaScript libraries

There are a lot of powerful Javascript libraries available now that help a Web SCADA developer. These include jQuery, AngularJS and Dojo. With such libraries, one can develop attractive UIs and navigations, rich with special effects, informative chart displays and comprehensive dashboards.

5.NoSQL, Analytics and Reporting

Analytics is one area of recent advances that SCADA can make use of. In addition to the structured data of parameter values or so, there could be a lot of unstructured data available, like device logs, etc. The system can be architected to use new NoSQL databases like MongoDB to store such data. And the large datasets from various points in a plant or factory give an opportunity to apply various statistical analysis techniques to find correlations between different variables and conditions and also make reasonable predictions. Languages like Python, R, etc can be used for such analysis. In addition, there are numerous advanced reporting tools like Tableau, Pentaho, etc, that can provide meaningful visualizations for such analysis results.

Concluding Remarks

The world is moving fast towards complete web based solutions, progressively making desktop applications extinct. The SCADA industry will also get on the bandwagon soon, even though at first it could be a combination. At first HMI features like monitoring, data displays, mimic screens, alarm displays, etc, will move to web. Features like mimic designer and project creations may continue to be mainly supported as desktop applications and not on a web browser for some more time. But it is not far away when the complete SCADA functions may be provided on the web as HTML page, rather than as desktop applications or as web-launched modules.