Now it’s time to create your SCADA software, in Part 2 we continued following our tank temperature from being a physical variable until it reached our computer in the form of a scaled engineering value in the OPC server (OPC Item), so let’s take it from there.
“Journey to the Center of the Plant – from FIELD to SCADA and Back – Part I”
“Journey to the Center of the Plant – from FIELD to SCADA and Back – Part II – Network and OPC”
SCADA Systems Information Flow from Field Instruments to Control Room – Part III
SCADA stands for Supervisory Control And Data Acquisition, it’s where the operator gets to see his process from a top view, give commands, monitor and respond to alarms, generate reports and much more.
SCADA Client/Server Configuration
Before we proceed, you need to understand the two main parts of any SCADA software, the Server and the Client.
Software responsible for core SCADA functions, such as data communication with the control hardware (either directly or via OPC server), graphics creation, alarm generation, security, data storage, reports generation … etc.
Software responsible for displaying the information gathered (and generated) by the SCADA server, on the graphics screens created also by the SCADA server, relaying operator commands to the SCADA server, trends & reports display … etc.
So I have to buy two Separate licenses from the SCADA vendor, one for the server and one for the Client?
No, you don’t have to do that, every SCADA server software comes with integrated client functionality, so after you finish all your programming and configuration, just switch to RUN mode and step aside for the operator to operate his plant.
You will only need to buy additional client license if it is required to have two or more operating stations (like in our example, review Part I), in this case, you got to buy one Server license, and one client license. Another case people also do that, is when they want to isolate their server, from the hands of the operators who might get an urge to play around.
How many Servers or Clients I can have?
For servers, most SCADA vendors provide a facility to have two redundant servers, only few provide capability of triple redundancy.
For Clients, you can have as many as you want, you can have them locally (connected via LAN like in our example), you can have them in remote locations, connected via WAN or any other technology, you can even have them over the internet as Web-Clients.
Creating your First SCADA Program
Back to our example, you install XYZ SCADA server on the same PC that has the OPC server installed and run it. You are so excited that finally all your work will pay off and you will see the tank temperature on your screen.
The software starts and you do the only thing that you know, you go to the menu up the screen and click on FILE, you click on NEW PROJECT, and then…… WHAT’S ALL THAT STUFF?
I know, it doesn’t look as lovely as you wished, a large tree view or a menu driven software, and you ask yourself what you’re going to do with all that. Looks scary, right?
Don’t worry; I am going to tell you exactly what to look for in all that mess.
Step 1 – Define Your Connections
Same as we did with OPC server when we configured the communication channel, SCADA server needs to know two things to be able to connect to any device (or OPC server) for data read/write purposes:
- What Protocol to use? MODBUS Serial, DNP3, OPC Client …etc.?
- What connection/port to use? Serial or Ethernet and which port?
In our case we chose OPC client, and it is a software connection.
Step 2 – Define Your Data Source
What is the slave/server address? Node address for serial, IP address for Ethernet, OPC server Name and host IP address in case of OPC.
In our case the OPC server name is ABC OPC, and the host IP is (Local Host), meaning it exists in the same computer as the SCADA software.
Step 3 – Define your Tags
Tags are the place holder of information in SCADA servers; they are similar to OPC items, except that you can have internal tags (results of calculations made by SCADA scripts for example), as well as external tags (information from PLCs or OPC servers).
Every tag has three essential parameters:
- Tag Name – The name all other parts of SCADA system will use in order to call the information stored in that location.
- Tag Address – The location of this piece of information in the slave device memory, or the OPC item name.
- Data Type – Real, integer, Boolean …etc.
Look for a place in the SCADA configuration named Tags Database, Tags Directory, Tag Management or something similar, create a new Tag, enter the Tag Name as “TankTemp” and in the address you will type …. ….
GOT YA, you though MW100, wrong, dead wrong, you can do that only if your SCADA is talking directly to the PLC via MODBUS, but that’s not our case, the OPC server is doing that for us.
Your address will be the complete path of the OPC item in the OPC server:
Your data type will be Real (Floating Point) or Integer, depending on how you did the scaling and what data type you used in the OPC server, and you are all set.
Step 4 – Create Your Graphics Displays
Now that your SCADA knows what information to get and how to get it, it’s time to display this information on the screen.
Create a new graphics display, go to the symbols library (you will find that, don’t worry you don’t have to draw everything from scratch), pick a tank symbol and the gauge symbol you liked in the SCADA brochure, place them both properly on the screen.
Open the configuration of the gauge, look for a property named Data Source or Tag or something similar, and just enter your Tag Name, done.
At this point, if you run your SCADA software in the “run mode”, you will see the temperature gauge on your screen displaying your tank temperature IN REAL TIME, just as you wanted.
What Can SCADA Provide More?
From that point on, the sky is the limit for the possibilities the SCADA software can provide.
Using the same TankTemp Tag, you can display it in numerous ways, generate various types of alarms that would alert your operator for abnormalities (limit crossing, deviation, rate of change …etc.), you can plot the temperature value against time, along with other variables if you want to give the operator an insight to the process variability over time, or periodically store the temperature value so later you can generate informative reports. And much, much more is there.
In Part IV, we will start the journey back from SCADA to field, starting by adding two features to our SCADA software, and preparing the PLC program to deal with them
- Selection for the Solenoid Valve Control Mode, Automatic or Manual
- Manual ON/OFF Control of the valve
July 31, 2015 at 3:01 am
Shady Yehia, Thank you for providing a strong overview. I am experienced with 5 different SCADA packages and I have yet to see a vendor who provided redundancy and unlimited client connections without an extra license. In fact all SCADA package vendors I know of are charging for every feature. In what software packages are you seeing the flexibility as you describe?
July 31, 2015 at 12:40 pm
Thank you Mark for your comment.. In fact I didn’t mention that any vendor provide these licences for free, I only mentioned the capabilities they provide.. You are correct, they all will charge you for any additional server or client other than the first integrated Server/Client licence.
August 1, 2015 at 1:31 am
wi have deferent betwine speed tronic park 6e ans scada???? Witch is easy???
August 1, 2015 at 9:34 am
SpeedTronic Mark IV you mean? if this is what you mean, then you are comparing two different things…
SpeedTronic Mark IV is a dedicated turbine control complete solution, it covers the controllers, the HMI/SCADA screens and the communication network between them.. SCADA software as you read int he post, is an open software that can work with any type of PLC.. I recommend SpeedTronic for Turbine control applications only as it has a lot of dedicated functions for turbine control , but for other applications, use any other PLC/SCADA system. For example Siemens S7-400 PLC with WinCC SCADA, or Schneider Electric Quantum PLC with Vijeo Citect SCADA.. So it all depends on your application..
August 1, 2015 at 9:27 am
sir you are doing good. I need more blogs.
August 1, 2015 at 9:31 am
And more blogs are coming :), stay with us.. I recommend you register by email so you receive email notifications with every new blog post..
August 2, 2015 at 2:03 pm
Many thanks for your clear overview and general explanation and approach to the I&C technology topics. Please continue, more of the same please.
August 2, 2015 at 2:44 pm
It’s my pleasure to be able to present content that is appealing to professionals like yourself.. Stay tuned as soon further content is coming, finishing the SCADA part, covering some PLC programming tips, and digging deep into the NAMUR sensors standard.. If you haven’t done it already, I recommend that you register to the blog to receive email notifications with every new post..
August 3, 2015 at 11:06 am
Thank you shady for this blogs.. i read that you will be doing PLC programming tips., I hope you include using PID thank you.. jus followed your blog hope to see more.
August 3, 2015 at 11:34 am
Thanks to you Luis, I have a few posts in mind for the PID issue and process control applications in general. PID by itself as feedback control solution is no longer enough by itself to address process control demanding applications. Soon I will provide an example about Heat Exchanger control that combines feedback PID, feed forward and cascade control in a single example. I hope you will find it helpful.
December 18, 2017 at 4:05 pm
Nice blog. you gave full information about SCADA.
May 18, 2021 at 6:37 pm
JAVA Online Training Institute in Noida according to the current business norms. Our preparation projects will empower experts to get placements in multi-national companies. We are giving our elite preparation to every student who needs to get proficient.