11-19-2012 01:21 PM
Hi there,
My project is writing a labview program to control & monitor the transfer of a liquid from a tanker truck to a 70-tonne storage tank, and from the storage tank to multiple 3-tonne railroad tankers. We will be using a NI controller (I don't remember the name of it right now) to control this system. The piping network for this transfer process consists of several remote control valves, 1 flow meter, 2 pumps (centrifugal & diaphragm), level sensors, & load cells. The labview program needs to:
1. control the flow of liquid (i.e. start/stop transfer, open/close valves & activate/deactivate pumps when certain setpoints are reached)
2. monitor the inventory of liquid in the tanker truck, storage tank, & railroad tanker (flow meter will indicate the flow rate, level senors will be in both tankers to indicate levels, and storage tank has a load cell which can be used to indicate the inventory of liquid iside the tank)
The transfer is split into 2 phases: tanker truck to storage tank & storage tank to railroad tanker. Both are separate processes (i.e. they do not occur simultaneously). So my labview program needs to be able to switch between these two processes.
I am relatively new to using labview, and this is a pretty tall order. I was just wondering if anyone had any advice on how I could set the program up? Or possibly lead me to some example programs I could look at to help me out.
I appreciate any feedback.
Thanks,
Daryn
11-19-2012 06:37 PM
Daryn,
You are right that "this is a pretty tall order" for a LabVIEW beginner. However, if you are patient and do not try to do too mcuh too quickly, you should be able to get it working.
First, I recommend that you get some LV training to make sure that you are sound on the fundamentals before you do mcuh on this project. Fumbling around making novice errors could become a big problem for a project like this.
Next, break the problem down into "bite-sized" chunks. You will need to be able to read from the sensors. Write to controllers. Perform logical decision-making. Display data to the operators. Probably log information to files. Certainly handle error conditions. LabVIEW makes it easy to keep things modular by using subVIs.
Also, carefully design the program before you write much code. Your system will probably include a state machine. Document the states, what happens in each state, and the conditions for transition to other states. (Do not forget error conditions and "that will never happen" possibilites). This state design document will make writing the program much easier.
Then look at the examples which come with LV. There are examples for data acquistion, for control, for state machines, and for other relevant parts of the code. The examples most likely will not be directly useful in your final program but will save you lots of time in learning how to do some of these essential parts of your project.
Lynn