LabVIEW設計模型——順序模型 Ⅰ

        順序模型之順序結構
在任何編程語言中順序模型都是最基本的設計模型,LabVIEW也不例外。
順序模型從程序開始到初始化,到模塊1、模塊2……一直到程序的結束,都是嚴格按照編程者事先指定的順序依次執行的。這種模型簡單、易懂,是編寫小程序的理想模型,如下圖。
順序模型流程圖
在LabVIEW中,一提到順序模型就會很自然的想到順序結構。沒錯,使用順序結構是實現順序模型的一種方法。
在LabVIEW中,順序結構就像是電影膠片,不論是外觀和應用形式都很像(如下圖所示)。它是嚴格按照從左到右的順序將各個幀中的模塊依次執行的。前面的幀執行完畢之前,後面幀中的內容是無法開始的。順序結構看上去很清晰,容易理解。
順序結構示意圖
然而,順序結構有兩個致命的缺陷,以至於我們在實際應用中應該儘量避免使用它:
1. 順序結構破壞了數據流系統規則。在LabVIEW中一個節點開始執行的充要條件是節點獲得了所有必要數據,這就是數據流系統規則。而順序結構的使用,強行規定了各個節點的執行順序,破壞了這一規則。也阻止了並行處理的進行,降低了程序的效率。
2.順序結構降低了程序的可控性。順序結構一旦開始執行就無法中止,它一定要等到最後一幀執行完畢後纔會停止。這也是順序結構最大的缺陷,導致了程序在它執行的過程中無法控制。
由於以上的原因,我們在工程應用中對於順序結構的使用一定要慎之又慎。
順便說一下,還有一種層疊式的順序結構。樣子如下:
層疊順序結構 
這種結構貌似節省空間,但是它不但擁有平鋪式順序結構所有的缺陷,而且我們無法一眼看出各個幀的情況,使得程序不夠清晰。更嚴重的是,在各幀之間傳遞數據的端子,使得數據的流向混亂,難以讀懂,不易維護。所以應該絕對避免使用層疊式的順序結構。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章