最近使用labview來自動控制偏振片的角度
以控制laser的功率
但學長說當laser變化太大時
希望能按按鈕以手動控制偏振片
所以我就用event structures來寫程式
但是遇到一個問題了
每當我按下按鈕時
會發現大部分時候
還是會在自動控制
我個人是認為那是因為按按鈕的時候
程式剛好在執行自動程式的部份
而不是在偵測是否有按鈕被按下去的那一段時間
但因為回授控制
我又不能把等待的時間設太長
不知道有沒有什麼別的解決辦法
最近使用labview來自動控制偏振片的角度
以控制laser的功率
但學長說當laser變化太大時
希望能按按鈕以手動控制偏振片
所以我就用event structures來寫程式
但是遇到一個問題了
每當我按下按鈕時
會發現大部分時候
還是會在自動控制
我個人是認為那是因為按按鈕的時候
程式剛好在執行自動程式的部份
而不是在偵測是否有按鈕被按下去的那一段時間
但因為回授控制
我又不能把等待的時間設太長
不知道有沒有什麼別的解決辦法
就字面上的敘述 , 看起來應該是程序控制上的問題
自動控制的部份是一個subVI嗎? 或者一個Loop嗎?
你可能要把判斷按鈕的event structure放在自動控制的Loop內
否則判斷按鈕和自動控制是平行的話 , 就有可能如你所想的狀況
但是event structure的value change的event可以Latch很久
你自動控制的部份應該不會超過幾十秒吧.....
我想你再回授控制時應該自己有一個迴圈一直在執行中,所以根本不會到迴圈外面偵測按鈕的狀態,以至於到自動控制迴圈之後,就沒有辦法切換到手動控制了。
[QUOTE=yao]
就字面上的敘述 , 看起來應該是程序控制上的問題
自動控制的部份是一個subVI嗎? 或者一個Loop嗎?
你可能要把判斷按鈕的event structure放在自動控制的Loop內
否則判斷按鈕和自動控制是平行的話 , 就有可能如你所想的狀況
但是event structure的value change的event可以Latch很久
你自動控制的部份應該不會超過幾十秒吧.....
[/QUOTE]
恩
這我之前沒想到過
趕快來去試試
感謝各位的回覆