LabVIEW Pro 專業論壇-技術討論區-SubVI 輸入端點讀值,有些輸入端點讀不到值
 
     
 
 
 
LabVIEW 討論區基礎教學每月專題分享技術問題精選online Test
技術討論區 程式分享區 教育訓練與認證區 閒話家常區 工作機會討論區 回報區 ✦LabVIEW NXG 特區✦ 高手專訪系列 2017 LabVIEW 至尊爭霸賽
 熱門關鍵字 
    3小時內學會 LabVIEW    取得 NI 協助    量測概念充電站    [LabVIEW TOP 資源排行榜]
 您的位置:首頁 > 技術討論區 > SubVI 輸入端點讀值,有些輸入端點讀不到值
  技術討論區   板主:meiae
 之1(6篇)
SubVI 輸入端點讀值,有些輸入端點讀不到值 
 
alancmh062
暱稱:Alan
經驗值:95
等級:技工
發文:4
回文:6
版本:LabVIEW 2011
闖關狀態:
惡魔沼澤
前往地圖:
 
字級設定

請教一下各位

我寫了一個subvi,並且在主程式的地方呼叫,執行過後,開啟subvi來看

有一個輸入端點沒有讀取到輸入值,其他的輸入端點都有,但我有在那個端點的輸入項拉一個indicator來看,確定是有值的,請問這是怎麼一回事呢?

 

如圖中,Main VI的D1-1的值都讀不進subvi的D
[+]放大圖片
 

  文章人氣: 608 讚:0 文章日期:2017/11/03 18:58
wade0217


2013 LabVIEW 至尊爭霸賽參賽者    
暱稱:wade
經驗值:4317
等級:總舵主
發文:11
回文:891
版本:LabVIEW 8.5
闖關狀態:
英雄殿
前往地圖:
1樓
字級設定

Hi 你是執行過後,開啟subvi

開啟subvi後再執行

有差唷!!

    讚:0 文章日期:2017/11/04 09:15
alancmh062

暱稱:Alan
經驗值:95
等級:技工
發文:4
回文:6
版本:LabVIEW 2011
闖關狀態:
惡魔沼澤
前往地圖:
2樓
字級設定
是執行過一次main vi 後再開啟 sub VI來看的 會這樣做是因為我的Main vi都要執行2次跑出來的結果才會正確 於是在subvi的輸入輸出端點都拉indicator出來看 才發現輸入端點都有值進來, 但輸出端點的值卻一定要執行第二次才出來 此時打開Subvi來看,發現有一個輸入端點總是沒讀到數入值
    讚:0 文章日期:2017/11/04 09:35
labviewjc

暱稱:olenjerry
經驗值:1043
等級:堂主
發文:2
回文:114
版本:請選擇
闖關狀態:
飄渺嶺
前往地圖:
3樓
字級設定

請問你有重新 re-start labview program 環境 看過嗎? 因為你剛剛也說了自己單獨拉一個 indicator 倒是看得出來那個值. 

對了請問一下, 您確定你的 D1 input property node 進來的值也對嗎 ? 有事過從 source 那裏變個數字看看有沒有改變?

 

我會去做以下的做法 ....

1. 從 subvi 的那個 input 值接拉一個 "create->control / constant" 出來, 給了值以後再 run 一次, 然後進去 subvi 看看值有沒有被吃進去. 

 

2. 如果上述 1 方法可以, 直接 copy 那個剛剛 created dummy 的值, 然後在回去上一層你的 D1 data source 再送進去一次, 然後跑下來應該就可以確定你的 program data flow path 沒出問題. 

 

上兩個步驟可以釐清你的 data 在哪一個階段 / 步驟時 有 data lost 現象, 也好方便釐清! Good luck

    讚:0 文章日期:2017/11/09 08:47
alancmh062

暱稱:Alan
經驗值:95
等級:技工
發文:4
回文:6
版本:LabVIEW 2011
闖關狀態:
惡魔沼澤
前往地圖:
4樓
字級設定

To labviewjc

我確定我的 D1 input property node 進來的值是對的

因為我indicator就是從D1 input property node拉出來的,值會更著變動,而且每次變動的值都是我要的值

但就是不進去subvi

 

關於您建議的方法

1. 從 subvi 的那個 input 值接拉一個 "create->control / constant" 出來, 給了值以後再 run 一次, 然後進去 subvi 看看值有沒有被吃進去. 

我有試過了,在subvi裡的D1 input直接用constant或indicator輸入,subvi是正確運作的

 

以上證明了我的subvi沒問題,要輸入的值也沒問題

但就是不知道為什麼subvi就是沒辦法讀值

 

PS.我的main vi連跑2次,跑出來的結果就是正確的了

所以我目前的作法就是在subvi跑個for loop 2次來cover掉這個問題

但實際上我還是不知道為什麼只有D1這個端點的值吃不進來,...

 

 

 

    讚:0 文章日期:2017/11/09 13:32
CYTseng


2013 LabVIEW 至尊爭霸賽 Top 20    
暱稱:C.Y.
經驗值:5322
等級:總舵主
發文:20
回文:1143
版本:LabVIEW 2012
闖關狀態:
英雄殿
前往地圖:
5樓
字級設定

程式分享來看看?!

    讚:0 文章日期:2017/11/10 11:35
lovesmartx

暱稱:幻零
經驗值:2587
等級:總舵主
發文:40
回文:381
版本:LabVIEW 2011
闖關狀態:
英雄殿
前往地圖:
6樓
字級設定

假如SubVi內程式全空,SubVI單純從Main VI接收數值,還是一樣的狀況,通常是Main VI的數值來源有問題,通常是沒有管控好寫值 /讀值的先後順序。

執行第二次有數值,很有可能是第一次產生的數值。

    讚:0 文章日期:2017/11/10 11:44
 之1(6篇)
 
 
   會員中心 
帳號:
     
密碼:
     
  以後自動登入
 
註冊
   待回覆文章 
1. 雜訊問題
2. UART receive如何在指定時間...
3. GPIB read 有時讀不到機台傳回的"MC"指令
4. rs232 modbus rtu通訊問...
 
   Top 5 熱門討論 
1. 請問如何將數值轉 ASCII 的字串顯示?
2. web monitor
3. 馬達驅動器及時停止
4. 可以sort讀檔順序嗎?
5. 主程式與外部執行檔comport設定?
 
 
 
LabVIEW討論區 站長信箱 關於我們 站內聲明
國家儀器股份有限公司贊助;Sponsored by NI.
© 2010 National Instruments, Taiwan. All rights reserved. design by begonia