NI產品與技術 討論區

取消
顯示結果 
搜尋替代 
您的意思是: 

data無法完全儲存

如附檔中的程式onecom2 save.v,程式同時會讀取兩組訊號,在存檔位置輸入要儲存的data筆數,然後打開save的開關就會開始儲存。我遇到一個問題是~例如:我輸入3000,是要Node1以及Node2,各存3000筆資料,但save times開始計算時卻是將兩組訊號儲存的筆數一起計算,變成說每組訊號只會儲存我需要的一半筆數,不知道在程式中該如何修改,或是有不同寫法。

補充一下~兩組訊號,在相同時間內所產生的訊號筆數不盡相同,所以沒辦法說將要存的筆數X2,因此如果我輸入要存3000筆data,儲存結果可能為node1存了1583筆、node2存了1427筆。

 

希望各位不吝給我指導             謝謝

下載全部
0 積分
1 條訊息(共 5 條)
5,201 檢視

Hi Sky Le

 

關於您所詢問如何可以讓兩個Node都儲存同樣的點數,您可以參考Semaphore元件,

該元件就像是紅綠燈一樣,可以管制您的程式,讓程式輪流執行,如此可以幫助您的兩個

Node都產生相同筆數的資料,您可以參考附檔圖片的設計方式。

 

Thanks,

Howard

0 積分
2 條訊息(共 5 條)
5,185 檢視

您好:

因我接觸LabView的時間較短,關於您提出的解決方法,我試了一下不太會用,一些function還不太會使用,不知您是否可以教我如何放進我的程式中做修改,謝謝您~

       也希望如果其他工程師或是高手還有不同意見或想法也請不吝指導

                                                                         感謝

                                                                                                      sky le

0 積分
3 條訊息(共 5 條)
5,174 檢視

Hi Sky Le

 

以下提供您另一個較簡單的方法,您可以使用Flat Sequence Structure這個元件,

他可以讓您自行定義程式執行的順序,您可以把第一個存檔程式段放在第一格的Sequence

然後第二個存檔的程式段放在第二格的Sequence,這樣兩個存檔程式所存的資料筆

數都相同了。

 

Thanks,

Howard

4 條訊息(共 5 條)
5,164 檢視

您的方法我試試看~謝

 

還有一個問題補充一下,關於存檔的控制,我要把現在data儲存到我設定的筆數就停止,改成用時間來控制,不知到有沒有類似碼表的物件,例如:我設定300秒,打開儲存控制鈕後,時間到達300秒就自動停止,麻煩指教~謝謝

 

0 積分
5 條訊息(共 5 條)
5,105 檢視