LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Shortcut to pass all wires through Sequence structure

Hi,

       I have a silly doubt about sequence structure that I used sequence structure to give some delay between my modules. I need pass all the wires through Seq Stru, So, I doped a Seq Stru on all wires But all wires are still in the background(not through Seq stru). I can make them by selecting each one but is there any option available that can just pass all existed wires through it. Smiley Happy

0 Kudos
Message 1 of 16
(2,739 Views)

There is no shortcut to do this. If you have error clusters you should consider using the Time Delay Express VI to accomplish the same thing by using the error cluster wires, without having to use sequence structures.

0 Kudos
Message 2 of 16
(2,735 Views)

No.

 

If you choose to use a seq structure then you have to wire them through explicitly. The only thing that could make it easier is if you created a type def'd cluster and wired the cluster through and then use "Unbundle by Name" and "Bundle By name" in each frame as required.

 

Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 3 of 16
(2,734 Views)

Assuming you're using a Flat Sequence....

Tack the wire to the sequence structure edge, which will create a tunnel. From that tunnel, wire through to the next frame, etc.

 

Better yet, don't use the sequence structure. Use error in / error out wiring to force dataflow from your modules to a delay timer VI that has error in/our terminals, such as the one from Open G, or make your own.

 

edit:  two good responses while I was typing! Smiley Wink

Richard






0 Kudos
Message 4 of 16
(2,732 Views)

Thank you all.

 

            I have one more doubt that I am using ENUM state machine which has three states. I want pass one value from one state to another state. I know shift register can do this but couldn't able to figure out. I want to do as, In one case if the amplitude is more than V it should take value 20 to next state and if the value is less than V should pass 5 to next state. Can I get some suggestions. I am new to labview.

0 Kudos
Message 5 of 16
(2,723 Views)

I would suggest you read this article: Application Design Patterns: State Machines

0 Kudos
Message 6 of 16
(2,718 Views)

I can make it with shift register but how can wire value to shift register as I said about conditions(More than 2v and more than 1v). I have no idea. I am using Greater comparison option but it returning true or false rather than like to output a number as I said 20 or 5. Is there any other option available.

0 Kudos
Message 7 of 16
(2,713 Views)

So you want to pass data from one state into the next? Well, there's a variety of ways to do this. You can make your state machine a string-based state machine and use a format such as stateName::stateData. On the left side of the loop you just split the string in the shift register to get the state name, and then pass in the state data, if any. A string-based state machine that I designed WAY long ago works kind of like this. Also, JKI's state machine works in this sort of way (though they don't use that specific format that I mentioned).

0 Kudos
Message 8 of 16
(2,710 Views)

Hi,

         There is no problem at all for me to pass data between two states. I am just did not find any way to make this logic. I did not explain well it before but here is that. I Just want a logic that generates 20, 5 values(I am using Amplitude and levels Vi. It will give amplitude as output. I need to check this amplitude,, if it is more than 2v I would like to pass 20 to next state and if it is 1v send 5 to next state). I am already using one ENUM for indicating states and using second Shift register especially for this purpose. Excuse me for bad explanation in previous posts.

0 Kudos
Message 9 of 16
(2,703 Views)

Just wire the output of the comparison to a Select function. You can cascade these if you need to. For instance, if you want to send one value if the input is greater than 2V, another value if it's between 1 and 2, and a different one if it's less than 1.

0 Kudos
Message 10 of 16
(2,688 Views)