我有a b c d 4個sub vi可呢會執行,要看讀自己做的設定檔而定,
設定檔有可呢如下
a
b
d
所以執行次序如下 a > b > d
也可呢如下
d
a
c
b
所以執行次序如下 d > a > c > b
請問要如何用structure因為是一個可變動的structure
我有a b c d 4個sub vi可呢會執行,要看讀自己做的設定檔而定,
設定檔有可呢如下
a
b
d
所以執行次序如下 a > b > d
也可呢如下
d
a
c
b
所以執行次序如下 d > a > c > b
請問要如何用structure因為是一個可變動的structure
你的程式架構我沒有去想過
不過就LabVIEW的Case structure用法
應該是沒有辦法在程式中去變動
用 Sequences Structure 依序安排 d-->a-->b-->c 四個流程,
並在 d Sequence 中嵌入 Cases Structure 作為是否執行此 Sequence 的判斷。
不知道這要的作法是否符合 Buu 大大的需求呢?
我認為,可以先將「a、b、d」或是「a、c、d、b」放進array,然後使用case select,選擇要執行的vi。這樣就可以解決你的問題了。至於要執行幾次,3次or4次,你可以在外面放一個for loop。就可以了。

[QUOTE=yao]你的程式架構我沒有去想過
不過就LabVIEW的Case structure用法
應該是沒有辦法在程式中去變動[/QUOTE]
就我所知,的確無法在程式進行中更改Case structure。
不過Buu要的功能仍可以用其他的方式達成。
針對 Buu 本人有以下假設:
第一他的程序需不斷輪詢,
否則只要初始設定便可解決,
而無須判斷功能。
第二假設
Case_1:執行『a --> b --> d --> a --> b --> 循環...』
Case_2:執行『d --> a --> c--> b --> d --> a --> c --> b --> 循環...』
在輪詢的條件下 Case_1 與 Case_2 的差別只在於 'a' 後面接的是 'b' 或 'c' 而已。
根據以上假設在下完成一個範例供各位參考:
2004-04-07_184530_CaseSelection2.vi
若假設二不成立的話我們亦可完成以下範例:
2004-04-07_184739_CaseSelection.vi
也許還有更好的方法可解決,
僅供各位大大參考!
我可能行太多了~~
Case_1:執行『a --> b --> d 循環...』
Case_2:執行『d --> a --> c--> b --> d 循環...』
Case_3:執行『 a --> c 循環...』
Case_4:執行『b --> d循環...』
:
:
Case_n:執行『b --> d循環...』
但是到底有幾個case呢!
我會建一個設定檔如cfg1.txt
a
b
b
做case 1
cfg2.txt
d
a
c
b
d
做case 2
cfg3.txt
a
c
做case 3
這樣的方式可以嗎?
[QUOTE=Buu]
我有a b c d 4個sub vi可呢會執行,要看讀自己做的設定檔而定,
設定檔有可呢如下
a
b
d
所以執行次序如下 a > b > d
也可呢如下
d
a
c
b
所以執行次序如下 d > a > c > b
請問要如何用structure因為是一個可變動的structure
[/QUOTE]
Sequence程序流程有很多方式可以做到,所以您所需要的功能,您可將輸入端(Step)以讀取檔案方式判斷程序的順序.程 序定出來後,按下OK,應該可以達到您所需要的功能.
您可以將SubVI放在指定位置.請試試看吧!
上面的大大是否可以將您的程式改成6.1,謝謝