I designed a SCADA monitoring system for temperature and pressure of a tank in the past. I coded the system in the National Instrument software GUI LabVIEW. Whereby, warning LEDs were blinking (RED) if set-point conditions were violated.
Mbege – Traditional beer in the northern part of Tanzania.
Previous design
modeling-simple-scada-system-using-labview-5077
Today, I decided to modify the code by adding another sensor into the tank. Level sensor measures the height of liquid level in a tank. Basically, the modified system will have three sensors which will send their data into SCADA panel through DAQ or Arduino Uno.
Conditions
- If temperature sensor detects the value higher than 200C then a warning LAMP will blink RED/YELLOW to alert the operator.
- If pressure sensor detects the value higher than 10MPa then a warning LAMP will blink RED/YELLOW to alert the operator
- If level sensor detects height below 1m a warning LAMP will blink RED/YELLOW and sends string message “Tank is empty”. Height above 9m the LAMP will blink and sends a string message “Tank is full”. Finally, height in between 1m and 9m a string message “Normal level”.
I demonstrated manual and automatic system monitoring. Manual system, the user uses slide palettes to generate pressure, temperature and level sensor data. However, in automatic system I included random numbers generators which represent pressure, temperature and level where by i differentiated them by assigning “shift registers” between them.
Automatic system
Manual system
Source code
You can learn this programming language by making simple models. Try to build a model which computes in real time, the average value of the last 4 randomly selected elements.
Future system design;
- I will embed Matlab code to generate smooth incremental values for the level sensor. Unlike random number is not an incremental pattern hence poor tank level simulation.
- I will try to include code for tank auto-refill when the tank is empty and discharge of liquid when the tank is full.
- Divide the code into subsystems of independent while loops because each sensor has different speed in collecting data.
- Build a real simple system using Arduino Uno + LabVIEW.
Temperature, pressure and level values are for simulation and demonstration purposes only.
www.ni.com
www.mathworks.com