LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

parallel state machine

Solved!
Go to solution

I am building a vi that needs to run a device with two identical columns. Each column goes through cylce where gas is loaded, heated, then purged. The two cylinders are use the same pumps and what not to control. I was wondering if I could create two state machines, one for each column and then use a functional variable to communicate between the two? do parrallel state machines work ok?

0 Kudos
Message 1 of 3
(2,555 Views)
Solution
Accepted by topic author TSCline

Yes, just two independent loops, one for each column. You could use a third loop for the user interaction.

Message 2 of 3
(2,553 Views)

@TSCline wrote:

I am building a vi that needs to run a device with two identical columns. Each column goes through cylce where gas is loaded, heated, then purged. The two cylinders are use the same pumps and what not to control. I was wondering if I could create two state machines, one for each column and then use a functional variable to communicate between the two? do parrallel state machines work ok?


"Parallel state machines" can work.  but I'm a really big fan of "Code it once".  Let's assume you created the perfect Queue Driven state machine.  All you really need is for the Producer to call copies of the consumer.  So if the QDSM was saved with the extension VIT instead of vi the producer could load as many as it wanted into sub-panels and create an array of queues for each. 


Here is a similar scalable project I once built

Untitled.png

 

A better example can be found in a presentation to the Minneapolis User's group by CLD Tore Johnson of St. Bernard Engineering.


"Should be" isn't "Is" -Jay
0 Kudos
Message 3 of 3
(2,547 Views)