The Server VI is used to simulate some of the parameters (pH, Fluoride & Chlorine) in water supply control. The system runs automatically.
The system will monitor the listed parameters of the water supply and will always maintain an adequate supply of water in the supply tank.
The level in the supply tank will vary depending on the demand and the system will react automatically to changes in the tank level.
On Start, the supply tank level will begin to decrease from max.
When the supply tank level falls below 30%, the inlet pump will fill the tank and will be switching off only when tank is 90% full. (Make it simple so that the Tank does not empty and fill simultaneously, make them consecutive, make them in sequence)
The inlet pump fills the supply tank from the Dosing tank.
Dosing Tank is monitored for pH, Fluoride and Chlorine.
Show current values and running averages of pH, Fluoride & Chlorine.
If any of these parameters are out of spec, the inlet pump shuts down and dosing for adjustment of the parameters pH, Fluoride and Chlorine continues until system comes back into range, then the inlet pump automatically restarts, Resuming the filling up process, once the values are back within the respective set points tolerance range, (when the filling up of the supply tank is required on getting emptied/drained on the water level falling below 30%).
The system will monitor the On/Off condition at all times and will shut down when the Off button is pressed.
The front panel of the server VI should contain the following elements.
- Indicators
o Power on/off
o Supply Tank outlet pump on/off (pumps to the consumer)
o Supply Tank inlet pump on/off (pumps to the supply tank)
o Supply Tank level
o Dosing Tank level (it is like an endless reservoir and will always be shown as full, no need of monitoring its level)
o pH – current value and running average, graph average
o Fluoride – current value and running average, graph average
o Chlorine - current value, running average, graph average
- Controls
o Power on (Start Button)
o Power Off
o pH setpoints (tolerance range e.g.- 6.5 to 7.5)
o Fluoride setpoints (tolerance range e.g. - 0.6 to 0.8 ppm)
o Chlorine setpoints (find and set standard tolerance range)
( e.g. – 3 to 5 ppm)
[Find and set default tolerance range for the above parameters with the option for the operator to manually assign different set point values, when required]
The Client VI should display the following values which are received from the Server VI as global variables
o Supply Tank level
o pH reading
o Fluoride reading
o Chlorine reading
o Allow the Client to start/switch off Server VI
o Allow the Client to set the parameters’ set points
Coding the system
Use a case structure to make decisions e.g., control, manual and automatic operation.
Use array functions to generate running averages or use shift registers
Use random number generator to create pH, fluoride, and chlorine signals. There is also Simulate Signal Express VI available in LabView which can be modified to enable to generate different wave forms.
Use sequence structure to create start button, overall while loop for stop button. Use sequence structure for Tasks to happen in the correct sequence - for showing Tank filling and then emptying or vice versa and might be valid to have the filling process in one frame of the sequence structure and the emptying process in another, to make sure it not doing the same process together at the same time.
Use random number generator and/or simulate signal express vi to generate signals. Use the random in-range and coerce function, to get the numbers to coerce into specific range or do some arithmetic to get the required range of random numbers. (Random generated for each of parameters be such that they are coerced in the range outside the lower & upper limit set points. For instance, for pH, the tolerance level set points are 6.5 to 7.5, so random numbers to be generated for pH may be coerced in the range 6.4 to 7.6.).
Note you may need to use numeric functions to scale the signal and establish trends, e.g., to show raising or lowering tank levels.
Report: Provide brief outline of the Methodology: how it is put together, how it works, how the algorithm is designed - the inputs, the process, and the output. How the system is being monitored & controlled. Provide Screenshots of the sequence in which the LabView Build was done. Also provide a Brief Outline of the Operating Procedures for the User/Operator.
Further explanatory NOTES : This is purely an Academic Exercise/Experiment using LabView and NOT an actual production project for a real time process, but only mimicking it. Build a classic SCADA system (Client Server Implementation of the SCADA or Control System) using LabView by creating required multiple VIs, Global Variables, Global VIs, Client VIs/HMIs and Local Variables, where required. NO Need of using DSC feature.
This Assignment is a LabView Build requiring a number of VIs. It is an academic exercise taking a few variables from Water Quality Monitoring Controlling System. It will contain Server VI and Client VI. The Server VI which is the main VI will produce and provide the signals for actual monitoring of the external devices. The signals from the external devices will be simulated. A few parameters from the Water Management Plant will be simulated and the system will run automatically. It will monitor the parameters listed.
Filling process can be in one While Loop and Emptying process in another While Loop. Overall VI in enclosed in another overall While Loop, that is one outer While Loop with two inner ones. If the Outer While Loop’s Stop button is pressed, it won’t activate until the inner While loops are finished. The solution to the problem is to use a Local Variable to enable the outer While loop, the Overall Stop button to stop the inner loops as well as the outer loop, in other words simultaneously.
When an out-of-range parameter is entered, it does not stop, until the cycle in that sequence has finished. For this again we need to use Local Variable. You can use an OR gate and a Local variable plus the Stop condition for the Stop button. Can build multiple conditions to Stop. Use Sine Wave form chart/graph. (Inverse of Start button is the Stop button)
If any of these are out of spec, the inlet pump shuts down and dosing continues until system comes back into range, then the inlet pump automatically restarts.
Here it means, shutting down the inlet pump and dosing continues in lower or higher level. Shift down and change/modify signal to drive graph in the correct direction drive the graph down or up to bring it back to the tolerance level and restart the pump.
Local Variable is copy of an existing parameter. You can have a Local Variable based on any control or indicator, based on a stop button, based on tank, based on any indicator or any control. Property Node is a property of a specific indicator or control. E.g., Visible property or Colour Property.
We have a supply tank to provide water supply to inhabitants of a town, assuming Water supply is available, water is there in the tank and in sufficient quality. Though there are several parameters in an actual situation, we will be narrowing down to a couple of parameters only. Supply Tank will be monitored to keep the water supply to the required levels. Water will fill the Supply Tank from the Dosing Tank. Dosing Tank will be considered to be the reservoir from where water is available to the Supply Tank. Dosing tank will be considered as an endless Reservoir. So, there is no need to monitor the water level in Dosing Tank. But we need to monitor the water level in the Supply Tank.
When the system starts up, the supply tank is full and begins to empty as consumers are drawing water from it. The tank will continuously fill & empty. The rate at which the tank fills is always constant because the pump is operating at a certain level and the no. of pump strokes per minute are constant so that you get constant flow rate into the tank. So, it is safe enough to assume the rate at which it fills up is constant. However, the rate at which the tank empties will vary depending on how consumers keep their tap open or consume. It will drain at a varying rate. The inlet pump will fill the Supply Tank from the Dosing tank. We need not monitor the level of water of the Dosing tank, we will always assume there is an endless supply of water available. As water is being pumped into the supply tank from the inlet pump, it will be monitored
Create Client VI and the link from the Server VI to the Client VI to be by the use of Global Variables. Some of Server VI variables is to be shared with the Client VI as Global Variables. For the Client VI, to start with, keep it simple to display the following values Supply Tank level, pH reading, Fluoride reading and Chlorine reading. Provide the option for the Client VI be able to start the Server VI and stop the Server VI, when required. Also provide the option for being able to set the pH , Fluoride & Chlorine set points. They may be shared as Global Variables as well.
But there is good chance that you want to include some Controls on the Client VI, because not every user will have access to the Server VI. For example, should the Client VI be able to start the Server VI and stop the Server VI. Perhaps they should. Or should they be able to set the pH and Fluoride set points. Maybe we want to share those as Global Variables as well.
DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma
Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t
Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th
1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of
1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of