LabVIEW新手5大錯誤
雖然NI LabVIEW軟件長期以來一直幫助工程師和科學(xué)家們快速開發(fā)功能測量和控制應(yīng)用,但不是所有的新用戶都會遵循LabVIEW編程的最佳方法。 LabVIEW圖形化編程比較獨特,因為只需看一眼用戶的應(yīng)用程序,就馬上可以發(fā)現(xiàn)用戶是否遵循編碼的最佳方法。有些用戶會犯這些錯誤是因為他們沒有真正理解LabVIEW框圖數(shù)據(jù)流背后的原理,而有些用戶則是不知道哪些特性可提高LabVIEW編程質(zhì)量。
本文引用地址:http://www.ex-cimer.com/article/167320.htm本文介紹了經(jīng)驗欠缺的LabVIEW程序員最經(jīng)常犯的一些編程錯誤,同時也提供了采用正確LabVIEW編程方法的建議。
過度使用平鋪式順序結(jié)構(gòu)
許多LabVIEW新手并不完全了解“數(shù)據(jù)流”執(zhí)行背后的概念,而這些概念卻是LabVIEW編程的基礎(chǔ)。其中一個現(xiàn)象是用戶往往在程序框圖中過度使用平鋪式順序結(jié)構(gòu)。用戶經(jīng)常依賴平鋪式順序結(jié)構(gòu)來實現(xiàn)程序框圖的代碼串行執(zhí)行,而不是使用數(shù)據(jù)流和節(jié)點之間的連線。
數(shù)據(jù)流編程是指只有在所需的數(shù)據(jù)輸入全部到達時,框圖上的節(jié)點(子VI、本原、結(jié)構(gòu)等)才開始執(zhí)行。 這對于使用LabVIEW的程序員來說非常有用,因為獨立的進程本身就可以實現(xiàn)并行運行,而命令式語言卻需要額外的設(shè)置才能實行并行執(zhí)行。隨著計算機CPU的不斷增多,LabVIEW可自動分解并行流程,提高代碼性能,而無需用戶編寫任何額外代碼。而強行使用平鋪式順序結(jié)構(gòu)來執(zhí)行程序框圖不僅會限制并行運行,還會喪失這一優(yōu)勢。限制程序框圖中不必要的結(jié)構(gòu)有助于提高整體可讀性和保持更簡潔的框圖。
錯誤連線可以有效地實現(xiàn)程序框圖上的數(shù)據(jù)流,而不需要依靠平鋪式順序結(jié)構(gòu),此外錯誤連線還有助于實現(xiàn)錯誤處理策略。
何時應(yīng)該使用平鋪式順序結(jié)構(gòu)?
通過平鋪式順序結(jié)構(gòu)來執(zhí)行程序框圖有助于代碼性能的基準(zhǔn)測試。通過使用框架內(nèi)具有時間計數(shù)器的順序結(jié)構(gòu),您可以決定兩個時間計數(shù)器之間代碼執(zhí)行所花費的時間。這是一般數(shù)據(jù)流執(zhí)行所無法實現(xiàn)的。
評論