2013-10-29 47 views
0

我一直在摸索着想找到一個代碼,它允許從on-> off的變化導致某些事情發生,而從off-> on變爲不工作。LabView:如何將內存添加到labview中的VI中?

例如,我有一個傳感器的輸入。起初它感覺到一個物體經過並休息幾秒鐘,所以它記錄一個關閉(所以0)。當記錄關閉時,會導致指示燈亮起。幾秒鐘之後,物體會走到盡頭(離開傳感器),然後返回並再次通過傳感器。但是,這次我不希望燈亮。

如果系統發生內存,其先前的狀態爲關閉,現在它要感知,那麼我不會讓一個關 - >上工作,但一上 - >去上班。 LabVIEW中有這樣的代碼嗎?還有其他的選擇嗎?

回答

0

您可以使用local variable和反饋節點來完成這個任務。

假設這是在while循環我的解決方案是創建一個局部變量和hasLit在傳感器輸入的反饋節點。當反饋節點輸出爲真,並且傳感器輸入爲假(對象剛剛傳出傳感器視圖),我們將hasLit更改爲true。如果傳感器是真實的並且不是有問題,那麼光的狀態將是真實的。

Image form

+0

當我試圖重做VI中,haslit的本地變量連接到沒有形成虛線箭頭與不 – user29568

+0

我的情況下的結構的外需要將局部變量設置爲輸出 – user29568

+0

是否需要更改爲 – user29568

1

我相信,這將做到這一點,這是非常簡單的,糾正我,如果我錯了,因爲我不知道我完全理解所需的邏輯。

enter image description here

這裏的關鍵是使用移位寄存器,它更直截了當比局部變量的選擇,我肯定正確的解決方案是存在的或者一些小的調整,這一點。

的移位寄存器被初始化爲假和任何狀態的環路的輸出出現將重新出現在上下一循環該輸入。

另一個有趣的解決方案將是與事件結構來觸發的「傳感器」的值的變化。該解決方案還可以是略微更敏感,見下文:

enter image description hereenter image description here

+0

想知道LED燈是否閃爍有時是否意味着我的代碼有問題,或者它是程序。 – user29568

+0

打開「高亮執行」運行它,它看起來像頂部的一個小燈泡。觀察它運行並考慮要調試的值。沒有你的設置和看你的代碼,我不能做更多的事情。 – crlanglois

+0

http://i.stack.imgur.com/zEUsF.png – user29568