LabVIEW新手的5大錯誤
本文介紹了經驗欠缺的LabVIEW程序員最經常犯的一些編程錯誤,同時也提供了采用正確LabVIEW編程方法的建議。
圖 1.LabVIEW新手典型“杰作”
過度使用平鋪式順序結構
許多LabVIEW新手并不完全了解“數據流”執(zhí)行背后的概念,而這些概念卻是LabVIEW編程的基礎。其中一個現(xiàn)象是用戶往往在程序框圖中過度使用平鋪式順序結構。用戶經常依賴平鋪式順序結構來實現(xiàn)程序框圖的代碼串行執(zhí)行,而不是使用數據流和節(jié)點之間的連線。
圖 2.用戶往往過度依賴平鋪式順序結構,而沒有充分理解數據流編程概念
數據流編程是指只有在所需的數據輸入全部到達時,框圖上的節(jié)點(子VI、本原、結構等)才開始執(zhí)行。 這對于使用LabVIEW的程序員來說非常有用,因為獨立的進程本身就可以實現(xiàn)并行運行,而命令式語言卻需要額外的設置才能實行并行執(zhí)行。隨著計算機 CPU的不斷增多,LabVIEW可自動分解并行流程,提高代碼性能,而無需用戶編寫任何額外代碼。而強行使用平鋪式順序結構來執(zhí)行程序框圖不僅會限制并行運行,還會喪失這一優(yōu)勢。限制程序框圖中不必要的結構有助于提高整體可讀性和保持更簡潔的框圖。
錯誤連線可以有效地實現(xiàn)程序框圖上的數據流,而不需要依靠平鋪式順序結構,此外錯誤連線還有助于實現(xiàn)錯誤處理策略。
何時應該使用平鋪式順序結構?
通過平鋪式順序結構來執(zhí)行程序框圖有助于代碼性能的基準測試。通過使用框架內具有時間計數器的順序結構,您可以決定兩個時間計數器之間代碼執(zhí)行所花費的時間。這是一般數據流執(zhí)行所無法實現(xiàn)的。
圖 3.平鋪式順序結構和時間計數器VI有助于代碼的基準測試
評論