迴圈停止問題

要一個輸入兩個訊號的程式 連存五分鐘

再給給他一計時 五分鐘的

Q1 不過 裡面的計時會正常 外面那個迴圈怎麼給他 當裡面停時 外面的也停呢??

     (那個上面那個"我愛"是一個子vi)

Q2 子vi裡面本身有那個圖可以顯示

    可以在這個程式顯示出來嗎??

主程式     有進展是騙人的.vi

子vi      mywaysave.vi

thanks~~~

 

--------------------------------------------------------

這個程式 主要是紀錄二個訊號 時間是五分鐘的

那個主程式的倒數沒有問題

可是當主程式跑完時 那個子vi要如何同步停止呢??

再上傳一次主程式 上次傳錯了 sorry

主程式 有進展有進展.vi

子vi   mywaysave.vi  (就是圖上顯示的"我愛"!)

monkey38852.6545717593

有幾個問題想請教一下:

  1. 「Q2 子vi裡面本身有那個圖可以顯示」
    你說的 "那個圖" 是指什麼?
  2. 另外,一般我們不太會在 Loop 中再放一個 Loop ,
    這樣的程式很容易遺失掉控制權,不知道目前程序跑到哪個階段,
    可以說明一下你的程式目的是什麼嗎?
  3. 你所附上的兩個 VI 都跟 附圖 不一樣,請再說明 或 修正。

[QUOTE=Airbolt]

有幾個問題想請教一下:

  1. 「Q2 子vi裡面本身有那個圖可以顯示」
    你說的 "那個圖" 是指什麼?
  2. 另外,一般我們不太會在 Loop 中再放一個 Loop ,
    這樣的程式很容易遺失掉控制權,不知道目前程序跑到哪個階段,
    可以說明一下你的程式目的是什麼嗎?
  3. 你所附上的兩個 VI 都跟 附圖 不一樣,請再說明 或 修正。

[/QUOTE]

1.就是當訊號在跑時 也用Waveform Chart顯示
  如何在這個主程式上面 也show出來呢??

2.這個就是我不懂的部份了
  如何要程式也停 那個子vi也停 要用什麼方式呢??

3.我有更新過了
  那個主程式有重傳了
  還有子vi就是那個mywaysave的
就是圖上"我愛"的icon

 

你應該將「mywaysave.vi」的功能拆解到 mainVI (有進展有進展.vi) 去,
而不要將「mywaysave.vi」寫成一個 GUI ,這樣一來「mywaysave.vi」
才能夠重覆利用。

 

除非是你就是要把「mywaysave.vi」寫成 GUI,
那麼就要掌控好每個階段的程式控制權:
當控制權交給了「mywaysave.vi」,它的畫面就應該在整個螢幕的
最上方,mainVI 也就不應該能夠在此時被人員所操作到。

這樣一來就會發生了你目前所遇到的問題。
(也就是你的程式不應該是這麼寫的,這樣很容易讓操作人員感到困惑)

 

話說回來,你現在的程式有兩個功能:
(有說錯,請隨時指正)

  1. 監控實驗數據(擷取、顯示、儲存之)
  2. 在指定時間將上述功能給停止

那麼建議是將程式功能拆解:

  1. 將 "擷取" 的功能獨立出來成一個 subVI ,然後在 mainVI 裡,
    透過 "擷取" subVI 取得實驗數據,然後去完成 "顯示" 及 "儲存"
    等兩個動作。
  2. 同時,mainVI 要在 指定時間裡,將上述動作停止。

=============================

2006.5.16 更新:

把所有功能的啟動與終止都交由 mainVI 來管理,
程式的邏輯簡單易暸,而且不容易發生上述類似的問題。

Airbolt38853.7990046296

[QUOTE=Airbolt]

你應該將「mywaysave.vi」的功能拆解到 mainVI (有進展有進展.vi) 去,
而不要將「mywaysave.vi」寫成一個 GUI ,這樣一來「mywaysave.vi」
才能夠重覆利用。

 

除非是你就是要把「mywaysave.vi」寫成 GUI,
那麼就要掌控好每個階段的程式控制權:
當控制權交給了「mywaysave.vi」,它的畫面就應該在整個螢幕的
最上方,mainVI 也就不應該能夠在此時被人員所操作到。

這樣一來就會發生了你目前所遇到的問題。
(也就是你的程式不應該是這麼寫的,這樣很容易讓操作人員感到困惑)

 

話說回來,你現在的程式有兩個功能:
(有說錯,請隨時指正)

  1. 監控實驗數據(擷取、顯示、儲存之)
  2. 在指定時間將上述功能給停止

那麼建議是將程式功能拆解:

  1. 將 "擷取" 的功能獨立出來成一個 subVI ,然後在 mainVI 裡,
    透過 "擷取" subVI 取得實驗數據,然後去完成 "顯示" 及 "儲存"
    等兩個動作。
  2. 同時,mainVI 要在 指定時間裡,將上述動作停止。

[/QUOTE]

不太懂您說的意思
您說的"擷取" 是什麼意思呢??
可以說的再仔細點嗎?? 謝謝!!

"擷取" 指的是「mywaysave.vi」裡的 兩個「Simulate Signal.vi」
所產生的資料,之後在你實際運用的例子中,可能會將此置換成
讀取實驗數據的 module 。

anyway 以上只是用個情境來說明、建議你的程式要怎麼架構會比較好。