LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Advice for a beginner

I've been reading the boards here for a bit and I really appreciate all the time experienced users spending contributing. I feel like I've learned a lot. I am hoping some experienced LabVIEW devs can give me some advice.

 
MY PROBLEM
The company I work for pours hundreds of thousands of bottles of fragrance oil every year. We carry over 150 different oils with widely ranging viscosities and sell them by weight. We bottle small batches at a time (25 to 100 lbs) into a range of small bottles 1, 4, 8, and 16 ounces.

 

Due to the small batch size, need for net weight filling, and wide viscosity range we've had a VERY difficult time finding a commercial filling system that will work and is affordable (< 50k).


I am a programmer for this company who works on the web and operations. I work mostly in ruby and javascript. I had heard of LabVIEW before, but really became interested in the idea of using it to solve this filling problem when I started using the super simplified version included in Lego Mindstorms NXT a few years ago. 

 

MY IDEA
I've been thinking about trying to build a filling machine using LabVIEW, a USB load cell (to remove the complexity of programming a load cell), and a simple valve to control flow from a reservoir to the bottle. Ideally a user would put a bottle on the load cell under a valve stem, enter a number of ounces (1-16) and press fill. The system would tear the weight of the bottle, then open the valve and keep it open until the correct weight it reached. Once this is perfected I would expand to 4 heads (I would outsource tanks and rigging to a local fabricator).

 

MY QUESTION
Compared to the projects I have been reading about on this board my plan seems very simple. But I've learned the wise developer doesn't underestimate. I'm wondering if anyone has tried anything like this and whether or not someone like me with general engineering skills, OOP programming skills, and a lot of patience and ability to learn could reasonably handle a project like this. I have also considered working with a local Alliance Partner.

 

If yes, NI hardware advice would also be greatly appreciated. 

 

Thanks!

Mike

Message 1 of 15
(2,947 Views)

I can't speak to the hardware question since I use very little hardware myself. As for the scope of this project I suspect that you have the necessary skills. The one thing you really need to get a solid understanding of is the difference between sequential (traditional) programming and dataflow. You structure your code differently when using dataflow than you might if you were writing traditional code. You could work with an alliance member but your budget sounds pretty small. What you might consider doing is working on your code and during the process post examples of the way you plan to implement your logic and architecture here. Get feedback from the community and use that to help you develop your code. As long as you don't expect folks here to write your code for free I am sure people would be willing to give you feedback on your approaches and your code.



Mark Yedinak
Certified LabVIEW Architect
LabVIEW Champion

"Does anyone know where the love of God goes when the waves turn the minutes to hours?"
Wreck of the Edmund Fitzgerald - Gordon Lightfoot
0 Kudos
Message 2 of 15
(2,940 Views)

Doing this project for the first time is interesting as well as challenging, I have a question

 

1.Are you planning to build a complete controller system which includes conveyor for bottle movement, or the person will take different bottle size manually to fill the fragrance oil ?

 

2.Are you planning to have one filling station or many filling station for different bottle sizes ? If only one filling station then task of filling becomes bit complicated and challenging.

 

As of now I can think of two but there would be many things which will come up eventually.

 

Depending on how you want to do one can really come up with the hardware required?

0 Kudos
Message 3 of 15
(2,939 Views)

I agree with Mark that you can probably do it.  The question comes down to a management decision:  How much time and how many wrong decisions about hardware and software are they willing to let you spend compared to what having a consultant (NI Alliance member or otherwise) would cost?

 

Lynn

Message 4 of 15
(2,927 Views)
Hello Mozano, LabVIEW is a fantastic tool for many things. I use daily right now on an advanced testing and data acquisition system. However, if you are on a really tight budget, maybe a small Programmable Logic Controller (PLC) would be suitable for your task. You can buy small PLCs that accept analog inputs for <$1K. Just a thought...
0 Kudos
Message 5 of 15
(2,916 Views)

The only real show-stopper I see is that wide range of viscosities and filling by weight.

 

Challenge: to predict the weight poured from the instantaeous bottle weight.  The weight of the stream not in bottle and some surface factors related to fluid density and viscosity are going to be signifcant sources of error at the small sample weights if there is truely a wide range of viscosities.  You may need to predict the stream weight on a fluid by fluid basis.  At 150 oils the cost of running the experimental data will eat up a largeish chunk of the <$50K budget. 


"Should be" isn't "Is" -Jay
Message 6 of 15
(2,909 Views)

Regarding hardware advice, I would suggest talking to the sales rep in your area.  What I have found in the past is that even though they are "sales reps", they do not push things you do not need onto you.  The sales reps I have worked with have been really good at suggesting hardware that is just slightly, but not too much more, capable than what you need.  I cannot keep up with the NI catalog and it isn't always intuitive to browse through the hundreds of products that NI has on their website.

 

Regarding software development, you can definitely get something up and running.  If you desire to use LabVIEW in the long term, just jump in.  It is a lot easier to get a functioning application built in LabVIEW than in many other programming languages.  As with any other software project though, every feature you add in will require some learning time and then some development time.  Like somebody else mentioned, it comes down to a management decision: What capabilities do you expect from the system?  What compromises can you make (development time, operating speed, flexibility, scalability, ease of use, etc.)?

S G
Certified LabVIEW Architect, Certified TestStand Architect, Certified Professional Instructor
Message 7 of 15
(2,893 Views)

someone like me with general engineering skills, OOP programming skills,

By the way, you won't even need OOP programming skills.  General engineering skills are more than enough for this sort of project.

S G
Certified LabVIEW Architect, Certified TestStand Architect, Certified Professional Instructor
0 Kudos
Message 8 of 15
(2,889 Views)

Hello,

 

 

 

 I absolutely agree with Jeff Bohrer,

 

 Programming part should be no problem (for a good programmer) at all.  The main problem may be in the filling machine.

 

 One very important question is what is the maximum amount of time you can afford to spend for filling a small (1 ounce) bottle. And what is the maximum error in weight that is acceptable.   I am a bit surprised that you define your products by mass instead of volume. 

The continuous weighting is applicable only when your oil flowrate (liter/second or gram/second) is low enough not to cause errors in weight due to (slow) response times of your software & hardware & filling process. As far as I could imagine once you close the valve you get some transient flux that also contribute some mass into the bottle and this transient contributed mass is highly viscosity dependent and quite probably also not well determined at all. 

 

 In my opinion (although I have no experiences with fluids only with gases) it might be wiser to use some form of piston filling machine where the the initial piston motion would suck in the required volume of oil from the tank. By closing the valve to the tank and opening the valve to the filling tube the opposite motion of the piston would then fill the bottle with the required amount of oil. This way you eliminate time dependency. (Hopefully you know the densities for your oils to translate between volume and mass).  In such case the distance of the piston motion would need to correspond to the mass (or volume) of your bottle.

 

 best regards,

 

 Bojan

 

Message 9 of 15
(2,871 Views)

@S G wrote:

By the way, you won't even need OOP programming skills.  General engineering skills are more than enough for this sort of project.



You could benefit greatly from good OOP skills. Using native LVOOP can help to make a very robust design for a LabVIEW application. OOP translate across languages and is really more of a design technique rather than a language issue. A solid OO design is a great place to start even in LabVIEW.



Mark Yedinak
Certified LabVIEW Architect
LabVIEW Champion

"Does anyone know where the love of God goes when the waves turn the minutes to hours?"
Wreck of the Edmund Fitzgerald - Gordon Lightfoot
Message 10 of 15
(2,846 Views)