LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Fixture Control - Before I get started.

Solved!
Go to solution

Gidday All,

 

** hope this is the right place in the message boards***

 

I am designing software in Labview to control a Fixture. The Fixture I am designing is used to test the push buttons on a product.

 

The low level commands are handled by a microcontroller i.e. turn, press button x, or move product to position y.

 

I have drawn a few VIs (attached) to generate high level command strings for the micro controller to process.

 

Before I build the main VI there are two phases. A manual control, where the operator can press a (boolean) button on the GUI and make something happen by sending the right command to the micro controller. The second phase is a cycle where multiply commands will be sent in order and repeated for multiple cycles (serveral thousand times) ~ An automated process.

 

***

I would like to know if there is anything I should know about as I proceed with creating the Main VI concerning LabVIEW and long operating times (2 months at a time running and data logging).

 

Is there a problem with using custom VIs multiple times.

 

The idea was to use the 'stringfunctiongenerator' in a sequence and only fill in inputs as required from local variables.

 

Lastly, the micro will return a 'busy' or 'free' command to let me know what it happening and whether or not I can send a command.

 

I am attacking the project in blocks. i.e. draw serial coms vi. draw data logging.iv and then putting them together.

 

0 Kudos
Message 1 of 3
(2,427 Views)

Heya,

 

For more clarification here is an example of my thinking for the manual control.

 

The case statement in this example will be repeated as per the number of actions. There are 14 actions, one boolean button on the GUI per action. Each action requring different inputs into the StringFunctionGenerator.vi

 

Is there a smarter way of doing this?

 

For the Automated part, I plan to put each case statement (with a wired constant boolean) into a flat sequence structure. Then repeat for the desired number of Cycles.

 

Again, is there a smart way?

 

Cheers for any help guys.

 

K

Download All
0 Kudos
Message 2 of 3
(2,421 Views)
Solution
Accepted by topic author Kamilan

Hi Kamian, 

 

People leave labview running for years without problems. You will, however, definitely want to check for memory problems before you deploy a program. A memory leak will slowing use up the memory on the computer and eventually cause a crash. If you have the trace execution toolkit for labview installed (check Tools->Profile->Trace Execution) you can do this automatically, otherwise just monitor the memory that labVIEW is using in Task Manager over the course of a few weeks and see if it is increasing. The biggest cause cause of memory leaks is people not closing references to objects. Also, if you are not storing data to a file fast enough you will use up your RAM pretty quickly.

 

Your design sounds like it is on the right path. You might consider making your "Action" control a typedef and an Enum instead of a string control. The typedef will make it easier to update your code and the Enum are easier to perform logic operation with.

 

 

 

 

Jesse Dennis
Engineer
INTP
Message 3 of 3
(2,385 Views)